/* Guide-only styles. Shared/core styles belong in site.css. */

/* Guides & Tools Directory */
.comparison-guide-hero.guides-directory-hero{padding-block:28px var(--space-6)}
.guides-directory-hero-lede{max-width:68ch;margin:var(--space-2-5) 0 0;color:var(--color-copy);font-size:var(--text-lead);line-height:var(--leading-loose);text-wrap:pretty}
.guides-directory-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}
.guides-directory-chip{display:inline-flex;align-items:center;min-height:32px;padding:4px var(--space-3);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas);color:var(--color-ink);font-size:var(--text-sm);font-weight:700;line-height:var(--leading-snug);white-space:nowrap}
.guides-directory-chip-info{border-color:var(--color-aqua-border);background:var(--color-aqua-wash);color:var(--color-aqua)}
.guides-directory-intro{max-width:68ch;margin:0 0 var(--space-8);color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.guides-directory-hero .guides-directory-intro{margin:var(--space-4) 0 0}
.guides-directory-disclosure{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}
/* Hero (Option A, Nov 9, 2026): two-column copy plus Start With What You Need box, desktop only. Below 1200px the box and CTAs are hidden and the hero is the single-column layout. */
.guides-directory-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6)}
.guides-directory-hero-copy{max-width:760px}
.guides-directory-hero-actions{display:none}
.guides-directory-start{display:none}
@media(min-width:1200px){
  .guides-directory-hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(var(--space-8),6vw,72px);align-items:center}
  .guides-directory-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-4)}
  .guides-directory-start{display:block}
}
.guides-directory-start nav{display:grid}
.guides-directory-start-link{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;gap:var(--space-2-5);align-items:center;min-height:58px;padding:var(--space-2) 0;color:var(--color-ink);text-decoration:none}
.guides-directory-start-link+.guides-directory-start-link{border-top:1px solid var(--color-border)}
.guides-directory-start-copy{min-width:0}
.guides-directory-start-title{display:block;font-weight:800;line-height:var(--leading-normal)}
.guides-directory-start-description{display:block;margin-top:2px;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}
@media(hover:hover) and (pointer:fine){
  .guides-directory-start-link:hover{color:var(--color-pine-hover)}
  .guides-directory-start-link:hover .related-category-chevron{color:var(--color-pine-hover);transform:translate(2px,0.25px)}
}
.guides-directory-body{padding-block:var(--space-12)}
.guides-directory-section{margin-top:var(--space-8);padding-top:var(--space-6);scroll-margin-top:var(--space-6)}
/* Directory table of contents: the shared guide reading rail, 240px on desktop. */
.guides-directory-body .guides-directory-layout{margin-top:0}
.guides-howto-note{margin:var(--space-4) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}
.guides-directory-main>.guides-directory-section:first-child{margin-top:0;padding-top:0;border-top:0}
.guides-directory-section .related-category-links{column-gap:var(--space-8);row-gap:0}
.guides-directory-section .related-category-links a{padding:var(--space-3-5) 0;border:0;border-radius:0;background:transparent}
.guides-directory-section .category-card-description{color:var(--color-copy)}
.guides-directory-section .related-category-links a:nth-child(n+3){border-top:1px solid var(--color-border)}
/* Decision cards (Concept A, Nov 9, 2026): two brand lockups, bonus pair above the verdict, one differentiator, Compare plus View Deal. */
.guides-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6);margin-top:var(--space-6)}
.guides-decision-card{display:flex;flex-direction:column;min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.guides-decision-lockup{display:flex;align-items:center;gap:var(--space-3);min-width:0;height:48px}
/* Fixed lockup height: the tallest logos are 30px, so without this the lockup grows on those cards and the verdicts sit apart in the same row. */
.guides-decision-lockup .brand-lockup{flex:1 1 0;min-width:0;justify-content:center}
.guides-decision-lockup .brand-lockup-logo{max-width:min(170px,100%);height:auto;max-height:30px;object-position:center}
/* Uniform 30px cap: the 47px/43px per-logo exceptions made tall logos dwarf wide partners (EQ Bank 47px vs Simplii 20.5px in one pair). One cap plus a wider 170px max-width keeps partners within ~7px. A 36px cap was tested and rejected: it let tall partners grow to 35-36px while width-clamped partners stayed at 23-28px, widening two pairs. */
.guides-decision-vs{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid var(--color-border);border-radius:50%;background:var(--color-frost);color:var(--color-muted);font-size:var(--text-sm);font-weight:800}
.guides-decision-title{margin:var(--space-4) 0 0;font-size:var(--text-lead);font-weight:800;line-height:var(--leading-snug)}
.guides-decision-bonus{margin:var(--space-3-5) 0 0}
.guides-decision-bonus strong{display:block;min-height:2em;color:var(--color-pine);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;line-height:var(--leading-none);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;text-wrap:balance}
.guides-decision-bonus span{display:block;margin-top:var(--space-2);color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}
.guides-decision-verdict{margin:var(--space-3-5) 0 0;padding:var(--space-3-5) var(--space-4);border-radius:var(--radius-md);background:var(--color-frost);color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-loose)}
.guides-decision-differentiator{display:flex;align-items:flex-start;gap:var(--space-2);margin:var(--space-3-5) 0 0;color:var(--color-copy);font-size:var(--text-card);font-weight:700;line-height:var(--leading-loose);text-wrap:pretty}
.guides-decision-differentiator-icon{display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;margin-top:1.5px;color:var(--color-pine)}
.guides-decision-differentiator-icon svg{display:block;width:18px;height:18px}
.guides-decision-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);margin-top:auto;padding-top:var(--space-4)}
.guides-decision-actions .button{flex:1 1 0;min-width:0}
.guides-decision-card a:focus-visible{outline:3px solid var(--color-aqua);outline-offset:2px}
@media(hover:hover) and (pointer:fine){
  .guides-directory-section .related-category-links a:hover{background:transparent;color:var(--color-pine-hover)}
}
@media(max-width:900px){
  .guides-decision-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:620px){
  .guides-directory-hero-lede{margin-top:var(--space-2-5);font-size:var(--text-body);line-height:var(--leading-loose)}
  .guides-directory-body{padding-block:var(--space-8)}
  .guides-directory-section .related-category-links a+a{border-top:1px solid var(--color-border)}
}
@media(max-width:720px){.guides-directory-body{padding-bottom:var(--space-4)}}

/* Comparison Guides */
.comparison-guide-page{overflow-wrap:anywhere}

.comparison-guide-hero,.rent-guide-hero{padding:28px 0 30px;border-bottom:1px solid var(--color-border);background:var(--color-frost)}
.comparison-guide-lede{max-width:var(--article-width);margin:var(--space-3-5) 0 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.comparison-guide-meta,.best-bonuses-meta{display:flex;flex-wrap:wrap;gap:var(--space-1-5) var(--space-5);margin-top:var(--space-3-5);color:var(--color-muted);font-size:var(--text-card)}
.comparison-guide-meta-item,.best-bonuses-meta-item,.rent-guide-meta-item,.brokerage-promotions-meta .brokerage-promotions-meta-item{display:inline-flex;align-items:center;flex-wrap:wrap;min-width:0;gap:var(--space-1-5)}
.comparison-guide-meta-item,.brokerage-promotions-meta .brokerage-promotions-meta-item{color:var(--color-muted)}
.comparison-guide-body{padding-block:var(--space-6) var(--space-12)}
.comparison-guide-page .comparison-guide-section{margin-top:var(--space-12)}
.comparison-guide-page .comparison-guide-callout{margin-top:var(--space-12)}
.comparison-guide-section-intro{color:var(--color-copy);text-wrap:pretty}
.comparison-guide-section-intro h2{color:var(--color-ink)}
.comparison-guide-heading-row{display:flex;align-items:end;justify-content:space-between;gap:var(--space-6);margin-bottom:18px}
.comparison-guide-heading-row h2{margin:0}
.comparison-guide-table-note{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-sm)}
.comparison-guide-callout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.36fr);column-gap:40px;row-gap:22px;align-items:start;padding:28px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-frost)}
.comparison-guide-callout h2{margin-bottom:var(--space-2-5);font-size:clamp(1.55rem,2.1vw,1.75rem)}
.comparison-guide-callout p{margin:0;color:var(--color-detail)}
.comparison-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.comparison-detail-grid h3{margin-bottom:var(--space-2)}
.comparison-detail-grid p{margin:0;color:var(--color-copy);text-wrap:pretty}
.comparison-methodology-notes{padding:var(--space-4) var(--space-4) var(--space-4)}
.comparison-methodology-notes h3{margin:0 0 var(--space-2);font-size:var(--text-body)}
.comparison-methodology-notes ul{margin:0;padding-left:var(--space-5);color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose)}
.comparison-methodology-notes li+li{margin-top:var(--space-1-5)}
.comparison-guide-final-cta{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0;border-color:var(--color-detail);background:var(--color-ink)}
.comparison-guide-final-cta .category-guide-cta-actions{display:grid;min-width:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:var(--space-2-5);width:100%}
.comparison-guide-final-cta .category-guide-cta-actions .button{width:100%;min-width:0;overflow-wrap:anywhere}
.comparison-guide-final-cta .category-guide-cta-copy h2{color:var(--color-inverse)}
.comparison-guide-final-cta .category-guide-cta-copy p{color:var(--color-inverse-copy)}
.comparison-guide-final-cta .text-link{color:var(--color-inverse);outline-color:var(--color-pine-soft)}
.comparison-guide-choice-cta{min-height:48px;padding:0 22px}
.comparison-guide-final-cta .comparison-guide-choice-cta{width:100%;border-color:var(--color-pine-border-strong)}
.comparison-guide-final-cta .button:focus-visible{outline-color:var(--color-pine-soft)}
.comparison-rent-page .comparison-guide-final-cta{gap:var(--space-4)}
.comparison-rent-page .comparison-guide-final-cta>.rent-guide-comparison-link{grid-column:1/-1;min-height:48px;margin:0;padding:var(--space-3) var(--space-3-5);border-color:var(--color-control-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-inverse);font-size:var(--text-body)}
.comparison-rent-page .comparison-guide-final-cta>.rent-guide-comparison-link:focus-visible{outline-color:var(--color-inverse)}
@media(hover:hover) and (pointer:fine){.comparison-rent-page .comparison-guide-final-cta>.rent-guide-comparison-link:hover{background:color-mix(in srgb,var(--color-inverse) 9%,transparent);border-color:var(--color-inverse-copy);color:var(--color-inverse)}}
@media(min-width:901px){
  .comparison-guide-final-cta{grid-template-columns:minmax(0,1fr) minmax(320px,340px)}
}
@media(max-width:800px){
  .comparison-detail-grid{grid-template-columns:1fr}
  .comparison-guide-callout{grid-template-columns:1fr;row-gap:18px}
  .comparison-guide-heading-row{align-items:flex-start;flex-direction:column}
}
@media(max-width:620px){
  .comparison-guide-final-cta{grid-template-columns:1fr}
  .comparison-guide-final-cta .category-guide-cta-actions{grid-template-columns:1fr}
  .comparison-guide-hero{padding:var(--space-4) 0 var(--space-6)}
  .comparison-guide-hero .breadcrumbs{margin-bottom:var(--space-2)}
  .comparison-guide-hero h1{max-width:none;text-wrap:balance}
  .comparison-guide-lede{margin-top:var(--space-2-5);font-size:var(--text-body);line-height:var(--leading-loose)}
  .comparison-guide-meta{gap:var(--space-1-5) var(--space-3-5);margin-top:var(--space-2-5)}
  .comparison-guide-callout{margin-top:var(--space-12);padding:var(--space-5)}
}
/* Hold the compact guide rhythm through the tablet/mobile breadcrumb transition. */
@media(min-width:621px) and (max-width:760px){
  .comparison-guide-hero,.best-bonuses-hero{padding:var(--space-4) 0 var(--space-6)}
  .comparison-guide-hero .breadcrumbs,.best-bonuses-hero .breadcrumbs,.rent-guide-hero .breadcrumbs{margin-bottom:var(--space-2)}
}
/* Categories 48px standard, Nov 10, 2026: match the category hero block at 760px and below, 16px top plus 8px gap. */
@media(max-width:760px){
  .comparison-guide-hero.guides-directory-hero{padding-block:var(--space-4) var(--space-6)}
  .comparison-guide-hero.guides-directory-hero .breadcrumbs{margin-bottom:var(--space-2)}
}

/* Provider Cards and Conversion Routes */
.comparison-at-glance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-field);background:var(--color-frost)}
.comparison-provider-card{display:flex;min-width:0;flex-direction:column;padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.comparison-at-glance-grid>.comparison-provider-card{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0}
.comparison-provider-header{display:grid;grid-template-rows:minmax(var(--space-16),auto) auto;align-items:center;justify-items:start;gap:var(--space-2);padding-bottom:18px;border-bottom:1px solid var(--color-border)}
.comparison-provider-reward{display:grid;gap:3px;margin:22px 0 var(--space-1-5)}
.comparison-provider-reward span{color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-wide);text-transform:uppercase}
.comparison-provider-reward strong{color:var(--color-pine);font-size:clamp(2rem,3.5vw,2.7rem);line-height:var(--leading-none);letter-spacing:-.04em}
.comparison-provider-facts{display:grid;margin:0 0 22px}
.comparison-provider-fact{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-3-5);align-items:center;min-width:0;padding:var(--space-4) 0}
.comparison-provider-fact+.comparison-provider-fact{border-top:1px solid var(--color-border)}
.comparison-fact-icon{width:44px;height:44px;border-radius:var(--radius-md);border:1px solid var(--color-aqua-border);background:var(--color-aqua-wash);color:var(--color-aqua)}
.comparison-fact-icon svg{width:20px;height:20px}
.comparison-provider-fact-copy{min-width:0}
.comparison-provider-fact-copy strong{display:block;font-size:var(--text-body);line-height:var(--leading-snug)}
.comparison-provider-fact-copy span{display:block;margin-top:3px;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-relaxed);overflow-wrap:anywhere}
.comparison-provider-cta{width:100%;min-height:48px;margin-top:auto;padding:0 22px}
.comparison-provider-cta svg{transform:translateY(2px)}
.comparison-provider-actions{display:grid;align-self:end;gap:var(--space-2-5);width:100%}
.comparison-provider-actions .comparison-provider-cta{margin-top:0}
.comparison-alternative-note{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.comparison-verdict-list{margin:0;padding-left:1.15rem;color:var(--color-copy)}
.comparison-verdict-list li+li{margin-top:var(--space-1-5)}
.comparison-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;grid-column:1/-1}
.comparison-route-card{padding:0 18px 0 0;border:0;border-radius:0;background:transparent}
.comparison-route-card+.comparison-route-card{padding:0 0 0 18px;border-left:1px solid var(--color-border)}
.comparison-route-label{display:block;margin-bottom:5px;color:var(--color-detail);font-size:var(--text-xs);font-weight:850;letter-spacing:.01em;text-transform:none}
.comparison-route-card strong{display:block;font-size:var(--text-lead);line-height:var(--leading-snug)}
.comparison-route-card p{margin:var(--space-1-5) 0 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
@media(max-width:800px){
  .comparison-at-glance-grid,.comparison-route-grid{grid-template-columns:1fr}
  .comparison-route-card{padding:0}
  .comparison-route-card+.comparison-route-card{padding:var(--space-4) 0 0;border-left:0;border-top:1px solid var(--color-border)}
}
@media(max-width:620px){
  .comparison-provider-card{padding:var(--space-4)}
  .comparison-provider-fact{grid-template-columns:40px minmax(0,1fr);gap:var(--space-3);padding:var(--space-3-5) 0}
  .comparison-fact-icon{width:40px;height:40px}
  .comparison-at-glance-grid>.comparison-provider-card .comparison-provider-header{grid-template-rows:auto auto;padding-bottom:var(--space-2-5)}
  .comparison-at-glance-grid>.comparison-provider-card .comparison-provider-reward{margin:var(--space-3) 0 4px}
  .comparison-at-glance-grid>.comparison-provider-card .comparison-provider-facts{margin-bottom:var(--space-2-5)}
  .comparison-at-glance-grid>.comparison-provider-card .comparison-provider-fact{padding:9px 0}
}

/* Comparison Tables and Decisions */
.comparison-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);overscroll-behavior-inline:contain}
.comparison-scroll:focus-visible{outline-offset:4px}
.comparison-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.comparison-table th,.comparison-table td{padding:13px var(--space-3-5);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}
.comparison-table tbody th{font-weight:750}
.comparison-table tbody tr:last-child>*{border-bottom:0}
.comparison-guide-table:not(.comparison-guide-table-compact){font-size:var(--text-body);line-height:var(--leading-loose)}
.comparison-guide-table thead th{background:var(--color-ink);color:var(--color-inverse);font-size:var(--text-xs);font-weight:800;letter-spacing:.01em;text-transform:none}
.comparison-guide-table-compact{font-size:var(--text-body);line-height:var(--leading-relaxed)}
.comparison-guide-table-compact thead th{font-size:var(--text-card)}
.comparison-guide-table-compact tbody th,.comparison-guide-table-compact tbody td{padding:15px var(--space-4);vertical-align:middle}
.comparison-guide-table-compact tbody th{color:var(--color-detail);font-weight:800}
@media(min-width:801px){
  .comparison-guide-table{min-width:720px}
  .comparison-guide-table th:first-child{width:24%}
  .comparison-guide-table th:nth-child(2),.comparison-guide-table th:nth-child(3){width:38%}
}
.comparison-guide-table-compact .comparison-table-winner{font-weight:850}
.comparison-guide-table-compact .comparison-table-winner strong{display:inline-block;padding:3px var(--space-2);border-radius:var(--radius-sm);background:var(--color-pine-soft);color:var(--color-pine);font-size:var(--text-body);line-height:var(--leading-snug)}
.comparison-guide-signup-table .comparison-table-winner .comparison-value-primary{justify-self:start;padding:3px var(--space-2);border-radius:var(--radius-sm);background:var(--color-pine-soft);color:var(--color-pine)}
.comparison-guide-table-footer .offer-comparison{border-top:1px solid var(--color-aqua-border);background:var(--color-aqua-wash)}
.comparison-guide-table-compact .comparison-guide-table-footer .offer-comparison{padding:15px var(--space-4)}
.comparison-break-even-assumptions{display:grid;gap:var(--space-3);max-width:var(--article-width);margin-top:var(--space-3-5)}
.comparison-break-even-assumptions p{margin:0;color:var(--color-copy);line-height:var(--leading-loose);text-wrap:pretty}
.comparison-break-even-assumptions>p>strong:first-child{color:var(--color-ink)}
.comparison-break-even-assumptions .comparison-break-even-result{margin-top:2px;padding-top:var(--space-3);border-top:1px solid var(--color-border);color:var(--color-detail)}
.comparison-break-even-assumptions .comparison-break-even-result>strong:first-child{color:var(--color-aqua)}
.comparison-break-even-summary{display:grid}
.comparison-break-even-summary-title{display:block;padding:0 0 var(--space-2-5);color:var(--color-aqua);font-size:var(--text-body);line-height:var(--leading-normal)}
.comparison-break-even-summary-row{display:grid;grid-template-columns:minmax(120px,.38fr) minmax(0,1fr);gap:var(--space-4);padding:9px 0;border-top:1px solid var(--color-aqua-border);align-items:baseline}
.comparison-break-even-summary-row span{color:var(--color-detail);font-size:var(--text-sm);font-weight:800}
.comparison-break-even-summary-row strong{color:var(--color-ink);font-size:var(--text-card);line-height:var(--leading-normal)}
.comparison-break-even-summary-row.is-result strong{color:var(--color-aqua)}
.comparison-break-even-caveat{padding-top:var(--space-3);border-top:1px solid var(--color-aqua-border);line-height:var(--leading-loose)}
@media(max-width:480px){
  .comparison-break-even-assumptions{gap:var(--space-2-5)}
  .comparison-break-even-summary-row{grid-template-columns:1fr;gap:3px}
}
.comparison-guide-callout>div:first-child p{max-width:65ch;font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.comparison-guide-callout .comparison-route-grid{padding-top:var(--space-5);border-top:1px solid var(--color-pine-border)}
.comparison-guide-callout .comparison-route-card strong{color:var(--color-ink);font-size:var(--text-lead)}
.comparison-route-card:first-child strong{color:var(--color-ink)}
.comparison-route-card:last-child strong{color:var(--color-ink)}
@media(max-width:800px){
  .comparison-scroll{overflow:hidden;overscroll-behavior-inline:auto}
  .comparison-guide-table:not(.comparison-guide-table-compact){display:block;min-width:0}
  .comparison-guide-table:not(.comparison-guide-table-compact) thead{display:block;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  .comparison-guide-table:not(.comparison-guide-table-compact) tbody{display:block}
  .comparison-guide-table:not(.comparison-guide-table-compact) tbody tr{display:block;border-bottom:1px solid var(--color-border)}
  .comparison-guide-table:not(.comparison-guide-table-compact) tbody tr:last-child{border-bottom:0}
  .comparison-guide-table:not(.comparison-guide-table-compact) tbody th{display:block;padding:var(--space-2-5) var(--space-3-5);border-bottom:1px solid var(--color-border);background:var(--color-frost);color:var(--color-detail);font-size:var(--text-sm);font-weight:800;letter-spacing:var(--tracking-normal);text-transform:none}
  .comparison-guide-table:not(.comparison-guide-table-compact) tbody td{display:grid;grid-template-columns:minmax(104px,128px) minmax(0,1fr);gap:var(--space-3);padding:var(--space-3) var(--space-3-5);border-bottom:0;overflow-wrap:anywhere}
  .comparison-guide-table:not(.comparison-guide-table-compact) tbody td+td{border-top:1px solid var(--color-border)}
  .comparison-guide-table:not(.comparison-guide-table-compact) td::before{content:attr(data-label);color:var(--color-detail);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-normal);text-transform:none}
  .comparison-guide-table-compact{width:100%;min-width:0;table-layout:fixed}
  .comparison-guide-table-compact thead th,.comparison-guide-table-compact tbody th,.comparison-guide-table-compact tbody td{padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--color-border)}
  .comparison-guide-table-compact .comparison-guide-table-footer .offer-comparison{padding:var(--space-3) var(--space-2)}
  .comparison-guide-table-compact thead th{font-size:var(--text-xs);line-height:var(--leading-snug)}
  .comparison-guide-table-compact thead th:first-child{width:34%;text-align:left}
  .comparison-guide-table-compact th:nth-child(2),.comparison-guide-table-compact th:nth-child(3){width:33%}
  .comparison-guide-table-compact thead th:nth-child(n+2),.comparison-guide-table-compact tbody td{text-align:right}
  .comparison-guide-table-compact tbody th{background:var(--color-canvas);font-size:var(--text-card);letter-spacing:var(--tracking-normal);text-transform:none}
  .comparison-guide-table-compact tbody td{font-size:var(--text-body)}
  .comparison-guide-table-compact .comparison-table-winner strong{font-size:var(--text-body)}
}
@media(max-width:620px){
  .comparison-guide-section{margin-top:var(--space-12)}
  .comparison-guide-page .comparison-guide-section,.comparison-guide-page .comparison-guide-callout{margin-top:var(--space-8)}
}

/* Best Referral Bonuses - coherent decision-first hierarchy, scoped to this guide. */
.best-bonuses-meta{display:flex;flex-wrap:wrap;align-items:center;color:var(--color-detail)}
.best-bonuses-meta-item{display:inline-flex;align-items:center;gap:5px;min-width:0;line-height:var(--leading-normal)}
.best-bonuses-page .best-bonuses-meta-icon{display:inline-grid;place-items:center;width:16px;height:16px;flex:0 0 16px;border:0;border-radius:0;background:transparent;color:var(--color-aqua)}
.best-bonuses-page .best-bonuses-meta-icon svg{display:block;width:16px;height:16px}
.best-bonuses-meta-link{color:var(--color-pine);text-decoration:none}
.best-bonuses-disclosure{max-width:72ch;margin:5px 0 0;color:var(--color-detail);font-size:var(--text-xs);line-height:var(--leading-relaxed)}
.best-bonuses-body .best-bonuses-reading-layout{margin-top:0}
.best-bonuses-section{margin-top:var(--space-8)}
.best-bonuses-section-major{margin-top:var(--space-12)}
.best-bonuses-section-supporting{margin-top:var(--space-8)}
.best-bonuses-opening>.best-bonuses-section:first-child{margin-top:0}
.best-bonuses-section-heading h2{color:var(--color-ink)}
.best-bonuses-section-heading p{margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}

/* One high-confidence editorial winner, not a repeated product-card template. */
.best-bonuses-decision-board{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}
.ranked-offer-card{min-width:0;background:var(--color-canvas)}
.ranked-offer-brand{min-width:0;margin:0;color:var(--color-ink);font-size:var(--text-body)}
.ranked-offer-primary-content{min-width:0}
.ranked-offer-primary-pitch{min-width:0}
.ranked-offer-reward strong{color:var(--color-pine);font-size:clamp(2.15rem,3.2vw,2.75rem);font-weight:800;line-height:var(--leading-none);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}
.ranked-offer-reward span{line-height:var(--leading-normal)}
.ranked-offer-rationale{margin:0}
.ranked-offer-facts{display:grid;grid-template-columns:minmax(0,1fr);margin:0}
.ranked-offer-facts div{min-width:0}
.ranked-offer-facts div:first-child{padding-top:0}
.ranked-offer-facts div+div{border-top:1px solid var(--color-border)}
.ranked-offer-facts dt{align-items:center;gap:5px}
.ranked-offer-checked{line-height:var(--leading-normal)}
.ranked-offer-actions{min-width:0}
.ranked-offer-card-primary .ranked-offer-cta{min-height:48px;padding:0 22px;white-space:normal;text-align:center;font-weight:800}
.ranked-offer-card-primary .ranked-offer-cta .button-icon{flex:0 0 18px}
.ranked-offer-details{display:inline-flex;align-items:center;gap:4px;min-height:var(--touch-target-min);color:var(--color-pine);font-weight:700}
.ranked-offer-details-icon{display:inline-grid;place-items:center}
.ranked-offer-details-icon svg{width:18px;height:18px;stroke-width:2.4}

/* Secondary cards share the winner's information hierarchy, not its visual weight. */
.ranked-offer-secondary-heading{margin:0;color:var(--color-ink);font-weight:800;letter-spacing:var(--tracking-slight);line-height:var(--leading-snug)}
.ranked-offer-card-secondary{display:flex;flex-direction:column;min-height:0}
.ranked-offer-card-secondary .ranked-offer-brand{min-width:0;max-width:100%}
.ranked-offer-card-secondary .brand-lockup-lg .brand-lockup-logo{max-width:min(100%,172px);max-height:38px}
.ranked-offer-secondary-content{display:flex;flex:1;flex-direction:column;min-width:0}
.ranked-offer-card-secondary .ranked-offer-reward{gap:5px 9px;margin:0 0 var(--space-2-5)}
.ranked-offer-card-secondary .ranked-offer-reward span{font-size:var(--text-xs)}
.ranked-offer-card-secondary .ranked-offer-facts{border-block:1px solid var(--color-border)}
.ranked-offer-card-secondary .ranked-offer-facts div{grid-template-columns:minmax(0,1fr);gap:2px;padding:var(--space-2) 0}
.ranked-offer-card-secondary .ranked-offer-facts div:first-child{padding-top:var(--space-2)}
.ranked-offer-card-secondary .ranked-offer-checked{margin:var(--space-2) 0 0}
.ranked-offer-quick-pick-actions{display:flex;align-items:center;flex-wrap:wrap}
.ranked-offer-quick-pick-cta,.ranked-offer-quick-pick-details{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1-5);text-decoration:none}
.ranked-offer-quick-pick-details{font-size:var(--text-sm)}
.ranked-offer-quick-pick-cta{min-height:48px;padding:0 22px;border:1px solid var(--color-pine);border-radius:var(--radius-button);background:var(--color-pine);color:var(--color-inverse);font-weight:800}
.ranked-offer-quick-pick-details{padding-inline:2px;color:var(--color-detail);font-weight:700}
.ranked-offer-quick-pick-cta:focus-visible,.ranked-offer-quick-pick-details:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px}
.ranked-offer-quick-pick-action-icon{display:inline-grid;place-items:center;width:16px;height:16px;flex:0 0 16px}
.ranked-offer-quick-pick-action-icon svg{width:16px;height:16px}
.ranked-offer-quick-pick-details .ranked-offer-quick-pick-action-icon svg{width:18px;height:18px;stroke-width:2.4}
@media(hover:hover) and (pointer:fine){
  .ranked-offer-quick-pick-cta{transition:background-color .16s ease,border-color .16s ease,color .16s ease}
  .ranked-offer-quick-pick-cta:hover{border-color:var(--color-pine-hover);background:var(--color-pine-hover);color:var(--color-inverse)}
  .ranked-offer-quick-pick-details:hover{color:var(--color-pine)}
}

/* Only surfaced when the reading rail is absent; the desktop rail already links to all offers. */
.best-bonuses-desktop-shortcut{display:none}
.best-bonuses-desktop-shortcut:focus-visible{outline:2px solid var(--color-pine);outline-offset:3px;border-radius:var(--radius-sm)}

/* Top 10 list: one flat list of the editorial shortlist, reusing the directory row. */
.best-bonuses-directory{display:grid}
.best-bonuses-directory-columns,.best-bonuses-directory-row{display:grid;row-gap:var(--space-4);align-items:center}
.best-bonuses-directory-columns{border-bottom:1px solid var(--color-border);font-weight:750;line-height:var(--leading-snug)}
.best-bonuses-directory-columns span:last-child{text-align:center}
.best-bonuses-directory-list{display:block;margin:0;padding:0;list-style:none;background:var(--color-canvas)}
.best-bonuses-directory-item+.best-bonuses-directory-item{border-top:1px solid var(--color-border)}
.best-bonuses-directory-row{border:0;border-radius:0;background:var(--color-canvas);color:var(--color-ink);text-decoration:none;transition:background-color .16s ease}
.best-bonuses-directory-row:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px}
.best-bonuses-directory-provider{min-width:0}
.best-bonuses-directory-provider .brand-lockup{max-width:100%;min-width:0;min-height:36px}
.best-bonuses-directory-provider .brand-lockup-fallback{width:34px;height:34px;flex:0 0 34px;border-color:color-mix(in srgb,currentColor 28%,transparent);border-radius:9px}
.best-bonuses-directory-provider .brand-lockup-name{min-width:0;margin-left:9px;overflow-wrap:anywhere;color:var(--color-ink);font-size:var(--text-body);font-weight:750;line-height:var(--leading-snug)}
.best-bonuses-directory-reward{min-width:72px;max-width:138px;justify-content:center;padding:5px var(--space-2);background:var(--color-aqua-wash);border-color:var(--color-aqua-border);border-radius:8px;color:var(--color-ink);font-size:var(--text-sm);font-weight:800;line-height:var(--leading-tight);text-align:center;white-space:normal;text-wrap:balance;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.best-bonuses-directory-reward-variable{background:var(--color-canvas);border-color:var(--color-border);color:var(--color-detail);font-weight:700}
.best-bonuses-directory-rule{display:grid;gap:2px;min-width:0;color:var(--color-copy);text-wrap:pretty}
.best-bonuses-directory-rule-copy{min-width:0}
.best-bonuses-directory-rule-lead{color:var(--color-ink);font-weight:750}
.best-bonuses-directory-rule-tail{color:var(--color-muted)}
.best-bonuses-directory-action{display:inline-flex;align-items:center;line-height:var(--leading-snug);white-space:nowrap;transition:color .16s ease}
.best-bonuses-directory-action svg{display:block;width:18px;height:18px;stroke-width:2.4;transition:transform .16s ease}
@media(hover:hover) and (pointer:fine){
  .best-bonuses-directory-row:hover{background:var(--color-frost)}
  .best-bonuses-directory-row:hover .best-bonuses-directory-action{color:var(--color-pine-hover)}
  .best-bonuses-directory-row:hover .best-bonuses-directory-action svg{transform:translateX(2px)}
}
.best-bonuses-directory-row:active{background:var(--color-pine-wash)}
.best-bonuses-directory-row:focus-visible .best-bonuses-directory-action svg,.best-bonuses-directory-row:active .best-bonuses-directory-action svg{transform:translateX(2px)}

@supports (interpolate-size:allow-keywords){
  .best-bonuses-directory{interpolate-size:allow-keywords}
}

/* Recovery decision ledger: exact provider facts first, terminal navigation second. */
.best-bonuses-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:var(--text-card)}
.best-bonuses-table-recovery col:nth-child(1){width:22%}
.best-bonuses-table-recovery col:nth-child(2){width:24%}
.best-bonuses-table-recovery col:nth-child(3){width:54%}
.best-bonuses-table th,.best-bonuses-table td{padding:18px var(--space-4);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}
.best-bonuses-table thead th{padding-top:0;padding-bottom:var(--space-3);background:transparent;color:var(--color-muted);font-size:var(--text-xs);font-weight:850;letter-spacing:var(--tracking-wide);text-transform:uppercase}
.best-bonuses-table-recovery thead th{padding-top:var(--space-3);background:var(--color-frost);border-top:1px solid var(--color-pine-border);border-bottom-color:var(--color-border);color:var(--color-detail)}
.best-bonuses-table tbody th{font-weight:700}
.best-bonuses-table-recovery tbody th .brand-lockup{min-width:0}
.best-bonuses-qualify{display:block;color:var(--color-detail);font-weight:400;line-height:var(--leading-loose)}
.recovery-rule-cell{min-width:0}
.best-bonuses-table-recovery .best-bonuses-qualify{font-size:var(--text-card)}
.recovery-rule-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--space-3-5);margin-top:7px}
.recovery-rule-meta .referral-recovery-checked{margin-top:0}
.best-bonuses-details-link{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;min-height:var(--touch-target-min);margin-left:auto;color:var(--color-pine);font-size:var(--text-sm);font-weight:750;line-height:var(--leading-snug);text-decoration:none;white-space:nowrap}
.best-bonuses-details-chevron{display:inline-grid;place-items:center;width:18px;height:18px;flex:0 0 18px;color:currentColor;transition:transform .18s ease}
.best-bonuses-details-chevron svg{width:18px;height:18px}
.best-bonuses-details-link:focus-visible{outline:2px solid var(--color-pine);outline-offset:3px}
.best-bonuses-details-link:active{color:var(--color-pine-hover)}

