/* ===== Ashvir Technologies — brand design system (Oct 2026) ===== */
:root{
  --white:#FFFFFF;
  --paper:#FFFFFF;
  --paper-2:#F7F5F1;       /* Mist */
  --ink:#1F2733;           /* Midnight Navy */
  --petrol:#1F2733;        /* dark band = navy */
  --petrol-2:#171C25;      /* deeper navy for insets */
  --signal:#EA6A0A;        /* Electric Blue */
  --signal-soft:#FB923C;   /* Aqua */
  --stone:#4A5560;         /* Slate Gray */
  --line:#D5DBE1;          /* Light Gray */
  --line-dark:#2E3745;     /* divider on navy */
  --grad:linear-gradient(90deg,#FB923C,#F97316,#EA580C);
  --maxw:1140px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.narrow{max-width:760px}
h1,h2,h3,h4.serif{font-family:"Space Grotesk",sans-serif;font-weight:700;line-height:1.08;letter-spacing:-.015em}
.mono{font-family:"Space Grotesk",sans-serif;font-weight:500}

/* buttons */
.btn{display:inline-block;font-family:"IBM Plex Sans",sans-serif;font-size:15px;font-weight:600;padding:11px 20px;border-radius:7px;border:1px solid transparent;cursor:pointer;transition:filter .15s,background .15s,color .15s,border-color .15s}
.btn-primary{background:var(--grad);color:#fff;border:none}
.btn-primary:hover{filter:brightness(1.08)}
.btn-ghost{border-color:var(--line);color:var(--ink);background:transparent}
.btn-ghost:hover{border-color:var(--signal);color:var(--signal)}
.btn-signal{background:var(--signal-soft);color:#0F172A}
.btn-signal:hover{filter:brightness(1.06)}

/* topbar */
.topbar{background:var(--petrol-2);color:#C9D4DF;font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:34px;gap:16px}
.status{display:flex;align-items:center;gap:8px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--signal-soft);animation:pulse 2.6s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(251,146,60,.55)}70%{box-shadow:0 0 0 7px rgba(251,146,60,0)}100%{box-shadow:0 0 0 0 rgba(251,146,60,0)}}
.topbar .right{opacity:.72}
@media(max-width:640px){.topbar .right{display:none}}

/* nav + css-only mobile menu */
header.nav{position:sticky;top:0;z-index:50;background:rgba(31,39,51,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line-dark)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:70px}
.brand{display:flex;align-items:center}
.brand .logo{height:46px;width:auto;display:block}
.brand .logo-badge{height:48px;width:auto;display:block}
nav.links{display:flex;gap:30px;align-items:center}
nav.links a{font-size:15px;font-weight:500;color:#C9D4DF;transition:color .15s}
nav.links a:hover,nav.links a[aria-current="page"]{color:#fff}
nav.links a[aria-current="page"]{border-bottom:2px solid var(--signal-soft);padding-bottom:2px}
.nav .btn{padding:9px 17px}
.nav-burger{display:none}
.nav-toggle{display:none}
@media(max-width:900px){
  .brand .logo{height:38px}
  .brand .logo-badge{height:40px}
  .nav-burger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:8px}
  .nav-burger span,.nav-burger:before,.nav-burger:after{content:"";display:block;width:24px;height:2px;background:#fff}
  nav.links{position:absolute;top:70px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0;padding:8px 28px 18px;display:none}
  nav.links a{padding:12px 0;width:100%;font-size:16px}
  nav.links a.navcta{margin-top:10px}
  .nav-toggle:checked ~ nav.links{display:flex}
}

/* generic section */
section{padding:86px 0}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:52px;flex-wrap:wrap}
.sec-head h2{font-size:clamp(30px,4.2vw,48px);max-width:17ch}
.sec-head .note{color:var(--stone);max-width:34ch;font-size:15.5px}
.label{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--signal);margin-bottom:14px}

/* page hero (interior) */
.page-hero{padding:74px 0 58px;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(38px,5.6vw,66px);max-width:18ch}
.page-hero p{color:var(--stone);font-size:clamp(17px,2vw,20px);max-width:56ch;margin-top:22px}
.crumb{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--stone);margin-bottom:22px}
.crumb a{color:var(--signal)}

/* home hero */
.hero{padding:96px 0 84px;border-bottom:1px solid var(--line)}
.hero .kicker{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--signal);margin-bottom:26px}
.hero h1{font-size:clamp(42px,6.6vw,82px);max-width:15ch}
.hero h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.hero p.sub{font-size:clamp(18px,2.2vw,22px);color:var(--stone);max-width:640px;margin:28px 0 36px;line-height:1.5}
.hero .cta-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.fineprint{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;color:var(--stone);margin-top:34px;display:flex;gap:22px;flex-wrap:wrap}
.fineprint span{display:flex;align-items:center;gap:7px}
.tick{color:var(--signal);font-weight:700}
.reveal{opacity:0;transform:translateY(14px);animation:rise .8s cubic-bezier(.2,.7,.2,1) forwards}
.reveal.d1{animation-delay:.05s}.reveal.d2{animation-delay:.18s}.reveal.d3{animation-delay:.32s}.reveal.d4{animation-delay:.46s}
@keyframes rise{to{opacity:1;transform:none}}

/* dark band */
.band{background:var(--petrol);color:#C9D4DF}
.band h2,.band h1{color:#fff}.band .note{color:#93A3B8}.band .label{color:var(--signal-soft)}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line-dark);border-radius:8px;overflow:hidden}
.stat{padding:34px 30px;border-right:1px solid var(--line-dark)}
.stat:last-child{border-right:none}
.stat .n{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:52px;line-height:1;letter-spacing:-.02em;color:var(--signal-soft)}
.stat .t{margin-top:12px;font-size:15px;color:#B9C4D0;line-height:1.45}
.src{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:11px;color:#64748B;margin-top:18px}
@media(max-width:760px){.stat-grid{grid-template-columns:1fr}.stat{border-right:none;border-bottom:1px solid var(--line-dark)}.stat:last-child{border-bottom:none}}

/* ladder / steps */
.ladder{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{border:1px solid var(--line);border-radius:10px;padding:32px 28px;background:#fff;display:flex;flex-direction:column}
.step .idx{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--signal);margin-bottom:20px}
.step h3{font-size:27px;margin-bottom:6px}
.step .role{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12px;color:var(--stone);margin-bottom:16px}
.step p{font-size:15.5px;color:#36414d;margin-bottom:20px;flex-grow:1}
.step .meta{border-top:1px solid var(--line);padding-top:16px;font-size:13.5px;color:var(--stone);display:flex;justify-content:space-between;gap:10px}
.step .meta b{color:var(--ink);font-weight:600}
@media(max-width:820px){.ladder{grid-template-columns:1fr}}

/* two-col cards */
.caps{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.cap{border:1px solid var(--line);border-radius:10px;padding:30px;background:#fff}
.cap h3{font-size:24px;margin-bottom:12px}
.cap p{font-size:15.5px;color:#36414d;margin-bottom:16px}
.cap ul{list-style:none}
.cap li{font-size:14.5px;color:#36414d;padding-left:20px;position:relative;margin-bottom:8px}
.cap li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;background:var(--signal);border-radius:2px}
@media(max-width:760px){.caps{grid-template-columns:1fr}}

/* solution rows */
.sol{border-top:1px solid var(--line)}
.sol-row{display:grid;grid-template-columns:230px 1fr 200px;gap:30px;padding:30px 0;border-bottom:1px solid var(--line);align-items:baseline}
.sol-row h3{font-size:23px}.sol-row p{font-size:15px;color:#36414d}
.sol-row .out{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;color:var(--stone);line-height:1.5}
@media(max-width:820px){.sol-row{grid-template-columns:1fr;gap:8px}}

/* deep service block */
.svc{border-top:1px solid var(--line);padding:52px 0;display:grid;grid-template-columns:1fr 1.4fr;gap:44px}
.svc .l h2{font-size:32px;margin-bottom:10px}
.svc .l .tagmono{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--signal)}
.svc .l .facts{margin-top:20px;font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:13px;color:var(--stone)}
.svc .l .facts div{padding:7px 0;border-top:1px solid var(--line)}
.svc .r p{color:#36414d;margin-bottom:16px}
.svc .r h4{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);margin:20px 0 10px}
.svc .r ul{list-style:none}
.svc .r li{padding-left:20px;position:relative;margin-bottom:9px;color:#36414d;font-size:15px}
.svc .r li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;background:var(--signal);border-radius:2px}
@media(max-width:820px){.svc{grid-template-columns:1fr;gap:20px}}

/* flow + price */
.work{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.flow{list-style:none;counter-reset:f}
.flow li{counter-increment:f;position:relative;padding:0 0 26px 52px;border-left:1px solid var(--line);margin-left:14px}
.flow li:last-child{border-left:1px solid transparent;padding-bottom:0}
.flow li:before{content:counter(f);position:absolute;left:-15px;top:-4px;width:30px;height:30px;background:var(--grad);color:#fff;border-radius:50%;display:grid;place-items:center;font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:13px}
.flow h3{font-size:21px;margin-bottom:4px}.flow p{font-size:14.5px;color:#36414d}
.price{background:var(--paper-2);border:1px solid var(--line);border-radius:10px;padding:30px}
.price h3{font-size:22px;margin-bottom:18px}
.prow{display:flex;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.prow:last-child{border-bottom:none}.prow .k{color:var(--ink);font-weight:600}
.prow .v{font-family:"Space Grotesk",sans-serif;font-weight:500;color:var(--stone);text-align:right;font-size:13px}
.price .kick{font-size:13.5px;color:var(--stone);margin-top:18px;font-style:italic}
@media(max-width:820px){.work{grid-template-columns:1fr;gap:32px}}

/* about */
.about{background:var(--petrol);color:#C9D4DF}
.about h2{color:#fff}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.about p{color:#C9D4DF;font-size:16.5px;margin-bottom:18px;max-width:52ch}
.beliefs{list-style:none;border-top:1px solid var(--line-dark)}
.beliefs li{padding:18px 0;border-bottom:1px solid var(--line-dark);font-size:16px;color:#C9D4DF;display:flex;gap:14px}
.beliefs li .m{font-family:"Space Grotesk",sans-serif;font-weight:700;color:var(--signal-soft);font-size:13px;padding-top:3px}
@media(max-width:760px){.about-grid{grid-template-columns:1fr;gap:28px}}

/* faq */
.faq{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{list-style:none;cursor:pointer;padding:22px 0;font-size:19px;font-family:"Space Grotesk",sans-serif;font-weight:600;display:flex;justify-content:space-between;gap:20px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font-family:"Space Grotesk",sans-serif;color:var(--signal);font-size:22px}
.faq details[open] summary:after{content:"–"}
.faq p{color:#36414d;font-size:15.5px;padding:0 0 22px;max-width:70ch}

/* prose / article */
.prose{max-width:680px;margin:0 auto}
.prose p{margin-bottom:22px;color:#26303d;font-size:18px;line-height:1.7}
.prose h2{font-size:30px;margin:44px 0 16px}
.prose h3{font-size:23px;margin:34px 0 12px}
.prose ul,.prose ol{margin:0 0 22px 22px;color:#26303d}
.prose li{margin-bottom:10px;font-size:17px;line-height:1.6}
.prose blockquote{border-left:3px solid var(--signal);padding:6px 0 6px 22px;margin:26px 0;font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:22px;line-height:1.35;color:var(--ink)}
.prose .meta{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;letter-spacing:.03em;text-transform:uppercase;color:var(--stone);margin-bottom:8px}

/* post list */
.posts{border-top:1px solid var(--line)}
.post{display:grid;grid-template-columns:150px 1fr;gap:30px;padding:30px 0;border-bottom:1px solid var(--line);align-items:baseline}
.post .date{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;color:var(--stone)}
.post h3{font-size:25px;margin-bottom:8px}
.post p{color:#36414d;font-size:15.5px;max-width:60ch}
.post .tag{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--signal);margin-top:10px;display:inline-block}
@media(max-width:640px){.post{grid-template-columns:1fr;gap:6px}}

/* contact */
.cform{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:640px}
.cform .full{grid-column:1/-1}
.cform label{display:block;font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:var(--stone);margin-bottom:7px}
.cform input,.cform select,.cform textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:7px;background:#fff;font-family:inherit;font-size:15px;color:var(--ink)}
.cform textarea{min-height:130px;resize:vertical}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:2px solid var(--signal);outline-offset:1px;border-color:transparent}
@media(max-width:560px){.cform{grid-template-columns:1fr}}

/* callout / cta band */
.cta-band{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;padding:80px 0}
.cta-band h2{font-size:clamp(28px,4.2vw,44px);max-width:20ch;margin:0 auto 18px}
.cta-band p{color:var(--stone);max-width:46ch;margin:0 auto 28px}
.cta-band .cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.final{text-align:center;padding:104px 0}
.final h2{font-size:clamp(34px,5.2vw,60px);max-width:18ch;margin:0 auto 22px}
.final p{color:var(--stone);max-width:48ch;margin:0 auto 34px;font-size:18px}
.final .cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* footer */
footer{background:var(--ink);color:#93A3B8;padding:64px 0 40px;font-size:14px}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px;padding-bottom:44px;border-bottom:1px solid var(--line-dark)}
footer h4{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#C9D4DF;margin-bottom:16px}
.fcol a{display:block;color:#93A3B8;margin-bottom:10px;transition:color .15s}
.fcol a:hover{color:#fff}
.fbrand-logo{height:48px;width:auto;display:block;margin-bottom:16px}
.fbrand-tag{max-width:34ch;color:#93A3B8}
.fbot{display:flex;justify-content:space-between;gap:18px;padding-top:26px;flex-wrap:wrap;font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:11.5px;color:#64748B}
.fbot a{color:#64748B}
@media(max-width:820px){.fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fgrid{grid-template-columns:1fr}}

a.btn:focus-visible,nav.links a:focus-visible,footer a:focus-visible,.faq summary:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.dot{box-shadow:none}}

/* ===== multi-page services: dropdown nav + hub cards ===== */
.navitem{position:relative;display:flex;align-items:center}
.navitem .navtop{font-size:15px;font-weight:500;color:#C9D4DF;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.navitem .navtop:after{content:"";width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-3px;opacity:.55}
.navitem:hover .navtop,.navitem:focus-within .navtop,.navitem .navtop[aria-current="page"]{color:#fff}
.navitem .navtop[aria-current="page"]{border-bottom:2px solid var(--signal-soft);padding-bottom:2px}
.submenu{position:absolute;top:100%;left:-14px;min-width:330px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 40px rgba(15,23,42,.12);padding:14px;display:none;flex-direction:column;gap:1px;z-index:60}
.navitem:hover .submenu,.navitem:focus-within .submenu{display:flex}
.submenu .subhead{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--signal);margin:12px 8px 5px}
.submenu .subhead:first-child{margin-top:2px}
nav.links .submenu a{padding:9px 8px;border-radius:7px;font-size:14.5px;font-weight:600;color:var(--ink)}
nav.links .submenu a:hover{background:var(--paper-2);color:var(--signal)}
@media(max-width:900px){
  .navitem{flex-direction:column;align-items:flex-start;width:100%}
  .navitem .navtop{padding:12px 0;width:100%}
  .navitem .navtop:after{display:none}
  .submenu{position:static;display:flex;border:none;box-shadow:none;padding:0 0 10px 10px;min-width:0;background:transparent}
  nav.links .submenu a{padding:8px 0}
}
a.cap{display:block;color:inherit;transition:border-color .15s,box-shadow .15s}
a.cap:hover{border-color:var(--signal);box-shadow:0 12px 30px rgba(15,23,42,.08)}
.cap .more{display:inline-block;margin-top:14px;font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:13px;color:var(--signal)}
.cardgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media(max-width:760px){.cardgrid{grid-template-columns:1fr}}
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.pillar{border:1px solid var(--line);border-radius:12px;padding:40px 34px;background:#fff;display:flex;flex-direction:column}
.pillar .label{margin-bottom:10px}
.pillar h2{font-size:30px;margin-bottom:12px}
.pillar p{color:#36414d;margin-bottom:18px;font-size:16px}
.pillar ul{list-style:none;margin-bottom:22px;flex-grow:1}
.pillar li{padding-left:20px;position:relative;margin-bottom:10px;font-size:15px;color:#36414d}
.pillar li:before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;background:var(--signal);border-radius:2px}
@media(max-width:760px){.pillars{grid-template-columns:1fr}}

.fbrand-slogan{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:21px;color:#fff;margin-bottom:8px;letter-spacing:-.01em}

@media(max-width:900px){
  nav.links{background:#1F2733;border-bottom:1px solid var(--line-dark)}
  nav.links a{color:#C9D4DF}
  nav.links a:hover,nav.links a[aria-current="page"]{color:#fff}
  nav.links .submenu a{color:#C9D4DF}
  nav.links .submenu a:hover{background:transparent;color:#fff}
}

/* ===== CBS-style homepage components ===== */
.statbig{background:var(--petrol);color:#fff}
.statbig .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding-top:70px;padding-bottom:70px}
.statbig .cell{padding:0 28px;border-left:1px solid var(--line-dark)}
.statbig .cell:first-child{border-left:none;padding-left:0}
.statbig .n{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:54px;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.statbig .t{margin-top:12px;color:#C2C8D0;font-size:14.5px;line-height:1.5}
@media(max-width:820px){.statbig .wrap{grid-template-columns:1fr 1fr;gap:34px 0}.statbig .cell{border-left:none;padding-left:0}}
@media(max-width:460px){.statbig .wrap{grid-template-columns:1fr}}

/* feature row (signature method) */
.feature{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}
.feature .ftext h2{font-size:clamp(28px,3.8vw,42px);margin-bottom:16px}
.feature .ftext p{color:#36414d;font-size:16.5px;margin-bottom:18px;max-width:52ch}
.feature .panel{background:var(--petrol);border-radius:16px;padding:40px;color:#fff}
.feature .panel .step{display:flex;gap:16px;padding:16px 0;background:transparent;border:none;border-top:1px solid var(--line-dark);border-radius:0}
.feature .panel .step:first-child{border-top:none}
.feature .panel .step .k{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:15px;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;min-width:26px}
.feature .panel .step h4{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:16px;margin-bottom:2px}
.feature .panel .step p{color:#C2C8D0;font-size:14px;margin:0}
@media(max-width:820px){.feature{grid-template-columns:1fr;gap:30px}}

/* scenario / story cards */
.scards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.scard{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.scard .top{background:var(--grad);height:8px}
.scard .body{padding:28px 26px;display:flex;flex-direction:column;flex-grow:1}
.scard .tag{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--signal);margin-bottom:10px}
.scard h3{font-size:21px;margin-bottom:8px}
.scard p{color:#36414d;font-size:14.5px;flex-grow:1}
.scard .res{margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:13.5px;color:var(--stone)}
@media(max-width:820px){.scards{grid-template-columns:1fr}}
.illus-note{font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:12.5px;color:var(--stone);margin-top:20px}

/* ===== bold 4-tile hero ===== */
.hero-x{background:#14181F;color:#fff;position:relative;overflow:hidden;padding:88px 0 90px}
.hero-x:before{content:"";position:absolute;top:-180px;right:-120px;width:620px;height:620px;background:radial-gradient(circle,rgba(234,88,12,.40),transparent 62%);pointer-events:none}
.hero-x:after{content:"";position:absolute;bottom:-220px;left:-140px;width:520px;height:520px;background:radial-gradient(circle,rgba(249,115,22,.18),transparent 65%);pointer-events:none}
.hero-x .wrap{position:relative;z-index:1}
.hero-x .kicker{font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--signal-soft);margin-bottom:22px}
.hero-x h1{font-size:clamp(46px,7.4vw,92px);line-height:1;letter-spacing:-.02em;color:#fff;max-width:17ch}
.hero-x h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.hero-x p.sub{color:#C2C8D0;font-size:clamp(17px,2vw,21px);max-width:620px;margin:26px 0 0;line-height:1.5}
.htiles{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:56px}
.htile{background:#1C222D;border:1px solid #2A333F;border-radius:18px;padding:26px 24px 24px;color:#fff;display:flex;flex-direction:column;min-height:214px;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.htile:hover,.htile:focus-visible{transform:translateY(-6px);border-color:var(--signal);background:#222a36;outline:none}
.htile .num{font-family:"Space Grotesk",sans-serif;font-weight:700;font-size:13px;letter-spacing:.06em;background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.htile h3{font-size:21px;margin:auto 0 8px;line-height:1.15}
.htile p{color:#AEB6C2;font-size:13.5px;line-height:1.5}
.htile .arrow{margin-top:16px;font-family:"Space Grotesk",sans-serif;font-weight:600;font-size:13px;color:var(--signal-soft);display:inline-flex;align-items:center;gap:6px}
.htile:hover .arrow{color:#fff}
@media(max-width:860px){.htiles{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.htiles{grid-template-columns:1fr}.htile{min-height:0}}
