/* Hallmark · checked: 2026-10-24 · genre: editorial (inferred)
 * floor: tokens only, no animated top/left/width, overflow-x clip, minmax tracks, focus-visible ring 3:1+, visible without JS, reduced motion, no eyebrows or tracked caps, no dashes or dot strings in copy, hero in the 1280x800 fold, capped container
 * fixed: contrast (ink-3 to 5.1:1), focus ring (ink, white on dark), 26 hover rules gated to fine pointers, :active press, burger/cursor/dots moved to transform, 1.2s image zoom removed, img sizes, skip link, pause control, form focus via outline, lightbox img made on demand
 * structural: home written for a first-time visitor: hero (who and what), who I am with a real photo, my job at Incorta, UX Crit explained, selected work as what it is / my role / result, writing, CTA; Log merged into Lab; work grouped by story
 * waived: 49b on titles and the email address wrapping at 320px; 75 (text under 12px) inside aria-hidden product miniatures, they are pictures of UI; 39b on .shot (a figure that opens full size, not a control) and the inline 36px copy button; 72 on closed FAQ rows (measured mid-reveal); 83 paintings are the brand's material
 * waived: 41 (dark surface sets no text colour) in dark mode: surfaces and text flip together through the same tokens
 * built: the project · redesign: polish · v2.0.0 *//* Hallmark · dropped logo marquee, process tabs, rules grid, engagement plans, results card, quote masonry, home FAQ · cut by the 2026 portfolio study: one idea per screen *//* Hallmark · dropped compare slider, audit list, walk-through, film scene list, hero assistant window · no longer referenced by any page */