/* Best Bonuses methodology keeps one Frost/Canvas semantic across viewports; breakpoints only recompose geometry and density. */
.best-bonuses-methodology-header{width:100%;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--color-border)}
.best-bonuses-methodology-header h2{margin:0}
.best-bonuses-methodology-thesis{margin:9px 0 0;color:var(--color-detail);font-size:var(--text-body);font-weight:650;line-height:var(--leading-loose);letter-spacing:var(--tracking-normal);text-wrap:pretty}
.best-bonuses-methodology-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:var(--space-6);align-items:start}
.best-bonuses-methodology-card{min-width:0}
.best-bonuses-methodology-copy{padding-right:22px}
.best-bonuses-methodology-factors{padding-left:22px;border-left:1px solid var(--color-border)}
.best-bonuses-methodology-card h3{margin:0 0 var(--space-3);font-size:var(--text-body);letter-spacing:var(--tracking-slight)}
.best-bonuses-methodology-rules,.best-bonuses-factor-list{display:grid;list-style:none;margin:0;padding:0}
.best-bonuses-factor-list{column-gap:18px}
.best-bonuses-methodology-rules li,.best-bonuses-factor-list li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:var(--space-2-5);align-items:start;min-width:0;padding:var(--space-3) 0;border-top:1px solid var(--color-border);font-size:var(--text-card);line-height:var(--leading-relaxed)}
.best-bonuses-methodology-rules li:first-child,.best-bonuses-factor-list li:nth-child(-n+2){padding-top:0;border-top:0}
.best-bonuses-methodology-rules strong,.best-bonuses-factor-list strong{display:block;color:var(--color-ink);font-size:var(--text-card);line-height:var(--leading-normal)}
.best-bonuses-methodology-rules span:not(.best-bonuses-methodology-icon),.best-bonuses-factor-list span:not(.best-bonuses-methodology-icon){display:block;margin-top:3px;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.best-bonuses-methodology-icon{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px}
.best-bonuses-methodology-icon svg{display:block;width:18px;height:18px;transform:translateY(-2.5px)}
.best-bonuses-methodology-copy .best-bonuses-methodology-icon{color:var(--color-pine)}
.best-bonuses-methodology-detail{display:grid;grid-template-columns:22px minmax(0,1fr);gap:var(--space-2-5);align-items:start;margin:18px 0 0;padding:18px 0 0;border-top:1px solid var(--color-border);color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-loose)}
.best-bonuses-methodology-detail .best-bonuses-methodology-icon{color:var(--color-pine)}
.best-bonuses-methodology-detail p{margin:0;text-wrap:pretty}

/* Preflight deliberately uses one shared grid instead of four cards. */
.best-bonuses-preflight-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0;padding:0;border-block:1px solid var(--color-border);background:var(--color-canvas)}
.best-bonuses-preflight-item{display:grid;gap:var(--space-3);min-width:0;padding:18px var(--space-5)}
.best-bonuses-preflight-item:nth-child(odd){padding-left:0}
.best-bonuses-preflight-item:nth-child(even){padding-right:0;border-left:1px solid var(--color-border)}
.best-bonuses-preflight-item:nth-child(n+3){border-top:1px solid var(--color-border)}
.best-bonuses-preflight-icon{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:9px}
.best-bonuses-preflight-icon svg{width:19px;height:19px}
.best-bonuses-preflight-item h3{margin:1px 0 5px;font-size:var(--text-body);letter-spacing:var(--tracking-slight)}
.best-bonuses-preflight-item p{max-width:52ch;margin:0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}

/* Shared disclosure mechanics are also used by Brokerage Promotions. */
.best-bonuses-sources-disclosure{border-block:1px solid var(--color-border)}
.best-bonuses-sources-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-4) 0;cursor:pointer;list-style:none}
.best-bonuses-sources-summary::-webkit-details-marker{display:none}
.best-bonuses-sources-summary::marker{content:""}
.best-bonuses-sources-summary-copy{min-width:0;margin:0}
.best-bonuses-sources-summary-copy>span{display:block;margin:2px 0 0;color:var(--color-muted);font-size:var(--text-card)}
.best-bonuses-sources-toggle{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;color:var(--color-pine);font-size:var(--text-card);font-weight:700}
.best-bonuses-sources-toggle-open{display:none}
.best-bonuses-sources-chevron{display:inline-flex;width:18px;height:18px;transform:translateY(-0.75px);transition:transform .18s ease}
.best-bonuses-sources-chevron svg{width:18px;height:18px}
.best-bonuses-sources-disclosure[open] .best-bonuses-sources-toggle-closed{display:none}
.best-bonuses-sources-disclosure[open] .best-bonuses-sources-toggle-open{display:inline}
.best-bonuses-sources-disclosure[open] .best-bonuses-sources-chevron{transform:translateY(-0.75px) rotate(180deg)}
@media(hover:hover) and (pointer:fine){
  .best-bonuses-details-link:hover{color:var(--color-pine-hover)}
  .best-bonuses-details-link:hover .best-bonuses-details-chevron{transform:translateX(2px)}
}
@media(max-width:900px){
  .best-bonuses-methodology-grid{grid-template-columns:1fr;gap:18px}
  .best-bonuses-methodology-copy{padding-right:0}
  .best-bonuses-methodology-factors{padding:18px 0 0;border-left:0;border-top:1px solid var(--color-border)}
}
@media(max-width:700px){
  .best-bonuses-hero .breadcrumbs{font-size:var(--text-sm)}
  .best-bonuses-meta-item{min-width:0}
  .best-bonuses-meta-date time{white-space:normal}
  .best-bonuses-meta-link{min-height:32px}
  .best-bonuses-disclosure{margin-top:5px;font-size:var(--text-xs);line-height:var(--leading-relaxed)}
  .best-bonuses-section,.best-bonuses-section-major{margin-top:var(--space-8)}
  .best-bonuses-section-heading p{font-size:var(--text-card);line-height:var(--leading-relaxed)}

  .ranked-offer-facts{border-block:1px solid var(--color-border)}
  .ranked-offer-facts div{padding-block:var(--space-2)}
  .ranked-offer-facts div:first-child{padding-top:var(--space-2)}
  .ranked-offer-checked{margin-top:7px}

  .ranked-offer-card-secondary .brand-lockup-lg .brand-lockup-logo{max-width:min(100%,154px)}
  .ranked-offer-quick-pick-cta{width:100%}

  .best-bonuses-directory-columns{display:none}
  .best-bonuses-directory-provider,.best-bonuses-directory-provider .brand-lockup{display:contents}
  .best-bonuses-directory-provider .brand-lockup-fallback{grid-area:provider-icon;align-self:center;width:36px;height:36px;flex-basis:36px}
  .best-bonuses-directory-provider .brand-lockup-name{grid-area:provider-name;align-self:center;margin-left:0;font-size:var(--text-card);line-height:var(--leading-snug)}
  .best-bonuses-directory-reward{grid-area:reward;align-self:center;justify-self:end;min-width:64px;max-width:140px;min-height:32px;padding:5px 9px;font-size:var(--text-xs)}
  .best-bonuses-directory-rule{grid-area:rule;align-self:start}
  .best-bonuses-directory-action{margin:0}

  .best-bonuses-table-recovery{display:block}
  .best-bonuses-table-recovery colgroup{display:none}
  .best-bonuses-table-recovery thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .best-bonuses-table-recovery tbody{display:block}
  .best-bonuses-table-recovery tr[data-referral-recovery]{display:block;padding:15px 0;border-bottom:1px solid var(--color-border)}
  .best-bonuses-table-recovery tr[data-referral-recovery]:first-child{border-top:0}
  .best-bonuses-table-recovery tr[data-referral-recovery]:last-child{border-bottom:0}
  .best-bonuses-table-recovery tr[data-referral-recovery] th,.best-bonuses-table-recovery tr[data-referral-recovery] td{display:block;padding:0;border:0;text-align:left}
  .best-bonuses-table-recovery tr[data-referral-recovery] th{margin-bottom:9px}
  .best-bonuses-table-recovery tr[data-referral-recovery] td[data-label="Can You Recover It?"]{margin-top:0}
  .best-bonuses-table-recovery tr[data-referral-recovery] td[data-label="What To Do Now"]{margin-top:var(--space-3)}
  .best-bonuses-table-recovery td[data-label]::before{display:block;margin-bottom:5px;color:var(--color-aqua);font-size:var(--font-size-compact-label);font-weight:800;letter-spacing:var(--tracking-wide);text-transform:uppercase;content:attr(data-label)}

  /* Recovery matrix becomes a scan-first provider ledger on phones. */
  .referral-recovery-matrix-body .best-bonuses-table-recovery tr[data-referral-recovery]{position:relative;padding:var(--space-5) 0}
  .referral-recovery-matrix-body .best-bonuses-table-recovery tr[data-referral-recovery] th{min-height:30px;margin-bottom:var(--space-3);padding-right:clamp(116px,38%,128px)}
  .referral-recovery-matrix-body .best-bonuses-table-recovery tr[data-referral-recovery] th .brand-lockup,.referral-recovery-matrix-body .best-bonuses-table-recovery tr[data-referral-recovery] th .brand-lockup-logo{max-width:100%}
  .referral-recovery-matrix-body .best-bonuses-table-recovery td[data-label="Recovery Status"]{margin-top:0}
  .referral-recovery-matrix-body .best-bonuses-table-recovery .recovery-rule-cell{margin-top:var(--space-3)}
  .referral-recovery-matrix-body .best-bonuses-table-recovery .recovery-rule-cell::before{display:none}
  .referral-recovery-matrix-body .referral-recovery-checked{position:absolute;top:20px;right:0;min-height:28px;margin:0;padding:4px var(--space-2);border:1px solid var(--color-aqua-border);border-radius:var(--radius-sm);background:var(--color-aqua-wash);color:var(--color-aqua);font-size:var(--text-xs);font-weight:700;line-height:var(--leading-snug);white-space:nowrap}
  .referral-recovery-matrix-body .referral-recovery-checked-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .referral-recovery-matrix-body .recovery-rule-meta{justify-content:flex-end;margin-top:var(--space-2)}

  .recovery-status-text{max-width:none;font-size:var(--text-sm)}
  .best-bonuses-table-recovery .best-bonuses-qualify{font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
  .recovery-rule-meta{gap:2px var(--space-3);margin-top:var(--space-2)}
  .best-bonuses-table-recovery .best-bonuses-details-link{font-size:var(--text-sm)}

  .best-bonuses-methodology-header{margin-bottom:var(--space-3-5);padding-bottom:var(--space-3-5)}
  .best-bonuses-methodology-grid{gap:var(--space-4)}
  .best-bonuses-methodology-detail{margin-top:var(--space-4)}
  .best-bonuses-preflight-panel{grid-template-columns:1fr}
  .best-bonuses-preflight-item{padding:15px 0}
  .best-bonuses-preflight-item:nth-child(odd),.best-bonuses-preflight-item:nth-child(even){padding-inline:0;border-left:0}
  .best-bonuses-preflight-item:nth-child(n+2){border-top:1px solid var(--color-border)}
  .best-bonuses-preflight-item p{font-size:var(--text-card);line-height:var(--leading-relaxed)}
  .best-bonuses-sources-summary{align-items:flex-start}
}
@media(max-width:430px){
  .ranked-offer-facts div{grid-template-columns:minmax(0,1fr);gap:3px}
  .ranked-offer-card-primary .ranked-offer-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:2px}
  .ranked-offer-card-secondary .brand-lockup-lg .brand-lockup-logo{max-width:min(100%,146px)}

  .best-bonuses-directory-provider .brand-lockup-fallback{width:34px;height:34px;flex-basis:34px}
  .best-bonuses-directory-provider .brand-lockup-name{font-size:var(--text-card);line-height:var(--leading-tight)}
  .best-bonuses-directory-reward{min-width:60px;max-width:132px;min-height:31px;padding:5px var(--space-2);font-size:var(--text-xs)}

  .best-bonuses-preflight-item{padding:var(--space-3-5) 0}
  .best-bonuses-sources-summary{display:block}
  .best-bonuses-sources-toggle{margin-top:var(--space-2)}
}


@media(max-width:700px) and (hover:hover) and (pointer:fine){
  .best-bonuses-directory-row:hover{background:var(--color-frost);transform:none}
}
@media(min-width:1180px) and (hover:hover) and (pointer:fine){
  .best-bonuses-directory-row:hover{border-color:transparent;background:var(--color-frost);transform:none}
}

