/* Reference composition, scoped to Health Check; shared site styles stay intact. */
.health-check-page { color: var(--color-neutral); }
.health-check-page p { margin-block: 0 12px; font-size: 16px; }
.health-check-page a:not(.button) { color: var(--color-dark-blue); text-underline-offset: 3px; }
.health-check-page .section-title { font-size: 32px; margin-bottom: 8px; }
.health-check-page section { padding-block: 24px; }
.health-check-hero, .health-check-form-section { background: var(--color-dark-blue); color: var(--color-white); }
.health-check-hero h1 { margin: 0 0 16px; font: 600 32px/1.2 var(--font-heading); text-align: center; }
.health-check-hero > .container > p:first-of-type { margin-bottom: 8px; text-align: center; }
.health-check-action { margin-bottom: 8px; text-align: center; }
.health-check-hero .health-check-reassurance { margin: 0; font-size: 14px; text-align: center; }
.health-check-hero .button:hover { color: var(--color-dark-blue); background: var(--color-pale-blue); }
.health-check-deliverables, .health-check-exclusions, .health-check-audience { background: var(--color-cream); }
.health-check-process, .health-check-free, .health-check-faq { background: var(--color-pale-blue); }
.health-check-deliverables > .container > p:first-of-type, .health-check-exclusions > .container > p:first-of-type { text-align: center; }
.health-check-page .service-feature-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 50px; row-gap: 0; font-size: 16px; }
.health-check-deliverables .service-feature-list { max-width: 980px; margin: 0 auto 8px; }
.health-check-page .service-feature-list li { margin: 0; }
.health-check-page .feature-check { color: var(--color-dark-blue); }
.health-check-deliverables > .container > p:last-child { margin-bottom: 0; text-align: center; }
.health-check-page .health-check-process { padding-bottom: 32px; }
.health-check-process .section-title { margin-bottom: 8px; }
.health-check-process-grid { gap: 16px; }
.health-check-process-grid .content-card { padding: 16px; border: 2px solid var(--color-primary); border-radius: 8px; color: var(--color-neutral); }
.health-check-process-grid h3 { margin: 0 0 8px; font: 600 24px/1.3 var(--font-body); }
.health-check-process-grid p { margin-block: 8px; }
.health-check-page .health-check-exclusions { padding-block: 16px; }
.health-check-exclusions .service-feature-list { max-width: 980px; margin: 0 auto 16px; }
.health-check-exclusions > .container > p:last-child { margin-bottom: 0; }
.health-check-page .health-check-free { padding-top: 8px; }
.health-check-prose-list { margin: 0 0 16px; padding-left: 32px; font-size: 16px; }
.health-check-prose-list li { margin: 0; }
.health-check-free .health-check-prose-list { width: fit-content; max-width: 100%; margin-inline: auto; }
.health-check-free .section-title { margin-bottom: 16px; }
.health-check-free > .container > p:last-of-type { margin-bottom: 0; }
.health-check-page .health-check-audience { padding-top: 16px; }
.health-check-audience .section-title { margin-bottom: 0; }
.health-check-audience-body { padding-top: 24px; }
.health-check-audience-body > p:last-child { margin-bottom: 0; }
.health-check-page .health-check-faq { padding-top: 0; }
.health-check-faq .section-title { margin-bottom: 16px; }
.health-check-faq > .container > p { margin-block: 8px; text-align: center; color: var(--color-dark-blue); }
.health-check-faq-list { display: grid; gap: 2px; }
.health-check-faq .content-disclosure { border-color: var(--color-cream); background: var(--color-white); }
.health-check-faq summary { position: relative; padding: 9px 45px 9px 13px; border-radius: 8px; background: var(--color-pale-blue); color: var(--color-dark-blue); list-style: none; font: 600 18px/24px var(--font-body); }
.health-check-faq summary::-webkit-details-marker { display: none; }
.health-check-faq summary::after { content: ''; position: absolute; right: 15px; top: 15px; width: 16px; height: 16px; background: linear-gradient(currentColor, currentColor) center / 16px 3px no-repeat, linear-gradient(currentColor, currentColor) center / 3px 16px no-repeat; }
.health-check-faq details[open] > summary::after { background: linear-gradient(currentColor, currentColor) center / 16px 3px no-repeat; }
.health-check-faq summary:hover, .health-check-faq details[open] > summary { background: var(--color-dark-blue); color: var(--color-white); }
.health-check-page .health-check-form-section { padding-block: 16px 48px; scroll-margin-top: 24px; }
.health-check-narrow { max-width: 700px; }
.health-check-form-section .section-title, .health-check-form-section .health-check-form-intro { color: var(--color-cream); text-align: center; }
.health-check-form-section .health-check-form-intro { margin-bottom: 0; }
.health-check-form-section .health-check-form-intro + .health-check-form-intro { font-size: 14px; margin-bottom: 32px; }
.health-check-form { color: var(--color-cream); }
.health-check-page .health-check-form textarea { min-height: 140px; }
.health-check-page .health-check-form input, .health-check-page .health-check-form textarea { background: var(--color-cream); }
.health-check-form-section .health-check-privacy { margin: 32px 0 0; color: var(--color-cream); font-size: 14px; }
.health-check-form-section .health-check-privacy a { color: var(--color-white); }
.health-check-hero a:focus-visible, .health-check-form-section a:focus-visible { outline-color: var(--color-amber); }
@media (max-width: 767px) {
  .health-check-process-grid { grid-template-columns: minmax(0, 1fr); }
  .health-check-page section > .container { padding-inline: var(--container-padding-inline); }
}
