:root{color-scheme:dark;--bg: #000000;--surface: #111113;--ink: #f4f4f5;--ink-2: #9a9aa0;--ink-3: #5e5e64;--line: rgba(255, 255, 255, .1);--line-strong: rgba(255, 255, 255, .22);--ok: #3ddc84;--accent: #6b8cff;--accent-2: #ff8a4c;--accent-3: #3ddc84;--accent-4: #c57bff;--font: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--container: 1240px;--gutter: clamp(20px, 4vw, 48px);--radius: 20px;--ease: cubic-bezier(.22, 1, .36, 1);--dur: .9s;--dur-fast: .35s}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:1rem;line-height:1.6;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}h1,h2,h3,p{margin:0}ul{margin:0;padding:0;list-style:none}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:clamp(80px,12vw,160px)}.section+.section{padding-top:0}.display{font-size:clamp(2.75rem,8vw,7rem);font-weight:500;letter-spacing:-.045em;line-height:.98}.h2{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:500;letter-spacing:-.035em;line-height:1.05}.h3{font-size:1.25rem;font-weight:500;letter-spacing:-.02em;line-height:1.3}.lead{font-size:clamp(1.1rem,1.6vw,1.35rem);line-height:1.5;letter-spacing:-.01em;color:var(--ink-2);max-width:34ch}.muted{color:var(--ink-2)}.small{font-size:.875rem}.u{position:relative;display:inline-block;line-height:1.2}.u:after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform var(--dur-fast) var(--ease)}.u:hover:after,.u:focus-visible:after{transform:scaleX(1);transform-origin:left}.lines .line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.lines .line>span{display:block;transform:translateY(110%);transition:transform var(--dur) var(--ease);transition-delay:calc(var(--i, 0) * 70ms + var(--d, 0ms))}.lines.is-in .line>span{transform:translateY(0)}.fade{opacity:0;transform:translateY(10px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i, 0) * 60ms + var(--d, 0ms))}.fade.is-in{opacity:1;transform:none}.nav{position:fixed;inset:0 0 auto;z-index:50;padding-block:18px;transition:background-color .4s var(--ease),box-shadow .4s var(--ease)}.nav.is-scrolled{background:#0009;-webkit-backdrop-filter:blur(16px) saturate(1.4);backdrop-filter:blur(16px) saturate(1.4);box-shadow:0 1px 0 var(--line)}.nav__inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.nav__brand{font-weight:500;letter-spacing:-.02em;white-space:nowrap}.nav__links{display:flex;gap:28px;font-size:.9375rem;color:var(--ink-2)}.nav__links a{transition:color var(--dur-fast) var(--ease)}.nav__links a:hover{color:var(--accent)}@media(max-width:640px){.nav__links{gap:18px;font-size:.875rem}.nav__links a:not(:last-child){display:none}}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-top:110px;padding-bottom:clamp(48px,8vw,96px);overflow:hidden;isolation:isolate}.hero__inner{width:100%}.hero__top{display:flex;flex-direction:column;align-items:flex-start;gap:28px;margin-top:36px}.hero .display{max-width:none;font-size:clamp(2.6rem,6.2vw,5.6rem)}.typer{white-space:nowrap}.caret{display:inline-block;width:.06em;height:.82em;margin-left:.06em;background:var(--accent);vertical-align:-.04em;animation:caret 1s steps(1) infinite}.caret.is-typing{animation:none}@keyframes caret{50%{opacity:0}}.hero .lead{margin-top:0}.aurora{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;opacity:0;transition:opacity 1.6s var(--ease)}.aurora.is-in{opacity:1}.aurora i{position:absolute;border-radius:50%;filter:blur(70px);will-change:transform;mix-blend-mode:screen}.aurora i:nth-child(1){width:70vmax;height:70vmax;left:-20vmax;top:-30vmax;background:radial-gradient(circle at 40% 40%,rgba(90,120,255,.5),transparent 62%);animation:drift-a 28s ease-in-out infinite alternate}.aurora i:nth-child(2){width:60vmax;height:60vmax;right:-18vmax;top:-12vmax;background:radial-gradient(circle at 50% 50%,rgba(255,138,76,.32),transparent 62%);animation:drift-b 34s ease-in-out infinite alternate}.aurora i:nth-child(3){width:55vmax;height:55vmax;left:25vmax;bottom:-35vmax;background:radial-gradient(circle at 50% 50%,rgba(61,220,132,.25),transparent 62%);animation:drift-c 40s ease-in-out infinite alternate}.aurora:after{content:"";position:absolute;inset:-50%;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.12;mix-blend-mode:overlay;animation:grain .6s steps(2) infinite}.aurora:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,0) 35%,var(--bg) 100%)}@keyframes drift-a{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(14vmax,10vmax,0) scale(1.15)}}@keyframes drift-b{0%{transform:translateZ(0) scale(1.1)}to{transform:translate3d(-16vmax,14vmax,0) scale(.95)}}@keyframes drift-c{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-10vmax,-16vmax,0) scale(1.2)}}@keyframes grain{0%{transform:translate(0)}50%{transform:translate(-6%,4%)}to{transform:translate(3%,-5%)}}@media(max-width:720px){.aurora i{filter:blur(50px)}}.sketch{position:absolute;z-index:-1;left:2vw;top:50%;width:min(58vw,820px);transform:translateY(-50%) rotate(-3deg);color:#fff3;opacity:0;transition:opacity 1.2s var(--ease);animation:sketch-float 9s ease-in-out infinite alternate;pointer-events:none}.sketch.is-in{opacity:1}.sk{stroke-dasharray:1;stroke-dashoffset:1;animation:sketch-draw 16s var(--ease) infinite;animation-delay:calc(var(--n, 0) * .32s)}.sk--accent{stroke:var(--accent);stroke-width:1.8;opacity:.8}.sk-cursor{opacity:0;animation:sketch-cursor 16s ease-in-out infinite}@keyframes sketch-draw{0%{stroke-dashoffset:1;opacity:1}28%{stroke-dashoffset:0;opacity:1}80%{stroke-dashoffset:0;opacity:1}90%{stroke-dashoffset:0;opacity:0}to{stroke-dashoffset:1;opacity:0}}@keyframes sketch-cursor{0%,30%{opacity:0;transform:translate(380px,240px)}36%{opacity:1;transform:translate(380px,240px)}48%{transform:translate(140px,318px)}52%{transform:translate(132px,322px) scale(.85)}56%{transform:translate(140px,318px) scale(1)}70%{transform:translate(600px,440px)}80%{opacity:1;transform:translate(620px,460px)}86%,to{opacity:0;transform:translate(620px,460px)}}@keyframes sketch-float{0%{transform:translateY(-50%) rotate(-3deg)}to{transform:translateY(-46%) rotate(-2deg)}}@media(max-width:900px){.sketch{left:-10vw;width:120vw}.sketch.is-in{opacity:.6}}.hero__side{display:flex;align-items:center;gap:32px}.scroll-cue{display:inline-flex;align-items:center;gap:12px;color:var(--ink-3);font-size:.8125rem}.scroll-cue__track{position:relative;width:1px;height:44px;background:var(--line-strong);overflow:hidden}.scroll-cue__thumb{position:absolute;left:0;top:0;width:1px;height:16px;background:var(--ink);animation:cue 2.2s var(--ease) infinite}@keyframes cue{0%{transform:translateY(-16px)}60%,to{transform:translateY(44px)}}@media(max-width:720px){.scroll-cue{display:none}}.status{display:inline-flex;align-items:center;gap:10px;font-size:.9375rem;color:var(--ink-2)}.status__dot{width:8px;height:8px;border-radius:50%;background:var(--ok)}@keyframes pulse{0%{box-shadow:0 0 #3ddc8473}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.section__head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:clamp(32px,5vw,64px)}.section__head .small{color:var(--ink-3)}.work{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(40px,5vw,64px) 28px}.work li{grid-column:span 2}.work li:nth-child(1){grid-column:span 6}.work li:nth-child(n+2){grid-column:span 2}.work__card{display:block;opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1s var(--ease);transition-delay:calc(var(--i, 0) * 80ms)}.work__card.is-in{opacity:1;transform:none}.work__media{display:block;position:relative;aspect-ratio:16 / 10;border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--line);transform:translateZ(0)}.work li:nth-child(1) .work__media{aspect-ratio:21 / 9}.work__cta{position:absolute;left:16px;bottom:16px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:var(--accent);color:#fff;border:1px solid transparent;font-size:.875rem;opacity:0;transform:translateY(10px);transition:opacity var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.work__cta svg{width:12px;height:12px}.work__tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}.chip{font-size:.75rem;padding:5px 10px;border-radius:999px;border:1px solid var(--line);color:var(--ink-2);white-space:nowrap}.work__media img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.work__media:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.06),transparent 40%);pointer-events:none}.work__info{display:grid;gap:8px;margin-top:18px}.work__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.work__title{transition:color var(--dur-fast) var(--ease);font-size:clamp(1.25rem,2vw,1.6rem);font-weight:500;letter-spacing:-.025em;line-height:1.15;display:inline-flex;align-items:center;gap:10px}.work__arrow{width:.6em;height:.6em;opacity:0;transform:translate(-6px,6px);transition:opacity var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.work__meta{display:block;color:var(--ink-2);font-size:.9375rem;max-width:52ch}.work__year{color:var(--ink-3);font-size:.9375rem;font-variant-numeric:tabular-nums;white-space:nowrap}@media(hover:hover){.work__card:hover .work__media img{transform:scale(1.035)}.work__card:hover .work__cta{opacity:1;transform:none}.work__card:hover .work__title{color:var(--accent)}}@media(max-width:900px){.work{grid-template-columns:1fr;gap:40px}.work li,.work li:nth-child(1),.work li:nth-child(n+2){grid-column:auto}.work li:nth-child(1) .work__media{aspect-ratio:16 / 10}}.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:22px;-webkit-mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent)}.marquee__track{display:flex;width:max-content;animation:marquee 48s linear infinite}.marquee:hover .marquee__track{animation-play-state:paused}.marquee__list{display:flex}.marquee__list li{display:flex;align-items:center;gap:28px;padding-right:28px;font-size:1.05rem;color:var(--ink-2);letter-spacing:-.01em;white-space:nowrap}.marquee__list li i{width:5px;height:5px;border-radius:50%;background:var(--accent)}@keyframes marquee{to{transform:translate(-50%)}}.band{position:relative}.band--grey{background:#0d0d10;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.band--blue{background:linear-gradient(180deg,#0b0f1f,#0a0c16)}.section.band{padding-top:clamp(80px,12vw,160px)}.section.band+.section{padding-top:clamp(80px,12vw,160px)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 32px}.service{display:grid;gap:14px;align-content:start;padding:26px 22px 28px;border-radius:var(--radius);border:1px solid var(--line);background:#ffffff08;transition:border-color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}.service:hover{border-color:var(--line-strong);transform:translateY(-2px)}.service__icon{display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:#ffffff0f;border:1px solid var(--line);margin-bottom:8px;color:var(--ink)}.service__icon svg{width:42px;height:42px;overflow:visible}.ic-draw,.ic-type,.ic-row,.ic-check,.ic-btn-label{stroke-dasharray:1;stroke-dashoffset:1}.ic-cursor{transform:translate(14px,10px);opacity:0}.ic-click{opacity:0;transform-origin:36px 18px}.service.is-in .ic-draw,.service:hover .ic-draw{animation:draw .9s var(--ease) forwards}.service.is-in .ic-type-1,.service:hover .ic-type-1{animation:draw .5s .6s var(--ease) forwards}.service.is-in .ic-type-2,.service:hover .ic-type-2{animation:draw .5s .8s var(--ease) forwards}.service.is-in .ic-type-3,.service:hover .ic-type-3{animation:draw .5s 1s var(--ease) forwards}.service.is-in .ic-btn-label,.service:hover .ic-btn-label{animation:draw .5s .5s var(--ease) forwards}.service.is-in .ic-cursor,.service:hover .ic-cursor{animation:cursor-in .8s .7s var(--ease) forwards}.service.is-in .ic-btn,.service:hover .ic-btn{animation:draw .9s var(--ease) forwards,press .35s 1.45s var(--ease);transform-origin:28px 32px}.service.is-in .ic-click,.service:hover .ic-click{animation:click .6s 1.5s var(--ease) forwards}.service.is-in .ic-row,.service:hover .ic-row{animation:draw .45s var(--ease) forwards}.service.is-in .ic-row:nth-child(2),.service:hover .ic-row:nth-child(2){animation-delay:.75s}.service.is-in .ic-row:nth-child(3),.service:hover .ic-row:nth-child(3){animation-delay:.9s}.service.is-in .ic-row:nth-child(1),.service:hover .ic-row:nth-child(1){animation-delay:.6s}.service.is-in .ic-check,.service:hover .ic-check{animation:draw .5s 1.2s var(--ease) forwards}.service:hover .ic-draw,.service:hover .ic-type,.service:hover .ic-row,.service:hover .ic-check,.service:hover .ic-btn-label{animation-name:draw-again}.service:hover .ic-cursor{animation-name:cursor-in-again}.service:hover .ic-click{animation-name:click-again}@keyframes draw{to{stroke-dashoffset:0}}@keyframes draw-again{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes cursor-in{to{transform:translate(0);opacity:1}}@keyframes cursor-in-again{0%{transform:translate(14px,10px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes press{50%{transform:scale(.94)}}@keyframes click{0%{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}@keyframes click-again{0%{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.15)}}.service p{color:var(--ink-2);max-width:36ch}.service__tools{color:var(--ink-3);font-size:.875rem}@media(max-width:900px){.services{grid-template-columns:1fr;gap:32px}}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:0;padding:0;list-style:none;counter-reset:none}.step{opacity:0;transform:translateY(26px);position:relative;display:grid;gap:12px;align-content:start;padding:26px 22px 28px;border-radius:var(--radius);border:1px solid var(--line);background:#ffffff08;transition:transform var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.steps.is-in .step{opacity:1;transform:none;transition:opacity .8s var(--ease),transform .8s var(--ease),border-color var(--dur-fast) var(--ease);transition-delay:calc(var(--i) * .22s)}.steps.is-in .step:hover{transform:translateY(-3px);border-color:var(--line-strong);transition-delay:0s}.step__num{position:relative;transform:scale(.4);opacity:0}.steps.is-in .step__num{animation:num-pop .6s var(--ease) forwards;animation-delay:calc(var(--i) * .22s + .25s)}.step__num:after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1.5px solid var(--accent);border-right-color:transparent;border-bottom-color:transparent;opacity:0;transform:rotate(-90deg)}.steps.is-in .step__num:after{animation:ring .9s var(--ease) forwards;animation-delay:calc(var(--i) * .22s + .45s)}.step:hover .step__num:after{animation:ring-spin 1.2s linear infinite}@keyframes num-pop{to{transform:scale(1);opacity:1}}@keyframes ring{0%{opacity:0;transform:rotate(-90deg)}30%{opacity:1}to{opacity:1;transform:rotate(270deg)}}@keyframes ring-spin{0%{opacity:1;transform:rotate(0)}to{opacity:1;transform:rotate(360deg)}}.step:not(:last-child):after{background-size:8px 1px;opacity:0}.steps.is-in .step:not(:last-child):after{opacity:1;transition:opacity .4s;transition-delay:calc(var(--i) * .22s + .6s);animation:march 1.2s linear infinite}@keyframes march{to{background-position:8px 0}}.step__num{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#ffffff14;border:1px solid var(--line-strong);color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums;margin-bottom:6px}.step p{color:var(--ink-2);font-size:.9375rem}.step__title{display:flex;align-items:center;gap:10px}.step__ico{display:inline-grid;place-items:center;width:22px;height:22px;color:var(--ink-2);flex:none}.step__ico svg{width:20px;height:20px}.step:not(:last-child):after{content:"";position:absolute;top:46px;right:-24px;width:24px;height:1px;background:repeating-linear-gradient(90deg,var(--line-strong) 0 4px,transparent 4px 8px)}@media(max-width:1000px){.steps{grid-template-columns:repeat(2,1fr)}.step:nth-child(2):after{display:none}}@media(max-width:600px){.steps{grid-template-columns:1fr}.step:after{display:none!important}}.about{display:grid;grid-template-columns:280px 1fr 1fr;gap:48px;align-items:start}.about__photo{margin:0;position:relative;aspect-ratio:1 / 1;border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--line)}.about__photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%);transition:filter .6s var(--ease)}.about__photo:hover img{filter:none}.about__photo figcaption{display:none}.about__photo.is-empty img{display:none}.about__photo.is-empty figcaption{display:grid;place-items:center;position:absolute;inset:0;color:var(--ink-3);font-size:.875rem;text-align:center;padding:16px}@media(max-width:1100px){.about{grid-template-columns:1fr 1fr}.about__photo{max-width:300px}}.about__text{display:grid;gap:20px;max-width:48ch}.about__text p{color:var(--ink-2);font-size:1.0625rem}.about__text p:first-child{color:var(--ink);font-size:clamp(1.25rem,2vw,1.6rem);letter-spacing:-.02em;line-height:1.35}.timeline{position:relative;margin:0;padding:0 0 0 28px;list-style:none;--p: 0}.timeline:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:1px;background:var(--line)}.timeline:after{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:1px;background:linear-gradient(to bottom,var(--accent) 85%,transparent);transform:scaleY(var(--p));transform-origin:top;transition:transform .2s linear}.timeline li{position:relative;display:grid;grid-template-columns:110px 1fr;gap:16px;padding-block:18px;border-bottom:1px solid var(--line);opacity:.38;transition:opacity .5s var(--ease),transform .5s var(--ease);cursor:pointer}.timeline li.is-on{opacity:1}.timeline li:before{content:"";position:absolute;left:-28px;top:26px;width:11px;height:11px;border-radius:50%;background:var(--bg);border:1px solid var(--ink-3);transition:border-color .3s var(--ease),background-color .3s var(--ease),transform .3s var(--ease)}.timeline li.is-on:before{border-color:var(--accent);background:var(--accent);animation:dot-pop .7s var(--ease)}@keyframes dot-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.timeline time{color:var(--ink-3);font-size:.9375rem;font-variant-numeric:tabular-nums;padding-top:2px;transition:color .4s var(--ease)}.timeline li.is-on time{color:var(--ink-2)}.timeline strong{font-weight:500;display:block}.timeline span{color:var(--ink-2);font-size:.9375rem}.timeline__more{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease),margin-top .5s var(--ease);margin-top:0}.timeline__more>span{overflow:hidden;color:var(--ink-2);font-size:.9375rem;max-width:46ch;display:block}.timeline li.is-open .timeline__more{grid-template-rows:1fr;margin-top:8px}@media(hover:hover){.timeline li:hover{transform:translate(6px)}.timeline li:hover .timeline__more{grid-template-rows:1fr;margin-top:8px}.timeline li:hover:before{transform:scale(1.25);border-color:var(--accent)}}@media(max-width:520px){.timeline li{grid-template-columns:1fr;gap:4px}}@media(max-width:900px){.about{grid-template-columns:1fr;gap:40px}}.section.contact{position:relative;border-top:1px solid var(--line);padding-top:clamp(80px,12vw,160px);overflow:hidden}.section.contact:before{content:"";position:absolute;z-index:-1;left:50%;bottom:-40vmax;width:120vmax;height:80vmax;transform:translate(-50%);background:radial-gradient(ellipse at center,rgba(107,140,255,.14),transparent 60%);pointer-events:none}.section.contact{isolation:isolate}.contact__grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(48px,7vw,120px);align-items:start}.contact .display{max-width:14ch;font-size:clamp(2.5rem,6.2vw,5.5rem)}.contact__intro .lead{margin-top:28px}@media(max-width:900px){.contact__grid{grid-template-columns:1fr;gap:56px}}.form{position:relative;display:grid;gap:18px;padding:clamp(24px,3vw,36px);border-radius:24px;background:var(--surface);border:1px solid var(--line-strong)}.form:before{content:"";position:absolute;left:10%;right:10%;top:-1px;height:1px;background:transparent}.form__head{display:grid;gap:6px;margin-bottom:6px}.form__head p{color:var(--ink-2);font-size:.9375rem}.form__hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.field{position:relative}.field input,.field textarea{width:100%;margin:0;background:#00000059;border:1px solid var(--line);border-radius:14px;color:var(--ink);font:inherit;font-size:1.0625rem;padding:26px 16px 12px;outline:none;resize:vertical;transition:border-color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease)}.field textarea{min-height:140px;line-height:1.5}.field input:hover,.field textarea:hover{border-color:var(--line-strong)}.field input:focus,.field textarea:focus{border-color:var(--accent);background:#00000080}.field label{position:absolute;left:16px;top:19px;color:var(--ink-3);font-size:1.0625rem;pointer-events:none;transform-origin:left top;transition:transform var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.field input:focus+label,.field input:not(:placeholder-shown)+label,.field textarea:focus+label,.field textarea:not(:placeholder-shown)+label{transform:translateY(-11px) scale(.76);color:var(--ink-2)}.field.is-invalid input,.field.is-invalid textarea{border-color:#ff6b6b}.field.is-invalid label{color:#ff6b6b}.form__foot{display:grid;gap:12px;margin-top:4px}.form .btn{width:100%;justify-content:space-between;padding:16px 16px 16px 24px;font-size:1.0625rem}.form__status{color:var(--ink-2);font-size:.9375rem;min-height:1.4em;text-align:center}.form__status.is-error{color:#ff6b6b}.form__status.is-ok{color:var(--ok)}.btn.is-busy{pointer-events:none;opacity:.7}.btn.is-ok{background:var(--ok);color:#04150c}.btn:focus-visible{outline-offset:3px}.field input:focus-visible,.field textarea:focus-visible{outline:none}.contact__row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:clamp(28px,4vw,48px)}.btn{position:relative;display:inline-flex;align-items:center;gap:14px;padding:14px 18px 14px 24px;border-radius:999px;background:var(--accent);color:#fff;font-weight:500;font-size:1rem;will-change:transform;transition:transform .6s var(--ease)}.btn__icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#ffffff2e;overflow:hidden}.btn__icon svg{width:14px;height:14px;transition:transform .45s var(--ease)}.btn:hover .btn__icon svg{transform:translate(26px,-26px)}.btn__icon:after{content:"";position:absolute;width:14px;height:14px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3 13L13 3M13 3H5M13 3v8' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M3 13L13 3M13 3H5M13 3v8' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;transform:translate(-26px,26px);transition:transform .45s var(--ease)}.btn:hover .btn__icon:after{transform:translate(0)}.btn__icon{position:relative}.copy{position:relative;display:inline-flex;align-items:center;gap:12px;height:52px;padding:0 16px 0 20px;border-radius:999px;border:1px solid var(--line-strong);color:var(--ink-2);will-change:transform;transition:border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform .6s var(--ease)}.copy:hover{border-color:var(--accent);color:var(--ink)}.copy__text{font-size:.9375rem;letter-spacing:-.01em}.copy svg{width:18px;height:18px;transition:opacity .25s var(--ease),transform .35s var(--ease)}.copy .ic-check{position:absolute;right:16px;opacity:0;transform:scale(.5) rotate(-20deg);color:var(--ok)}.copy.is-done{border-color:var(--ok)}.copy.is-done .ic-copy{opacity:0;transform:scale(.5)}.copy.is-done .ic-check{opacity:1;transform:none}.copy__done{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}@media(max-width:480px){.copy__text{font-size:.875rem}.copy{padding-left:16px}}.contact__links{display:flex;gap:28px;margin-top:40px;color:var(--ink-2)}.footer{padding-block:32px;border-top:1px solid var(--line)}.footer__inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--ink-3);font-size:.875rem}.project{padding-top:160px;padding-bottom:clamp(64px,10vw,120px)}.project__back{display:inline-flex;align-items:center;gap:8px;color:var(--ink-2);font-size:.9375rem;margin-bottom:40px}.project__back svg{width:14px;height:14px;transition:transform var(--dur-fast) var(--ease)}.project__back:hover svg{transform:translate(-4px)}.project__head{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end}.project__facts{display:grid;grid-template-columns:auto 1fr;gap:10px 24px;font-size:.9375rem}.project__facts dt{color:var(--ink-3);margin:0}.project__facts dd{margin:0}.project__cover{margin-block:clamp(40px,6vw,80px);border-radius:var(--radius);overflow:hidden;background:var(--surface);border:1px solid var(--line);aspect-ratio:16/9}.project__cover img{width:100%;height:100%;object-fit:cover}.project__body{max-width:62ch;display:grid;gap:22px;font-size:1.0625rem;color:var(--ink-2)}.project__body p:first-child{color:var(--ink);font-size:1.25rem;letter-spacing:-.015em;line-height:1.4}.project__next{margin-top:clamp(64px,10vw,120px);padding-top:32px;border-top:1px solid var(--line)}.project__next a{display:flex;justify-content:space-between;align-items:baseline;gap:24px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:.8125rem;padding:6px 12px;border-radius:999px;border:1px solid var(--line-strong);color:var(--ink-2)}@media(max-width:800px){.project__head{grid-template-columns:1fr;gap:28px}.project{padding-top:120px}}@media(prefers-reduced-motion:reduce){.lines .line>span,.fade,.work__card{transition:none;transform:none;opacity:1}.caret{animation:none}.status__dot,.aurora i,.aurora:after,.marquee__track,.scroll-cue__thumb{animation:none}.timeline li,.timeline:after{transition:none;opacity:1;transform:none;animation:none}.sk,.sk-cursor,.sketch{animation:none}.sk{stroke-dashoffset:0}.step,.step__num{opacity:1;transform:none;animation:none}.timeline li:before{animation:none}.ic-draw,.ic-type,.ic-row,.ic-check,.ic-btn-label{stroke-dashoffset:0}.ic-cursor{transform:none;opacity:1}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
