*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{scrollbar-gutter:stable;background:var(--bg);color:var(--text)}
body{margin:0;font:400 var(--t-body)/1.65 var(--font-body);background:var(--bg);color:var(--text)}
body.is-locked{overflow:hidden}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,select,summary{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:default}
a{color:var(--brand);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--brand);outline-offset:4px;box-shadow:0 0 0 2px var(--surface)}
img,svg{max-inline-size:100%;vertical-align:middle}
img{height:auto}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.35;margin-block:0 var(--s-4);overflow-wrap:break-word}
h1{font-size:var(--t-h1);font-weight:700;line-height:1.25;letter-spacing:-.025em}
h2{font-size:var(--t-h2);font-weight:700;letter-spacing:-.015em}
h3{font-size:var(--t-h3);font-weight:650}
h4{font-size:1.0625rem;font-weight:700}
p{margin-block:0 var(--s-5);overflow-wrap:break-word}
ul,ol{padding-inline-start:1.5em;margin-block:0 var(--s-5)}
li+li{margin-top:var(--s-2)}
dl,figure{margin:0}
dt{font-weight:600}
dd{margin:0}
.container,main>*:not(.stamp){inline-size:100%;max-inline-size:var(--container-max);margin-inline:auto;padding-inline:var(--gutter)}
main{padding-block-start:var(--s-5)}
main>article,main>.page-content{padding-block-end:var(--s-7)}
.section,.page-section{padding-block:var(--s-7)}
.section-heading{margin-bottom:var(--s-5)}
.section-heading>p:last-child{margin-bottom:0}
.page-intro,.article-header,.review-header,.guide-header,.reward-hero{padding-block:var(--s-5) var(--s-6)}
.lead,.lede{font-size:1.125rem;line-height:1.6;color:var(--text-dim)}
.muted,.caption{color:var(--text-mute);font-size:var(--t-small)}
.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-block-size:var(--tap);padding:.65rem 1rem;border:1px solid var(--brand);border-radius:var(--r-control);font-weight:700;font-size:1rem;line-height:1.35;background:var(--brand);color:var(--on-brand);text-decoration:none;text-align:center;white-space:normal;max-inline-size:100%}
.button:hover,.icon-button:hover{background:var(--brand-hover);border-color:var(--brand-hover);text-decoration:none}
.button--quiet,.icon-button{background:var(--surface);border-color:var(--control-border);color:var(--text)}
.button--quiet:hover,.icon-button:hover{background:var(--surface-alt);color:var(--text)}
.button:disabled{background:var(--surface-alt);color:var(--text-mute);border-color:var(--border)}
.button-group{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:center}
.table-scroll{position:relative;overflow-x:auto;overscroll-behavior-inline:contain;margin-block:var(--s-5);border:1px solid var(--border);border-radius:var(--r-panel)}
table{border-collapse:collapse;inline-size:100%;font-size:1rem}
caption{font-weight:650;font-family:var(--font-display);text-align:start;padding:var(--s-4);color:var(--text)}
th,td{padding:var(--s-3) var(--s-4);text-align:start;vertical-align:top;border-block-end:1px solid var(--border);overflow-wrap:break-word}
th{background:var(--surface-alt);font-weight:650}
tbody tr:last-child>*{border-bottom:0}
.callout,.note,.verdict,.aside-card{display:block;background:var(--surface-alt);padding:var(--s-5);border-radius:var(--r-panel);margin-block:var(--s-5)}
.callout p:last-child,.note p:last-child,.verdict p:last-child{margin-bottom:0}
.contents,.toc{padding:var(--s-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-panel);margin-block:var(--s-5)}
.contents a,.toc a{display:inline-block;vertical-align:top;min-block-size:1.5rem;min-inline-size:0;max-inline-size:100%;overflow-wrap:anywhere}
.service-page--policy .policy-body code{overflow-wrap:anywhere}
.decision-comparison #mode-criteria dd{overflow-wrap:anywhere}
.schedule-offer-comparison .comparison-card dl{overflow-wrap:anywhere}
.content-with-rail,.review-layout,.guide-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-6)}
.content-with-rail>* ,.review-layout>*,.guide-layout>*{min-inline-size:0}
.flow>*+*{margin-block-start:var(--s-5)}
.equation,.money-ledger,.reward-lanes,.steps{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s-4);margin-block:var(--s-5)}
.equation>* ,.money-ledger>*,.reward-lanes>*{min-inline-size:0;background:var(--surface-alt);padding:var(--s-5);border-radius:var(--r-panel)}
.equation strong,.money-ledger strong{display:block;font-variant-numeric:tabular-nums;font-size:1.25rem}
.step,.steps>li{padding:var(--s-5);background:var(--surface);border-radius:var(--r-panel);border:1px solid var(--border)}
.evidence-figure{margin-block:var(--s-6)}
.evidence-figure>a{display:block;position:relative;border:1px solid var(--border);border-radius:var(--r-panel);padding:var(--s-2);background:var(--surface)}
.evidence-figure img{display:block;inline-size:100%;object-fit:contain}
figcaption{font-size:var(--t-small);color:var(--text-mute);margin-top:var(--s-3)}
.image-enlarge{display:block;font-size:var(--t-small);padding:var(--s-2);text-align:end}
details{margin-block:var(--s-3)}
summary{cursor:pointer;min-block-size:var(--tap);padding-block:var(--s-3)}
.visually-hidden,.cl-sr{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.logo-dark{display:none}
html[data-mode=dark] .logo-light{display:none}
html[data-mode=dark] .logo-dark{display:block}
.skip-link{position:fixed;inset-block-start:var(--s-3);inset-inline-start:var(--s-3);z-index:100;padding:var(--s-3) var(--s-4);background:var(--surface);color:var(--text);transform:translateY(-180%)}
.skip-link:focus{transform:none}
html:not(.ui-js) .js-only{display:none!important}
@media(min-width:480px){:root{--gutter:1.25rem}.equation{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:768px){:root{--gutter:1.5rem}.section,.page-section{padding-block:var(--s-8)}.reward-lanes,.money-ledger{grid-template-columns:repeat(2,minmax(0,1fr))}.equation{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1024px){.content-with-rail,.review-layout,.guide-layout{grid-template-columns:minmax(0,2.8fr) minmax(0,1fr)}.content-with-rail:not(.content-with-rail--no-aside)>.contents,.content-with-rail:not(.content-with-rail--no-aside)>.toc,.review-layout>.contents,.review-layout>.toc,.guide-layout>.contents,.guide-layout>.toc{position:sticky;inset-block-start:var(--s-5);align-self:start;max-block-size:85dvh;overflow:auto}.content-with-rail--no-aside{grid-template-columns:minmax(0,1fr)}}
@media(min-width:1280px){:root{--gutter:2rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:0ms!important;animation-duration:0ms!important;animation-iteration-count:1!important}}

/* Link decoration is consistent across all page-specific styles. */
a:any-link:not(:hover):not(:focus-visible),
a:any-link:not(:hover):not(:focus-visible) *{text-decoration-line:none!important}
a:any-link:is(:hover,:focus-visible){text-decoration-line:underline!important}
