
:root{
  --global-palette1:#002868;--global-palette2:#00183F;
  --global-palette3:#1D1D1F;--global-palette4:#5F6368;
  --global-palette5:#E0E4E8;--global-palette6:#F7F9FC;
  --global-palette7:#FFFFFF;--global-palette8:#BF0A30;
  --global-palette9:#00875A;
  --navy:#002868;--navy-dark:#00183F;--navy-mid:#003580;
  --red:#BF0A30;--red-h:#9B0826;--green:#00875A;--green-h:#006644;
  --gold:#d19900;--orange:#da7101;--purple:#7c3aed;
  --charcoal:#1D1D1F;--gray:#5F6368;--border:#E0E4E8;
  --bg:#F7F9FC;--white:#FFFFFF;
  --sh-sm:0 1px 4px rgba(0,40,104,.08);
  --sh-md:0 4px 20px rgba(0,40,104,.12);
  --sh-lg:0 8px 40px rgba(0,40,104,.16);
  --r:12px;--tr:.2s ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;font-size:16px;color:var(--gray);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}

/* ── Typography & Contrast Patch ── */
#dfdWrapper .panel-title, #dfdWrapper .section-label, #dfdWrapper .field label, #dfdWrapper .df label, #dfdWrapper .chart-title, #dfdWrapper .hb-lbl, #dfdWrapper .strat-t, #dfdWrapper .srow-title { color: #1e293b !important; font-weight: 800 !important; }
#dfdWrapper .iw input, #dfdWrapper .iw select { font-weight: 600 !important; color: #0f172a !important; font-size: 15px !important; }
#dfdWrapper .pfx, #dfdWrapper .sfx { color: #334155 !important; font-weight: 800 !important; }
#dfdWrapper .info-strip span, #dfdWrapper .empty p { color: #64748b !important; font-weight: 500 !important; }

/* ── Master Bullet Fix for WP Themes ── */
#dfdWrapper ul, #dfdWrapper li { display: block !important; list-style-type: disc !important; list-style-position: outside !important; }
#dfdWrapper ul { padding-left: 32px !important; margin-left: 0 !important; flex-direction: unset !important; }
#dfdWrapper li { display: list-item !important; padding-left: 0 !important; margin-bottom: 8px !important; }

/* ── BRAND HERO ── */
.hero { background: linear-gradient(135deg, #0f2540 0%, #1a3a5c 60%, #1e4d7b 100%); padding: 52px 20px 44px; text-align: center; position: relative; overflow: hidden; }
.hero::before { content: ''; position: absolute; inset: 0; background: repeating-linear-gradient(60deg, rgba(255,255,255,.018) 0, rgba(255,255,255,.018) 1px, transparent 1px, transparent 18px); }
.hero-inner { max-width: 900px; margin: 0 auto; position: relative; z-index: 1; }
.badge { display: inline-flex; align-items: center; gap: 8px; background: rgba(243,156,18,.15); border: 1px solid rgba(243,156,18,.4); color: #fcd34d; font-size: 12px; font-weight: 700; padding: 5px 16px; border-radius: 20px; margin-bottom: 18px; letter-spacing: .3px; }
.bdot { width: 7px; height: 7px; background: #fcd34d; border-radius: 50%; animation: blink 1.5s ease-in-out infinite; }
@keyframes blink { 0%, 100% { opacity: 1; } 50% { opacity: .2; } }
.hero h1 { font-family: 'Montserrat', sans-serif; font-weight: 900; font-size: clamp(24px, 4.5vw, 42px); color: #ffffff !important; line-height: 1.15; margin-bottom: 14px; }
.hero h1 span { color: #FCD34D; }
.hero p { font-size: 15px; color: rgba(255,255,255,.83); max-width: 730px; margin: 0 auto 22px; line-height: 1.8; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.chip { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.2); color: rgba(255,255,255,.92); font-size: 12px; font-weight: 600; padding: 5px 14px; border-radius: 20px; }

/* ── WRAPPER ── */
.calc-wrapper{max-width:1260px;margin:0 auto;padding:36px 22px 64px}

/* ── TABS ── */
.calc-tabs{display:flex;gap:4px;background:var(--border);padding:4px;border-radius:10px;margin-bottom:22px;width:fit-content;flex-wrap:wrap}
.ctab{padding:9px 18px;font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:700;border:none;border-radius:7px;cursor:pointer;background:transparent;color:var(--gray);transition:all var(--tr);white-space:nowrap}
.ctab.active{background:var(--navy);color:#fff;box-shadow:var(--sh-sm)}
.ctab:hover:not(.active){background:var(--white);color:var(--navy)}

/* ── GRID ── */
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
@media(max-width:940px){.calc-grid{grid-template-columns:1fr}}

/* ── PANELS ── */
.calc-panel{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:22px;box-shadow:var(--sh-sm)}
.panel-title{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--charcoal);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.pticon{width:27px;height:27px;background:rgba(0,40,104,.08);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0}

/* ── INFO STRIP ── */
.info-strip{background:rgba(0,40,104,.05);border:1px solid rgba(0,40,104,.12);border-radius:8px;padding:11px 14px;font-size:13px;color:var(--gray);line-height:1.6;margin-bottom:16px;display:flex;align-items:flex-start;gap:8px}
.ii{font-size:15px;flex-shrink:0;margin-top:2px}

/* ── FIELD ROWS ── */
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:14px}
@media(max-width:500px){.row2,.row3{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;gap:4px}
.field label{font-size:13px;font-weight:600;color:var(--charcoal)}
.field .sub{font-size:11px;color:var(--gray);margin-top:2px}
.iw{position:relative;display:flex;align-items:center}
.iw .pfx,.iw .sfx{position:absolute;font-size:13px;font-weight:600;color:var(--gray);pointer-events:none}
.iw .pfx{left:10px}.iw .sfx{right:10px}
.iw input,.iw select{width:100%;padding:9px 11px;border:1.5px solid var(--border);border-radius:7px;font-family:'Inter',sans-serif;font-size:14px;color:var(--charcoal);background:var(--white);outline:none;transition:border-color var(--tr),box-shadow var(--tr)}
.iw input:focus,.iw select:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,40,104,.1)}
.iw.p input{padding-left:26px}.iw.s input{padding-right:30px}
.section-label{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;display:block}
.divider{border:none;border-top:1px solid var(--border);margin:16px 0}

/* ── DEBT ROWS ── */
.dlist{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}
.drow{background:var(--bg);border:1.5px solid var(--border);border-radius:9px;padding:12px 13px;display:grid;grid-template-columns:1.2fr 1.1fr 1.1fr 0.9fr 1.1fr auto;gap:12px;align-items:end;transition:border-color var(--tr)}
.drow:hover{border-color:var(--navy)}
@media(max-width:680px){.drow{grid-template-columns:1fr 1fr;gap:8px}
.drow .dn{grid-column:1/-1}.drow .drm{justify-self:end}}
.df{display:flex;flex-direction:column;gap:3px}
.df label{font-size:11px;font-weight:600;color:var(--gray);text-transform:uppercase;letter-spacing:.4px}
.drm{width:30px;height:30px;border:none;background:rgba(191,10,48,.08);color:var(--red);border-radius:6px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all var(--tr);flex-shrink:0}
.drm:hover{background:var(--red);color:#fff}
.tax-chk{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--gray);margin-top:3px}
.tax-chk input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--navy)}
/* ── SCENARIO ROWS ── */
.scenario-section{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}
.srow{background:rgba(124,58,237,.05);border:1.5px solid rgba(124,58,237,.15);border-radius:9px;padding:12px 13px;margin-bottom:10px}
.srow-title{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:800;color:var(--purple);text-transform:uppercase;letter-spacing:.4px;margin-bottom:10px;display:flex;align-items:center;gap:6px}

/* ── ADD BUTTON ── */
.btn-add{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1.5px dashed var(--navy);border-radius:7px;background:transparent;color:var(--navy);font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;transition:all var(--tr);margin-top:4px}
.btn-add:hover{background:var(--navy);color:#fff}

/* ── ACTIONS ── */
.calc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.btn-calc{flex:1 1 160px;padding:13px 18px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;cursor:pointer;transition:all var(--tr);display:flex;align-items:center;justify-content:center;gap:7px}
.btn-calc:hover{background:var(--navy-dark);transform:translateY(-1px);box-shadow:var(--sh-md)}
.btn-sec{flex:1 1 100px;padding:12px 14px;border:none;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;transition:all var(--tr);display:flex;align-items:center;justify-content:center;gap:6px}
.btn-pdf{background:var(--bg);color:var(--charcoal);border:1.5px solid var(--border)}
.btn-pdf:hover{background:var(--charcoal);color:#fff}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#1da851}
.btn-rst{background:transparent;color:var(--gray);border:1.5px solid var(--border)}
.btn-rst:hover{border-color:var(--navy);color:var(--navy)}
.btn-pdf.h,.btn-wa.h,.btn-rst.h{display:none}

/* ── RESULTS PANEL ── */
.res-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:22px;box-shadow:var(--sh-sm);min-height:420px;display:flex;flex-direction:column;gap:16px}
.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 20px;flex:1}
.empty-icon{font-size:48px;margin-bottom:14px;opacity:.35}
.empty h3{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:700;color:var(--charcoal);margin-bottom:6px}
.empty p{font-size:13.5px;color:var(--gray);max-width:280px;line-height:1.6}
#rc{display:none;flex-direction:column;gap:16px}

/* ── FREEDOM DATE HERO ── */
.freedom-hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-mid) 60%,#004db3 100%);border-radius:12px;padding:22px 20px;color:#fff;text-align:center;position:relative;overflow:hidden}
.freedom-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% -20%,rgba(191,10,48,.18) 0%,transparent 70%);pointer-events:none}
.fh-label{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;opacity:.65;margin-bottom:8px}
.fh-date{font-family:'Montserrat',sans-serif;font-size:clamp(22px,4vw,34px);font-weight:800;line-height:1.1;margin-bottom:8px}
.fh-countdown{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin:10px 0}
.fh-unit{text-align:center}
.fh-num{font-family:'Montserrat',sans-serif;font-size:22px;font-weight:800;line-height:1}
.fh-uname{font-size:10px;opacity:.6;text-transform:uppercase;letter-spacing:.6px}
.fh-sub{font-size:12.5px;opacity:.78;margin-top:8px;line-height:1.5}

