/* ============================================================
   BEVP UNIFIED HOMEPAGE · STUDY V3.1 (2026-11-06, four corrections on V3)
   One design system for the Direction A header and menu, the rebuilt
   Real Science through Field Brief sections, the footer and the
   Donate / 988 rail. Loads after css/tokens.css and css/v13-baseline.css,
   which continue to style the approved upper homepage (hero, quote,
   mission, heartbeat pop-up).

   Breakpoints (used consistently below):
     1100px  desktop compositions below this width become tablet layouts
     1024px  persistent Donate / 988 rail appears
      900px  menu switches from index-and-panel to expanding groups
      699px  phone layouts; header actions move into the menu. iPad mini
             portrait (744px) and 768px tablets keep the tablet layout.
      520px  narrow phone adjustments
   ============================================================ */

:root{
  /* Typography. The story families continue the approved upper homepage and
     the recovered mobile source; the header, menu and rail keep Direction A. */
  --u-ff-title:"Anton",var(--ff-display),Impact,sans-serif;
  --u-ff-label:"Russo One",var(--ff-display),sans-serif;
  --u-ff-body:"Barlow",var(--ff-body),sans-serif;
  --u-ff-edit:var(--ff-edit);
  --u-ff-nav:var(--ff-display);
  --u-ff-ui:var(--ff-body);
  --u-ff-mono:var(--ff-mono);

  --u-fs-title:clamp(52px,7vw,100px);      /* section titles, same scale as the mission title */
  --u-fs-h3:clamp(28px,2.7vw,42px);
  --u-fs-h4:clamp(22px,1.9vw,28px);
  --u-fs-deck:clamp(20px,2vw,28px);
  --u-fs-lead:clamp(18px,1.5vw,21px);
  --u-fs-body:clamp(16px,1.15vw,18px);
  --u-fs-small:14px;
  --u-fs-label:12px;
  --u-lh-tight:1.04;
  --u-lh-body:1.55;
  --u-fw-body:400;
  --u-fw-strong:600;

  /* Colour (V13 tokens) */
  --u-ink:var(--ink);
  --u-bone:var(--bone);
  --u-paper:var(--bone-2);
  --u-red:var(--orange);
  --u-red-deep:#8c201c;
  --u-foot:var(--foot-ink);
  --u-text-soft:var(--ink-soft);
  --u-bone-soft:rgba(236,227,208,.82);
  --u-bone-dim:rgba(236,227,208,.42);
  --u-rule-ink:rgba(14,13,11,.16);
  --u-rule-bone:rgba(236,227,208,.22);
  --u-error-light:#9b2823;
  --u-error-dark:var(--foot-blush);

  /* Spacing and widths */
  --u-s1:4px;--u-s2:8px;--u-s3:12px;--u-s4:16px;--u-s5:24px;--u-s6:32px;--u-s7:48px;--u-s8:64px;--u-s9:96px;
  --u-section-y:clamp(72px,9vw,136px);
  --u-wrap:var(--max);
  --u-pad-x:var(--pad-x);
  --u-gap:clamp(32px,5vw,88px);

  /* Controls */
  --u-radius:999px;
  --u-radius-field:16px;
  --u-btn-h:52px;
  --u-btn-h-sm:44px;
  --u-tap:44px;
  --u-header-h:96px;
  --u-dock-h:64px;
  --u-dock-gap:12px;
  --u-dock-clear:calc(var(--u-dock-h) + 2 * var(--u-dock-gap) + env(safe-area-inset-bottom,0px));
  --u-focus:3px solid var(--orange);

  /* One stacking order for everything that sits above the page.
     Page content stays at auto. Dock above the menu so Donate and 988
     stay reachable while it is open; header above both. */
  --u-z-dock:40;
  --u-z-menu:30;
  --u-z-header:50;
  --u-z-qa:60;
  --u-focus-offset:3px;

  /* Images */
  --u-photo-filter:grayscale(1) contrast(1.06);
}
@media (max-width:699px){:root{--u-header-h:76px}}

html{scroll-padding-top:calc(var(--u-header-h) + 16px);scrollbar-gutter:stable}
/* The header is fixed, so the page starts below it. */
body{padding-top:var(--u-header-h)}
/* Scroll lock while the menu is open. The body is pinned at the current
   offset (set inline by the script) and restored on close. This keeps the
   viewport as the only scroll container, so nothing fixed moves. */
