/* ===== NovaSecOps — styles (violet/indigo SOC+NOC theme) ===== */
:root{
  --bg:#0e1018; --bg2:#13151f; --panel:#191c28; --panel2:#14161f;
  --line:#262a39; --line2:#353b50;
  --txt:#eef0f7; --muted:#9aa1bd; --muted2:#6f7693;
  --accent:#b39ef0; --accent2:#7c5fe0; --danger:#ff6b8a;
  --grad:linear-gradient(135deg,var(--accent),var(--accent2));
  --btn-txt:#100c1f;
  --radius:16px; --radius-sm:12px; --maxw:1180px;
  --shadow:0 24px 60px rgba(0,0,0,.5);
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  background:var(--bg); color:var(--txt); line-height:1.65;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
h1,h2,h3,h4,h5{font-family:"Sora","Inter",sans-serif; line-height:1.15; font-weight:700}
a{color:inherit; text-decoration:none}
img,svg{display:block; max-width:100%}
.container{width:100%; max-width:var(--maxw); margin:0 auto; padding:0 22px}
.grad{background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent}
::selection{background:rgba(179,158,240,.3)}

/* ===== Buttons ===== */
.btn{display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  font-weight:700; font-family:"Sora",sans-serif; font-size:.95rem;
  padding:.7rem 1.25rem; border-radius:999px; border:1px solid transparent;
  cursor:pointer; transition:transform .18s var(--ease), box-shadow .18s, background .2s, border-color .2s; white-space:nowrap}
.btn--primary{background:linear-gradient(135deg,#8d6ff1,#6234c6); color:#fff; border:1px solid rgba(255,255,255,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25), 0 10px 26px rgba(108,70,200,.38); letter-spacing:.01em}
.btn--primary:hover{transform:translateY(-2px); box-shadow:inset 0 1px 0 rgba(255,255,255,.28), 0 16px 36px rgba(108,70,200,.55)}
.btn--ghost{background:transparent; color:var(--txt); border-color:var(--line2)}
.btn--ghost:hover{border-color:var(--accent); color:var(--accent)}
.btn--lg{padding:.9rem 1.7rem; font-size:1rem}
.btn--block{width:100%}

/* ===== Top bar ===== */
.topbar{background:#0a0c12; border-bottom:1px solid var(--line); font-size:.82rem; color:var(--muted)}
.topbar__inner{display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:.5rem 22px; flex-wrap:wrap}
.topbar a{color:var(--accent)}

/* ===== Header ===== */
.header{position:sticky; top:0; z-index:50; background:rgba(14,16,24,.72);
  backdrop-filter:saturate(140%) blur(12px); border-bottom:1px solid transparent; transition:border-color .3s, background .3s}
.header.is-stuck{border-bottom-color:var(--line); background:rgba(10,12,18,.92)}
.header__inner{display:flex; align-items:center; gap:1.5rem; padding:.8rem 22px}
.brand{display:flex; align-items:center; gap:.6rem; font-family:"Sora",sans-serif; font-weight:800; font-size:1.1rem}
.brand__mark{display:grid; place-items:center; filter:drop-shadow(0 4px 10px rgba(124,95,224,.4))}
.brand__name{white-space:nowrap}
.brand__name span{color:var(--accent)}
.nav{display:flex; gap:1.5rem; margin-left:auto; font-size:.95rem; font-weight:500}
.nav a{color:var(--muted); transition:color .2s; position:relative; padding:.2rem 0}
.nav a:hover{color:var(--txt)}
.nav a::after{content:""; position:absolute; left:0; bottom:-3px; height:2px; width:0; background:var(--grad); transition:width .25s var(--ease)}
.nav a:hover::after{width:100%}
.header__cta{margin-left:.4rem; display:flex; align-items:center; gap:1rem}
.header__login{color:var(--muted); font-weight:600; font-size:.92rem; white-space:nowrap}
.header__login:hover{color:var(--txt)}
.nav-toggle{display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:8px; margin-left:auto}
.nav-toggle span{width:24px; height:2px; background:var(--txt); border-radius:2px; transition:.25s}
.nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.is-open span:nth-child(2){opacity:0}
.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ===== Hero ===== */
.hero{position:relative; overflow:hidden; padding:clamp(3rem,7vw,5.5rem) 0 clamp(3rem,6vw,5rem)}
.hero__grid{position:absolute; inset:0; z-index:0;
  background-image:linear-gradient(rgba(179,158,240,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(124,95,224,.05) 1px,transparent 1px);
  background-size:46px 46px; mask-image:radial-gradient(120% 80% at 70% 0%,#000 30%,transparent 80%)}
.hero__glow{position:absolute; z-index:0; width:760px; height:760px; right:-220px; top:-300px; border-radius:50%;
  background:radial-gradient(circle,rgba(124,95,224,.2),transparent 60%); filter:blur(20px); pointer-events:none}
.hero__inner{position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center}
.eyebrow{display:inline-flex; align-items:center; gap:.5rem; font-size:.82rem; font-weight:600; letter-spacing:.04em;
  text-transform:uppercase; color:var(--accent); background:rgba(179,158,240,.08); border:1px solid rgba(179,158,240,.25);
  padding:.4rem .8rem; border-radius:999px; margin-bottom:1.4rem}
.pulse{width:8px; height:8px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 0 rgba(179,158,240,.6); animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(179,158,240,.55)}70%{box-shadow:0 0 0 10px rgba(179,158,240,0)}100%{box-shadow:0 0 0 0 rgba(179,158,240,0)}}
.hero h1{font-size:clamp(2.1rem,4.6vw,3.4rem); font-weight:800; letter-spacing:-.02em}
.hero__rotator{font-family:"Sora",sans-serif; font-weight:700; font-size:clamp(1.05rem,2.1vw,1.55rem);
  margin:.7rem 0 0; min-height:1.7em; color:var(--accent); letter-spacing:-.01em}
.hero__rotator .rot{display:inline-block; transition:opacity .35s var(--ease), transform .35s var(--ease)}
.hero__rotator .rot::before{content:"› "; color:var(--accent2)}
.hero__rotator .rot.out{opacity:0; transform:translateY(8px)}
.lead{color:var(--muted); font-size:clamp(1rem,1.4vw,1.16rem); margin:1.2rem 0 1.8rem; max-width:38em}
.lead b{color:var(--txt); font-weight:600}
.hero__actions{display:flex; gap:.9rem; flex-wrap:wrap}
.hero__badges{list-style:none; display:flex; gap:1.2rem 1.6rem; flex-wrap:wrap; margin-top:1.8rem; color:var(--muted); font-size:.9rem}
.hero__badges li{white-space:nowrap}

/* ===== Hero dashboard (single pane of glass) ===== */
.hero__dash{background:linear-gradient(180deg,#1a1d2a,#13151e); border:1px solid var(--line2); border-radius:var(--radius);
  box-shadow:var(--shadow); overflow:hidden}
.dash__bar{display:flex; align-items:center; gap:.5rem; padding:.7rem 1rem; background:#171a26; border-bottom:1px solid var(--line)}
.dash__dot{width:10px; height:10px; border-radius:50%; background:#3a4056}
.dash__dot:nth-child(1){background:#ff6b8a}.dash__dot:nth-child(2){background:#e8c75a}.dash__dot:nth-child(3){background:#5fd39a}
.dash__title{font-family:"Sora"; font-size:.78rem; color:var(--muted); margin-left:.4rem; letter-spacing:.02em}
.dash__live{margin-left:auto; display:inline-flex; align-items:center; gap:.4rem; font-size:.72rem; font-weight:700; color:#5fd39a; letter-spacing:.08em}
.dash__live i{width:7px; height:7px; border-radius:50%; background:#5fd39a; box-shadow:0 0 8px #5fd39a; animation:nodePulse 1.6s infinite}
.dash__dev{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem 1rem .4rem}
.dash__devname{display:inline-flex; align-items:center; gap:.5rem; font-weight:600; font-size:.92rem}
.dash__devname .mini{width:18px; height:18px; stroke:var(--accent); fill:none; stroke-width:1.7}
.risk{font-family:"Sora"; font-size:.72rem; font-weight:700; padding:.25rem .6rem; border-radius:999px; letter-spacing:.03em}
.risk--crit{color:#ff8aa1; background:rgba(255,107,138,.12); border:1px solid rgba(255,107,138,.35)}
.dash__vitals{display:grid; grid-template-columns:repeat(4,1fr); gap:.6rem; padding:.6rem 1rem}
.vit{background:#161922; border:1px solid var(--line); border-radius:10px; padding:.6rem .7rem}
.vit__k{display:block; font-size:.66rem; letter-spacing:.08em; color:var(--muted2); text-transform:uppercase}
.vit b{font-family:"Sora"; font-size:1.25rem; font-weight:800}
.vit .b-sm{font-size:1rem}
.vit small{color:var(--muted2); font-size:.66rem; margin-left:.2rem}
.bar{display:block; height:5px; border-radius:999px; background:#0e1018; margin-top:.45rem; overflow:hidden}
.bar i{display:block; height:100%; width:var(--w); background:var(--grad); border-radius:999px; transform-origin:left; animation:grow 1.1s var(--ease) both}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.dash__feed{padding:.4rem 1rem .2rem; display:grid; gap:.45rem}
.dash__actions{display:flex; flex-wrap:wrap; gap:.45rem; padding:.7rem 1rem 1rem}
.chip{font-size:.74rem; font-weight:600; color:var(--muted); border:1px solid var(--line2); background:#161922; padding:.34rem .7rem; border-radius:999px}

/* shared event rows */
.evt{display:flex; align-items:center; gap:.7rem; font-size:.84rem; color:var(--txt); background:#161922; border:1px solid var(--line);
  border-radius:9px; padding:.5rem .7rem}
.evt .sev{width:8px; height:8px; border-radius:50%; flex:none}
.evt__msg{flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.evt__t{color:var(--muted2); font-size:.74rem; font-variant-numeric:tabular-nums}
.evt--crit .sev{background:#ff5d7d; box-shadow:0 0 8px #ff5d7d}
.evt--high .sev{background:#ffa24d; box-shadow:0 0 8px #ffa24d}
.evt--med .sev{background:#e8c75a}
.evt--ok .sev{background:#5fd39a}
.cnode{animation:nodePulse 2.4s ease-in-out infinite}
@keyframes nodePulse{0%,100%{opacity:.45}50%{opacity:1}}

/* ===== Trust ===== */
.trust{border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--bg2)}
.trust__inner{display:flex; align-items:center; gap:2rem; padding:1.2rem 22px; flex-wrap:wrap}
.trust__inner>span{color:var(--muted2); font-size:.85rem; white-space:nowrap}
.trust__logos{display:flex; gap:2rem; flex-wrap:wrap; flex:1; justify-content:space-between}
.trust__logos span{font-family:"Sora"; font-weight:700; color:#525a78; font-size:1.05rem; letter-spacing:.02em}

/* ===== Sections ===== */
.section{padding:clamp(3.5rem,7vw,6rem) 0}
.section--alt{background:var(--bg2); border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
.section__head{max-width:680px; margin:0 auto 3rem; text-align:center}
.kicker{display:inline-block; font-size:.8rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--accent); margin-bottom:.8rem}
.kicker--light{color:#d8ccfb}
.section__head h2{font-size:clamp(1.7rem,3.4vw,2.5rem); letter-spacing:-.02em}
.section__head p{color:var(--muted); margin-top:.9rem}

/* ===== Service cards ===== */
.cards-3{display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem}
.svc{position:relative; background:linear-gradient(180deg,var(--panel),var(--panel2)); border:1px solid var(--line);
  border-radius:var(--radius); padding:2rem 1.7rem; transition:transform .25s var(--ease), border-color .25s, box-shadow .25s}
.svc:hover{transform:translateY(-6px); border-color:var(--line2); box-shadow:var(--shadow)}
.svc--featured{border-color:rgba(179,158,240,.45); box-shadow:0 0 0 1px rgba(179,158,240,.15),0 20px 50px rgba(0,0,0,.45)}
.svc__tag{position:absolute; top:-12px; right:18px; background:var(--grad); color:var(--btn-txt); font-size:.72rem; font-weight:700;
  padding:.3rem .7rem; border-radius:999px; font-family:"Sora"}
.svc__pill{display:inline-block; font-size:.68rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  color:var(--accent); border:1px solid rgba(179,158,240,.35); border-radius:999px; padding:.2rem .55rem; margin-bottom:.6rem}
.svc__icon{width:54px; height:54px; border-radius:14px; display:grid; place-items:center; margin-bottom:1rem;
  background:rgba(179,158,240,.1); border:1px solid rgba(179,158,240,.25)}
.svc__icon svg{width:28px; height:28px; fill:none; stroke:var(--accent); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round}
.svc h3{font-size:1.22rem; margin-bottom:.6rem}
.svc>p{color:var(--muted); font-size:.95rem}
.ticks{list-style:none; margin:1.1rem 0 1.4rem; display:grid; gap:.5rem}
.ticks li{position:relative; padding-left:1.5rem; color:var(--muted); font-size:.9rem}
.ticks li::before{content:"✔"; position:absolute; left:0; color:var(--accent); font-size:.85rem}
.link-arrow{font-weight:600; color:var(--accent); font-family:"Sora"; font-size:.92rem}
.link-arrow:hover{color:var(--accent2)}

/* ===== Monitoring tile grid ===== */
.tile-group{margin-bottom:2.4rem}
.tile-group:last-child{margin-bottom:0}
.tile-group__title{display:flex; align-items:center; gap:.6rem; font-size:1rem; font-family:"Sora"; margin-bottom:1rem;
  padding-bottom:.6rem; border-bottom:1px solid var(--line)}
.tile-group__title small{font-size:.66rem; font-weight:700; letter-spacing:.1em; color:var(--accent);
  border:1px solid rgba(179,158,240,.35); border-radius:999px; padding:.15rem .5rem}
.tiles{display:grid; grid-template-columns:repeat(6,1fr); gap:.85rem}
.tile{display:flex; flex-direction:column; gap:.35rem; background:var(--panel); border:1px solid var(--line);
  border-radius:var(--radius-sm); padding:1.1rem 1rem; transition:transform .2s var(--ease), border-color .2s, background .2s}
.tile:hover{transform:translateY(-4px); border-color:var(--accent); background:#1d2030}
.tile__ic{width:42px; height:42px; border-radius:11px; display:grid; place-items:center; margin-bottom:.4rem;
  background:rgba(124,95,224,.12); border:1px solid rgba(124,95,224,.25)}
.tile__ic svg{width:22px; height:22px; stroke:var(--accent); fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round}
.tile b{font-family:"Sora"; font-size:.92rem; font-weight:600}
.tile span{color:var(--muted2); font-size:.78rem; line-height:1.45}

/* ===== Platform / console ===== */
.platform{display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center}
.platform__copy h2{font-size:clamp(1.6rem,3vw,2.2rem); margin-bottom:.9rem}
.platform__copy>p{color:var(--muted)}
.console{background:linear-gradient(180deg,#1a1d2a,#13151e); border:1px solid var(--line2); border-radius:var(--radius);
  box-shadow:var(--shadow); overflow:hidden}
.console__bar{display:flex; align-items:center; gap:.5rem; padding:.7rem 1rem; background:#171a26; border-bottom:1px solid var(--line)}
.console__dot{width:10px; height:10px; border-radius:50%; background:#3a4056}
.console__dot:nth-child(1){background:#ff6b8a}.console__dot:nth-child(2){background:#e8c75a}.console__dot:nth-child(3){background:#5fd39a}
.console__title{font-family:"Sora"; font-size:.78rem; color:var(--muted); margin-left:.4rem; letter-spacing:.02em}
.console__live{margin-left:auto; display:inline-flex; align-items:center; gap:.4rem; font-size:.72rem; font-weight:700; color:#5fd39a; letter-spacing:.08em}
.console__live i{width:7px; height:7px; border-radius:50%; background:#5fd39a; box-shadow:0 0 8px #5fd39a; animation:nodePulse 1.6s infinite}
.console__body{padding:.8rem 1rem; display:grid; gap:.55rem}
.console__foot{display:flex; justify-content:space-between; gap:.5rem; padding:.8rem 1rem; border-top:1px solid var(--line); font-size:.78rem; color:var(--muted)}
.console__foot b{color:var(--accent); font-family:"Sora"}

/* ===== Stats ===== */
.stats{background:linear-gradient(120deg,#161826,#1a1726); border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
.stats__grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; padding:3rem 22px; text-align:center}
.stat b{font-family:"Sora"; font-size:clamp(1.8rem,3.5vw,2.6rem); font-weight:800; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent}
.stat span{display:block; color:var(--muted); font-size:.9rem; margin-top:.3rem}

/* ===== Why us ===== */
.why{display:grid; grid-template-columns:.9fr 1.1fr; gap:3rem; align-items:center}
.why__media{display:flex; justify-content:center}
.orbit{position:relative; width:300px; height:300px; display:grid; place-items:center}
.orbit__core{width:96px; height:96px; border-radius:50%; display:grid; place-items:center; font-size:2.6rem;
  background:radial-gradient(circle at 30% 30%,#2a2447,#141121); border:1px solid var(--line2); box-shadow:0 0 60px rgba(124,95,224,.3); z-index:2}
.orbit__ring{position:absolute; inset:0; border:1px dashed var(--line2); border-radius:50%; animation:spin 22s linear infinite}
.orbit__node{position:absolute; font-family:"Sora"; font-weight:700; font-size:.85rem; color:var(--btn-txt); background:var(--grad);
  padding:.45rem .8rem; border-radius:999px; box-shadow:0 8px 20px rgba(0,0,0,.4)}
.orbit__node.n1{top:6%; left:50%; transform:translateX(-50%)}
.orbit__node.n2{bottom:14%; left:2%}
.orbit__node.n3{bottom:14%; right:2%}
@keyframes spin{to{transform:rotate(360deg)}}
.why__copy h2{font-size:clamp(1.7rem,3.2vw,2.4rem); margin-bottom:.9rem}
.why__copy>p{color:var(--muted)}
.checklist{list-style:none; margin:1.4rem 0 1.8rem; display:grid; gap:.9rem}
.checklist li{position:relative; padding-left:2rem; color:var(--muted)}
.checklist li b{color:var(--txt)}
.checklist li::before{content:"✔"; position:absolute; left:0; top:0; width:1.4rem; height:1.4rem; display:grid; place-items:center;
  background:rgba(179,158,240,.12); color:var(--accent); border-radius:50%; font-size:.75rem}

/* ===== Steps ===== */
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem}
.step{position:relative; background:var(--panel); border:1px solid var(--line); border-radius:var(--radius-sm); padding:1.8rem 1.5rem}
.step__n{font-family:"Sora"; font-weight:800; font-size:2rem; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; opacity:.9}
.step h4{margin:.4rem 0 .5rem; font-size:1.1rem}
.step p{color:var(--muted); font-size:.9rem}

/* ===== Compliance strip ===== */
.compliance{padding:2.4rem 0; border-bottom:1px solid var(--line)}
.compliance__label{text-align:center; color:var(--muted2); font-size:.85rem; margin-bottom:1.1rem}
.compliance__row{display:flex; flex-wrap:wrap; justify-content:center; gap:.7rem}
.compliance__row span{font-family:"Sora"; font-weight:600; font-size:.85rem; color:var(--muted);
  border:1px solid var(--line2); background:var(--panel); padding:.5rem 1rem; border-radius:999px}

/* ===== Quote ===== */
.quote{max-width:820px; margin:0 auto; text-align:center}
.quote blockquote{font-family:"Sora"; font-size:clamp(1.3rem,2.6vw,1.85rem); font-weight:600; line-height:1.4; letter-spacing:-.01em}
.quote__by{color:var(--muted); margin-top:1.2rem}
.quote__by b{color:var(--accent)}

/* ===== FAQ ===== */
.faq{max-width:780px; margin:0 auto; display:grid; gap:.8rem}
.faq__item{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius-sm); padding:0 1.2rem}
.faq__item summary{cursor:pointer; list-style:none; font-family:"Sora"; font-weight:600; font-size:1.02rem; padding:1.1rem 0;
  display:flex; align-items:center; justify-content:space-between; gap:1rem}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary::after{content:"+"; color:var(--accent); font-size:1.3rem; line-height:1; transition:transform .25s}
.faq__item[open] summary::after{transform:rotate(45deg)}
.faq__item p{color:var(--muted); padding:0 0 1.1rem; font-size:.95rem}

/* ===== CTA / contact ===== */
.cta{padding:clamp(3.5rem,7vw,6rem) 0; background:
  radial-gradient(700px 380px at 12% 0%,rgba(179,158,240,.1),transparent 60%),
  radial-gradient(700px 380px at 100% 100%,rgba(124,95,224,.14),transparent 55%), var(--bg2);
  border-top:1px solid var(--line)}
.cta__inner{display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center}
.cta__copy h2{font-size:clamp(1.8rem,3.4vw,2.5rem); margin-bottom:.8rem}
.cta__copy>p{color:var(--muted)}
.cta__contact{list-style:none; margin-top:1.6rem; display:grid; gap:.7rem; color:var(--muted)}
.cta__contact a{color:var(--accent)}

.contact-form{background:linear-gradient(180deg,var(--panel),var(--panel2)); border:1px solid var(--line);
  border-radius:var(--radius); padding:1.8rem; display:grid; grid-template-columns:1fr 1fr; gap:1rem; box-shadow:var(--shadow)}
.field{display:flex; flex-direction:column; gap:.4rem}
.field--full{grid-column:1 / -1}
.field label{font-size:.82rem; color:var(--muted); font-weight:500}
.field input,.field select,.field textarea{background:#0f111a; border:1px solid var(--line2); color:var(--txt);
  border-radius:10px; padding:.7rem .8rem; font:inherit; font-size:.92rem; transition:border-color .2s, box-shadow .2s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(179,158,240,.18)}
.field textarea{resize:vertical}
.contact-form .btn{grid-column:1 / -1}
.form-note{grid-column:1/-1; font-size:.85rem; color:var(--accent); min-height:1.2em; margin:0; text-align:center}

/* ===== Footer ===== */
.footer{background:#0a0c12; border-top:1px solid var(--line); padding:3rem 0 1.5rem}
.footer__grid{display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:2rem}
.footer__brand p{color:var(--muted2); font-size:.9rem; margin-top:.9rem; max-width:30em}
.footer__addr{color:var(--muted)!important; font-size:.88rem}
.footer__col h5{font-family:"Sora"; font-size:.82rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted2); margin-bottom:.9rem}
.footer__col a{display:block; color:var(--muted); font-size:.92rem; padding:.25rem 0; transition:color .2s}
.footer__col a:hover{color:var(--accent)}
.footer__bar{display:flex; justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap;
  margin-top:2.4rem; padding-top:1.4rem; border-top:1px solid var(--line); color:var(--muted2); font-size:.85rem}

/* ===== Back to top ===== */
.to-top{position:fixed; right:20px; bottom:20px; z-index:40; width:44px; height:44px; border-radius:50%;
  display:grid; place-items:center; background:var(--grad); color:var(--btn-txt); font-size:1.2rem; font-weight:700;
  box-shadow:0 10px 30px rgba(0,0,0,.4); opacity:0; pointer-events:none; transform:translateY(10px); transition:.25s var(--ease)}
.to-top.show{opacity:1; pointer-events:auto; transform:translateY(0)}

/* ===== Reveal animation ===== */
.reveal{opacity:0; transform:translateY(22px); transition:opacity .6s var(--ease), transform .6s var(--ease)}
.reveal.in{opacity:1; transform:none}

/* ===== AI core ===== */
.ai-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem}
.ai-card{background:linear-gradient(180deg,var(--panel),var(--panel2)); border:1px solid var(--line); border-radius:var(--radius-sm); padding:1.6rem; transition:.25s var(--ease)}
.ai-card:hover{transform:translateY(-4px); border-color:var(--accent)}
.ai-card__i{font-size:1.8rem; display:block; margin-bottom:.7rem}
.ai-card h4{font-size:1.05rem; margin-bottom:.4rem}
.ai-card p{color:var(--muted); font-size:.9rem}

/* ===== About / team ===== */
.about{display:grid; grid-template-columns:1.05fr .95fr; gap:3rem; align-items:center}
.about__copy h2{font-size:clamp(1.7rem,3.2vw,2.4rem); margin-bottom:.9rem}
.about__copy>p{color:var(--muted); margin-bottom:.9rem}
.about__stats{display:flex; gap:1.8rem; margin-top:1.4rem; flex-wrap:wrap}
.about__stats b{font-family:"Sora"; font-size:1.7rem; font-weight:800; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; display:block}
.about__stats span{color:var(--muted2); font-size:.82rem}
.team{display:grid; grid-template-columns:1fr 1fr; gap:.9rem}
.expert{display:flex; align-items:center; gap:.8rem; background:var(--panel); border:1px solid var(--line); border-radius:var(--radius-sm); padding:1rem; transition:.2s var(--ease)}
.expert:hover{border-color:var(--line2); transform:translateY(-3px)}
.expert__av{width:46px; height:46px; border-radius:50%; display:grid; place-items:center; flex:none; font-family:"Sora",sans-serif; font-weight:700; font-size:.86rem; letter-spacing:.05em; color:#d3c4f7; background:radial-gradient(circle at 30% 28%,#2c2649,#191331); border:1px solid rgba(179,158,240,.4); box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.expert b{display:block; font-size:.95rem}
.expert span{color:var(--muted2); font-size:.8rem}

/* ===== Testimonials ===== */
.tcards{display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem}
.tcard{background:linear-gradient(180deg,var(--panel),var(--panel2)); border:1px solid var(--line); border-radius:var(--radius); padding:1.7rem; margin:0; transition:.25s var(--ease)}
.tcard:hover{transform:translateY(-5px); border-color:var(--line2); box-shadow:var(--shadow)}
.tcard__stars{color:#f5c451; letter-spacing:2px; margin-bottom:.8rem; font-size:.9rem}
.tcard blockquote{margin:0 0 1.2rem; color:var(--txt); font-size:.98rem; line-height:1.6}
.tcard figcaption{display:flex; align-items:center; gap:.7rem}
.tcard__av{width:44px; height:44px; border-radius:50%; display:grid; place-items:center; flex:none; font-family:"Sora",sans-serif; font-weight:700; font-size:.8rem; letter-spacing:.05em; color:#d3c4f7; background:radial-gradient(circle at 30% 28%,#2c2649,#191331); border:1px solid rgba(179,158,240,.4); box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.tcard figcaption b{display:block; font-size:.9rem}
.tcard figcaption span{color:var(--muted2); font-size:.8rem}
.tcard figcaption .tcard__loc{display:block; color:var(--accent); font-size:.78rem; margin-top:.2rem; font-weight:600}

/* ===== 4-up card grid ===== */
.cards-4{display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem}
.cards-4 .svc{padding:1.7rem 1.4rem}
.cards-4 .svc h3{font-size:1.1rem}
.cards-4 .svc>p{font-size:.9rem}

/* ===== Inline link ===== */
.inline-link{color:var(--accent); font-weight:600; font-family:"Sora",sans-serif; white-space:nowrap}
.inline-link:hover{color:var(--accent2)}

/* ===== Subpage hero ===== */
.subhero{position:relative; overflow:hidden; padding:clamp(3rem,7vw,5rem) 0 clamp(2.5rem,5vw,3.5rem); text-align:center; border-bottom:1px solid var(--line)}
.subhero .container{position:relative; z-index:1}
.subhero h1{font-size:clamp(2rem,4.6vw,3.2rem); letter-spacing:-.02em; max-width:18em; margin:1rem auto .4rem}
.subhero__lead{color:var(--muted); font-size:clamp(1rem,1.5vw,1.18rem); max-width:46em; margin:1rem auto 1.7rem}
.subhero .hero__actions{justify-content:center}
.subhero .hero__badges{justify-content:center; margin-top:1.6rem}
.crumbs{font-size:.82rem; color:var(--muted2)}
.crumbs a{color:var(--accent)}

/* ===== Protocol cards ===== */
.protos{display:grid; grid-template-columns:repeat(4,1fr); gap:.9rem}
.proto{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius-sm); padding:1.1rem 1.2rem; transition:.2s var(--ease)}
.proto:hover{border-color:var(--accent); transform:translateY(-3px); background:#1d2030}
.proto__name{font-family:"Sora",sans-serif; font-weight:700; font-size:1rem; display:flex; align-items:center; gap:.5rem}
.proto__tag{font-size:.62rem; font-weight:700; letter-spacing:.06em; color:var(--accent); border:1px solid rgba(179,158,240,.35); border-radius:999px; padding:.1rem .45rem}
.proto__d{color:var(--muted2); font-size:.82rem; margin-top:.35rem; line-height:1.45}

/* ===== AI report mock ===== */
.report{background:linear-gradient(180deg,#1a1d2a,#13151e); border:1px solid var(--line2); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow)}
.report__bar{display:flex; align-items:center; gap:.5rem; padding:.7rem 1rem; background:#171a26; border-bottom:1px solid var(--line)}
.report__bar .console__dot{width:10px;height:10px;border-radius:50%}
.report__title{font-family:"Sora",sans-serif; font-size:.78rem; color:var(--muted); margin-left:.4rem}
.report__ai{margin-left:auto; font-size:.7rem; font-weight:700; color:var(--accent); letter-spacing:.06em}
.report__sum{display:flex; gap:1.6rem; flex-wrap:wrap; padding:1rem 1.2rem; border-bottom:1px solid var(--line)}
.report__sum div b{display:block; font-family:"Sora",sans-serif; font-size:1.5rem; font-weight:800}
.report__sum div span{color:var(--muted2); font-size:.74rem}
.finding{display:grid; grid-template-columns:auto 1fr auto; gap:.9rem; align-items:center; padding:.75rem 1.2rem; border-bottom:1px solid var(--line)}
.finding:last-child{border-bottom:0}
.finding__t{font-weight:600; font-size:.9rem}
.finding__d{color:var(--muted2); font-size:.78rem; margin-top:.1rem}
.finding__cvss{font-family:"Sora",sans-serif; color:var(--muted); font-size:.82rem; font-variant-numeric:tabular-nums}
.sev-pill{font-family:"Sora",sans-serif; font-size:.66rem; font-weight:700; padding:.22rem .5rem; border-radius:999px; white-space:nowrap}
.sev-crit{color:#ff8aa1; background:rgba(255,107,138,.12); border:1px solid rgba(255,107,138,.35)}
.sev-high{color:#ffb27a; background:rgba(255,162,77,.12); border:1px solid rgba(255,162,77,.3)}
.sev-med{color:#ecd07a; background:rgba(232,199,90,.12); border:1px solid rgba(232,199,90,.3)}
.sev-low{color:#9fe0b5; background:rgba(95,211,154,.12); border:1px solid rgba(95,211,154,.3)}
.report__copy h2{font-size:clamp(1.6rem,3vw,2.2rem); margin-bottom:.9rem}
.report__copy>p{color:var(--muted)}

/* ===== Dashboard showcase ===== */
.dashboard{background:linear-gradient(180deg,#15171f,#101219); border:1px solid var(--line2); border-radius:var(--radius); padding:1.1rem; box-shadow:var(--shadow); overflow:hidden}
.dboard__top{display:grid; grid-template-columns:.85fr 1.3fr 1.45fr; gap:.9rem; margin-bottom:.9rem}
.dpanel{background:#191c26; border:1px solid var(--line); border-radius:12px; padding:1rem; min-width:0}
.dpanel__h{display:flex; align-items:center; gap:.5rem; font-size:.72rem; font-weight:700; letter-spacing:.05em; color:var(--muted2); text-transform:uppercase; margin-bottom:.8rem}
.dcount{margin-left:auto; background:#2a2f40; color:var(--muted); border-radius:999px; padding:.1rem .5rem; font-size:.66rem; font-weight:700}
.posture{display:flex; flex-direction:column; align-items:center; text-align:center}
.disc{width:128px; height:128px; border-radius:50%; display:grid; place-items:center; background:radial-gradient(circle at 35% 30%,#f7a85f,#e8772b); color:#fff; font-family:"Sora",sans-serif; font-weight:800; font-size:2.2rem; box-shadow:0 12px 32px rgba(232,119,43,.35); margin:.5rem 0 .9rem}
.dpanel__meta{color:var(--muted2); font-size:.74rem; line-height:1.5}
.ctrl-list,.act-list{list-style:none; display:grid; gap:.45rem}
.ctrl-list li{display:flex; align-items:center; gap:.5rem; font-size:.78rem; color:var(--muted); background:#14161e; border-left:3px solid #e8a13c; border-radius:6px; padding:.42rem .6rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0}
.tagm{font-size:.6rem; font-weight:700; letter-spacing:.04em; color:#c7b3f0; background:rgba(124,95,224,.18); border-radius:5px; padding:.12rem .4rem; flex:none}
.act-list li{display:flex; align-items:center; gap:.5rem; font-size:.75rem; color:var(--muted); padding:.32rem .2rem; border-bottom:1px solid var(--line); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0}
.act-list li:last-child{border-bottom:0}
.act-t{color:var(--muted2); font-size:.7rem; min-width:52px; flex:none}
.act-list code{font-family:ui-monospace,Consolas,monospace; font-size:.7rem; color:#9fb0cf; overflow:hidden; text-overflow:ellipsis}

.dchips{display:flex; flex-wrap:wrap; gap:.5rem; margin:.9rem 0}
.dchip{font-size:.78rem; font-weight:600; color:var(--muted); border:1px solid var(--line2); background:#191c26; border-radius:8px; padding:.45rem .8rem}

.dstats{display:grid; grid-template-columns:repeat(5,1fr); gap:.8rem; margin-bottom:1.1rem}
.dstat{background:#191c26; border:1px solid var(--line); border-radius:12px; padding:.9rem 1rem; min-width:0}
.dstat--alert{border-color:rgba(255,107,138,.4); box-shadow:0 0 0 1px rgba(255,107,138,.15)}
.dstat__k{display:flex; align-items:center; gap:.4rem; font-size:.64rem; font-weight:700; letter-spacing:.05em; color:var(--muted2); text-transform:uppercase}
.dstat__k::before{content:"●"; color:#5fd39a; font-size:.55rem}
.dstat--alert .dstat__k::before{color:#ff6b8a}
.dstat b{display:block; font-family:"Sora",sans-serif; font-size:1.9rem; font-weight:800; margin:.25rem 0}
.dstat--alert b{color:#ff7a98}
.dstat small{color:var(--muted2); font-size:.72rem}
.dstat .dbar{display:block; height:3px; border-radius:999px; margin-top:.7rem; background:#5fd39a; opacity:.7}
.dstat--alert .dbar{background:#ff6b8a; opacity:.9}

.dmods__h{display:flex; align-items:center; gap:.6rem; font-size:.72rem; font-weight:700; letter-spacing:.05em; color:var(--muted2); text-transform:uppercase; padding-top:.6rem; border-top:1px solid var(--line); margin-bottom:.8rem}
.rt{color:#5fd39a; border:1px solid rgba(95,211,154,.3); border-radius:999px; padding:.1rem .5rem; font-size:.62rem}
.dmods{display:grid; grid-template-columns:repeat(5,1fr); gap:.7rem}
.dmod{display:flex; align-items:center; gap:.6rem; background:#191c26; border:1px solid var(--line); border-radius:10px; padding:.65rem .75rem; min-width:0}
.dmod__ic{width:34px; height:34px; border-radius:9px; display:grid; place-items:center; flex:none; box-shadow:inset 0 1px 0 rgba(255,255,255,.22), 0 2px 6px rgba(0,0,0,.28)}
.dmod__ic svg{width:18px; height:18px; stroke:#fff; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round}
.dchip svg{width:15px; height:15px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; vertical-align:-2px; margin-right:.4rem}
.dmod__b{min-width:0}
.dmod b{display:block; font-size:.82rem; font-family:"Sora",sans-serif; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.dmod span{color:var(--muted2); font-size:.7rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:block}
.mdot{display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:.35rem; vertical-align:middle}
.mdot--ok{background:#5fd39a}.mdot--warn{background:#e8b34a}.mdot--idle{background:#5a6275}.mdot--alert{background:#ff6b8a}

/* ===== Cloud security providers ===== */
.provider{margin-bottom:2.6rem}
.provider:last-child{margin-bottom:0}
.provider__head{display:flex; align-items:center; gap:.9rem; margin-bottom:1.2rem; padding-bottom:.8rem; border-bottom:1px solid var(--line); flex-wrap:wrap}
.prov-chip{font-family:"Sora",sans-serif; font-weight:800; font-size:.82rem; letter-spacing:.02em; padding:.34rem .75rem; border-radius:8px}
.prov-chip--aws{background:#ff9900; color:#1a1205}
.prov-chip--azure{background:#2f9cf4; color:#06121e}
.prov-chip--gcp{background:#4285f4; color:#fff}
.provider__head h3{font-size:1.25rem}
.provider__note{color:var(--muted2); font-size:.84rem; margin-left:auto}
.dgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem}
.dcard{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius-sm); padding:1.3rem; transition:.2s var(--ease)}
.dcard:hover{border-color:var(--line2)}
.dcard h4{font-size:.98rem; margin-bottom:.7rem; color:var(--accent)}
.dcard ul{list-style:none; display:grid; gap:.42rem}
.dcard li{position:relative; padding-left:1.2rem; color:var(--muted); font-size:.85rem; line-height:1.45}
.dcard li::before{content:"›"; position:absolute; left:0; color:var(--accent2); font-weight:700}

/* ===== Product tour (mock windows) ===== */
.tour{display:grid; gap:1.6rem}
.winp{background:linear-gradient(180deg,#1a1d2a,#13151e); border:1px solid var(--line2); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow)}
.winp__bar{display:flex; align-items:center; gap:.6rem; padding:.85rem 1.1rem; background:#171a26; border-bottom:1px solid var(--line); font-family:"Sora",sans-serif; font-weight:700; font-size:.92rem}
.winp__bar .x{margin-left:auto; color:var(--muted2); font-weight:600; font-size:.82rem}
.winp__body{padding:1.2rem}
.winp__body h4{font-family:"Sora",sans-serif; font-size:1rem; margin-bottom:.3rem}
.winp__sub{color:var(--muted2); font-size:.83rem; line-height:1.5; margin-bottom:1rem}
.badge{font-family:"Sora",sans-serif; font-size:.66rem; font-weight:700; padding:.18rem .5rem; border-radius:999px; letter-spacing:.04em}
.badge--ready{color:#7fb8e8; background:rgba(91,140,255,.14); border:1px solid rgba(91,140,255,.3)}
.badge--scan{color:#ff9ab4; background:rgba(255,107,138,.14); border:1px solid rgba(255,107,138,.3)}

.wiz__steps{display:flex; gap:.3rem 1.1rem; flex-wrap:wrap; padding:.85rem 1.1rem; border-bottom:1px solid var(--line); background:#15171f}
.wstep{display:inline-flex; align-items:center; gap:.45rem; font-size:.73rem; font-weight:700; color:var(--muted2); letter-spacing:.03em; text-transform:uppercase}
.wstep i{width:18px; height:18px; border-radius:50%; display:grid; place-items:center; font-size:.64rem; font-style:normal; background:#2a2f40; color:var(--muted)}
.wstep.done{color:#7fd9a6}
.wstep.done i{background:#2e6b4d; color:#bff0d4}
.wstep.active{color:#ff7aa0}
.wstep.active i{background:linear-gradient(135deg,#ff7aa0,#c0436f); color:#fff}

.mcards{display:grid; grid-template-columns:1fr 1fr; gap:.8rem}
.mcard{background:#161922; border:1px solid var(--line); border-radius:10px; padding:1rem; transition:.2s var(--ease)}
.mcard:hover{border-color:var(--line2)}
.mcard b{display:block; font-family:"Sora",sans-serif; font-size:.92rem; margin-bottom:.3rem}
.mcard span{color:var(--muted2); font-size:.8rem; line-height:1.45}
.mcard--on{border-color:var(--accent); background:#1f1b33; box-shadow:0 0 0 1px rgba(179,158,240,.3)}

.checks{display:grid; grid-template-columns:1fr 1fr; gap:.7rem}
.check{display:flex; gap:.7rem; background:#161922; border:1px solid var(--line); border-radius:10px; padding:.8rem; align-items:flex-start}
.check i{width:18px; height:18px; border-radius:5px; border:1px solid var(--line2); flex:none; margin-top:.15rem; position:relative; background:#0f111a}
.check.checked i{background:var(--accent2); border-color:var(--accent2)}
.check.checked i::after{content:"✓"; position:absolute; inset:0; display:grid; place-items:center; color:#fff; font-size:.7rem; font-weight:700}
.check b{display:block; font-size:.86rem; font-family:"Sora",sans-serif}
.check span{color:var(--muted2); font-size:.77rem; line-height:1.4}

.engage__meta{color:var(--muted); font-size:.85rem; margin-bottom:.9rem}
.engage__meta b{color:var(--txt)}
.kv{display:grid; gap:.35rem; font-size:.84rem; color:var(--muted); margin-bottom:1rem}
.kv b{color:var(--txt)}
.fpills{display:flex; gap:.4rem; align-items:center; margin:.4rem 0 1rem; font-size:.72rem; letter-spacing:.06em}
.fpill{font-family:"Sora",sans-serif; font-weight:700; font-size:.7rem; padding:.22rem .5rem; border-radius:6px}
.fpill--c{color:#ff8aa1; background:rgba(255,107,138,.14)}
.fpill--h{color:#ffb27a; background:rgba(255,162,77,.14)}
.fpill--m{color:#9fb6ff; background:rgba(91,140,255,.14)}
.fpill--l{color:#c6b9d6; background:#22202c}
.btnrow{display:flex; flex-wrap:wrap; gap:.5rem}
.mockbtn{font-family:"Sora",sans-serif; font-size:.78rem; font-weight:600; padding:.45rem .8rem; border-radius:8px; border:1px solid var(--line2); background:#161922; color:var(--muted)}
.mockbtn--ai{background:var(--grad); color:#15101f; border-color:transparent}
.mockbtn--blue{background:#27345c; color:#cfe0ff; border-color:#39507f}
.note{color:var(--muted2); font-size:.8rem; margin-top:1rem; text-align:center}

.scanbar{height:9px; background:#0f111a; border:1px solid var(--line); border-radius:999px; overflow:hidden}
.scanbar i{display:block; height:100%; background:linear-gradient(135deg,#ff7aa0,#c0436f); border-radius:999px}
.sevgrid{display:grid; grid-template-columns:repeat(5,1fr); gap:.6rem; margin:1rem 0}
.sevbox{background:#161922; border:1px solid var(--line); border-radius:10px; padding:.7rem; text-align:center}
.sevbox b{font-family:"Sora",sans-serif; font-size:1.4rem; display:block}
.sevbox span{font-size:.62rem; letter-spacing:.07em; color:var(--muted2)}
.scanlog{background:#0b0d14; border:1px solid var(--line); border-radius:10px; padding:.8rem 1rem; font-family:ui-monospace,"Cascadia Code",Consolas,monospace; font-size:.76rem; color:#9fb0cf; display:grid; gap:.35rem}

/* ===== Responsive ===== */
@media (max-width:1040px){ .tiles{grid-template-columns:repeat(4,1fr)} }
@media (max-width:960px){
  .hero__inner,.why,.cta__inner,.platform,.about{grid-template-columns:1fr}
  .platform .console{order:-1}
  .report-row{grid-template-columns:1fr!important}
  .cards-3,.cards-4,.steps,.ai-grid,.tcards,.protos,.dgrid{grid-template-columns:1fr 1fr}
  .stats__grid{grid-template-columns:1fr 1fr}
  .footer__grid{grid-template-columns:1fr 1fr}
  .dboard__top{grid-template-columns:1fr}
  .dstats,.dmods{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:720px){
  .nav,.header__cta{display:none}
  .nav-toggle{display:flex}
  .header.nav-open .nav{display:flex; position:absolute; top:100%; left:0; right:0; flex-direction:column; gap:0;
    background:#11131c; border-bottom:1px solid var(--line); padding:.5rem 22px 1rem}
  .header.nav-open .nav a{padding:.8rem 0; border-bottom:1px solid var(--line)}
  .topbar{display:none}
  .container{padding:0 16px}
  .cards-3,.cards-4,.steps,.contact-form,.dgrid{grid-template-columns:1fr}
  .tiles,.protos{grid-template-columns:repeat(2,1fr)}
  .dash__vitals{grid-template-columns:1fr 1fr}
  .ai-grid,.tcards,.team,.mcards,.checks{grid-template-columns:1fr}
  .dstats,.dmods{grid-template-columns:repeat(2,1fr)}
  .dashboard{padding:.7rem}
  .dchips{gap:.4rem}
  .wiz__steps{gap:.3rem .7rem}
  .why__media{order:-1}
  .trust__logos{gap:1.1rem}
}

@media (max-width:480px){
  .container{padding:0 14px}
  .section{padding:2.6rem 0}
  .hero{padding:2.4rem 0 2.6rem}
  .hero h1,.subhero h1{font-size:1.95rem}
  .section__head{margin-bottom:2rem}
  .section__head h2{font-size:1.5rem}
  .stats__grid,.footer__grid,.tiles,.protos{grid-template-columns:1fr}
  .dstats,.dmods{grid-template-columns:1fr 1fr}
  .hero__badges{gap:.5rem 1rem; font-size:.84rem}
  .hero__actions{gap:.55rem}
  .hero__actions .btn{flex:1 1 100%}
  .btn--lg{padding:.8rem 1.2rem; font-size:.95rem}
  .disc{width:112px; height:112px; font-size:1.85rem}
  .dstat b{font-size:1.55rem}
  .compliance__row{gap:.45rem}
  .compliance__row span{font-size:.76rem; padding:.4rem .7rem}
  .quote blockquote{font-size:1.25rem}
  .winp__body{padding:1rem}
  .footer__bar{flex-direction:column; align-items:flex-start; gap:.4rem}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important; scroll-behavior:auto!important}
  .reveal{opacity:1; transform:none}
}