/* Rent Credit Card Guide */
.rent-guide-page{overflow:clip}
.rent-guide-lede{max-width:var(--article-width);margin:var(--space-3-5) 0 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.rent-guide-meta{display:flex;flex-wrap:wrap;align-items:center;gap:5px var(--space-3-5);margin:var(--space-3-5) 0 0;color:var(--color-muted);font-size:var(--text-card)}
.rent-guide-meta a{color:inherit;font-weight:700}
.rent-guide-disclosure{max-width:72ch;margin:4px 0 0;color:var(--color-muted);font-size:var(--text-card);line-height:var(--leading-relaxed)}
/* Rent footer gap: Sources sets the gap to the footer (96px desktop, 48px mobile); the generic section padding does not. */
.rent-guide-section{padding:54px 0;border-bottom:1px solid var(--color-border)}
.rent-guide-section:last-child{border-bottom:0}
.rent-guide-section-heading{width:min(100%,var(--deal-width));margin-bottom:26px}
.rent-guide-section-heading h2{margin-bottom:var(--space-3)}
.rent-guide-section-heading>p:last-child{margin-bottom:0;color:var(--color-muted);text-wrap:pretty}
.rent-guide-table-shell{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-canvas)}
.rent-guide-table{width:100%;border-collapse:collapse;font-size:var(--text-card);line-height:var(--leading-relaxed)}
.rent-guide-table caption{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-frost);color:var(--color-muted);font-size:var(--text-xs);text-align:left}
.rent-guide-table th,.rent-guide-table td{padding:15px var(--space-3-5);border-bottom:1px solid var(--color-border);vertical-align:top;text-align:left}
.rent-guide-table thead th{background:var(--color-frost);color:var(--color-detail);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}
.rent-guide-table tbody tr:last-child th,.rent-guide-table tbody tr:last-child td{border-bottom:0}
.rent-guide-table tbody th{width:15%;font-size:var(--text-body)}
.rent-guide-table td>span,.rent-guide-table td>strong{display:block}
.rent-guide-table td>span{margin-top:5px;color:var(--color-muted)}
.rent-guide-table-note{max-width:72ch;margin:var(--space-3-5) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-loose)}
.rent-guide-callout{max-width:72ch;margin:18px 0 0;padding:var(--space-4) 0 0;border-top:1px solid var(--color-border);color:var(--color-copy)}
.rent-guide-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}
.rent-guide-example-card{display:flex;min-width:0;flex-direction:column;padding:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas)}
.rent-guide-example-heading{display:grid;gap:3px;padding:var(--space-5) var(--space-5) 15px;border-bottom:1px solid var(--color-border)}
.rent-guide-example-heading span{color:var(--color-detail);font-size:var(--text-xs);font-weight:850;text-transform:uppercase;letter-spacing:var(--tracking-wide)}
.rent-guide-example-heading strong{line-height:var(--leading-normal)}
.rent-guide-example-card dl{display:flex;flex-direction:column;margin:0;padding:0 var(--space-5) var(--space-4)}
.rent-guide-example-card dl>div{display:flex;justify-content:space-between;gap:var(--space-3);padding:7px 0}
.rent-guide-example-card dt{color:var(--color-detail);font-size:var(--text-card)}
.rent-guide-example-card dd{margin:0;color:var(--color-ink);font-weight:750;font-variant-numeric:tabular-nums;text-align:right}
.rent-guide-example-card .rent-guide-example-total{order:-1;display:grid;grid-template-columns:1fr;gap:5px;align-items:center;margin:0 calc(var(--space-5) * -1) var(--space-2);padding:17px var(--space-5);border-top:0;border-bottom:1px solid var(--color-border);background:var(--color-pine-wash)}
.rent-guide-example-card .rent-guide-example-total dt{color:var(--color-detail);font-size:var(--text-xs);font-weight:850;letter-spacing:var(--tracking-wide);text-transform:uppercase}
.rent-guide-example-card .rent-guide-example-total dd{color:var(--color-ink);font-size:clamp(1.65rem,2.8vw,2rem);line-height:var(--leading-none);font-weight:850;text-align:left}
/* Restricted rent credits are analytical value, not Pine cash-equivalent rewards. */
.rent-guide-page .rent-guide-example-card-restricted .rent-guide-example-total{background:var(--color-aqua-wash)}
.rent-guide-page .rent-guide-example-card-restricted .rent-guide-example-total dt{color:var(--color-aqua)}
.rent-guide-example-card>p{margin:0;margin-top:auto;padding:var(--space-3-5) var(--space-5);border-top:1px solid var(--color-border);background:var(--color-canvas);color:var(--color-muted);font-size:var(--text-sm);text-wrap:pretty}
.rent-guide-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;border-block:1px solid var(--color-border)}
.rent-guide-flow li{display:flex;gap:13px;padding:var(--space-5) var(--space-6)}
.rent-guide-flow-number{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--color-pine-soft);color:var(--color-pine);font-weight:850}
.rent-guide-flow strong{display:block;margin:3px 0 var(--space-1-5)}
.rent-guide-flow p{margin:0;color:var(--color-muted);font-size:var(--text-card);text-wrap:pretty}
.rent-guide-risk{border-bottom-color:var(--color-border)}
.rent-guide-risk-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0}
.rent-guide-risk-list li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-3-5);align-items:start;padding:18px}
.rent-guide-page .rent-guide-risk+section[aria-labelledby="offers-heading"],
.rent-guide-page section[aria-labelledby="offers-heading"]+section[aria-labelledby="faq-heading"]{padding-top:var(--space-8)}
.rent-guide-source-row{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:var(--space-4) 0;border-top:1px solid var(--color-border)}
.rent-guide-source-row:first-of-type{border-top:0}
@media (max-width:900px){
  .rent-guide-example-grid{grid-template-columns:1fr}
  .rent-guide-flow{grid-template-columns:1fr}
}
@media (max-width:760px){
  .rent-guide-section{padding:42px 0}
  .rent-guide-table-shell{border:0;overflow:visible;background:transparent}
  .rent-guide-table{display:block;font-size:var(--text-card)}
  .rent-guide-table caption{display:block;margin-bottom:var(--space-2-5);border:1px solid var(--color-border);border-radius:var(--radius-sm)}
  .rent-guide-table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
  .rent-guide-table tbody,.rent-guide-table tr,.rent-guide-table tbody th{display:block;width:100%}
  .rent-guide-table tr{margin-bottom:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-canvas)}
  .rent-guide-table tbody th{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-frost)}
  .rent-guide-table td{display:grid;width:100%;grid-template-columns:minmax(108px,.7fr) minmax(0,1.3fr);gap:var(--space-3);padding:13px var(--space-4);border-bottom:1px solid var(--color-border)}
  .rent-guide-table td:last-child{border-bottom:0}
  .rent-guide-table td::before{content:attr(data-label);color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-wide);text-transform:uppercase}
  .rent-guide-table td>*{min-width:0}
  .rent-guide-source-row{grid-template-columns:1fr;gap:var(--space-2-5)}
}
@media(min-width:721px){.rent-guide-page .rent-guide-section:has(#sources){padding-bottom:var(--space-12)}}
@media(max-width:720px){.rent-guide-page .rent-guide-section:has(#sources){padding-bottom:var(--space-4)}}
@media (max-width:480px){
  .rent-guide-table td{grid-template-columns:1fr;gap:4px}
}
.rent-guide-reward-note{display:flex;gap:var(--space-2-5);align-items:flex-start;max-width:72ch;margin:var(--space-1-5) 0 0;padding:var(--space-3) 4px 0;border-top:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-card);line-height:var(--leading-loose)}
.rent-guide-reward-note svg{width:18px;height:18px;flex:0 0 18px;margin-top:3px;color:var(--color-pine)}
.rent-guide-reward-note strong{color:var(--color-detail)}
.rent-guide-meta-item{white-space:nowrap}
.rent-guide-disclosure strong{color:var(--color-detail)}
.rent-guide-flow li+li{border-left:1px solid var(--color-border)}
.rent-guide-risk-list li:nth-child(even){border-left:1px solid var(--color-border)}
.rent-guide-risk-list li:nth-child(n+3){border-top:1px solid var(--color-border)}
.rent-guide-risk-list .rent-guide-risk-icon{display:grid;place-items:center;width:40px;height:40px;margin:0;border:1px solid var(--color-negative-border);border-radius:50%;background:var(--color-negative-wash);color:var(--color-negative);font-size:inherit}
.rent-guide-risk-icon svg{width:21px;height:21px}
.rent-guide-risk-copy strong{display:block;color:var(--color-ink)}
.rent-guide-risk-copy span{display:block;margin-top:4px;color:var(--color-muted);font-size:var(--text-card)}
#sources .rent-guide-source-disclosure{border:0;border-radius:0;margin-bottom:0}
#sources .rent-guide-source-disclosure+.rent-guide-source-disclosure{border-top:1px solid var(--color-border)}
#sources .rent-guide-source-disclosure:first-of-type{border-top:1px solid var(--color-border)}
.rent-guide-source-disclosure summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3);min-height:60px;padding:var(--space-2-5) var(--space-4);cursor:pointer;list-style:none;color:var(--color-ink)}
.rent-guide-source-disclosure summary::-webkit-details-marker{display:none}
.rent-guide-source-disclosure summary::marker{content:""}
.rent-guide-source-summary-copy{display:grid;gap:2px;min-width:0}
.rent-guide-source-summary-copy strong{font-weight:750}
.rent-guide-source-summary-copy span{color:var(--color-muted);font-size:var(--text-xs)}
.rent-guide-source-disclosure summary svg{width:18px;height:18px;flex:0 0 18px;color:var(--color-pine);transition:transform .18s ease}
.rent-guide-source-disclosure[open] summary svg{transform:rotate(180deg)}
.rent-guide-source-disclosure summary:focus-visible{outline:2px solid var(--color-pine);outline-offset:-2px}
.rent-guide-source-disclosure ul{margin:0;padding:var(--space-2) var(--space-4) var(--space-3-5) 36px;background:var(--color-canvas)}
.rent-guide-source-disclosure li+li{margin-top:7px}
.rent-guide-source-disclosure .text-link{display:inline-flex;align-items:center;gap:var(--space-1-5);min-height:var(--touch-target-min);font-weight:650}
.rent-guide-source-disclosure .button-icon svg{width:16px;height:16px}
@media(min-width:761px){
  .rent-guide-section.rent-guide-risk{padding-top:var(--space-16)}
}
@media(max-width:760px){
  .rent-guide-hero{padding:var(--space-4) 0 var(--space-6)}
  .rent-guide-hero h1{max-width:none;margin:0;text-wrap:balance}
  .rent-guide-lede{margin-top:var(--space-2-5);font-size:var(--text-body);line-height:var(--leading-loose)}
  .rent-guide-meta{gap:var(--space-1-5) var(--space-3-5);margin-top:var(--space-2-5)}
  .rent-guide-page .rent-guide-risk+section[aria-labelledby="offers-heading"],
  .rent-guide-page section[aria-labelledby="offers-heading"]+section[aria-labelledby="faq-heading"]{padding-top:var(--space-6)}
  .rent-guide-flow li{padding:18px 0}
  .rent-guide-flow li+li{border-left:0;border-top:1px solid var(--color-border)}
  .rent-guide-risk-list{grid-template-columns:1fr}
  .rent-guide-risk-list li:nth-child(even){border-left:0}
  .rent-guide-risk-list li:nth-child(n+2){border-top:1px solid var(--color-border)}
  .rent-guide-source-disclosure summary{padding-inline:var(--space-3-5)}
}
/* Reusable comparison emphasis; provider-specific table/tool rules remain scoped below. */
.comparison-verdict-surface{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:22px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.comparison-verdict-choice{display:flex;min-width:0;flex-direction:column;padding:var(--space-6) 26px}
.comparison-verdict-choice+.comparison-verdict-choice{border-left:1px solid var(--color-border)}
.comparison-verdict-surface .comparison-verdict-list{margin:0 0 var(--space-5);padding-left:0;list-style:none;line-height:var(--leading-loose)}
.comparison-verdict-surface .comparison-verdict-list li{position:relative;padding-left:var(--space-6)}
.comparison-verdict-surface .comparison-verdict-list li+li{margin-top:var(--space-2)}
.comparison-verdict-surface .comparison-verdict-list li::before{content:"";position:absolute;left:0;top:4px;width:16px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B6B50' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/contain no-repeat}
.comparison-guide-promotion-callout{grid-template-columns:1fr;row-gap:var(--space-4);margin-top:var(--space-12);padding:var(--space-4);border:0;border-radius:var(--radius-field);background:var(--color-frost)}
.comparison-guide-promotion-callout>div:first-child{padding:var(--space-2);border:0;background:transparent}
.comparison-guide-promotion-callout .comparison-route-grid{gap:var(--space-4);padding-top:0;border-top:0}
.comparison-guide-promotion-callout .comparison-route-card{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.comparison-route-heading{display:flex;align-items:center;gap:var(--space-2-5);margin-bottom:var(--space-2-5)}
.comparison-route-icon{width:36px;height:36px;border:1px solid var(--color-pine-border);border-radius:9px;background:var(--color-pine-soft)}
.comparison-route-icon svg{width:18px;height:18px}
.comparison-route-heading .comparison-route-label{margin:0}
.comparison-guide-details .comparison-detail-grid{gap:0;border-block:1px solid var(--color-border)}
.comparison-guide-details .comparison-detail-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-3-5);align-items:start;min-width:0;padding:22px var(--space-6)}
.comparison-guide-details .comparison-detail-item:nth-child(even){border-left:1px solid var(--color-border)}
.comparison-guide-details .comparison-detail-item:nth-child(n+3){border-top:1px solid var(--color-border)}
.comparison-guide-details .comparison-detail-icon{width:40px;height:40px;border:1px solid var(--color-aqua-border);border-radius:9px;background:var(--color-aqua-wash);color:var(--color-aqua)}
.comparison-guide-details .comparison-detail-icon svg{width:19px;height:19px}
.comparison-guide-details .comparison-detail-copy{min-width:0}
.comparison-guide-details .comparison-detail-copy h3{margin-bottom:7px}
.comparison-guide-ws-qt .comparison-guide-table-note{line-height:var(--leading-loose)}
.comparison-guide-ws-qt .comparison-guide-table-note+.comparison-guide-table-note{margin-top:var(--space-2)}
.comparison-guide-ws-qt .comparison-guide-tool-bridge .related-tool-link-navigation{margin-top:var(--space-6)}
.comparison-guide-ws-qt .comparison-guide-tool-bridge+.comparison-guide-section{margin-top:var(--space-12)}
@media(max-width:800px){
  .comparison-verdict-surface{grid-template-columns:1fr}
  .comparison-verdict-choice+.comparison-verdict-choice{border-left:0;border-top:1px solid var(--color-border)}
  .comparison-guide-details .comparison-detail-item:nth-child(even){border-left:0}
  .comparison-guide-details .comparison-detail-item:nth-child(n+2){border-top:1px solid var(--color-border)}
}
@media(max-width:620px){
  .comparison-verdict-choice{padding:18px}
  .comparison-guide-promotion-callout .comparison-route-card{padding:var(--space-4)}
  .comparison-guide-details .comparison-detail-item{padding:18px 0}
}
.comparison-guide-ws-qt .comparison-guide-promotion-action{min-height:var(--touch-target-min);margin-top:var(--space-4)}
.comparison-recovery-card h3{margin:0;font-size:1.18rem;line-height:var(--leading-normal)}
.comparison-recovery-card p+p{margin-top:var(--space-4)}
.comparison-promotion-details{padding:var(--space-2)}
.comparison-promotion-row{display:grid;grid-template-columns:minmax(140px,.36fr) minmax(0,1fr);gap:var(--space-6);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}
.comparison-promotion-row h3{margin:0;font-size:1.12rem;line-height:var(--leading-normal)}
.comparison-promotion-row p+p{margin-top:var(--space-2)}
.comparison-promotion-row .comparison-promotion-value{color:var(--color-ink);font-size:var(--text-lead);line-height:var(--leading-normal)}
@media(max-width:620px){
  .comparison-guide-ws-qt .comparison-guide-promotion-action{width:100%}
  .comparison-promotion-row{grid-template-columns:1fr;gap:var(--space-2)}
}

/* Brokerage Promotions */
.brokerage-promotions-page{overflow:clip;color-scheme:light;--radius-card:16px}
@media(max-width:620px){
  .brokerage-promotions-page .brand-lockup{max-width:100%}
  .brokerage-promotions-page .brand-lockup-name{min-width:0}
  .brokerage-promotions-page .brand-lockup>.brand-lockup{flex-shrink:0}
}
.brokerage-promotions-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:start}
.brokerage-promotions-hero-copy{max-width:var(--article-width)}
.brokerage-promotions-hero-copy h1{font-size:clamp(1.75rem,1.2rem + 2.4vw,2.5rem);line-height:var(--leading-display);letter-spacing:var(--tracking-tight)}
.brokerage-promotions-lede{text-wrap:pretty}
/* Guide metadata stays subordinate to the comparison task. */
.brokerage-promotions-meta{max-width:760px}
.brokerage-promotions-disclosure{max-width:var(--article-width);margin:9px 0 0;color:var(--color-muted);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.brokerage-promotions-body{padding-top:var(--space-12)}
.brokerage-promotions-reading>.brokerage-promotions-section{margin-top:var(--space-8)}
.brokerage-promotions-reading>.brokerage-promotions-section:first-child{margin-top:0}
.brokerage-promotions-section-heading h2{color:var(--color-ink);font-size:clamp(1.8rem,2.35vw,2.1rem);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);text-wrap:balance}
.brokerage-promotions-section-heading>p{margin-top:var(--space-2-5);color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose)}
.brokerage-shortlist-panel{min-width:0;padding:22px;border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-canvas)}
.brokerage-shortlist-heading-row{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-3-5);align-items:start}
.brokerage-shortlist-heading-row>div{min-width:0}
.brokerage-shortlist-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-md);background:var(--color-aqua-wash);color:var(--color-aqua)}
.brokerage-shortlist-icon svg{width:20px;height:20px}
.brokerage-shortlist-panel h2{margin:0;font-size:clamp(1.25rem,2vw,1.5rem);line-height:var(--leading-snug);letter-spacing:var(--tracking-slight)}
.brokerage-shortlist-intro{max-width:68ch;margin:var(--space-1-5) 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.brokerage-shortlist-fallback{display:grid;gap:var(--space-2-5);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}
.brokerage-shortlist-fallback p{margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.brokerage-shortlist-fallback .button{width:100%;margin-top:4px}
.brokerage-shortlist-form{display:grid;gap:13px;margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}
.brokerage-shortlist-field{display:grid;gap:var(--space-1-5)}
.brokerage-shortlist-field label,.brokerage-shortlist-form .finder-control-label{color:var(--color-ink);font-size:var(--text-card);font-weight:800}
.brokerage-shortlist-form .finder-control{gap:var(--space-1-5)}
.brokerage-shortlist-form .finder-select-native{width:100%;min-height:48px}
.brokerage-shortlist-money{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;width:100%;min-height:48px;border:2px solid var(--color-control-border);border-radius:var(--radius-sm);background:var(--color-canvas);transition:border-color .18s ease}
.brokerage-shortlist-money>span{padding-left:13px;color:var(--color-muted);font-weight:750}
.brokerage-shortlist-money input{width:100%;min-width:0;min-height:46px;padding:var(--space-2-5) var(--space-3) var(--space-2-5) var(--space-1-5);border:0;background:transparent;color:var(--color-ink);caret-color:var(--color-pine)}
.brokerage-shortlist-money input:focus{outline:0}
.brokerage-shortlist-money:focus-within{border-color:var(--color-pine)}
.brokerage-shortlist-form .button{width:100%;min-height:48px}
.brokerage-shortlist-note{margin:0;color:var(--color-muted);font-size:var(--text-xs);line-height:var(--leading-relaxed)}
.brokerage-shortlist-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3-5);margin:18px 0 var(--space-3-5);padding:var(--space-3-5) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-frost)}
.brokerage-shortlist-status{margin:0;color:var(--color-detail);font-weight:750}
.brokerage-shortlist-status+.brokerage-shortlist-note{margin-top:var(--space-1-5)}
.brokerage-shortlist-form [data-brokerage-shortlist-feedback]:empty{display:none}
/* CLS reserve: !important is required because site.css [hidden] also uses !important. Scope excludes [data-brokerage-unavailable] so the fallback returns on module failure or early return. */
html.nav-enhanced [data-brokerage-promotions-page]:not([data-brokerage-unavailable]) [data-brokerage-shortlist-fallback]{display:none}
html.nav-enhanced [data-brokerage-promotions-page]:not([data-brokerage-unavailable]) [data-brokerage-shortlist-interactive][hidden]{display:block!important;visibility:hidden}
.brokerage-shortlist-empty{margin:18px 0 var(--space-3-5);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-frost)}
.brokerage-shortlist-empty strong{display:block;color:var(--color-ink)}
.brokerage-shortlist-empty p{margin:var(--space-1-5) 0 0;color:var(--color-copy);text-wrap:pretty}
.brokerage-promotions-table{table-layout:fixed;font-size:var(--text-card)}
.brokerage-promotions-table thead th{padding-block:var(--space-3-5);padding-inline:var(--space-3);background:var(--color-ink);color:var(--color-inverse);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-normal);text-transform:none}
.brokerage-promotions-table thead th:nth-child(1){width:22%}
.brokerage-promotions-table thead th:nth-child(2){width:30%}
.brokerage-promotions-table thead th:nth-child(3){width:12%}.brokerage-promotions-table thead th:nth-child(4){width:16%}.brokerage-promotions-table thead th:nth-child(5){width:20%}.brokerage-table-sort-button{display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--space-1-5);width:100%;min-height:0;padding:0;background:transparent;color:var(--color-inverse);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-normal);text-transform:none;text-align:left;white-space:nowrap}.brokerage-table-sort-button:focus-visible{outline:2px solid var(--color-inverse);outline-offset:2px}
.brokerage-table-sort-button [data-sort-arrow] svg{display:block;width:14px;height:14px;stroke-width:2.4;transition:transform .18s ease}
.brokerage-promotions-table thead th[aria-sort="none"] [data-sort-arrow]{visibility:hidden}
.brokerage-promotions-table thead th[aria-sort="ascending"] [data-sort-arrow] svg{transform:rotate(180deg)}
.brokerage-promotions-table td::before{text-transform:none;letter-spacing:var(--tracking-normal)}
.brokerage-promotions-table th,.brokerage-promotions-table td{padding-inline:18px}
.brokerage-promotions-table tbody th,.brokerage-promotions-table tbody td{padding-block:var(--space-3);vertical-align:middle}
.brokerage-matrix-provider .brand-lockup{gap:var(--space-2-5)}
.brokerage-matrix-provider .brand-lockup-name{color:var(--color-ink);font-size:var(--text-card);line-height:var(--leading-normal);font-weight:800;text-wrap:balance}
.brokerage-matrix-badges{display:flex;flex-wrap:wrap;gap:var(--space-1-5);margin-top:var(--space-2-5)}
.brokerage-matrix-client-badge,.brokerage-matrix-scope-badge{display:inline-flex;align-items:center;min-height:26px;padding:3px 7px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:750;line-height:var(--leading-snug);white-space:nowrap}
.brokerage-matrix-client-badge{border:1px solid var(--color-aqua-border);background:var(--color-aqua-wash);color:var(--color-detail);gap:var(--space-1-5)}
.brokerage-matrix-client-badge span,.brokerage-matrix-urgency-badge span,.brokerage-matrix-highest-badge span,.brokerage-matrix-commission-badge span{display:grid;place-items:center;width:14px;height:14px;flex:0 0 14px}
.brokerage-matrix-client-badge span svg,.brokerage-matrix-urgency-badge span svg,.brokerage-matrix-highest-badge span svg,.brokerage-matrix-commission-badge span svg{width:14px;height:14px}
.brokerage-matrix-scope-badge{border:1px solid var(--color-border);background:var(--color-frost);color:var(--color-muted)}
.brokerage-matrix-reward{display:block;max-width:42ch;color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-snug);font-weight:800;font-variant-numeric:tabular-nums;text-wrap:pretty;hyphens:none}
.brokerage-matrix-rate-pair{display:flex;flex-wrap:wrap;gap:2px var(--space-2-5)}
.brokerage-matrix-rate-pair>span{white-space:normal}
.brokerage-matrix-reward-max{display:block;margin-top:2px}
.brokerage-matrix-catch{display:grid;grid-template-columns:20px minmax(0,1fr);gap:var(--space-2);align-items:start}
.brokerage-matrix-catch-icon{display:grid;place-items:center;width:20px;height:20px;margin-top:1px;color:var(--color-aqua)}
.brokerage-matrix-catch-icon svg{width:17px;height:17px}
.brokerage-promotions-table .brokerage-matrix-caveat-list{display:grid;gap:2px;margin:0;padding:0;list-style:none;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}.brokerage-matrix-caveat-list li{display:grid;grid-template-columns:6px minmax(0,1fr);gap:var(--space-1-5)}.brokerage-matrix-caveat-list li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-aqua);margin-top:7px;flex:0 0 6px}
.brokerage-matrix-details{display:inline-flex;align-items:center;gap:5px;width:max-content;min-height:var(--touch-target-min);margin:7px 0 calc(var(--space-2) * -1) 28px;color:var(--color-pine);font-size:var(--text-sm);font-weight:800;white-space:nowrap;text-decoration:none}
.brokerage-matrix-chevron{display:inline-grid;place-items:center;width:16px;height:16px;transition:transform .18s ease}
.brokerage-matrix-chevron svg{width:16px;height:16px}
@media(hover:hover) and (pointer:fine){.brokerage-matrix-details:hover{color:var(--color-pine-hover)}.brokerage-matrix-details:hover .brokerage-matrix-chevron{transform:translateX(2px)}}
.brokerage-crc-referrals{margin-top:var(--space-12);padding:28px;background:var(--color-brand-surface);color:var(--color-ink);border:0;border-radius:0}
.brokerage-crc-referrals-heading{max-width:var(--article-width)}
.brokerage-crc-referrals h2{margin-bottom:var(--space-2-5);color:var(--color-ink);font-size:clamp(1.55rem,2vw,1.8rem)}
.brokerage-crc-referrals-heading>p{margin:0;color:var(--color-copy);text-wrap:pretty}
.brokerage-crc-referrals-heading>p+ p{margin-top:var(--space-2)}
.brokerage-crc-referrals-heading>.brokerage-crc-referrals-disclosure{color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.brokerage-referral-grid{gap:var(--space-4);margin-top:22px}
.brokerage-crc-referrals .comparison-provider-card{height:100%}
.brokerage-crc-referrals .comparison-provider-reward span{letter-spacing:var(--tracking-normal);text-transform:none}
.brokerage-crc-referrals-footer{display:flex;justify-content:flex-end;margin-top:var(--space-3-5)}
.brokerage-crc-all-link{display:inline-flex;align-items:center;gap:5px;min-height:var(--touch-target-min);color:var(--color-pine);font-size:var(--text-card);font-weight:800;text-decoration:none}
.brokerage-crc-all-link span{display:grid;place-items:center;width:16px;height:16px;transition:transform .18s ease}
@media(hover:hover) and (pointer:fine){.brokerage-crc-all-link:hover{color:var(--color-pine-hover)}.brokerage-crc-all-link:hover span{transform:translateX(2px)}}
.brokerage-promotions-providers{display:grid;gap:var(--space-6)}
.brokerage-provider-summary{min-width:0}
.brokerage-promotions-provider{display:block;scroll-margin-top:var(--space-6);padding:18px var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.brokerage-promotions-provider.content-section{margin-top:0}
.brokerage-promotions-provider-header{align-items:flex-start;margin:calc(var(--space-6) * -1) calc(var(--space-6) * -1) 0;padding:18px var(--space-6);border-bottom:1px solid var(--color-border);border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--color-frost)}
.brokerage-promotions-provider-heading{min-width:0}
.brokerage-promotions-provider-brand{margin-bottom:var(--space-2-5)}
.brokerage-promotions-provider-brand .brand-lockup-name{line-height:var(--leading-snug)}
.brokerage-promotions-provider-header h3{max-width:42ch;margin:0;font-size:clamp(1.3rem,2vw,1.55rem);line-height:var(--leading-snug);letter-spacing:var(--tracking-slight);text-wrap:balance}
.brokerage-promotions-provider-type{display:inline-flex;align-items:center;gap:var(--space-1-5);width:max-content;max-width:100%;min-height:26px;margin:var(--space-2) 0 0;padding:3px 7px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-sm);background:var(--color-aqua-wash);color:var(--color-detail);font-size:var(--text-xs);font-weight:750;line-height:var(--leading-snug)}
.brokerage-promotions-provider-type span{display:grid;place-items:center;width:14px;height:14px;flex:0 0 14px}
.brokerage-promotions-provider-type svg{width:14px;height:14px}
.brokerage-provider-official-link{display:inline-flex;align-items:center;gap:7px;min-height:var(--touch-target-min);padding:var(--space-2) var(--space-2-5);border:1px solid var(--color-control-border);border-radius:8px;background:var(--color-canvas);color:var(--color-pine);font-size:var(--text-card);font-weight:800;text-decoration:none;white-space:nowrap}
.brokerage-provider-official-link span{display:grid;place-items:center;width:18px;height:18px;flex:0 0 18px}
.brokerage-provider-header-links{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-start}
.brokerage-finder-note{flex-basis:100%;color:var(--color-muted);font-size:var(--text-xs);line-height:var(--leading-relaxed)}
.brokerage-provider-referral-link{display:inline-flex;align-items:center;gap:7px;min-height:var(--touch-target-min);padding:var(--space-2) var(--space-2-5);border:1px solid var(--color-pine);border-radius:8px;background:var(--color-pine);color:var(--color-inverse);font-size:var(--text-card);font-weight:800;text-decoration:none;white-space:nowrap}
.brokerage-provider-referral-link span{display:grid;place-items:center;width:18px;height:18px;flex:0 0 18px}
.brokerage-provider-reward-block{padding:var(--space-3-5) 0 var(--space-3)}
.brokerage-provider-reward-label{display:inline-flex;align-items:center;gap:var(--space-1-5);margin-bottom:var(--space-2-5);color:var(--color-muted);font-size:var(--text-sm);font-weight:750;line-height:var(--leading-snug)}
.brokerage-provider-reward-label>span:first-child{display:grid;place-items:center;width:16px;height:16px;color:var(--color-aqua)}
.brokerage-provider-reward-label svg{width:16px;height:16px}
.brokerage-provider-reward-block>strong{display:block;max-width:100%;color:var(--color-ink);font-size:clamp(1.35rem,2vw,1.6rem);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);text-wrap:pretty}
.brokerage-provider-reward-lines>span{display:block}
.brokerage-provider-reward-cap{margin-top:4px;color:var(--color-detail);font-size:var(--text-body);font-weight:650;letter-spacing:var(--tracking-slight);line-height:var(--leading-normal)}
.brokerage-provider-key-facts{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1.2fr);margin:0;border:0;border-bottom:1px solid var(--color-border)}
.brokerage-provider-key-facts>div{min-width:0;padding:var(--space-3) var(--space-3-5)}
.brokerage-provider-key-facts>div:first-child{padding-left:0}
.brokerage-provider-key-facts>div:last-child{padding-right:0}
.brokerage-provider-key-facts>div+div{border-left:1px solid var(--color-border)}
.brokerage-provider-key-facts dt{color:var(--color-muted);font-size:var(--text-sm);font-weight:750;letter-spacing:var(--tracking-normal);text-transform:none}
.brokerage-provider-key-facts dd{margin:4px 0 0;color:var(--color-detail);font-size:var(--text-card);font-weight:400;line-height:var(--leading-relaxed);overflow-wrap:break-word}
.brokerage-provider-decision-rows{margin:0;border:0;border-bottom:1px solid var(--color-border)}
.brokerage-provider-decision-rows>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:var(--space-4);align-items:start;padding:var(--space-3) 0}
.brokerage-provider-decision-rows>div+div{border-top:1px solid var(--color-border)}
.brokerage-provider-decision-rows dt{color:var(--color-ink);font-size:var(--text-sm);font-weight:750;line-height:var(--leading-relaxed)}
.brokerage-provider-decision-rows dd{min-width:0;margin:0;color:var(--color-detail);font-size:var(--text-card);font-weight:400;line-height:var(--leading-loose);text-wrap:pretty;overflow-wrap:break-word}
.brokerage-provider-deadline-list{display:grid;gap:5px}
.brokerage-provider-deadline-list>span{display:grid;grid-template-columns:65px minmax(0,1fr);gap:var(--space-2);align-items:baseline}
.brokerage-provider-deadline-list strong{color:var(--color-muted);font-size:var(--text-sm);font-weight:650;line-height:var(--leading-relaxed)}
.brokerage-provider-deadline-list>span>span{color:var(--color-detail);font-size:var(--text-card);font-weight:400;line-height:var(--leading-loose);overflow-wrap:break-word}
.brokerage-promotions-caveat{display:grid;grid-template-columns:32px minmax(0,1fr);gap:var(--space-2-5);align-items:start;width:100%;margin:var(--space-3-5) 0 0;padding:var(--space-3) var(--space-3-5);border:1px solid var(--color-caution-border);border-radius:var(--radius-md);background:var(--color-canvas);color:var(--color-detail)}
/* Brokerage cleanup, Nov 4 2026: one token for the 28-32px icon chips, values unchanged. */
.brokerage-promotions-caveat-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--color-caution-border);border-radius:var(--radius-icon);background:var(--color-caution-wash);color:var(--color-caution-deep)}
.brokerage-promotions-caveat-icon svg{width:16px;height:16px}
.brokerage-promotions-caveat-copy{min-width:0}
.brokerage-promotions-caveat-copy>strong{display:block;color:var(--color-caution-deep);font-size:var(--text-sm);font-weight:800;line-height:var(--leading-snug)}
.brokerage-promotions-caveat-copy>p{margin:4px 0 0;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.brokerage-provider-point-list{display:grid;gap:2px;margin:0;padding:0;list-style:none;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}.brokerage-provider-point-list li{display:grid;grid-template-columns:6px minmax(0,1fr);gap:var(--space-1-5)}.brokerage-provider-point-list li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-aqua);margin-top:7px;flex:0 0 6px}.brokerage-promotions-caveat-copy .brokerage-provider-point-list{margin-top:4px}.brokerage-provider-caveat-list li::before{background:var(--color-caution)}
.content-section .brokerage-provider-point-list li+li{margin-top:0}
.content-section .brokerage-provider-point-list{padding-left:0}
.brokerage-promotions-mechanics{margin-top:var(--space-4);border:0}
.brokerage-promotions-mechanics .best-bonuses-sources-summary{padding:var(--space-3-5) var(--space-4);border:1px solid var(--color-aqua-border);border-radius:var(--radius-md);background:var(--color-canvas)}
.brokerage-promotions-mechanics-summary{display:flex;align-items:center;gap:var(--space-3);min-width:0}
.brokerage-promotions-mechanics-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-md);background:var(--color-aqua-wash);color:var(--color-aqua)}
.brokerage-promotions-mechanics-icon svg{width:18px;height:18px}
.brokerage-promotions-mechanics .best-bonuses-sources-summary-copy>strong{color:var(--color-ink);font-size:var(--text-body);font-weight:750}
.brokerage-promotions-mechanics .best-bonuses-sources-summary-copy>span{margin-top:4px;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.brokerage-promotions-mechanics-body{display:grid;gap:var(--space-5);padding:var(--space-4) 0 2px}
.brokerage-mechanics-group{min-width:0}
.brokerage-mechanics-group+.brokerage-mechanics-group{padding-top:var(--space-5);border-top:1px solid var(--color-border)}
.brokerage-mechanics-group-heading{display:flex;align-items:center;gap:9px;margin:0 0 2px;color:var(--color-ink);font-size:.9rem;font-weight:750;line-height:var(--leading-normal)}
.brokerage-mechanics-group-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-icon);background:var(--color-aqua-wash);color:var(--color-aqua)}
.brokerage-mechanics-group-icon svg{width:16px;height:16px}
.brokerage-mechanics-group .rent-guide-source-row{grid-template-columns:180px minmax(0,1fr);gap:var(--space-5);padding:var(--space-3-5) 0}
.brokerage-mechanics-group .rent-guide-source-row>strong{color:var(--color-ink);font-size:var(--text-sm);font-weight:750;line-height:var(--leading-relaxed)}
.brokerage-mechanics-group .rent-guide-source-row>span{min-width:0;color:var(--color-detail);font-size:var(--text-card);font-weight:400;line-height:var(--leading-loose);text-wrap:pretty;overflow-wrap:break-word}
@media(hover:hover) and (pointer:fine){.brokerage-provider-official-link:hover{border-color:var(--color-pine-hover);background:var(--color-pine-soft);color:var(--color-pine-hover)}.brokerage-provider-referral-link:hover{background:var(--color-pine-hover);border-color:var(--color-pine-hover);color:var(--color-inverse)}}
.brokerage-promotions-source{display:flex;width:100%;align-items:center;flex-wrap:wrap;gap:var(--space-1-5) var(--space-2-5);margin:var(--space-3) 0 0;padding-top:var(--space-3);border-top:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.brokerage-promotions-source-terms{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;min-width:0}
.brokerage-promotions-source-link{display:inline-flex;align-items:center;gap:4px;min-height:var(--touch-target-min);color:var(--color-pine);font-weight:700;text-decoration:none}
.brokerage-promotions-source-icon{display:inline-flex;width:14px;height:14px;flex:0 0 14px;color:currentColor}
.brokerage-promotions-source-icon svg{display:block;width:14px;height:14px}
.brokerage-promotions-source-verified{display:inline-flex;align-items:center;gap:4px;color:var(--color-aqua)}
.brokerage-promotions-source-verified>span{display:grid;place-items:center;width:14px;height:14px;color:var(--color-aqua)}
.brokerage-promotions-source-verified svg{width:14px;height:14px}
/* Brokerage decision-support surfaces: real-value comparison, referral guidance, transfer workflow, and provider hierarchy. */
.brokerage-real-value{padding:18px;border-radius:var(--radius-field);background:var(--color-frost)}
.brokerage-real-value-primary{min-width:0}
.brokerage-real-value-heading,.brokerage-transfer-heading,.brokerage-methodology-heading{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-3);align-items:start}
.brokerage-real-value-heading h2{margin-bottom:var(--space-2);text-wrap:balance}
.brokerage-real-value-heading p{margin:0;color:var(--color-detail);text-wrap:pretty}
.brokerage-real-value-formula{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:var(--space-3-5) 0 var(--space-2-5);overflow:hidden;border:1px solid var(--color-aqua-border);border-radius:var(--radius-button);background:var(--color-canvas)}
.brokerage-real-value-term{position:relative;min-width:0;padding:var(--space-2-5) var(--space-3);text-align:center}
.brokerage-real-value-term+.brokerage-real-value-term{border-left:1px solid var(--color-aqua-border)}
.brokerage-real-value-term strong{display:block;color:var(--color-ink);font-size:var(--text-card);line-height:var(--leading-snug)}
.brokerage-real-value-term:not(:first-child) strong,.brokerage-real-value-term:not(:first-child)>span:last-child{padding-left:var(--space-5)}
.brokerage-real-value-operator{position:absolute;top:13px;left:13px;color:var(--color-aqua);font-size:var(--text-body);font-weight:850;line-height:var(--leading-none)}
.brokerage-real-value-result{background:var(--color-canvas)}
.brokerage-real-value-result strong{font-weight:850}
.brokerage-real-value-primary>.brokerage-shortlist-note{font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.brokerage-real-value-cta{display:inline-flex;gap:7px;margin-top:var(--space-3-5);width:100%;justify-content:center}
.brokerage-real-value-cta .button-icon{display:grid;place-items:center;width:18px;height:18px}
.brokerage-transfer-checklist{padding:var(--space-6) 26px;border-radius:var(--radius-field);background:var(--color-brand-surface)}
.brokerage-transfer-heading-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-md);background:var(--color-aqua-wash);color:var(--color-aqua)}
.brokerage-transfer-heading-icon svg{width:20px;height:20px}
.brokerage-transfer-phases{display:grid;grid-template-columns:minmax(0,1fr);gap:0;overflow-wrap:anywhere;margin-top:18px;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.brokerage-transfer-phase{padding:18px 0}
.brokerage-transfer-phase+.brokerage-transfer-phase{border-top:1px solid var(--color-border)}
.brokerage-transfer-phase h3{display:inline-flex;align-items:center;gap:var(--space-2);margin:0 var(--space-5) var(--space-3);color:var(--color-ink);font-size:.9rem;line-height:var(--leading-normal)}
.brokerage-transfer-phase-heading-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-icon);background:var(--color-aqua-wash);color:var(--color-aqua)}
.brokerage-transfer-phase-heading-icon svg{width:16px;height:16px}
.brokerage-transfer-phase .brokerage-promotions-checklist{grid-template-columns:repeat(2,minmax(0,1fr));border:0}
.brokerage-transfer-phase .brokerage-promotions-checklist li{min-height:72px;padding:13px var(--space-5)}
.brokerage-transfer-phase .brokerage-promotions-checklist li:nth-child(even){border-left:1px solid var(--color-border)}
.brokerage-transfer-phase .brokerage-promotions-checklist li:nth-child(n+3){border-top:1px solid var(--color-border)}
.brokerage-transfer-phase .rent-guide-flow-number{background:var(--color-pine-soft);color:var(--color-pine)}
.brokerage-transfer-phase .rent-guide-flow p{margin:2px 0 0;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-loose)}
.brokerage-promotions-page .comparison-guide-final-cta{margin-top:var(--space-12)}
.brokerage-methodology{width:100%;padding:var(--space-6) 26px;border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-frost)}
.brokerage-methodology-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-md);background:var(--color-aqua-wash);color:var(--color-aqua)}
.brokerage-methodology-icon svg{width:20px;height:20px}
.brokerage-methodology-copy{min-width:0;margin-top:var(--space-4)}
.brokerage-methodology-copy>p{margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.brokerage-methodology-copy>p+p{margin-top:var(--space-3)}
.brokerage-methodology-facts{width:100%;margin:var(--space-4) 0 0;padding:0;border-top:1px solid var(--color-border);list-style:none;color:var(--color-muted);font-size:var(--text-sm)}
.brokerage-methodology-facts li{position:relative;margin:0}
.brokerage-promotions-final-cta{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:var(--space-8);padding:var(--space-6) 26px}
.brokerage-promotions-final-cta .category-guide-cta-copy{min-width:0}
.brokerage-promotions-final-cta .category-guide-cta-copy h2{max-width:28ch;margin-bottom:var(--space-2);font-size:clamp(1.3rem,2vw,1.45rem);line-height:var(--leading-snug);text-wrap:balance}
.brokerage-promotions-final-cta .category-guide-cta-copy p{max-width:52ch;line-height:var(--leading-loose)}
.brokerage-promotions-final-cta .category-guide-cta-actions{display:grid;gap:var(--space-1-5);width:min(100%,360px);justify-self:end}
.brokerage-promotions-final-cta .comparison-guide-choice-cta{width:100%;min-width:0;justify-content:center;text-align:center;white-space:normal}
.brokerage-final-cta-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:var(--touch-target-min);color:var(--color-inverse-copy);font-weight:750;text-align:center}
@media(hover:hover) and (pointer:fine){.brokerage-final-cta-secondary:hover{color:var(--color-inverse)}}
@media(min-width:900px){
  .brokerage-methodology{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--space-6) var(--space-8);align-items:start}
  .brokerage-methodology-copy{margin-top:0}
  .brokerage-methodology-facts{grid-column:1/-1;margin-top:0}
  .brokerage-provider-summary{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:var(--space-4) var(--space-6);align-items:start;padding:var(--space-6) 0 0}
  .brokerage-provider-summary .brokerage-provider-reward-block{grid-column:1;grid-row:1;padding:0}
  .brokerage-provider-summary .brokerage-provider-key-facts{grid-column:2;grid-row:1;align-self:center;border-bottom:0}
  .brokerage-provider-summary .brokerage-provider-decision-rows{grid-column:1/-1;grid-row:2;border-top:1px solid var(--color-border)}
  .brokerage-provider-summary .brokerage-promotions-caveat{grid-column:1/-1;grid-row:3;margin-top:0}
}
@media(min-width:1024px){
  .brokerage-promotions-hero-copy{max-width:none}
  .brokerage-shortlist-form{grid-template-columns:minmax(0,1.1fr) repeat(2,minmax(0,1fr)) auto;align-items:end}
  .brokerage-shortlist-form>.brokerage-shortlist-note{grid-column:1/-1}
}
@media(max-width:760px){
  .brokerage-promotions-source{margin-bottom:0}
  .brokerage-shortlist-panel{padding:var(--space-5)}
  .brokerage-shortlist-summary{align-items:stretch;flex-direction:column}
  .brokerage-shortlist-summary .button{width:100%}
  .brokerage-promotions-table tbody td{grid-template-columns:1fr;gap:var(--space-1-5)}
  .brokerage-promotions-table td::before{margin-bottom:1px}
  .brokerage-provider-key-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .brokerage-provider-key-facts>div:nth-child(3){grid-column:1/-1;border-left:0;border-top:1px solid var(--color-border)}
  .brokerage-transfer-phase .brokerage-promotions-checklist{grid-template-columns:1fr}
  .brokerage-transfer-phase .brokerage-promotions-checklist li:nth-child(even){border-left:0}
  .brokerage-transfer-phase .brokerage-promotions-checklist li:nth-child(n+2){border-top:1px solid var(--color-border)}
  .brokerage-crc-referrals{padding:22px var(--space-5)}
  .brokerage-crc-referrals-footer{justify-content:flex-start}
  .brokerage-promotions-final-cta{grid-template-columns:1fr;gap:18px}
  .brokerage-promotions-final-cta .category-guide-cta-actions{width:100%;justify-self:stretch}
}
@media(max-width:620px){
  .brokerage-promotions-hero .breadcrumbs{margin-bottom:var(--space-2)}
  .brokerage-promotions-meta{gap:var(--space-1-5) var(--space-3-5)}
  .brokerage-promotions-disclosure{margin-top:var(--space-2)}
  .brokerage-promotions-hero-grid{gap:22px}
  .brokerage-shortlist-panel{padding:18px}
  .brokerage-shortlist-heading-row{grid-template-columns:40px minmax(0,1fr);gap:var(--space-3)}
  .brokerage-shortlist-icon{width:40px;height:40px}
  .brokerage-shortlist-panel h2{font-size:var(--text-h3)}
  .brokerage-shortlist-intro{margin-top:var(--space-2-5);font-size:var(--text-card)}
  .brokerage-promotions-section-heading h2{font-size:clamp(1.65rem,7.4vw,1.85rem);line-height:var(--leading-tight)}
  .brokerage-promotions-section-heading>p{margin-top:var(--space-2);font-size:var(--text-body);line-height:var(--leading-loose)}

  .brokerage-promotions-table tbody tr{margin-bottom:var(--space-2-5);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-canvas)}
  .brokerage-promotions-table tbody tr:last-child{margin-bottom:0}
  .brokerage-promotions-table tbody th{padding:13px var(--space-3-5);background:var(--color-canvas);font-size:var(--text-card)}
  .brokerage-matrix-provider .brand-lockup{gap:9px}
  .brokerage-matrix-provider .brand-lockup-name{font-size:var(--text-body);line-height:var(--leading-snug)}
  .brokerage-matrix-badges{margin-top:var(--space-2)}
  .brokerage-promotions-table tbody td{font-size:var(--text-card);line-height:var(--leading-relaxed)}
  .brokerage-promotions-table td::before{font-size:var(--text-xs);font-weight:750}
  .brokerage-matrix-reward{font-size:var(--text-body)}
  .brokerage-matrix-client-badge,.brokerage-matrix-scope-badge{font-size:var(--text-xs)}
  .brokerage-promotions-table .brokerage-matrix-caveat-list{font-size:var(--text-sm);line-height:var(--leading-relaxed)}
  .brokerage-matrix-details{margin:2px 0 calc(var(--space-1-5) * -1) 28px}

  .brokerage-crc-referrals{padding:var(--space-5) var(--space-4)}
  .brokerage-crc-referrals h2{font-size:1.65rem;line-height:var(--leading-tight)}
  .brokerage-crc-referrals-heading>p{font-size:var(--text-card);line-height:var(--leading-loose)}
  .brokerage-crc-referrals-heading>.brokerage-crc-referrals-disclosure{font-size:var(--text-xs)}
  .brokerage-referral-grid{gap:var(--space-3);margin-top:var(--space-4)}
  .brokerage-crc-referrals .comparison-provider-card{padding:18px}
  .brokerage-crc-referrals .comparison-provider-header{min-height:40px;padding-bottom:var(--space-3-5)}
  .brokerage-crc-referrals .brand-lockup-lg .brand-lockup-logo{max-width:190px}
  .brokerage-crc-referrals .comparison-provider-reward{margin:var(--space-4) 0 4px}
  .brokerage-crc-referrals .comparison-provider-reward strong{font-size:2rem}
  .brokerage-crc-referrals .comparison-provider-facts{margin-bottom:var(--space-4)}
  .brokerage-crc-referrals .comparison-provider-fact{grid-template-columns:36px minmax(0,1fr);gap:var(--space-2-5);padding:var(--space-3) 0}
  .brokerage-crc-referrals .comparison-fact-icon{width:36px;height:36px}
  .brokerage-crc-referrals .comparison-provider-fact-copy strong{font-size:var(--text-card)}
  .brokerage-crc-referrals .comparison-provider-fact-copy span{font-size:var(--text-card)}
  .brokerage-crc-all-link{font-size:var(--text-sm)}

  .brokerage-promotions-providers{gap:var(--space-4)}
  .brokerage-promotions-provider{padding:18px var(--space-4)}
  .brokerage-promotions-provider-header{align-items:stretch;flex-direction:column;gap:var(--space-2);margin:-18px calc(var(--space-4) * -1) 0;padding:var(--space-3-5) var(--space-4)}
  .brokerage-promotions-provider-header h3{font-size:var(--text-h3);line-height:var(--leading-snug)}
  .brokerage-provider-official-link{align-self:flex-start;width:auto;justify-content:flex-start;white-space:normal}
  .brokerage-provider-reward-block>strong{font-size:1.38rem}
  .brokerage-provider-key-facts{column-gap:var(--space-4)}
  .brokerage-provider-key-facts>div{padding:11px 0}
  .brokerage-provider-key-facts>div+div{border-left:0}
  .brokerage-provider-decision-rows>div{grid-template-columns:1fr;gap:5px;padding:var(--space-3) 0}
  .brokerage-promotions-caveat{grid-template-columns:30px minmax(0,1fr);padding:var(--space-3)}
  .brokerage-promotions-caveat-icon{width:30px;height:30px}
  .brokerage-promotions-mechanics .best-bonuses-sources-summary{padding:var(--space-3-5)}
  .brokerage-promotions-mechanics-summary{align-items:flex-start;gap:var(--space-2-5)}
  .brokerage-promotions-mechanics-icon{width:34px;height:34px;flex-basis:34px}
  .brokerage-promotions-mechanics-body{gap:var(--space-4)}
  .brokerage-mechanics-group+.brokerage-mechanics-group{padding-top:var(--space-4)}
  .brokerage-mechanics-group .rent-guide-source-row{grid-template-columns:1fr;gap:var(--space-2);padding:var(--space-3) 0}
  .brokerage-promotions-source{align-items:flex-start;flex-direction:column;gap:7px}
  .brokerage-promotions-source-terms{gap:4px var(--space-1-5)}

  .brokerage-real-value{padding:18px}
  .brokerage-real-value-heading{grid-template-columns:36px minmax(0,1fr);gap:11px}