html.u-menu-open body{position:fixed;left:0;right:0;width:100%;overflow:hidden}
@media (max-width:1024px){html{scroll-padding-bottom:calc(var(--u-dock-clear) + 12px)}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.u-sprite{position:absolute;width:0;height:0;overflow:hidden}
.skip-link{position:absolute;left:16px;top:-80px;z-index:300;padding:12px 20px;border-radius:var(--u-radius);background:var(--u-ink);color:var(--u-bone);font-family:var(--u-ff-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.skip-link:focus{top:12px}
.bevp-feather{fill:var(--feather-fill,var(--orange))}
.bevp-eye{fill:var(--eye-fill,var(--ink))}
:where(.u-header,.u-menu,.u-dock,main,.u-foot,.u-review) a:focus-visible,
:where(.u-header,.u-menu,.u-dock,main,.u-foot,.u-review) button:focus-visible,
:where(main,.u-foot) summary:focus-visible,
:where(main) [role="tabpanel"]:focus-visible{outline:var(--u-focus);outline-offset:var(--u-focus-offset)}
main [hidden]{display:none!important}

/* ============================================================
   A. HEADER (Direction A · Command Index)
   ============================================================ */
.u-header{position:fixed;top:0;left:0;right:0;z-index:var(--u-z-header);background:var(--u-bone);border-bottom:1px solid var(--u-rule-ink)}
.u-header__inner{
  height:var(--u-header-h);max-width:1480px;margin-inline:auto;
  padding-inline:max(var(--u-pad-x),env(safe-area-inset-left,0px)) max(var(--u-pad-x),env(safe-area-inset-right,0px));
  display:flex;align-items:center;gap:clamp(16px,2vw,32px);
}
.u-brand{margin-right:auto;display:flex;align-items:center;min-height:44px}
.u-brand img{height:56px;width:auto}
.u-actions{display:flex;align-items:center;gap:10px}
.u-pill{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:var(--u-btn-h-sm);padding:0 22px;border-radius:var(--u-radius);white-space:nowrap;
  font-family:var(--u-ff-nav);font-weight:800;font-size:15px;letter-spacing:.1em;text-transform:uppercase;line-height:1;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.u-pill svg{width:18px;height:18px;flex:none}
.u-pill--outline{border:1.5px solid var(--u-ink);color:var(--u-ink)}
@media (hover:hover){.u-pill--outline:hover{background:var(--u-ink);color:var(--u-bone)}}
.u-pill--red{background:var(--u-red);color:#fff;box-shadow:0 6px 18px -8px rgba(183,44,37,.7)}
@media (hover:hover){.u-pill--red:hover{background:var(--orange-deep)}}
.u-pill--ghost{color:var(--u-ink);padding:0 16px}
@media (hover:hover){.u-pill--ghost:hover{background:rgba(14,13,11,.07)}}

.u-trigger{display:inline-flex;align-items:center;gap:14px;height:56px;padding:0;color:var(--u-ink);background:none;border:0;cursor:pointer}
.u-trigger:focus-visible{border-radius:var(--u-radius)}
.u-trigger[data-quiet-focus]:focus-visible{outline:none}
.u-trigger__label{position:relative;display:block;height:14px;overflow:hidden;font-family:var(--u-ff-mono);font-weight:500;font-size:12px;letter-spacing:.24em;text-transform:uppercase;line-height:14px}
.u-trigger__label span{display:block;transition:transform .3s var(--ease-out)}
.u-trigger[aria-expanded="true"] .u-trigger__label span{transform:translateY(-100%)}
.u-trigger__disc{position:relative;width:56px;height:56px;border-radius:50%;flex:none;background:var(--u-ink);transition:background .25s ease}
.u-trigger__disc span{position:absolute;right:16px;height:2px;border-radius:2px;background:var(--u-bone);transition:transform .3s var(--ease-out),width .3s var(--ease-out),right .3s var(--ease-out),top .3s var(--ease-out)}
.u-trigger__disc span:nth-child(1){top:23px;width:24px}
.u-trigger__disc span:nth-child(2){top:31px;width:14px}
.u-trigger:hover .u-trigger__disc{background:var(--u-red)}
.u-trigger:hover .u-trigger__disc span:nth-child(2){width:24px}
.u-trigger[aria-expanded="true"] .u-trigger__disc{background:var(--u-red)}
.u-trigger[aria-expanded="true"] .u-trigger__disc span{right:17px;width:22px;top:27px}
.u-trigger[aria-expanded="true"] .u-trigger__disc span:nth-child(1){transform:rotate(45deg)}
.u-trigger[aria-expanded="true"] .u-trigger__disc span:nth-child(2){transform:rotate(-45deg)}

/* ============================================================
   MENU
   ============================================================ */
.u-menu{
  position:fixed;left:0;right:0;bottom:0;top:var(--u-header-h);z-index:var(--u-z-menu);
  /* Ink band behind the header, so no page colour can show between them. */
  box-shadow:0 calc(-1 * var(--u-header-h)) 0 0 var(--u-ink);
  outline:none;
  display:flex;flex-direction:column;background:var(--u-ink);color:var(--u-bone);
  overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  opacity:0;visibility:hidden;transition:opacity .3s var(--ease-out),visibility 0s linear .3s;
  --feather-fill:var(--u-bone);--eye-fill:var(--u-bone);
}
.u-menu.is-open{opacity:1;visibility:visible;transition:opacity .3s var(--ease-out)}
.u-menu[hidden]{display:none}
.u-menu__feather{position:absolute;right:-4vw;bottom:-10vh;width:clamp(360px,42vw,680px);height:auto;opacity:.06;pointer-events:none}
.u-menu__account{display:none}
.u-menu__body{position:relative;flex:1;width:100%;max-width:var(--u-wrap);margin-inline:auto;padding:clamp(40px,6vh,80px) var(--u-pad-x) 32px}

/* Wide menu: category column and the selected panel beside it */
.u-index{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);column-gap:clamp(40px,6vw,104px);row-gap:clamp(2px,.6vh,8px);align-items:start;list-style:none}
.u-index__item{display:contents}
.u-index__heading{grid-column:1;margin:0;font:inherit}
.u-index__btn{
  display:inline-flex;align-items:center;gap:18px;padding:4px 0;background:none;border:0;cursor:pointer;text-align:left;
  font-family:var(--u-ff-nav);font-weight:800;text-transform:uppercase;font-size:clamp(40px,4.5vw,70px);line-height:1;letter-spacing:.005em;white-space:nowrap;
  color:var(--u-bone-dim);transition:color .2s ease;
}
.u-index__btn svg{width:.5em;height:.5em;flex:none;color:var(--u-red);opacity:0;transform:translateX(-12px);transition:opacity .2s ease,transform .25s var(--ease-out)}
.u-index__btn:hover,.u-index__btn[aria-expanded="true"]{color:var(--u-bone)}
.u-index__btn[aria-expanded="true"] svg{opacity:1;transform:none}
.u-index__btn:focus-visible{outline:3px solid var(--u-red);outline-offset:6px;border-radius:8px}
.u-index__sign{display:none}
.u-panel{grid-column:2;grid-row:1 / span 6;padding-top:clamp(8px,1.4vw,18px)}
.u-index__item.is-open .u-panel{animation:u-panel-in .35s var(--ease-out)}
@keyframes u-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.u-panel__kicker{font-family:var(--u-ff-mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#e0574f}
.u-panel__lede{margin-top:14px;max-width:26ch;font-family:var(--u-ff-edit);font-style:italic;font-size:clamp(22px,2vw,30px);line-height:1.3;color:var(--u-bone)}
.u-panel__links{margin-top:32px;display:grid;gap:4px;list-style:none}
.u-panel__links a{
  display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;padding:0 20px;margin-inline:-20px;border-radius:var(--u-radius);
  font-family:var(--u-ff-ui);font-weight:500;font-size:20px;color:var(--u-bone-soft);transition:background .2s ease,color .2s ease;
}
.u-panel__links a svg{width:20px;height:20px;flex:none;color:var(--u-red);opacity:0;transform:translateX(-6px);transition:opacity .2s,transform .2s}
.u-panel__links a:hover,.u-panel__links a:focus-visible{background:rgba(236,227,208,.08);color:var(--u-bone)}
.u-panel__links a:hover svg,.u-panel__links a:focus-visible svg{opacity:1;transform:none}
.u-menu a:focus-visible,.u-menu button:focus-visible{outline:3px solid var(--u-red);outline-offset:3px}
.u-menu__foot{
  position:relative;width:100%;max-width:var(--u-wrap);margin-inline:auto;
  padding:20px var(--u-pad-x) calc(28px + env(safe-area-inset-bottom,0px));
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;font-family:var(--u-ff-ui);font-size:15px;color:var(--u-bone-soft);
}
.u-menu__foot a{color:var(--u-bone);font-weight:600;text-decoration:underline;text-decoration-color:var(--u-red);text-underline-offset:4px}
.u-menu__org{font-family:var(--u-ff-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--u-bone-dim)}

/* ============================================================
   DONATE / 988 RAIL (Direction A dock) · 1024px and below
   ============================================================ */
.u-dock{display:none}
@media (max-width:1024px){
  .u-dock{
    position:fixed;z-index:var(--u-z-dock);left:var(--u-dock-gap);right:var(--u-dock-gap);bottom:calc(var(--u-dock-gap) + env(safe-area-inset-bottom,0px));
    display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:6px;max-width:520px;margin-inline:auto;
    border-radius:var(--u-radius);background:rgba(14,13,11,.94);box-shadow:0 12px 30px -10px rgba(0,0,0,.55);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);
  }
  .u-dock a{display:flex;align-items:center;justify-content:center;gap:8px;height:52px;border-radius:var(--u-radius);font-family:var(--u-ff-nav);font-weight:800;font-size:16px;letter-spacing:.08em;text-transform:uppercase}
  .u-dock__donate{background:var(--u-red);color:#fff}
  .u-dock__crisis{background:var(--u-bone);color:var(--u-ink)}
  .u-dock__dot{width:8px;height:8px;border-radius:50%;background:var(--u-red);box-shadow:0 0 0 4px rgba(183,44,37,.18)}
  .u-dock a:focus-visible{outline:3px solid var(--u-bone);outline-offset:2px}
  .u-menu__foot{padding-bottom:calc(var(--u-dock-h) + 2 * var(--u-dock-gap) + 24px + env(safe-area-inset-bottom,0px))}
  body{padding-bottom:0}
}

/* Header and menu at tablet widths */
@media (max-width:1100px) and (min-width:700px){
  .u-pill{padding:0 16px;font-size:14px}
  .u-trigger__label{display:none}
}

/* Menu below 900px: expanding groups */
@media (max-width:899px){
  .u-menu__body{padding:12px calc(var(--u-pad-x) - 12px) 8px}
  .u-index{display:grid;grid-template-columns:1fr;gap:4px}
  .u-index__item{display:block;border-radius:24px;transition:background .2s ease}
  .u-index__item.is-open{background:rgba(236,227,208,.06)}
  .u-index__heading{display:block}
  .u-index__btn{display:flex;width:100%;justify-content:space-between;min-height:64px;padding:0 6px 0 12px;font-size:clamp(28px,7.4vw,44px);color:var(--u-bone);white-space:normal;border-radius:24px}
  .u-index__btn > svg{display:none}
  .u-index__btn:focus-visible{outline-offset:-3px}
  .u-index__sign{
    position:relative;display:block;flex:none;width:44px;height:44px;border-radius:50%;
    border:1.5px solid rgba(236,227,208,.35);transition:background .2s ease,border-color .2s ease;
  }
  .u-index__sign::before,.u-index__sign::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;border-radius:2px;background:var(--u-bone);transform:translate(-50%,-50%)}
  .u-index__sign::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .3s var(--ease-out)}
  .u-index__btn[aria-expanded="true"] .u-index__sign{background:var(--u-red);border-color:var(--u-red)}
  .u-index__btn[aria-expanded="true"] .u-index__sign::after{transform:translate(-50%,-50%) rotate(0deg)}
  .u-panel{padding:0 12px 14px}
  .u-index__item.is-open .u-panel{animation:none}
  .u-panel__kicker{display:none}
  .u-panel__lede{margin:0 0 6px;padding:0 14px;max-width:none;font-size:18px;color:var(--u-bone-soft)}
  .u-panel__links{margin-top:0;gap:0}
  .u-panel__links a{min-height:48px;margin-inline:0;padding:0 14px;font-size:18px}
  .u-panel__links a svg{opacity:.7;transform:none}
}

/* Short landscape screens (phones turned sideways): fit more of the menu above the rail. */
@media (max-height:520px) and (orientation:landscape){
  .u-menu__body{padding-top:12px;padding-bottom:8px}
  .u-index{row-gap:0}
  .u-index__btn{font-size:clamp(24px,3.6vw,34px);min-height:48px}
  .u-panel__lede{font-size:18px}
  .u-panel__links{margin-top:12px}
  .u-panel__links a{min-height:44px;font-size:17px}
}

/* Phone header and menu */
@media (max-width:699px){
  .u-brand img{height:44px}
  .u-actions{display:none}
  .u-trigger{gap:10px;height:48px}
  .u-trigger__disc{width:48px;height:48px}
  .u-trigger__disc span{right:13px}
  .u-trigger__disc span:nth-child(1){top:19px;width:22px}
  .u-trigger__disc span:nth-child(2){top:27px;width:13px}
  .u-trigger[aria-expanded="true"] .u-trigger__disc span{right:14px;width:20px;top:23px}
  .u-menu__feather{right:-34vw;bottom:auto;top:30%;width:120vw;opacity:.05}
  .u-menu__account{
    position:sticky;top:0;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;
    padding:16px max(var(--u-pad-x),env(safe-area-inset-left,0px)) 12px;background:var(--u-ink);
  }
  .u-menu__account .u-pill{height:50px;font-size:15px}
  .u-pill--outline-light{border:1.5px solid rgba(236,227,208,.6);color:var(--u-bone)}
  .u-pill--ghost-light{background:rgba(236,227,208,.1);color:var(--u-bone)}
  .u-menu__foot{flex-direction:column;font-size:14px;padding-top:24px}
}
@media (max-width:360px){.u-trigger__label{display:none}}

/* ============================================================
   SHARED SECTION PARTS
   ============================================================ */
.u-section{position:relative;padding:var(--u-section-y) 0;font-family:var(--u-ff-body);font-size:var(--u-fs-body);line-height:var(--u-lh-body)}
.u-wrap{width:100%;max-width:var(--u-wrap);margin-inline:auto;padding-inline:max(var(--u-pad-x),env(safe-area-inset-left,0px)) max(var(--u-pad-x),env(safe-area-inset-right,0px))}
.u-title{font-family:var(--u-ff-title);font-weight:400;font-size:var(--u-fs-title);line-height:var(--u-lh-tight);text-transform:uppercase;letter-spacing:-.005em;margin:0}
.u-deck{margin-top:var(--u-s5);max-width:40ch;font-family:var(--u-ff-edit);font-style:italic;font-size:var(--u-fs-deck);line-height:1.32}
.u-lead{margin-top:var(--u-s5);max-width:58ch;font-size:var(--u-fs-lead);line-height:1.55}
.u-section h3{font-family:var(--u-ff-title);font-weight:400;font-size:var(--u-fs-h3);line-height:1.06;text-transform:uppercase;letter-spacing:0}
.u-section p{margin:0}

.u-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:var(--u-btn-h);padding:0 26px;
  border:2px solid transparent;border-radius:var(--u-radius);cursor:pointer;text-decoration:none;white-space:nowrap;
  font-family:var(--u-ff-label);font-weight:400;font-size:13px;letter-spacing:.06em;text-transform:uppercase;line-height:1.1;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.u-btn svg{width:18px;height:18px;flex:none}
.u-btn--red{background:var(--u-red);border-color:var(--u-red);color:#fff}
@media (hover:hover){.u-btn--red:hover{background:var(--u-red-deep);border-color:var(--u-red-deep)}}
.u-btn--line{border-color:var(--u-ink);color:var(--u-ink);background:transparent}
@media (hover:hover){.u-btn--line:hover{background:var(--u-ink);color:var(--u-bone)}}
.u-btn--line-light{border-color:rgba(236,227,208,.7);color:var(--u-bone);background:transparent}
@media (hover:hover){.u-btn--line-light:hover{background:var(--u-bone);border-color:var(--u-bone);color:var(--u-ink)}}
.u-btn--bone{background:var(--u-bone);border-color:var(--u-bone);color:var(--u-ink)}
@media (hover:hover){.u-btn--bone:hover{background:#fff;border-color:#fff}}
.u-btn--sm{min-height:var(--u-btn-h-sm);padding:0 20px;font-size:12px}
.u-btn-row{display:flex;flex-wrap:wrap;gap:12px}
.u-link{display:inline-flex;align-items:center;min-height:var(--u-tap);font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.u-link:hover{text-decoration-thickness:2px}

.u-photo{position:relative;margin:0;overflow:hidden;background:#1b1a17}
.u-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:var(--u-photo-filter)}

/* ============================================================
   REAL SCIENCE
   ============================================================ */
.u-science,.u-outcomes{background:var(--u-bone)}
.u-science{color:var(--u-ink)}
.u-science__grid{
  display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);
  grid-template-areas:"head fig" "tabs fig" "panels fig" "cta fig";
  grid-template-rows:auto auto auto 1fr;column-gap:var(--u-gap);align-items:start;
}
.u-science__head{grid-area:head}
/* V3.1: the deck fills its column (about 45 to 55 characters a line at desktop). */
.u-science__head .u-deck{color:var(--u-text-soft);max-width:min(100%,30em)}
/* V3.1b: a set gap under the heading. Needs two classes to beat .u-section p{margin:0}. */
.u-science__head .u-deck{margin-top:24px}
.u-anatomy{
  grid-area:fig;position:sticky;top:calc(var(--u-header-h) + 24px);margin:0;
  height:min(calc(100svh - var(--u-header-h) - 64px),780px);min-height:520px;display:flex;flex-direction:column;align-items:center;
}
.u-anatomy__drawing{flex:1;min-height:0;width:100%;display:block;mix-blend-mode:multiply}
.u-anatomy__base{opacity:.5;filter:saturate(.45);transition:opacity .35s ease,filter .35s ease}
.u-anatomy__focus{opacity:0;transition:opacity .35s ease}
.u-anatomy[data-mode="therapy"] .u-anatomy__focus--therapy,
.u-anatomy[data-mode="biomarkers"] .u-anatomy__focus--biomarkers{opacity:1}
.u-anatomy[data-mode="cadence"] .u-anatomy__base{opacity:1;filter:saturate(.85)}
.u-anatomy__cap{margin-top:var(--u-s4);font-family:var(--u-ff-edit);font-style:italic;font-size:18px;color:var(--u-text-soft);text-align:center}

.u-topics{grid-area:tabs;margin-top:var(--u-s6);display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.u-topic{
  display:inline-flex;align-items:center;gap:16px;min-height:var(--u-tap);padding:2px 0;background:none;border:0;cursor:pointer;
  font-family:var(--u-ff-title);font-weight:400;font-size:clamp(40px,4.4vw,66px);line-height:1.04;text-transform:uppercase;
  color:rgba(14,13,11,.3);transition:color .2s ease;
}
.u-topic svg{width:.46em;height:.46em;flex:none;color:var(--u-red);opacity:0;transform:translateX(-10px);transition:opacity .2s ease,transform .25s var(--ease-out)}
.u-topic:hover{color:rgba(14,13,11,.62)}
.u-topic[aria-selected="true"]{color:var(--u-ink)}
.u-topic[aria-selected="true"] svg{opacity:1;transform:none}
.u-topic:focus-visible{border-radius:10px;outline-offset:6px}

.u-science__panels{grid-area:panels;display:grid;margin-top:var(--u-s6)}
.u-science__panel{grid-area:1 / 1;max-width:54ch}
main .u-science__panel[hidden]{display:block!important;visibility:hidden}
.u-partner{display:flex;align-items:center;gap:var(--u-s4);min-height:56px}
.u-partner p{font-family:var(--u-ff-label);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--u-text-soft)}
.u-partner img{height:46px;width:auto;max-width:200px;object-fit:contain}
.u-partner .u-partner__euvita{height:30px}
.u-partner .u-partner__seal{height:56px;border-radius:50%}
.u-science__panel h3{margin:var(--u-s5) 0 var(--u-s4)}
.u-science__panel p + p{margin-top:var(--u-s3)}
.u-science__cta{grid-area:cta;justify-self:start;margin-top:var(--u-s7)}

/* ============================================================
   REAL HELP
   ============================================================ */
.u-help{background:var(--u-ink);color:var(--u-bone)}
/* V3.1b: heading and intro span the full content width, edge to edge with the photograph. */
.u-help__intro{max-width:none}
.u-help .u-lead{color:var(--u-bone-soft);max-width:none}
/* V3.1: one three-measure line. Each measure sits above its caption; the caption is the dt so it is read first. */
.u-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--u-gap);margin:var(--u-s7) 0 0;padding:0}
.u-fact{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:var(--u-s2)}
.u-fact dd{margin:0;font-family:var(--u-ff-title);font-weight:400;font-size:clamp(40px,4.2vw,64px);line-height:1;text-transform:uppercase;color:var(--u-bone);white-space:nowrap}
.u-fact dt{font-size:17px;line-height:1.4;color:var(--u-bone-soft);max-width:24ch}
.u-help__photo{margin-top:var(--u-s8);aspect-ratio:21 / 9}
.u-help__photo img{object-position:center 62%}
.u-help__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:var(--u-gap);margin-top:var(--u-s8);align-items:start}
.u-q{border-bottom:1px solid var(--u-rule-bone)}
.u-q:first-child{border-top:1px solid var(--u-rule-bone)}
.u-q summary{display:flex;align-items:center;justify-content:space-between;gap:var(--u-s4);min-height:68px;padding:var(--u-s3) 0;cursor:pointer;list-style:none;font-weight:600;font-size:clamp(19px,1.6vw,22px);line-height:1.3}
.u-q summary::-webkit-details-marker{display:none}
.u-q summary svg{width:24px;height:24px;flex:none;color:#e0574f;transition:transform .25s var(--ease-out)}
.u-q[open] summary svg{transform:rotate(180deg)}
.u-q summary:focus-visible{outline-offset:2px;border-radius:6px}
.u-q__body{padding:0 0 var(--u-s5);max-width:62ch;color:var(--u-bone-soft)}
.u-q__body p + p{margin-top:var(--u-s3)}
.u-help__act{position:sticky;top:calc(var(--u-header-h) + 24px);display:grid;gap:var(--u-s5);justify-items:start}
.u-status{display:flex;align-items:flex-start;gap:12px;font-family:var(--u-ff-label);font-size:14px;letter-spacing:.06em;text-transform:uppercase;line-height:1.4}
.u-status__dot{width:12px;height:12px;margin-top:3px;flex:none;border-radius:50%;border:2px solid var(--u-bone)}
html[data-recruitment="open"] .u-status__dot{background:#e0574f;border-color:#e0574f;box-shadow:0 0 0 4px rgba(224,87,79,.22)}
html[data-recruitment="paused"] .u-status__dot{border-style:dashed}
.u-help__note{color:var(--u-bone-soft);max-width:44ch}
.u-help__fund{font-size:var(--u-fs-small);line-height:1.55;color:var(--u-bone-soft);max-width:46ch}
.u-help .u-link{color:var(--u-bone)}

.u-assist{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:var(--u-gap);margin-top:var(--u-s8);padding-top:var(--u-s7);border-top:1px solid var(--u-rule-bone)}
.u-assist__intro p{margin-top:var(--u-s4);color:var(--u-bone-soft);max-width:44ch}
.u-assist .u-done{grid-column:2}

/* Forms (assistance and Field Brief) */
.u-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--u-s5) var(--u-s4)}
.u-field{display:grid;gap:var(--u-s2);align-content:start}
.u-field--wide{grid-column:1 / -1}
.u-field label{font-family:var(--u-ff-label);font-size:var(--u-fs-label);letter-spacing:.1em;text-transform:uppercase}
.u-field input,.u-field select,.u-field textarea{
  width:100%;min-height:var(--u-btn-h);padding:0 22px;border-radius:var(--u-radius);font-family:var(--u-ff-body);font-size:17px;
  border:1.5px solid rgba(14,13,11,.4);background:rgba(255,255,255,.55);color:var(--u-ink);
}
.u-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%23ECE3D0' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;background-size:20px;padding-right:48px}
.u-field textarea{min-height:132px;padding:16px 22px;border-radius:var(--u-radius-field);resize:vertical}
.u-field input:focus-visible,.u-field select:focus-visible,.u-field textarea:focus-visible{outline:var(--u-focus);outline-offset:2px}
.u-field [aria-invalid="true"]{border-color:var(--u-error-light)}
.u-help .u-field input,.u-help .u-field select,.u-help .u-field textarea{border-color:rgba(236,227,208,.45);background:rgba(236,227,208,.06);color:var(--u-bone)}
.u-help .u-field select option{color:var(--u-ink)}
.u-help .u-field [aria-invalid="true"]{border-color:var(--u-error-dark)}
.u-hint{font-size:var(--u-fs-small);color:var(--u-bone-soft)}
.u-error{font-size:var(--u-fs-small);font-weight:600;color:var(--u-error-light)}
.u-help .u-error{color:var(--u-error-dark)}
.u-check{display:flex;align-items:flex-start;gap:12px;min-height:var(--u-tap);font-size:16px;line-height:1.45;cursor:pointer}
.u-check input{width:22px;height:22px;margin:1px 0 0;flex:none;accent-color:var(--u-red)}
.u-check a{text-decoration:underline;text-underline-offset:4px}
.u-form__foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--u-s4) var(--u-s5)}
.u-fine{font-size:var(--u-fs-small);color:var(--u-text-soft)}
.u-fine a{text-decoration:underline;text-underline-offset:4px}
.u-help .u-fine{color:var(--u-bone-soft)}
.u-done{display:grid;gap:var(--u-s3);justify-items:start;align-content:start}
.u-done:focus{outline:none}
.u-done:focus-visible{outline:var(--u-focus);outline-offset:6px}
.u-done p{color:inherit;opacity:.85}
.u-done .u-btn{margin-top:var(--u-s3)}

/* ============================================================
   REAL OUTCOMES
   ============================================================ */
.u-outcomes{color:var(--u-ink)}
.u-outcomes__head .u-deck{color:var(--u-text-soft)}
.u-outcomes__photo{margin-top:var(--u-s7);aspect-ratio:21 / 9}
.u-outcomes__photo img{object-position:center 40%}
.u-outcomes__photo figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:clamp(24px,4vw,56px);
  display:grid;gap:var(--u-s3);color:var(--u-bone);
  background:linear-gradient(0deg,rgba(14,13,11,.86) 0%,rgba(14,13,11,.55) 55%,rgba(14,13,11,0) 100%);
}
.u-outcomes__photo figcaption span{font-family:var(--u-ff-label);font-size:var(--u-fs-label);letter-spacing:.12em;text-transform:uppercase}
.u-outcomes__photo figcaption strong{font-family:var(--u-ff-title);font-weight:400;font-size:clamp(40px,5.4vw,88px);line-height:1;text-transform:uppercase}
.u-outcomes__grid{display:grid;grid-template-columns:minmax(max-content,5fr) minmax(0,7fr);column-gap:var(--u-gap);margin-top:var(--u-s7);align-items:start}
.u-prompt{font-family:var(--u-ff-label);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.u-goals{display:flex;flex-wrap:nowrap;gap:10px;margin-top:var(--u-s4)}
.u-goal,.u-topics--pills .u-topic{
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:var(--u-radius);cursor:pointer;
  border:2px solid var(--u-ink);background:transparent;color:var(--u-ink);
  font-family:var(--u-ff-label);font-size:13px;letter-spacing:.05em;text-transform:uppercase;line-height:1.1;transition:background .2s ease,color .2s ease;
}
@media (hover:hover){.u-goal:hover{background:rgba(14,13,11,.07)}}
.u-goal[aria-selected="true"]{background:var(--u-ink);color:var(--u-bone)}
.u-goal-panel{min-height:150px}
.u-goal-panel p{margin-top:var(--u-s3);max-width:54ch}
.u-outcomes__answer .u-btn{margin-top:var(--u-s6)}
.u-footnote{margin-top:var(--u-s5);font-family:var(--u-ff-edit);font-style:italic;font-size:19px;color:var(--u-text-soft)}

/* ============================================================
   GET INVOLVED
   ============================================================ */
.u-involved{
  overflow:hidden;color:#fff;
  background:linear-gradient(180deg,#b72c25 0%,#9b231e 48%,#5c130f 100%);
  --feather-fill:#fff;--eye-fill:#fff;
}
.u-involved__feather{position:absolute;right:-10%;top:6%;width:clamp(420px,54vw,880px);height:auto;opacity:.08;pointer-events:none}
.u-involved .u-wrap{position:relative}
/* V3.1: section-wide introduction, a larger lead at a long editorial measure. */
/* V3.1b: the intro spans both participation paths. */
.u-involved .u-lead{color:#fff;max-width:none;font-size:clamp(20px,1.75vw,26px);line-height:1.5}
.u-doors{display:grid;grid-template-columns:1fr 1fr;gap:var(--u-gap);margin-top:var(--u-s8)}
.u-door{display:grid;gap:var(--u-s4);align-content:start;justify-items:start;padding-top:var(--u-s5);border-top:2px solid rgba(255,255,255,.55)}
.u-door__label{font-family:var(--u-ff-label);font-size:var(--u-fs-label);letter-spacing:.12em;text-transform:uppercase}
.u-door h3{font-size:clamp(34px,3.6vw,56px)}
.u-door p{max-width:46ch}
.u-door__note{font-family:var(--u-ff-edit);font-style:italic;font-size:19px}
.u-door .u-btn-row{margin-top:var(--u-s3)}
.u-link--light{color:#fff}
.u-paths__title{margin-top:var(--u-s9);padding-top:var(--u-s6);border-top:1px solid rgba(255,255,255,.35);font-family:var(--u-ff-label)!important;font-size:14px!important;letter-spacing:.12em!important;line-height:1.3!important}
.u-paths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--u-s6);margin:var(--u-s5) 0 0;padding:0;list-style:none}
.u-path{display:grid;grid-template-rows:auto 1fr auto;gap:var(--u-s3);justify-items:start}
.u-path h4{font-family:var(--u-ff-title);font-weight:400;font-size:var(--u-fs-h4);line-height:1.1;text-transform:uppercase}
.u-path p{font-size:16px;line-height:1.5}
.u-path .u-btn{margin-top:var(--u-s2)}
.u-events{
  display:flex;align-items:center;justify-content:center;gap:16px;min-height:72px;margin-top:var(--u-s8);padding-top:var(--u-s6);
  border-top:1px solid rgba(255,255,255,.35);font-family:var(--u-ff-title);font-size:clamp(26px,2.6vw,38px);text-transform:uppercase;color:#fff;
}
.u-events svg{width:.8em;height:.8em;transition:transform .2s ease}
.u-events:hover svg{transform:translateX(6px)}
.u-events:focus-visible{border-radius:var(--u-radius)}

/* ============================================================
   FIELD BRIEF
   ============================================================ */
.u-brief{background:var(--u-paper);color:var(--u-ink);padding:clamp(64px,7vw,104px) 0}
.u-brief__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:var(--u-gap);align-items:center}
.u-brief .u-title{font-size:clamp(56px,6.4vw,96px)}
.u-brief .u-deck{color:var(--u-text-soft);max-width:30ch}
.u-brief__form{grid-template-columns:1fr;gap:var(--u-s4)}
.u-brief__row{display:flex;gap:10px}
.u-brief__row input{flex:1;min-width:0}
.u-brief__row .u-btn{flex:none}

/* ============================================================
   D. FOOTER
   ============================================================ */
.u-foot{background:var(--u-foot);color:var(--u-bone);padding:clamp(64px,7vw,96px) 0 calc(40px + env(safe-area-inset-bottom,0px));font-family:var(--u-ff-body)}
.u-foot a{transition:color .2s ease}
.u-foot__top{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--u-gap)}
.u-foot__brand img{width:220px;height:auto}
.u-foot__brand p{margin-top:var(--u-s5);font-family:var(--u-ff-edit);font-style:italic;font-size:19px;line-height:1.4;color:var(--u-bone-soft);max-width:24ch}
.u-foot__nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--u-s6)}
.u-foot__nav h2{font-family:var(--u-ff-label);font-weight:400;font-size:var(--u-fs-label);letter-spacing:.12em;text-transform:uppercase;color:var(--u-bone-soft);margin:0 0 var(--u-s3)}
.u-foot__nav ul,.u-foot__legal ul,.u-foot__account{list-style:none;margin:0;padding:0}
.u-foot__nav a{display:flex;align-items:center;min-height:44px;font-size:17px;line-height:1.3}
.u-foot__nav a:hover,.u-foot__legal a:hover,.u-foot__account a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.u-foot__crisis{display:flex;align-items:center;gap:var(--u-s5);margin-top:var(--u-s8);padding:var(--u-s5) 0;border-top:1px solid var(--u-rule-bone);border-bottom:1px solid var(--u-rule-bone)}
.u-foot__crisis strong{font-family:var(--u-ff-title);font-weight:400;font-size:44px;line-height:1;color:#e0574f}
.u-foot__crisis p{font-size:17px;line-height:1.5;color:var(--u-bone-soft)}
.u-foot__crisis a{color:var(--u-bone);font-weight:600;text-decoration:underline;text-decoration-color:#e0574f;text-underline-offset:4px}
.u-foot__base{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--u-s5);margin-top:var(--u-s6)}
.u-foot__social{display:flex;gap:10px}
.u-foot__social a{display:grid;place-items:center;width:var(--u-tap);height:var(--u-tap);border-radius:50%;border:1px solid var(--u-rule-bone);color:var(--u-bone)}
@media (hover:hover){.u-foot__social a:hover{background:var(--u-bone);color:var(--u-ink)}}
/* V3.1: the icon paths carry no fill of their own; without this they drew in black on the ink footer. */
.u-foot__social svg{width:20px;height:20px;display:block;fill:currentColor}
.u-foot__social a:focus-visible{outline:3px solid var(--u-bone);outline-offset:3px}
.u-foot__account{display:flex;gap:var(--u-s5)}
.u-foot__account a{display:inline-flex;align-items:center;min-height:var(--u-tap);font-family:var(--u-ff-label);font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.u-foot__legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--u-s2) var(--u-s5);margin-top:var(--u-s5);padding-top:var(--u-s5);border-top:1px solid var(--u-rule-bone);font-size:15px;line-height:1.5;color:var(--u-bone-soft)}
.u-foot__legal ul{display:flex;gap:var(--u-s5)}
.u-foot__legal a{display:inline-flex;align-items:center;justify-content:center;min-height:var(--u-tap);min-width:var(--u-tap);color:var(--u-bone)}
@media (max-width:1024px){
  .u-foot{padding-bottom:calc(var(--u-dock-clear) + 32px)}
}

