/* ============================================================
   ENERGY EXCHANGE MARKET — SUBPAGE STYLES
   Shared across capacity.html, demand-response.html,
   procurement.html, analytics.html, about.html, audit.html
   ============================================================ */

/* ─────────────────────────────────────────
   SUBPAGE HERO
───────────────────────────────────────── */
.sp-hero{position:relative;padding:160px 0 5rem;background:var(--ink);overflow:hidden;min-height:52vh;display:flex;align-items:center}
.sp-hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.sp-hero-inner{position:relative;z-index:1;max-width:800px}
.sp-breadcrumb{font-size:.8rem;color:rgba(255,255,255,.35);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}
.sp-breadcrumb a{color:rgba(255,255,255,.45);transition:color var(--t)}
.sp-breadcrumb a:hover{color:rgba(255,255,255,.75)}
.sp-breadcrumb span{color:rgba(255,255,255,.2)}
.sp-h1{font-family:var(--head);font-size:clamp(2.2rem,4.5vw,3.75rem);font-weight:800;line-height:1.1;letter-spacing:-.025em;color:#fff;margin:1rem 0 1.375rem}
.sp-sub{font-size:1.0625rem;color:rgba(255,255,255,.6);max-width:640px;line-height:1.78;margin-bottom:2.25rem}
.sp-hero-actions{display:flex;gap:1rem;flex-wrap:wrap}
@media(max-width:600px){.sp-hero-actions{flex-direction:column}.sp-hero-actions .btn{justify-content:center}}

/* Hero stats row (demand response) */
.sp-hero-stats{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;margin-top:2rem}
.sph-stat strong{display:block;font-family:var(--head);font-size:1.75rem;font-weight:800;color:var(--green2)}
.sph-stat span{font-size:.82rem;color:rgba(255,255,255,.45);line-height:1.45;max-width:160px;display:block}
.sph-div{width:1px;height:48px;background:rgba(255,255,255,.12);flex-shrink:0}
@media(max-width:600px){.sph-div{display:none}.sp-hero-stats{gap:1.5rem}}

/* ─────────────────────────────────────────
   SECTION LAYOUTS
───────────────────────────────────────── */
.sp-section{padding:5rem 0}
.dark-bg{background:var(--ink)}
.dark-bg .sh{color:var(--txlt)}
.dark-bg .pill{color:var(--green2);background:rgba(16,185,129,.08);border-color:rgba(16,185,129,.22)}

.sp-2col{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}
@media(max-width:860px){.sp-2col{grid-template-columns:1fr;gap:2.5rem}}

/* ─────────────────────────────────────────
   CAPACITY PAGE
───────────────────────────────────────── */
.sp-tag-cards{display:flex;flex-direction:column;gap:1.25rem}
.sp-tag-card{border-radius:var(--r4);padding:1.75rem;border:1.5px solid}
.sp-tag-card.pjm{background:rgba(30,58,138,.06);border-color:rgba(30,58,138,.2)}
.sp-tag-card.isone{background:rgba(6,78,59,.06);border-color:rgba(6,78,59,.2)}
.stc-logo{display:inline-block;font-family:var(--head);font-size:.75rem;font-weight:800;letter-spacing:.08em;padding:.4rem .9rem;border-radius:var(--r2);margin-bottom:.875rem}
.sp-tag-card.pjm .stc-logo{background:#1e3a8a;color:#fff}
.stc-logo.isone-l{background:#064E3B;color:#fff}
.sp-tag-card h3{font-size:1.0625rem;font-weight:700;color:var(--tx);margin-bottom:.5rem}
.sp-tag-card p{font-size:.9rem;color:var(--tx3);line-height:1.65;margin-bottom:.875rem}
.stc-stat{background:rgba(255,255,255,.7);border-radius:var(--r2);padding:.625rem .875rem}
.stc-stat strong{display:block;font-family:var(--head);font-size:1.25rem;font-weight:800;color:var(--tx);margin-bottom:2px}
.stc-stat span{font-size:.8rem;color:var(--tx3)}

/* Tier grid (dark) */
.sp-tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.sp-tier-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:var(--r4);padding:1.875rem;position:relative;transition:border-color var(--t)}
.sp-tier-card:hover{border-color:rgba(255,255,255,.2)}
.sp-tier-card.featured{background:rgba(37,99,235,.1);border-color:rgba(37,99,235,.35)}
.spt-feat-tag{position:absolute;top:-1px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;padding:.28rem .75rem;border-radius:0 0 var(--r2) var(--r2);white-space:nowrap}
.spt-num{font-family:var(--head);font-size:2.5rem;font-weight:800;color:var(--blue);line-height:1;margin-bottom:.25rem;opacity:.9}
.sp-tier-card h3{font-size:1.075rem;font-weight:700;color:#fff;margin-bottom:.625rem}
.sp-tier-card p{font-size:.875rem;color:rgba(255,255,255,.5);line-height:1.68;margin-bottom:1rem}
.spt-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;list-style:none;padding:0}
.spt-list li{font-size:.84rem;color:rgba(255,255,255,.48);padding-left:1.125rem;position:relative;line-height:1.5}
.spt-list li::before{content:'→';position:absolute;left:0;color:var(--blue2);font-size:.8rem}
.spt-result{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2);border-radius:var(--r2);padding:.625rem .875rem;font-size:.82rem;color:rgba(255,255,255,.55);line-height:1.55}
.spt-result::before{content:'✓ ';color:var(--green2);font-weight:700}
@media(max-width:900px){.sp-tier-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.sp-tier-grid{grid-template-columns:1fr}}

/* Comparison table */
.sp-compare-table{border:1.5px solid var(--bdrlt);border-radius:var(--r3);overflow:hidden}
.spc-head{display:grid;grid-template-columns:1.4fr 1fr 1.4fr;background:var(--ink);padding:.875rem 1.25rem;gap:1rem}
.spc-col{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.spc-col.typical{color:rgba(255,255,255,.4)}
.spc-col.eexm{color:var(--green2)}
.spc-row{display:grid;grid-template-columns:1.4fr 1fr 1.4fr;gap:1rem;padding:.875rem 1.25rem;border-bottom:1px solid var(--bdrlt);align-items:start}
.spc-row:last-child{border-bottom:none}
.spc-row:nth-child(even){background:var(--bg)}
.spc-label{font-size:.875rem;font-weight:600;color:var(--tx)}
.spc-typical{font-size:.84rem;color:var(--tx3);line-height:1.5}
.spc-eexm{font-size:.84rem;color:var(--tx2);line-height:1.5}
.spc-x{color:var(--red);font-weight:700;margin-right:4px}
.spc-check{color:var(--green);font-weight:700;margin-right:4px}
@media(max-width:700px){
  .spc-head,.spc-row{grid-template-columns:1fr}
  .spc-head .spc-col:first-child{display:none}
  .spc-row .spc-label{font-size:.8rem;color:var(--tx3);padding-bottom:0}
}

/* ─────────────────────────────────────────
   DEMAND RESPONSE PAGE
───────────────────────────────────────── */
.sp-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.sp3-card{background:var(--white);border-radius:var(--r4);padding:1.875rem;border:1.5px solid var(--bdrlt)}
.sp3-card.green-border{border-color:rgba(16,185,129,.3)}
.sp3-card.blue-border{border-color:rgba(37,99,235,.25)}
.sp3-card.purple-border{border-color:rgba(139,92,246,.25)}
.sp3-icon{font-size:2.25rem;margin-bottom:1rem;line-height:1}
.sp3-card h3{font-size:1.0625rem;font-weight:700;color:var(--tx);margin-bottom:.625rem}
.sp3-card p{font-size:.9rem;color:var(--tx3);line-height:1.7}
@media(max-width:900px){.sp-3col{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.sp-3col{grid-template-columns:1fr}}

/* Program cards (dark) */
.sp-program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.sp-prog-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:var(--r4);padding:1.875rem}
.spp-market{display:inline-block;font-family:var(--head);font-size:.7rem;font-weight:800;letter-spacing:.08em;padding:.35rem .875rem;border-radius:var(--rfull);margin-bottom:.875rem}
.pjm-badge{background:#1e3a8a;color:#fff}
.isone-badge{background:#064E3B;color:#fff}
.special-badge{background:rgba(139,92,246,.25);color:#A78BFA}
.sp-prog-card h3{font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:.625rem}
.sp-prog-card p{font-size:.875rem;color:rgba(255,255,255,.5);line-height:1.65;margin-bottom:1rem}
.spp-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:.5rem}
.spp-list li{font-size:.84rem;color:rgba(255,255,255,.45);line-height:1.5;padding-left:1.125rem;position:relative}
.spp-list li::before{content:'·';position:absolute;left:0;color:var(--green2);font-weight:700}
@media(max-width:900px){.sp-program-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.sp-program-grid{grid-template-columns:1fr}}

/* Process steps */
.sp-process-steps{display:flex;flex-direction:column;gap:1.5rem}
.sps-step{display:flex;align-items:flex-start;gap:1rem}
.sps-n{width:36px;height:36px;border-radius:50%;background:rgba(37,99,235,.1);border:1px solid rgba(37,99,235,.25);color:var(--blue);font-family:var(--head);font-size:.875rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.sps-step strong{display:block;font-size:.9375rem;font-weight:700;color:var(--tx);margin-bottom:.3rem}
.sps-step p{font-size:.875rem;color:var(--tx3);line-height:1.65;margin:0}

/* ─────────────────────────────────────────
   PROCUREMENT PAGE
───────────────────────────────────────── */
.sp-4grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:3rem}
.sp4-card{border-radius:var(--r3);padding:1.75rem;border:1.5px solid var(--bdrlt)}
.sp4-card.fixed-c{border-color:rgba(37,99,235,.25);background:rgba(37,99,235,.03)}
.sp4-card.index-c{border-color:rgba(245,158,11,.25);background:rgba(245,158,11,.03)}
.sp4-card.blend-c{border-color:rgba(16,185,129,.25);background:rgba(16,185,129,.03)}
.sp4-card.pass-c{border-color:rgba(100,116,139,.2);background:rgba(100,116,139,.03)}
.sp4-tag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.25rem .625rem;border-radius:var(--rfull);margin-bottom:.75rem}
.fixed-tag{background:rgba(37,99,235,.1);color:var(--blue3)}
.index-tag{background:rgba(245,158,11,.12);color:#B45309}
.blend-tag{background:rgba(16,185,129,.1);color:#059669}
.pass-tag{background:rgba(100,116,139,.1);color:var(--tx3)}
.sp4-card h3{font-size:1.0625rem;font-weight:700;color:var(--tx);margin-bottom:.5rem}
.sp4-card p{font-size:.875rem;color:var(--tx3);line-height:1.65;margin-bottom:.75rem}
.sp4-best{font-size:.8rem;font-style:italic;color:var(--tx3)}
.sp4-best strong{font-weight:600;color:var(--tx2)}
@media(max-width:600px){.sp-4grid{grid-template-columns:1fr}}

/* Contract fine print (3 risks) */
.sp-risk-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.sp-risk-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:var(--r3);padding:1.5rem}
.src-num{font-family:var(--head);font-size:2rem;font-weight:800;color:rgba(255,255,255,.06);line-height:1;margin-bottom:.25rem}
.sp-risk-card h3{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.5rem}
.sp-risk-card p{font-size:.875rem;color:rgba(255,255,255,.48);line-height:1.65}
@media(max-width:700px){.sp-risk-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.sp-risk-grid{grid-template-columns:1fr}}

/* ─────────────────────────────────────────
   ANALYTICS PAGE
───────────────────────────────────────── */
.sp-an-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.span-card{background:var(--white);border:1.5px solid var(--bdrlt);border-radius:var(--r4);padding:1.875rem;transition:transform var(--t),box-shadow var(--t)}
.span-card:hover{transform:translateY(-4px);box-shadow:var(--sh3)}
.span-card.feat{border-color:var(--blue)}
.span-icon{width:52px;height:52px;border-radius:var(--r3);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
.span-icon.blue{background:rgba(37,99,235,.1);color:var(--blue)}
.span-icon.green{background:rgba(16,185,129,.1);color:var(--green)}
.span-icon.purple{background:rgba(139,92,246,.1);color:#7C3AED}
.span-card h3{font-size:1.0625rem;font-weight:700;color:var(--tx);margin-bottom:.625rem}
.span-card p{font-size:.9rem;color:var(--tx3);line-height:1.7}
@media(max-width:860px){.sp-an-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.sp-an-grid{grid-template-columns:1fr}}

.sp-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin-top:3rem}
.spd-col h3{font-size:1.0625rem;font-weight:700;color:#fff;margin-bottom:.75rem}
.spd-col p{font-size:.9rem;color:rgba(255,255,255,.52);line-height:1.72}
@media(max-width:700px){.sp-data-grid{grid-template-columns:1fr;gap:2rem}}

.sp-quote-block{background:rgba(37,99,235,.08);border:1px solid rgba(37,99,235,.2);border-radius:var(--r3);padding:1.75rem 2rem;text-align:center;margin-top:3rem}
.sp-quote-block blockquote{font-family:var(--head);font-size:1.25rem;font-weight:700;color:var(--tx);font-style:normal;line-height:1.5}
.sp-quote-block blockquote::before{content:'"';color:var(--blue);font-size:2rem;line-height:0;vertical-align:-.25em;margin-right:.25rem}
.sp-quote-block blockquote::after{content:'"';color:var(--blue);font-size:2rem;line-height:0;vertical-align:-.25em;margin-left:.25rem}

/* ─────────────────────────────────────────
   ABOUT PAGE
───────────────────────────────────────── */
.sp-philosophy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.spp-card{background:var(--white);border:1.5px solid var(--bdrlt);border-radius:var(--r4);padding:2rem}
.spp-icon{width:56px;height:56px;border-radius:50%;background:rgba(37,99,235,.08);display:flex;align-items:center;justify-content:center;color:var(--blue);margin-bottom:1.25rem}
.spp-card h3{font-size:1.0625rem;font-weight:700;color:var(--tx);margin-bottom:.625rem}
.spp-card p{font-size:.9rem;color:var(--tx3);line-height:1.72}
@media(max-width:700px){.sp-philosophy-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.sp-philosophy-grid{grid-template-columns:1fr}}

.sp-bio-grid{display:grid;grid-template-columns:340px 1fr;gap:3rem;align-items:start;margin-top:3rem}
.spb-card{background:var(--ink);border-radius:var(--r4);padding:2.5rem;text-align:center}
.spb-avatar{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--blue3));color:#fff;font-family:var(--head);font-size:1.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}
.spb-card h3{font-family:var(--head);font-size:1.375rem;font-weight:700;color:#fff;margin-bottom:.375rem}
.spb-title{font-size:.9rem;color:rgba(255,255,255,.5);display:block;margin-bottom:.375rem;line-height:1.4}
.spb-market{font-size:.8rem;color:var(--green2);font-weight:600;display:block;margin-bottom:1.25rem}
.spb-linkedin{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;color:#60A5FA;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:3px 10px;margin-top:5px;transition:background var(--t),color var(--t)}
.spb-linkedin:hover{background:rgba(255,255,255,.25);color:#93C5FD}
.spb-quote{font-family:var(--head);font-size:1.125rem;font-weight:600;color:var(--tx);line-height:1.55;border-left:3px solid var(--blue);padding-left:1.25rem;margin:0 0 2rem;font-style:normal}
.sp-standard-list{display:flex;flex-direction:column;gap:1.125rem}
.ssl-item{display:flex;align-items:flex-start;gap:.875rem;padding:1.125rem 1.25rem;background:var(--bg);border-radius:var(--r2);border:1px solid var(--bdrlt)}
.ssl-icon{font-size:1.375rem;flex-shrink:0;line-height:1;padding-top:2px}
.ssl-item strong{display:block;font-size:.9375rem;font-weight:700;color:var(--tx);margin-bottom:.25rem}
.ssl-item span{font-size:.875rem;color:var(--tx3);line-height:1.65}
@media(max-width:860px){.sp-bio-grid{grid-template-columns:1fr;gap:2rem}.spb-card{padding:2rem}}

/* ─────────────────────────────────────────
   AUDIT PAGE (Secure Intake)
───────────────────────────────────────── */
.audit-page-hero{padding:140px 0 3rem;background:var(--bg);border-bottom:1px solid var(--bdrlt);text-align:center}
.audit-page-hero .pill{margin-inline:auto}
.audit-page-hero h1{font-family:var(--head);font-size:clamp(1.875rem,3.5vw,2.875rem);font-weight:800;color:var(--tx);margin-bottom:.875rem;letter-spacing:-.02em}
.audit-page-hero p{font-size:1.0625rem;color:var(--tx3);max-width:580px;margin-inline:auto;line-height:1.72}

.audit-full-wrapper{display:grid;grid-template-columns:1fr 1.1fr;gap:3rem;align-items:start;padding:4rem 0}
@media(max-width:900px){.audit-full-wrapper{grid-template-columns:1fr;gap:2.5rem}}

.af-full-trust .pill{margin-bottom:1rem}
.af-full-trust h2{font-family:var(--head);font-size:1.75rem;font-weight:800;color:var(--tx);margin-bottom:.875rem;line-height:1.25}
.af-full-trust p{font-size:.9375rem;color:var(--tx3);line-height:1.72;margin-bottom:1.75rem}

.af-full-form-wrap{background:var(--white);border:1.5px solid var(--bdrlt);border-radius:var(--r4);padding:2.25rem;box-shadow:var(--sh2)}
.af-full-form-wrap h3{font-family:var(--head);font-size:1.125rem;font-weight:700;color:var(--tx);margin-bottom:.375rem}
.af-full-form-wrap .af-sub{font-size:.84rem;color:var(--tx3);margin-bottom:1.5rem;display:block}

.af-full-security{display:flex;align-items:flex-start;gap:.625rem;background:rgba(16,185,129,.06);border:1px solid rgba(16,185,129,.18);border-radius:var(--r2);padding:.75rem 1rem;margin-bottom:1.5rem;font-size:.84rem;color:var(--tx2);line-height:1.55}

/* Checklist items (audit list) */
.audit-list-items{display:flex;flex-direction:column;gap:.875rem;margin-bottom:1.75rem}
.ali-item{display:flex;align-items:flex-start;gap:.75rem}
.ali-check{width:24px;height:24px;border-radius:50%;background:rgba(16,185,129,.12);color:var(--green);font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.ali-item strong{display:block;font-size:.9rem;font-weight:700;color:var(--tx);margin-bottom:2px}
.ali-item span{font-size:.84rem;color:var(--tx3);line-height:1.55}

.af-trust-signals{display:flex;flex-direction:column;gap:.625rem;margin-top:1.5rem}
.ats-item{font-size:.84rem;color:var(--tx3);display:flex;align-items:flex-start;gap:.5rem;line-height:1.5}

/* ═══════════════════════════════════════
   SUBPAGE MOBILE POLISH
═══════════════════════════════════════ */

/* ── 768px ── */
@media(max-width:768px){
  .sp-hero{padding-top:130px;min-height:auto}
  .sp-section{padding:3.5rem 0}
  .dark-bg.sp-section{padding:3.5rem 0}
  .sp-compare-table{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r3)}
  .spc-head,.spc-row{min-width:520px}
  .sp-quote-block{padding:1.75rem}
  .sp-tier-card{padding:1.5rem}
  .sp-prog-card{padding:1.25rem}
  .sp4-card{padding:1.5rem}
  .audit-page-hero{padding:120px 0 2.5rem}
  .af-full-trust{padding:2rem 1.25rem}
  .af-full-form-wrap{padding:1.75rem}
  .audit-full-wrapper{padding:2.5rem 0}
}

/* ── 640px ── */
@media(max-width:640px){
  .sp-hero{padding:100px 0 2.5rem;min-height:0}
  .sp-h1{font-size:clamp(1.85rem,6.5vw,2.75rem)}
  .sp-breadcrumb{font-size:.75rem}
  .sp-sub{font-size:.9375rem;margin-bottom:1.5rem}
  .sp-section{padding:3rem 0}
  .dark-bg.sp-section{padding:3rem 0}
  .sp-hero-inner{padding:0 1.25rem}
  .sp-hero-stats{gap:1.25rem}
  .sph-stat strong{font-size:1.5rem}
  .audit-page-hero{padding:100px 0 2rem}
  .audit-page-hero h1{font-size:clamp(1.75rem,6vw,2.5rem)}
  .af-full-trust{padding:1.5rem 1rem}
  .af-full-form-wrap{padding:1.5rem 1rem}
  .audit-full-wrapper{padding:2rem 0}
  .audit-list-items{gap:.625rem}
  .sp-bio-grid .spb-card{padding:1.5rem}
  .sp-philosophy-grid{gap:1rem}
  .spp-card{padding:1.25rem}
  .sp-standard-list{gap:.75rem}
  .ssl-item{gap:.625rem}
  .sp-tag-card{padding:1.25rem}
  .sp-process-steps{gap:1rem}
  .sps-step{gap:.75rem}
  .sp-an-grid{gap:1rem}
  .span-card{padding:1.25rem}
  .sp-4grid{gap:1rem}
  .sp4-card{padding:1.25rem}
  .sp-risk-grid{gap:1rem}
}

/* ── 480px ── */
@media(max-width:480px){
  .sp-hero{padding:90px 0 2rem}
  .sp-h1{font-size:clamp(1.6rem,7vw,2.2rem);line-height:1.15}
  .sp-sub{font-size:.9rem}
  .sph-div{display:none}
  .sp-hero-stats{flex-wrap:wrap;gap:1rem}
  .sph-stat strong{font-size:1.35rem}
  .sp-compare-table{border-radius:var(--r2)}
  .spc-head,.spc-row{min-width:440px}
  .sp-tier-card{padding:1.25rem}
  .sp-prog-card{padding:1rem}
  .sp4-card{padding:1rem}
  .spb-avatar{width:56px;height:56px;font-size:1.25rem}
  .sp-section{padding:2.5rem 0}
  /* With ticker hidden, tighten hero top-padding */
  .sp-hero{padding-top:80px}
  .sp-h1{font-size:clamp(1.55rem,7vw,2rem);line-height:1.15}
  .sp-sub{font-size:.875rem}
  .audit-page-hero{padding-top:80px}
}

/* ── Misc flow fixes ── */
@media(max-width:640px){
  /* Prevent any fixed-width element creating horizontal scroll */
  .sp-section .container{overflow-x:hidden}
  /* Tighten dark-bg section padding */
  .dark-bg.sp-section{padding:2.75rem 0}
}

@media(max-width:400px){
  .sp-hero-actions{flex-direction:column}
  .sp-hero-actions .btn{justify-content:center;width:100%}
}

/* ─────────────────────────────────────────
   SHADOW BILLING ENGINE — analytics.html
───────────────────────────────────────── */
.sbe-inputs{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin:2rem 0 2.5rem}
.sbe-input-group{display:flex;flex-direction:column;gap:.4rem;flex:1;min-width:180px}
.sbe-input-group label{font-size:.8rem;font-weight:600;color:var(--tx2);text-transform:uppercase;letter-spacing:.06em}
.sbe-input-group input{padding:.7rem .875rem;background:var(--bg);border:1px solid var(--bdrlt);border-radius:var(--r2);font-size:1rem;color:var(--tx);outline:none;transition:var(--t);-webkit-appearance:none}
.sbe-input-group input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.1)}

.command-center-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:1.5rem}

.sbe-card{background:var(--white);border:1px solid var(--bdrlt);border-radius:var(--r3);padding:1.5rem 1.75rem;border-left:4px solid var(--blue);box-shadow:var(--sh1);transition:box-shadow var(--t)}
.sbe-card:hover{box-shadow:var(--sh2)}
.sbe-card-alert{border-left-color:var(--red)}
.sbe-card-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--tx3);margin:0 0 .5rem}
.sbe-card-value{font-size:2rem;font-weight:800;color:var(--tx);line-height:1.1;margin:.35rem 0 .5rem;font-family:var(--head)}
.sbe-card-sub{font-size:.8rem;color:var(--tx3);margin:0}

.sbe-rating{font-weight:700}
.rating-good{color:var(--green)}
.rating-warn{color:var(--orange)}

.sbe-total{display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--txlt);border-radius:var(--r3);padding:1.375rem 2rem;margin-top:.25rem}
.sbe-total-label{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.5)}
.sbe-total-value{font-family:var(--head);font-size:1.75rem;font-weight:800;color:var(--green2)}

.sbe-disc{font-size:.78rem;color:var(--tx3);font-style:italic;margin-top:1.25rem;line-height:1.6}

@media(max-width:640px){
  .sbe-inputs{flex-direction:column;align-items:stretch}
  .sbe-inputs .btn{width:100%}
  .sbe-total{flex-direction:column;text-align:center;gap:.5rem;padding:1.25rem}
}
