:root{
  --pine-950:#081C16; --pine-900:#0E2A22; --pine-800:#15382E;
  --teal-700:#0F6B6D; --teal-600:#198070; --teal-500:#22997F; --teal-400:#3CAE93; --teal-300:#69C4AD;
  --copper:#C47A44; --paper:#F7F6F2; --ink:#0E1A17; --mute:#A9BEB7; --sage:#5E7A6D;
  --line:rgba(255,255,255,.12); --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--pine-950);color:var(--paper);font:16px/1.55 'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3,.display{font-family:'Space Grotesk',sans-serif;font-weight:600;letter-spacing:-.02em;margin:0;line-height:1.05}
h1{font-size:clamp(40px,6.4vw,92px)}
h2{font-size:clamp(30px,4.4vw,60px)}
h3{font-size:clamp(19px,1.9vw,24px);line-height:1.2}
p{margin:0}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--teal-300);outline-offset:3px}
.paper :focus-visible{outline-color:var(--teal-600)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.eyebrow{font:500 12px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-300)}
.lead{font-size:clamp(17px,1.8vw,21px);color:var(--mute);max-width:48ch}
.grad{background:linear-gradient(90deg,var(--teal-500),var(--teal-300));-webkit-background-clip:text;background-clip:text;color:transparent}
.rule{display:block;width:72px;height:4px;border-radius:4px;background:var(--copper);margin:20px 0}
.row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 22px;border-radius:999px;font:600 15px 'Inter',sans-serif;border:1px solid transparent;transition:transform .15s ease,border-color .15s ease,color .15s ease}
.btn-primary{background:linear-gradient(135deg,var(--teal-600),var(--teal-400));color:#fff;box-shadow:0 10px 30px -10px rgba(34,153,127,.7)}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ghost{border-color:var(--line);color:var(--paper)}
.btn-ghost:hover{border-color:var(--teal-300);color:var(--teal-300)}
.paper .btn-ghost{border-color:rgba(14,26,23,.22);color:var(--ink)}
.paper .btn-ghost:hover{border-color:var(--teal-600);color:var(--teal-600)}
.btn-light{background:var(--paper);color:var(--ink)}
.btn-light:hover{transform:translateY(-2px)}

/* nav / footer */
.nav{position:sticky;top:0;z-index:50;background:rgba(8,28,22,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:16px}
.nav nav{display:flex;align-items:center;gap:clamp(12px,3vw,32px);font-size:14.5px}
.nav nav a:not(.btn){color:var(--mute);padding:12px 6px;border-bottom:2px solid transparent}
.nav nav a:not(.btn):hover,.nav nav a[aria-current]{color:var(--paper)}
.nav nav a[aria-current]:not(.btn){border-bottom-color:var(--copper)}
.brand{flex-shrink:0;display:flex;align-items:center;min-height:44px}
.brand img{height:34px;width:auto;max-width:none}

/* mobile menu (CSS-only <details>) */
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line)}
.menu summary::-webkit-details-marker{display:none}
.menu summary svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round}
.menu[open] summary{border-color:var(--teal-300)}
.menu-panel{position:absolute;right:0;top:calc(100% + 14px);min-width:210px;display:grid;padding:8px;border-radius:16px;border:1px solid var(--line);background:var(--pine-900);box-shadow:0 24px 48px -12px rgba(0,0,0,.7)}
.nav .menu-panel a{display:flex;align-items:center;min-height:48px;padding:0 16px;border-radius:10px;font-size:16px;color:var(--paper);border:0}
.nav .menu-panel a:hover,.nav .menu-panel a[aria-current]{background:rgba(255,255,255,.07)}
@media (max-width:700px){
  .nav nav>a:not(.btn){display:none}
  .menu{display:block}
  .brand img{height:26px}
  .nav-in,.nav nav{gap:10px}
}
.foot{border-top:1px solid var(--line);padding:56px 0 40px}
.foot-in{display:grid;gap:24px}
.foot nav{display:flex;gap:24px;flex-wrap:wrap;color:var(--mute);font-size:14px}
.foot .tag{font:500 12px 'JetBrains Mono',monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-300);margin-top:12px}
.foot .fine{color:var(--mute);font-size:13px}
.foot a:hover{color:var(--paper)}

