/*
  MCVA site foundation — shared by every rebuilt MCVA page.

  One stylesheet, no framework, no jQuery. Headings are Fraunces 600 (the headline
  face is undecided, so it stays as it was); body text is Public Sans 400/600, so it looks the same on every device. Every page
  loads exactly this Google Fonts link:

    https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600&family=Public+Sans:wght@400;600&display=swap

  Colour rules (Dr. Ghalchi's creative review, 2026-10-04): a neutral ground,
  ink type, slate structure, and red ONLY on the primary button and its hover.
  Stars, numbers, check marks, step circles, arrows and link hovers are ink or
  slate. The one tinted band colour is --slate-tint; there is no cream or sand.

  Page skeleton every rebuilt page follows (copy it from index.html):

    <a class="skip" href="#main">Skip to content</a>
    <header class="site-header">…logo, nav, Call + Book…</header>
    <main id="main">…sections (.band, .band--tint, .band--ink)…</main>
    <footer class="site-footer">…address, hours, links, legal…</footer>
    <div class="mobile-bar">…Book + Call, fixed to the bottom on phones…</div>
    <script src="/assets/site/mcva.js" defer></script>

  Inner pages (symptoms, same-day, location) open with .page-hero, then an
  .answer box (the short answer, with Book + Call), and close with the same
  #booknow band; their FAQ is visible content, mirrored in FAQPage data.

  Every Book link goes to https://doctor.ioapollo.com/book/mcva?src=website-<page>
  with target="_blank" rel="noopener" data-apollo-book, and keeps a tel: Call
  link beside it. apollo-lead.js adds the attribution at click time.
*/

:root {
  --ink: #1c2932;
  --ink-soft: #3c4a55;
  --muted: #56626c;
  --paper: #fafaf8;
  --card: #ffffff;
  --line: #dde3e8;
  --red: #ad4239;
  --red-deep: #8f342c;
  --slate: #4b677c;
  --slate-tint: #eef2f5;
  --focus: #1f6fb2;
  --radius: 14px;
  --wrap: 1160px;
  --serif: "Fraunces", Georgia, "Times New Roman", serif;
  --sans: "Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

*,
*::before,
*::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 1.0625rem/1.6 var(--sans);
}

img { max-width: 100%; height: auto; display: block; }

h1, h2, h3 {
  font-family: var(--serif);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.01em;
  margin: 0 0 0.6em;
  font-optical-sizing: auto;
}
h1 { font-size: clamp(2.25rem, 6vw, 4rem); }
h2 { font-size: clamp(1.75rem, 4.2vw, 2.6rem); }
h3 { font-size: 1.3rem; }
p { margin: 0 0 1em; }
strong, b { font-weight: 600; }

a { color: var(--slate); text-underline-offset: 0.18em; }
a:hover { color: var(--ink); }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 3px; border-radius: 4px; }

.wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 20px; }
.measure { max-width: 40rem; }

.skip {
  position: absolute; left: 12px; top: -60px; z-index: 50;
  background: var(--ink); color: #fff; padding: 10px 16px; border-radius: 8px;
}
.skip:focus { top: 12px; color: #fff; }

.eyebrow {
  display: block; font-size: 0.8125rem; font-weight: 600; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--slate); margin: 0 0 14px;
}
/* The hero eyebrow stays on one line: the trailing part steps back on phones */
.eyebrow--one-line { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 559px) {
  .eyebrow--one-line { font-size: 0.75rem; letter-spacing: 0.05em; }
  .eyebrow--one-line .wide-only { display: none; }
}

/* Buttons: one shape, 52px tall (44px compact), one type size, no subtitle inside */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 52px; padding: 12px 24px; border-radius: 999px;
  font: 600 1rem/1.2 var(--sans); text-decoration: none; text-align: center; white-space: nowrap;
  border: 1.5px solid transparent; cursor: pointer;
  transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
