.resource-section{margin:32px 0}.resource-links{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.resource-links>a{padding:20px 18px;text-decoration:none;border-left:1px solid var(--line)}.resource-links>a:first-child{border-left:0}.resource-links>a:hover{background:var(--surface)}.resource-links span{color:var(--muted);font-size:.875rem}.resource-links h3{font-size:1.2rem;line-height:1.3;margin:10px 0 8px}.resource-links p{color:var(--muted);font-size:1rem}.guide-links,.related{display:flex;gap:12px 24px;flex-wrap:wrap;margin:18px 0}.related{border-top:1px solid var(--line);padding-top:18px;font-size:.9375rem}.article li{margin:8px 0}.article ul{padding-left:22px}.tool-page{max-width:100%;margin-top:0}.tool-page h1{font-size:clamp(1.9rem,2.7vw,2.3rem);margin:0 0 10px}.tool-page .eyebrow{margin:0 0 6px}.tool-page .lead{font-size:1.125rem;max-width:780px;margin:0 0 18px}.tool-page>p:not(.lead):not(.eyebrow),.tool-page>h2{max-width:800px}.tool{padding:18px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);margin:16px 0}.tool-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tool-fields label{font-size:.9375rem;display:flex;flex-direction:column;gap:6px;min-width:0}.tool-fields input,.tool-fields select{width:100%;min-width:0;min-height:46px;padding:8px 10px;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.tool-fields input[type=date]{color-scheme:light}.dark .tool-fields input[type=date]{color-scheme:dark}.offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px}.offer-grid fieldset{margin:0;padding:14px;min-width:0;border:1px solid var(--line);border-radius:var(--radius)}.offer-grid legend{padding:0 8px;font-family:Archivo;font-weight:650}.tool-result{margin-top:16px;padding:14px 16px;background:var(--result);color:var(--result-ink);display:flex;flex-direction:column;gap:4px;border-radius:var(--radius)}.tool-result>span{font-size:.9375rem}.tool-result output{font-family:Archivo;font-size:2rem;line-height:1.2;font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.tool-result output.long-result{font-size:1.65rem}.comparison-verdict{border-left:4px solid var(--yellow);padding:12px 16px;margin-top:18px;min-height:90px}.comparison-verdict strong{font-family:Archivo;font-size:1.2rem}.comparison-verdict p{margin:6px 0 0}.tool-source{font-size:.9375rem;color:var(--muted);margin:14px 0!important}.offer-grid .hint{min-height:3em}.period-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.period-buttons button,.plain-button{min-height:44px;padding:8px 14px;max-width:100%;overflow-wrap:anywhere;background:var(--button-bg);color:var(--ink);border:1px solid var(--button-border)}.period-buttons button:enabled:hover,.plain-button:enabled:hover{border-color:var(--ink)}.history-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.history-summary output{font-size:1.65rem}.history-chart{margin:24px 0}.history-chart svg{width:100%;height:170px;overflow:visible}.history-chart polyline{fill:none;stroke:var(--ink);stroke-width:3;vector-effect:non-scaling-stroke}.history-chart circle{fill:var(--yellow);stroke:var(--ink);stroke-width:2}.history-chart .grid{stroke:var(--line);stroke-dasharray:3 5;fill:none}.history-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border-bottom:1px solid var(--line);margin-bottom:28px}.history-stats p{font-size:.9375rem;color:var(--muted)}.history-stats strong{display:block;color:var(--ink);font-weight:600;margin-top:5px}.data-table{max-height:440px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius);margin:14px 0 24px}.data-table table{border-collapse:collapse;width:100%;font-size:.9375rem}.data-table caption{text-align:left;padding:12px;background:var(--surface);color:var(--muted)}.data-table th,.data-table td{text-align:left;padding:10px 12px;border-top:1px solid var(--line);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.data-table thead th{background:var(--surface);position:sticky;top:0}.data-table tbody th{font-weight:400}.data-table td{white-space:normal}.article .data-table{max-width:800px}
.article{margin-top:0;display:flow-root}.article>.eyebrow:first-child{margin-top:0}.tool-page .comparison-verdict{margin:16px 0 0}
.mobile-nav{display:none}.catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);margin:20px 0 28px}.catalog>a{padding:18px 18px 18px 0;text-decoration:none;border-bottom:1px solid var(--line);min-width:0}.catalog>a:nth-child(even){padding-left:18px;border-left:1px solid var(--line)}.catalog>a:hover{background:var(--surface)}.catalog h2{margin:0 0 10px;font-size:1.25rem}.catalog p{margin:0 0 12px;color:var(--muted)}.catalog>a>span{font-size:.9375rem;text-decoration:underline;text-underline-offset:4px}.editorial-note,.rounding-note{padding:16px 18px;border-left:4px solid var(--yellow);background:var(--surface);margin:24px 0}.editorial-note h2,.rounding-note h2{margin:0 0 10px}.editorial-note p{margin:0}.tool-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 0}.sum-inputs{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.sum-inputs label,.provider-filter label{display:flex;flex-direction:column;gap:6px;font-size:.9375rem;min-width:0}.sum-inputs textarea{width:100%;min-width:0;resize:vertical;min-height:114px;max-height:320px;font:inherit;line-height:1.5;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px}.sum-inputs input,.provider-filter select,.month-select select{min-height:46px;padding:8px 10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);min-width:0;width:100%;border-radius:var(--radius)}.sum-inputs input[type=date]{color-scheme:light}.dark .sum-inputs input[type=date]{color-scheme:dark}.sum-inputs .hint{margin:10px 0 0}.sum-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sum-tool #sum-error{min-height:1.5em}.sum-tool .tool-actions{margin-top:12px}.sum-tool .action-feedback{margin-bottom:0}.provider-filter{margin:20px 0;max-width:460px}.provider-filter p{min-height:2.8em}.provider-list{border-top:1px solid var(--line)}.provider{border-bottom:1px solid var(--line);padding:22px 0;max-width:850px}.provider>div{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.provider h2{margin:0;font-size:1.4rem}.provider-label{border:1px solid var(--line);font-size:.875rem;padding:4px 8px}.provider p{margin:12px 0}.provider small{display:block;margin-top:10px}.month-select{display:flex;align-items:center;gap:12px;max-width:600px;margin:18px 0}.month-select label{flex-shrink:0;font-size:.9375rem}.monthly-section>p{max-width:800px;font-size:.9375rem;color:var(--muted)}.monthly-table{max-height:none}.monthly-table th:first-child{width:35%}.monthly-table small{display:block;font-size:.8125rem;margin-top:6px}.month-link{background:transparent;border:0;padding:4px 2px;min-height:44px;text-align:left;text-decoration:underline;text-underline-offset:4px;font:inherit;overflow-wrap:anywhere}textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}textarea[aria-invalid=true]{border-color:var(--error)}
@media(max-width:640px){.mobile-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1112px;padding:0 16px;margin:0 auto;gap:0;border-top:1px solid var(--line)}.mobile-nav a{font-size:.875rem;min-height:42px;display:flex;align-items:center;justify-content:center;padding:6px 2px;overflow-wrap:anywhere}.mobile-nav a+a{border-left:1px solid var(--line)}.catalog{grid-template-columns:1fr}.catalog>a,.catalog>a:nth-child(even){padding:16px 4px;border-left:0}.sum-inputs{grid-template-columns:1fr;gap:12px}.sum-inputs>div{display:grid;grid-template-columns:1fr;gap:4px}.sum-inputs textarea{min-height:102px}.sum-inputs .hint{font-size:.8125rem;margin-top:2px}.sum-summary{gap:8px}.sum-summary .tool-result{padding:10px;margin-top:12px}.sum-summary output{font-size:1.5rem}.sum-summary output.long-result{font-size:1.25rem}.sum-summary .tool-result>span{font-size:.875rem}.sum-tool .tool-actions{margin-top:10px}.provider>div{gap:8px}.provider-label{font-size:.8125rem}.month-select{align-items:stretch;flex-direction:column;gap:6px}.monthly-table th,.monthly-table td{font-size:.8125rem}.monthly-table small{font-size:.75rem}}

