:root {
  color-scheme: light;
  --paper: #fbf8ef;
  --ink: #252c22;
  --leaf: #36562b;
  --meadow: #d5e4b7;
  --soft-meadow: #e9efda;
  --rule: #b9c1a9;
  --butter: #f2ebbf;
}

* { box-sizing: border-box; }
html { scroll-behavior: auto; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Arial, Helvetica, sans-serif; font-size: 18px; line-height: 1.65; }
main, .guide-end { width: min(1248px, calc(100% - 112px)); margin-inline: auto; }
main:focus { outline: none; }
p { margin: 0 0 1.15em; }
h1, h2, h3 { font-family: Arial, Helvetica, sans-serif; font-weight: 600; }
h1 { font-size: 88px; line-height: 1.02; letter-spacing: -4.4px; margin: 24px 0 30px; max-width: 1050px; text-wrap: balance; }
h1 em { font-style: normal; color: var(--leaf); }
h2 { font-size: 36px; line-height: 1.18; letter-spacing: -1px; margin: 0 0 28px; text-wrap: balance; }
h3 { font-size: 23px; line-height: 1.35; margin: 0 0 14px; }
a { color: var(--leaf); text-decoration-thickness: 1px; text-underline-offset: 5px; overflow-wrap: anywhere; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 3px solid #526d26; outline-offset: 5px; }
p a, dd a, .text-step, .guide-end > a { display: inline-flex; align-items: center; min-height: 44px; font-size: inherit; }
button, input { font: inherit; }
button { cursor: pointer; }
button, .chapter-button { min-height: 54px; padding: 13px 24px; border-radius: 40px; border: 0; background: var(--leaf); color: #fffdf5; font-size: 18px; font-weight: 600; line-height: 1.5; text-decoration: none; }
button:hover, .chapter-button:hover { background: #29421f; }
.chapter-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 26px; max-width: 100%; }
.chapter-button span { font-size: 25px; line-height: 1; }
.text-step { font-weight: 600; margin-top: 8px; }
.skip-reading { position: absolute; z-index: 5; top: 12px; left: 12px; transform: translateY(-160%); min-height: 48px; padding: 10px 22px; background: var(--ink); color: white; border-radius: 24px; }
.skip-reading:focus { transform: none; }
.guide-name { font-size: 18px; font-weight: 700; letter-spacing: -0.3px; margin-bottom: 40px; }
.chapter-kicker { color: var(--leaf); font-size: 18px; margin: 0 0 18px; }
.opening-chapter { padding: 46px 0 82px; display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 55px; align-items: center; }
.opening-words h1 { font-size: 76px; letter-spacing: -3.9px; margin-top: 20px; }
.opening-deck, .chapter-deck { font-size: 24px; line-height: 1.45; letter-spacing: -0.35px; max-width: 48ch; }
.opening-words > p:not(.guide-name):not(.chapter-kicker) { max-width: 47ch; }
.opening-words .chapter-button { margin-top: 14px; }
.garden-pause { margin: 80px 0 0; min-width: 0; }
.garden-pause img { display: block; width: 100%; height: 530px; object-fit: cover; border-radius: 230px 230px 80px 80px; background: var(--soft-meadow); color: var(--leaf); font-size: 16px; padding: 0; }
.garden-pause figcaption { font-size: 16px; margin: 18px 12px 0; text-align: center; }
.name-before-number { background: var(--meadow); padding: 55px 60px; border-radius: 46px; display: grid; grid-template-columns: 0.85fr 1.5fr; gap: 65px; }
.name-before-number h2 { font-size: 43px; margin: 0; }
.name-before-number p:last-child { margin-bottom: 0; }
.first-conversation { display: grid; grid-template-columns: 0.85fr 1.5fr; gap: 65px; padding: 100px 60px 60px; }
.conversation-lead p { max-width: 25ch; }
.reading-column { max-width: 67ch; }
.neighbor-note { margin: 35px 60px 90px; padding: 36px 0; border-top: 2px solid var(--rule); border-bottom: 2px solid var(--rule); display: grid; grid-template-columns: 0.85fr 1.5fr; gap: 65px; }
.question-line { font-size: 25px; line-height: 1.35; letter-spacing: -0.5px; font-weight: 600; max-width: 24ch; }
.neighbor-note p:last-child, .small-pause p:last-child, .urgent-help p:last-child { margin-bottom: 0; }
.chapter-picker { padding: 40px 60px 55px; background: var(--soft-meadow); border-radius: 44px; margin: 70px 0 65px; }
.chapter-picker h2 { margin-bottom: 32px; }
.chapter-picker ul { list-style: none; margin: 0; padding: 0; }
.chapter-picker li { margin: 0; border-top: 1px solid var(--rule); }
.chapter-picker li a { display: grid; grid-template-columns: minmax(170px, 1fr) minmax(0, 1.7fr) 30px; align-items: center; gap: 28px; min-height: 96px; padding: 20px 0; color: var(--ink); text-decoration: none; }
.chapter-picker li a:hover .chapter-name { text-decoration: underline; text-underline-offset: 6px; }
.chapter-name { font-size: 23px; font-weight: 600; letter-spacing: -0.4px; line-height: 1.3; }
.chapter-detail { font-size: 18px; }
.chapter-arrow { font-size: 28px; justify-self: end; color: var(--leaf); }
.guide-end { padding: 12px 60px 55px; display: grid; grid-template-columns: 1fr 2fr; gap: 0 60px; }
.guide-end .guide-name { grid-row: span 2; margin: 0; }
.guide-end p { font-size: 16px; max-width: 66ch; }
.guide-end > a { font-size: 16px; justify-self: start; }
.chapter-opening { padding: 46px 60px 40px; }
.chapter-opening h1 { margin-top: 22px; }
.chapter-opening .chapter-deck { margin-bottom: 0; max-width: 44ch; }
.bill-question { margin: 10px 60px 75px; border-radius: 0 40px 40px 40px; background: var(--meadow); padding: 32px 40px; max-width: 78ch; }
.bill-question .question-line { max-width: none; margin-bottom: 16px; }
.bill-question p:last-child { margin-bottom: 0; }
.price-pieces, .lab-conversation, .later-bill, .coverage-example, .cash-comparison, .answers-before-payment, .people-and-pharmacy, .claims-to-question, .question-after-care { margin: 0 60px 75px; }
.bill-lines { margin: 0; padding: 0; list-style: none; }
.bill-lines > li { display: grid; grid-template-columns: 0.8fr 1.7fr; gap: 60px; padding: 30px 0; border-top: 1px solid var(--rule); }
.bill-lines h3 { font-size: 24px; font-weight: 600; letter-spacing: -0.5px; margin: 0; }
.bill-lines p { margin: 0; max-width: 62ch; }
.lab-conversation { display: grid; grid-template-columns: 0.8fr 1.7fr; gap: 60px; }
.later-bill > p, .coverage-example > p, .cash-comparison > p { max-width: 68ch; }
.small-pause { border-radius: 30px; background: var(--butter); padding: 32px 38px; max-width: 70ch; margin: 35px 0; }
.small-pause .question-line { max-width: none; margin-bottom: 12px; }
.bill-chapter > .chapter-button, .coverage-chapter > .chapter-button, .care-check-chapter > .chapter-button { margin: 0 60px 20px; }
.coverage-conversation { margin: 10px 60px 85px; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 65px; align-items: start; }
.plain-questions { padding-left: 23px; margin: 28px 0 0; }
.plain-questions li { margin: 16px 0; padding-left: 7px; }
.words-on-the-call { border-radius: 80px 28px 28px 28px; padding: 45px 34px 30px; background: var(--meadow); }
.words-on-the-call h2 { font-size: 29px; }
.words-on-the-call dl { margin: 0; }
.words-on-the-call dt { font-weight: 700; }
.words-on-the-call dd { margin: 4px 0 23px; }
.call-words h3 { font-size: 18px; line-height: 1.65; font-weight: 700; margin: 0; }
.call-words p { margin: 4px 0 23px; }
.words-on-the-call > p { margin: 28px 0 0; }
.account-question { margin-bottom: 70px; }
.back-and-forth { margin: 0; max-width: 79ch; }
.back-and-forth > div { padding: 28px 0; border-top: 1px solid var(--rule); }
.back-and-forth dt { font-size: 25px; font-weight: 600; line-height: 1.35; margin: 0 0 15px; letter-spacing: -0.4px; }
.back-and-forth dd { margin: 0; max-width: 68ch; }
.back-and-forth dd p:last-child { margin-bottom: 0; }
.take-along-list { padding: 45px 52px; margin: 0 60px 65px; border-radius: 38px; background: var(--soft-meadow); }
.list-heading { display: flex; align-items: center; justify-content: space-between; gap: 35px; }
.list-heading h2 { margin-bottom: 22px; }
.list-heading .chapter-kicker { margin-bottom: 12px; }
.list-heading button { flex-shrink: 0; }
.print-questions { list-style: none; margin: 25px 0 35px; padding: 0; }
.print-questions li { border-top: 1px solid var(--rule); }
.print-questions label { display: flex; align-items: flex-start; gap: 20px; min-height: 62px; padding: 19px 0; cursor: pointer; }
.print-questions input { margin: 0; flex: 0 0 44px; width: 44px; height: 44px; accent-color: var(--leaf); cursor: pointer; }
.print-questions label span { max-width: 66ch; }
.last-paper-question { margin: 0; max-width: 65ch; }
.question-chapter > .small-pause { margin: 0 60px 70px; }
.check-conversation { display: grid; grid-template-columns: 0.8fr 1.7fr; gap: 60px; border-top: 1px solid var(--rule); padding-top: 32px; margin: 34px 0; }
.check-conversation > div { max-width: 67ch; }
.advert-phrases { margin: 0; }
.advert-phrases > div { padding: 32px 40px; border-radius: 28px; background: var(--soft-meadow); margin: 20px 0; }
.advert-phrases dt { font-size: 26px; font-weight: 600; letter-spacing: -0.6px; margin-bottom: 12px; }
.advert-phrases dd { max-width: 71ch; margin: 0; }
.advert-phrases dd p:last-child { margin-bottom: 0; }
.unknowns { margin-bottom: 65px; }
.urgent-help { background: var(--butter); border-radius: 38px; margin: 0 60px 75px; padding: 38px 40px; }
.urgent-help p { max-width: 72ch; }
.missing-chapter { min-height: 65vh; max-width: 850px; padding: 60px; }
.missing-chapter > p { max-width: 58ch; }
.missing-chapter .text-step { display: flex; width: fit-content; margin-top: 24px; }

@media (max-width: 1100px) {
  main, .guide-end { width: calc(100% - 72px); }
  h1 { font-size: 76px; letter-spacing: -3.5px; }
  .opening-chapter { gap: 32px; }
  .opening-words h1 { font-size: 62px; letter-spacing: -3px; }
  .garden-pause img { height: 430px; }
  .name-before-number, .first-conversation, .chapter-picker { padding-inline: 36px; gap: 36px; }
  .name-before-number h2 { font-size: 36px; }
  .neighbor-note { margin-inline: 36px; gap: 36px; }
  .chapter-opening { padding-inline: 36px; }
  .price-pieces, .lab-conversation, .later-bill, .coverage-example, .cash-comparison, .answers-before-payment, .people-and-pharmacy, .claims-to-question, .question-after-care, .bill-question, .coverage-conversation, .take-along-list, .urgent-help { margin-inline: 36px; }
  .bill-chapter > .chapter-button, .coverage-chapter > .chapter-button, .care-check-chapter > .chapter-button, .question-chapter > .small-pause { margin-inline: 36px; }
  .coverage-conversation, .check-conversation, .bill-lines > li, .lab-conversation { gap: 36px; }
  .coverage-conversation { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
  .list-heading { flex-wrap: wrap; gap: 0; margin-bottom: 25px; }
  .take-along-list { padding: 35px; }
  .guide-end { padding-inline: 36px; gap: 0 36px; }
}

@media (max-width: 720px) {
  body { font-size: 18px; line-height: 1.65; }
  main, .guide-end { width: calc(100% - 40px); }
  h1 { font-size: 52px; letter-spacing: -2.5px; line-height: 1.05; margin-bottom: 26px; }
  h2 { font-size: 30px; letter-spacing: -0.8px; margin-bottom: 22px; }
  .guide-name { margin-bottom: 28px; font-size: 16px; }
  .chapter-kicker { font-size: 16px; margin-bottom: 16px; }
  .opening-chapter { display: block; padding: 28px 0 42px; }
  .opening-words h1 { font-size: 48px; letter-spacing: -2.2px; margin-top: 20px; }
  .opening-deck, .chapter-deck { font-size: 22px; line-height: 1.45; }
  .opening-words .chapter-button { margin-top: 8px; }
  .garden-pause { margin: 38px 0 0; }
  .garden-pause img { height: 330px; border-radius: 180px 180px 60px 60px; }
  .garden-pause figcaption { margin-top: 13px; }
  .name-before-number { display: block; padding: 30px 25px; border-radius: 30px; }
  .name-before-number h2 { font-size: 34px; margin-bottom: 25px; }
  .first-conversation { display: block; padding: 52px 5px 0; }
  .conversation-lead { margin-bottom: 25px; }
  .conversation-lead p { max-width: none; }
  .neighbor-note { display: block; margin: 42px 5px 55px; padding: 28px 0; }
  .question-line { font-size: 24px; max-width: none; margin-bottom: 23px; }
  .chapter-picker { padding: 30px 25px 18px; border-radius: 30px; margin: 45px 0; }
  .chapter-picker li a { grid-template-columns: minmax(0, 1fr) 26px; gap: 8px 15px; padding: 23px 0; }
  .chapter-name { font-size: 22px; }
  .chapter-detail { grid-column: 1; font-size: 17px; }
  .chapter-arrow { grid-column: 2; grid-row: 1 / 3; }
  .guide-end { display: block; padding: 0 5px 35px; }
  .guide-end .guide-name { margin-bottom: 16px; }
  .guide-end p { font-size: 16px; }
  .chapter-opening { padding: 28px 5px 30px; }
  .chapter-opening h1 { margin-top: 22px; }
  .bill-question { padding: 27px 25px; margin: 5px 0 48px; border-radius: 0 30px 30px 30px; }
  .price-pieces, .lab-conversation, .later-bill, .coverage-example, .cash-comparison, .answers-before-payment, .people-and-pharmacy, .claims-to-question, .question-after-care { margin: 0 5px 48px; }
  .bill-lines > li { display: block; padding: 24px 0; }
  .bill-lines h3 { margin-bottom: 12px; font-size: 23px; }
  .lab-conversation { display: block; }
  .small-pause { padding: 26px 25px; border-radius: 25px; margin: 28px 0; }
  .bill-chapter > .chapter-button, .coverage-chapter > .chapter-button, .care-check-chapter > .chapter-button { margin: 0 0 15px; }
  .coverage-conversation { display: block; margin: 5px 5px 48px; }
  .words-on-the-call { margin-top: 36px; padding: 35px 25px 28px; border-radius: 55px 25px 25px 25px; }
  .words-on-the-call h2 { font-size: 28px; }
  .back-and-forth > div { padding: 25px 0; }
  .back-and-forth dt { font-size: 24px; }
  .take-along-list { padding: 28px 24px; margin: 0 0 45px; border-radius: 30px; }
  .take-along-list button { width: 100%; }
  .list-heading { display: block; margin-bottom: 23px; }
  .print-questions label { gap: 15px; }
  .question-chapter > .small-pause { margin: 0 0 45px; }
  .check-conversation { display: block; padding-top: 26px; margin: 28px 0; }
  .advert-phrases > div { padding: 27px 24px; margin: 18px -5px; border-radius: 26px; }
  .advert-phrases dt { font-size: 24px; }
  .unknowns { margin-bottom: 48px; }
  .urgent-help { margin: 0 0 45px; padding: 30px 24px; border-radius: 30px; }
  .missing-chapter { padding: 32px 5px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

@page { size: auto; margin: 16mm; }
@media print {
  body { background: white; color: #111; font-size: 12pt; line-height: 1.45; }
  main, .guide-end { width: 100%; }
  a { color: inherit; text-decoration: none; }
  p a, dd a { display: inline; min-height: 0; }
  .skip-reading, .guide-end, .chapter-picker, .chapter-button, .garden-pause, button { display: none; }
  .question-chapter .chapter-opening, .answers-before-payment, .question-chapter > .small-pause { display: none; }
  .take-along-list { background: white; padding: 0; margin: 0; border-radius: 0; }
  .list-heading { display: block; margin: 0; }
  .list-heading h2 { font-size: 25pt; margin-bottom: 12pt; }
  .list-heading .chapter-kicker { font-size: 12pt; }
  #print-note { display: none; }
  .print-questions { margin: 16pt 0; }
  .print-questions li { break-inside: avoid; border-color: #aaa; }
  .print-questions label { padding: 12pt 0 4pt; min-height: 0; gap: 12pt; }
  .print-questions input { margin-top: 2pt; width: 14pt; height: 14pt; flex-basis: 14pt; }
  .answer-space { height: 16pt; margin-left: 26pt; border-bottom: 1px dotted #aaa; margin-bottom: 8pt; }
  .last-paper-question { font-size: 11pt; }
  .name-before-number, .first-conversation, .neighbor-note, .lab-conversation, .check-conversation, .bill-lines > li, .coverage-conversation { display: block; margin-inline: 0; padding-inline: 0; }
  .chapter-opening, .price-pieces, .later-bill, .coverage-example, .cash-comparison, .people-and-pharmacy, .claims-to-question, .question-after-care, .urgent-help { margin-inline: 0; padding-inline: 0; }
  h1 { font-size: 34pt; letter-spacing: -1pt; }
  h2 { font-size: 22pt; break-after: avoid; }
}
