:root{--navy:#062e56;--navy2:#041e38;--gold:#d6a640;--gold2:#f1c955;--green:#2e9b45;--blue:#1768aa;--ink:#10233f;--muted:#60758a;--soft:#f3f8fc;--line:#d7e3ee;--white:#fff;--shadow:0 18px 48px rgba(7,42,75,.14);--radius:20px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.5}
button,input,select{font:inherit}button{touch-action:manipulation}a{color:inherit}.wrap{width:min(1120px,calc(100% - 34px));margin:auto}
.sitebar{background:var(--navy);color:#fff;position:sticky;top:0;z-index:80;box-shadow:0 1px 0 rgba(255,255,255,.12)}
.sitebar-inner{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.brand-mark{flex:0 0 auto;width:39px;height:44px;border:2px solid #fff;border-radius:9px 9px 18px 18px;display:grid;place-items:center;font-size:21px}.brand-name{display:block;font-weight:950;letter-spacing:.025em}.brand-sub{display:block;font-size:10px;letter-spacing:.08em;opacity:.76;font-weight:800}.build{font-size:11px;opacity:.7}.trustline{display:flex;gap:14px;align-items:center;font-size:13px;font-weight:750}.top-cta{white-space:nowrap;font-size:13px;min-height:44px;padding:10px 15px}
.hero{min-height:620px;display:flex;align-items:center;background:linear-gradient(90deg,#fff 0%,#fff 44%,rgba(255,255,255,.82) 54%,rgba(255,255,255,.10) 73%),url('../img/retirement-sunset.webp') right center/57% 100% no-repeat}
.hero-copy{width:54%;padding:76px 0}.eyebrow{text-transform:uppercase;letter-spacing:.09em;color:var(--blue);font-size:13px;font-weight:900}.hero h1{margin:12px 0 20px;font-size:clamp(46px,6vw,74px);line-height:1.01;letter-spacing:-.045em;color:var(--navy)}.hero p{font-size:20px;max-width:615px}.checks{display:grid;gap:10px;margin:23px 0}.check:before{content:'✓';display:inline-grid;place-items:center;width:24px;height:24px;margin-right:10px;border-radius:50%;background:var(--blue);color:#fff;font-weight:950}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:15px 22px;border:0;border-radius:12px;font-weight:900;text-decoration:none;cursor:pointer}.btn.big{font-size:20px;padding:18px 30px}.btn.gold{background:linear-gradient(90deg,var(--gold),#e4b84e);color:#fff}.btn.green{background:var(--green);color:#fff}.btn.navy{background:var(--navy);color:#fff}.btn.ghost{background:#fff;color:var(--navy);border:1px solid #b9cbdc}.text-cta{border:0;background:transparent;padding:12px 0;color:var(--navy);font-weight:850;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.hero-actions{margin-top:4px}.micro{font-size:13px;color:#50667c;margin-top:11px}.light-micro{color:#c8d9e9}.light-micro a{font-weight:800}
.section{padding:66px 0;position:relative}.soft{background:var(--soft)}.dark{background:radial-gradient(circle at 70% 25%,rgba(214,166,64,.16),transparent 28%),linear-gradient(135deg,#061c32,#072d4d);color:#fff}.section h2{font-size:clamp(30px,4vw,48px);line-height:1.1;margin:0 0 14px;color:var(--navy);letter-spacing:-.025em}.dark h2{color:#fff}.lede{font-size:19px;max-width:770px;margin:0 auto 28px}.center{text-align:center}
.topics{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:34px}.topic{text-align:center}.topic-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:0 auto 11px;background:#dcecfb;color:var(--blue);font-size:28px}.topic strong{display:block}
.criteria{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.criterion{border:1px solid rgba(214,166,64,.3);border-bottom:5px solid var(--gold);border-radius:18px;padding:26px;background:rgba(255,255,255,.035)}.criterion .num{font-size:54px;line-height:1;color:var(--gold2);font-weight:950}.criterion h3{font-family:Georgia,serif;font-size:25px;margin:12px 0 9px}
.funnel-shell{max-width:790px;margin:auto}.progress{height:8px;border-radius:99px;background:#dfe9f2;overflow:hidden;margin:18px 0 26px}.progress span{display:block;width:12.5%;height:100%;background:linear-gradient(90deg,var(--gold),var(--green));transition:width .2s}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px;position:relative}.qnum{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}.qtitle{font-size:clamp(25px,4vw,34px);line-height:1.15;color:var(--navy);font-weight:920;margin:7px 0}.qhelp{color:var(--muted);margin:0 0 22px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:11px}.choice{padding:15px 16px;border:1px solid #c6d5e4;background:#fff;border-radius:13px;text-align:left;font-weight:800;color:var(--navy);cursor:pointer;min-height:58px}.choice:hover,.choice.selected{border-color:var(--blue);background:#eef7ff;box-shadow:inset 0 0 0 1px var(--blue)}.qnav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.status-note{margin-top:18px;border-radius:13px;padding:14px 16px;background:#eef7ff;color:#244b70;font-weight:700}.estimator{display:none}.estimator.show{display:block}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field label{display:block;font-weight:850;color:var(--navy);margin-bottom:6px}.field input,.field select{width:100%;min-height:52px;padding:12px 14px;border:1px solid #c8d7e5;border-radius:11px;background:#fff}.results{display:none}.results.show{display:block}.pill{display:inline-block;background:#e8f6ec;color:#217b35;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:900}.compare{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.metric{border:1px solid var(--line);background:#f8fbfd;border-radius:15px;padding:18px}.metric strong{display:block;font-size:18px;color:var(--navy)}.metric .years{display:block;color:var(--muted);margin:5px 0}.metric .money{font-size:26px;font-weight:950;color:var(--green)}.legal{font-size:12px;color:#63778c}.rule{border:0;border-top:1px solid var(--line);margin:26px 0}
.snapshot-summary{margin:26px 0 5px;padding:22px;border-radius:16px;background:linear-gradient(145deg,#eef7ff,#f8fbfd);border:1px solid #d5e5f2}.snapshot-title{font-size:21px;font-weight:950;color:var(--navy);margin-bottom:12px}.snapshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.snapshot-grid div{background:#fff;border:1px solid #dbe6ef;border-radius:12px;padding:12px}.snapshot-grid span{display:block;font-size:12px;color:var(--muted)}.snapshot-grid strong{color:var(--navy)}
.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.contact-option{display:block;min-height:90px;padding:18px;border-radius:15px;border:1px solid #c9d8e7;background:#fff;color:var(--navy);font-weight:900;text-align:left;cursor:pointer;text-decoration:none}.contact-option:hover{border-color:var(--blue);background:#f1f8ff}.contact-option span{display:block;font-weight:600;color:var(--muted);font-size:13px;margin-top:4px}.primary-contact{box-shadow:0 10px 24px rgba(7,42,75,.08)}.inline-form{display:none;margin-top:20px}.inline-form.show{display:block}.consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#425b73;margin:12px 0}
.routing{display:none;margin-top:22px;background:linear-gradient(145deg,#061e36,#083a68);color:#fff;padding:28px;border-radius:20px}.routing.show{display:block}.routing h3{font-size:27px;margin:0 0 10px}.route-step{display:flex;gap:10px;margin:12px 0;align-items:center}.route-step i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#fff;color:var(--green);font-style:normal;font-weight:950}.dots{font-size:30px;letter-spacing:8px;color:var(--gold);animation:pulse 1.15s infinite}@keyframes pulse{50%{opacity:.3}}
.agent-match-section{background:linear-gradient(180deg,#f2f8fc,#fff);border-bottom:1px solid #dbe6ee}.agent-top-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;align-items:center}.success-kicker{color:var(--green);font-weight:950;letter-spacing:.05em}.agent-card{display:grid;grid-template-columns:90px 1fr;gap:18px;align-items:center;border:1px solid var(--line);border-radius:18px;padding:22px;background:#fff;box-shadow:var(--shadow)}.agent-card img{width:90px;height:90px;border-radius:50%;object-fit:cover;border:4px solid #e9f2fa}.agent-card h3{margin:0;color:var(--navy);font-size:25px}.agent-meta{font-size:14px;color:var(--muted)}.success{color:var(--green);font-weight:900}.agent-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.prep{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:18px}.prep div{border:1px solid #dce6ee;border-radius:13px;padding:14px;background:#f8fbfd}
.action-section{background:#fff}.action-panel{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:var(--shadow)}.action-buttons{display:grid;gap:10px}.secondary-guide{text-align:center;color:var(--navy);font-weight:800;margin-top:5px}
.faq{max-width:800px;margin:auto}.faq details{border-bottom:1px solid #dce5ee;padding:18px 0}.faq summary{font-size:20px;font-weight:850;color:var(--navy);cursor:pointer}.footer{background:#061a2b;color:#c7d1dc;padding:46px 0}.footer a{color:#dbe6f1}.footer-grid{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer nav{display:flex;gap:18px;flex-wrap:wrap}.footer-brand{color:#fff}.footer-micro{color:#9fb0c0}
.sticky-cta{display:none}.toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:#0c2944;color:#fff;padding:11px 17px;border-radius:10px;z-index:120;display:none}.toast.show{display:block}

/* Compact section reader */
[data-read-section]{position:relative}.reader-controls{position:absolute;right:12px;top:10px;z-index:12;display:flex;align-items:center;justify-content:flex-end;gap:5px}.reader-glasses,.reader-mini{width:36px;height:36px;border-radius:999px;border:1px solid rgba(6,46,86,.18);background:rgba(255,255,255,.96);color:var(--navy);display:grid;place-items:center;cursor:pointer;box-shadow:0 5px 16px rgba(5,34,61,.09)}.reader-glasses{font-size:19px;position:relative}.reader-mini{display:none;font-size:13px;font-weight:950}.reader-controls.active .reader-mini{display:grid}.reader-controls.active .reader-glasses{border-color:var(--green)}.reader-label{display:none;font-size:11px;color:var(--muted);background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:999px;padding:8px 10px;box-shadow:0 5px 16px rgba(5,34,61,.08)}.reader-controls.active .reader-label{display:block}.reader-glasses:after{content:"We all have a hard time reading from time to time. Let us read this to you.";position:absolute;right:0;bottom:46px;width:245px;padding:10px 12px;border-radius:10px;background:#071f37;color:#fff;font-size:12px;line-height:1.35;font-weight:700;opacity:0;pointer-events:none;transform:translateY(5px);transition:.15s;box-shadow:var(--shadow)}.reader-glasses:hover:after,.reader-glasses:focus-visible:after{opacity:1;transform:translateY(0)}.reader-speaking{outline:2px solid rgba(23,104,170,.20);outline-offset:-2px}.dark .reader-glasses,.dark .reader-mini{background:rgba(255,255,255,.95)}.reader-controls button:focus-visible,.btn:focus-visible,.choice:focus-visible,.contact-option:focus-visible,.text-cta:focus-visible{outline:3px solid #2d8bd1;outline-offset:3px}

/* Contact action sheet */
.action-sheet[hidden]{display:none}.action-sheet{position:fixed;inset:0;z-index:110;display:grid;align-items:end}.sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(2,18,32,.62);cursor:pointer}.sheet-panel{position:relative;width:min(620px,calc(100% - 22px));margin:0 auto 14px;padding:28px;border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.28);max-height:88vh;overflow:auto}.sheet-panel h2{font-size:32px;color:var(--navy);line-height:1.08;margin:8px 0 10px}.sheet-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:var(--navy);font-size:32px;cursor:pointer}.sheet-actions{display:grid;gap:10px;margin-top:20px}body.sheet-open{overflow:hidden}

@media(max-width:900px){.trustline{display:none}.build{display:none}.agent-top-grid,.action-panel{grid-template-columns:1fr}}
@media(max-width:800px){
  .sitebar-inner{min-height:66px}.brand-name{font-size:14px}.brand-sub{display:none}.brand-mark{width:34px;height:39px}.top-cta{font-size:12px;padding:8px 11px;min-height:42px}
  .hero{min-height:0;background:none;display:block}.hero:after{content:'';display:block;height:310px;background:url('../img/retirement-sunset.webp') center/cover no-repeat}.hero-copy{width:100%;padding:46px 0 30px}.hero h1{font-size:48px}.hero p{font-size:18px}
  .topics{grid-template-columns:1fr 1fr}.criteria{grid-template-columns:1fr}.choices,.fields,.compare,.contact-grid,.prep,.snapshot-grid{grid-template-columns:1fr}.section{padding:48px 0}
  .sticky-cta{display:block;position:fixed;left:0;right:0;bottom:0;background:rgba(5,34,61,.97);padding:10px 15px calc(10px + env(safe-area-inset-bottom));z-index:70}.sticky-cta .btn{width:100%;font-size:15px;min-height:54px}
  .footer{padding-bottom:108px}.agent-card{grid-template-columns:72px 1fr}.agent-card img{width:72px;height:72px}.agent-actions{display:grid}.agent-actions .btn{width:100%}
  .reader-controls{right:8px;top:8px}.reader-label{display:none!important}.reader-glasses,.reader-mini{width:34px;height:34px}.reader-glasses:after{display:none}
  .intro-block{padding-right:38px}
}
@media(max-width:480px){.wrap{width:min(100% - 24px,1120px)}.hero h1{font-size:41px}.topics{grid-template-columns:1fr}.qnav{flex-direction:column-reverse}.qnav .btn{width:100%}.card{padding:22px}.brand-name{font-size:13px}.top-cta{font-size:11px}.action-panel{padding:24px}.sheet-panel{padding:24px 18px}.sheet-panel h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