@media print{#print-report table{width:100%;border-collapse:collapse;font-size:10pt;margin-top:18pt}#print-report th,#print-report td{text-align:left;border-bottom:1px solid #ccd4dd;padding:8pt 5pt}#print-report thead{display:table-header-group}#print-report tr{break-inside:avoid}}
.amounts button:nth-child(n+7){border-top:1px solid var(--line)}.amounts button:nth-child(6n+1){border-left:0}
@media(min-width:641px){#history-form>.tool-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.amounts button:nth-child(3n+1){border-left:0}}
@media(min-width:641px) and (max-width:850px){nav{gap:12px}.header-inner{gap:14px}.brand{font-size:1.4rem}.preferences button{min-width:36px}nav a{font-size:.875rem}}
@media(max-width:640px){.resource-links,.offer-grid{grid-template-columns:1fr}.resource-links>a{border-left:0;border-top:1px solid var(--line);padding:16px 4px}.resource-links>a:first-child{border-top:0}.resource-links h3{margin:6px 0}.tool-page h1{font-size:1.85rem}.tool-page .lead{font-size:1.0625rem}.tool{padding:12px}.tool-fields{gap:12px}.offer-grid{gap:14px}.offer-grid fieldset{padding:10px}.history-summary{grid-template-columns:1fr;gap:0}.history-summary .tool-result{margin-top:10px;padding:10px 12px}.history-stats{grid-template-columns:1fr;gap:0}.history-stats p{margin:8px 0}.data-table th,.data-table td{padding:8px 6px;font-size:.875rem}.related{gap:14px}.comparison-verdict{padding:10px 12px}.guide-links{flex-direction:column}}
.tool .hint,.comparison-verdict p{overflow-wrap:anywhere}
.sum-tool~.data-table td:nth-child(2){white-space:pre-wrap;overflow-wrap:anywhere}.data-status{font-size:.875rem;color:var(--muted);margin-top:8px;max-width:600px}
.quote-handoff{padding:12px 0;display:flex;flex-wrap:wrap;gap:8px}.quote-handoff p{width:100%;margin:0}.quote-handoff .feedback{min-height:1.5em}.compare-mode-row{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}.compare-mode-row label{display:flex;flex-direction:column;gap:6px;font-size:.9375rem;min-width:0}.compare-mode-row select{min-height:46px;width:100%;min-width:0;padding:8px;color:var(--ink);background:var(--surface);border:1px solid var(--line)}.compare-mode-row .hint{margin:0}.tool #compare-carried:empty{display:none}.question-list{border:0;padding:0;margin:16px 0;min-width:0}.question-list legend{font-size:.9375rem;color:var(--muted)}.question-list label{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.question-list input,.note-choices input{width:20px;min-width:20px;height:20px;margin:2px 0;accent-color:var(--ink)}.question-list label span{overflow-wrap:anywhere}.purchase-checklist #checklist-intro{margin:14px 0}.note-choices{border:0;padding:0;margin:12px 0;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 10px}.note-choices legend{font-size:.9375rem;margin-bottom:6px}.note-choices label{display:flex;align-items:center;gap:8px;min-height:40px;font-size:.9375rem}.notes-tool .tool-result p{font-size:1rem;margin:0}.notes-tool .hint{margin:8px 0}.notes-tool #notes-error{min-height:1.5em}.notes-tool .tool-actions{margin-top:10px}.notes-tool .tool-fields{grid-template-columns:1fr}.notes-tool .tool-fields label{max-width:400px}.purchase-checklist .tool-actions{flex-wrap:wrap}.tool input:disabled{opacity:.55}
@media(max-width:640px){.compare-mode-row{grid-template-columns:1fr;gap:6px}.compare-mode-row .hint{font-size:.8125rem}.compare-mode-row select{font-size:.9375rem}.note-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 6px}.note-choices label{font-size:.875rem;gap:6px;min-height:36px}.note-choices label:last-child{grid-column:1/-1}.notes-tool .tool-result{margin-top:10px}.notes-tool .tool-result p{font-size:.9375rem}.quote-handoff button{width:100%}}
@media(max-width:640px){.history-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 8px}.history-summary .tool-result:first-child{grid-column:1/-1}.history-summary output{font-size:1.4rem}.period-buttons button{font-size:.875rem}}