/* sections */
.section{padding:clamp(72px,10vw,130px) 0;position:relative}
.paper{background:var(--paper);color:var(--ink)}
.paper .lead{color:#4B5B56}
.paper .eyebrow{color:var(--teal-600)}
.deep{background:var(--pine-900)}
.glow{background:radial-gradient(60% 70% at 78% 30%,rgba(34,153,127,.28),transparent 70%),radial-gradient(40% 50% at 10% 90%,rgba(196,122,68,.12),transparent 70%),var(--pine-950)}
.head{max-width:760px;margin-bottom:48px}
.head h2{margin:12px 0 16px}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.card{border:1px solid var(--line);border-radius:20px;padding:28px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.01));transition:border-color .25s ease}
.card:hover{border-color:rgba(105,196,173,.45)}
.card h3{margin:16px 0 8px}
.card p{color:var(--mute)}
.paper .card{border-color:rgba(14,26,23,.12);background:#fff}
.paper .card p{color:#4B5B56}
.ico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:rgba(34,153,127,.16);color:var(--teal-300)}
.paper .ico{background:rgba(25,128,112,.1);color:var(--teal-600)}
.ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.tile{display:inline-grid;place-items:center;background:var(--sage);border-radius:20px;padding:20px 28px}
.tile img{height:96px;width:auto}
.tile-light{background:var(--paper)}
.stat{font:600 clamp(44px,6vw,80px)/1 'Space Grotesk',sans-serif}
.stat-label{color:var(--mute);margin-top:6px;font-size:14px}
.paper .stat-label{color:#4B5B56}

/* heroes */
.hero{min-height:calc(100vh - 68px);min-height:calc(100svh - 68px);display:grid;align-items:center;padding:56px 0;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center}
.hero h1{margin:14px 0 0;font-size:clamp(38px,4.6vw,66px)}
.hero-sm{padding:clamp(72px,10vw,130px) 0 clamp(48px,7vw,90px)}
.hero-sm h1{margin:14px 0 0;max-width:18ch;font-size:clamp(38px,5.2vw,72px)}
.hero-art{position:relative;justify-self:end;width:min(100%,520px)}
.hero-art img{width:100%;position:relative;z-index:1}
.hero-art::before{content:"";position:absolute;inset:8% 0 0;background:radial-gradient(closest-side,rgba(60,174,147,.35),transparent);filter:blur(30px)}
.chip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(8,28,22,.82);border:1px solid rgba(105,196,173,.35);backdrop-filter:blur(8px);font:500 12px 'JetBrains Mono',monospace;color:var(--paper);white-space:nowrap;animation:float 6s ease-in-out infinite}
.chip::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal-300);box-shadow:0 0 10px var(--teal-300)}
.chip.c1{top:14%;right:-2%}.chip.c2{top:48%;left:-6%;animation-delay:-2s}.chip.c3{bottom:12%;right:2%;animation-delay:-4s}
@keyframes float{50%{transform:translateY(-10px)}}

/* marquee */
.marq{overflow:hidden;border-block:1px solid var(--line);padding:20px 0;background:var(--pine-950)}
.marq-in{display:flex;gap:56px;width:max-content;animation:marq 32s linear infinite;font:600 clamp(20px,2.6vw,32px) 'Space Grotesk',sans-serif;color:var(--paper)}
.marq-in span{display:inline-flex;align-items:center;gap:56px;white-space:nowrap}
.marq-in span::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--copper)}
@keyframes marq{to{transform:translateX(-50%)}}