.btn-primary { background: var(--red); color: #fff; }
.btn-primary:hover { background: var(--red-deep); color: #fff; }
.btn-ghost { border-color: var(--ink); color: var(--ink); background: transparent; }
.btn-ghost:hover { background: var(--ink); color: #fff; }
.band--ink .btn-ghost { border-color: #fff; color: #fff; }
.band--ink .btn-ghost:hover { background: #fff; color: var(--ink); }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 22px 0 0; }
@media (max-width: 420px) { .actions .btn { padding: 12px 16px; font-size: .95rem; } }
.actions-note { margin: 12px 0 0; font-size: .95rem; color: var(--muted); }

/* Header */
.site-header {
  position: sticky; top: 0; z-index: 30;
  background: rgba(250, 250, 248, .96);
  border-bottom: 1px solid var(--line);
}
.header-row { display: flex; align-items: center; gap: 20px; min-height: 68px; }
.brand { flex: none; }
.brand img { width: 190px; }
.nav { margin-left: auto; }
.nav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 22px; }
.nav a { color: var(--ink); text-decoration: none; font-size: .97rem; }
.nav a:hover, .nav a[aria-current="page"] { color: var(--ink); text-decoration: underline; text-underline-offset: 6px; }
.nav-toggle {
  display: none; margin-left: auto; min-height: 44px; padding: 8px 14px;
  background: transparent; border: 1px solid var(--ink); border-radius: 999px;
  font: 600 .95rem var(--sans); color: var(--ink); cursor: pointer;
}
.header-cta { display: flex; align-items: center; gap: 14px; }
.header-call { color: var(--ink); font-weight: 600; text-decoration: none; white-space: nowrap; }
.header-cta .btn { min-height: 44px; padding: 9px 18px; }

@media (max-width: 960px) {
  .header-cta .btn, .header-call { display: none; }
  .js .nav-toggle { display: inline-flex; }
  .js .nav { display: none; position: absolute; left: 0; right: 0; top: 100%;
    background: var(--paper); border-bottom: 1px solid var(--line); padding: 8px 20px 18px; }
  .js .nav.is-open { display: block; }
  .nav ul { flex-direction: column; gap: 0; }
  .nav li a { display: block; padding: 12px 0; border-bottom: 1px solid var(--line); }
  html:not(.js) .nav ul { flex-direction: row; flex-wrap: wrap; gap: 4px 16px; }
}

/* Sections */
.band { padding: clamp(56px, 8vw, 96px) 0; }
.band--tint { background: var(--slate-tint); }
.band--slate { background: var(--slate-tint); }
.band--ink { background: var(--ink); color: #eef2f4; }
.band--ink h2, .band--ink h3 { color: #fff; }
.band--ink a:not(.btn) { color: #fff; }
.section-head { max-width: 44rem; margin-bottom: 36px; }
.section-head p { color: var(--ink-soft); font-size: 1.1rem; }
.band--ink .section-head p { color: #d6dee3; }

/* Hero */
.hero { padding: clamp(28px, 5vw, 64px) 0 clamp(48px, 7vw, 88px); }
.hero-grid { display: grid; gap: 36px; align-items: start; }
@media (min-width: 900px) { .hero-grid { grid-template-columns: 1.05fr 1fr; gap: 56px; } }
.hero-lede { font-size: 1.2rem; color: var(--ink-soft); max-width: 34rem; }
/* The proof bar: one structured row with hairline dividers, stars in ink */
.proof {
  list-style: none; padding: 16px 0 0; margin: 24px 0 0; border-top: 1px solid var(--line);
  display: flex; flex-wrap: wrap; gap: 8px 0; color: var(--ink-soft); font-size: .93rem;
}
.proof li { display: inline-flex; align-items: center; gap: 6px; padding: 0 14px; border-left: 1px solid var(--line); }
.proof li:first-child { padding-left: 0; border-left: 0; }
.star { color: var(--ink); }
.rating-line { margin: 18px 0 0; font-size: .95rem; }
.hero-figure { margin: 0; position: relative; }
.hero-figure img { border-radius: var(--radius); aspect-ratio: 1600 / 1009; object-fit: cover; width: 100%; }
.hero-figure figcaption { margin-top: 10px; font-size: .9rem; color: var(--muted); }
.hero-figure video { width: 100%; border-radius: var(--radius); background: #000; display: block; }
.play {
  position: absolute; left: 18px; bottom: 52px; display: none;
  align-items: center; gap: 10px; padding: 10px 18px 10px 12px; border: 0; border-radius: 999px;
  background: rgba(28, 41, 50, .86); color: #fff; font: 600 .95rem var(--sans); cursor: pointer;
}
.play::before {
  content: ""; width: 26px; height: 26px; border-radius: 50%; background: #fff;
  -webkit-mask: none; clip-path: polygon(30% 22%, 30% 78%, 78% 50%);
}
@media (min-width: 900px) { .js .play { display: inline-flex; } }

/* Symptom links */
.symptoms { display: grid; gap: 12px; list-style: none; padding: 0; margin: 0; }
@media (min-width: 700px) { .symptoms { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .symptoms { grid-template-columns: repeat(4, 1fr); } }
.symptoms a {
  display: flex; flex-direction: column; gap: 6px; height: 100%;
  padding: 22px; border-radius: var(--radius); background: var(--card);
  border: 1px solid var(--line); color: var(--ink); text-decoration: none;
  transition: border-color .15s ease;
}
.symptoms a:hover { border-color: var(--slate); }
.symptoms strong { font-family: var(--serif); font-size: 1.25rem; font-weight: 600; }
.symptoms span { color: var(--muted); font-size: .95rem; }
.symptoms span::after { content: "\00a0→"; color: var(--slate); white-space: nowrap; }
.more-links { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 8px 20px; }

/* Steps */
.steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; counter-reset: s; }
@media (min-width: 900px) { .steps { grid-template-columns: repeat(3, 1fr); gap: 28px; } }
.steps li { counter-increment: s; position: relative; padding: 0 0 32px 64px; }
@media (min-width: 900px) { .steps li { padding: 64px 0 0; } }
.steps li::before {
  content: counter(s); position: absolute; left: 0; top: 0;
  width: 44px; height: 44px; border-radius: 50%;
  display: grid; place-items: center; font: 600 1.1rem var(--sans);
  background: var(--card); border: 2px solid var(--slate); color: var(--slate);
}
.steps li::after {
  content: ""; position: absolute; left: 21px; top: 48px; bottom: 4px; width: 2px; background: var(--line);
}
@media (min-width: 900px) {
  .steps li::after { left: 54px; right: -24px; top: 21px; bottom: auto; width: auto; height: 2px; }
}
.steps li:last-child::after { display: none; }
.steps p { color: var(--ink-soft); margin: 0; }
.steps p + p { margin-top: .6em; }

/* A place a new photo will go. Hidden while empty; drop an <img> inside to show it. */
.photo-slot { margin: 0 0 18px; }
.photo-slot:empty { display: none; }
.photo-slot img { border-radius: var(--radius); width: 100%; object-fit: cover; aspect-ratio: 3 / 2; }

/* Meet Dr. Ghalchi */
.meet { display: grid; gap: 36px; align-items: start; }
@media (min-width: 900px) { .meet { grid-template-columns: 380px 1fr; gap: 64px; } }
.portrait { margin: 0; }
.portrait img { border-radius: var(--radius); aspect-ratio: 1 / 1; object-fit: cover; width: 100%; background: #eee; }
.portrait figcaption { font-size: .9rem; color: var(--muted); margin-top: 10px; }
.founded { list-style: none; padding: 0; margin: 24px 0; display: grid; gap: 14px; }
.founded li { padding-left: 18px; border-left: 3px solid var(--slate); }
.quote {
  margin: 28px 0; padding: 0; font-family: var(--serif); font-weight: 400;
  font-size: clamp(1.3rem, 2.6vw, 1.6rem); line-height: 1.35; color: var(--ink);
}
.quote footer { font: 400 .95rem var(--sans); color: var(--muted); margin-top: 10px; }
.name-title { margin-bottom: .25em; }
.name-sub { margin-bottom: 26px; }
.credline { font-size: .95rem; color: var(--ink-soft); border-top: 1px solid var(--line); padding-top: 16px; }
.cred-list { list-style: none; margin: 0 0 22px; padding: 0; border-top: 1px solid var(--line); }
.cred-list li { padding: 10px 0; border-bottom: 1px solid var(--line); }

/* Public-review excerpts: verbatim, each linked to where it was posted */
.quotes { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
@media (min-width: 900px) { .quotes { grid-template-columns: repeat(3, 1fr); } }
.quotes blockquote { margin: 0; font-family: var(--serif); font-weight: 400; font-size: 1.15rem; line-height: 1.4; }
.quotes cite { display: block; margin-top: 8px; font: 400 .9rem var(--sans); color: var(--muted); }
.small-print { font-size: .9rem; color: var(--muted); }
.band--ink .small-print { color: #c3cdd3; }

/* Split rows */
.split { display: grid; gap: 32px; }
@media (min-width: 900px) { .split { grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; } }
.trio { display: grid; gap: 32px; }
@media (min-width: 960px) { .trio { grid-template-columns: 1.1fr 1fr 1fr; gap: 40px; align-items: start; } }
.trio h3 { margin-bottom: .5em; }
.apollo-row { display: grid; gap: 8px 32px; align-items: center; padding: 28px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
@media (min-width: 900px) { .apollo-row { grid-template-columns: 1fr auto; } }
.apollo-row p { margin: 0; }
.panel { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 26px; }
.plans { list-style: none; padding: 0; margin: 0 0 16px; display: flex; flex-wrap: wrap; gap: 10px; }
.plans li { padding: 8px 14px; border-radius: 999px; background: var(--card); border: 1px solid var(--line); font-size: .97rem; }
.hours { width: 100%; border-collapse: collapse; font-size: .98rem; }
.hours th, .hours td { text-align: left; padding: 9px 0; border-bottom: 1px solid var(--line); font-weight: 400; }
.hours td { text-align: right; }
.hours .late td { font-weight: 600; }
.address { font-style: normal; font-size: 1.1rem; margin-bottom: 14px; }
.checks { list-style: none; padding: 0; margin: 0 0 1em; }
.checks li { padding-left: 28px; position: relative; margin-bottom: 8px; }
.checks li::before {
  content: ""; position: absolute; left: 2px; top: .5em; width: 12px; height: 7px;
  border-left: 2px solid var(--slate); border-bottom: 2px solid var(--slate); transform: rotate(-45deg);
}

/* Bio */
.creds { display: grid; gap: 0; margin: 0; }
.creds div { display: grid; gap: 4px 24px; padding: 16px 0; border-bottom: 1px solid var(--line); }
@media (min-width: 700px) { .creds div { grid-template-columns: 200px 1fr; } }
.creds dt { font-weight: 600; color: var(--slate); }
.creds dd { margin: 0; }
.creds ul { margin: 0; padding-left: 1.1em; }

/* Booking band + callback form (the form's own markup is fixed; only its look is set here) */
.book-band .actions { margin-top: 26px; }
.callback { padding: clamp(48px, 7vw, 80px) 0; }
.callback .dynamic-form { max-width: 560px; margin: 0 auto; }
.callback .dynamic-form h3 { font-size: 1.6rem; text-align: left; }
.callback form#contact_search_form {
  max-width: 100%; min-width: 0; margin: 0; padding: 24px;
  background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: none;
}
.d-none { display: none; }
.col_one_third { display: grid; }
.col_one_third .clearfix { width: 100%; margin-bottom: 14px; }
.col_one_third .clearfix > label { display: block; font-weight: 600; margin-bottom: 4px; }
.col_one_third .clearfix input {
  display: block; width: 100%; min-height: 46px; padding: 10px 12px;
  font: 400 1rem var(--sans); color: var(--ink); background: #fff;
  border: 1px solid #8b949b; border-radius: 8px;
}
#contact_search_form .submit.button.button-small.button-rounded {
  width: 100%; min-height: 52px; border: 0; border-radius: 999px; cursor: pointer;
  background: var(--red); color: #fff; font: 600 1rem var(--sans);
}
#contact_search_form .submit.button.button-small.button-rounded:hover { background: var(--red-deep); }
#contact_search_form input[type="checkbox"] { width: 20px; height: 20px; margin: 0 8px 0 0; vertical-align: -4px; accent-color: var(--ink); }

/* The text-message consent: wording fixed (mcvaConsent.spec.ts), look restyled.
   The checkbox and its label read at full size; the disclosure is small print. */
.sms-consent { margin-top: 8px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 10px; background: var(--paper); }
.sms-consent p { margin: 0 0 8px; font-size: .8125rem; line-height: 1.5; color: var(--muted); }
.sms-consent p:last-child { margin-bottom: 0; }
.sms-consent p:has(> label) { font-size: 1rem; color: var(--ink); margin: 12px 0; }
.sms-consent label { display: block; padding-left: 30px; text-indent: -30px; }
.sms-consent strong { font-weight: 600; }
.form-submit { margin-top: 16px; }

/* Google's badge is hidden, so its required notice is printed under Submit instead */
.grecaptcha-badge { visibility: hidden; }
.recaptcha-notice { margin: 12px 0 0; font-size: .8125rem; line-height: 1.5; color: var(--muted); text-align: center; }

/* Footer */
.site-footer { background: #142028; color: #cfd8dd; padding: 56px 0 32px; font-size: .95rem; }
.site-footer a { color: #fff; }
.footer-grid { display: grid; gap: 32px; }
@media (min-width: 800px) { .footer-grid { grid-template-columns: 1.3fr 1fr 1fr; } }
.site-footer h2 { font: 600 .82rem var(--sans); letter-spacing: .08em; text-transform: uppercase; color: #9fb0bb; margin-bottom: 12px; }
.site-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.site-footer .brand img { width: 200px; margin-bottom: 16px; }
.legal { margin-top: 36px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, .14); display: flex; flex-wrap: wrap; gap: 8px 18px; }

/* Test pages (/services/*) and the insurance page */
.test-figure img { aspect-ratio: 4 / 3; }
.review { font-size: .9rem; color: var(--muted); margin: 18px 0 0; }
.answer { margin: 0; background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 6px 24px; }
.answer div { display: grid; gap: 4px 24px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.answer div:last-child { border-bottom: 0; }
@media (min-width: 760px) { .answer div { grid-template-columns: 220px 1fr; } }
.answer dt { font-weight: 600; color: var(--slate); }
.answer dd { margin: 0; }
.prose { max-width: 44rem; }
.prose h3 { margin-top: 1.4em; }
.note { border-left: 3px solid var(--slate); padding: 4px 0 4px 18px; color: var(--ink-soft); }
.faq { max-width: 48rem; border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary {
  cursor: pointer; list-style: none; padding: 18px 36px 18px 0; position: relative;
  font: 600 1.1rem/1.35 var(--sans); color: var(--ink);
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; position: absolute; right: 4px; top: 14px; font-size: 1.5rem; color: var(--slate); }
.faq details[open] summary::after { content: "\2013"; }
.faq details p { color: var(--ink-soft); margin: 0 0 18px; }
.tests { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; }
@media (min-width: 700px) { .tests { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1080px) { .tests { grid-template-columns: repeat(4, 1fr); } }
.tests a {
  display: flex; flex-direction: column; height: 100%; overflow: hidden;
  background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  color: var(--ink); text-decoration: none; transition: border-color .15s ease;
}
.tests a:hover { border-color: var(--slate); }
.tests img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.tests strong { display: block; padding: 18px 20px 4px; font-family: var(--serif); font-size: 1.2rem; font-weight: 600; }
.tests span { display: block; padding: 0 20px 20px; color: var(--muted); font-size: .95rem; }

/* Mobile Book/Call bar */
.mobile-bar { display: none; }
@media (max-width: 960px) {
  .mobile-bar {
    display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
    position: fixed; left: 0; right: 0; bottom: 0; z-index: 40;
    padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
    background: rgba(250, 250, 248, .98); border-top: 1px solid var(--line);
    box-shadow: 0 -6px 20px rgba(28, 41, 50, .08);
  }
  .mobile-bar .btn { min-height: 52px; padding: 10px 12px; }
  body { padding-bottom: 76px; }
}

/* Room for the sixth nav link: the phone number steps back before the nav wraps */
@media (min-width: 961px) and (max-width: 1140px) {
  .header-call { display: none; }
  .nav ul { gap: 16px; }
}

/* Inner pages (symptoms, same-day, location) */
.page-hero { padding: clamp(24px, 4vw, 48px) 0 clamp(40px, 6vw, 72px); }
.page-hero h1 { font-size: clamp(2rem, 5vw, 3.1rem); }
.crumbs { font-size: .92rem; color: var(--muted); margin: 0 0 22px; }
.crumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 8px; }
.crumbs li + li::before { content: "›"; margin-right: 8px; color: var(--muted); }
.crumbs a { color: var(--muted); }
.review { font-size: .92rem; color: var(--muted); margin: 18px 0 0; }

/* The short answer at the top of an inner page */
.answer {
  margin-top: 32px; padding: 28px; background: var(--card);
  border: 1px solid var(--line); border-top: 4px solid var(--slate); border-radius: var(--radius);
}
.answer dl { display: grid; gap: 20px; margin: 0; }
@media (min-width: 820px) { .answer dl { grid-template-columns: 1fr 1fr; gap: 24px 40px; } }
.answer dt { font-family: var(--serif); font-weight: 600; font-size: 1.2rem; margin-bottom: 6px; }
.answer dd { margin: 0; color: var(--ink-soft); }

.prose { max-width: 46rem; }
.prose h2 { margin-top: 1.6em; }
.prose h2:first-child { margin-top: 0; }
.causes { list-style: none; margin: 0 0 1em; padding: 0; display: grid; gap: 14px; }
@media (min-width: 760px) { .causes { grid-template-columns: 1fr 1fr; } }
.causes li { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); padding: 20px 22px; }
.causes h3 { font-size: 1.1rem; margin-bottom: .35em; }
.causes p { margin: 0; color: var(--ink-soft); }

.test-list, .link-list { list-style: none; margin: 0 0 1em; padding: 0; display: grid; gap: 12px; }
.test-list li { display: grid; gap: 2px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.test-list a, .link-list a { font-weight: 600; }
.test-list span { color: var(--ink-soft); font-size: .97rem; }
.panel h3 + .link-list { margin-top: 0; }
.panel .link-list + h3 { margin-top: 1.2em; }


@media (min-width: 1000px) { .symptoms--six { grid-template-columns: repeat(3, 1fr); } }

.faq { max-width: 48rem; }
.faq-item { border-top: 1px solid var(--line); padding: 20px 0; }
.faq-item:last-child { border-bottom: 1px solid var(--line); }
.faq-item h3 { font-size: 1.15rem; margin-bottom: .4em; }
.faq-item p { margin: 0; color: var(--ink-soft); }
