/* Shared presentation and accessibility rules for US English and Spanish pages. */
:root {
  --us-source-bg: #eff6ff;
  --us-source-border: rgba(37, 99, 235, .22);
  --us-source-link: #1d4ed8;
}



.editorial-note{
  max-width:760px;
  margin:20px auto 0;
  padding:12px 16px;
  border:1px solid rgba(37,99,235,.22);
  border-radius:8px;
  background:#eff6ff;
  color:#596074;
  font-size:12px;
  line-height:1.55;
  text-align:center;
}
.editorial-note a{
  color:#1d4ed8;
  text-decoration:underline;
  text-underline-offset:2px;
}

:where(a, button, input, select, [role="button"]):focus-visible {
  outline: 3px solid rgba(37, 99, 235, .35);
  outline-offset: 3px;
}

.skip-link{position:fixed;top:12px;left:16px;z-index:10000;transform:translateY(-160%);padding:10px 16px;border-radius:7px;background:#0f172a;color:#fff!important;font:700 14px/1.2 Manrope,system-ui,sans-serif;text-decoration:none!important}
.skip-link:focus{transform:translateY(0);outline:3px solid #2563eb;outline-offset:2px}

.visually-hidden {
  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;
}

.field-label {
  width: 100%;
}

.field select {
  width: 100%;
  padding: 9px 12px;
  background: var(--paper, #f8fafc);
  border: 1.5px solid var(--rule, #e2e8f0);
  border-radius: var(--r, 8px);
  color: var(--ink, #0f172a);
  font-family: var(--mono, monospace);
  font-size: 14px;
}

.methodology-trigger[role="button"],
.faq-q[role="button"] {
  border-radius: 6px;
}

.content-link,
.ec-body a,
.meth-note a,
.faq-a a {
  color: var(--blue2, #1d4ed8);
  text-decoration: underline;
  text-decoration-color: rgba(37, 99, 235, .35);
  text-underline-offset: 2px;
}

.content-link:hover,
.ec-body a:hover,
.meth-note a:hover,
.faq-a a:hover {
  color: var(--blue, #2563eb);
  text-decoration-color: currentColor;
}

.official-sources {
  margin-top: 20px;
  padding: 18px 20px;
  background: var(--us-source-bg);
  border: 1px solid var(--us-source-border);
  border-radius: var(--r, 8px);
  color: var(--ink3, #64748b);
  font-size: 12px;
  line-height: 1.75;
  text-align: center;
}

.official-sources strong {
  display: block;
  margin-bottom: 6px;
  color: var(--ink, #0f172a);
  text-align: center;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.official-sources a,
.official-source-link {
  color: var(--us-source-link);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: rgba(37, 99, 235, .35);
  text-underline-offset: 2px;
}

.official-sources a:hover,
.official-source-link:hover {
  text-decoration-color: currentColor;
}

.estimate-note {
  margin: 12px 0 16px;
  padding: 10px 12px;
  background: var(--paper2, #f1f5f9);
  border-left: 3px solid var(--blue, #2563eb);
  color: var(--ink3, #64748b);
  font-size: 11px;
  line-height: 1.6;
}

.field-error {
  margin-top: 5px;
  color: var(--red, #dc2626);
  font-size: 11px;
  font-weight: 600;
}

[aria-invalid="true"] {
  border-color: var(--red, #dc2626) !important;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* Shared article layout */
html.us-article *,html.us-article *::before,html.us-article *::after{box-sizing:border-box;margin:0;padding:0}
html.us-article{scroll-behavior:smooth;}
html.us-article body{background:#f8fafc;color:#0f1117;font-family:'Manrope',sans-serif;font-size:15px;line-height:1.6;overflow-x:hidden;}
html.us-article{
  --blue:#2563eb;--blue2:#1d4ed8;--blue3:#60a5fa;
  --ink:#0f1117;--ink2:#3a3f4d;--ink3:#7a8099;--ink4:#b0b6c8;
  --paper:#f8fafc;--paper2:#e8edf5;--white:#fff;--rule:#dde3ed;
  --navy:#0a1628;--green:#16a34a;--red:#dc2626;--amber:#d97706;
  --sans:'Manrope',sans-serif;
  --mono:'DM Mono',monospace;
  --r:8px;--r2:14px;
}
/* HEADER */
html.us-article .site-header{background:#0a1628;border-bottom:1px solid rgba(255,255,255,.08);padding:14px 0;position:sticky;top:0;z-index:200;}
html.us-article .hd-inner{max-width:1100px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;}
html.us-article .logo{font-family:'Manrope',sans-serif;font-size:18px;font-weight:800;color:#fff;text-decoration:none;}
html.us-article .logo em{color:#2563eb;font-style:normal;}
html.us-article .hd-nav a{font-size:13px;font-weight:500;color:#cbd5e1!important;text-decoration:none;}
html.us-article .hd-nav a:hover{color:#fff;}
/* COOKIE */
html.us-article .cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#0a1628;padding:16px 24px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;font-size:13px;}
html.us-article .cookie-banner p{max-width:560px;text-align:center;color:rgba(255,255,255,.7);}
html.us-article .cookie-banner a{color:#fff;text-decoration:underline;}
html.us-article .cookie-btn{padding:8px 20px;border-radius:40px;font-size:13px;font-weight:700;cursor:pointer;border:none;}
html.us-article .cookie-accept{background:#2563eb;color:#fff;}
html.us-article .cookie-reject{background:transparent;color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.3)!important;}
html.us-article .cookie-buttons{display:flex;gap:8px;}
@media(max-width:600px){html.us-article .cookie-banner{flex-direction:column;text-align:center;}}
/* HERO */
html.us-article .hero{padding:64px 24px 52px;border-bottom:1px solid rgba(255,255,255,.08);text-align:center;background:#0a1628;}
html.us-article .hero-kicker{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#2563eb;margin-bottom:16px;display:flex;align-items:center;justify-content:center;gap:8px;}
html.us-article .hero-kicker::before,html.us-article .hero-kicker::after{content:'';display:inline-block;width:24px;height:1px;background:#2563eb;}
html.us-article .hero h1{font-family:'Manrope',sans-serif;font-size:clamp(30px,4vw,56px);font-weight:800;line-height:1.08;letter-spacing:-.02em;color:#fff;margin-bottom:20px;}
html.us-article .hero h1 em{font-style:italic;color:#2563eb;}
html.us-article .hero-lead{font-size:17px;color:rgba(255,255,255,.7);line-height:1.7;max-width:600px;margin:0 auto 28px;}
html.us-article .hero-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
html.us-article .pill{font-size:12px;font-weight:600;color:rgba(255,255,255,.65);background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:5px 12px;}
/* LAYOUT */
html.us-article .wrap{max-width:1100px;margin:0 auto;padding:0 24px;}
html.us-article .page-layout{display:grid;grid-template-columns:1fr 300px;gap:40px;padding:52px 0 80px;align-items:start;}
@media(max-width:900px){
  html.us-article .page-layout{display:block;padding:32px 0 40px;}
  html.us-article .page-layout > .article{display:block;margin-bottom:32px;}
  html.us-article .page-layout > .sidebar{display:block;clear:both;}
}
@media(max-width:560px){html.us-article .wrap{padding:0 16px;}}
/* ARTICLE */
html.us-article .article h2{font-family:'Manrope',sans-serif;font-size:26px;font-weight:800;color:#0f1117;margin:40px 0 14px;letter-spacing:-.02em;text-align:center;}
html.us-article .article h3{text-align:center;}
html.us-article .article{max-width:100%;text-align:center;}html.us-article .article h2:first-child{margin-top:0;}
html.us-article .article h3{font-size:16px;font-weight:700;color:#0f1117;margin:28px 0 10px;}
html.us-article .article p{font-size:15px;color:#3a3f4d;line-height:1.8;margin-bottom:14px;}
html.us-article .article p a{color:#1d4ed8;text-decoration:underline;text-underline-offset:3px;}
html.us-article .article strong{color:#0f1117;font-weight:700;}
/* EXAMPLE BOX */
html.us-article .example-box{background:#fff;border:1px solid #dde3ed;border-left:3px solid #2563eb;border-radius:0 14px 14px 0;padding:20px 24px;margin:20px 0;}
html.us-article .ex-label{font-family:'DM Mono',monospace;font-size:10px;color:#1d4ed8;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;text-align:center;}
html.us-article .ex-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid #dde3ed;font-size:14px;color:#3a3f4d;}
html.us-article .ex-row:last-child{border-bottom:none;font-weight:700;color:#0f1117;}
html.us-article .ex-row span:last-child{font-family:'DM Mono',monospace;font-size:13px;white-space:normal;text-align:right;}
html.us-article .ex-neg,html.us-article .ex-pos{color:#0f1117;}
/* TABLES */
html.us-article .table-wrap{width:100%;overflow-x:auto;-webkit/overflow-scrolling:touch;margin:20px 0;}
html.us-article .data-table{width:100%;min-width:320px;border-collapse:collapse;font-size:14px;}
html.us-article .data-table th{background:#e8edf5;font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#7a8099;padding:10px 14px;text-align:center;border-bottom:2px solid #dde3ed;white-space:nowrap;}
html.us-article .data-table td{padding:11px 14px;border-bottom:1px solid #dde3ed;color:#3a3f4d;vertical-align:top;text-align:center;word-break:break-word;}
html.us-article .data-table tr:last-child td{border-bottom:none;}
html.us-article .data-table td:first-child{text-align:center;}
@media(max-width:600px){
  html.us-article .data-table{table-layout:fixed;font-size:12px;}
  html.us-article .data-table th,html.us-article .data-table td{padding:8px 8px;white-space:normal;word-break:break-word;}
}
html.us-article .data-table .good,html.us-article .data-table .bad,html.us-article .data-table .mid{color:#0f1117;font-weight:700;}
html.us-article .data-table .hl{background:rgba(37,99,235,.07);font-weight:700;}
/* TWO-COL CARDS */
html.us-article .two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0;}
@media(max-width:600px){html.us-article .two-col{grid-template-columns:1fr;}}
html.us-article .col-card{background:#fff;border:1px solid #dde3ed;border-radius:14px;padding:20px;text-align:center;}
html.us-article .col-card h3{font-family:'Manrope',sans-serif;font-size:17px;font-weight:800;margin-bottom:12px;color:#0f1117;}
html.us-article .col-card ul{display:block;text-align:center;margin:0 auto;padding:0;list-style:none;}
html.us-article .col-card ul li{font-size:13px;color:#3a3f4d;line-height:1.8;padding-left:0;}
html.us-article .col-card ul li::before{content:none;}
/* VERDICT */
html.us-article .verdict{background:rgba(37,99,235,.06);border:1px solid rgba(37,99,235,.18);border-radius:14px;padding:20px 24px;margin:28px 0;}
html.us-article .verdict-label{font-family:'DM Mono',monospace;font-size:10px;color:#1d4ed8;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;text-align:center;}
html.us-article .verdict p{font-size:15px;color:#3a3f4d;line-height:1.7;margin:0;}
/* FAQ */
html.us-article .faq-section{margin-top:40px;}
html.us-article .faq-section h2{text-align:center;}
html.us-article .faq-item{border-bottom:1px solid #dde3ed;}
html.us-article .faq-item summary{font-size:15px;font-weight:600;color:#0f1117;padding:16px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;}
html.us-article .faq-item summary::after{content:'+';font-size:20px;color:#2563eb;flex-shrink:0;transition:transform .2s;}
html.us-article .faq-item[open] summary::after{transform:rotate(45deg);}
html.us-article .faq-body{font-size:14px;color:#3a3f4d;line-height:1.8;padding:0 0 16px;text-align:left;}
html.us-article .faq-body a{color:#1d4ed8;text-decoration:underline;text-underline-offset:3px;}
/* SIDEBAR */
html.us-article .sidebar{display:flex;flex-direction:column;gap:16px;text-align:center;}
@media(min-width:901px){html.us-article .sidebar{position:sticky;top:90px;align-self:start;}}
@media(max-width:900px){
  html.us-article .sidebar{position:static !important;top:auto !important;display:grid!important;grid-auto-flow:column;grid-auto-columns:minmax(270px,calc(100vw - 48px));grid-template-columns:none;overflow-x:auto;gap:12px;padding:0 4px 10px;margin:0 -4px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
  html.us-article .sidebar::-webkit-scrollbar{display:none;}
  html.us-article .side-card{display:flex;min-height:230px;flex-direction:column;scroll-snap-align:start;}
  html.us-article .side-card h3{min-height:48px;margin-bottom:8px;}
  html.us-article .side-card > p{margin-top:auto;}
  html.us-article .side-card > .side-btn{margin-bottom:auto;}
  html.us-article .side-card > .side-links{flex:1;justify-content:center;}
  html.us-article .side-card:has(> .side-btn + .side-btn){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:48px minmax(0,1fr) auto;gap:0 8px;}
  html.us-article .side-card:has(> .side-btn + .side-btn) h3{grid-column:1 / -1;}
  html.us-article .side-card:has(> .side-btn + .side-btn) > p{grid-column:1 / -1;align-self:center;margin:0!important;}
  html.us-article .side-card:has(> .side-btn + .side-btn) > .side-btn{grid-row:3;min-width:0;margin:0!important;padding:10px 8px;font-size:12px;line-height:1.2;white-space:normal;}
  html.us-article .side-card:has(> .side-btn + .side-btn) > .side-btn:first-of-type{grid-column:1;}
  html.us-article .side-card:has(> .side-btn + .side-btn) > .side-btn + .side-btn{grid-column:2;}
  html.us-article .side-card h3,html.us-article .side-card p,html.us-article .side-links,html.us-article .side-btn{text-align:center;}
}
html.us-article .side-card{background:#fff;border:1px solid #dde3ed;border-radius:14px;padding:20px;box-shadow:0 1px 3px rgba(0,0,0,.07);}
html.us-article .side-card h3{font-family:'Manrope',sans-serif;font-size:17px;font-weight:800;color:#2563eb;margin-bottom:8px;}
html.us-article .side-card p{font-size:13px;color:#7a8099;line-height:1.6;margin-bottom:14px;}
html.us-article .side-btn{display:block;text-align:center;background:#2563eb;color:#fff;font-weight:700;font-size:13px;padding:10px 16px;border-radius:8px;text-decoration:none;margin-bottom:6px;}
html.us-article .side-btn.outline{background:transparent;border:1px solid #dde3ed;color:#3a3f4d;}
html.us-article .side-links{display:flex;flex-direction:column;gap:6px;margin-top:4px;text-align:center;}
html.us-article .side-links a{font-size:13px;color:#3a3f4d;text-decoration:none;padding:7px 10px;border-radius:8px;background:#e8edf5;display:flex;justify-content:center;align-items:center;text-align:center;}
html.us-article .side-links a:hover{background:#dde3ed;}
/* FOOTER */
html.us-article footer{background:#0a1628;color:rgba(255,255,255,.5);padding:40px 0;text-align:center;}
html.us-article .footer-inner{max-width:1100px;margin:0 auto;padding:0 24px;display:flex;flex-direction:column;align-items:center;gap:16px;}
html.us-article .footer-logo{font-weight:800;font-size:18px;color:#fff;}
html.us-article .footer-logo em{color:#2563eb;font-style:normal;}
html.us-article .footer-links{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;}
html.us-article .footer-links a{font-size:12px;color:rgba(255,255,255,.5);text-decoration:none;font-weight:500;}
html.us-article .footer-links a:hover{color:#fff;}
html.us-article .footer-disc{font-size:11px;color:rgba(255,255,255,.25);max-width:700px;line-height:1.7;border-top:1px solid rgba(255,255,255,.08);padding-top:16px;}
@media(max-width:900px){
  html.us-article .article h2,html.us-article .article h3,html.us-article .article p,html.us-article .verdict p,html.us-article .faq-section h2{text-align:center;}
  html.us-article .side-card{text-align:center;}
  html.us-article .side-links a{justify-content:center;}
  html.us-article .faq-item summary{text-align:left;}
  html.us-article .faq-body{text-align:left;}
  html.us-article .ex-row{text-align:left;}
}


html.us-article .official-sources h2,
html.us-glossary .official-sources h2 {
  margin: 0 0 8px;
  color: var(--ink, #0f172a);
  font-family: var(--sans, 'Manrope', sans-serif);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1.4;
  text-align: left;
  text-transform: uppercase;
}

/* Shared calculator layout */
:where(html.us-calculator) *,:where(html.us-calculator) *::before,:where(html.us-calculator) *::after{box-sizing:border-box;margin:0;padding:0}
html.us-calculator{scroll-behavior:smooth;-webkit/text-size-adjust:100%}
html.us-calculator body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.6;min-height:100vh;}
:where(html.us-calculator) .site-header{background:var(--navy);padding:14px 0;position:sticky;top:0;z-index:200;border-bottom:1px solid rgba(255,255,255,.06);}
:where(html.us-calculator) .hd-inner{max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
:where(html.us-calculator) .logo{font-family:var(--sans);font-size:18px;font-weight:900;color:var(--white);letter-spacing:-.02em;text-decoration:none;}
:where(html.us-calculator) .logo em{color:var(--blue3);font-style:normal;}
:where(html.us-calculator) .hd-nav a:hover{color:var(--white);}
:where(html.us-calculator) .hd-nav a{color:#cbd5e1!important;}
:where(html.us-calculator) .wrap{max-width:1200px;margin:0 auto;padding:0 24px;}
:where(html.us-calculator) .hero{background:var(--navy);padding:72px 0 56px;text-align:center;position:relative;overflow:hidden;}
:where(html.us-calculator) .hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(37,99,235,.25) 0%,transparent 70%);pointer-events:none;}
:where(html.us-calculator) .hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(59,130,246,.4),transparent);}
:where(html.us-calculator) .hero-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--blue3);margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:12px;}
:where(html.us-calculator) .hero-eyebrow::before,:where(html.us-calculator) .hero-eyebrow::after{content:'';display:inline-block;width:32px;height:1px;background:var(--blue3);}
:where(html.us-calculator) .hero h1 span{color:var(--blue3);}
:where(html.us-calculator) .hero-lead{font-size:17px;color:rgba(255,255,255,.65);line-height:1.7;max-width:580px;margin:0 auto 32px;font-weight:500;}
:where(html.us-calculator) .hero-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
:where(html.us-calculator) .chip{font-size:12px;font-weight:700;color:rgba(255,255,255,.75);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:6px;padding:5px 12px;letter-spacing:.02em;}
:where(html.us-calculator) .calc-section{padding:48px 0 0;}
:where(html.us-calculator) .panel{background:var(--white);border:1px solid var(--rule);border-radius:var(--r2);box-shadow:var(--shadow);}
:where(html.us-calculator) .panel-head{padding:18px 24px;border-bottom:1px solid var(--rule);display:flex;align-items:center;gap:10px;background:var(--navy);border-radius:var(--r2) var(--r2) 0 0;}
:where(html.us-calculator) .panel-head h2{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.7);}
:where(html.us-calculator) .panel-dot{width:8px;height:8px;border-radius:50%;background:var(--blue3);flex-shrink:0;}
:where(html.us-calculator) .panel-body{padding:24px;}
:where(html.us-calculator) .input-section{margin-bottom:24px;}
:where(html.us-calculator) .input-section:last-child{margin-bottom:0;}
:where(html.us-calculator) .input-section-title{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue2);padding-bottom:10px;margin-bottom:14px;border-bottom:2px solid var(--blue-bg);}
:where(html.us-calculator) .field{margin-bottom:12px;}
:where(html.us-calculator) .field:last-child{margin-bottom:0;}
:where(html.us-calculator) .field-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;}
:where(html.us-calculator) .field-label span{font-size:13px;font-weight:600;color:var(--ink2);}
:where(html.us-calculator) .field-label em{font-style:normal;font-size:11px;font-family:var(--mono);color:var(--ink4);}
:where(html.us-calculator) .input-wrap{position:relative;display:flex;align-items:center;}
:where(html.us-calculator) .input-prefix,:where(html.us-calculator) .input-suffix{position:absolute;font-family:var(--mono);font-size:13px;color:var(--ink4);pointer-events:none;user-select:none;}
:where(html.us-calculator) .input-prefix{left:12px;}
:where(html.us-calculator) .input-suffix{right:12px;}
:where(html.us-calculator) input[type=number]::-webkit/outer-spin-button,:where(html.us-calculator) input[type=number]::-webkit/inner-spin-button{-webkit/appearance:none;}
:where(html.us-calculator) .has-prefix input[type=number]{padding-left:26px;}
:where(html.us-calculator) .has-suffix input[type=number]{padding-right:34px;}
:where(html.us-calculator) .results-panel{position:sticky;top:72px;}
:where(html.us-calculator) .verdict.good{background:var(--green-bg);color:var(--green);border:1.5px solid rgba(22,163,74,.2);}
:where(html.us-calculator) .verdict.warn{background:var(--amber-bg);color:var(--amber);border:1.5px solid rgba(217,119,6,.2);}
:where(html.us-calculator) .verdict.bad{background:var(--red-bg);color:var(--red);border:1.5px solid rgba(220,38,38,.2);}
:where(html.us-calculator) .affiliate{background:var(--navy);border-radius:var(--r2);padding:18px;color:var(--white);}
:where(html.us-calculator) .affiliate p{font-size:12px;color:rgba(255,255,255,.55);margin-bottom:14px;line-height:1.5;}
:where(html.us-calculator) .btn-aff{display:block;width:100%;text-align:center;background:var(--blue);color:var(--white);font-family:var(--sans);font-size:13px;font-weight:800;padding:11px 16px;border-radius:var(--r);text-decoration:none;letter-spacing:.02em;transition:background .15s;}
:where(html.us-calculator) .btn-aff:hover{background:var(--blue2);}
:where(html.us-calculator) .explainer{padding:72px 0;}
:where(html.us-calculator) .section-eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--blue);margin-bottom:14px;text-align:center;}
:where(html.us-calculator) .section-title{font-size:clamp(28px,4vw,46px);font-weight:900;color:var(--ink);line-height:1.08;letter-spacing:-.03em;margin-bottom:14px;text-align:center;}
:where(html.us-calculator) .section-title span{color:var(--blue);}
:where(html.us-calculator) .section-lead{font-size:16px;color:var(--ink3);line-height:1.7;max-width:560px;margin:0 auto 52px;text-align:center;font-weight:500;}
:where(html.us-calculator) .explain-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;}
:where(html.us-calculator) .explain-card{background:var(--white);border:1px solid var(--rule);border-radius:var(--r2);padding:26px;box-shadow:var(--shadow);}
:where(html.us-calculator) .ec-num{font-family:var(--mono);font-size:11px;color:var(--blue);letter-spacing:.1em;margin-bottom:10px;text-align:center;font-weight:600;}
:where(html.us-calculator) .ec-title{font-size:18px;font-weight:800;color:var(--ink);margin-bottom:10px;text-align:center;letter-spacing:-.02em;}
:where(html.us-calculator) .ec-body{font-size:13px;color:var(--ink3);line-height:1.75;text-align:center;font-weight:500;}
:where(html.us-calculator) .faq-section{padding:0 0 80px;}
:where(html.us-calculator) .faq-list{margin-top:40px;}
:where(html.us-calculator) .faq-item{border-top:1px solid var(--rule);padding:22px 0;}
:where(html.us-calculator) .faq-item:last-child{border-bottom:1px solid var(--rule);}
:where(html.us-calculator) .faq-q{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:10px;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;letter-spacing:-.01em;}
:where(html.us-calculator) .faq-q::after{content:'＋';font-size:18px;color:var(--ink4);flex-shrink:0;transition:transform .2s;margin-top:-2px;}
:where(html.us-calculator) .faq-item.open .faq-q::after{transform:rotate(45deg);color:var(--blue);}
:where(html.us-calculator) .faq-a{font-size:13px;color:var(--ink3);line-height:1.8;max-height:0;overflow:hidden;transition:max-height .3s ease;font-weight:500;}
:where(html.us-calculator) .faq-a strong{color:var(--blue2);font-weight:700;}
:where(html.us-calculator) .faq-item.open .faq-a{max-height:600px;}
:where(html.us-calculator) footer{background:var(--navy);color:rgba(255,255,255,.5);padding:40px 0;text-align:center;}
:where(html.us-calculator) .footer-inner{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;margin-bottom:24px;}
:where(html.us-calculator) .footer-logo{font-family:var(--sans);font-weight:900;font-size:20px;color:var(--white);letter-spacing:-.02em;}
:where(html.us-calculator) .footer-logo em{color:var(--blue3);font-style:normal;}
:where(html.us-calculator) .footer-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;}
:where(html.us-calculator) .footer-links a{font-size:12px;color:rgba(255,255,255,.6);text-decoration:none;transition:color .15s;font-weight:600;}
:where(html.us-calculator) .footer-links a:hover{color:var(--white);}
:where(html.us-calculator) .footer-disclaimer{font-size:12px;line-height:1.7;color:#60a5fa;max-width:820px;margin:0 auto;border-top:1px solid rgba(255,255,255,.08);padding-top:20px;font-weight:500;}
:where(html.us-calculator) .cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:#0a1628;padding:16px 24px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;font-size:13px;}
:where(html.us-calculator) .cookie-banner p{max-width:560px;text-align:center;color:rgba(255,255,255,.7);}
:where(html.us-calculator) .cookie-banner a{color:#fff;text-decoration:underline;}
:where(html.us-calculator) .cookie-btn{padding:8px 20px;border-radius:40px;font-size:13px;font-weight:700;cursor:pointer;border:none;}
:where(html.us-calculator) .cookie-accept{background:#2563eb;color:#fff;}
:where(html.us-calculator) .cookie-reject{background:transparent;color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.3)!important;}
:where(html.us-calculator) .cookie-buttons{display:flex;gap:8px;}
:where(html.us-calculator) .panel{animation:fadeUp .4s ease both;}
:where(html.us-calculator) .results-panel .panel{animation-delay:.1s;}
:where(html.us-calculator) .methodology-trigger{display:flex;align-items:center;justify-content:center;gap:14px;cursor:pointer;padding:14px 0;user-select:none;transition:opacity .2s;}
:where(html.us-calculator) .methodology-trigger:hover{opacity:.7;}
:where(html.us-calculator) .methodology-trigger-label{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);transition:color .2s;}
:where(html.us-calculator) .methodology-trigger:hover .methodology-trigger-label{color:var(--blue);}
:where(html.us-calculator) .methodology-chevrons{font-size:16px;color:var(--ink4);transition:color .2s,transform .3s;line-height:1;}
:where(html.us-calculator) .methodology-trigger:hover .methodology-chevrons{color:var(--blue);}
:where(html.us-calculator) .methodology-trigger.open .methodology-chevrons{transform:rotate(180deg);}
:where(html.us-calculator) .methodology-trigger.open .methodology-trigger-label{color:var(--blue);}
:where(html.us-calculator) .methodology-box{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1);}
:where(html.us-calculator) .methodology-box.open{max-height:2000px;}
:where(html.us-calculator) .methodology-inner{padding:24px 4px 8px;text-align:center;}
:where(html.us-calculator) .meth-title{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:20px;padding-bottom:10px;border-bottom:2px solid var(--blue-bg);text-align:center;}
:where(html.us-calculator) .meth-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-bottom:20px;}
:where(html.us-calculator) .meth-block{padding:0 4px;text-align:center;}
:where(html.us-calculator) .meth-block-title{font-size:12px;font-weight:800;color:var(--ink);margin-bottom:8px;letter-spacing:-.01em;}
:where(html.us-calculator) .meth-formula{font-family:var(--mono);font-size:11px;color:var(--navy);margin:8px 0;line-height:1.7;font-weight:500;}
:where(html.us-calculator) .meth-note{font-size:12px;color:var(--ink3);line-height:1.7;font-weight:500;}
:where(html.us-calculator) .meth-sources{font-size:11px;color:var(--ink4);font-family:var(--mono);border-top:1px solid var(--rule);padding-top:14px;margin-top:4px;line-height:1.8;text-align:center;}
:where(html.us-calculator) .meth-sources strong{color:var(--ink3);font-weight:600;}
:where(html.us-calculator) .meth-updated{font-size:11px;color:var(--ink4);font-family:var(--mono);margin-top:6px;text-align:center;}

/* Refinements: shared trust components */
.official-sources strong {
  display:block;
  color:var(--ink, #0f172a);
  text-transform:uppercase;
  letter-spacing:.08em;
  text-align:center;
}

/* Footer disclaimer consistency: applies to US articles as well as calculators */
.footer-disc{
    font-size:12px;
    line-height:1.7;
    color:#60a5fa;
    max-width:820px;
    margin:20px auto 0;
    text-align:center;
    font-weight:500;
}


/* Footer consistency: match calculator footer on US articles and glossary */
html.us-article footer{background:var(--navy);color:rgba(255,255,255,.5);}
html.us-article .footer-logo{font-family:var(--sans);font-weight:900;font-size:20px;color:var(--white);}
html.us-article .footer-logo em{color:var(--blue3, #60a5fa);font-style:normal;}
html.us-article .footer-links a{font-size:12px;color:rgba(255,255,255,.6);font-weight:600;}
html.us-article .footer-disc{
 font-size:12px;
 line-height:1.7;
 color:#60a5fa;
 max-width:820px;
 margin:0 auto;
 border-top:1px solid rgba(255,255,255,.12);
 padding-top:16px;
 text-align:center;
}

/* Keep the disclaimer typography consistent across all US English page types. */
html.us-article .footer-disc,
html.us-calculator .footer-disclaimer,
html.us-glossary .footer-disclaimer{
  color:#60a5fa;
  font-family:var(--sans, 'Manrope', sans-serif);
  font-size:11px;
  font-weight:500;
  line-height:1.7;
  max-width:820px;
  margin:0 auto;
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:20px;
  text-align:center;
}

/* English calculator footers carry a wider navigation set. Keep the brand in
   the same centered position instead of allowing it to sit beside the links. */
html.us-calculator[lang="en-US"] .footer-inner{
  flex-direction:column;
}

@media(max-width:600px){
  html.us-calculator .cookie-banner{
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
    flex-direction:column;
    text-align:center;
  }
}