.brokerage-real-value-heading .comparison-fact-icon{border:1px solid var(--color-aqua-border);background:var(--color-aqua-wash);color:var(--color-aqua);width:36px;height:36px}
  .brokerage-real-value-heading>div{display:contents}
  .brokerage-real-value-heading h2{margin-bottom:0;font-size:1.5rem;line-height:var(--leading-tight)}
  .brokerage-real-value-heading p{grid-column:1/-1;font-size:var(--text-card);line-height:var(--leading-loose)}
  .brokerage-real-value-formula{margin:var(--space-3-5) 0 var(--space-2-5);border-radius:var(--radius-md)}
  .brokerage-real-value-cta{width:100%;min-height:48px;justify-content:center}

  .brokerage-transfer-checklist{padding:18px}
  .brokerage-transfer-phase{padding:var(--space-4) 0}
  .brokerage-transfer-phase h3{margin:0 var(--space-4) var(--space-2-5)}
  .brokerage-transfer-phase .brokerage-promotions-checklist li{padding:13px var(--space-4)}
  .brokerage-transfer-phase-heading-icon{width:26px;height:26px}
  .brokerage-methodology{padding:18px}
  .brokerage-methodology-heading{grid-template-columns:36px minmax(0,1fr);gap:var(--space-2-5)}
  .brokerage-methodology-icon{width:36px;height:36px}
  .brokerage-promotions-final-cta{padding:var(--space-5)}
  .brokerage-final-cta-secondary{width:100%}
}
@media(max-width:390px){
  .brokerage-promotions-hero{padding:var(--space-4) 0 var(--space-4)}
}
@media(min-width:391px) and (max-width:760px){
  .brokerage-promotions-hero{padding:var(--space-4) 0 var(--space-6)}
}

/* Reusable comparison decision refinement */
.comparison-verdict-choice h3{display:grid;gap:var(--space-2);margin:0 0 var(--space-3-5)}
.comparison-verdict-surface .comparison-verdict-provider{display:block}
.comparison-verdict-surface .comparison-verdict-prompt{display:block;font-size:var(--text-body);line-height:var(--leading-snug);letter-spacing:var(--tracking-slight)}
.comparison-verdict-choice>.comparison-verdict-list:last-child{margin-bottom:0}
.comparison-verdict-surface .comparison-verdict-cta{align-self:flex-start;min-height:48px;margin-top:auto}
.comparison-signup-factor{display:flex;align-items:center;gap:9px}
.comparison-signup-factor-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-icon);background:var(--color-aqua-wash);color:var(--color-aqua)}
.comparison-signup-factor-icon svg{width:15px;height:15px}
.comparison-guide-signup-table tbody td{vertical-align:top}
.comparison-value-stack{display:grid;align-content:start;gap:5px;min-width:0}
.comparison-value-primary{display:block;color:var(--color-ink);font-weight:850;line-height:var(--leading-normal);text-wrap:pretty}
.comparison-value-secondary{display:block;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed);text-wrap:pretty}
.comparison-value-badges{display:flex;flex-wrap:wrap;gap:var(--space-1-5);margin-top:2px}
.comparison-value-badges .badge{min-height:24px;padding:3px 7px;font-size:var(--text-xs);line-height:var(--leading-snug)}
@media(max-width:620px){.comparison-verdict-surface .comparison-verdict-cta{width:100%}}
@media(max-width:480px){
  .comparison-guide-table:not(.comparison-guide-table-compact) tbody td{grid-template-columns:1fr;gap:var(--space-1-5);padding:var(--space-3) var(--space-3-5) var(--space-3-5)}
  .comparison-guide-table:not(.comparison-guide-table-compact) td::before{color:var(--color-muted);font-size:var(--text-xs)}
  .comparison-value-secondary{font-size:var(--text-sm)}
}


/* Editorial alternative, not a third competing provider recommendation. */
.comparison-rent-page .rent-choose-neither{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-brand-surface);color:var(--color-detail)}
.comparison-rent-page .rent-choose-neither svg{flex:0 0 20px;margin-top:2px;color:var(--color-detail)}
.comparison-rent-page .rent-choose-neither strong{color:var(--color-ink)}
/* Rent provider decision: same comparison HTML, denser evidence hierarchy. */
.comparison-rent-page .comparison-provider-card{padding:var(--space-4)}
.comparison-rent-page .comparison-provider-header{padding-bottom:var(--space-3)}
.comparison-rent-page .comparison-provider-reward{margin:var(--space-3-5) 0 4px}
.comparison-rent-page .comparison-provider-reward strong{font-size:clamp(1.8rem,3vw,2.2rem)}
.comparison-rent-page .comparison-provider-fact{padding:var(--space-2-5) 0}
.comparison-rent-page .rent-factors-notes{display:grid;gap:var(--space-1-5);margin-top:var(--space-3-5)}
.comparison-rent-page .rent-factors-notes p{margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.comparison-rent-page .rent-pair-table .comparison-value-secondary{font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.rent-economics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-6);padding:var(--space-4);border-radius:var(--radius-field);background:var(--color-aqua-wash);font-variant-numeric:tabular-nums}
.rent-economics-card{display:flex;min-width:0;flex-direction:column;padding:var(--space-4);border:1px solid var(--color-aqua-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.rent-economics-card-top{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:var(--space-2)}
.rent-economics-card-top h3{display:grid;gap:2px;margin:0;font-size:1.08rem;line-height:var(--leading-normal);color:var(--color-ink)}
.rent-economics-card-top h3 span{font-size:var(--text-sm);font-weight:400;color:var(--color-copy)}
.rent-economics-fee{color:var(--color-detail);white-space:nowrap}
.rent-economics-net{display:grid;gap:4px;margin:18px 0 0}
.rent-economics-net>span{color:var(--color-aqua);font-size:var(--text-xs);font-weight:800}
.rent-economics-net>strong{color:var(--color-ink);font-size:clamp(1.9rem,3vw,2.3rem);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}
.rent-economics-before{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--space-1-5) var(--space-3);margin:var(--space-3) 0 0;padding:var(--space-2-5) 0 0;border-top:1px solid var(--color-border);font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-detail)}
.rent-economics-before strong{color:var(--color-ink);font-size:var(--text-body)}
.rent-economics-before-negative strong{color:var(--color-negative)}
.rent-economics-breakdown{display:grid;gap:0;margin:var(--space-4) 0 0;padding:var(--space-2) 0;border-top:1px solid var(--color-border)}
.rent-economics-breakdown div{display:flex;justify-content:space-between;gap:var(--space-3);padding:5px 0;align-items:baseline}
.rent-economics-breakdown dt{color:var(--color-copy);font-size:var(--text-card)}
.rent-economics-breakdown dd{margin:0;color:var(--color-ink);font-size:var(--text-card);font-weight:750;white-space:nowrap}
.rent-economics-restriction{display:flex;align-items:start;gap:var(--space-2);margin:auto 0 0;padding:var(--space-2-5);border-radius:var(--radius-sm);background:var(--color-caution-wash);color:var(--color-detail);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.rent-economics-restriction svg{flex:0 0 auto;margin-top:1px;color:var(--color-caution-deep)}
.rent-economics-next{margin:var(--space-4) 0 0}
.rent-economics-next a{display:inline-flex;align-items:center;gap:var(--space-1-5);min-height:var(--touch-target-min);font-weight:750}
.rent-bank-alternatives{margin-top:var(--space-6);padding:var(--space-4);border-radius:var(--radius-card);background:var(--color-frost)}
.rent-bank-heading{display:flex;align-items:start;gap:var(--space-3)}
.rent-bank-heading>span{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:var(--radius-md);background:var(--color-canvas);color:var(--color-pine)}
.rent-bank-heading h3{margin:0;color:var(--color-ink);font-size:1.15rem;line-height:var(--leading-normal)}
.rent-bank-heading p{margin:4px 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.rent-bank-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border)}
.rent-bank-rows p{display:grid;align-content:start;gap:5px;margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.rent-bank-rows strong{color:var(--color-ink)}
.rent-economics-footnotes{display:grid;gap:var(--space-4);margin-top:var(--space-4)}
.rent-economics-warning{display:flex;align-items:start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-caution-border);border-radius:var(--radius-md);background:var(--color-caution-wash)}
.rent-note-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--color-canvas);color:var(--color-caution-deep)}
.rent-economics-warning h3{margin:0;color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-normal)}
.rent-economics-warning p{margin:var(--space-1-5) 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.rent-membership-detail{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md)}
.rent-membership-detail summary{min-height:var(--touch-target-min);align-content:center;color:var(--color-pine);font-weight:750;cursor:pointer}
.rent-membership-content{display:grid;gap:var(--space-3);padding-top:var(--space-3)}
.rent-membership-content p{margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.rent-membership-plans{display:grid;gap:0;margin:0}
.rent-membership-plans>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-border)}
.rent-membership-plans dt,.rent-membership-plans dd{display:grid;gap:4px;margin:0;font-size:var(--text-card);line-height:var(--leading-relaxed)}
.rent-membership-plans dt{color:var(--color-ink);font-weight:750}
.rent-membership-plans dt span,.rent-membership-plans dd span{color:var(--color-copy);font-size:var(--text-sm);font-weight:400}
.rent-membership-plans dd strong{color:var(--color-ink);font-weight:750}
.rent-credit-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin:var(--space-6) 0 0;padding:var(--space-4);border-radius:var(--radius-field);background:var(--color-aqua-wash);list-style:none}
.rent-credit-timeline li{display:flex;align-items:start;gap:var(--space-2-5);min-width:0}
.rent-credit-timeline li>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border:1px solid var(--color-aqua-border);border-radius:50%;background:var(--color-canvas);color:var(--color-aqua);font-weight:800}
.rent-credit-timeline li>div{display:grid;gap:5px;min-width:0}
.rent-credit-timeline strong{color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-normal)}
.rent-credit-timeline small{color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed)}
.rent-invite-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-field);background:var(--color-frost)}
.rent-invite-card{display:flex;flex-direction:column;min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.rent-invite-card h3{margin:0;min-height:38px}
.rent-invite-reward{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-1-5) var(--space-2-5);margin:var(--space-4) 0 0}
.rent-invite-reward strong{font-size:1.8rem;line-height:var(--leading-tight);color:var(--color-pine);letter-spacing:var(--tracking-tight)}
.rent-invite-reward span{font-size:var(--text-card);color:var(--color-detail)}
.rent-invite-card dl{display:grid;gap:var(--space-2-5);margin:var(--space-4) 0 0}
.rent-invite-card dl>div{display:grid;gap:4px;padding-top:var(--space-2-5);border-top:1px solid var(--color-border)}
.rent-invite-card dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:800}
.rent-invite-card dd{margin:0;color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-relaxed)}
.rent-invite-warning{margin:var(--space-4) 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose)}
.rent-invite-link{display:inline-flex;align-items:center;align-self:start;gap:5px;min-height:var(--touch-target-min);margin-top:auto;padding-top:var(--space-3);font-size:var(--text-card);font-weight:750}
@media(max-width:850px){
  .rent-economics-grid{grid-template-columns:1fr}
  .rent-economics-net{margin-top:var(--space-3-5)}
  .rent-economics-breakdown{margin-top:var(--space-3)}
  .rent-credit-timeline{grid-template-columns:1fr;gap:var(--space-4)}
}
@media(max-width:800px){
  .comparison-rent-page .rent-pair-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .comparison-rent-page .rent-pair-table tbody th{grid-column:1/-1;padding:var(--space-2-5) var(--space-3)}
  .comparison-rent-page .rent-pair-table tbody td{display:block;min-width:0;padding:var(--space-3);border-bottom:0;overflow-wrap:anywhere}
  .comparison-rent-page .rent-pair-table tbody td+td{border-top:0;border-left:1px solid var(--color-border)}
  .comparison-rent-page .rent-pair-table td::before{display:block;margin-bottom:var(--space-1-5);color:var(--color-muted);font-size:var(--text-xs)}
  .comparison-rent-page .rent-pair-table .comparison-value-primary{font-size:var(--text-body)}
}
@media(max-width:620px){
  .rent-bank-rows,.rent-invite-grid{grid-template-columns:1fr}
  .rent-bank-rows{gap:var(--space-3)}
  .rent-bank-rows p+p{padding-top:var(--space-3);border-top:1px solid var(--color-border)}
}

/* Wealthsimple vs Questrade promotion hierarchy */
.comparison-guide-promotion-callout .comparison-route-card strong{color:var(--color-ink)}

/* Guide reading navigation. */
.guide-reading-layout{display:grid;grid-template-columns:minmax(0,var(--deal-width)) var(--reading-rail-width);align-items:start;gap:var(--reading-rail-gap);margin-top:var(--space-16)}
.guide-reading{min-width:0;grid-column:1;grid-row:1}
.guide-reading .article-width,.recovery-guide-reading .article-width,.recovery-reading .article-width{margin-inline:auto}
.guide-reading>.rent-guide-section:first-child{margin-top:0;padding-top:0}
.guide-reading-layout>.page-toc{grid-column:2;grid-row:1}
@media(min-width:1200px){
  .rent-guide-page>.rent-guide-body{padding-top:var(--space-12)}
}
@media(max-width:1199px){
  .comparison-guide-body,.rent-guide-page>.rent-guide-body{padding-top:var(--space-8)}
  .guide-reading-layout{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);--toc-desktop-display:none;--toc-mobile-display:block}
  .guide-reading,.guide-reading-layout>.page-toc{width:min(100%,var(--deal-width))}
  .guide-reading-layout>.page-toc{order:-1;position:static;max-height:none;overflow:visible}
}

/* Brokerage keeps its 32px body padding at 1200-1319px. The shared
   comparison-body padding rule moved to 1199px with the rail breakpoint,
   so without this the brokerage body would take its 48px base padding
   a breakpoint early. This keeps brokerage identical at every width. */
@media(min-width:1200px) and (max-width:1319px){
  .comparison-guide-body.brokerage-promotions-body{padding-top:var(--space-8)}
}

/* The navigation follows the recommendations on mobile and forms a desktop reading rail. */
@media(max-width:1199px){
  .best-bonuses-reading-layout{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .best-bonuses-reading-layout>.best-bonuses-opening,.best-bonuses-reading-layout>.best-bonuses-reading{width:min(100%,var(--deal-width))}
  .best-bonuses-reading-layout>.page-toc{order:-1;position:static;width:min(100%,var(--deal-width));max-height:none;overflow:visible;margin-bottom:var(--space-6)}
  .best-bonuses-reading-layout>.best-bonuses-reading{margin-top:var(--space-6)}
}
@media(min-width:1200px){
  .best-bonuses-reading-layout{--toc-desktop-display:block;--toc-mobile-display:none;display:grid;width:100%;grid-template-columns:minmax(0,var(--deal-width)) var(--reading-rail-width);gap:0 var(--reading-rail-gap);align-items:start;margin-inline:auto}
  .best-bonuses-opening{width:auto;min-width:0;grid-column:1;grid-row:1}
  .best-bonuses-reading{width:auto;min-width:0;grid-column:1;grid-row:2}
  .best-bonuses-reading-layout>.page-toc{width:auto;order:initial;grid-column:2;grid-row:1/span 2;position:sticky;max-height:calc(100vh - var(--space-12));overflow-y:auto}
}

/* Editorial shortlist breakpoints now live with the route-scoped composition below. */
@media(max-width:1199px){
  .best-bonuses-desktop-shortcut{display:inline-flex;align-items:center;gap:5px;min-height:var(--touch-target-min);color:var(--color-pine);font-size:var(--text-sm);font-weight:750;text-decoration:none;white-space:nowrap}
}

/* Best Bonuses desktop comparison grammar: tables for rapid scanning, cards only where prioritization matters. */
@media(min-width:1180px){

  .best-bonuses-directory-columns,.best-bonuses-directory-row{width:100%}
  .best-bonuses-directory-columns{min-height:38px;font-weight:800;letter-spacing:.01em}
  .best-bonuses-directory-columns span{color:inherit}
  .best-bonuses-directory-columns span:last-child{text-align:right}
  .best-bonuses-directory-list{width:100%}
  .best-bonuses-directory-row{transform:none}
  .best-bonuses-directory-provider .brand-lockup{min-height:32px}
  .best-bonuses-directory-provider .brand-lockup-fallback{width:30px;height:30px;flex-basis:30px;border-radius:8px}
  .best-bonuses-directory-provider .brand-lockup-name{margin-left:var(--space-2);font-size:var(--text-card)}
  .best-bonuses-directory-reward{width:124px;min-width:124px;max-width:124px;justify-self:start;padding:4px 7px;border-radius:7px;font-size:var(--text-xs)}
  .best-bonuses-directory-rule{display:block}
  .best-bonuses-directory-row:focus-visible{outline-offset:-2px}


}


/* Brokerage promotions needs the calculator-style desktop rail at a lower
   breakpoint because the TOC is part of the decision workspace, not a
   long-form article preface. Keep this after the shared collapse rules. */
@media(min-width:1100px){
  .brokerage-promotions-reading-layout{--toc-desktop-display:block;--toc-mobile-display:none;display:grid;grid-template-columns:minmax(0,1fr) var(--reading-rail-width);align-items:start;gap:var(--reading-rail-gap)}
  .brokerage-promotions-reading{grid-column:1;grid-row:1;width:auto}
}

/* Rent guide economic hierarchy - source-backed, page-scoped. */
.rent-guide-worth .rent-guide-section-heading>p:last-child{color:var(--color-copy)}
.rent-guide-assumption-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--color-aqua);color:var(--color-inverse)}
.rent-guide-worth .rent-guide-callout strong{color:var(--color-ink)}
.rent-guide-example .rent-guide-section-heading{margin-bottom:var(--space-6)}
.rent-guide-example .rent-guide-section-heading>p:last-child{color:var(--color-copy)}
.rent-guide-example-assumptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:var(--space-4);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-frost)}
.rent-guide-example-assumptions>div{display:flex;min-width:0;gap:var(--space-3-5);align-items:center;padding:var(--space-5) var(--space-6)}
.rent-guide-example-assumptions>div+div{border-left:1px solid var(--color-border)}
.rent-guide-example-assumptions>div>div{display:grid;gap:2px;min-width:0}
.rent-guide-example-assumptions span:not(.rent-guide-assumption-icon){color:var(--color-detail);font-size:var(--text-sm);font-weight:750}
.rent-guide-example-assumptions strong{color:var(--color-ink);font-size:clamp(1.35rem,2.5vw,1.7rem);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}
.rent-guide-example-assumptions small{color:var(--color-copy);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.rent-guide-example-card dl>div:not(.rent-guide-example-total){gap:var(--space-4);padding-block:11px}
.rent-guide-example-card dl>div:not(.rent-guide-example-total)+div:not(.rent-guide-example-total){border-top:1px solid var(--color-border)}
.rent-guide-example-card .rent-guide-example-timing{display:block;margin-top:auto;padding:var(--space-4) var(--space-5);color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose)}
.rent-guide-timing-icon{display:inline-flex;vertical-align:-5px;margin-right:var(--space-1-5);color:var(--color-detail)}
.rent-guide-example-timing strong{color:var(--color-ink)}
.rent-guide-example>.rent-guide-table-note{margin-top:var(--space-4);color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose)}
@media(max-width:760px){
  .rent-guide-example-assumptions{grid-template-columns:1fr}
  .rent-guide-example-assumptions>div{padding:var(--space-4)}
  .rent-guide-example-assumptions>div+div{border:0;border-top:1px solid var(--color-border)}
}
@media(max-width:520px){
  .rent-guide-example-assumptions strong{font-size:1.45rem}
}

/* Recovery guides share Frost fields, white cards, and the existing reading workspace. */
.recovery-guide-hero-copy{max-width:var(--deal-width)}
.recovery-guide-meta{align-items:center}
.recovery-guide-meta .comparison-guide-meta-icon{transform:translateY(-1.25px)}
.recovery-guide-hero .shell,.recovery-guide-body,
.referral-recovery-matrix-hero .shell,.referral-recovery-matrix-body{width:min(calc(100% - 32px),var(--deal-width))}
.recovery-guide-body{padding-block:var(--space-8) var(--space-12)}
.recovery-guide-rail>.page-toc{margin-top:0}
.recovery-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(205px,230px);gap:clamp(var(--space-5),3vw,var(--space-8));align-items:start;padding:0 0 28px;border-bottom:1px solid var(--color-border)}
.recovery-overview-copy{display:grid;grid-template-columns:48px minmax(0,1fr);gap:18px}
.recovery-overview .recovery-icon-well{border-color:var(--color-aqua-border);background:var(--color-aqua-wash);color:var(--color-aqua)}
.recovery-icon-well,.recovery-path-icon,.recovery-window-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--color-pine-border);border-radius:11px;background:var(--color-pine-wash);color:var(--color-pine)}
.recovery-overview h2{margin:0 0 var(--space-2);font-size:clamp(1.55rem,2.4vw,1.85rem)}
.recovery-answer-lead{max-width:46ch;margin:0;color:var(--color-ink);font-size:var(--text-lead);line-height:var(--leading-relaxed)}
.recovery-answer-lead strong{color:var(--color-pine)}
.recovery-answer-detail{max-width:62ch;margin:var(--space-2) 0 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose)}
.recovery-guide-page .recovery-answer-action>.text-link{display:inline-flex;align-items:center;min-height:var(--touch-target-min)}
.recovery-window{display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-areas:"icon label" "icon value" "icon note";gap:2px var(--space-4);align-content:center;padding:var(--space-3-5) var(--space-4);border:1px solid var(--color-aqua-border);border-radius:var(--radius-button);background:var(--color-aqua-wash)}
.recovery-window-icon{grid-area:icon;align-self:center;border-color:var(--color-aqua-border);background:var(--color-canvas);color:var(--color-aqua)}
.recovery-window-label{grid-area:label;color:var(--color-aqua);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-wide);text-transform:uppercase}
.recovery-window strong{grid-area:value;color:var(--color-ink);font-size:2rem;line-height:var(--leading-none);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.recovery-window>span:last-child{grid-area:note;color:var(--color-copy);font-size:var(--text-card)}
.recovery-guide-page .recovery-section,.recovery-guide-page .recovery-final-cta{margin-top:var(--space-12)}
.recovery-section-heading{margin-bottom:var(--space-5)}
.recovery-section-heading h2{margin:0;font-size:clamp(1.75rem,3.2vw,2.3rem);letter-spacing:var(--tracking-tight);text-wrap:balance}
.recovery-section-heading p{margin:var(--space-2) 0 0;color:var(--color-copy);line-height:var(--leading-loose);text-wrap:pretty}
.recovery-path{border-block:1px solid var(--color-border)}
.recovery-path-step{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);align-items:center;padding:18px 0}
.recovery-path-step+.recovery-path-step{border-top:1px solid var(--color-border)}
.recovery-path-step.is-neutral .recovery-path-icon{background:var(--color-canvas);border-color:var(--color-aqua-border);color:var(--color-aqua)}
.recovery-path-step.is-current .recovery-path-icon{background:var(--color-pine-wash);border-color:var(--color-pine-border-strong)}
.recovery-path-step.is-late .recovery-path-icon{background:var(--color-caution-wash);border-color:var(--color-caution-border);color:var(--color-caution-deep)}
.recovery-path-heading{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-3-5);align-items:center;min-width:0}
.recovery-path-title{display:grid;gap:2px;min-width:0}
.recovery-path-state{color:var(--color-muted);font-size:var(--text-xs);font-weight:850;line-height:var(--leading-snug);letter-spacing:var(--tracking-wide);text-transform:uppercase}
.recovery-path-step.is-current .recovery-path-state{color:var(--color-pine)}
.recovery-path-step.is-late .recovery-path-state{color:var(--color-caution-deep)}
.recovery-path-heading h3{margin:0;font-size:1.08rem;line-height:var(--leading-normal);text-wrap:balance}
.recovery-path-body{margin:0 0 0 58px;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose)}
.recovery-local-icon svg{display:block}
.recovery-code-section{scroll-margin-top:var(--space-6)}
.recovery-code-section .offer-code-row{max-width:var(--article-width)}
.recovery-code-verified{display:flex;align-items:center;gap:7px;margin:9px 0 0;color:var(--color-muted);font-size:var(--text-sm)}
.recovery-code-verified svg{color:var(--color-pine);transform:translateY(2px)}
.recovery-steps{display:grid;list-style:none;margin:var(--space-6) 0 0;padding:0}
.recovery-steps li{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);gap:var(--space-3-5);min-height:68px;padding:0 0 18px}
.recovery-steps li:not(:last-child)::after{content:"";position:absolute;left:17px;top:36px;bottom:0;width:1px;background:var(--color-pine-border)}
.recovery-step-number{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--color-pine-border);border-radius:50%;background:var(--color-pine-wash);color:var(--color-pine);font-weight:850;font-variant-numeric:tabular-nums}
.recovery-steps strong{display:block;margin-top:3px;color:var(--color-ink);line-height:var(--leading-normal)}
.recovery-steps p{margin:4px 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.recovery-steps code{font-weight:850}
.recovery-web-note{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-3);align-items:start;margin-top:2px;padding:var(--space-3-5) var(--space-4);border:1px solid var(--color-pine-border);border-radius:var(--radius-button);background:var(--color-pine-wash);color:var(--color-detail)}
.recovery-web-note-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-pine-border);border-radius:var(--radius-md);background:var(--color-canvas);color:var(--color-pine)}
.recovery-web-note-copy>strong{display:block;margin:1px 0 4px;color:var(--color-ink);font-size:var(--text-card);line-height:var(--leading-normal)}
.recovery-web-note p{margin:0;font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.recovery-funding-list{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.recovery-funding-row{display:block;padding:var(--space-6)}
.recovery-funding-row+.recovery-funding-row{border-top:1px solid var(--color-border)}
.recovery-funding-heading{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--space-3-5);align-items:center}
.recovery-funding-heading h3{margin:0;font-size:1.02rem;line-height:var(--leading-normal)}
.recovery-funding-row>p{margin:var(--space-2-5) 0 0 58px;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.recovery-funding-row.is-excluded .recovery-path-icon{background:var(--color-negative-wash);border-color:var(--color-negative-border);color:var(--color-negative)}
.recovery-reading-layout{display:flex;flex-direction:column;gap:var(--space-6)}
.recovery-reading{min-width:0}
.referral-recovery-reading-layout{--toc-desktop-display:none;--toc-mobile-display:block}
.referral-recovery-reading-layout>.referral-recovery-reading-rail{order:-1;min-width:0}
.referral-recovery-reading-rail>.page-toc{position:static;max-height:none;overflow:visible}
.referral-recovery-reading-rail .guide-share{margin-top:var(--space-2)}
.recovery-reading>.comparison-guide-section:first-child{margin-top:0}
.recovery-rule-stack{display:grid;gap:0;margin-top:18px;border-block:1px solid var(--color-border)}
.recovery-rule-note{width:100%;margin:0;padding:var(--space-3-5) 0;border:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose)}
.recovery-rule-note+.recovery-rule-note{border-top:1px solid var(--color-border)}
.recovery-rule-note strong{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);color:var(--color-ink)}
.recovery-rule-note strong>svg{flex:0 0 18px}
.recovery-rule-note.is-positive strong{color:var(--color-pine)}
.recovery-rule-note.is-warning strong{color:var(--color-caution-deep)}
.recovery-rule-note.is-negative strong{color:var(--color-negative)}
@media(min-width:1200px){
  .recovery-guide-hero .shell,.recovery-guide-body,
  .referral-recovery-matrix-hero .shell,.referral-recovery-matrix-body{width:min(calc(100% - 32px),var(--reading-workspace-width))}
  .recovery-reading-layout{--toc-desktop-display:block;--toc-mobile-display:none;display:grid;grid-template-columns:minmax(0,1fr) var(--reading-rail-width);gap:var(--reading-rail-gap);align-items:start}
  .recovery-guide-reading{grid-column:1;grid-row:1}
  .referral-recovery-reading-layout>.referral-recovery-reading-rail{grid-column:2;grid-row:1;order:initial;position:sticky;top:var(--space-6);max-height:calc(100vh - var(--space-12));overflow-y:auto}
  .referral-recovery-reading-rail .guide-share{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}
  .referral-recovery-reading{grid-column:1;grid-row:1}
}
@media(max-width:800px){
  .recovery-overview{grid-template-columns:1fr;gap:var(--space-4);padding-bottom:var(--space-6)}
  .recovery-window{width:100%;grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"icon label value" "icon note value";gap:2px var(--space-3);align-items:center}
  .recovery-window strong{text-align:right}
  .recovery-path-body{margin-left:0}
}
@media(max-width:620px){
  .recovery-guide-meta{gap:7px}
  .recovery-guide-meta .comparison-guide-meta-item{width:max-content;max-width:100%;min-height:32px;padding:5px var(--space-2);border:1px solid var(--color-aqua-border);border-radius:8px;background:var(--color-aqua-wash);color:var(--color-detail);font-size:var(--text-xs);font-weight:700;line-height:var(--leading-snug)}
  .recovery-guide-meta .comparison-guide-meta-icon{width:16px;height:16px;flex-basis:16px;border:0;border-radius:0;background:transparent;transform:translateY(0.75px)}
  .recovery-guide-meta .comparison-guide-meta-icon svg{width:15px;height:15px}
  .recovery-overview-copy{grid-template-columns:40px minmax(0,1fr);gap:var(--space-3)}
  .recovery-icon-well,.recovery-path-icon,.recovery-window-icon{width:40px;height:40px;flex-basis:40px}
  .recovery-overview h2{font-size:1.55rem}
  .recovery-answer-lead{font-size:var(--text-body)}
  .recovery-answer-detail{font-size:var(--text-card);line-height:var(--leading-loose)}
  .recovery-window{grid-template-columns:40px minmax(0,1fr) auto;gap:2px var(--space-3)}
  .recovery-section-heading{margin-bottom:var(--space-4)}
  .recovery-section-heading h2{font-size:clamp(1.6rem,7vw,1.8rem);line-height:var(--leading-tight)}
  .recovery-section-heading p{font-size:var(--text-body)}
  .recovery-guide-reading .rent-guide-flow{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
  .recovery-guide-reading .rent-guide-flow li{gap:var(--space-3);padding:var(--space-3-5)}
  .recovery-guide-reading .rent-guide-flow li+li{border-top:1px solid var(--color-border)}
  .recovery-guide-reading .rent-guide-flow-number{width:36px;height:36px;flex-basis:36px;border:1px solid var(--color-aqua-border);border-radius:var(--radius-md);background:var(--color-canvas);color:var(--color-aqua)}
  .recovery-path-step{padding:var(--space-4) 0}
  .recovery-path-heading{grid-template-columns:40px minmax(0,1fr);gap:var(--space-3)}
  .recovery-path-body{font-size:var(--text-card)}
  .recovery-funding-heading{grid-template-columns:40px minmax(0,1fr);gap:var(--space-3)}
  .recovery-funding-row>p{margin-left:0}
  .recovery-code-section .offer-code-row{grid-template-columns:1fr}
  .recovery-code-section .offer-copy-button{width:100%}
  .recovery-code-verified{align-items:flex-start;font-size:var(--text-xs);line-height:var(--leading-relaxed)}
  .recovery-steps{margin-top:var(--space-5)}
  .recovery-steps li{grid-template-columns:34px minmax(0,1fr);gap:var(--space-3);min-height:64px;padding-bottom:var(--space-4)}
  .recovery-step-number{width:34px;height:34px}
  .recovery-steps li:not(:last-child)::after{left:16px;top:34px}
  .recovery-web-note{grid-template-columns:36px minmax(0,1fr);gap:var(--space-2-5);padding:var(--space-3) var(--space-3-5)}
  .recovery-web-note-icon{width:36px;height:36px}
}

/* Shared guide process and decision primitives. */
.guide-process-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;list-style:none;margin:0;padding:0}
.guide-process-step{position:relative;min-width:0;text-align:center}
.guide-process-step:not(:last-child)::after{content:"";position:absolute;top:27px;right:-27px;width:13px;height:13px;border-top:2px solid var(--color-control-border);border-right:2px solid var(--color-control-border);transform:rotate(45deg)}
.guide-process-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto var(--space-3);border:1px solid var(--color-pine-border);border-radius:50%;background:var(--color-pine-wash);color:var(--color-pine)}
.guide-process-icon svg{width:28px;height:28px}
.guide-process-icon.is-card{background:var(--color-brand-surface);color:var(--color-detail)}
.guide-process-step strong{display:block;color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-snug)}
.guide-process-step strong span{color:var(--color-muted)}
.guide-process-step p{margin:var(--space-1-5) auto 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.guide-decision-list{display:grid;gap:var(--space-2-5)}
.rent-guide-page .guide-decision-list{gap:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.rent-guide-page .guide-decision-row+.guide-decision-row{border-top:1px solid var(--color-border)}
.rent-guide-page .guide-decision-row:focus-visible{outline-offset:-2px}
.guide-decision-row{display:grid;grid-template-columns:44px minmax(0,1fr) 22px;gap:var(--space-3-5);align-items:center;min-height:76px;padding:var(--space-3-5) var(--space-4);background:var(--color-canvas);color:var(--color-ink);text-decoration:none}
.guide-decision-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--color-canvas);color:var(--color-pine)}
.guide-decision-icon svg{width:22px;height:22px}
.guide-decision-row>span:nth-child(2){min-width:0}
.guide-decision-row strong{display:block;color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-normal)}
.guide-decision-row small{display:block;margin-top:3px;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed)}
.guide-decision-chevron{display:grid;place-items:center;width:22px;height:22px;color:var(--color-pine);transition:color .18s ease,transform .18s ease}
.guide-decision-chevron svg{width:20px;height:20px}
.guide-decision-row:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px}
@media(hover:hover) and (pointer:fine){
  .guide-decision-row[href]:hover{border-color:var(--color-pine-border-strong);color:var(--color-pine-hover)}
  .guide-decision-row[href]:hover .guide-decision-chevron{color:var(--color-pine-hover);transform:translateX(2px)}
  .rent-guide-page .guide-decision-row[href]:hover{background:var(--color-pine-soft)}
}