/* ── MILESTONE TRACK ── */
.milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
@media(max-width:500px){.milestones{grid-template-columns:repeat(2,1fr)}}
.ms-card{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:11px;text-align:center;transition:box-shadow var(--tr)}
.ms-card:hover{box-shadow:var(--sh-sm)}
.ms-icon{font-size:18px;margin-bottom:4px}
.ms-pct{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;color:var(--navy)}
.ms-date{font-size:11px;color:var(--gray);margin-top:3px}
.ms-bal{font-size:10.5px;color:var(--green);font-weight:600;margin-top:1px}

/* ── METRICS ── */
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media(max-width:540px){.metrics{grid-template-columns:repeat(2,1fr)}}
.mc{background:var(--white);border:1px solid var(--border);border-radius:9px;padding:12px;text-align:center;transition:box-shadow var(--tr)}
.mc:hover{box-shadow:var(--sh-sm)}
.mv{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:800;color:var(--navy);line-height:1.1}
.mv.red{color:var(--red)}.mv.green{color:var(--green)}.mv.gold{color:var(--gold)}
.ml{font-size:11px;color:var(--gray);margin-top:3px;font-weight:500}

/* ── SCENARIO RESULT CARDS ── */
.scn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
@media(max-width:500px){.scn-grid{grid-template-columns:1fr}}
.scn-card{background:var(--white);border:2px solid var(--border);border-radius:9px;padding:12px;text-align:center}
.scn-card.best{border-color:var(--green)}
.scn-title{font-family:'Montserrat',sans-serif;font-size:11.5px;font-weight:800;color:var(--charcoal);margin-bottom:6px;display:flex;align-items:center;justify-content:center;gap:5px}
.scn-val{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:800;margin-bottom:2px}
.scn-sub{font-size:10.5px;color:var(--gray)}
.best-pill{background:var(--green);color:#fff;font-size:8.5px;font-weight:700;padding:2px 6px;border-radius:10px}

/* ── HIGHLIGHT BOXES ── */
.hbox{border-radius:10px;padding:15px 18px;color:#fff}
.hbox.navy{background:linear-gradient(135deg,var(--navy),#003d8c)}
.hbox.green{background:linear-gradient(135deg,var(--green),var(--green-h))}
.hbox.gold{background:linear-gradient(135deg,#b88200,#8a6200)}
.hbox.purple{background:linear-gradient(135deg,var(--purple),#5b21b6)}
.hb-lbl{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;opacity:.7;margin-bottom:4px}
.hb-v{font-family:'Montserrat',sans-serif;font-size:20px;font-weight:800;line-height:1.1;margin-bottom:4px}
.hb-s{font-size:12px;opacity:.82;line-height:1.5}

/* ── REINVEST BOX ── */
.reinvest-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:500px){.reinvest-grid{grid-template-columns:1fr}}
.ri-card{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:12px;text-align:center}
.ri-val{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:800;color:var(--green)}
.ri-label{font-size:11px;color:var(--gray);margin-top:3px}

/* ── TABLE ── */
.tw{background:var(--white);border:1px solid var(--border);border-radius:9px;overflow:hidden}
.tw table{width:100%;border-collapse:collapse;font-size:13px}
.tw th{background:var(--navy);color:#fff;padding:9px 11px;text-align:left;font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}
.tw td{padding:9px 11px;border-bottom:1px solid var(--border);color:var(--charcoal)}
.tw tr:last-child td{border-bottom:none}
.tw tr:nth-child(even) td{background:var(--bg)}
.num-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:#fff}
.nb1{background:var(--red)}.nb2{background:var(--orange)}.nb3{background:var(--gold)}.nbx{background:var(--gray)}

/* ── CHART ── */
.chart-box{background:var(--white);border:1px solid var(--border);border-radius:9px;padding:14px}
.chart-title{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;color:var(--charcoal);text-transform:uppercase;letter-spacing:.4px;margin-bottom:12px}
.chart-wrap{position:relative;height:230px}

/* ── SCHEDULE ── */
.sched-wrap{background:var(--white);border:1px solid var(--border);border-radius:9px;overflow:hidden}
.sched-toggle{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;cursor:pointer;font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:700;color:var(--charcoal);user-select:none}
.sched-toggle:hover{background:var(--bg)}
.sarrow{font-size:11px;transition:transform var(--tr)}
.sched-toggle.open .sarrow{transform:rotate(180deg)}
.sched-body{display:none;max-height:300px;overflow-y:auto}
.sched-body.open{display:block}
.sched-body table{width:100%;border-collapse:collapse;font-size:12px}
.sched-body th{background:rgba(0,40,104,.07);color:var(--navy);padding:7px 10px;font-family:'Montserrat',sans-serif;font-size:10px;font-weight:700;text-transform:uppercase;position:sticky;top:0;z-index:1}
.sched-body td{padding:7px 10px;border-bottom:1px solid var(--border);color:var(--charcoal)}
.sched-body tr:last-child td{border-bottom:none}
.sched-body tr:nth-child(even) td{background:var(--bg)}

/* ── STRATEGY BOX ── */
.strat-box{background:rgba(0,135,90,.05);border:1px solid rgba(0,135,90,.18);border-radius:8px;padding:13px 15px;display:none}
.strat-box.on{display:block}
.strat-t{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--green);margin-bottom:8px}
.sl{list-style:none;display:flex;flex-direction:column;gap:5px}
.sl li{font-size:13px;color:var(--charcoal);display:flex;align-items:flex-start;gap:7px;line-height:1.5}
.sl li::before{content:"→";color:var(--green);font-weight:700;flex-shrink:0;margin-top:1px}

/* ── TAB PANELS ── */
.tab-panel{display:none}.tab-panel.active{display:block}

/* ── ADSENSE ── */
.ads{max-width:1260px;margin:0 auto;padding:0 22px 18px;text-align:center}
/* ══════════════════════════════════════════════════════════════
   EDUCATIONAL SECTION — "edu-" prefix avoids any class collision
   ══════════════════════════════════════════════════════════════ */

/* ── wrapper ── */
.edu{max-width:1260px;margin:0 auto;padding:0 22px 52px}
.edu-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto 52px}

/* ── section head ── */
.edu-head{text-align:center;margin-bottom:36px}
.edu-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;padding:5px 16px;border-radius:20px;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase}
.edu h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(20px,3.5vw,30px);color:var(--charcoal);line-height:1.2;margin-bottom:10px}
.edu h2 span{color:var(--navy)}
.edu-head p{font-size:15px;color:var(--gray);max-width:740px;margin:0 auto;line-height:1.7}

/* ── intro content block ── */
.edu-intro{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:24px 22px;margin-bottom:28px;box-shadow:var(--sh-sm)}
.edu-intro h3{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:800;color:var(--charcoal);margin-bottom:10px;display:flex;align-items:center;gap:8px}
.edu-intro p{font-size:14px;color:var(--gray);line-height:1.75;margin-bottom:12px}
.edu-intro p:last-child{margin-bottom:0}
.edu-intro strong{color:var(--charcoal)}

/* ── key stats strip ── */
.edu-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:32px}
@media(max-width:768px){.edu-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:420px){.edu-stats{grid-template-columns:1fr}}
.edu-stat{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:16px 14px;text-align:center;transition:box-shadow var(--tr),transform var(--tr)}
.edu-stat:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.edu-stat-icon{font-size:24px;margin-bottom:6px}
.edu-stat-val{font-family:'Montserrat',sans-serif;font-size:clamp(18px,2.8vw,24px);font-weight:900;color:var(--navy);line-height:1.1}
.edu-stat-val.red-t{color:var(--red)}.edu-stat-val.green-t{color:var(--green)}.edu-stat-val.gold-t{color:var(--gold)}
.edu-stat-lbl{font-size:11.5px;color:var(--gray);margin-top:4px;line-height:1.4}

/* ── "What is" feature box ── */
.edu-what{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:32px}
@media(max-width:700px){.edu-what{grid-template-columns:1fr}}
.edu-what-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:22px 20px;transition:box-shadow var(--tr)}
.edu-what-card:hover{box-shadow:var(--sh-md)}
.edu-what-card h3{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;color:var(--charcoal);margin-bottom:8px;display:flex;align-items:center;gap:8px}
.edu-what-card p{font-size:13.5px;color:var(--gray);line-height:1.7;margin-bottom:8px}
.edu-what-card p:last-child{margin-bottom:0}
.edu-what-card strong{color:var(--charcoal)}
.edu-what-card ul{padding-left:20px;margin:8px 0}
.edu-what-card li{font-size:13px;color:var(--gray);margin-bottom:4px;line-height:1.6}

/* ── sub-section label ── */
.edu-sub-label{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.8px;margin-bottom:16px;display:flex;align-items:center;gap:8px}

/* ── glossary grid ── */
.edu-glossary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px}
@media(max-width:860px){.edu-glossary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.edu-glossary{grid-template-columns:1fr}}

.edu-term{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:18px 16px;position:relative;overflow:hidden;transition:box-shadow var(--tr),transform var(--tr)}
.edu-term:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.edu-term::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;border-radius:var(--r) var(--r) 0 0}
.edu-term.t-navy::before{background:var(--navy)}
.edu-term.t-red::before{background:var(--red)}
.edu-term.t-green::before{background:var(--green)}
.edu-term.t-gold::before{background:var(--gold)}
.edu-term.t-purple::before{background:var(--purple)}
.edu-term.t-orange::before{background:var(--orange)}
.edu-term-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.edu-term-emoji{font-size:22px;flex-shrink:0}
.edu-term h3{font-family:'Montserrat',sans-serif;font-size:13.5px;font-weight:800;color:var(--charcoal);line-height:1.2}
.edu-term-aka{font-size:10.5px;color:var(--navy);font-weight:600;background:rgba(0,40,104,.06);padding:2px 8px;border-radius:10px;display:inline-block;margin-bottom:8px}
.edu-term p{font-size:13px;color:var(--gray);line-height:1.65}
.edu-term .edu-formula{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:8px 10px;margin-top:8px;font-family:'Inter',monospace;font-size:12px;font-weight:600;color:var(--navy);line-height:1.5}

