/* Bounded homepage / buying-guide composition. Shared brand tokens stay intact. */
body { margin:0; }
.af { --fs-body:19px; --fs-evidence:18px; --fs-small:16px; --fs-eyebrow:14px; --lh-body:1.5; }
.af .wrap { max-width:1120px; }
a { color:inherit; text-underline-offset:5px; }
a:focus-visible { outline:3px solid var(--bronze-deep); outline-offset:5px; }
.skip { position:absolute; top:-80px; padding:12px; background:var(--paper); z-index:2; }
.skip:focus { top:0; }
.site-header { position:static; border-bottom:var(--hairline); }
.header-inner { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; min-height:64px; }
.brand { min-height:44px; display:flex; align-items:center; gap:9px; text-decoration:none; font-family:var(--font-display); font-weight:700; font-size:21px; line-height:1; }
.logo-mark { display:grid; place-items:center; background:var(--ink); border-radius:var(--radius-sm); width:30px; height:30px; flex-shrink:0; }
.brand span span { color:var(--bronze-deep); }
.header-inner nav a { display:inline-flex; align-items:center; min-height:44px; font-size:16px; }
.af section { padding-block:36px; }
.af h1 { margin:0; font-weight:500; max-width:20ch; }
.af h1 em { font-style:normal; color:var(--bronze-deep); }
.af h2 { margin:0 0 16px; font-weight:500; max-width:25ch; }
.af h3 { margin:0 0 6px; font-size:28px; font-weight:600; line-height:1.15; }
.af p { margin:0 0 16px; }
.af .eyebrow { margin-bottom:12px; letter-spacing:.09em; }
.af .hero { padding-block:36px 32px; }
.af .hero .lead { font-size:21px; line-height:1.45; color:var(--ink-mid); max-width:34em; margin:22px 0; }
.actions { display:flex; flex-wrap:wrap; align-items:center; gap:4px 24px; }
.af .btn { min-height:54px; padding:12px 20px; }
.text-link { display:inline-flex; align-items:center; gap:8px; min-height:44px; font-weight:500; }
.af .meta, .af .caption, .af .terms, .af figcaption { font-size:18px; color:var(--ink-mid); line-height:1.5; }
.af .hero .meta { margin:12px 0 0; }
.proof { background:var(--surface-alt); }
.proof-layout { display:grid; gap:18px; }
.af .question { font-size:21px; line-height:1.45; color:var(--ink-mid); margin:0; }
.review-preview { margin:0; background:var(--paper); border:var(--hairline); border-radius:var(--radius); box-shadow:var(--shadow); overflow:hidden; }
.af .review-preview figcaption { padding:14px 20px; border-bottom:var(--hairline); }
.priority-plan { list-style:none; margin:0; padding:0 20px; counter-reset:priority; }
.priority-plan li { padding:18px 0; counter-increment:priority; }
.priority-plan li + li { border-top:var(--hairline); }
.af .priority-plan h3 { font-size:28px; margin:0 0 8px; }
.priority-plan h3::before { content:'0' counter(priority); display:inline-block; margin-right:12px; font-family:var(--font-display); font-size:16px; color:var(--bronze-deep); vertical-align:middle; }
.af .priority-plan p { margin:0; }
.af .review-preview .caption { padding:18px 20px; margin:0; }
.af .section-intro { margin:0 0 18px; color:var(--ink-mid); }
.choice { display:grid; gap:6px; padding:18px 0 12px; border-top:var(--hairline); }
.af .choice .review-name { color:var(--bronze-deep); font-size:18px; font-weight:600; margin:0; }
.af .choice p { margin:0; }
.choice .text-link { margin-top:4px; font-size:18px; }
.af .sample-note { padding-top:16px; border-top:var(--hairline); margin:0; }
.purchase { background:var(--surface-alt); }
.purchase-grid { display:grid; gap:24px; }
.price-line { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-bottom:20px; }
.price { font-family:var(--font-display); font-size:64px; line-height:1; }
.af .price-line p { margin:0; }
.includes { list-style:none; padding:0; margin:0; }
.includes li { position:relative; padding:10px 0 10px 24px; }
.includes li::before { content:'✓'; position:absolute; left:0; color:var(--bronze-deep); font-weight:600; }
.offer { border-top:var(--hairline); padding-top:24px; }
.offer .btn { width:100%; }
.af .start-note { margin:18px 0 12px; }
.af .terms { margin:16px 0 0; }
.boundary { border-top:var(--hairline); padding-top:22px; }
.af .boundary p { margin-bottom:8px; }
footer { padding-block:24px; }
.af footer p { font-size:16px; margin:0; }
footer nav { display:flex; flex-wrap:wrap; gap:4px 24px; margin-bottom:12px; }
footer nav a { display:inline-flex; min-height:44px; align-items:center; }
.af .support { max-width:780px; }
.af .support section { padding-block:24px; border-bottom:var(--hairline); }
.af .support > h1 { max-width:none; margin:40px 0 24px; }
.guide-samples { padding-left:22px; margin:0; }
.guide-samples a { display:inline-flex; align-items:center; min-height:44px; }
@media(min-width:700px) {
  .header-inner { min-height:72px; }
  .af section { padding-block:64px; }
  .af .hero { padding-block:64px 48px; }
  .proof-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:48px; align-items:center; }
  .choice { grid-template-columns:1fr 1.2fr; gap:32px; padding-block:22px; }
  .purchase-grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; }
  .offer { padding:28px; border:var(--hairline); background:var(--paper); border-radius:var(--radius); }
  .boundary { grid-column:1 / -1; }
}
@media(max-width:420px) { .brand > span:last-child > span { display:block; } }
@media(max-width:360px) { .brand { font-size:18px; gap:7px; } }
