.hero{height:420vh;position:relative}.stage{background:var(--base);height:100svh;position:sticky;top:0;overflow:hidden}.stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.hero-copy{padding:24vh var(--gutter) clamp(28px, 6vh, 60px);text-align:center;will-change:opacity, transform;background:linear-gradient(#0b070800 0%,#0b0708b3 58%,#0b0708f2 100%);justify-items:center;gap:22px;display:grid;position:absolute;inset:auto 0 0}.create{letter-spacing:-.01em;align-items:center;gap:12px;font-size:15px;font-weight:600;display:inline-flex;position:relative}.create:before{content:"";filter:blur(12px);pointer-events:none;background:radial-gradient(50% 60% at 12%,#ff5024b3,#ff3c1a00 72%);width:240px;height:100px;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.create>*{position:relative}.create .bar{background:var(--create-caret);border-radius:2px;width:2px;height:18px;box-shadow:0 0 18px 5px #ff3a16e6}.create .soft{color:var(--text-4);font-weight:500}@media (width>=900px){.hero-copy{width:min(52%,760px);padding:120px var(--gutter) clamp(36px, 7vh, 72px);text-align:left;background:linear-gradient(90deg,#0b0708eb 0%,#0b0708b8 55%,#0b070800 100%);align-content:end;justify-items:start;inset:0 auto 0 0}.hero-copy .hero-actions{justify-content:flex-start}}.hero-copy h1{text-shadow:0 6px 40px #00000073;max-width:16ch;font-size:clamp(38px,5.2vw,78px)}.hero-copy .lede{color:var(--text-3);max-width:520px;font-size:clamp(16px,1.4vw,19px)}.hero-actions{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.cue{letter-spacing:.22em;text-transform:uppercase;color:var(--dim);align-items:center;gap:10px;font-size:12px;font-weight:600;display:flex}.cue i{background:linear-gradient(var(--orange), transparent);width:1px;height:26px;animation:1.8s ease-in-out infinite cue}@keyframes cue{0%{transform-origin:top;transform:scaleY(.2)}50%{transform-origin:top;transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(.2)}}.side{opacity:0;will-change:opacity;max-width:15rem;position:absolute;top:50%;transform:translateY(-50%)}.side.l{left:var(--gutter)}.side.r{right:var(--gutter);text-align:right}.side p{color:var(--white);text-shadow:0 1px 16px #000c;margin-top:6px;font-size:15px}@media (width<=820px){.side{display:none}}.counter{right:var(--gutter);letter-spacing:.2em;color:var(--dim);font-variant-numeric:tabular-nums;text-transform:uppercase;opacity:0;font-size:12px;font-weight:600;position:absolute;bottom:22px}.window{background:radial-gradient(60% 55% at 0% 100%, #ff6b2c29, transparent 70%), radial-gradient(50% 45% at 100% 0%, #e0311f1f, transparent 70%), var(--base);text-align:center;padding:0 var(--gutter);clip-path:inset(50%);opacity:0;will-change:clip-path, opacity;place-items:center;display:grid;position:absolute;inset:0}.window-inner{justify-items:center;gap:20px;max-width:62rem;display:grid}.window h2{font-size:clamp(42px,7.4vw,104px)}.window .note{color:var(--para);max-width:34rem;font-size:clamp(16px,1.4vw,19px)}.window .note span{color:var(--dim);margin-top:4px;font-size:15px;display:block}:where([data-look=home]) .nav .nav-cta{transition:opacity .3s,visibility .3s}@media (scripting:enabled){body:has(.hero[data-stage=film]) .nav:not(.barred) .nav-cta{opacity:0;visibility:hidden}body:has(.hero[data-stage=film]):not(:has(.nav.barred)) .toc{opacity:0;visibility:hidden}}@media (prefers-reduced-motion:reduce){.cue i{animation:none}:where([data-look=home]) .nav .nav-cta{transition:none}}.work{background:radial-gradient(45% 35% at 0% 15%, #ff6b2c12, transparent 70%), radial-gradient(40% 30% at 100% 70%, #e0311f0f, transparent 70%), var(--base);padding-top:clamp(56px,8vh,96px)}.cases{gap:clamp(72px,10vw,128px);display:grid}.case{gap:18px;display:grid}.case-num{letter-spacing:.2em;color:var(--dim);align-items:center;gap:16px;font-size:14px;font-weight:600;display:flex}.case-num:after{content:"";background:var(--line);flex:1;height:1px}.group{align-items:stretch;gap:24px;display:grid}.group.v{grid-template-columns:minmax(0,500px) minmax(0,340px);justify-content:center}.group.h{grid-template-columns:minmax(0,500px) minmax(0,780px);justify-content:center}.case.flip .text{order:2}.case.flip .group.v{grid-template-columns:minmax(0,340px) minmax(0,500px)}.case.flip .group.h{grid-template-columns:minmax(0,780px) minmax(0,500px)}@media (width<=1100px){.group.h,.case.flip .group.h{grid-template-columns:1fr}.case.flip .text{order:0}.group.h .video{order:-1}}@media (width<=720px){.group.v,.case.flip .group.v{grid-template-columns:1fr}.group.v .video{order:-1;justify-self:center;width:min(100%,340px)}}.text{border-radius:var(--r-card);align-content:center;gap:18px;min-width:0;padding:clamp(24px,3vw,40px);display:grid}.text .kicker{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.text .kicker .eyebrow{letter-spacing:.18em}.text .kicker .cat{color:var(--dim);font-size:13px;font-weight:500}.text h3{font-size:clamp(26px,2.3vw,31px)}.text p{color:var(--para);font-size:16px}.tags{flex-wrap:wrap;gap:8px;display:flex}.tags span{color:var(--text-2);border-radius:var(--r-pill);border:1px solid var(--line);background:#ffffff0a;padding:6px 13px;font-size:13px;font-weight:500}.read{color:var(--white);border-radius:var(--r-pill);border:1px solid #fff3;justify-self:start;align-items:center;gap:10px;padding:11px 20px;font-size:15px;font-weight:600;transition:border-color .2s,background .2s;display:inline-flex}.read:hover{border-color:var(--orange);background:#ff6b2c14}.read svg{transition:transform .2s}.read:hover svg{transform:translate(3px)}.video{border-radius:var(--r-card);background:var(--surface);border:1px solid #ffffff14;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.group.v .video{aspect-ratio:9/16;max-width:100%}.group.h .video{aspect-ratio:16/9;align-self:center;max-width:100%}.video video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.video .badges{z-index:1;justify-content:space-between;display:flex;position:absolute;top:14px;left:14px;right:14px}.badge{letter-spacing:.06em;border-radius:var(--r-pill);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-variant-numeric:tabular-nums;background:#0b07088c;border:1px solid #ffffff29;padding:6px 11px;font-size:12px;font-weight:600}.process{background:var(--surface)}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}@media (width<=1000px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.steps{grid-template-columns:1fr}}.step{border-radius:var(--r-small);background:var(--base);border:1px solid #ffffff14;align-content:start;gap:12px;padding:28px 26px 30px;display:grid}.step .eyebrow{font-size:12px}.step h3{letter-spacing:-.02em;font-size:22px;line-height:1.15}.step p{color:var(--para);font-size:15px}.tools{gap:18px;margin-top:clamp(56px,7vw,88px);display:grid}.tools .eyebrow{color:var(--dim)}.tool-row{letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:10px 18px;font-size:clamp(20px,2.4vw,30px);font-weight:600;display:flex}.tool-row i{color:var(--orange);opacity:.7;font-style:normal}.lab-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}@media (width<=1100px){.lab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.lab-grid{grid-template-columns:1fr}}.lab-rail{position:relative}.lab-arrow{display:none}@media (width>=721px){.lab-rail .lab-grid{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:calc(25% - 13.5px);grid-auto-flow:column;margin-top:-4px;padding-top:4px;overflow-x:auto}.lab-rail .lab-grid::-webkit-scrollbar{display:none}.lab-rail .lab-grid>*{scroll-snap-align:start}.lab-arrow:not([hidden]){top:calc(var(--lab-thumb,40%) - 24px);z-index:1;width:48px;height:48px;padding:0;display:inline-flex;position:absolute}.lab-arrow.prev{left:14px}.lab-arrow.next{right:14px}.lab-arrow:disabled{opacity:0;pointer-events:none}}@media (width>=721px) and (width<=1100px){.lab-rail .lab-grid{grid-auto-columns:calc(50% - 9px)}}.lab{border-radius:var(--r-small);background:var(--surface);border:1px solid #ffffff14;grid-template-rows:auto 1fr;transition:border-color .2s,transform .2s;display:grid;overflow:hidden}.lab:hover{border-color:#ff6b2c80;transform:translateY(-3px)}.lab .thumb{aspect-ratio:4/5;background:var(--thumb);max-width:100%;position:relative;overflow:hidden}.lab .thumb img{object-fit:cover;width:100%;height:100%;display:block}.lab .body{align-content:start;gap:8px;padding:20px 22px 24px;display:grid}.lab h3{letter-spacing:-.02em;font-size:21px}.lab p{color:var(--para);font-size:15px}.lab .more{color:var(--white);margin-top:4px;font-size:14px;font-weight:600}.about{background:var(--surface)}.about .wrap{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(32px,5vw,80px);display:grid}@media (width<=900px){.about .wrap{grid-template-columns:1fr}}.portrait{border-radius:var(--r-card);aspect-ratio:4/5;justify-self:center;width:100%;max-width:100%;max-height:640px;overflow:hidden}.portrait img{object-fit:cover;width:100%;height:100%;display:block}.about-copy{gap:22px;min-width:0;display:grid}.about-copy h2{font-size:clamp(32px,3.8vw,52px)}.about-copy p{color:var(--para);max-width:38rem;font-size:18px}.contact{background:radial-gradient(70% 60% at 50% 110%, #e0311f52, transparent 70%), radial-gradient(50% 50% at 90% 10%, #ff6b2c24, transparent 70%), var(--base)}.contact .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,80px);display:grid}@media (width<=900px){.contact .wrap{grid-template-columns:1fr}}.contact h2{font-size:clamp(36px,4.6vw,64px)}.contact .intro{gap:20px;display:grid}.contact .intro p:not(.eyebrow){color:var(--para);max-width:30rem;font-size:18px}form{border-radius:var(--r-card);gap:16px;padding:clamp(22px,3vw,36px);display:grid}label{color:var(--text-2);gap:8px;font-size:14px;font-weight:500;display:grid}input,textarea{font:400 16px/1.5 var(--f-sans);color:var(--white);border-radius:var(--r-small);background:#0b07088c;border:1px solid #ffffff24;width:100%;padding:14px 16px}input:focus,textarea:focus{border-color:var(--orange);outline:none}textarea{resize:vertical;min-height:130px}.form-note{color:var(--dim);font-size:14px}.form-note[data-state=sent]{color:var(--white)}.form-note[data-state=invalid],.form-note[data-state=failed]{color:var(--orange)}.form-privacy{color:var(--dim);text-underline-offset:3px;justify-self:start;font-size:13px;text-decoration:underline}.form-privacy:hover{color:var(--white)}.contact .hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}@media (prefers-reduced-motion:reduce){.lab,.read svg{transition:none}}
