/* home.css — extracted from index.html on 2026-05-09 to slim the page weight. */

/* --- block 1 --- */
:root {
 --brand: #3AA0D1;
 --brand-accent: #5BB8D9;
 --navy: #0F1629;
 --navy-light: #1A2238;
 --ivory: #F8F7F2;
 --warm: #FAF9F4;
 --white: #FFFFFF;
 --gold: #3AA0D1;
 --teal: #3AA0D1;
 --td: #1A1A2E;
 --ts: #4A4A60;
 --tm: #8A8AA0;
 --tl: #F5F6FA;
 --tls: #CAD1E6;
 --tlm: #A9B2D0;
 --serif: 'Cormorant Garamond', Georgia, serif;
 --sans: 'Inter', -apple-system, sans-serif;
 --mono: 'Fira Code', 'Courier New', monospace;
 --s1:12px; --s2:16px; --s3:21px; --s4:28px; --s5:38px; --s6:51px; --s7:68px; --s8:91px;
 }

 *{margin:0;padding:0;box-sizing:border-box}
 html{scroll-behavior:smooth}

 /* === Typography uplift (larger, more readable) === */
 p{font-size:16.5px}
 .lbl{font-size:15px}
 .nav-links a{font-size:13.5px}
 .nav-cta{font-size:13.5px;padding:9px 18px}
 .hero-sub{font-size:17.5px;max-width:560px}
 .hero-eyebrow{font-size:15px}
 .cc h4{font-size:19px}
 .cc p{font-size:14.5px}
 .st-l{font-size:15px;color:var(--tlm)}
 .st-n{font-size:46px}
 .crisis-label{font-size:15px}
 .crisis-detail{font-size:15px;color:var(--tlm)}
 .crisis-num{font-size:40px}
 .fed-cred-lbl{font-size:13.5px;color:var(--tlm)}
 .fed-cred-val{font-size:14.5px;color:var(--tls)}
 .fed-lbl{font-size:13.5px}
 .fed-agent h3{font-size:26px}
 .fed-agent p{font-size:15.5px;color:var(--tls)}
 .rc-benefits{font-size:15.5px;color:var(--tls)}
 .rc-benefits li{line-height:2}
 .rc-left p{font-size:16.5px;color:var(--tls)}
 .ps-t .ps-n{font-size:19.5px}
 .ps-t .ps-p{font-size:28px}
 .ps-t .ps-d{font-size:15px}
 .ps-lbl{font-size:15px}
 .pc-tier{font-size:22px}
 .pc-amt{font-size:30px}
 .pc-per{font-size:15px}
 .pc-who{font-size:15px}
 .pc-list li{font-size:15px}
 .pc-btn{font-size:15px}
 .pc.pop::before{font-size:13px}
 .dm-title{font-size:15px;color:var(--tls)}
 .dm-live{font-size:13px}
 .dm-cell{font-size:13px;color:rgba(255,255,255,.88)}
 .dm-cell-v{font-size:15px;color:#FFFFFF}
 .dm-feed{font-size:13.5px;color:var(--tls)}
 .dm-row .dm-ts{color:var(--tlm);opacity:.75}
 .dm-row .dm-tag{font-size:13px}
 .dm-row .dm-msg{color:var(--tl)}
 .dm-stat-l{font-size:13px;color:var(--tlm)}
 .dm-stat-v{font-size:24px}
 .dm-gauge-val{font-size:58px}
 .dm-gauge-lbl{font-size:13.5px;color:var(--tlm)}
 .btn{font-size:15px}
 .fd{font-size:14.5px;color:var(--tls)}
 .fc h5{font-size:13.5px;color:var(--tls)}
 .fc a{font-size:14.5px;color:var(--tls)}
 .fc a:hover{color:var(--tl)}
 .fbot{color:var(--tls)}
 .fbot a{color:var(--tls)}
 .hero-meta .m b{font-size:20px}
 .hero-meta .m span{font-size:13.5px;color:var(--tlm)}
 .strip .s b{font-size:15px}
 .strip .s span{font-size:15px}
 .ctrl-fam{font-size:15px;color:var(--tl)}
 .ctrl-count{font-size:13.5px;color:var(--tls)}
 .fca-amount{font-size:28px}
 .fca-case h4{font-size:17px}
 .fca-detail{font-size:15px}
 .step-n{font-size:46px}
 .step h4{font-size:18px}
 .step p{font-size:15px}
 .badge{font-size:13px;color:var(--tls)}
 .term{font-size:15px}

 /* === Scroll-hide banners === */
 .uc-banner,.cmmc-clock{transition:transform .5s cubic-bezier(.16,1,.3,1),top .5s cubic-bezier(.16,1,.3,1)}
 body.banners-hidden .uc-banner,body.banners-hidden .cmmc-clock{transform:translateY(-100%)}
 body.banners-hidden .nav{top:0!important;transition:top .4s cubic-bezier(.16,1,.3,1)}
 /* Roll-away: on first scroll the gold uc-banner slides up out of view and the orange cmmc-clock slides up to take its place at top:0. Nav must slide up by 32px too — otherwise a 32px gap opens up between cmmc-clock (top:36px end) and nav (top:68px) where scrolling H1 text peeks through. */
 body.uc-hidden .uc-banner{transform:translateY(-100%)}
 body.uc-hidden .cmmc-clock{top:0}
 body.uc-hidden .nav{top:36px;transition:top .5s cubic-bezier(.16,1,.3,1)}

 /* Award-winning touch: scroll progress bar */
 .scroll-progress{position:fixed;top:0;left:0;height:2px;background:var(--gold);z-index:1003;width:0%;transition:width .08s linear;box-shadow:0 0 14px var(--gold);pointer-events:none}

 /* Award-winning touch: SVG noise overlay for premium editorial texture */
 .noise-overlay{position:absolute;inset:0;pointer-events:none;opacity:.045;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");z-index:1}
 .bD .noise-overlay,.bN .noise-overlay,.hero .noise-overlay{opacity:.08}

 /* Award-winning touch: sticky section-dot navigation */
 .sec-dots{position:fixed;right:28px;top:50%;transform:translateY(-50%);z-index:999;display:flex;flex-direction:column;gap:14px}
 .sec-dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.22);border:1px solid rgba(91,184,217,.4);transition:all .35s cubic-bezier(.25,.1,.25,1);cursor:pointer;text-decoration:none;display:block}
 .sec-dot:hover{background:rgba(91,184,217,.65);transform:scale(1.25)}
 .sec-dot.active{background:var(--gold);box-shadow:0 0 14px var(--gold);transform:scale(1.5);border-color:var(--gold)}
 body.on-light .sec-dot{background:rgba(26,26,46,.15);border-color:rgba(26,26,46,.3)}
 body.on-light .sec-dot:hover{background:rgba(58,160,209,.55)}
 body.on-light .sec-dot.active{background:var(--brand);box-shadow:0 0 14px rgba(58,160,209,.45);border-color:var(--brand)}
 @media(max-width:820px){.sec-dots{display:none}}

 /* Award-winning touch: magnetic button prep */
 .btn,.ps-cta,.nav-cta{will-change:transform;transition:transform .4s cubic-bezier(.25,.1,.25,1),filter .3s,box-shadow .3s}
 body{font-family:var(--sans);color:var(--td);line-height:1.7;background:var(--ivory);overflow-x:hidden}

 h1,h2,h3,h4{font-family:var(--serif);font-weight:400;letter-spacing:.02em}
 h1{font-size:clamp(40px,5.4vw,84px);line-height:1}
 h1 em{font-style:italic;color:var(--gold);font-weight:400;letter-spacing:-.005em}
 h2{font-size:clamp(26px,3vw,42px);line-height:1.18}
 h3{font-size:clamp(20px,2.4vw,28px);line-height:1.25}
 h4{font-size:17px;line-height:1.3}
 p{margin-bottom:var(--s2);font-weight:300;font-size:15px}
 a{color:inherit;text-decoration:none;transition:all .3s ease}
 .keep-case{text-transform:none!important}

 .box{max-width:1060px;margin:0 auto}
 .div{width:50px;height:2px;background:var(--brand);margin:var(--s1) auto 0}
 .lbl{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:3px;text-transform:uppercase;margin-bottom:var(--s1);display:block}
 .particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}

 /* Under-Construction Banner */
 .uc-banner{position:fixed;top:0;left:0;right:0;height:32px;background:var(--gold);color:var(--navy);display:flex;align-items:center;justify-content:center;gap:14px;font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;z-index:1002;box-shadow:0 2px 10px rgba(0,0,0,.1);padding:0 var(--s2);text-align:center}
 .uc-banner .uc-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--brand);animation:ucPulse 2s ease-in-out infinite}
 @keyframes ucPulse{0%,100%{opacity:.5;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}

 /* CMMC Phase-2 Countdown (Safety Orange) */
 .cmmc-clock{position:fixed;top:32px;left:0;right:0;height:36px;background:#FF6600;color:#FFFFFF;display:flex;align-items:center;justify-content:center;gap:18px;font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;z-index:1001;box-shadow:0 2px 12px rgba(0,0,0,.12);padding:0 var(--s2);flex-wrap:wrap;text-align:center}
 .cmmc-clock .cc-lbl{opacity:.98}
 .cmmc-clock .cc-date{background:rgba(0,0,0,.18);padding:3px 11px;border-radius:3px}
 .cmmc-clock .cc-count{font-family:var(--mono);font-weight:600;font-size:13.5px;letter-spacing:1.5px}
 @media(max-width:720px){
 .cmmc-clock{font-size:13px;gap:8px;letter-spacing:1.5px;height:auto;padding:6px var(--s2);line-height:1.4}
 .cmmc-clock .cc-date{padding:2px 7px}
 }

 /* Nav — no legacy uc-banner / cmmc-clock above on ai4ciso, so top:0 */
 .nav{position:fixed;top:0;left:0;right:0;height:62px;background:rgba(15,22,41,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:space-between;padding:0 var(--s6);z-index:1000;transition:all .4s ease;border-bottom:1px solid rgba(91,184,217,.15)}
 .nav.scrolled{background:rgba(248,247,242,.97);box-shadow:0 1px 8px rgba(0,0,0,.05)}
 .nav-brand{font-family:var(--serif);font-size:22px;color:var(--tl);letter-spacing:1px}
 .nav-brand em{font-style:italic;color:var(--brand)}
 .nav-links{display:flex;list-style:none;gap:var(--s4)}
 .nav-links a{font-size:13px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--tlm)}
 .nav-links a:hover{color:var(--tl)}
 .nav-cta{padding:7px 22px;background:var(--brand);color:white;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase}
 .nav-cta:hover{box-shadow:0 4px 14px rgba(58,160,209,.3)}

 /* Buttons */
 .btn{display:inline-block;padding:13px 36px;font-family:var(--sans);font-size:13.5px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:all .3s ease}
 .btn-fill{background:var(--brand);color:white}
 .btn-fill:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(58,160,209,.3)}
 .btn-line-d{background:transparent;border:1px solid rgba(0,0,0,.12);color:var(--ts)}
 .btn-line-d:hover{border-color:var(--brand);color:var(--brand)}
 .btn-line-l{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--tls)}
 .btn-line-l:hover{border-color:rgba(255,255,255,.35);color:var(--tl)}

 /* Bands */
 .bL{background:var(--ivory);padding:var(--s8) var(--s6)}
 .bW{background:var(--white);padding:var(--s8) var(--s6)}
 .bV{background:var(--warm);padding:var(--s8) var(--s6)}
 .bD{background:var(--navy);padding:var(--s8) var(--s6);position:relative;overflow:hidden}
 .bN{background:var(--navy-light);padding:var(--s8) var(--s6);position:relative;overflow:hidden}

 /* Splits */
 .split{display:grid;grid-template-columns:1fr 1.34fr;gap:var(--s7);align-items:center}
 .split-r{display:grid;grid-template-columns:1.34fr 1fr;gap:var(--s7);align-items:center}

 .accent{padding:var(--s6) var(--s5);text-align:center;background:var(--brand)}
 .accent h3{color:white;font-size:clamp(24px,2.8vw,38px);margin-bottom:var(--s1)}
 .accent p{color:rgba(255,255,255,.8);font-size:15px;margin-bottom:0}

 .il{list-style:none;padding:0;margin:var(--s3) 0 0}
 .il li{font-size:15px;color:var(--ts);padding:9px 0 9px 20px;position:relative;font-weight:300;border-bottom:1px solid rgba(0,0,0,.04)}
 .il li::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:5px;border-radius:50%;background:var(--brand)}

 /* ━━ HERO ━━ */
 .hero{position:relative;min-height:calc(100vh - 62px);display:flex;align-items:center;justify-content:center;padding:82px var(--s6) var(--s7);background:radial-gradient(ellipse at 50% 35%,var(--navy-light) 0%,var(--navy) 70%);overflow:hidden;text-align:center}

 /* Live Dashboard Preview */
 .dash-mock{background:linear-gradient(180deg,#0B1020 0%,#070B18 100%);border:1px solid rgba(91,184,217,.22);border-radius:10px;padding:var(--s3) var(--s4);box-shadow:0 30px 80px -30px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.04);position:relative;overflow:hidden}
 .dm-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--s2);border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:var(--s3)}
 .dm-title{font-family:var(--mono);font-size:13px;letter-spacing:1.5px;color:var(--tls);text-transform:uppercase}
 .dm-live{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:13px;letter-spacing:2px;color:#34D399;text-transform:uppercase}
 .dm-live-dot{width:7px;height:7px;border-radius:50%;background:#34D399;box-shadow:0 0 10px #34D399;animation:dmLive 1.4s ease-in-out infinite}
 @keyframes dmLive{0%,100%{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}
 .dm-gauge{text-align:center;padding:var(--s2) 0 var(--s3);position:relative}
 .dm-gauge svg{width:100%;max-width:340px;height:auto;display:block;margin:0 auto}
 .dm-gauge-val{position:absolute;left:0;right:0;bottom:26%;font-family:var(--serif);font-size:54px;font-weight:300;color:var(--tl);line-height:1;transition:color .6s}
 .dm-gauge-lbl{font-family:var(--mono);font-size:13px;letter-spacing:2.5px;color:var(--tlm);text-transform:uppercase;margin-top:-4px}
 .dm-arc-bg{stroke:rgba(255,255,255,.06);stroke-width:10;fill:none;stroke-linecap:round}
 .dm-arc-fg{stroke:url(#gaugeGrad);stroke-width:10;fill:none;stroke-linecap:round;stroke-dasharray:282;stroke-dashoffset:282;transition:stroke-dashoffset 2.5s cubic-bezier(.16,1,.3,1)}
 .dm-arc-fg.animate{stroke-dashoffset:60}
 .dm-heatmap{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:var(--s3)}
 .dm-cell{aspect-ratio:1;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;letter-spacing:.5px;color:rgba(255,255,255,.7);position:relative;overflow:hidden;transition:transform .3s}
 .dm-cell:hover{transform:translateY(-2px)}
 .dm-cell-v{font-family:var(--serif);font-size:15px;font-weight:400;color:rgba(255,255,255,.95);line-height:1}
 .dm-cell.dg1{background:linear-gradient(135deg,#10B981,#059669)}
 .dm-cell.dg2{background:linear-gradient(135deg,#34D399,#10B981)}
 .dm-cell.dg3{background:linear-gradient(135deg,#7BC6E0,#3AA0D1)}
 .dm-cell.dg4{background:linear-gradient(135deg,#3AA0D1,#3AA0D1)}
 .dm-cell.dg5{background:linear-gradient(135deg,#EF4444,#B91C1C)}
 .dm-cell::before{content:'';position:absolute;inset:0;background:rgba(255,255,255,0);animation:dmPulse 3s ease-in-out infinite}
 @keyframes dmPulse{0%,100%{background:rgba(255,255,255,0)}50%{background:rgba(255,255,255,.08)}}
 .dm-feed{background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.04);border-radius:5px;padding:var(--s2);font-family:var(--mono);font-size:13px;line-height:1.7;color:var(--tlm);max-height:120px;overflow:hidden;position:relative}
 .dm-row{display:flex;gap:10px;white-space:nowrap;align-items:center}
 .dm-row .dm-ts{color:var(--tlm);opacity:.6}
 .dm-row .dm-tag{padding:0 6px;border-radius:2px;font-size:13px;letter-spacing:.5px;text-transform:uppercase}
 .dm-row .dm-tag.ok{background:rgba(16,185,129,.16);color:#34D399}
 .dm-row .dm-tag.warn{background:rgba(245,158,11,.16);color:#7BC6E0}
 .dm-row .dm-tag.heal{background:rgba(74,158,255,.16);color:#60A5FA}
 .dm-row .dm-msg{color:var(--tls)}
 .dm-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);margin-bottom:var(--s3);padding:var(--s2) 0;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}
 .dm-stat{text-align:center}
 .dm-stat-v{font-family:var(--serif);font-size:22px;font-weight:300;color:var(--gold);line-height:1}
 .dm-stat-l{font-family:var(--mono);font-size:13px;letter-spacing:1.5px;color:var(--tlm);text-transform:uppercase;margin-top:4px}

 /* SPRS Reality Check featured block */
 .rc-feat{max-width:1060px;margin:0 auto var(--s6);background:linear-gradient(135deg,var(--navy) 0%,var(--navy-light) 100%);padding:var(--s6);border-radius:6px;position:relative;overflow:hidden;box-shadow:0 18px 50px -20px rgba(15,22,41,.4)}
 .rc-feat::before{content:'';position:absolute;top:0;right:0;width:360px;height:100%;background:radial-gradient(circle at top right,rgba(91,184,217,.18),transparent 60%);pointer-events:none}
 .rc-inner{display:grid;grid-template-columns:1.618fr 1fr;gap:var(--s5);align-items:center;position:relative;z-index:2}
 .rc-left h3{font-family:var(--serif);font-weight:400;color:var(--tl);font-size:clamp(26px,3vw,36px);margin-bottom:var(--s2)}
 .rc-left p{color:var(--tls);max-width:480px;margin-bottom:var(--s3);font-size:15px;line-height:1.75}
 .rc-benefits{list-style:none;padding:0;margin:0 0 var(--s4);color:var(--tls);font-size:15px;line-height:1.95}
 .rc-benefits li{padding-left:22px;position:relative}
 .rc-benefits li::before{content:'\2713';position:absolute;left:0;color:var(--gold);font-weight:700}
 .rc-benefits li b{color:var(--gold);font-weight:600}
 .rc-right{text-align:center;padding-left:var(--s5);border-left:1px solid rgba(255,255,255,.08)}
 .rc-price{font-family:var(--serif);font-size:84px;font-weight:300;color:var(--gold);line-height:1}
 .rc-price-lbl{font-size:13px;color:var(--tls);letter-spacing:2.5px;text-transform:uppercase;font-weight:600;margin-top:8px}
 .rc-ship{margin-top:var(--s3);font-size:13px;color:var(--tlm);letter-spacing:2px;text-transform:uppercase;font-weight:600}
 @media(max-width:820px){.rc-inner{grid-template-columns:1fr}.rc-right{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.08);padding-top:var(--s3);margin-top:var(--s3)}}

 /* Business Impact Widget — RULE 12/13 surface */
 .bi{background:linear-gradient(180deg,var(--navy) 0%,var(--navy-light) 100%);padding:var(--s7) var(--s6);position:relative;overflow:hidden;border-top:1px solid rgba(91,184,217,.18);border-bottom:1px solid rgba(91,184,217,.18)}
 .bi::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(58,160,209,.10) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(91,184,217,.06) 0%,transparent 50%);pointer-events:none}
 .bi-wrap{max-width:1100px;margin:0 auto;position:relative;z-index:1}
 .bi-eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:3.5px;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:14px}
 .bi-h{font-family:var(--serif);font-size:44px;font-weight:600;color:var(--tl);line-height:1.12;margin-bottom:14px;max-width:780px}
 .bi-h em{font-style:italic;color:var(--brand)}
 .bi-sub{font-size:15.5px;color:var(--tls);max-width:700px;margin-bottom:var(--s5);line-height:1.65}
 .bi-big{font-family:var(--serif);font-size:96px;font-weight:300;color:var(--gold);line-height:1;margin-bottom:6px;letter-spacing:-2px;font-variant-numeric:tabular-nums}
 .bi-big-lbl{font-family:var(--mono);font-size:13px;letter-spacing:2.5px;text-transform:uppercase;color:var(--tlm);font-weight:600;margin-bottom:var(--s5)}
 .bi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);margin-bottom:var(--s5)}
 .bi-cell{padding:var(--s3) var(--s3);border-left:2px solid rgba(58,160,209,.42);background:rgba(255,255,255,.02)}
 .bi-cell-lbl{font-family:var(--mono);font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:8px}
 .bi-cell-n{font-family:var(--serif);font-size:38px;font-weight:500;color:var(--tl);line-height:1;margin-bottom:8px;font-variant-numeric:tabular-nums}
 .bi-cell-desc{font-size:15px;color:var(--tlm);line-height:1.55}
 .bi-cta{display:flex;gap:var(--s2);flex-wrap:wrap;align-items:center;margin-top:var(--s4)}
 .bi-cta a.primary{display:inline-block;background:var(--brand);color:#FFF;padding:13px 26px;border-radius:3px;font-weight:700;text-decoration:none;font-size:14.5px;letter-spacing:.2px}
 .bi-cta a.primary:hover{background:#A85F04}
 .bi-cta a.secondary{color:var(--tl);text-decoration:none;font-size:15px;border-bottom:1px dotted var(--gold);padding-bottom:2px}
 .bi-cta a.secondary:hover{color:var(--gold)}
 .bi-note{margin-top:var(--s3);font-size:13.5px;color:var(--tm);font-style:italic;max-width:720px}
 /* Live Control Effectiveness strip — Patent 313 umbrella */
 .lce{margin:var(--s4) 0 var(--s5) 0;padding:18px 22px;background:rgba(10,14,30,.55);border:1px solid rgba(91,184,217,.22);border-radius:3px;font-family:var(--mono);position:relative;overflow:hidden}
 .lce::after{content:'';position:absolute;top:0;bottom:0;right:0;width:80px;background:linear-gradient(90deg,transparent,rgba(10,14,30,.9));pointer-events:none}
 .lce-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;border-bottom:1px dotted rgba(91,184,217,.2)}
 .lce-ttl{font-size:13px;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);font-weight:600}
 .lce-live{display:flex;align-items:center;gap:6px;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#6FCF97;font-weight:600}
 .lce-dot{width:7px;height:7px;border-radius:50%;background:#6FCF97;animation:lcePulse 1.8s ease-in-out infinite}
 @keyframes lcePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}
 .lce-rows{display:flex;flex-direction:column;gap:5px;min-height:132px;overflow:hidden;position:relative}
 .lce-row{display:grid;grid-template-columns:90px 1fr 72px 90px;align-items:center;gap:14px;padding:7px 2px;font-size:15px;border-bottom:1px dotted rgba(255,255,255,.04);transition:opacity .4s ease,transform .4s ease}
 .lce-row:last-child{border-bottom:none}
 .lce-row.enter{opacity:0;transform:translateY(-6px)}
 .lce-cid{color:var(--gold);font-weight:600;letter-spacing:.3px}
 .lce-name{color:var(--tls);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .lce-eff{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
 .lce-eff.hi{color:#6FCF97}
 .lce-eff.mid{color:var(--gold)}
 .lce-eff.lo{color:#EB5757}
 .lce-ts{font-size:13px;color:var(--tlm);text-align:right}
 .lce-ftr{margin-top:12px;padding-top:10px;border-top:1px dotted rgba(91,184,217,.2);font-size:13px;color:var(--tm);letter-spacing:1.5px;text-transform:uppercase;font-weight:600;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
 .lce-ftr em{font-style:italic;font-weight:500;color:var(--tlm);letter-spacing:.3px;text-transform:none}
 @media(max-width:840px){.bi-h{font-size:32px}.bi-big{font-size:64px}.bi-grid{grid-template-columns:1fr;gap:var(--s3)}.lce-row{grid-template-columns:80px 1fr 60px;gap:10px}.lce-ts{display:none}}

 /* Pricing Snapshot Strip */
 .price-strip{background:var(--warm);padding:var(--s5) var(--s6);border-top:1px solid rgba(0,0,0,.06);border-bottom:1px solid rgba(0,0,0,.06)}
 .ps-box{max-width:1060px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--s5);flex-wrap:wrap}
 .ps-lbl{font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--ts)}
 .ps-tiers{display:flex;align-items:center;gap:var(--s4);flex-wrap:wrap}
 .ps-t{display:flex;align-items:baseline;gap:var(--s2);flex-direction:column}
 .ps-t .ps-n{font-family:var(--serif);font-size:23px;color:var(--td);font-weight:500;line-height:1.2}
 .ps-t .ps-p{font-family:var(--serif);font-size:30px;color:var(--brand);font-weight:400;line-height:1.1}
 /* Sub-text under the price is block; the price-value span itself stays inline so $ + 499 read together */
 .ps-t .ps-p > span:last-child{display:block;font-family:var(--sans);font-size:15px;color:var(--ts);margin-left:0;margin-top:4px;font-weight:400;line-height:1.4}
 .ps-t .ps-d{font-size:15px;color:var(--ts);margin-left:0;margin-top:2px;font-weight:500}
 .ps-div{width:1px;height:32px;background:rgba(0,0,0,.08)}
 .ps-cta{padding:10px 22px;background:var(--brand);color:white;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;transition:all .3s ease}
 .ps-cta:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(58,160,209,.28)}
 @media(max-width:820px){.ps-box{flex-direction:column;text-align:center}.ps-tiers{justify-content:center}.ps-div{display:none}}
 /* Single-column centered hero (was 2-col grid; right col was empty + made the text appear off-center) */
 .hero-grid{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s4);max-width:880px;margin:0 auto;position:relative;z-index:5;text-align:center}
 .hero-grid > div{width:100%;text-align:center}
 .hero-eyebrow{font-family:var(--sans);font-size:13.5px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--brand);margin-bottom:var(--s3);text-align:center}
 .hero h1{color:var(--tl);margin-bottom:var(--s3)}
 .hero-sub{font-size:17.5px;color:var(--tls);max-width:680px;margin:0 auto var(--s5);text-align:center;line-height:1.65}
 .hero-actions{display:flex;gap:var(--s2);flex-wrap:wrap;justify-content:center}

 /* Terminal */
 .term{text-align:left;font-family:var(--mono);font-size:15px;color:var(--tlm);background:rgba(0,0,0,.35);padding:var(--s4);border-radius:6px;min-height:240px;position:relative}
 .term::before{content:'';position:absolute;top:0;left:0;right:0;height:26px;background:rgba(255,255,255,.03);border-radius:6px 6px 0 0}
 .term-dots{position:absolute;top:8px;left:12px;display:flex;gap:6px}
 .term-dots span{width:9px;height:9px;border-radius:50%}
 .dot-r{background:#FF5F56}.dot-y{background:#FFBD2E}.dot-g{background:#27C93F}
 .term-title{position:absolute;top:6px;left:50%;transform:translateX(-50%);font-size:13px;color:var(--tlm);font-family:var(--sans)}
 .term-body{margin-top:var(--s2);white-space:pre;line-height:1.6}
 .term-body .kw{color:var(--brand)}.term-body .fn{color:var(--teal)}.term-body .str{color:#E8D48B}.term-body .cmt{color:#555}
 .term-cursor{display:inline-block;width:7px;height:14px;background:var(--gold);animation:blink 1s step-end infinite;vertical-align:text-bottom;margin-left:2px}
 @keyframes blink{0%,100%{opacity:1}50%{opacity:0}}

 .scroll-cue{position:absolute;bottom:var(--s4);left:50%;transform:translateX(-50%);z-index:5}
 .scroll-cue svg{width:22px;height:22px;animation:bob 2.5s ease-in-out infinite;opacity:.25}
 @keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}

 /* Capability cards */
 .cg{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3);margin-top:var(--s6)}
 .cc{padding:var(--s5) var(--s4);background:var(--white);transition:all .4s ease}
 .cc:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,.06)}
 .cc h4{color:var(--td);margin-bottom:8px}
 .cc p{font-size:15px;color:var(--ts);margin-bottom:0}
 .ci{font-size:24px;margin-bottom:var(--s1);display:block}

 /* Stats */
 .sg{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s3)}
 .st{text-align:center;padding:var(--s4) var(--s2)}
 .st-n{font-family:var(--serif);font-size:42px;font-weight:300;color:var(--brand);line-height:1;margin-bottom:4px}
 .st-l{font-size:13px;color:var(--tm);letter-spacing:.5px}

 /* Crisis stats (dark bg) */
 .crisis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3);margin-top:var(--s6)}
 .crisis-card{padding:var(--s5) var(--s4);background:rgba(255,255,255,.025);text-align:center;transition:all .4s ease}
 .crisis-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.04)}
 .crisis-num{font-family:var(--serif);font-size:36px;font-weight:300;color:var(--brand);line-height:1;margin-bottom:6px}
 .crisis-label{font-size:13.5px;color:var(--tls);margin-bottom:8px;font-weight:500}
 .crisis-detail{font-size:13.5px;color:var(--tlm);line-height:1.5}

 /* FCA section */
 .fca-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s3);margin-top:var(--s5)}
 .fca-case{padding:var(--s4) var(--s3);background:var(--white)}
 .fca-case h4{color:var(--td);margin-bottom:4px;font-size:16px}
 .fca-amount{font-family:var(--serif);font-size:24px;color:var(--brand);font-weight:300;margin-bottom:4px}
 .fca-detail{font-size:13.5px;color:var(--tm);margin-bottom:0}

 /* Process */
 .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4);margin-top:var(--s6);max-width:1080px;margin-left:auto;margin-right:auto}
 .step{text-align:center}
 .step-n{font-family:var(--serif);font-size:44px;font-weight:300;color:var(--brand);line-height:1;margin-bottom:var(--s1)}
 .step h4{color:var(--td);margin-bottom:6px;font-size:16px}
 .step p{font-size:15px;color:var(--ts);margin-bottom:0}

 /* CMMC controls */
 .ctrl-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s2);margin-top:var(--s4)}
 .ctrl{padding:var(--s2) var(--s3);background:rgba(255,255,255,.025)}
 .ctrl-fam{font-size:13.5px;color:var(--tl);font-weight:500}
 .ctrl-count{font-size:13px;color:var(--tlm)}
 .badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--s3)}
 .badge{padding:6px 12px;font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--tlm);background:rgba(255,255,255,.04)}

 /* Pricing — 6 tiers in 3x2 grid */
 .pg{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3);margin-top:var(--s6)}
 .pc{padding:var(--s4) var(--s3);background:var(--white);text-align:center;transition:all .4s ease;position:relative}
 .pc:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(0,0,0,.07)}
 .pc.pop{box-shadow:0 4px 24px rgba(58,160,209,.12)}
 .pc.pop::before{content:'MOST POPULAR';position:absolute;top:0;left:0;right:0;background:var(--brand);color:white;font-size:13px;font-weight:700;letter-spacing:2px;padding:4px 0}
 .pc-tier{font-family:var(--serif);font-size:20px;color:var(--td);margin-bottom:4px}
 .pc-amt{font-family:var(--serif);font-size:28px;font-weight:300;color:var(--brand);line-height:1;margin-bottom:2px}
 .pc-per{font-size:13px;color:var(--tm);margin-bottom:var(--s2);display:block}
 .pc-who{font-size:13.5px;color:var(--ts);margin-bottom:var(--s2);padding-bottom:var(--s2);border-bottom:1px solid rgba(0,0,0,.06)}
 .pc-list{list-style:none;padding:0;margin:0 0 var(--s3)}
 .pc-list li{font-size:13.5px;color:var(--tm);padding:3px 0}
 .pc-btn{display:block;padding:9px 0;color:var(--brand);font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:1px;text-transform:uppercase;text-align:center;transition:all .3s ease}
 .pc-btn:hover{background:var(--brand);color:white}
 .pc.pop .pc-btn{background:var(--brand);color:white}
 .pc.pop .pc-btn:hover{background:#B45309}
 .price-note{text-align:center;margin-top:var(--s4);font-size:15px;color:var(--tm)}

 /* Footer */
 footer{background:var(--navy);padding:var(--s6) var(--s6) var(--s4)}
 .fi{max-width:1060px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--s5)}
 .fb{font-family:var(--serif);font-size:22px;color:var(--tl);margin-bottom:8px}
 .fb em{font-style:italic;color:var(--brand)}
 .fd{font-size:15px;color:var(--tlm);line-height:1.6}
 .fc h5{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--tlm);margin-bottom:10px}
 .fc a{display:block;font-size:15px;color:var(--tlm);padding:3px 0}
 .fc a:hover{color:var(--tl)}
 .fbot{max-width:1060px;margin:var(--s4) auto 0;padding-top:var(--s2);border-top:1px solid rgba(255,255,255,.04);display:flex;justify-content:space-between;font-size:13px;color:var(--tlm)}

 @keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
 /* EMERGENCY OVERRIDE — ensure content is visible regardless of JS state. JS scroll-reveal is enhancement, not requirement. */
 .reveal{opacity:1!important;transform:none!important}
 /* Headline balance — wraps "What Aegis AI&trade; Is / Is Not" h2s on equal-mass lines so the two columns align visually */
 #what-we-are .split{align-items:start}
 #what-we-are h2{text-wrap:balance;max-width:18ch}
 /* AaaS vs SaaS — level the two columns so the bullet lists start on the same line */
 #aaas-vs-saas .split{align-items:start}
 #aaas-vs-saas .split > .reveal{display:flex;flex-direction:column}
 #aaas-vs-saas .split > .reveal > h3{min-height:5.6em;text-wrap:balance}
 /* Dashboard Command Center bullets — high-contrast white on navy bg + larger, heavier text */
 .dash-bullets li{color:#FFFFFF!important;font-weight:500!important;font-size:18.5px!important;padding:13px 0 13px 24px!important;line-height:1.65!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
 .dash-bullets li::before{width:7px!important;height:7px!important;background:var(--brand)!important;box-shadow:0 0 12px rgba(58,160,209,.6)}
 .dash-bullets li:last-child{border-bottom:none!important}
 /* Terminal typewriter reveal — uses CSS step-clip so static content stays as fallback if JS doesn't run */
 .term-body{position:relative}
 .term-body.typewriter{opacity:0;animation:termFade .4s ease forwards .8s}
 @keyframes termFade{from{opacity:0}to{opacity:1}}
 /* === GLOBAL CENTERING PASS (per user direction: center every block of text) === */
 /* Default-center all section-level content. Multi-column grids override below to keep card content readable. */
 .box{text-align:center}
 .bi-wrap{text-align:center}
 /* Center the block itself, not just the text inside — .bi-h and .bi-sub have max-width set, so without auto-margins the block stays left-aligned */
 .bi-eyebrow,.bi-h,.bi-sub,.bi-big,.bi-big-lbl{text-align:center;margin-left:auto!important;margin-right:auto!important}
 /* Hero left column centered (terminal stays right) */
 .hero-grid > div:first-child{text-align:center}
 .hero-grid > div:first-child .hero-eyebrow,.hero-grid > div:first-child .hero-sub{margin-left:auto;margin-right:auto}
 .hero-actions{justify-content:center}
 /* Override for grid layouts: cards/columns/lists keep left-aligned text for legibility */
 .split,.split-r{text-align:left}
 .split > .reveal,.split-r > .reveal,.split > .accent,.split-r > .accent{text-align:left}
 .pg,.crisis-grid,.bi-grid,.step-grid,.pf-grid,.ag-grid,.tier-grid,.cc-grid{text-align:left}
 .pc,.crisis-card,.bi-cell,.cc,.dash-mock,.lce-row,.dm-row,.fed-agent,.step{text-align:left}
 /* Long body paragraphs: keep readable by constraining width + auto-margin so they center as a block */
 .box > p,.box .lead,.bi-sub,.box > .reveal > p{max-width:760px;margin-left:auto;margin-right:auto}
 /* Bullet lists: left-align text but center the block */
 .il,.rc-benefits{max-width:640px;margin-left:auto;margin-right:auto;text-align:left}
 /* === LEGIBILITY: bump secondary-text contrast slightly === */
 :root{--ts:#3A3A55;--tlm:#B8C0D8}  /* darker secondary on light bg / brighter secondary on dark bg */
 .reveal{opacity:0;transform:translateY(22px);transition:all .7s cubic-bezier(.16,1,.3,1)}
 .reveal.visible{opacity:1;transform:translateY(0)}

 @media(max-width:1100px){.pg{grid-template-columns:repeat(3,1fr)}}
 @media(max-width:900px){
 .hero-grid,.split,.split-r{grid-template-columns:1fr}
 .cg,.crisis-grid{grid-template-columns:repeat(2,1fr)}
 .steps{grid-template-columns:repeat(2,1fr)}
 .pg{grid-template-columns:repeat(2,1fr)}
 .sg{grid-template-columns:repeat(2,1fr)}
 .fca-grid{grid-template-columns:1fr}
 .ctrl-grid{grid-template-columns:1fr}
 }
 @media(max-width:600px){
 .nav{padding:0 var(--s2)}.nav-links{display:none}
 .hero,.bL,.bW,.bV,.bD,.bN{padding-left:20px;padding-right:20px}
 .cg,.pg,.crisis-grid{grid-template-columns:1fr}
 .steps{grid-template-columns:1fr}
 .fi{grid-template-columns:1fr}
 }
 
 /* === FONT-SIZE BUMP (per user direction: increase non-headline text for legibility, mobile floor 16px) === */
 body{font-size:17.5px;line-height:1.65}
 p{font-size:17.5px;line-height:1.7}
 li{font-size:17px;line-height:1.75}
 .lead{font-size:19.5px;line-height:1.55}
 .lbl,.eyebrow{font-size:15px;letter-spacing:2.5px}
 details summary{font-size:17px}
 details div p,details div{font-size:16px;line-height:1.7}
 .nav,.nav a{font-size:15px}
 .footer-compliance{font-size:15px;line-height:1.75}
 .fine{font-size:15px;line-height:1.7}
 .footer{font-size:15px}
 table{font-size:15.5px}
 input,select,textarea{font-size:16px} /* iOS Safari mobile floor — prevents zoom-on-focus */
 .help{font-size:15px}
 .checkbox-group label,.radio-group label{font-size:15px}
 /* Mobile responsiveness: scale down headings + keep readable body */
 @media(max-width:720px){
   body,p{font-size:17px;line-height:1.65}
   li{font-size:16.5px}
   .lead{font-size:18px}
   h1{font-size:36px!important;line-height:1.12}
   h2{font-size:26px!important;line-height:1.18}
   h3{font-size:22px!important;line-height:1.25}
   .wrap,.box,.bi-wrap{padding-left:18px!important;padding-right:18px!important}
   .nav{flex-wrap:wrap;gap:8px;font-size:15px}
   .footer-compliance{font-size:15px}
   table{font-size:15px}
   th,td{padding:10px 8px}
 }
 @media(max-width:480px){
   h1{font-size:32px!important}
   h2{font-size:24px!important}
   .lead{font-size:17px}
   .footer-inner{grid-template-columns:1fr!important}
 }

/* --- block 2 --- */
/* Mobile overflow safety net — added 2026-04-29 to fix viewport-width issues on phones.
 Hero terminal had white-space:pre with 50+ char monospace lines → forced page width
   wider than 375px viewport → customer had to horizontal-scroll to see anything. */
html, body { max-width: 100%; overflow-x: hidden; }
@media (max-width: 720px) {
  /* Banner — reduce padding (was 32px, ate 17% of 375px viewport) */
  #ed3m-launch-banner { padding: 12px 14px !important; gap: 10px !important; font-size:15px !important; line-height: 1.4 !important; }
  #ed3m-launch-banner > span:first-of-type { padding: 4px 10px !important; font-size:13px !important; letter-spacing: 0.1em !important; }
  #ed3m-launch-banner > span:nth-of-type(2) { font-size:15px !important; gap: 4px !important; }
  #ed3m-launch-banner > span:nth-of-type(2) strong:nth-of-type(2) { font-size:15px !important; }
  #ed3m-launch-banner a { padding: 6px 14px !important; font-size:13.5px !important; }
  /* Hero terminal — scroll inside its own container, never the page */
  .term, .term-body { overflow-x: auto !important; max-width: 100%; -webkit-overflow-scrolling: touch; }
  .term-body { font-size:13px !important; line-height: 1.55 !important; }
  /* Dashboard mockup rows — allow wrap so they don't force horizontal scroll */
  .dm-row { white-space: normal !important; flex-wrap: wrap !important; }
  .dm-stats { grid-template-columns: 1fr 1fr !important; }
  .dm-heatmap { overflow-x: auto !important; }
  /* Generic safety net: anything that should self-contain on small screens */
  pre, code { overflow-x: auto; max-width: 100%; -webkit-overflow-scrolling: touch; }
  svg:not(.icon) { max-width: 100%; height: auto; }
  img { max-width: 100%; height: auto; }
  /* Wider tables get wrapped — most are already in .table-wrap{overflow:auto} */
  .lce-row { grid-template-columns: 60px 1fr !important; gap: 8px !important; }
  /* SPRS live counter — prevent layout reflow when JS swaps the price/remaining text */
  #hero-sprs-price, #ps-sprs-price, .rc-price, .rc-price-lbl {
    font-variant-numeric: tabular-nums !important;
    transition: none !important;
    animation: none !important;
  }
  #hero-sprs-price, #ps-sprs-price { display: inline-block !important; min-width: 38px !important; text-align: right !important; }
  #ps-sprs-sub { display: block !important; min-height: 1.4em !important; transition: none !important; animation: none !important; }
  /* Reserve space on the price-strip so digit length changes don't shove neighbors */
  .ps-box, .ps-tiers, .ps-name, .ps-p { transition: none !important; }
  .lce-ts, .lce-name { font-size:13px !important; }
  /* 3-col splits using inline repeat(3,1fr) — collapse to 1 column on mobile.
 Inline style beats the .split media query at line 530, so we force it here. */
  #time-to-ready .split, #commitments .split { grid-template-columns: 1fr !important; gap: var(--s3) !important; }
  /* Commitments numeric values — shrink the 46px monospace headline so it fits in narrow cards */
  #commitments .split > div > div[style*="font-size:46px"] { font-size:38px !important; }
  /* MOBILE STABILIZATION 2026-04-30 — kill every continuous animation that
     causes jitter on phones. Hero terminal canvases hide; dashboard mockup
     transitions disable; live-feed transforms zero out so pushed rows don't
     animate-thrash. JS still injects rows but they appear instantly without
     the reflow + repaint cycle that was visible as jitter. */
  .particle-canvas { display: none !important; }
  #termBody .term-cursor { animation: none !important; }
  .dm-cell, .dm-row, .lce-row { transition: none !important; transform: none !important; }
  [data-dm-count], [data-count] { transition: none !important; transform: none !important; }
  /* Stop the hero terminal "live" stream container from shrinking/growing — fixed height */
  #termLive { max-height: 140px !important; }
}
/* User-OS preference — kill all animations on prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  .particle-canvas { display: none !important; }
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}
@media (max-width: 480px) {
  /* Banner contents reflow to a more compact stack on tiny screens */
  #ed3m-launch-banner { padding: 10px 12px !important; }
  #ed3m-launch-banner > span:nth-of-type(2) { font-size:15px !important; }
}

/* --- block 3 --- */
@media (max-width: 720px) {
   #founding-remaining-big, #cmmc-days-remaining { font-size:38px !important; }
   section[style*="Founding Cohort"] > div { grid-template-columns: 1fr !important; }
 }

/* --- block 4 --- */
@media(max-width:720px){section[style*="Authority Bar"] > div > div[style*="repeat(5"]{grid-template-columns:repeat(2,1fr) !important;gap:var(--s3) !important;}}


/* === Legibility + layout fixes (2026-06-08): readable card text, balanced &
   centered steps for 5 cards (was a lopsided 3+2 grid), responsive inline grids. === */
.steps{display:flex!important;flex-wrap:wrap;justify-content:center;gap:var(--s4)}
.steps>.step{flex:1 1 290px;max-width:340px}
.step p{font-size:16px;line-height:1.6}
.step h4{font-size:17px}
@media(max-width:1000px){[style*="columns:repeat(5"]{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:640px){[style*="columns:repeat"]{grid-template-columns:1fr!important}}
