#page-curtain{position:fixed;inset:0;z-index:100;overflow:hidden;pointer-events:none;animation:page-curtain-dismiss 4s step-end forwards}.page-curtain__layer{position:absolute;inset:0 -8% auto;height:117%;border-radius:0 0 65% 38%/0 0 13% 8%;background:#ed5600}.page-curtain__layer:nth-child(2){height:115%;border-radius:0 0 36% 60%/0 0 8% 14%;background:#ff8b2b}.page-curtain__layer:nth-child(3){height:113%;border-radius:0 0 58% 42%/0 0 11% 8%;background:#ff6b00}.page-curtain__wordmark{position:absolute;top:50dvh;left:50%;transform:translate(-50%,-50%);color:#fff}#page-curtain[data-reveal]{animation:page-curtain-finish 1.63s step-end forwards}#page-curtain[data-reveal] .page-curtain__layer{animation:page-curtain-lift 1.3s cubic-bezier(.76,0,.24,1) .32s both}#page-curtain[data-reveal] .page-curtain__layer:nth-child(2){animation-delay:.21s}#page-curtain[data-reveal] .page-curtain__layer:nth-child(3){animation-delay:.1s}@keyframes page-curtain-lift{to{transform:translateY(-101%)}}@keyframes page-curtain-dismiss{to{visibility:hidden}}@keyframes page-curtain-finish{to{visibility:hidden}}body:has(:focus-visible) #page-curtain{display:none}@media(prefers-reduced-motion:reduce){#page-curtain{display:none}}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-ext-wght-normal-DdQaqQDo.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-wght-normal-Bc-8i84L.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Outfit Variable,Arial,sans-serif;color-scheme:dark;--bg: #20201e;--ink: #fff;--muted: #d1ceca;--accent: #ff752b;--gutter: clamp(1.25rem, 4.8vw, 7rem);background:var(--bg);color:var(--ink);scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box}body{margin:0}a{color:inherit}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip-link{position:fixed;top:1rem;left:1rem;z-index:10;padding:.75rem 1rem;background:var(--bg);translate:0 -180%}.skip-link:focus{translate:0}.hero{--hero-top-padding: clamp(1.25rem, 4.8svh, 4rem);position:relative;isolation:isolate;display:grid;grid-template-rows:minmax(0,1fr) auto auto;min-height:100svh;padding:var(--hero-top-padding) var(--gutter) clamp(1.5rem,5svh,5rem);overflow:clip}.hero-portrait-layer{--portrait-position: center 39%;--portrait-frame-scale: .94;position:absolute;inset:0;z-index:-2;overflow:clip;pointer-events:none}.hero-portrait-layer:before{position:absolute;inset:0;background:var(--portrait-image) var(--portrait-position) / cover no-repeat;filter:blur(18px);transform:scale(1.1);opacity:.72;content:""}.hero-portrait{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--portrait-position);transform:scale(var(--portrait-frame-scale));-webkit-mask-image:linear-gradient(90deg,transparent,black 4% 96%,transparent),linear-gradient(0deg,transparent,black 4% 96%,transparent);mask-image:linear-gradient(90deg,transparent,black 4% 96%,transparent),linear-gradient(0deg,transparent,black 4% 96%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}@media(prefers-reduced-motion:no-preference){.hero-portrait{--portrait-drift-x: min(6px, .55vw);--portrait-drift-y: min(6px, 1vw, .75svh);transform:perspective(max(1200px,100vw,100vh)) translateZ(8px) scale(var(--portrait-frame-scale)) rotateX(var(--portrait-tilt-x, 0deg)) rotateY(var(--portrait-tilt-y, 0deg));transition:transform .55s cubic-bezier(.22,1,.36,1)}.hero-portrait-layer .hero-portrait{animation:hero-portrait-drift 10s ease-in-out infinite}}@keyframes hero-portrait-drift{0%,to{translate:0 0;scale:1}32%{translate:var(--portrait-drift-x) calc(-1 * var(--portrait-drift-y));scale:1.005}72%{translate:calc(-1 * var(--portrait-drift-x)) calc(.55 * var(--portrait-drift-y));scale:1}}.hero:before{position:absolute;inset:0;z-index:-1;content:"";background:linear-gradient(90deg,#20201e80,transparent 38% 62%,#20201e80)}.menu-pill{display:flex;align-items:center;gap:clamp(.75rem,2vw,2rem);padding:.65rem .9rem .65rem 1.4rem;border-radius:100px;background:#373735}.brand{display:flex;align-items:center;gap:.7rem;font-size:clamp(1.05rem,1.8vw,1.75rem);font-weight:500;text-decoration:none}.menu-toggle{display:grid;align-content:center;justify-items:center;gap:6px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}.menu-toggle span{width:25px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}.hero-header nav{position:absolute;top:calc(100% + .6rem);inset-inline:0;display:grid;padding:.5rem;border-radius:1.35rem;background:#373735;opacity:0;visibility:hidden;transform:translateY(-.45rem);pointer-events:none;transition:opacity .22s ease,transform .22s var(--nav-ease),visibility 0s linear .22s}.hero-header nav[data-open=true]{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition-delay:0s}.hero-header nav a{padding:.68rem .9rem;border-radius:.75rem;text-decoration:none}.hero-header nav a:hover{background:#484844}.hero-header .nav-dropdown{isolation:isolate}.hero-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:22vw;margin-top:clamp(5rem,15svh,12rem);margin-bottom:clamp(2.5rem,5svh,5rem)}.status{display:inline-flex;align-items:center;gap:.65rem;padding:.6rem 1rem;border-radius:99px;background:#373735;font-size:clamp(.75rem,.94vw,.94rem)}.status>span[aria-hidden=true]{width:.65rem;height:.65rem;border-radius:50%;background:var(--accent)}.hero h1{margin:.9rem 0 0;font-weight:450;font-size:clamp(2rem,3.65vw,5.4rem);line-height:1.1;letter-spacing:-.025em}.hero-headline{display:grid;min-block-size:2.2em;padding-inline-end:.12em;overflow-wrap:anywhere;text-transform:uppercase}.hero-headline>span{grid-area:1 / 1}.hero-headline__reserve{visibility:hidden}.hero-headline__typed:after{position:absolute;inline-size:.045em;block-size:.78em;margin:.16em 0 0 .075em;border-radius:1px;background:var(--accent);content:"";animation:hero-cursor-blink 1.1s ease-in-out infinite alternate}@keyframes hero-cursor-blink{0%,35%{opacity:1}85%,to{opacity:.2}}.hero-intro{justify-self:end;width:min(100%,23vw)}.hero-intro p{margin:0 0 1.55rem;color:var(--muted);font-size:clamp(1rem,1.35vw,1.5rem);line-height:1.35}.hero-cta{--cta-ease: cubic-bezier(.22, 1, .36, 1);--cta-inset: .38rem;--cta-end-padding: clamp(1rem, 2.65vw, 3rem);--cta-gap: clamp(.6rem, 1.65vw, 1.65rem);--cta-arrow-size: clamp(2.5rem, 3.4vw, 3.8rem);display:inline-flex;align-items:center;gap:var(--cta-gap);border-radius:99px;padding:var(--cta-inset) var(--cta-end-padding) var(--cta-inset) var(--cta-inset);color:#21150d;background:var(--accent);border:0;cursor:pointer;text-decoration:none;font-size:clamp(1rem,1.2vw,1.35rem);font-weight:550;font-family:inherit;text-align:left;transition:background-color .22s var(--cta-ease),box-shadow .22s var(--cta-ease)}.hero-cta-arrow{display:grid;place-items:center;border-radius:50%;flex:0 0 var(--cta-arrow-size);width:var(--cta-arrow-size);aspect-ratio:1}.hero-cta-arrow img{display:block;width:100%;height:100%;filter:invert(1)}.hero-cta:focus-visible{--cta-interact: 1;background-color:#ff9257;box-shadow:0 0 1rem #ff752b48}@media(hover:hover){.hero-cta:hover{--cta-interact: 1;background-color:#ff9257;box-shadow:0 0 1rem #ff752b48}}@media(prefers-reduced-motion:no-preference){.hero-cta{transition:background-color .22s var(--cta-ease),box-shadow .22s var(--cta-ease),scale .18s var(--cta-ease)}.hero-cta:active{--cta-interact: 1;--cta-motion-duration: .11s;scale:.97}.hero-cta-arrow{position:relative;z-index:1;left:calc((100% - var(--cta-arrow-size) + var(--cta-end-padding) - var(--cta-inset)) * var(--cta-interact, 0));scale:calc(1 + .045 * var(--cta-interact, 0));transition:left var(--cta-motion-duration, .36s) var(--cta-ease),scale .22s var(--cta-ease)}.hero-cta-arrow>img{translate:calc(2px * var(--cta-interact, 0)) 0;filter:invert(1) drop-shadow(calc(-4px * var(--cta-interact, 0)) 0 4px #21150d38);transition:translate .22s var(--cta-ease),filter .22s var(--cta-ease)}.hero-cta-label{translate:calc((.72rem - var(--cta-arrow-size) - var(--cta-gap)) * var(--cta-interact, 0)) 0;transition:translate var(--cta-motion-duration, .36s) var(--cta-ease)}}.hero-wordmark{justify-self:center}.hero-contact-dialog{width:min(31rem,calc(100vw - 2rem));margin:auto;padding:0;border:1px solid #ffffff1f;border-radius:1.5rem;color:var(--ink);background:#242321;box-shadow:0 1.5rem 5rem #0009,inset 0 1px #ffffff12}.hero-contact-dialog::backdrop{background:#0b0b0acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hero-contact-dialog__inner{padding:clamp(1.5rem,5vw,2.6rem)}.hero-contact-dialog__label{display:flex;align-items:center;gap:.6rem;margin:0 0 1rem;color:var(--accent);font-size:.72rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.hero-contact-dialog__label:before{width:.45rem;height:.45rem;border-radius:50%;background:currentColor;content:""}.hero-contact-dialog h2{max-width:12ch;margin:0;font-size:clamp(1.8rem,5vw,3.3rem);font-weight:500;letter-spacing:-.06em;line-height:.98}.hero-contact-dialog__copy{max-width:30ch;margin:1.1rem 0 0;color:var(--muted);font-size:1rem;line-height:1.45}.hero-contact-dialog__mail{display:flex;align-items:center;gap:.7rem;min-height:3.35rem;margin-top:1.6rem;padding:.32rem .85rem .32rem .45rem;border-radius:999px;color:#21150d;background:var(--accent);font-size:clamp(.9rem,2.8vw,1.08rem);font-weight:600;text-decoration:none;transition:background-color .2s ease,transform .2s ease}.hero-contact-dialog__mail .portfolio-envelope{width:2.55rem;flex:0 0 2.55rem;margin:0;color:#21150d}.hero-contact-dialog__mail>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis}.hero-contact-dialog__mail>span:last-child{margin-left:auto;font-size:1.25rem}.hero-contact-dialog__mail:is(:hover,:focus-visible){background:#ff9257;transform:translateY(-2px)}.hero-contact-dialog form{margin:1rem 0 0;text-align:right}.hero-contact-dialog__close{padding:.55rem .8rem;border:0;border-radius:.65rem;color:var(--muted);background:transparent;cursor:pointer;font:inherit}.hero-contact-dialog__close:is(:hover,:focus-visible){color:var(--ink);background:#ffffff12}.hero-wordmark,.page-curtain__wordmark{font-size:min(23vw,37svh);font-weight:540;letter-spacing:-.06em;line-height:.8;white-space:nowrap;padding-right:.06em}@media screen and (prefers-reduced-motion:no-preference){@supports (background-clip: text){.hero-wordmark:not(:has(.typing-text)){background-image:linear-gradient(90deg,var(--ink) 40%,var(--accent) 48% 52%,var(--ink) 60%);background-size:250% 100%;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;animation:hero-wordmark-sweep 6s linear infinite}}}@keyframes hero-wordmark-sweep{0%{background-position:100% 50%}75%,to{background-position:0% 50%}}.industries-section{position:relative;isolation:isolate;overflow:hidden;padding:clamp(4rem,7.5vw,7rem) 0 clamp(3.5rem,6vw,5.5rem);color:#242321;background:#fff}.industries-section__heading{width:min(100% - 2 * var(--gutter),74rem);margin:0 auto clamp(2rem,4vw,3.5rem);text-align:center}.industries-section__heading h2{display:grid;justify-items:center;gap:0;margin:0;font-size:clamp(2.25rem,4.7vw,4.75rem);font-weight:500;letter-spacing:-.065em;line-height:.98;text-align:center}.industries-section__heading h2 span{white-space:nowrap}.industries-marquee{position:relative;display:grid;gap:.8rem;padding-block:.35rem}.industries-flow-line{position:absolute;z-index:2;inset:0;width:100%;height:100%;pointer-events:none}.industries-flow-line path{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-dasharray:260 1740;stroke-dashoffset:260;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 4px #ff6b0090)}.industries-marquee__row{position:relative;z-index:1;overflow:hidden;width:100%}.industries-marquee__track{display:flex;width:max-content;will-change:transform}.industries-marquee__group{display:flex;align-items:center;gap:.7rem;margin:0;padding:.35rem .7rem;list-style:none}.industry-chip{display:inline-flex;align-items:center;min-height:3.2rem;padding:.75rem 1.1rem;border:1px solid #e7e0d9;border-radius:.9rem;color:#35312d;background:#f8f6f3;box-shadow:inset 0 1px #fff,0 .45rem 1.2rem #2c1c1009;font-size:clamp(.9rem,1.05vw,1rem);font-weight:500;line-height:1;white-space:nowrap;transition:color .22s ease,border-color .22s ease,background-color .22s ease,box-shadow .22s ease,transform .22s cubic-bezier(.22,1,.36,1)}.industry-chip:before{width:.35rem;height:.35rem;margin-right:.7rem;border-radius:50%;background:#e9a27b;content:"";transition:background-color .22s ease,scale .22s cubic-bezier(.22,1,.36,1)}.industry-chip:hover{z-index:1;border-color:#ff752b82;color:#242321;background:#fff;box-shadow:0 .7rem 1.5rem #2c1c1017,0 0 1.1rem #ff752b16;transform:translateY(-3px)}.industry-chip:hover:before{background:var(--accent);scale:1.3}@media(prefers-reduced-motion:no-preference){.industries-marquee__track{animation:industries-flow-left 42s linear infinite}.industries-marquee__track--reverse{animation-name:industries-flow-right;animation-duration:46s}.industries-flow-line path{animation:industries-line-travel 14s linear infinite}}@keyframes industries-flow-left{to{transform:translate3d(-50%,0,0)}}@keyframes industries-flow-right{0%{transform:translate3d(-50%,0,0)}to{transform:translateZ(0)}}@keyframes industries-line-travel{0%{stroke-dashoffset:260}to{stroke-dashoffset:-1000}}.hero-marquee{--marquee-gap: clamp(.75rem, 1.6vw, 1.5rem);position:relative;z-index:2;overflow:hidden;padding:clamp(2rem,4.5vw,4rem) 0;background:#fff;box-shadow:inset 0 1px #e9e3dc,inset 0 -1px #e9e3dc}.hero-marquee:before,.hero-marquee:after{position:absolute;z-index:1;top:0;bottom:0;width:clamp(2rem,8vw,8rem);content:"";pointer-events:none}.hero-marquee:before{left:0;background:linear-gradient(90deg,#fff,transparent)}.hero-marquee:after{right:0;background:linear-gradient(270deg,#fff,transparent)}.hero-marquee__track{display:flex;width:max-content;will-change:transform}.hero-marquee__group{display:flex;gap:var(--marquee-gap);padding-right:var(--marquee-gap)}.hero-marquee__item{width:clamp(5.5rem,8vw,8.5rem);flex:0 0 auto;margin:0}.hero-marquee__item img{display:block;width:100%;height:auto}@media(prefers-reduced-motion:no-preference){.hero-marquee__track{animation:hero-marquee-scroll 28s linear infinite}}@keyframes hero-marquee-scroll{to{transform:translate3d(-50%,0,0)}}@media(max-width:700px){.industries-section{padding-block:3.75rem 3.25rem}.industries-section__heading{margin-bottom:1.7rem}.industries-section__heading h2{font-size:clamp(1.2rem,6.1vw,2.1rem);line-height:1.05}.industries-marquee{gap:.55rem}.industries-marquee__group{gap:.5rem;padding-inline:.5rem}.industry-chip{min-height:2.8rem;padding:.65rem .9rem;border-radius:.78rem;font-size:.87rem}.industry-chip:before{width:.3rem;height:.3rem;margin-right:.55rem}.hero-marquee{padding-block:1.5rem}.hero-marquee__item{width:clamp(4.75rem,23vw,6rem)}}@media(prefers-reduced-motion:reduce){.industries-flow-line{display:none}.industries-marquee__row{overflow-x:auto;scrollbar-width:thin}.industries-marquee__track,.industries-marquee__track--reverse{width:max-content;animation:none;transform:none;will-change:auto}.industries-marquee__group[aria-hidden=true]{display:none}.hero-marquee__track{width:100%;overflow-x:auto}.hero-marquee__group[aria-hidden=true]{display:none}}@media(max-width:1000px)and (min-width:701px){.hero-copy{gap:18vw}.hero-intro{width:min(100%,16rem)}.hero-portrait-layer{--portrait-position: center}}:root{--nav-height: calc(max(44px, clamp(2.75rem, 4.2vw, 3.5rem)) + 1.3rem) ;--nav-top: max(.75rem, env(safe-area-inset-top));--nav-clearance: calc(var(--nav-top) + var(--nav-height) + .75rem)}.hero{z-index:3}.hero-header-slot{display:block;align-self:start;height:var(--nav-height)}.hero-header{--nav-gutter: clamp(1rem, 4.6vw, 1.25rem);--nav-ease: cubic-bezier(.22, 1, .36, 1);position:fixed;z-index:2;top:var(--hero-top-padding);left:calc(var(--gutter) + var(--nav-compact-offset, clamp(-1.7rem, -1.7vw, 0rem)));width:var(--nav-compact, max-content);transition:width .45s var(--nav-ease),top .45s var(--nav-ease),left .45s var(--nav-ease)}.hero-header[data-floating]{top:var(--nav-top);left:var(--nav-gutter);width:calc(100% - 2 * var(--nav-gutter))}.hero-header .menu-pill{justify-content:space-between;transition:background-color .45s var(--nav-ease),box-shadow .45s var(--nav-ease),backdrop-filter .45s var(--nav-ease)}.hero-header .menu-toggle{flex-shrink:0}.hero-header[data-floating] .menu-pill{background:#242321e8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 .55rem 1.65rem #0004,inset 0 0 0 1px #ffffff1a}.hero-header[data-floating] .menu-spider{visibility:hidden}.hero-header nav{max-height:calc(100dvh - var(--hero-top-padding) - var(--nav-height) - 1.2rem);overflow-y:auto}.hero-header[data-floating] nav{max-height:calc(100dvh - var(--nav-clearance) - .5rem)}.hero-header .nav-inline{display:none}@media(min-width:701px){.hero-header:not([data-floating]){transition-delay:.11s}.hero-header[data-inline] .menu-toggle{visibility:hidden}.hero-header .nav-inline{top:50%;inset-inline-start:auto;inset-inline-end:.9rem;display:flex;align-items:center;gap:clamp(.15rem,1vw,1rem);max-height:none;overflow:visible;padding:0;background:transparent;transform:translateY(-50%);transition:opacity .11s ease-out,visibility 0s linear .11s}.hero-header[data-inline] .nav-inline{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s var(--nav-ease) .16s,visibility 0ms}.hero-header .nav-inline a{white-space:nowrap;border-radius:999px}}@media(max-width:700px){:root{--nav-height: calc(max(44px, clamp(2.75rem, 4.2vw, 3.5rem)) + .375rem) }.hero-header .menu-pill{padding-block:.1875rem}.hero{grid-template-rows:1fr auto auto;--nav-compact-offset: 0rem}.hero-portrait-layer{--portrait-position: center top}.hero:before{background:linear-gradient(180deg,#20201e40 0%,transparent 21%,#20201e35 38%,#20201eea 66%,var(--bg) 95%)}.hero-copy{grid-template-columns:1fr;gap:1rem;margin-top:max(30svh,13rem);margin-bottom:2.5rem}.hero h1{font-size:clamp(2.1rem,8vw,3.25rem)}.hero-intro{justify-self:start;width:min(100%,24rem)}.hero-intro p{margin-bottom:.9rem}.hero-wordmark,.page-curtain__wordmark{font-size:23vw}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.hero-header,.hero-header nav{transition-delay:0s!important}}.portfolio-sections{--portfolio-line: #3b3935;color:var(--ink, #fff);background:var(--bg, #1e1e1c)}.portfolio-band,.portfolio-footer{padding-inline:var(--gutter, clamp(1.25rem, 5vw, 5rem))}.process-highlights{display:flex;justify-content:center;padding:0 var(--gutter, clamp(1.25rem, 5vw, 5rem)) clamp(3rem,6vw,5rem);color:#242321;background:#fff}.process-highlights__list{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));justify-content:center;gap:clamp(.7rem,1.5vw,1.25rem);width:100%;margin:0;padding:0;list-style:none}.process-highlight{display:flex;align-items:center;gap:.7rem;min-height:3.5rem;padding:.55rem 1rem;border:1px solid #e7e0d9;border-radius:999px;background:#f8f6f3;box-shadow:inset 0 1px #fff,0 .45rem 1.2rem #2c1c1009;transition:border-color .22s ease,box-shadow .22s ease,transform .22s cubic-bezier(.22,1,.36,1)}.process-highlight:hover{border-color:#ff752b82;box-shadow:0 .7rem 1.5rem #2c1c1017,0 0 1.1rem #ff752b16;transform:translateY(-2px)}.process-highlight>img{display:block;width:1.65rem;height:1.65rem;flex:0 0 1.65rem;object-fit:contain;filter:brightness(0) saturate(100%) invert(58%) sepia(91%) saturate(2076%) hue-rotate(338deg) brightness(103%) contrast(102%)}.process-highlight__copy{display:flex;align-items:baseline;gap:.45rem;min-width:0}.process-highlight__copy strong{color:#ad4a20;font-size:1.1rem;font-weight:650;letter-spacing:-.035em;white-space:nowrap}.process-highlight__copy>span{color:#514b45;font-size:.78rem;line-height:1.1;white-space:nowrap}.portfolio-band{padding-block:clamp(3.5rem,7.5vw,7rem);border-top:1px solid var(--portfolio-line);scroll-margin-top:var(--nav-clearance)}.portfolio-book-section{--book-progress: 0;--portfolio-line: #e4dfd8;position:relative;height:500svh;border-top:0;color:#242321;background:#fff}body[data-services-book-pinned] .hero-assistant-layer{display:none}.portfolio-book-sticky{position:sticky;top:0;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-items:center;height:100svh;min-height:0;padding:clamp(1.5rem,4vh,3.5rem) var(--gutter, 5vw) 1.25rem;overflow:hidden}.book-ambient{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}.book-ambient__orbit{position:absolute;display:block;width:min(50vw,43rem);height:auto;color:#f36b2d}.book-ambient__orbit--left{top:28%;left:-19%;transform:rotate(-20deg)}.book-ambient__orbit--right{top:6%;right:-18%;transform:rotate(24deg)}.book-ambient__track{stroke:currentColor;stroke-width:1.5;opacity:.2}.book-ambient__trace{stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-dasharray:20 80;opacity:.84}.book-ambient__rail{position:absolute;top:29%;right:2.5%;width:2px;height:38%;background:#ef6f322d}.book-ambient__rail:after{position:absolute;top:0;left:0;width:100%;height:18%;background:#ef6f32;content:""}@media(prefers-reduced-motion:no-preference){.book-ambient__trace--left{animation:book-orbit-forward 17s linear infinite}.book-ambient__trace--right{animation:book-orbit-reverse 24s linear infinite}.book-ambient__rail:after{animation:book-rail-travel 6s ease-in-out infinite alternate}.portfolio-book-heading .portfolio-label:after{animation:book-label-pulse 5s ease-in-out infinite}}@keyframes book-orbit-forward{to{stroke-dashoffset:-100}}@keyframes book-orbit-reverse{to{stroke-dashoffset:100}}@keyframes book-rail-travel{0%{transform:translateY(0)}to{transform:translateY(455%)}}@keyframes book-label-pulse{0%,to{transform:scaleX(.35);opacity:.45}50%{transform:scaleX(1);opacity:1}}.portfolio-book-heading{position:absolute;top:var(--nav-clearance, 5.5rem);left:var(--gutter, 5vw);z-index:40}.portfolio-book-heading .portfolio-label{margin-bottom:.6rem}.portfolio-book-heading .portfolio-label:after{width:2.7rem;height:2px;margin-left:.35rem;background:#ef6f32;content:"";transform-origin:left center}.portfolio-book-heading h2{margin:0;font-size:clamp(2rem,4.2vw,4.2rem);font-weight:500;letter-spacing:-.065em;line-height:1}.book-stage{position:absolute;z-index:1;inset:clamp(12rem,28vh,14rem) 0 clamp(6rem,12vh,8rem);display:grid;place-items:center;width:100%;perspective:1800px;perspective-origin:50% 48%}.book-stage{pointer-events:none}.service-book{position:relative;pointer-events:auto;width:min(80vw,68rem);height:min(55vh,39rem);min-height:23rem;transform:rotateX(1deg);transform-style:preserve-3d;filter:drop-shadow(0 2.4rem 1.9rem #0005)}.book-left-page,.book-leaf-front{position:absolute;inset-block:0;width:50%;overflow:hidden;color:#271b15;background-color:#f77a38;background-image:repeating-linear-gradient(0deg,#2b170507 0 1px,transparent 1px 3px),linear-gradient(120deg,#ffb16a25,transparent 45%,#7b2d1415);box-shadow:inset 0 0 0 1px #6c2d1738,inset 0 .35rem .8rem #fff2}.book-left-page{left:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(1.4rem,4vw,4rem);border-radius:.2rem 0 0 .2rem;box-shadow:inset 0 0 0 1px #6c2d1738,inset -1.6rem 0 1.6rem -1.6rem #421906a6}.book-left-page:after{position:absolute;inset:0 0 0 auto;width:13%;background:linear-gradient(90deg,transparent,#4a1d0c3b);content:"";pointer-events:none}.book-wordmark{font-size:clamp(2rem,5.2vw,5.2rem);font-weight:650;letter-spacing:-.075em;line-height:1}.book-wordmark-dot{color:#f2d4ba}.book-left-rule{width:3rem;height:2px;margin:1.15rem 0;background:var(--accent)}.book-left-note{margin-top:clamp(1rem,2.5vw,2rem);color:#5b2917;font-size:clamp(.85rem,1.35vw,1.1rem);line-height:1.45}.book-page-mark{color:#6e341e;font-size:.65rem;font-weight:650;letter-spacing:.16em;text-transform:uppercase}.book-left-page>.book-page-mark{position:absolute;top:1.6rem;left:clamp(1.4rem,4vw,4rem)}.book-cover-edition{position:absolute;right:clamp(1.4rem,4vw,4rem);bottom:1.6rem;left:clamp(1.4rem,4vw,4rem);display:flex;justify-content:flex-end;padding-top:.8rem;border-top:1px solid #692a1860;color:#512313;font-size:.65rem;font-weight:650;letter-spacing:.1em}.book-spine{position:absolute;z-index:30;top:-.5%;bottom:-.5%;left:calc(50% - .25rem);width:.5rem;border-radius:50%;background:linear-gradient(90deg,#49200f,#ff9a53 45%,#7d3419 80%,#401c10);box-shadow:0 0 .45rem #411e0d8a;transform:translateZ(.25rem);pointer-events:none}.book-page-stack{position:absolute;top:.12rem;right:0;bottom:0;width:50%;border-radius:0 .2rem .2rem 0;background:#b9582a;box-shadow:.12rem .12rem .4rem #12080055;transform:translateZ(-.1rem)}.book-page-stack i{position:absolute;inset:calc(var(--i, 0) * .06rem) 0 .06rem calc(var(--i, 0) * .05rem);border-right:1px solid #a64e25;background:#e47438}.book-page-stack i:nth-child(1){--i: 1}.book-page-stack i:nth-child(2){--i: 2}.book-page-stack i:nth-child(3){--i: 3}.book-page-stack i:nth-child(4){--i: 4}.book-page-stack i:nth-child(5){--i: 5}.book-leaf{position:absolute;top:0;right:0;width:50%;height:100%;transform-origin:left center;transform:rotateY(var(--leaf-angle, 0deg)) translateZ(calc(var(--leaf-index) * .025rem));transform-style:preserve-3d;will-change:transform}.book-leaf-front,.book-leaf-back{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;backface-visibility:hidden;border-radius:0 .2rem .2rem 0}.book-leaf-front{display:flex;flex-direction:column;padding:clamp(1.4rem,3.6vw,3.4rem);transform:translateZ(.04rem);box-shadow:inset 1.4rem 0 1.5rem -1.5rem #4219069a,inset 0 0 0 1px #6c2d1738}.book-leaf-front:after,.book-leaf-back:after{position:absolute;inset:0;background:linear-gradient(90deg,#28110865,transparent 21%,transparent 70%,#32150b9e);opacity:calc(var(--turn-shadow, 0) * .65);content:"";pointer-events:none}.book-leaf-front .book-page-mark:first-child{display:block;padding-bottom:.9rem;border-bottom:1px solid #692a1860}.book-leaf-copy{margin-block:auto}.book-leaf-front h3{max-width:11ch;margin:.8rem 0 1.1rem;color:#291b14;font-size:clamp(1.7rem,3.6vw,3.7rem);font-weight:580;letter-spacing:-.055em;line-height:1}.book-leaf-front p{max-width:33ch;margin:0;color:#572a18;font-size:clamp(.9rem,1.35vw,1.2rem);line-height:1.55}.book-page-mark--bottom{display:block;padding-top:.75rem;border-top:1px solid #692a1860}.book-leaf-back{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(1.4rem,3.6vw,3.4rem);color:#291b14;background:#f77a38 repeating-linear-gradient(0deg,#2b170507 0 1px,transparent 1px 3px);transform:rotateY(180deg) translateZ(.04rem);box-shadow:inset -1.5rem 0 1.5rem -1.5rem #421906b0,inset 0 0 0 1px #6c2d1738}.book-leaf-back .book-page-mark{position:absolute;top:clamp(1.4rem,3.6vw,3.4rem);left:clamp(1.4rem,3.6vw,3.4rem)}.book-leaf-back img{display:block;width:100%;max-height:73%;object-fit:contain;filter:drop-shadow(0 1rem 1rem #451b1352);transform:scale(1.3)}.book-artwork-label{position:absolute;right:clamp(1.4rem,3.6vw,3.4rem);bottom:clamp(1.4rem,3.6vw,3.4rem);left:clamp(1.4rem,3.6vw,3.4rem);padding-top:.75rem;border-top:1px solid #692a1860;color:#582819;font-size:.67rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase}.book-scroll-hint{position:absolute;right:0;bottom:3.7rem;left:0;display:flex;align-items:center;justify-content:center;gap:.75rem;margin:0;color:#625d57;font-size:.76rem;letter-spacing:.08em}.book-scroll-hint{pointer-events:none}.book-scroll-hint span{width:1px;height:1.8rem;background:var(--accent);animation:book-hint 1.5s ease-in-out infinite;transform-origin:top}@keyframes book-hint{50%{transform:scaleY(.5);opacity:.5}}.book-service-index{position:absolute;right:var(--gutter, 5vw);bottom:1.4rem;display:flex;gap:clamp(.5rem,1.6vw,1.5rem);margin:0;padding:0;list-style:none;color:#625d57;font-size:.68rem}.book-service-index li{display:flex;gap:.4rem;align-items:center}.book-service-index li:before{width:.4rem;height:.4rem;flex:0 0 .4rem;border-radius:50%;background:#a9a099;content:""}.book-service-index li strong{font-weight:500}.book-service-index li p{display:none}.book-service-index li[data-current]{color:#a6451b}.book-service-index li[data-current]:before{background:#a6451b}@media(max-width:760px){.book-ambient__orbit--right{display:none}.book-ambient__orbit--left{top:13%;left:-58%;width:110vw;opacity:.5}.book-ambient__rail{display:none}.portfolio-book-sticky{min-height:0}.book-stage{inset:8rem 0 6.5rem}.service-book{width:min(90vw,48rem);height:min(48vh,32rem);min-height:19rem}.book-left-page,.book-leaf-front{padding:clamp(1rem,4vw,1.7rem)}.book-leaf-front h3{font-size:clamp(1.35rem,5vw,2.3rem)}.book-leaf-front p{font-size:clamp(.875rem,2.5vw,.95rem);line-height:1.42}.book-page-mark{font-size:.52rem}.book-leaf-back img{max-height:65%}.book-artwork-label{font-size:.52rem}.book-service-index{right:50%;bottom:.75rem;width:90%;justify-content:center;transform:translate(50%);gap:.7rem;font-size:.58rem}.book-service-index li{display:flex;flex:0 0 auto;font-size:0}.book-service-index li:before{width:.55rem;height:.55rem;flex-basis:.55rem}.book-scroll-hint{bottom:3.1rem;font-size:.68rem}}@media(max-width:430px){.portfolio-book-sticky{min-height:0}.book-stage{inset:7rem 0 6rem}.service-book{width:88vw;height:min(42vh,24rem);min-height:18rem;transform:rotateX(1deg)}.book-wordmark{font-size:clamp(1.5rem,8vw,2.2rem)}.book-left-page{padding:.9rem}.book-left-page>.book-page-mark{top:.9rem;left:.9rem}.book-cover-edition{right:.9rem;bottom:.9rem;left:.9rem;font-size:.52rem}.book-leaf-front,.book-leaf-back{padding:.9rem}.book-leaf-front h3{margin-top:.65rem;font-size:clamp(1.25rem,5.8vw,1.8rem)}.book-leaf-back .book-page-mark{top:.9rem;left:.9rem}.book-artwork-label{right:.9rem;bottom:.9rem;left:.9rem}.book-service-index{flex-wrap:wrap}}@media(max-width:360px){.service-book{width:92vw;height:min(55svh,23rem);min-height:19rem}.book-leaf-front,.book-leaf-back,.book-left-page{padding:.65rem}.book-leaf-front h3{font-size:1.2rem}.book-leaf-front p{font-size:.875rem;line-height:1.3}}@media(max-height:650px)and (prefers-reduced-motion:no-preference){.book-stage{inset:10rem 0 3rem}.service-book{height:min(53svh,28rem);min-height:0}.book-scroll-hint{bottom:2.4rem}}@media(prefers-reduced-motion:reduce){.portfolio-book-section{height:auto}.book-ambient{display:none}.portfolio-book-sticky{position:relative;height:auto;min-height:0;padding-block:4rem 2rem;overflow:visible}.portfolio-book-heading{position:static}.book-stage,.book-scroll-hint{display:none}.book-service-index{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-top:1.5rem;transform:none;color:#242321}.book-service-index li{display:flex!important;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--portfolio-line);color:#242321;font-size:1rem}.book-service-index li strong{font-weight:500}.book-service-index li p{display:block;margin:.45rem 0 0;color:#625d57;font-size:.95rem;line-height:1.5}}@media(max-width:650px)and (prefers-reduced-motion:reduce){.book-service-index{grid-template-columns:1fr}}.portfolio-label{display:flex;align-items:center;gap:.7rem;margin:0 0 1.25rem;font-size:.83rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.portfolio-label:before{width:.4rem;height:.4rem;flex:0 0 .4rem;border-radius:50%;background:var(--accent, #ff7028);content:""}.portfolio-services li>span{color:var(--accent, #ff7028);font-variant-numeric:tabular-nums}.portfolio-band h2{margin:0;font-size:clamp(2.5rem,6.2vw,6.5rem);font-weight:500;letter-spacing:-.065em;line-height:1}.portfolio-copy,.portfolio-services p{color:var(--muted, #c3bfba);line-height:1.6}.portfolio-copy{max-width:39rem;margin:1rem 0 0;font-size:clamp(1rem,1.5vw,1.3rem)}.portfolio-services p{margin:.5rem 0 0}.portfolio-services h3{margin:0;font-size:clamp(1.35rem,2vw,2rem);font-weight:500;letter-spacing:-.04em}.portfolio-services,.portfolio-socials{margin:0;padding:0;list-style:none}.portfolio-services li{display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:1rem;padding:clamp(1rem,2.2vw,1.65rem);border-top:1px solid var(--portfolio-line);transition:background-color .22s ease,border-color .22s ease}.portfolio-services li:last-child{border-bottom:1px solid var(--portfolio-line)}.portfolio-services li>span{display:grid;align-self:start;place-items:center;width:2.25rem;aspect-ratio:1;border:1px solid #ff752b55;border-radius:50%;font-size:.75rem;transition:color .22s ease,background-color .22s ease}.portfolio-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:clamp(1.75rem,4vw,3.5rem)}.portfolio-services.portfolio-steps li{grid-template-columns:1fr;gap:1.35rem;border:1px solid var(--portfolio-line);border-top-color:#ff752b75;border-radius:.4rem;background:#fff}.portfolio-process{--portfolio-line: #e4dfd8;border-top:0;color:#242321;background:#fff}.portfolio-process .portfolio-services p,.portfolio-book-section .book-service-index li p{color:#625d57}.portfolio-process .portfolio-services.portfolio-steps li:hover{border-color:#d3916d;background:#faf7f3}.portfolio-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,2vw,1.4rem);margin-top:clamp(1.75rem,4vw,3.5rem)}.portfolio-services.portfolio-service-grid li{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:0;padding:0;overflow:hidden;border:1px solid #423b34;border-radius:.75rem;background:#1c1a18}.portfolio-service-preview{display:grid;place-items:center;overflow:hidden;color:#bd967e;background:radial-gradient(ellipse at 65% 40%,#5b3523,#29201b 75%)}.portfolio-service-preview svg{display:block;width:min(96%,15rem);transition:transform .42s cubic-bezier(.22,1,.36,1)}.service-art__panel{fill:#2b211b}.service-art__accent{stroke:var(--accent)}.portfolio-service-number{display:block;margin-bottom:1.25rem;padding-bottom:.65rem;border-bottom:1px solid #ff752b40;color:var(--accent);font-size:.72rem;font-variant-numeric:tabular-nums;letter-spacing:.12em}.portfolio-service-info{min-width:0;padding:clamp(1.2rem,2.5vw,2.1rem)}.portfolio-service-info h3{font-size:clamp(1.5rem,2.7vw,2.65rem);line-height:1.04}.portfolio-service-info p{margin-top:.75rem;max-width:34ch}@media(min-height:540px)and (prefers-reduced-motion:no-preference){.portfolio-service-grid{--service-stack-step: clamp(.4rem, 1.2svh, .75rem);grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(var(--service-count),1fr) auto;gap:clamp(1.5rem,5svh,3.5rem);width:min(100%,66rem);margin-inline:auto}.portfolio-services.portfolio-service-grid li{position:sticky;top:var(--nav-clearance);transform:translateY(calc(var(--service-index) * var(--service-stack-step)));box-shadow:0 -.4rem 1.5rem #0003}.portfolio-service-grid:after{height:clamp(4rem,16svh,9rem);content:""}}@media(hover:hover){.portfolio-services.portfolio-service-grid li:hover{border-color:#ff752b9c}.portfolio-services li:hover{border-color:#ff752b75;background:#332820}.portfolio-services li:hover>span{color:#1d1814;background:var(--accent)}}@media(hover:hover)and (prefers-reduced-motion:no-preference){.portfolio-service-grid li:hover svg{transform:translateY(-3px) scale(1.04)}}.portfolio-contact{border-top:0;color:#21150d;background:linear-gradient(180deg,#fff 0%,#ffd7bb 25%,#ffad77 58%,var(--accent) 100%) top / 100% clamp(3rem,5vw,5.5rem) no-repeat,var(--accent);padding-block:clamp(4rem,8vw,8rem) clamp(2.5rem,4.5vw,5rem)}body[data-contact-visible] .hero-assistant-layer{display:none}.portfolio-contact .portfolio-copy,.portfolio-contact .portfolio-socials a{color:inherit}.portfolio-contact .portfolio-label:before{background:currentColor}.portfolio-contact__top{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:3rem;font-size:.75rem;font-weight:600;letter-spacing:.12em}.portfolio-contact__top .portfolio-label{margin:0}.portfolio-band.portfolio-contact h2{margin:clamp(3.5rem,10vw,9rem) 0 clamp(2.5rem,5vw,5rem);font-size:clamp(3.6rem,16.3vw,18rem);font-weight:600;letter-spacing:-.075em;line-height:.82;word-spacing:.12em;text-transform:uppercase;white-space:nowrap}.portfolio-contact__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem}.portfolio-contact__address{margin:0;font-size:clamp(.95rem,1.4vw,1.2rem)}.portfolio-envelope{display:inline-block;width:1em;aspect-ratio:122.88 / 78.607;margin-inline-end:.55em;vertical-align:middle;background:currentColor;-webkit-mask:url(/images/envelope-icon.svg) center / contain no-repeat;mask:url(/images/envelope-icon.svg) center / contain no-repeat}.portfolio-email{display:inline-flex;align-items:center;gap:1rem;min-height:3.75rem;margin:0;padding:.7rem 1.4rem;border-radius:999px;color:#fff;background:#21150d;font-weight:600;text-decoration:none;transition:background-color .2s ease}.portfolio-email:is(:hover,:focus-visible){background:#412411}.portfolio-email .portfolio-envelope{width:1.2rem;flex:0 0 1.2rem;margin:0}.portfolio-email__arrow{margin-left:.6rem;transition:transform .2s ease}.portfolio-email:is(:hover,:focus-visible) .portfolio-email__arrow{transform:translate(3px,-3px)}.portfolio-socials{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1rem}.portfolio-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1rem;padding-block:1.25rem;border-top:0;color:#21150d;background:var(--accent);font-size:.75rem}.portfolio-footer>span{font-weight:500}.portfolio-footer a,.portfolio-socials a{display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem;color:var(--ink, #fff);text-decoration:none}.portfolio-footer a{color:inherit}.portfolio-footer a:is(:hover,:focus-visible),.portfolio-socials a:is(:hover,:focus-visible){text-decoration:underline;text-underline-offset:.25em}.portfolio-footer a>span[aria-hidden=true]{color:inherit;transition:transform .2s ease}@media(max-width:700px){.process-highlights{padding-bottom:2.5rem}.process-highlights__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.process-highlight{min-height:3rem;gap:.4rem;padding:.4rem .5rem}.process-highlight>img{width:1.35rem;height:1.35rem;flex-basis:1.35rem}.process-highlight__copy{display:grid;gap:.08rem}.process-highlight__copy strong{font-size:1rem;line-height:1}.process-highlight__copy>span{font-size:.64rem}.portfolio-contact{padding-block:4rem 3rem}.portfolio-band.portfolio-contact h2{margin-block:5rem 3.5rem;font-size:clamp(3rem,15vw,7rem);letter-spacing:-.065em}.portfolio-contact__actions{align-items:flex-start;flex-direction:column}.portfolio-footer{align-items:flex-start}}.portfolio-footer a:is(:hover,:focus-visible)>span[aria-hidden=true]{transform:translateY(-3px)}.portfolio-contact a:focus-visible{outline-color:#21150d}@media(max-width:1000px){.portfolio-services.portfolio-service-grid li{grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto}.portfolio-service-preview svg{width:min(68%,12rem)}}@media(max-width:650px){.portfolio-service-grid,.portfolio-steps{grid-template-columns:1fr}.portfolio-services.portfolio-steps li{grid-template-columns:2.25rem minmax(0,1fr);gap:1rem}}@media(prefers-reduced-motion:reduce){.portfolio-sections *,.portfolio-sections *:before{transition:none}.process-highlight:hover{transform:none}.portfolio-email:is(:hover,:focus-visible)>span[aria-hidden=true],.portfolio-footer a:is(:hover,:focus-visible)>span[aria-hidden=true]{transform:none}}.section-float{position:absolute;z-index:-1;inset:0;overflow:hidden;overflow:clip;pointer-events:none}.section-float__tile{--tile-size: clamp(4.25rem, 8.7vw, 8.6rem);--angle: -12deg;position:absolute;top:max(calc(var(--nav-clearance) + 1rem),var(--y));left:var(--x);width:var(--tile-size);aspect-ratio:1;opacity:.82;translate:-50% -50%;transform:rotate(var(--angle))}.section-float__button{display:block;width:100%;height:100%;padding:0;border:0;border-radius:26%;background:transparent;cursor:pointer;pointer-events:auto}.section-float__face{display:grid;width:100%;height:100%;place-items:center;border:1px solid #efc2a3;border-radius:26%;background:linear-gradient(150deg,#fff 10%,#fff1e7 90%);box-shadow:inset 0 1px #fff,0 .65rem 1.2rem #9e4e2024;pointer-events:none}.section-float__tile:focus-within,.section-float__tile:hover{z-index:1;opacity:1}.section-float__button:focus-visible{outline:2px solid #ad4a20;outline-offset:2px}.section-float__tile:nth-child(2n){--tile-size: clamp(3.5rem, 7.1vw, 6.8rem);--angle: 12deg;opacity:.72}.section-float__tile:nth-child(3n){--angle: -7deg}.section-float__icon{display:block;width:70%;aspect-ratio:1;object-fit:contain}.section-float__icon--orange{filter:brightness(0) saturate(100%) invert(49%) sepia(62%) saturate(1377%) hue-rotate(338deg) brightness(95%)}@media(prefers-reduced-motion:no-preference){.section-float__tile{transform:translate3d(var(--wave-x, 0px),var(--wave-y, 0px),0) rotate(calc(var(--angle) + var(--wave-rotation, 0deg)))}}@media(max-width:760px){.section-float__tile,.section-float__tile:nth-child(2n){--tile-size: clamp(3.1rem, 13.3vw, 4.6rem);top:max(calc(var(--nav-clearance) + 1rem),var(--mobile-y));left:var(--mobile-x)}.section-float__face{box-shadow:inset 0 1px #fff,0 .35rem .8rem #9e4e2020}}@media(prefers-reduced-motion:reduce){.section-float{display:none}}.portfolio-band.portfolio-process{padding:0;overflow:clip;scroll-margin-top:0}body[data-process-pinned] .hero-assistant-layer{display:none}.process-track{height:280svh}.process-sticky{position:sticky;top:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100svh;padding:var(--nav-clearance) var(--gutter) 0;overflow:hidden;isolation:isolate;background:#fff}.process-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem}.process-heading .portfolio-label{margin-bottom:.65rem}.process-heading h2{font-size:clamp(2.6rem,5.8vw,6rem)}.process-heading>p:not(.portfolio-label){max-width:17rem;margin:0 0 .2rem;color:#615b55;font-size:clamp(.9rem,1.1vw,1rem);line-height:1.45}.process-deck{position:relative;display:grid;place-items:center;min-height:0;margin:0;padding:0;overflow:clip;list-style:none;perspective:1400px;pointer-events:none}.process-card{--process-cut: clamp(3.5rem, 7vw, 7rem);position:absolute;pointer-events:auto;grid-area:1 / 1;display:block;width:min(70vw,60rem);height:min(45svh,28rem);min-height:18.5rem;overflow:hidden;border:0;border-radius:0;color:#fff;background:linear-gradient(135deg,#f5b27d,#bd6538 24%,#4b3024 70%,#dc8957);clip-path:polygon(0 0,calc(100% - var(--process-cut)) 0,100% var(--process-cut),100% 100%,var(--process-cut) 100%,0 calc(100% - var(--process-cut)));transform-style:preserve-3d;backface-visibility:hidden;will-change:transform,opacity;opacity:0}.process-card:before,.process-card:after{position:absolute;inset:0;content:"";pointer-events:none}.process-card:before{z-index:0;inset:5px;background:linear-gradient(110deg,#322b25 0 56%,#221e1a 56% 100%)}.process-card:after{z-index:1;opacity:.8;background:linear-gradient(90deg,transparent 0 55.85%,#ff7a3430 55.85% 56%,transparent 56% 100%),linear-gradient(0deg,transparent 0 16%,#ffffff12 16% 16.2%,transparent 16.2% 84%,#ffffff0f 84% 84.2%,transparent 84.2% 100%),radial-gradient(circle at 80% 24%,#ff8a4930,transparent 34%)}.process-card:first-child{opacity:1}.process-card__copy{position:relative;z-index:2;display:flex;flex-direction:column;width:min(63%,42rem);height:100%;min-width:0;padding:clamp(1.55rem,3.6vw,3.8rem);padding-bottom:max(clamp(1.55rem,3.6vw,3.8rem),calc(var(--process-cut) * .65))}.process-card__copy:before{position:absolute;top:0;left:0;width:38%;height:4px;background:var(--accent);content:""}.process-card__eyebrow,.process-card__foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.68rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.process-card__eyebrow{color:#d3bda9}.process-card__signal{width:2.4rem;height:2px;flex:0 0 2.4rem;background:var(--accent)}.process-card__text{margin-top:auto}.process-card__text h3{max-width:9ch;margin:0;font-size:clamp(2.35rem,4.8vw,5rem);font-weight:520;letter-spacing:-.065em;line-height:.94}.process-card__text p{max-width:34ch;margin:1rem 0 0;color:#e1d8d1;font-size:clamp(1rem,1.3vw,1.18rem);line-height:1.52}.process-card__foot{margin-top:clamp(1.2rem,3svh,2rem);padding-top:.8rem;border-top:1px solid #ffffff2b;color:#baaca1}.process-card__foot span:last-child{color:var(--accent);font-size:1.2rem;line-height:.6}.process-card__art{position:absolute;z-index:2;top:0;right:0;display:grid;width:49%;height:100%;place-items:center;padding:clamp(1.5rem,4vw,4rem) clamp(1.5rem,4vw,4rem) clamp(1.5rem,4vw,4rem) clamp(3.8rem,8vw,8rem);background:linear-gradient(135deg,#ffffff08,transparent 56%);clip-path:polygon(31% 0,100% 0,100% 100%,0 100%)}.process-card__art:before{position:absolute;inset:12% 9% 12% 22%;border:1px solid #f3b08442;content:"";transform:skewY(-8deg)}.process-card__art svg{position:relative;z-index:1;width:min(100%,24rem);max-height:100%;color:#f1d0ba;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.process-card__art .process-artwork__accent{stroke:var(--accent);stroke-width:2.5}.process-card__art circle.process-artwork__accent{fill:var(--accent)}.process-card:nth-child(2) .process-card__art svg{transform:rotate(-5deg) scale(.94)}.process-card:nth-child(3) .process-card__art svg{transform:rotate(5deg) scale(.92)}.process-progress{display:grid;grid-template-columns:auto minmax(4rem,1fr) auto;align-items:center;gap:clamp(1rem,2vw,2rem);width:min(70vw,60rem);margin-inline:auto;padding-bottom:clamp(1.3rem,3svh,2rem);color:#79716b;font-size:.65rem;font-weight:600;letter-spacing:.11em}.process-progress__steps{display:flex;gap:clamp(.6rem,1.5vw,1rem);white-space:nowrap;text-transform:uppercase}.process-progress__step[data-current]{color:#ad4a20}.process-progress__track{height:2px;background:#ded8d2}.process-progress__fill{display:block;width:var(--process-fill, 0%);height:100%;background:var(--accent)}@media(max-width:700px){.process-sticky{padding-inline:0}.process-heading{display:block;padding-inline:var(--gutter)}.process-heading>p:not(.portfolio-label){display:none}.process-heading h2{font-size:clamp(2.5rem,9vw,3.8rem)}.process-card{--process-cut: 3.1rem;width:80vw;height:min(48svh,27rem);min-height:20.5rem}.process-card__copy{width:100%;padding:1.35rem;padding-bottom:max(1.35rem,calc(var(--process-cut) * .7))}.process-card__text{position:relative;z-index:2}.process-card__text h3{font-size:clamp(2.25rem,8vw,3.1rem)}.process-card__text p{max-width:29ch;font-size:.98rem}.process-card__art{top:7%;right:-6%;width:68%;height:49%;padding:.5rem;background:transparent;opacity:.5}.process-card__art:before{inset:11% 12% 11% 24%}.process-progress{width:80vw;gap:.7rem;font-size:.6rem;letter-spacing:.04em}.process-progress>span{display:none}.process-progress{grid-template-columns:auto 1fr}}@media(max-height:650px)and (prefers-reduced-motion:no-preference){.process-sticky{padding-top:var(--nav-clearance)}.process-heading h2{font-size:clamp(2rem,5vw,3rem)}.process-heading>p:not(.portfolio-label){display:none}.process-card{height:min(49svh,25rem);min-height:0}.process-card__copy{padding:1.1rem 1.4rem;padding-bottom:max(1.1rem,calc(var(--process-cut) * .7))}.process-card__text h3{font-size:clamp(1.8rem,3vw,2.7rem)}.process-card__text p{font-size:.93rem}.process-card__foot{margin-top:.6rem}}@media(prefers-reduced-motion:reduce){.process-track{height:auto}.process-sticky{position:static;display:block;height:auto;padding-block:clamp(3.5rem,7.5vw,7rem);overflow:visible}.process-deck{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;margin-top:2rem;padding-inline:var(--gutter);overflow:visible;perspective:none}.process-card{position:relative;grid-area:auto;width:100%;height:auto;min-height:21rem;transform:none!important;opacity:1!important}.process-card__art,.process-progress{display:none}}.typing-text__accessible{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.typing-text__pending{opacity:0}.work-card[data-active=false] .typing-text__pending,a:focus-visible .typing-text__pending,button:focus-visible .typing-text__pending{opacity:1}@media(prefers-reduced-motion:reduce),print{.typing-text__pending{opacity:1}}.menu-spider-baseline{display:inline-block;inline-size:0;block-size:0;vertical-align:baseline}.menu-spider{--spider-size: clamp(1.25rem, 4.8vw, 2rem);position:absolute;inset:0;color:var(--accent);pointer-events:none}.menu-spider[data-obscured]{visibility:hidden}.menu-spider__silk,.menu-spider__body{position:absolute;inset:0 auto auto 0;opacity:0}.menu-spider__silk{inline-size:1px;block-size:1px;background:currentColor;transform-origin:top center}.menu-spider__body{inline-size:var(--spider-size);filter:drop-shadow(0 0 3px color-mix(in srgb,currentColor 55%,transparent))}.menu-spider__body svg{display:block;inline-size:100%}.menu-spider__leg{--stride: 12deg;--bend: -23deg;--step-delay: 0s;transform-box:view-box;transform-origin:var(--hip)}.menu-spider__leg--right{--stride: -12deg;--bend: 23deg}.menu-spider__leg:nth-child(2){--step-delay: -.24s}.menu-spider__leg:nth-child(3){--step-delay: -.06s}.menu-spider__leg:nth-child(4){--step-delay: -.3s}.menu-spider__leg:nth-child(5){--step-delay: -.2s}.menu-spider__leg:nth-child(6){--step-delay: -.03s}.menu-spider__leg:nth-child(7){--step-delay: -.27s}.menu-spider__leg:nth-child(8){--step-delay: -.09s}.menu-spider__shin{transform-box:view-box;transform-origin:var(--knee)}.menu-spider__body[data-phase=walk] .menu-spider__leg{animation:menu-spider-step .42s ease-in-out var(--step-delay) infinite}.menu-spider__body[data-phase=walk] .menu-spider__shin{animation:menu-spider-bend .42s ease-in-out var(--step-delay) infinite}@keyframes menu-spider-step{0%,to{transform:rotate(calc(-.6 * var(--stride)))}36%{transform:rotate(var(--stride))}62%{transform:rotate(calc(.6 * var(--stride)))}}@keyframes menu-spider-bend{0%,68%,to{transform:rotate(0)}34%{transform:rotate(var(--bend))}}@media(prefers-reduced-motion:reduce){.menu-spider{display:none}}.brand .brand-mark{--brand-mark-size: clamp(2.75rem, 4.2vw, 3.5rem);display:block;flex:0 0 var(--brand-mark-size);width:var(--brand-mark-size);height:var(--brand-mark-size);filter:drop-shadow(0 0 1px color-mix(in srgb,var(--accent) 22%,transparent))}.brand-mark__shine{display:none}@media(prefers-reduced-motion:no-preference){.brand .brand-mark{animation:brand-mark-float 6s ease-in-out infinite}.brand-mark .brand-mark__shine{display:inline}.brand-mark__sweep{transform-box:fill-box;animation:brand-mark-sweep 3.2s linear infinite}}@keyframes brand-mark-sweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes brand-mark-float{0%,to{transform:perspective(140px) translateY(0) rotateY(-4deg);filter:drop-shadow(0 0 1px color-mix(in srgb,var(--accent) 22%,transparent))}50%{transform:perspective(140px) translateY(-1.5px) rotateY(4deg);filter:drop-shadow(0 0 3px color-mix(in srgb,var(--accent) 46%,transparent))}}.hero-liquid-wave{display:block;position:absolute;inset:0;z-index:-1;width:100%;height:100%;overflow:hidden;pointer-events:none}.hero-liquid-wave__light{stop-color:color-mix(in srgb,var(--accent) 88%,white)}.hero-liquid-wave__accent{stop-color:var(--accent)}.hero-liquid-wave__depth{stop-color:color-mix(in srgb,var(--accent) 86%,var(--bg))}.hero-liquid-wave__surface{stroke:color-mix(in srgb,var(--accent) 70%,white);stroke-width:1px;stroke-linecap:round;stroke-linejoin:round}.hero-liquid-wave__crest{stroke:#fff9;stroke-width:1.35px}.hero-liquid-wave__shade{stroke:color-mix(in srgb,var(--accent) 58%,#0008);stroke-width:1.55px}.hero-liquid-wave__echo{stroke:#fff6;stroke-width:1px}.hero-liquid-wave__impact-pool{stroke:#fff8;stroke-width:.8px}.hero-liquid-wave__impact-ring{stroke:#ffe0b5;stroke-width:.7px;opacity:.55}.hero-liquid-wave__impact-crest{stroke:#ffe0b5;stroke-width:.9px;opacity:.65;stroke-linecap:round;stroke-linejoin:round}.hero-liquid-wave__impact-spray{fill:#ffae67}.hero-liquid-wave__droplet{filter:drop-shadow(0 0 4px #ff752b80)}.hero-liquid-run{position:absolute;inset:0;z-index:1;width:100%;height:100%;overflow:hidden;pointer-events:none}.hero-travelling-drop{position:absolute;top:0;left:0;z-index:4;width:20px;height:26px;opacity:0;pointer-events:none;will-change:transform,opacity}.hero-travelling-drop svg{display:block;width:100%;height:100%;filter:drop-shadow(0 0 3px #ff752b66)}.hero-travelling-drop path{fill:var(--accent);stroke:#9e3b12;stroke-width:.6px}.hero-travelling-drop ellipse{fill:#fff1d3;opacity:.7}@media(prefers-reduced-motion:reduce){.hero-liquid-wave__droplet,.hero-liquid-wave__forming,.hero-liquid-wave__impact,.hero-liquid-run,.hero-travelling-drop{display:none}}.hero-liquid-wave--menu{display:block}.hero-assistant-layer{position:fixed;inset:0;z-index:2;overflow:clip;pointer-events:none}.hero-assistant{--assistant-cycle: 27s;--assistant-delay: .15s;position:absolute;inset-block-end:max(1.25rem,env(safe-area-inset-bottom));inset-inline-end:max(var(--gutter),env(safe-area-inset-right));width:clamp(4.7rem,min(9vw,17svh),8rem);visibility:hidden;animation:assistant-visit var(--assistant-cycle) var(--assistant-delay) infinite}.hero-assistant__float{position:relative;animation:assistant-float 3.4s ease-in-out infinite}.hero-assistant__robot{display:block;width:100%;height:auto;filter:drop-shadow(0 5px 9px #100803a0)}.hero-assistant__bubble{position:absolute;z-index:1;top:10%;right:calc(100% + .3rem);padding:.55rem .76rem;border:1px solid #ff8c4680;border-radius:.85rem .85rem .25rem;background:#251c17;box-shadow:0 5px 16px #10080370;color:#fff3e8;font-size:clamp(.75rem,1.05vw,.95rem);line-height:1.25;white-space:nowrap;transform-origin:right bottom;opacity:0;animation:assistant-greeting var(--assistant-cycle) var(--assistant-delay) infinite}.hero-assistant__arm{transform-origin:81px 86px;animation:assistant-wave var(--assistant-cycle) var(--assistant-delay) infinite}.hero-assistant__head{transform-box:fill-box;transform-origin:center;animation:assistant-turn var(--assistant-cycle) var(--assistant-delay) infinite}.hero-assistant__eyes{transform-box:fill-box;transform-origin:center;animation:assistant-blink 5.1s ease-in-out infinite}@keyframes assistant-visit{0%{visibility:visible;transform:translate(55vw);animation-timing-function:cubic-bezier(.22,1,.36,1)}3.4%{transform:translate(-5px);animation-timing-function:ease-out}4.8%,51%{visibility:visible;transform:translate(0)}51%{animation-timing-function:cubic-bezier(.65,0,.8,1)}55%{visibility:hidden;transform:translate(55vw)}to{visibility:hidden;transform:translate(55vw)}}@keyframes assistant-greeting{0%,4.7%{opacity:0;transform:scale(.85)}6%{opacity:1;transform:scale(1.04)}7%,48%{opacity:1;transform:scale(1)}50%,to{opacity:0;transform:scale(.88)}}@keyframes assistant-wave{0%,4%,12%,to{transform:rotate(0)}5.5%,8%,10.5%{transform:rotate(-14deg)}6.75%,9.25%{transform:rotate(10deg)}}@keyframes assistant-turn{0%,3%{transform:perspective(100px) rotateY(-15deg) rotate(5deg)}6%,to{transform:perspective(100px) rotateY(0)}}@keyframes assistant-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes assistant-blink{0%,42%,47%,87%,92%,to{transform:scaleY(1)}44%,89%{transform:scaleY(.1)}}@media(max-width:700px){.hero-assistant{width:clamp(3.7rem,18vw,4.75rem)}}@media(prefers-reduced-motion:reduce){.hero-assistant-layer{display:none}}.background-music{position:fixed;z-index:20;top:50%;right:max(1rem,env(safe-area-inset-right));display:grid;width:3.5rem;aspect-ratio:1;place-items:center;padding:.8rem;border:1px solid #ffffff45;border-radius:50%;background:#242321f2;box-shadow:0 .45rem 1rem #0003;cursor:pointer;transform:translateY(-50%);transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.background-music:hover,.background-music[data-playing]{border-color:#ff752b;background:#30241e}.background-music:hover{transform:translate(-2px,-50%)}.background-music__icon{display:block;width:1.3rem;height:1.55rem;object-fit:contain;filter:brightness(0) saturate(100%) invert(49%) sepia(62%) saturate(1377%) hue-rotate(338deg) brightness(95%)}.background-music__mode{position:absolute;right:.34rem;bottom:.34rem;display:grid;width:1rem;aspect-ratio:1;place-items:center;border:1px solid #242321;border-radius:50%;color:#fff;background:#77716b;font-size:.48rem;font-weight:800;line-height:1}.background-music[data-playing] .background-music__mode{color:#242321;background:var(--accent);box-shadow:0 0 .45rem #ff752b99}@media(max-width:700px){.background-music{right:max(.8rem,env(safe-area-inset-right))}}
