/**
 * Copyright (c) 2026 DNA Genics, S.L. All rights reserved.
 * Heritage health information: visible limitations and an accessible reading layout.
 */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@400;500;600;700&display=swap');

.health-information { --health-nav:var(--nav-height,var(--navbar-height,72px)); padding-top:calc(var(--health-nav) + 8px); padding-bottom:56px; font:400 max(1rem,16px)/1.8 var(--hd-sans); min-width:0; }
.health-information *, .health-information *::before, .health-information *::after { box-sizing:border-box; }
.health-information :where(section) { padding:0; }
.health-information :is(h1,h2,h3,p,a,dt,dd,span) { overflow-wrap:anywhere; }
.health-information [id] { scroll-margin-top:calc(var(--health-nav) + 20px); }
.health-information a:focus-visible { outline:3px solid #92723b; outline-offset:4px; }
.health-information a:not(.health-skip,.hd-btn):is(:hover,:focus) { color:var(--hd-primary); text-decoration:underline; text-underline-offset:4px; }
.health-information .hd-eyebrow { font-size:.68em; color:#876a36; margin-bottom:12px; }
.health-information .dna-icon { flex-shrink:0; width:17px; height:17px; }
.health-container { width:100%; max-width:1440px; margin-inline:auto; padding-inline:clamp(18px,4vw,56px); }
.health-skip { position:fixed; top:-120px; left:16px; z-index:2000; color:#fff; background:var(--hd-primary); border-radius:8px; padding:12px 18px; }
.health-skip:focus { top:12px; color:#fff; }
.health-breadcrumb { display:flex; flex-wrap:wrap; gap:10px; align-items:center; padding:14px 0; font-size:.76em; color:var(--hd-muted); }
.health-breadcrumb a { color:var(--hd-primary); text-decoration:underline; text-underline-offset:3px; }
.health-hero { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr); align-items:center; gap:clamp(28px,6vw,80px); padding:24px 0 42px; }
.health-hero h1 { color:var(--hd-primary); font:500 clamp(2.8rem,5vw,4.8rem)/1.05 var(--hd-serif); letter-spacing:-.025em; margin:0 0 24px; max-width:16ch; }
.health-hero__notice { color:#4f554c; font-size:1em; line-height:1.8; max-width:56ch; margin:0 0 24px; }
.health-information .hd-btn { min-height:46px; font-size:.86em; padding:12px 20px; justify-content:center; gap:12px; }
.health-information .hd-btn--primary:is(:hover,:focus), .health-information .hd-btn--primary { color:#fff; }
.health-context { padding:clamp(24px,3vw,34px); background:var(--hd-sand); border:1px solid var(--hd-border); border-radius:var(--hd-radius); }
.health-context h2 { color:var(--hd-primary); font:500 2em/1.13 var(--hd-serif); margin:0 0 22px; }
.health-context dl { margin:0; }
.health-context dl > div { display:grid; grid-template-columns:64px minmax(0,1fr); gap:14px; border-top:1px solid #d9cbb4; padding:14px 0; }
.health-context dt { color:var(--hd-primary); font-size:.82em; font-weight:600; }
.health-context dd { color:#5f5e53; font-size:.84em; line-height:1.75; margin:0; }
.health-context__note { border-top:1px solid #d9cbb4; padding-top:16px; margin:0; color:#66604f; font-size:.75em; line-height:1.8; }
.health-reading-layout { display:grid; grid-template-columns:210px minmax(0,1fr); gap:clamp(28px,5vw,68px); padding-top:32px; border-top:1px solid var(--hd-border); align-items:start; }
.health-index { min-width:0; }
.health-index nav { display:grid; gap:4px; }
.health-index .hd-eyebrow { margin:0 0 8px; }
.health-index a { display:flex; align-items:baseline; gap:14px; min-height:44px; padding:10px 0; border-bottom:1px solid var(--hd-border); color:var(--hd-primary); font-size:.84em; text-decoration:none; }
.health-index a > span { color:#816a43; font-size:.82em; }
.health-reading { min-width:0; }
.health-reading h2 { color:var(--hd-primary); font:500 clamp(2rem,3vw,2.65rem)/1.16 var(--hd-serif); margin:0 0 22px; letter-spacing:-.01em; }
.health-introduction { max-width:78ch; padding:0 0 32px !important; }
.health-introduction p { color:#4f554c; margin:0 0 18px; font-size:1em; }
.health-introduction p:last-child { margin-bottom:0; }
.health-limitations { padding:28px 0 0 !important; border-top:1px solid var(--hd-border); }
.health-section-heading { margin-bottom:26px; max-width:44ch; }
.health-notices { list-style:none; padding:0; margin:0; counter-reset:health-notice; border:1px solid var(--hd-border); border-radius:var(--hd-radius); overflow:hidden; background:var(--hd-surface); }
.health-notices > li { display:grid; grid-template-columns:34px minmax(120px,.6fr) minmax(0,1.6fr); gap:18px; padding:26px; border-bottom:1px solid var(--hd-border); counter-increment:health-notice; }
.health-notices > li:last-child { border-bottom:0; }
.health-notices > li::before { content:counter(health-notice,decimal-leading-zero); color:#876a36; font-size:.78em; font-weight:600; padding-top:3px; }
.health-notices h3 { color:var(--hd-primary); font:600 .9em/1.6 var(--hd-sans); margin:0; }
.health-notices p { color:#4f554c; font-size:1em; line-height:1.8; margin:0; }
.health-notices > li:nth-child(-n+2) { background:#f5f0e6; }
.health-notices > li:nth-child(-n+2) p { color:#344438; font-weight:600; }
.health-resources { display:flex; align-items:center; flex-wrap:wrap; gap:12px 28px; padding-top:24px; }
.health-resources a { display:inline-flex; align-items:center; gap:10px; min-height:44px; color:var(--hd-primary); font-size:.84em; text-decoration:underline; text-underline-offset:4px; }

@media (min-width:992px) { .health-index { position:sticky; top:calc(var(--health-nav) + 20px); } }
@media (max-width:1100px) { .health-notices > li { grid-template-columns:28px minmax(0,1fr); gap:12px 18px; } .health-notices p { grid-column:2; } }
@media (max-width:991px) { .health-reading-layout { grid-template-columns:minmax(0,1fr); gap:26px; } .health-index nav { display:flex; align-items:center; flex-wrap:wrap; gap:6px 28px; } .health-index .hd-eyebrow { margin:0 auto 0 0; } .health-index a { border-bottom:0; } .health-hero { grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr); gap:28px; } }
@media (max-width:767px) { .health-hero { grid-template-columns:minmax(0,1fr); padding:18px 0 28px; gap:26px; } .health-hero h1 { font-size:clamp(2.7rem,10vw,4rem); max-width:19ch; } .health-context dl > div { grid-template-columns:64px minmax(0,1fr); } .health-reading-layout { padding-top:20px; } .health-index .hd-eyebrow { flex-basis:100%; margin:0; } .health-notices > li { padding:22px 18px; column-gap:12px; } .health-notices p { font-size:1em; } .health-information { padding-bottom:32px; } }
@media (prefers-reduced-motion:reduce) { .health-information *, .health-information *::before, .health-information *::after { scroll-behavior:auto !important; transition:none !important; } }
@media print {
    @page { margin:16mm; }
    body:has(.health-information) :is(#mainNav,.hf-footer,.dng-footer) { display:none !important; }
    .health-information { padding:0; background:#fff; font-size:11pt; }
    .health-container { max-width:none; padding:0; }
    .health-skip, .health-breadcrumb, .health-index, .health-hero .hd-btn, .health-resources { display:none !important; }
    .health-hero { display:block; padding:0 0 20px; }
    .health-hero h1 { font-size:2.4em; max-width:none; }
    .health-context { margin-top:20px; padding:16px; border-radius:0; }
    .health-reading-layout { display:block; }
    .health-introduction { max-width:none; }
    .health-reading :is(h2,h3) { break-after:avoid; }
    .health-notices { overflow:visible; border-radius:0; }
    .health-notices > li { display:block; padding:16px; break-inside:avoid; }
    .health-notices > li::before { display:none; }
    .health-notices h3 { margin-bottom:8px; }
    .health-information p { orphans:3; widows:3; }
}