/* A compact catalog makes all five core tools easier to scan. */
.context-chart{margin:24px 0;max-width:900px}.context-chart svg{width:100%;height:180px;overflow:visible}.context-chart polyline{fill:none;stroke:var(--ink);stroke-width:3;vector-effect:non-scaling-stroke}.context-chart .grid{stroke:var(--line);stroke-dasharray:3 5;fill:none}.context-chart .section-heading h2{margin:0}.context-chart .section-heading p{font-size:.9375rem}.annual-review{max-width:800px}.annual-review small{display:block;font-size:.75rem;color:var(--muted);margin-top:6px}.annual-review .data-table{max-height:none}.annual-review h3{font-size:1.1rem;margin:24px 0 8px}.article-index{display:flex;flex-wrap:wrap;gap:10px 20px;margin:16px 0;border-block:1px solid var(--line);padding:12px 0}.article-index a{font-size:.9375rem}.article-index~section{max-width:800px}.archive-audit{border:1px solid var(--line);border-radius:var(--radius);margin:16px 0}.archive-audit summary{padding:12px;font-size:1rem}.archive-audit .data-table{margin:0;border:0;border-radius:0;max-height:none}.current-insight{border-block:1px solid var(--line);padding:20px 0;margin:28px 0;max-width:850px}.current-insight p{margin:10px 0}.current-insight .section-heading{align-items:start;flex-direction:column;gap:4px}.monthly-section .month-select{flex-wrap:wrap}.monthly-section .month-select select{max-width:160px}.monthly-section .month-select p{flex-basis:100%;margin:0}
@media(max-width:640px){.context-chart svg{height:150px}.annual-review .data-table th,.annual-review .data-table td{font-size:.8125rem;padding:8px 5px}.annual-review small{font-size:.6875rem;overflow-wrap:anywhere}.article-index{margin-left:0;gap:8px 14px}.current-insight{padding:16px 0}.monthly-section .month-select select{max-width:none}#context-form .gold-fields>label:last-child{grid-column:1/-1}}
.gold-tool .gold-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gold-offers{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gold-offers fieldset{min-width:0;border:1px solid var(--line);padding:12px}.gold-offers legend{padding:0 6px}.gold-offers .tool-fields{grid-template-columns:1fr 1fr;gap:12px}.gold-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gold-results .tool-result{margin-top:14px;padding:12px}.gold-results output{font-size:clamp(1.3rem,2.4vw,1.85rem);overflow-wrap:anywhere}.gold-results output.long-result{font-size:1.25rem}.gold-tool>.hint{margin:8px 0;font-size:.875rem}.gold-tool .feedback:empty{display:none}.gold-tool .comparison-verdict{margin:12px 0 0}.gold-tool .tool-actions{margin-top:12px}.gold-tool .tool-fields label{overflow-wrap:anywhere}.gold-tool .tool-fields input{min-height:44px}
@media(max-width:640px){.gold-tool .gold-fields,.gold-offers .tool-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gold-offers{grid-template-columns:1fr;gap:10px}.gold-offers fieldset{padding:8px 10px}.gold-results{gap:8px}.gold-results .tool-result{padding:10px;margin-top:12px}.gold-results .tool-result>span{font-size:.8125rem;line-height:1.3}.gold-tool .tool-fields label{font-size:.875rem;gap:4px}.gold-tool .tool-fields input{font-size:1rem;padding:6px 8px}.gold-tool .tool-actions{gap:8px}.gold-tool .tool-actions button{font-size:.875rem}.gold-tool .comparison-verdict{font-size:.9375rem}.gold-tool #trip-detail,.gold-tool #tax-detail{font-size:.875rem}}
.tool-page .lead{margin-bottom:12px}.catalog{margin-top:14px}.catalog>a,.catalog>a:nth-child(even){padding-top:14px;padding-bottom:14px}.catalog h2{font-size:1.125rem;margin-bottom:6px}.catalog p{font-size:1rem;margin-bottom:8px}
@media(min-width:1000px){.catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog>a,.catalog>a:nth-child(even){padding-left:16px;padding-right:16px;border-left:1px solid var(--line)}.catalog>a:nth-child(3n+1){padding-left:0;border-left:0}}
@media(max-width:640px){.mobile-nav a{min-height:44px}.catalog>a,.catalog>a:nth-child(even){padding-top:12px;padding-bottom:12px}}
@media(min-width:641px) and (max-width:850px){.mobile-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1200px;padding:0 24px;margin:0 auto;gap:0;border-top:1px solid var(--line)}.mobile-nav a{font-size:.9375rem;min-height:44px;display:flex;align-items:center;justify-content:center;padding:6px 2px}.mobile-nav a+a{border-left:1px solid var(--line)}}

.analytics-popup{position:fixed;z-index:30;right:16px;bottom:max(16px,env(safe-area-inset-bottom));left:16px;margin:0 auto;padding:12px 16px 16px;max-width:420px;max-height:calc(100dvh - 32px);overflow:auto;color:var(--ink);background:var(--surface);border:1px solid var(--button-border);border-radius:12px;box-shadow:0 8px 32px #101e2e26;font-size:.9375rem;line-height:1.4}.analytics-popup.analytics-popup-top{top:max(12px,env(safe-area-inset-top));bottom:auto}.analytics-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.analytics-heading h2{font-size:1.0625rem;letter-spacing:-.01em}.analytics-heading button{display:grid;place-items:center;width:36px;height:36px;min-width:36px;border:0;background:transparent;border-radius:6px}.analytics-heading button:hover{background:var(--button-hover)}.analytics-heading svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.analytics-popup p{margin:4px 0 12px;overflow-wrap:anywhere}.analytics-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analytics-buttons button{min-width:0;min-height:44px;padding:8px;font-size:.9375rem}.footer-links #analytics-settings{border:0;background:transparent;box-shadow:none;padding:0;text-decoration:underline;text-underline-offset:4px;text-align:left}.analytics-sr-status{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(min-width:900px){.analytics-popup{left:auto;margin:0;max-width:390px}}@media(max-width:640px){.analytics-popup{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));padding:10px 12px 12px;font-size:.875rem}.analytics-heading button{height:32px;width:32px}.analytics-buttons{gap:8px}}@media print{.analytics-popup,#analytics-settings{display:none!important}}
