/* =====================================================
   CORPORATE CARBON OFFSET COST CALCULATOR
   USFinanceCalculators.com | Kadence Integration
   ===================================================== */
:root{
  --cc-blue:   var(--global-palette1,#002868);
  --cc-char:   var(--global-palette3,#1D1D1F);
  --cc-gray:   var(--global-palette4,#5F6368);
  --cc-border: var(--global-palette5,#E0E4E8);
  --cc-bg:     var(--global-palette6,#F7F9FC);
  --cc-white:  var(--global-palette7,#FFFFFF);
  --cc-red:    var(--global-palette8,#BF0A30);
  --cc-green:  var(--global-palette9,#00875A);
  --cc-amber:  #D97706;
  --cc-teal:   #0891B2;
  --cc-purple: #7C3AED;
  --cc-lime:   #16A34A;
  --cc-slate:  #475569;
  --cc-navy:   #001840;
}
#ccWrapper{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;max-width:1200px;margin:0 auto;color:var(--cc-char);-webkit-font-smoothing:antialiased;}

/* HEADER */
.cc-header{background:linear-gradient(135deg,#000a00 0%,#001a0a 40%,#003318 75%,#005522 100%);border-radius:18px;padding:36px 32px 28px;text-align:center;margin-bottom:24px;position:relative;overflow:hidden;}
.cc-header::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 10% 65%,rgba(0,40,104,.2) 0%,transparent 55%),radial-gradient(ellipse at 90% 35%,rgba(8,145,178,.15) 0%,transparent 55%);pointer-events:none;}
.cc-header::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:44px 44px;pointer-events:none;}
.cc-icon{font-size:2.6rem;display:block;margin-bottom:12px;position:relative;z-index:1;}
.cc-title{font-family:'Montserrat','Inter',sans-serif!important;font-size:clamp(1.3rem,3vw,2rem)!important;font-weight:800!important;color:#fff!important;margin:0 0 10px!important;line-height:1.2!important;position:relative;z-index:1;}
.cc-subtitle{font-size:.87rem;color:rgba(255,255,255,.72);max-width:860px;margin:0 auto 22px;line-height:1.65;position:relative;z-index:1;}
.cc-badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;position:relative;z-index:1;}
.cc-badge{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.88);font-size:.7rem;font-weight:600;padding:4px 11px;border-radius:20px;letter-spacing:.02em;}

/* ENTITY TYPE */
.cc-entity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px;}
.cc-entity-btn{border:2px solid var(--cc-border);background:var(--cc-white);border-radius:12px;padding:14px 10px;cursor:pointer;text-align:center;transition:all .2s;}
.cc-entity-btn .eb-icon{font-size:1.5rem;display:block;margin-bottom:6px;}
.cc-entity-btn .eb-label{font-family:'Montserrat','Inter',sans-serif;font-size:.74rem;font-weight:800;color:var(--cc-char);display:block;margin-bottom:3px;}
.cc-entity-btn .eb-desc{font-size:.67rem;color:var(--cc-gray);line-height:1.35;}
.cc-entity-btn.active{border-color:var(--cc-lime);background:rgba(22,163,74,.06);}
.cc-entity-btn.active .eb-label{color:var(--cc-lime);}

/* MODULE TABS */
.cc-tabs{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:20px;}
.cc-tab{padding:9px 4px;border:1.5px solid var(--cc-border);background:var(--cc-white);color:var(--cc-gray);font-family:'Montserrat','Inter',sans-serif;font-size:.6rem;font-weight:700;border-radius:9px;cursor:pointer;transition:all .2s;text-align:center;line-height:1.3;}
.cc-tab .ct-icon{font-size:1.1rem;display:block;margin-bottom:3px;}
.cc-tab.active{background:var(--cc-lime);color:#fff;border-color:var(--cc-lime);box-shadow:0 3px 10px rgba(22,163,74,.25);}
.cc-tab.completed{border-color:rgba(22,163,74,.4);background:rgba(22,163,74,.06);}
.cc-tab.completed .ct-icon::after{content:'✓';font-size:.6rem;color:var(--cc-lime);}
.cc-content{display:none;}.cc-content.active{display:block;}

/* LAYOUT */
.cc-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start;}
.cc-panel{background:var(--cc-white);border:1px solid var(--cc-border);border-radius:16px;padding:22px;}
.cc-result-panel{background:var(--cc-bg);border:1px solid var(--cc-border);border-radius:16px;padding:22px;}

/* SECTION HEADER */
.cc-sh{font-family:'Montserrat','Inter',sans-serif;font-size:.69rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding-bottom:8px;border-bottom:2px solid var(--cc-border);margin:0 0 14px;display:flex;align-items:center;gap:7px;}
.cc-sh.green{color:var(--cc-lime);}.cc-sh.blue{color:var(--cc-blue);}.cc-sh.amber{color:var(--cc-amber);}.cc-sh.teal{color:var(--cc-teal);}.cc-sh.purple{color:var(--cc-purple);}.cc-sh.red{color:var(--cc-red);}.cc-sh.slate{color:var(--cc-slate);}
.cc-gap{margin-top:20px;}

/* FORMS */
.cc-r2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.cc-r3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;}
.cc-field{margin-bottom:10px;}.cc-field:last-child{margin-bottom:0;}
.cc-field label{display:block;font-size:.74rem;font-weight:600;color:var(--cc-char);margin-bottom:4px;}
.cc-field label .h{font-weight:400;color:var(--cc-gray);font-size:.67rem;}
.cc-iw{display:flex;align-items:center;border:1.5px solid var(--cc-border);border-radius:8px;overflow:hidden;background:var(--cc-white);transition:border-color .2s;}
.cc-iw:focus-within{border-color:var(--cc-lime);}
.cc-pre,.cc-suf{background:var(--cc-bg);color:var(--cc-gray);font-size:.77rem;font-weight:600;padding:0 8px;height:36px;display:flex;align-items:center;flex-shrink:0;border-right:1.5px solid var(--cc-border);}
.cc-suf{border-right:none;border-left:1.5px solid var(--cc-border);}
.cc-iw input,.cc-iw select{flex:1;height:36px;border:none;outline:none;background:transparent;font-size:.83rem;color:var(--cc-char);padding:0 8px;min-width:0;}
.cc-sel{width:100%;height:36px;border:1.5px solid var(--cc-border);border-radius:8px;background:var(--cc-white);font-size:.82rem;color:var(--cc-char);padding:0 8px;outline:none;cursor:pointer;}
.cc-sel:focus{border-color:var(--cc-lime);}

/* SCOPE ACTIVITY TABLE */
.cc-activity-tbl{width:100%;border-collapse:collapse;font-size:.78rem;margin-bottom:12px;}
.cc-activity-tbl thead tr{background:var(--cc-char);}
.cc-activity-tbl thead th{padding:7px 9px;color:#fff;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-align:left;}
.cc-activity-tbl thead th:last-child{text-align:right;}
.cc-activity-tbl tbody tr:nth-child(even){background:var(--cc-bg);}
.cc-activity-tbl tbody td{padding:6px 9px;color:var(--cc-char);font-size:.78rem;}
.cc-activity-tbl tbody td:last-child{text-align:right;font-weight:700;font-family:'Montserrat',sans-serif;color:var(--cc-lime);}
.cc-activity-tbl tfoot td{padding:8px 9px;background:var(--cc-lime);color:#fff;font-weight:800;font-family:'Montserrat',sans-serif;}
.cc-act-input{width:100%;border:1.5px solid var(--cc-border);border-radius:6px;padding:4px 7px;font-size:.79rem;background:var(--cc-white);outline:none;}
.cc-act-input:focus{border-color:var(--cc-lime);}

/* OFFSET MATRIX TABLE */
.cc-matrix-tbl{width:100%;border-collapse:collapse;font-size:.76rem;margin-bottom:12px;}
.cc-matrix-tbl thead tr{background:var(--cc-navy);}
.cc-matrix-tbl thead th{padding:8px 9px;color:#fff;font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-align:left;}
.cc-matrix-tbl tbody tr{cursor:pointer;transition:background .15s;}
.cc-matrix-tbl tbody tr:nth-child(even){background:var(--cc-bg);}
.cc-matrix-tbl tbody tr:hover{background:rgba(22,163,74,.08);}
.cc-matrix-tbl tbody tr.selected{background:rgba(22,163,74,.15);outline:2px solid var(--cc-lime);}
.cc-matrix-tbl tbody td{padding:8px 9px;vertical-align:middle;}
.cc-quality-stars{color:#f59e0b;font-size:.75rem;}
.cc-sbti-badge{display:inline-block;padding:2px 7px;border-radius:10px;font-size:.6rem;font-weight:700;}
.cc-sbti-badge.yes{background:rgba(22,163,74,.15);color:var(--cc-lime);}
.cc-sbti-badge.no{background:rgba(191,10,48,.12);color:var(--cc-red);}
.cc-durability{font-size:.67rem;color:var(--cc-gray);}
.cc-price-range{font-family:'Montserrat',sans-serif;font-size:.79rem;font-weight:700;}

/* ALERTS */
.cc-info{background:#f0f9ff;border:1px solid rgba(8,145,178,.25);border-radius:9px;padding:10px 14px;margin-bottom:12px;font-size:.77rem;line-height:1.55;display:flex;gap:8px;}
.cc-warn{background:#fffbeb;border:1px solid rgba(217,119,6,.3);border-radius:9px;padding:10px 14px;margin-bottom:12px;font-size:.77rem;line-height:1.55;display:flex;gap:8px;}
.cc-success{background:#f0fbf6;border:1px solid rgba(22,163,74,.25);border-radius:9px;padding:10px 14px;margin-bottom:12px;font-size:.77rem;line-height:1.55;display:flex;gap:8px;}
.cc-danger{background:#fff5f7;border:1px solid rgba(191,10,48,.3);border-radius:9px;padding:10px 14px;margin-bottom:12px;font-size:.77rem;line-height:1.55;display:flex;gap:8px;}

/* AD */
.ad-container.ad-in-calc{background:var(--cc-bg);border:1.5px dashed var(--cc-border);border-radius:10px;min-height:90px;display:flex;align-items:center;justify-content:center;color:var(--cc-gray);font-size:.72rem;margin:14px 0;text-align:center;}

/* BUTTONS */
.cc-calc-btn{width:100%;padding:13px;background:var(--cc-lime);color:#fff;font-family:'Montserrat','Inter',sans-serif;font-size:.92rem;font-weight:800;border:none;border-radius:10px;cursor:pointer;letter-spacing:.04em;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;}
.cc-calc-btn:hover{background:#15803d;transform:translateY(-1px);box-shadow:0 6px 20px rgba(22,163,74,.3);}
.cc-reset-btn{width:100%;padding:9px;background:transparent;color:var(--cc-gray);font-size:.76rem;font-weight:600;border:1.5px solid var(--cc-border);border-radius:9px;cursor:pointer;margin-top:7px;transition:all .2s;}
.cc-reset-btn:hover{border-color:var(--cc-red);color:var(--cc-red);}
.cc-next-btn{width:100%;padding:10px;background:var(--cc-blue);color:#fff;font-family:'Montserrat','Inter',sans-serif;font-size:.82rem;font-weight:700;border:none;border-radius:9px;cursor:pointer;margin-top:8px;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px;}
.cc-next-btn:hover{background:#001a4d;}
.cc-disc{font-size:.66rem;color:var(--cc-gray);line-height:1.55;text-align:center;margin-top:12px;padding-top:12px;border-top:1px solid var(--cc-border);}

/* RESULTS */
.cc-empty{text-align:center;padding:40px 16px;color:var(--cc-gray);}
.cc-empty-icon{font-size:2.8rem;display:block;margin-bottom:12px;opacity:.3;}
.cc-result-inner{display:none;}.cc-result-inner.show{display:block;}

/* HERO */
.cc-hero{border-radius:14px;padding:20px;text-align:center;margin-bottom:14px;position:relative;overflow:hidden;}
.cc-hero.green-hero{background:linear-gradient(135deg,#000a00,#003318);}
.cc-hero.blue-hero{background:linear-gradient(135deg,#000a20,#002868);}
.cc-hero.amber-hero{background:linear-gradient(135deg,#1c0a00,#d97706);}
.cc-hero::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:38px 38px;pointer-events:none;}
.cc-hero-eyebrow{font-size:.67rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:5px;position:relative;z-index:1;}
.cc-hero-val{font-family:'Montserrat','Inter',sans-serif;font-size:clamp(2rem,4.5vw,2.8rem);font-weight:900;line-height:1;margin-bottom:4px;position:relative;z-index:1;}
.cc-hero-val.green{color:#4ade80;}.cc-hero-val.blue{color:#60a5fa;}.cc-hero-val.amber{color:#fbbf24;}
.cc-hero-sub{font-size:.79rem;color:rgba(255,255,255,.68);position:relative;z-index:1;line-height:1.5;}
.cc-hero-pills{display:flex;gap:8px;justify-content:center;margin-top:12px;flex-wrap:wrap;position:relative;z-index:1;}
.cc-hero-pill{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.88);font-size:.69rem;font-weight:600;padding:4px 11px;border-radius:20px;}

/* STATS */
.cc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;}
.cc-stat{background:var(--cc-white);border:1px solid var(--cc-border);border-radius:10px;padding:10px 12px;text-align:center;}
.cc-stat.green{border-color:rgba(22,163,74,.25);background:#f0fbf6;}
.cc-stat.blue{border-color:rgba(0,40,104,.2);background:#eff6ff;}
.cc-stat.amber{border-color:rgba(217,119,6,.25);background:#fffbeb;}
.cc-stat.red{border-color:rgba(191,10,48,.25);background:#fff5f7;}
.cc-stat.teal{border-color:rgba(8,145,178,.25);background:#f0f9ff;}
.cc-stat.purple{border-color:rgba(124,58,237,.2);background:#f5f3ff;}
.cc-stat-lbl{font-size:.59rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--cc-gray);margin-bottom:3px;}
.cc-stat-val{font-family:'Montserrat','Inter',sans-serif;font-size:.9rem;font-weight:800;}
.cc-stat.green .cc-stat-val{color:var(--cc-lime);}
.cc-stat.blue .cc-stat-val{color:var(--cc-blue);}
.cc-stat.amber .cc-stat-val{color:var(--cc-amber);}
.cc-stat.red .cc-stat-val{color:var(--cc-red);}
.cc-stat.teal .cc-stat-val{color:var(--cc-teal);}
.cc-stat.purple .cc-stat-val{color:var(--cc-purple);}

/* TABLE */
.cc-tbl-wrap{background:var(--cc-white);border:1px solid var(--cc-border);border-radius:12px;overflow:hidden;margin-bottom:14px;}
.cc-tbl-head{padding:10px 14px;font-family:'Montserrat','Inter',sans-serif;font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid var(--cc-border);}
.cc-row{display:flex;justify-content:space-between;align-items:center;padding:7px 14px;border-bottom:1px solid var(--cc-bg);font-size:.79rem;}
.cc-row:last-child{border-bottom:none;}
.cc-row.alt{background:var(--cc-bg);}
.cc-row.total{background:var(--cc-navy);}
.cc-row.total span{color:#fff;font-weight:800;font-family:'Montserrat','Inter',sans-serif;}
.cc-row.credit-row{background:#f0fbf6;}
.cc-row-lbl{color:var(--cc-char);font-weight:500;}
.cc-row-val{font-weight:700;font-family:'Montserrat','Inter',sans-serif;}

/* SCOPE BARS */
.cc-scope-bars{display:flex;gap:6px;margin-bottom:14px;}
.cc-scope-bar{flex:1;border-radius:10px;padding:12px;text-align:center;}
.cc-scope-bar.s1{background:linear-gradient(135deg,#1c0a00,#ea580c);color:#fff;}
.cc-scope-bar.s2{background:linear-gradient(135deg,#001840,#002868);color:#fff;}
.cc-scope-bar.s3{background:linear-gradient(135deg,#0a001a,#7c3aed);color:#fff;}
.cc-scope-bar-lbl{font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;opacity:.6;margin-bottom:5px;}
.cc-scope-bar-val{font-family:'Montserrat','Inter',sans-serif;font-size:1.1rem;font-weight:900;margin-bottom:3px;}
.cc-scope-bar-sub{font-size:.67rem;opacity:.7;}

/* SBTI PANEL */
.cc-sbti-panel{border-radius:12px;padding:14px;margin-bottom:14px;border:2px solid;}
.cc-sbti-panel.aligned{border-color:rgba(22,163,74,.4);background:#f0fbf6;}
.cc-sbti-panel.at-risk{border-color:rgba(217,119,6,.4);background:#fffbeb;}
.cc-sbti-panel.non-compliant{border-color:rgba(191,10,48,.4);background:#fff5f7;}
.cc-sbti-title{font-family:'Montserrat','Inter',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;margin-bottom:8px;}
.cc-sbti-panel.aligned .cc-sbti-title{color:var(--cc-lime);}
.cc-sbti-panel.at-risk .cc-sbti-title{color:var(--cc-amber);}
.cc-sbti-panel.non-compliant .cc-sbti-title{color:var(--cc-red);}

/* TAX BREAKDOWN */
.cc-tax-panel{background:var(--cc-white);border:1px solid var(--cc-border);border-radius:12px;overflow:hidden;margin-bottom:14px;}
.cc-tax-head{background:linear-gradient(135deg,#1c0a00,#d97706);padding:10px 14px;}
.cc-tax-head-txt{font-family:'Montserrat','Inter',sans-serif;font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#fff;}
.cc-tax-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 14px;}
.cc-tx-block{background:var(--cc-bg);border-radius:8px;padding:10px 12px;}
.cc-tx-lbl{font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--cc-gray);margin-bottom:3px;}
.cc-tx-val{font-family:'Montserrat','Inter',sans-serif;font-size:.92rem;font-weight:800;}
.cc-tx-sub{font-size:.67rem;color:var(--cc-gray);margin-top:2px;line-height:1.4;}

/* FORECAST TABLE */
.cc-forecast-tbl{width:100%;border-collapse:collapse;font-size:.76rem;}
.cc-forecast-tbl thead tr{background:var(--cc-lime);}
.cc-forecast-tbl thead th{padding:8px 9px;color:#fff;font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;text-align:right;}
.cc-forecast-tbl thead th:first-child{text-align:left;}
.cc-forecast-tbl tbody tr:nth-child(even){background:var(--cc-bg);}
.cc-forecast-tbl tbody td{padding:7px 9px;text-align:right;color:var(--cc-char);}
.cc-forecast-tbl tbody td:first-child{text-align:left;font-weight:600;}
.cc-forecast-tbl tbody td.rise{color:var(--cc-red);font-weight:700;}
.cc-forecast-tbl tfoot td{padding:8px 9px;background:var(--cc-navy);color:#fff;text-align:right;font-weight:800;font-family:'Montserrat',sans-serif;}
.cc-forecast-tbl tfoot td:first-child{text-align:left;}

/* COMPLIANCE PANEL */
.cc-compliance-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px;}
.cc-comp-card{border-radius:11px;padding:13px;}
.cc-comp-card.cal{background:linear-gradient(135deg,#1c0000,#bf0a30);color:#fff;}
.cc-comp-card.rggi{background:linear-gradient(135deg,#001840,#002868);color:#fff;}
.cc-comp-card.wa{background:linear-gradient(135deg,#004d40,#00875a);color:#fff;}
.cc-comp-card.vcm{background:linear-gradient(135deg,#1a0a00,#d97706);color:#fff;}
.cc-comp-lbl{font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;opacity:.65;margin-bottom:5px;}
.cc-comp-val{font-family:'Montserrat','Inter',sans-serif;font-size:1.1rem;font-weight:900;margin-bottom:3px;}
.cc-comp-sub{font-size:.69rem;opacity:.75;line-height:1.35;}

/* CHART */
.cc-chart-wrap{background:var(--cc-white);border:1px solid var(--cc-border);border-radius:12px;padding:14px;margin-bottom:14px;}
.cc-chart-title{font-family:'Montserrat','Inter',sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--cc-blue);margin-bottom:10px;}

/* SHADOW PRICE NPV */
.cc-npv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px;}
.cc-npv-card{border-radius:11px;padding:13px;text-align:center;border:1.5px solid var(--cc-border);}
.cc-npv-card.low{border-color:rgba(22,163,74,.3);background:#f0fbf6;}
.cc-npv-card.mid{border-color:rgba(217,119,6,.3);background:#fffbeb;}
.cc-npv-card.high{border-color:rgba(191,10,48,.3);background:#fff5f7;}
.cc-npv-lbl{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--cc-gray);margin-bottom:4px;}
.cc-npv-price{font-family:'Montserrat','Inter',sans-serif;font-size:.85rem;font-weight:800;margin-bottom:3px;}
.cc-npv-card.low .cc-npv-price{color:var(--cc-lime);}
.cc-npv-card.mid .cc-npv-price{color:var(--cc-amber);}
.cc-npv-card.high .cc-npv-price{color:var(--cc-red);}
.cc-npv-cost{font-size:.72rem;color:var(--cc-gray);}

/* ACTION */
.cc-action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;}
.cc-pdf-btn,.cc-wa-btn{padding:11px;border:none;border-radius:9px;font-family:'Montserrat','Inter',sans-serif;font-size:.78rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .2s;}
.cc-pdf-btn{background:var(--cc-red);color:#fff;}.cc-pdf-btn:hover{background:#9b0826;transform:translateY(-1px);}
.cc-wa-btn{background:#25D366;color:#fff;}.cc-wa-btn:hover{background:#128C7E;transform:translateY(-1px);}

/* RESPONSIVE */
@media(max-width:960px){.cc-layout{grid-template-columns:1fr;}.cc-tabs{grid-template-columns:repeat(4,1fr);}}
@media(max-width:768px){.cc-entity-grid{grid-template-columns:repeat(2,1fr);}.cc-r2,.cc-r3{grid-template-columns:1fr;}.cc-action-row{grid-template-columns:1fr;}.cc-stats{grid-template-columns:repeat(2,1fr);}.cc-scope-bars{flex-direction:column;}.cc-compliance-cards{grid-template-columns:1fr;}.cc-npv-grid{grid-template-columns:1fr;}.cc-tax-grid{grid-template-columns:1fr;}}
@media(max-width:480px){.cc-stats{grid-template-columns:1fr;}}

/* ════════════════════════════════════════════════
   MOBILE RESULT PANEL FIX — 2026-04-27
   Root causes fixed:
   1. CSS Grid min-width:auto overflow on .cc-layout children
   2. .cc-result-panel / .cc-panel not constrained to viewport
   3. Stats 3-col grid overflowing at mid-mobile
   4. Tabs overflow at very small screens
   5. Matrix / forecast table horizontal scroll
   6. Hero eyebrow long text wrapping
   7. NPV / compliance cards not collapsing early enough
   ════════════════════════════════════════════════ */

/* ── Fix 1: CSS Grid overflow root fix ──
   Grid items default to min-width:auto (content width).
   This causes them to overflow their 1fr container.
   Setting min-width:0 forces grid items to respect 1fr. */
#ccWrapper{overflow-x:hidden;width:100%;box-sizing:border-box;}
.cc-layout>.cc-panel,.cc-layout>.cc-result-panel{min-width:0;}
.cc-result-panel{overflow-x:hidden;min-width:0;}
.cc-result-inner{overflow-x:hidden;width:100%;box-sizing:border-box;}
.cc-panel{min-width:0;overflow-x:hidden;}

/* ── Fix 2: Hero text — prevent eyebrow from forcing width ── */
.cc-hero-eyebrow{white-space:normal;overflow-wrap:break-word;word-break:break-word;letter-spacing:.08em;}
.cc-hero-sub{overflow-wrap:break-word;word-break:break-word;}

/* ── Fix 3: All inner grid/flex containers ── */
.cc-stats>*,.cc-r2>*,.cc-r3>*,.cc-entity-grid>*,
.cc-npv-grid>*,.cc-compliance-cards>*,.cc-tax-grid>*{min-width:0;}

/* ── Fix 4: Table wrappers always scrollable ── */
.cc-tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
[style*="overflow-x:auto"]{-webkit-overflow-scrolling:touch;max-width:100%;}

/* ── Fix 5: Tabs — prevent tab bar overflow ── */
.cc-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px;}
.cc-tab{white-space:nowrap;min-width:0;flex-shrink:1;}

/* ════════ RESPONSIVE BREAKPOINTS ════════ */

/* 768px — tablet/large mobile */
@media(max-width:768px){
  /* Result panel tighter padding */
  .cc-result-panel{padding:14px 12px;}
  .cc-panel{padding:14px 12px;}

  /* Stats 2-column (already set) — ensure it sticks */
  .cc-stats{grid-template-columns:repeat(2,1fr)!important;gap:6px;}
  .cc-stat{padding:8px 10px;}
  .cc-stat-lbl{font-size:.56rem;}
  .cc-stat-val{font-size:.82rem;}

  /* Hero tighter */
  .cc-hero{padding:14px 12px;border-radius:11px;}
  .cc-hero-eyebrow{font-size:.6rem;letter-spacing:.07em;}

  /* NPV 3-col → 1-col */
  .cc-npv-grid{grid-template-columns:1fr!important;}

  /* Scope bars — stack vertically */
  .cc-scope-bars{flex-direction:column!important;gap:6px;}
  .cc-scope-bar{flex:none;}

  /* Tab bar — 4-col at 768px (already set), reduce text */
  .cc-tabs{grid-template-columns:repeat(4,1fr);}
  .cc-tab{padding:7px 3px;font-size:.55rem;}

  /* Forecast/matrix tables — enable scroll */
  .cc-forecast-tbl,.cc-matrix-tbl,.cc-activity-tbl{min-width:480px;}

  /* Header badges wrap */
  .cc-badges{gap:5px;}
  .cc-badge{font-size:.66rem;padding:3px 9px;}
}

/* 600px — mid mobile */
@media(max-width:600px){
  /* Hero value font */
  .cc-hero-val{font-size:clamp(1.7rem,9vw,2.4rem)!important;}
  .cc-hero-pills{gap:5px;margin-top:8px;}
  .cc-hero-pill{font-size:.63rem;padding:3px 8px;}

  /* NPV 3-col → 1-col */
  .cc-npv-grid{grid-template-columns:1fr!important;gap:7px;}

  /* Compliance cards 2-col → 1-col */
  .cc-compliance-cards{grid-template-columns:1fr!important;}

  /* Tabs → 4 scrollable */
  .cc-tabs{display:flex;overflow-x:auto;gap:4px;padding-bottom:4px;}
  .cc-tab{flex:0 0 auto;min-width:68px;padding:8px 6px;}

  /* Entity grid → 2 col */
  .cc-entity-grid{grid-template-columns:repeat(2,1fr)!important;}

  /* Reduce wrapper padding */
  #ccWrapper{padding:0 2px;}
}

/* 480px — small mobile (already has stats 1-col, extend) */
@media(max-width:480px){
  .cc-stats{grid-template-columns:1fr 1fr!important;}
  .cc-stat{padding:7px 8px;}
  .cc-stat-lbl{font-size:.53rem;letter-spacing:.04em;}
  .cc-stat-val{font-size:.78rem;}

  .cc-result-panel{padding:10px 8px;}
  .cc-panel{padding:10px 8px;}

  /* Header tighter */
  .cc-header{padding:22px 14px 18px;}
  .cc-title{font-size:clamp(1rem,5vw,1.4rem)!important;}

  /* Hide entity description on very small screens */
  .eb-desc{display:none;}
  .cc-entity-btn{padding:10px 6px;}

  /* Tabs font */
  .cc-tab{font-size:.52rem;padding:7px 4px;}
  .cc-tab .ct-icon{font-size:.95rem;}
}

/* 380px — very small (iPhone SE etc) */
@media(max-width:380px){
  .cc-stats{grid-template-columns:1fr!important;}
  .cc-entity-grid{grid-template-columns:repeat(2,1fr)!important;}
  .cc-hero-val{font-size:clamp(1.5rem,10vw,2rem)!important;}
  .cc-hero{padding:12px 10px;}
  .cc-result-panel{padding:8px 6px;}
  .cc-panel{padding:8px 6px;}
}

/* =====================================================
   HOW THIS CALCULATOR WORKS SECTION
   ===================================================== */

/* Collapsible toggle button */
.cc-hiw-toggle{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:none;
  border:none;
  padding:0;
  cursor:pointer;
  font-family:'Montserrat','Inter',sans-serif;
  color:inherit;
}
.cc-hiw-toggle-arrow{
  width:26px;height:26px;
  border-radius:50%;
  background:rgba(22,163,74,.1);
  border:1px solid rgba(22,163,74,.25);
  display:flex;align-items:center;justify-content:center;
  font-size:.85rem;
  transition:transform .3s ease,background .2s;
  flex-shrink:0;
}
.cc-hiw-toggle.open .cc-hiw-toggle-arrow{
  transform:rotate(180deg);
  background:rgba(22,163,74,.18);
}

/* Wrapper card */
.cc-hiw-wrap{
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  border-radius:16px;
  padding:20px 22px 0 22px;
  margin-bottom:20px;
  overflow:hidden;
}

/* Header row inside the card */
.cc-hiw-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-bottom:16px;
  border-bottom:2px solid var(--cc-border);
  margin-bottom:0;
}
.cc-hiw-title-block{
  display:flex;align-items:center;gap:10px;
}
.cc-hiw-icon{
  width:38px;height:38px;
  border-radius:10px;
  background:linear-gradient(135deg,#003318,#005522);
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;
  flex-shrink:0;
}
.cc-hiw-heading{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--cc-char);
}
.cc-hiw-sub{
  font-size:.7rem;
  color:var(--cc-gray);
  margin-top:2px;
  line-height:1.4;
}

/* Collapsible body */
.cc-hiw-body{
  max-height:0;
  overflow:hidden;
  transition:max-height .45s cubic-bezier(0.4,0,0.2,1), padding .3s ease;
  padding-top:0;
}
.cc-hiw-body.open{
  max-height:2000px;
  padding-top:18px;
}

/* Intro paragraph */
.cc-hiw-intro{
  font-size:.8rem;
  color:var(--cc-gray);
  line-height:1.72;
  margin:0 0 18px;
  padding:12px 14px;
  background:var(--cc-bg);
  border-radius:10px;
  border-left:3px solid var(--cc-lime);
}
.cc-hiw-intro strong{color:var(--cc-char);}

/* Steps grid */
.cc-hiw-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:14px;
}

/* Single step card */
.cc-hiw-step{
  display:flex;
  gap:12px;
  align-items:flex-start;
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-radius:12px;
  padding:14px;
  transition:border-color .2s, box-shadow .2s;
}
.cc-hiw-step:hover{
  border-color:rgba(22,163,74,.3);
  box-shadow:0 4px 14px rgba(22,163,74,.08);
}

/* Number bubble */
.cc-hiw-num{
  width:32px;height:32px;min-width:32px;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--cc-blue),var(--cc-navy));
  color:#fff;
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.75rem;
  font-weight:800;
  box-shadow:0 4px 10px rgba(0,40,104,.22);
  flex-shrink:0;
}

/* Special colors for step numbers */
.cc-hiw-step:nth-child(1) .cc-hiw-num{background:linear-gradient(135deg,#003318,#16a34a);}
.cc-hiw-step:nth-child(2) .cc-hiw-num{background:linear-gradient(135deg,#001840,#002868);}
.cc-hiw-step:nth-child(3) .cc-hiw-num{background:linear-gradient(135deg,#0a0020,#7c3aed);}
.cc-hiw-step:nth-child(4) .cc-hiw-num{background:linear-gradient(135deg,#1c0a00,#d97706);}
.cc-hiw-step:nth-child(5) .cc-hiw-num{background:linear-gradient(135deg,#004d40,#0891b2);}
.cc-hiw-step:nth-child(6) .cc-hiw-num{background:linear-gradient(135deg,#1a0000,#bf0a30);}
.cc-hiw-step:nth-child(7) .cc-hiw-num{background:linear-gradient(135deg,#003318,#005522);}

/* Step copy */
.cc-hiw-copy{}
.cc-hiw-copy h3{
  margin:0 0 5px;
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.77rem;
  font-weight:800;
  color:var(--cc-char);
  line-height:1.3;
}
.cc-hiw-copy p{
  margin:0;
  font-size:.73rem;
  color:var(--cc-gray);
  line-height:1.62;
}
.cc-hiw-copy .cc-hiw-tag{
  display:inline-block;
  margin-top:6px;
  font-size:.62rem;
  font-weight:700;
  padding:2px 8px;
  border-radius:20px;
  letter-spacing:.03em;
}
.cc-hiw-tag.green{background:rgba(22,163,74,.12);color:var(--cc-lime);}
.cc-hiw-tag.blue{background:rgba(0,40,104,.1);color:var(--cc-blue);}
.cc-hiw-tag.purple{background:rgba(124,58,237,.1);color:var(--cc-purple);}
.cc-hiw-tag.amber{background:rgba(217,119,6,.12);color:var(--cc-amber);}
.cc-hiw-tag.teal{background:rgba(8,145,178,.1);color:var(--cc-teal);}
.cc-hiw-tag.red{background:rgba(191,10,48,.1);color:var(--cc-red);}

/* Final CTA bar */
.cc-hiw-final{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:14px 16px;
  border-radius:12px;
  background:linear-gradient(135deg,rgba(0,51,24,.06),rgba(8,145,178,.06));
  border:1px solid rgba(22,163,74,.2);
  margin-bottom:20px;
}
.cc-hiw-final-icon{
  width:40px;height:40px;min-width:40px;
  border-radius:10px;
  background:#fff;
  border:1px solid rgba(22,163,74,.2);
  display:flex;align-items:center;justify-content:center;
  font-size:1.15rem;
}
.cc-hiw-final-copy{flex:1;}
.cc-hiw-final-copy strong{
  display:block;
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.76rem;
  font-weight:800;
  color:var(--cc-char);
  margin-bottom:3px;
}
.cc-hiw-final-copy span{
  font-size:.73rem;
  color:var(--cc-gray);
  line-height:1.58;
}

/* Progress pills row */
.cc-hiw-pills{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:16px;
}
.cc-hiw-pill{
  display:flex;align-items:center;gap:5px;
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  border-radius:20px;
  padding:4px 10px;
  font-size:.67rem;
  font-weight:600;
  color:var(--cc-gray);
}
.cc-hiw-pill-dot{
  width:6px;height:6px;
  border-radius:50%;
  flex-shrink:0;
}
.cc-hiw-pill-dot.green{background:var(--cc-lime);}
.cc-hiw-pill-dot.blue{background:var(--cc-blue);}
.cc-hiw-pill-dot.purple{background:var(--cc-purple);}
.cc-hiw-pill-dot.amber{background:var(--cc-amber);}
.cc-hiw-pill-dot.teal{background:var(--cc-teal);}
.cc-hiw-pill-dot.red{background:var(--cc-red);}
.cc-hiw-pill-dot.navy{background:var(--cc-navy);}

/* Time estimate strip */
.cc-hiw-time{
  display:flex;align-items:center;gap:8px;
  background:rgba(22,163,74,.06);
  border:1px solid rgba(22,163,74,.15);
  border-radius:8px;
  padding:8px 12px;
  margin-bottom:16px;
  font-size:.74rem;
  color:var(--cc-gray);
}
.cc-hiw-time strong{color:var(--cc-lime);font-family:'Montserrat','Inter',sans-serif;}
.cc-hiw-wrap, .cc-edu-section, .cc-edu-wrap,
.cc-tips-section, .cc-tips-wrap, .cc-faq-section,
.cc-faq-wrap, .cc-related-section, .cc-related-wrap,
.cc-disclaimer-section, .cc-disclaimer-wrap,
.cc-transparency-section {
  margin-top: 36px;
}
.cc-hiw-wrap::before, .cc-edu-section::before,
.cc-tips-section::before, .cc-faq-section::before {
  content: ''; display: block;
  width: 56px; height: 3px; border-radius: 99px;
  background: linear-gradient(90deg, var(--cc-lime), var(--cc-teal));
  margin: 0 auto 32px;
}

/* MOBILE */
@media(max-width:768px){
  .cc-hiw-wrap{padding:16px 16px 0 16px;}
  .cc-hiw-grid{grid-template-columns:1fr;}
  .cc-hiw-step{padding:12px;}
  .cc-hiw-intro{font-size:.78rem;}
  .cc-hiw-final{flex-direction:column;gap:10px;}
  .cc-hiw-final-icon{width:36px;height:36px;min-width:36px;}
  .cc-hiw-pills{gap:5px;}
  .cc-hiw-pill{font-size:.64rem;}
  .cc-hiw-time{font-size:.72rem;}
}
@media(max-width:480px){
  .cc-hiw-heading{font-size:.76rem;}
  .cc-hiw-copy h3{font-size:.74rem;}
  .cc-hiw-copy p{font-size:.71rem;}
}
/* =====================================================
   SECTION 5: REAL US EXAMPLES
   ===================================================== */

/* Section wrapper */
.cc-ex-wrap{
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  border-radius:16px;
  padding:22px;
  margin-bottom:20px;
}

/* Section intro strip */
.cc-ex-intro{
  font-size:.8rem;
  color:var(--cc-gray);
  line-height:1.72;
  margin:8px 0 20px;
  padding:12px 14px;
  background:var(--cc-bg);
  border-radius:10px;
  border-left:3px solid var(--cc-red);
}
.cc-ex-intro strong{ color:var(--cc-char); }

/* Example cards grid */
.cc-ex-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin-bottom:16px;
}

/* Individual example card */
.cc-ex-card{
  border:1.5px solid var(--cc-border);
  border-radius:14px;
  overflow:hidden;
  transition:box-shadow .2s, border-color .2s;
}
.cc-ex-card:hover{
  box-shadow:0 6px 24px rgba(0,0,0,.07);
  border-color:rgba(0,40,104,.18);
}

/* Card header band */
.cc-ex-head{
  padding:14px 16px;
  display:flex;
  align-items:flex-start;
  gap:12px;
}
.cc-ex-head.green  { background:linear-gradient(135deg,#003318,#005522); }
.cc-ex-head.blue   { background:linear-gradient(135deg,#000a20,#002868); }
.cc-ex-head.purple { background:linear-gradient(135deg,#0a0020,#7c3aed); }
.cc-ex-head.amber  { background:linear-gradient(135deg,#1c0a00,#d97706); }
.cc-ex-head.teal   { background:linear-gradient(135deg,#001a20,#0891b2); }

.cc-ex-icon{
  width:40px; height:40px; min-width:40px;
  border-radius:10px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  display:flex; align-items:center; justify-content:center;
  font-size:1.2rem;
}
.cc-ex-head-copy{ flex:1; }
.cc-ex-company{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.8rem; font-weight:800;
  color:#fff; line-height:1.2; margin-bottom:2px;
}
.cc-ex-meta{
  font-size:.67rem;
  color:rgba(255,255,255,.65);
  line-height:1.4;
}
.cc-ex-meta span{
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.15);
  border-radius:20px;
  padding:1px 7px;
  margin-right:4px;
  display:inline-block;
  margin-top:4px;
}

/* Card body */
.cc-ex-body{
  padding:14px 16px;
  background:var(--cc-white);
}

/* Scope breakdown mini-bars */
.cc-ex-scopes{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:6px;
  margin-bottom:12px;
}
.cc-ex-scope{
  border-radius:8px;
  padding:8px 10px;
  text-align:center;
}
.cc-ex-scope.s1{ background:linear-gradient(135deg,#fff5f0,#ffe8e0); border:1px solid rgba(234,88,12,.15); }
.cc-ex-scope.s2{ background:linear-gradient(135deg,#eff6ff,#dbeafe); border:1px solid rgba(0,40,104,.12); }
.cc-ex-scope.s3{ background:linear-gradient(135deg,#f5f3ff,#ede9fe); border:1px solid rgba(124,58,237,.15); }
.cc-ex-scope-lbl{
  font-size:.57rem; font-weight:700;
  text-transform:uppercase; letter-spacing:.05em;
  color:var(--cc-gray); margin-bottom:3px;
}
.cc-ex-scope.s1 .cc-ex-scope-lbl{ color:#ea580c; }
.cc-ex-scope.s2 .cc-ex-scope-lbl{ color:var(--cc-blue); }
.cc-ex-scope.s3 .cc-ex-scope-lbl{ color:var(--cc-purple); }
.cc-ex-scope-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.84rem; font-weight:800;
  line-height:1.1;
  color:var(--cc-char);
}
.cc-ex-scope-unit{ font-size:.6rem; color:var(--cc-gray); margin-top:1px; }

/* Key numbers row */
.cc-ex-nums{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:6px;
  margin-bottom:12px;
}
.cc-ex-num{
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-radius:8px;
  padding:8px 10px;
  text-align:center;
}
.cc-ex-num-lbl{
  font-size:.57rem; font-weight:600;
  text-transform:uppercase; letter-spacing:.04em;
  color:var(--cc-gray); margin-bottom:3px;
}
.cc-ex-num-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.83rem; font-weight:800;
  color:var(--cc-char); line-height:1.2;
}
.cc-ex-num-val.green{ color:var(--cc-lime); }
.cc-ex-num-val.amber{ color:var(--cc-amber); }
.cc-ex-num-val.red  { color:var(--cc-red);  }
.cc-ex-num-val.blue { color:var(--cc-blue); }
.cc-ex-num-val.teal { color:var(--cc-teal); }

/* Offset type row */
.cc-ex-offset-row{
  display:flex; align-items:center; gap:8px;
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-radius:8px;
  padding:8px 10px;
  margin-bottom:10px;
  font-size:.73rem;
}
.cc-ex-offset-row .cc-ex-offset-label{
  font-weight:600; color:var(--cc-gray);
  white-space:nowrap;
}
.cc-ex-offset-row .cc-ex-offset-val{
  font-weight:700; color:var(--cc-char); flex:1;
}
.cc-ex-offset-row .cc-ex-offset-price{
  font-family:'Montserrat','Inter',sans-serif;
  font-weight:800; font-size:.78rem;
  color:var(--cc-blue);
}

/* SBTi status badge */
.cc-ex-sbti{
  display:flex; align-items:center; gap:8px;
  border-radius:8px; padding:8px 10px;
  font-size:.73rem; font-weight:600;
  border:1px solid;
}
.cc-ex-sbti.aligned{
  background:#f0fbf6; border-color:rgba(22,163,74,.25);
  color:var(--cc-lime);
}
.cc-ex-sbti.at-risk{
  background:#fffbeb; border-color:rgba(217,119,6,.3);
  color:var(--cc-amber);
}
.cc-ex-sbti.non-compliant{
  background:#fff5f7; border-color:rgba(191,10,48,.3);
  color:var(--cc-red);
}
.cc-ex-sbti .cc-ex-sbti-dot{
  width:8px; height:8px; border-radius:50%;
  flex-shrink:0;
}
.cc-ex-sbti.aligned     .cc-ex-sbti-dot{ background:var(--cc-lime);  }
.cc-ex-sbti.at-risk     .cc-ex-sbti-dot{ background:var(--cc-amber); }
.cc-ex-sbti.non-compliant .cc-ex-sbti-dot{ background:var(--cc-red); }

/* Key insight line */
.cc-ex-insight{
  margin-top:10px;
  padding:8px 10px;
  background:var(--cc-bg);
  border-radius:8px;
  border-left:2px solid var(--cc-teal);
  font-size:.72rem;
  color:var(--cc-gray);
  line-height:1.58;
}
.cc-ex-insight strong{ color:var(--cc-char); }

/* 5th card — full width */
.cc-ex-card.full-width{
  grid-column: 1 / -1;
}
.cc-ex-card.full-width .cc-ex-scopes{
  grid-template-columns:repeat(3,1fr);
}
.cc-ex-card.full-width .cc-ex-nums{
  grid-template-columns:repeat(6,1fr);
}

/* Market benchmark bar */
.cc-ex-benchmark{
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-radius:12px;
  padding:14px 16px;
  margin-top:4px;
}
.cc-ex-bench-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.68rem; font-weight:800;
  letter-spacing:.07em; text-transform:uppercase;
  color:var(--cc-char); margin-bottom:10px;
}
.cc-ex-bench-row{
  display:flex; align-items:center; gap:10px;
  margin-bottom:8px; font-size:.73rem;
}
.cc-ex-bench-row:last-child{ margin-bottom:0; }
.cc-ex-bench-label{ width:160px; min-width:160px; color:var(--cc-gray); font-weight:500; }
.cc-ex-bench-bar-wrap{ flex:1; background:#e5e7eb; border-radius:20px; height:8px; overflow:hidden; }
.cc-ex-bench-bar{ height:100%; border-radius:20px; transition:width .6s ease; }
.cc-ex-bench-price{ width:80px; text-align:right; font-weight:700; color:var(--cc-char); font-family:'Montserrat','Inter',sans-serif; font-size:.73rem; }

/* Disclaimer */
.cc-ex-disc{
  font-size:.68rem; color:var(--cc-gray);
  line-height:1.6; text-align:center;
  margin-top:14px; padding-top:12px;
  border-top:1px solid var(--cc-border);
}

/* MOBILE */
@media(max-width:960px){
  .cc-ex-card.full-width .cc-ex-nums{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:768px){
  .cc-ex-grid{ grid-template-columns:1fr; }
  .cc-ex-card.full-width{ grid-column:auto; }
  .cc-ex-card.full-width .cc-ex-nums{
    grid-template-columns:repeat(2,1fr);
  }
  .cc-ex-scopes{ grid-template-columns:1fr 1fr 1fr; }
  .cc-ex-nums{ grid-template-columns:1fr 1fr 1fr; }
  .cc-ex-bench-label{ width:120px; min-width:120px; font-size:.68rem; }
  .cc-ex-bench-price{ width:60px; font-size:.68rem; }
}
@media(max-width:480px){
  .cc-ex-scopes{ grid-template-columns:1fr 1fr 1fr; }
  .cc-ex-nums{ grid-template-columns:1fr 1fr; }
  .cc-ex-card.full-width .cc-ex-nums{ grid-template-columns:1fr 1fr; }
  .cc-ex-bench-label{ width:100px; min-width:100px; font-size:.65rem; }
}
/* ── CSS Variables (mirrors calculator palette) ── */
:root{
  --cc-blue:#002868; --cc-char:#1D1D1F; --cc-gray:#5F6368;
  --cc-border:#E0E4E8; --cc-bg:#F7F9FC; --cc-white:#FFFFFF;
  --cc-red:#BF0A30; --cc-green:#00875A; --cc-amber:#D97706;
  --cc-teal:#0891B2; --cc-purple:#7C3AED; --cc-lime:#16A34A;
  --cc-slate:#475569; --cc-navy:#001840;
}

/* ── Section wrapper ── */
.cc-pro-section{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  max-width:1200px; margin:0 auto;
  color:var(--cc-char); -webkit-font-smoothing:antialiased;
}

/* ── Section card ── */
.cc-pro-wrap{
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  border-radius:16px;
  overflow:hidden;
  margin-bottom:20px;
}

/* ── Banner header ── */
.cc-pro-banner{
  background:linear-gradient(135deg,#000a20 0%,#001840 45%,#002868 80%,#003a8c 100%);
  padding:28px 28px 22px;
  position:relative; overflow:hidden;
}
.cc-pro-banner::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 5% 80%,rgba(191,10,48,.18) 0%,transparent 55%),
             radial-gradient(ellipse at 95% 20%,rgba(8,145,178,.15) 0%,transparent 55%);
  pointer-events:none;
}
.cc-pro-banner::after{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:40px 40px; pointer-events:none;
}
.cc-pro-banner-inner{position:relative;z-index:1;}
.cc-pro-eyebrow{
  font-size:.65rem; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:rgba(255,255,255,.45); margin-bottom:6px;
}
.cc-pro-banner-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:clamp(1.05rem,2.5vw,1.5rem);
  font-weight:900; color:#fff; line-height:1.2; margin:0 0 8px;
}
.cc-pro-banner-sub{
  font-size:.8rem; color:rgba(255,255,255,.62);
  max-width:760px; line-height:1.65; margin:0 0 16px;
}
.cc-pro-cat-pills{display:flex;flex-wrap:wrap;gap:7px;}
.cc-pro-cat-pill{
  font-size:.65rem; font-weight:700; padding:3px 10px;
  border-radius:20px; border:1px solid; letter-spacing:.03em;
}
.cc-pro-cat-pill.fin   {background:rgba(217,119,6,.18); border-color:rgba(217,119,6,.35); color:#fbbf24;}
.cc-pro-cat-pill.comp  {background:rgba(8,145,178,.18); border-color:rgba(8,145,178,.35); color:#67e8f9;}
.cc-pro-cat-pill.strat {background:rgba(22,163,74,.18); border-color:rgba(22,163,74,.35); color:#86efac;}
.cc-pro-cat-pill.mkt   {background:rgba(191,10,48,.18); border-color:rgba(191,10,48,.35); color:#fca5a5;}
.cc-pro-cat-pill.sbti  {background:rgba(124,58,237,.18);border-color:rgba(124,58,237,.35);color:#c4b5fd;}

/* ── Tips grid ── */
.cc-pro-body{padding:22px;}
.cc-pro-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

/* ── Single tip card ── */
.cc-pro-tip{
  border:1.5px solid var(--cc-border);
  border-radius:14px; overflow:hidden;
  transition:box-shadow .2s,border-color .2s;
}
.cc-pro-tip:hover{
  box-shadow:0 6px 24px rgba(0,0,0,.07);
}

/* Tip top accent bar */
.cc-pro-tip-bar{height:4px;}
.cc-pro-tip-bar.fin   {background:linear-gradient(90deg,var(--cc-amber),#f59e0b);}
.cc-pro-tip-bar.comp  {background:linear-gradient(90deg,var(--cc-teal),#06b6d4);}
.cc-pro-tip-bar.strat {background:linear-gradient(90deg,var(--cc-lime),#22c55e);}
.cc-pro-tip-bar.mkt   {background:linear-gradient(90deg,var(--cc-red),#e11d48);}
.cc-pro-tip-bar.sbti  {background:linear-gradient(90deg,var(--cc-purple),#8b5cf6);}

/* Tip inner content */
.cc-pro-tip-inner{padding:14px 15px;}

/* Tip header row */
.cc-pro-tip-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px;}
.cc-pro-tip-num{
  width:28px; height:28px; min-width:28px;
  border-radius:8px; display:flex; align-items:center; justify-content:center;
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.72rem; font-weight:900; color:#fff; flex-shrink:0;
}
.cc-pro-tip-num.fin   {background:linear-gradient(135deg,#1c0a00,var(--cc-amber));}
.cc-pro-tip-num.comp  {background:linear-gradient(135deg,#001a20,var(--cc-teal));}
.cc-pro-tip-num.strat {background:linear-gradient(135deg,#003318,var(--cc-lime));}
.cc-pro-tip-num.mkt   {background:linear-gradient(135deg,#1a0000,var(--cc-red));}
.cc-pro-tip-num.sbti  {background:linear-gradient(135deg,#0a0020,var(--cc-purple));}

.cc-pro-tip-label{
  font-size:.59rem; font-weight:700;
  text-transform:uppercase; letter-spacing:.07em;
  margin-bottom:3px;
}
.cc-pro-tip-label.fin  {color:var(--cc-amber);}
.cc-pro-tip-label.comp {color:var(--cc-teal);}
.cc-pro-tip-label.strat{color:var(--cc-lime);}
.cc-pro-tip-label.mkt  {color:var(--cc-red);}
.cc-pro-tip-label.sbti {color:var(--cc-purple);}

.cc-pro-tip-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.78rem; font-weight:800;
  color:var(--cc-char); line-height:1.3;
}

/* Body text */
.cc-pro-tip-body{
  font-size:.75rem; color:var(--cc-gray);
  line-height:1.68; margin-bottom:10px;
}
.cc-pro-tip-body strong{color:var(--cc-char);}

/* Key stat pull-out */
.cc-pro-stat-box{
  display:flex; align-items:center; gap:10px;
  border-radius:9px; padding:10px 12px;
  margin-bottom:10px; border:1px solid;
}
.cc-pro-stat-box.fin  {background:rgba(217,119,6,.06); border-color:rgba(217,119,6,.2);}
.cc-pro-stat-box.comp {background:rgba(8,145,178,.06); border-color:rgba(8,145,178,.2);}
.cc-pro-stat-box.strat{background:rgba(22,163,74,.06); border-color:rgba(22,163,74,.2);}
.cc-pro-stat-box.mkt  {background:rgba(191,10,48,.06); border-color:rgba(191,10,48,.2);}
.cc-pro-stat-box.sbti {background:rgba(124,58,237,.06);border-color:rgba(124,58,237,.2);}

.cc-pro-stat-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:1.0rem; font-weight:900; line-height:1.1; flex-shrink:0;
}
.cc-pro-stat-val.fin  {color:var(--cc-amber);}
.cc-pro-stat-val.comp {color:var(--cc-teal);}
.cc-pro-stat-val.strat{color:var(--cc-lime);}
.cc-pro-stat-val.mkt  {color:var(--cc-red);}
.cc-pro-stat-val.sbti {color:var(--cc-purple);}

.cc-pro-stat-desc{font-size:.7rem; color:var(--cc-gray); line-height:1.5;}
.cc-pro-stat-desc strong{color:var(--cc-char);}

/* Action callout */
.cc-pro-action{
  display:flex; align-items:flex-start; gap:7px;
  font-size:.71rem; color:var(--cc-char);
  line-height:1.55; font-weight:500;
  padding:8px 10px; border-radius:8px;
  background:var(--cc-bg);
}
.cc-pro-action-arrow{
  font-size:.75rem; margin-top:1px; flex-shrink:0;
}

/* ── Full-width tip (spans both cols) ── */
.cc-pro-tip.wide{grid-column:1 / -1;}
.cc-pro-tip.wide .cc-pro-tip-inner{
  display:grid; grid-template-columns:1fr 1fr; gap:16px;
}
.cc-pro-tip.wide .cc-pro-tip-left{}
.cc-pro-tip.wide .cc-pro-tip-right{
  display:flex; flex-direction:column; justify-content:space-between; gap:10px;
}

/* ── Bottom summary strip ── */
.cc-pro-bottom{
  margin-top:6px;
  background:var(--cc-navy);
  border-radius:12px;
  padding:18px 20px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.cc-pro-bottom-item{text-align:center;}
.cc-pro-bottom-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:1.05rem; font-weight:900;
  color:#fff; line-height:1.1; margin-bottom:4px;
}
.cc-pro-bottom-lbl{
  font-size:.62rem; font-weight:600;
  text-transform:uppercase; letter-spacing:.05em;
  color:rgba(255,255,255,.45);
}

/* ── Disclaimer ── */
.cc-pro-disc{
  font-size:.67rem; color:var(--cc-gray);
  text-align:center; line-height:1.6;
  margin-top:14px; padding-top:12px;
  border-top:1px solid var(--cc-border);
}

/* ════════════════════════════════
   RESPONSIVE
   ════════════════════════════════ */
@media(max-width:960px){
  .cc-pro-bottom{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
  .cc-pro-grid{grid-template-columns:1fr;}
  .cc-pro-tip.wide{grid-column:auto;}
  .cc-pro-tip.wide .cc-pro-tip-inner{grid-template-columns:1fr; gap:0;}
  .cc-pro-banner{padding:20px 18px 18px;}
  .cc-pro-body{padding:16px;}
  .cc-pro-grid{gap:12px;}
  .cc-pro-bottom{grid-template-columns:repeat(2,1fr); padding:14px 16px;}
}
@media(max-width:480px){
  .cc-pro-tip-title{font-size:.75rem;}
  .cc-pro-tip-body{font-size:.72rem;}
  .cc-pro-stat-val{font-size:.9rem;}
  .cc-pro-bottom{grid-template-columns:1fr 1fr;}
  .cc-pro-bottom-val{font-size:.92rem;}
}
/* ── CSS Variables ── */
:root{
  --cc-blue:#002868; --cc-char:#1D1D1F; --cc-gray:#5F6368;
  --cc-border:#E0E4E8; --cc-bg:#F7F9FC; --cc-white:#FFFFFF;
  --cc-red:#BF0A30; --cc-green:#00875A; --cc-amber:#D97706;
  --cc-teal:#0891B2; --cc-purple:#7C3AED; --cc-lime:#16A34A;
  --cc-slate:#475569; --cc-navy:#001840;
}

/* ── Outer wrapper ── */
.cc-faq-section{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  max-width:1200px; margin:0 auto;
  color:var(--cc-char); -webkit-font-smoothing:antialiased;
}

/* ── Card shell ── */
.cc-faq-wrap{
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  border-radius:16px;
  overflow:hidden;
  margin-bottom:20px;
}

/* ── Banner ── */
.cc-faq-banner{
  background:linear-gradient(135deg,#001a0a 0%,#003318 45%,#005522 80%,#006b2a 100%);
  padding:28px 28px 22px;
  position:relative; overflow:hidden;
}
.cc-faq-banner::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 8% 75%,rgba(0,40,104,.22) 0%,transparent 55%),
             radial-gradient(ellipse at 92% 25%,rgba(217,119,6,.14) 0%,transparent 55%);
  pointer-events:none;
}
.cc-faq-banner::after{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:40px 40px; pointer-events:none;
}
.cc-faq-banner-inner{ position:relative; z-index:1; }
.cc-faq-eyebrow{
  font-size:.65rem; font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; color:rgba(255,255,255,.45); margin-bottom:6px;
}
.cc-faq-banner-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:clamp(1.05rem,2.5vw,1.5rem);
  font-weight:900; color:#fff; line-height:1.2; margin:0 0 8px;
}
.cc-faq-banner-sub{
  font-size:.8rem; color:rgba(255,255,255,.6);
  max-width:760px; line-height:1.65; margin:0 0 16px;
}
/* Category pills in banner */
.cc-faq-cat-row{ display:flex; flex-wrap:wrap; gap:7px; }
.cc-faq-cat-pill{
  font-size:.64rem; font-weight:700; padding:3px 10px;
  border-radius:20px; border:1px solid; letter-spacing:.03em;
  cursor:pointer; transition:all .2s;
}
.cc-faq-cat-pill.cost   { background:rgba(22,163,74,.18);  border-color:rgba(22,163,74,.4);  color:#86efac; }
.cc-faq-cat-pill.tax    { background:rgba(217,119,6,.18);  border-color:rgba(217,119,6,.4);  color:#fbbf24; }
.cc-faq-cat-pill.emis   { background:rgba(8,145,178,.18);  border-color:rgba(8,145,178,.4);  color:#67e8f9; }
.cc-faq-cat-pill.sbti   { background:rgba(124,58,237,.18); border-color:rgba(124,58,237,.4); color:#c4b5fd; }
.cc-faq-cat-pill.comp   { background:rgba(191,10,48,.18);  border-color:rgba(191,10,48,.4);  color:#fca5a5; }
.cc-faq-cat-pill.calc   { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.8); }
.cc-faq-cat-pill.active { box-shadow:0 0 0 2px rgba(255,255,255,.35); }
/* count badge */
.cc-faq-cat-count{
  background:rgba(255,255,255,.18);
  border-radius:20px; padding:0 5px;
  margin-left:4px; font-size:.6rem;
}

/* ── Search bar ── */
.cc-faq-search-row{
  padding:16px 22px 0;
  position:relative;
}
.cc-faq-search-icon{
  position:absolute; left:33px; top:50%; transform:translateY(0%);
  margin-top:8px;
  font-size:.85rem; pointer-events:none;
}
.cc-faq-search{
  width:100%; box-sizing:border-box;
  padding:9px 12px 9px 34px;
  border:1.5px solid var(--cc-border);
  border-radius:9px; background:var(--cc-bg);
  font-size:.8rem; color:var(--cc-char);
  outline:none; transition:border-color .2s;
}
.cc-faq-search:focus{ border-color:var(--cc-lime); background:#fff; }
.cc-faq-search::placeholder{ color:var(--cc-gray); }

/* ── Category label divider ── */
.cc-faq-cat-divider{
  display:flex; align-items:center; gap:10px;
  padding:18px 22px 8px;
}
.cc-faq-cat-divider-icon{ font-size:1rem; }
.cc-faq-cat-divider-label{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.67rem; font-weight:800;
  letter-spacing:.1em; text-transform:uppercase;
}
.cc-faq-cat-divider-label.cost  { color:var(--cc-lime); }
.cc-faq-cat-divider-label.tax   { color:var(--cc-amber); }
.cc-faq-cat-divider-label.emis  { color:var(--cc-teal); }
.cc-faq-cat-divider-label.sbti  { color:var(--cc-purple); }
.cc-faq-cat-divider-label.comp  { color:var(--cc-red); }
.cc-faq-cat-divider-label.calc  { color:var(--cc-blue); }
.cc-faq-cat-divider-line{
  flex:1; height:1px; background:var(--cc-border);
}
.cc-faq-cat-badge{
  font-size:.6rem; font-weight:700; padding:2px 8px;
  border-radius:20px;
}
.cc-faq-cat-badge.cost  { background:rgba(22,163,74,.1);  color:var(--cc-lime);   border:1px solid rgba(22,163,74,.2); }
.cc-faq-cat-badge.tax   { background:rgba(217,119,6,.1);  color:var(--cc-amber);  border:1px solid rgba(217,119,6,.2); }
.cc-faq-cat-badge.emis  { background:rgba(8,145,178,.1);  color:var(--cc-teal);   border:1px solid rgba(8,145,178,.2); }
.cc-faq-cat-badge.sbti  { background:rgba(124,58,237,.1); color:var(--cc-purple); border:1px solid rgba(124,58,237,.2);}
.cc-faq-cat-badge.comp  { background:rgba(191,10,48,.1);  color:var(--cc-red);    border:1px solid rgba(191,10,48,.2); }
.cc-faq-cat-badge.calc  { background:rgba(0,40,104,.1);   color:var(--cc-blue);   border:1px solid rgba(0,40,104,.2);  }

/* ── FAQ list ── */
.cc-faq-list{ padding:0 22px 0; }

/* ── Single accordion item ── */
.cc-faq-item{
  border:1px solid var(--cc-border);
  border-radius:11px;
  margin-bottom:8px;
  overflow:hidden;
  transition:box-shadow .2s, border-color .2s;
}
.cc-faq-item:hover{
  border-color:rgba(0,40,104,.2);
}
.cc-faq-item.open{
  border-color:rgba(22,163,74,.3);
  box-shadow:0 4px 16px rgba(22,163,74,.08);
}

/* Question button */
.cc-faq-q{
  width:100%; text-align:left;
  display:flex; align-items:center; gap:12px;
  padding:13px 15px;
  background:var(--cc-bg);
  border:none; cursor:pointer;
  transition:background .2s;
  font-family:'Inter',-apple-system,sans-serif;
}
.cc-faq-item.open .cc-faq-q{ background:var(--cc-white); }
.cc-faq-q:hover{ background:var(--cc-white); }

/* Question number badge */
.cc-faq-qnum{
  width:22px; height:22px; min-width:22px;
  border-radius:6px;
  display:flex; align-items:center; justify-content:center;
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.6rem; font-weight:800; color:#fff; flex-shrink:0;
}
.cc-faq-qnum.cost  { background:linear-gradient(135deg,#003318,var(--cc-lime)); }
.cc-faq-qnum.tax   { background:linear-gradient(135deg,#1c0a00,var(--cc-amber)); }
.cc-faq-qnum.emis  { background:linear-gradient(135deg,#001a20,var(--cc-teal)); }
.cc-faq-qnum.sbti  { background:linear-gradient(135deg,#0a0020,var(--cc-purple)); }
.cc-faq-qnum.comp  { background:linear-gradient(135deg,#1a0000,var(--cc-red)); }
.cc-faq-qnum.calc  { background:linear-gradient(135deg,#000a20,var(--cc-blue)); }

/* Question text */
.cc-faq-q-text{
  flex:1;
  font-size:.8rem; font-weight:700;
  color:var(--cc-char); line-height:1.35;
}
.cc-faq-item.open .cc-faq-q-text{ color:var(--cc-lime); }

/* Chevron */
.cc-faq-chevron{
  width:24px; height:24px; min-width:24px;
  border-radius:50%;
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  display:flex; align-items:center; justify-content:center;
  font-size:.75rem; transition:transform .3s ease,background .2s;
  flex-shrink:0;
}
.cc-faq-item.open .cc-faq-chevron{
  transform:rotate(180deg);
  background:rgba(22,163,74,.1);
  border-color:rgba(22,163,74,.25);
}

/* Answer panel */
.cc-faq-a{
  max-height:0; overflow:hidden;
  transition:max-height .4s cubic-bezier(0.4,0,0.2,1), padding .3s;
  padding:0 15px;
  background:var(--cc-white);
}
.cc-faq-item.open .cc-faq-a{
  max-height:1200px;
  padding:0 15px 14px;
}

/* Answer inner */
.cc-faq-a-inner{
  padding-top:12px;
  border-top:1px solid var(--cc-border);
  font-size:.78rem; color:var(--cc-gray);
  line-height:1.72;
}
.cc-faq-a-inner p{ margin:0 0 9px; }
.cc-faq-a-inner p:last-child{ margin-bottom:0; }
.cc-faq-a-inner strong{ color:var(--cc-char); }
.cc-faq-a-inner ul{ margin:7px 0 7px 16px; padding:0; }
.cc-faq-a-inner ul li{ margin-bottom:4px; }
.cc-faq-a-inner a{ color:var(--cc-lime); text-decoration:none; font-weight:600; }
.cc-faq-a-inner a:hover{ text-decoration:underline; }

/* Answer callout box */
.cc-faq-callout{
  margin-top:9px; padding:9px 12px;
  border-radius:8px; font-size:.73rem;
  display:flex; gap:8px; align-items:flex-start;
  line-height:1.58;
}
.cc-faq-callout.green{ background:#f0fbf6; border:1px solid rgba(22,163,74,.2); }
.cc-faq-callout.amber{ background:#fffbeb; border:1px solid rgba(217,119,6,.2); }
.cc-faq-callout.blue { background:#eff6ff; border:1px solid rgba(0,40,104,.15); }
.cc-faq-callout.teal { background:#f0f9ff; border:1px solid rgba(8,145,178,.2); }
.cc-faq-callout.red  { background:#fff5f7; border:1px solid rgba(191,10,48,.2); }
.cc-faq-callout.purple{background:#f5f3ff; border:1px solid rgba(124,58,237,.2);}
.cc-faq-callout-icon { font-size:.9rem; flex-shrink:0; margin-top:1px; }

/* ── No results message ── */
.cc-faq-no-results{
  display:none;
  text-align:center; padding:28px 16px;
  color:var(--cc-gray); font-size:.8rem;
}
.cc-faq-no-results.show{ display:block; }

/* ── Bottom stats bar ── */
.cc-faq-stats{
  margin:14px 22px 0;
  background:var(--cc-navy);
  border-radius:12px; padding:16px 20px;
  display:grid; grid-template-columns:repeat(4,1fr); gap:12px;
}
.cc-faq-stat-item{ text-align:center; }
.cc-faq-stat-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.98rem; font-weight:900; color:#fff;
  margin-bottom:3px;
}
.cc-faq-stat-lbl{
  font-size:.6rem; font-weight:600;
  text-transform:uppercase; letter-spacing:.05em;
  color:rgba(255,255,255,.42);
}

/* ── Disclaimer ── */
.cc-faq-disc{
  font-size:.67rem; color:var(--cc-gray);
  text-align:center; line-height:1.6;
  margin:14px 22px 22px;
  padding-top:12px;
  border-top:1px solid var(--cc-border);
}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  .cc-faq-banner{ padding:20px 16px 18px; }
  .cc-faq-search-row{ padding:14px 16px 0; }
  .cc-faq-search-icon{ left:27px; }
  .cc-faq-cat-divider{ padding:16px 16px 8px; }
  .cc-faq-list{ padding:0 16px 0; }
  .cc-faq-stats{ grid-template-columns:repeat(2,1fr); padding:14px 16px; }
  .cc-faq-disc{ margin:12px 16px 16px; }
}
@media(max-width:480px){
  .cc-faq-q-text{ font-size:.76rem; }
  .cc-faq-a-inner{ font-size:.75rem; }
  .cc-faq-stats{ grid-template-columns:1fr 1fr; }
  .cc-faq-stat-val{ font-size:.88rem; }
}

/* ── Outer wrapper ── */
.cc-rel-section{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  max-width:1200px; margin:0 auto;
  color:var(--cc-char); -webkit-font-smoothing:antialiased;
}

/* ── Card shell ── */
.cc-rel-wrap{
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  border-radius:16px; overflow:hidden;
  margin-bottom:20px;
}

/* ── Banner ── */
.cc-rel-banner{
  background:linear-gradient(135deg,#000a20 0%,#001840 40%,#002868 75%,#00388c 100%);
  padding:28px 28px 22px; position:relative; overflow:hidden;
}
.cc-rel-banner::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 5% 80%,rgba(191,10,48,.18) 0%,transparent 55%),
             radial-gradient(ellipse at 92% 15%,rgba(22,163,74,.13) 0%,transparent 55%);
  pointer-events:none;
}
.cc-rel-banner::after{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:40px 40px; pointer-events:none;
}
.cc-rel-banner-inner{ position:relative;z-index:1; }
.cc-rel-eyebrow{
  font-size:.65rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:6px;
}
.cc-rel-banner-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:clamp(1.05rem,2.5vw,1.5rem);
  font-weight:900;color:#fff;line-height:1.2;margin:0 0 8px;
}
.cc-rel-banner-sub{
  font-size:.8rem;color:rgba(255,255,255,.6);
  max-width:760px;line-height:1.65;margin:0 0 16px;
}

/* banner stats row */
.cc-rel-banner-stats{
  display:flex;flex-wrap:wrap;gap:20px;
}
.cc-rel-bstat{
  display:flex;align-items:center;gap:7px;
}
.cc-rel-bstat-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.95rem;font-weight:900;color:#fff;
}
.cc-rel-bstat-lbl{
  font-size:.66rem;font-weight:500;
  color:rgba(255,255,255,.5);line-height:1.25;
}

/* ── Section label + grid ── */
.cc-rel-body{ padding:22px; }
.cc-rel-group{ margin-bottom:22px; }
.cc-rel-group:last-child{ margin-bottom:0; }

/* Group header row */
.cc-rel-group-head{
  display:flex;align-items:center;gap:10px;
  margin-bottom:14px;
}
.cc-rel-group-icon{ font-size:1.1rem; }
.cc-rel-group-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.72rem;font-weight:900;
  letter-spacing:.1em;text-transform:uppercase;
}
.cc-rel-group-title.green  { color:var(--cc-lime); }
.cc-rel-group-title.amber  { color:var(--cc-amber); }
.cc-rel-group-title.blue   { color:var(--cc-blue); }
.cc-rel-group-title.purple { color:var(--cc-purple); }
.cc-rel-group-title.red    { color:var(--cc-red); }
.cc-rel-group-title.teal   { color:var(--cc-teal); }
.cc-rel-group-line{ flex:1;height:1px;background:var(--cc-border); }
.cc-rel-group-count{
  font-size:.62rem;font-weight:700;padding:2px 9px;
  border-radius:20px;border:1px solid;
}
.cc-rel-group-count.green  { background:rgba(22,163,74,.08); color:var(--cc-lime);   border-color:rgba(22,163,74,.2); }
.cc-rel-group-count.amber  { background:rgba(217,119,6,.08); color:var(--cc-amber);  border-color:rgba(217,119,6,.2); }
.cc-rel-group-count.blue   { background:rgba(0,40,104,.08);  color:var(--cc-blue);   border-color:rgba(0,40,104,.15); }
.cc-rel-group-count.purple { background:rgba(124,58,237,.08);color:var(--cc-purple); border-color:rgba(124,58,237,.2);}
.cc-rel-group-count.teal   { background:rgba(8,145,178,.08); color:var(--cc-teal);   border-color:rgba(8,145,178,.2); }

/* ── Cards grid ── */
.cc-rel-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:13px;
}

/* ── Single card ── */
.cc-rel-card{
  border:1.5px solid var(--cc-border);
  border-radius:13px;overflow:hidden;
  display:flex;flex-direction:column;
  transition:box-shadow .2s,border-color .2s,transform .2s;
  text-decoration:none;color:inherit;
  background:var(--cc-white);
}
.cc-rel-card:hover{
  box-shadow:0 8px 28px rgba(0,0,0,.09);
  transform:translateY(-2px);
  border-color:rgba(0,40,104,.22);
  text-decoration:none;
}

/* Card top color bar */
.cc-rel-card-bar{ height:4px; }
.cc-rel-card-bar.green  { background:linear-gradient(90deg,var(--cc-lime),#22c55e); }
.cc-rel-card-bar.amber  { background:linear-gradient(90deg,var(--cc-amber),#f59e0b); }
.cc-rel-card-bar.blue   { background:linear-gradient(90deg,var(--cc-blue),#1d4ed8); }
.cc-rel-card-bar.purple { background:linear-gradient(90deg,var(--cc-purple),#8b5cf6); }
.cc-rel-card-bar.teal   { background:linear-gradient(90deg,var(--cc-teal),#06b6d4); }
.cc-rel-card-bar.red    { background:linear-gradient(90deg,var(--cc-red),#e11d48); }

/* Card inner */
.cc-rel-card-inner{
  padding:14px 15px 0;
  flex:1;display:flex;flex-direction:column;
}

/* Icon + category row */
.cc-rel-card-top{
  display:flex;align-items:flex-start;
  justify-content:space-between;gap:8px;
  margin-bottom:9px;
}
.cc-rel-card-icon{
  width:38px;height:38px;min-width:38px;
  border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.1rem;border:1px solid;
}
.cc-rel-card-icon.green  { background:rgba(22,163,74,.08); border-color:rgba(22,163,74,.2); }
.cc-rel-card-icon.amber  { background:rgba(217,119,6,.08); border-color:rgba(217,119,6,.2); }
.cc-rel-card-icon.blue   { background:rgba(0,40,104,.07);  border-color:rgba(0,40,104,.15); }
.cc-rel-card-icon.purple { background:rgba(124,58,237,.08);border-color:rgba(124,58,237,.2);}
.cc-rel-card-icon.teal   { background:rgba(8,145,178,.08); border-color:rgba(8,145,178,.2); }
.cc-rel-card-icon.red    { background:rgba(191,10,48,.08); border-color:rgba(191,10,48,.2); }

/* Category + relevance badges */
.cc-rel-badges{ display:flex;flex-direction:column;gap:4px;align-items:flex-end; }
.cc-rel-cat-badge{
  font-size:.58rem;font-weight:700;padding:2px 7px;
  border-radius:20px;border:1px solid;text-transform:uppercase;
  letter-spacing:.04em;white-space:nowrap;
}
.cc-rel-cat-badge.green  { background:rgba(22,163,74,.08); color:var(--cc-lime);   border-color:rgba(22,163,74,.2); }
.cc-rel-cat-badge.amber  { background:rgba(217,119,6,.08); color:var(--cc-amber);  border-color:rgba(217,119,6,.2); }
.cc-rel-cat-badge.blue   { background:rgba(0,40,104,.08);  color:var(--cc-blue);   border-color:rgba(0,40,104,.15); }
.cc-rel-cat-badge.purple { background:rgba(124,58,237,.08);color:var(--cc-purple); border-color:rgba(124,58,237,.2);}
.cc-rel-cat-badge.teal   { background:rgba(8,145,178,.08); color:var(--cc-teal);   border-color:rgba(8,145,178,.2); }
.cc-rel-cat-badge.red    { background:rgba(191,10,48,.08); color:var(--cc-red);    border-color:rgba(191,10,48,.2); }

.cc-rel-rel-badge{
  font-size:.56rem;font-weight:700;padding:2px 7px;
  border-radius:20px;background:var(--cc-bg);
  border:1px solid var(--cc-border);
  color:var(--cc-slate);white-space:nowrap;
}

/* Card title */
.cc-rel-card-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.79rem;font-weight:800;
  color:var(--cc-char);line-height:1.3;
  margin-bottom:7px;
}

/* Card description */
.cc-rel-card-desc{
  font-size:.73rem;color:var(--cc-gray);
  line-height:1.62;flex:1;margin-bottom:10px;
}
.cc-rel-card-desc strong{ color:var(--cc-char); }

/* Why connected row */
.cc-rel-why{
  display:flex;align-items:flex-start;gap:6px;
  background:var(--cc-bg);border-radius:7px;
  padding:7px 9px;margin-bottom:0;
  font-size:.67rem;color:var(--cc-gray);
  line-height:1.55;border:1px solid var(--cc-border);
}
.cc-rel-why-icon{ font-size:.75rem;flex-shrink:0;margin-top:1px; }
.cc-rel-why strong{ color:var(--cc-char); }

/* CTA Button */
.cc-rel-cta{
  display:flex;align-items:center;justify-content:space-between;
  margin:11px 15px 14px;
  padding:9px 14px;
  border-radius:8px;
  font-size:.74rem;font-weight:700;
  text-decoration:none;
  transition:filter .2s,box-shadow .2s;
  border:none;cursor:pointer;
}
.cc-rel-cta.green  { background:linear-gradient(135deg,#003318,var(--cc-lime));  color:#fff; }
.cc-rel-cta.amber  { background:linear-gradient(135deg,#1c0a00,var(--cc-amber)); color:#fff; }
.cc-rel-cta.blue   { background:linear-gradient(135deg,#000a20,var(--cc-blue));  color:#fff; }
.cc-rel-cta.purple { background:linear-gradient(135deg,#0a0020,var(--cc-purple));color:#fff; }
.cc-rel-cta.teal   { background:linear-gradient(135deg,#001a20,var(--cc-teal));  color:#fff; }
.cc-rel-cta.red    { background:linear-gradient(135deg,#1a0000,var(--cc-red));   color:#fff; }
.cc-rel-cta:hover{ filter:brightness(1.12); box-shadow:0 4px 14px rgba(0,0,0,.18); text-decoration:none; }
.cc-rel-cta-arrow{ font-size:.8rem; }

/* ── Bottom strip ── */
.cc-rel-bottom{
  margin:0 22px 0;
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-radius:12px;
  padding:14px 18px;
  display:flex;align-items:center;gap:12px;
  font-size:.76rem;color:var(--cc-gray);
  line-height:1.6;
}
.cc-rel-bottom-icon{ font-size:1.3rem;flex-shrink:0; }
.cc-rel-bottom strong{ color:var(--cc-char); }
.cc-rel-bottom a{ color:var(--cc-lime);font-weight:700;text-decoration:none; }
.cc-rel-bottom a:hover{ text-decoration:underline; }

/* ── Disclaimer ── */
.cc-rel-disc{
  font-size:.67rem;color:var(--cc-gray);
  text-align:center;line-height:1.6;
  margin:14px 22px 22px;
  padding-top:12px;
  border-top:1px solid var(--cc-border);
}

/* ════════════════════ RESPONSIVE ════════════════════ */
@media(max-width:1024px){
  .cc-rel-grid{ grid-template-columns:repeat(3,1fr); gap:11px; }
}
@media(max-width:840px){
  .cc-rel-grid{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:640px){
  .cc-rel-banner{ padding:20px 16px 18px; }
  .cc-rel-body{ padding:16px; }
  .cc-rel-grid{ grid-template-columns:repeat(2,1fr); gap:10px; }
  .cc-rel-banner-stats{ gap:14px; }
  .cc-rel-bottom{ margin:0 16px 0; padding:12px 14px; }
  .cc-rel-disc{ margin:12px 16px 16px; }
}
@media(max-width:480px){
  .cc-rel-grid{ grid-template-columns:1fr 1fr; gap:9px; }
  .cc-rel-card-title{ font-size:.74rem; }
  .cc-rel-card-desc{ font-size:.69rem; }
}
@media(max-width:380px){
  .cc-rel-grid{ grid-template-columns:1fr; }
}

/* ── Outer wrapper ── */
.cc-legal-section{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  max-width:1200px; margin:0 auto;
  color:var(--cc-char); -webkit-font-smoothing:antialiased;
}

/* ── Card shell ── */
.cc-legal-wrap{
  background:var(--cc-white);
  border:1px solid var(--cc-border);
  border-radius:16px; overflow:hidden;
  margin-bottom:20px;
}

/* ── Banner ── */
.cc-legal-banner{
  background:linear-gradient(135deg,#0a0a0a 0%,#161616 40%,#1e1e2e 75%,#0d1a33 100%);
  padding:28px 28px 22px; position:relative; overflow:hidden;
}
.cc-legal-banner::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 5% 80%,rgba(0,40,104,.25) 0%,transparent 55%),
             radial-gradient(ellipse at 95% 20%,rgba(191,10,48,.12) 0%,transparent 55%);
  pointer-events:none;
}
.cc-legal-banner::after{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);
  background-size:32px 32px; pointer-events:none;
}
.cc-legal-banner-inner{ position:relative;z-index:1; }
.cc-legal-eyebrow{
  font-size:.65rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:6px;
}
.cc-legal-banner-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:clamp(1.0rem,2.5vw,1.45rem);
  font-weight:900;color:#fff;line-height:1.22;margin:0 0 10px;
}
.cc-legal-banner-sub{
  font-size:.79rem;color:rgba(255,255,255,.58);
  max-width:820px;line-height:1.68;margin:0 0 18px;
}
/* Trust badges row */
.cc-legal-trust-row{ display:flex;flex-wrap:wrap;gap:8px; }
.cc-legal-trust-badge{
  display:flex;align-items:center;gap:5px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;padding:3px 10px;
  font-size:.64rem;font-weight:600;
  color:rgba(255,255,255,.72);
}

/* ── Body ── */
.cc-legal-body{ padding:22px; }

/* ── Panel blocks ── */
.cc-legal-panel{
  border:1px solid var(--cc-border);
  border-radius:13px;overflow:hidden;
  margin-bottom:16px;
}
.cc-legal-panel:last-of-type{ margin-bottom:0; }

/* Panel header */
.cc-legal-ph{
  display:flex;align-items:center;gap:10px;
  padding:13px 16px;
  border-bottom:1px solid var(--cc-border);
}
.cc-legal-ph.dark-blue{ background:linear-gradient(135deg,#000a20,#002060); }
.cc-legal-ph.dark-char{ background:linear-gradient(135deg,#0a0a0a,#1e1e2e); }
.cc-legal-ph.dark-teal{ background:linear-gradient(135deg,#001a20,#00506a); }
.cc-legal-ph.dark-amber{background:linear-gradient(135deg,#1c0a00,#7c4000); }
.cc-legal-ph-icon{
  width:34px;height:34px;min-width:34px;
  border-radius:9px;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.18);
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;
}
.cc-legal-ph-copy{}
.cc-legal-ph-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.8rem;font-weight:800;color:#fff;
  line-height:1.2;margin-bottom:2px;
}
.cc-legal-ph-sub{
  font-size:.63rem;color:rgba(255,255,255,.55);
}

/* Panel content */
.cc-legal-pc{ padding:16px; background:var(--cc-white); }

/* Disclaimer text */
.cc-legal-text{
  font-size:.78rem;color:var(--cc-gray);
  line-height:1.72;
}
.cc-legal-text p{ margin:0 0 10px; }
.cc-legal-text p:last-child{margin-bottom:0;}
.cc-legal-text strong{ color:var(--cc-char); }
.cc-legal-text a{ color:var(--cc-blue);text-decoration:none;font-weight:600; }
.cc-legal-text a:hover{ text-decoration:underline; }

/* Highlighted block inside disclaimer */
.cc-legal-highlight{
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-left:3px solid var(--cc-red);
  border-radius:8px;
  padding:12px 14px;
  margin:12px 0;
  font-size:.76rem;color:var(--cc-gray);line-height:1.68;
}
.cc-legal-highlight.blue{ border-left-color:var(--cc-blue); }
.cc-legal-highlight.amber{ border-left-color:var(--cc-amber); }
.cc-legal-highlight.teal{ border-left-color:var(--cc-teal); }
.cc-legal-highlight.lime{ border-left-color:var(--cc-lime); }
.cc-legal-highlight strong{ color:var(--cc-char); }

/* 2-col grid for disclaimer items */
.cc-legal-2col{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;
  margin:12px 0;
}
.cc-legal-item{
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-radius:9px;padding:11px 13px;
}
.cc-legal-item-title{
  font-size:.7rem;font-weight:700;
  color:var(--cc-char);margin-bottom:4px;
  display:flex;align-items:center;gap:6px;
}
.cc-legal-item-body{
  font-size:.72rem;color:var(--cc-gray);line-height:1.6;
}

/* Data sources table */
.cc-legal-src-table{
  width:100%;border-collapse:collapse;
  font-size:.73rem;margin:10px 0;
}
.cc-legal-src-table thead th{
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  padding:8px 10px;text-align:left;
  font-size:.64rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.05em;
  color:var(--cc-slate);
}
.cc-legal-src-table tbody td{
  border:1px solid var(--cc-border);
  padding:8px 10px;vertical-align:top;
  color:var(--cc-gray);line-height:1.55;
}
.cc-legal-src-table tbody tr:nth-child(even) td{
  background:var(--cc-bg);
}
.cc-legal-src-table tbody td:first-child{
  font-weight:600;color:var(--cc-char);
}

/* ═══════════════════════════════════════
   AUTHORITY LINKS SECTION
   ═══════════════════════════════════════ */
.cc-auth-section{ margin-top:18px; }
.cc-auth-group-head{
  display:flex;align-items:center;gap:10px;
  margin-bottom:12px;margin-top:20px;
}
.cc-auth-group-head:first-child{ margin-top:0; }
.cc-auth-group-icon{ font-size:1rem; }
.cc-auth-group-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.67rem;font-weight:900;
  letter-spacing:.1em;text-transform:uppercase;
}
.cc-auth-group-title.fed    { color:var(--cc-blue); }
.cc-auth-group-title.state  { color:var(--cc-teal); }
.cc-auth-group-title.intl   { color:var(--cc-purple); }
.cc-auth-group-title.std    { color:var(--cc-amber); }
.cc-auth-group-title.mkt    { color:var(--cc-lime); }
.cc-auth-group-line{ flex:1;height:1px;background:var(--cc-border); }
.cc-auth-group-count{
  font-size:.6rem;font-weight:700;padding:2px 8px;
  border-radius:20px;border:1px solid;
}
.cc-auth-group-count.fed   { background:rgba(0,40,104,.07); color:var(--cc-blue);   border-color:rgba(0,40,104,.18); }
.cc-auth-group-count.state { background:rgba(8,145,178,.07);color:var(--cc-teal);   border-color:rgba(8,145,178,.2); }
.cc-auth-group-count.intl  { background:rgba(124,58,237,.07);color:var(--cc-purple);border-color:rgba(124,58,237,.2);}
.cc-auth-group-count.std   { background:rgba(217,119,6,.07); color:var(--cc-amber); border-color:rgba(217,119,6,.2); }
.cc-auth-group-count.mkt   { background:rgba(22,163,74,.07); color:var(--cc-lime);  border-color:rgba(22,163,74,.2); }

/* Auth links grid */
.cc-auth-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:11px;
  margin-bottom:4px;
}
.cc-auth-grid.cols2{ grid-template-columns:repeat(2,1fr); max-width:840px; }
.cc-auth-grid.cols4{ grid-template-columns:repeat(4,1fr); }

/* Auth link card */
.cc-auth-card{
  display:flex;flex-direction:column;
  border:1.5px solid var(--cc-border);
  border-radius:11px;overflow:hidden;
  text-decoration:none;color:inherit;
  background:var(--cc-white);
  transition:box-shadow .2s,border-color .2s,transform .15s;
}
.cc-auth-card:hover{
  box-shadow:0 6px 22px rgba(0,0,0,.08);
  transform:translateY(-2px);
  text-decoration:none;
}
.cc-auth-card:hover.fed   { border-color:rgba(0,40,104,.3); }
.cc-auth-card:hover.state { border-color:rgba(8,145,178,.3); }
.cc-auth-card:hover.intl  { border-color:rgba(124,58,237,.3); }
.cc-auth-card:hover.std   { border-color:rgba(217,119,6,.3); }
.cc-auth-card:hover.mkt   { border-color:rgba(22,163,74,.3); }

/* Card color bar */
.cc-auth-bar{ height:3px; }
.cc-auth-bar.fed   { background:linear-gradient(90deg,var(--cc-blue),#1d4ed8); }
.cc-auth-bar.state { background:linear-gradient(90deg,var(--cc-teal),#06b6d4); }
.cc-auth-bar.intl  { background:linear-gradient(90deg,var(--cc-purple),#8b5cf6); }
.cc-auth-bar.std   { background:linear-gradient(90deg,var(--cc-amber),#f59e0b); }
.cc-auth-bar.mkt   { background:linear-gradient(90deg,var(--cc-lime),#22c55e); }

/* Card body */
.cc-auth-card-inner{ padding:11px 12px;flex:1;display:flex;flex-direction:column; }
.cc-auth-card-top{
  display:flex;align-items:flex-start;
  justify-content:space-between;gap:6px;
  margin-bottom:7px;
}
.cc-auth-card-icon{
  width:32px;height:32px;min-width:32px;
  border-radius:8px;
  display:flex;align-items:center;justify-content:center;
  font-size:.9rem;border:1px solid;flex-shrink:0;
}
.cc-auth-card-icon.fed   { background:rgba(0,40,104,.07); border-color:rgba(0,40,104,.15); }
.cc-auth-card-icon.state { background:rgba(8,145,178,.07);border-color:rgba(8,145,178,.18); }
.cc-auth-card-icon.intl  { background:rgba(124,58,237,.07);border-color:rgba(124,58,237,.18);}
.cc-auth-card-icon.std   { background:rgba(217,119,6,.07); border-color:rgba(217,119,6,.18); }
.cc-auth-card-icon.mkt   { background:rgba(22,163,74,.07); border-color:rgba(22,163,74,.18); }

.cc-auth-ext-icon{
  font-size:.75rem;color:var(--cc-gray);opacity:.55;flex-shrink:0;margin-top:2px;
}

.cc-auth-card-source{
  font-size:.59rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.07em;
  margin-bottom:3px;
}
.cc-auth-card-source.fed   { color:var(--cc-blue); }
.cc-auth-card-source.state { color:var(--cc-teal); }
.cc-auth-card-source.intl  { color:var(--cc-purple); }
.cc-auth-card-source.std   { color:var(--cc-amber); }
.cc-auth-card-source.mkt   { color:var(--cc-lime); }

.cc-auth-card-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.73rem;font-weight:800;
  color:var(--cc-char);line-height:1.28;
  margin-bottom:6px;
}

.cc-auth-card-desc{
  font-size:.68rem;color:var(--cc-gray);
  line-height:1.6;flex:1;margin-bottom:8px;
}
.cc-auth-card-desc strong{ color:var(--cc-char); }

/* Used for tag */
.cc-auth-used-for{
  display:inline-block;
  font-size:.58rem;font-weight:600;
  padding:2px 7px;border-radius:20px;
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  color:var(--cc-slate);
}

/* ── Update policy strip ── */
.cc-legal-update-strip{
  display:flex;align-items:flex-start;gap:12px;
  background:var(--cc-bg);
  border:1px solid var(--cc-border);
  border-radius:11px;padding:14px 16px;
  margin-top:16px;
  font-size:.75rem;color:var(--cc-gray);line-height:1.65;
}
.cc-legal-update-icon{ font-size:1.4rem;flex-shrink:0; }
.cc-legal-update-strip strong{ color:var(--cc-char); }

/* ── Bottom trust bar ── */
.cc-legal-trust-bottom{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:10px;margin-top:18px;
}
.cc-legal-trust-item{
  background:var(--cc-navy);
  border-radius:10px;padding:12px 14px;
  text-align:center;
}
.cc-legal-trust-item-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.9rem;font-weight:900;color:#fff;
  margin-bottom:3px;
}
.cc-legal-trust-item-lbl{
  font-size:.6rem;font-weight:600;
  text-transform:uppercase;letter-spacing:.05em;
  color:rgba(255,255,255,.42);
}

/* ════════════════ RESPONSIVE ════════════════ */
@media(max-width:900px){
  .cc-auth-grid.cols4{ grid-template-columns:repeat(2,1fr); }
  .cc-legal-trust-bottom{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:768px){
  .cc-legal-banner{ padding:20px 16px 18px; }
  .cc-legal-body{ padding:16px; }
  .cc-auth-grid{ grid-template-columns:repeat(2,1fr); gap:9px; }
  .cc-auth-grid.cols2{ grid-template-columns:1fr 1fr; }
  .cc-auth-grid.cols4{ grid-template-columns:repeat(2,1fr); }
  .cc-legal-2col{ grid-template-columns:1fr; }
}
@media(max-width:480px){
  .cc-auth-grid{ grid-template-columns:1fr 1fr; gap:8px; }
  .cc-auth-card-title{ font-size:.69rem; }
  .cc-auth-card-desc{ font-size:.65rem; }
  .cc-legal-trust-bottom{ grid-template-columns:1fr 1fr; }
  .cc-legal-src-table{ font-size:.68rem; }
  .cc-legal-src-table thead th,
  .cc-legal-src-table tbody td{ padding:6px 7px; }
}
.cc-edu-section{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  max-width:1200px;margin:0 auto;
  color:var(--cc-char);-webkit-font-smoothing:antialiased;
}
.cc-edu-wrap{
  background:var(--cc-white);border:1px solid var(--cc-border);
  border-radius:16px;overflow:hidden;margin-bottom:20px;
}

/* ── Banner ── */
.cc-edu-banner{
  background:linear-gradient(135deg,#001428 0%,#002050 45%,#003090 80%,#001840 100%);
  padding:28px 28px 22px;position:relative;overflow:hidden;
}
.cc-edu-banner::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 8% 90%,rgba(22,163,74,.15) 0%,transparent 55%),
             radial-gradient(ellipse at 90% 10%,rgba(8,145,178,.18) 0%,transparent 55%);
  pointer-events:none;
}
.cc-edu-banner::after{
  content:'';position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:38px 38px;pointer-events:none;
}
.cc-edu-banner-inner{position:relative;z-index:1;}
.cc-edu-eyebrow{
  font-size:.65rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,255,255,.42);margin-bottom:6px;
}
.cc-edu-banner-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:clamp(1.05rem,2.5vw,1.5rem);
  font-weight:900;color:#fff;line-height:1.2;margin:0 0 8px;
}
.cc-edu-banner-sub{
  font-size:.8rem;color:rgba(255,255,255,.6);
  max-width:800px;line-height:1.68;margin:0 0 16px;
}
.cc-edu-banner-stats{display:flex;flex-wrap:wrap;gap:18px;}
.cc-edu-bstat{display:flex;align-items:center;gap:7px;}
.cc-edu-bstat-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.95rem;font-weight:900;color:#fff;
}
.cc-edu-bstat-lbl{font-size:.64rem;font-weight:500;color:rgba(255,255,255,.48);line-height:1.3;}

/* ── Body ── */
.cc-edu-body{padding:22px;}

/* ── Section headings ── */
.cc-edu-sh{
  display:flex;align-items:center;gap:10px;margin-bottom:16px;margin-top:4px;
}
.cc-edu-sh-icon{font-size:1.1rem;}
.cc-edu-sh-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:clamp(.85rem,1.8vw,1.1rem);
  font-weight:900;color:var(--cc-char);
}
.cc-edu-sh-line{flex:1;height:1px;background:var(--cc-border);}
.cc-edu-sh-sub{
  font-size:.68rem;font-weight:600;padding:2px 9px;
  border-radius:20px;background:var(--cc-navy);
  color:#fff;white-space:nowrap;
}

/* ═══════════════════════════════════════
   WHO SHOULD USE THIS — PERSONA CARDS
   ═══════════════════════════════════════ */
.cc-persona-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
  margin-bottom:28px;
}
.cc-persona-card{
  border:1.5px solid var(--cc-border);
  border-radius:13px;overflow:hidden;
  display:flex;flex-direction:column;
  background:var(--cc-white);
  transition:box-shadow .2s,transform .2s;
}
.cc-persona-card:hover{
  box-shadow:0 8px 28px rgba(0,0,0,.09);
  transform:translateY(-2px);
}
.cc-persona-bar{height:4px;}
.cc-persona-bar.blue  {background:linear-gradient(90deg,var(--cc-blue),#1d4ed8);}
.cc-persona-bar.teal  {background:linear-gradient(90deg,var(--cc-teal),#06b6d4);}
.cc-persona-bar.lime  {background:linear-gradient(90deg,var(--cc-lime),#22c55e);}
.cc-persona-bar.amber {background:linear-gradient(90deg,var(--cc-amber),#f59e0b);}
.cc-persona-bar.purple{background:linear-gradient(90deg,var(--cc-purple),#8b5cf6);}
.cc-persona-bar.red   {background:linear-gradient(90deg,var(--cc-red),#e11d48);}

.cc-persona-head{
  padding:14px 15px 10px;
  display:flex;align-items:flex-start;gap:11px;
}
.cc-persona-avatar{
  width:44px;height:44px;min-width:44px;
  border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.3rem;border:1.5px solid;
}
.cc-persona-avatar.blue  {background:rgba(0,40,104,.08); border-color:rgba(0,40,104,.18);}
.cc-persona-avatar.teal  {background:rgba(8,145,178,.08);border-color:rgba(8,145,178,.2);}
.cc-persona-avatar.lime  {background:rgba(22,163,74,.08);border-color:rgba(22,163,74,.2);}
.cc-persona-avatar.amber {background:rgba(217,119,6,.08);border-color:rgba(217,119,6,.2);}
.cc-persona-avatar.purple{background:rgba(124,58,237,.08);border-color:rgba(124,58,237,.2);}
.cc-persona-avatar.red   {background:rgba(191,10,48,.08);border-color:rgba(191,10,48,.2);}

.cc-persona-meta{}
.cc-persona-role{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.8rem;font-weight:800;
  color:var(--cc-char);line-height:1.2;margin-bottom:3px;
}
.cc-persona-tag{
  font-size:.6rem;font-weight:700;padding:2px 7px;
  border-radius:20px;border:1px solid;display:inline-block;
}
.cc-persona-tag.blue  {background:rgba(0,40,104,.07); color:var(--cc-blue);  border-color:rgba(0,40,104,.18);}
.cc-persona-tag.teal  {background:rgba(8,145,178,.07);color:var(--cc-teal);  border-color:rgba(8,145,178,.2);}
.cc-persona-tag.lime  {background:rgba(22,163,74,.07);color:var(--cc-lime);  border-color:rgba(22,163,74,.2);}
.cc-persona-tag.amber {background:rgba(217,119,6,.07);color:var(--cc-amber); border-color:rgba(217,119,6,.2);}
.cc-persona-tag.purple{background:rgba(124,58,237,.07);color:var(--cc-purple);border-color:rgba(124,58,237,.2);}
.cc-persona-tag.red   {background:rgba(191,10,48,.07);color:var(--cc-red);   border-color:rgba(191,10,48,.2);}

.cc-persona-body{padding:0 15px 0;flex:1;}
.cc-persona-desc{
  font-size:.74rem;color:var(--cc-gray);line-height:1.68;margin-bottom:10px;
}
.cc-persona-desc strong{color:var(--cc-char);}

/* What you'll get */
.cc-persona-gets{
  list-style:none;margin:0;padding:0;margin-bottom:12px;
}
.cc-persona-gets li{
  font-size:.71rem;color:var(--cc-gray);
  line-height:1.55;padding:4px 0;
  border-bottom:1px solid var(--cc-border);
  display:flex;gap:7px;align-items:flex-start;
}
.cc-persona-gets li:last-child{border-bottom:none;}
.cc-persona-gets li::before{
  content:'✓';font-weight:700;font-size:.7rem;
  flex-shrink:0;margin-top:1px;
}
.cc-persona-gets li::before.blue  {color:var(--cc-blue);}

/* Gets check color per persona */
.blue  .cc-persona-gets li::before{color:var(--cc-blue);}
.teal  .cc-persona-gets li::before{color:var(--cc-teal);}
.lime  .cc-persona-gets li::before{color:var(--cc-lime);}
.amber .cc-persona-gets li::before{color:var(--cc-amber);}
.purple.cc-persona-gets li::before{color:var(--cc-purple);}
.red   .cc-persona-gets li::before{color:var(--cc-red);}

/* Prep time badge */
.cc-persona-foot{
  padding:10px 15px 13px;
  display:flex;align-items:center;justify-content:space-between;
}
.cc-persona-time{
  font-size:.64rem;font-weight:600;
  color:var(--cc-slate);
  display:flex;align-items:center;gap:5px;
}
.cc-persona-diff{
  font-size:.62rem;font-weight:700;padding:2px 7px;
  border-radius:20px;
}
.cc-persona-diff.easy  {background:rgba(22,163,74,.1); color:var(--cc-lime);}
.cc-persona-diff.medium{background:rgba(217,119,6,.1); color:var(--cc-amber);}
.cc-persona-diff.adv   {background:rgba(124,58,237,.1);color:var(--cc-purple);}

/* ═══════════════════════════════════════
   NOT FOR YOU block
   ═══════════════════════════════════════ */
.cc-notfor{
  background:var(--cc-bg);border:1px solid var(--cc-border);
  border-left:4px solid var(--cc-red);
  border-radius:10px;padding:14px 16px;margin-bottom:28px;
}
.cc-notfor-title{
  font-size:.74rem;font-weight:800;color:var(--cc-red);
  margin-bottom:6px;display:flex;align-items:center;gap:6px;
}
.cc-notfor-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;
}
.cc-notfor-item{
  font-size:.7rem;color:var(--cc-gray);line-height:1.55;
  display:flex;gap:7px;align-items:flex-start;
}
.cc-notfor-item::before{content:'✗';color:var(--cc-red);font-weight:700;flex-shrink:0;}
.cc-notfor-item strong{color:var(--cc-char);}

/* ═══════════════════════════════════════
   CONCEPT MODULES
   ═══════════════════════════════════════ */
.cc-concept-grid{
  display:grid;grid-template-columns:repeat(2,1fr);
  gap:14px;margin-bottom:28px;
}

.cc-concept-card{
  border:1.5px solid var(--cc-border);
  border-radius:13px;overflow:hidden;
  background:var(--cc-white);
}
.cc-concept-head{
  padding:13px 15px;display:flex;align-items:center;gap:10px;
  border-bottom:1px solid var(--cc-border);
}
.cc-concept-head.blue  {background:linear-gradient(135deg,#000a20,#001840);}
.cc-concept-head.teal  {background:linear-gradient(135deg,#001a20,#003850);}
.cc-concept-head.lime  {background:linear-gradient(135deg,#001a08,#003018);}
.cc-concept-head.amber {background:linear-gradient(135deg,#1c0a00,#5c3000);}
.cc-concept-head.purple{background:linear-gradient(135deg,#0a0020,#280050);}
.cc-concept-head.red   {background:linear-gradient(135deg,#1a0000,#4a0010);}

.cc-concept-num{
  width:28px;height:28px;min-width:28px;
  border-radius:8px;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);
  display:flex;align-items:center;justify-content:center;
  font-size:.65rem;font-weight:900;color:#fff;
}
.cc-concept-htitle{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.79rem;font-weight:800;color:#fff;flex:1;line-height:1.2;
}
.cc-concept-badge{
  font-size:.58rem;font-weight:700;padding:2px 7px;
  border-radius:20px;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.2);color:rgba(255,255,255,.8);
  white-space:nowrap;
}

.cc-concept-body{padding:14px 15px;}
.cc-concept-def{
  font-size:.77rem;color:var(--cc-char);
  line-height:1.72;margin-bottom:11px;font-weight:500;
}

/* analogy box */
.cc-concept-analogy{
  background:var(--cc-bg);border:1px solid var(--cc-border);
  border-radius:8px;padding:10px 12px;margin-bottom:11px;
  font-size:.72rem;color:var(--cc-gray);line-height:1.62;
}
.cc-concept-analogy-label{
  font-size:.6rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.08em;margin-bottom:4px;
}
.cc-concept-analogy-label.blue  {color:var(--cc-blue);}
.cc-concept-analogy-label.teal  {color:var(--cc-teal);}
.cc-concept-analogy-label.lime  {color:var(--cc-lime);}
.cc-concept-analogy-label.amber {color:var(--cc-amber);}
.cc-concept-analogy-label.purple{color:var(--cc-purple);}
.cc-concept-analogy-label.red   {color:var(--cc-red);}

/* Stat callout */
.cc-concept-stat{
  display:flex;align-items:center;gap:10px;
  border:1px solid;border-radius:8px;padding:9px 12px;margin-bottom:11px;
}
.cc-concept-stat.blue  {background:rgba(0,40,104,.05);border-color:rgba(0,40,104,.15);}
.cc-concept-stat.teal  {background:rgba(8,145,178,.05);border-color:rgba(8,145,178,.18);}
.cc-concept-stat.lime  {background:rgba(22,163,74,.05);border-color:rgba(22,163,74,.18);}
.cc-concept-stat.amber {background:rgba(217,119,6,.05);border-color:rgba(217,119,6,.18);}
.cc-concept-stat.purple{background:rgba(124,58,237,.05);border-color:rgba(124,58,237,.18);}
.cc-concept-stat.red   {background:rgba(191,10,48,.05);border-color:rgba(191,10,48,.18);}
.cc-concept-stat-val{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:1.2rem;font-weight:900;white-space:nowrap;
}
.cc-concept-stat-val.blue  {color:var(--cc-blue);}
.cc-concept-stat-val.teal  {color:var(--cc-teal);}
.cc-concept-stat-val.lime  {color:var(--cc-lime);}
.cc-concept-stat-val.amber {color:var(--cc-amber);}
.cc-concept-stat-val.purple{color:var(--cc-purple);}
.cc-concept-stat-val.red   {color:var(--cc-red);}
.cc-concept-stat-lbl{font-size:.69rem;color:var(--cc-gray);line-height:1.55;}
.cc-concept-stat-lbl strong{color:var(--cc-char);}

/* Calculator link */
.cc-concept-link{
  display:flex;align-items:center;gap:6px;
  background:var(--cc-navy);border-radius:7px;
  padding:8px 11px;
  font-size:.68rem;font-weight:600;color:rgba(255,255,255,.75);
  line-height:1.5;
}
.cc-concept-link strong{color:#fff;}

/* ═══════════════════════════════════════
   SCOPE VISUAL DIAGRAM
   ═══════════════════════════════════════ */
.cc-scope-wrap{
  border:1.5px solid var(--cc-border);border-radius:13px;
  overflow:hidden;margin-bottom:28px;
}
.cc-scope-head{
  background:linear-gradient(135deg,#001a08,#003018);
  padding:12px 16px;display:flex;align-items:center;gap:8px;
}
.cc-scope-head-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.8rem;font-weight:800;color:#fff;
}
.cc-scope-head-sub{font-size:.64rem;color:rgba(255,255,255,.55);margin-left:auto;}
.cc-scope-body{padding:16px;}
.cc-scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.cc-scope-card{
  border-radius:11px;overflow:hidden;
  border:1.5px solid;
}
.cc-scope-card.s1{border-color:rgba(191,10,48,.25);}
.cc-scope-card.s2{border-color:rgba(8,145,178,.25);}
.cc-scope-card.s3{border-color:rgba(124,58,237,.25);}
.cc-scope-card-top{padding:11px 13px 9px;}
.cc-scope-card.s1 .cc-scope-card-top{background:rgba(191,10,48,.06);}
.cc-scope-card.s2 .cc-scope-card-top{background:rgba(8,145,178,.06);}
.cc-scope-card.s3 .cc-scope-card-top{background:rgba(124,58,237,.06);}
.cc-scope-label{
  font-size:.58rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;margin-bottom:4px;
}
.cc-scope-card.s1 .cc-scope-label{color:var(--cc-red);}
.cc-scope-card.s2 .cc-scope-label{color:var(--cc-teal);}
.cc-scope-card.s3 .cc-scope-label{color:var(--cc-purple);}
.cc-scope-name{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.8rem;font-weight:800;color:var(--cc-char);
  margin-bottom:4px;
}
.cc-scope-def{font-size:.71rem;color:var(--cc-gray);line-height:1.6;}
.cc-scope-examples{
  padding:10px 13px;background:var(--cc-bg);
  border-top:1px solid var(--cc-border);
}
.cc-scope-ex-label{
  font-size:.58rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.06em;color:var(--cc-slate);margin-bottom:5px;
}
.cc-scope-ex-list{
  list-style:none;margin:0;padding:0;
}
.cc-scope-ex-list li{
  font-size:.69rem;color:var(--cc-gray);line-height:1.55;
  padding:3px 0;border-bottom:1px dashed var(--cc-border);
  display:flex;gap:6px;
}
.cc-scope-ex-list li:last-child{border-bottom:none;}
.cc-scope-ex-list li::before{
  content:'→';font-size:.7rem;flex-shrink:0;
}
.cc-scope-card.s1 .cc-scope-ex-list li::before{color:var(--cc-red);}
.cc-scope-card.s2 .cc-scope-ex-list li::before{color:var(--cc-teal);}
.cc-scope-card.s3 .cc-scope-ex-list li::before{color:var(--cc-purple);}
.cc-scope-pct{
  text-align:center;padding:7px;
  font-size:.62rem;font-weight:700;
}
.cc-scope-card.s1 .cc-scope-pct{color:var(--cc-red);background:rgba(191,10,48,.05);}
.cc-scope-card.s2 .cc-scope-pct{color:var(--cc-teal);background:rgba(8,145,178,.05);}
.cc-scope-card.s3 .cc-scope-pct{color:var(--cc-purple);background:rgba(124,58,237,.05);}

/* ═══════════════════════════════════════
   MITIGATION HIERARCHY
   ═══════════════════════════════════════ */
.cc-hier-wrap{
  border:1.5px solid var(--cc-border);border-radius:13px;
  overflow:hidden;margin-bottom:28px;
}
.cc-hier-head{
  background:linear-gradient(135deg,#000a20,#002868);
  padding:12px 16px;
}
.cc-hier-head-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.8rem;font-weight:800;color:#fff;margin-bottom:2px;
}
.cc-hier-head-sub{font-size:.66rem;color:rgba(255,255,255,.55);}
.cc-hier-body{padding:16px;}
.cc-hier-steps{display:flex;flex-direction:column;gap:0;}
.cc-hier-step{
  display:flex;align-items:stretch;gap:0;position:relative;
}
.cc-hier-step-left{
  display:flex;flex-direction:column;align-items:center;
  width:48px;min-width:48px;padding-top:4px;
}
.cc-hier-num{
  width:32px;height:32px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.72rem;font-weight:900;color:#fff;
  flex-shrink:0;z-index:1;position:relative;
}
.cc-hier-line{
  width:2px;flex:1;margin-top:4px;margin-bottom:0;
}
.cc-hier-step:last-child .cc-hier-line{display:none;}
.cc-hier-step-right{
  padding:4px 0 18px 12px;flex:1;
}
.cc-hier-step:last-child .cc-hier-step-right{padding-bottom:0;}
.cc-hier-step-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.78rem;font-weight:800;color:var(--cc-char);margin-bottom:4px;
  display:flex;align-items:center;gap:7px;
}
.cc-hier-step-badge{
  font-size:.58rem;font-weight:700;padding:2px 7px;
  border-radius:20px;
}
.cc-hier-step-desc{font-size:.73rem;color:var(--cc-gray);line-height:1.65;}
.cc-hier-step-desc strong{color:var(--cc-char);}
.cc-hier-callout{
  background:var(--cc-bg);border:1px solid var(--cc-border);
  border-radius:7px;padding:8px 11px;margin-top:7px;
  font-size:.7rem;color:var(--cc-gray);line-height:1.58;
}
.cc-hier-callout strong{color:var(--cc-char);}

/* Colors per step */
.cc-hier-s1 .cc-hier-num{background:var(--cc-lime);}
.cc-hier-s1 .cc-hier-line{background:rgba(22,163,74,.2);}
.cc-hier-s1 .cc-hier-step-badge{background:rgba(22,163,74,.1);color:var(--cc-lime);}
.cc-hier-s2 .cc-hier-num{background:var(--cc-teal);}
.cc-hier-s2 .cc-hier-line{background:rgba(8,145,178,.2);}
.cc-hier-s2 .cc-hier-step-badge{background:rgba(8,145,178,.1);color:var(--cc-teal);}
.cc-hier-s3 .cc-hier-num{background:var(--cc-amber);}
.cc-hier-s3 .cc-hier-line{background:rgba(217,119,6,.2);}
.cc-hier-s3 .cc-hier-step-badge{background:rgba(217,119,6,.1);color:var(--cc-amber);}
.cc-hier-s4 .cc-hier-num{background:var(--cc-blue);}
.cc-hier-s4 .cc-hier-line{background:rgba(0,40,104,.2);}
.cc-hier-s4 .cc-hier-step-badge{background:rgba(0,40,104,.08);color:var(--cc-blue);}
.cc-hier-s5 .cc-hier-num{background:var(--cc-purple);}
.cc-hier-s5 .cc-hier-line{display:none;}
.cc-hier-s5 .cc-hier-step-badge{background:rgba(124,58,237,.1);color:var(--cc-purple);}

/* ═══════════════════════════════════════
   QUICK START CHECKLIST
   ═══════════════════════════════════════ */
.cc-checklist-wrap{
  background:var(--cc-navy);
  border-radius:13px;padding:18px;margin-bottom:0;
}
.cc-checklist-title{
  font-family:'Montserrat','Inter',sans-serif;
  font-size:.85rem;font-weight:900;color:#fff;
  margin-bottom:4px;display:flex;align-items:center;gap:7px;
}
.cc-checklist-sub{font-size:.71rem;color:rgba(255,255,255,.5);margin-bottom:14px;}
.cc-checklist-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;}
.cc-checklist-item{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  border-radius:9px;padding:10px 13px;
  display:flex;align-items:flex-start;gap:9px;
}
.cc-checklist-cb{
  width:18px;height:18px;min-width:18px;
  border-radius:5px;border:2px solid rgba(255,255,255,.3);
  margin-top:1px;flex-shrink:0;
}
.cc-checklist-text{
  font-size:.72rem;color:rgba(255,255,255,.75);line-height:1.58;
}
.cc-checklist-text strong{color:#fff;}

/* ════════ RESPONSIVE ════════ */
@media(max-width:900px){
  .cc-persona-grid{grid-template-columns:repeat(2,1fr);}
  .cc-cc-notfor-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:768px){
  .cc-edu-banner{padding:20px 16px 18px;}
  .cc-edu-body{padding:16px;}
  .cc-persona-grid{grid-template-columns:repeat(2,1fr);gap:11px;}
  .cc-concept-grid{grid-template-columns:1fr;}
  .cc-scope-grid{grid-template-columns:1fr;gap:10px;}
  .cc-notfor-grid{grid-template-columns:repeat(2,1fr);}
  .cc-checklist-grid{grid-template-columns:1fr;}
}
@media(max-width:560px){
  .cc-persona-grid{grid-template-columns:1fr;}
  .cc-notfor-grid{grid-template-columns:1fr;}
  .cc-checklist-grid{grid-template-columns:1fr;}
}

