/* Phase 2 financial shell. Scoped to migrated pages; calculation surfaces remain owned by their existing styles. */
body.tv-financial-shell{--tvs-red:#c52a1d;--tvs-red-dark:#9f2017;--tvs-ink:#172033;--tvs-muted:#5c6679;--tvs-line:#e4e8ef;--tvs-soft:#f6f8fb;--tvs-white:#fff;--tvs-focus:#2563eb;color:var(--tvs-ink);background-color:#f8fafc}
body.tv-financial-shell.tv-nav-open{overflow:hidden}
body.tv-financial-shell .tv-skip-link{position:fixed;z-index:10000;top:10px;left:10px;transform:translateY(-160%);padding:10px 14px;border:2px solid var(--tvs-focus);border-radius:8px;background:#fff;color:#172033;font:750 14px/1.2 Inter,ui-sans-serif,system-ui;text-decoration:none;box-shadow:0 8px 24px rgba(15,23,42,.18)}
body.tv-financial-shell .tv-skip-link:focus{transform:translateY(0)}
body.tv-financial-shell .tv-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.tv-financial-shell .tv-global-header{position:relative;z-index:100;border-bottom:1px solid var(--tvs-line);background:rgba(255,255,255,.98);color:var(--tvs-ink);box-shadow:0 1px 3px rgba(15,23,42,.04)}
body.tv-financial-shell .tv-global-inner{width:min(1180px,calc(100% - 40px));min-height:72px;margin:auto;display:flex;align-items:center;gap:24px}
body.tv-financial-shell .tv-brand{display:inline-flex;align-items:center;gap:10px;color:var(--tvs-ink);font:700 20px/1.1 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;text-decoration:none;white-space:nowrap}
body.tv-financial-shell .tv-brand b{color:var(--tvs-red)}
body.tv-financial-shell .tv-brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--tvs-red);color:#fff;font-size:12px;letter-spacing:-.03em}
body.tv-financial-shell .tv-desktop-nav{display:flex;align-items:center;gap:2px;margin-left:auto}
body.tv-financial-shell .tv-menu{position:relative}
body.tv-financial-shell .tv-menu>summary{list-style:none;min-height:44px;display:flex;align-items:center;padding:0 12px;border-radius:8px;color:#3d4759;font:650 14px/1 Inter,ui-sans-serif,system-ui;cursor:pointer}
body.tv-financial-shell .tv-menu>summary::-webkit-details-marker{display:none}
body.tv-financial-shell .tv-menu>summary::after{content:"";width:6px;height:6px;margin-left:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px)}
body.tv-financial-shell .tv-menu>summary:hover,body.tv-financial-shell .tv-menu[open]>summary{background:var(--tvs-soft);color:var(--tvs-ink)}
body.tv-financial-shell .tv-menu>summary[data-tv-current]{color:var(--tvs-red);box-shadow:inset 0 -2px var(--tvs-red)}
body.tv-financial-shell .tv-menu-panel,body.tv-financial-shell .tv-mega{position:absolute;top:calc(100% + 10px);right:0;width:280px;padding:12px;border:1px solid var(--tvs-line);border-radius:12px;background:#fff;box-shadow:0 18px 48px rgba(15,23,42,.14)}
body.tv-financial-shell .tv-mega-tools{right:-370px;width:min(920px,calc(100vw - 40px));display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
body.tv-financial-shell .tv-mega-group{padding:10px}
body.tv-financial-shell .tv-mega-title{display:block;margin:0 0 7px;color:#737c8d;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
body.tv-financial-shell .tv-mega-link,body.tv-financial-shell .tv-menu-panel a{display:block;min-height:44px;padding:10px;border-radius:8px;color:#303a4b;font:600 13px/1.25 Inter,ui-sans-serif,system-ui;text-decoration:none}
body.tv-financial-shell .tv-mega-link:hover,body.tv-financial-shell .tv-menu-panel a:hover{background:var(--tvs-soft);color:var(--tvs-red)}
body.tv-financial-shell .tv-header-cta,body.tv-financial-shell .tv-footer-cta-link,body.tv-financial-shell .tv-mobile-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:1px solid var(--tvs-red);border-radius:9px;background:var(--tvs-red);color:#fff!important;font:750 13px/1 Inter,ui-sans-serif,system-ui;text-decoration:none!important;white-space:nowrap}
body.tv-financial-shell .tv-header-cta:hover,body.tv-financial-shell .tv-footer-cta-link:hover,body.tv-financial-shell .tv-mobile-cta:hover{background:var(--tvs-red-dark);border-color:var(--tvs-red-dark)}
body.tv-financial-shell .tv-mobile-trigger,body.tv-financial-shell .tv-mobile-panel{display:none}
body.tv-financial-shell .tv-footer{border-top:1px solid var(--tvs-line);background:#fff;color:var(--tvs-ink)}
body.tv-financial-shell .tv-footer-inner{width:min(1180px,calc(100% - 40px));margin:auto;padding:48px 0 24px}
body.tv-financial-shell .tv-footer-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:24px 28px;margin-bottom:38px;border:1px solid var(--tvs-line);border-radius:14px;background:var(--tvs-soft)}
body.tv-financial-shell .tv-footer-cta h2{margin:3px 0 5px;color:var(--tvs-ink);font-size:22px;line-height:1.25}
body.tv-financial-shell .tv-footer-cta p{margin:0;color:var(--tvs-muted)}
body.tv-financial-shell .tv-footer-cta-eyebrow{color:var(--tvs-red)!important;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
body.tv-financial-shell .tv-footer-grid{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(180px,1.1fr) repeat(3,minmax(140px,1fr));gap:clamp(24px,3vw,40px)}
body.tv-financial-shell .tv-footer-brand p{color:var(--tvs-muted);font-size:14px;line-height:1.6}
body.tv-financial-shell .tv-footer-trust{font-size:12px!important}
body.tv-financial-shell .tv-footer-heading{margin:2px 0 10px;color:var(--tvs-ink);font-size:13px;font-weight:800}
body.tv-financial-shell .tv-footer-column a{display:flex;align-items:center;min-height:36px;padding:6px 0;color:var(--tvs-muted);font-size:13px;line-height:1.35;text-decoration:none}
body.tv-financial-shell .tv-footer-column a:hover{color:var(--tvs-red);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
body.tv-financial-shell .tv-footer-accordion-toggle{display:none}
body.tv-financial-shell .tv-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:36px;padding-top:20px;border-top:1px solid var(--tvs-line);color:#747d8d;font-size:12px}
body.tv-financial-shell :is(a,button,summary,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--tvs-focus) 45%,transparent);outline-offset:3px}
@media(max-width:1080px){body.tv-financial-shell .tv-global-inner{gap:12px}body.tv-financial-shell .tv-desktop-nav{display:none}body.tv-financial-shell .tv-header-cta{margin-left:auto}body.tv-financial-shell .tv-mobile-trigger{display:grid;width:44px;height:44px;place-content:center;gap:4px;border:1px solid var(--tvs-line);border-radius:9px;background:#fff;color:var(--tvs-ink);cursor:pointer}body.tv-financial-shell .tv-mobile-trigger span[aria-hidden]{display:block;width:20px;height:2px;background:currentColor}body.tv-financial-shell .tv-mobile-panel{position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 72px);overflow:auto;border-top:1px solid var(--tvs-line);border-bottom:1px solid var(--tvs-line);background:#fff;box-shadow:0 16px 36px rgba(15,23,42,.12)}body.tv-financial-shell .tv-mobile-panel:not([hidden]){display:block}body.tv-financial-shell .tv-mobile-panel nav{width:min(720px,calc(100% - 32px));margin:auto;padding:16px 0 24px}body.tv-financial-shell .tv-mobile-cta{width:100%;margin-bottom:10px}body.tv-financial-shell .tv-mobile-category-toggle{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 4px;border:0;border-bottom:1px solid var(--tvs-line);background:#fff;color:var(--tvs-ink);font-weight:750;text-align:left}body.tv-financial-shell .tv-mobile-category-panel{padding:4px 0 10px}body.tv-financial-shell .tv-mobile-category-panel a,body.tv-financial-shell .tv-mobile-direct a{display:flex;align-items:center;min-height:44px;padding:8px 12px;color:var(--tvs-muted);font-weight:600;text-decoration:none}body.tv-financial-shell .tv-mobile-direct{border-top:1px solid var(--tvs-line);margin-top:8px;padding-top:8px}body.tv-financial-shell .tv-footer-grid{grid-template-columns:1.2fr repeat(2,minmax(0,1fr))}body.tv-financial-shell .tv-footer-brand{grid-row:span 2}}
@media(max-width:700px){body.tv-financial-shell .tv-global-inner,body.tv-financial-shell .tv-footer-inner{width:min(100% - 28px,1180px)}body.tv-financial-shell .tv-global-inner{min-height:64px}body.tv-financial-shell .tv-header-cta{display:none}body.tv-financial-shell .tv-mobile-panel{max-height:calc(100vh - 64px)}body.tv-financial-shell .tv-footer-inner{padding-top:32px}body.tv-financial-shell .tv-footer-cta{display:block;padding:22px 20px;margin-bottom:24px}body.tv-financial-shell .tv-footer-cta-link{width:100%;margin-top:16px}body.tv-financial-shell .tv-footer-grid{display:block}body.tv-financial-shell .tv-footer-brand{padding-bottom:18px}body.tv-financial-shell .tv-footer-column{border-top:1px solid var(--tvs-line)}body.tv-financial-shell .tv-footer-heading{display:none}body.tv-financial-shell .tv-footer-accordion-toggle{display:flex;width:100%;min-height:48px;align-items:center;justify-content:space-between;padding:0;border:0;background:#fff;color:var(--tvs-ink);font-weight:800;text-align:left}body.tv-financial-shell .tv-footer-accordion-panel{padding:0 0 12px}body.tv-financial-shell .tv-footer-accordion-panel[hidden]{display:none}body.tv-financial-shell .tv-footer-column a{min-height:44px;display:flex;align-items:center;padding:6px 2px}body.tv-financial-shell .tv-footer-bottom{display:block}body.tv-financial-shell .tv-footer-bottom span{display:block;margin-top:8px}}
@media(prefers-reduced-motion:reduce){body.tv-financial-shell *,body.tv-financial-shell *::before,body.tv-financial-shell *::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
