/* Homepage preview: a quieter paper, blue, and green palette. */
:root { --ink: #242424; --muted: #655f55; --line: #d9d2c7; --blue: #07629b; }
html { scroll-padding-top: 110px; }
.site-header { background: #fff; }
.brand img, .button { box-shadow: none; }
.button { border-radius: 6px; font-size: 14px; min-height: 52px; font-weight: 750; }
.button:hover { background: var(--blue); border-color: var(--blue); color: white; }
a:focus-visible, summary:focus-visible { outline: 3px solid var(--blue); outline-offset: 5px; }
.hero { min-height: auto; background: var(--surface); padding-block: 76px 64px; grid-template-columns: minmax(0,1.15fr) minmax(0,1fr); }
h1 { font-size: clamp(42px,4.75vw,68px); line-height: 1.06; letter-spacing: -.045em; font-weight: 760; }
.eyebrow { color: var(--blue); font-size: 11px; letter-spacing: .12em; font-weight: 750; }
.hero-lede { font-size: 17px; line-height: 1.7; color: var(--muted); max-width: 580px; }
.hero-actions { gap: 14px; margin-top: 28px; }
.hero-note { font-size: 12px; color: var(--muted); margin: 16px 0 0; max-width: 420px; }
.hero-stats { margin-top: 28px; gap: 16px; }
.hero-stats div { border: 0; border-top: 1px solid var(--line); border-radius: 0; padding: 16px 0 0; background: none; min-height: 0; }
.hero-stats dt { font-size: 13px; font-weight: 700; }
.hero-stats dd { font-size: 12px; }
.browser-frame { background: white; color: var(--ink); border-color: var(--line); border-radius: 4px; box-shadow: 0 18px 40px #172c3910; }
.browser-top { background: #eaf1f4; border-bottom: 1px solid #d3e0e5; }
.browser-top span { background: #a9bac3; }
.browser-top strong { color: #355a70; font-size: 10px; }
.report-preview { background: white; }
.report-header p { color: var(--muted); }
.report-header h2 { font-family: Georgia,serif; font-weight: 400; }
.total-pill { background: #f4f1e8; color: var(--ink); border-color: var(--line); }
.issue-card { background: #faf9f5; border-color: var(--line); }
.issue-card.high { border-color: #c8b3ad; background: #fcf8f5; }
.issue-top, .issue-card strong { color: var(--ink); }
.issue-top b { color: #8d4538; }
.issue-card p { color: var(--muted); }
.provider-card { background: #eaf1f4; border-color: #d3e0e5; color: var(--ink); }
.provider-card p { color: #4d6471; }
.provider-row { background: #c4d5de; }
.logos-band { background: var(--surface); gap: 0; }
.logos-band span { background: transparent; min-height: 64px; font-size: 13px; font-weight: 650; }
.section { padding-block: 88px; }
.section h2, .cta-section h2, .provider-copy h2 { font-size: clamp(34px,3.3vw,48px); line-height: 1.1; letter-spacing: -.045em; font-weight: 740; }
.steps-grid { gap: 28px; }
.steps-grid article { background: transparent; border: 0; border-top: 1px solid var(--line); border-radius: 0; box-shadow: none; padding: 22px 0 0; min-height: 0; }
.step-number { color: var(--blue); font-size: 13px; margin-bottom: 22px; }
.steps-grid h3 { font-size: 21px; letter-spacing: -.025em; line-height: 1.2; }
.steps-grid p { font-size: 15px; line-height: 1.7; }
.split { background: #252a29; }
.split .eyebrow { color: #b5c8bf; }
.report-sheet { box-shadow: none; border-radius: 4px; }
.provider-section { background: var(--surface); }
.provider-section::after { display: none; }
.provider-copy h2 { margin-bottom: 24px; }
.provider-copy p { font-size: 17px; line-height: 1.7; }
.provider-copy .eyebrow { font-size: 11px; }
.provider-copy .provider-note { font-size: 12px; margin-top: 24px; max-width: 430px; }
.provider-benefits { padding: 12px 28px; background: #eaf1f4; border: 1px solid #d3e0e5; border-radius: 8px; }
.provider-benefits article { display: flex; gap: 20px; padding: 22px 0; border-bottom: 1px solid #cbdbe2; }
.provider-benefits article:last-child { border-bottom: 0; }
.provider-benefits article > span { color: var(--blue); font-size: 12px; font-weight: 700; padding-top: 4px; }
.provider-benefits h3 { font-size: 19px; margin: 0 0 8px; letter-spacing: -.025em; }
.provider-benefits p { font-size: 14px; line-height: 1.65; margin: 0; color: var(--muted); }
.plans-section { background: #efebe3; }
.plan-card { box-shadow: none; border-radius: 8px; padding: 30px 26px; }
.plan-card.featured { border: 1px solid #8daebb; border-top: 4px solid var(--blue); background: #e9f0f3; padding-top: 27px; }
.plan-badge { background: var(--blue); font-size: 9px; letter-spacing: .04em; right: 18px; }
.plan-price { flex-wrap: wrap; }
.plan-price strong { font-size: 40px; letter-spacing: -.045em; }
.plan-audience, .plan-volume { font-size: 14px; }
.faq-grid { gap: 0 36px; }
.faq details { background: transparent; border: 0; border-top: 1px solid var(--line); border-radius: 0; box-shadow: none; padding: 22px 0; }
.faq summary { font-size: 16px; font-weight: 650; min-height: 44px; }
.faq p { font-size: 14px; line-height: 1.75; }
.cta-section { background: #e8eee2; border-block: 1px solid #cdd9c0; color: var(--ink); padding-block: 74px; }
.cta-section::before, .cta-section::after { display: none; }
.cta-section .eyebrow { color: #3d614a; text-shadow: none; }
.cta-section h2 { text-shadow: none; }
.cta-section .button { background: var(--ink); border-color: var(--ink); color: white; box-shadow: none; }
.cta-section .button:hover { background: var(--blue); border-color: var(--blue); }
@media(max-width:1040px) { .hero { grid-template-columns: 1fr; padding-block: 52px; } .hero-visual { max-width: 620px; } }
@media(max-width:760px) {
  .site-header { padding-block: 14px; gap: 8px; }
  .site-header .nav-links { display: none; }
  .site-header .nav-actions > a { min-height: 44px; white-space: nowrap; }

  html { scroll-padding-top: 20px; }
  .hero { padding-block: 40px 44px; gap: 32px; }
  h1 { font-size: clamp(38px,8.7vw,52px); text-wrap: balance; }
  .hero-lede { font-size: 16px; }
  .hero-stats { gap: 0; }
  .hero-stats div { padding-block: 12px; }
  .hero-stats dd { margin-top: 3px; }
  .logos-band { grid-template-columns: 1fr 1fr; }
  .logos-band span { min-height: 48px; padding: 12px; }
  .section { padding-block: 60px; }
  .provider-benefits { padding-inline: 22px; }
  .provider-layout { gap: 24px; }
  .cta-section { padding-block: 56px; }
  .plan-card { min-height: 0; }
}
