.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}
header.top{position:sticky;top:0;z-index:20;background:rgba(16,17,22,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(244,245,247,.1)}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}
header.top img{height:34px;width:auto;display:block}
nav ul{list-style:none;display:flex;gap:1.1rem;margin:0;padding:0;flex-wrap:wrap}nav a{color:var(--sc-ink);text-decoration:none;font-weight:500;font-size:1rem;padding:.5rem 0}nav a[aria-current]{color:var(--sc-accent)}
.btn{display:inline-block;background:var(--sc-accent);color:var(--sc-accent-ink);font-weight:700;padding:.85rem 1.4rem;border-radius:10px;text-decoration:none;margin:.3rem .5rem .3rem 0}
.btn.ghost{background:transparent;color:var(--sc-ink);border:1px solid rgba(244,245,247,.4)}
.hero{position:relative;min-height:92vh;display:grid;align-items:end;overflow:hidden}
.hero .plane{position:absolute;inset:-8% 0;}
.hero .plane img{width:100%;height:100%;object-fit:cover;display:block}
.hero .grid-plane{--sc-depth:-140px;background-image:linear-gradient(rgba(0,212,232,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,232,.14) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to top,#000 10%,transparent 70%)}
.hero .photo{--sc-depth:120px}
.hero .copy{position:relative;padding:12vh 0 9vh;max-width:780px}
.hero .copy .scrim{background:linear-gradient(90deg,rgba(10,12,18,.92),rgba(10,12,18,.7) 70%,transparent);padding:2rem 2rem 2rem clamp(1.25rem,4vw,2.5rem);border-radius:0 14px 14px 0}
.hero h1{font-size:clamp(2.6rem,7vw,5.6rem);font-weight:800}
.lede{font-size:clamp(1.15rem,2vw,1.4rem);color:var(--sc-ink);max-width:40ch}
section.act{padding:clamp(4rem,10vw,8rem) 0}
.act.light{background:#f3f4f6;color:#1c1d22}.act.light a{color:#0057c2}.act.light .soft{color:#4a505c}
.soft{color:var(--sc-ink-soft)}
h2{font-size:clamp(2rem,4.6vw,3.4rem);font-weight:800}
.pillars{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem 0 1.5rem}
.pillar{flex:0 0 min(82vw,340px);scroll-snap-align:start;background:var(--sc-surface);border:1px solid rgba(244,245,247,.1);border-radius:14px;padding:1.6rem}
.pillar h3{font-size:1.4rem;color:var(--sc-accent)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.split img{width:100%;border-radius:14px;display:block}
@media(max-width:780px){.split{grid-template-columns:1fr}nav ul{gap:.8rem}nav a{font-size:.95rem}header.top .wrap{flex-wrap:wrap;padding-top:.5rem;padding-bottom:.5rem}}
/* signature: the handoff */
.handoff{position:relative;height:320vh;background:var(--sc-canvas)}
.handoff .stage{position:sticky;top:68px;height:calc(100vh - 68px);display:grid;grid-template-rows:auto 1fr;padding:3vh 0}
.handoff .lanes{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:1rem}
.lane{border:1px solid rgba(244,245,247,.18);border-radius:16px;padding:1.2rem;text-align:center;min-height:150px;display:grid;place-items:center;background:var(--sc-surface)}
.lane strong{font-family:var(--sc-font-display);font-size:1.15rem}
.track{position:relative;height:6px;background:rgba(244,245,247,.12);border-radius:6px}
.track .fill{position:absolute;inset:0;transform-origin:left;transform:scaleX(var(--k,0));background:var(--sc-accent);border-radius:6px}
.packet{position:absolute;top:50%;left:0;width:54px;height:54px;margin:-27px 0 0 -27px;transform:translateX(calc(var(--x,0) * 1px)) rotate(calc(var(--k,0) * 360deg));}
.steps{list-style:none;padding:0;margin:2rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.steps li{background:var(--sc-surface);border-radius:14px;padding:1.3rem;border:1px solid rgba(244,245,247,.1);transition:border-color .4s,transform .4s var(--sc-ease)}
.steps li.on{border-color:var(--sc-accent);transform:translateY(-6px)}
.steps h3{font-size:1.25rem}
.lane.you.got{border-color:var(--sc-accent)}
@media(max-width:780px){.handoff{height:auto}.handoff .stage{position:static;height:auto}.steps{grid-template-columns:1fr}.handoff .lanes{grid-template-columns:1fr 1fr 1fr}.lane{min-height:100px;padding:.7rem}.lane strong{font-size:.95rem}}
.no-js-note{}
@media(prefers-reduced-motion:reduce){.handoff{height:auto}.handoff .stage{position:static;height:auto}.packet{display:none}.track .fill{transform:none}.steps li{transition:none}}
.clients{display:flex;gap:2.5rem;align-items:center;flex-wrap:wrap}.clients img{height:56px;width:auto}
.close{min-height:70vh;display:grid;align-items:center;background:radial-gradient(ellipse at 70% 30%,rgba(0,114,255,.35),transparent 60%),var(--sc-canvas)}
.close h2{font-size:clamp(2.4rem,6vw,4.6rem)}
footer{border-top:1px solid rgba(244,245,247,.1);padding:2.5rem 0;color:var(--sc-ink-soft);font-size:1rem}footer a{color:var(--sc-ink)}
.price{font-family:var(--sc-font-display);font-size:2.6rem;font-weight:800;color:var(--sc-accent)}
.card{background:var(--sc-surface);border-radius:14px;padding:1.6rem;border:1px solid rgba(244,245,247,.1)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}
ul.ticks{padding-left:1.1rem}ul.ticks li{margin:.3rem 0}
.page-hero{padding:clamp(5rem,12vw,9rem) 0 3rem}.page-hero h1{font-size:clamp(2.6rem,6.5vw,5rem);font-weight:800;max-width:16ch}
dl.contact dt{font-weight:700;margin-top:1rem}dl.contact dd{margin:0;font-size:1.3rem}