/* Pay Rent guide: approved answer -> mechanism -> economics -> decision hierarchy. */
.rent-guide-page .rent-guide-hero-copy{width:min(100%,var(--deal-width))}
.rent-guide-meta .rent-guide-meta-link{min-height:var(--touch-target-min);color:var(--color-pine);text-decoration:none}
.rent-guide-meta-link .rent-guide-meta-check{color:currentColor}
.rent-guide-quick-answer{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.85fr);max-width:var(--deal-width);margin-top:18px;overflow:hidden;border:1px solid var(--color-pine-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.rent-guide-quick-answer-copy{display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--space-3-5);padding:var(--space-5) 22px}
.rent-guide-quick-answer-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--color-pine-border);border-radius:var(--radius-md);background:var(--color-pine-wash);color:var(--color-pine)}
.rent-guide-quick-answer-icon svg{width:25px;height:25px}
.rent-guide-quick-answer h2{margin:1px 0 5px;font-size:1.28rem;line-height:var(--leading-snug)}
.rent-guide-quick-answer p{margin:0;color:var(--color-detail);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.rent-guide-pay-full{display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-areas:"icon label" "icon title" "icon note";gap:1px var(--space-3);align-items:center;margin:0;padding:var(--space-5) 22px;border-left:1px solid var(--color-pine-border);background:var(--color-canvas)}
.rent-guide-pay-full-icon{grid-area:icon;display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--color-pine-border);border-radius:var(--radius-md);background:var(--color-pine-wash);color:var(--color-pine)}
.rent-guide-pay-full-label{grid-area:label;color:var(--color-detail);font-size:var(--text-xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.rent-guide-pay-full strong{grid-area:title;color:var(--color-ink);font-size:var(--text-h3);line-height:var(--leading-tight)}
.rent-guide-pay-full>span:last-child{grid-area:note;color:var(--color-copy);font-size:var(--text-sm);line-height:var(--leading-normal)}
.rent-guide-hero-jumps{display:flex;flex-wrap:wrap;gap:0 18px;max-width:var(--article-width);margin-top:var(--space-3);padding-top:2px}
.rent-guide-hero-jumps a{display:inline-flex;align-items:center;gap:7px;min-height:var(--touch-target-min);color:var(--color-pine);font-size:var(--text-card);font-weight:750;text-decoration:none}
.rent-guide-hero-jumps a>span{display:inline-grid;place-items:center;width:24px;height:24px}
.rent-guide-hero-jumps svg{width:20px;height:20px}
.rent-guide-hero-jumps a:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px;border-radius:4px}
.rent-guide-page .rent-guide-priority-section,.rent-guide-page #compare{width:100%}
.rent-guide-page .rent-guide-priority-section{padding:44px 0}
.rent-guide-page .rent-guide-priority-heading{width:min(100%,var(--deal-width));margin-bottom:var(--space-5)}
.rent-guide-page .rent-guide-priority-heading h2{margin-bottom:7px;font-size:clamp(1.75rem,3.2vw,2.35rem);letter-spacing:var(--tracking-tight);text-wrap:balance}
.rent-guide-page .rent-guide-priority-heading>p:last-child{color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose)}
.rent-guide-page .rent-guide-how{border-bottom:1px solid var(--color-border)}
.rent-guide-page .rent-guide-worth{padding:44px 0}
.rent-guide-page .rent-guide-worth .rent-guide-section-heading{margin-bottom:var(--space-5)}
/* Preserve the equation's reading order when enlarged labels need full rows. */
.rent-guide-worth{container-type:inline-size}
@container(max-width:17rem){
  .rent-guide-worth .rent-guide-value-equation{grid-template-columns:minmax(0,1fr)}
  .rent-guide-worth .rent-guide-value-operator{justify-self:center}
}
.rent-guide-value-equation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);gap:var(--space-2);align-items:stretch}
.rent-guide-value-term{display:grid;place-items:center;align-content:center;min-width:0;min-height:122px;padding:var(--space-3-5) var(--space-2-5);border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-frost);text-align:center}
.rent-guide-value-term.is-positive,.rent-guide-value-term.is-result{border-color:var(--color-pine-border);background:var(--color-pine-wash)}
.rent-guide-value-term.is-negative{border-color:var(--color-negative-border);background:var(--color-negative-wash)}
.rent-guide-value-icon{display:grid;place-items:center;width:34px;height:34px;margin-bottom:var(--space-2);border-radius:50%;background:var(--color-canvas);color:var(--color-pine)}
.rent-guide-value-term.is-negative .rent-guide-value-icon{color:var(--color-negative)}
.rent-guide-value-icon svg{width:20px;height:20px}
.rent-guide-value-term strong{display:block;max-width:min(100%,12ch);overflow-wrap:anywhere;color:var(--color-ink);font-size:var(--text-xs);line-height:var(--leading-snug)}
.rent-guide-value-term b{display:block;margin-top:var(--space-1-5);color:var(--color-pine);font-size:var(--text-h3);line-height:var(--leading-none);font-variant-numeric:tabular-nums}
.rent-guide-value-term.is-negative b{color:var(--color-negative)}
.rent-guide-value-operator{align-self:center;color:var(--color-detail);font-size:var(--text-h3);font-weight:850}
.rent-guide-value-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-4)}
.rent-guide-inline-action{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:var(--space-3);align-items:center;min-width:0;min-height:76px;padding:var(--space-3) var(--space-3-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-frost);color:var(--color-ink);text-decoration:none}
.rent-guide-inline-action-primary{border-color:var(--color-pine-border);background:var(--color-pine-wash)}
.rent-guide-inline-action>span:first-child{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--color-pine-wash);color:var(--color-pine)}
.rent-guide-inline-action strong,.rent-guide-inline-action small{display:block}
.rent-guide-inline-action strong{font-size:var(--text-card);line-height:var(--leading-normal)}
.rent-guide-inline-action small{margin-top:2px;color:var(--color-copy);font-size:var(--text-sm);line-height:var(--leading-normal)}
.rent-guide-inline-chevron{display:grid;place-items:center;color:var(--color-pine)}
.rent-guide-inline-action:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px}
@media(hover:hover) and (pointer:fine){
  .rent-guide-inline-action:hover{border-color:var(--color-pine-border-strong);background:var(--color-pine-wash);color:var(--color-pine-hover)}
  .rent-guide-inline-action-primary:hover{background:var(--color-pine-soft)}
}
.rent-guide-page .rent-guide-section#compare{padding:44px 0}
.rent-guide-provider-field{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-field);background:var(--color-frost)}
.rent-guide-provider-list{display:grid;gap:9px}
.rent-guide-provider-row{display:grid;grid-template-columns:50px minmax(0,1fr) auto 20px;gap:var(--space-3);align-items:center;min-height:84px;padding:13px var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas);color:var(--color-ink);text-decoration:none}
.rent-guide-provider-row.is-baseline{background:var(--color-canvas)}
.rent-guide-provider-icon{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--color-pine-border);border-radius:50%;background:var(--color-pine-wash);color:var(--color-pine)}
.rent-guide-provider-row.is-baseline .rent-guide-provider-icon{border-color:var(--color-border);background:var(--color-canvas);color:var(--color-detail)}
.rent-guide-provider-icon svg{width:23px;height:23px}
.rent-guide-provider-main{display:grid;min-width:0}
.rent-guide-provider-main strong{font-size:var(--text-body);line-height:var(--leading-snug)}
.rent-guide-provider-main b{margin-top:2px;color:var(--color-ink);font-size:var(--text-card);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}
.rent-guide-provider-main small{margin-top:3px;color:var(--color-copy);font-size:var(--text-sm);line-height:var(--leading-normal)}
.rent-guide-provider-meta{color:var(--color-muted);font-size:var(--text-xs);white-space:normal}
.rent-guide-provider-chevron{color:var(--color-pine);font-size:1.65rem;line-height:var(--leading-none)}
.rent-guide-provider-row:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px}
@media(hover:hover) and (pointer:fine){.rent-guide-provider-row:hover{border-color:var(--color-pine-border-strong)}}
.rent-guide-comparison-link{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:var(--space-2-5);min-height:52px;margin-top:var(--space-2-5);padding:var(--space-2-5) var(--space-3-5);border:1px solid var(--color-pine-border);border-radius:var(--radius-md);background:var(--color-canvas);color:var(--color-pine);font-size:var(--text-card);font-weight:750;text-decoration:none}
.rent-guide-comparison-link>span:first-child{display:inline-grid;place-items:center;width:24px;height:24px}
.rent-guide-comparison-link>span:last-child{justify-self:end;font-size:var(--text-h3);font-weight:850}
.rent-guide-comparison-link svg{width:19px;height:19px}
.rent-guide-comparison-link:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px}
@media(hover:hover) and (pointer:fine){.rent-guide-comparison-link:hover{border-color:var(--color-pine-border-strong);background:var(--color-pine-wash);color:var(--color-pine-hover)}}
.rent-guide-details-layout{margin-top:0}

.rent-guide-page .rent-guide-example-card dd.is-positive{color:var(--color-pine)}
.rent-guide-page .rent-guide-example-card dd.is-negative{color:var(--color-negative)}
.rent-guide-page .rent-guide-example-card .rent-guide-example-fee-row{margin-inline:calc(var(--space-5) * -1);padding-inline:var(--space-5);border-top:1px solid var(--color-negative-border);border-bottom:1px solid var(--color-negative-border);background:var(--color-negative-wash)}
.rent-guide-page .rent-guide-example-card-delayed .rent-guide-example-timing{background:var(--color-caution-wash);border-top-color:var(--color-caution-border)}
.rent-guide-page .rent-guide-example-card-delayed .rent-guide-example-timing .rent-guide-timing-icon,.rent-guide-page .rent-guide-example-card-delayed .rent-guide-example-timing strong{color:var(--color-caution-deep)}
@media(min-width:901px){
  .rent-guide-page .rent-guide-example-grid{grid-template-rows:repeat(3,auto)}
  .rent-guide-page .rent-guide-example-card{display:grid;grid-row:span 3;grid-template-rows:subgrid}
  .rent-guide-page .rent-guide-example-card>p{margin-top:0}
}
.rent-guide-provider-details-list{overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.rent-guide-provider-detail+.rent-guide-provider-detail{border-top:1px solid var(--color-border)}
.rent-guide-provider-detail summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3-5);align-items:center;min-height:64px;padding:var(--space-3) var(--space-4);cursor:pointer;list-style:none}
.rent-guide-provider-detail summary::-webkit-details-marker{display:none}
.rent-guide-provider-detail summary::marker{content:""}
.rent-guide-provider-detail summary>span:first-child{display:grid;gap:2px}
.rent-guide-provider-detail summary strong{color:var(--color-ink)}
.rent-guide-provider-detail summary small{color:var(--color-muted);font-size:var(--text-sm)}
.rent-guide-provider-detail summary:focus-visible{outline:2px solid var(--color-pine);outline-offset:-2px}
.rent-guide-provider-detail .rent-guide-source-chevron{display:inline-flex;width:18px;height:18px;color:var(--color-pine);transition:transform .18s ease}
.rent-guide-provider-detail .rent-guide-source-chevron svg{width:18px;height:18px}
.rent-guide-provider-detail[open] summary{background:var(--color-pine-wash)}
.rent-guide-provider-detail[open] summary small{color:var(--color-copy)}
.rent-guide-provider-detail[open] .rent-guide-source-chevron{transform:rotate(180deg)}
.rent-guide-provider-detail dl{margin:0;padding:0 var(--space-4) var(--space-4)}
.rent-guide-provider-detail dl>div{display:grid;grid-template-columns:minmax(120px,160px) minmax(0,1fr);gap:var(--space-4);align-items:start;padding:var(--space-3) 0}
.rent-guide-provider-detail dl>div+div{border-top:1px solid var(--color-border)}
.rent-guide-provider-detail dt{color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.rent-guide-provider-detail dd{margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed)}

@media(max-width:760px){
  .rent-guide-quick-answer{grid-template-columns:1fr;margin-top:var(--space-3-5)}
  .rent-guide-quick-answer-copy{padding:15px var(--space-4)}
  .rent-guide-quick-answer h2{font-size:1.16rem}
  .rent-guide-quick-answer p{font-size:var(--text-card);line-height:var(--leading-relaxed)}
  .rent-guide-pay-full{padding:15px var(--space-4);border-top:1px solid var(--color-pine-border);border-left:0}
  .rent-guide-pay-full strong{font-size:var(--text-h3)}
  .rent-guide-hero-jumps{justify-content:space-between;gap:0;margin-top:var(--space-2)}
  .rent-guide-hero-jumps a{font-size:var(--text-sm)}
  .rent-guide-page .rent-guide-priority-section,.rent-guide-page .rent-guide-worth,.rent-guide-page .rent-guide-section#compare{padding:34px 0}
  .rent-guide-page .rent-guide-example,.rent-guide-page .rent-guide-choice,.rent-guide-page .rent-guide-provider-details,.rent-guide-page .rent-guide-risk{padding:34px 0}
  .rent-guide-page .rent-guide-priority-heading{margin-bottom:17px}
  .rent-guide-page .rent-guide-priority-heading h2{font-size:clamp(1.65rem,7vw,1.9rem)}
  .rent-guide-page .rent-guide-priority-heading>p:last-child{font-size:var(--text-card)}
  .guide-process-flow{gap:var(--space-5)}
  .guide-process-step:not(:last-child)::after{top:24px;right:-13px;width:10px;height:10px}
  .guide-process-icon{width:50px;height:50px;margin-bottom:9px}
  .guide-process-icon svg{width:24px;height:24px}
  .guide-process-step strong{font-size:var(--text-sm)}
  .guide-process-step p{margin-top:4px;font-size:var(--text-xs);line-height:var(--leading-normal)}
  .rent-guide-value-equation{gap:5px}
  .rent-guide-value-term{min-height:108px;padding:11px 5px;border-radius:var(--radius-md)}
  .rent-guide-value-icon{width:30px;height:30px;margin-bottom:var(--space-1-5)}
  .rent-guide-value-icon svg{width:18px;height:18px}
  .rent-guide-value-term strong{font-size:var(--font-size-compact-label);line-height:var(--leading-tight)}
  .rent-guide-value-term b{font-size:var(--text-body)}
  .rent-guide-value-operator{font-size:var(--text-body)}
  .rent-guide-value-actions{grid-template-columns:1fr;gap:var(--space-2-5)}
  .rent-guide-inline-action{width:100%}
  .rent-guide-provider-field{padding:var(--space-2-5)}
  .rent-guide-provider-row{grid-template-columns:46px minmax(0,1fr) 18px;gap:11px;min-height:82px;padding:var(--space-3) 13px}
  .rent-guide-provider-icon{width:46px;height:46px}
  .rent-guide-provider-main{grid-column:2}
  .rent-guide-provider-meta{grid-column:2;grid-row:2;margin-top:calc(var(--space-1-5) * -1);font-size:var(--text-xs)}
  .rent-guide-provider-chevron{grid-column:3;grid-row:1/span 2;align-self:center}
  .rent-guide-provider-main small{font-size:var(--text-sm)}
  .rent-guide-page .rent-guide-example-grid{gap:var(--space-3)}
  .rent-guide-page .rent-guide-example-heading{padding:var(--space-4) var(--space-4) var(--space-3)}
  .rent-guide-page .rent-guide-example-card dl{padding:0 var(--space-4) var(--space-3)}
  .rent-guide-page .rent-guide-example-card dl>div:not(.rent-guide-example-total){padding-block:var(--space-2-5)}
  .rent-guide-page .rent-guide-example-card .rent-guide-example-total{grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);margin:0 calc(var(--space-4) * -1) var(--space-1-5);padding:13px var(--space-4)}
  .rent-guide-page .rent-guide-example-card .rent-guide-example-total dt{align-self:center}
  .rent-guide-page .rent-guide-example-card .rent-guide-example-total dd{align-self:center;font-size:1.55rem;text-align:right}
  .rent-guide-page .rent-guide-example-card .rent-guide-example-fee-row{margin-inline:calc(var(--space-4) * -1);padding-inline:var(--space-4)}
  .rent-guide-page .rent-guide-example-card .rent-guide-example-timing{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
  .rent-guide-page .guide-decision-row{grid-template-columns:40px minmax(0,1fr) 18px;gap:var(--space-3);min-height:0;padding:var(--space-3-5)}
  .guide-decision-icon{width:40px;height:40px}
  .rent-guide-page .guide-decision-row small{font-size:var(--text-sm);line-height:var(--leading-relaxed)}
  .rent-guide-provider-detail summary{min-height:60px;padding:var(--space-2-5) var(--space-3-5)}
  .rent-guide-provider-detail dl{padding:0 var(--space-3-5) var(--space-3-5)}
  .rent-guide-provider-detail dl>div{grid-template-columns:1fr;gap:4px}
}
@media(max-width:390px){
  .rent-guide-meta-item{white-space:normal}
  .rent-guide-hero-jumps a{gap:5px;font-size:var(--text-sm)}
  .guide-process-flow{gap:var(--space-3-5)}
  .guide-process-step:not(:last-child)::after{right:-10px}
  .guide-process-icon{width:46px;height:46px}
  .guide-process-step strong{font-size:var(--text-xs)}
  .rent-guide-value-equation{gap:3px}
  .rent-guide-value-term{min-height:102px;padding-inline:3px}
  .rent-guide-value-term b{font-size:var(--text-card)}
  .rent-guide-provider-row{padding-inline:11px}
  .rent-guide-provider-main strong{font-size:var(--text-body)}
  .rent-guide-provider-main b{font-size:var(--text-card)}
}

/* Pay Rent guide semantic palette. */
.rent-guide-value-term.is-supporting{border-color:var(--color-aqua-border);background:var(--color-aqua-wash)}
.rent-guide-value-term.is-supporting .rent-guide-value-icon,.rent-guide-value-term.is-supporting b,.rent-guide-example-card dd.is-supporting{color:var(--color-aqua)}

/* Comparison guide reading navigation. */
.comparison-guide-body .guide-reading-layout{margin-top:0}
.comparison-guide-reading>.comparison-guide-section:first-child{margin-top:0}

/* Comparison-guide section chip bar, mobile only. A full chip row that appears
   under the header once the hero has scrolled away, and hides again at the top.
   The mobile TOC stays: this bar is an addition, not a replacement. Hidden at
   1200px and up where the sidebar TOC takes over. Chips reuse the Updates chip
   treatment (border, canvas, pine active) from the same tokens; the Updates
   class itself lives in updates-index.css, which guide pages do not load.
   Fixed, not sticky: it takes no flow space at rest, so the page at rest is
   unchanged and showing it shifts nothing. Width spans the full viewport,
   edge to edge, so the bar reads as one flush block under the header. */
.comparison-guide-chipbar{display:none}
@media(max-width:1199px){
  /* Shown only while reading: the JS trigger adds .is-visible once the hero
     bottom reaches the bar top, with 48px of hysteresis on the way back, so it
     never flickers at the trigger point. Hidden is visibility:hidden plus inert
     in JS: no tab stop, no layout space, no slide while hidden. 16px end
     padding (the --space-4 token) gives the last chip room to stop clear of
     the edge. */
  .comparison-guide-chipbar{display:flex;position:fixed;left:0;top:0;z-index:50;width:100%;gap:var(--space-2);padding:var(--space-2) var(--space-4);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;background:var(--color-canvas);border-bottom:1px solid var(--color-border);visibility:hidden;transform:translateY(-110%);transition:transform .18s ease,visibility .18s}
  .comparison-guide-chipbar.is-visible{visibility:visible;transform:translateY(0)}
  .comparison-guide-chipbar::-webkit-scrollbar{display:none}
  .comparison-guide-chip{flex:0 0 auto;display:inline-flex;align-items:center;min-height:var(--touch-target-min);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas);color:var(--color-ink);font-size:var(--text-card);font-weight:650;line-height:var(--leading-normal);text-decoration:none;white-space:nowrap}
  .comparison-guide-chip[aria-current="location"]{background:var(--color-pine);border-color:var(--color-pine);color:var(--color-inverse)}
  .comparison-guide-chip:focus-visible{outline:2px solid var(--color-pine);outline-offset:2px}
  /* Jump landings must clear the bar when it is showing: scroll-padding-top is
     68px and the old 24px margin landed headings at 92px, 37px under the 61px
     bar (bar bottom 129px). 61px bar + 24px rhythm = 85px, landing at 153px.
     Sources is a details element, not a section, so it needs details[id] too.
     Scoped to pages with a chip bar: the bar is the layout's preceding
     sibling, so the 3 referral-bonus guides sharing this layout class keep
     their 92px landings. */
  .comparison-guide-chipbar + .comparison-guide-reading-layout :is(h2[id],section[id],details[id]){scroll-margin-top:calc(61px + var(--space-6))}
  /* Jumped-to heading flash: a brief pine-soft wash so the landing reads.
     Same chip-bar scope, inside this media block so desktop never gets the
     wash. Reduced motion keeps the state, drops the wash. */
  @keyframes comparison-guide-target-flash{from{background-color:var(--color-pine-soft)}to{background-color:transparent}}
  .comparison-guide-chipbar + .comparison-guide-reading-layout .comparison-guide-reading h2[id]:target{animation:comparison-guide-target-flash 1.2s ease-out}
}
/* Sticky header is 68px tall plus its 1px bottom border at 1000px and below:
   sit the bar at 68px so its solid background covers that border and header
   plus bar read as one flush block. Scoped to html.nav-enhanced
   like the header rule, so no-JS falls back to top 0 with a relative header. */
@media(max-width:1000px){
  html.nav-enhanced .comparison-guide-chipbar{top:68px}
}

/* Guide verification semantic palette. */
.best-bonuses-table tr[data-referral-recovery] .badge{border-color:var(--color-aqua-border);background:var(--color-aqua-wash);color:var(--color-aqua)}

/* Referral recovery matrix: route shell only; shared recovery primitives own the decision UI. */
.referral-recovery-matrix-hero{padding:28px 0 30px;background:var(--color-frost)}
.referral-recovery-matrix-hero-copy{max-width:var(--deal-width)}
.referral-recovery-matrix-hero h1{max-width:820px;letter-spacing:var(--tracking-tight);text-wrap:balance}
.referral-recovery-matrix-hero .comparison-guide-lede{max-width:var(--article-width);margin-top:var(--space-3-5);color:var(--color-copy)}
.referral-recovery-matrix-hero .comparison-guide-lede strong{color:var(--color-pine)}
.referral-recovery-matrix-hero .referral-listing-disclosure{max-width:var(--article-width);margin-top:9px;line-height:var(--leading-relaxed)}
.referral-recovery-reading-rail .guide-share-button{display:inline-flex;align-items:center;gap:var(--space-2-5);min-height:var(--touch-target-min);padding:var(--space-2) 0;border:0;background:transparent;color:var(--color-detail);font-size:var(--text-card);font-weight:650;line-height:var(--leading-normal);text-align:left;cursor:pointer}
.referral-recovery-reading-rail .guide-share-button svg{flex:none}
.referral-recovery-reading-rail .copy-status:not(:empty){display:block;margin-top:4px;font-size:var(--text-sm);line-height:var(--leading-relaxed)}
@media(hover:hover) and (pointer:fine){.referral-recovery-reading-rail .guide-share-button:hover{color:var(--color-pine-hover)}}
.referral-recovery-matrix-body{padding-top:var(--space-8)}
.referral-recovery-matrix-body .comparison-guide-section{margin-top:var(--space-12)}
.referral-recovery-matrix-body .comparison-guide-heading-row{margin-bottom:var(--space-5)}
.referral-recovery-matrix-body .comparison-guide-heading-row h2{letter-spacing:var(--tracking-tight)}
.referral-recovery-matrix-body .comparison-guide-section-intro{margin:var(--space-2) 0 0;color:var(--color-copy);line-height:var(--leading-loose)}
.referral-recovery-matrix-body .recovery-rule-stack{margin-top:0}
.referral-recovery-checked{display:flex;align-items:center;gap:5px;margin-top:var(--space-2);color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}
.referral-recovery-checked svg{flex:0 0 14px;color:var(--color-aqua)}
@media(max-width:760px){
  .referral-recovery-matrix-hero{padding:var(--space-5) 0 var(--space-6)}
  .referral-recovery-matrix-hero h1{max-width:none}
  .referral-recovery-matrix-hero .comparison-guide-lede{margin-top:var(--space-2-5);font-size:var(--text-body);line-height:var(--leading-loose)}
  .referral-recovery-matrix-body .comparison-guide-section{margin-top:var(--space-8)}
  .referral-recovery-matrix-body .comparison-guide-heading-row{margin-bottom:var(--space-4)}
  .referral-recovery-matrix-body .comparison-guide-heading-row h2{font-size:clamp(1.65rem,7.4vw,1.95rem);line-height:var(--leading-tight)}
  .recovery-funding-row{padding:var(--space-4)}
  .recovery-guide-page .recovery-section,.recovery-guide-page .recovery-final-cta{margin-top:var(--space-8)}
  .recovery-guide-page .recovery-overview+.recovery-section{margin-top:var(--space-6)}
}

@media(forced-colors:active){
  .brokerage-shortlist-money:focus-within{outline:2px solid Highlight;outline-offset:2px}
}

/* Guide-specific reduced motion: keep state feedback, remove spatial travel. */
@media(prefers-reduced-motion:reduce){
  .comparison-guide-chipbar + .comparison-guide-reading-layout .comparison-guide-reading h2[id]:target{animation:none}
  .comparison-guide-chipbar{transition:none}
  .best-bonuses-sources-chevron,
  .rent-guide-source-disclosure summary svg,
  .rent-guide-provider-detail .rent-guide-source-chevron{transition:none}
  .best-bonuses-directory-row:hover{transform:none}
  .best-bonuses-directory-row:hover .best-bonuses-directory-action svg,
  .best-bonuses-directory-row:focus-visible .best-bonuses-directory-action svg,
  .best-bonuses-directory-row:active .best-bonuses-directory-action svg,
  .best-bonuses-details-link:hover .best-bonuses-details-chevron,
  .brokerage-matrix-details:hover .brokerage-matrix-chevron,
  .brokerage-crc-all-link:hover span,
  .guide-decision-row[href]:hover .guide-decision-chevron{transform:none}
}


/* Recovery guide: reuse the Deal Page referral rail and compact mobile copy utility. */
.recovery-guide-rail{--toc-desktop-display:none;--toc-mobile-display:block}
@media(min-width:1200px){
  .recovery-guide-rail{--toc-desktop-display:block;--toc-mobile-display:none;grid-column:2;grid-row:1;position:sticky;top:var(--space-6);max-height:calc(100vh - var(--space-12));overflow-y:auto;scrollbar-width:thin}
  .recovery-guide-rail .deal-long-form-referral-utility{display:block;margin-top:var(--space-3);padding-top:var(--space-4)}
  /* Recovery link is plain text, not a .button: block so its border-top draws once, not on every wrapped line. */
  .recovery-guide-rail .deal-long-form-referral-link{display:block;padding:var(--space-2-5) 0 0}
}
.recovery-mobile-action-code{display:flex;align-items:center;justify-content:center;flex:1 1 0;min-width:0;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-pine-border);border-radius:var(--radius-sm);background:var(--color-pine-wash);color:var(--color-ink)}
.recovery-mobile-action-code code{font-size:var(--text-body);font-weight:850;letter-spacing:var(--tracking-wide);font-variant-numeric:tabular-nums}
@media(max-width:720px){
  .recovery-guide-page:has(.deal-mobile-actions:not([hidden])) :is(a,button,summary){scroll-margin-bottom:110px}
  .recovery-guide-body{padding-bottom:var(--space-4)}
  .comparison-guide-body{padding-bottom:var(--space-4)}
}

/* Best Referral Bonuses - standalone editorial composition. Scope all visual changes to this route. */

