body:has(.v2),html:has(.v2){background:#0a0a0a;color:#fafaf9}body:has(.v2){transition:none}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped,html.v2-menu-open{overflow:hidden}:is(.v2,.v2-bar){--bg:#0a0a0a;--fg:#fafaf9;--accent:#e74011;--t1:#d6d5d3;--t2:#c9c8c5;--t3:#b5b4b1;--t4:#9c9b99;--t5:#8a8987;--t6:#6e6d6b;--s1:#111;--s2:#0f0f0f;--s3:#0d0d0d;--s4:#101010;--line:hsla(60,9%,98%,.12);--line-soft:hsla(60,9%,98%,.09);--gutter:clamp(20px,4vw,56px);color:var(--fg);font-family:var(--font-body),"Plus Jakarta Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.v2{position:relative;min-height:100vh;overflow-x:clip;background:var(--bg)}:is(.v2,.v2-bar) *,:is(.v2,.v2-bar) :after,:is(.v2,.v2-bar) :before{box-sizing:border-box}.v2 ::selection{background:var(--accent);color:var(--bg)}:is(.v2,.v2-bar) a{color:var(--fg);text-decoration:none}:is(.v2,.v2-bar) a:hover{color:#fff}:is(.v2,.v2-bar) img{display:block;max-width:100%}.v2 button,.v2 input,.v2 textarea{font:inherit;color:inherit}.v2 blockquote,.v2 dd,.v2 dl,.v2 figure,.v2 h1,.v2 h2,.v2 h3,.v2 p{margin:0}:is(.v2,.v2-bar) :focus-visible{outline:2px solid var(--accent);outline-offset:3px}.v2 .f-display{font-family:var(--font-display),"Clash Display",sans-serif;font-weight:500}.v2 .f-mono{font-family:var(--font-mono),"JetBrains Mono",monospace}:is(.v2,.v2-bar) .kicker{font-family:var(--font-mono),"JetBrains Mono",monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--t4)}.v2 .kicker-sm{font-family:var(--font-mono),"JetBrains Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--t4)}.v2 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:is(.v2,.v2-bar) .wrap{max-width:1440px;margin:0 auto;padding:0 var(--gutter)}.v2 .mask{overflow:hidden;padding-bottom:.16em;margin-bottom:-.12em}.v2 .mask,.v2 .mask>span{display:block}:is(.v2,.v2-bar) .blip{display:inline-block;flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent)}.v2 .sq{display:inline-block;flex:none;width:9px;height:9px;background:var(--accent)}.v2 .bar{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid var(--line)}.v2 .bar>span:first-child{display:flex;align-items:center}.v2 .glyph{display:inline-grid;grid-template-columns:repeat(3,3px);gap:3px;margin-right:12px}.v2 .glyph i{position:relative;display:block;width:3px;height:3px;background:hsla(60,9%,98%,.35)}.v2 .glyph i:after{content:"";position:absolute;inset:0;background:var(--accent);opacity:0}.v2 .glyph.is-blinking i:after{animation:glyph-blink 3.26s var(--blink-at,0s) infinite}@keyframes glyph-blink{0%{opacity:0;animation-timing-function:cubic-bezier(.25,.46,.45,.94)}6.13%{opacity:1}8.59%{opacity:1;animation-timing-function:cubic-bezier(.25,.46,.45,.94)}30.06%{opacity:0}to{opacity:0}}.v2 .h-section{font-size:clamp(52px,8.4vw,136px);line-height:.9;letter-spacing:-.045em}.v2 .sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin:clamp(28px,4vw,56px) 0 clamp(40px,5vw,72px)}.v2 .lede-sm{max-width:440px;font-size:17px;line-height:1.55;color:var(--t3);text-wrap:pretty}:is(.v2,.v2-bar) .btn-solid{display:inline-flex;align-items:center;gap:12px;height:56px;padding:0 26px;border-radius:999px;background:var(--fg);color:var(--bg);font-size:16px;font-weight:600;white-space:nowrap;transition:background .3s}:is(.v2,.v2-bar) .btn-solid:hover{background:#fff;color:var(--bg)}:is(.v2,.v2-bar) .btn-solid .blip{width:8px;height:8px}.v2 .btn-line{display:inline-flex;align-items:center;gap:10px;height:56px;padding:0 22px;border-radius:999px;border:1px solid hsla(60,9%,98%,.2);font-size:16px;font-weight:500;transition:border-color .3s,background .3s}.v2 .btn-line:hover{border-color:hsla(60,9%,98%,.5);background:hsla(60,9%,98%,.04)}:is(.v2,.v2-bar) .btn-sm{height:42px;padding:0 18px;gap:10px;font-size:14px}:is(.v2,.v2-bar) .btn-sm .blip{width:7px;height:7px}.v2 .u-link{background-image:linear-gradient(var(--fg),var(--fg));background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .4s;padding-bottom:2px}.v2 .u-link:hover{background-size:100% 1px}:is(.v2,.v2-bar) .topnav{position:fixed;top:0;left:0;right:0;z-index:60}:is(.v2,.v2-bar) .nav-bg{position:absolute;inset:0;background:hsla(0,0%,4%,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid hsla(60,9%,98%,.08);opacity:0}:is(.v2,.v2-bar) .topnav.is-solid .nav-bg{opacity:1}:is(.v2,.v2-bar) .nav-inner{position:relative;max-width:1440px;margin:0 auto;padding:0 var(--gutter);height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}:is(.v2,.v2-bar) .nav-logo{display:flex;align-items:center}:is(.v2,.v2-bar) .nav-logo img{height:25px;width:auto}.v2 .nav-links{display:flex;gap:2px;align-items:center;font-size:14px;font-weight:500}.v2 .nav-links a{padding:8px 14px;border-radius:999px;color:var(--t2);white-space:nowrap;transition:color .3s,background .3s}.v2 .nav-links a:hover{color:var(--fg);background:hsla(60,9%,98%,.06)}:is(.v2,.v2-bar) .nav-right{display:flex;align-items:center;gap:14px}:is(.v2,.v2-bar) .lang{display:flex;gap:8px;font-family:var(--font-mono),monospace;font-size:12px;letter-spacing:.06em}:is(.v2,.v2-bar) .lang [aria-current]{color:var(--fg)}:is(.v2,.v2-bar) .lang a{color:var(--t4)}:is(.v2,.v2-bar) .lang a:hover{color:var(--fg)}:is(.v2,.v2-bar) .lang .sep{color:var(--t6)}.v2 .burger{display:none;width:42px;height:42px;border-radius:999px;border:1px solid hsla(60,9%,98%,.18);background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;padding:0}.v2 .burger span{display:block;width:16px;height:1.5px;background:var(--fg);transition:transform .3s}.v2 .burger[aria-expanded=true] span:first-child{transform:translateY(3.25px) rotate(45deg)}.v2 .burger[aria-expanded=true] span:last-child{transform:translateY(-3.25px) rotate(-45deg)}:is(.v2,.v2-bar) .nav-sub a.nav-text{color:var(--t2);font-size:14px;font-weight:500;white-space:nowrap}:is(.v2,.v2-bar) .nav-sub a.nav-text:hover{color:var(--fg)}@media (max-width:1079px){.v2 .nav-home .lang,.v2 .nav-home .nav-links{display:none}.v2 .burger{display:flex}}@media (max-width:640px){:is(.v2,.v2-bar) .nav-sub .nav-text{display:none}:is(.v2,.v2-bar) .nav-sub .lang{display:none}}.v2-bar{position:relative;padding-top:76px;background:var(--bg)}.v2-bar .topnav{z-index:90}.v2-bar .nav-bg{opacity:1;background:hsla(0,0%,4%,.92)}.v2-bar .top-row{padding-top:18px;padding-bottom:18px}.v2-bar .top-row .lang{display:none}@media (max-width:640px){.v2-bar .top-row .lang{display:flex}}.v2 .menu{position:fixed;inset:0;z-index:55;background:var(--bg);visibility:hidden;opacity:0;transition:opacity .35s,visibility 0s linear .35s;display:flex;flex-direction:column;padding:100px 24px 40px;overflow-y:auto;overscroll-behavior:contain}.v2 .menu.is-open{visibility:visible;opacity:1;transition:opacity .35s}.v2 .menu nav{margin-top:auto;display:flex;flex-direction:column;gap:6px}.v2 .menu nav>div{overflow:hidden}.v2 .menu nav a{display:block;font-size:48px;letter-spacing:-.03em;line-height:1.1}.v2 .menu-foot{margin-top:40px;display:flex;justify-content:space-between;gap:16px}.v2 .menu-foot a{color:var(--t4)}@media (max-height:560px){.v2 .menu{padding-top:84px;padding-bottom:24px}.v2 .menu nav a{font-size:34px}.v2 .menu-foot{margin-top:24px}}.v2 .hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:132px 0 clamp(40px,6vh,72px);overflow:hidden}.v2 .dots-canvas,.v2 .hero-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.v2 .hero-shade{position:absolute;inset:0;pointer-events:none;background:radial-gradient(90% 70% at 20% 90%,hsla(0,0%,4%,.92) 0,hsla(0,0%,4%,.4) 55%,hsla(0,0%,4%,0) 100%)}.v2 .hero .wrap{position:relative;width:100%}.v2 .hero-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:clamp(28px,4vh,48px)}.v2 .hero-top .status{display:flex;align-items:center;gap:10px}.v2 .hero-top .status .blip{box-shadow:0 0 0 4px rgba(231,64,17,.18)}.v2 .hero h1{font-size:clamp(40px,10.2vw,168px);line-height:.92;letter-spacing:-.045em}.v2 .hero .rot-line{color:var(--t6);white-space:nowrap}.v2 .hero .rot-mask{overflow:hidden;vertical-align:bottom;padding-bottom:.16em;margin-bottom:-.16em}.v2 .hero .rot-mask,.v2 .hero .rot-mask>span{display:inline-block}.v2 .hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));grid-gap:clamp(36px,5vw,96px);gap:clamp(36px,5vw,96px);margin-top:clamp(36px,5vh,64px);align-items:end}.v2 .hero-left{display:flex;flex-direction:column;gap:32px;max-width:560px}.v2 .hero-lede{font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:var(--t1);text-wrap:pretty}.v2 .hero-lede strong{color:var(--fg);font-weight:500}.v2 .hero-ctas{gap:12px}.v2 .hero-ctas,.v2 .hero-recog{display:flex;flex-wrap:wrap;align-items:center}.v2 .hero-recog{gap:14px 26px;padding-top:6px}.v2 .hero-recog img.is-mono{filter:brightness(0) invert(1);opacity:.85;width:auto}.v2 .hero-recog .efma{height:30px;width:auto;border-radius:4px;filter:grayscale(1) contrast(1.05);opacity:.9}.v2 .hero-recog .cert{display:flex;align-items:center;gap:8px}.v2 .hero-recog .cert img{height:34px;width:auto}.v2 .hero-recog .cert span{color:var(--t1)}.v2 .proofs{display:flex;flex-direction:column}.v2 .proofs .kicker{padding-bottom:14px}.v2 .proof{display:grid;grid-template-columns:136px 1fr auto;grid-gap:18px;gap:18px;align-items:baseline;padding:16px 0;border-top:1px solid hsla(60,9%,98%,.1)}.v2 .proof:last-child{border-bottom:1px solid hsla(60,9%,98%,.1)}.v2 .proof-value{font-size:26px;letter-spacing:-.02em;white-space:nowrap}.v2 .proof-text{font-size:15px;line-height:1.45;color:var(--t3)}.v2 .proof-text b{color:var(--fg);font-weight:500}.v2 .proof-arrow{color:var(--t4);transition:transform .4s,color .4s}.v2 .proof:hover .proof-arrow{transform:translateX(6px);color:var(--fg)}@media (max-width:480px){.v2 .proof{grid-template-columns:96px 1fr auto;gap:14px}.v2 .proof-value{font-size:21px}}.v2 .clients{padding:clamp(56px,8vw,112px) 0 0}.v2 .clients-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:36px}.v2 .clients-head h2{max-width:760px;font-size:clamp(26px,2.6vw,40px);line-height:1.1;letter-spacing:-.02em;text-wrap:balance}.v2 .wall{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(50%,190px),1fr));background:var(--bg);border:1px solid var(--line-soft);border-radius:12px;overflow:hidden}.v2 .wall-spot{position:absolute;left:0;top:0;width:520px;height:520px;margin:-260px 0 0 -260px;border-radius:50%;background:radial-gradient(circle,hsla(60,9%,98%,.09) 0,hsla(60,9%,98%,0) 60%);opacity:0;pointer-events:none;z-index:2}.v2 .wall-cell{position:relative;overflow:hidden;background:var(--bg);box-shadow:inset -1px -1px 0 var(--line-soft);height:120px;display:flex;align-items:center;justify-content:center;color:var(--fg)}.v2 .wall-cell img{width:calc(var(--lw) * var(--logo-scale, 1));max-width:72%;height:auto;transition:opacity .4s}@media (max-width:640px){.v2 .wall{--logo-scale:.8}}.v2 .wall-cell .t-invert{filter:brightness(0) invert(1);opacity:.62}.v2 .wall-cell .t-gray{filter:grayscale(1) contrast(1.1);opacity:.62}.v2 .wall-sq{top:12px;width:5px;height:5px;background:var(--accent)}.v2 .wall-cap,.v2 .wall-sq{position:absolute;left:12px;opacity:0}.v2 .wall-cap{right:12px;bottom:14px;text-align:center;font-family:var(--font-mono),monospace;font-size:10.5px;line-height:1.35;letter-spacing:.08em;text-transform:uppercase;color:var(--t3);text-wrap:balance}.v2 .wall-fill{display:none;background:var(--bg);box-shadow:inset -1px -1px 0 var(--line-soft);height:120px}@media (hover:none){.v2 .wall-cap{opacity:1}.v2 .wall-cell img{transform:translateY(-10px)}.v2 .wall-hint{display:none}}.v2 .projects{padding:clamp(96px,12vw,176px) 0 0}.v2 .stack{display:flex;flex-direction:column;gap:clamp(20px,3vw,36px)}.v2 .stack-card,.v2 .stack-inner{position:relative}.v2 .stack-inner{display:flex;flex-wrap:wrap-reverse;background:var(--s1);border:1px solid var(--line-soft);border-radius:16px;overflow:hidden;color:var(--fg);min-height:min(660px,calc(100vh - 150px));transform-origin:50% 0}.v2 .stack-text{flex:1 1 400px;min-width:0;padding:clamp(28px,3.6vw,56px);display:flex;flex-direction:column;justify-content:space-between;gap:48px}.v2 .stack-logo{height:24px;width:auto;max-width:160px;margin-bottom:clamp(28px,3.4vw,48px);filter:brightness(0) invert(1);opacity:.92}.v2 .stack-text h3{font-size:clamp(40px,4.6vw,76px);line-height:.95;letter-spacing:-.035em;text-wrap:balance}.v2 .stack-text p{margin-top:24px;max-width:40ch;font-size:clamp(17px,1.3vw,19px);line-height:1.5;color:var(--t2);text-wrap:pretty}.v2 .stack-date{margin-bottom:clamp(20px,2.4vw,32px);color:var(--t4)}.v2 .tech{--tech-h:22px;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:0;padding:0;list-style:none}.v2 .tech li{position:relative;display:flex;color:var(--t2);transition:color .25s}.v2 .tech svg{display:block;height:var(--tech-h);width:calc(var(--tech-h) * var(--ar, 1))}.v2 .tech li:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);z-index:2;padding:5px 9px;border:1px solid var(--line);border-radius:6px;background:#161616;font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.04em;line-height:1.3;color:var(--t1);white-space:nowrap;opacity:0;transform:translate(-50%,4px);transition:opacity .2s,transform .2s;pointer-events:none}.v2 .tech li:hover{color:var(--fg)}.v2 .tech li:hover:after{opacity:1;transform:translate(-50%)}.v2 .tech-sm{--tech-h:17px;gap:10px 16px}.v2 .card-cta{display:flex;align-items:center;gap:12px;padding-top:22px;border-top:1px solid var(--line-soft);font-size:15px;font-weight:500;color:var(--fg)}.v2 .card-arrow{color:var(--t4);display:inline-block}.v2 .stack-media{flex:1.35 1 460px;min-width:0;background:var(--s3);border-left:1px solid hsla(60,9%,98%,.06);padding:clamp(20px,2.6vw,36px);display:flex;flex-direction:column;justify-content:center;gap:14px}.v2 .shot-img,.v2 .stack-media{position:relative;overflow:hidden}.v2 .shot-img{aspect-ratio:16/10;background:var(--s4)}.v2 .shot-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left top}.v2 .phones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:clamp(10px,1.6vw,22px);gap:clamp(10px,1.6vw,22px);align-items:center;max-width:560px;margin:0 auto;width:100%}.v2 .phone{position:relative;aspect-ratio:720/1561;border-radius:clamp(14px,1.6vw,22px);overflow:hidden;border:1px solid hsla(60,9%,98%,.14);background:#141414;box-shadow:0 24px 60px rgba(0,0,0,.45)}.v2 .phone img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v2 .phones .phone:nth-child(2){transform:translateY(-6%)}.v2 .flow{position:relative;width:100%;max-width:520px;margin:0 auto;display:flex;flex-direction:column}.v2 .flow-title{margin-bottom:24px}.v2 .flow-step{display:grid;grid-template-columns:44px minmax(0,1fr);grid-gap:18px;gap:18px}.v2 .flow-rail{flex-direction:column}.v2 .flow-num,.v2 .flow-rail{display:flex;align-items:center}.v2 .flow-num{flex:none;width:44px;height:44px;border-radius:10px;border:1px solid hsla(60,9%,98%,.2);background:var(--s3);justify-content:center;font-family:var(--font-mono),monospace;font-size:12px;color:var(--t1)}.v2 .flow-line{flex:1 1;width:1px;min-height:22px;background:hsla(60,9%,98%,.16)}.v2 .flow-body{padding:6px 0 26px}.v2 .flow-label{display:flex;align-items:center;gap:8px}.v2 .flow-label .sq{width:7px;height:7px}.v2 .flow-body p{margin-top:8px;font-size:16px;line-height:1.5;color:var(--t1);text-wrap:pretty}.v2 .flow-note{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border:1px dashed hsla(60,9%,98%,.2);border-radius:10px;background:var(--s3);font-size:13px;line-height:1.5;color:var(--t3)}.v2 .flow-note:before{content:"";flex:none;width:7px;height:7px;margin-top:6px;border:1px solid var(--t4)}.v2 .panel-dots{mask-image:radial-gradient(78% 78% at 50% 50%,#000 32%,transparent 100%);-webkit-mask-image:radial-gradient(78% 78% at 50% 50%,#000 32%,transparent 100%)}.v2 .device-stage{position:relative;display:flex;justify-content:center;align-items:center;width:100%}.v2 .device-stage.is-laptop{padding:3% 7% 7%}.v2 .device-stage.is-phones{padding:2% 3% 6%}.v2 .device-tilt{display:flex;justify-content:center;width:100%}.v2 .device-tilt.is-angled{transform:perspective(1600px) rotateX(8deg) rotateY(-10deg)}.v2 .lap{position:relative;width:100%;max-width:640px;animation:device-float 6s ease-in-out infinite alternate}.v2 .lap:after{content:"";position:absolute;left:6%;right:6%;bottom:-34px;height:40px;z-index:-1;background:radial-gradient(50% 50% at 50% 50%,rgba(0,0,0,.75),transparent);filter:blur(8px)}.v2 .lap-lid{position:relative;padding:2.2% 2.2% 2.8%;border-radius:16px 16px 5px 5px;background:linear-gradient(160deg,#1e1e1e,#111);border:1px solid hsla(60,9%,98%,.16);box-shadow:0 30px 80px rgba(0,0,0,.55)}.v2 .lap-cam{position:absolute;top:1%;left:50%;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#333}.v2 .lap-scr{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:3px;background:#0b0b0b}.v2 .lap-base{position:relative;height:12px;margin:0 -6.5%;border-radius:2px 2px 14px 14px;background:linear-gradient(#343434,#1a1a1a 60%,#0e0e0e);border:1px solid hsla(60,9%,98%,.12);border-top-color:hsla(60,9%,98%,.24)}.v2 .lap-base:before{content:"";position:absolute;left:50%;top:-1px;width:15%;height:5px;transform:translateX(-50%);border-radius:0 0 7px 7px;background:#0c0c0c}.v2 .lap-scr img,.v2 .pdev-scr img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left top;opacity:0;transition:opacity 1s ease}.v2 .lap-scr img.is-on,.v2 .pdev-scr img.is-on{opacity:1}.v2 .lap-scr:after,.v2 .pdev-scr:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,0) 40%)}.v2 .pfan{display:flex;justify-content:center;align-items:center;width:100%;max-width:560px}.v2 .pdev{position:relative;flex:0 0 30%;padding:1.1%;border-radius:clamp(16px,2vw,28px);background:#151515;border:1px solid hsla(60,9%,98%,.16);box-shadow:0 30px 60px rgba(0,0,0,.5);animation:device-float 5s ease-in-out infinite alternate}.v2 .pdev:before{content:"";position:absolute;z-index:2;top:3%;left:50%;width:28%;height:2.2%;transform:translateX(-50%);border-radius:999px;background:#050505}.v2 .pdev-scr{position:relative;aspect-ratio:720/1561;overflow:hidden;border-radius:clamp(12px,1.6vw,22px);background:#0b0b0b}.v2 .pdev:first-child{transform:translateY(9%) rotate(-5deg);margin-right:-3%}.v2 .pdev:nth-child(2){z-index:1;transform:translateY(-3%);animation-delay:-1.7s}.v2 .pdev:nth-child(3){transform:translateY(9%) rotate(5deg);margin-left:-3%;animation-delay:-3.4s}@keyframes device-float{0%{translate:0 0}to{translate:0 -8px}}.v2 .device-stage.is-logo{padding:8%}.v2 .panel-logo{display:flex;justify-content:center;animation:device-float 6s ease-in-out infinite alternate}.v2 .panel-logo img{width:min(100%,320px);height:auto;filter:brightness(0) invert(1);opacity:.92}.v2 .panel-logo span{font-size:clamp(40px,4.4vw,72px);line-height:.95;letter-spacing:-.035em;color:var(--t2);text-align:center}.v2 .stack-shade{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none}.v2 .more-bar{margin-top:clamp(80px,10vw,140px)}.v2 .more-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));grid-gap:clamp(28px,3vw,44px) clamp(20px,2vw,28px);gap:clamp(28px,3vw,44px) clamp(20px,2vw,28px);margin-top:28px}.v2 .tile{display:flex;flex-direction:column;gap:16px;color:var(--fg)}.v2 .tile-media{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:var(--s1);border:1px solid hsla(60,9%,98%,.08)}.v2 .media-pattern{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-image:radial-gradient(hsla(60,9%,98%,.1) 1px,transparent 1.3px);background-size:18px 18px;background-position:9px 9px}.v2 .media-pattern>img{max-width:42%;filter:brightness(0) invert(1);opacity:.85}.v2 .media-pattern .media-name{font-size:clamp(22px,2vw,30px);letter-spacing:-.02em;color:var(--t6);padding:0 24px;text-align:center}.v2 .tile-win{position:absolute;left:8%;top:16%;width:100%;border:1px solid hsla(60,9%,98%,.16);border-right:0;border-radius:8px 0 0 0;overflow:hidden;background:#141414;box-shadow:0 24px 60px rgba(0,0,0,.6);transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.v2 .tile-win-bar{display:flex;align-items:center;gap:5px;height:18px;padding:0 9px;border-bottom:1px solid hsla(60,9%,98%,.08)}.v2 .tile-win-bar i{width:5px;height:5px;border-radius:50%;background:hsla(60,9%,98%,.2)}.v2 .tile-win img{display:block;width:100%;height:auto}.v2 [data-case-link]:hover .tile-win{transform:translate(-3%,-4%)}.v2 .tile-phone{align-items:flex-start}.v2 .tile-phone .phone{width:34%;margin-top:16%;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.v2 [data-case-link]:hover .tile-phone .phone{transform:translateY(-10%)}.v2 .tile-media:after{content:"";position:absolute;inset:auto 0 0 0;height:24%;pointer-events:none;background:linear-gradient(hsla(0,0%,4%,0),hsla(0,0%,4%,.5))}.v2 .chip{position:absolute;top:12px;left:12px;padding:5px 10px;border-radius:999px;background:hsla(0,0%,4%,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.04em;color:var(--t1)}.v2 .chip-right{left:auto;right:12px;display:flex;align-items:center;gap:7px}.v2 .chip-right .sq{width:6px;height:6px}.v2 .tile-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.v2 .tile-head h2,.v2 .tile-head h3{font-size:26px;line-height:1.05;letter-spacing:-.02em;text-wrap:balance}.v2 .tile-head span{flex:none;font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--t4)}.v2 .tile p{margin-top:-6px;font-size:15px;line-height:1.5;color:var(--t3);text-wrap:pretty}.v2 .tile .cat{font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--t6)}.v2 .all-link{margin-top:clamp(56px,7vw,96px);display:flex;justify-content:space-between;align-items:center;gap:24px;padding:clamp(24px,3vw,40px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--fg)}.v2 .all-text{font-size:clamp(32px,4.6vw,72px);letter-spacing:-.035em;line-height:1}.v2 .round-arrow{flex:none;width:clamp(52px,5vw,76px);height:clamp(52px,5vw,76px);border-radius:50%;border:1px solid hsla(60,9%,98%,.25);display:flex;align-items:center;justify-content:center;font-size:24px}.v2 .statement{position:relative;padding:clamp(120px,15vw,220px) 0;overflow:hidden}.v2 .statement .dots-canvas{mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent)}.v2 .statement .wrap{position:relative;display:flex;flex-wrap:wrap;gap:32px 64px}.v2 .statement-label{flex:0 0 200px;display:flex;align-items:flex-start;padding-top:10px}.v2 .statement-label .glyph{margin-top:3px}.v2 .statement p{flex:1 1 560px;font-size:clamp(28px,3.7vw,58px);line-height:1.1;letter-spacing:-.025em;text-wrap:pretty}.v2 .services{padding:0 0 clamp(96px,12vw,160px)}.v2 .services .sec-head{margin-bottom:clamp(32px,4vw,56px)}.v2 .services .lede-sm{max-width:400px}.v2 .service{display:flex;flex-wrap:wrap;gap:20px 40px;padding:clamp(28px,3vw,44px) 0;border-top:1px solid var(--line);align-items:flex-start}.v2 .service:last-of-type{border-bottom:1px solid var(--line)}.v2 .svc-num{flex:0 0 64px;padding-top:12px;font-family:var(--font-mono),monospace;font-size:12px;color:var(--t4)}.v2 .service h3{flex:1 1 300px;font-size:clamp(32px,3.5vw,54px);line-height:1;letter-spacing:-.03em}.v2 .service-body{flex:1.2 1 360px;display:flex;flex-direction:column;gap:20px}.v2 .service-body>p{font-size:17px;line-height:1.55;color:var(--t2);text-wrap:pretty}.v2 .service-proofs{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.v2 .service-proofs .kicker-sm{color:var(--t6);letter-spacing:.06em;margin-right:4px}.v2 .pill{padding:6px 12px;border-radius:999px;border:1px solid hsla(60,9%,98%,.16);font-size:13px;transition:background .3s,border-color .3s}.v2 .pill:hover{background:hsla(60,9%,98%,.08);border-color:hsla(60,9%,98%,.4)}.v2 .rates{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));grid-gap:1px;gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);border-radius:14px;overflow:hidden;margin-top:clamp(48px,6vw,80px)}.v2 .rate{background:var(--s2);padding:clamp(24px,2.6vw,36px);display:flex;flex-direction:column;gap:14px}.v2 .rate-value{font-size:clamp(40px,4vw,60px);letter-spacing:-.035em;line-height:1}.v2 .rate-value small{font-size:.4em;letter-spacing:0;color:var(--t4)}.v2 .rate p{font-size:15px;line-height:1.5;color:var(--t3)}.v2 .proc{padding:0 0 clamp(96px,12vw,160px)}.v2 .proc h2{margin:clamp(28px,4vw,56px) 0 clamp(40px,5vw,72px);font-size:clamp(44px,6vw,96px);line-height:.95;letter-spacing:-.04em}.v2 .muted-line{color:var(--t6)}.v2 .process-track{position:relative}.v2 .process-track:before{content:"";background:var(--line)}.v2 .process-line,.v2 .process-track:before{position:absolute;left:0;right:0;top:0;height:1px}.v2 .process-line{background:var(--fg);transform-origin:0 50%}.v2 .steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:40px 32px;gap:40px 32px}.v2 .step{padding-top:28px;position:relative}.v2 .step-dot{position:absolute;top:-4px;left:0;width:9px;height:9px;background:var(--bg);border:1px solid hsla(60,9%,98%,.5);transition:background-color .4s,border-color .4s}.v2 .step-dot.is-on{background:var(--accent);border-color:var(--accent)}.v2 .step h3{margin:18px 0 12px;font-size:28px;letter-spacing:-.02em}.v2 .step p{font-size:15px;line-height:1.55;color:var(--t3);text-wrap:pretty}@media (max-width:1023px){.v2 .process-track{max-width:600px;padding-left:36px}.v2 .process-line,.v2 .process-track:before{left:4px;right:auto;top:8px;width:1px;height:var(--rail,calc(100% - 8px))}.v2 .process-line{transform-origin:50% 0}.v2 .steps{grid-template-columns:minmax(0,1fr)}.v2 .step{padding-top:0}.v2 .step-dot{top:4px;left:-36px}}.v2 .recog-body{display:flex;flex-wrap:wrap;gap:clamp(36px,5vw,88px);margin-top:clamp(28px,4vw,48px);align-items:flex-start}.v2 .recog-tedx{flex:0 1 360px;display:flex;flex-direction:column;gap:18px}.v2 .recog-big{font-size:clamp(96px,11vw,180px);line-height:.9;letter-spacing:-.05em}.v2 .recog-tedx-row{display:flex;align-items:center;gap:14px}.v2 .recog-tedx-row img{height:26px;width:auto}.v2 .recog-tedx-row span{font-size:28px;letter-spacing:-.01em}.v2 .muted-p,.v2 .recog-tedx p{font-size:15px;line-height:1.55;color:var(--t3);text-wrap:pretty}.v2 .recog-list{flex:1 1 520px;display:flex;flex-direction:column}.v2 .recog-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;padding:22px 0;border-top:1px solid hsla(60,9%,98%,.1);color:var(--fg)}.v2 .recog-row:last-child{border-bottom:1px solid hsla(60,9%,98%,.1)}.v2 .recog-num{flex:0 0 40px;font-family:var(--font-mono),monospace;font-size:12px;color:var(--t4)}.v2 .recog-text{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:5px}.v2 .recog-text strong{font-family:var(--font-display),sans-serif;font-weight:500;font-size:clamp(20px,1.7vw,26px);letter-spacing:-.01em;line-height:1.15}.v2 .recog-text span{font-size:14px;color:var(--t4)}.v2 .recog-text .quote{display:block;line-height:1.45;min-height:1.45em}.v2 .recog-logos{flex:0 0 auto;min-width:150px;height:44px;display:flex;align-items:center;justify-content:flex-end;gap:14px}.v2 .recog-logos .invert{filter:brightness(0) invert(1);opacity:.9;width:auto}.v2 .recog-logos .gray{filter:grayscale(1) contrast(1.05);opacity:.9;width:auto}.v2 .recog-logos .screen{filter:grayscale(1) invert(1) contrast(1.1);mix-blend-mode:screen;opacity:.9;width:auto}.v2 .recog-logos .brief{font-weight:600;font-size:22px;letter-spacing:.08em}.v2 .recog-logos .vsep{width:1px;height:32px;background:hsla(60,9%,98%,.14)}@media (max-width:600px){.v2 .recog-logos{flex-basis:100%;min-width:0;justify-content:flex-start}}.v2 .rating{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.v2 .rating strong{font-size:28px;letter-spacing:-.02em;line-height:1}.v2 .rating span{display:flex;gap:3px}.v2 .rating i{display:block;width:7px;height:7px;background:var(--accent)}.v2 .about{padding:clamp(96px,12vw,176px) 0}.v2 .about-body{display:flex;flex-wrap:wrap;gap:clamp(40px,6vw,96px);margin-top:clamp(32px,4vw,56px);align-items:flex-start}.v2 .photo{flex:1 1 340px;max-width:520px;position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:14px;background:var(--bg);border:1px solid hsla(60,9%,98%,.08)}.v2 .photo img{object-fit:cover;filter:grayscale(1) contrast(1.05)}.v2 .photo canvas,.v2 .photo img{position:absolute;inset:0;width:100%;height:100%}.v2 .photo-hint{position:absolute;left:14px;bottom:14px;padding:6px 10px;border-radius:6px;background:var(--bg);border:1px solid hsla(60,9%,98%,.1);pointer-events:none;display:none}.v2 .photo.is-halftone .photo-hint{display:block}.v2 .about-text{flex:1.3 1 420px;display:flex;flex-direction:column;gap:36px}.v2 .about-text h2{font-size:clamp(40px,5vw,80px);line-height:.95;letter-spacing:-.04em}.v2 .about-bio{max-width:620px;font-size:clamp(17px,1.35vw,20px);line-height:1.55;color:var(--t1);text-wrap:pretty}.v2 .years{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px 28px;padding:28px 0 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.v2 .years-num{font-size:clamp(104px,12vw,188px);line-height:.78;letter-spacing:-.055em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.v2 .years-text{display:flex;flex-direction:column;gap:8px;padding-bottom:4px;max-width:360px}.v2 .years-text strong{display:flex;align-items:center;gap:10px;font-family:var(--font-display),sans-serif;font-weight:500;font-size:clamp(24px,2.2vw,34px);letter-spacing:-.02em;line-height:1.05}.v2 .years-text span{font-size:15px;line-height:1.5;color:var(--t3);text-wrap:pretty}.v2 .facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));grid-gap:0 32px;gap:0 32px}.v2 .facts>div{padding:16px 0;border-top:1px solid hsla(60,9%,98%,.1)}.v2 .facts dd{margin:6px 0 0;font-size:16px;display:flex;align-items:center;gap:10px}.v2 .facts dd img.sii{height:26px;width:auto}.v2 .facts dd img.badge{height:40px;width:auto}.v2 .speaking{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;padding:22px 24px;border:1px solid hsla(60,9%,98%,.1);border-radius:12px;background:var(--s2)}.v2 .speaking p{flex:1 1 280px;font-size:15px;line-height:1.5;color:var(--t3)}.v2 .speaking div{display:flex;gap:18px;font-size:14px;font-weight:500}.v2 .qa{padding:0 0 clamp(96px,12vw,176px)}.v2 .qa .wrap{display:flex;flex-wrap:wrap;gap:40px 64px}.v2 .qa-head{flex:1 1 320px}.v2 .qa-head h2{margin-top:28px;font-size:clamp(44px,5vw,80px);line-height:.95;letter-spacing:-.04em}.v2 .qa-list{flex:2 1 560px;border-bottom:1px solid var(--line)}.v2 .qa-item{border-top:1px solid var(--line)}.v2 .qa-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;background:none;border:0;cursor:pointer;text-align:left;font-family:var(--font-display),sans-serif;font-weight:500;font-size:clamp(20px,1.8vw,26px);letter-spacing:-.01em}.v2 .qa-icon{flex:none;font-family:var(--font-body),sans-serif;font-weight:300;font-size:28px;line-height:1;transition:transform .4s}.v2 .qa-item.is-open .qa-icon{transform:rotate(45deg)}.v2 .qa-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s cubic-bezier(.65,0,.35,1)}.v2 .qa-item.is-open .qa-panel{grid-template-rows:1fr}.v2 .qa-panel>div{overflow:hidden}.v2 .qa-panel p{padding:0 0 28px;max-width:640px;font-size:16px;line-height:1.6;color:var(--t3)}.v2 .qa-panel a{text-decoration:underline;text-underline-offset:3px}.v2 .contact{position:relative;padding:clamp(96px,12vw,176px) 0 clamp(64px,8vw,112px);border-top:1px solid hsla(60,9%,98%,.08);overflow:hidden}.v2 .contact .dots-canvas{mask-image:linear-gradient(180deg,#000,#000 40%,transparent 85%);-webkit-mask-image:linear-gradient(180deg,#000,#000 40%,transparent 85%)}.v2 .contact .wrap{position:relative}.v2 .contact h2{font-size:min(clamp(52px,11.2vw,200px),calc((100vw - 2 * var(--gutter)) / 7.5));line-height:.86;letter-spacing:-.055em}.v2 .contact-body{display:flex;flex-wrap:wrap;gap:48px clamp(40px,6vw,96px);margin-top:clamp(40px,5vw,72px);align-items:flex-start}.v2 .contact-left{flex:1 1 380px;display:flex;flex-direction:column;gap:28px}.v2 .contact-left>p{max-width:520px;font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:var(--t1);text-wrap:pretty}.v2 .contact-left .btn-solid{align-self:flex-start;height:60px;padding:0 28px;font-size:17px}.v2 .contact-mail{display:flex;flex-direction:column;gap:10px;font-size:16px}.v2 .contact-mail a{align-self:flex-start}.v2 .contact-mail span{font-size:14px;color:var(--t4)}.v2 .form{flex:1 1 420px;display:flex;flex-direction:column;gap:14px;padding:clamp(22px,2.6vw,36px);background:var(--s2);border:1px solid var(--line-soft);border-radius:16px}@media (max-width:400px){.v2 .form{margin-inline:-8px;padding-inline:14px}}.v2 .form .kicker-sm{margin-bottom:6px}.v2 .fields-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px}.v2 .field{width:100%;height:52px;padding:0 16px;background:var(--bg);border:1px solid hsla(60,9%,98%,.14);border-radius:10px;outline:none;font-size:16px;transition:border-color .3s}.v2 textarea.field{height:auto;padding:14px 16px;resize:vertical}.v2 .field:focus{border-color:var(--accent)}.v2 .field::placeholder{color:var(--t5)}.v2 .form-submit{height:54px;border-radius:999px;border:1px solid hsla(60,9%,98%,.25);background:transparent;font-size:15px;font-weight:600;cursor:pointer;transition:background .3s,color .3s}.v2 .form-submit:hover:not(:disabled){background:var(--fg);color:var(--bg)}.v2 .form-submit:disabled{opacity:.5;cursor:not-allowed}.v2 .form-done{min-height:54px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;background:#161616;font-size:15px;padding:0 20px;text-align:center}.v2 .form-error{font-size:14px;color:#f28b6b}.v2 .turnstile{min-height:65px}.v2 footer.v2-footer{padding:0 0 32px;border-top:0;overflow:hidden}.v2 .sf-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:32px;padding:40px 0;border-top:1px solid var(--line);font-size:14px}.v2 .sf-row>div{display:flex;flex-wrap:wrap;gap:12px 28px}.v2 .sf-row a{color:var(--t3)}.v2 .sf-row a:hover{color:var(--fg)}.v2 .sf-logo{width:100%;height:auto;opacity:.95}.v2 .sf-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 24px;margin-top:32px;font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--t6)}.v2 .sf-bottom>span{display:flex;flex-wrap:wrap;gap:20px}.v2 .sf-bottom a{color:var(--t6)}.v2 .sf-bottom a:hover{color:var(--fg)}.v2 .float{position:fixed;left:0;top:0;z-index:70;width:320px;border-radius:10px;overflow:hidden;pointer-events:none;opacity:0;background:var(--s1);border:1px solid hsla(60,9%,98%,.1);box-shadow:0 30px 80px rgba(0,0,0,.6)}.v2 .float>div{aspect-ratio:16/10;overflow:hidden}.v2 .float img{width:100%;height:100%;object-fit:cover;object-position:left top}.v2 .float-cap{display:none;padding:10px 12px;border-top:1px solid hsla(60,9%,98%,.08);font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2 .cursor{position:fixed;left:0;top:0;z-index:90;pointer-events:none;opacity:0}.v2 .cursor-dot{left:-5px;top:-5px;width:10px;height:10px;border-radius:50%;mix-blend-mode:difference}.v2 .cursor-dot,.v2 .cursor-pill{position:absolute;background:var(--fg)}.v2 .cursor-pill{left:0;top:0;transform:translate(-50%,-50%) scale(0);padding:12px 18px;border-radius:999px;color:var(--bg);font-size:13px;font-weight:600;white-space:nowrap}.v2 .intro{position:fixed;inset:0;z-index:100;background:var(--bg);display:none;flex-direction:column;align-items:center;justify-content:center;gap:28px;pointer-events:none}html.v2-intro .v2 .intro{display:flex}.v2 .intro img{width:72px;height:auto;opacity:0}.v2 .intro-meta{display:flex;flex-direction:column;align-items:center;gap:14px;opacity:0}.v2 .intro-meta>span:first-child{letter-spacing:.14em}.v2 .intro-track{position:relative;width:160px;height:1px;background:hsla(60,9%,98%,.14);overflow:hidden}.v2 .intro-bar{position:absolute;inset:0;background:var(--accent);transform-origin:0 50%;transform:scaleX(0)}html.v2-js:not(.v2-ready) .v2 [data-hero-fade],html.v2-js:not(.v2-ready) .v2 [data-in],html.v2-js:not(.v2-ready) .v2 [data-line]{visibility:hidden}.v2 .page-top{padding:clamp(130px,16vw,200px) 0 clamp(32px,4vw,56px)}.v2 .page-top .back{display:inline-flex;gap:10px;color:var(--t4)}.v2 .page-top .back:hover{color:var(--fg)}.v2 .page-top-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-top:28px}.v2 .page-top h1{font-size:clamp(60px,11vw,184px);line-height:.88;letter-spacing:-.05em}.v2 .page-top h1 sup{font-size:.22em;letter-spacing:0;vertical-align:top;margin-left:.2em;color:var(--t4)}.v2 .filters{position:-webkit-sticky;position:sticky;top:72px;z-index:40;background:hsla(0,0%,4%,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid hsla(60,9%,98%,.1);border-bottom:1px solid hsla(60,9%,98%,.1)}.v2 .filters .wrap{padding-top:14px;padding-bottom:14px;justify-content:space-between;gap:12px}.v2 .filters .group,.v2 .filters .wrap{display:flex;flex-wrap:wrap;align-items:center}.v2 .filters .group{gap:6px}.v2 .fchip{display:flex;align-items:center;gap:8px;height:38px;padding:0 14px;border-radius:999px;border:1px solid hsla(60,9%,98%,.16);background:transparent;color:var(--t2);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .3s,color .3s,border-color .3s}.v2 .fchip[aria-pressed=true]{background:var(--fg);color:var(--bg);border-color:var(--fg)}.v2 .fchip small{opacity:.6}.v2 .fchip small,.v2 .fchip.is-mono{font-family:var(--font-mono),monospace;font-size:11px}.v2 .fchip.is-mono{padding:0 12px;letter-spacing:.05em;text-transform:uppercase}.v2 .filters .vsep{width:1px;height:22px;background:hsla(60,9%,98%,.14);margin:0 6px}@media (max-width:640px){.v2 .filters .wrap{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:8px;padding-inline:0}.v2 .filters .group{min-width:0;flex-wrap:nowrap;overflow-x:auto;padding-inline:var(--gutter);scrollbar-width:none;overscroll-behavior-x:contain}.v2 .filters .group::-webkit-scrollbar{display:none}.v2 .filters .fchip,.v2 .filters .vsep{flex:none}}.v2 .index-list{padding:clamp(32px,4vw,56px) 0 clamp(96px,12vw,160px)}.v2 .index-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));grid-gap:clamp(36px,3.4vw,52px) clamp(20px,2vw,28px);gap:clamp(36px,3.4vw,52px) clamp(20px,2vw,28px)}.v2 .index-grid .tile-media{aspect-ratio:16/11}.v2 .index-grid .tile-head h2{font-size:clamp(26px,2.2vw,32px)}.v2 .tile .client{margin-top:-8px;font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--t4)}.v2 .rows{border-bottom:1px solid var(--line)}.v2 .row{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 32px;padding:24px 0;border-top:1px solid var(--line);color:var(--fg)}.v2 .row-num{flex:0 0 40px;font-family:var(--font-mono),monospace;font-size:12px;color:var(--t6)}.v2 .row-name{flex:1 1 280px;font-size:clamp(28px,3vw,44px);letter-spacing:-.025em;line-height:1.05;transition:transform .6s}.v2 .row:hover .row-name{transform:translateX(16px)}.v2 .row-client{flex:1 1 220px;font-size:14px;color:var(--t3)}.v2 .row-cat{flex:1 1 220px}.v2 .row-cat,.v2 .row-date{font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--t4)}.v2 .row-date{flex:0 0 150px;text-align:right}.v2 .empty{padding:80px 0;text-align:center;color:var(--t4)}.v2 .cta-box{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:clamp(32px,4vw,56px);border-radius:18px;background:var(--s1);border:1px solid var(--line-soft);color:var(--fg)}.v2 .cta-box>span:first-child{font-size:clamp(32px,4.4vw,68px);line-height:1;letter-spacing:-.035em;max-width:900px;text-wrap:balance}.v2 .cta-box:hover .btn-solid{background:#fff}.v2 .mini-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:48px 0 40px;font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.v2 .mini-foot,.v2 .mini-foot a{color:var(--t6)}.v2 .mini-foot a:hover{color:var(--fg)}.v2 .case-top{padding:clamp(120px,14vw,176px) 0 0}:is(.v2 .case-top,.v2-bar) .top-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center}:is(.v2 .case-top,.v2-bar) .top-row a{color:var(--t4)}:is(.v2 .case-top,.v2-bar) .top-row a:hover{color:var(--fg)}:is(.v2 .case-top,.v2-bar) .type{padding:6px 10px;border:1px solid hsla(60,9%,98%,.16);border-radius:999px;color:var(--t1)}.v2 .case-top h1{margin-top:clamp(28px,4vw,56px);font-size:clamp(52px,9vw,152px);line-height:.9;letter-spacing:-.05em;text-wrap:balance}.v2 .case-summary{margin-top:clamp(20px,2.6vw,36px);max-width:880px;font-size:clamp(22px,2.2vw,34px);line-height:1.2;letter-spacing:-.015em;color:var(--t1);text-wrap:pretty}.v2 .case-meta{margin-top:clamp(40px,5vw,72px);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(50%,180px),1fr));grid-gap:1px;gap:1px;background:hsla(60,9%,98%,.1);border-top:1px solid hsla(60,9%,98%,.1);border-bottom:1px solid hsla(60,9%,98%,.1)}.v2 .case-meta>div{background:var(--bg);padding:20px 20px 20px 0}.v2 .case-meta dd{margin:8px 0 0;font-family:var(--font-display),sans-serif;font-weight:500;font-size:22px;letter-spacing:-.01em}.v2 .case-hero{max-width:1440px;margin:clamp(32px,4vw,56px) auto 0;padding:0 var(--gutter)}.v2 .case-hero-media{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:18px;background:var(--s1);border:1px solid hsla(60,9%,98%,.08)}.v2 .case-hero-media>img{position:absolute;inset:-6% 0 0 0;width:100%;height:112%;object-fit:cover;object-position:left top}.v2 .case-hero-media .media-pattern>img{max-width:28%;opacity:.8}.v2 .case-hero-media .phones{position:absolute;inset:0;margin:auto;max-width:620px;padding:0 24px;align-content:center}@media (max-width:700px){.v2 .case-hero-media.is-phone{aspect-ratio:3/4}}.v2 .case-hero-media .flow{position:absolute;inset:0;justify-content:center;padding:24px}@media (max-width:700px){.v2 .case-hero-media.has-flow{aspect-ratio:auto}.v2 .case-hero-media.has-flow .flow{position:relative}}.v2 .case-body{max-width:1440px;margin:0 auto;padding:clamp(64px,8vw,120px) var(--gutter) 0;display:flex;flex-wrap:wrap;gap:32px clamp(40px,6vw,96px)}.v2 .case-body>.kicker{flex:0 1 260px;padding-top:8px}.v2 .case-col{flex:1 1 560px;max-width:820px;display:flex;flex-direction:column;gap:40px}.v2 .case-col>p{font-size:clamp(18px,1.5vw,21px);line-height:1.65;color:var(--t1);text-wrap:pretty}.v2 .case-ai{display:flex;gap:18px;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.v2 .big-p,.v2 .case-ai .sq{margin-top:10px}.v2 .big-p{font-family:var(--font-display),sans-serif;font-weight:500;font-size:clamp(22px,2vw,30px);line-height:1.2;letter-spacing:-.015em;text-wrap:pretty}.v2 .tech-lg{--tech-h:26px;gap:16px 26px}.v2 .case-actions{display:flex;flex-wrap:wrap;gap:10px}.v2 .case-actions .btn-line{height:52px;font-size:15px}.v2 .gallery-sec{max-width:1440px;margin:0 auto;padding:clamp(64px,8vw,120px) var(--gutter) 0}.v2 .gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));grid-gap:clamp(16px,2vw,28px);gap:clamp(16px,2vw,28px);margin-top:24px}.v2 .gallery.is-phone{grid-template-columns:repeat(auto-fill,minmax(min(46%,200px),1fr))}.v2 .gallery figure{display:flex;flex-direction:column;gap:12px}.v2 .gallery .shot-img{border-radius:14px;border:1px solid hsla(60,9%,98%,.08);background:var(--s1)}.v2 .gallery figcaption{font-size:14px;color:var(--t4)}.v2 .next{display:block;padding:clamp(32px,4vw,56px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--fg)}.v2 .next-row{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:18px}.v2 .next-name{font-size:clamp(44px,7vw,120px);line-height:.95;letter-spacing:-.045em;transition:transform .8s}.v2 .next:hover .next-name{transform:translateX(24px)}.v2 .next .round-arrow{width:clamp(56px,6vw,88px);height:clamp(56px,6vw,88px);font-size:26px;transition:background .5s,color .5s,transform .5s}.v2 .all-link:hover .round-arrow,.v2 .next:hover .round-arrow{background:var(--fg);color:var(--bg);transform:rotate(-45deg)}.v2 .case-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:clamp(48px,6vw,80px) 0}.v2 .case-cta p{max-width:620px;font-size:clamp(26px,2.8vw,42px);line-height:1.1;letter-spacing:-.02em;text-wrap:balance}.v2 .case-cta .btn-solid{height:58px}.v2 .case-end{padding:clamp(96px,12vw,160px) 0 0}@media (prefers-reduced-motion:reduce){.v2 .lap,.v2 .panel-logo,.v2 .pdev{animation:none}.v2 *,.v2 :after,.v2 :before{transition-duration:.01ms!important;animation-duration:.01ms!important}}.v2 .nav-bg{transition:opacity .35s}.v2 .nav-sub .nav-bg{opacity:1}.v2 section[id]{scroll-margin-top:60px}.v2 .menu nav a{transform:translateY(110%);transition:transform .9s cubic-bezier(.16,1,.3,1)}.v2 .menu.is-open nav a{transform:none}.v2 .card-arrow{transition:transform .5s cubic-bezier(.22,1,.36,1),color .5s}.v2 [data-case-link]:hover .card-arrow{transform:translateX(8px);color:var(--accent)}.v2 .service h3{transition:transform .7s cubic-bezier(.22,1,.36,1)}.v2 .service:hover h3{transform:translateX(18px)}.v2 .all-text{transition:transform .8s cubic-bezier(.22,1,.36,1)}.v2 .all-link:hover .all-text{transform:translateX(20px)}.v2 .round-arrow{transition:background .5s,color .5s,transform .5s}@media (hover:none){.v2 .all-link:hover .all-text,.v2 .service:hover h3{transform:none}}