:root{--primary:#c2255c;--primary-focus:#d6336c;--primary-tint:#c2255c17;--sky:#7dccad;--blush:#f599c6;--butter:#ffea88;--ink:#39485f;--ink-80:#4d5c77;--ink-48:#7a8299;--canvas:#fbf6ec;--parchment:#f1e9d8;--pearl:#fefbf4;--hairline:#e0d8c4;--divider:#ede6d6;--chip-gray:#d3c9b0;--tile-1:#2a3448;--tile-2:#33405a;--black:#1d2534;--on-dark:#fbf6ec;--word-dim:#5a6b8a;--statement-sub:#a9b4cb;--sky-deep:#177356;--product-shadow:#00000038 3px 5px 30px 0;--r-sm:12px;--r-lg:24px;--r-pill:9999px;--s-4:4px;--s-8:8px;--s-12:12px;--s-17:17px;--s-24:24px;--s-32:32px;--s-48:48px;--s-80:80px;--ease:cubic-bezier(.28, .11, .32, 1);--out:cubic-bezier(.22, 1, .36, 1);--spring:cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-feature-settings:"ss03";letter-spacing:-.374px;background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:SF Pro Display,SF Pro Text,system-ui,-apple-system,Inter,sans-serif;font-size:17px;font-weight:400;line-height:1.47;overflow-x:hidden}a{color:var(--primary);text-decoration:none}::selection{background:var(--primary);color:var(--on-dark)}:focus-visible{outline:2px solid var(--primary-focus);outline-offset:2px}.btn-primary{background:var(--primary);color:var(--on-dark);border-radius:var(--r-pill);will-change:transform;transition:background .3s var(--ease);padding:15px 28px;font-size:17px;line-height:1;display:inline-block}.btn-primary:hover{background:var(--primary-focus)}.btn-primary:active{transform:scale(.95)}.btn-ghost{color:var(--primary);border:1px solid var(--primary);border-radius:var(--r-pill);will-change:transform;transition:background .3s var(--ease);background:0 0;padding:14px 27px;font-size:17px;line-height:1;display:inline-block}.btn-ghost:hover{background:var(--primary-tint)}.btn-ghost:active{transform:scale(.95)}.t-section-head{letter-spacing:0;font-size:40px;font-weight:600;line-height:1.1}.t-eyebrow{letter-spacing:.231px;font-size:21px;font-weight:600;line-height:1.19}.t-tagline{letter-spacing:0;font-size:clamp(19px,2vw,24px);font-weight:300;line-height:1.5}.t-kicker{letter-spacing:.32em;text-transform:uppercase;font-size:14px;font-weight:600;line-height:1.29}.t-fine{letter-spacing:-.12px;font-size:12px;font-weight:400;line-height:1}@media (max-width:834px){.t-eyebrow{font-size:17px;line-height:1.29}}html.menu-open body{overflow:hidden}.on-dark{background:var(--tile-1);color:var(--on-dark)}.on-dark-blue{color:var(--sky)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv,.hero-eyebrow,.hero-tagline,.hero-ctas,.orb-wrap,.hero h1 .w,.nav,.scroll-hint{opacity:1!important;filter:none!important;transition:none!important;transform:none!important}.nav{border-radius:var(--r-pill)!important;width:max-content!important;padding:7px 10px 7px 16px!important;top:10px!important;transform:translate(-50%)!important}.nav .nav-name{opacity:1!important;max-width:200px!important}.nav-sheet{transition:none!important}.orb-spin,.code-caret,.vis-art i,.scroll-hint:after,.email .l{animation:none!important}.statement-word{transform:none!important}.statement-words .statement-word:first-of-type{color:var(--blush)!important}.statement-words .statement-word:nth-of-type(2){color:var(--butter)!important}.statement-words .statement-word:nth-of-type(3){color:var(--sky)!important}.statement-progress i{transform:scaleX(1)!important}.cursor-dot,.cursor-ring{display:none!important}}.rv{opacity:0;filter:blur(10px);transition:opacity .9s var(--out) var(--d,0s), transform 1.05s var(--out) var(--d,0s), filter .9s var(--out) var(--d,0s);transform:translateY(48px)rotate(1.4deg)}.rv.in{opacity:1;filter:none;transform:none}.rv-soft{filter:none;transition:opacity .8s var(--out) var(--d,0s), transform .8s var(--out) var(--d,0s);transform:translateY(20px)}.rv-soft.in{opacity:1;transform:none}.rv-fade{filter:none;transition:opacity .7s var(--out) var(--d,0s);transform:none}.rv-fade.in{opacity:1;transform:none}.nav{--wide:min(1200px, calc(100vw - 48px));--p:var(--nav-p,0);--q:calc(1 - var(--p));top:calc(16px - 6px * var(--p));z-index:100;grid-auto-flow:column;grid-template-columns:minmax(max-content, calc(1fr - .6fr * var(--p))) max-content minmax(max-content, 1fr);column-gap:calc(16px * var(--p));width:calc(var(--q) * var(--wide) + var(--p) * var(--nav-pill,var(--wide)));padding:calc(12px - 3px * var(--p)) calc(14px + 6px * var(--q)) calc(12px - 3px * var(--p)) calc(14px + 6px * var(--q));-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);border-radius:var(--r-pill);transition:transform .9s var(--out) .2s;background:#f1e9d8d1;border:1px solid #00000012;align-items:center;display:grid;position:fixed;left:50%;transform:translate(-50%)}html:not(.loaded) .nav{transform:translate(-50%,-120%)}.nav-logo{color:var(--ink);justify-self:start;align-items:center;gap:10px;display:flex}.nav-logo[aria-current=page]{cursor:pointer}.nav-mark{border-radius:var(--r-sm);background:var(--ink);width:24px;height:24px;color:var(--on-dark);transition:transform .6s var(--spring), background-color .6s var(--spring);place-items:center;display:grid}.nav-mark svg{width:13px;height:13px;display:block}.nav-logo:hover .nav-mark{background:var(--primary);transform:rotate(-90deg)}.nav-name{letter-spacing:-.224px;opacity:var(--q);max-width:calc(200px * var(--q));width:calc(200px * var(--q));margin-right:calc(-10px * var(--p));white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.nav-links{gap:calc(28px - 8px * var(--p));white-space:nowrap;padding-right:calc(140px * var(--q));justify-self:center;display:flex}.nav-links a{letter-spacing:-.224px;color:var(--ink-80);align-items:center;gap:4px;padding:4px 0;font-size:14px;display:inline-flex;position:relative}.nav-ext{opacity:.55;width:10px;height:10px;transition:transform .4s var(--spring), opacity .3s var(--ease);flex:none}.nav-links a:hover .nav-ext{opacity:1;transform:translate(1px,-1px)}.nav-links a:after{content:"";transform-origin:0;height:1px;transition:transform .4s var(--out);background:currentColor;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav-links a:hover:after{transform:scaleX(1)}.nav-links a[aria-current=page]{color:var(--ink)}.nav-links a[aria-current=page]:after{background:var(--primary);transform:scaleX(1)}.nav-links a[aria-current=page]:hover{color:var(--ink)}.nav-links a[aria-current=page]:hover:after{transform:scaleX(1)}.nav-links a[aria-current=page]{pointer-events:none}.nav-cta{border-radius:var(--r-pill);background:var(--primary);color:var(--on-dark);letter-spacing:-.224px;white-space:nowrap;height:33px;transition:background-color .3s var(--ease);align-items:center;padding:8px 16px;font-size:14px;font-weight:600;line-height:1;display:inline-flex}.nav-cta:hover{background:var(--primary-focus)}.nav-actions{justify-self:end;align-items:center;gap:10px;display:flex}.nav-burger{border-radius:var(--r-pill);background:var(--primary);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:37px;height:33px;display:none}.nav-burger:hover{background:var(--primary-focus)}.nav-burger-bar{background:var(--on-dark);width:14px;height:1.5px;transition:transform .3s var(--out), opacity .2s var(--ease);border-radius:1px}.nav-burger[aria-expanded=true] .nav-burger-bar:first-child{transform:translateY(3.25px)rotate(45deg)}.nav-burger[aria-expanded=true] .nav-burger-bar:last-child{transform:translateY(-3.25px)rotate(-45deg)}@media (max-width:834px){.nav-links{display:none}.nav-burger{display:flex}.nav{border-radius:var(--r-lg);grid-template-columns:max-content 1fr;column-gap:10px;width:calc(100vw - 24px);padding:10px 14px;top:12px}.nav-actions{justify-self:end}.nav-name{opacity:1;width:auto;max-width:none;margin-right:0;display:block}}.nav-sheet{z-index:99;-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);opacity:0;visibility:hidden;width:100vw;height:100dvh;transition:opacity .25s var(--out), transform .25s var(--out), visibility 0s linear .25s;background:#fbf6ecf7;flex-direction:column;padding:96px 24px 40px;display:none;position:fixed;inset:0;transform:translateY(-8px)}@media (max-width:834px){.nav-sheet{display:flex}}html.menu-open .nav-sheet{opacity:1;visibility:visible;transition:opacity .25s var(--out), transform .25s var(--out);transform:translateY(0)}.nav-sheet-link{border-bottom:1px solid var(--divider);letter-spacing:-.01em;color:var(--ink);transition:color .2s var(--ease);border-radius:0;align-items:center;gap:10px;padding:18px 12px;font-size:24px;font-weight:600;display:flex}.nav-sheet-link .nav-ext{opacity:.55;flex:none;width:15px;height:15px}.nav-sheet-link:last-child{border-bottom:none}.nav-sheet-link:hover,.nav-sheet-link[aria-current=page]{color:var(--primary)}.nav-sheet-link[aria-current=page]:after{content:"·";color:var(--primary);margin-left:10px}.footer{background:var(--parchment);padding:80px 32px 96px}.footer-inner{max-width:1200px;margin:0 auto}.footer-cols{flex-wrap:wrap;gap:80px;display:flex}.footer-col-head{letter-spacing:-.224px;color:var(--ink);margin-bottom:var(--s-8);font-size:14px;font-weight:600;line-height:1.29}.footer-col a{width:-moz-fit-content;width:fit-content;color:var(--ink-80);transition:color .3s var(--ease), transform .4s var(--spring);align-items:center;gap:10px;font-size:17px;line-height:2.41;display:flex}.footer-col a:hover{color:var(--primary);transform:translate(6px)}.footer-col a[aria-current=page]{color:var(--primary)}.footer-soc-icon{flex:none;width:18px;height:18px}.footer-legal{justify-content:space-between;gap:var(--s-12);margin-top:var(--s-80);border-top:1px solid var(--chip-gray);color:var(--ink-48);flex-wrap:wrap;padding-top:17px;display:flex}.cursor-dot,.cursor-ring{pointer-events:none;z-index:9999;opacity:0;transition:opacity .3s var(--ease);display:none;position:fixed;top:0;left:0}html.has-cursor .cursor-dot{display:block}html.has-cursor .cursor-ring{display:grid}html.has-cursor,html.has-cursor *{cursor:none!important}.cursor-dot.is-live,.cursor-ring.is-live{opacity:1}.cursor-dot{background:var(--primary);width:8px;height:8px;transition:background-color .2s var(--ease);border-radius:50%}.cursor-dot.is-cta{background:color-mix(in srgb, var(--sky) 70%, var(--ink))}.cursor-ring{border:1.5px solid color-mix(in srgb, var(--primary) 55%, transparent);width:40px;height:40px;transition:opacity .3s var(--ease), background-color .3s var(--ease), border-color .3s var(--ease);border-radius:50%;grid-template:1fr/1fr;place-items:center}.cursor-ring.is-view{background:var(--primary);border-color:var(--primary)}.cursor-ring.is-cta{background:color-mix(in srgb, var(--sky) 45%, transparent);border-color:var(--sky)}.cursor-ring.is-cta .cursor-label{opacity:0!important}.cursor-label,.cursor-favicon-chip{grid-area:1/1}.cursor-label{letter-spacing:.02em;color:var(--on-dark);opacity:0;transition:opacity .2s var(--ease);font-size:11px;font-weight:600}.cursor-ring.is-view .cursor-label{opacity:1}.cursor-ring.has-icon .cursor-label{opacity:0!important}.cursor-favicon-chip{opacity:0;width:24px;height:24px;transition:opacity .2s var(--ease);background:#fff;border-radius:50%;place-items:center;display:none;overflow:hidden}.cursor-ring.has-icon .cursor-favicon-chip{display:grid}.cursor-ring.is-view.has-icon .cursor-favicon-chip{opacity:1}.cursor-favicon{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.route-fade{animation:route-in .22s var(--out) both}@keyframes route-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.route-fade{animation:none}}.particles{z-index:0;pointer-events:none;filter:blur(6px);will-change:filter;width:100%;height:100%;position:absolute;inset:0}.particles-fullpage{z-index:0}.marquee{background:var(--canvas);border-top:1px solid var(--divider);border-bottom:1px solid var(--divider);padding:22px 0;overflow:hidden}.marquee.on-dark{background:var(--black);border-color:#ffffff14}.marquee-skew{will-change:transform}.marquee-track{white-space:nowrap;will-change:transform;gap:56px;width:max-content;display:flex}.marquee-track span{letter-spacing:.231px;color:var(--ink);align-items:center;gap:56px;font-size:21px;font-weight:600;line-height:1.19;display:flex}.marquee.on-dark .marquee-track span{color:var(--parchment)}.marquee-track span:after{content:"";background:var(--primary);border-radius:50%;flex:none;width:8px;height:8px}.marquee.on-dark .marquee-track span:after{background:var(--sky)}.roll{vertical-align:bottom;width:var(--rw-w,max-content);height:var(--rw-h,auto);text-align:left;margin-left:var(--rw-gap,.14em);-webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 var(--rw-fade-top,3px), #000 calc(100% - var(--rw-fade-bottom,3px)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 var(--rw-fade-top,3px), #000 calc(100% - var(--rw-fade-bottom,3px)), transparent 100%);mask-image:linear-gradient(to bottom, transparent 0, #000 var(--rw-fade-top,3px), #000 calc(100% - var(--rw-fade-bottom,3px)), transparent 100%);display:inline-block;position:relative;overflow:hidden}.roll-rows{will-change:transform;margin-top:var(--rw-seat,calc(-1 * var(--rw-pad-top,0px)));display:block}.roll-rows>span{padding-top:var(--rw-pad-top,.14em);padding-bottom:var(--rw-pad-bottom,.2em);white-space:nowrap;display:block}@media (prefers-reduced-motion:reduce){.roll-rows>span{padding-top:0;padding-bottom:0}.roll-rows{margin-top:0}}.hero{text-align:center;background:var(--canvas);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:110px 32px 72px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:radial-gradient(#0000000d 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#0000 30%,#000 100%);mask-image:radial-gradient(70% 60% at 50% 40%,#0000 30%,#000 100%)}.hero-inner{z-index:2;will-change:transform, opacity;position:relative}.hero-eyebrow{letter-spacing:.231px;color:var(--ink-48);opacity:0;filter:blur(6px);transition:opacity .9s var(--out) .1s, transform .9s var(--out) .1s, filter .9s var(--out) .1s;margin-bottom:17px;font-size:21px;font-weight:600;line-height:1.19;transform:translateY(20px)}html.loaded .hero-eyebrow{opacity:1;filter:blur();transform:none}.hero h1{letter-spacing:-.03em;color:var(--ink);max-width:1000px;font-size:clamp(44px,6.4vw,88px);font-weight:600;line-height:1.05}.hero h1 .w-line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.hero h1 .accent{color:var(--primary)}.hero-tagline{letter-spacing:0;color:var(--ink-80);opacity:0;filter:blur(6px);max-width:560px;transition:opacity .9s var(--out) .75s, transform .9s var(--out) .75s, filter .9s var(--out) .75s;margin:24px auto 0;font-size:clamp(19px,2vw,24px);font-weight:300;line-height:1.5;transform:translateY(20px)}html.loaded .hero-tagline{opacity:1;filter:blur();transform:none}.hero-ctas{opacity:0;transition:opacity .9s var(--out) .9s, transform .9s var(--out) .9s;justify-content:center;align-items:center;gap:17px;margin-top:32px;display:flex;transform:translateY(20px)}html.loaded .hero-ctas{opacity:1;transform:none}.scroll-hint{letter-spacing:-.12px;color:var(--ink-48);z-index:2;opacity:0;transition:opacity 1s var(--out) 1.6s;flex-direction:column;align-items:center;gap:8px;font-size:12px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}html.loaded .scroll-hint{opacity:1}.scroll-hint:after{content:"";background:linear-gradient(var(--ink-48), transparent);width:1px;height:36px;animation:hint-drop 1.8s var(--ease) infinite;transform-origin:top}@keyframes hint-drop{0%{transform:scaleY(0)}45%{transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.statement{background:var(--tile-1);height:320vh;position:relative}.statement.statement-pass{height:auto}.statement.statement-pass .statement-sticky{height:auto;min-height:72vh;padding-top:96px;padding-bottom:96px;position:static}.statement.statement-pass .statement-progress{opacity:0}.statement-sticky{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100vh;padding:0 32px;display:flex;position:sticky;top:0;overflow:hidden}.statement-kicker{letter-spacing:.32em;text-transform:uppercase;color:var(--sky);margin-bottom:32px;font-size:14px;font-weight:600;line-height:1.29}.statement-words{letter-spacing:-.03em;flex-wrap:wrap;justify-content:center;gap:.28em;font-size:clamp(52px,9.5vw,132px);font-weight:600;line-height:1.05;display:flex}.statement-word{color:var(--word-dim);will-change:transform, color;display:inline-block}.statement-sub{letter-spacing:.231px;max-width:560px;color:var(--statement-sub);margin-top:40px;font-size:21px;font-weight:400;line-height:1.4}.statement-progress{background:#ffffff1f;border-radius:3px;width:120px;height:3px;position:absolute;bottom:40px;left:50%;overflow:hidden;transform:translate(-50%)}.statement-progress i{background:var(--sky);transform-origin:0;border-radius:3px;width:100%;height:100%;display:block;transform:scaleX(0)}@media (max-width:834px){.statement{height:260vh}}.contacts-kicker{color:var(--primary);margin-bottom:var(--s-24)}.contacts-head{letter-spacing:-.02em;max-width:720px;font-size:clamp(36px,4.6vw,64px);font-weight:600;line-height:1.07}.contacts-email-row{margin-top:var(--s-48)}.email{letter-spacing:-.02em;color:var(--ink);padding-bottom:10px;font-size:clamp(30px,5vw,68px);font-weight:600;line-height:1.1;display:inline-block;position:relative}.email:after{content:"";border-radius:var(--r-pill);background:linear-gradient(90deg, var(--primary), var(--sky));transform-origin:0;height:4px;transition:transform .7s var(--out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.email:hover:after{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.email{color:var(--ink)}}[data-email] .l{animation:letter-wave-loop 5.2s var(--ease) infinite;animation-delay:calc(var(--i) * -60ms);color:var(--ink);transition:color .35s var(--ease);display:inline-block}@keyframes letter-wave-loop{0%,to{transform:translateY(0)rotate(0)}12%{transform:translateY(-.13em)rotate(-2.5deg)}24%{transform:translateY(0)rotate(0)}}@keyframes letter-wave-hover{28%{transform:translateY(-.34em)rotate(-7deg)scale(1.06)}55%{transform:translateY(-.16em)rotate(3deg)}75%{transform:translateY(.03em)}}.contacts-head .roll{color:var(--primary-focus)}[data-email] .l{animation:letter-wave-loop 5.2s var(--ease) infinite;animation-delay:calc(var(--i) * -60ms);color:var(--ink);transition:color .35s var(--ease);display:inline-block}[data-email]:hover .l{animation:letter-wave-hover .9s var(--spring) calc(var(--i) * 34ms);color:color-mix(in oklab, var(--primary) calc((1 - var(--p,0)) * 100%), var(--sky-deep))}.about-copy .roll{color:var(--primary);font-weight:600;position:relative;top:2px}.about{background:var(--canvas);padding:140px 32px;position:relative;overflow:hidden}.about-teaser{text-align:center}.about-inner{z-index:2;max-width:1200px;margin:0 auto;position:relative}.about-copy{letter-spacing:0;color:var(--ink-80);max-width:860px;margin:32px auto 0;font-size:clamp(24px,3vw,34px);font-weight:300;line-height:1.5}.about-copy .rv{display:inline-block}.text-link{margin-top:40px;font-size:17px;display:inline-block}.text-link:after{content:" ›"}.text-link:hover{text-decoration:underline}.card{perspective:1600px;will-change:transform;height:100%;display:block}.card-tilt{background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-lg);height:100%;transform-style:preserve-3d;will-change:transform;transition:border-color .4s var(--ease);flex-direction:column;padding:32px;display:flex;position:relative}.card-visual,.card-head,.card-tags,.card-link,.card-hit{transition:transform .45s var(--ease);transform:none}.card:hover .card-visual{transform:translateZ(30px)}.card:hover .card-head{transform:translateZ(24px)}.card:hover .card-tags{transform:translateZ(20px)}.card:hover .card-link{transform:translateZ(32px)}.card:hover .card-hit{transform:translateZ(40px)}.card:hover .card-tilt{border-color:var(--chip-gray)}.card-visual{aspect-ratio:1.9;border-radius:var(--r-sm);width:100%;margin-bottom:32px;position:relative;overflow:hidden}.vis-art{will-change:transform;place-items:center;display:grid;position:absolute;inset:0}.vis-art .vis-img{object-fit:cover;width:100%;height:100%}.card-visual.has-cover{background:var(--parchment);transition:background-color .3s var(--ease)}.card-visual:after{content:"";transition:transform .9s var(--ease);pointer-events:none;background:linear-gradient(105deg,#0000 42%,#ffffff80 50%,#0000 58%);position:absolute;inset:-20%;transform:translate(-130%)skew(-8deg)}.card:hover .card-visual:after{transform:translate(130%)skew(-8deg)}.v1{background:var(--pearl)}.v1 .vis-art i:first-child{background:var(--tile-1);width:62%;height:66%;box-shadow:var(--product-shadow);border-radius:12px;position:absolute}.v1 .vis-art i:nth-child(2){border-radius:var(--r-pill);background:var(--blush);width:34%;height:8%;position:absolute;top:44%;left:36%}.v1 .vis-art i:nth-child(3){border-radius:var(--r-pill);background:#ffffff59;width:22%;height:8%;position:absolute;top:58%;left:36%}.v2{background:var(--tile-1)}.v2 .vis-art i:first-child{border:2px solid color-mix(in srgb, var(--sky) 50%, transparent);width:44%;height:58%;animation:pulse-ring 2.6s var(--ease) infinite;border-radius:50%;position:absolute}.v2 .vis-art i:nth-child(2){border:2px solid color-mix(in srgb, var(--sky) 80%, transparent);width:30%;height:40%;animation:pulse-ring 2.6s var(--ease) .5s infinite;border-radius:50%;position:absolute}.v2 .vis-art i:nth-child(3){background:var(--butter);width:14%;height:19%;box-shadow:var(--product-shadow);border-radius:50%;position:absolute}@keyframes pulse-ring{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(1.12)}}.v3{background:var(--parchment)}.v3 .vis-art i:first-child{border:1.5px solid var(--chip-gray);border-radius:50%;width:52%;height:69%;position:absolute}.v3 .vis-art i:nth-child(2){border:1.5px solid var(--chip-gray);border-radius:50%;width:34%;height:45%;position:absolute}.v3 .vis-art i:nth-child(3){background:var(--primary);width:12%;height:16%;box-shadow:var(--product-shadow);border-radius:50%;animation:7s linear infinite orbit;position:absolute}@keyframes orbit{0%{transform:rotate(0)translate(120px)rotate(0)}to{transform:rotate(360deg)translate(120px)rotate(-360deg)}}.v4{background:var(--pearl)}.v4 .vis-art svg{width:70%;height:auto;color:var(--primary)}.card-head{justify-content:space-between;align-items:baseline;display:flex}.card-name{letter-spacing:.231px;min-height:2.38em;font-size:21px;font-weight:600;line-height:1.19}.card-year{letter-spacing:-.12px;color:var(--ink-48);font-size:12px}.card-tags{flex-wrap:wrap;gap:8px;margin-top:12px;margin-bottom:17px;display:flex}.chip{letter-spacing:-.12px;background:var(--parchment);color:var(--ink-80);border-radius:var(--r-pill);transition:transform .45s var(--spring), background .3s var(--ease), color .3s var(--ease);transition-delay:calc(var(--i) * 45ms);padding:5px 12px;font-size:12px}.card:hover .chip{background:var(--primary-tint);color:var(--primary);transform:translateY(-4px)}.card-link{letter-spacing:-.224px;align-items:center;gap:4px;width:-moz-fit-content;width:fit-content;margin-top:auto;padding-top:17px;font-size:14px;display:inline-flex;position:static}.card-hit{border-radius:var(--r-lg);position:absolute;inset:0}.card-link .arrow{transition:transform .4s var(--spring);display:inline-block}.card:hover .card-link .arrow{transform:translate(5px)}.projects{background:var(--parchment);padding:120px 32px 140px;position:relative;overflow:hidden}.section-inner{z-index:2;max-width:1200px;margin:0 auto;position:relative}.section-sub{letter-spacing:.231px;color:var(--ink-48);margin-bottom:64px;font-size:21px;font-weight:600;line-height:1.19}.card-grid{grid-template-columns:1fr 1fr;grid-auto-rows:1fr;align-items:stretch;gap:32px;display:grid}.grid-cta{justify-content:center;margin-top:64px;display:flex}@media (max-width:834px){.projects{padding:88px 20px 112px}.section-sub{margin-bottom:48px;font-size:17px;line-height:1.29}.card-grid{grid-template-columns:1fr}.grid-cta{margin-top:48px}.contacts-section{padding:88px 20px 80px}}.contacts-section{background:var(--parchment);padding:120px 32px 96px;scroll-margin-top:96px;position:relative;overflow:hidden}.contacts-section .contacts{z-index:2;max-width:1200px;margin:0 auto;position:relative}.projects-index{background:0 0;min-height:100vh;padding:0 0 140px;position:relative}.projects-head{padding:200px 32px 80px}.projects-head-inner{z-index:2;position:relative}.section-head{margin-bottom:8px}.section-sub{letter-spacing:.231px;color:var(--ink-48);font-size:21px;font-weight:600;line-height:1.19}.card-grid{grid-template-columns:1fr 1fr;grid-auto-rows:1fr;align-items:stretch;gap:32px;padding:0 32px;display:grid}@media (max-width:834px){.projects-head{padding:140px 20px 56px}.section-sub{font-size:17px;line-height:1.29}.card-grid{grid-template-columns:1fr;padding:0 20px}}.section-sub .roll{color:var(--primary)}.section-inner{max-width:1200px;margin:0 auto}.project{background:0 0;position:relative}.project-hero,.prose,.project-nav{z-index:2;position:relative}.project-head-band{padding:0}.project-head{z-index:2;padding:200px 32px 48px;position:relative}.project-desc{letter-spacing:-.021px;color:var(--ink-48);max-width:720px;margin-top:16px;font-size:21px;font-weight:400;line-height:1.38}.project-hero{padding:0 32px 80px}.project-links{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.project-link{color:var(--on-dark);background:var(--primary);border:1px solid var(--primary);border-radius:var(--r-pill);transition:background .3s var(--ease), border-color .3s var(--ease);align-items:center;gap:6px;padding:10px 20px;font-size:17px;font-weight:600;display:inline-flex}.project-link:hover{background:var(--primary-focus);border-color:var(--primary-focus)}.project-link.ghost{color:var(--primary);background:0 0}.project-link.ghost:hover{background:var(--primary-tint)}.project-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px;display:grid}.meta-card{background:var(--pearl);border:1px solid var(--hairline);border-radius:var(--r-lg);transition:transform .45s var(--spring), border-color .3s var(--ease);padding:20px 22px 18px;position:relative;overflow:hidden}.meta-card:before{content:"";border-radius:var(--r-pill);background:var(--primary);width:44px;height:3px;position:absolute;top:0;left:22px}.meta-card:hover{border-color:var(--chip-gray);transform:translateY(-3px)}.meta-card dt{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-48);margin-bottom:8px;font-size:12px;font-weight:600}.meta-card dd{color:var(--ink);font-size:17px;font-weight:600;line-height:1.35}.stack-card{grid-column:1/-1}.stack-card>dd{margin:0}.stack-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 40px;display:grid}.stack-group{flex-direction:column;gap:3px;display:flex}.stack-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-48);font-size:11px;font-weight:600}.stack-group-items{color:var(--ink);font-size:15px;font-weight:500;line-height:1.45}.project-hero img,.project-hero video{border-radius:var(--r-lg);width:100%;height:auto;box-shadow:var(--product-shadow);background:#fff;display:block}.prose{max-width:720px;padding:0 32px 120px}.prose h2{letter-spacing:-.136px;margin:72px 0 20px;font-size:34px;font-weight:600;line-height:1.18}.prose h3{letter-spacing:-.096px;margin:48px 0 16px;font-size:24px;font-weight:600;line-height:1.25}.prose p{margin:0 0 28px;line-height:1.6}.prose img{border-radius:var(--r-sm);background:#fff;width:100%;height:auto;margin:12px 0 8px}.prose figure{box-shadow:var(--product-shadow);border-radius:var(--r-lg);background:#fff;margin:56px 0;overflow:hidden}.prose figure img{background:#fff;border-radius:0;margin:0;display:block}.prose figcaption{color:var(--ink-48);border-top:1px solid var(--hairline);padding:16px 24px;font-size:14px;line-height:1.5}.prose a{color:var(--primary);background-image:linear-gradient(var(--chip-gray), var(--chip-gray));transition:background-size .35s var(--out);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;padding-bottom:2px;font-weight:600;text-decoration:none}.prose a:hover{background-image:linear-gradient(var(--primary), var(--primary));background-size:100% 2px}.prose ul,.prose ol{margin:0 0 28px;padding-left:24px}.prose li{margin-bottom:12px;line-height:1.6}.project-nav{justify-content:space-between;gap:32px;padding:0 32px 120px;display:flex}.pn-link{flex-direction:column;gap:6px;text-decoration:none;display:flex}.pn-link.next{text-align:right;margin-left:auto}.pn-dir{letter-spacing:-.12px;color:var(--ink-48);font-size:12px}.pn-title{letter-spacing:.231px;color:var(--ink);transition:color .3s var(--ease);font-size:21px;font-weight:600}.pn-link:hover .pn-title{color:var(--primary)}@media (max-width:834px){.project-head{padding:140px 24px 48px}.t-section-head{font-size:34px}.project-desc{margin-top:24px;font-size:18px;line-height:1.55}.project-hero{padding:0 24px 72px}.prose{padding:0 24px 104px}.project-nav{flex-direction:column;gap:28px;padding:0 24px 104px}.pn-link.next{text-align:left;margin-left:0}.project-meta{grid-template-columns:1fr;gap:12px;margin-top:32px}.stack-groups{grid-template-columns:1fr;gap:14px}.prose p{margin:0 0 28px}.prose h2{margin:56px 0 20px}.prose h3{margin:40px 0 16px}.prose ul,.prose ol{margin:0 0 28px}.prose li{margin-bottom:14px}.prose figure{margin:52px 0}.prose figcaption{padding:16px 20px}}.about{background:var(--canvas);padding:0 0 140px;position:relative}.about-head-band{z-index:2;padding:160px 32px 40px;position:relative}.about-head-inner{position:relative}.about-inner{z-index:2;max-width:1200px;margin:0 auto;padding:0 32px;position:relative}.about-kicker{color:var(--primary);margin-bottom:var(--s-24)}.about-head{margin-bottom:80px}.about-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:96px;display:grid}.about-copy{letter-spacing:0;color:var(--ink-80);font-size:clamp(24px,3vw,34px);font-weight:300;line-height:1.5}.about-copy p+p{margin-top:40px}.about-copy strong{color:var(--ink);font-weight:600}.about-portrait{position:sticky;top:120px}.portrait-tile{aspect-ratio:1;border-radius:var(--r-lg);background:var(--pearl);box-shadow:var(--product-shadow);position:relative;overflow:hidden}.portrait-img{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block}.portrait-accent{border-radius:var(--r-pill);background:var(--primary);width:38%;height:8px;position:absolute;bottom:8%;left:8%;box-shadow:0 6px 22px #c2255c52}.portrait-caption{color:var(--ink-48);text-align:center;letter-spacing:-.12px;margin-top:12px;font-size:14px;line-height:1.29}.facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:120px;display:grid}.fact{background:var(--pearl);border:1px solid var(--hairline);border-radius:var(--r-lg);transition:transform .45s var(--spring), border-color .3s var(--ease);padding:28px 28px 26px;position:relative;overflow:hidden}.fact:before{content:"";border-radius:var(--r-pill);background:var(--primary);width:44px;height:3px;position:absolute;top:0;left:28px}.fact:hover{border-color:var(--chip-gray);transform:translateY(-3px)}.fact-label{letter-spacing:.32em;text-transform:uppercase;color:var(--ink-48);margin-bottom:12px;font-size:12px;font-weight:600}.fact-value{letter-spacing:.231px;color:var(--ink);font-size:21px;font-weight:600;line-height:1.19}.about-block{border-top:1px solid var(--hairline);margin-top:120px;padding-top:80px}.block-kicker{color:var(--primary);margin-bottom:var(--s-24)}.block-head{color:var(--ink);letter-spacing:-.02em;margin-bottom:48px;font-size:clamp(28px,3.4vw,40px);font-weight:700;line-height:1.15}.skill-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 64px;display:grid}.skill-group-label{color:var(--ink-48);margin-bottom:14px;font-size:12px}.skill-chips{flex-wrap:wrap;gap:8px;display:flex}.chip{letter-spacing:-.12px;background:var(--parchment);color:var(--ink-80);border-radius:var(--r-pill);padding:5px 12px;font-size:12px}.timeline{flex-direction:column;gap:40px;margin:0;padding:0;list-style:none;display:flex}.role{grid-template-columns:24px minmax(0,1fr);align-items:start;gap:20px;display:grid;position:relative}.role-marker{justify-items:center;height:100%;display:grid;position:relative}.role-dot{background:var(--primary);width:10px;height:10px;box-shadow:0 0 0 4px var(--canvas);z-index:1;border-radius:50%;margin-top:8px;display:block;position:relative}.timeline .role:before{content:"";background:var(--hairline);width:2px;position:absolute;top:22px;bottom:-40px;left:11px}.timeline .role:last-child:before{display:none}.role-head{flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:2px 14px;margin-bottom:12px;display:flex}.role-title{color:var(--ink);letter-spacing:-.01em;font-size:21px;font-weight:700}.role-period{color:var(--ink-48);letter-spacing:.02em;white-space:nowrap}.role-bullets{color:var(--ink-80);flex-direction:column;gap:8px;margin:0;padding:0;font-size:16px;line-height:1.55;list-style:none;display:flex}.role-bullets li{padding-left:20px;position:relative}.role-bullets li:before{content:"";background:var(--chip-gray);border-radius:var(--r-pill);width:8px;height:2px;position:absolute;top:.7em;left:0}.achievements{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.achievement{background:var(--pearl);border:1px solid var(--hairline);border-radius:var(--r-lg);transition:transform .45s var(--spring), border-color .3s var(--ease);padding:28px 28px 26px;position:relative;overflow:hidden}.achievement:before{content:"";border-radius:var(--r-pill);background:var(--primary);width:44px;height:3px;position:absolute;top:0;left:28px}.achievement:hover{border-color:var(--chip-gray);transform:translateY(-3px)}.achievement-title{color:var(--ink);letter-spacing:-.01em;margin-bottom:10px;font-size:18px;font-weight:700}.achievement-detail{color:var(--ink-80);font-size:15px;line-height:1.55}.about-philosophy{background:var(--tile-1);color:var(--on-dark);text-align:center;width:100vw;margin-top:120px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:88px 32px}.about-philosophy-inner{max-width:800px;margin:0 auto}.philosophy-kicker{color:var(--sky);margin-bottom:var(--s-24)}.philosophy-line{letter-spacing:-.01em;color:var(--on-dark);font-size:clamp(24px,3vw,34px);font-weight:300;line-height:1.35}.philosophy-line em{color:var(--blush);font-style:normal;font-weight:400}.about-contacts{border-top:1px solid var(--hairline);margin-top:140px;padding-top:80px}@media (max-width:834px){.about{padding:0 0 96px}.about-head-band{padding:120px 20px 32px}.about-inner{padding:0 20px}.about-grid{grid-template-columns:1fr;gap:48px}.about-portrait{max-width:280px;margin:0 auto;position:static}.facts{grid-template-columns:1fr;gap:16px}.fact{padding:22px 22px 20px}.fact:before{left:22px}.about-block{margin-top:96px;padding-top:56px}.skill-groups{grid-template-columns:1fr;gap:32px}.achievements{grid-template-columns:1fr;gap:16px}.achievement{padding:22px 22px 20px}.achievement:before{left:22px}.about-philosophy{margin-top:96px;padding:64px 20px}.about-contacts{margin-top:96px;padding-top:56px}.about-copy p+p{margin-top:48px}.timeline{gap:48px}.role-bullets{gap:12px}.timeline .role:before{bottom:-48px}}.notfound{min-height:calc(100dvh - 200px);padding:var(--s-80) 0;align-items:center;display:flex}.notfound-lead{max-width:52ch;margin-top:var(--s-24);color:var(--ink-80);font-size:20px;line-height:1.5}.notfound-links{gap:var(--s-12);margin-top:var(--s-32);flex-wrap:wrap;display:flex}.notfound-link{border-radius:var(--r-pill);background:var(--primary);color:var(--on-dark);letter-spacing:.02em;transition:transform .2s var(--ease);align-items:center;padding:14px 22px;font-weight:600;text-decoration:none;display:inline-flex}.notfound-link.ghost{color:var(--ink);border:1px solid var(--hairline);background:0 0}.notfound-link:hover{transform:translateY(-2px)}