/* ── tool-specific terms ── */
.edu-tool-terms{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:28px}
@media(max-width:640px){.edu-tool-terms{grid-template-columns:1fr}}
.edu-tt{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:16px;display:flex;gap:12px;align-items:flex-start;transition:box-shadow var(--tr),transform var(--tr)}
.edu-tt:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.edu-tt-icon{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.edu-tt-icon.bg-navy{background:rgba(0,40,104,.08)}
.edu-tt-icon.bg-red{background:rgba(191,10,48,.08)}
.edu-tt-icon.bg-green{background:rgba(0,135,90,.08)}
.edu-tt-icon.bg-gold{background:rgba(209,153,0,.08)}
.edu-tt-icon.bg-purple{background:rgba(124,58,237,.08)}
.edu-tt-icon.bg-orange{background:rgba(218,113,1,.08)}
.edu-tt-body h3{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--charcoal);margin-bottom:3px}
.edu-tt-body p{font-size:12.5px;color:var(--gray);line-height:1.6}
.edu-tt-body strong{color:var(--charcoal)}

/* ── callout box ── */
.edu-callout{border-radius:var(--r);padding:20px 22px;margin-bottom:28px}
.edu-callout.navy-callout{background:rgba(0,40,104,.05);border:1px solid rgba(0,40,104,.14)}
.edu-callout.green-callout{background:rgba(0,135,90,.05);border:1px solid rgba(0,135,90,.18)}
.edu-callout h3{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;margin-bottom:10px;display:flex;align-items:center;gap:8px}
.edu-callout.navy-callout h3{color:var(--navy)}
.edu-callout.green-callout h3{color:var(--green)}
.edu-callout p{font-size:13.5px;color:var(--gray);line-height:1.7;margin-bottom:8px}
.edu-callout p:last-child{margin-bottom:0}
.edu-callout strong{color:var(--charcoal)}
.edu-callout ul{padding-left:20px;margin:8px 0}
.edu-callout li{font-size:13px;color:var(--gray);line-height:1.65;margin-bottom:4px}

/* ── quick comparison table ── */
.edu-tbl-wrap{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:28px}
.edu-tbl-title{background:var(--navy);color:#fff;padding:12px 16px;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;display:flex;align-items:center;gap:8px}
.edu-tbl{width:100%;border-collapse:collapse;font-size:13px}
.edu-tbl th{background:rgba(0,40,104,.06);color:var(--navy);padding:10px 14px;text-align:left;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;position:sticky;top:0}
.edu-tbl td{padding:10px 14px;border-bottom:1px solid var(--border);color:var(--charcoal);line-height:1.5}
.edu-tbl tr:last-child td{border-bottom:none}
.edu-tbl tr:nth-child(even) td{background:var(--bg)}
@media(max-width:600px){
  .edu-tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .edu-tbl{min-width:580px}
}
/* ══════════════════════════════════════════════════════════════
   REAL EXAMPLES SECTION — "rex-" prefix avoids class collision
   ══════════════════════════════════════════════════════════════ */

/* ── wrapper ── */
.rex{max-width:1260px;margin:0 auto;padding:0 22px 52px}
.rex-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto 52px}