/* app-window mocks (UI "screenshots" built in CSS) */
.win{background:#fff;color:var(--ink);border-radius:16px;box-shadow:0 30px 60px -24px rgba(0,0,0,.55);overflow:hidden;font:500 11.5px 'JetBrains Mono',monospace;width:100%}
.win-bar{display:flex;gap:6px;padding:10px 12px;background:#EFEEE8}
.win-bar i{width:8px;height:8px;border-radius:50%;background:#CFD6D2}
.win-body{padding:16px;display:grid;gap:12px}
.mrow{display:grid;grid-template-columns:78px 1fr auto;gap:10px;align-items:center}
.mrow em{font-style:normal;color:#4B5B56}
.bar{height:8px;border-radius:8px;background:#E4ECE8;overflow:hidden;display:block}
.bar b{display:block;height:100%;width:var(--w);border-radius:8px;background:linear-gradient(90deg,var(--teal-600),var(--teal-300))}
.rooms .mrow{grid-template-columns:1fr auto;padding:9px 12px;border-radius:10px;background:#F4F6F4}
.ok{color:var(--teal-600)}.warn{color:var(--copper)}.busy{color:#6B7B76}
.sk{height:10px;border-radius:6px;background:#E4ECE8}.sk.h{height:26px;width:70%}.sk.s{width:45%}
.pillb{justify-self:start;padding:8px 16px;border-radius:999px;background:var(--teal-600);color:#fff;font:600 11px 'Inter',sans-serif}
.wire{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}
.wire>div{display:grid;gap:8px;padding:12px;border-radius:10px}
.wire .w1{border:1.5px dashed #9AA9A3}.wire .w1 span{height:9px;border-radius:5px;background:#D6DEDA}
.wire .w2{background:#F4F6F4}.wire .w2 span{height:9px;border-radius:5px;background:var(--teal-500)}
.wire .w2 span:nth-child(2){background:var(--copper);width:60%}
.wire svg{width:22px;stroke:#6B7B76;fill:none;stroke-width:2}
.aa{font:600 52px/1 'Space Grotesk',sans-serif;color:var(--teal-700)}
.sw{display:flex;gap:8px}.sw i{width:34px;height:34px;border-radius:10px}
.chartw svg{width:100%;height:96px;overflow:visible}
.chartw .ln{fill:none;stroke:var(--teal-500);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.chartw .ar{fill:rgba(34,153,127,.12)}
.chartw .dot{fill:var(--copper)}


/* richer mocks for the discipline cards */
.x-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.x-kpis>div{background:#F4F6F4;border-radius:10px;padding:8px 9px;min-width:0}
.x-kpis em{display:block;font-style:normal;color:#6B7B76;font-size:9.5px}
.x-kpis b{display:block;font:600 15px 'Space Grotesk',sans-serif;color:var(--ink)}
.x-kpis s{text-decoration:none;font-size:9px;color:var(--teal-600)}
.x-app{display:grid;grid-template-columns:30px 1fr;gap:12px}
.x-app aside{display:grid;gap:7px;align-content:start}
.x-app aside i{height:24px;border-radius:8px;background:#EDF1EF}
.x-app aside i.on{background:var(--teal-600)}
.x-bars{display:flex;align-items:flex-end;gap:7px;height:84px;margin-top:10px}
.x-bars i{flex:1;height:var(--h);border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,var(--teal-300),var(--teal-600))}
.x-bars i:nth-child(6){background:linear-gradient(180deg,#E0A275,var(--copper))}
.x-site{display:grid;gap:12px}
.x-site nav{display:flex;align-items:center;gap:10px}
.x-site nav b{width:14px;height:14px;border-radius:5px;background:var(--teal-600)}
.x-site nav span{display:flex;gap:7px;flex:1;margin-left:6px}
.x-site nav span i{width:26px;height:5px;border-radius:3px;background:#D6DEDA}
.x-site nav u{text-decoration:none;font:600 9.5px 'Inter',sans-serif;background:var(--ink);color:#fff;padding:5px 11px;border-radius:999px}
.x-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:12px;align-items:center}
.x-hero h4{font:600 19px/1.05 'Space Grotesk',sans-serif;margin:0 0 8px;color:var(--ink)}
.x-hero p{height:5px;border-radius:3px;background:#E1E8E4;margin:0 0 5px}.x-hero p.s{width:60%}
.x-hero s{display:inline-block;text-decoration:none;margin-top:6px;font:600 9.5px 'Inter',sans-serif;background:var(--teal-600);color:#fff;padding:5px 12px;border-radius:999px}
.x-img{height:92px;border-radius:12px;background:linear-gradient(160deg,#0F6B6D,#081C16);position:relative;overflow:hidden}
.x-img::before{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:62%;background:#15382E;clip-path:polygon(0 100%,22% 30%,40% 62%,62% 8%,100% 100%)}
.x-img::after{content:"";position:absolute;top:12px;right:14px;width:14px;height:14px;border-radius:50%;background:var(--copper)}
.x-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.x-cards i{height:30px;border-radius:9px;background:#F1F4F2;position:relative}
.x-cards i::after{content:"";position:absolute;left:8px;top:11px;width:55%;height:5px;border-radius:3px;background:#D6DEDA}
.x-design{position:relative;padding:14px;border-radius:10px;background:#F2F5F3 radial-gradient(#CFD8D3 1px,transparent 1.4px) 0 0/12px 12px;display:flex;gap:14px;align-items:center;justify-content:center}
.x-card{background:#fff;border-radius:12px;padding:12px;flex:1 1 0;min-width:0;box-shadow:0 8px 20px -8px rgba(0,0,0,.25);display:grid;gap:6px}
.x-card .t{height:54px;border-radius:8px;background:linear-gradient(135deg,var(--teal-600),var(--teal-300))}
.x-card b{font:600 12px 'Space Grotesk',sans-serif;color:var(--ink)}
.x-card small{color:#6B7B76;font-size:9.5px}
.x-card u{text-decoration:none;justify-self:start;font:600 9.5px 'Inter',sans-serif;background:var(--teal-600);color:#fff;padding:5px 12px;border-radius:999px;position:relative;outline:1.5px solid #3C7BFF;outline-offset:3px}
.x-card u::before,.x-card u::after{content:"";position:absolute;width:6px;height:6px;background:#fff;border:1.5px solid #3C7BFF}
.x-card u::before{left:-6px;top:-6px}.x-card u::after{right:-6px;bottom:-6px}
.x-wire{flex:0 0 58px;width:58px;display:grid;gap:7px;opacity:.9}
.x-wire i{display:block;height:46px;border:1.5px dashed #9AA9A3;border-radius:8px}
.x-wire i:nth-child(2){height:8px;border-radius:4px}.x-wire i:nth-child(3){height:8px;width:60%;border-radius:4px}
.x-tag{position:absolute;font:600 9px 'JetBrains Mono',monospace;background:var(--ink);color:#fff;padding:3px 7px;border-radius:5px}
.x-tag.a{right:12px;top:10px}.x-tag.b{left:14px;bottom:12px;background:var(--teal-600)}
.x-brand{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}
.x-logo{width:64px;height:64px;border-radius:16px;background:linear-gradient(135deg,var(--teal-700),var(--teal-400));display:grid;place-items:center}
.x-logo svg{width:34px;height:34px}
.x-type{display:grid;gap:2px}.x-type .aa{font-size:42px}.x-type small{color:#6B7B76;font-size:9.5px}
.x-sw{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,1fr);gap:7px}
.x-sw div{display:grid;gap:4px}.x-sw i{display:block;height:34px;border-radius:9px}
.x-sw em{font-style:normal;font-size:8.5px;color:#6B7B76}
.x-mk{display:grid;gap:10px}
.x-mk svg{width:100%;height:84px;overflow:visible}
.x-mk .gl{stroke:#E4ECE8;stroke-width:1}
.x-mk .ln{fill:none;stroke:var(--teal-500);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.x-mk .l2{fill:none;stroke:var(--copper);stroke-width:2.2;stroke-dasharray:4 5;stroke-linecap:round}

/* horizontal gallery */
.hgal{padding:clamp(56px,8vw,96px) 0;overflow:hidden}
.hgal .head{margin-bottom:32px}
.hprog{height:3px;border-radius:3px;background:var(--line);margin-top:24px;max-width:240px;overflow:hidden}
.hprog b{display:block;height:100%;width:100%;background:var(--copper);transform-origin:left;transform:scaleX(.2)}
.hgal-track{display:flex;gap:24px;padding:4px 24px 24px;overflow-x:auto;scroll-snap-type:x mandatory}
.hcard{flex:0 0 min(84vw,420px);scroll-snap-align:start;border:1px solid var(--line);border-radius:28px;padding:20px;background:linear-gradient(165deg,rgba(34,153,127,.2),rgba(255,255,255,.03) 60%);display:grid;grid-template-rows:230px auto;gap:20px}
.hcard .viz{display:grid;place-items:center;border-radius:18px;background:radial-gradient(circle at 50% 0%,rgba(105,196,173,.22),rgba(0,0,0,.28));padding:18px}
.hcard h3{margin:8px 0 6px;font-size:26px}
.hcard p{color:var(--mute)}
.hcard .num{font:500 12px 'JetBrains Mono',monospace;color:var(--copper);letter-spacing:.12em}

/* product showcase */
.showcase h2{font-size:clamp(28px,3.4vw,46px)}
.showcase{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.stage{position:relative;display:grid;gap:18px;perspective:1200px}
.stage .win:nth-child(2){width:82%;justify-self:end}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px;max-width:520px}
.stats .stat-label{max-width:18ch}

.stage .win,.svc-viz .win,.walk-viz .win{font-size:13.5px}
.stage .win-body,.svc-viz .win-body,.walk-viz .win-body{padding:22px;gap:16px}
.stage .mrow,.svc-viz .mrow,.walk-viz .mrow{grid-template-columns:96px 1fr auto}
.stage .rooms .mrow,.svc-viz .rooms .mrow,.walk-viz .rooms .mrow{grid-template-columns:1fr auto}
.stage .aa,.svc-viz .aa,.walk-viz .aa{font-size:68px}
.svc-viz .win{max-width:440px}

/* closing call-to-action card */
.cta{padding:clamp(48px,8vw,110px) 0}
.cta-card{position:relative;overflow:hidden;border-radius:32px;border:1px solid rgba(105,196,173,.28);padding:clamp(32px,6vw,76px);
  background:radial-gradient(60% 130% at 100% 0%,rgba(34,153,127,.38),transparent 62%),radial-gradient(50% 90% at 0% 100%,rgba(196,122,68,.16),transparent 60%),linear-gradient(160deg,var(--pine-800),var(--pine-950))}
.cta-card>div{position:relative;z-index:1;max-width:760px}
.cta-card h2{font-size:clamp(28px,3.8vw,52px)}
.cta-card h2{margin-bottom:16px}
.cta-art{position:absolute;right:-1%;bottom:-10%;height:125%;width:auto;max-width:none;opacity:.32;pointer-events:none;mask-image:linear-gradient(90deg,transparent,#000 35%)}
@media (max-width:900px){.cta-art{opacity:.16;height:90%;right:-12%}}


/* work page: two equal cards, same structure, buttons pinned to the bottom */
.work-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:stretch}
.work-card{display:flex;flex-direction:column;gap:18px;padding:28px}
.work-card h2{font-size:clamp(28px,3.2vw,42px);margin:0}
.work-card .lead{flex:1}
.work-card .row{margin-top:0}
.work-viz{display:grid;place-items:center;gap:16px;align-content:center;min-height:340px;padding:24px;border-radius:22px;background:radial-gradient(circle at 50% 0%,rgba(105,196,173,.22),rgba(0,0,0,.28));border:1px solid var(--line)}
.work-mock{width:100%;max-width:340px}

/* sticky walkthrough (SARV) */
.walk{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.walk-viz{display:none}
.step{padding:48px 0}
.step-viz{margin-top:24px}
.ticks{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px;color:var(--mute)}
.ticks li::before{content:"✓";color:var(--teal-300);margin-right:10px}
.paper .ticks{color:#4B5B56}

/* services rows */
.svc{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:clamp(40px,6vw,72px) 0;border-top:1px solid var(--line)}
.svc:nth-of-type(even) .svc-viz{order:-1}
.svc-viz{display:grid;place-items:center;border-radius:28px;padding:32px;min-height:340px;background:radial-gradient(circle at 50% 0%,rgba(105,196,173,.22),rgba(0,0,0,.28));border:1px solid var(--line)}
.svc-viz .win{max-width:380px}
.pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.pills span{padding:6px 12px;border-radius:999px;border:1px solid var(--line);font-size:13px;color:var(--mute)}

/* process timeline + tenancy */
.steps4{counter-reset:s;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.steps4 .card::before{counter-increment:s;content:"0" counter(s);font:600 40px 'Space Grotesk',sans-serif;color:var(--copper)}
.tenancy{display:grid;gap:18px;justify-items:center}
.core{padding:16px 40px;border-radius:16px;background:linear-gradient(135deg,var(--teal-700),var(--teal-500));font:600 14px 'JetBrains Mono',monospace;letter-spacing:.14em;color:#fff}
.tenants{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;width:100%;position:relative;padding-top:22px}
.tenants::before{content:"";position:absolute;top:0;left:12%;right:12%;height:22px;border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0}
.tenant{border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center}
.tenant b{display:block;margin-bottom:6px}
.tenant span{display:block;font-size:13px;color:var(--mute)}

/* motion enhancements (only when JS added .motion) */
@media (min-width:769px) and (min-height:560px){
  .motion .hgal-track{overflow:visible;scroll-snap-type:none;width:max-content;padding-left:max(24px,calc((100vw - var(--max))/2 + 24px));padding-right:24px}
  /* the pinned gallery always fits the window: everything is sized from the available height */
  .motion .hgal{height:calc(100vh - 68px);min-height:440px;display:flex;flex-direction:column;padding:clamp(16px,3.5vh,48px) 0}
  .motion .hgal > .wrap{width:100%;flex:none}
  .motion .hgal .head{margin-bottom:clamp(10px,2.5vh,28px)}
  .motion .hgal .head h2{font-size:clamp(26px,min(3.6vw,6.2vh),52px);margin:8px 0}
  .motion .hgal .head .lead{font-size:clamp(15px,2.4vh,19px)}
  .motion .hgal .hprog{margin-top:clamp(8px,2vh,20px)}
  .motion .hgal-track{flex:1;min-height:0;padding-bottom:0}
  .motion .hcard{flex-basis:clamp(280px,32vh + 120px,420px);height:100%;max-height:520px;grid-template-rows:minmax(0,1fr) auto;gap:clamp(10px,2vh,20px);padding:clamp(12px,2vh,20px)}
  .motion .hcard .viz{min-height:0;overflow:hidden;padding:clamp(8px,2vh,18px)}
  .motion .hcard .viz .win{max-height:100%;width:calc(100% / var(--wz,1.15));zoom:var(--wz,1.15)}
  .motion .hcard h3{font-size:clamp(20px,3.2vh,26px)}
  .motion .hcard p{font-size:clamp(13px,2vh,16px)}
  .motion .hcard .num{font-size:12px}
  .motion .hcard > div:last-child{min-height:clamp(92px,15vh,122px)}
  @media (max-height:780px){.motion .hgal .head .lead{display:none}.motion .hgal{--wz:1.05}}
  @media (max-height:640px){.motion .hgal{--wz:.9}}
  .motion .walk-viz{display:block;position:sticky;top:110px;height:min(500px,68vh);align-self:start;border-radius:28px;border:1px solid var(--line);background:radial-gradient(circle at 50% 0%,rgba(105,196,173,.22),rgba(0,0,0,.28))}
  .motion .step{min-height:68vh;display:flex;flex-direction:column;justify-content:center}
  .motion .step-viz{display:none}
  .motion .pane{position:absolute;inset:0;padding:32px;display:grid;place-items:center;opacity:0;visibility:hidden;transition:opacity .4s ease,transform .4s ease;transform:translateY(16px)}
  .motion .pane.on{opacity:1;visibility:visible;transform:none}
}
@media (max-width:900px){
  .hero .wrap,.showcase,.walk,.svc{grid-template-columns:1fr}
  .hero-art{justify-self:center;margin-top:16px}
  .chip.c2{left:0}.chip.c1{right:0}
  .svc:nth-of-type(even) .svc-viz{order:0}
  .stage .win:nth-child(2){width:92%}
}

/* phones */
@media (max-width:700px){
  .hero{min-height:0;padding:40px 0 56px}
  .hero-art{width:min(74%,300px);margin-top:8px}
  .chip{font-size:11px;padding:6px 11px}
  .svc{gap:24px}
  .svc-viz{min-height:0;padding:20px}
  .work-viz{min-height:240px;padding:16px}
  .tenants::before{display:none}
  .x-kpis{gap:6px}.x-kpis>div{padding:7px 6px}
  .x-kpis b{font-size:12.5px}.x-kpis em{font-size:8.5px;letter-spacing:-.04em;white-space:nowrap;overflow:hidden}
  .x-app{grid-template-columns:24px 1fr;gap:8px}
  .win-body{padding:14px}
  .cta-card{padding:28px 24px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .marq-in,.chip{animation:none}
}
