
    :root{--navy:#002868;--navy-dark:#00183F;--navy-mid:#003580;--red:#BF0A30;--red-hover:#9B0826;--green:#00875A;--green-dark:#006644;--white:#fff;--charcoal:#1D1D1F;--gray:#5F6368;--border:#E0E4E8;--bg:#F7F9FC;--good-bg:#ECFDF5;--good-br:#A7F3D0;--good-tx:#065F46;--warn-bg:#FFF9F0;--warn-br:#F6E0B5;--warn-tx:#9A6C11;--bad-bg:#FEF2F2;--bad-br:#FECACA;--bad-tx:#991B1B;--shadow-sm:0 1px 4px rgba(0,40,104,.08);--shadow-md:0 4px 20px rgba(0,40,104,.12);--shadow-lg:0 8px 40px rgba(0,40,104,.16)}
    *{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden;max-width:100vw;scroll-behavior:smooth}
    body{font-family:Inter,sans-serif;background:var(--bg);color:var(--charcoal);line-height:1.6;-webkit-font-smoothing:antialiased}
    .calc-wrap{max-width:1280px;margin:34px auto;padding:0 18px 40px}.calc-shell{background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg)}
    .calc-head{padding:30px 28px;background:linear-gradient(135deg,var(--navy-dark) 0%,var(--navy) 62%,#003d8c 100%);position:relative;overflow:hidden;border-bottom:4px solid var(--red)}
    .calc-head:before{content:"";position:absolute;top:-70px;right:-50px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle, rgba(191,10,48,.18) 0, rgba(191,10,48,0) 72%)}
    .calc-head:after{content:"";position:absolute;left:-80px;bottom:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle, rgba(0,135,90,.12) 0, rgba(0,135,90,0) 72%)}
    .calc-head-inner{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}.calc-kicker{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;padding:6px 12px;border-radius:999px;font:800 11px Montserrat,sans-serif;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}.calc-kicker i{width:8px;height:8px;border-radius:50%;background:var(--green)}
    .calc-head h1{font:800 clamp(28px,4.2vw,40px)/1.12 Montserrat,sans-serif;letter-spacing:-.5px;color:#fff;margin-bottom:12px;max-width:780px}.calc-head p{font-size:15px;color:rgba(255,255,255,.78);max-width:760px}
    .calc-badges{display:flex;gap:8px;flex-wrap:wrap}.calc-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#fff;padding:7px 12px;border-radius:999px;font-size:11.5px;font-weight:700}
    .calc-body{display:grid;grid-template-columns:minmax(420px,560px) 1fr;min-width:0}.panel{padding:26px;min-width:0}.panel.inputs{border-right:1px solid var(--border)}.panel.results{background:var(--bg)}
    .sec-title{margin-bottom:22px}.sec-title h2{font:800 20px Montserrat,sans-serif;color:var(--navy-dark);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.help{font-size:12px;font-weight:600;color:var(--gray);background:#eef2f7;padding:6px 10px;border-radius:8px}
    .mode-tabs{display:flex;gap:6px;flex-wrap:wrap;background:var(--bg);border:1px solid var(--border);padding:4px;border-radius:10px;margin-bottom:24px}.mode-btn{flex:1;min-width:115px;border:none;background:transparent;border-radius:8px;padding:11px 10px;font:700 12px Montserrat,sans-serif;color:var(--gray);cursor:pointer;transition:.2s}.mode-btn.active,.mode-btn:hover{background:#fff;color:var(--navy);box-shadow:var(--shadow-sm)}
    .field{margin-bottom:18px}label{display:block;font:700 12.5px Montserrat,sans-serif;color:var(--charcoal);margin-bottom:8px}.row2,.row3{display:grid;gap:12px}.row2{grid-template-columns:1fr 1fr}.row3{grid-template-columns:repeat(3,1fr)}
    .input-wrap{position:relative;display:flex;align-items:center}.prefix,.suffix{position:absolute;z-index:2;font-size:13px;font-weight:700;color:var(--gray);pointer-events:none}.prefix{left:14px}.suffix{right:14px}.has-prefix input{padding-left:30px}.has-suffix input{padding-right:32px}
    input,select{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;font:500 14px Inter,sans-serif;background:var(--bg);color:var(--charcoal);outline:none;transition:.2s;-webkit-appearance:none}
    input:focus,select:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(0,40,104,.1);background:#fff}
    select{cursor:pointer;background:var(--bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%235F6368'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E") no-repeat right 10px center/14px;padding-right:34px}
    .note{font-size:12px;color:var(--gray);line-height:1.45;margin-top:6px}.box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:18px;margin:20px 0;box-shadow:var(--shadow-sm)}.box h3{font:700 15px Montserrat,sans-serif;color:var(--navy);margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}
    .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:10px;padding:12px 16px;font:700 13px Montserrat,sans-serif;cursor:pointer;transition:.2s}.btn-primary{background:var(--red);color:#fff;flex:1;min-width:190px}.btn-primary:hover{background:var(--red-hover);transform:translateY(-1px)}.btn-secondary{background:var(--navy);color:#fff}.btn-secondary:hover{background:var(--navy-mid);transform:translateY(-1px)}.btn-wa{background:var(--green);color:#fff}.btn-wa:hover{background:var(--green-dark)}.btn-ghost{background:#fff;color:var(--navy);border:1.5px solid var(--border)}.btn-ghost:hover{border-color:var(--navy)}.hidden{display:none!important}
    .results-top{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.kpi{background:#fff;border:1.5px solid var(--border);border-radius:14px;padding:16px;box-shadow:var(--shadow-sm)}.kpi.featured{background:var(--navy);border-color:var(--navy)}.k-label{font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.06em}.featured .k-label,.featured .k-sub{color:rgba(255,255,255,.72)}.k-value{display:block;margin-top:6px;font:800 clamp(21px,3.7vw,28px)/1.16 Montserrat,sans-serif;color:var(--navy-dark)}.featured .k-value{color:#fff}.k-sub{display:block;margin-top:6px;font-size:11.5px;color:#97A0A9}
    .alert{border-radius:12px;padding:16px 18px;margin-bottom:20px;font-size:14px;font-weight:500;line-height:1.6;display:flex;gap:12px;align-items:flex-start}.alert.good{background:var(--good-bg);border:1px solid var(--good-br);color:var(--good-tx)}.alert.warn{background:var(--warn-bg);border:1px solid var(--warn-br);color:var(--warn-tx)}.alert.bad{background:var(--bad-bg);border:1px solid var(--bad-br);color:var(--bad-tx)}
    .card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:16px;box-shadow:var(--shadow-sm)}.card h3{font:700 16px Montserrat,sans-serif;color:var(--navy-dark);margin-bottom:14px}
    .bars{display:flex;flex-direction:column;gap:10px}.bar-row{display:grid;grid-template-columns:132px 1fr 88px;align-items:center;gap:12px}.bar-label{font-size:12px;font-weight:700;color:var(--charcoal)}.bar-track{height:12px;background:var(--border);border-radius:999px;overflow:hidden}.bar-fill{height:100%;border-radius:999px;transition:width .35s ease}.fill-required{background:var(--navy)}.fill-affordable{background:var(--green)}.fill-debt{background:var(--red)}.bar-text{text-align:right;font-size:12px;font-weight:700;color:var(--charcoal);font-variant-numeric:tabular-nums}
    .table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:12px}table{width:100%;border-collapse:collapse;min-width:760px;background:#fff}th,td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:13.5px}th{font:700 11px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:var(--gray);background:var(--bg)}tr:last-child td{border-bottom:none}
    .scenario-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.scenario-item{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:14px 15px}.si-label{font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.05em}.si-value{font:800 23px Montserrat,sans-serif;color:var(--navy-dark);margin-top:5px}.scenario-item.good .si-value{color:var(--green)}.scenario-item.bad .si-value{color:var(--red)}
    canvas{max-height:300px}.ad-slot{margin-top:18px;background:#fff;border:1px dashed var(--border);border-radius:14px;padding:14px;text-align:center;color:var(--gray);font-size:13px}
    @media (max-width:1080px){.calc-body{grid-template-columns:1fr}.panel.inputs{border-right:none;border-bottom:1px solid var(--border)}}
    @media (max-width:768px){.calc-wrap{padding:0 12px 28px;margin-top:18px}.calc-head{padding:22px 16px}.panel{padding:18px 14px}.row2,.row3,.results-top,.scenario-grid{grid-template-columns:1fr}.actions{flex-direction:column}.btn{width:100%}.mode-tabs{flex-direction:column}.bar-row{grid-template-columns:88px 1fr 72px}}
  

/* ===================================================
   CONTENT SECTIONS — Vacation Savings Calculator
   Uses same vars: --navy, --red, --green, --bg,
   --charcoal, --gray, --border, --shadow-*
   =================================================== */
.vs-section{max-width:1280px;margin:0 auto;padding:40px 18px;border-top:1px solid var(--border)}
.vs-section:first-of-type{border-top:none}
.vs-hdr{display:flex;align-items:flex-start;gap:14px;margin-bottom:28px}
.vs-hdr-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
.vs-hdr-icon.navy{background:rgba(0,40,104,.10)}.vs-hdr-icon.red{background:rgba(191,10,48,.09)}.vs-hdr-icon.green{background:rgba(0,135,90,.10)}.vs-hdr-icon.amber{background:rgba(217,119,6,.10)}.vs-hdr-icon.purple{background:rgba(124,58,237,.10)}
.vs-hdr-title{font:800 clamp(18px,2.4vw,24px)/1.2 Montserrat,sans-serif;color:var(--navy-dark);margin:0 0 5px}
.vs-hdr-sub{font-size:14px;color:var(--gray);line-height:1.55;margin:0}

/* S1: HOW TO USE */
.vs-how-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:14px}
.vs-how-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px 18px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden;transition:box-shadow .2s,transform .2s}
.vs-how-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.vs-how-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.vs-how-card.c-navy::before{background:var(--navy)}.vs-how-card.c-red::before{background:var(--red)}.vs-how-card.c-green::before{background:var(--green)}.vs-how-card.c-amber::before{background:#D97706}.vs-how-card.c-purple::before{background:#7C3AED}
.vs-how-step{font:800 11px Montserrat,sans-serif;letter-spacing:.07em;text-transform:uppercase;margin-bottom:8px}
.c-navy .vs-how-step{color:var(--navy)}.c-red .vs-how-step{color:var(--red)}.c-green .vs-how-step{color:var(--green)}.c-amber .vs-how-step{color:#D97706}.c-purple .vs-how-step{color:#7C3AED}
.vs-how-title{font:800 15px Montserrat,sans-serif;color:var(--navy-dark);margin:0 0 8px}
.vs-how-body{font-size:13px;color:var(--gray);line-height:1.65;margin:0 0 12px}
.vs-how-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:5px}
.vs-how-list li{display:flex;align-items:flex-start;gap:7px;font-size:12.5px;color:var(--charcoal);line-height:1.45}
.vs-how-list li::before{content:'✓';font-size:10px;font-weight:800;width:16px;height:16px;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.c-navy .vs-how-list li::before{background:rgba(0,40,104,.12);color:var(--navy)}.c-red .vs-how-list li::before{background:rgba(191,10,48,.10);color:var(--red)}.c-green .vs-how-list li::before{background:rgba(0,135,90,.12);color:var(--green)}.c-amber .vs-how-list li::before{background:rgba(217,119,6,.12);color:#D97706}.c-purple .vs-how-list li::before{background:rgba(124,58,237,.10);color:#7C3AED}

/* S2: DESTINATION GUIDE */
.vs-dest-cats{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}
.vs-dest-cat{border:1.5px solid var(--border);background:#fff;border-radius:999px;padding:7px 14px;font:700 12px Montserrat,sans-serif;color:var(--gray);cursor:pointer;transition:.18s}
.vs-dest-cat.active,.vs-dest-cat:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.vs-dest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:14px}
.vs-dest-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s}
.vs-dest-card.hidden{display:none}.vs-dest-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.vs-dest-top{padding:14px 16px 12px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border);background:var(--bg)}
.vs-dest-flag{font-size:1.7rem;line-height:1;flex-shrink:0}
.vs-dest-name{font:800 14px Montserrat,sans-serif;color:var(--navy-dark);margin:0 0 2px}
.vs-dest-type{font-size:11px;font-weight:600;color:var(--gray)}
.vs-dest-badge{margin-left:auto;flex-shrink:0;font:700 10px Montserrat,sans-serif;letter-spacing:.04em;text-transform:uppercase;padding:3px 9px;border-radius:999px}
.vs-dest-badge.budget{background:rgba(0,135,90,.12);color:var(--green)}.vs-dest-badge.mid{background:rgba(0,40,104,.09);color:var(--navy)}.vs-dest-badge.luxury{background:rgba(191,10,48,.09);color:var(--red)}.vs-dest-badge.premium{background:rgba(217,119,6,.11);color:#B45309}
.vs-dest-body{padding:14px 16px 16px}
.vs-dest-cost-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.vs-dest-cost-label{font-size:11px;font-weight:700;color:var(--gray);text-transform:uppercase;letter-spacing:.05em}
.vs-dest-cost-val{font:800 20px Montserrat,sans-serif;color:var(--navy-dark)}
.vs-dest-cost-per{font-size:11px;font-weight:600;color:var(--gray);display:block;text-align:right}
.vs-dest-bars{display:flex;flex-direction:column;gap:7px;margin-bottom:12px}
.vs-dest-bar-row{display:grid;grid-template-columns:80px 1fr 60px;align-items:center;gap:8px}
.vs-dest-bar-lbl{font-size:11px;font-weight:700;color:var(--charcoal)}
.vs-dest-bar-track{height:8px;background:var(--border);border-radius:999px;overflow:hidden}
.vs-dest-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}
.fill-flights{background:var(--navy)}.fill-hotel{background:var(--red)}.fill-food{background:var(--green)}.fill-fun{background:#D97706}
.vs-dest-bar-amt{font-size:11px;font-weight:700;color:var(--charcoal);text-align:right;font-variant-numeric:tabular-nums}
.vs-dest-insight{font-size:12px;color:var(--gray);line-height:1.55;border-top:1px solid var(--border);padding-top:10px;margin:0}
.vs-dest-insight strong{color:var(--charcoal)}
.vs-save-tbl{overflow-x:auto;border:1px solid var(--border);border-radius:12px;margin-top:24px}
.vs-save-tbl table{width:100%;border-collapse:collapse;min-width:620px;background:#fff}
.vs-save-tbl th,.vs-save-tbl td{padding:10px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:13px}
.vs-save-tbl th{font:700 11px Montserrat,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:var(--gray);background:var(--bg)}
.vs-save-tbl tr:last-child td{border-bottom:none}
.vs-save-tbl td:not(:first-child){font-variant-numeric:tabular-nums;font-weight:600;color:var(--navy-dark)}
.vs-save-tbl tr:hover td{background:rgba(0,40,104,.03)}

/* S3: SAVING STRATEGIES */
.vs-strat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:14px}
.vs-strat-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.vs-strat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.vs-strat-inner{display:flex;flex:1}.vs-strat-bar{width:4px;flex-shrink:0}
.vs-strat-bar.navy{background:linear-gradient(180deg,var(--navy),#3b82f6)}.vs-strat-bar.red{background:linear-gradient(180deg,var(--red),#f87171)}.vs-strat-bar.green{background:linear-gradient(180deg,var(--green),#34d399)}.vs-strat-bar.amber{background:linear-gradient(180deg,#D97706,#fbbf24)}.vs-strat-bar.purple{background:linear-gradient(180deg,#7C3AED,#a78bfa)}.vs-strat-bar.teal{background:linear-gradient(180deg,#0891B2,#38bdf8)}
.vs-strat-content{padding:18px 18px 18px 14px;flex:1}
.vs-strat-num-row{display:flex;align-items:center;gap:9px;margin-bottom:10px}
.vs-strat-num{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font:800 12px Montserrat,sans-serif;flex-shrink:0}
.vs-strat-card.navy .vs-strat-num{background:rgba(0,40,104,.10);color:var(--navy)}.vs-strat-card.red .vs-strat-num{background:rgba(191,10,48,.10);color:var(--red)}.vs-strat-card.green .vs-strat-num{background:rgba(0,135,90,.12);color:var(--green)}.vs-strat-card.amber .vs-strat-num{background:rgba(217,119,6,.12);color:#D97706}.vs-strat-card.purple .vs-strat-num{background:rgba(124,58,237,.10);color:#7C3AED}.vs-strat-card.teal .vs-strat-num{background:rgba(8,145,178,.10);color:#0891B2}
.vs-strat-src{font:700 10.5px Montserrat,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.vs-strat-card.navy .vs-strat-src{color:var(--navy)}.vs-strat-card.red .vs-strat-src{color:var(--red)}.vs-strat-card.green .vs-strat-src{color:var(--green)}.vs-strat-card.amber .vs-strat-src{color:#D97706}.vs-strat-card.purple .vs-strat-src{color:#7C3AED}.vs-strat-card.teal .vs-strat-src{color:#0891B2}
.vs-strat-title{font:800 14.5px Montserrat,sans-serif;color:var(--navy-dark);margin:0 0 8px}
.vs-strat-body{font-size:13px;color:var(--gray);line-height:1.65;margin:0 0 12px}.vs-strat-body strong{color:var(--charcoal)}
.vs-strat-cl{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:5px}
.vs-strat-cl li{display:flex;align-items:flex-start;gap:7px;font-size:12px;color:var(--charcoal);line-height:1.5}
.vs-strat-chk{width:15px;height:15px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;flex-shrink:0;margin-top:1px}
.vs-strat-card.navy .vs-strat-chk{background:rgba(0,40,104,.10);color:var(--navy)}.vs-strat-card.red .vs-strat-chk{background:rgba(191,10,48,.10);color:var(--red)}.vs-strat-card.green .vs-strat-chk{background:rgba(0,135,90,.12);color:var(--green)}.vs-strat-card.amber .vs-strat-chk{background:rgba(217,119,6,.12);color:#D97706}.vs-strat-card.purple .vs-strat-chk{background:rgba(124,58,237,.10);color:#7C3AED}.vs-strat-card.teal .vs-strat-chk{background:rgba(8,145,178,.10);color:#0891B2}
.vs-strat-stat{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;margin-top:2px}
.vs-strat-card.navy .vs-strat-stat{background:rgba(0,40,104,.06);border:1px solid rgba(0,40,104,.12)}.vs-strat-card.red .vs-strat-stat{background:rgba(191,10,48,.06);border:1px solid rgba(191,10,48,.13)}.vs-strat-card.green .vs-strat-stat{background:rgba(0,135,90,.07);border:1px solid rgba(0,135,90,.16)}.vs-strat-card.amber .vs-strat-stat{background:rgba(217,119,6,.07);border:1px solid rgba(217,119,6,.16)}.vs-strat-card.purple .vs-strat-stat{background:rgba(124,58,237,.07);border:1px solid rgba(124,58,237,.16)}.vs-strat-card.teal .vs-strat-stat{background:rgba(8,145,178,.07);border:1px solid rgba(8,145,178,.16)}
.vs-strat-stat-num{font:800 1.45rem/1 Montserrat,sans-serif;flex-shrink:0}
.vs-strat-card.navy .vs-strat-stat-num{color:var(--navy)}.vs-strat-card.red .vs-strat-stat-num{color:var(--red)}.vs-strat-card.green .vs-strat-stat-num{color:var(--green)}.vs-strat-card.amber .vs-strat-stat-num{color:#D97706}.vs-strat-card.purple .vs-strat-stat-num{color:#7C3AED}.vs-strat-card.teal .vs-strat-stat-num{color:#0891B2}
.vs-strat-stat-lbl{font-size:12px;color:var(--gray);line-height:1.4}.vs-strat-stat-lbl strong{color:var(--charcoal);font-size:12.5px;display:block}

/* S4: FAQ */
.vs-faq-list{display:flex;flex-direction:column;gap:8px}
.vs-faq-item{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s}
.vs-faq-item.open{box-shadow:var(--shadow-md)}
.vs-faq-q{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;cursor:pointer;-webkit-user-select:none;user-select:none}
.vs-faq-q:hover{background:rgba(0,40,104,.02)}
.vs-faq-q-text{font:700 14px Montserrat,sans-serif;color:var(--navy-dark);line-height:1.35;flex:1}
.vs-faq-icon{width:26px;height:26px;border-radius:7px;background:rgba(0,40,104,.08);color:var(--navy);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0;transition:transform .25s,background .2s}
.vs-faq-item.open .vs-faq-icon{transform:rotate(45deg);background:var(--navy);color:#fff}
.vs-faq-a{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.4,0,.2,1);padding:0 18px}
.vs-faq-item.open .vs-faq-a{max-height:600px;padding:0 18px 16px}
.vs-faq-a p{font-size:13.5px;color:var(--gray);line-height:1.7;margin:0 0 8px}.vs-faq-a p:last-child{margin:0}.vs-faq-a strong{color:var(--charcoal)}.vs-faq-a a{color:var(--navy);text-decoration:underline}
.vs-faq-a .vs-alert{border-radius:10px;padding:12px 14px;margin:10px 0 0;font-size:13px;font-weight:500;line-height:1.6;display:flex;gap:10px;align-items:flex-start}
.vs-alert.good{background:var(--good-bg);border:1px solid var(--good-br);color:var(--good-tx)}
.vs-alert.warn{background:var(--warn-bg);border:1px solid var(--warn-br);color:var(--warn-tx)}

/* S5: RELATED CALCS */
.vs-rel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:12px}
.vs-rel-card{display:flex;align-items:flex-start;gap:12px;padding:15px;background:#fff;border:1px solid var(--border);border-radius:12px;text-decoration:none;box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s}
.vs-rel-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.vs-rel-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}
.vs-rel-icon.navy{background:rgba(0,40,104,.09)}.vs-rel-icon.red{background:rgba(191,10,48,.09)}.vs-rel-icon.green{background:rgba(0,135,90,.10)}.vs-rel-icon.amber{background:rgba(217,119,6,.10)}.vs-rel-icon.purple{background:rgba(124,58,237,.09)}.vs-rel-icon.teal{background:rgba(8,145,178,.09)}
.vs-rel-body{flex:1;min-width:0}
.vs-rel-title{font:700 13px Montserrat,sans-serif;color:var(--navy-dark);margin:0 0 3px;line-height:1.2}
.vs-rel-desc{font-size:11.5px;color:var(--gray);line-height:1.45;margin:0}
.vs-rel-arrow{font-size:12px;color:var(--gray);flex-shrink:0;margin-top:2px;transition:transform .18s}
.vs-rel-card:hover .vs-rel-arrow{transform:translate(2px,-2px)}

/* MOBILE */
@media(max-width:768px){.vs-section{padding:28px 14px}.vs-how-grid,.vs-dest-grid,.vs-strat-grid,.vs-rel-grid{grid-template-columns:1fr}.vs-dest-bar-row{grid-template-columns:68px 1fr 52px}.vs-hdr-title{font-size:17px}.vs-dest-top{flex-wrap:wrap}}
@media(max-width:480px){.vs-hdr{flex-direction:column;gap:8px}.vs-hdr-icon{width:38px;height:38px;font-size:1rem}.vs-dest-cats{gap:4px}.vs-dest-cat{padding:6px 11px;font-size:11px}.vs-rel-grid{grid-template-columns:1fr 1fr;gap:9px}}

/* ===== LEGAL & EDITORIAL SECTIONS ===== */
.tp-legal-section{max-width:1100px;margin:0 auto;padding:32px 0 0}
.tp-legal-hdr{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}
.tp-legal-hdr-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex-shrink:0}
.tp-legal-hdr-icon.slate{background:rgba(95,99,104,.10)}
.tp-legal-hdr-icon.blue{background:rgba(0,40,104,.10)}

/* FIX: Changed color to var(--navy) */
.tp-legal-hdr-title{font-family:Montserrat,Inter,sans-serif;font-size:clamp(16px,2.2vw,21px);font-weight:800;color:var(--navy);margin:0 0 4px;line-height:1.25}

.tp-legal-hdr-sub{font-size:13px;color:var(--tp-gray);line-height:1.55;margin:0}
.tp-legal-box{background:var(--tp-white);border:1px solid var(--tp-border);border-radius:16px;padding:22px 20px;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.tp-legal-badge-row{margin-bottom:14px}
.tp-legal-badge{display:inline-flex;align-items:center;gap:5px;font-family:Montserrat,Inter,sans-serif;font-size:0.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:6px}
.tp-legal-badge.disc{background:rgba(191,10,48,.09);color:var(--tp-red)}
.tp-legal-badge.edit{background:rgba(0,40,104,.09);color:var(--tp-blue)}
.tp-legal-box p{font-size:13px;color:var(--tp-gray);line-height:1.7;margin:0 0 10px}
.tp-legal-box p:last-child{margin-bottom:0}
.tp-legal-box strong{color:var(--tp-charcoal)}
.tp-legal-box a{color:var(--tp-blue);text-decoration:underline;font-weight:600;transition:color .18s}
.tp-legal-box a:hover{color:var(--tp-red)}
.tp-legal-list{list-style:none;padding:0;margin:14px 0;display:flex;flex-direction:column;gap:9px}
.tp-legal-list li{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--tp-charcoal);line-height:1.65}
.tp-legal-list li span:last-child{flex:1}
.tp-li-icon{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;flex-shrink:0;margin-top:2px}
.tp-li-icon.red{background:rgba(191,10,48,.10);color:var(--tp-red)}
.tp-li-icon.amber{background:rgba(217,119,6,.12);color:var(--tp-amber)}
.tp-li-icon.blue{background:rgba(0,40,104,.10);color:var(--tp-blue)}
.tp-li-icon.green{background:rgba(0,135,90,.12);color:var(--tp-green)}
.tp-li-icon.purple{background:rgba(124,58,237,.10);color:var(--tp-purple)}
.tp-legal-divider{height:1px;background:var(--tp-border);margin:16px 0}
.tp-legal-sources{background:var(--tp-bg);border:1px solid var(--tp-border);border-radius:10px;padding:14px 16px;margin-top:16px}
.tp-legal-sources-title{font-family:Montserrat,Inter,sans-serif;font-size:0.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tp-charcoal);margin:0 0 10px}
.tp-src-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:7px}
.tp-src-item{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--tp-gray);line-height:1.45}
.tp-src-item a{color:var(--tp-blue);font-weight:600;text-decoration:underline}
.tp-src-item a:hover{color:var(--tp-red)}
.tp-src-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}
.tp-src-dot.gov{background:var(--tp-blue)}
.tp-src-dot.org{background:var(--tp-green)}
.tp-src-dot.data{background:var(--tp-amber)}
.tp-legal-updated{font-size:11px;color:var(--tp-gray);margin-top:14px;padding-top:12px;border-top:1px solid var(--tp-border);display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.tp-legal-updated strong{color:var(--tp-charcoal)}
@media(max-width:768px){.tp-legal-section{padding:24px 0 0}.tp-legal-box{padding:18px 16px}.tp-src-grid{grid-template-columns:1fr}}
@media(max-width:480px){.tp-legal-hdr{flex-direction:column;gap:8px}.tp-legal-hdr-icon{width:36px;height:36px;font-size:1rem}.tp-legal-updated{flex-direction:column;align-items:flex-start;gap:3px}}


/* ══════════════════════════════════════════════════
   TYPOGRAPHY CRISPNESS & CONTRAST FIX
   ══════════════════════════════════════════════════ */
/* 1. Force sharp font rendering in all browsers */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 2. Make Input Labels Darker & Punchier */
.fg label, .rng-wrap label, .fee-item .fl {
  color: #1e293b !important; /* Deep Slate */
  font-weight: 800 !important;
}

/* 3. Make Typed Numbers Bolder and Slightly Larger */
.fg input, .fg select, .fee-amt input {
  font-weight: 600 !important;
  color: #0f172a !important; /* Almost black */
  font-size: 15px !important;
}

/* 4. Darken the $ and % prefix/suffix symbols */
.ipfx, .isfx, .fee-amt .fp {
  color: #334155 !important;
  font-weight: 800 !important;
}

/* 5. Fix Washed-Out Hint Text */
.hint, .fee-item .fs, .opt, .tl-lbl {
  color: #64748b !important; 
  font-weight: 500 !important;
}

/* 6. Make Section Titles Pop More */
.sec-ttl h2 {
  font-weight: 800 !important;
  color: var(--navy-d) !important;
  font-size: 15px !important;
}

/* 7. Darken the unselected toggle buttons */
.tgb {
  color: #475569 !important;
}
.tgb.on {
  color: #ffffff !important;
}