/* ── section head ── */
.rex-head{text-align:center;margin-bottom:36px}
.rex-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;padding:5px 16px;border-radius:20px;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase}
.rex h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(20px,3.5vw,30px);color:var(--charcoal);line-height:1.2;margin-bottom:10px}
.rex h2 span{color:var(--navy)}
.rex-head p{font-size:15px;color:var(--gray);max-width:740px;margin:0 auto;line-height:1.7}

/* ── intro note ── */
.rex-note{background:rgba(0,40,104,.04);border:1px solid rgba(0,40,104,.12);border-radius:var(--r);padding:14px 18px;margin-bottom:32px;display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--gray);line-height:1.6}
.rex-note strong{color:var(--charcoal)}
.rex-note-icon{font-size:18px;flex-shrink:0;margin-top:1px}

/* ── example card (full) ── */
.rex-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:22px;box-shadow:var(--sh-sm);transition:box-shadow var(--tr)}
.rex-card:hover{box-shadow:var(--sh-md)}
.rex-card:last-child{margin-bottom:0}

/* ── card header ── */
.rex-hdr{padding:18px 22px;color:#fff;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.rex-hdr-1{background:linear-gradient(135deg,#002868 0%,#003d8c 100%)}
.rex-hdr-2{background:linear-gradient(135deg,#7b2d8e 0%,#5b1d6e 100%)}
.rex-hdr-3{background:linear-gradient(135deg,#0f5132 0%,#14713f 100%)}
.rex-hdr-4{background:linear-gradient(135deg,#92400e 0%,#b45309 100%)}
.rex-hdr-5{background:linear-gradient(135deg,#1e3a5f 0%,#2563eb 100%)}
.rex-hdr-left h3{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:800;margin-bottom:3px;display:flex;align-items:center;gap:8px}
.rex-hdr-left .rex-subtitle{font-size:12px;opacity:.85;line-height:1.4}
.rex-hdr-tag{background:rgba(255,255,255,.2);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.25);border-radius:16px;padding:4px 12px;font-family:'Montserrat',sans-serif;font-size:10px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;flex-shrink:0}

/* ── profile strip ── */
.rex-profile{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:16px 22px;background:var(--bg);border-bottom:1px solid var(--border)}
@media(max-width:600px){.rex-profile{grid-template-columns:repeat(2,1fr)}}
.rex-pf{text-align:center}
.rex-pf-lbl{font-size:10px;color:var(--gray);text-transform:uppercase;letter-spacing:.4px;font-weight:600;margin-bottom:2px}
.rex-pf-val{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--charcoal)}

/* ── debts grid ── */
.rex-body{padding:20px 22px}
.rex-label{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.6px;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.rex-debts{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-bottom:18px}
@media(max-width:440px){.rex-debts{grid-template-columns:1fr}}
.rex-debt{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px;text-align:center}
.rex-debt-name{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.3px;margin-bottom:3px}
.rex-debt-bal{font-family:'Montserrat',sans-serif;font-size:17px;font-weight:900;color:var(--navy)}
.rex-debt-meta{font-size:11px;color:var(--gray);margin-top:3px;line-height:1.4}

/* ── results strip ── */
.rex-results{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px}
@media(max-width:768px){.rex-results{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.rex-results{grid-template-columns:repeat(2,1fr)}}
.rex-res{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:11px 10px;text-align:center}
.rex-res-val{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:900;line-height:1.1}
.rex-res-val.c-navy{color:var(--navy)}.rex-res-val.c-green{color:var(--green)}.rex-res-val.c-red{color:var(--red)}.rex-res-val.c-gold{color:var(--gold)}.rex-res-val.c-purple{color:#7b2d8e}
.rex-res-lbl{font-size:10.5px;color:var(--gray);margin-top:3px;line-height:1.3}

/* ── payoff order ── */
.rex-order{display:flex;align-items:center;gap:0;margin-bottom:16px;flex-wrap:wrap}
.rex-order-item{display:flex;align-items:center;gap:0}
.rex-order-pill{background:var(--navy);color:#fff;font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:700;padding:4px 10px;border-radius:12px;white-space:nowrap}
.rex-order-arrow{color:var(--border);font-size:14px;margin:0 6px;flex-shrink:0}
.rex-order-item:last-child .rex-order-arrow{display:none}

/* ── insight box ── */
.rex-insight{border-radius:8px;padding:14px 16px}
.rex-insight.green{background:rgba(0,135,90,.05);border:1px solid rgba(0,135,90,.18)}
.rex-insight.navy{background:rgba(0,40,104,.05);border:1px solid rgba(0,40,104,.14)}
.rex-insight.gold{background:rgba(209,153,0,.05);border:1px solid rgba(209,153,0,.18)}
.rex-insight.purple{background:rgba(123,45,142,.05);border:1px solid rgba(123,45,142,.18)}
.rex-insight.orange{background:rgba(180,83,9,.05);border:1px solid rgba(180,83,9,.18)}
.rex-insight-title{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.rex-insight.green .rex-insight-title{color:var(--green)}
.rex-insight.navy .rex-insight-title{color:var(--navy)}
.rex-insight.gold .rex-insight-title{color:var(--gold)}
.rex-insight.purple .rex-insight-title{color:#7b2d8e}
.rex-insight.orange .rex-insight-title{color:#b45309}
.rex-insight p{font-size:13px;color:var(--charcoal);line-height:1.65}
.rex-insight strong{color:var(--charcoal)}

/* ── scenario mini ── */
.rex-scenario{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
@media(max-width:600px){.rex-scenario{grid-template-columns:1fr}}
.rex-sc{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:11px 12px;text-align:center}
.rex-sc-icon{font-size:18px;margin-bottom:3px}
.rex-sc-name{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.3px;margin-bottom:3px}
.rex-sc-val{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800}
.rex-sc-val.faster{color:var(--green)}.rex-sc-val.slower{color:var(--red)}.rex-sc-val.neutral{color:var(--navy)}
.rex-sc-detail{font-size:10.5px;color:var(--gray);margin-top:2px}

/* ── reinvest mini ── */
.rex-reinvest{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px 14px;margin-top:12px;flex-wrap:wrap}
.rex-reinvest-icon{font-size:20px;flex-shrink:0}
.rex-reinvest-text{font-size:12.5px;color:var(--gray);line-height:1.5;flex:1;min-width:200px}
.rex-reinvest-text strong{color:var(--navy)}

/* ── bottom CTA ── */
.rex-cta{text-align:center;margin-top:36px}
.rex-cta p{font-size:14px;color:var(--gray);margin-bottom:14px;line-height:1.6}
.rex-cta-btn{display:inline-flex;align-items:center;gap:8px;background:var(--navy);color:#fff;font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;padding:12px 28px;border-radius:8px;border:none;cursor:pointer;transition:all var(--tr);text-decoration:none}
.rex-cta-btn:hover{background:#003d8c;transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,40,104,.25)}
/* ══════════════════════════════════════════════════════════════
   PRO TIPS SECTION — "pt-" prefix avoids class collision
   ══════════════════════════════════════════════════════════════ */

/* ── wrapper ── */
.pt{max-width:1260px;margin:0 auto;padding:0 22px 52px}
.pt-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto 52px}

/* ── section head ── */
.pt-head{text-align:center;margin-bottom:36px}
.pt-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;padding:5px 16px;border-radius:20px;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase}
.pt h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(20px,3.5vw,30px);color:var(--charcoal);line-height:1.2;margin-bottom:10px}
.pt h2 span{color:var(--navy)}
.pt-head p{font-size:15px;color:var(--gray);max-width:740px;margin:0 auto;line-height:1.7}

/* ── tip card (full-width, expandable) ── */
.pt-tip{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:18px;box-shadow:var(--sh-sm);transition:box-shadow var(--tr)}
.pt-tip:hover{box-shadow:var(--sh-md)}
.pt-tip:last-of-type{margin-bottom:0}

/* ── tip header ── */
.pt-tip-hdr{display:flex;align-items:stretch;gap:0}
.pt-tip-num{width:62px;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#fff;font-family:'Montserrat',sans-serif;font-size:22px;font-weight:900;flex-shrink:0;padding:18px 0}
.pt-tip-num span{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;opacity:.85}
.pt-tip-num.bg-1{background:linear-gradient(180deg,#002868,#003d8c)}
.pt-tip-num.bg-2{background:linear-gradient(180deg,#00875a,#00a06b)}
.pt-tip-num.bg-3{background:linear-gradient(180deg,#BF0A30,#d91a42)}
.pt-tip-num.bg-4{background:linear-gradient(180deg,#b45309,#d97706)}
.pt-tip-num.bg-5{background:linear-gradient(180deg,#7b2d8e,#9333ea)}
.pt-tip-info{flex:1;padding:16px 20px;display:flex;flex-direction:column;justify-content:center}
.pt-tip-info h3{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:900;color:var(--charcoal);margin-bottom:4px;line-height:1.25}
.pt-tip-info .pt-tagline{font-size:13px;color:var(--gray);line-height:1.5}
.pt-tip-impact{display:flex;align-items:center;gap:6px;margin-left:auto;padding:16px 20px;flex-shrink:0}
.pt-impact-chip{border-radius:16px;padding:5px 14px;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;white-space:nowrap}
.pt-impact-chip.high{background:rgba(0,135,90,.1);color:var(--green);border:1px solid rgba(0,135,90,.2)}
.pt-impact-chip.med{background:rgba(209,153,0,.1);color:var(--gold);border:1px solid rgba(209,153,0,.2)}
@media(max-width:640px){
  .pt-tip-hdr{flex-wrap:wrap}
  .pt-tip-num{width:100%;min-height:auto;flex-direction:row;gap:8px;padding:12px 18px;justify-content:flex-start}
  .pt-tip-info{padding:14px 18px 8px}
  .pt-tip-impact{padding:0 18px 14px;margin-left:0}
}

/* ── tip body ── */
.pt-tip-body{padding:0 20px 22px;margin-left:62px}
@media(max-width:640px){.pt-tip-body{margin-left:0;padding:0 18px 18px}}

/* ── explanation text ── */
.pt-tip-body>p{font-size:14px;color:var(--gray);line-height:1.75;margin-bottom:14px}
.pt-tip-body>p:last-child{margin-bottom:0}
.pt-tip-body strong{color:var(--charcoal)}

/* ── data strip (numbers in boxes) ── */
.pt-data{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
@media(max-width:580px){.pt-data{grid-template-columns:1fr}}
.pt-data-item{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px;text-align:center}
.pt-data-val{font-family:'Montserrat',sans-serif;font-size:17px;font-weight:900;line-height:1.1}
.pt-data-val.c-navy{color:var(--navy)}.pt-data-val.c-green{color:var(--green)}.pt-data-val.c-red{color:var(--red)}.pt-data-val.c-gold{color:var(--gold)}.pt-data-val.c-purple{color:#7b2d8e}
.pt-data-lbl{font-size:10.5px;color:var(--gray);margin-top:3px;line-height:1.3}

/* ── do/don't split ── */
.pt-split{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
@media(max-width:580px){.pt-split{grid-template-columns:1fr}}
.pt-do,.pt-dont{border-radius:8px;padding:14px 16px}
.pt-do{background:rgba(0,135,90,.05);border:1px solid rgba(0,135,90,.18)}
.pt-dont{background:rgba(191,10,48,.05);border:1px solid rgba(191,10,48,.18)}
.pt-do-title,.pt-dont-title{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:6px}
.pt-do-title{color:var(--green)}
.pt-dont-title{color:var(--red)}
.pt-do ul,.pt-dont ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:5px}
.pt-do li,.pt-dont li{font-size:12.5px;color:var(--charcoal);display:flex;align-items:flex-start;gap:7px;line-height:1.55}
.pt-do li::before{content:'✓';color:var(--green);font-weight:800;flex-shrink:0;margin-top:1px}
.pt-dont li::before{content:'✗';color:var(--red);font-weight:800;flex-shrink:0;margin-top:1px}

/* ── example scenario box ── */
.pt-example{background:rgba(0,40,104,.04);border:1px solid rgba(0,40,104,.12);border-radius:8px;padding:14px 16px;margin-bottom:16px}
.pt-example-title{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--navy);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.pt-example p{font-size:13px;color:var(--charcoal);line-height:1.65;margin-bottom:6px}
.pt-example p:last-child{margin-bottom:0}
.pt-example strong{color:var(--navy)}

/* ── action step callout ── */
.pt-action{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:13px 16px;display:flex;align-items:flex-start;gap:10px}
.pt-action-icon{font-size:18px;flex-shrink:0;margin-top:1px}
.pt-action-text{font-size:13px;color:var(--charcoal);line-height:1.6}
.pt-action-text strong{color:var(--navy)}

/* ── tool connection badge ── */
.pt-tool-link{display:inline-flex;align-items:center;gap:6px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);border-radius:6px;padding:6px 12px;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--navy);margin-top:12px}
.pt-tool-link span{font-size:14px}

/* ── bonus callout ── */
.pt-bonus{background:linear-gradient(135deg,rgba(0,40,104,.05) 0%,rgba(0,135,90,.05) 100%);border:1px solid rgba(0,40,104,.12);border-radius:var(--r);padding:22px;margin-top:28px}
.pt-bonus h3{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;color:var(--charcoal);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.pt-bonus-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
@media(max-width:768px){.pt-bonus-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.pt-bonus-grid{grid-template-columns:repeat(2,1fr)}}
.pt-bonus-item{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:12px 10px;text-align:center;transition:box-shadow var(--tr),transform var(--tr)}
.pt-bonus-item:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.pt-bonus-icon{font-size:22px;margin-bottom:4px}
.pt-bonus-item h4{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;color:var(--charcoal);margin-bottom:2px;line-height:1.3}
.pt-bonus-item p{font-size:10.5px;color:var(--gray);line-height:1.4}
/* ══════════════════════════════════════════════════════════════
   FAQ SECTION — "fq-" prefix avoids class collision
   ══════════════════════════════════════════════════════════════ */

.fq{max-width:1260px;margin:0 auto;padding:0 22px 52px}
.fq-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto 52px}

/* ── section head ── */
.fq-head{text-align:center;margin-bottom:36px}
.fq-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;padding:5px 16px;border-radius:20px;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase}
.fq h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(20px,3.5vw,30px);color:var(--charcoal);line-height:1.2;margin-bottom:10px}
.fq h2 span{color:var(--navy)}
.fq-head p{font-size:15px;color:var(--gray);max-width:740px;margin:0 auto;line-height:1.7}

/* ── category label ── */
.fq-cat{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:14px;margin-top:28px;display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:2px solid var(--border);color:var(--navy)}
.fq-cat:first-of-type{margin-top:0}

/* ── accordion container ── */
.fq-list{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}

/* ── accordion item ── */
.fq-item{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm);transition:box-shadow var(--tr)}
.fq-item:hover{box-shadow:var(--sh-md)}

/* ── question button ── */
.fq-q{display:flex;align-items:center;gap:12px;width:100%;padding:16px 18px;cursor:pointer;background:none;border:none;text-align:left;font-family:'Montserrat',sans-serif;font-size:13.5px;font-weight:700;color:var(--charcoal);line-height:1.4;transition:background var(--tr)}
.fq-q:hover{background:rgba(0,40,104,.02)}
.fq-q-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:800;flex-shrink:0;background:rgba(0,40,104,.07);color:var(--navy);transition:background var(--tr),color var(--tr)}
.fq-item.open .fq-q-num{background:var(--navy);color:#fff}
.fq-q-text{flex:1}
.fq-q-arrow{width:22px;height:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .3s ease;color:var(--gray)}
.fq-item.open .fq-q-arrow{transform:rotate(180deg);color:var(--navy)}
.fq-q-arrow svg{width:14px;height:14px}

/* ── answer panel ── */
.fq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.fq-item.open .fq-a{max-height:600px}
.fq-a-inner{padding:0 18px 18px 58px;font-size:13px;color:var(--gray);line-height:1.75}
@media(max-width:540px){.fq-a-inner{padding:0 16px 16px 16px}}
.fq-a-inner strong{color:var(--charcoal)}
.fq-a-inner a{color:var(--navy);text-decoration:underline;text-underline-offset:2px}
.fq-a-inner ul{margin:8px 0;padding-left:18px;display:flex;flex-direction:column;gap:4px}
.fq-a-inner li{font-size:12.5px;line-height:1.65}

/* ── schema badge ── */
.fq-schema{text-align:center;margin-top:28px;font-size:11px;color:var(--gray);display:flex;align-items:center;justify-content:center;gap:6px}
.fq-schema svg{flex-shrink:0}
/* ══════════════════════════════════════════════════════════════
   RELATED CALCULATORS — "rc-" prefix avoids class collision
   ══════════════════════════════════════════════════════════════ */

/* ── wrapper ── */
.rc{max-width:1260px;margin:0 auto;padding:0 22px 52px}
.rc-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto 52px}

/* ── section head ── */
.rc-head{text-align:center;margin-bottom:36px}
.rc-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;padding:5px 16px;border-radius:20px;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase}
.rc h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(20px,3.5vw,30px);color:var(--charcoal);line-height:1.2;margin-bottom:10px}
.rc h2 span{color:var(--navy)}
.rc-head p{font-size:15px;color:var(--gray);max-width:740px;margin:0 auto;line-height:1.7}

/* ── category label ── */
.rc-cat{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:14px;display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:2px solid var(--border)}
.rc-cat.cat-credit{color:var(--navy)}
.rc-cat.cat-loans{color:var(--green)}
.rc-cat.cat-personal{color:var(--gold)}
.rc-cat.cat-invest{color:#7b2d8e}
.rc-cat.cat-tax{color:var(--red)}
.rc-cat.cat-business{color:#b45309}

/* ── cards grid ── */
.rc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:32px}
@media(max-width:900px){.rc-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.rc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:440px){.rc-grid{grid-template-columns:1fr}}

/* ── card ── */
.rc-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:18px 16px;text-decoration:none;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:box-shadow var(--tr),transform var(--tr),border-color var(--tr)}
.rc-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px)}
.rc-card:hover .rc-arrow{gap:8px}

/* ── top accent strip ── */
.rc-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px}
.rc-card.ac-navy::before{background:var(--navy)}
.rc-card.ac-navy:hover{border-color:rgba(0,40,104,.35)}
.rc-card.ac-green::before{background:var(--green)}
.rc-card.ac-green:hover{border-color:rgba(0,135,90,.35)}
.rc-card.ac-gold::before{background:var(--gold)}
.rc-card.ac-gold:hover{border-color:rgba(209,153,0,.35)}
.rc-card.ac-purple::before{background:#7b2d8e}
.rc-card.ac-purple:hover{border-color:rgba(123,45,142,.35)}
.rc-card.ac-red::before{background:var(--red)}
.rc-card.ac-red:hover{border-color:rgba(191,10,48,.35)}
.rc-card.ac-orange::before{background:#b45309}
.rc-card.ac-orange:hover{border-color:rgba(180,83,9,.35)}

/* ── card content ── */
.rc-icon{font-size:28px;margin-bottom:8px}
.rc-card h3{font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:800;color:var(--charcoal);margin-bottom:4px;line-height:1.3}
.rc-card p{font-size:11.5px;color:var(--gray);line-height:1.55;flex:1}
.rc-arrow{display:inline-flex;align-items:center;gap:4px;color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;margin-top:10px;transition:gap var(--tr)}

/* ── relevance chip ── */
.rc-rel{position:absolute;top:8px;right:8px;font-family:'Montserrat',sans-serif;font-size:8.5px;font-weight:700;padding:2px 8px;border-radius:10px;letter-spacing:.3px;text-transform:uppercase}
.rc-rel.high{background:rgba(0,135,90,.1);color:var(--green);border:1px solid rgba(0,135,90,.2)}
.rc-rel.med{background:rgba(209,153,0,.1);color:var(--gold);border:1px solid rgba(209,153,0,.2)}

/* ── explore all strip ── */
.rc-explore{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:8px}
@media(max-width:768px){.rc-explore{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.rc-explore{grid-template-columns:repeat(2,1fr)}}
.rc-explore-item{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:12px 10px;text-align:center;text-decoration:none;transition:box-shadow var(--tr),transform var(--tr),border-color var(--tr)}
.rc-explore-item:hover{box-shadow:var(--sh-md);transform:translateY(-2px);border-color:var(--navy)}
.rc-explore-icon{font-size:22px;margin-bottom:4px}
.rc-explore-item h4{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:800;color:var(--charcoal);line-height:1.3}
.rc-explore-item p{font-size:9.5px;color:var(--gray);margin-top:2px}
.rc-explore-label{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--gray);margin-bottom:14px;margin-top:32px;display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:2px solid var(--border)}
/* ══════════════════════════════════════════
   CONTENT-SECTION STYLES  (same design system)
   ══════════════════════════════════════════ */

/* ── SHARED SECTION WRAPPER ── */
.cs{max-width:1260px;margin:0 auto;padding:0 22px 52px}
.cs-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto 52px}

/* ── SECTION HEADING ── */
.cs-head{text-align:center;margin-bottom:32px}
.cs-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;padding:5px 16px;border-radius:20px;margin-bottom:14px;letter-spacing:.4px;text-transform:uppercase}
.cs h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(20px,3.5vw,30px);color:var(--charcoal);line-height:1.2;margin-bottom:10px}
.cs h2 span{color:var(--navy)}
.cs-head p{font-size:15px;color:var(--gray);max-width:700px;margin:0 auto;line-height:1.7}

/* ── HOW IT WORKS ── */
.hiw-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:860px){.hiw-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.hiw-grid{grid-template-columns:1fr}}
.hiw-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:22px 18px;text-align:center;position:relative;transition:box-shadow var(--tr),transform var(--tr)}
.hiw-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px)}
.hiw-num{width:36px;height:36px;border-radius:50%;background:var(--navy);color:#fff;font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.hiw-icon{font-size:28px;margin-bottom:10px}
.hiw-card h3{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;color:var(--charcoal);margin-bottom:6px}
.hiw-card p{font-size:13px;color:var(--gray);line-height:1.6}
.hiw-connector{display:none}
@media(min-width:861px){
  .hiw-connector{display:block;position:absolute;top:36px;right:-18px;width:18px;height:2px;background:var(--border);z-index:1}
  .hiw-card:last-child .hiw-connector{display:none}
}

/* ── KEY FEATURES ── */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:768px){.feat-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.feat-grid{grid-template-columns:1fr}}
.feat-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:20px 18px;transition:box-shadow var(--tr),transform var(--tr)}
.feat-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.feat-icon{width:42px;height:42px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:12px}
.feat-icon.navy-bg{background:rgba(0,40,104,.08)}
.feat-icon.red-bg{background:rgba(191,10,48,.08)}
.feat-icon.green-bg{background:rgba(0,135,90,.08)}
.feat-icon.gold-bg{background:rgba(209,153,0,.08)}
.feat-icon.purple-bg{background:rgba(124,58,237,.08)}
.feat-icon.orange-bg{background:rgba(218,113,1,.08)}
.feat-card h3{font-family:'Montserrat',sans-serif;font-size:13.5px;font-weight:800;color:var(--charcoal);margin-bottom:6px}
.feat-card p{font-size:13px;color:var(--gray);line-height:1.6}

/* ── PAYOFF METHODS COMPARISON ── */
.methods-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:768px){.methods-grid{grid-template-columns:1fr}}
.method-card{background:var(--white);border:2px solid var(--border);border-radius:var(--r);padding:22px 20px;position:relative;overflow:hidden;transition:box-shadow var(--tr),border-color var(--tr)}
.method-card:hover{box-shadow:var(--sh-md)}
.method-card.recommended{border-color:var(--navy)}
.rec-pill{position:absolute;top:0;right:0;background:var(--navy);color:#fff;font-family:'Montserrat',sans-serif;font-size:9px;font-weight:700;padding:4px 12px;border-radius:0 0 0 8px;letter-spacing:.4px;text-transform:uppercase}
.method-card h3{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:800;color:var(--charcoal);margin-bottom:4px;display:flex;align-items:center;gap:8px}
.method-emoji{font-size:22px}
.method-card .method-sub{font-size:12px;color:var(--navy);font-weight:600;margin-bottom:12px}
.method-card p{font-size:13px;color:var(--gray);line-height:1.65;margin-bottom:12px}
.method-pros{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.method-pros li{font-size:12.5px;color:var(--charcoal);display:flex;align-items:flex-start;gap:7px;line-height:1.5}
.method-pros li .pro-icon{flex-shrink:0;margin-top:1px}
.pro-g{color:var(--green);font-weight:700}
.pro-r{color:var(--red);font-weight:700}

/* ── REAL-WORLD EXAMPLE ── */
.example-box{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.example-header{background:linear-gradient(135deg,var(--navy) 0%,#003d8c 100%);padding:18px 22px;color:#fff}
.example-header h3{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:800;margin-bottom:4px;display:flex;align-items:center;gap:8px}
.example-header p{font-size:12.5px;opacity:.8;line-height:1.5}
.example-body{padding:22px}
.ex-debts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}
@media(max-width:600px){.ex-debts{grid-template-columns:1fr}}
.ex-debt{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px;text-align:center}
.ex-debt-name{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}
.ex-debt-val{font-family:'Montserrat',sans-serif;font-size:16px;font-weight:800;color:var(--navy)}
.ex-debt-info{font-size:11px;color:var(--gray);margin-top:3px}
.ex-results{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
@media(max-width:600px){.ex-results{grid-template-columns:repeat(2,1fr)}}
.ex-res{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px;text-align:center}
.ex-res-val{font-family:'Montserrat',sans-serif;font-size:15px;font-weight:800;line-height:1.1}
.ex-res-val.navy{color:var(--navy)}.ex-res-val.green{color:var(--green)}.ex-res-val.red{color:var(--red)}.ex-res-val.gold{color:var(--gold)}
.ex-res-lbl{font-size:11px;color:var(--gray);margin-top:4px}
.ex-insight{background:rgba(0,135,90,.05);border:1px solid rgba(0,135,90,.18);border-radius:8px;padding:13px 15px}
.ex-insight-t{font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.ex-insight p{font-size:13px;color:var(--charcoal);line-height:1.6}

/* ── FAQ ACCORDION ── */
.faq-list{display:flex;flex-direction:column;gap:8px}
.faq-item{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;transition:box-shadow var(--tr)}
.faq-item:hover{box-shadow:var(--sh-sm)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;cursor:pointer;font-family:'Montserrat',sans-serif;font-size:13.5px;font-weight:700;color:var(--charcoal);gap:12px;user-select:none;transition:background var(--tr)}
.faq-q:hover{background:var(--bg)}
.faq-q .faq-arrow{font-size:11px;color:var(--navy);transition:transform var(--tr);flex-shrink:0}
.faq-item.open .faq-q{background:var(--bg);color:var(--navy)}
.faq-item.open .faq-arrow{transform:rotate(180deg)}
.faq-a{display:none;padding:0 18px 16px;font-size:13.5px;color:var(--gray);line-height:1.7}
.faq-item.open .faq-a{display:block}
.faq-a p{margin-bottom:10px}
.faq-a p:last-child{margin-bottom:0}
.faq-a strong{color:var(--charcoal)}
.faq-a ul{padding-left:20px;margin:8px 0}
.faq-a li{margin-bottom:5px;font-size:13px}

/* ── PRO TIPS SECTION ── */
.tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
@media(max-width:640px){.tips-grid{grid-template-columns:1fr}}
.tip-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:20px 18px;display:flex;gap:14px;align-items:flex-start;transition:box-shadow var(--tr),transform var(--tr)}
.tip-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.tip-num{width:32px;height:32px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;flex-shrink:0}
.tip-num.navy{background:rgba(0,40,104,.08);color:var(--navy)}
.tip-num.red{background:rgba(191,10,48,.08);color:var(--red)}
.tip-num.green{background:rgba(0,135,90,.08);color:var(--green)}
.tip-num.gold{background:rgba(209,153,0,.08);color:var(--gold)}
.tip-num.purple{background:rgba(124,58,237,.08);color:var(--purple)}
.tip-num.orange{background:rgba(218,113,1,.08);color:var(--orange)}
.tip-body h3{font-family:'Montserrat',sans-serif;font-size:13.5px;font-weight:800;color:var(--charcoal);margin-bottom:4px}
.tip-body p{font-size:13px;color:var(--gray);line-height:1.6}

/* ── RELATED CALCULATORS ── */
.rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:768px){.rel-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.rel-grid{grid-template-columns:1fr}}
.rel-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:18px 16px;text-align:center;text-decoration:none;transition:box-shadow var(--tr),transform var(--tr),border-color var(--tr);cursor:pointer;display:block}
.rel-card:hover{box-shadow:var(--sh-md);transform:translateY(-3px);border-color:var(--navy)}
.rel-icon{font-size:28px;margin-bottom:8px}
.rel-card h3{font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:800;color:var(--charcoal);margin-bottom:3px}
.rel-card p{font-size:11.5px;color:var(--gray);line-height:1.5}
.rel-arrow{display:inline-flex;align-items:center;gap:4px;color:var(--navy);font-family:'Montserrat',sans-serif;font-size:11px;font-weight:700;margin-top:8px;transition:gap var(--tr)}
.rel-card:hover .rel-arrow{gap:8px}

/* ── TRUST / METHODOLOGY ── */
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}
@media(max-width:640px){.trust-grid{grid-template-columns:1fr}}
.trust-card{background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:18px;text-align:center;transition:box-shadow var(--tr)}
.trust-card:hover{box-shadow:var(--sh-sm)}
.trust-icon{font-size:28px;margin-bottom:8px}
.trust-card h3{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--charcoal);margin-bottom:4px}
.trust-card p{font-size:12.5px;color:var(--gray);line-height:1.6}
.methodology-box{background:rgba(0,40,104,.04);border:1px solid rgba(0,40,104,.12);border-radius:var(--r);padding:22px}
.methodology-box h3{font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;color:var(--charcoal);text-transform:uppercase;letter-spacing:.4px;margin-bottom:12px;display:flex;align-items:center;gap:8px}
.methodology-box p{font-size:13px;color:var(--gray);line-height:1.7;margin-bottom:10px}
.methodology-box p:last-child{margin-bottom:0}
.formula-box{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:14px 16px;margin:12px 0;font-family:'Inter',sans-serif;font-size:13.5px;color:var(--charcoal);line-height:1.7;font-weight:500}
.formula-box code{background:rgba(0,40,104,.06);padding:2px 7px;border-radius:4px;font-size:12.5px;font-weight:600;color:var(--navy)}

/* ── DISCLAIMER ── */
.disclaimer-box{background:rgba(191,10,48,.04);border:1px solid rgba(191,10,48,.14);border-radius:var(--r);padding:18px 20px;margin-top:0}
.disclaimer-box h3{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:800;color:var(--red);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;display:flex;align-items:center;gap:7px}
.disclaimer-box p{font-size:12.5px;color:var(--gray);line-height:1.65;margin-bottom:6px}
.disclaimer-box p:last-child{margin-bottom:0}

/* ── CTA BANNER ── */
.cta-banner{background:linear-gradient(135deg,#0f2540 0%,#1a3a5c 60%,#1e4d7b 100%);border-radius:var(--r);padding:36px 28px;text-align:center;position:relative;overflow:hidden;margin-bottom:0}
.cta-banner::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(60deg,rgba(255,255,255,.015) 0,rgba(255,255,255,.015) 1px,transparent 1px,transparent 18px)}
.cta-inner{position:relative;z-index:1}
.cta-banner h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(18px,3vw,26px);color:#fff;margin-bottom:8px;line-height:1.2}
.cta-banner h2 span{color:#FCD34D}
.cta-banner p{font-size:14px;color:rgba(255,255,255,.8);max-width:550px;margin:0 auto 18px;line-height:1.6}
.cta-btn{display:inline-flex;align-items:center;gap:8px;background:#FCD34D;color:#0f2540;font-family:'Montserrat',sans-serif;font-size:13px;font-weight:800;padding:12px 28px;border-radius:8px;border:none;cursor:pointer;transition:all var(--tr);text-decoration:none}
.cta-btn:hover{background:#fde68a;transform:translateY(-2px);box-shadow:0 6px 20px rgba(252,211,77,.3)}
/* ══════════════════════════════════════════════════════════════
   DISCLAIMER SECTION — "disc-" / "et-" / "auth-" prefixes
   ══════════════════════════════════════════════════════════════ */

/* ── wrapper ── */
.disc-wrap{max-width:1260px;margin:0 auto;padding:0 22px 52px}
.disc-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:0 auto 52px}

/* ══════════════════════════════════════
   EDITORIAL TRANSPARENCY BOX
   ══════════════════════════════════════ */
.et-box{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:22px;box-shadow:var(--sh-sm)}
.et-header{padding:22px 24px 18px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,rgba(0,40,104,.03) 0%,rgba(0,135,90,.03) 100%)}
.et-badge{display:inline-flex;align-items:center;gap:7px;background:rgba(0,135,90,.08);border:1px solid rgba(0,135,90,.18);color:var(--green);font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:700;padding:4px 14px;border-radius:20px;margin-bottom:10px;letter-spacing:.3px;text-transform:uppercase}
.et-badge svg{flex-shrink:0}
.et-header h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:clamp(16px,2.8vw,22px);color:var(--charcoal);line-height:1.3}

/* ── grid of items ── */
.et-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
@media(max-width:860px){.et-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.et-grid{grid-template-columns:1fr}}
.et-item{padding:18px 22px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;gap:12px;align-items:flex-start;transition:background var(--tr)}
.et-item:hover{background:rgba(0,40,104,.015)}
.et-grid .et-item:nth-child(3n){border-right:none}
@media(max-width:860px){.et-grid .et-item:nth-child(3n){border-right:1px solid var(--border)}.et-grid .et-item:nth-child(2n){border-right:none}}
@media(max-width:540px){.et-grid .et-item{border-right:none}}
.et-item-icon{font-size:22px;flex-shrink:0;margin-top:1px}
.et-item-title{font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:800;color:var(--charcoal);margin-bottom:4px}
.et-item-text{font-size:12px;color:var(--gray);line-height:1.65}
.et-item-text strong{color:var(--charcoal)}

/* ── last updated strip ── */
.et-last-updated{padding:14px 22px;background:var(--bg);border-top:1px solid var(--border);display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--gray);line-height:1.5;flex-wrap:wrap}
.et-last-updated svg{flex-shrink:0;color:var(--navy)}
.et-last-updated strong{color:var(--charcoal)}

/* ══════════════════════════════════════
   LEGAL DISCLAIMER BOX
   ══════════════════════════════════════ */
.disc-box{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:22px;box-shadow:var(--sh-sm)}
.disc-header{display:flex;align-items:center;gap:10px;padding:18px 22px;background:linear-gradient(135deg,rgba(191,10,48,.04) 0%,rgba(209,153,0,.04) 100%);border-bottom:1px solid var(--border);font-family:'Montserrat',sans-serif;font-size:clamp(13px,2.4vw,16px);font-weight:800;color:var(--charcoal)}
.disc-icon{font-size:20px;flex-shrink:0}
.disc-body{padding:20px 22px}
.disc-body p{font-size:12.5px;color:var(--gray);line-height:1.7;margin-bottom:14px}
.disc-body p:last-child{margin-bottom:0}
.disc-body strong{color:var(--charcoal)}
.disc-body a{color:var(--navy);text-decoration:underline;text-underline-offset:2px;transition:color var(--tr)}
.disc-body a:hover{color:var(--green)}

/* ══════════════════════════════════════
   OFFICIAL SOURCES BOX
   ══════════════════════════════════════ */
.auth-box{background:var(--white);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-sm)}
.auth-header{display:flex;align-items:center;gap:10px;padding:18px 22px;background:linear-gradient(135deg,rgba(0,40,104,.04) 0%,rgba(0,40,104,.02) 100%);border-bottom:1px solid var(--border);font-family:'Montserrat',sans-serif;font-size:clamp(13px,2.4vw,16px);font-weight:800;color:var(--charcoal)}
.auth-icon{font-size:20px;flex-shrink:0}

/* ── source links grid ── */
.auth-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}
@media(max-width:680px){.auth-grid{grid-template-columns:1fr}}
.auth-link{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);border-right:1px solid var(--border);text-decoration:none;transition:background var(--tr)}
.auth-link:hover{background:rgba(0,40,104,.025)}
.auth-grid .auth-link:nth-child(2n){border-right:none}
@media(max-width:680px){.auth-grid .auth-link{border-right:none}}
.auth-link-flag{font-size:20px;flex-shrink:0}
.auth-link-name{display:block;font-family:'Montserrat',sans-serif;font-size:12px;font-weight:700;color:var(--charcoal);line-height:1.35}
.auth-link-desc{display:block;font-size:10.5px;color:var(--gray);line-height:1.4;margin-top:2px}
.auth-link-ext{margin-left:auto;font-family:'Montserrat',sans-serif;font-size:9.5px;font-weight:800;color:var(--navy);background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.14);padding:2px 8px;border-radius:10px;white-space:nowrap;flex-shrink:0;letter-spacing:.3px}
.auth-note{padding:14px 20px;background:var(--bg);border-top:1px solid var(--border);font-size:11px;color:var(--gray);line-height:1.6}
.auth-note strong{color:var(--charcoal)}
/* ─────────────────────────────────────────────
   MASTER MOBILE FIX: FORCE STACKING FOR FORECASTER
   ───────────────────────────────────────────── */
@media screen and (max-width: 850px) {
  /* Break main desktop grid */
  #dfdWrapper .calc-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 24px !important;
  }
  #dfdWrapper .calc-panel,
  #dfdWrapper .res-panel {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  /* Force top input rows to stack */
  #dfdWrapper .row2,
  #dfdWrapper .row3 {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  /* Reformat the Debt Rows to prevent squishing */
  #dfdWrapper .drow {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }
  #dfdWrapper .drow .drm {
    align-self: flex-end !important;
    width: 100% !important;
    margin-top: 4px !important;
  }
  /* Make Data Tables scrollable horizontally */
  #dfdWrapper .tw,
  #dfdWrapper .sched-body {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
}
/* ── ACTIONS ── */
.calc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.btn-calc{flex:1 1 160px;padding:12px 14px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:12.5px;font-weight:800;cursor:pointer;transition:all var(--tr);display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.btn-calc:hover{background:var(--navy-dark);transform:translateY(-1px);box-shadow:var(--sh-md)}
.btn-sec{flex:1 1 100px;padding:11px 12px;border:none;border-radius:8px;font-family:'Montserrat',sans-serif;font-size:11.5px;font-weight:700;cursor:pointer;transition:all var(--tr);display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}
.btn-pdf{background:var(--bg);color:var(--charcoal);border:1.5px solid var(--border)}
.btn-pdf:hover{background:var(--charcoal);color:#fff}
.btn-wa{background:#25D366;color:#fff}
.btn-wa:hover{background:#1da851}
.btn-rst{background:transparent;color:var(--gray);border:1.5px solid var(--border)}
.btn-rst:hover{border-color:var(--navy);color:var(--navy)}
.btn-pdf.h,.btn-wa.h,.btn-rst.h{display:none}