.best-bonuses-editorial .best-bonuses-hero{padding:28px 0 30px;border-bottom:1px solid var(--color-border);background:var(--color-canvas)}
.best-bonuses-editorial .best-bonuses-hero-copy{width:min(100%,850px)}
.best-bonuses-editorial .best-bonuses-hero .breadcrumbs{margin-bottom:18px}
.best-bonuses-editorial-kicker{margin:0 0 var(--space-2);color:var(--color-pine);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-wider);line-height:var(--leading-normal);text-transform:uppercase}
.best-bonuses-editorial .best-bonuses-hero h1{max-width:830px;font-size:clamp(1.75rem,1.2rem + 2.4vw,2.5rem);font-weight:800;letter-spacing:var(--tracking-tight);line-height:var(--leading-display);text-wrap:balance}
.best-bonuses-editorial .best-bonuses-hero-picks{display:grid;gap:0;margin:13px 0 0}
.best-bonuses-hero-pick{display:grid;grid-template-columns:30px minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-3) 0}
.best-bonuses-hero-pick + .best-bonuses-hero-pick{border-top:1px solid var(--color-border)}
.best-bonuses-hero-pick-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-pine-border);border-radius:50%;background:var(--color-pine-wash);color:var(--color-pine)}
.best-bonuses-hero-pick-icon svg{display:block;width:20px;height:20px}
.best-bonuses-hero-pick strong{font-size:var(--text-body);line-height:var(--leading-normal)}
.best-bonuses-hero-pick .badge{margin-left:var(--space-2);vertical-align:middle}
.best-bonuses-hero-pick p{margin:4px 0 0;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:balance}
.best-bonuses-editorial .best-bonuses-hero-summary{max-width:730px;margin:var(--space-3) 0 0;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
/* Best Bonuses hero note: right on desktop only, centered against the hero copy, hidden below 1024px. */
.best-bonuses-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center}
.best-bonuses-hero-note{display:none}
@media(min-width:1024px){
  .best-bonuses-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:28px}
  .best-bonuses-hero-note{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 var(--space-3);align-items:start;padding:var(--space-4);border:1px solid var(--color-pine-border);border-radius:var(--radius-card);background:var(--color-pine-wash)}
  .best-bonuses-hero-note-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-pine-border);border-radius:50%;color:var(--color-pine);background:var(--color-canvas)}
  .best-bonuses-hero-note>strong,.best-bonuses-hero-note>p,.best-bonuses-hero-note>a{grid-column:2}
  .best-bonuses-hero-note-icon{grid-row:1/4}
  .best-bonuses-hero-note>strong{display:block;color:var(--color-ink);font-size:var(--text-lead);line-height:var(--leading-normal);text-wrap:pretty}
  .best-bonuses-hero-note p{margin:var(--space-2) 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
}
.best-bonuses-editorial .best-bonuses-meta{gap:9px 21px;margin-top:var(--space-3-5);font-size:var(--text-sm)}
.best-bonuses-editorial .best-bonuses-disclosure{margin-top:var(--space-2);color:var(--color-muted);font-size:var(--text-xs)}
.best-bonuses-editorial .best-bonuses-body{padding-top:39px;padding-bottom:var(--space-12)}
.best-bonuses-editorial .best-bonuses-section-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);width:100%;margin-bottom:var(--space-5)}
.best-bonuses-editorial .best-bonuses-section-heading h2{margin:0;font-size:1.83rem;letter-spacing:var(--tracking-tight);line-height:var(--leading-tight)}
.best-bonuses-editorial .best-bonuses-section-heading>p{max-width:38ch;font-size:var(--text-sm);color:var(--color-muted);text-align:right}
.best-bonuses-editorial .best-bonuses-decision-board{gap:0}
.best-bonuses-editorial .ranked-offer-card-primary{overflow:hidden;padding:0;border:1px solid var(--color-pine-border-strong);border-radius:var(--radius-card);background:var(--color-canvas)}
.best-bonuses-editorial .ranked-offer-editorial-band{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2) 18px;min-height:46px;padding:var(--space-2-5) 25px}
.best-bonuses-editorial .ranked-offer-editorial-label{display:inline-flex;align-items:center;max-width:100%;color:var(--color-pine);font-size:var(--text-xs);font-weight:800;line-height:var(--leading-normal)}
.best-bonuses-editorial .ranked-offer-editorial-mark{display:inline-grid;place-items:center;flex:0 0 15px;width:15px;height:15px;margin-right:7px}
.best-bonuses-editorial .ranked-offer-editorial-mark svg{display:block;width:15px;height:15px}
.best-bonuses-editorial .ranked-offer-checked svg{flex:none;width:15px;height:15px;color:var(--color-aqua)}
.best-bonuses-editorial .ranked-offer-primary-content{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"pitch proof" "actions proof";column-gap:30px;row-gap:var(--space-4);align-items:start;padding:var(--space-5) 15px}
.best-bonuses-editorial .ranked-offer-primary-pitch{grid-area:pitch}
.best-bonuses-editorial .ranked-offer-card-primary .ranked-offer-brand{min-height:49px;margin:0 0 19px}
.best-bonuses-editorial .ranked-offer-card-primary .brand-lockup-lg .brand-lockup-logo{max-width:min(100%,238px);max-height:49px}
.best-bonuses-editorial .ranked-offer-reward{display:flex;flex-wrap:wrap;align-items:baseline;gap:7px var(--space-3);margin:0 0 var(--space-2-5)}
.best-bonuses-editorial .ranked-offer-card-primary .ranked-offer-reward strong{font-size:3.25rem;letter-spacing:-.052em;color:var(--color-pine);line-height:var(--leading-none)}
.best-bonuses-editorial .ranked-offer-reward span{font-size:var(--text-xs);color:var(--color-muted);font-weight:650}
.best-bonuses-editorial .ranked-offer-rationale{max-width:41ch;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);font-weight:400}
.best-bonuses-editorial .ranked-offer-rationale strong{color:var(--color-ink);font-weight:750}
.best-bonuses-editorial .ranked-offer-primary-proof{grid-area:proof;min-width:0;padding-left:25px;border-left:1px solid var(--color-border)}
.best-bonuses-editorial .ranked-offer-proof-label{margin:0 0 3px;color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-wide);text-transform:uppercase}
.best-bonuses-editorial .ranked-offer-facts>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--space-3);align-items:start;padding:13px 0;border-top:0;border-bottom:0}
.best-bonuses-editorial .ranked-offer-facts>div+div{border-top:1px solid var(--color-border)}
.best-bonuses-editorial .ranked-offer-facts dt{display:flex;color:var(--color-aqua);font-size:var(--text-sm);font-weight:750;line-height:var(--leading-relaxed)}
.best-bonuses-editorial .ranked-offer-facts dd{min-width:0;margin:0;color:var(--color-detail);font-size:var(--text-body);font-weight:400;line-height:var(--leading-relaxed);text-wrap:pretty;overflow-wrap:break-word}
.best-bonuses-editorial .ranked-offer-facts div{padding:var(--space-3) 0}
.best-bonuses-editorial .ranked-offer-actions{grid-area:actions;display:flex;flex-wrap:wrap;align-items:center;gap:7px 15px;align-self:end}
@media(min-width:960px){.best-bonuses-editorial .ranked-offer-actions{flex-direction:column;align-items:flex-start}}

.best-bonuses-editorial .ranked-offer-details{font-size:var(--text-sm)}
.best-bonuses-editorial .ranked-offer-secondary-group{display:grid;gap:11px;margin-top:30px}
.best-bonuses-editorial-alternatives-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3-5)}
.best-bonuses-editorial-alternatives-head span{color:var(--color-muted);font-size:var(--text-xs)}
.best-bonuses-editorial .ranked-offer-secondary-heading{font-size:1.3rem}
.best-bonuses-editorial .ranked-offer-secondary-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}
.best-bonuses-editorial .ranked-offer-card-secondary{min-width:0;margin:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-button);background:var(--color-canvas)}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-editorial-label{width:max-content;min-height:26px;margin:0 0 15px;padding:4px 9px;border-radius:var(--radius-sm);background:var(--color-pine-wash);font-size:var(--font-size-compact-label)}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-brand{display:flex;align-items:center;min-height:43px;margin:0 0 var(--space-2)}
.best-bonuses-editorial .ranked-offer-card-secondary .brand-lockup-lg .brand-lockup-logo{max-width:min(100%,200px);max-height:42px}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-reward{min-height:78px;margin-bottom:var(--space-3-5)}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-reward strong{font-size:2.3rem;letter-spacing:-.04em}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-facts{border-top:1px solid var(--color-border);border-bottom:0}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-facts>div{grid-template-columns:96px minmax(0,1fr);gap:var(--space-2);padding:var(--space-2-5) 0;border-top:0}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-facts dd{font-size:var(--text-body);line-height:var(--leading-loose)}
.best-bonuses-editorial .ranked-offer-checked{display:flex;align-items:center;gap:5px;margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-xs)}
.best-bonuses-editorial .ranked-offer-quick-pick-actions{gap:var(--space-2) var(--space-3-5);margin-top:auto;padding-top:17px}
.best-bonuses-editorial .ranked-offer-quick-pick-details{min-height:var(--touch-target-min)}
.best-bonuses-editorial .best-bonuses-reading>.best-bonuses-section:first-child{margin-top:var(--space-12)}
/* Directory is a quiet navigation ledger, not a grid of conversion buttons. */
.best-bonuses-editorial .best-bonuses-directory{gap:9px}
.best-bonuses-editorial .best-bonuses-directory-columns,
.best-bonuses-editorial .best-bonuses-directory-row{grid-template-columns:minmax(155px,1fr) minmax(95px,.52fr) minmax(0,1.5fr) 140px;column-gap:var(--space-3)}
.best-bonuses-editorial .best-bonuses-directory-columns{padding:9px var(--space-4);background:var(--color-canvas);color:var(--color-muted);font-size:var(--text-xs)}
.best-bonuses-editorial .best-bonuses-directory-row{min-height:62px;padding:11px var(--space-4)}
.best-bonuses-editorial .best-bonuses-directory-reward{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:72px;max-width:140px;min-height:0;padding:5px var(--space-2);border:1px solid var(--color-pine-border);border-radius:8px;background:var(--color-pine-wash);color:var(--color-pine);font-size:var(--text-sm);font-weight:800;line-height:var(--leading-tight);text-align:center;text-wrap:balance;overflow-wrap:anywhere;justify-self:start}
.best-bonuses-editorial .best-bonuses-directory-reward-variable{background:var(--color-canvas);border-color:var(--color-border);color:var(--color-detail);font-weight:700}
.best-bonuses-editorial .best-bonuses-directory-rule-copy{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--space-2)}
.best-bonuses-editorial .best-bonuses-directory-rule-lead{font-size:var(--text-card);line-height:var(--leading-normal)}
.best-bonuses-editorial .best-bonuses-directory-rule-tail{font-size:var(--text-sm);line-height:var(--leading-normal)}
.best-bonuses-editorial .best-bonuses-directory-action{justify-self:end;justify-content:flex-end;gap:3px;min-height:40px;color:var(--color-pine);font-size:var(--text-xs);font-weight:700}
/* Top 10 CTA bar: pine statement bar, not a button. The list is the summary,
   the deal page is the full detail, the bar is the bridge. Tokens only. */
.best-bonuses-top10-cta{display:flex;align-items:flex-start;gap:var(--space-2-5);margin:0;padding:var(--space-3-5) var(--space-4);border-radius:var(--radius-button);background:var(--color-pine);color:var(--color-canvas);font-size:var(--text-card);font-weight:700;line-height:var(--leading-relaxed)}
.best-bonuses-top10-cta-icon{display:inline-flex;flex:none;margin-top:1px;color:var(--color-canvas)}
.best-bonuses-top10-cta-icon svg{width:18px;height:18px}
/* Reverse CTA: pine-wash card back to the full deals index, distinct from the
   filled pine CTA bar above it (wash + border + pine text, not solid pine).
   A tappable card, not plain text. Tokens only. */
.best-bonuses-top10-all{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:56px;margin:var(--space-3-5) 0 0;padding:var(--space-3-5) var(--space-4);border:1px solid var(--color-pine-border);border-radius:var(--radius-button);background:var(--color-pine-wash);color:var(--color-pine);font-size:var(--text-body);font-weight:800;line-height:var(--leading-normal);text-align:center;text-decoration:none}
.best-bonuses-top10-all svg{display:block;width:18px;height:18px;flex:none;stroke-width:2.4;transition:transform .16s ease}
@media(hover:hover) and (pointer:fine){
  .best-bonuses-top10-all:hover{background:var(--color-pine-soft)}
  .best-bonuses-top10-all:hover svg{transform:translateX(2px)}
}
/* Action chevrons read as designed icons, not text glyphs: 18px, heavier
   stroke. The icon macro ships 1.8; the scoped rule thickens only the
   chevrons on this page's links. */
.best-bonuses-editorial .best-bonuses-desktop-shortcut svg{display:block;width:18px;height:18px;stroke-width:2.4}
/* Board chevron icon boxes match the 18px SVG: a 16px grid box grows its row to
   18px and top-aligns it, so the chevron sat 1.5px low. Scoped to this page;
   the shared 16px box stays for the brokerage and credit-card pages. */
.best-bonuses-editorial .ranked-offer-details-icon,
.best-bonuses-editorial .ranked-offer-quick-pick-details .ranked-offer-quick-pick-action-icon{width:18px;height:18px;flex:0 0 18px}
.best-bonuses-editorial .text-link svg{width:18px;height:18px;stroke-width:2.4}
/* Why We Chose These Top 10: reuses the preflight icon + heading + text rows.
   The editorial override strips preflight icon boxes, so this section restores
   the boxed pine-wash icon. Titles balance so no factor title orphans at 390px. */
.best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-preflight-item{grid-template-columns:38px minmax(0,1fr)}
.best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-preflight-icon{border:1px solid var(--color-pine-border);background:var(--color-pine-wash)}
.best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-preflight-item h3{text-wrap:balance}
.best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-why-eyebrow{margin:0 0 2px;color:var(--color-aqua);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-wider);line-height:var(--leading-normal);text-transform:uppercase}
.best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-why-example{margin:var(--space-2-5) 0 0;padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-md);background:var(--color-aqua-wash);color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-why-example strong{color:var(--color-aqua)}
.best-bonuses-why-note{margin:18px 0 0;color:var(--color-detail);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
/* Desktop cleanup, Nov 8: Why examples bottom-align per row with a 10px
   floor, See All becomes a full-width band link, directory badge takes
   its own row, deadline chip always takes its own row below the rule text.
   Desktop only; mobile mini-cards untouched. */
@media(min-width:701px){
  .best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-preflight-item>div{display:flex;flex-direction:column}
  .best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-preflight-item>div>p:not(.best-bonuses-why-eyebrow):not(.best-bonuses-why-example){margin-bottom:var(--space-2-5)}
  .best-bonuses-section[aria-labelledby="why-top10-heading"] .best-bonuses-why-example{margin-top:auto}
  .best-bonuses-top10-all{width:100%;min-height:64px;justify-content:space-between;padding-inline:var(--space-5);text-align:left}
  .best-bonuses-editorial .best-bonuses-directory-provider{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1-5)}
  .best-bonuses-editorial .best-bonuses-directory-badge{margin-left:0}
  .best-bonuses-editorial .best-bonuses-directory-rule-copy{display:grid;grid-template-columns:minmax(0,1fr);gap:2px}
  .best-bonuses-editorial .best-bonuses-directory-rule-copy .best-bonuses-directory-rule-chip{justify-self:start;margin-top:4px}
  .best-bonuses-editorial .best-bonuses-directory-row{min-height:104px}
}

.best-bonuses-directory-rule-lead{display:inline-flex;align-items:center;gap:5px}
.best-bonuses-directory-rule-icon{display:inline-flex;flex:none;color:var(--color-aqua)}
.best-bonuses-directory-rule-icon svg{width:14px;height:14px}
.best-bonuses-directory-rule-chip{display:inline-flex;align-items:center;background:var(--color-pine-wash);border:1px solid var(--color-pine-border);color:var(--color-pine);font-size:var(--text-xs);font-weight:700;line-height:var(--leading-snug);padding:4px 7px;border-radius:999px;white-space:nowrap}
.best-bonuses-directory-meta{display:contents}
.best-bonuses-directory-meta .best-bonuses-directory-rule-chip{display:none}
.best-bonuses-directory-badge{display:inline-flex;align-items:center;gap:4px;color:var(--color-canvas);font-size:var(--font-size-compact-label);font-weight:700;line-height:var(--leading-none);padding:4px 7px;border-radius:999px;margin-left:var(--space-1-5);vertical-align:middle;white-space:nowrap}
.best-bonuses-editorial .best-bonuses-directory-badge{background:var(--color-aqua)}
.best-bonuses-directory-badge-icon{display:inline-flex;flex:none;color:var(--color-canvas)}
/* No offset on the badge icon: the owner's phone reads centred at
   0px; local Chromium reads 1px low. Do not add translateY here
   from local measurement alone. */
.best-bonuses-directory-badge-icon svg{width:13px;height:13px}
@media(hover:hover) and (pointer:fine){
  .best-bonuses-editorial .best-bonuses-directory-row:hover .best-bonuses-directory-action{color:var(--color-pine)}
}
.best-bonuses-editorial .best-bonuses-table-recovery thead th{background:var(--color-canvas)}
.best-bonuses-editorial .best-bonuses-preflight-icon{border:0;background:transparent;color:var(--color-pine)}
.best-bonuses-editorial .best-bonuses-preflight-item{grid-template-columns:30px minmax(0,1fr)}
.best-bonuses-editorial .best-bonuses-methodology-panel{background:var(--color-canvas);border:1px solid var(--color-pine-border);border-radius:var(--radius-button);padding:28px 30px}
.best-bonuses-section[aria-labelledby="referral-recovery-heading"] .text-link{display:inline-flex;align-items:center;gap:4px}
.best-bonuses-section[aria-labelledby="referral-recovery-heading"] .text-link>span{display:inline-flex;align-items:center}
.best-bonuses-section[aria-labelledby="referral-recovery-heading"] .text-link svg{display:block;flex-shrink:0;transform:translateY(1px)}
.best-bonuses-section[aria-labelledby="referral-recovery-heading"] .best-bonuses-preflight-panel{border-block-color:var(--color-pine-border)}
.best-bonuses-section[aria-labelledby="referral-recovery-heading"] .best-bonuses-preflight-item:nth-child(even){border-left-color:var(--color-pine-border)}
.best-bonuses-section[aria-labelledby="referral-recovery-heading"] .best-bonuses-preflight-item:nth-child(n+3){border-top-color:var(--color-pine-border)}
.best-bonuses-section[aria-labelledby="referral-recovery-heading"] .best-bonuses-preflight-item:nth-child(n+2){border-top-color:var(--color-pine-border)}
.best-bonuses-editorial .best-bonuses-methodology-rules strong,.best-bonuses-editorial .best-bonuses-factor-list strong{font-weight:750}
.best-bonuses-editorial .best-bonuses-methodology-icon{color:var(--color-aqua)}
/* Balance the in-flow mobile/tablet TOC: body padding gives the space above, margin-bottom gives the space below. No extra top margin, or the gap above (20px body + 24px margin) outweighs the gap below. */
@media(max-width:1199px){
  .best-bonuses-editorial .best-bonuses-reading-layout>.page-toc{margin-top:0}
  .best-bonuses-editorial .best-bonuses-reading>.best-bonuses-section:first-child{margin-top:0}
}
@media(min-width:701px) and (max-width:959px){
  .best-bonuses-editorial .ranked-offer-primary-content{grid-template-columns:1fr;grid-template-areas:"pitch" "proof" "actions"}
  .best-bonuses-editorial .ranked-offer-primary-proof{padding-left:0;border:0}
}
@media(max-width:959px){.best-bonuses-editorial .ranked-offer-secondary-stack{grid-template-columns:1fr}}
@media(max-width:700px){
  .best-bonuses-editorial .best-bonuses-hero-picks{margin-top:9px}
  .best-bonuses-editorial .best-bonuses-meta{margin-top:var(--space-2-5);font-size:var(--text-xs)}
  .best-bonuses-editorial .best-bonuses-disclosure{margin-top:var(--space-1-5);font-size:var(--text-xs)}
  .best-bonuses-editorial .best-bonuses-body{padding-top:var(--space-5);padding-bottom:var(--space-4)}
  .best-bonuses-editorial .best-bonuses-section-heading{align-items:start;gap:var(--space-2-5);margin-bottom:15px}
  .best-bonuses-editorial .best-bonuses-section-heading h2{font-size:1.55rem}
  .best-bonuses-editorial .best-bonuses-section-heading>p{display:none}
  .best-bonuses-editorial .best-bonuses-editorial-kicker{font-size:var(--text-xs)}
  .best-bonuses-editorial .ranked-offer-editorial-band{padding:11px var(--space-3-5);min-height:40px}
  .best-bonuses-editorial .ranked-offer-primary-content{grid-template-columns:minmax(0,1fr);gap:11px}
  .best-bonuses-editorial .ranked-offer-card-primary .ranked-offer-brand{min-height:0}
  .best-bonuses-editorial .ranked-offer-card-primary .brand-lockup-lg .brand-lockup-logo{max-width:min(100%,192px);max-height:42px}
  .best-bonuses-editorial .ranked-offer-card-primary .ranked-offer-reward strong{font-size:2.8rem}
  .best-bonuses-editorial .ranked-offer-rationale{font-size:var(--text-sm);line-height:var(--leading-loose)}
  .best-bonuses-editorial .ranked-offer-primary-proof{padding:0;border:0}
  .best-bonuses-editorial .ranked-offer-facts{border-top:1px solid var(--color-border);border-bottom:0}
  .best-bonuses-editorial .ranked-offer-facts>div{grid-template-columns:1fr;gap:3px}
  .best-bonuses-editorial .ranked-offer-proof-label{margin:0 0 5px}
  .best-bonuses-editorial .ranked-offer-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:1px}
  .best-bonuses-editorial .ranked-offer-card-primary .ranked-offer-cta{width:100%}
  .best-bonuses-editorial .ranked-offer-card-primary .ranked-offer-details{justify-content:center}
  .best-bonuses-editorial .ranked-offer-secondary-group{gap:var(--space-2-5);margin-top:25px}
  .best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-brand{min-height:38px}
  .best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-reward{margin-bottom:var(--space-2)}
  .best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-facts>div{grid-template-columns:1fr;gap:3px;padding:var(--space-1-5) 0}
  .best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-facts dd{font-size:var(--text-body)}
  .best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-reward strong{font-size:2.2rem}
  .best-bonuses-editorial .ranked-offer-quick-pick-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:1px}
  .best-bonuses-editorial .best-bonuses-directory-row{grid-template-columns:34px minmax(0,1fr) auto;min-height:0}
  .best-bonuses-editorial .best-bonuses-directory-reward{justify-self:end;align-self:center;max-width:140px;white-space:normal;text-align:right}
  .best-bonuses-editorial .best-bonuses-directory-rule-lead{font-size:var(--text-sm)}
  .best-bonuses-editorial .best-bonuses-directory-action{align-self:center;min-height:32px;font-size:var(--text-xs)}
  .best-bonuses-editorial .best-bonuses-methodology-panel{padding:19px}
}
@media(max-width:760px){.best-bonuses-editorial .best-bonuses-hero{padding:var(--space-4) 0 var(--space-5)}.best-bonuses-editorial .best-bonuses-hero .breadcrumbs{margin-bottom:var(--space-2)}}
@media(min-width:701px) and (max-width:720px){.best-bonuses-editorial .best-bonuses-body{padding-bottom:var(--space-4)}}

/* Best Referral Bonuses: Mobile Mini-Cards (Alternative C). Phone only, max-width 700px. */
/* Each directory row becomes a bordered white mini-card. Desktop rows are untouched. */
/* Keeps B's pine-wash reward pill and pine Details. List background is --color-canvas. */
@media(max-width:700px){
  .best-bonuses-editorial .best-bonuses-directory-list{padding:var(--space-3);background:var(--color-canvas)}
  .best-bonuses-editorial .best-bonuses-directory-item+.best-bonuses-directory-item{border-top:0}
  .best-bonuses-editorial .best-bonuses-directory-item{margin-bottom:var(--space-2-5)}
  .best-bonuses-editorial .best-bonuses-directory-item:last-child{margin-bottom:0}
  .best-bonuses-editorial .best-bonuses-directory-row{column-gap:var(--space-3);background:var(--color-canvas);border:1px solid var(--color-border);border-radius:var(--radius-button)}
  .best-bonuses-editorial .best-bonuses-directory-reward{font-size:var(--text-card)}
  .best-bonuses-editorial .best-bonuses-directory-action{justify-self:end}
}
/* Best Referral Bonuses: Treatment C directory rows. Phone mini-card grid
   puts the deadline chip and Details on one shared row, and long rewards
   on their own left-aligned row. Card bottom padding 12px to 9px. */
@media(max-width:700px){
  .best-bonuses-editorial .best-bonuses-directory-row{grid-template-areas:"provider-icon provider-name reward" "rule rule rule" "meta meta meta";row-gap:4px;padding:var(--space-3) var(--space-3) 9px}
  .best-bonuses-editorial .best-bonuses-directory-item-winner .best-bonuses-directory-row{grid-template-areas:"provider-icon provider-name reward" "badge badge badge" "rule rule rule" "meta meta meta"}
  .best-bonuses-editorial .best-bonuses-directory-badge{grid-area:badge;justify-self:start;margin-left:0;font-size:var(--text-xs);padding:var(--space-1-5) 9px;gap:5px}
  .best-bonuses-editorial .best-bonuses-directory-badge-icon svg{width:14px;height:14px}
  .best-bonuses-editorial .best-bonuses-directory-rule-copy{display:grid;gap:2px}
  .best-bonuses-editorial .best-bonuses-directory-rule-tail{margin-left:21px}
  .best-bonuses-editorial .best-bonuses-directory-rule-copy .best-bonuses-directory-rule-chip{display:none}
  .best-bonuses-editorial .best-bonuses-directory-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);grid-area:meta;flex-wrap:wrap}
  .best-bonuses-editorial .best-bonuses-directory-meta .best-bonuses-directory-rule-chip{display:inline-flex;margin-left:0;white-space:nowrap;font-size:var(--text-xs);padding:5px var(--space-2)}
  .best-bonuses-editorial .best-bonuses-directory-meta .best-bonuses-directory-action{align-self:center;margin-left:auto}
}

/* Best Referral Bonuses polish: intro headings stack instead of squeezing the intro to the right. */
/* The shortlist heading keeps its flex layout, because its right side is a link, not intro copy. */
.best-bonuses-editorial .best-bonuses-section-heading--intro{display:block}
.best-bonuses-editorial .best-bonuses-section-heading--intro>p{display:block;max-width:none;margin-top:var(--space-2);font-size:var(--text-body);color:var(--color-copy);text-align:left}
/* Methodology: What We Consider is a single column, so its titles and row rules cannot stagger. */
.best-bonuses-editorial .best-bonuses-factor-list{grid-template-columns:1fr}
.best-bonuses-editorial .best-bonuses-factor-list li:nth-child(2){padding-top:var(--space-3);border-top:1px solid var(--color-border)}

/* Subgrid removed Nov 7 2026: it forced equal row heights across cards, creating gaps and wasted space when cards had different content. Cards size naturally now, matching the mockup. */

/* Best Referral Bonuses polish v3: phone stacking, no squeezed headings. */
/* Below 700px the Top heading becomes a column, so Browse all 32 offers sits below Top Referral Picks instead of forcing it to wrap. */
/* Tablet 701-1199px keeps the side by side shortcut, because the column is wide enough there. */
/* Other Top Picks tagline is stacked below its heading on phone, instead of display none, matching the intro fix. */
@media(max-width:700px){
.best-bonuses-editorial .best-bonuses-section-heading:has(> .best-bonuses-desktop-shortcut){flex-direction:column;align-items:start;gap:var(--space-1-5)}
.best-bonuses-desktop-shortcut{justify-content:flex-start}
.best-bonuses-editorial-alternatives-head{flex-direction:column;align-items:start;gap:4px}
.best-bonuses-editorial-alternatives-head span{display:block}
}

