:root{
  --ink:#0A0E1C; --ink-2:#0F1528; --ink-3:#151D36;
  --build:#6A93FF; --host:#33D1B8; --rank:#FFB23E;
  --bg:var(--ink); --fg:#E9EDF7; --mute:#97A2C0; --line:rgba(255,255,255,.11); --surface:#121A31;
  --c-build:#7FA2FF; --c-host:#3FDCC2; --c-rank:#FFB23E;
  --btn-bg:#fff; --btn-fg:#0A0E1C;
  --head:'Bricolage Grotesque',system-ui,sans-serif;
  --body:'Instrument Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
}
.light{
  --bg:#F4F5F9; --fg:#11162A; --mute:#566079; --line:#DADFEA; --surface:#fff;
  --c-build:#2B57D6; --c-host:#0A8472; --c-rank:#A85F00;
  --btn-bg:#0A0E1C; --btn-fg:#fff;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:#E9EDF7;font:400 1.0625rem/1.6 var(--body);-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--head);margin:0;font-weight:600;letter-spacing:-.02em;line-height:1.08}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--build);outline-offset:3px;border-radius:6px}
.wrap{width:min(1180px,100% - 48px);margin-inline:auto}
.sec{background:var(--bg);color:var(--fg);padding:clamp(72px,10vw,128px) 0}
.sec-head{max-width:720px;margin-bottom:clamp(40px,6vw,72px)}
.sec-head h2{font-size:clamp(2rem,4.4vw,3.4rem)}
.sec-head p{margin-top:18px;color:var(--mute);font-size:1.125rem;max-width:56ch}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:#000;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:8px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid transparent;background:var(--btn-bg);color:var(--btn-fg);font:600 1rem/1 var(--body);text-decoration:none;cursor:pointer;transition:transform .2s var(--ease),box-shadow .2s var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px -10px rgba(106,147,255,.55)}
.btn-ghost{background:transparent;color:var(--fg);border-color:var(--line)}
.btn-ghost:hover{box-shadow:none;border-color:var(--mute)}
.btn-sm{min-height:42px;padding:0 20px;font-size:.95rem}

/* header */
.hdr{position:fixed;inset:0 0 auto 0;z-index:50;background:rgba(10,14,28,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo svg{width:30px;height:26px}
.logo b{font:700 1.05rem/1 var(--head);letter-spacing:.06em;color:#fff}
.nav{display:flex;align-items:center;gap:34px}
.nav a.l{color:#C5CCE0;text-decoration:none;font-weight:500;font-size:.98rem;transition:color .15s}
.nav a.l:hover{color:#fff}
.burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:transparent;cursor:pointer;align-items:center;justify-content:center}
.burger span,.burger span::before,.burger span::after{display:block;width:18px;height:2px;background:#fff;border-radius:2px;position:relative;content:"";transition:transform .2s}
.burger span::before{position:absolute;top:-6px}
.burger span::after{position:absolute;top:6px}
.nav-open .burger span{background:transparent}
.nav-open .burger span::before{transform:translateY(6px) rotate(45deg)}
.nav-open .burger span::after{transform:translateY(-6px) rotate(-45deg)}

/* hero */
.hero{position:relative;padding:calc(72px + clamp(48px,8vw,96px)) 0 0;overflow:hidden;background:var(--ink)}
.hero::before{content:"";position:absolute;right:-10%;top:-8%;width:62%;height:90%;background:radial-gradient(closest-side,rgba(106,147,255,.22),transparent 70%);pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);align-items:center}
.hero h1{font-size:clamp(2.5rem,5.4vw,4.5rem);font-weight:700;letter-spacing:-.035em;line-height:1}
.hero-lead{margin-top:28px;font-size:1.2rem;color:#B9C2DB;max-width:50ch}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:38px}
.hero-note{margin-top:22px;color:var(--mute);font-size:.95rem}
.stats{position:relative;display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(56px,8vw,96px);border-top:1px solid var(--line)}
.stat{padding:28px 24px 34px 0}
.stat+.stat{padding-left:24px;border-left:1px solid var(--line)}
.stat b{display:block;font:700 clamp(1.5rem,2.6vw,2.1rem)/1.1 var(--head);letter-spacing:-.02em;color:#fff}
.stat span{display:block;margin-top:6px;color:var(--mute);font-size:.95rem}

/* hero stage (browser windows) */
.stage{position:relative;width:100%;aspect-ratio:1/1;max-width:560px;margin-left:auto}
.win{position:absolute;border-radius:14px;background:#0C1226;border:1px solid rgba(255,255,255,.14);box-shadow:0 40px 80px -30px rgba(0,0,0,.7);overflow:hidden;opacity:0;transform:translateY(26px);animation:rise .9s var(--ease) forwards}
.win .bar{display:flex;align-items:center;gap:6px;height:2.1em;padding:0 .9em;background:#141C36;border-bottom:1px solid rgba(255,255,255,.08);font-size:clamp(9px,1.5vw,12px);color:#8E99B8}
.win .bar i{width:.65em;height:.65em;border-radius:50%;background:#2A3558}
.win .bar em{font-style:normal;margin-left:.6em;white-space:nowrap}
.win .scr{position:relative;aspect-ratio:4/3;overflow:hidden}
.w-a{left:0;top:2%;width:68%;z-index:2;animation-delay:.1s}
.w-b{left:8%;top:46%;width:52%;z-index:3;animation-delay:.3s}
.w-c{right:0;top:38%;width:50%;z-index:4;animation-delay:.5s}
@keyframes rise{to{opacity:1;transform:none}}
.scr-a{background:linear-gradient(170deg,#1D5A46 0%,#0E2F2E 55%,#0A1A24 100%)}
.scr-a .sun{position:absolute;right:14%;top:16%;width:20%;aspect-ratio:1;border-radius:50%;background:#F7D38C;opacity:.9}
.scr-a .hill{position:absolute;left:-10%;right:-10%;bottom:-18%;height:52%;border-radius:50% 50% 0 0;background:#2F8A62}
.scr-a .hill.two{bottom:-30%;left:20%;background:#1F6B4C}
.scr-a .t1{position:absolute;left:8%;top:22%;width:44%;height:9%;border-radius:4px;background:rgba(255,255,255,.9)}
.scr-a .t2{position:absolute;left:8%;top:36%;width:30%;height:5%;border-radius:3px;background:rgba(255,255,255,.45)}
.scr-a .t3{position:absolute;left:8%;top:48%;width:20%;height:9%;border-radius:999px;background:#F7D38C}
.scr-b{background:#F2F3F7;display:grid;grid-template-columns:repeat(3,1fr);gap:6%;padding:8%;align-content:start}
.scr-b i{display:block;aspect-ratio:1;border-radius:6px}
.scr-b i:nth-child(1){background:#6A93FF}.scr-b i:nth-child(2){background:#1B2447}.scr-b i:nth-child(3){background:#FFB23E}
.scr-b i:nth-child(4){background:#33D1B8}.scr-b i:nth-child(5){background:#E5E8F2}.scr-b i:nth-child(6){background:#6A93FF}
.scr-b b{grid-column:1/-1;height:10px;border-radius:3px;background:#C9CEDF;width:60%}
.scr-c{background:#141A30;display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:5%;padding:7%}
.scr-c i{display:block;border-radius:6px}
.scr-c i:nth-child(1){grid-row:1/3;background:linear-gradient(160deg,#C98B5A,#6B3F2E)}
.scr-c i:nth-child(2){background:linear-gradient(160deg,#7C93B8,#2E3C5E)}
.scr-c i:nth-child(3){background:linear-gradient(160deg,#B7A98E,#5C5340)}
.chips{position:absolute;right:0;top:2%;z-index:5;display:grid;gap:8px}
.chip{display:flex;align-items:center;gap:9px;padding:9px 14px;border-radius:999px;background:rgba(12,18,38,.88);border:1px solid rgba(255,255,255,.14);font-size:.88rem;font-weight:500;color:#E9EDF7;opacity:0;transform:translateY(10px);animation:rise .7s var(--ease) forwards}
.chip i{width:9px;height:9px;border-radius:50%}
.chip:nth-child(1){animation-delay:.75s}.chip:nth-child(1) i{background:var(--build)}
.chip:nth-child(2){animation-delay:.9s}.chip:nth-child(2) i{background:var(--host)}
.chip:nth-child(3){animation-delay:1.05s}.chip:nth-child(3) i{background:var(--rank)}

/* services: lifecycle track */
.track{display:grid;grid-template-columns:repeat(3,1fr);position:relative}
.lane{position:relative;padding:44px 36px 8px 0}
.lane+.lane{padding-left:36px;border-left:1px solid var(--line)}
.lane::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--lc)}
.lane+.lane::before{left:0}
.lane-ico{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--lc) 16%,transparent);color:var(--lc);margin-bottom:22px}
.lane-ico svg{width:24px;height:24px}
.lane h3{font-size:1.55rem}
.lane p.kicker{font:600 .95rem/1 var(--body);color:var(--lc);margin:0 0 14px;letter-spacing:0}
.lane p.more{margin-top:26px;display:flex;flex-wrap:wrap;gap:8px 18px}
.lane p.more a{color:var(--lc);font-weight:600;text-decoration:underline;text-underline-offset:4px}
.lane p{margin-top:12px;color:var(--mute)}
.lane ul{margin-top:24px;display:grid;gap:11px}
.lane li,.tick li{position:relative;padding-left:26px}
.lane li::before,.tick li::before{content:"";position:absolute;left:0;top:.5em;width:15px;height:15px;background:var(--lc,var(--c-host));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.8' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.8' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.lane-b{--lc:var(--c-build)}.lane-h{--lc:var(--c-host)}.lane-r{--lc:var(--c-rank)}

/* approach */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,88px);align-items:center}
.split h2{font-size:clamp(2rem,4.2vw,3.2rem)}
.split .copy p{margin-top:22px;color:var(--mute);max-width:52ch}
.tick{margin-top:30px;display:grid;gap:12px;--lc:var(--c-host)}
.tick li{font-weight:500}
.chart-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:clamp(18px,3vw,32px);box-shadow:0 30px 60px -40px rgba(17,22,42,.35)}
.chart-card figcaption{margin-top:14px;color:var(--mute);font-size:.9rem}
.chart-card svg{width:100%;height:auto}

/* proof */
.proof{padding:clamp(56px,8vw,96px) 0;background:var(--ink-2)}
.proof-in{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(28px,5vw,72px);align-items:center}
.proof h2{font-size:clamp(1.7rem,3vw,2.3rem)}
.proof p{margin-top:14px;color:var(--mute)}
.pstats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:20px;background:var(--ink-3)}
.pstat{padding:28px 22px}
.pstat+.pstat{border-left:1px solid var(--line)}
.pstat b{display:block;font:700 clamp(1.8rem,3.2vw,2.6rem)/1 var(--head);letter-spacing:-.03em;color:#fff}
.pstat span{display:block;margin-top:8px;color:var(--mute);font-size:.92rem}

/* packages */
.tabs{display:inline-flex;gap:6px;padding:6px;border-radius:999px;background:#E6E9F2;margin-bottom:40px;flex-wrap:wrap}
.tab{border:0;background:transparent;padding:12px 22px;border-radius:999px;font-weight:600;font-size:.98rem;color:#4A5470;cursor:pointer;transition:background .2s,color .2s}
.tab[aria-selected="true"]{background:#0A0E1C;color:#fff}
.js .panel[hidden]{display:none}
.plans{display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}
.plans.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
.plan{position:relative;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:30px 26px 28px}
.plan.pop{border-color:#0A0E1C;box-shadow:0 0 0 1px #0A0E1C,0 30px 50px -34px rgba(10,14,28,.5)}
.badge{position:absolute;top:-13px;left:26px;background:#0A0E1C;color:#fff;font-size:.8rem;font-weight:600;padding:5px 12px;border-radius:999px}
.plan h3{font-size:1.25rem}
.plan .sub{margin-top:8px;color:var(--mute);font-size:.97rem;min-height:3.1em}
.price{margin:22px 0 4px;font:700 2.6rem/1 var(--head);letter-spacing:-.03em}
.price small{font:500 .95rem var(--body);color:var(--mute);letter-spacing:0;margin-left:6px;white-space:nowrap}
.price{display:flex;align-items:baseline;flex-wrap:wrap}
.plan ul{margin:22px 0 28px;display:grid;gap:10px;font-size:.98rem;--lc:var(--c-host);flex:1;align-content:start}
.plan li{position:relative;padding-left:26px}
.plan li::before{content:"";position:absolute;left:0;top:.45em;width:15px;height:15px;background:var(--lc);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.8' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.8' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.plan .btn{width:100%}
.plan:not(.pop) .btn{background:transparent;color:var(--fg);border-color:#BFC6D8}
.plan:not(.pop) .btn:hover{background:#0A0E1C;color:#fff;border-color:#0A0E1C}
.fine{margin-top:26px;color:var(--mute);font-size:.93rem;max-width:70ch}

/* work */
.work-feat{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.work-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{display:block;text-decoration:none;color:inherit;border-radius:18px;background:var(--ink-3);border:1px solid var(--line);overflow:hidden;transition:transform .3s var(--ease),border-color .3s}
.card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.3)}
.shotbox{position:relative;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(140deg,hsl(var(--h) 58% 34%),hsl(calc(var(--h) + 40) 62% 16%))}
.shotbox i{position:absolute;display:block;border-radius:5px;background:rgba(255,255,255,.88)}
.shotbox i:nth-child(1){left:9%;top:20%;width:46%;height:11%}
.shotbox i:nth-child(2){left:9%;top:38%;width:30%;height:6%;background:rgba(255,255,255,.42)}
.shotbox i:nth-child(3){left:9%;top:52%;width:22%;height:11%;border-radius:999px;background:hsl(calc(var(--h) + 150) 80% 70%)}
.shotbox i:nth-child(4){right:9%;top:20%;width:24%;aspect-ratio:1;border-radius:14px;background:rgba(255,255,255,.18)}
.shotbox i:nth-child(5){right:9%;bottom:12%;width:38%;height:20%;background:rgba(255,255,255,.14)}
.shotbox img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top}
.cap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px 18px}
.cap small{display:block;color:var(--mute);font-size:.85rem;margin-bottom:3px}
.cap h3{font:600 1.05rem/1.2 var(--head);letter-spacing:-.01em}
.cap svg{flex:none;width:18px;height:18px;color:var(--mute);transition:transform .25s var(--ease),color .25s}
.card:hover .cap svg{transform:translate(3px,-3px);color:#fff}
.work-feat .cap h3{font-size:1.3rem}
.work-feat .cap{padding:20px 22px 22px}
.work-grid .cap{padding:14px 14px 16px}
.work-grid .cap h3{font-size:.98rem}

/* process */
.steps{display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.steps::before{content:"";position:absolute;left:0;right:0;top:20px;height:2px;background:linear-gradient(90deg,var(--build) 0%,var(--build) 40%,var(--host) 62%,var(--rank) 100%);opacity:.8}
.step{position:relative;padding:0 28px 0 0}
.dot{position:relative;width:42px;height:42px;border-radius:50%;background:var(--ink-2);border:2px solid var(--sc);display:grid;place-items:center;font:700 1rem var(--head);color:#fff;margin-bottom:26px}
.step h3{font-size:1.3rem}
.step p{margin-top:10px;color:var(--mute);max-width:30ch}
.step:nth-child(1),.step:nth-child(2){--sc:var(--build)}.step:nth-child(3){--sc:var(--host)}.step:nth-child(4){--sc:var(--rank)}
.sec.alt{background:var(--ink-2)}

/* faq */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,88px);align-items:start}
.faq-grid h2{font-size:clamp(2rem,4vw,3rem)}
.faq-grid .side p{margin-top:16px;color:var(--mute);max-width:34ch}
.faq-grid .side a{display:inline-block;margin-top:18px;font-weight:600}
details{border-top:1px solid var(--line)}
details:last-child{border-bottom:1px solid var(--line)}
summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;cursor:pointer;font:600 1.15rem/1.3 var(--head);letter-spacing:-.01em;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:22px;height:22px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='M11 4v14M4 11h14' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='M11 4v14M4 11h14' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .25s var(--ease)}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 40px 26px 0;color:var(--mute)}

/* contact */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,88px);align-items:start}
.contact-grid h2{font-size:clamp(2.1rem,4.4vw,3.4rem)}
.contact-grid .info p{margin-top:20px;color:var(--mute);max-width:42ch}
.facts{margin-top:40px;display:grid;gap:22px}
.facts div{padding-top:18px;border-top:1px solid var(--line)}
.facts small{display:block;color:var(--mute);font-size:.9rem;margin-bottom:4px}
.facts a,.facts span{font:600 1.2rem var(--head);text-decoration:none}
.facts a:hover{text-decoration:underline}
form{background:#fff;color:#11162A;border-radius:24px;padding:clamp(22px,4vw,40px);display:grid;grid-template-columns:1fr 1fr;gap:18px}
.f{display:grid;gap:7px}
.f.full{grid-column:1/-1}
label{font-weight:600;font-size:.93rem}
label span{font-weight:400;color:#6A7491}
input,select,textarea{width:100%;border:1px solid #CDD3E2;background:#F8F9FC;border-radius:12px;padding:13px 14px;min-height:50px;transition:border-color .15s,box-shadow .15s}
textarea{min-height:130px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:#2B57D6;box-shadow:0 0 0 3px rgba(43,87,214,.18);background:#fff}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
form .btn{background:#0A0E1C;color:#fff;width:100%;min-height:54px}
.msg{grid-column:1/-1;font-weight:500;font-size:.98rem;min-height:1.4em}
.msg:empty{display:none}
.msg.ok{color:#0A7A4E}.msg.err{color:#B3261E}

/* footer */
.ftr{background:#070A15;border-top:1px solid var(--line);padding:72px 0 36px;color:#C5CCE0}
.ftr-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
.ftr p.about{margin-top:18px;color:var(--mute);max-width:36ch;font-size:.98rem}
.ftr .fh{margin:0 0 16px;font:600 .95rem var(--body);color:#fff}
.ftr li+li{margin-top:10px}
.ftr a{text-decoration:none;color:var(--mute);font-size:.97rem}
.ftr a:hover{color:#fff}
.ftr-bot{margin-top:56px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--mute);font-size:.9rem}

/* responsive */
@media (max-width:1040px){
  .plans{grid-template-columns:repeat(2,1fr)}
  .work-grid{grid-template-columns:repeat(2,1fr)}
  .proof-in{grid-template-columns:1fr}
  .ftr-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .nav{position:fixed;inset:72px 0 auto 0;flex-direction:column;align-items:stretch;gap:0;background:#0A0E1C;padding:12px 24px 28px;border-bottom:1px solid var(--line);display:none}
  .nav-open .nav{display:flex}
  .nav a.l{padding:16px 0;border-bottom:1px solid var(--line);font-size:1.1rem}
  .nav .btn{margin-top:20px}
  .burger{display:flex}
  .hero-grid,.split,.faq-grid,.contact-grid{grid-template-columns:1fr}
  .stage{margin:12px auto 0;max-width:520px}
  .stats{grid-template-columns:1fr 1fr}
  .stat:nth-child(3){padding-left:0;border-left:0}
  .stat:nth-child(n+3){border-top:1px solid var(--line)}
  .track{grid-template-columns:1fr}
  .lane,.lane+.lane{padding:40px 0 12px;border-left:0}
  .lane+.lane{margin-top:24px}
  .work-feat{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr;row-gap:44px}
  .steps::before{display:none}
  .pstats{grid-template-columns:1fr 1fr}
  .pstat:nth-child(3){border-left:0}
  .pstat:nth-child(n+3){border-top:1px solid var(--line)}
}
@media (max-width:620px){
  .plans,.plans.two{grid-template-columns:1fr}
  .work-grid{grid-template-columns:1fr 1fr;gap:14px}
  form{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .ftr-grid{grid-template-columns:1fr}
  .hero-cta .btn{flex:1 1 100%}
  details p{padding-right:0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .win,.chip{animation:none;opacity:1;transform:none}
  .btn,.card,.card .cap svg{transition:none}
}

/* ===== service pages + dropdown ===== */
.dd{position:relative}
.dd-menu{position:absolute;top:100%;left:-18px;min-width:280px;padding:10px;margin-top:14px;border-radius:16px;background:#0F1528;border:1px solid var(--line);box-shadow:0 30px 60px -30px rgba(0,0,0,.8);display:none}
.dd-menu::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.dd:hover .dd-menu,.dd:focus-within .dd-menu{display:block}
.dd-menu a{display:block;padding:11px 14px;border-radius:10px;text-decoration:none;color:#C5CCE0;font-weight:500;font-size:.97rem}
.dd-menu a:hover{background:rgba(255,255,255,.07);color:#fff}

.phero{position:relative;overflow:hidden;background:var(--ink);padding:calc(72px + clamp(36px,5vw,64px)) 0 clamp(56px,8vw,96px)}
.phero::before{content:"";position:absolute;right:-12%;top:-25%;width:62%;height:110%;background:radial-gradient(closest-side,color-mix(in srgb,var(--pc) 26%,transparent),transparent 70%);pointer-events:none}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px;padding:0;list-style:none;color:var(--mute);font-size:.92rem;position:relative}
.crumbs a{color:var(--mute);text-decoration:none}
.crumbs a:hover{color:#fff}
.crumbs li+li::before{content:"/";margin-right:8px;color:#5B6684}
.phero-grid{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(32px,5vw,72px);align-items:end}
.phero h1{font-size:clamp(2.1rem,4.6vw,3.8rem);font-weight:700;letter-spacing:-.03em;line-height:1.04}
.phero .lead{margin-top:24px;font-size:1.18rem;color:#B9C2DB;max-width:56ch}
.phero .hero-cta{margin-top:34px}
.glance{border:1px solid var(--line);border-radius:20px;background:var(--ink-3);padding:6px 24px}
.glance div{padding:18px 0;border-top:1px solid var(--line)}
.glance div:first-child{border-top:0}
.glance small{display:block;color:var(--mute);font-size:.88rem}
.glance b{display:block;margin-top:3px;font:600 1.1rem/1.35 var(--head);letter-spacing:-.01em}
.glance div:first-child b{font-size:1.9rem;color:var(--pc)}

.inc{display:grid;grid-template-columns:repeat(2,1fr);column-gap:clamp(32px,6vw,88px)}
.inc>div{padding:30px 0;border-top:1px solid var(--line)}
.inc h3{font-size:1.3rem}
.inc p{margin-top:10px;color:var(--mute);max-width:46ch}

.pb{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(32px,6vw,88px);padding:48px 0;border-top:1px solid var(--line)}
.prose .pb:first-child{padding-top:0;border-top:0}
.pb h2{font-size:clamp(1.6rem,2.8vw,2.3rem)}
.pb p{color:var(--mute);max-width:62ch}
.pb p+p{margin-top:16px}
.pb a,.faq-grid .side a{color:var(--fg);text-underline-offset:4px}

.rel{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rel a{display:block;padding:30px 28px;border-radius:20px;background:var(--surface);border:1px solid var(--line);text-decoration:none;transition:transform .25s var(--ease),border-color .25s}
.rel a:hover{transform:translateY(-3px);border-color:var(--fg)}
.rel h3{font-size:1.25rem}
.rel p{margin-top:8px;color:var(--mute);font-size:.98rem}
.rel span{display:inline-block;margin-top:18px;font-weight:600;text-decoration:underline;text-underline-offset:4px}

@media (max-width:900px){
  .dd-menu{position:static;display:block;min-width:0;margin:0 0 6px;padding:0 0 0 14px;border:0;background:transparent;box-shadow:none}
  .dd-menu::before{display:none}
  .dd-menu a{padding:12px 0;border-bottom:1px solid var(--line);border-radius:0}
  .phero-grid,.pb{grid-template-columns:1fr}
  .inc{grid-template-columns:1fr}
  .rel{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.rel a{transition:none}}
