:root{
  --navy:#002868;--green:#00843D;--red:#BF0A30;
  --light-bg:#F8F9FF;--card-bg:#FFFFFF;--border:#D0D5E8;
  --text:#1A1F36;--muted:#6B7280;
  --gold:#C8860A;--gold-light:#FFFBEB;
  --purple:#7C3AED;--purple-light:#F5F3FF;
  --trad:#1D4ED8;--roth:#00843D;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',sans-serif;background:var(--light-bg);color:var(--text);font-size:15px;line-height:1.6}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif}

/* HEADER */
.calc-header{background:linear-gradient(135deg,#001a55 0%,var(--navy) 55%,#00501F 100%);color:#fff;padding:24px 24px 18px;text-align:center;position:relative;overflow:hidden}
.calc-header::before{content:'📊';position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:80px;opacity:.07}
.calc-header h1{font-size:clamp(17px,3.5vw,25px);font-weight:800;margin-bottom:5px}
.calc-header p{font-size:12.5px;opacity:.85;max-width:700px;margin:0 auto}
.header-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:9px}
.hbadge{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:14px;padding:3px 11px;font-size:11px;font-weight:700}

/* TABS */
.tab-nav{display:flex;gap:3px;padding:12px 12px 0;background:#fff;border-bottom:2px solid var(--border);overflow-x:auto;scrollbar-width:none}
.tab-nav::-webkit-scrollbar{display:none}
.tab-btn{flex-shrink:0;padding:8px 13px;border:none;background:none;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--muted);cursor:pointer;border-radius:8px 8px 0 0;transition:.2s;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-2px}
.tab-btn.active{color:var(--navy);border-bottom-color:var(--navy);background:var(--light-bg)}
.tab-btn:hover:not(.active){color:var(--navy);background:var(--light-bg)}
.tab-pane{display:none;padding:16px 14px}
.tab-pane.active{display:block}

/* LAYOUT */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
@media(max-width:768px){.two-col{grid-template-columns:1fr}}
.card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:12px}
.card-title{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:11px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.badge{background:var(--navy);color:#fff;font-size:9.5px;padding:2px 7px;border-radius:9px;font-weight:700}
.badge-gold{background:var(--gold);color:#fff;font-size:9.5px;padding:2px 7px;border-radius:9px}
.badge-red{background:var(--red);color:#fff;font-size:9.5px;padding:2px 7px;border-radius:9px}
.badge-green{background:var(--green);color:#fff;font-size:9.5px;padding:2px 7px;border-radius:9px}

/* FORM */
.form-group{margin-bottom:11px}
label{display:block;font-size:11px;font-weight:600;color:var(--muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.4px}
input[type=number],input[type=text],select{width:100%;padding:8px 11px;border:1.5px solid var(--border);border-radius:8px;font-size:13.5px;font-family:'Inter',sans-serif;color:var(--text);background:#fff;transition:.2s;-moz-appearance:textfield}
input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}
input:focus,select:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,40,104,.1)}
.ip{position:relative}
.ip .pre{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:13px;color:var(--muted);font-weight:600;pointer-events:none}
.ip .suf{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--muted);font-weight:600;pointer-events:none}
.ip input{padding-left:24px}
.ip input.suf-pad{padding-right:28px;padding-left:11px}
.row-2{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px}
@media(max-width:480px){.row-2,.row-3{grid-template-columns:1fr}}

/* TOGGLE */
.tgl-grp{display:flex;gap:0;border:1.5px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:11px}
.tgl-grp label{margin:0}
.tgl-grp input[type=radio]{display:none}
.tgl-grp .tb{display:block;padding:7px 11px;font-size:11px;font-weight:700;color:var(--muted);cursor:pointer;background:#fff;border-right:1px solid var(--border);transition:.2s;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}
.tgl-grp label:last-child .tb{border-right:none}
.tgl-grp input[type=radio]:checked+.tb{background:var(--navy);color:#fff}

/* RESULTS */
.result-hero{background:linear-gradient(135deg,var(--navy),#1a3a6b);color:#fff;border-radius:12px;padding:17px;text-align:center;margin-bottom:12px}
.result-hero .label{font-size:10.5px;opacity:.8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
.result-hero .value{font-size:34px;font-family:'Montserrat',sans-serif;font-weight:800}
.result-hero .subtitle{font-size:11.5px;opacity:.7;margin-top:3px}

.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.ri{background:var(--light-bg);border-radius:9px;padding:10px 12px;border:1px solid var(--border)}
.ri .rl{font-size:10.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}
.ri .rv{font-size:16px;font-family:'Montserrat',sans-serif;font-weight:700;color:var(--navy)}
.ri .rs{font-size:10.5px;color:var(--muted);margin-top:2px}
.ri.hi{background:var(--green);border-color:var(--green)}
.ri.hi .rl,.ri.hi .rv,.ri.hi .rs{color:#fff}
.ri.wa{background:#FFF3CD;border-color:#FFCA28}
.ri.wa .rv,.ri.wa .rl{color:#7B5800}
.ri.go{background:var(--gold-light);border-color:#FDE68A}
.ri.go .rv,.ri.go .rl{color:#78350F}
.ri.pu{background:var(--purple-light);border-color:#C4B5FD}
.ri.pu .rv,.ri.pu .rl{color:#5B21B6}

/* ROTH VS TRAD */
.rv-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.rv-card{border-radius:10px;padding:13px;border:2px solid var(--border);text-align:center}
.rv-card.trad{border-color:var(--trad);background:#EFF6FF}
.rv-card.roth{border-color:var(--roth);background:#ECFDF5}
.rv-card .rv-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}
.rv-card.trad .rv-label{color:var(--trad)}
.rv-card.roth .rv-label{color:var(--roth)}
.rv-card .rv-fv{font-size:22px;font-family:'Montserrat',sans-serif;font-weight:800}
.rv-card .rv-net{font-size:13px;font-weight:700;margin-top:3px}
.rv-card .rv-sub{font-size:10.5px;color:var(--muted);margin-top:2px}

/* FEE CARDS */
.fee-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.fee-card{border-radius:9px;padding:11px;border:2px solid var(--border);text-align:center}
.fee-card.best{border-color:var(--green);background:#ECFDF5}
.fee-card .fc-rate{font-size:11px;font-weight:700;color:var(--muted);margin-bottom:3px}
.fee-card .fc-bal{font-size:18px;font-family:'Montserrat',sans-serif;font-weight:800;color:var(--navy)}
.fee-card .fc-cost{font-size:11px;margin-top:3px}
.fee-card.best .fc-bal{color:var(--green)}

/* SCENARIO COMPARE */
.sc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
@media(max-width:580px){.sc-grid{grid-template-columns:1fr 1fr}}
.sc-card{border-radius:9px;padding:10px;border:2px solid var(--border);text-align:center}
.sc-card.best{border-color:var(--green);background:#ECFDF5}
.sc-card .sc-lbl{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:3px}
.sc-card .sc-val{font-size:17px;font-family:'Montserrat',sans-serif;font-weight:800;color:var(--navy)}
.sc-card.best .sc-val{color:var(--green)}

/* READINESS */
.readiness-score{border-radius:12px;padding:18px;text-align:center;margin-bottom:12px}
.readiness-score.grade-a{background:linear-gradient(135deg,var(--green),#006B31);color:#fff}
.readiness-score.grade-b{background:linear-gradient(135deg,#16A34A,#15803D);color:#fff}
.readiness-score.grade-c{background:linear-gradient(135deg,#F59E0B,#D97706);color:#fff}
.readiness-score.grade-d{background:linear-gradient(135deg,#EF4444,#DC2626);color:#fff}
.readiness-score.grade-f{background:linear-gradient(135deg,#991B1B,var(--red));color:#fff}
.rs-grade{font-size:52px;font-family:'Montserrat',sans-serif;font-weight:800;line-height:1}
.rs-label{font-size:14px;font-weight:700;margin-top:4px}
.rs-sub{font-size:12px;opacity:.85;margin-top:3px}

/* TABLE */
.dt{width:100%;border-collapse:collapse;font-size:12px}
.dt th{background:var(--navy);color:#fff;padding:7px 9px;text-align:right;font-size:10.5px;text-transform:uppercase;letter-spacing:.3px}
.dt th:first-child{text-align:left}
.dt td{padding:7px 9px;border-bottom:1px solid var(--border);text-align:right}
.dt td:first-child{text-align:left;color:var(--muted);font-weight:600}
.dt tr:last-child td{border-bottom:none;font-weight:700;background:var(--light-bg)}
.dt tr:hover td{background:var(--light-bg)}
.dt .hi-row td{background:#EFF6FF!important;color:var(--navy)!important;font-weight:700}

/* INFO BOXES */
.info-box{background:#EFF6FF;border:1px solid #BFDBFE;border-left:4px solid var(--navy);border-radius:8px;padding:10px 12px;font-size:12.5px;color:#1e40af;margin-bottom:11px}
.warn-box{background:#FFF3CD;border:1px solid #FFCA28;border-left:4px solid #F59E0B;border-radius:8px;padding:10px 12px;font-size:12.5px;color:#92400E;margin-bottom:11px}
.danger-box{background:#FEF2F2;border:1px solid #FECACA;border-left:4px solid var(--red);border-radius:8px;padding:10px 12px;font-size:12.5px;color:#991B1B;margin-bottom:11px}
.success-box{background:#ECFDF5;border:1px solid #A7F3D0;border-left:4px solid var(--green);border-radius:8px;padding:10px 12px;font-size:12.5px;color:#065F46;margin-bottom:11px}
.gold-box{background:var(--gold-light);border:1px solid #FDE68A;border-left:4px solid var(--gold);border-radius:8px;padding:10px 12px;font-size:12.5px;color:#78350F;margin-bottom:11px}

/* BUTTONS */
.btn-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.btn{padding:9px 16px;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;cursor:pointer;transition:.2s;border:2px solid transparent;text-transform:uppercase;letter-spacing:.4px;display:inline-flex;align-items:center;gap:5px}
.btn-calc{background:var(--green);color:#fff;border-color:var(--green)}
.btn-calc:hover{background:#006B31}
.btn-clear{background:#fff;color:var(--red);border-color:var(--red)}
.btn-clear:hover{background:var(--red);color:#fff}
.btn-pdf{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-pdf:hover{background:#001a55}
.btn-wa{background:#25D366;color:#fff;border-color:#25D366}
.btn-wa:hover{background:#128C7E}
.btn-sm{padding:6px 11px;font-size:10.5px}

/* CHART */
.chart-wrap{position:relative;height:230px;margin-top:8px}
.chart-wrap-sm{position:relative;height:170px;margin-top:6px}
.chart-wrap-lg{position:relative;height:270px;margin-top:8px}

/* VESTING BAR */
.vest-row{display:flex;align-items:center;gap:8px;padding:7px 11px;border-radius:7px;background:var(--light-bg);border:1px solid var(--border);margin-bottom:5px}
.vest-row .vy{min-width:44px;font-size:11px;font-weight:700;color:var(--muted)}
.vest-row .vb{flex:1;height:8px;background:#E5E7EB;border-radius:4px;overflow:hidden}
.vest-row .vf{height:100%;background:var(--green);border-radius:4px;transition:.3s}
.vest-row .vp{min-width:36px;text-align:right;font-size:12px;font-weight:700;color:var(--navy)}

/* PAYCHECK */
.payslip{background:linear-gradient(135deg,#F8FAFF,#EFF6FF);border:1px solid #BFDBFE;border-radius:10px;padding:14px;margin-bottom:12px}
.payslip-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #DBEAFE;font-size:13px}
.payslip-row:last-child{border-bottom:none;font-weight:700;font-size:14px}
.payslip-row .pl{color:var(--muted)}
.payslip-row .pv{font-weight:600;color:var(--navy)}
.payslip-row .pv.red{color:var(--red)}
.payslip-row .pv.green{color:var(--green)}

/* SECTION HEADER */
.sect-hd{background:linear-gradient(90deg,var(--navy),#1a3a6b);color:#fff;border-radius:8px;padding:10px 13px;margin-bottom:12px;display:flex;align-items:center;gap:9px}
.sect-hd h3{font-size:13px;font-weight:700;margin:0}

/* HIDDEN */
.hidden{display:none!important}

/* AD */
.ad-slot{background:#F1F5F9;border:1px dashed #CBD5E1;border-radius:8px;padding:10px;text-align:center;color:#94A3B8;font-size:12px;margin:11px 0}

/* 2026 LIMITS BANNER */
.limits-banner{background:linear-gradient(135deg,#002868,#1D4ED8);color:#fff;border-radius:10px;padding:13px 16px;margin-bottom:13px}
.limits-banner .lb-title{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;margin-bottom:8px;opacity:.9}
.limits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
@media(max-width:480px){.limits-grid{grid-template-columns:1fr 1fr}}
.limits-item{background:rgba(255,255,255,.15);border-radius:7px;padding:7px 9px;text-align:center}
.limits-item .li-val{font-size:15px;font-family:'Montserrat',sans-serif;font-weight:800}
.limits-item .li-lbl{font-size:10px;opacity:.8;margin-top:1px}
/* ── HOW IT WORKS WRAPPER ─────────────────────────────────── */
.hiw-wrap{max-width:960px;margin:0 auto;padding:0 14px 32px}

/* Banner */
.hiw-banner{background:linear-gradient(135deg,#001a55 0%,var(--navy) 55%,#003d1a 100%);color:#fff;border-radius:12px;padding:22px 24px;margin:18px 0 18px;position:relative;overflow:hidden}
.hiw-banner::after{content:'📈';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:80px;opacity:.07;pointer-events:none}
.hiw-banner h2{font-family:'Montserrat',sans-serif;font-size:clamp(16px,3vw,22px);font-weight:800;margin-bottom:5px}
.hiw-banner p{font-size:12.5px;opacity:.85;max-width:640px;margin:0;line-height:1.55}
.hiw-banner-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.hiw-chip{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}

/* Divider labels — reuse sect-hd style */
.hiw-divider{display:flex;align-items:center;gap:10px;margin:20px 0 13px}
.hiw-divider span{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:var(--navy);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}
.hiw-divider::before,.hiw-divider::after{content:'';flex:1;height:2px;background:var(--border)}

/* Step cards grid */
.hiw-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:14px}
@media(max-width:680px){.hiw-steps{grid-template-columns:1fr 1fr}}
@media(max-width:400px){.hiw-steps{grid-template-columns:1fr}}
.hiw-step{background:var(--card-bg);border:1px solid var(--border);border-radius:11px;padding:14px;position:relative;overflow:hidden}
.hiw-step::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px}
.hiw-step.s1::before{background:var(--navy)}
.hiw-step.s2::before{background:#1D4ED8}
.hiw-step.s3::before{background:var(--green)}
.hiw-step.s4::before{background:var(--gold)}
.hiw-step.s5::before{background:var(--purple)}
.hiw-step.s6::before{background:var(--red)}
.hiw-step-num{width:28px;height:28px;border-radius:50%;font-family:'Montserrat',sans-serif;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:9px}
.s1 .hiw-step-num{background:var(--navy)}
.s2 .hiw-step-num{background:#1D4ED8}
.s3 .hiw-step-num{background:var(--green)}
.s4 .hiw-step-num{background:var(--gold)}
.s5 .hiw-step-num{background:var(--purple)}
.s6 .hiw-step-num{background:var(--red)}
.hiw-step-icon{font-size:22px;margin-bottom:7px;display:block}
.hiw-step h4{font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:800;color:var(--navy);margin-bottom:5px;line-height:1.25}
.hiw-step p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}
.hiw-step .hiw-step-tag{display:inline-block;margin-top:8px;font-size:10px;font-weight:700;padding:2px 8px;border-radius:7px;background:var(--light-bg);border:1px solid var(--border);color:var(--muted)}

/* Contribution flow bar */
.contrib-flow{display:flex;flex-wrap:wrap;align-items:center;gap:0;margin:12px 0;border:1px solid var(--border);border-radius:10px;overflow:hidden}
.cf-block{flex:1;min-width:120px;padding:12px 14px;text-align:center}
.cf-block .cfb-icon{font-size:22px;margin-bottom:4px}
.cf-block .cfb-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:2px}
.cf-block .cfb-val{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:800;color:var(--navy)}
.cf-block .cfb-sub{font-size:10.5px;color:var(--muted);margin-top:2px}
.cf-block.cf-emp{background:#EFF6FF;border-right:1px solid var(--border)}
.cf-block.cf-match{background:#ECFDF5;border-right:1px solid var(--border)}
.cf-block.cf-growth{background:var(--gold-light);border-right:1px solid var(--border)}
.cf-block.cf-total{background:var(--navy);color:#fff}
.cf-block.cf-total .cfb-label{color:rgba(255,255,255,.7)}
.cf-block.cf-total .cfb-val{color:#fff}
.cf-block.cf-total .cfb-sub{color:rgba(255,255,255,.6)}
.cf-arrow{font-size:18px;color:var(--muted);flex-shrink:0;padding:0 6px;display:none}
@media(max-width:520px){.contrib-flow{flex-direction:column}.cf-block{border-right:none!important;border-bottom:1px solid var(--border)}.cf-block:last-child{border-bottom:none}}

/* Compound growth visual */
.compound-visual{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:12px 0}
@media(max-width:520px){.compound-visual{grid-template-columns:1fr 1fr}}
.cv-item{background:var(--light-bg);border:1px solid var(--border);border-radius:9px;padding:11px 10px;text-align:center}
.cv-item .cvi-year{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:3px}
.cv-item .cvi-val{font-family:'Montserrat',sans-serif;font-size:17px;font-weight:800;color:var(--navy)}
.cv-item .cvi-growth{font-size:10.5px;font-weight:700;color:var(--green);margin-top:3px}
.cv-item.cv-highlight{background:var(--navy);border-color:var(--navy)}
.cv-item.cv-highlight .cvi-year{color:rgba(255,255,255,.7)}
.cv-item.cv-highlight .cvi-val{color:#fff;font-size:20px}
.cv-item.cv-highlight .cvi-growth{color:#6EE7B7}

/* Terms glossary grid */
.hiw-terms{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
@media(max-width:540px){.hiw-terms{grid-template-columns:1fr}}
.hiw-term{background:var(--card-bg);border:1px solid var(--border);border-radius:9px;padding:11px 12px}
.hiw-term .ht-word{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:800;color:var(--navy);margin-bottom:3px;display:flex;align-items:center;gap:6px}
.hiw-term .ht-def{font-size:11.5px;color:var(--muted);line-height:1.55}

/* SECURE 2.0 callout grid */
.secure-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}
@media(max-width:520px){.secure-grid{grid-template-columns:1fr}}
.secure-item{border-radius:9px;padding:12px 13px;border:1.5px solid}
.secure-item.si-new{background:#ECFDF5;border-color:#A7F3D0}
.secure-item.si-warn{background:#FFF3CD;border-color:#FFCA28}
.secure-item.si-blue{background:#EFF6FF;border-color:#BFDBFE}
.secure-item.si-pur{background:var(--purple-light);border-color:#C4B5FD}
.secure-item .si-title{font-family:'Montserrat',sans-serif;font-size:11.5px;font-weight:800;margin-bottom:4px}
.si-new .si-title{color:#065F46}
.si-warn .si-title{color:#92400E}
.si-blue .si-title{color:#1D4ED8}
.si-pur .si-title{color:#5B21B6}
.secure-item p{font-size:12px;color:var(--text);margin:0;line-height:1.55}
/* ── EXAMPLES SECTION WRAPPER ─────────────────────────────── */
.ex-wrap{max-width:960px;margin:0 auto;padding:0 14px 32px}

/* Section banner */
.ex-banner{background:linear-gradient(135deg,#001a55 0%,var(--navy) 60%,#003d1a 100%);color:#fff;border-radius:12px;padding:20px 22px;margin:18px 0 18px;position:relative;overflow:hidden}
.ex-banner::after{content:'📊';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:80px;opacity:.07;pointer-events:none}
.ex-banner h2{font-family:'Montserrat',sans-serif;font-size:clamp(15px,3vw,21px);font-weight:800;margin-bottom:5px}
.ex-banner p{font-size:12.5px;opacity:.85;max-width:660px;margin:0;line-height:1.55}
.ex-banner-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.ex-chip{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}

/* Divider */
.ex-divider{display:flex;align-items:center;gap:10px;margin:22px 0 14px}
.ex-divider span{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:var(--navy);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}
.ex-divider::before,.ex-divider::after{content:'';flex:1;height:2px;background:var(--border)}

/* Case card outer */
.ex-case{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;margin-bottom:22px;overflow:hidden;box-shadow:0 2px 8px rgba(0,40,104,.05)}

/* Case header strip */
.ex-case-head{padding:14px 18px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ex-case-head.c1{background:linear-gradient(135deg,#002868,#1D4ED8)}
.ex-case-head.c2{background:linear-gradient(135deg,#00843D,#005C2A)}
.ex-case-head.c3{background:linear-gradient(135deg,#7C3AED,#5B21B6)}
.ex-case-head.c4{background:linear-gradient(135deg,#C8860A,#92400E)}
.ex-case-head.c5{background:linear-gradient(135deg,#BF0A30,#7F0020)}
.ex-case-left{flex:1}
.ex-case-num{font-size:10px;font-weight:800;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.6px;margin-bottom:4px}
.ex-case-title{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:800;color:#fff;margin-bottom:6px;line-height:1.2}
.ex-case-badges{display:flex;flex-wrap:wrap;gap:5px}
.ex-cb{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);border-radius:10px;padding:2px 9px;font-size:10.5px;font-weight:700;color:#fff;white-space:nowrap}
.ex-case-hero{text-align:right;flex-shrink:0}
.ex-case-hero .ech-label{font-size:10px;font-weight:700;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}
.ex-case-hero .ech-val{font-family:'Montserrat',sans-serif;font-size:clamp(22px,4vw,30px);font-weight:800;color:#fff;line-height:1}
.ex-case-hero .ech-sub{font-size:10px;color:rgba(255,255,255,.6);margin-top:3px}
@media(max-width:480px){.ex-case-hero{width:100%;text-align:left}.ex-case-hero .ech-val{font-size:22px}}

/* Case body */
.ex-case-body{padding:16px 18px}

/* Profile 2-col */
.ex-profiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px}
@media(max-width:560px){.ex-profiles{grid-template-columns:1fr}}
.ex-profile{border-radius:10px;padding:12px 13px;border:1.5px solid}
.ep-employee{background:#EFF6FF;border-color:#BFDBFE}
.ep-employer{background:#ECFDF5;border-color:#A7F3D0}
.ep-solo{background:var(--gold-light);border-color:#FDE68A}
.ep-joint{background:var(--purple-light);border-color:#C4B5FD}
.ex-profile h5{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;display:flex;align-items:center;gap:5px}
.ep-employee h5{color:#1D4ED8}
.ep-employer h5{color:#065F46}
.ep-solo h5{color:#78350F}
.ep-joint h5{color:#5B21B6}
.ex-profile-row{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px dashed rgba(0,0,0,.07);font-size:12px}
.ex-profile-row:last-child{border-bottom:none}
.ex-profile-row .epr-l{color:var(--muted);font-weight:500}
.ex-profile-row .epr-v{font-weight:700;color:var(--navy)}
.ex-profile-row .epr-v.green{color:var(--green)}
.ex-profile-row .epr-v.red{color:var(--red)}
.ex-profile-row .epr-v.gold{color:var(--gold)}
.ex-profile-row .epr-v.pur{color:var(--purple)}

/* Step calculation table wrapper */
.ex-table-wrap{overflow-x:auto;margin-bottom:13px}
.ex-table-wrap table.dt{min-width:480px}
.dt .step-row td:first-child{padding-left:18px;font-style:italic}
.dt .subtotal-row td{background:#F0F4FF!important;font-weight:700;color:var(--navy)!important}
.dt .deduct-row td:last-child{color:var(--red)!important;font-weight:700}
.dt .add-row td:last-child{color:var(--green)!important;font-weight:700}
.dt .final-row td{background:var(--navy)!important;color:#fff!important;font-weight:800;font-size:13px}

/* Outcome 3-tile strip */
.ex-outcome{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0}
@media(max-width:520px){.ex-outcome{grid-template-columns:1fr}}
.ex-tile{border-radius:9px;padding:12px 11px;text-align:center;border:1.5px solid}
.ext-navy{background:var(--navy);border-color:var(--navy)}
.ext-navy .et-label{color:rgba(255,255,255,.7);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:3px}
.ext-navy .et-val{font-family:'Montserrat',sans-serif;font-size:19px;font-weight:800;color:#fff}
.ext-navy .et-sub{font-size:10.5px;color:rgba(255,255,255,.6);margin-top:3px}
.ext-green{background:#ECFDF5;border-color:#A7F3D0}
.ext-green .et-label{color:#065F46;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:3px}
.ext-green .et-val{font-family:'Montserrat',sans-serif;font-size:19px;font-weight:800;color:var(--green)}
.ext-green .et-sub{font-size:10.5px;color:#065F46;margin-top:3px;opacity:.8}
.ext-gold{background:var(--gold-light);border-color:#FDE68A}
.ext-gold .et-label{color:#78350F;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:3px}
.ext-gold .et-val{font-family:'Montserrat',sans-serif;font-size:19px;font-weight:800;color:var(--gold)}
.ext-gold .et-sub{font-size:10.5px;color:#92400E;margin-top:3px;opacity:.85}
/* ── TIPS SECTION WRAPPER ─────────────────────────────────── */
.pt-wrap{max-width:960px;margin:0 auto;padding:0 14px 32px}

/* Section banner */
.pt-banner{background:linear-gradient(135deg,#001a55 0%,var(--navy) 55%,#1a0040 100%);color:#fff;border-radius:12px;padding:20px 22px;margin:18px 0 18px;position:relative;overflow:hidden}
.pt-banner::after{content:'💡';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:80px;opacity:.07;pointer-events:none}
.pt-banner h2{font-family:'Montserrat',sans-serif;font-size:clamp(15px,3vw,21px);font-weight:800;margin-bottom:5px}
.pt-banner p{font-size:12.5px;opacity:.85;max-width:660px;margin:0;line-height:1.55}
.pt-banner-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.pt-chip{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}

/* Divider */
.pt-divider{display:flex;align-items:center;gap:10px;margin:22px 0 14px}
.pt-divider span{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:var(--navy);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}
.pt-divider::before,.pt-divider::after{content:'';flex:1;height:2px;background:var(--border)}

/* Tip card outer */
.pt-card{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;margin-bottom:22px;overflow:hidden;box-shadow:0 2px 8px rgba(0,40,104,.05)}

/* Tip card header */
.pt-head{padding:16px 20px;display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.pt-head.t1{background:linear-gradient(135deg,#002868,#1D4ED8)}
.pt-head.t2{background:linear-gradient(135deg,#00843D,#005C2A)}
.pt-head.t3{background:linear-gradient(135deg,#C8860A,#7B4500)}
.pt-head.t4{background:linear-gradient(135deg,#7C3AED,#4C1D95)}
.pt-head.t5{background:linear-gradient(135deg,#BF0A30,#7F0020)}
.pt-num-badge{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.2);border:2px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-family:'Montserrat',sans-serif;font-size:18px;font-weight:800;color:#fff;flex-shrink:0}
.pt-head-text{flex:1;min-width:0}
.pt-tip-label{font-size:10px;font-weight:800;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.6px;margin-bottom:3px}
.pt-tip-title{font-family:'Montserrat',sans-serif;font-size:clamp(14px,2.5vw,18px);font-weight:800;color:#fff;line-height:1.25;margin-bottom:7px}
.pt-tip-badges{display:flex;flex-wrap:wrap;gap:5px}
.pt-tb{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);border-radius:10px;padding:2px 9px;font-size:10.5px;font-weight:700;color:#fff;white-space:nowrap}
.pt-impact{text-align:right;flex-shrink:0}
.pt-impact .pti-label{font-size:9.5px;font-weight:700;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}
.pt-impact .pti-val{font-family:'Montserrat',sans-serif;font-size:clamp(18px,3.5vw,26px);font-weight:800;color:#FFD700;line-height:1}
.pt-impact .pti-sub{font-size:10px;color:rgba(255,255,255,.6);margin-top:3px}
@media(max-width:480px){.pt-impact{width:100%;text-align:left}.pt-impact .pti-val{font-size:20px}}

/* Tip card body */
.pt-body{padding:16px 18px}

/* Do/Don't comparison */
.pt-dodonts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
@media(max-width:540px){.pt-dodonts{grid-template-columns:1fr}}
.pt-do{background:#ECFDF5;border:1.5px solid #A7F3D0;border-radius:10px;padding:12px 13px}
.pt-dont{background:#FEF2F2;border:1.5px solid #FECACA;border-radius:10px;padding:12px 13px}
.pt-do h5{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:#065F46;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;display:flex;align-items:center;gap:5px}
.pt-dont h5{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:#991B1B;text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;display:flex;align-items:center;gap:5px}
.pt-do ul,.pt-dont ul{list-style:none;padding:0;margin:0}
.pt-do ul li,.pt-dont ul li{font-size:12px;padding:4px 0;border-bottom:1px dashed rgba(0,0,0,.08);color:var(--text);line-height:1.5;display:flex;align-items:flex-start;gap:6px}
.pt-do ul li:last-child,.pt-dont ul li:last-child{border-bottom:none}
.pt-do ul li::before{content:'✅';flex-shrink:0;font-size:11px}
.pt-dont ul li::before{content:'❌';flex-shrink:0;font-size:11px}

/* Action steps checklist */
.pt-steps{list-style:none;padding:0;margin:12px 0}
.pt-steps li{display:flex;align-items:flex-start;gap:10px;padding:9px 12px;border-radius:8px;background:var(--light-bg);border:1px solid var(--border);margin-bottom:6px;font-size:12.5px;color:var(--text);line-height:1.55}
.pt-steps li:last-child{margin-bottom:0}
.pt-step-num{width:22px;height:22px;border-radius:50%;font-family:'Montserrat',sans-serif;font-size:10px;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.t1-num{background:var(--navy)}
.t2-num{background:var(--green)}
.t3-num{background:var(--gold)}
.t4-num{background:var(--purple)}
.t5-num{background:var(--red)}
.pt-steps li strong{color:var(--navy)}

/* Impact calculator visual */
.pt-impact-visual{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0}
@media(max-width:520px){.pt-impact-visual{grid-template-columns:1fr}}
.piv-item{border-radius:9px;padding:12px 10px;text-align:center;border:1.5px solid}
.piv-base{background:#FEF2F2;border-color:#FECACA}
.piv-base .piv-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#991B1B;margin-bottom:3px}
.piv-base .piv-val{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:800;color:var(--red)}
.piv-base .piv-sub{font-size:10.5px;color:#991B1B;margin-top:3px;opacity:.8}
.piv-mid{background:var(--gold-light);border-color:#FDE68A}
.piv-mid .piv-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#78350F;margin-bottom:3px}
.piv-mid .piv-val{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:800;color:var(--gold)}
.piv-mid .piv-sub{font-size:10.5px;color:#92400E;margin-top:3px;opacity:.8}
.piv-best{background:#ECFDF5;border-color:#A7F3D0}
.piv-best .piv-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#065F46;margin-bottom:3px}
.piv-best .piv-val{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:800;color:var(--green)}
.piv-best .piv-sub{font-size:10.5px;color:#065F46;margin-top:3px;opacity:.8}
/* ── FAQ SECTION WRAPPER ──────────────────────────────────── */
.faq-wrap{max-width:960px;margin:0 auto;padding:0 14px 32px}

/* Banner */
.faq-banner{background:linear-gradient(135deg,#001a55 0%,var(--navy) 55%,#00280f 100%);color:#fff;border-radius:12px;padding:20px 22px;margin:18px 0 16px;position:relative;overflow:hidden}
.faq-banner::after{content:'❓';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:80px;opacity:.07;pointer-events:none}
.faq-banner h2{font-family:'Montserrat',sans-serif;font-size:clamp(15px,3vw,21px);font-weight:800;margin-bottom:5px}
.faq-banner p{font-size:12.5px;opacity:.85;max-width:660px;margin:0;line-height:1.55}
.faq-banner-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.faq-chip{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}

/* Stats strip */
.faq-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}
@media(max-width:520px){.faq-stats{grid-template-columns:1fr 1fr}}

/* Category filter bar */
.faq-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.fq-btn{padding:6px 13px;border:1.5px solid var(--border);border-radius:20px;background:#fff;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--muted);cursor:pointer;transition:.2s;white-space:nowrap}
.fq-btn:hover{border-color:var(--navy);color:var(--navy)}
.fq-btn.fq-active{background:var(--navy);border-color:var(--navy);color:#fff}
.fq-btn .fq-count{background:rgba(255,255,255,.25);border-radius:8px;padding:1px 6px;font-size:10px;margin-left:4px}
.fq-btn:not(.fq-active) .fq-count{background:var(--light-bg);color:var(--muted)}

/* Category divider */
.faq-cat-divider{display:flex;align-items:center;gap:10px;margin:18px 0 10px}
.faq-cat-divider span{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:var(--navy);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}
.faq-cat-divider::before,.faq-cat-divider::after{content:'';flex:1;height:2px;background:var(--border)}

/* FAQ accordion item */
.faq-item{border:1px solid var(--border);border-radius:11px;margin-bottom:7px;overflow:hidden;transition:.2s}
.faq-item:hover{border-color:var(--navy);box-shadow:0 2px 8px rgba(0,40,104,.07)}
.faq-item.faq-open{border-color:var(--navy);box-shadow:0 2px 10px rgba(0,40,104,.1)}

/* FAQ question row */
.faq-q{display:flex;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;background:var(--card-bg);user-select:none;-webkit-user-select:none}
.faq-q-icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;transition:.2s}
.fq-basics    .faq-q-icon{background:#EFF6FF;border:1.5px solid #BFDBFE}
.fq-contrib   .faq-q-icon{background:#ECFDF5;border:1.5px solid #A7F3D0}
.fq-roth      .faq-q-icon{background:var(--purple-light);border:1.5px solid #C4B5FD}
.fq-match     .faq-q-icon{background:var(--gold-light);border:1.5px solid #FDE68A}
.fq-withdraw  .faq-q-icon{background:#FEF2F2;border:1.5px solid #FECACA}
.fq-secure    .faq-q-icon{background:#ECFDF5;border:1.5px solid #A7F3D0}
.fq-self      .faq-q-icon{background:var(--gold-light);border:1.5px solid #FDE68A}
.faq-item.faq-open .faq-q-icon{background:var(--navy);border-color:var(--navy)}

.faq-q-body{flex:1;min-width:0}
.faq-q-cat{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
.fq-basics    .faq-q-cat{color:#1D4ED8}
.fq-contrib   .faq-q-cat{color:#065F46}
.fq-roth      .faq-q-cat{color:#5B21B6}
.fq-match     .faq-q-cat{color:#78350F}
.fq-withdraw  .faq-q-cat{color:#991B1B}
.fq-secure    .faq-q-cat{color:#065F46}
.fq-self      .faq-q-cat{color:#78350F}

.faq-q-text{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;color:var(--navy);line-height:1.35}
.faq-item.faq-open .faq-q-text{color:var(--navy)}

.faq-q-chevron{font-size:12px;color:var(--muted);flex-shrink:0;transition:transform .25s}
.faq-item.faq-open .faq-q-chevron{transform:rotate(180deg);color:var(--navy)}

/* FAQ answer panel */
.faq-ans{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-ans-inner{padding:0 15px 14px 57px;font-size:13px;color:var(--text);line-height:1.7}
@media(max-width:520px){.faq-ans-inner{padding:0 13px 13px 13px}}
.faq-ans-inner p{margin:0 0 10px}
.faq-ans-inner p:last-child{margin-bottom:0}
.faq-ans-inner strong{color:var(--navy)}
.faq-ans-inner a{color:var(--navy);font-weight:600}

/* Mini table inside answer */
.faq-mini-table{width:100%;border-collapse:collapse;font-size:12px;margin:10px 0}
.faq-mini-table th{background:var(--navy);color:#fff;padding:6px 9px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.3px}
.faq-mini-table td{padding:6px 9px;border-bottom:1px solid var(--border)}
.faq-mini-table tr:last-child td{border-bottom:none;font-weight:700;background:var(--light-bg)}
.faq-mini-table tr:hover td{background:var(--light-bg)}

/* Quick answer badge strip */
.faq-quick{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 4px}
.fq-tag{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:8px}
.fq-tag-green{background:#ECFDF5;color:#065F46;border:1px solid #A7F3D0}
.fq-tag-red{background:#FEF2F2;color:#991B1B;border:1px solid #FECACA}
.fq-tag-blue{background:#EFF6FF;color:#1D4ED8;border:1px solid #BFDBFE}
.fq-tag-gold{background:var(--gold-light);color:#78350F;border:1px solid #FDE68A}
.fq-tag-pur{background:var(--purple-light);color:#5B21B6;border:1px solid #C4B5FD}
/* ── RELATED CALCULATORS WRAPPER ─────────────────────────── */
.rc-wrap{max-width:960px;margin:0 auto;padding:0 14px 36px}

/* Banner */
.rc-banner{background:linear-gradient(135deg,#001a55 0%,var(--navy) 55%,#1a0a00 100%);color:#fff;border-radius:12px;padding:20px 22px;margin:18px 0 18px;position:relative;overflow:hidden}
.rc-banner::after{content:'🧮';position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:80px;opacity:.07;pointer-events:none}
.rc-banner h2{font-family:'Montserrat',sans-serif;font-size:clamp(15px,3vw,21px);font-weight:800;margin-bottom:5px}
.rc-banner p{font-size:12.5px;opacity:.85;max-width:640px;margin:0;line-height:1.55}
.rc-banner-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.rc-chip{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.28);border-radius:12px;padding:3px 10px;font-size:11px;font-weight:700}

/* ── FEATURED CARD (full-width hero) ─────────────────────── */
.rc-featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
@media(max-width:600px){.rc-featured-grid{grid-template-columns:1fr}}

.rc-featured{border-radius:13px;overflow:hidden;border:1.5px solid var(--border);background:var(--card-bg);transition:.2s;box-shadow:0 2px 8px rgba(0,40,104,.06);display:flex;flex-direction:column}
.rc-featured:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,40,104,.13);border-color:var(--navy)}

.rc-feat-head{padding:18px 18px 14px;display:flex;align-items:flex-start;gap:13px}
.rc-feat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
.rc-feat-icon.ic-blue {background:#EFF6FF;border:1.5px solid #BFDBFE}
.rc-feat-icon.ic-green{background:#ECFDF5;border:1.5px solid #A7F3D0}
.rc-feat-icon.ic-gold {background:var(--gold-light);border:1.5px solid #FDE68A}
.rc-feat-icon.ic-pur  {background:var(--purple-light);border:1.5px solid #C4B5FD}
.rc-feat-icon.ic-red  {background:#FEF2F2;border:1.5px solid #FECACA}
.rc-feat-icon.ic-teal {background:#F0FDFA;border:1.5px solid #99F6E4}
.rc-feat-icon.ic-navy {background:#EFF6FF;border:1.5px solid #93C5FD}
.rc-feat-icon.ic-slate{background:#F8FAFC;border:1.5px solid #CBD5E1}

.rc-feat-info{flex:1;min-width:0}
.rc-feat-tag{font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
.ic-blue  ~ .rc-feat-info .rc-feat-tag,
.rc-feat-icon.ic-blue ~ .rc-feat-info .rc-feat-tag{color:#1D4ED8}
.rc-feat-tag.t-blue {color:#1D4ED8}
.rc-feat-tag.t-green{color:#065F46}
.rc-feat-tag.t-gold {color:#78350F}
.rc-feat-tag.t-pur  {color:#5B21B6}
.rc-feat-tag.t-red  {color:#991B1B}
.rc-feat-tag.t-teal {color:#0F766E}
.rc-feat-tag.t-navy {color:var(--navy)}
.rc-feat-tag.t-slate{color:#475569}

.rc-feat-title{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;color:var(--navy);line-height:1.25;margin-bottom:5px}
.rc-feat-desc{font-size:12px;color:var(--muted);line-height:1.55}

.rc-feat-tags{display:flex;flex-wrap:wrap;gap:5px;padding:0 18px 12px}
.rc-tag{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:7px;display:inline-block}
.rc-tag-blue {background:#EFF6FF;color:#1D4ED8;border:1px solid #BFDBFE}
.rc-tag-green{background:#ECFDF5;color:#065F46;border:1px solid #A7F3D0}
.rc-tag-gold {background:var(--gold-light);color:#78350F;border:1px solid #FDE68A}
.rc-tag-pur  {background:var(--purple-light);color:#5B21B6;border:1px solid #C4B5FD}
.rc-tag-red  {background:#FEF2F2;color:#991B1B;border:1px solid #FECACA}
.rc-tag-teal {background:#F0FDFA;color:#0F766E;border:1px solid #99F6E4}
.rc-tag-navy {background:#EFF6FF;color:var(--navy);border:1px solid #93C5FD}
.rc-tag-slate{background:#F8FAFC;color:#475569;border:1px solid #CBD5E1}

.rc-feat-foot{margin-top:auto;padding:12px 18px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.rc-use-label{font-size:11px;color:var(--muted)}
.rc-cta-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 15px;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:11.5px;font-weight:800;text-decoration:none;transition:.2s;white-space:nowrap}
.rc-cta-btn:hover{opacity:.85;transform:translateX(2px)}
.btn-blue {background:var(--navy);color:#fff}
.btn-green{background:var(--green);color:#fff}
.btn-gold {background:var(--gold);color:#fff}
.btn-pur  {background:var(--purple);color:#fff}
.btn-red  {background:var(--red);color:#fff}
.btn-teal {background:#0F766E;color:#fff}

/* ── STANDARD 3-COL GRID ─────────────────────────────────── */
.rc-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}
@media(max-width:680px){.rc-grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.rc-grid-3{grid-template-columns:1fr}}

/* Compact card (for 3-col grid) */
.rc-compact{border-radius:11px;overflow:hidden;border:1.5px solid var(--border);background:var(--card-bg);transition:.2s;display:flex;flex-direction:column}
.rc-compact:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,40,104,.11);border-color:var(--navy)}
.rc-compact-head{padding:14px 14px 10px;display:flex;align-items:flex-start;gap:10px}
.rc-compact-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.rc-compact-title{font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:800;color:var(--navy);line-height:1.25;margin-bottom:3px}
.rc-compact-desc{font-size:11.5px;color:var(--muted);line-height:1.5}
.rc-compact-tags{display:flex;flex-wrap:wrap;gap:4px;padding:0 14px 10px}
.rc-compact-foot{margin-top:auto;padding:9px 14px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.rc-compact-foot .rc-cta-btn{font-size:10.5px;padding:5px 11px}

/* ── MINI STRIP (4-col quick links) ──────────────────────── */
.rc-mini-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}
@media(max-width:600px){.rc-mini-strip{grid-template-columns:1fr 1fr}}

.rc-mini{border-radius:10px;border:1.5px solid var(--border);background:var(--card-bg);padding:11px 12px;display:flex;align-items:center;gap:9px;text-decoration:none;transition:.2s;cursor:pointer}
.rc-mini:hover{border-color:var(--navy);background:var(--light-bg);transform:translateY(-1px)}
.rc-mini-icon{font-size:18px;flex-shrink:0}
.rc-mini-text{min-width:0}
.rc-mini-name{font-family:'Montserrat',sans-serif;font-size:11.5px;font-weight:800;color:var(--navy);line-height:1.2;margin-bottom:1px}
.rc-mini-sub{font-size:10px;color:var(--muted)}

/* ── WHY USE SECTION ─────────────────────────────────────── */
.rc-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:16px}
@media(max-width:560px){.rc-why-grid{grid-template-columns:1fr}}
.rc-why-item{background:var(--light-bg);border:1px solid var(--border);border-radius:9px;padding:12px 13px;display:flex;align-items:flex-start;gap:10px}
.rc-why-num{width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.rc-why-body{}
.rc-why-title{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:800;color:var(--navy);margin-bottom:3px}
.rc-why-text{font-size:11.5px;color:var(--muted);line-height:1.55}
/* ── DISCLAIMER WRAPPER ───────────────────────────────────── */
.disc-wrap{max-width:860px;margin:0 auto;padding:0 14px 40px}

/* Disclaimer header banner */
.disc-banner{background:linear-gradient(135deg,#3B0764,#581C87);color:#fff;border-radius:12px;padding:18px 20px;margin:18px 0 16px;border:2px solid #6B21A8}
.disc-banner h2{font-family:'Montserrat',sans-serif;font-size:clamp(14px,2.8vw,18px);font-weight:800;margin-bottom:4px;display:flex;align-items:center;gap:8px}
.disc-banner p{font-size:12px;opacity:.88;margin:0;line-height:1.6}

/* Main disclaimer box */
.disc-box{background:#FAFAF9;border:2px solid #D4D4D8;border-radius:11px;padding:18px 20px;margin-bottom:14px}
.disc-box h3{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--navy);margin-bottom:10px;text-transform:uppercase;letter-spacing:.4px}
.disc-box p{font-size:12.5px;color:#3F3F46;line-height:1.75;margin:0 0 11px}
.disc-box p:last-child{margin-bottom:0}
.disc-box ul{margin:8px 0 11px;padding-left:22px}
.disc-box ul li{font-size:12.5px;color:#3F3F46;line-height:1.7;margin-bottom:5px}
.disc-box strong{color:#18181B;font-weight:700}
.disc-box a{color:var(--navy);font-weight:600;text-decoration:underline}

/* Divider line */
.disc-divider{height:1px;background:var(--border);margin:14px 0}

/* Footer mini-grid */
.disc-footer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:0}
@media(max-width:560px){.disc-footer-grid{grid-template-columns:1fr}}
.disc-footer-item{background:var(--light-bg);border:1px solid var(--border);border-radius:9px;padding:11px 13px;text-align:center}
.disc-footer-item .dfi-icon{font-size:20px;margin-bottom:4px}
.disc-footer-item .dfi-label{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:800;color:var(--navy);text-transform:uppercase;letter-spacing:.4px;margin-bottom:2px}
.disc-footer-item .dfi-text{font-size:11px;color:var(--muted);line-height:1.5}

/* Last updated stamp */
.disc-updated{text-align:center;font-size:11px;color:var(--muted);margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