/* ============================================================
   UPPER HOMEPAGE ALIGNMENT WITH THE SHARED SYSTEM
   ============================================================ */
@media (min-width:901px){.home-hero h1{max-width:min(480px,4.7em)}}
/* V13 sets 36px hero buttons on phones and tablets; 44px meets the tap-target minimum. */
.home-hero__button,.home-hero--compact .home-hero__button{min-height:44px}
.heartbeat{z-index:200}
.heartbeat .btn{border-radius:var(--u-radius)}
.heartbeat__close{border-radius:var(--u-radius)}
/* The prompt must fit short screens: V2 cut off its first line at 320x568 and on phones turned sideways. */
.heartbeat{padding:16px}
.heartbeat__card{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}
.heartbeat__close{min-height:44px;min-width:44px}
@media (max-height:640px){
  .heartbeat__card{padding:20px 24px 8px}
  .heartbeat__ask--second{margin-top:14px}
  .heartbeat__words{margin-top:8px}
  .heartbeat__answer{margin-top:10px}
  .heartbeat__actions{margin-top:16px;gap:8px}
  .heartbeat__close{margin-top:4px}
}
@media (max-height:520px) and (orientation:landscape){
  .heartbeat__card{max-width:720px}
  .heartbeat__actions{flex-direction:row;justify-content:center}
}

