/* Homepage composition. Shared brand tokens and article layouts stay in style.css. */
.home-editorial .home-hero--scene {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-bottom:0;
  background:var(--paper);
}
.home-hero--scene::before {
  content:"";
  position:absolute;
  inset:0;
  background:#faeadb;
  z-index:-2;
}
.home-editorial .hero-scene { position:absolute; inset:0; width:100%; margin:0; pointer-events:none; z-index:-1; }
.home-editorial .hero-scene img { display:block; position:absolute; bottom:0; width:100%; height:auto; }
/* Fill the width with painted artwork, without fading its edges into flat color. */
.home-editorial .hero-grid { position:relative; display:flex; align-items:center; min-height:max(620px,44.9733vw); padding-block:40px 100px; }
@media (min-width:1800px) {
  .home-editorial .hero-grid { min-height:max(760px,34.1566vw); }
  .home-editorial .hero-scene img { height:100%; object-fit:cover; object-position:center bottom; }
}
.home-editorial .hero-editorial-copy { width:48%; max-width:548px; }
.home-editorial .hero-editorial-copy h1 { margin:22px 0 24px; font-size:clamp(46px,4.5vw,64px); font-weight:500; line-height:1.06; letter-spacing:-.035em; }
.home-editorial .hero-editorial-copy h1 span,
.home-editorial .hero-editorial-copy h1 em { display:block; text-wrap:balance; }
.home-editorial .hero-editorial-copy h1 em { position:relative; width:fit-content; max-width:100%; isolation:isolate; }
.home-editorial .hero-editorial-copy h1 em::after { content:""; position:absolute; left:1%; right:-1%; bottom:-.08em; height:.1em; border-bottom:4px solid #e6b57f; border-radius:0 0 55% 45%; transform:rotate(-1deg); z-index:-1; pointer-events:none; }
.home-editorial .hero-deck { max-width:48ch; margin-bottom:28px; font-size:18px; line-height:1.7; }
@media (min-width:1800px) {
  /* Keep the introduction clear of the plant in the wide painting. */
  .home-editorial .hero-deck { max-width:460px; }
}
.home-editorial .hero-search-label { display:block; margin-bottom:10px; color:var(--teal); font:600 15px/1.5 var(--font-body); }
.home-editorial .hero-search { max-width:540px; padding:7px 7px 7px 19px; border-radius:16px; box-shadow:0 8px 24px -16px rgb(15 76 92 / 22%); background:var(--paper); }
.home-editorial .hero-search input { min-width:0; min-height:44px; }
.home-editorial .hero-search .button { border-radius:11px; min-height:48px; padding-inline:24px; }
.home-editorial .hero-search-links { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:14px; font:500 14px/1.5 var(--font-body); }
.home-editorial .hero-search-links a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:6px 16px; border:1px solid rgb(15 76 92 / 18%); border-radius:999px; background:rgb(251 248 243 / 65%); color:var(--teal); text-decoration:none; white-space:nowrap; }
.home-editorial .hero-search-links a:hover { background:var(--teal); color:var(--paper); border-color:var(--teal); }
.home-editorial .hero-search-links a:focus-visible { outline:2px solid var(--teal); outline-offset:3px; }
.home-editorial .hero-search-links a:active { background:#dce9e4; color:var(--teal); }
@media (min-width:1101px) and (max-width:1200px) {
  .home-editorial .hero-editorial-copy h1 { font-size:52px; }
}
@media (max-width:1100px) {
  .home-editorial .home-hero--scene { display:flex; flex-direction:column; background:#faeadb; }
  .home-hero--scene::before { display:none; }
  .home-editorial .hero-grid { order:0; width:100%; min-height:0; display:block; padding-block:44px 10px; }
  .home-editorial .hero-editorial-copy { width:100%; max-width:640px; margin-inline:auto; }
  .home-editorial .hero-editorial-copy h1 { font-size:54px; }
  .home-editorial .hero-scene { order:1; position:relative; inset:auto; height:auto; }
  .home-editorial .hero-scene img { position:static; height:auto; }
}
@media (max-width:600px) {
  .home-editorial .hero-grid { padding-top:32px; padding-bottom:0; }
  .home-editorial .hero-editorial-copy h1 { margin-block:20px; font-size:clamp(35px,9.8vw,48px); }
  .home-editorial .hero-deck { margin-bottom:22px; font-size:16px; line-height:1.65; }
  .home-editorial .hero-search { padding-left:13px; gap:8px; }
  .home-editorial .hero-search .button { padding-inline:18px; }
  .home-editorial .hero-search-label { font-size:14px; }
  .home-editorial .hero-search-links { gap:7px; font-size:13px; margin-top:12px; }
  .home-editorial .hero-search-links a { padding-inline:13px; }
}
.home-editorial .review-editorial { padding-block:68px; }
.home-editorial .review-grid { gap:30px; margin:30px 0; }
.home-editorial .review-grid > div > span { width:40px; height:40px; }
.home-editorial .review-icon svg { width:21px; height:21px; display:block; }
.home-editorial .review-grid h3 { margin-top:14px; }
.home-editorial .review-grid p { font-size:15px; line-height:1.65; }
.home-editorial .editorial-quote { border-top:1px solid #9dc1bc; padding:22px 0 0; margin:0; font-size:21px; max-width:62ch; text-wrap:balance; }
.home-editorial .editorial-quote::before { content:"\201C"; display:inline-block; margin-right:10px; color:#F2CC8F; font:600 36px/1 var(--font-display); vertical-align:-.17em; }
.home-editorial .quote-ending { white-space:nowrap; }
.home-editorial .quote-ending::after { content:"\201D"; display:inline-block; margin-left:5px; color:#F2CC8F; font:600 36px/1 var(--font-display); vertical-align:-.17em; }
.home-editorial .keep-reading-home { display:block; padding-block:68px 76px; }
.home-editorial .keep-reading-header { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:30px; }
.home-editorial .keep-reading-home h2 { margin:8px 0; scroll-margin-top:100px; }
.home-editorial .closing-copy { color:var(--muted); font-size:16px; line-height:1.6; }
.home-editorial .keep-reading-header .text-arrow { flex:none; padding-block:10px; }
.home-editorial .home-reading-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.home-editorial .home-reading-card { display:flex; gap:16px; align-items:stretch; min-width:0; padding:14px; color:var(--ink); text-decoration:none; background:var(--surface); border:1px solid var(--hairline); border-top:3px solid var(--early); border-radius:12px; }
.home-editorial .home-reading-card img { width:96px; height:100px; flex:none; border-radius:7px; object-fit:cover; object-position:center top; }
.home-editorial .home-reading-copy { display:flex; min-width:0; flex-direction:column; align-items:flex-start; gap:8px; }
.home-editorial .home-reading-label { font:500 14px/1.4 var(--font-body); color:#555; }
.home-editorial .home-reading-copy strong { font:600 17px/1.28 var(--font-display); text-wrap:pretty; }
.home-editorial .home-reading-link { margin-top:auto; font:600 13px/1.4 var(--font-body); color:var(--teal); text-decoration:underline; text-underline-offset:3px; }
.home-editorial .home-reading-card:hover { border-color:var(--early); }
.home-editorial .home-reading-card:focus-visible { outline:2px solid var(--teal); outline-offset:3px; }
@media (max-width:600px) {
  .home-editorial .review-editorial { padding-block:48px; }
  .home-editorial .review-grid { gap:24px; }
  .home-editorial .keep-reading-home { padding-block:48px; }
  .home-editorial .keep-reading-header { align-items:flex-start; flex-direction:column; gap:10px; margin-bottom:22px; }
}
.home-editorial .data-section { padding-block:68px; scroll-margin-top:76px; }
@media (max-width:600px) {
  .home-editorial .data-section { padding-block:48px; }
}
.home-editorial .topic-editorial { padding-block:68px; scroll-margin-top:76px; }
.home-editorial .topic-card-main { display:flex; align-items:center; gap:14px; padding:20px 20px 10px; min-height:108px; }
.home-editorial .topic-card-main img { width:88px; height:88px; flex:none; object-fit:contain; }
.home-editorial .topic-card-copy { padding:0 17px 0 0; min-width:0; display:flex; flex-direction:column; gap:5px; }
.home-editorial .topic-card-copy h3 { margin:0; font-size:22px; line-height:1.2; }
.home-editorial .topic-card-copy .micro { order:2; font-size:12px; color:#555; }
.home-editorial .topic-card-arrow { right:-2px; bottom:auto; top:0; font-size:19px; }
.home-editorial .topic-card ul { margin:4px 20px 18px; }
.home-editorial .topic-upcoming { margin:10px 20px 0; font:500 11px/1.5 var(--font-mono); letter-spacing:.06em; text-transform:uppercase; color:#666; }
.home-editorial .topic-card li { font-size:14px; line-height:1.55; padding-block:9px; color:var(--ink); text-wrap:pretty; }
@media (max-width:600px) {
  .home-editorial .topic-editorial { padding-block:48px; }
  .home-editorial .topic-card-main { padding-top:16px; min-height:96px; }
  .home-editorial .topic-card-main img { width:76px; height:76px; }
}
.home-editorial .latest-editorial .card-body { padding:20px 22px; }
.home-editorial .card-kicker { display:flex; flex-wrap:wrap; gap:8px 14px; align-items:center; justify-content:space-between; }
.home-editorial .card-kicker .pill { margin:0; padding:0; background:none; font:500 14px/1.5 var(--font-body); letter-spacing:0; text-transform:none; color:var(--teal); }
.home-editorial .card-read-time { font:400 14px/1.5 var(--font-body); color:#555; }
.home-editorial .latest-editorial .card h3 { font-size:24px; line-height:1.25; margin:14px 0 10px; text-wrap:pretty; }
.home-editorial .latest-editorial .card-summary { font-size:15px; line-height:1.6; color:#555; margin-bottom:18px; }
.home-editorial .card-footer { margin-top:auto; border-top:1px solid var(--hairline); padding-top:14px; }
.home-editorial .card-footer .read-link { margin:0; font-size:15px; }
.home-editorial .audience-editorial { padding-block:32px 0; }
.home-editorial .audience-intro { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:14px; }
.home-editorial .audience-intro h2 { margin:0; font:600 18px/1.3 var(--font-display); color:var(--ink); scroll-margin-top:100px; }
.home-editorial .audience-intro > span { font:400 13px/1.4 var(--font-body); color:#555; }
.home-editorial .audience-grid { gap:20px; align-items:stretch; }
.home-editorial .audience-card { display:flex; align-items:flex-start; gap:20px; min-height:0; padding:25px; border:1px solid #e9dfd3; text-decoration:none; }
.home-editorial .audience-card--parent { background:#f7eee3; }
.home-editorial .audience-card--clinician { background:#eaf4f2; border-color:#d7e8e3; }
.home-editorial .audience-icon { display:grid; flex:none; place-items:center; width:64px; height:64px; margin:0; border:0; border-radius:18px; background:#f2d5c4; color:#854b3e; }
.home-editorial .audience-card--clinician .audience-icon { background:#cde4dc; color:var(--teal); }
.home-editorial .audience-icon svg { width:38px; height:38px; }
.home-editorial .audience-copy { display:flex; flex:1; min-width:0; flex-direction:column; align-items:flex-start; }
.home-editorial .audience-kicker { margin-bottom:4px; font:500 11px/1.4 var(--font-mono); letter-spacing:.06em; color:#555; text-transform:uppercase; }
.home-editorial .audience-title { margin:0 0 7px; color:var(--ink); font:600 25px/1.2 var(--font-display); }
.home-editorial .audience-description { max-width:34ch; color:#555; font:400 15px/1.55 var(--font-body); }
.home-editorial .audience-action { margin-top:14px; color:var(--teal); font:600 14px/1.4 var(--font-body); text-decoration:underline; text-underline-offset:4px; }
.home-editorial .audience-action > span { display:inline-block; margin-left:5px; text-decoration:none; }
.home-editorial .audience-card:focus-visible { outline:2px solid var(--teal); outline-offset:3px; }
.home-editorial .latest-editorial { padding-block:56px 68px; scroll-margin-top:100px; }
.home-editorial .section-intro { margin-bottom:30px; }
.home-editorial .latest-more { display:flex; justify-content:center; margin-top:28px; }
.home-editorial .latest-more .text-arrow { display:inline-flex; gap:12px; align-items:center; min-height:44px; }
.home-editorial :is(.latest-more,.keep-reading-header) .text-arrow,
.home-editorial :is(.latest-more,.keep-reading-header) .text-arrow:hover { display:inline-flex; align-items:center; gap:10px; text-decoration:none; }
.home-editorial :is(.latest-more,.keep-reading-header) .text-arrow-label { text-decoration:underline; text-underline-offset:5px; }

/* A short path to all five topics, close to the reader's starting point. */
.home-editorial .home-topic-nav { display:flex; align-items:center; gap:20px; padding-block:22px 0; }
.home-editorial .home-topic-nav > .micro { margin:0; flex:none; color:#555; font-size:11px; }
.home-editorial .home-topic-links { display:flex; gap:8px; min-width:0; overflow-x:auto; padding:4px; scrollbar-width:thin; scrollbar-color:#B7B3AD transparent; }
.home-editorial .home-topic-link { display:inline-flex; align-items:center; gap:9px; flex:none; min-height:44px; padding:9px 15px; border:1px solid var(--hairline); border-radius:999px; font:500 14px/1.4 var(--font-body); white-space:nowrap; color:var(--ink); background:var(--surface); text-decoration:none; transition:background-color .2s ease, border-color .2s ease; }
.home-editorial .home-topic-link::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--topic-color); }
.home-editorial .home-topic-link:hover { background:#F2EDE5; border-color:var(--topic-color); }
.home-editorial .home-topic-link:focus-visible { outline:2px solid var(--teal); outline-offset:2px; }

/* Show the estimate and its uncertainty, with the study context beside it. */
.home-editorial .data-panel-study { grid-template-columns:1.08fr 1fr; gap:48px; padding:40px; }
.home-editorial .study-section-label { margin:0; color:var(--teal); font-size:12px; }
.home-editorial .data-panel-study h3 { margin:12px 0 26px; font-size:28px; line-height:1.3; text-wrap:pretty; }
.home-editorial .study-explainer h4 { margin:0 0 7px; font:600 15px/1.5 var(--font-body); color:var(--ink); }
.home-editorial .study-explainer p:not(.micro) { margin:0; font-size:15px; line-height:1.65; color:#555; }
.home-editorial .study-finding { margin-bottom:22px; }
.home-editorial .study-limits { border-left:2px solid var(--early); padding-left:16px; margin-bottom:25px; }
.home-editorial .study-citation { white-space:nowrap; text-underline-offset:3px; }
.home-editorial .data-panel-study .data-chart { padding:30px 26px 26px; background:#F7F3EC; border-radius:12px; min-width:0; }
.home-editorial .data-panel-study .study-estimate { display:flex; flex-direction:column; gap:10px; margin:0; color:var(--ink); }
.home-editorial .study-estimate > strong { font:500 64px/1 var(--font-display); letter-spacing:-.04em; color:var(--teal); }
.home-editorial .study-estimate > strong > span { font-size:38px; }
.home-editorial .study-estimate > span { font:400 14px/1.5 var(--font-body); }
.home-editorial .study-interval { margin:15px 0 22px; }
.home-editorial .study-interval svg { display:block; overflow:visible; }
.home-editorial .interval-axis, .home-editorial .interval-labels { font:14px var(--font-mono); fill:#555; }
.home-editorial .study-interval figcaption { display:flex; flex-wrap:wrap; align-items:center; gap:4px 7px; font-size:13px; line-height:1.6; color:#555; }
.home-editorial .interval-key { width:20px; height:3px; background:#B44F65; flex:none; }
.home-editorial .data-panel-study .study-context { margin:0; font-size:14px; line-height:1.65; color:var(--ink); }
.home-editorial .data-panel-study .study-sample { margin:9px 0 0; font-size:13px; line-height:1.6; color:#555; }
.home-editorial .data-panel-study .source-line { margin:18px 0 0; font-size:12px; line-height:1.6; color:#555; }
@media (max-width:1100px) {
  .home-editorial .home-topic-nav { flex-direction:column; align-items:stretch; gap:8px; }
  .home-editorial .data-panel-study { gap:28px; padding:30px; }
  .home-editorial .home-reading-card { flex-direction:column; }
  .home-editorial .home-reading-card img { width:100%; height:140px; }
  .home-editorial .home-reading-copy { flex:1; }
}
@media (max-width:850px) {
  .home-editorial .latest-editorial .card-grid { display:grid; grid-template-columns:1fr; max-width:560px; margin-inline:auto; }
  .home-editorial .data-panel-study { grid-template-columns:1fr; }
  .home-editorial .data-panel-study .data-chart { max-width:560px; width:100%; margin-inline:auto; }
  .home-editorial .home-reading-grid { grid-template-columns:1fr; }
  .home-editorial .home-reading-card { flex-direction:row; }
  .home-editorial .home-reading-card img { width:112px; height:108px; }
}
@media (max-width:600px) {
  .home-editorial .audience-editorial { padding-top:20px; }
  .home-editorial .audience-grid { gap:12px; }
  .home-editorial .audience-card { padding:20px; gap:15px; }
  .home-editorial .audience-icon { width:52px; height:52px; border-radius:15px; }
  .home-editorial .audience-icon svg { width:32px; height:32px; }
  .home-editorial .audience-title { font-size:22px; }
  .home-editorial .audience-intro > span { font-size:12px; }
  .home-editorial .latest-editorial { padding-block:40px 48px; }
  .home-editorial .home-topic-nav { padding-top:20px; }
  .home-editorial .home-topic-link { padding-inline:13px; }
  .home-editorial .latest-more { margin-top:22px; }
  .home-editorial .data-panel-study { padding:24px 20px; gap:28px; }
  .home-editorial .data-panel-study h3 { font-size:25px; }
  .home-editorial .data-panel-study .data-chart { padding:24px 18px; }
  .home-editorial .study-estimate > strong { font-size:56px; }
}
@media (prefers-reduced-motion:reduce) {
  .home-editorial .home-topic-link { transition:none; }
}
@media (max-width:420px) {
  .home-editorial .interval-axis, .home-editorial .interval-labels { font-size:22px; }
  .home-editorial .home-reading-card { gap:12px; padding:12px; }
  .home-editorial .home-reading-card img { width:80px; height:90px; }
  .home-editorial .keep-reading-home h2 { scroll-margin-top:140px; }
}
@media (max-width:360px) {
  .home-editorial .interval-axis, .home-editorial .interval-labels { font-size:26px; }
}

/* A single botanical pen stroke echoes the painted plant in the hero. */
.home-editorial .hero-editorial-copy { position:relative; }
.home-editorial .hero-line-sprig { position:absolute; top:-35px; right:5px; width:94px; height:auto; fill:none; stroke:#0f4c5c; stroke-width:1.35; stroke-linecap:round; stroke-linejoin:round; opacity:.63; pointer-events:none; }
@media (prefers-reduced-motion:no-preference) {
  .home-editorial .hero-line-sprig path { stroke-dasharray:360; stroke-dashoffset:0; animation:hero-sprig-draw 2.4s cubic-bezier(.37,0,.22,1) both; }
  .home-editorial .hero-line-sprig .hero-line-leaf { animation-delay:.2s; }
  .home-editorial .hero-line-sprig .hero-line-detail { animation-delay:.4s; }
  @keyframes hero-sprig-draw { from { stroke-dashoffset:360; } to { stroke-dashoffset:0; } }
}
@media (max-width:600px) { .home-editorial .hero-line-sprig { width:65px; right:2px; top:-19px; opacity:.5; } }
/* Draw the stem, leaves and small accents in sequence, then let the sprig settle. */
.home-editorial .hero-line-sprig { width:112px; opacity:.82; stroke-width:1.6; }
@media (prefers-reduced-motion:no-preference) {
  .home-editorial .hero-line-sprig { transform-origin:20% 90%; animation:hero-sprig-settle 4.2s ease-in-out both; }
  .home-editorial .hero-line-sprig path { stroke-dasharray:100; animation:hero-sprig-draw 1.9s ease-in-out both; }
  .home-editorial .hero-line-sprig .hero-line-leaf { animation-delay:.5s; }
  .home-editorial .hero-line-sprig .hero-line-detail { animation-delay:1.2s; }
  @keyframes hero-sprig-draw { from { stroke-dashoffset:100; } to { stroke-dashoffset:0; } }
  @keyframes hero-sprig-settle { 0%, 60% { transform:rotate(-4deg); } 78% { transform:rotate(3deg); } 100% { transform:rotate(0); } }
}
@media (max-width:600px) { .home-editorial .hero-line-sprig { width:72px; opacity:.75; } }
@media (min-width:601px) { .home-editorial .hero-line-sprig { top:-50px; } }