/* Registered bonus contribution-room guide: compact, semantic decision flow. */
.bonus-room-guide .comparison-guide-section{margin-top:var(--space-6)}
.bonus-room-guide .comparison-guide-section:first-child{margin-top:0}
.bonus-room-guide .comparison-guide-section>h2,.bonus-room-guide .bonus-room-section-heading h2{font-size:clamp(1.5rem,2.1vw,1.9rem);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-3)}
.bonus-room-guide .bonus-room-section-heading{margin-bottom:var(--space-4)}
.bonus-room-guide .bonus-room-step-heading{display:flex;align-items:center;gap:var(--space-2-5);margin-bottom:var(--space-3)}
.bonus-room-guide .bonus-room-step-heading h3{margin:0;font-size:1.05rem}
.bonus-room-guide .bonus-room-step-number{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--color-pine-soft);color:var(--color-pine);font-size:var(--text-card);font-weight:800}
.bonus-room-guide .bonus-room-destinations,.bonus-room-guide .bonus-room-outcomes{display:grid;gap:var(--space-3)}
.bonus-room-guide .bonus-room-destinations{grid-template-columns:repeat(2,minmax(0,1fr))}
.bonus-room-guide .bonus-room-outcomes{grid-template-columns:repeat(3,minmax(0,1fr))}
.bonus-room-guide .bonus-room-tile{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.bonus-room-guide .bonus-room-tile-title{display:flex;align-items:center;gap:var(--space-2-5);margin-top:var(--space-1-5)}
.bonus-room-guide .bonus-room-tile-title strong{display:block;min-width:0;margin:0;font-size:var(--text-body);line-height:var(--leading-snug);color:var(--color-ink)}
.bonus-room-guide .bonus-room-tile-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid var(--color-border);border-radius:9px;color:var(--color-pine);background:var(--color-canvas)}
.bonus-room-guide .bonus-room-tile-counts .bonus-room-tile-icon{color:var(--color-negative);border-color:var(--color-negative-border)}
.bonus-room-guide .bonus-room-tile-review .bonus-room-tile-icon{color:var(--color-caution-deep);border-color:var(--color-caution-border)}
.bonus-room-guide .bonus-room-tile p{margin:5px 0 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-relaxed);text-wrap:pretty}
.bonus-room-guide .bonus-room-status{display:inline-block;font-size:var(--text-xs);font-weight:750;line-height:var(--leading-normal);color:var(--color-detail)}
.bonus-room-guide .bonus-room-tile-next{border-color:var(--color-pine-border-strong);background:var(--color-frost)}
.bonus-room-guide .bonus-room-tile-next .bonus-room-status,.bonus-room-guide .bonus-room-tile-exempt .bonus-room-status{color:var(--color-pine)}
.bonus-room-guide .bonus-room-tile-counts{border-color:var(--color-negative-border);background:var(--color-negative-wash)}
.bonus-room-guide .bonus-room-tile-counts .bonus-room-status{color:var(--color-negative)}
.bonus-room-guide .bonus-room-tile-exempt{border-color:var(--color-pine-border);background:var(--color-frost)}
.bonus-room-guide .bonus-room-tile-review{border-color:var(--color-caution-border);background:var(--color-caution-wash)}
.bonus-room-guide .bonus-room-tile-review .bonus-room-status{color:var(--color-caution-deep)}
.bonus-room-guide .bonus-room-source-note,.bonus-room-guide .bonus-room-inline-note{margin:var(--space-3) 0 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose)}
.bonus-room-guide .bonus-room-providers{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}
.bonus-room-guide .bonus-room-provider{padding:var(--space-3) 0;border:0;border-radius:0;background:transparent}
.bonus-room-guide .bonus-room-provider+.bonus-room-provider{border-top:1px solid var(--color-border)}
.bonus-room-guide .bonus-room-provider-heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}
.bonus-room-guide .bonus-room-provider h3{margin:0;font-size:var(--text-body)}
.bonus-room-guide .bonus-room-provider-tag{color:var(--color-muted);font-size:var(--text-xs);font-weight:650;white-space:nowrap}
.bonus-room-guide .bonus-room-provider p{margin:5px 0 0;font-size:var(--text-body);line-height:var(--leading-loose)}
.bonus-room-guide .bonus-room-payout-facts{margin:var(--space-2) 0 0}
.bonus-room-guide .bonus-room-payout-facts>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:var(--space-3);padding:3px 0}
.bonus-room-guide .bonus-room-payout-facts dt{color:var(--color-detail);font-size:var(--text-card);font-weight:700}
.bonus-room-guide .bonus-room-payout-facts dd{min-width:0;margin:0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-relaxed)}
.bonus-room-guide .bonus-room-provider .bonus-room-provider-link{margin-top:var(--space-2);font-size:var(--text-card)}
@media(max-width:620px){.bonus-room-guide .bonus-room-payout-facts>div{grid-template-columns:1fr;gap:1px;padding:4px 0}}
.bonus-room-guide .bonus-room-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.bonus-room-guide .bonus-room-rules>div{padding:var(--space-4);background:var(--color-frost);border-radius:var(--radius-card)}
.bonus-room-guide .bonus-room-rules h3{margin:0 0 var(--space-2);font-size:1.05rem}
.bonus-room-guide .bonus-room-rules p{margin:0;font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.bonus-room-guide .bonus-room-rules .bonus-room-rule-source{margin-top:var(--space-2)}
.bonus-room-guide .bonus-room-checklist{padding-left:1.4rem}
.bonus-room-guide .bonus-room-checklist li+li{margin-top:var(--space-2)}
.bonus-room-guide .bonus-room-final-cta{margin-top:var(--space-8)}
.bonus-room-guide .bonus-room-final-cta .category-guide-cta-copy p{max-width:62ch}
.bonus-room-guide .bonus-room-final-cta .category-guide-cta-copy a{font-weight:750}
@media(max-width:760px){.bonus-room-guide .bonus-room-outcomes{grid-template-columns:1fr}}
@media(max-width:620px){.bonus-room-guide .bonus-room-destinations,.bonus-room-guide .bonus-room-rules{grid-template-columns:1fr}}


/* Credit Card Offers: scan-first editorial shortlist using the comparison-guide system. */
.credit-card-offers-page{overflow-wrap:break-word}
.credit-card-offers-hero{padding-block:28px}
@media(min-width:621px) and (max-width:760px){.credit-card-offers-hero{padding-block:var(--space-4)}}
.credit-card-offers-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);gap:clamp(var(--space-6),3vw,40px);align-items:start}
.credit-card-offers-hero-note{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 var(--space-3);align-items:start;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.credit-card-offers-hero-note-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-pine-border);border-radius:var(--radius-md);color:var(--color-pine);background:var(--color-canvas)}
.credit-card-offers-hero-note>strong,.credit-card-offers-hero-note>p,.credit-card-offers-hero-note>a{grid-column:2}
.credit-card-offers-hero-note-icon{grid-row:1/4}
.credit-card-offers-hero-note>strong{display:block;color:var(--color-ink);font-size:var(--text-lead);line-height:var(--leading-normal);text-wrap:pretty}
.credit-card-offers-hero-note p{margin:var(--space-2) 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.credit-card-offers-layout{align-items:start}
.credit-card-offers-section{scroll-margin-top:var(--space-6)}
.credit-card-offers-section+.credit-card-offers-section{margin-top:var(--space-12)}
.credit-card-offers-index{display:grid;margin-top:var(--space-6);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}
.credit-card-offers-index-row{display:grid;grid-template-columns:34px 96px minmax(0,1fr) minmax(132px,.45fr) 32px;gap:var(--space-3);align-items:center;min-width:0;min-height:66px;padding:var(--space-2-5) 4px;color:var(--color-ink);text-decoration:none}
.credit-card-offers-index-row .brand-lockup-sm .brand-lockup-fallback{width:36px;height:36px}
.credit-card-offers-index-row .brand-lockup-sm .brand-lockup-logo{max-width:96px}
.credit-card-offers-index-row+.credit-card-offers-index-row{border-top:1px solid var(--color-border)}
.credit-card-offers-index-row:focus-visible,.credit-card-offer-official:focus-visible,.credit-card-route-guide a:focus-visible,.credit-card-wealthsimple-note a:focus-visible{outline:2px solid var(--color-pine);outline-offset:3px;border-radius:var(--radius-sm)}
.credit-card-offers-index-rank{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-size:var(--text-card);font-weight:800;font-variant-numeric:tabular-nums}
.credit-card-offers-index-copy{display:grid;gap:2px;min-width:0}
.credit-card-offers-index-copy strong{font-size:var(--text-body);line-height:var(--leading-normal);text-wrap:balance}
.credit-card-offers-index-copy small{color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}
.credit-card-offers-index-reward{font-size:var(--text-sm);font-weight:750;line-height:var(--leading-normal);text-align:right}
.credit-card-offers-index-chevron{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--color-pine-border);border-radius:50%;background:var(--color-frost);color:var(--color-pine);transition:background .16s ease,color .16s ease}
.credit-card-offers-list{display:grid;gap:var(--space-4);margin-top:var(--space-6)}
.credit-card-offer-card{min-width:0;padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas);scroll-margin-top:var(--space-4)}
.credit-card-offer-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}
.credit-card-offer-heading-main{display:grid;grid-template-columns:34px minmax(0,1fr);gap:var(--space-3);align-items:start;min-width:0}
.credit-card-offer-rank{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--color-frost);color:var(--color-detail);font-size:var(--text-card);font-weight:800;font-variant-numeric:tabular-nums}
.credit-card-offer-heading h3{margin:2px 0 4px;font-size:clamp(1.1rem,2vw,1.35rem);line-height:var(--leading-snug);letter-spacing:var(--tracking-slight)}
.credit-card-offer-title-row{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex-wrap:wrap}
.credit-card-offer-title-row .brand-lockup{flex:0 0 auto}
.credit-card-offer-title-row h3{margin:0}
.credit-card-offer-badges{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-2)}
.credit-card-offer-badges .badge>span{display:grid;place-items:center;width:14px;height:14px;flex:0 0 14px}
.credit-card-offer-badges .badge>span svg{display:block;width:14px;height:14px}
@media(min-width:621px){.credit-card-offer-badges .badge>span{transform:translateY(1.25px)}}
.credit-card-offer-rebate{display:grid;justify-items:end;gap:3px;flex:0 0 auto;max-width:240px;text-align:right}
.credit-card-offer-rebate span{color:var(--color-muted);font-size:var(--text-xs);font-weight:750;text-transform:none;white-space:nowrap}
.credit-card-offer-rebate strong{color:var(--color-pine);font-size:var(--text-body);line-height:var(--leading-snug);white-space:nowrap}
.credit-card-offer-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-6);margin-top:var(--space-2)}
.credit-card-offer-facts>div{min-width:0;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}
.credit-card-offer-facts>div>strong{display:flex;align-items:center;gap:var(--space-2);color:var(--color-detail);font-size:var(--text-sm);line-height:var(--leading-normal)}
.credit-card-offer-facts ul{margin:5px 0 0;padding-left:18px;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed)}
.credit-card-offer-facts li{margin-bottom:4px;text-wrap:balance}
.credit-card-offer-facts li:last-child{margin-bottom:0}
.credit-card-offer-fact-excluded-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:0 0 14px;margin-right:4px;color:var(--color-caution-deep);vertical-align:-2.5px}
.credit-card-offer-fact-excluded-icon svg{display:block;width:14px;height:14px}

.credit-card-offer-note{margin:var(--space-4) 0 0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-frost);color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-relaxed)}
.credit-card-offer-note strong{color:var(--color-ink)}
.credit-card-offer-note ul{margin:var(--space-2) 0 0;padding-left:18px;display:grid;gap:4px}
.credit-card-offer-note li{line-height:var(--leading-relaxed)}
.credit-card-offer-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}
.credit-card-offer-actions .button{min-height:var(--touch-target-min)}
.credit-card-offer-official{display:inline-flex;align-items:center;gap:5px;min-height:var(--touch-target-min);color:var(--color-pine);font-size:var(--text-card);font-weight:750}
.credit-card-offer-source{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px var(--space-4);margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-xs);line-height:var(--leading-relaxed)}
.credit-card-offer-checked{display:inline-flex;align-items:center;gap:4px}
.credit-card-offer-checked>span{display:grid;place-items:center;width:14px;height:14px;flex:0 0 14px;transform:translateY(0.75px)}
.credit-card-offer-checked>span svg{display:block;width:14px;height:14px}
.credit-card-offer-source a{color:var(--color-pine);font-weight:750;text-decoration:none}
.credit-card-route-guides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(7,auto);gap:0 var(--space-6);margin-top:var(--space-4)}
.credit-card-route-guide h3{margin:0 0 var(--space-2);font-size:1.1rem}
.credit-card-route-guide p{margin:0 0 var(--space-3);color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.credit-card-route-guide .button{margin-top:var(--space-2)}
.credit-card-route-guide .credit-card-route-fineprint{margin-top:var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}
.credit-card-route-compare{display:grid;margin-top:var(--space-4);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}
.credit-card-route-compare-row{display:grid;grid-template-columns:minmax(210px,.6fr) minmax(0,1fr) minmax(0,1.3fr) minmax(0,1.2fr);gap:var(--space-3);align-items:start;padding:var(--space-3) 4px;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed)}
.credit-card-route-compare-row+.credit-card-route-compare-row{border-top:1px solid var(--color-border)}
.credit-card-route-compare-head{color:var(--color-muted);font-size:var(--text-xs);font-weight:750;letter-spacing:var(--tracking-wide);text-transform:uppercase}
.credit-card-route-compare-row>strong{color:var(--color-ink);text-wrap:pretty}
.credit-card-route-compare-finly > strong{color:var(--color-pine)}
.credit-card-route-compare-gcr > strong{color:var(--color-aqua)}
.credit-card-route-guide{display:grid;grid-template-rows:subgrid;grid-row:1 / 8;align-items:start;padding:var(--space-4);border:1px solid var(--color-border);border-top:3px solid var(--color-pine);border-radius:var(--radius-card);background:var(--color-canvas)}
.credit-card-route-guide-head{display:flex;align-items:center;gap:var(--space-3);grid-row:1}
.credit-card-route-guide-head h3{margin:0}
.credit-card-route-guide-finly .credit-card-route-guide-icon{background:var(--color-pine-wash);border-color:var(--color-pine-border);color:var(--color-pine)}
.credit-card-route-guide-gcr{border-top-color:var(--color-aqua)}
.credit-card-route-guide-gcr .credit-card-route-guide-icon{background:var(--color-aqua-wash);border-color:var(--color-aqua-border);color:var(--color-aqua)}
.credit-card-route-guide-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-pine-border);border-radius:var(--radius-md);color:var(--color-pine);background:var(--color-frost)}
.credit-card-route-facts{display:grid;grid-template-rows:subgrid;grid-row:2 / 6}
.credit-card-route-facts>div{min-width:0;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}
.credit-card-route-facts strong{display:flex;align-items:center;gap:var(--space-2);color:var(--color-detail);font-size:var(--text-sm);line-height:var(--leading-normal)}
.credit-card-route-facts p{margin:5px 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.credit-card-route-guide .credit-card-route-fineprint{grid-row:6}
.credit-card-route-guide-cta{grid-row:7;justify-self:start;margin-top:var(--space-3);min-height:48px;padding:0 22px}
.credit-card-route-guide-cta-note{grid-row:7;display:flex;align-items:center;margin-top:var(--space-3);min-height:44px;color:var(--color-muted);font-size:var(--text-sm)}
.credit-card-route-compare-row:hover{background:var(--color-frost)}
.credit-card-offers-index-note{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.credit-card-offers-index-note a{color:var(--color-pine);font-weight:750;text-decoration:none}
.credit-card-offer-card .brand-lockup-sm .brand-lockup-fallback{width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-frost);color:var(--color-ink)}
.credit-card-offer-card .brand-lockup-sm .brand-lockup-logo{height:24px;max-height:24px;max-width:140px}
.credit-card-offer-card .brand-lockup-sm .brand-lockup-name{font-size:var(--text-body);font-weight:750}
.credit-card-route-warning{margin-top:var(--space-6);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-frost)}
.credit-card-route-warning strong{color:var(--color-ink)}
.credit-card-route-warning p{margin:5px 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.credit-card-route-warning-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}
.credit-card-route-warning-row{display:flex;gap:var(--space-3);align-items:flex-start;margin-top:var(--space-3);color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose)}
.credit-card-route-warning-icon{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;color:var(--color-pine)}
.credit-card-route-warning-action{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}
.credit-card-route-warning p.credit-card-route-warning-note{margin:var(--space-2) 0 0;color:var(--color-muted);font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.credit-card-wealthsimple-note{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.45fr);gap:var(--space-6);align-items:start;margin-top:var(--space-4);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-frost)}
.credit-card-wealthsimple-note p{margin:7px 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.credit-card-wealthsimple-note .text-link{font-size:var(--text-card);font-weight:750}
.credit-card-wealthsimple-separator{padding:0 5px;color:var(--color-muted)}
.credit-card-wealthsimple-referral{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas)}
.credit-card-wealthsimple-referral>span{display:block;color:var(--color-muted);font-size:var(--text-xs);font-weight:750}
.credit-card-wealthsimple-referral>strong{display:block;margin-top:4px;color:var(--color-pine);font-size:1.5rem}
.credit-card-wealthsimple-referral p{font-size:var(--text-sm);text-wrap:pretty}
.credit-card-wealthsimple-referral>a{display:inline-flex;align-items:center;gap:5px;margin-top:3px;font-size:var(--text-sm);font-weight:750}
.credit-card-wealthsimple-offers{display:grid;gap:0;margin-top:var(--space-4)}
.credit-card-wealthsimple-offer{display:grid;grid-template-columns:30px minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-3) 0;border-top:1px solid var(--color-border)}
.credit-card-wealthsimple-offer:last-child{border-bottom:1px solid var(--color-border)}
.credit-card-wealthsimple-offer-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-pine-border);border-radius:var(--radius-md);background:var(--color-frost);color:var(--color-pine)}
.credit-card-wealthsimple-offer strong{font-size:var(--text-body);line-height:var(--leading-normal)}
.credit-card-wealthsimple-offer .badge{margin-left:var(--space-2);vertical-align:middle}
.credit-card-wealthsimple-offer p{margin:4px 0 0;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.credit-card-offers-interest-note{display:flex;align-items:flex-start;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--color-negative-border);border-radius:var(--radius-md);background:var(--color-negative-wash);color:var(--color-negative)}
.credit-card-offers-interest-note-icon{display:grid;place-items:center;flex:0 0 20px;color:var(--color-negative)}
.credit-card-methodology{max-width:var(--article-width);color:var(--color-copy)}
.credit-card-methodology p{font-size:var(--text-card);line-height:var(--leading-loose);text-wrap:pretty}
.credit-card-methodology p:last-child{margin-bottom:0}
.credit-card-offers-matrix{width:100%;margin-top:var(--space-6);border-collapse:separate;border-spacing:0;table-layout:fixed;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;font-size:var(--text-card)}
.credit-card-offers-matrix thead th:nth-child(1){width:24%}
.credit-card-offers-matrix thead th:nth-child(2){width:16%}
.credit-card-offers-matrix thead th:nth-child(3){width:28%}
.credit-card-offers-matrix thead th:nth-child(4){width:32%}
.credit-card-offers-matrix tbody th,.credit-card-offers-matrix tbody td{text-align:left}
.credit-card-offers-matrix thead th{padding:var(--space-3-5) 18px;background:var(--color-ink);color:var(--color-inverse);font-size:var(--text-xs);font-weight:800;text-align:left;letter-spacing:var(--tracking-normal);text-transform:none}
.credit-card-offers-matrix thead th:first-child{border-top-left-radius:var(--radius-md)}
.credit-card-offers-matrix thead th:last-child{border-top-right-radius:var(--radius-md)}
.credit-card-offers-matrix tbody tr:last-child th:first-child{border-bottom-left-radius:var(--radius-md)}
.credit-card-offers-matrix tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius-md)}
.credit-card-offers-matrix tbody th,.credit-card-offers-matrix tbody td{padding:var(--space-4) 18px;border-top:1px solid var(--color-border);vertical-align:top;text-wrap:balance}
.credit-card-offers-matrix tbody th a{color:var(--color-ink);font-weight:800;text-decoration:none}
.credit-card-offers-matrix tbody th small{display:block;margin-top:4px;color:var(--color-detail);font-size:var(--text-sm);font-weight:400;line-height:var(--leading-normal)}
.credit-card-offers-matrix tbody td{color:var(--color-copy);line-height:var(--leading-relaxed)}
.credit-card-offers-matrix tbody td strong{display:block;color:var(--color-pine)}
.credit-card-offers-matrix tbody td span{display:block;margin-top:4px;color:var(--color-detail);font-size:var(--text-card)}
.credit-card-matrix-badges{display:flex;flex-wrap:wrap;gap:var(--space-1-5);margin:0;padding:0;list-style:none}
.credit-card-matrix-badges li{padding:4px var(--space-2);border:1px solid var(--color-border);border-radius:999px;background:var(--color-frost);color:var(--color-detail);font-size:var(--text-xs);font-weight:750;line-height:var(--leading-normal);white-space:nowrap}
.credit-card-matrix-badges li.credit-card-matrix-badge-positive{border-color:var(--color-pine-border);background:var(--color-pine-soft);color:var(--color-pine)}
.credit-card-matrix-badges li.credit-card-matrix-badge-caution{border-color:var(--color-caution-border);background:var(--color-caution-wash);color:var(--color-caution-deep)}
.credit-card-offers-matrix tbody tr:hover{background:var(--color-frost)}

.credit-card-apply-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-frost)}
.credit-card-apply-checklist-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas)}
.credit-card-apply-checklist-number{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--color-frost);color:var(--color-detail);font-size:var(--text-card);font-weight:800}
.credit-card-apply-checklist-item strong{color:var(--color-ink);line-height:var(--leading-normal)}
.credit-card-apply-checklist-item p{margin:4px 0 0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.credit-card-methodology-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-4)}
.credit-card-methodology-strip>span{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 var(--space-3);align-items:start;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-frost)}
.credit-card-methodology-strip-icon{display:grid;place-items:center;width:30px;height:30px;color:var(--color-pine)}
.credit-card-methodology-strip-copy{display:grid;gap:2px}
.credit-card-methodology-strip strong{color:var(--color-ink)}
.credit-card-methodology-strip small{color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-normal)}
.credit-card-methodology h3{margin:var(--space-4) 0 var(--space-2);color:var(--color-ink);font-size:1.05rem}
.credit-card-route-deal-links{margin-top:var(--space-3);color:var(--color-muted);font-size:var(--text-card);line-height:var(--leading-relaxed)}
.credit-card-route-deal-links a{color:var(--color-pine);font-weight:750}
.credit-card-wealthsimple-mark{margin-bottom:var(--space-3)}
@media(max-width:760px){
.credit-card-offers-matrix thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.credit-card-offers-matrix,.credit-card-offers-matrix tbody,.credit-card-offers-matrix tr,.credit-card-offers-matrix th,.credit-card-offers-matrix td{display:block;width:100%}
.credit-card-offers-matrix tbody td::before{content:attr(data-label);display:block;margin-bottom:4px;color:var(--color-muted);font-size:var(--text-xs);font-weight:800;letter-spacing:var(--tracking-normal);text-transform:none}
.credit-card-offers-matrix tr{border-top:1px solid var(--color-border)}
.credit-card-apply-checklist,.credit-card-methodology-strip{grid-template-columns:1fr}
.credit-card-apply-checklist-item{grid-template-columns:30px minmax(0,1fr)}
}
.credit-card-offers-final-cta .category-guide-cta-actions{display:grid;gap:var(--space-2-5)}
@media(hover:hover) and (pointer:fine){
.credit-card-offers-index-row:hover .credit-card-offers-index-chevron{background:var(--color-pine);color:var(--color-inverse);transform:translateX(2px)}
  .credit-card-offer-official:hover,.credit-card-route-guide a:hover,.credit-card-wealthsimple-note a:hover{color:var(--color-pine-hover)}
}
@media(max-width:900px){
  .credit-card-offers-hero-grid{grid-template-columns:1fr;gap:var(--space-4)}
  .credit-card-offers-hero-note{max-width:680px}
  .credit-card-offers-hero-note p{margin-bottom:5px}
}
@media(max-width:760px){
  .credit-card-route-compare-head{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .credit-card-route-compare-row{grid-template-columns:1fr;padding:var(--space-3) 0}
  .credit-card-route-compare-row>span::before{content:attr(data-label);display:block;margin-bottom:2px;color:var(--color-muted);font-size:var(--text-xs);font-weight:750;letter-spacing:var(--tracking-wide);text-transform:uppercase}
  .credit-card-offers-layout{display:block}
  .credit-card-offers-layout>.page-toc{margin-bottom:var(--space-6)}
  .credit-card-route-guides,.credit-card-wealthsimple-note{grid-template-columns:1fr}
  .credit-card-route-guides{grid-template-rows:auto}
  .credit-card-route-guide{grid-row:auto;grid-template-rows:auto}
  .credit-card-route-facts{grid-row:auto;grid-template-rows:auto}
  .credit-card-route-guide .credit-card-route-fineprint,.credit-card-route-guide-cta,.credit-card-route-guide-cta-note{grid-row:auto}
}
@media(max-width:620px){
  .credit-card-offers-hero{padding-block:var(--space-4) var(--space-6)}
  .credit-card-offers-hero h1{font-size:clamp(1.75rem,1.2rem + 2.4vw,2.5rem);line-height:var(--leading-display);letter-spacing:var(--tracking-tight);text-wrap:balance}
  .credit-card-offers-index-row{grid-template-columns:30px 64px minmax(0,1fr) 32px;column-gap:var(--space-2-5);min-height:62px}
  .credit-card-offers-index-row .brand-lockup-sm .brand-lockup-logo{max-width:64px}
  .credit-card-offers-index-reward{grid-column:3;grid-row:2;justify-self:start;text-align:left;font-size:var(--text-xs)}
  .credit-card-offers-index-chevron{grid-column:4;grid-row:1/3}
  .credit-card-offers-index-copy small{font-size:var(--text-xs)}
  .credit-card-offer-card{padding:var(--space-4)}
  .credit-card-offer-heading{display:grid;grid-template-columns:minmax(0,1fr)}
  .credit-card-offer-rebate{justify-items:start;max-width:none;text-align:left}
  .credit-card-offer-rebate span,.credit-card-offer-rebate strong{white-space:normal}
  .credit-card-offer-facts{grid-template-columns:1fr}
  .credit-card-offer-actions{display:grid;grid-template-columns:1fr;gap:4px}
  .credit-card-offer-actions .button{width:100%}
  .credit-card-offer-official{justify-content:center}
  .credit-card-offer-source{display:grid}
  .credit-card-wealthsimple-note{padding:var(--space-4)}
  .credit-card-offers-final-cta .category-guide-cta-actions{grid-template-columns:1fr}
}

/* Credit-card mobile polish: header wrap, fact spacing, matrix height. Mobile only, no wording, no color, no font size. */
@media(max-width:620px){
  .credit-card-offer-heading{gap:var(--space-2)}
  .credit-card-offer-heading-main{gap:var(--space-2);row-gap:var(--space-3)}
  .credit-card-offer-badges{margin-bottom:var(--space-2)}
  .credit-card-offer-badges .badge{font-size:var(--font-size-compact-label);padding:2px var(--space-1-5)}
  .credit-card-offer-title-row{flex-wrap:nowrap;gap:var(--space-2-5);align-items:flex-start}
  .credit-card-offer-title-row h3{min-width:0}
  .credit-card-offer-card .brand-lockup-sm .brand-lockup-logo{max-width:96px}
  .credit-card-offer-rebate{padding-left:42px}
  .credit-card-offer-facts>div{padding:var(--space-2) 0}
  .credit-card-offer-facts ul{padding-left:var(--space-3-5)}
  .credit-card-offer-facts li{margin-bottom:2px}
}
@media(max-width:760px){
  .credit-card-offers-matrix tbody th,.credit-card-offers-matrix tbody td{padding:var(--space-2-5) var(--space-4);border-top:0}
  .credit-card-offers-matrix tr{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-3)}
  .credit-card-offers-matrix th{grid-column:1/-1;width:auto}
  .credit-card-offers-matrix td{width:auto}
  .credit-card-offers-matrix td:nth-child(4){grid-column:1/-1}
  .credit-card-matrix-badges{gap:4px}
  .credit-card-matrix-badges li{white-space:normal;font-size:var(--font-size-compact-label);padding:2px var(--space-1-5)}
}


/* Credit-card UX 10/10: index pine, matrix heading, matrix name frost, detail shadow. Site tokens only, no new colors, no new icons. */
.credit-card-offers-index-rank{background:var(--color-pine-soft);color:var(--color-pine)}
.credit-card-offers-index-reward{color:var(--color-pine)}
.credit-card-offers-matrix-heading{margin:var(--space-6) 0 0;padding-bottom:var(--space-3);border-bottom:3px solid var(--color-pine);color:var(--color-ink);font-size:1.5rem;line-height:var(--leading-normal);font-weight:800;text-wrap:pretty}
.credit-card-offers-matrix-subtitle{margin:var(--space-2) 0 0;color:var(--color-copy);font-size:var(--text-body);line-height:var(--leading-loose);text-wrap:pretty}
.credit-card-offers-matrix tbody th{background:var(--color-frost)}
.credit-card-offer-card{box-shadow:0 2px 8px var(--shadow-ink-rest)}

/* Credit-card guide: make portal setup and offer facts easier to scan. */
.credit-card-portal-start{padding:var(--space-6);border:1px solid var(--color-pine-border);border-radius:var(--radius-card);background:var(--color-frost)}
.credit-card-portal-start .comparison-guide-section-intro{margin-bottom:var(--space-3)}
.credit-card-portal-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.credit-card-portal-start-option{display:grid;grid-template-columns:30px minmax(0,1fr);gap:var(--space-2) var(--space-3);align-items:start;min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas)}
.credit-card-portal-start-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-pine-border);border-radius:var(--radius-md);color:var(--color-pine);background:var(--color-frost)}
.credit-card-portal-start-copy{min-width:0}
.credit-card-portal-start-copy h3{margin:0;color:var(--color-ink);font-size:var(--text-body);line-height:var(--leading-snug)}
.credit-card-portal-start-copy p{margin:4px 0 0;color:var(--color-copy);font-size:var(--text-sm);line-height:var(--leading-relaxed);text-wrap:pretty}
.credit-card-portal-start-option .button{grid-column:2;justify-self:start;min-height:var(--touch-target-min);min-width:118px;padding-inline:13px;white-space:nowrap}
.credit-card-portal-start-note{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
.credit-card-offer-fact-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;width:18px;height:18px;color:var(--color-detail)}
.credit-card-offer-rebate-icon{display:inline-flex;align-items:center;justify-content:center;margin-right:4px;color:var(--color-pine);vertical-align:-4px}
.credit-card-offer-actions .credit-card-offer-alternate{padding-inline:2px}
.credit-card-offer-source{align-items:center}
.credit-card-offer-source time{font-variant-numeric:tabular-nums}
.credit-card-portal-start-option a:focus-visible{outline:2px solid var(--color-pine);outline-offset:3px;border-radius:var(--radius-sm)}
@media(hover:hover) and (pointer:fine){
  .credit-card-portal-start-option{transition:border-color .16s ease}
  .credit-card-portal-start-option:hover{border-color:var(--color-pine-border-strong)}
}
@media(max-width:760px){
  .credit-card-portal-start-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .credit-card-portal-start{padding:var(--space-4)}
  .credit-card-portal-start-option{grid-template-columns:30px minmax(0,1fr);gap:var(--space-2) var(--space-3);padding:var(--space-3)}
  .credit-card-portal-start-option .button{grid-column:2;justify-self:stretch;width:100%;min-width:118px;text-align:center}
  .credit-card-route-warning-head{flex-direction:column;align-items:flex-start;gap:var(--space-2)}
}


/* Brokerage urgency badges: same size as the matrix client badge, site tokens only. */
.brokerage-matrix-urgency-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1-5);
  min-height: 26px;
  padding: 3px 7px;
  border-radius: var(--radius-sm);
  font-size: var(--text-xs);
  font-weight: 750;
  line-height: var(--leading-snug);
  white-space: nowrap;
}
.brokerage-matrix-urgency-today {
  border: 1px solid var(--color-negative-border);
  background: var(--color-negative-wash);
  color: var(--color-negative);
}
.brokerage-matrix-urgency-soon,.brokerage-matrix-urgency-starts {
  border: 1px solid var(--color-caution-border);
  background: var(--color-caution-wash);
  color: var(--color-caution-deep);
}

/* Brokerage methodology: facts list becomes tiles, plus a terms-compare-verify flow line. */
.brokerage-methodology-main{min-width:0}
.brokerage-methodology-flow {
  width: fit-content;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin: var(--space-4) 0 0;
  padding: var(--space-3) var(--space-3-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-canvas);
  color: var(--color-pine);
  font-size: var(--text-card);
  font-weight: 750;
}
.brokerage-methodology-flow-step{display:inline-flex;align-items:center;gap:var(--space-1-5)}
.brokerage-methodology-flow-step span{display:grid;place-items:center;width:16px;height:16px;flex:0 0 16px}
.brokerage-methodology-flow-step span svg{width:16px;height:16px}
.brokerage-methodology-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
  padding-top: var(--space-4);
}
.brokerage-methodology-facts li {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-3-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-canvas);
  color: var(--color-detail);
  font-size: var(--text-card);
  font-weight: 750;
  line-height: var(--leading-relaxed);
}
.brokerage-methodology-facts li span{display:grid;place-items:center;width:16px;height:16px;flex:0 0 16px}
.brokerage-methodology-facts li span svg{width:16px;height:16px}
.brokerage-methodology-heading p{text-wrap:balance}
.brokerage-methodology-facts li::before {
  content: none;
}
@media (max-width: 760px) {
  .brokerage-methodology-facts {
    grid-template-columns: 1fr;
  }
}

/* Brokerage highest badges: same size as the matrix client badge, pine tokens only. */
.brokerage-matrix-highest-badge,.brokerage-matrix-commission-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-1-5);
  min-height: 26px;
  padding: 3px 7px;
  border: 1px solid var(--color-pine-border);
  border-radius: var(--radius-sm);
  background: var(--color-pine-wash);
  color: var(--color-pine);
  font-size: var(--text-xs);
  font-weight: 750;
  line-height: var(--leading-snug);
  white-space: nowrap;
}
.brokerage-matrix-commission-note {
  margin: var(--space-3) 0 0;
  color: var(--color-muted);
  font-size: var(--text-card);
  line-height: var(--leading-loose);
}

/* Brokerage real-value icons: icon above the term label, centred, site tokens only. */
.brokerage-real-value-term-icon {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin: 0 auto var(--space-1-5);
  color: var(--color-aqua);
}
.brokerage-real-value-term-icon svg {
  width: 20px;
  height: 20px;
}
.brokerage-real-value-result .brokerage-real-value-term-icon {
  color: var(--color-pine);
}
.brokerage-real-value-term:not(:first-child) strong {
  padding-left: 0;
}

/* Brokerage detail label icons: inline before the label, aqua, site tokens only. */
.brokerage-provider-label-icon {
  display: inline-flex;
  align-items: center;
  margin-right: var(--space-1-5);
  color: var(--color-aqua);
  vertical-align: -4.5px;
}
.brokerage-provider-label-icon svg {
  width: 16px;
  height: 16px;
}

/* Brokerage detail header badges: type badge and client/urgency/highest badges share one row on desktop, wrap on mobile. */
.brokerage-provider-header-badge-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-1-5);
  margin-top: var(--space-2-5);
}
.brokerage-provider-header-badge-row .brokerage-promotions-provider-type {
  margin-top: 0;
}
.brokerage-provider-header-badge-row .brokerage-matrix-badges {
  margin-top: 0;
}
@media(max-width:760px){
  .brokerage-provider-header-badge-row{display:grid;grid-template-columns:repeat(2,max-content);gap:var(--space-1-5)}
  .brokerage-provider-header-badge-row .brokerage-matrix-badges{display:contents}
}
@media(max-width:760px){
  .brokerage-promotions-caveat{grid-template-columns:30px minmax(0,1fr);grid-template-areas:"icon heading" "bullets bullets";gap:var(--space-2) 9px}
  .brokerage-promotions-caveat-icon{grid-area:icon}
  .brokerage-promotions-caveat-copy{display:contents}
  .brokerage-promotions-caveat-copy>strong{grid-area:heading;align-self:center}
  .brokerage-promotions-caveat-copy .brokerage-provider-point-list{grid-area:bullets;margin-top:0}
}