/* ============================================================
   STUDY CONTROLS (review only)
   ============================================================ */
.u-review{position:fixed;left:16px;bottom:16px;z-index:var(--u-z-qa);font-family:var(--u-ff-ui);font-size:14px}
.u-review[hidden]{display:none}
.u-review__toggle{min-height:var(--u-tap);padding:0 18px;border-radius:var(--u-radius);border:1px solid rgba(236,227,208,.3);background:rgba(14,13,11,.9);color:var(--u-bone);font-family:var(--u-ff-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
.u-review__panel{position:absolute;left:0;bottom:calc(100% + 8px);width:250px;padding:16px 18px;border-radius:20px;background:var(--u-ink);color:var(--u-bone);box-shadow:0 16px 40px -12px rgba(0,0,0,.6)}
.u-review fieldset{border:0;margin:0;padding:0;display:grid;gap:2px}
.u-review legend{margin-bottom:6px;font-family:var(--u-ff-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--u-bone-soft)}
.u-review label{display:flex;align-items:center;gap:10px;min-height:40px;cursor:pointer}
.u-review input{accent-color:var(--u-red);width:18px;height:18px}
.u-review p{margin-top:8px;font-size:12px;color:var(--u-bone-soft)}
@media (max-width:1024px){.u-review{bottom:calc(var(--u-dock-h) + 2 * var(--u-dock-gap) + 8px + env(safe-area-inset-bottom,0px))}}
html.u-menu-open .u-review{display:none}

/* ============================================================
   TABLET · 700px to 1100px
   ============================================================ */
@media (max-width:1100px){
  .u-science__grid{grid-template-columns:minmax(0,6fr) minmax(0,5fr);grid-template-areas:"head head" "tabs fig" "panels fig" "cta fig";grid-template-rows:auto auto auto 1fr}
  .u-science__head .u-deck{max-width:48ch}
  .u-topic{font-size:clamp(36px,4.8vw,52px)}
  .u-anatomy{margin-top:var(--u-s7);height:min(calc(100svh - var(--u-header-h) - 96px),620px);min-height:440px}
  .u-facts{column-gap:var(--u-s6)}
  .u-help__photo{aspect-ratio:16 / 8}
  .u-help__grid{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
  .u-outcomes__photo{aspect-ratio:16 / 9}
  .u-outcomes__grid{grid-template-columns:1fr;row-gap:var(--u-s6)}
  .u-paths{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1280px){
  .u-foot__top{grid-template-columns:1fr;row-gap:var(--u-s7)}
}
@media (max-width:900px){
  .u-help__grid{grid-template-columns:1fr;row-gap:var(--u-s7)}
  .u-help__act{position:static}
  .u-assist{grid-template-columns:1fr;row-gap:var(--u-s6)}
  .u-assist .u-done{grid-column:auto}
  .u-brief__grid{grid-template-columns:1fr;row-gap:var(--u-s6)}
  .u-doors{grid-template-columns:1fr;gap:var(--u-s7)}
  .u-door p,.u-door__note{max-width:52ch}
  .u-foot__nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ============================================================
   PHONE · 699px and below
   ============================================================ */
@media (max-width:699px){
  .u-section{padding:72px 0}
  .u-science__grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "fig" "tabs" "panels" "cta";grid-template-rows:none}
  .u-anatomy{position:relative;top:auto;height:auto;min-height:0;margin-top:var(--u-s5)}
  .u-anatomy__drawing{flex:none;height:clamp(220px,34svh,300px)}
  .u-anatomy__cap{margin-top:var(--u-s2);font-size:17px}
  .u-topics{margin-top:var(--u-s5);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%}
  .u-topic{
    justify-content:center;min-height:48px;padding:0 8px;border-radius:var(--u-radius);border:2px solid var(--u-ink);color:var(--u-ink);
    font-family:var(--u-ff-label);font-size:clamp(11px,3.3vw,13px);letter-spacing:.04em;
  }
  .u-topic svg{display:none}
  .u-topic:hover{color:var(--u-ink);background:rgba(14,13,11,.07)}
  .u-topic[aria-selected="true"]{background:var(--u-ink);color:var(--u-bone)}
  .u-science__panels{margin-top:var(--u-s5)}
  .u-science__cta{justify-self:stretch;margin-top:var(--u-s6)}
  /* Phones: three rows, measure and caption side by side on a shared baseline. */
  .u-facts{grid-template-columns:max-content minmax(0,1fr);align-items:baseline;column-gap:var(--u-s4);row-gap:var(--u-s4);margin-top:var(--u-s6)}
  .u-fact{display:contents}
  .u-fact dd{grid-column:1;font-size:clamp(32px,9vw,40px)}
  .u-fact dt{grid-column:2;font-size:16px}
  .u-fact:nth-child(1) > *{grid-row:1}
  .u-fact:nth-child(2) > *{grid-row:2}
  .u-fact:nth-child(3) > *{grid-row:3}
  .u-help__photo{margin-top:var(--u-s7);aspect-ratio:4 / 3;margin-inline:calc(-1 * var(--u-pad-x))}
  .u-help__grid{margin-top:var(--u-s7)}
  .u-help__act,.u-help__act .u-btn-row{justify-items:stretch;width:100%}
  .u-btn-row{flex-direction:column;align-items:stretch}
  .u-btn-row .u-btn{width:100%}
  .u-form{grid-template-columns:1fr}
  .u-form__foot{flex-direction:column;align-items:stretch}
  .u-form__foot .u-btn{width:100%}
  .u-outcomes__photo{aspect-ratio:4 / 3.4;margin-inline:calc(-1 * var(--u-pad-x))}
  .u-goals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .u-goal{padding:0 6px;font-size:clamp(11px,3.3vw,13px);letter-spacing:.03em;text-align:center}
  .u-outcomes__photo figcaption strong{font-size:clamp(34px,10vw,48px)}
  .u-outcomes__answer .u-btn{width:100%}
  .u-doors{grid-template-columns:1fr;gap:var(--u-s7);margin-top:var(--u-s7)}
  .u-involved .u-lead{font-size:18px}
  .u-science__head .u-deck{margin-top:20px}
  .u-door{gap:var(--u-s4)}
  .u-door h3{font-size:clamp(32px,9vw,40px)}
  .u-door .u-btn-row{flex-direction:row;align-items:center}
  .u-door .u-btn-row .u-btn{width:auto}
  .u-paths__title{margin-top:var(--u-s8)}
  .u-paths{grid-template-columns:1fr;gap:var(--u-s7)}
  .u-path h4{font-size:26px}
  .u-path p{max-width:40ch}
  .u-events{justify-content:flex-start;gap:12px;min-height:56px;margin-top:var(--u-s8);font-size:26px;line-height:1.1}
  .u-foot__brand img{width:180px}
  .u-foot__crisis{align-items:flex-start;flex-direction:column;gap:var(--u-s2)}
  .u-foot__legal{flex-direction:column;align-items:flex-start}
}
@media (max-width:520px){
  .u-goals{grid-template-columns:1fr;gap:8px}
  .u-goal{min-height:48px;font-size:13px;letter-spacing:.05em}
  .u-brief__row{flex-direction:column}
  .u-brief__row .u-btn{width:100%}
}
@media (max-width:360px){
  .u-foot__nav{grid-template-columns:1fr}
  .u-topics{gap:6px}
  .u-topic{padding:0 4px;font-size:10px;letter-spacing:.02em}
}

@media (prefers-reduced-motion:reduce){
  .u-menu,.u-menu.is-open,.u-trigger__label span,.u-trigger__disc span,.u-index__btn svg,.u-index__item.is-open .u-panel,
  .u-anatomy__base,.u-anatomy__focus,.u-topic,.u-topic svg,.u-q summary svg,.u-events svg{transition:none;animation:none}
}

/* Short landscape screens: a slimmer header and rail so more of the page shows between them.
   Every control stays at least 44px. Placed last so it wins over the width-based rules. */
@media (max-height:520px) and (orientation:landscape){
  :root{--u-header-h:64px;--u-dock-h:56px;--u-dock-gap:8px}
  .u-brand img{height:40px}
  .u-trigger{height:44px}
  .u-dock a{height:44px;font-size:15px}
  .u-dock{max-width:440px}
}