@font-face{font-family:"Sentient";src:url("../fonts/Sentient-Light.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:"Sentient";src:url("../fonts/Sentient-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Sentient";src:url("../fonts/Sentient-Medium.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:"Sentient";src:url("../fonts/Sentient-Italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Onest";src:url("../fonts/Onest-Variable.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--bg:#fbfaf6;--bg-glass:rgba(251,250,246,.86);--bg-float:rgba(251,250,246,.95);--surface:#f4f2ec;--surface-2:#ece9e0;--surface-3:#fdfcf9;--white:#fffdf9;--line:#e7e3d9;--line-2:#dcd7ca;--ink:#1c1a15;--ink-hover:#3a3733;--ink-2:#56524a;--ink-3:#6b665c;--ink-4:#b3ada1;--focus:#1c1a15;--focus-on-dark:#fffdf9;--accent:#0099ff;--accent-ink:#0052cc;--accent-wash:#e9f0ff;--accent-line:#c7d8fb;--bad-ink:#b42318;--bad-wash:#fdecea;--bad-line:#f6c9c3;--accent-glow:rgba(0,153,255,.45);--ok:#2f9e5f;--ok-ink:#1f7a47;--ok-wash:#eef8f2;--ok-line:#cfe9da;--warn-ink:#9a5f05;--warn-wash:#fdf5e4;--warn-line:#f3dfb8;--warn-spin:#e6c98a;--deep:#10306b;--deep-2:#0c1835;--film-bg:#eef1f7;--night:#0b0b0d;--night-bar:#141418;--night-ink:#f4f4f5;--night-mute:#8a8a94;--night-hover:rgba(255,255,255,.1);--night-line:rgba(255,255,255,.08);--scrim:rgba(16,20,40,.78);--glass:rgba(255,253,249,.92);--dots-bg:rgba(16,32,66,.55);--dots-off:rgba(255,253,249,.45);--k-bg:#0f0f12;--k-sur:#17171b;--k-line:rgba(255,255,255,.09);--k-edge:rgba(255,255,255,.12);--k-track:rgba(255,255,255,.08);--k-ink:#f4f4f5;--k-mid:#a1a1aa;--k-mute:#8c8c97;--k-v:#8b7cff;--k-v-wash:rgba(139,124,255,.14);--k-v-glow:rgba(139,124,255,.18);--k-ok:#4ade80;--k-down:#f59e8b;--k-on:#fffdf9;--k-v-strong:#5d4ce0;--field-edge:#8a857b;--serif:"Sentient",Georgia,"Times New Roman",serif;--sans:"Onest",-apple-system,"Segoe UI",Inter,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,monospace;--r-sm:8px;--r:12px;--r-lg:16px;--r-xl:20px;--container:1200px;--gutter:24px;--nav-h:72px;--fl-x:max(8px,calc((100% - min(100% - 2 * var(--gutter),var(--container))) / 2 - 16px));--nav-float:drop-shadow(0 0 .5px rgba(28,26,21,.35)) drop-shadow(0 10px 24px rgba(28,26,21,.14));--sec:120px;--shadow-card:0 1px 2px rgba(28,26,21,.04),0 12px 32px -12px rgba(28,26,21,.18);--shadow-float:0 2px 4px rgba(28,26,21,.06),0 24px 48px -16px rgba(28,26,21,.28);--shadow-soft:0 1px 2px rgba(28,26,21,.06);--shadow-nav:0 1px 0 #e7e3d9,0 8px 24px -16px rgba(28,26,21,.25);--ring:0 0 0 1px rgba(255,255,255,.55),0 0 0 5px rgba(255,255,255,.14);--ring-deep:0 0 0 1px rgba(255,255,255,.3),0 0 0 5px rgba(255,255,255,.1),0 40px 80px -30px rgba(0,0,0,.7);--ring-slides:0 0 0 1px rgba(255,255,255,.35),0 0 0 6px rgba(255,255,255,.1),0 40px 80px -30px rgba(0,0,0,.6);--ring-shot:0 0 0 1px rgba(255,255,255,.3),0 0 0 5px rgba(255,255,255,.1),0 30px 60px -24px rgba(0,0,0,.6);--spot-ring:0 0 0 2px #38b2ff,0 0 0 5px rgba(56,178,255,.28);--ring-chip:0 0 0 1px rgba(255,255,255,.5),0 8px 20px -10px rgba(0,0,0,.5);--ring-lb:0 0 0 1px rgba(255,255,255,.25),0 0 0 6px rgba(255,255,255,.08),0 60px 120px -40px rgba(0,0,0,.9);--ring-kwin:0 0 0 1px rgba(255,255,255,.3),0 0 0 5px rgba(255,255,255,.1),0 40px 80px -30px rgba(0,0,0,.7);--cursor-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.6));--ease:cubic-bezier(.22,1,.36,1);--ease-out:cubic-bezier(.23,1,.32,1)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 24px);overflow-x:clip}body{margin:0;background:var(--bg);color:var(--ink-2);font-family:var(--sans);font-size:15px;line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}img,video,svg{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;touch-action:manipulation}h1,h2,h3,h4,h5{margin:0;font-weight:400;color:var(--ink);text-wrap:balance}p{margin:0;text-wrap:pretty}ul,ol{margin:0;padding:0;list-style:none}figure{margin:0}strong,b{font-weight:600;color:var(--ink)}::selection{background:var(--ink);color:var(--bg)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}iframe:focus-visible{outline:3px solid var(--focus-on-dark);outline-offset:-3px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;left:12px;top:-56px;z-index:200;background:var(--ink);color:var(--bg);padding:10px 14px;border-radius:var(--r-sm);font-size:14px;font-weight:500;transition:transform .2s var(--ease-out)}.skip:focus{transform:translateY(68px)}.h1{font-family:var(--serif);font-size:clamp(40px,6vw,56px);line-height:1.05;letter-spacing:-.05em;font-weight:300;color:var(--ink)}.h2{font-family:var(--serif);font-size:clamp(32px,4.6vw,48px);line-height:1.08;letter-spacing:-.045em;font-weight:300;color:var(--ink)}.h3{font-family:var(--serif);font-size:clamp(24px,3vw,32px);line-height:1.12;letter-spacing:-.035em;font-weight:300;color:var(--ink)}.h1,.h2,.h3{overflow-wrap:break-word;min-width:0}.h1 .m,.h2 .m,.h3 .m{color:var(--ink-2)}.lead{font-size:17px;line-height:1.55;color:var(--ink-2);max-width:46ch}.co svg{width:14px;height:14px;flex:none}.container{width:100%;max-width:calc(var(--container) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}.sec{padding:var(--sec) 0}.sec-head{margin-bottom:48px}.band{background:var(--surface)}.more{margin-top:32px;font-size:15px}.more a:not(.btn){color:var(--ink);text-decoration:underline;text-underline-offset:3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:var(--r-sm);font-size:14px;font-weight:500;line-height:1;white-space:nowrap;transition:background-color .2s var(--ease-out),color .2s var(--ease-out),border-color .2s var(--ease-out),transform .16s var(--ease-out)}.btn:active{transform:scale(.97)}button:disabled,.btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;transform:none}.btn-primary{background:var(--ink);color:var(--bg)}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line-2)}.btn-lg{height:48px;padding:0 20px}.btn .lbl{position:relative;display:inline-block;overflow:hidden;height:1.25em;line-height:1.25em;vertical-align:middle}.btn .lbl span{display:block;transition:transform .4s var(--ease-out)}.btn .lbl span+span{position:absolute;left:0;top:100%;width:100%;text-align:center}.link{white-space:nowrap;color:var(--ink);font-weight:500;font-size:14px;display:inline-flex;align-items:center;gap:6px;min-height:44px}.link::after{content:"›"/"";font-size:16px;line-height:1;transition:transform .2s var(--ease-out)}.nav{position:sticky;top:0;z-index:50;height:var(--nav-h);isolation:isolate}.nav-bg{position:absolute;inset:0;z-index:-1;pointer-events:none;transition:filter .45s var(--ease-out)}.nav-bg::before{content:"";position:absolute;inset:0;background:var(--bg-glass);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);clip-path:inset(0 0 0 0 round 0);transition:clip-path .45s var(--ease-out)}.nav-bg::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--line);transition:opacity .25s var(--ease-out)}.nav.floating .nav-bg{filter:var(--nav-float)}.nav.floating .nav-bg::before{clip-path:inset(6px var(--fl-x) 6px var(--fl-x) round 16px);background:var(--bg-float)}.nav.floating .nav-bg::after{opacity:0}.nav:has(.burger[aria-expanded="true"]) .nav-bg{filter:none}.nav:has(.burger[aria-expanded="true"]) .nav-bg::before{clip-path:inset(0 0 0 0 round 0)}.nav:has(.burger[aria-expanded="true"]) .nav-bg::after{opacity:1}.nav .container{height:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}.brand{display:inline-flex;align-items:flex-start;gap:1px;font-weight:500;font-size:18px;color:var(--ink);letter-spacing:-.015em;line-height:1;white-space:nowrap}.brand sup{font-size:.55em;line-height:1;margin-top:-.1em;font-weight:500}.nav-links{display:flex;align-items:center;gap:30px;font-size:15px;color:var(--ink-2)}.nav-links a{transition:color .2s var(--ease-out)}.nav-links a[aria-current="page"]{color:var(--ink)}.nav-right{display:flex;justify-content:flex-end;align-items:center;gap:18px}.nav-right .txt{font-size:15px;color:var(--ink-2)}.pause-ic{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:var(--r-sm);color:var(--ink-2);transition:border-color .2s var(--ease-out),transform .16s var(--ease-out)}.pause-ic:active{transform:scale(.95)}.pause-ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.pause-ic[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pause-ic .i-play{display:none}.pause-ic[aria-pressed="true"] .i-pause{display:none}.pause-ic[aria-pressed="true"] .i-play{display:inline;fill:currentColor;stroke:none}.burger{display:none;width:44px;height:44px;border-radius:var(--r-sm);place-items:center}.burger span{display:block;width:18px;height:1.5px;background:var(--ink);position:relative;transition:background-color .2s}.burger span::before,.burger span::after{content:"";position:absolute;left:0;top:0;width:18px;height:1.5px;background:var(--ink);transition:transform .25s var(--ease-out)}.burger span::before{transform:translateY(-6px)}.burger span::after{transform:translateY(6px)}.burger[aria-expanded="true"] span{background:transparent}.burger[aria-expanded="true"] span::before{transform:rotate(45deg)}.burger[aria-expanded="true"] span::after{transform:rotate(-45deg)}.mobile-menu{display:none;position:fixed;inset:var(--nav-h) 0 0;background:var(--bg);z-index:49;padding:8px var(--gutter) calc(24px + env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;flex-direction:column}.mobile-menu[data-open="true"]{display:flex}.mm-links{display:flex;flex-direction:column}.mm-links a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:12px 4px;border-bottom:1px solid var(--line);color:var(--ink)}.mm-links .mm-t{display:flex;flex-direction:column;gap:2px;font-family:var(--serif);font-weight:300;font-size:28px;line-height:1.1;letter-spacing:-.03em}.mm-links small{font-family:var(--sans);font-size:13.5px;letter-spacing:0;color:var(--ink-3)}.mm-links svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--ink-3);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.mm-links a[aria-current="page"] .mm-t{color:var(--ink)}.mm-links a[aria-current="page"]::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent-ink);flex:none;margin-right:5px}.mm-links a[aria-current="page"] svg{display:none}.mm-cta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.mm-cta .btn{width:100%}.mm-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:24px}.mm-foot .social{display:flex;gap:4px}.mm-foot .social a{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r-sm);color:var(--ink-2)}.mm-foot .social svg{width:18px;height:18px;fill:currentColor}@media (prefers-reduced-motion:no-preference){.mobile-menu[data-open="true"] .mm-links a{animation:mm-in .38s var(--ease-out) both}.mobile-menu[data-open="true"] .mm-links a:nth-child(2){animation-delay:.03s}.mobile-menu[data-open="true"] .mm-links a:nth-child(3){animation-delay:.06s}.mobile-menu[data-open="true"] .mm-links a:nth-child(4){animation-delay:.09s}.mobile-menu[data-open="true"] .mm-links a:nth-child(5){animation-delay:.12s}.mobile-menu[data-open="true"] .mm-links a:nth-child(6){animation-delay:.15s}.mobile-menu[data-open="true"] .mm-cta{animation:mm-in .38s .18s var(--ease-out) both}}@keyframes mm-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.hero{padding:40px 0 56px;--h1-lh:48px}.hero .container{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:center}.h1-wrap{position:relative;height:calc(var(--h1-lh) * 2)}.hero .h1{font-size:44px;line-height:var(--h1-lh);height:100%;transition:opacity .15s var(--ease-out)}.hero .h1.swap{opacity:0}.hero-copy,.hero-vis{animation:hero-in .45s var(--ease-out) both}.hero-vis{animation-delay:.08s}@keyframes hero-in{from{opacity:0;transform:translateY(10px)}}.hero .lead{margin:22px 0 28px}.hero-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.regen{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 8px;font-size:14px;color:var(--ink-2);transition:color .2s var(--ease-out),transform .16s var(--ease-out)}.regen:active{transform:scale(.97)}.regen svg{width:15px;height:15px}.regen.spin svg{animation:spin .4s var(--ease-out) 1}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:1280px){.hero{--h1-lh:54px}.hero .h1{font-size:50px}}.gen{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:6px 0 4px -8px}html:not(.js) .gen{display:none}.regen[aria-disabled="true"]{cursor:default}.regen.thinking{color:var(--ink)}.regen.thinking svg{animation:spin 1s linear infinite}.ver{display:inline-flex;align-items:center;font-size:13.5px;color:var(--ink-3);font-variant-numeric:tabular-nums;border-left:1px solid var(--line-2);padding-left:6px}.ver[hidden]{display:none}.vcount{min-width:44px;text-align:center}.vbtn{width:44px;height:44px;display:grid;place-items:center;color:var(--ink-2);border-radius:var(--r-sm);transition:transform .16s var(--ease-out)}.vbtn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.vbtn:active:not([aria-disabled="true"]){transform:scale(.94)}.vbtn[aria-disabled="true"]{color:var(--field-edge);cursor:default}.regen .lbl{display:inline-block;min-width:10ch}.think{position:absolute;inset:0;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .2s var(--ease-out)}.think i{position:relative;display:block;height:calc(var(--h1-lh) * .56);margin:calc(var(--h1-lh) * .22) 0;border-radius:var(--r-sm);background:var(--surface-2);overflow:hidden}.think i:first-child{width:84%}.think i:last-child{width:56%}.think i::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--white),transparent);transform:translateX(-100%);animation:shimmer 1.1s var(--ease-in-out,ease-in-out) infinite}.h1-wrap.is-thinking .think{opacity:1}.h1-wrap.is-thinking .h1{opacity:0}.hero .h1 .w{display:inline-block;animation:w-in .34s var(--ease-out) both}.hero .h1 .caret{display:inline-block;position:relative;left:4px;width:2px;margin-right:-2px;height:.82em;vertical-align:-.06em;background:currentColor;animation:caret .9s steps(2,jump-none) infinite}@keyframes shimmer{to{transform:translateX(100%)}}@keyframes w-in{from{opacity:0;transform:translateY(.16em);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}@keyframes caret{50%{opacity:0}}.imgcard{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--surface);aspect-ratio:4/3;isolation:isolate}.imgcard>img.paint{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.imgcard .float{position:absolute;z-index:1;background:var(--white);border-radius:var(--r);box-shadow:var(--ring),var(--shadow-float);color:var(--ink);font-size:12px;line-height:1.45}.imgcard canvas.shader{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0}.imgcard.mesh{background:linear-gradient(135deg,var(--deep),var(--deep-2));color:var(--night-ink)}.imgcard.mesh .meshbg{position:absolute;inset:0;z-index:0}.imgcard.mesh .meshbg canvas.shader{position:absolute;inset:0;width:100%;height:100%;display:block}.hero-vis{align-self:center}.fl-mid{left:40px;right:40px;top:50%;transform:translateY(-50%);padding:14px}.fl-phone{left:50%;top:50%;transform:translate(-50%,-50%);width:200px;padding:16px;border-radius:22px}.fl-title{font-size:15px;line-height:1.25;display:block;margin-top:4px}.ui{font-family:var(--sans)}.ui .row{display:flex;align-items:center;gap:10px}.ui .row.sb{justify-content:space-between;margin-bottom:8px}.ui .chips-row{gap:6px;margin:12px 0 4px;flex-wrap:wrap}.ui .t{font-size:11px;color:var(--ink-3)}.ui .chip{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:99px;border:1px solid var(--line);font-size:11px;color:var(--ink-2);background:var(--white);white-space:nowrap}.ui .chip.ok{border-color:var(--ok-line);background:var(--ok-wash);color:var(--ok-ink)}.ui .chip.warn{border-color:var(--warn-line);background:var(--warn-wash);color:var(--warn-ink)}.ui .chip.ink{background:var(--ink);color:var(--bg);border-color:var(--ink)}.ui .bar{height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden;margin-top:12px}.ui .bar i{display:block;height:100%;background:var(--ink);border-radius:99px;width:var(--w,50%)}.ui .num{font-variant-numeric:tabular-nums;font-family:var(--serif);font-size:28px;line-height:1;color:var(--ink);margin:6px 0 4px}.ui .kv{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:11.5px}.ui .kv b{font-weight:500}.ui hr{border:0;border-top:1px solid var(--line);margin:10px 0}.ui>.t:last-child{margin-top:10px}.stack{display:flex;flex-direction:column;gap:32px}.stack .scard{border-radius:var(--r-lg);background:var(--surface);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);overflow:hidden;min-height:440px;box-shadow:var(--shadow-soft)}.scard .media{position:relative;display:flex;align-items:center;justify-content:center;margin:6px;border-radius:var(--r);overflow:hidden;min-height:420px;padding:48px 44px;background:var(--surface-2);color:inherit}.plate{position:relative;z-index:1;margin:0;width:100%}.plate-in{position:relative;transition:transform .35s var(--ease-out)}.plate img{display:block;width:100%;height:auto;border-radius:10px;box-shadow:var(--ring-shot)}.plate .spot{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);border-radius:8px;box-shadow:var(--spot-ring);pointer-events:none}.plate .pnote{margin-top:20px;color:var(--night-ink);font-size:14px;font-weight:500;line-height:1.35}.scard .media img.paint{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.scard .media .float{position:absolute;background:var(--white);border-radius:var(--r);box-shadow:var(--ring),var(--shadow-float);color:var(--ink);font-size:12px;line-height:1.45;z-index:1}.scard .media.mesh{background:linear-gradient(135deg,var(--deep),var(--deep-2));color:var(--night-ink)}.scard .media .meshbg{position:absolute;inset:0;z-index:0}.scard .media .meshbg canvas.shader{position:absolute;inset:0;width:100%;height:100%;display:block}.scard .body{padding:56px 48px 48px 32px;display:flex;flex-direction:column;justify-content:flex-start;gap:14px}.scard .body .co{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:7px}.scard .body p{font-size:15px;max-width:38ch}.scard .chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.scard .chips li{font-size:12.5px;color:var(--ink-2);background:var(--white);border:1px solid var(--line);border-radius:99px;padding:3px 10px}.scard .body .btn{align-self:flex-start;margin-top:10px}.vis-cap{position:absolute;left:20px;bottom:16px;z-index:2;margin:0;font-size:13px;color:var(--night-ink)}.hero-video{position:relative;margin:0;border-radius:var(--r-lg);overflow:hidden;background:var(--deep-2);box-shadow:var(--shadow-float);aspect-ratio:16/9}.hero-video .hv{display:block;width:100%;height:100%;object-fit:cover}.hv-play{position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:10px;height:44px;padding:0 18px 0 8px;border-radius:99px;background:var(--glass);color:var(--ink);font-size:14px;font-weight:500;box-shadow:var(--ring-chip);transition:transform .16s var(--ease-out)}.hv-play svg{width:28px;height:28px;padding:8px;border-radius:50%;background:var(--ink);fill:var(--white)}.hv-play:active{transform:scale(.97)}.hv-pause{position:absolute;right:12px;bottom:16px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--glass);color:var(--ink);box-shadow:var(--ring-chip)}.hv-pause svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.hv-pause .i-play{display:none;fill:currentColor}.hv-pause[aria-pressed="true"] .i-pause{display:none}.hv-pause[aria-pressed="true"] .i-play{display:block}.hv-pause[hidden]{display:none}.hv-cap{position:absolute;left:0;right:0;bottom:0;padding:0 16px 22px 196px;font-size:13px;color:var(--night-ink);pointer-events:none;text-align:right;padding-right:72px}.hv-cap .hv-len{margin-left:8px;opacity:.75;font-variant-numeric:tabular-nums}.hero-video :focus-visible{outline-color:var(--focus-on-dark)}.lightbox.is-video .lb-panel{width:min(1280px,100%);height:auto}.lightbox .lb-video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:var(--night)}.pstrip-sec{padding:8px 0 var(--sec)}.pstrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;border-top:1px solid var(--line);padding-top:24px}.pstrip dt{font-family:var(--serif);font-weight:300;font-size:clamp(34px,4vw,48px);line-height:1;letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums}.pstrip dd{margin:10px 0 0;font-size:15px;color:var(--ink-2);max-width:30ch}.who-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"side head" "side jobs";grid-template-rows:auto 1fr;column-gap:64px;row-gap:40px;align-items:start}.job-head{grid-area:head}.job-head .lead{max-width:52ch;margin-top:20px;text-wrap:pretty}.who-side{grid-area:side;align-self:stretch;display:flex;flex-direction:column}.jobs{grid-area:jobs}.who-photo{position:relative;flex:1 1 auto;min-height:360px;margin:0;border-radius:var(--r-lg);overflow:hidden;background:var(--surface-2)}.who-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}.who-side > .link{flex:none;display:flex;justify-content:space-between;min-height:48px;border-bottom:1px solid var(--line)}.facts{flex:none;margin:24px 0 0;border-top:1px solid var(--line)}.facts div{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px}.facts dt{color:var(--ink-3)}.facts dd{margin:0;color:var(--ink)}.jobs{display:flex;flex-direction:column;gap:12px}.jobs li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;background:var(--bg);border-radius:var(--r-lg);padding:24px}.jobs .n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--line-2);font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}.jobs h3{font-family:var(--serif);font-weight:300;font-size:24px;line-height:1.2;letter-spacing:-.02em;color:var(--ink);margin:0 0 8px}.jobs p{font-size:15.5px;color:var(--ink-2);max-width:60ch}.q-s{margin:16px 0 0;padding-left:14px;border-left:2px solid var(--line-2);font-family:var(--serif);font-weight:300;font-size:19px;line-height:1.35;color:var(--ink)}.q-s cite{display:block;margin-top:6px;font-family:var(--sans);font-style:normal;font-size:13px;color:var(--ink-3)}.forge-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}.forge-copy .h2{margin-bottom:24px}.forge-copy p{font-size:17px;line-height:1.6;max-width:50ch}.forge-copy p+p{margin-top:14px}.forge-grid>.forge-nums{grid-template-columns:minmax(0,1fr);gap:20px;margin:0}.forge-grid>.forge-nums dt{font-size:44px}.forge-nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0 0}.forge-nums div{border-top:1px solid var(--ink);padding-top:12px}.forge-nums dt{font-family:var(--serif);font-weight:300;font-size:34px;line-height:1;letter-spacing:-.04em;color:var(--ink);font-variant-numeric:tabular-nums}.forge-nums dd{margin:8px 0 0;font-size:13.5px;color:var(--ink-2)}.wrr{margin:4px 0 0;display:flex;flex-direction:column;gap:10px;max-width:46ch}.wrr dt{font-size:13px;color:var(--ink-3)}.wrr dd{margin:2px 0 0;font-size:15px;color:var(--ink)}.wrr .res{padding-top:10px;border-top:1px solid var(--line-2)}.wrr .res dd{font-size:16.5px;font-weight:500;line-height:1.45}.postlist{display:flex;flex-direction:column;border-top:1px solid var(--line)}.post{position:relative;display:grid;grid-template-columns:160px minmax(0,1fr) auto;gap:28px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}.post .h3 a::after{content:"";position:absolute;inset:0}.post .h3 a:focus-visible{outline:none}.post:has(a:focus-visible){outline:2px solid var(--focus);outline-offset:4px;border-radius:var(--r-sm)}.post .meta{font-size:13px;color:var(--ink-3);display:flex;flex-direction:column;gap:2px}.post .h3{font-size:clamp(21px,2.4vw,26px)}.post p{font-size:14.5px;margin-top:6px;max-width:62ch}.post .link{white-space:nowrap}.cta{background:var(--surface);border-radius:var(--r-lg);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;min-height:340px}.cta .body{padding:52px 40px;display:flex;flex-direction:column;justify-content:center;gap:16px}.cta .body .h2{font-size:clamp(28px,3.4vw,38px)}.cta .body p{max-width:36ch;font-size:15px}.cta .body .btn{align-self:flex-start;margin-top:6px}.cta .media{position:relative;overflow:hidden;margin:6px 6px 0 0;border-radius:var(--r) var(--r) 0 0}.cta .media img.paint{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cta .media.mesh{background:linear-gradient(135deg,var(--deep),var(--deep-2))}.cta .media .meshbg{position:absolute;inset:0;z-index:0}.cta .media .meshbg canvas.shader{position:absolute;inset:0;width:100%;height:100%;display:block}.cta .media .shot{position:absolute;z-index:1;left:10%;top:12%;width:100%;border-radius:10px 0 0 0;overflow:hidden;box-shadow:var(--ring-shot)}.cta .media .shot img{width:100%;height:auto}.footer{background:var(--surface);margin-top:0;padding:56px 0 28px;border-top:1px solid var(--line)}.footer .cols{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:24px}.footer .brand{margin-bottom:14px}.footer .tagline{font-size:14px;color:var(--ink-2);max-width:30ch;margin-bottom:18px}.footer .social,.contact .social{display:flex;gap:6px;margin-left:-10px}.footer .social a,.contact .social a{color:var(--ink-2);width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r-sm)}.footer .social svg,.contact .social svg{width:15px;height:15px;fill:currentColor}.footer .fh{font-size:14px;font-weight:500;color:var(--ink);margin-bottom:14px;font-family:var(--sans);letter-spacing:0}.footer ul{display:flex;flex-direction:column;gap:9px}.footer li a{white-space:nowrap;font-size:14px;color:var(--ink-2);transition:color .2s var(--ease-out)}.footer .legal{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:center;gap:16px 28px;font-size:13px;color:var(--ink-3);flex-wrap:wrap}.footer .legal .pause{margin-left:auto;height:44px;font-size:13.5px;color:var(--ink-2);border:1px solid var(--line-2);border-radius:99px;padding:0 16px;transition:border-color .2s var(--ease-out),transform .16s var(--ease-out)}.footer .legal .pause:active,.mm-pause:active{transform:scale(.97)}.mm-pause{height:44px;font-size:13.5px;color:var(--ink-2);border:1px solid var(--line-2);border-radius:99px;padding:0 16px}.mm-pause[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.footer .legal .pause[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pagehead{padding:96px 0 40px;text-align:center}.pagehead .h1{max-width:22ch;margin-inline:auto}.pagehead .lead{margin:18px auto 0}.work-sec,.lab-sec,.notes-sec{padding-top:24px}main > .sec:last-child{padding-bottom:96px}.wgroup+.wgroup{margin-top:72px}.gh{font-family:var(--sans);font-size:15px;font-weight:500;color:var(--ink);padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--line)}.worklist{display:flex;flex-direction:column;gap:20px}.wcard{display:grid;grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);background:var(--surface);border-radius:var(--r-lg);overflow:hidden;min-height:260px;transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out)}.wcard:active{transform:scale(.99)}.wcard .media{margin:6px;border-radius:var(--r);overflow:hidden;position:relative;background:var(--surface-2);min-height:248px}.wcard .media img.paint{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.wcard .media .shot{position:absolute;left:10%;top:12%;width:100%;border-radius:var(--r-sm) 0 0 0;overflow:hidden;box-shadow:var(--shadow-float)}.wcard .media .float{position:absolute;background:var(--white);border-radius:var(--r);box-shadow:var(--ring),var(--shadow-float);color:var(--ink);font-size:12px}.wcard .fl-mid{transform:translateY(-50%) scale(.84)}.wcard .fl-phone{transform:translate(-50%,-50%) scale(.78)}.wcard .body{padding:36px 40px 36px 32px;display:flex;flex-direction:column;justify-content:center;gap:12px}.wcard .co{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:7px}.wcard .body .h3{font-size:clamp(22px,2.6vw,28px)}.wcard .body p{font-size:15px;max-width:40ch}.labgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.lcard{background:var(--surface);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:10px;min-height:190px;transition:background-color .25s var(--ease-out)}.lcard .top{display:flex;align-items:center;gap:12px;margin-bottom:12px}.lcard .ic{width:40px;height:40px;border-radius:10px;background:var(--white);border:1px solid var(--line);display:grid;place-items:center;flex:none}.lcard .ic svg{width:17px;height:17px;stroke:var(--ink);fill:none;stroke-width:1.5}.lcard h2{font-family:var(--sans);font-weight:500;font-size:15.5px;color:var(--ink)}.lcard .top small{font-size:13px;color:var(--ink-3)}.lcard p{font-size:15px;color:var(--ink)}.lcard .link{margin-top:auto;font-size:13.5px}.tools{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:40px auto 0;max-width:760px}.tools li{font-size:13px;color:var(--ink-2);border:1px solid var(--line-2);border-radius:99px;padding:5px 12px}.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:center}.split .photo{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1.15/1;background:var(--surface-2);position:relative}.split .photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.split .photo .float{position:absolute;left:24px;right:24px;bottom:24px;padding:14px;background:var(--white);border-radius:var(--r);box-shadow:var(--shadow-float);font-size:12px;color:var(--ink)}.split .photo .float .row{justify-content:space-between}.split .photo .float .t{margin-top:4px}.split .h2{font-size:clamp(30px,3.8vw,40px)}.split p{margin-top:16px;font-size:15.5px;max-width:46ch}.timeline{display:flex;flex-direction:column;border-top:1px solid var(--line)}.timeline .tr{display:grid;grid-template-columns:120px minmax(0,1fr) minmax(0,1fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--line);font-size:14.5px;align-items:baseline}.timeline .tr .y{font-size:13px;color:var(--ink-3);font-variant-numeric:tabular-nums}.timeline .tr b{font-weight:500;color:var(--ink)}.timeline .tr small{display:block;font-size:13px;color:var(--ink-3)}.timeline.rules .tr{grid-template-columns:48px minmax(0,1fr) minmax(0,1fr)}.recog-h{font-family:var(--sans);font-size:15px;font-weight:500;color:var(--ink);margin:56px 0 12px}.recog{border-top:1px solid var(--line)}.recog li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14.5px;color:var(--ink-2)}.faq{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;max-width:820px}.faq details{background:var(--bg);border-radius:var(--r);padding:0 20px}.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:15px;font-weight:500;color:var(--ink)}.faq summary::-webkit-details-marker{display:none}.faq summary .pl{width:16px;height:16px;position:relative;flex:none}.faq summary .pl::before,.faq summary .pl::after{content:"";position:absolute;background:var(--ink);left:50%;top:50%;transform:translate(-50%,-50%);transition:transform .25s var(--ease-out)}.faq summary .pl::before{width:12px;height:1.5px}.faq summary .pl::after{width:1.5px;height:12px}.faq details[open] summary .pl::after{transform:translate(-50%,-50%) rotate(90deg)}.faq .a{padding:0 0 20px;font-size:14.5px;color:var(--ink-2);max-width:60ch}.contact-head{padding-bottom:0;text-align:left}.contact-head .h1{margin-inline:0}.contact-head .lead{margin:18px 0 0;max-width:52ch}.contact-sec{padding-top:48px;padding-bottom:72px}.contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:stretch}.contact .direct{display:flex;flex-direction:column;gap:24px}.mailcard{background:var(--surface);border-radius:var(--r-lg);padding:28px}.mailcard small{display:block;font-size:13px;color:var(--ink-3)}.mailcard .addr{display:inline-block;margin:6px 0 20px;font-family:var(--serif);font-weight:300;font-size:clamp(24px,2.6vw,32px);line-height:1.2;letter-spacing:-.02em;color:var(--ink);overflow-wrap:anywhere}.mailcard .acts{display:flex;flex-wrap:wrap;gap:10px}.elsewhere{border-top:1px solid var(--line)}.elsewhere a{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:14px;min-height:72px;border-bottom:1px solid var(--line);color:var(--ink)}.elsewhere .ic{width:40px;height:40px;border-radius:var(--r-sm);background:var(--surface);display:grid;place-items:center;color:var(--ink-2)}.elsewhere .ic svg{width:16px;height:16px}.elsewhere .ic svg:not([fill]){fill:currentColor}.elsewhere .t b{display:block;font-weight:500;font-size:15.5px}.elsewhere .t small{display:block;font-size:13.5px;color:var(--ink-3);margin-top:2px}.elsewhere .row-static{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:14px;min-height:72px;border-bottom:1px solid var(--line)}.contact .form{padding:28px}.contact .form textarea{height:104px}.contact .form .h3{font-family:var(--sans);font-size:17px;font-weight:500;margin-bottom:20px}.after{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;margin-top:56px;padding-top:40px;border-top:1px solid var(--line)}.after .h3{font-family:var(--sans);font-size:17px;font-weight:500}.after ol{display:flex;flex-direction:column;gap:18px}.after li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px}.after .n{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--line-2);font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}.after b{display:block;font-weight:500;font-size:15.5px;color:var(--ink);margin:3px 0 6px}.after p{font-size:14.5px;color:var(--ink-2);max-width:56ch}.form{background:var(--surface);border-radius:var(--r-lg);padding:24px}.form .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form label{display:block;font-size:13px;color:var(--ink-2);margin-bottom:6px}.form label small{color:var(--ink-3);font-size:12.5px}.form .field{margin-bottom:14px}.form input,.form select,.form textarea{width:100%;height:44px;border:1px solid var(--field-edge);border-radius:var(--r-sm);background:var(--white);padding:0 12px;font:inherit;font-size:16px;color:var(--ink)}.form textarea{height:132px;padding:10px 12px;resize:vertical}.form input:focus-visible,.form select:focus-visible,.form textarea:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.form input::placeholder,.form textarea::placeholder{color:var(--ink-3)}.form .btn{width:100%}.form .fine{text-align:center;font-size:13px;color:var(--ink-3);margin-top:14px}.form .err{display:flex;gap:6px;align-items:flex-start;margin-top:6px;font-size:13.5px;color:var(--bad-ink)}.form .err::before{content:"!";flex:none;display:inline-grid;place-items:center;width:16px;height:16px;margin-top:1px;border-radius:50%;background:var(--bad-ink);color:var(--white);font-size:11px;font-weight:700}.form .err[hidden]{display:none}.form [aria-invalid="true"]{border-color:var(--bad-ink);box-shadow:0 0 0 1px var(--bad-ink)}.form .btn-submit{width:100%;border-color:var(--ink)}.form .done{display:none;margin-top:16px;padding:16px;border-radius:var(--r);background:var(--white);border:1px solid var(--line);font-size:14.5px}.form .done p{margin-bottom:12px}.form[data-sent="true"] .done{display:block}.case-head{padding:72px 0 0}.case-head .co{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:8px;margin-bottom:16px}.case-head .h1{max-width:22ch;font-size:clamp(34px,4.4vw,52px)}.case-head .lead{margin-top:20px;max-width:56ch}.case-hero{margin-top:36px}.case-hero.demo{margin-top:40px}.case-hero .imgcard{aspect-ratio:auto;height:clamp(320px,56svh,600px)}.case-hero .imgcard .fl-mid{left:22%;right:22%;padding:16px}.case-hero.feature{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--deep);color:var(--night-ink);height:clamp(340px,62svh,720px)}.fhero{position:absolute;inset:0}.fhero .meshbg{position:absolute;inset:0;z-index:0}.fhero .meshbg canvas.shader{position:absolute;inset:0;width:100%;height:100%;display:block}.case{padding:56px 0 0}.case-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;align-items:start}.case-rail{position:sticky;top:calc(var(--nav-h) + 24px)}.rail-in{display:flex;flex-direction:column;gap:18px;max-height:calc(100svh - var(--nav-h) - 48px);overflow-y:auto;padding:6px;margin:-6px;overscroll-behavior:contain;scrollbar-width:thin}.rail-in .mrow{padding:10px 0;border-top:1px solid var(--line)}.rail-in .mrow:first-child{border-top:0;padding-top:0}.rail-in .mrow small{display:block;font-size:13px;color:var(--ink-3);margin-bottom:3px}.rail-in .mrow b{font-weight:500;color:var(--ink);font-size:14px;line-height:1.4;display:block}.rail-in .studio{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line);color:var(--ink)}.rail-in .studio small{font-size:13px;color:var(--ink-3)}.rail-in .studio img{height:16px;width:auto}.rail-in .btn{align-self:flex-start;margin-top:4px}.toc{display:flex;flex-direction:column;gap:2px}.toc small{font-size:13px;color:var(--ink-3);margin-bottom:8px}.toc a{display:flex;gap:10px;align-items:baseline;font-size:14px;color:var(--ink-2);padding:5px 0;transition:color .2s var(--ease-out)}.toc a i{font-style:normal;font-size:12px;color:var(--ink-3);min-width:14px;font-variant-numeric:tabular-nums}.toc a.on{color:var(--ink)}.toc a.on i{color:var(--ink)}.case-main .csec{padding:0 0 72px}.case-main .bh{margin:0 0 10px}.case-main .bp{font-size:15.5px;color:var(--ink-2);max-width:560px;margin:0 0 24px}.case-main .bh+.decisions,.case-main .bh+.gallery,.case-main .bh+.stats,.case-main .bh+.tline,.case-main .bh+.film-shot{margin-top:24px}.brief{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink)}.brief .bcell{padding:22px 24px 6px 0}.brief .bcell+.bcell{padding-left:24px;border-left:1px solid var(--line)}.brief h3{font-family:var(--sans);font-size:13.5px;font-weight:500;color:var(--ink-3);margin-bottom:12px}.brief p{font-family:var(--serif);font-weight:300;font-size:21px;line-height:1.32;letter-spacing:-.02em;color:var(--ink)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stats .stat{background:var(--surface);border-radius:var(--r-lg);padding:26px 24px}.stats .stat b{display:block;font-family:var(--serif);font-weight:300;font-size:52px;line-height:1;letter-spacing:-.05em;color:var(--ink);margin-bottom:10px;font-variant-numeric:tabular-nums}.stats .stat span{font-size:14px;color:var(--ink-3)}.decisions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}.decisions:has(> .dec:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.dec{background:var(--surface);border-radius:var(--r);padding:20px}.dec h3{font-family:var(--sans);font-weight:500;color:var(--ink);font-size:15px;margin-bottom:6px}.dec p{font-size:14.5px;color:var(--ink-2)}.dec .rej{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line-2);font-size:13px;color:var(--ink-3)}.dec .rej::before{content:"✕";font-size:10px;margin-right:7px;color:var(--ink-3)}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}.gallery .imgcard{aspect-ratio:16/10}.gallery .imgcard .shot{position:absolute;left:8%;top:10%;width:100%;border-radius:var(--r-sm) 0 0 0;overflow:hidden;box-shadow:var(--shadow-float);z-index:1}.gallery figcaption{font-size:13.5px;color:var(--ink-3);margin-top:10px}.gallery .wide{grid-column:1/-1}.gallery .wide .imgcard{aspect-ratio:16/9}.film-shot{border-radius:var(--r-lg);overflow:hidden;background:var(--deep-2);aspect-ratio:16/9;box-shadow:var(--shadow-float)}.film-shot video{width:100%;height:100%;display:block;object-fit:cover}.film-shot.portrait{aspect-ratio:4/5;max-width:440px;background:var(--film-bg)}.tline{margin:24px 0 0;padding:0 0 0 28px;position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 32px}.tline::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:1.5px;background:var(--line-2)}.tline li{position:relative;padding:10px 0 10px 8px;font-size:14px;color:var(--ink-3);line-height:1.45}.tline li::before{content:"";position:absolute;left:-24px;top:16px;width:9px;height:9px;border-radius:50%;background:var(--bg);border:1.5px solid var(--ink-3);transition:background-color .4s,border-color .4s,transform .4s var(--ease-out)}.tline li.in::before{background:var(--accent);border-color:var(--accent);transform:scale(1.25)}.tline li i{font-style:normal;font-size:12px;color:var(--ink-3);display:block;margin-bottom:2px;font-variant-numeric:tabular-nums}.tline li b{display:block;font-weight:500;color:var(--ink);font-size:14.5px;margin-bottom:2px}.try{background:var(--surface);border-radius:var(--r-lg);padding:28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center}.try p{font-size:15.5px;color:var(--ink)}.casenav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.casenav a{background:var(--surface);border-radius:var(--r);padding:20px 22px;display:flex;flex-direction:column;gap:4px;transition:background-color .2s var(--ease-out)}.casenav a small{font-size:13px;color:var(--ink-3)}.casenav a b{font-family:var(--serif);font-weight:400;font-size:20px;color:var(--ink)}.casenav a.next{text-align:right}.ncards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ncards.two{grid-template-columns:repeat(2,minmax(0,1fr))}.ncard{position:relative;display:flex;flex-direction:column;gap:10px}.ncard .cover,.nfeat .cover{display:block;border-radius:var(--r);overflow:hidden;background:var(--deep)}.ncard .cover img,.nfeat .cover img{display:block;width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;transition:transform .5s var(--ease-out)}.ncard .meta,.nfeat .meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--ink-3);margin-top:6px}.ncard .h3{font-size:clamp(21px,2.2vw,25px)}.ncard .h3 a::after{content:"";position:absolute;inset:0}.ncard .h3 a:focus-visible{outline:none}.ncard:has(a:focus-visible){outline:2px solid var(--focus);outline-offset:6px;border-radius:var(--r)}.ncard p{font-size:15px;color:var(--ink-2);max-width:48ch}.more-notes{margin-top:40px}.notes-head{text-align:left;padding-bottom:24px}.notes-head .h1{margin-inline:0;max-width:18ch}.notes-head .lead{margin:18px 0 0;max-width:60ch}.notes-head .sub{display:flex;flex-wrap:wrap;align-items:center;gap:6px 24px;margin-top:14px;font-size:14px;color:var(--ink-3)}.nfeat{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px;align-items:center;padding-bottom:56px;border-bottom:1px solid var(--line)}.nfeat .fbody{display:flex;flex-direction:column;gap:14px;align-items:flex-start}.nfeat .meta span:first-child{color:var(--accent-ink);font-weight:500}.nfeat .h2 a{color:var(--ink)}.nfeat .lead{font-size:17px}.nfeat .fbody .ex{font-size:15px;color:var(--ink-3);max-width:52ch}.more-h{font-family:var(--sans);font-size:17px;font-weight:500;margin:56px 0 24px}.press{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}.pcard{display:flex;flex-direction:column;gap:8px;background:var(--white);border-radius:var(--r-lg);padding:12px 12px 24px}.vid{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:var(--night)}.vid-face{position:absolute;inset:0;display:block;color:var(--night-ink);background:radial-gradient(60% 80% at 80% 15%,var(--accent-glow),transparent 62%),linear-gradient(135deg,var(--deep),var(--deep-2))}.vid .vk{position:absolute;left:18px;top:16px;font-family:var(--serif);font-weight:300;font-size:22px;color:var(--night-ink)}.vid .play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--white);color:var(--ink);display:grid;place-items:center;box-shadow:var(--shadow-float);transition:transform .2s var(--ease-out)}.vid .play svg{width:22px;height:22px;fill:currentColor;stroke:none;margin-left:3px}.vid .tc{position:absolute;left:12px;bottom:12px;background:var(--scrim);color:var(--night-ink);font-size:13px;padding:4px 9px;border-radius:var(--r-sm)}.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.vid-face:active .play{transform:scale(.96)}.pbody{display:flex;flex-direction:column;gap:10px;align-items:flex-start;padding:12px 16px 0}.pbody .co{font-size:13px;color:var(--ink-3)}.pbody p{font-size:15px;color:var(--ink-2);max-width:40ch}.pstat{background:var(--deep);background:linear-gradient(135deg,var(--deep),var(--deep-2));color:var(--night-ink);border-radius:var(--r-lg);padding:32px;display:flex;flex-direction:column;justify-content:flex-end;gap:10px}.pstat .co{font-size:13px;color:var(--night-ink);opacity:.8;margin-bottom:auto}.pstat b{color:var(--night-ink);font-family:var(--serif);font-weight:300;font-size:clamp(48px,5.4vw,72px);line-height:1;letter-spacing:-.03em}.pstat p{font-size:15px;color:var(--night-ink);opacity:.86;max-width:30ch}.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-3);margin-bottom:20px}.crumbs a{color:var(--ink-2);min-height:44px;display:inline-flex;align-items:center}.crumbs [aria-current]{color:var(--ink-3)}.byline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:24px;font-size:14px;color:var(--ink-2)}.byline img{width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:50% 20%}.byline a{color:var(--ink);font-weight:500}.byline .dot-sep{color:var(--ink-3);padding-left:14px;border-left:1px solid var(--line-2)}.note-grid{display:grid;grid-template-columns:minmax(0,680px) minmax(0,1fr);gap:64px;align-items:start}.note-rail{position:sticky;top:calc(var(--nav-h) + 24px);display:flex;flex-direction:column;gap:20px;max-width:360px}.note-rail .toc{display:flex;flex-direction:column;border-top:1px solid var(--line)}.note-rail .toc small{font-size:13px;color:var(--ink-3);padding:14px 0 6px}.note-rail .toc a{display:flex;align-items:center;min-height:40px;font-size:14.5px;color:var(--ink-2);border-bottom:1px solid var(--line)}.prose .h3[id]{scroll-margin-top:calc(var(--nav-h) + 24px)}.prose .states{display:flex;flex-direction:column;gap:10px;margin:16px 0 0;padding:0}.prose .states li{position:relative;padding-left:18px;font-size:16.5px;line-height:1.6;color:var(--ink-2)}.prose .states li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:1px;background:var(--ink-3)}.prose .states b{color:var(--ink);font-weight:500}.prose .states + p{margin-top:16px}.relcase small{display:block;font-size:13px;color:var(--ink-3);margin-bottom:8px}.relcase a{display:block;background:var(--surface);border-radius:var(--r);padding:10px 10px 16px;color:var(--ink)}.relcase img{display:block;width:100%;height:auto;border-radius:var(--r-sm);margin-bottom:12px}.relcase b{display:block;font-family:var(--serif);font-weight:400;font-size:20px;padding:0 6px}.relcase a span{display:block;font-size:14px;color:var(--ink-2);margin-top:4px;padding:0 6px}.author{display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;padding:18px;background:var(--surface);border-radius:var(--r)}.author img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:50% 20%}.author b{display:block;font-weight:500;color:var(--ink);font-size:15px}.author p{font-size:14px;color:var(--ink-2);margin-top:4px}.author .links{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:2px}.relnote{margin:40px 0 16px}.relnote a{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:24px;align-items:center;background:var(--surface);border-radius:var(--r);padding:12px 24px 12px 12px;color:var(--ink)}.relnote img{display:block;width:100%;height:auto;aspect-ratio:1200/630;border-radius:var(--r-sm)}.relnote small{display:block;font-size:13px;color:var(--ink-3)}.relnote b{display:block;font-family:var(--serif);font-weight:400;font-size:22px;margin:4px 0}.relnote a > span > span{display:block;font-size:14.5px;color:var(--ink-2)}.prose{max-width:680px}.prose p{font-size:16.5px;line-height:1.7;color:var(--ink-2)}.prose p+p{margin-top:16px}.prose .h3{margin:40px 0 14px}.note-body{padding-top:40px}.skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;border-top:1px solid var(--line)}.skills li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.skills .n,.steps .n{font-size:13px;color:var(--ink-3);font-variant-numeric:tabular-nums;padding-top:2px}.skills h3,.agent h3,.steps h3{font-family:var(--sans);font-size:15.5px;font-weight:500;color:var(--ink)}.skills p{margin-top:4px;font-size:15px;color:var(--ink-2)}.agents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.agent{background:var(--surface);border-radius:var(--r-lg);padding:24px}.agent p{margin-top:8px;font-size:15px;color:var(--ink-2)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:none}.steps li{border-top:1px solid var(--ink);padding-top:14px}.steps h3{margin-top:10px}.steps p{margin-top:6px;font-size:14.5px;color:var(--ink-2)}.note-p{font-size:17px;line-height:1.6;color:var(--ink-2);max-width:62ch}.case-main .bh+.skills,.case-main .bh+.agents,.case-main .bh+.steps,.case-main .bh+.faq,.case-main .bp+.skills,.case-main .bp+.agents{margin-top:24px}.case-main .faq details{background:var(--surface)}.crit-demo{margin-top:56px}.cdwrap{container-type:inline-size}.cd-top{display:flex;gap:12px;align-items:stretch}.cd-tabs{flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg)}.cd-tab{display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 14px;border-radius:var(--r);color:var(--ink-2);text-align:left;transition:background-color .2s var(--ease-out),color .2s var(--ease-out),box-shadow .2s var(--ease-out),transform .16s var(--ease-out)}.cd-tab:active{transform:scale(.98)}.cd-tab svg{width:18px;height:18px;flex:none}.cd-tab .tl{display:flex;flex-direction:column;gap:2px;min-width:0}.cd-tab code{font-family:var(--mono);font-size:14.5px;color:var(--ink)}.cd-tab small{font-size:13px;color:var(--ink-3)}.cd-tab[aria-selected="true"]{background:var(--white);color:var(--ink);box-shadow:var(--shadow-soft),0 0 0 1px var(--line-2)}.cd-ctl{flex:none;min-width:92px;padding:0 16px;border:1px solid var(--line-2);border-radius:var(--r-lg);font-size:14px;font-weight:500;color:var(--ink);transition:border-color .2s var(--ease-out),transform .16s var(--ease-out)}.cd-ctl:active{transform:scale(.97)}html:not(.js) .cd-ctl,html:not(.js) .cd-tabs,html:not(.js) .cd-track{display:none}.cd-track{height:2px;margin:10px 4px 0;border-radius:2px;background:var(--line);overflow:hidden}.cd-track i{display:block;height:100%;background:var(--ink);transform-origin:left;transform:scaleX(0)}.cdemo.run .cd-track i{animation:cd-under var(--cd-dur,12s) linear both}.cdemo.manual .cd-track{visibility:hidden}.cd-body{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:40px;margin-top:28px;align-items:start}.cd-descs{display:grid;padding-top:8px}.js .cd-desc{grid-area:1/1;visibility:hidden}.js .cd-desc.on{visibility:visible;animation:cd-in .3s var(--ease-out) both}html:not(.js) .cd-desc+.cd-desc{margin-top:20px}.cd-desc:focus-visible{outline-offset:6px}.cd-desc .lead-s{font-family:var(--serif);font-weight:300;font-size:26px;line-height:1.2;letter-spacing:-.02em;color:var(--ink)}.cd-desc p+p{margin-top:12px;font-size:15.5px;line-height:1.6;color:var(--ink-2)}.cd-stages{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:12px;color:var(--ink);font-size:13px}.js .cd-stages{display:grid}.js .cd-stage{grid-area:1/1;visibility:hidden}.js .cd-stage.on{visibility:visible}html:not(.js) .cd-stage+.cd-stage{margin-top:16px}.cd-cap{margin-top:10px;font-size:13px;color:var(--ink-3)}.cd-bar{display:flex;align-items:center;gap:12px;justify-content:space-between;min-height:44px;padding:0 16px;background:var(--white);border:1px solid var(--line);border-radius:var(--r);font-family:var(--mono);font-size:13px;color:var(--ink-3)}.cd-bar .cmd{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cd-bar .res{font-family:var(--sans);font-size:14px;font-weight:500;color:var(--ink);white-space:nowrap}.cd-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:12px;margin-top:12px}.cd-screen,.cd-list,.cd-card,.cd-diff,.rs-card{background:var(--white);border:1px solid var(--line);border-radius:var(--r);min-height:var(--cd-h,252px)}.cd-screen{position:relative;padding:16px;overflow:hidden;display:flex;flex-direction:column;gap:12px}.sk{display:block;height:8px;border-radius:var(--r-sm);background:var(--surface-2)}.sk.w40{width:40%;height:10px;background:var(--line-2)}.sk.w60{width:60%}.sk.thin{height:6px}.skr{display:flex;align-items:center;gap:10px}.skr .sk{flex:1;height:auto;padding:8px 12px;font-size:12px;color:var(--ink-3);background:var(--surface)}.skr .sk.list{padding:16px 12px}.skr .sk.btn{flex:none;width:96px;text-align:center;background:var(--surface-2);color:var(--ink-2)}.skr.end{margin-top:auto}.scan{position:absolute;left:0;right:0;top:0;height:40%;background:linear-gradient(180deg,transparent,var(--accent-wash));pointer-events:none;opacity:0}.pin{flex:none;width:22px;height:22px;border-radius:50%;background:var(--bad-ink);color:var(--white);font-size:12px;font-weight:600;display:grid;place-items:center;font-style:normal;box-shadow:0 0 0 3px var(--bad-wash)}.cd-list{padding:14px;display:flex;flex-direction:column;gap:6px;min-width:0}.cd-list small,.cd-card small{font-size:12.5px;color:var(--ink-3)}.cd-row{display:grid;grid-template-columns:18px auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line)}.cd-row:first-child{border-top:0}.cd-row .no{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}.sev{display:inline-block;font-family:var(--mono);font-size:12px;font-weight:600;padding:2px 7px;border-radius:var(--r-sm);border:1px solid}.sev.p0{color:var(--bad-ink);background:var(--bad-wash);border-color:var(--bad-line)}.sev.p1{color:var(--warn-ink);background:var(--warn-wash);border-color:var(--warn-line)}.sev.p2{color:var(--accent-ink);background:var(--accent-wash);border-color:var(--accent-line)}.cd-row .txt{position:relative;justify-self:start;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;color:var(--ink)}.cd-row .vf{font-size:12px;font-weight:500;color:var(--ok-ink);background:var(--ok-wash);border:1px solid var(--ok-line);border-radius:99px;padding:2px 9px}.cd-row.drop .txt{color:var(--ink-3)}.cd-row.drop .txt::after{content:"";position:absolute;left:0;right:0;top:52%;height:1.5px;background:var(--ink-3);transform-origin:left}.cd-row.drop .vf{color:var(--ink-2);background:var(--surface);border-color:var(--line-2)}.cd-key{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:auto;padding-top:10px;border-top:1px solid var(--line);font-size:12.5px;color:var(--ink-3)}.cd-key b{margin-right:4px}.cd-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.cd-card{padding:14px;display:flex;flex-direction:column;gap:10px}.cd-card p{font-size:13.5px;color:var(--ink-2)}.cd-card p b{color:var(--ink);font-weight:500;margin-right:6px}.wf{display:block;height:10px;border-radius:var(--r-sm);background:var(--surface-2);transform-origin:left}.wf.w60{width:60%;background:var(--line-2)}.wf.row{height:24px}.wf.act{width:84px;height:28px;background:var(--ink);margin-top:auto}.cd-card .chips{display:flex;flex-wrap:wrap;gap:6px}.cd-card .chip{font-size:12.5px;border:1px solid var(--line-2);border-radius:99px;padding:3px 10px;color:var(--ink);background:var(--surface)}.cd-card .sp{margin-top:auto;font-size:13px;color:var(--ink)}.cd-diff{margin-top:12px;padding:8px 0;font-family:var(--mono);font-size:13px}.cd-diff li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 14px 7px 0}.cd-diff .m{text-align:center;color:var(--ink-3)}.cd-diff code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ink-2)}.cd-diff .add{background:var(--ok-wash)}.cd-diff .add code{color:var(--ink)}.cd-diff .del{background:var(--bad-wash)}.cd-diff .del code{color:var(--ink-3)}.cd-diff .nt{font-family:var(--sans);font-size:12.5px;font-weight:500;padding:3px 10px;border-radius:99px;border:1px solid;white-space:nowrap}.cd-diff .ok .nt{color:var(--ok-ink);background:var(--white);border-color:var(--ok-line)}.cd-diff .flag .nt{color:var(--warn-ink);background:var(--warn-wash);border-color:var(--warn-line)}.cd-gloss{margin-top:10px;font-size:13.5px;color:var(--ink-2)}.cd-rs{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px;margin-top:12px}.rs-card{position:relative;padding:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}.rs{display:block;height:28px;border-radius:var(--r-sm);background:var(--surface-2)}.rs.h{grid-column:1/-1;height:12px;width:45%;background:var(--line-2)}.rs.c{grid-column:1/-1;height:48px}.rs.btn1{background:var(--ink);height:32px}.rs.btn2{border:1px solid var(--line-2);background:var(--white);height:32px}.rs-lbl{position:absolute;right:14px;top:12px;font-size:12.5px;color:var(--ink-3)}.rs-lbl.b{display:none}.rs-tags{display:flex;flex-direction:column;gap:8px;justify-content:center;font-size:13.5px}.rs-tags li{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;color:var(--ink)}.play .cd-bar .res{animation:cd-in .3s var(--ease-out) 2.6s both}.play.s-audit .scan{animation:cd-scan 1.6s ease-in-out .3s 1 both}.play .pin{animation:cd-pop .3s var(--ease-out) both;animation-delay:calc(.9s + var(--i) * .35s)}.play .cd-row{animation:cd-in .3s var(--ease-out) both;animation-delay:calc(1.2s + var(--i) * .3s)}.play .cd-row .vf{animation:cd-pop .25s var(--ease-out) both;animation-delay:calc(3s + var(--i) * .35s)}.play .cd-row.drop .txt::after{animation:cd-strike .35s var(--ease-out) 4.4s both}.play .cd-key{animation:cd-in .3s var(--ease-out) 4.8s both}.play .cd-card.c1{animation:cd-in .3s var(--ease-out) .3s both}.play .cd-card.c1 p{animation:cd-in .3s var(--ease-out) both}.play .cd-card.c1 p:nth-of-type(1){animation-delay:.6s}.play .cd-card.c1 p:nth-of-type(2){animation-delay:.85s}.play .cd-card.c1 p:nth-of-type(3){animation-delay:1.1s}.play .cd-card.c2{animation:cd-in .3s var(--ease-out) 1.4s both}.play .wf{animation:cd-grow .4s var(--ease-out) both}.play .wf:nth-of-type(1){animation-delay:1.7s}.play .wf:nth-of-type(2){animation-delay:1.85s}.play .wf:nth-of-type(3){animation-delay:2s}.play .wf:nth-of-type(4){animation-delay:2.15s}.play .wf:nth-of-type(5){animation-delay:2.3s}.play .cd-card.c3{animation:cd-in .3s var(--ease-out) 2.6s both}.play .cd-card .chip{animation:cd-pop .25s var(--ease-out) both;animation-delay:calc(2.9s + var(--i) * .15s)}.play .cd-card .sp{animation:cd-in .3s var(--ease-out) 3.8s both}.play .cd-diff li{animation:cd-in .3s var(--ease-out) both;animation-delay:calc(.4s + var(--i) * .22s)}.play .cd-diff .nt{animation:cd-pop .25s var(--ease-out) both}.play .cd-diff .ok .nt{animation-delay:2.3s}.play .cd-diff .flag .nt{animation-delay:2.8s}.play .cd-gloss{animation:cd-in .3s var(--ease-out) 3.3s both}.play .rs{animation:cd-tidy 1.2s var(--ease-out) both;animation-delay:1.4s}.play .rs.a{--dx:10px;--dr:2deg;--rc:var(--warn-line)}.play .rs.b{--dx:-6px;--dr:-1.5deg;--rc:var(--accent-wash)}.play .rs.c{--dx:14px;--dr:1deg;--rc:var(--bad-line)}.play .rs.btn1{--dx:-12px;--dr:-2deg;--rc:var(--ok)}.play .rs.btn2{--dx:8px;--dr:3deg}.play .rs.h{--dx:18px;--dr:0deg}.play .rs-lbl.b{display:block;animation:cd-gone 2.4s linear both}.play .rs-lbl.a{animation:cd-in .3s var(--ease-out) 2.5s both}.play .rs-tags li{animation:cd-in .3s var(--ease-out) both;animation-delay:calc(2.4s + var(--i) * .3s)}.cdemo.hold .cd-track i{animation-play-state:paused}.cdemo.stop *,.cdemo.stop *::after{animation-play-state:paused!important}.cdemo.stop .cd-desc.on{animation-play-state:running!important}@keyframes cd-in{from{opacity:0;transform:translateY(6px)}}@keyframes cd-pop{from{opacity:0;transform:scale(.6)}}@keyframes cd-grow{from{opacity:0;transform:scaleX(.2)}}@keyframes cd-strike{from{transform:scaleX(0)}}@keyframes cd-gone{0%,80%{opacity:1}100%{opacity:0}}@keyframes cd-scan{0%{opacity:0;transform:translateY(-100%)}20%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translateY(250%)}}@keyframes cd-tidy{0%,25%{transform:translateX(var(--dx,0)) rotate(var(--dr,0));background-color:var(--rc,var(--surface-2))}100%{transform:none}}@keyframes cd-under{from{transform:scaleX(0)}to{transform:scaleX(1)}}@container (max-width:900px){.cd-body{grid-template-columns:minmax(0,1fr);gap:20px}.cd-desc .lead-s{font-size:22px}}@container (max-width:640px){.cd-top{flex-direction:column}.cd-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.cd-ctl{min-height:44px}.cd-split,.cd-rs,.cd-flow{grid-template-columns:minmax(0,1fr)}.cd-screen,.cd-list,.cd-card,.cd-diff,.rs-card{min-height:0}.cd-bar{flex-wrap:wrap;gap:4px 12px;padding:10px 14px}.cd-bar .cmd{flex-basis:100%}.cd-diff .nt{grid-column:2;justify-self:start}}.fframe{position:absolute;left:4%;right:4%;top:4.5%;bottom:4.5%;z-index:1;display:flex;align-items:center;justify-content:center}.shot.live{background:var(--night)}.shot.live iframe{width:1200px;height:880px;border:0;display:block;transform-origin:0 0;pointer-events:none;background:var(--night)}.shot.live.has-poster{background:var(--night)}.fframe .shot.live.has-poster{width:100%;aspect-ratio:1200/880;max-height:100%}.shot.live .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left}.shot.live.has-poster iframe{position:absolute;left:0;top:0;opacity:0;transition:opacity .3s var(--ease-out)}.shot.live.has-poster.loaded iframe{opacity:1}.shot.live iframe:not([src]){visibility:hidden}.fframe .shot.live{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--ring-deep)}.fframe .shot.fit{position:relative;width:100%;border-radius:var(--r);overflow:hidden;box-shadow:var(--ring-deep)}.fframe .shot.fit img{display:block;width:100%;height:auto}.fframe .shot.fit .zoom{position:absolute;right:12px;bottom:12px}.gallery .imgcard .shot.live{left:8%;top:10%;width:100%;aspect-ratio:1200/880;border-radius:var(--r-sm) 0 0 0;box-shadow:var(--ring-deep)}.shot.live[data-open],.shot.fit{cursor:zoom-in}.shot .zoom{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;background:var(--glass);color:var(--ink);font-size:12.5px;font-weight:500;border-radius:99px;padding:6px 10px 6px 8px;transition:transform .2s var(--ease-out);box-shadow:var(--ring-chip);z-index:3}.shot .zoom svg{width:13px;height:13px}.imgcard.mesh :focus-visible,.case-hero.feature :focus-visible,.lightbox :focus-visible{outline-color:var(--focus-on-dark)}.fframe .slides{position:relative;width:100%;aspect-ratio:16/10;max-height:100%;border-radius:var(--r);overflow:hidden;background:var(--white);box-shadow:var(--ring-slides)}.fframe .slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left}.fframe .slides img.on{z-index:1}.js .fframe .slides img{opacity:0;transform:scale(1.035);transition:opacity .9s var(--ease),transform 4.2s linear}.js .fframe .slides img.on{opacity:1;transform:scale(1)}.sdots{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:6px;padding:6px 9px;border-radius:99px;background:var(--dots-bg);backdrop-filter:blur(6px);z-index:2}.sdots i{width:6px;height:6px;border-radius:50%;background:var(--dots-off);transition:background-color .3s var(--ease-out),transform .3s var(--ease-out)}.sdots i.on{background:var(--white);transform:scale(1.35)}.gallery .imgcard .shot.fit{position:absolute;left:5%;right:5%;top:50%;width:auto;transform:translateY(-50%);border-radius:var(--r-sm);overflow:hidden;z-index:1;box-shadow:var(--ring-shot)}.gallery .imgcard .shot.fit img{display:block;width:100%;height:auto}.gallery .wide .imgcard .shot.fit{left:7%;right:7%}.lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;overscroll-behavior:contain}.lightbox[hidden]{display:none}.lb-backdrop{position:absolute;inset:0;background:var(--scrim);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:lbfade .2s var(--ease-out)}.lb-panel{position:relative;width:min(1600px,100%);height:min(94vh,calc((100vw - 48px) * .66));display:flex;flex-direction:column;background:var(--night);color:var(--night-ink);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--ring-lb);animation:lbin .3s var(--ease-out)}.lb-bar{display:flex;align-items:center;gap:14px;height:48px;padding:0 8px 0 16px;background:var(--night-bar);border-bottom:1px solid var(--night-line);color:var(--night-ink);font-size:14px;flex:none}.lb-title{font-weight:500}.lb-note{color:var(--night-mute);font-size:13px}.lb-close{margin-left:auto;width:44px;height:44px;border-radius:var(--r-sm);display:grid;place-items:center;color:var(--night-ink);transition:background-color .2s var(--ease-out)}.lb-close svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}.lb-body{flex:1;min-height:0;background:var(--night)}.lb-body iframe{width:100%;height:100%;border:0;display:block;background:var(--night)}.lb-body [hidden]{display:none!important}.lightbox.is-img .lb-panel{width:auto;height:auto;max-width:min(1600px,100%)}.lightbox.is-img .lb-body{flex:none;display:flex}.lightbox .lb-img{display:block;width:auto;height:auto;max-width:min(1600px,calc(100vw - 48px));max-height:calc(94vh - 48px);object-fit:contain;background:var(--night)}body.lb-open{overflow:clip}@keyframes lbfade{from{opacity:0}}@keyframes lbin{from{opacity:0;transform:translateY(12px) scale(.98)}}.nf{min-height:calc(100svh - var(--nav-h));display:grid;place-items:center;text-align:center;position:relative;padding:60px 0}.nf .big{font-family:var(--serif);font-weight:300;font-size:clamp(96px,16vw,168px);line-height:1;color:var(--ink-3);letter-spacing:-.04em;font-variant-numeric:tabular-nums}.nf .in{display:flex;flex-direction:column;align-items:center;gap:14px}.nf .in p{max-width:32ch;font-size:15px}.js .rv{opacity:0;transform:translateY(12px);transition:opacity .45s var(--ease-out),transform .45s var(--ease-out)}.js .rv.in{opacity:1;transform:none}.rv-d1{transition-delay:.08s}.rv-d2{transition-delay:.16s}.rv-d3{transition-delay:.24s}.scroll-progress{position:fixed;left:0;top:0;height:2px;width:100%;background:var(--ink);transform-origin:0 50%;transform:scaleX(0);z-index:60;pointer-events:none}.px-box>img.paint,.px-box>img{top:-40px;bottom:-40px;height:calc(100% + 80px);transition:none;will-change:transform}.px-box>.float,.px-box>.shot{translate:0 var(--py,0)}.scene{position:absolute;inset:0;z-index:1;font-family:var(--sans);color:var(--ink)}.scene .float{position:absolute}.kchat{font-size:11px;color:var(--k-ink)}.kwin{position:absolute;left:28px;right:-60px;top:28px;bottom:-40px;background:var(--k-bg);border-radius:12px 0 0 0;border:1px solid var(--k-edge);box-shadow:var(--ring-kwin);overflow:hidden;display:flex;flex-direction:column}.ktop{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--k-line);font-size:10.5px;color:var(--k-mid)}.kcrumb{color:var(--k-ink);font-weight:500}.kchip{margin-left:auto;border:1px solid var(--k-line);border-radius:99px;padding:1px 7px;font-size:9.5px}.kbody{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;padding:14px;flex:1;min-height:0}.kpis{display:flex;flex-direction:column;gap:8px}.ktile{position:relative;background:var(--k-sur);border:1px solid var(--k-line);border-radius:9px;padding:10px 11px;transition:border-color .4s,box-shadow .4s}.ktile small{display:block;font-size:9.5px;color:var(--k-mute)}.ktile b{display:block;font-family:var(--serif);font-weight:300;font-size:22px;letter-spacing:-.03em;margin:3px 0 1px;color:var(--k-ink)}.ktile em{font-style:normal;font-size:9.5px;color:var(--k-ok)}.ktile em.down{color:var(--k-down)}.ktile.hot{animation:ktile 9s ease-in-out infinite}@keyframes ktile{0%,12%{border-color:var(--k-line);box-shadow:none}20%,45%{border-color:var(--k-v);box-shadow:0 0 0 3px var(--k-v-glow)}55%,100%{border-color:var(--k-line);box-shadow:none}}.kadd{position:absolute;right:8px;top:8px;display:inline-flex;align-items:center;gap:4px;background:var(--k-v-strong);color:var(--k-on);border-radius:6px;padding:3px 7px;font-size:9px;font-weight:500;animation:kadd 9s ease-in-out infinite backwards}.kadd i{font-style:normal}@keyframes kadd{0%,14%{opacity:0;transform:translateY(-3px)}20%,40%{opacity:1;transform:none}44%,100%{opacity:0;transform:translateY(-3px)}}.kcursor{position:absolute;inset:0;pointer-events:none;animation:kcur 9s ease-in-out infinite}.kcursor::before{content:"";position:absolute;left:0;top:0;width:9px;height:9px;border-left:2px solid var(--k-on);border-top:2px solid var(--k-on);transform:rotate(-15deg);filter:var(--cursor-shadow)}@keyframes kcur{0%{transform:translate(80%,95%);opacity:0}10%{opacity:1}18%{transform:translate(62%,52%)}24%,42%{transform:translate(84%,22%);opacity:1}48%,100%{transform:translate(120%,40%);opacity:0}}.kchatp{display:flex;flex-direction:column;gap:8px;min-width:0;padding-right:74px}.kctx{display:flex;gap:6px;min-height:20px}.kctxchip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--k-v);background:var(--k-v-wash);color:var(--k-ink);border-radius:99px;padding:2px 8px;font-size:9.5px;animation:kctx 9s ease-in-out infinite backwards}.kctxchip.dim{border-color:var(--k-line);background:transparent;color:var(--k-mid);animation:none}@keyframes kctx{0%,42%{opacity:0;transform:translateY(4px)}47%,100%{opacity:1;transform:none}}.kq{align-self:flex-end;max-width:85%;background:var(--k-sur);border:1px solid var(--k-line);border-radius:10px 10px 2px 10px;padding:6px 9px;font-size:10.5px;animation:kfade 9s ease-in-out .3s infinite backwards}@keyframes kfade{0%,50%{opacity:0;transform:translateY(4px)}55%,100%{opacity:1;transform:none}}.ksteps{display:flex;flex-direction:column;gap:3px;font-size:9.5px;color:var(--k-mid)}.ksteps li{display:flex;align-items:center;gap:6px;animation:kstep 9s ease-in-out infinite backwards}.ksteps li:nth-child(1){animation-delay:.6s}.ksteps li:nth-child(2){animation-delay:1s}.ksteps li:nth-child(3){animation-delay:1.4s}.ksteps li i{width:10px;height:10px;border-radius:50%;background:var(--k-ok);flex:none}.ksteps li span{margin-left:auto;font-family:var(--mono);font-size:8.5px;color:var(--k-mute)}@keyframes kstep{0%,52%{opacity:0;transform:translateX(-4px)}56%,100%{opacity:1;transform:none}}.kans{background:var(--k-sur);border:1px solid var(--k-line);border-radius:10px;padding:9px 10px;font-size:10.5px;line-height:1.45;animation:kfade 9s ease-in-out 2.2s infinite backwards}.kans b{font-weight:600;color:var(--k-ink)}.kbars{margin:8px 0 6px;display:flex;flex-direction:column;gap:4px}.kbars>div{display:grid;grid-template-columns:48px minmax(0,1fr) 30px;align-items:center;gap:7px;font-size:9px;color:var(--k-mid)}.kbars i{height:6px;border-radius:99px;background:var(--k-track);position:relative;overflow:hidden}.kbars i::after{content:"";position:absolute;inset:0;width:var(--w);background:var(--k-v);border-radius:99px;transform-origin:left;animation:kbar 9s ease-in-out 2.6s infinite backwards}.kbars b{font-weight:500;color:var(--k-ink);text-align:right}@keyframes kbar{0%,28%{transform:scaleX(0)}40%,100%{transform:scaleX(1)}}.ksrc{font-size:8.5px;color:var(--k-mute);border-top:1px dashed var(--k-line);padding-top:6px}.kinput{margin-top:auto;display:flex;align-items:center;border:1px solid var(--k-line);border-radius:8px;padding:6px 9px;font-size:10px;color:var(--k-mute)}.kinput b{margin-left:auto;background:var(--k-v-strong);color:var(--k-on);border-radius:5px;padding:2px 8px;font-size:9px;font-weight:500}.ic-dash rect{transform-box:fill-box;transform-origin:center}@keyframes tile{0%{opacity:.6;transform:scale(.95) translateY(3px)}50%{opacity:1;transform:scale(1.04) translateY(-2px)}100%{transform:none}}@media (hover:hover) and (pointer:fine){.hv-play:hover{transform:translateY(-1px)}.hv-pause:hover{background:var(--white)}.ncard:hover .cover img,.nfeat:hover .cover img{transform:scale(1.02)}.vid-face:hover .play{transform:scale(1.05)}.relcase a:hover,.relnote a:hover{background:var(--surface-2)}.note-rail .toc a:hover{color:var(--ink)}.ncard:hover .h3 a,.nfeat .h2 a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.scard:hover .plate-in{transform:translateY(-4px)}.btn-primary:hover{background:var(--ink-hover)}.btn-ghost:hover{background:var(--white);border-color:var(--ink-4)}.btn:hover .lbl span{transform:translateY(-100%)}.link:hover::after{transform:translateX(2px)}.nav-links a:hover,.nav-right .txt:hover{color:var(--ink)}.regen:hover{color:var(--ink)}.vbtn:hover:not([aria-disabled="true"]){color:var(--ink);background:var(--surface-2)}.post:hover .h3 a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.pause-ic:hover{border-color:var(--ink-4)}.footer .social a:hover,.contact .social a:hover{color:var(--ink);background:var(--surface-2)}.footer li a:hover{color:var(--ink)}.footer .legal .pause:hover{border-color:var(--ink-4)}.wcard:hover{transform:translateY(-2px);box-shadow:var(--shadow-card)}.lcard:hover{background:var(--surface-2)}.cd-tab[aria-selected="false"]:hover{background:var(--surface-2);color:var(--ink)}.cd-ctl:hover{border-color:var(--ink-4)}.casenav a:hover{background:var(--surface-2)}.toc a:hover{color:var(--ink)}.elsewhere a:hover .t b{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.elsewhere a:hover .ic{color:var(--ink)}.lb-close:hover{background:var(--night-hover)}.shot:hover .zoom{transform:translateY(-2px)}a:hover .ic-dash rect,.scard:hover .ic-dash rect{animation:tile .9s ease-in-out}.ic-dash rect:nth-child(2){animation-delay:.08s}.ic-dash rect:nth-child(3){animation-delay:.16s}.ic-dash rect:nth-child(4){animation-delay:.24s}}.paused *,.paused *::before,.paused *::after{animation:none!important;transition-duration:0s!important}.paused .js .rv,.paused.js .rv{opacity:1;transform:none}.paused .kadd,.paused .kctxchip,.paused .kq,.paused .ksteps li,.paused .kans{opacity:1;transform:none}.paused .kcursor,.paused .cd-track,.paused .scroll-progress{display:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition-duration:0s!important}.js .rv{opacity:1;transform:none}.kadd,.kctxchip,.kq,.ksteps li,.kans{opacity:1;transform:none}.kcursor{display:none}.cd-track{display:none}}@media (max-width:1040px),(max-height:700px){}@media (max-width:900px){:root{--sec:96px}.hero .container{grid-template-columns:minmax(0,1fr);gap:36px}.hero{--h1-lh:46px}.stack .scard{grid-template-columns:minmax(0,1fr);min-height:0}.scard .media{min-height:0;padding:28px 22px}.plate .pnote{font-size:13px;margin-top:16px}.scard .body{padding:28px 28px 32px}.cta{grid-template-columns:minmax(0,1fr)}.cta .media{min-height:260px;margin:0 6px 6px}.footer .cols{grid-template-columns:repeat(3,minmax(0,1fr))}.footer .cols>div:first-child{grid-column:1/-1}.contact{grid-template-columns:minmax(0,1fr)}.contact{gap:40px}.after{grid-template-columns:minmax(0,1fr);gap:20px}.split{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.skills,.agents{grid-template-columns:minmax(0,1fr)}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.forge-grid{grid-template-columns:minmax(0,1fr);gap:32px}.who-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "side" "jobs";grid-template-rows:auto;row-gap:32px}.who-side{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);grid-template-rows:1fr auto;align-items:stretch;gap:0 24px}.who-photo{grid-row:1 / span 2;min-height:320px}.who-side .facts{margin:0}.who-side .link{grid-column:2;grid-row:2}.pstrip{grid-template-columns:minmax(0,1fr);gap:16px}.brief,.stats{grid-template-columns:minmax(0,1fr)}.brief .bcell+.bcell{padding-left:0;border-left:0;border-top:1px solid var(--line)}.brief p{font-size:19px}.decisions:has(> .dec:nth-child(3):last-child){grid-template-columns:minmax(0,1fr)}.tline{grid-template-columns:minmax(0,1fr)}}@media (max-width:900px){.nav-links,.nav-right .txt,.nav-right .pause-ic{display:none}.nav-right{gap:8px}.nav .container{grid-template-columns:minmax(0,1fr) auto;gap:10px}.burger{display:grid;margin-right:-10px}.burger:focus:not(:focus-visible){outline:0}}@media (max-width:760px){:root{--sec:72px;--gutter:16px;--nav-h:64px}body{font-size:15px}.brand{font-size:17px}.nav-right .btn{height:44px;padding:0 14px;font-size:14px}.nav-right{gap:4px}.hero{padding:40px 0 24px;--h1-lh:40px}.hero .h1{font-size:36px}.hero-video{border-radius:var(--r)}.hv-cap{display:none}.labgrid{grid-template-columns:minmax(0,1fr)}.footer .cols{grid-template-columns:repeat(2,minmax(0,1fr))}.footer .legal .pause{margin-left:0}.wcard{grid-template-columns:minmax(0,1fr)}.wcard .body{padding:24px 24px 28px}.post{grid-template-columns:minmax(0,1fr);gap:10px}.post .link{justify-self:start}.timeline .tr,.timeline.rules .tr{grid-template-columns:minmax(0,1fr);gap:4px}.decisions,.gallery{grid-template-columns:minmax(0,1fr)}.casenav{grid-template-columns:minmax(0,1fr)}.casenav a.next{text-align:left}.try{grid-template-columns:minmax(0,1fr)}.form .row{grid-template-columns:minmax(0,1fr)}.pagehead{padding:64px 0 32px}.case-head{padding:48px 0 0}.case-hero.feature{height:auto;aspect-ratio:4/3}.case-hero .imgcard{height:auto;aspect-ratio:4/3}.case-hero .imgcard .fl-mid{left:16px;right:16px}.imgcard .float{font-size:11px}.fl-mid{left:16px;right:16px}.cta .media .shot,.wcard .media .shot{left:6%;top:10%;width:110%}.fframe{left:3%;right:3%}.kbody{grid-template-columns:minmax(0,1fr)}.kpis{flex-direction:row}.ktile{flex:1}.kwin{right:-30px}.lightbox{padding:0}.lb-panel{height:100%;border-radius:0}.lightbox.is-img{padding:12px}.lightbox.is-img .lb-panel{height:auto;border-radius:var(--r)}.lightbox .lb-img{max-width:calc(100vw - 24px);max-height:calc(100svh - 72px)}}@media (max-width:340px){.nav-right .btn{display:none}}@media (max-width:640px){.who-side{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.who-photo{grid-row:auto;aspect-ratio:4/3;min-height:0}.who-side .facts{margin-top:20px}.who-side .link{grid-column:1;grid-row:auto}}@media (max-width:760px){.after ol{grid-template-columns:minmax(0,1fr);gap:20px}.after{margin-top:48px}.mailcard,.contact .form{padding:22px}}@media (max-width:900px){.ncards{grid-template-columns:minmax(0,1fr)}.ncards.two{grid-template-columns:minmax(0,1fr)}.nfeat{grid-template-columns:minmax(0,1fr);gap:24px}.press{grid-template-columns:minmax(0,1fr)}.pcard{grid-template-columns:minmax(0,1fr);padding:12px 12px 20px}.pbody{padding:4px 12px 0}.relnote a{grid-template-columns:minmax(0,1fr);padding:12px 12px 20px}.relnote a > span{padding:0 8px}}@media (max-width:1100px){.note-grid{grid-template-columns:minmax(0,1fr);gap:48px}.note-rail{position:static;max-width:680px}.note-rail .toc{display:none}}:root{--brand-lime:#d4ff52;--brand-charcoal:#20242b;--brand-navy:#1b2e52;--brand-navy-2:#2c4a7c;--brand-lavender:#a98bff;--peek-fade:rgba(28,26,21,.28)}.tlink{color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.case-link{margin-top:24px}.case-link .btn svg{width:15px;height:15px}.case-hero.media .mframe{border-radius:var(--r-lg)}.mframe{position:relative;border-radius:var(--r);overflow:hidden;background:var(--surface)}.mframe.t-lime{background:var(--brand-lime)}.mframe.t-charcoal{background:var(--brand-charcoal)}.mframe.t-navy{background:var(--brand-navy)}.mframe.t-navy-2{background:var(--brand-navy-2)}.mframe.t-lavender{background:var(--brand-lavender)}.mframe.t-white{background:var(--white)}.mframe img,.mframe video{display:block;width:100%;height:auto}.mframe.mhero{aspect-ratio:16/9;max-height:min(60svh,620px);width:100%}.mframe.mhero img,.mframe.mhero video{width:100%;height:100%;object-fit:cover}.mframe .shot.fit{position:relative;display:block}.mframe .shot.fit .zoom{opacity:0;transition:opacity .2s var(--ease-out),transform .2s var(--ease-out)}.mframe .shot.fit:focus-visible .zoom{opacity:1}.mframe .shot.peek{max-height:560px;overflow:hidden}.mframe .shot.peek::after{content:"";position:absolute;left:0;right:0;bottom:0;height:96px;background:linear-gradient(to bottom,transparent,var(--peek-fade));pointer-events:none}.mframe .shot.peek .zoom{opacity:1}.mframe .shot.fit:focus-visible{outline-offset:-3px}.mgrid{display:grid;gap:16px;margin-top:24px}.mgrid.c2{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.mgrid .wide{grid-column:1/-1}.mfig figcaption{font-size:13.5px;color:var(--ink-3);margin-top:10px}.csec .bp+.mgrid{margin-top:0}.personas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.persona{background:var(--surface);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:14px}.persona .ph{display:flex;align-items:center;gap:14px}.persona .ph img{width:56px;height:56px;border-radius:50%;flex:none;object-fit:cover;background:var(--white)}.persona h3{font-family:var(--sans);font-size:16px;font-weight:600;color:var(--ink)}.persona small{font-size:13.5px;color:var(--ink-3)}.persona p{font-size:14.5px}.persona .pq{margin:0;padding:14px 16px;background:var(--white);border-radius:var(--r);border:1px solid var(--line)}.persona .pq p{font-family:var(--serif);font-weight:300;font-size:19px;line-height:1.35;letter-spacing:-.015em;color:var(--ink)}.persona .job b{display:block;font-size:13px;font-weight:500;color:var(--ink-3);margin-bottom:2px}.pfine{font-size:13px;color:var(--ink-3);margin-top:12px}.flow{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;counter-reset:f}.flow li{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border-radius:99px;padding:7px 14px 7px 7px;font-size:14px;color:var(--ink)}.flow .n{width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-size:12px;font-weight:500;font-variant-numeric:tabular-nums}.wcard .media.cover{background:var(--deep-2)}.wcard .media.cover{color:var(--night-ink)}.wcard .media.cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.minis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:32px}.mini{position:relative;background:var(--surface);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-soft)}.mini .media{display:block;margin:6px 6px 0;border-radius:var(--r);overflow:hidden;aspect-ratio:16/10;background:var(--deep-2)}.mini .media img{width:100%;height:100%;object-fit:cover}.mini .body{padding:22px 26px 28px;display:flex;flex-direction:column;gap:8px}.mini .co{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:7px}.mini .h3 a::after{content:"";position:absolute;inset:0}.mini p{font-size:15px;max-width:48ch}.mini:has(a:focus-visible){outline:2px solid var(--focus);outline-offset:4px}.mini .h3 a:focus-visible{outline:0}@media (hover:hover) and (pointer:fine){.mframe .shot.fit:hover .zoom{opacity:1}.mini{transition:box-shadow .25s var(--ease-out)}.mini:hover{box-shadow:var(--shadow-card)}}:root{--pv-map:#e3ebfa;--pv-road:#c6d4ee;--pv-paper:#fbf7ec;--pv-pen:#4a463f;--pv-red:#c2410c}.split-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:end}.split-head .lead{max-width:48ch}.psteps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:s}.psteps a{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;background:var(--bg);border-radius:var(--r-lg);padding:8px 8px 22px;height:100%;transition:transform .25s var(--ease-out),box-shadow .25s var(--ease-out)}.psteps .pthumb{grid-column:1/-1;display:block;background:var(--surface);border-radius:var(--r);overflow:hidden;margin-bottom:12px}.psteps .pthumb .pv{width:100%;height:auto}.psteps .pn{grid-row:span 3;margin-left:14px;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}.psteps b{font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.025em;line-height:1.2;color:var(--ink);padding-right:14px}.psteps .ps{font-size:14.5px;color:var(--ink-2);padding-right:14px}.psteps .pai{display:inline-flex;align-items:center;gap:6px;margin-top:8px;justify-self:start;font-size:13px;font-weight:500;color:var(--accent-ink);background:var(--accent-wash);border-radius:99px;padding:4px 10px}.psteps .pai svg{width:13px;height:13px}.psteps a:active{transform:scale(.99)}@media (hover:hover) and (pointer:fine){.psteps a:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}}.prail{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.prail a{display:inline-flex;align-items:center;gap:8px;min-height:44px;background:var(--surface);border-radius:99px;padding:0 16px 0 8px;font-size:14px;color:var(--ink);transition:background-color .2s var(--ease-out)}.prail a span{width:26px;height:26px;border-radius:50%;background:var(--white);display:grid;place-items:center;font-size:12px;font-variant-numeric:tabular-nums;color:var(--ink-2)}@media (hover:hover) and (pointer:fine){.prail a:hover{background:var(--surface-2)}}.process-sec{padding-top:24px}.pstep{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;align-items:center;padding:56px 0;border-top:1px solid var(--line);scroll-margin-top:calc(var(--nav-h) + 8px)}.pstep:first-child{border-top:0;padding-top:16px}.pvis{background:var(--surface);border-radius:var(--r-lg);overflow:hidden}.pvis .pv{width:100%;height:auto}.pnum{display:block;font-size:13.5px;color:var(--ink-3);margin-bottom:10px;font-variant-numeric:tabular-nums}.pwhat{font-size:17px;line-height:1.55;color:var(--ink-2);margin-top:16px;max-width:52ch}.pdl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 0;border-top:1px solid var(--line);padding-top:16px}.pdl dt{font-size:13px;color:var(--ink-3);margin-bottom:4px}.pdl dd{margin:0;font-size:14.5px;color:var(--ink);line-height:1.45}.pai-box{margin-top:24px;background:var(--accent-wash);border-radius:var(--r-lg);padding:20px 22px}.pai-box h3{display:flex;align-items:center;gap:8px;font-family:var(--sans);font-size:14px;font-weight:600;color:var(--accent-ink);margin-bottom:6px}.pai-box h3 svg{width:15px;height:15px}.pai-box li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 16px;padding:10px 0;border-top:1px solid var(--accent-line)}.pai-box li:first-child{border-top:0}.pai-box li b{font-weight:600;font-size:14.5px}.pai-box li span{grid-column:1;font-size:14px;color:var(--ink-2)}.pai-box li .link{grid-column:2;grid-row:1/span 2;align-self:center;min-height:44px}.prule{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:end}.prule p{font-size:16px;max-width:48ch}.pv .pv-phone{fill:var(--ink)}.pv .pv-screen{fill:var(--white)}.pv .pv-map{fill:var(--pv-map)}.pv .pv-road{fill:none;stroke:var(--pv-road);stroke-width:7;stroke-linecap:round}.pv .pv-route{fill:none;stroke:var(--accent-ink);stroke-width:3;stroke-linecap:round;stroke-dasharray:1 6}.pv .pv-dot{fill:var(--white);stroke:var(--accent-ink);stroke-width:3}.pv .pv-dot2{fill:var(--accent-ink)}.pv .pv-card{fill:var(--white);stroke:var(--line);stroke-width:1.5}.pv .pv-ava{fill:var(--surface-2)}.pv .pv-plate{fill:var(--warn-wash);stroke:var(--warn-line)}.pv .pv-ghost{fill:var(--surface)}.pv .pv-btn{fill:var(--accent-ink)}.pv-t{font-family:var(--sans);fill:var(--ink-2);font-size:10px}.pv-t.th{font-family:var(--serif);font-size:16px;fill:var(--ink);letter-spacing:-.02em}.pv-t.tb{font-size:11px;font-weight:600;fill:var(--ink)}.pv-t.ts{font-size:10px}.pv-t.tp{font-size:9px;font-weight:600;fill:var(--warn-ink)}.pv-t.tbt{font-size:11.5px;font-weight:600;fill:var(--white)}.pv-t.tk{font-size:11px;font-weight:600;fill:var(--ink-3)}.pv-t.tq{font-family:var(--serif);font-size:17px;fill:var(--ink);letter-spacing:-.015em}.pv-t.tm{font-family:var(--mono);font-size:10px;fill:var(--ink-3)}.pv-t.tpin{font-size:10px;font-weight:700;fill:var(--white)}.pv-t.tsev{font-size:10px;font-weight:700;fill:var(--bad-ink)}.pv-t.tok{fill:var(--ok-ink);font-weight:600}.pv .pv-story{fill:var(--white);stroke:var(--line-2);stroke-width:1.5}.pv .pv-note{fill:var(--warn-wash);stroke:var(--warn-line)}.pv .pv-link{fill:none;stroke:var(--line-2);stroke-width:1.5;stroke-dasharray:3 4}.pv .pv-paper{fill:var(--pv-paper)}.pv .pv-pen{fill:none;stroke:var(--pv-pen);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pv .pv-pen.thin{stroke-width:1.4}.pv .pv-pen.faint{stroke:var(--ink-4)}.pv .pv-pen.accent{stroke:var(--pv-red)}.pv-hand{font-family:var(--serif);font-style:italic;font-size:15px;fill:var(--pv-pen)}.pv-hand.accent{fill:var(--pv-red)}.pv .pv-wf{fill:var(--surface);stroke:var(--ink-4);stroke-width:1.2;stroke-dasharray:4 3}.pv .pv-wf2{fill:var(--surface-2)}.pv .pv-wfb{fill:var(--surface-2);stroke:var(--ink-3);stroke-width:1.2}.pv .pv-chip{fill:var(--white);stroke:var(--line-2)}.pv .pv-chip.ok{fill:var(--ok-wash);stroke:var(--ok-line)}.pv .pv-cdot{fill:var(--ink-4)}.pv .pv-cdot.bad{fill:var(--bad-ink)}.pv .pv-cdot.ok{fill:var(--ok)}.pv .pv-sw{stroke:var(--white);stroke-width:2}.pv .pv-sw.s0{fill:var(--ink)}.pv .pv-sw.s1{fill:var(--accent-ink)}.pv .pv-sw.s2{fill:var(--pv-map)}.pv .pv-sw.s3{fill:var(--warn-wash);stroke:var(--warn-line)}.pv-aa{font-family:var(--serif);font-size:44px;fill:var(--ink);letter-spacing:-.04em}.pv .pv-ripple{fill:none;stroke:var(--accent);stroke-width:2}.pv .pv-ripple.r2{stroke-width:1.2;opacity:.5}.pv .pv-cursor{fill:var(--ink);stroke:var(--white);stroke-width:1.2;stroke-linejoin:round}.pv .pv-pin{fill:var(--bad-ink);stroke:var(--white);stroke-width:2}.pv .pv-find{fill:var(--white);stroke:var(--bad-line)}@media (prefers-reduced-motion:no-preference){.js .pvis.rv:not(.in) .pv-pen,.js .pvis.rv:not(.in) .pv-hand{opacity:0}.js .pvis.rv.in .pv-pen{stroke-dasharray:1;stroke-dashoffset:0;animation:pv-draw 1.4s var(--ease-out) both}.js .pvis.rv.in .pv-hand{animation:pv-fade .5s .9s var(--ease-out) both}.js .pvis.rv.in .pv-ripple{transform-box:fill-box;transform-origin:center;animation:pv-ripple 1.6s .3s var(--ease-out) 2 both}.js .pvis.rv.in .pv-pin,.js .pvis.rv.in .pv-find{transform-box:fill-box;transform-origin:center;animation:pv-pop .4s var(--ease-out) both}.js .pvis.rv.in .pv-find{animation-delay:.25s}.paused .pvis .pv-pen,.paused .pvis .pv-hand,.paused .pvis .pv-ripple,.paused .pvis .pv-pin,.paused .pvis .pv-find{animation:none;opacity:1}}@keyframes pv-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes pv-fade{from{opacity:0}to{opacity:1}}@keyframes pv-ripple{0%{transform:scale(.4);opacity:0}30%{opacity:1}100%{transform:scale(1.2);opacity:0}}@keyframes pv-pop{from{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}@media (max-width:900px){.psteps{grid-template-columns:repeat(2,minmax(0,1fr))}.split-head,.prule{grid-template-columns:minmax(0,1fr);gap:16px}.pstep{grid-template-columns:minmax(0,1fr);gap:28px;padding:44px 0}}@media (max-width:760px){.mgrid.c2,.personas,.minis{grid-template-columns:minmax(0,1fr)}.minis{gap:20px}.psteps{grid-template-columns:minmax(0,1fr)}.pdl{grid-template-columns:minmax(0,1fr)}.mframe .shot.peek{max-height:420px}.pai-box li{grid-template-columns:minmax(0,1fr)}.pai-box li .link{grid-column:1;grid-row:auto;min-height:44px}}.stack .scard.sc-fx{transform:translateY(calc((1 - var(--in,1)) * 56px)) scale(calc(.94 + var(--in,1) * .06 - var(--out,0) * .04));opacity:calc(.35 + var(--in,1) * .65 - var(--out,0) * .3);transform-origin:50% 0;will-change:transform,opacity}.stack .scard.sc-fx .plate-in{transform:translateY(calc((1 - var(--in,1)) * 40px))}.stack .scard.sc-fx .plate .spot{opacity:calc(var(--in,1) * 1.6 - .6)}.paused .stack .scard.sc-fx,.paused .stack .scard.sc-fx .plate-in{transform:none;opacity:1}@media (min-width:1041px) and (min-height:701px){.stack .scard.sc-deck{position:sticky;top:calc(var(--nav-h) + 12px + var(--k,0) * 14px);transform:scale(calc(1 - var(--cover,0) * .05));transform-origin:50% 0;will-change:transform}.stack .scard.sc-deck::after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--bg);opacity:calc(var(--cover,0) * .6);pointer-events:none;z-index:2}.stack .scard.sc-deck:not(:last-child){box-shadow:var(--shadow-soft),0 -1px 0 var(--line)}.paused .stack .scard.sc-deck{transform:none}}.pdemo{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:24px;align-items:stretch}.pd-tabs{display:flex;flex-direction:column;gap:6px}.pd-tab{position:relative;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:center;text-align:left;padding:12px 14px;min-height:56px;border-radius:var(--r);background:transparent;overflow:hidden;transition:background-color .2s var(--ease-out)}.pd-tab .n{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--ink-2);font-size:13px;font-weight:500;font-variant-numeric:tabular-nums;transition:background-color .2s var(--ease-out),color .2s var(--ease-out)}.pd-tab .tl{display:flex;flex-direction:column;min-width:0}.pd-tab b{font-weight:500;font-size:15px;color:var(--ink-2)}.pd-tab small{font-size:12.5px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-tab .bar{position:absolute;left:14px;right:14px;bottom:6px;height:2px;border-radius:2px;background:var(--accent-ink);transform-origin:0 50%;transform:scaleX(var(--p,0));opacity:.6}.pd-tab[aria-selected="true"]{background:var(--bg);box-shadow:var(--shadow-soft)}.pd-tab[aria-selected="true"] .n{background:var(--ink);color:var(--bg)}.pd-tab[aria-selected="true"] b{color:var(--ink)}.pdemo.held .pd-tab .bar{display:none}@media (hover:hover) and (pointer:fine){.pd-tab:not([aria-selected="true"]):hover{background:var(--surface-2)}}.pd-stage{display:grid;background:var(--bg);border-radius:var(--r-lg);box-shadow:var(--shadow-soft);overflow:hidden}.pd-panel{grid-area:1/1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:8px;align-items:center}.pd-panel[hidden]{display:none}.pd-pic{background:var(--surface);margin:8px;border-radius:var(--r);overflow:hidden}.pd-pic .pv{width:100%;height:auto}.pd-cap{padding:24px 28px 24px 16px;display:flex;flex-direction:column;gap:10px}.pd-cap p{font-size:15.5px;color:var(--ink-2)}.pd-cap .pd-ai{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--accent-ink);background:var(--accent-wash);border-radius:var(--r);padding:10px 12px}.pd-cap .pd-ai svg{width:15px;height:15px;flex:none;margin-top:3px}.pd-cap .pd-ai b{color:var(--accent-ink);font-weight:600}@media (prefers-reduced-motion:no-preference){.pdemo.live .pd-panel.on .pd-pic,.pdemo.live .pd-panel.on .pd-cap{animation:pd-in .45s var(--ease-out) both}.pdemo.live .pd-panel.on .pd-cap{animation-delay:.06s}}@keyframes pd-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.prail{justify-content:center}@media (max-width:900px){.pdemo{grid-template-columns:minmax(0,1fr)}.pd-tabs{flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;gap:6px;margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter) 4px;scrollbar-width:none}.pd-tabs::-webkit-scrollbar{display:none}.pd-tab{flex:none;scroll-snap-align:start;grid-template-columns:28px auto;padding:10px 14px 10px 10px;min-height:48px}.pd-tab .n{width:28px;height:28px}.pd-tab small{display:none}.pd-panel{grid-template-columns:minmax(0,1fr)}.pd-cap{padding:8px 20px 22px}}.lab-sec{padding-top:24px}.kgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.kgroup{background:var(--bg);border-radius:var(--r-lg);padding:26px 28px 28px;display:flex;flex-direction:column;gap:10px}.kg-top{display:flex;align-items:center;gap:12px}.kg-top .ic{width:40px;height:40px;border-radius:var(--r);background:var(--accent-wash);color:var(--accent-ink);display:grid;place-items:center;flex:none}.kg-top .ic svg{width:19px;height:19px}.kgroup h3{font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.025em;color:var(--ink)}.kgroup p{font-size:15px;color:var(--ink-2);max-width:48ch}.kgroup ul{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.kgroup li{font-size:14px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:6px 13px;line-height:1.3}@media (max-width:760px){.kgrid{grid-template-columns:minmax(0,1fr)}.kgroup{padding:22px 20px 24px}}.svc{margin-top:64px}.svc ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px;margin-top:20px}.svc li{background:var(--surface);border-radius:var(--r);padding:18px 20px;display:flex;flex-direction:column;gap:6px}.svc b{font-weight:600;color:var(--ink);font-size:15px}.svc span{font-size:14.5px;color:var(--ink-2)}@media (max-width:760px){.svc{margin-top:48px}}@media (pointer:coarse){.footer ul a{display:inline-flex;align-items:center;min-height:44px}.footer .cols ul{gap:0}.toc a{min-height:44px;align-items:center;padding:0}.brand{padding:12px 0;margin:-12px 0}.contact .addr,.tlink{display:inline-flex;align-items:center;min-height:44px}.rail-in .studio{min-height:44px}}.toc-d{border-top:1px solid var(--line);padding-top:12px}.toc-d>summary{list-style:none;font-size:13px;color:var(--ink-3);margin-bottom:8px;pointer-events:none}.toc-d>summary::-webkit-details-marker{display:none}.toc-d>summary svg{display:none}@media (min-width:961px) and (max-width:1100px){.case-grid{grid-template-columns:200px minmax(0,1fr);gap:40px}}@media (max-width:960px){.case-grid{grid-template-columns:minmax(0,1fr);gap:28px}.case-rail{position:static}.rail-in{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;max-height:none;overflow:visible;padding:0;margin:0}.rail-in .mrow,.rail-in .mrow:first-child{border-top:1px solid var(--line);padding:10px 0}.rail-in .mrow b{font-size:13.5px}.rail-in .studio{grid-column:1/-1;border-bottom:0;padding:0 0 10px}.toc-d{grid-column:1/-1;margin-top:12px;padding:0;border:1px solid var(--line-2);border-radius:var(--r)}.toc-d>summary{pointer-events:auto;cursor:pointer;margin:0;min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;font-size:14px;font-weight:500;color:var(--ink)}.toc-d>summary svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .2s var(--ease-out)}.toc-d[open]>summary svg{transform:rotate(180deg)}.toc-d .toc{padding:0 16px 10px}.rail-in .btn{grid-column:1/-1;justify-self:start;margin-top:16px}}@media (min-width:901px) and (max-width:1040px){.hero .container{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px}.scard .body{padding:32px 28px}.stack .scard{min-height:380px}.scard .media{min-height:360px;padding:36px 28px}.nav-links{gap:22px}.nav-right{gap:12px}}.px-box.px-box>img.paint{top:-40px;bottom:-40px;height:calc(100% + 80px)}.stack .scard.sc-fx,.stack .scard.sc-deck{transition:none}@media (hover:none){.mframe .shot.fit .zoom{opacity:1}}@media (hover:none),(max-width:760px){.shot .zoom{padding:8px;gap:0;font-size:0}.shot .zoom svg{width:15px;height:15px}}.mframe.mhero{aspect-ratio:auto;max-height:none}.mframe.mhero img,.mframe.mhero video{height:auto;max-height:min(70svh,720px);width:auto;max-width:100%;margin:0 auto;object-fit:contain}.fframe{container-type:size}.fframe .shot.fit,.fframe .slides{width:min(100cqw,calc(100cqh * 1.6));max-width:none;max-height:none;margin:0 auto}.fframe .shot.fit img{width:100%;height:auto}@media (min-width:761px) and (max-width:1040px){.case-hero.feature{height:clamp(320px,min(58vw,62svh),560px)}}@media (pointer:coarse){.nav-links a{display:inline-flex;align-items:center;min-height:44px}}@media (max-width:760px){.lightbox.is-img .lb-panel{width:100%}.lightbox.is-img .lb-body{overflow:auto;-webkit-overflow-scrolling:touch;max-height:calc(100svh - 72px);overscroll-behavior:contain}.lightbox .lb-img{max-width:none;max-height:none;width:max(180vw,900px);height:auto}}@media (min-width:961px) and (max-height:900px){.case-rail{position:static}.rail-in{max-height:none;overflow:visible}}.tline{grid-template-columns:minmax(0,1fr)}.film-shot.portrait{margin-inline:auto}@media (max-width:900px){.pd-tabs{scroll-padding-inline:var(--gutter)}}.js .pd-panel:not(.on){visibility:hidden;pointer-events:none}html:not(.js) .pd-tabs{display:none}html:not(.js) .pd-stage{gap:16px;background:none;box-shadow:none}html:not(.js) .pd-panel{grid-area:auto;background:var(--bg);border-radius:var(--r-lg)}@media (max-width:900px){.pvis .pv,.pd-pic .pv{max-height:min(420px,52svh);width:100%}}@media (max-width:900px){.cta .media{border-radius:var(--r)}}@media (max-width:760px){.cta .body{padding:32px 24px 28px}}@media (max-width:560px){.jobs li{grid-template-columns:minmax(0,1fr);padding:20px}}@media (max-width:760px){.footer .cols>nav:first-of-type{grid-column:1/-1}}.cd-row .txt{white-space:normal;text-overflow:clip;line-height:1.3}.cd-ctl{border-color:transparent;background:none;color:var(--ink-2);min-width:0}@container (max-width:900px){.cd-tab small{white-space:nowrap}}@media (max-width:760px){.byline{display:grid;grid-template-columns:40px minmax(0,1fr);gap:2px 14px;align-items:center}.byline img{grid-row:1 / span 2}.byline .dot-sep{grid-column:2;border-left:0;padding-left:0}}.work-sec{padding-bottom:0}.js .pagehead .rv,.js .case-head .rv{opacity:1;transform:none;transition:none}.form select{appearance:none;-webkit-appearance:none;padding-right:40px;background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2356524a' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/14px}.form select:has(option[value=""]:checked){color:var(--ink-3)}@media (pointer:coarse){.note-rail .toc a{min-height:44px}}@media (max-width:900px) and (min-width:561px){.relnote a{display:grid;grid-template-columns:160px minmax(0,1fr);gap:20px;align-items:center}.relnote img{aspect-ratio:16/10;object-fit:cover}}.mgrid.c2>.mfig:not(.wide) .mframe{aspect-ratio:3/2;display:grid;place-items:center}.mgrid.c2>.mfig:not(.wide) .mframe img,.mgrid.c2>.mfig:not(.wide) .mframe video{width:100%;height:100%;object-fit:contain}.mgrid.c2>.mfig:not(.wide) .mframe .shot.fit{width:100%;height:100%}.mgrid.c2>.mfig:not(.wide) .mframe .shot.peek{max-height:none}.pagehead .h1 .m,.sec-head .h2 .m,.case-head .h1 .m{display:block;text-wrap:balance}@media (min-width:561px) and (max-width:900px){.pstrip{grid-template-columns:repeat(3,minmax(0,1fr))}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stats .stat b{font-size:clamp(34px,5vw,52px)}.ncards{grid-template-columns:minmax(0,1fr)}.ncard{display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);column-gap:24px;align-content:center}.ncard .cover{grid-row:1 / span 3}}@media (max-width:900px){.wcard{grid-template-columns:minmax(0,1fr)}.wcard .media{min-height:0;aspect-ratio:2/1}.wcard .media.cover{aspect-ratio:16/9}.wcard .body{padding:24px 28px 28px}}.nav-links a{position:relative}.nav-links a[aria-current="page"]{color:var(--ink);font-weight:500}.nav-links a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;border-radius:2px;background:var(--ink)}@media (pointer:coarse){.nav-links a[aria-current="page"]::after{bottom:6px}}:root{--bg-float:rgba(251,250,246,.68);--float-ring:rgba(28,26,21,.08);--float-drop:rgba(28,26,21,.28)}:root{--fl-top:10px;--fl-bot:10px;--fl-shift:4px}.nav-bg::before{bottom:-8px;clip-path:inset(0 0 8px 0 round 0)}.nav.floating .nav-bg::before{clip-path:inset(var(--fl-top) var(--fl-x) var(--fl-bot) var(--fl-x) round 16px);background:var(--bg-float);-webkit-backdrop-filter:saturate(1.6) blur(18px);backdrop-filter:saturate(1.6) blur(18px)}.nav .container,.nav-right{transition:transform .45s var(--ease-out),padding .45s var(--ease-out)}.nav.floating .container{transform:translateY(var(--fl-shift))}.nav.floating .nav-right{transform:translateX(8px)}.nav.floating .nav-bg{filter:none}.nav.floating .nav-bg::after{top:var(--fl-top);bottom:calc(var(--fl-bot) - 8px);left:var(--fl-x);right:var(--fl-x);height:auto;background:transparent;border-radius:16px;opacity:1;box-shadow:0 0 0 1px var(--float-ring),0 16px 32px -14px var(--float-drop)}@media (max-width:900px){:root{--fl-x:12px}.nav.floating .nav-right{transform:none}.nav.floating .container{padding-left:calc(var(--fl-x) + 14px);padding-right:calc(var(--fl-x) + 8px)}.nav.floating .burger{margin-right:0}}@media (max-width:760px){:root{--fl-bot:2px;--fl-shift:8px}}.nav:has(.burger[aria-expanded="true"]) .nav-bg::before{clip-path:inset(0 0 8px 0 round 0)}.nav:has(.burger[aria-expanded="true"]) .nav-bg::after{top:auto;bottom:0;left:0;right:0;height:1px;background:var(--line);border-radius:0;box-shadow:none}.nav:has(.burger[aria-expanded="true"]) .container{transform:none;padding-left:var(--gutter);padding-right:var(--gutter)}.nav:has(.burger[aria-expanded="true"]) .burger{margin-right:-10px}@media (prefers-reduced-transparency:reduce){:root{--bg-float:rgba(251,250,246,.96)}}@media (prefers-reduced-motion:reduce){.nav .container,.nav-right{transition:none}}:root{--on-night-hover:rgba(255,255,255,.1)}.vid .vid-still{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.vid-face::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--scrim) 0%,transparent 34%,transparent 66%,var(--scrim) 100%);pointer-events:none}.vid .vk,.vid .play,.vid .tc{z-index:1}.vid .vk{font-size:20px}.pso{display:flex;gap:6px;margin:6px 0 0 -10px}.pso a{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r-sm);color:var(--night-ink);opacity:.86;transition:opacity .2s var(--ease-out),background-color .2s var(--ease-out)}.pso svg{width:18px;height:18px;fill:currentColor}.pso a:focus-visible{outline:2px solid var(--night-ink);outline-offset:2px}@media (hover:hover) and (pointer:fine){.pso a:hover{opacity:1;background:var(--on-night-hover)}}@media (max-width:760px){.vid .vk{display:none}}.nav:has(.burger[aria-expanded="true"]) .nav-bg::before{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}html:has(.burger[aria-expanded="true"]) .scroll-progress{display:none}@media (max-width:900px) and (max-height:760px){.mm-links a{min-height:56px;padding:8px 4px}.mm-links .mm-t{font-size:25px}.mm-cta{margin-top:16px}.mm-foot{padding-top:16px}}.sec:not(.band) .pcard{background:var(--surface)}.pause-ic{position:relative}.pause-ic::after{content:"Pause animations";position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-4px);white-space:nowrap;background:var(--ink);color:var(--bg);font-family:var(--sans);font-size:13px;font-weight:500;line-height:1;padding:8px 10px;border-radius:var(--r-sm);box-shadow:var(--shadow-float);opacity:0;pointer-events:none;transition:opacity .15s var(--ease-out),transform .15s var(--ease-out);z-index:2}.pause-ic[aria-pressed="true"]::after{content:"Play animations"}.pause-ic:focus-visible::after{opacity:1;transform:translate(-50%,0)}@media (hover:hover) and (pointer:fine){.pause-ic:hover::after{opacity:1;transform:translate(-50%,0);transition-delay:.35s}}@media (prefers-reduced-motion:reduce){.pause-ic::after{transform:translate(-50%,0);transition:opacity .15s}}:root{color-scheme:light}:root{--lt-bg:#fbfaf6;--lt-surface:#f4f2ec;--lt-surface-2:#ece9e0;--lt-surface-3:#fdfcf9;--lt-white:#fffdf9;--lt-line:#e7e3d9;--lt-line-2:#dcd7ca;--lt-ink:#1c1a15;--lt-ink-2:#56524a;--lt-ink-3:#6b665c;--lt-ink-4:#b3ada1;--lt-accent-ink:#0052cc;--lt-accent-wash:#e9f0ff;--lt-accent-line:#c7d8fb;--lt-bad-ink:#b42318;--lt-bad-wash:#fdecea;--lt-bad-line:#f6c9c3;--lt-ok:#2f9e5f;--lt-ok-ink:#1f7a47;--lt-ok-wash:#eef8f2;--lt-ok-line:#cfe9da;--lt-warn-ink:#9a5f05;--lt-warn-wash:#fdf5e4;--lt-warn-line:#f3dfb8;--lt-warn-spin:#e6c98a;--lt-glass:rgba(255,253,249,.92);--lt-shadow-card:0 1px 2px rgba(28,26,21,.04),0 12px 32px -12px rgba(28,26,21,.18);--lt-shadow-soft:0 1px 2px rgba(28,26,21,.06)}:root[data-theme="dark"]{--bg:#141310;--bg-glass:rgba(20,19,16,.86);--bg-float:rgba(24,23,19,.7);--surface:#1b1a16;--surface-2:#25231e;--surface-3:#191814;--white:#201f1a;--line:#2e2b25;--line-2:#3b3830;--ink:#ede9df;--ink-hover:#d6d1c5;--ink-2:#c2bcaf;--ink-3:#a59f92;--ink-4:#5f5a50;--focus:#ede9df;--focus-on-dark:#fffdf9;--accent-ink:#7fb2ff;--accent-wash:#15223b;--accent-line:#2b4473;--accent-glow:rgba(0,153,255,.38);--bad-ink:#ff8f80;--bad-wash:#2b1714;--bad-line:#5c2c25;--ok:#3fbf78;--ok-ink:#68d69b;--ok-wash:#112419;--ok-line:#204a33;--warn-ink:#f2b864;--warn-wash:#2a2112;--warn-line:#5a4422;--warn-spin:#8a6a2a;--film-bg:#1b1e25;--glass:rgba(32,31,26,.92);--field-edge:#77726a;--nav-float:drop-shadow(0 0 .5px rgba(0,0,0,.6)) drop-shadow(0 10px 24px rgba(0,0,0,.4));--shadow-card:0 1px 2px rgba(0,0,0,.3),0 12px 32px -12px rgba(0,0,0,.6);--shadow-float:0 2px 4px rgba(0,0,0,.3),0 24px 48px -16px rgba(0,0,0,.7);--shadow-soft:0 1px 2px rgba(0,0,0,.35);--shadow-nav:0 1px 0 #2e2b25,0 8px 24px -16px rgba(0,0,0,.6);--float-ring:rgba(255,255,255,.09);--float-drop:rgba(0,0,0,.55);--peek-fade:rgba(0,0,0,.45);color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#141310;--bg-glass:rgba(20,19,16,.86);--bg-float:rgba(24,23,19,.7);--surface:#1b1a16;--surface-2:#25231e;--surface-3:#191814;--white:#201f1a;--line:#2e2b25;--line-2:#3b3830;--ink:#ede9df;--ink-hover:#d6d1c5;--ink-2:#c2bcaf;--ink-3:#a59f92;--ink-4:#5f5a50;--focus:#ede9df;--focus-on-dark:#fffdf9;--accent-ink:#7fb2ff;--accent-wash:#15223b;--accent-line:#2b4473;--accent-glow:rgba(0,153,255,.38);--bad-ink:#ff8f80;--bad-wash:#2b1714;--bad-line:#5c2c25;--ok:#3fbf78;--ok-ink:#68d69b;--ok-wash:#112419;--ok-line:#204a33;--warn-ink:#f2b864;--warn-wash:#2a2112;--warn-line:#5a4422;--warn-spin:#8a6a2a;--film-bg:#1b1e25;--glass:rgba(32,31,26,.92);--field-edge:#77726a;--nav-float:drop-shadow(0 0 .5px rgba(0,0,0,.6)) drop-shadow(0 10px 24px rgba(0,0,0,.4));--shadow-card:0 1px 2px rgba(0,0,0,.3),0 12px 32px -12px rgba(0,0,0,.6);--shadow-float:0 2px 4px rgba(0,0,0,.3),0 24px 48px -16px rgba(0,0,0,.7);--shadow-soft:0 1px 2px rgba(0,0,0,.35);--shadow-nav:0 1px 0 #2e2b25,0 8px 24px -16px rgba(0,0,0,.6);--float-ring:rgba(255,255,255,.09);--float-drop:rgba(0,0,0,.55);--peek-fade:rgba(0,0,0,.45);color-scheme:dark}}:root[data-theme="dark"] :is(.pv){--bg:var(--lt-bg);--surface:var(--lt-surface);--surface-2:var(--lt-surface-2);--surface-3:var(--lt-surface-3);--white:var(--lt-white);--line:var(--lt-line);--line-2:var(--lt-line-2);--ink:var(--lt-ink);--ink-2:var(--lt-ink-2);--ink-3:var(--lt-ink-3);--ink-4:var(--lt-ink-4);--accent-ink:var(--lt-accent-ink);--accent-wash:var(--lt-accent-wash);--accent-line:var(--lt-accent-line);--bad-ink:var(--lt-bad-ink);--bad-wash:var(--lt-bad-wash);--bad-line:var(--lt-bad-line);--ok:var(--lt-ok);--ok-ink:var(--lt-ok-ink);--ok-wash:var(--lt-ok-wash);--ok-line:var(--lt-ok-line);--warn-ink:var(--lt-warn-ink);--warn-wash:var(--lt-warn-wash);--warn-line:var(--lt-warn-line);--warn-spin:var(--lt-warn-spin);--glass:var(--lt-glass);--shadow-card:var(--lt-shadow-card);--shadow-soft:var(--lt-shadow-soft);color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) :is(.pv){--bg:var(--lt-bg);--surface:var(--lt-surface);--surface-2:var(--lt-surface-2);--surface-3:var(--lt-surface-3);--white:var(--lt-white);--line:var(--lt-line);--line-2:var(--lt-line-2);--ink:var(--lt-ink);--ink-2:var(--lt-ink-2);--ink-3:var(--lt-ink-3);--ink-4:var(--lt-ink-4);--accent-ink:var(--lt-accent-ink);--accent-wash:var(--lt-accent-wash);--accent-line:var(--lt-accent-line);--bad-ink:var(--lt-bad-ink);--bad-wash:var(--lt-bad-wash);--bad-line:var(--lt-bad-line);--ok:var(--lt-ok);--ok-ink:var(--lt-ok-ink);--ok-wash:var(--lt-ok-wash);--ok-line:var(--lt-ok-line);--warn-ink:var(--lt-warn-ink);--warn-wash:var(--lt-warn-wash);--warn-line:var(--lt-warn-line);--warn-spin:var(--lt-warn-spin);--glass:var(--lt-glass);--shadow-card:var(--lt-shadow-card);--shadow-soft:var(--lt-shadow-soft);color-scheme:light}}@media (prefers-reduced-transparency:reduce){:root[data-theme="dark"]{--bg-float:rgba(24,23,19,.97)}}.theme-ic{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:var(--r-sm);color:var(--ink-2);position:relative;transition:border-color .2s var(--ease-out),transform .16s var(--ease-out)}.theme-ic:active,.mm-theme:active{transform:scale(.95)}.theme svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.theme .i-moon,.theme .i-sun{transform-box:fill-box;transform-origin:center;transition:opacity .25s var(--ease-out),transform .35s var(--ease-out)}.js .theme .i-sun{opacity:0;transform:rotate(-60deg) scale(.6)}.js[data-theme="dark"] .theme .i-moon{opacity:0;transform:rotate(60deg) scale(.6)}.js[data-theme="dark"] .theme .i-sun{opacity:1;transform:none}html:not(.js) .theme{display:none}.theme-ic::after{content:attr(data-tip);position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%,-4px);white-space:nowrap;background:var(--ink);color:var(--bg);font-family:var(--sans);font-size:13px;font-weight:500;line-height:1;padding:8px 10px;border-radius:var(--r-sm);box-shadow:var(--shadow-float);opacity:0;pointer-events:none;transition:opacity .15s var(--ease-out),transform .15s var(--ease-out);z-index:2}.theme-ic:focus-visible::after{opacity:1;transform:translate(-50%,0)}@media (hover:hover) and (pointer:fine){.theme-ic:hover{border-color:var(--ink-4)}.theme-ic:hover::after{opacity:1;transform:translate(-50%,0);transition-delay:.35s}}.mm-btns{display:flex;gap:8px}.mm-theme{height:44px;display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2);border:1px solid var(--line-2);border-radius:99px;padding:0 16px 0 12px;transition:transform .16s var(--ease-out)}.mm-theme svg{width:16px;height:16px}@media (max-width:900px){.nav-right .theme-ic{display:none}}@media (prefers-reduced-motion:reduce){.theme .i-moon,.theme .i-sun{transition:none}.theme-ic::after{transform:translate(-50%,0);transition:opacity .15s}}.mm-foot{flex-wrap:wrap;row-gap:12px}.mm-btns{width:100%}.mm-btns .theme,.mm-btns .pause{flex:1;justify-content:center}.wcard .media.mesh{background:linear-gradient(135deg,var(--deep),var(--deep-2));min-height:300px}.wcard .media.mesh .meshbg{position:absolute;inset:0;z-index:0}.wcard .media.mesh .meshbg canvas.shader{position:absolute;inset:0;width:100%;height:100%;display:block}.wshot{position:absolute;inset:clamp(20px,7%,40px);z-index:1;display:flex;align-items:center;justify-content:center}.wshot img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;border-radius:10px;box-shadow:var(--ring-shot);transition:transform .45s var(--ease-out)}@media (hover:hover) and (pointer:fine){.wcard:hover .wshot img{transform:translateY(-4px)}}@media (max-width:1040px){.wcard .media.mesh{min-height:0;aspect-ratio:16/10}}@media (prefers-reduced-motion:reduce){.wshot img{transition:none}}@media (min-width:1041px){.wcard{grid-template-columns:minmax(0,.56fr) minmax(0,.44fr)}.wcard .media.mesh,.wcard .media.cover{min-height:340px}}.nav-right{gap:8px}.nav-right .txt{padding:0 12px;height:44px;display:inline-flex;align-items:center}.theme-ic{border-color:transparent;color:var(--ink-3);border-radius:99px}@media (hover:hover) and (pointer:fine){.theme-ic:hover{border-color:transparent;background:var(--surface-2);color:var(--ink)}}@media (min-width:901px) and (min-height:640px){.first{min-height:calc(100svh - var(--nav-h));display:flex;flex-direction:column}.first .hero{flex:1;display:flex;align-items:center;padding-block:clamp(40px,7svh,104px)}.first .hero .container{width:100%}.first .pstrip-sec{padding:0 0 clamp(28px,5svh,56px)}.pagehead{min-height:calc(60svh - var(--nav-h));display:flex;align-items:center;padding-block:clamp(72px,11svh,144px) clamp(40px,6svh,88px)}.pagehead>.container{width:100%}.case-head{padding-top:clamp(72px,10svh,128px)}}@media (min-width:1600px) and (min-height:820px){.hero{--h1-lh:64px}.hero .h1{font-size:60px}.hero .lead{font-size:18px;max-width:46ch}}