/* Brokerage rail cards: desktop only, below the TOC, in the same sticky rail. */
.brokerage-rail-cards{display:none}
.brokerage-rail-card{padding:var(--space-3) var(--space-3-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas)}
.brokerage-rail-card-title{display:flex;align-items:center;gap:var(--space-1-5);margin:0 0 var(--space-1-5);color:var(--color-detail);font-size:var(--text-card);font-weight:750;line-height:var(--leading-normal)}
.brokerage-rail-card-title span{display:grid;place-items:center;width:16px;height:16px;flex:0 0 16px;color:var(--color-aqua)}
.brokerage-rail-card-title span svg{width:16px;height:16px}
.brokerage-rail-card p{margin:0;color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-relaxed);text-wrap:pretty}
.brokerage-rail-card p+p{margin-top:var(--space-1-5)}
.brokerage-rail-card a{display:flex;align-items:center;min-height:var(--touch-target-min);color:var(--color-pine);font-size:var(--text-card);font-weight:800;line-height:var(--leading-normal);text-decoration:none}
@media(min-width:1100px){
  .brokerage-promotions-reading-layout>.brokerage-rail{grid-column:2;grid-row:1;position:sticky;top:var(--space-6);max-height:calc(100vh - var(--space-12));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
  .brokerage-promotions-reading-layout>.brokerage-rail>.page-toc{grid-column:auto;grid-row:auto;position:static;max-height:none;overflow:visible;width:auto}
  .brokerage-rail-cards{display:grid;gap:var(--space-3);margin-top:var(--space-4)}
}
@media(max-width:1099px){
  .brokerage-promotions-reading-layout>.brokerage-rail{width:min(100%,var(--deal-width));align-self:flex-start}
}
@media(max-width:620px){.credit-card-offers-matrix-heading,.credit-card-offers-matrix-subtitle,.credit-card-offers-matrix{display:none}}

/* Brokerage hero summary box: condensed, top right on desktop only, hidden below 1024px. */
/* Matrix provider logos: a very wide logo (Scotia, 8.775 aspect) must never overflow its column. */
.brokerage-summary-box{display:none}
.brokerage-matrix-provider .brand-lockup-logo{max-width:100%}
@media(min-width:1024px){
  .brokerage-promotions-hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:28px}
  .brokerage-promotions-hero-grid>.brokerage-shortlist-panel{grid-column:1/-1}
  .brokerage-summary-box{display:block;padding:18px var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
  .brokerage-summary-box h2{display:flex;align-items:center;gap:var(--space-2);margin:0 0 4px;font-size:1.05rem;line-height:var(--leading-snug)}
  .brokerage-summary-box h2>span:first-child{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:var(--radius-md);background:var(--color-pine-wash);color:var(--color-pine)}
  .brokerage-summary-box h2 svg{display:block}
  .brokerage-summary-box ul{margin:0;padding:0;list-style:none}
  .brokerage-summary-box li+li{border-top:1px solid var(--color-border)}
  .brokerage-summary-row{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:var(--space-3);align-items:center;padding:11px 0;color:var(--color-ink);text-decoration:none}
  .brokerage-summary-copy{min-width:0}
  .brokerage-summary-copy strong{display:block;font-size:var(--text-body);line-height:var(--leading-snug)}
  .brokerage-summary-copy small{display:block;margin-top:2px;color:var(--color-copy);font-size:var(--text-sm);line-height:var(--leading-relaxed)}
  .brokerage-summary-chevron{color:var(--color-pine)}
  .brokerage-summary-box>p{margin:var(--space-3) 0 0;padding-top:var(--space-3);border-top:1px solid var(--color-border)}
}

.brokerage-checked-providers{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.brokerage-checked-providers ul{margin:0;padding:0;list-style:none}
.brokerage-checked-provider{padding:var(--space-3-5) 0}
.brokerage-checked-provider:first-child{padding-top:0}
.brokerage-checked-provider:last-child{padding-bottom:0}
.brokerage-checked-provider+.brokerage-checked-provider{border-top:1px solid var(--color-border)}
.brokerage-checked-provider-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3-5);flex-wrap:wrap}
.brokerage-checked-brand{display:flex;align-items:center;gap:var(--space-2-5)}.brokerage-checked-brand .brand-lockup-name{color:var(--color-ink);font-size:var(--text-body);font-weight:700;line-height:var(--leading-snug)}
.brokerage-checked-status{display:inline-flex;align-items:center;gap:var(--space-1-5);flex:0 0 auto;min-height:26px;padding:3px var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-frost);font-size:var(--text-xs);font-weight:800;line-height:var(--leading-snug);white-space:nowrap;color:var(--color-detail)}.brokerage-checked-status-expired{border-color:var(--color-negative-border);background:var(--color-negative-wash);color:var(--color-negative)}.brokerage-checked-status-held{border-color:var(--color-caution-deep);background:var(--color-caution-wash);color:var(--color-detail)}.brokerage-checked-status-standing{border-color:var(--color-border);background:var(--color-frost);color:var(--color-detail)}
.brokerage-checked-status span{display:grid;place-items:center;width:14px;height:14px}
.brokerage-checked-status svg{width:14px;height:14px}
.brokerage-checked-provider>p{margin:var(--space-2) 0 var(--space-1-5);color:var(--color-copy);font-size:var(--text-card);line-height:var(--leading-loose)}
.brokerage-checked-provider .brokerage-provider-point-list{margin:var(--space-2) 0 var(--space-1-5);font-size:var(--text-card);color:var(--color-copy)}
.brokerage-checked-provider .brokerage-promotions-source-verified{font-size:var(--text-sm)}
@media(max-width:640px){
.brokerage-checked-providers{padding:var(--space-4)}
.brokerage-checked-provider{padding:var(--space-3) 0}
}

/* Not Received v2 polish, PR 1668, scoped to .not-received-polish only. */
.not-received-polish .bonus-room-tile-icon{flex:0 0 48px;width:48px;height:48px;border-radius:var(--radius-button)}
.not-received-polish .bonus-room-tile-icon svg{width:24px;height:24px}
.not-received-polish .bonus-room-status{display:inline-flex;align-items:center;padding:4px var(--space-2-5);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas)}
.not-received-polish .bonus-room-tile-link{display:inline-flex;align-items:center;gap:4px}
.not-received-polish .bonus-room-tile-link svg{width:16px;height:16px}
.not-received-polish .bonus-room-checklist{list-style:none;padding-left:0;counter-reset:notrec-step}
.not-received-polish .bonus-room-checklist li{counter-increment:notrec-step;position:relative;padding:var(--space-3-5) var(--space-3-5) var(--space-3-5) 56px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.not-received-polish .bonus-room-checklist li+li{margin-top:var(--space-3)}
.not-received-polish .bonus-room-checklist li::before{content:counter(notrec-step);position:absolute;left:12px;top:14px;width:32px;height:32px;border-radius:50%;background:var(--color-pine);color:var(--color-canvas);display:grid;place-items:center;font-weight:700;font-size:var(--text-card)}
@media (max-width:620px){
.not-received-polish .comparison-guide-meta{flex-direction:column;align-items:stretch}
.not-received-polish .comparison-guide-meta-item{width:100%}
}

/* V4, PR 1668, scoped to .not-received-polish only. */
.not-received-polish .bonus-room-fact-icon{display:inline-flex;color:var(--color-pine);transform:translateY(1px)}
.not-received-polish .bonus-room-fact-icon svg{width:18px;height:18px}

/* V5, PR 1668, scoped to .not-received-polish only. */
.not-received-polish .bonus-room-provider-link a{display:inline-flex;align-items:center;gap:4px}
.not-received-polish .bonus-room-provider-link a svg{width:16px;height:16px}

.not-received-polish .bonus-room-tile-title strong{white-space:nowrap}
@media(max-width:1279px){
.guide-reading-layout:has(.not-received-polish){display:flex;flex-direction:column;align-items:center;gap:var(--space-6);--toc-desktop-display:none;--toc-mobile-display:block}
.guide-reading-layout:has(.not-received-polish)>.guide-reading,.guide-reading-layout:has(.not-received-polish)>.page-toc{width:min(100%,var(--deal-width))}
.guide-reading-layout:has(.not-received-polish)>.page-toc{order:-1;position:static;max-height:none;overflow:visible}
}
@media(min-width:801px){
.not-received-polish .comparison-guide-table{table-layout:fixed;min-width:0}
.not-received-polish .comparison-guide-table th:first-child{width:24%}
.not-received-polish .comparison-guide-table th:nth-child(2){width:38%}
.not-received-polish .comparison-guide-table th:nth-child(3){width:38%}
.not-received-polish .comparison-guide-table th,.not-received-polish .comparison-guide-table td{overflow-wrap:normal}
}
.not-received-polish .bonus-room-table-provider{display:block;font-size:var(--text-body);font-weight:800;color:var(--color-ink)}
.not-received-polish .bonus-room-table-bonus{display:block;margin-top:2px;color:var(--color-pine);font-size:var(--text-body);font-weight:800;white-space:nowrap}
.not-received-polish .comparison-guide-table-note{margin-bottom:var(--space-4)}
.not-received-polish .bonus-room-providers{display:grid;gap:var(--space-4);border:0}
.not-received-polish .bonus-room-provider{padding:var(--space-4);margin-bottom:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
/* Sources gap: 12px breathing room inside the open disclosure below the methodology list. Scoped to this page only; the checked note below the disclosure keeps its own 12px gap in all states, so the closed state is unchanged. */
.not-received-polish .comparison-methodology-notes ul{margin-bottom:var(--space-3)}

.not-received-polish .bonus-room-provider-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0 0 var(--space-2)}
.not-received-polish .bonus-room-provider h3{font-size:var(--text-h3);font-weight:800;color:var(--color-ink)}
.not-received-polish .bonus-room-amount-badge{flex:0 0 auto;padding:var(--space-1-5) var(--space-3-5);border-radius:999px;background:var(--color-pine);color:var(--color-inverse);font-size:var(--text-card);font-weight:800;white-space:nowrap}
/* Option 1, PR 1921: real brand logos in the provider card heads, scoped to .not-received-polish only. brandLockup sets an inline height, so !important is required, same precedent as .contribution-room-polish .bonus-room-provider-logo-shrink. Height 28px, max-width 180px: Wealthsimple about 170px, Tangerine 135px, Simplii capped at 180px wide (natural 203px at 28px tall). EQ Bank is excluded: at 28px it renders only 64px wide, so it keeps its brandLockup sm height of 40.5px (about 93px wide), the same size it renders on comparison guides. */
.not-received-polish .bonus-room-provider-head{flex-wrap:wrap}
.not-received-polish .bonus-room-provider-head h3{display:flex;align-items:center;gap:var(--space-2-5);min-width:0}
.not-received-polish .bonus-room-provider-logo{display:inline-flex;flex:0 0 auto}
.not-received-polish .bonus-room-provider-logo:not(.bonus-room-provider-logo--eq) .brand-lockup-logo{height:28px !important;max-width:180px;width:auto}
.not-received-polish .bonus-room-timeline{display:flex;height:8px;border-radius:999px;overflow:hidden}
.not-received-polish .bonus-room-timeline span{flex:1}
.not-received-polish .bonus-room-timeline span:nth-child(1){background:var(--color-pine-soft)}
.not-received-polish .bonus-room-timeline span:nth-child(2){background:var(--color-pine)}
.not-received-polish .bonus-room-timeline span:nth-child(3){background:var(--color-caution-soft)}
/* Tangerine and Simplii hold before payout, so Hold is the middle segment there. */
.not-received-polish .bonus-room-timeline--hold-middle span:nth-child(2){background:var(--color-caution-soft)}
.not-received-polish .bonus-room-timeline--hold-middle span:nth-child(3){background:var(--color-pine)}
/* EQ has no hold: 2-segment timeline, Qualify then Payout. Payout takes pine as the peak. */
.not-received-polish .bonus-room-timeline--two span:nth-child(2){background:var(--color-pine)}
.not-received-polish .bonus-room-timeline-labels{display:flex;margin:var(--space-1-5) 0 0;color:var(--color-muted);font-size:var(--text-xs);font-weight:700}
.not-received-polish .bonus-room-timeline-labels span{flex:1;text-align:center}
.not-received-polish .bonus-room-payout-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-6);margin:var(--space-3) 0 0}
.not-received-polish .bonus-room-payout-facts>div{display:block;padding:0}
.not-received-polish .bonus-room-fact-wide{grid-column:1/-1}
.not-received-polish .bonus-room-payout-facts dt{display:flex;align-items:center;gap:var(--space-1-5);margin-bottom:2px;font-size:var(--text-xs);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.not-received-polish .bonus-room-payout-facts dd{font-size:var(--text-body);line-height:var(--leading-loose)}
@media(max-width:620px){
.not-received-polish .bonus-room-payout-facts{grid-template-columns:1fr}
}

/* Eligibility polish, PR for Page 2, scoped to .eligibility-polish only. */
.eligibility-polish .bonus-room-tile-icon{flex:0 0 48px;width:48px;height:48px;border-radius:var(--radius-button)}
.eligibility-polish .bonus-room-tile-icon svg{width:24px;height:24px}
.eligibility-polish .bonus-room-status{display:inline-flex;align-items:center;padding:4px var(--space-2-5);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas)}
.eligibility-polish .bonus-room-tile-link{display:inline-flex;align-items:center;gap:4px}
.eligibility-polish .bonus-room-tile-link svg{width:16px;height:16px}
.eligibility-polish .bonus-room-providers{border:0}
.eligibility-polish .bonus-room-provider{padding:var(--space-4);margin-bottom:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-frost)}
.eligibility-polish .bonus-room-provider-tag{display:inline-flex;align-items:center;padding:4px var(--space-2-5);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas);color:var(--color-detail);font-weight:700}
.eligibility-polish .bonus-room-provider-detail-link{display:inline-flex;align-items:center;gap:4px}
.eligibility-polish .bonus-room-provider-detail-link svg{width:16px;height:16px}
.eligibility-polish .bonus-room-checklist{list-style:none;padding-left:0;counter-reset:elig-step}
.eligibility-polish .bonus-room-checklist li{counter-increment:elig-step;position:relative;padding:var(--space-3-5) var(--space-3-5) var(--space-3-5) 56px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.eligibility-polish .bonus-room-checklist li+li{margin-top:var(--space-3)}
.eligibility-polish .bonus-room-checklist li::before{content:counter(elig-step);position:absolute;left:12px;top:14px;width:32px;height:32px;border-radius:50%;background:var(--color-pine);color:var(--color-canvas);display:grid;place-items:center;font-weight:700;font-size:var(--text-card)}
@media (max-width:620px){
.eligibility-polish .comparison-guide-meta{flex-direction:column;align-items:stretch}
.eligibility-polish .comparison-guide-meta-item{width:100%}
}

/* TFSA RRSP polish, PR for Page 3, scoped to .contribution-room-polish only. */
.contribution-room-polish .bonus-room-tile-icon{flex:0 0 48px;width:48px;height:48px;border-radius:var(--radius-button)}
.contribution-room-polish .bonus-room-tile-icon svg{width:24px;height:24px}
.contribution-room-polish .bonus-room-status{display:inline-flex;align-items:center;padding:4px var(--space-2-5);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas)}
.contribution-room-polish .bonus-room-tile-link{display:inline-flex;align-items:center;gap:4px}
.contribution-room-polish .bonus-room-tile-link svg{width:16px;height:16px}
.contribution-room-polish .bonus-room-step-number{flex:0 0 32px;width:32px;height:32px;background:var(--color-pine);color:var(--color-canvas);font-size:var(--text-card)}
.contribution-room-polish .bonus-room-providers{border:0}
.contribution-room-polish .bonus-room-provider{padding:var(--space-4);margin-bottom:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-frost)}
.contribution-room-polish .bonus-room-provider-detail-link{display:inline-flex;align-items:center;gap:4px}
.contribution-room-polish .bonus-room-provider-detail-link svg{width:16px;height:16px}
.contribution-room-polish .bonus-room-checklist{list-style:none;padding-left:0;counter-reset:tfsa-step}
.contribution-room-polish .bonus-room-checklist li{counter-increment:tfsa-step;position:relative;padding:var(--space-3-5) var(--space-3-5) var(--space-3-5) 56px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-canvas)}
.contribution-room-polish .bonus-room-checklist li+li{margin-top:var(--space-3)}
.contribution-room-polish .bonus-room-checklist li::before{content:counter(tfsa-step);position:absolute;left:12px;top:14px;width:32px;height:32px;border-radius:50%;background:var(--color-pine);color:var(--color-canvas);display:grid;place-items:center;font-weight:700;font-size:var(--text-card)}
@media (max-width:620px){
.contribution-room-polish .comparison-guide-meta{flex-direction:column;align-items:stretch}
.contribution-room-polish .comparison-guide-meta-item{width:100%}
}
@media (max-width:760px){
.contribution-room-polish .bonus-room-destinations{grid-template-columns:1fr}
.contribution-room-polish .bonus-room-rules{grid-template-columns:1fr}
}

.contribution-room-polish #step-2{margin-top:var(--space-6)}
.contribution-room-polish .bonus-room-provider-heading{justify-content:flex-start;align-items:center}
.contribution-room-polish .bonus-room-provider-heading h3{flex:1 1 auto}
.contribution-room-polish .bonus-room-provider-logo-shrink .brand-lockup-logo{height:22px !important;width:auto !important}
.contribution-room-polish .bmo-investorline-logo{height:34px;width:auto}
.contribution-room-polish .bonus-room-bank-intro-row{display:flex;gap:var(--space-2);align-items:center}
.contribution-room-polish .bonus-room-bank-intro-icon{flex:0 0 20px;color:var(--color-pine);display:grid;place-items:center}
.contribution-room-polish .bonus-room-bank-intro-icon svg{width:20px;height:20px}
.contribution-room-polish .bonus-room-bank-intro-why{color:var(--color-muted)}
.contribution-room-polish section[aria-labelledby="bank-transfer-cashback"] .bonus-room-inline-note{display:flex;gap:var(--space-3);align-items:flex-start;margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-frost);padding:var(--space-3)}
.contribution-room-polish section[aria-labelledby="bank-transfer-cashback"] .bonus-room-inline-note p{margin:0;flex:1 1 auto}
.contribution-room-polish .bonus-room-inline-note-icon{flex:0 0 40px;width:40px;height:40px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-canvas);display:grid;place-items:center}
.contribution-room-polish .bonus-room-inline-note-icon svg{width:24px;height:24px}
.contribution-room-polish section[aria-labelledby="bank-transfer-cashback"] .bonus-room-inline-note-warning{background:var(--color-caution-wash);border-color:var(--color-caution-border)}
.contribution-room-polish section[aria-labelledby="bank-transfer-cashback"] .bonus-room-inline-note-warning .bonus-room-inline-note-icon{border-color:var(--color-caution-border);color:var(--color-caution-deep)}
.contribution-room-polish section[aria-labelledby="bank-transfer-cashback"] .bonus-room-inline-note-pine{background:var(--color-pine-wash);border-color:var(--color-pine-border)}
.contribution-room-polish section[aria-labelledby="bank-transfer-cashback"] .bonus-room-inline-note-pine .bonus-room-inline-note-icon{border-color:var(--color-pine-border);color:var(--color-pine)}
.contribution-room-polish .bonus-room-provider-tag{display:inline-flex;align-items:center;padding:4px var(--space-2-5);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas);color:var(--color-detail);font-weight:700}
.contribution-room-polish .bonus-room-provider-tag-warning{background:var(--color-caution-wash);border-color:var(--color-caution-border);color:var(--color-caution-deep)}
.contribution-room-polish .bonus-room-provider-fact{margin:var(--space-2) 0 0;line-height:var(--leading-loose)}

/* Brokerage UX polish, Nov 3 2026: table controls, jump nav, catch expander, back link, mobile badge trim. */
.brokerage-table-controls{display:grid;gap:var(--space-2-5);margin:0;padding:var(--space-3-5);border:1px solid var(--color-border);border-radius:var(--radius-md);border-bottom-left-radius:0;border-bottom-right-radius:0;background:var(--color-canvas)}
.brokerage-table-control-group{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1-5)}
.brokerage-table-control-label{margin-right:4px;color:var(--color-detail);font-size:var(--text-sm);font-weight:800}
.brokerage-table-button[aria-pressed="true"]{background:var(--color-pine);border-color:var(--color-pine);color:var(--color-inverse)}
.brokerage-table-count{margin:0;color:var(--color-detail);font-size:var(--text-card)}
.brokerage-provider-jump{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1-5);margin:0 0 var(--space-5)}
.brokerage-provider-jump-label{margin-right:4px;color:var(--color-detail);font-size:var(--text-card);font-weight:800}
.brokerage-provider-jump a{display:inline-flex;align-items:center;min-height:32px;padding:4px var(--space-2-5);border:1px solid var(--color-border);border-radius:999px;background:var(--color-canvas);color:var(--color-pine);font-size:var(--text-card);font-weight:700;text-decoration:none}
.brokerage-provider-back{margin:var(--space-4) 0 0}
.brokerage-provider-back a{color:var(--color-pine);font-size:var(--text-card);font-weight:800;text-decoration:none}
@media(max-width:620px){.brokerage-promotions-table .brokerage-matrix-highest-badge{display:none}}

@media(max-width:760px){.brokerage-table-controls{padding:var(--space-3)}}

.brokerage-promotions-table tbody td{padding-inline:var(--space-3)}

/* Brokerage mobile selects, Nov 3 2026: native selects replace button groups on mobile, no horizontal scroll. */
.brokerage-table-select-row{display:none}
@media(max-width:760px){
.brokerage-table-select-row{display:grid;gap:var(--space-2-5)}
.brokerage-table-filter-group{display:none}
.brokerage-table-select-label{color:var(--color-detail);font-size:var(--text-sm);font-weight:800}
.brokerage-table-select,.brokerage-provider-jump-select{width:100%;min-height:var(--touch-target-min);padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-canvas);color:var(--color-ink);font-size:var(--text-card)}
}
/* Brokerage card rows keep label and value side by side at phone width, instead of stacking. */
@media(max-width:480px){.brokerage-promotions-table td{grid-template-columns:minmax(96px,.6fr) minmax(0,1.4fr);gap:var(--space-3)}}
/* Brokerage last row keeps its internal divider lines, only the card bottom stays clean. */
.brokerage-promotions-table tbody tr:last-child td{border-bottom:1px solid var(--color-border)}
.brokerage-promotions-table tbody tr:last-child td:last-child{border-bottom:0}

/* Brokerage UX gaps batch, Nov 3 2026: sticky desktop table header, controls note, disabled control dimming. */
.brokerage-table-controls-note{margin:0 0 var(--space-2-5);color:var(--color-muted);font-size:var(--text-card);line-height:var(--leading-loose)}
.brokerage-table-sort-note{margin:var(--space-3) 0 0;color:var(--color-detail);font-size:var(--text-card);line-height:var(--leading-loose)}
.brokerage-table-sort-button:disabled{opacity:.7;cursor:default}
.brokerage-table-button:disabled{opacity:.7;cursor:default}

/* M2 fix, Nov 3 2026: brokerage shell uses overflow clip, not hidden, so the sticky table header can travel. Clip still respects the rounded corners. Scoped to this section only, other guides keep hidden. */
.brokerage-promotions-section .rent-guide-table-shell{overflow:clip;border-top:0;border-top-left-radius:0;border-top-right-radius:0}

/* Three mobile fixes, Nov 3 2026: jump select, compact dual CTAs, collapsible table. */
.brokerage-provider-jump-select-row{display:none}

.brokerage-table-toggle{display:none}
@media(max-width:760px){
.brokerage-provider-jump{display:none}
.brokerage-provider-jump-select-row{display:grid;gap:var(--space-2);margin:0 0 var(--space-5)}
.brokerage-provider-jump-select-label{color:var(--color-detail);font-size:var(--text-card);font-weight:800}
.brokerage-table-toggle{display:inline-flex;margin:0 0 var(--space-6)}
.brokerage-table-collapsed .brokerage-table-controls,.brokerage-table-collapsed [data-brokerage-table-wrap],.brokerage-table-collapsed [data-brokerage-sort-note]{display:none}
.brokerage-provider-header-links{flex-direction:row;flex-wrap:wrap}
.brokerage-promotions-table.rent-guide-table tbody tr{display:grid;grid-template-columns:repeat(3,1fr)}
.brokerage-promotions-table.rent-guide-table tbody th{grid-column:1/-1}
.brokerage-promotions-table.rent-guide-table td[data-label="Reward"]{grid-column:1/-1}
.brokerage-promotions-table.rent-guide-table td[data-label="Minimum"],.brokerage-promotions-table.rent-guide-table td[data-label="Hold"],.brokerage-promotions-table.rent-guide-table td[data-label="Action By"]{grid-template-columns:1fr;gap:2px}
.brokerage-provider-header-links a{flex:0 1 auto;min-width:0;justify-content:center;padding:var(--space-2-5) var(--space-2);font-size:var(--text-sm);white-space:normal;text-align:center}
.brokerage-provider-header-links a:only-child{flex:0 1 auto}
.brokerage-provider-header-links a span{width:16px;height:16px;flex:0 0 16px}
.brokerage-promotions-table tbody td{padding:var(--space-2-5) var(--space-3)}
}

/* Real value formula as a vertical equation on mobile, Nov 3 2026 ruthless alignment: one shared column, operator gutter, icon, label, no scatter. */
@media(max-width:760px){
.brokerage-real-value-formula{grid-template-columns:1fr}
.brokerage-real-value-term{display:flex;align-items:center;gap:var(--space-3);min-height:56px;padding:var(--space-3-5) var(--space-4) var(--space-3-5) var(--space-12);text-align:left}
.brokerage-real-value-term+.brokerage-real-value-term{border-left:0;border-top:1px solid var(--color-aqua-border)}
.brokerage-real-value-term:not(:first-child) strong,.brokerage-real-value-term:not(:first-child)>span:last-child{padding-left:0}
.brokerage-real-value-term-icon{flex:0 0 24px;width:24px;height:24px;margin:0}
.brokerage-real-value-term strong{font-size:var(--text-body);font-weight:700;line-height:var(--leading-normal)}
/* Result keeps 850: the term rule above sets 700, and the result element carries both classes. */
.brokerage-real-value-result strong{font-weight:850}
.brokerage-real-value-operator{top:50%;left:14px;width:20px;text-align:center;transform:translateY(-50%)}
.brokerage-real-value-result .brokerage-real-value-operator{color:var(--color-pine)}
}

/* Rippling-inspired button and card standards, brokerage page only, Nov 3 2026: 44px primary actions, 12px button radius, 16px cards, CRC palette unchanged. */
.brokerage-provider-official-link,.brokerage-provider-referral-link{min-height:var(--touch-target-min);border-radius:var(--radius-button)}




/* Brokerage catch strip, Nov 4 2026: each promotion row is followed by a full-width pine-wash strip carrying its Key Catch bullets and View Details link. */
@media(min-width:761px){.brokerage-promotions-table tbody tr[data-brokerage-shortlist-row] th,.brokerage-promotions-table tbody tr[data-brokerage-shortlist-row] td{border-bottom:0}}
.brokerage-matrix-catch-strip-row td{background:var(--color-pine-wash)}
@media(max-width:760px){
.brokerage-matrix-catch-strip-row td{display:block;grid-column:1/-1}
.brokerage-matrix-catch-strip-row td::before{display:none}
}
@media(max-width:760px){.brokerage-promotions-table tbody tr[data-brokerage-shortlist-row]{margin-bottom:0;border-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}}
@media(max-width:620px){
.brokerage-promotions-table tbody tr.brokerage-matrix-catch-strip-row{margin-bottom:var(--space-2-5);border:1px solid var(--color-border);border-top:0;border-radius:0 0 var(--radius-md) var(--radius-md);background:var(--color-pine-wash);overflow:hidden}
.brokerage-promotions-table tbody tr.brokerage-matrix-catch-strip-row:last-child{margin-bottom:0}
}

@media(min-width:621px) and (max-width:760px){
.brokerage-promotions-table tbody tr.brokerage-matrix-catch-strip-row{margin-bottom:var(--space-3);border:1px solid var(--color-border);border-top:0;border-radius:0 0 var(--radius-md) var(--radius-md);background:var(--color-pine-wash);overflow:hidden}
}

/* Brokerage Alt A, Nov 4 2026: one sticky column-aligned header with sort buttons inside it, replacing the separate pinned sort bar. */
@media(min-width:761px){
.brokerage-promotions-table thead th{position:sticky;top:0;z-index:3}
}

/* Brokerage sticky cover fix, Nov 4 2026: the site header is sticky at 69px tall up to 1000px, so the table header pins below it in that band instead of underneath it. Without JS the header is static, so the thead pins flush at top:0 from the base rule. */
@media(min-width:761px) and (max-width:1000px){
html.nav-enhanced .brokerage-promotions-table thead th{top:69px}
}
.brokerage-matrix-catch-title{margin:0 0 var(--space-1-5);color:var(--color-pine);font-size:var(--text-sm);font-weight:800}

/* Brokerage Alt A review fixes, Nov 4 2026: hide thead sort buttons at phone widths so no invisible focusable controls remain, and rebalance narrow-desktop header widths so Minimum fits. */
@media(max-width:760px){
.brokerage-promotions-table thead .brokerage-table-sort-button{display:none}
}
@media(min-width:761px) and (max-width:940px){
.brokerage-promotions-table thead th{padding-inline:var(--space-2)}
.brokerage-promotions-table thead th:nth-child(2){width:28%}
.brokerage-promotions-table thead th:nth-child(3){width:14%}
}

/* Best Referral Bonuses decision board, Nov 6 2026. Site tokens only, no new color, no new font, no shadow. */
/* A: frost field behind the board, so white cards read against frost, not white on white. */
/* B: Best Overall band goes pine-wash, border goes pine-border-strong, so #1 has a distinct header. */
/* C: secondary rewards go pine, not ink, so $25 and $30 read as rewards, not plain numbers. */
.best-bonuses-editorial .best-bonuses-decision-board{background:var(--color-frost);border-radius:var(--radius-card);padding:var(--space-4)}
.best-bonuses-editorial .ranked-offer-editorial-band{background:var(--color-ink);border-bottom:0}
.best-bonuses-editorial .ranked-offer-card-secondary .ranked-offer-reward strong{color:var(--color-pine)}
.best-bonuses-editorial .best-bonuses-meta-link{font-weight:400}
.best-bonuses-editorial .best-bonuses-meta-link .best-bonuses-meta-icon{color:var(--color-aqua)}
@media(max-width:700px){
.best-bonuses-editorial .best-bonuses-decision-board{padding:var(--space-3)}
}

/* Polished B, Nov 13 2026: meta lives in the rail on desktop (stacked facts under a divider) and flows unboxed below the summary under 1024px. The rail rules need no media query: the note is display:none below 1024px. */
.best-bonuses-hero-note .best-bonuses-meta--rail{grid-column:1/-1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3-5);border-top:1px solid var(--color-pine-border);font-size:var(--text-card)}
.best-bonuses-hero-note .best-bonuses-meta--rail .best-bonuses-meta-icon{color:var(--color-pine)}
@media(min-width:1024px){.best-bonuses-meta--inline{display:none}}

/* 390px mobile top. Site tokens only, no new color, no new font, no new icon. */
/* G: tighten mobile proof, so the primary CTA lifts about 30px. Font and padding only. */
/* H: mobile only, primary CTA moves above the proof. Grid areas change pitch, proof, actions to pitch, actions, proof. */
/*    DOM order is unchanged, so keyboard and screen reader order still goes proof before CTA. That is the tradeoff. */
/*    Measured before H: primary CTA top 1255, 411px below the 844px fold. After H: CTA top 811, inside the fold. */
@media(max-width:700px){
.best-bonuses-editorial .ranked-offer-primary-content{grid-template-areas:"pitch" "actions" "proof"}
.best-bonuses-editorial .ranked-offer-card-primary .ranked-offer-brand{margin-bottom:var(--space-2-5)}
.best-bonuses-editorial .ranked-offer-facts>div{padding:7px 0}
.best-bonuses-editorial .ranked-offer-facts dd{font-size:var(--text-body);line-height:var(--leading-relaxed)}
}

/* Color verdict, Nov 6 2026. The first pass over-decorated: it turned routine Checked metadata into */
/* aqua-wash pills and made the Best Overall label a solid pine pill. DESIGN.md line 273 says do not turn */
/* ordinary metadata into decorative pills, and Pine Soft is reserved for current and positive status. */
/* Line 110 says full Pine plus Inverse is a narrow Deal Page offer-header exception, do not generalize */
/* it to badges. Line 60 says Pine is scarce and Aqua is not a secondary brand accent. Aqua stays as */
/* icon color only. Best Overall label is Pine Soft bg with Pine text, the DESIGN status treatment. */
/* Checked returns to muted text with an aqua icon, no pill, no wash, no border. Board pills go from 6 to 3. */
/* Non-CTA background colors in the board go from 4 (frost, pine-wash, pine, aqua-wash) to 3 (frost, pine-wash, pine-soft). */
.best-bonuses-editorial .ranked-offer-editorial-band .ranked-offer-editorial-label{background:var(--color-canvas);color:var(--color-pine);min-height:26px;padding:4px 9px;border-radius:var(--radius-sm)}
