/* AVERT, American Volunteer Emergency Response Team
   Site styles. Hand built for THATDEVELOPERGUY. No framework, no build step.
   Sections: tokens, base, type, buttons, header, menu, hero, sections, components, forms, footer, pages, motion. */

/* Fonts, self hosted */
@font-face{font-family:"Archivo";src:url(/assets/fonts/archivo-wdth.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/assets/fonts/source-serif-4-opsz.woff2) format("woff2");font-weight:200 900;font-display:swap}
@font-face{font-family:"Source Serif 4";src:url(/assets/fonts/source-serif-4-opsz-italic.woff2) format("woff2");font-weight:200 900;font-style:italic;font-display:swap}
@font-face{font-family:"Saira Stencil One";src:url(/assets/fonts/saira-stencil-one.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Courier Prime";src:url(/assets/fonts/courier-prime-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Courier Prime";src:url(/assets/fonts/courier-prime-700.woff2) format("woff2");font-weight:700;font-display:swap}

/* Tokens. Storm palette: wet asphalt, overcast newsprint, headlight amber, warning flag red. */
:root{
  --night:#0e151d;--night-2:#141e29;--night-3:#1c2836;
  --navy:#12275c;--blue:#1a3787;--red:#c62a2c;--red-deep:#a01f23;
  --gold:#f4b23e;--gold-2:#ffc65e;--ember:#e8763a;--rose:#e9a38c;
  --paper:#efeee9;--paper-2:#e3e2db;--paper-3:#d3d2c9;--white:#fbfbf8;
  --surge:#2b4a63;--steel:#8a9bab;--fog:#c9d3dc;
  --ink:#141b24;--ink-2:#36404c;--muted:#5a6571;
  --line:rgb(20 27 36 / .14);--line-2:rgb(20 27 36 / .26);
  --eagle-blue:var(--blue);--eagle-red:var(--red);--eagle-white:#fff;
  --f-display:"Archivo","Arial Narrow",Arial,system-ui,sans-serif;
  --f-serif:"Source Serif 4",Charter,Georgia,"Times New Roman",serif;
  --f-stencil:"Saira Stencil One","Archivo",Impact,sans-serif;
  --f-mono:"Courier Prime","Courier New",ui-monospace,monospace;
  --gutter:max(clamp(1.1rem,4vw,2.75rem),env(safe-area-inset-left,0px),env(safe-area-inset-right,0px));
  --max:1240px;
  --section:clamp(4.75rem,10vw,9rem);
  --header-h:76px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
}

/* Base */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1.25rem);color-scheme:light;hanging-punctuation:first}
body{margin:0;min-height:100vh;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.65 var(--f-serif);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}
@media (min-width:768px){body{font-size:1.125rem}}
body::after{content:"";position:fixed;inset:0;z-index:100;pointer-events:none;background:url(/assets/img/grain.svg);opacity:.16}
img,svg,video,canvas,picture{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover{color:var(--red)}
::selection{background:var(--gold);color:var(--night)}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:3px}
[hidden]{display:none!important}
.wrap{width:min(100% - 2*var(--gutter),var(--max));margin-inline:auto}
.wrap--narrow{width:min(100% - 2*var(--gutter),860px);margin-inline:auto}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:fixed;left:1rem;top:1rem;z-index:200;padding:.8rem 1.1rem;background:var(--gold);color:var(--night);font:800 .9rem/1 var(--f-display);text-decoration:none;border-radius:4px;transform:translateY(-200%);transition:transform .2s}
.skip:focus{transform:none}

/* Type */
h1,h2,h3,h4{font-family:var(--f-display);font-weight:800;font-stretch:100%;line-height:1.02;letter-spacing:-.012em;margin:0;text-wrap:balance}
p{margin:0 0 1.1em;text-wrap:pretty}
p:last-child{margin-bottom:0}
.display{font-size:clamp(2.85rem,7.8vw,7.25rem);font-weight:900;font-stretch:112%;line-height:.9;letter-spacing:-.028em}
.h-xl{font-size:clamp(2.2rem,5vw,4.4rem);font-weight:880;font-stretch:104%;line-height:.95;letter-spacing:-.022em}
.h-lg{font-size:clamp(1.8rem,3.5vw,3rem);font-weight:850;line-height:1}
.h-md{font-size:clamp(1.3rem,2.1vw,1.7rem);font-weight:800;line-height:1.1}
.lead{font-size:clamp(1.16rem,1.75vw,1.4rem);line-height:1.52;color:var(--ink-2)}
.eyebrow{display:inline-flex;align-items:center;gap:.75em;margin:0 0 1.35rem;font:750 .78rem/1.2 var(--f-display);font-stretch:78%;letter-spacing:.2em;text-transform:uppercase;color:var(--red)}
.eyebrow::before{content:"";width:2.2rem;height:2px;background:currentColor;flex:none}
.eyebrow--gold{color:var(--gold)}
.stencil{font-family:var(--f-stencil);font-weight:400;letter-spacing:.02em}
.label{font:750 .74rem/1.2 var(--f-display);font-stretch:78%;letter-spacing:.16em;text-transform:uppercase}
.prose{max-width:66ch}
.prose h2{font-size:clamp(1.55rem,2.6vw,2.15rem);margin:2.4em 0 .6em}
.prose h3{font-size:1.3rem;margin:2em 0 .5em}
.prose ul,.prose ol{padding-left:1.25em;margin:0 0 1.2em}
.prose li{margin:.35em 0}

/* Buttons */
.btn{--bg:var(--red);--fg:#fff;--bd:var(--bg);display:inline-flex;align-items:center;justify-content:center;gap:.7em;min-height:50px;padding:1em 1.45em;border:2px solid var(--bd);border-radius:4px;background:var(--bg);color:var(--fg);font:800 .9rem/1.1 var(--f-display);font-stretch:86%;letter-spacing:.075em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .3s var(--ease),background-color .25s,border-color .25s,color .25s,box-shadow .3s;box-shadow:0 12px 26px -16px rgb(198 42 44 / .95)}
.btn:hover{--bg:var(--red-deep);color:var(--fg);transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn svg{width:1.05em;height:1.05em;flex:none;transition:transform .3s var(--ease)}
.btn:hover svg{transform:translateX(3px)}
.btn--gold{--bg:var(--gold);--fg:var(--night);box-shadow:0 12px 26px -16px rgb(244 178 62 / .95)}
.btn--gold:hover{--bg:var(--gold-2)}
.btn--ghost{--bg:transparent;--fg:var(--ink);--bd:var(--ink);box-shadow:none}
.btn--ghost:hover{--bg:var(--ink);--fg:var(--paper);--bd:var(--ink)}
.btn--light{--bg:transparent;--fg:#fff;--bd:rgb(255 255 255 / .55);box-shadow:none}
.btn--light:hover{--bg:#fff;--fg:var(--night);--bd:#fff}
.btn--sm{min-height:42px;padding:.75em 1.05em;font-size:.78rem}
.btn[disabled]{opacity:.6;cursor:progress;transform:none}
.btn-row{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center}
.textlink{display:inline-flex;align-items:center;gap:.5em;font:800 .86rem/1 var(--f-display);font-stretch:86%;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--red)}
.textlink svg{width:1em;height:1em;transition:transform .3s var(--ease)}
.textlink:hover svg{transform:translateX(3px)}

/* Signal lamp */
.lamp{--c:var(--gold);display:inline-block;width:.62rem;height:.62rem;border-radius:50%;background:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 22%,transparent),0 0 16px 2px color-mix(in srgb,var(--c) 75%,transparent);flex:none}
.lamp--green{--c:#83d69c}
.lamp--red{--c:#ff5a4d}
@media (prefers-reduced-motion:no-preference){
  .lamp:not(.lamp--steady){animation:lamp 1.9s ease-in-out infinite}
}
@keyframes lamp{50%{opacity:.4;box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 8%,transparent),0 0 4px 0 color-mix(in srgb,var(--c) 35%,transparent)}}

/* Header */
.site-header{position:fixed;inset:0 0 auto;z-index:60;color:var(--ink);transition:background-color .4s,color .4s,box-shadow .4s,transform .45s var(--ease)}
.site-header__bar{height:var(--header-h);display:flex;align-items:center;gap:1rem}
.site-header.is-solid{background:rgb(239 238 233 / .9);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 1px 0 var(--line)}
.site-header.is-dark{color:#fff}
.site-header.is-dark.is-solid{background:rgb(14 21 29 / .74);box-shadow:0 1px 0 rgb(255 255 255 / .08)}
.site-header.is-tucked{transform:translateY(-100%)}
.brand{display:flex;align-items:center;gap:.75rem;min-height:44px;margin-right:auto;color:inherit;text-decoration:none}
.brand:hover{color:inherit}
.brand__mark{position:relative;width:74px;height:36px;flex:none}
.brand__mark svg{position:absolute;inset:0;width:100%;height:100%;transition:opacity .4s}
.brand__mono{opacity:0;color:#fff}
.is-dark .brand__mono{opacity:1}
.is-dark .brand__color{opacity:0}
.brand__text{display:grid;gap:.32rem}
.brand__word{width:104px;height:18.5px;color:var(--navy);transition:color .4s}
.is-dark .brand__word{color:#fff}
.brand__tag{font:700 .54rem/1 var(--f-display);font-stretch:72%;letter-spacing:.11em;text-transform:uppercase;opacity:.82;white-space:nowrap}
@media (max-width:599px){.brand__tag{display:none}}
@media (max-width:400px){.brand__mark{width:62px;height:30px}}
.nav{display:none}
.nav__list{display:flex;gap:.15rem;list-style:none;margin:0;padding:0}
.nav a{position:relative;display:block;padding:.65rem .85rem;font:750 .84rem/1 var(--f-display);font-stretch:84%;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:inherit}
.nav a::after{content:"";position:absolute;left:.85rem;right:.85rem;bottom:.28rem;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.is-dark .nav a::after{background:var(--gold)}
.site-header__cta{display:none}
.menu-btn{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.55rem .9rem;border:1.5px solid currentColor;border-radius:4px;background:transparent;color:inherit;font:800 .78rem/1 var(--f-display);font-stretch:84%;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.menu-btn__bars{display:grid;gap:4px;width:18px}
.menu-btn__bars span{display:block;height:2px;background:currentColor;border-radius:2px}
.menu-btn__bars span:nth-child(2){width:70%}
@media (min-width:980px){
  .nav,.site-header__cta{display:block}
  .site-header__cta{display:inline-flex}
  .menu-btn{display:none}
}

/* Mobile menu, native popover */
.menu{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:auto;background:var(--night);color:#fff;opacity:0;transform:translateY(-10px);transition:opacity .35s,transform .45s var(--ease-out),overlay .45s allow-discrete,display .45s allow-discrete}
.menu:popover-open{opacity:1;transform:none}
@starting-style{.menu:popover-open{opacity:0;transform:translateY(-10px)}}
.menu::backdrop{background:rgb(6 10 14 / .5)}
.menu__inner{min-height:100%;display:flex;flex-direction:column;gap:2rem;padding:1.1rem var(--gutter) calc(2.5rem + env(safe-area-inset-bottom,0px));background:radial-gradient(120% 60% at 85% 110%,rgb(244 178 62 / .22),transparent 60%),radial-gradient(90% 50% at 10% 120%,rgb(43 74 99 / .55),transparent 60%)}
.menu__top{display:flex;justify-content:space-between;align-items:center;height:calc(var(--header-h) - 1.1rem)}
.menu__list{list-style:none;margin:0;padding:0;display:grid}
.menu__list a{display:flex;justify-content:space-between;align-items:baseline;padding:.9rem 0;border-bottom:1px solid rgb(255 255 255 / .12);font:880 clamp(2rem,9vw,3rem)/1 var(--f-display);font-stretch:104%;letter-spacing:-.02em;text-decoration:none;color:#fff}
.menu__list a span{font:700 .72rem/1 var(--f-display);font-stretch:78%;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.menu__note{margin-top:auto;font-size:.95rem;color:rgb(255 255 255 / .72)}

/* Home hero */
.hero{position:relative;background:var(--night);color:#fff;isolation:isolate}
.hero__stage{position:relative;display:grid;min-height:min(100svh,1200px);overflow:hidden}
.hero__media{position:absolute;inset:0;z-index:-2;overflow:hidden;background:var(--night)}
.hero__photo{position:absolute;inset:0}
.hero__photo img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.hero__photo--dawn{opacity:0;visibility:hidden}
.hero__photo--dawn img{object-position:64% 60%}
.hero__scrim{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgb(6 10 14 / .82) 0%,rgb(6 10 14 / .52) 32%,rgb(6 10 14 / 0) 62%),linear-gradient(0deg,rgb(6 10 14 / .72) 0%,rgb(6 10 14 / 0) 42%),linear-gradient(180deg,rgb(6 10 14 / .55) 0%,rgb(6 10 14 / 0) 22%)}

/* Weather layers: wind driven rain and water beading on the glass. Pure CSS, composited, off for reduced motion. */
.rain{position:absolute;inset:-40% -30%;pointer-events:none;background-repeat:repeat;rotate:-12deg;will-change:translate}
.rain--far{background-image:url(/assets/img/rain-far.svg);background-size:240px 240px;opacity:.42}
.rain--near{background-image:url(/assets/img/rain-near.svg);background-size:360px 360px;opacity:.5}
.glass{position:absolute;inset:0;pointer-events:none;background:url(/assets/img/glass.svg) center/cover no-repeat;opacity:.9;-webkit-mask:linear-gradient(90deg,rgb(0 0 0 / .3) 0%,rgb(0 0 0 / .4) 42%,#000 64%);mask:linear-gradient(90deg,rgb(0 0 0 / .3) 0%,rgb(0 0 0 / .4) 42%,#000 64%)}
@media (max-width:760px){.glass{-webkit-mask:linear-gradient(0deg,rgb(0 0 0 / .25) 0%,rgb(0 0 0 / .35) 50%,#000 72%);mask:linear-gradient(0deg,rgb(0 0 0 / .25) 0%,rgb(0 0 0 / .35) 50%,#000 72%)}}
@media (prefers-reduced-motion:no-preference){
  .rain--far{animation:rain-far .95s linear infinite}
  .rain--near{animation:rain-near .52s linear infinite}
}
@media (prefers-reduced-motion:reduce){.rain{display:none}}
@keyframes rain-far{to{translate:49.9px 234.8px}}
@keyframes rain-near{to{translate:74.85px 352.1px}}
.photo-credit{position:absolute;z-index:2;margin:0;font:700 .64rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:rgb(255 255 255 / .62);text-shadow:0 1px 6px rgb(0 0 0 / .6);pointer-events:none}
.hero .photo-credit{right:var(--gutter);bottom:1.15rem}
.hero__inner{position:relative;height:100%;display:grid;align-content:end;padding-top:calc(var(--header-h) + 2rem);padding-bottom:clamp(2.5rem,8vh,6rem)}
.hero__copy{max-width:47rem}
.hero__kicker{display:flex;align-items:center;gap:.75rem;margin:0 0 1.5rem;font:750 .8rem/1.3 var(--f-display);font-stretch:80%;letter-spacing:.17em;text-transform:uppercase;color:rgb(255 255 255 / .88)}
.hero h1 .line{display:block}
.hero h1 .line--gold{color:var(--gold);text-shadow:0 0 40px rgb(244 178 62 / .25)}
.hero__lead{max-width:37rem;margin:1.6rem 0 2.1rem;font-size:clamp(1.12rem,1.55vw,1.34rem);line-height:1.52;color:rgb(255 255 255 / .87)}
.hero__cue{position:absolute;left:50%;bottom:1.1rem;transform:translateX(-50%);display:none;align-items:center;gap:.55rem;font:700 .7rem/1 var(--f-display);font-stretch:78%;letter-spacing:.18em;text-transform:uppercase;color:rgb(255 255 255 / .62);white-space:nowrap}
.hero__cue i{display:block;width:1px;height:26px;background:linear-gradient(rgb(255 255 255 / .7),transparent)}

/* Field bulletin, set like a 2012 hurricane advisory off the wire */
.bulletin{position:absolute;right:var(--gutter);top:calc(var(--header-h) + clamp(1rem,3vh,2rem));display:none;width:22.5rem;border-radius:3px;background:rgb(242 241 236 / .95);color:var(--ink);box-shadow:0 30px 60px -28px rgb(0 0 0 / .85),0 0 0 1px rgb(0 0 0 / .25);font:400 .84rem/1.42 var(--f-mono);overflow:hidden}
.bulletin__head{display:flex;align-items:center;gap:.65rem;padding:.6rem .85rem;background:var(--night);color:#fff;border-bottom:3px solid var(--red)}
.bulletin__flag{width:1.6rem;height:1.6rem;flex:none;color:#fff}
.bulletin__kicker{margin:0;font:700 .8rem/1 var(--f-mono);letter-spacing:.2em;text-transform:uppercase}
.bulletin__time{margin:0 0 0 auto;font:400 .68rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;opacity:.85}
.bulletin__body{padding:.95rem 1rem 1.05rem;text-transform:uppercase}
.bulletin__title{margin:0 0 .15rem;font:700 .9rem/1.3 var(--f-mono);letter-spacing:.02em}
.bulletin__org{margin:0 0 .85rem;font-size:.74rem;color:var(--ink-2)}
.bulletin__alert{margin:0 0 .85rem;font-weight:700;color:var(--red-deep)}
.bulletin__list{list-style:none;margin:.3rem 0 .9rem;padding:0}
.bulletin__list li{position:relative;padding-left:1.4em}
.bulletin__list li::before{content:"*";position:absolute;left:0}
.bulletin__body p{margin-bottom:.3rem}
.bulletin__link{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;color:var(--red-deep);text-decoration:none;border-bottom:1.5px solid currentColor}
.bulletin__link:hover{color:var(--ink)}
@media (min-width:1100px){.hero__cue{display:flex}}
@media (min-width:1320px){.bulletin{display:block}}
@media (max-width:760px){
  .hero__scrim{background:linear-gradient(0deg,rgb(6 10 14 / .94) 0%,rgb(6 10 14 / .72) 40%,rgb(6 10 14 / .05) 68%),linear-gradient(180deg,rgb(6 10 14 / .6) 0%,rgb(6 10 14 / 0) 24%)}
  .hero .photo-credit{bottom:auto;top:calc(var(--header-h) + .4rem)}
  .hero__inner{padding-top:calc(var(--header-h) + .75rem);padding-bottom:1.4rem}
  .hero__kicker{margin-bottom:1.1rem}
  .hero__lead{margin:1rem 0 1.3rem}
  .hero .btn-row .btn{flex:1 1 12rem}
}
.hero__after{position:relative;padding:var(--section) 0;background:linear-gradient(180deg,var(--night),var(--night-2))}
.hero__after p{max-width:22ch;margin:0 auto;text-align:center;font:italic 400 clamp(1.75rem,3.6vw,3.25rem)/1.2 var(--f-serif);color:#fff;text-wrap:balance}
.hero__after p + p{margin-top:.6em}
.hero__after em{font-style:normal;font-weight:600;color:var(--gold)}
.hero__after .eyebrow{display:flex;justify-content:center;margin-bottom:2rem}
.hero__after .eyebrow::before{display:none}
html.hero-pin .hero__after{position:absolute;inset:0;padding:0 var(--gutter);display:grid;place-content:center;background:transparent;opacity:0;visibility:hidden;text-shadow:0 2px 30px rgb(6 10 14 / .55)}
@media (prefers-reduced-motion:no-preference){
  .hero__kicker,.hero h1 .line,.hero__lead,.hero__copy .btn-row,.bulletin__head,.bulletin__body,.page-head__inner > *{animation:rise 1.1s var(--ease-out) backwards}
  .page-head__inner > :nth-child(2){animation-delay:.08s}
  .page-head__inner > :nth-child(3){animation-delay:.16s}
  .page-head__inner > :nth-child(4){animation-delay:.28s}
  .page-head__inner > :nth-child(5){animation-delay:.4s}
  .hero h1 .line:nth-child(1){animation-delay:.12s}
  .hero h1 .line:nth-child(2){animation-delay:.24s}
  .hero__lead{animation-delay:.38s}
  .hero__copy .btn-row{animation-delay:.5s}
  .bulletin__head{animation-delay:.85s}
  .bulletin__body{animation-delay:.95s}
}
@keyframes rise{from{opacity:0;transform:translateY(26px)}}

/* Section shells */
.section{position:relative;padding:var(--section) 0}
.section--tight{padding:clamp(3.5rem,7vw,6rem) 0}
.section--paper2{background:var(--paper-2)}
.section-head{display:grid;gap:1.25rem;margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.section-head > *{max-width:52rem}
.section-head .lead{margin:0}

/* Who we are */
.intro__grid{display:grid;gap:2rem 4rem}
@media (min-width:900px){.intro__grid{grid-template-columns:1.05fr .95fr;align-items:end}}
.intro__body .lead{color:var(--ink)}
.orders{margin-top:clamp(3.5rem,7vw,6rem)}
.orders__head{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-top:3px solid var(--ink);border-bottom:1px solid var(--line-2)}
.orders__head span{font:750 .74rem/1.2 var(--f-display);font-stretch:78%;letter-spacing:.18em;text-transform:uppercase}
.orders__head span:last-child{color:var(--muted)}
.orders__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr}
@media (min-width:700px){.orders__list{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.orders__list{grid-template-columns:repeat(4,1fr)}}
.order{position:relative;padding:2rem 1.5rem 2.25rem 0;border-bottom:1px solid var(--line)}
@media (min-width:700px){.order{padding-right:2rem}.order + .order{}}
@media (min-width:1100px){.order{border-bottom:0;border-right:1px solid var(--line);padding:2.2rem 1.6rem 1.2rem}.order:first-child{padding-left:0}.order:last-child{border-right:0}}
.order__num{display:block;margin-bottom:1.1rem;font-size:3.1rem;line-height:.8;color:var(--red)}
.order h3{font-size:1.28rem;font-weight:820;line-height:1.12;margin-bottom:.65rem}
.order p{font-size:1rem;line-height:1.55;color:var(--ink-2)}

/* Field bulletin ticker, the crawl along the bottom of a storm broadcast */
.ticker{position:relative;z-index:3;display:flex;align-items:stretch;background:var(--night);color:#fff;border-top:3px solid var(--red);border-bottom:1px solid rgb(255 255 255 / .08);font:700 .82rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.ticker__label{display:flex;align-items:center;gap:.55rem;margin:0;padding:.85rem 1rem .85rem var(--gutter);background:var(--red);white-space:nowrap;flex:none}
.ticker__label svg{width:1.25rem;height:1.25rem;color:#fff}
.ticker__window{position:relative;flex:1;min-width:0;overflow:hidden;display:flex;align-items:center;-webkit-mask:linear-gradient(90deg,transparent,#000 2rem,#000 calc(100% - 2rem),transparent);mask:linear-gradient(90deg,transparent,#000 2rem,#000 calc(100% - 2rem),transparent)}
.ticker__track{display:flex;flex:none;gap:0;list-style:none;margin:0;padding:0;white-space:nowrap}
.ticker__track li{display:inline-flex;align-items:center;gap:1.1rem;padding-right:1.1rem}
.ticker__track li::after{content:"";width:.5rem;height:.5rem;border-radius:50%;background:var(--gold);box-shadow:0 0 10px 1px rgb(244 178 62 / .7)}
.ticker__toggle{flex:none;margin:0;padding:0 var(--gutter) 0 1rem;border:0;border-left:1px solid rgb(255 255 255 / .12);background:var(--night-2);color:rgb(255 255 255 / .8);font:700 .72rem/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;min-height:44px}
.ticker__toggle:hover{color:var(--gold)}
.no-js .ticker__toggle{display:none}
@media (prefers-reduced-motion:no-preference){
  .ticker__track{animation:crawl 46s linear infinite}
  .ticker:hover .ticker__track,.ticker:focus-within .ticker__track,.ticker[data-paused] .ticker__track{animation-play-state:paused}
}
@media (prefers-reduced-motion:reduce){
  .ticker__track[aria-hidden]{display:none}
  .ticker__window{-webkit-mask:none;mask:none}
  .ticker__track{flex:1 1 auto;min-width:0;flex-wrap:wrap;white-space:normal;row-gap:.6rem;padding:.85rem 1rem}
  .ticker__toggle{display:none}
}
@keyframes crawl{to{translate:-100% 0}}
@media (max-width:640px){.ticker__label span{display:none}.ticker__label{padding-right:.85rem}}

/* How help gets there, a photo essay in five stops */
.route{background:var(--paper-2);overflow:clip}
.route__grid{display:grid;gap:3rem}
@media (min-width:960px){.route__grid{grid-template-columns:.82fr 1.18fr;gap:5rem}.route__head{position:sticky;top:calc(var(--header-h) + 2.5rem);align-self:start}}
.route__stops{list-style:none;margin:0;padding:0;display:grid;gap:clamp(3.25rem,7vw,5.5rem);counter-reset:stop}
.stop{position:relative;display:grid;gap:1rem}
.stop__photo{position:relative;margin:0 0 .5rem;aspect-ratio:3/2;border-radius:4px;overflow:hidden;background:var(--night);box-shadow:0 30px 60px -38px rgb(14 21 29 / .75)}
.stop__photo img{position:absolute;left:0;top:-7%;width:100%;height:114%;object-fit:cover}
.stop__photo .photo-credit{left:.9rem;bottom:.8rem}
.stop__photo--tall img{object-position:50% 18%}
.stop__label{display:flex;align-items:center;gap:.65rem;margin:0;font:700 .78rem/1.2 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--red)}
.stop__label svg{width:1.35rem;height:1.35rem;flex:none}
.stop__label b{display:inline-grid;place-items:center;min-width:1.7rem;height:1.7rem;padding:0 .35rem;border-radius:2px;background:var(--night);color:#fff;font-weight:700}
.stop h3{font-size:clamp(1.55rem,2.6vw,2.1rem);font-weight:850}
.stop p{max-width:36rem;color:var(--ink-2)}
.stop--end{padding:clamp(1.5rem,3.5vw,2.25rem);border-radius:4px;background:var(--night);color:#fff;overflow:hidden;isolation:isolate}
.stop--end::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.12}
.stop--end .stop__label{color:var(--gold)}
.stop--end .stop__label b{background:var(--gold);color:var(--night)}
.stop--end h3{color:#fff}
.stop--end p{color:rgb(255 255 255 / .8)}

/* What we carry, cargo tags */
.manifest{background:var(--paper);overflow:clip}
.manifest__grid{display:grid;gap:2.5rem 4rem}
@media (min-width:960px){.manifest__grid{grid-template-columns:1fr 1fr;align-items:end}}
.cargo{list-style:none;margin:clamp(2.75rem,6vw,4.5rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,2vw,1.25rem)}
@media (min-width:700px){.cargo{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1100px){.cargo{grid-template-columns:repeat(5,minmax(0,1fr))}}
.tag{position:relative;display:grid;justify-items:start;gap:.9rem;min-width:0;padding:1.1rem 1.15rem 1.3rem;border-radius:4px;background:var(--white);box-shadow:0 0 0 1px var(--line),0 18px 36px -28px rgb(14 21 29 / .6)}
.tag::before{content:"";position:absolute;right:1.05rem;top:1.05rem;width:.7rem;height:.7rem;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line-2);background:var(--paper)}
.tag__lot{font:700 .7rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.tag__icon{display:grid;place-items:center;width:3.75rem;height:3.75rem;border-radius:50%;background:var(--night);color:var(--gold)}
.tag__icon svg{width:2.1rem;height:2.1rem}
.tag__label{font-family:var(--f-stencil);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1;text-transform:uppercase;color:var(--ink);overflow-wrap:anywhere}
.tag:nth-child(4) .tag__icon{background:var(--red);color:#fff}
.manifest__foot{display:flex;flex-wrap:wrap;gap:1.25rem 2rem;align-items:center;justify-content:space-between;margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:1.75rem;border-top:1px dashed var(--line-2)}
.manifest__foot p{margin:0;max-width:44rem;color:var(--ink-2)}

/* Field record and the map */
.record{background:var(--paper-2)}
.record__grid{display:grid;gap:3rem}
@media (min-width:1000px){.record__grid{grid-template-columns:.85fr 1.15fr;gap:4.5rem;align-items:start}}
.timeline{list-style:none;margin:2.5rem 0 0;padding:0;border-left:2px solid var(--line-2)}
.timeline li{position:relative;display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding:0 0 2rem 1.4rem}
.timeline li::before{content:"";position:absolute;left:-7px;top:.35rem;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--red)}
.timeline li.is-now::before{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 5px rgb(244 178 62 / .25)}
.timeline__year{font-size:1.65rem;line-height:1;color:var(--red)}
.timeline h3{font-size:1.15rem;font-weight:820;margin-bottom:.35rem}
.timeline p{font-size:1rem;line-height:1.55;color:var(--ink-2)}
.record__note{margin-top:.5rem;padding:1.1rem 1.25rem;border-left:4px solid var(--gold);background:rgb(255 255 255 / .45);font-size:1rem;line-height:1.55}
.usmap{margin:0;position:relative}
.usmap__frame{position:relative;padding:clamp(.8rem,2vw,1.2rem);border-radius:4px;background:var(--white);box-shadow:0 30px 60px -36px rgb(14 21 29 / .55),0 0 0 1px var(--line-2)}
.usmap__bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:.75rem}
.usmap__id{display:flex;align-items:center;gap:.65rem}
.usmap__id svg{width:1.7rem;height:1.7rem;flex:none;color:var(--ink)}
.usmap__title{display:block;font:700 .82rem/1.2 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
.usmap__sub{display:block;font:400 .7rem/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.usmap__chart{border:1px solid #93a6b5;border-radius:2px;overflow:hidden;background:#dbe5ec}
.usmap__sea{fill:#dbe5ec}
.usmap__grid{fill:none;stroke:#6f8799;stroke-width:.8;stroke-dasharray:3 4;opacity:.5}
.usmap__gridlabel{font:700 12px var(--f-mono);fill:#4f6678;letter-spacing:.04em}
.usmap__insetbox{fill:#dbe5ec;stroke:#93a6b5;stroke-width:1}
.usmap__toggles{display:flex;flex-wrap:wrap;gap:.4rem;border:0;margin:0;padding:0}
.usmap__toggles legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.chip{position:relative;display:inline-flex;align-items:center;gap:.45rem;min-height:38px;padding:.45rem .8rem;border:1.5px solid var(--line-2);border-radius:999px;font:750 .74rem/1 var(--f-display);font-stretch:84%;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color .25s,border-color .25s,color .25s;user-select:none}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip i{width:.7rem;height:.7rem;border-radius:2px;background:var(--sw,var(--red))}
.chip:has(input:checked){background:var(--ink);border-color:var(--ink);color:#fff}
.chip:has(input:focus-visible){outline:3px solid var(--gold);outline-offset:2px}
.usmap__chart svg{display:block;width:100%;height:auto}
.usmap__states path{fill:#f7f4ec;stroke:#8d9ca9;stroke-width:.85;stroke-linejoin:round;transition:fill .5s var(--ease)}
.usmap{--hz-hurricane:#d3272e;--hz-wildfire:#e57a24;--hz-flood:#2c66b4}
.usmap:has(#hz-hurricane:checked) [data-hz~="hurricane"]{fill:var(--hz-hurricane)}
.usmap:has(#hz-wildfire:checked) [data-hz~="wildfire"]{fill:var(--hz-wildfire)}
.usmap:has(#hz-flood:checked) [data-hz~="flood"]{fill:var(--hz-flood)}
.usmap:has(#hz-hurricane:checked) [data-belt~="hurricane"]:not([data-hz~="hurricane"]),
.usmap:has(#hz-wildfire:checked) [data-belt~="wildfire"]:not([data-hz~="wildfire"]),
.usmap:has(#hz-flood:checked) [data-belt~="flood"]:not([data-hz~="flood"]){fill:url(#belt)}
.pin__halo{fill:#fff;opacity:.92}
.pin__ring{fill:none;stroke:var(--hz-hurricane);stroke-width:1.6;opacity:.7;transform-box:fill-box;transform-origin:center}
.pin__storm{color:var(--hz-hurricane)}
@media (prefers-reduced-motion:no-preference){
  .pin__ring{animation:ping 2.6s var(--ease-out) infinite}.pin:nth-child(2) .pin__ring{animation-delay:.6s}.pin:nth-child(3) .pin__ring{animation-delay:1.2s}
  .pin__spin{transform-box:fill-box;transform-origin:center;animation:spin 7s linear infinite}
}
@keyframes ping{0%{transform:scale(.7);opacity:.8}100%{transform:scale(2.4);opacity:0}}
@keyframes spin{to{transform:rotate(-360deg)}}
.pin__label{font:700 25px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;fill:var(--ink);paint-order:stroke;stroke:#f7f4ec;stroke-width:5px;stroke-linejoin:round}
.pin__sub{font:700 16px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;fill:#3f5466;paint-order:stroke;stroke:#f7f4ec;stroke-width:5px;stroke-linejoin:round}
.usmap__legend{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--line);font:400 .76rem/1.3 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2)}
.usmap__legend span{display:inline-flex;align-items:center;gap:.5rem}
.sw{width:.95rem;height:.95rem;border-radius:2px;flex:none}
.sw--zone{background:linear-gradient(135deg,var(--hz-hurricane) 0 33%,var(--hz-wildfire) 33% 66%,var(--hz-flood) 66%)}
.sw--belt{background:repeating-linear-gradient(45deg,#e9c42b 0 2px,#fbf0c0 2px 5px);box-shadow:inset 0 0 0 1px #c9a312}
.sw--pin{display:grid;place-items:center;color:var(--hz-hurricane)}
.sw--pin svg{width:1.05rem;height:1.05rem}
.usmap figcaption{margin-top:.9rem;font-size:.92rem;line-height:1.5;color:var(--muted)}
.staging{display:grid;gap:1.25rem 3rem;margin-top:clamp(3rem,6vw,4.5rem);padding:clamp(1.6rem,3.5vw,2.6rem);border-radius:8px;background:var(--night);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.staging::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.13}
@media (min-width:900px){.staging{grid-template-columns:1fr auto;align-items:center}}
.staging h3{font-size:clamp(1.4rem,2.4vw,2rem);font-weight:850;margin-bottom:.5rem}
.staging p{margin:0;color:rgb(255 255 255 / .8)}

/* Duty board */
.duty{background:radial-gradient(90% 70% at 100% 0%,rgb(43 74 99 / .6),transparent 60%),var(--night);color:#fff;overflow:clip}
.duty .lead{color:rgb(255 255 255 / .8)}
.duty::before{content:"";position:absolute;inset:0;background:url(/assets/img/isobars.svg) center/cover;opacity:.13;pointer-events:none}
.board{position:relative;border-radius:10px;padding:clamp(.75rem,2vw,1.25rem);background:linear-gradient(180deg,#141e29,#0b1117);box-shadow:inset 0 0 0 1px rgb(255 255 255 / .09),inset 0 1px 0 rgb(255 255 255 / .12),0 40px 80px -40px rgb(0 0 0 / .8)}
.board__top{display:flex;justify-content:space-between;gap:1rem;padding:.6rem .9rem 1rem;font:750 .72rem/1.2 var(--f-display);font-stretch:78%;letter-spacing:.2em;text-transform:uppercase;color:rgb(255 255 255 / .6);border-bottom:1px solid rgb(255 255 255 / .1)}
.board__top b{color:var(--gold);font-weight:750}
.board__rows{list-style:none;margin:0;padding:0}
.board__row{display:grid;grid-template-columns:auto auto 1fr;align-items:start;gap:.45rem .9rem;padding:1.15rem .9rem;border-bottom:1px solid rgb(255 255 255 / .08);color:#fff;text-decoration:none;transition:background-color .3s}
.board__rows li:last-child .board__row{border-bottom:0}
.board__row:hover{background:rgb(255 255 255 / .045);color:#fff}
.board__num{font-size:1.5rem;line-height:1;color:var(--gold);min-width:2.2ch}
.board__role{font:850 clamp(1.08rem,2vw,1.45rem)/1.1 var(--f-display);font-stretch:88%;letter-spacing:.01em;text-transform:uppercase}
.board__detail{grid-column:3;font-size:.98rem;line-height:1.45;color:rgb(255 255 255 / .7)}
.board__role{grid-column:3}
.board__row > .lamp{margin-top:.42rem}
.board__status{grid-column:3;justify-self:start;display:inline-flex;align-items:center;gap:.5rem;padding:.42rem .6rem;border-radius:3px;background:rgb(244 178 62 / .12);font:800 .7rem/1 var(--f-display);font-stretch:80%;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);white-space:nowrap}
.board__row.is-answered .board__status{background:rgb(131 214 156 / .12);color:#9be3b0}
.board__row.is-answered .board__role{color:rgb(255 255 255 / .78)}
@media (min-width:860px){
  .board__row{grid-template-columns:auto 2.6rem minmax(14rem,1.1fr) 1.4fr 8.5rem 1.1rem;align-items:center;gap:1.4rem}
  .board__detail,.board__role,.board__status{grid-column:auto}
  .board__status{justify-self:end}
  .board__row > .lamp{margin-top:0}
  .board__arrow{display:block}
}
.board__arrow{display:none;width:1.1rem;height:1.1rem;color:rgb(255 255 255 / .5);transition:transform .3s var(--ease),color .3s}
.board__row:hover .board__arrow{transform:translateX(4px);color:var(--gold)}
.duty__foot{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:space-between;margin-top:2.25rem}
.duty__foot p{margin:0;color:rgb(255 255 255 / .72);max-width:38rem}

/* Give band */
.gift{position:relative;padding:clamp(6rem,14vw,11rem) 0;color:#fff;overflow:hidden;isolation:isolate;background:var(--night)}
.gift__media{position:absolute;inset:0;z-index:-2}
.gift__media img{width:100%;height:100%;object-fit:cover;object-position:70% 60%}
.gift::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgb(6 10 14 / .86) 0%,rgb(6 10 14 / .55) 45%,rgb(6 10 14 / .1) 80%)}
@media (max-width:760px){.gift::after{background:linear-gradient(0deg,rgb(6 10 14 / .9) 10%,rgb(6 10 14 / .55) 70%,rgb(6 10 14 / .3))}}
.gift__inner{max-width:var(--max)}
.gift h2{max-width:15ch}
.gift .lead{max-width:36rem;margin:1.5rem 0 2rem;color:rgb(255 255 255 / .86)}

/* Interior page head */
.page-head{position:relative;padding:calc(var(--header-h) + clamp(3.5rem,9vw,7rem)) 0 clamp(3.5rem,7vw,5.5rem);background:var(--night);color:#fff;overflow:hidden;isolation:isolate}
.page-head__media{position:absolute;inset:0;z-index:-2}
.page-head__media img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,60% 55%)}
.page-head::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgb(6 10 14 / .92) 0%,rgb(6 10 14 / .7) 45%,rgb(6 10 14 / .35) 100%),linear-gradient(0deg,rgb(6 10 14 / .55),transparent 50%)}
.page-head__weather{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.page-head__weather .rain--near{opacity:.4}
.page-head__weather .rain--far{opacity:.34}
.page-head .photo-credit{right:var(--gutter);bottom:1rem}
.page-head--plain::after{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.08;pointer-events:none}
.gift .photo-credit{right:var(--gutter);bottom:1rem}
.page-head--about{--pos:58% 50%}
.page-head--volunteer{--pos:68% 45%}
.page-head--give{--pos:70% 55%}
.page-head--contact{--pos:62% 40%}
.page-head .lead{max-width:40rem;margin-top:1.5rem;color:rgb(255 255 255 / .86)}
.page-head .display{max-width:14ch}
.crumbs ol{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0 0 2rem;padding:0;font:700 .74rem/1.2 var(--f-display);font-stretch:80%;letter-spacing:.16em;text-transform:uppercase;color:rgb(255 255 255 / .62)}
.crumbs li + li::before{content:"/";margin-right:.5rem;opacity:.6}
.crumbs a{color:#fff;text-decoration:none}
.crumbs a:hover{color:var(--gold)}

/* Volunteer roles */
.roles{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1.25rem,3vw,2rem)}
.role{position:relative;display:grid;gap:1.25rem 3rem;padding:clamp(1.6rem,4vw,2.75rem);border-radius:8px;background:var(--white);box-shadow:0 0 0 1px var(--line),0 24px 50px -38px rgb(20 29 59 / .55);scroll-margin-top:calc(var(--header-h) + 1.5rem)}
@media (min-width:900px){.role{grid-template-columns:minmax(16rem,.8fr) 1.2fr}}
.role__head{display:grid;gap:.9rem;align-content:start}
.role__num{font-size:3.4rem;line-height:.8;color:var(--red)}
.role h2,.role h3{font-size:clamp(1.6rem,2.8vw,2.3rem);font-weight:860;line-height:1}
.role__status{display:inline-flex;align-items:center;gap:.55rem;justify-self:start;padding:.45rem .7rem;border-radius:3px;background:var(--night);color:var(--gold);font:800 .7rem/1 var(--f-display);font-stretch:80%;letter-spacing:.16em;text-transform:uppercase}
.role--answered{background:linear-gradient(135deg,#fffaf0,#f3ecdd)}
.role--answered .role__status{color:#9be3b0}
.role__body p{color:var(--ink-2)}
.role__fit{list-style:none;margin:1.25rem 0 1.5rem;padding:0;display:grid;gap:.65rem}
.role__fit li{position:relative;padding-left:1.9rem;line-height:1.5}
.role__fit li::before{content:"";position:absolute;left:0;top:.38em;width:1.05rem;height:1.05rem;border-radius:3px;background:var(--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/80% no-repeat}
.callout{padding:1rem 1.2rem;border-left:4px solid var(--gold);background:rgb(244 178 62 / .1);font-size:1rem;line-height:1.55;border-radius:0 4px 4px 0}
.credit-card{display:grid;gap:.4rem;margin-top:1rem;padding:1.2rem 1.3rem;border-radius:6px;background:var(--night);color:#fff}
.credit-card .label{color:var(--gold)}
.credit-card a{color:#fff;font:850 clamp(1.02rem,4.8vw,1.2rem)/1.2 var(--f-display);overflow-wrap:anywhere;font-stretch:96%;text-decoration:none}
.credit-card a:hover{color:var(--gold)}
.credit-card p{margin:0;font-size:.95rem;color:rgb(255 255 255 / .75)}

/* Forms */
.form-wrap{display:grid;gap:2.5rem}
@media (min-width:1000px){.form-wrap{grid-template-columns:.75fr 1.25fr;gap:4.5rem;align-items:start}.form-wrap__aside{position:sticky;top:calc(var(--header-h) + 2rem)}}
.form{position:relative;display:grid;gap:1.35rem;padding:clamp(1.4rem,4vw,2.6rem);border-radius:10px;background:var(--white);box-shadow:0 0 0 1px var(--line),0 30px 60px -40px rgb(20 29 59 / .6)}
.form__row{display:grid;gap:1.35rem}
@media (min-width:640px){.form__row--2{grid-template-columns:1fr 1fr}}
.field{display:grid;gap:.45rem}
.field label,.field legend,.fieldset legend{font:800 .8rem/1.2 var(--f-display);font-stretch:86%;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.field .req{color:var(--red)}
.field .hint{font-size:.9rem;line-height:1.4;color:var(--muted)}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:.8rem .95rem;border:1.5px solid var(--line-2);border-radius:6px;background:#fff;color:var(--ink);font:400 1.02rem/1.4 var(--f-serif);transition:border-color .2s,box-shadow .2s}
.field textarea{min-height:140px;resize:vertical}
.field select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%23141d3b' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") right .9rem center/14px no-repeat;padding-right:2.5rem}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 4px rgb(244 178 62 / .45)}
.field input:user-invalid,.field select:user-invalid,.field textarea:user-invalid{border-color:var(--red)}
.fieldset{border:0;margin:0;padding:0;display:grid;gap:.7rem;min-width:0}
.options{display:grid;gap:.6rem}
@media (min-width:640px){.options--2{grid-template-columns:1fr 1fr}}
.option{position:relative;display:flex;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;border:1.5px solid var(--line-2);border-radius:8px;background:#fff;cursor:pointer;transition:border-color .2s,background-color .2s,box-shadow .2s;line-height:1.35}
.option input{width:1.15rem;height:1.15rem;margin:.1rem 0 0;accent-color:var(--red);flex:none}
.option b{display:block;font:800 .98rem/1.2 var(--f-display);font-stretch:92%}
.option small{display:block;margin-top:.2rem;font-size:.86rem;color:var(--muted)}
.option:has(input:checked){border-color:var(--red);background:#fff8f3;box-shadow:0 0 0 3px rgb(198 42 44 / .12)}
.option:has(input:focus-visible){outline:3px solid var(--gold);outline-offset:2px}
.reveal-if{display:none;gap:1.35rem;padding:1.25rem;border-radius:8px;background:var(--paper);border:1px dashed var(--line-2)}
.form:has(#role-distribution:checked) .reveal-if--distribution,
.form:has(#role-advisory:checked) .reveal-if--advisory,
.form:has(#role-development:checked) .reveal-if--development,
.form:has(#give-supplies:checked) .reveal-if--supplies,
.form:has(#give-money:checked) .reveal-if--money{display:grid}
.consent{display:flex;gap:.75rem;align-items:flex-start;font-size:.95rem;line-height:1.45;color:var(--ink-2)}
.consent input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--red);flex:none}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.form__actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}
.form__status{display:none;padding:1rem 1.15rem;border-radius:6px;font-size:1rem;line-height:1.5}
.form__status[data-state]{display:block}
.form__status[data-state="ok"]{background:#e9f6ec;color:#164b2a;box-shadow:inset 0 0 0 1px #9fd2ae}
.form__status[data-state="error"]{background:#fdeceb;color:#7d1515;box-shadow:inset 0 0 0 1px #f0a9a5}
.form__status[data-state="sending"]{background:var(--paper);color:var(--ink-2)}
.form.is-sent .form__fields{display:none}
.aside-card{padding:1.4rem 1.5rem;border-radius:8px;background:var(--paper-2);box-shadow:0 0 0 1px var(--line)}
.aside-card + .aside-card{margin-top:1rem}
.aside-card h3{font-size:1.1rem;margin-bottom:.5rem}
.aside-card p{font-size:1rem;color:var(--ink-2)}
.safety{display:flex;gap:1rem;align-items:flex-start;padding:1.25rem 1.35rem;border-radius:8px;background:#fff1ef;box-shadow:inset 0 0 0 1.5px #f2b8b1}
.safety svg{width:1.6rem;height:1.6rem;color:var(--red);flex:none;margin-top:.1rem}
.safety p{margin:0;font-size:1rem;line-height:1.55}
.safety strong{font-family:var(--f-display);font-weight:850}

/* Ways to give */
.ways{list-style:none;margin:0;padding:0;border-top:3px solid var(--ink)}
.way{display:grid;gap:.75rem 2.5rem;padding:clamp(1.6rem,3.5vw,2.4rem) 0;border-bottom:1px solid var(--line-2)}
@media (min-width:860px){.way{grid-template-columns:4.5rem 1fr minmax(13rem,auto);align-items:center}}
.way__num{font-size:2.6rem;line-height:.8;color:var(--red)}
.way h3{font-size:clamp(1.35rem,2.4vw,1.85rem);font-weight:860;margin-bottom:.4rem}
.way p{margin:0;color:var(--ink-2);max-width:40rem}
.way .pending{display:inline-flex;align-items:center;gap:.55rem;margin-top:.7rem;font:750 .74rem/1.2 var(--f-display);font-stretch:80%;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.uses{display:grid;gap:1px;margin-top:clamp(2.5rem,5vw,3.5rem);border-radius:8px;overflow:hidden;background:var(--line);box-shadow:0 0 0 1px var(--line)}
@media (min-width:860px){.uses{grid-template-columns:repeat(3,1fr)}}
.use{padding:1.6rem 1.5rem;background:var(--white)}
.use .label{color:var(--red);display:block;margin-bottom:.6rem}
.use__icon{width:3.1rem;height:3.1rem;margin-bottom:1.1rem;padding:.65rem;border-radius:50%;background:var(--night);color:var(--gold);box-sizing:border-box}
.use h3{font-size:1.25rem;margin-bottom:.45rem}
.use p{font-size:1rem;margin:0;color:var(--ink-2)}

/* About */
.story{display:grid;gap:2.5rem 5rem}
@media (min-width:960px){.story{grid-template-columns:.8fr 1.2fr}}
.leader{display:grid;gap:1.5rem;align-items:center;padding:clamp(1.6rem,4vw,2.5rem);border-radius:10px;background:var(--night);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.leader::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.1}
@media (min-width:760px){.leader{grid-template-columns:auto 1fr;gap:2.25rem}}
.leader__badge{display:grid;place-items:center;width:7.5rem;height:7.5rem;border-radius:50%;background:radial-gradient(circle at 30% 30%,#24364a,#0e151d);box-shadow:inset 0 0 0 3px var(--gold),0 0 0 6px rgb(244 178 62 / .15)}
.leader__badge span{font-size:2.3rem;color:var(--gold);line-height:1}
.leader h3{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:860}
.leader .label{color:var(--gold);display:block;margin:.4rem 0 .9rem}
.leader p{color:rgb(255 255 255 / .82)}
.roll{list-style:none;margin:0;padding:0;display:grid;gap:1rem}
@media (min-width:760px){.roll{grid-template-columns:1fr 1fr}}
.roll li{display:grid;gap:.35rem;padding:1.35rem 1.4rem;border-radius:8px;background:var(--white);box-shadow:0 0 0 1px var(--line)}
.roll li.roll__open{background:transparent;box-shadow:inset 0 0 0 2px var(--line-2);border-style:dashed}
.roll .label{color:var(--red)}
.roll b{font:850 1.2rem/1.2 var(--f-display);font-stretch:94%}
.roll p{margin:0;font-size:.98rem;color:var(--ink-2)}
.faq{margin-top:clamp(1.75rem,3vw,2.5rem);border-top:3px solid var(--ink)}
.faq details{border-bottom:1px solid var(--line-2)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.35rem 0;cursor:pointer;list-style:none;font:820 clamp(1.08rem,1.8vw,1.3rem)/1.25 var(--f-display);font-stretch:94%}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:1.6rem;height:1.6rem;flex:none;border-radius:50%;background:var(--paper-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 3.5v9M3.5 8h9' stroke='%23c62a2c' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/62% no-repeat;transition:transform .35s var(--ease)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details > div{padding:0 0 1.5rem;max-width:62ch;color:var(--ink-2)}
@supports (interpolate-size:allow-keywords){
  .faq{interpolate-size:allow-keywords}
  .faq details::details-content{height:0;overflow:clip;transition:height .45s var(--ease),content-visibility .45s allow-discrete}
  .faq details[open]::details-content{height:auto}
}

/* 404 */
.lost{min-height:100svh;display:grid;align-content:center;padding:calc(var(--header-h) + 3rem) 0 4rem;background:var(--night);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.lost::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.1}
.lost .lead{color:rgb(255 255 255 / .82);max-width:34rem;margin:1.5rem 0 2rem}
.lost__sign{display:inline-grid;justify-items:center;gap:.2rem;margin-bottom:2rem;padding:.9rem 1.3rem;border:3px solid #fff;border-radius:8px;background:#1f6f43;box-shadow:0 0 0 3px #1f6f43}
.lost__sign span{font:750 .7rem/1 var(--f-display);font-stretch:78%;letter-spacing:.18em;text-transform:uppercase}
.lost__sign b{font:900 2.4rem/1 var(--f-display);font-stretch:90%}

/* Footer */
.site-footer{position:relative;background:var(--night);color:#fff;overflow:hidden;isolation:isolate}
.site-footer::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.11}
.site-footer::after{content:"";position:absolute;left:50%;bottom:-40%;z-index:-1;width:120%;aspect-ratio:2/1;transform:translateX(-50%);background:radial-gradient(closest-side,rgb(232 118 58 / .26),rgb(244 178 62 / .08) 55%,transparent)}
.site-footer__call{display:grid;gap:1.75rem;padding:clamp(4.5rem,9vw,7.5rem) 0 clamp(3.5rem,7vw,5rem);border-bottom:1px solid rgb(255 255 255 / .1)}
@media (min-width:900px){.site-footer__call{grid-template-columns:1fr auto;align-items:end}}
.site-footer__line{margin:0;font:900 clamp(2.4rem,5.6vw,4.9rem)/.94 var(--f-display);font-stretch:110%;letter-spacing:-.03em}
.site-footer__line span{display:block}
.site-footer__line span + span{color:var(--gold)}
@media (min-width:900px){.site-footer__line span:first-child{white-space:nowrap}}
.site-footer__grid{display:grid;gap:2.5rem;padding:clamp(3rem,6vw,4.5rem) 0}
@media (min-width:860px){.site-footer__grid{grid-template-columns:1.2fr repeat(3,1fr)}}
.site-footer__brand{display:grid;gap:1rem;align-content:start}
.site-footer__brand svg.eagle{width:150px;height:73px;color:var(--gold)}
.site-footer__brand svg.word{width:170px;height:30px;color:#fff}
.site-footer__brand p{margin:0;max-width:22rem;font-size:.98rem;color:rgb(255 255 255 / .7)}
.site-footer h2{margin-bottom:1rem;font:750 .74rem/1.2 var(--f-display);font-stretch:78%;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.site-footer ul a{color:rgb(255 255 255 / .86);text-decoration:none;font-size:1rem}
.site-footer ul a:hover{color:var(--gold)}
.site-footer__base{display:grid;gap:.9rem;padding:1.75rem 0 calc(2.25rem + env(safe-area-inset-bottom,0px));border-top:1px solid rgb(255 255 255 / .1);font-size:.9rem;color:rgb(255 255 255 / .62)}
@media (min-width:900px){.site-footer__base{grid-template-columns:1fr auto;align-items:center}}
.site-footer__base p{margin:0}
.site-footer__base a{color:#fff}
.site-footer__base a:hover{color:var(--gold)}
.site-footer__safety{display:flex;align-items:center;gap:.6rem;grid-column:1/-1;padding:.75rem 1rem;border-radius:6px;background:rgb(255 255 255 / .05);color:rgb(255 255 255 / .8)}

/* Thanks to the volunteer who built this site */
.built-by{display:block}
.built-by b{font-family:var(--f-display);font-weight:850;letter-spacing:.02em;color:#fff}

/* Motion helpers, only when scripts run and motion is welcome */
/* Content stays visible if animation setup is interrupted. */
html.motion [data-split] .split-line{overflow:clip;padding-bottom:.06em;margin-bottom:-.06em}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important}
}
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation-duration:.35s}
.site-header{view-transition-name:site-header}

/* Small utilities kept out of inline styles so the CSP can stay strict */
.route__head .lead{margin-top:1.4rem}
.chip--hurricane{--sw:var(--hz-hurricane)}
.chip--wildfire{--sw:var(--hz-wildfire)}
.chip--flood{--sw:var(--hz-flood)}
.menu__mark{width:64px;height:31px;color:#fff}
.board__id{display:inline-flex;align-items:center;gap:.6rem}
.board__id svg{width:1.25rem;height:1.25rem;color:rgb(255 255 255 / .75)}
.creed{position:relative;padding:var(--section) var(--gutter);background:linear-gradient(180deg,var(--night),var(--night-2));color:#fff;text-align:center;overflow:hidden;isolation:isolate}
.creed::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.08}
.creed .eyebrow{display:flex;justify-content:center;margin:0 0 2rem}
.creed .eyebrow::before{display:none}
.creed p{max-width:24ch;margin:0 auto;font:italic 400 clamp(1.6rem,3.3vw,3rem)/1.22 var(--f-serif);text-wrap:balance}
.creed p + p{margin-top:.7em}
.creed em{font-style:normal;font-weight:600;color:var(--gold)}
.roll__title{margin:clamp(2.5rem,5vw,3.5rem) 0 1.25rem}

.form-wrap__aside .safety{margin-bottom:2.5rem}
.form-wrap__aside .h-lg{margin-bottom:1rem}
.page-head--plain{padding-bottom:clamp(3rem,6vw,4.5rem)}
.page-head--plain .h-xl{max-width:18ch}
html.hero-pin .hero__after::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(55% 60% at 30% 50%,rgb(6 10 14 / .5),transparent 72%)}
@media (min-width:900px){
  html.hero-pin .hero__after{place-content:center start;padding-left:max(var(--gutter),calc((100vw - var(--max)) / 2))}
  html.hero-pin .hero__after p{margin:0;text-align:left}
  html.hero-pin .hero__after p + p{margin-top:.6em}
  html.hero-pin .hero__after .eyebrow{justify-content:flex-start}
}

.h-xl + .lead,.h-lg + .lead,.h-xl + p,.h-lg + p{margin-top:1.4rem}
.form__fields{display:grid;gap:1.35rem}
.form__note{margin:0;font-size:.95rem;line-height:1.5;color:var(--ink-2)}

/* ==========================================================================
   Cinema layer (2026-10-15). Moving footage over the stills, storm controls, lightning, film grain,
   the theater and the flip board. Driven by /assets/js/cinema.js; without it none of this appears.
   ========================================================================== */

/* Films sit exactly over their still and fade in only once they are really playing */
.film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s var(--ease),filter .1s;pointer-events:none}
.is-film > .film{opacity:1}
.hero__photo .film{object-position:60% 50%}
.hero__photo--dawn .film{object-position:64% 60%}
.page-head__media .film{object-position:var(--pos,60% 55%)}
.gift__media .film{object-position:70% 60%}
.stop__photo .film{top:-7%;height:114%}
.stop__photo--tall .film{object-position:50% 18%}
html[data-motion="still"] .film{opacity:0}
.hero__photo img,.page-head__media img,.gift__media img{transition:filter .1s}

/* Storm strength and moving or still pictures, chosen in the storm controls */
.rain{rotate:calc(-12deg + var(--wind,0deg))}
html[data-motion="moving"] .rain{display:block}
html[data-motion="moving"] .rain--far{animation:rain-far .95s linear infinite}
html[data-motion="moving"] .rain--near{animation:rain-near .52s linear infinite}
html[data-motion="moving"] [data-wind-media]{scale:1.06}
html[data-storm="severe"] .rain--far{opacity:.62;animation-duration:.72s}
html[data-storm="severe"] .rain--near{opacity:.74;animation-duration:.4s}
html[data-storm="severe"] .glass{opacity:1}
html[data-storm="calm"] .rain,html[data-motion="still"] .rain{display:none}

/* Lightning: a blue white flash over the sky and a brighter frame underneath */
.flash{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;mix-blend-mode:screen;background:radial-gradient(130% 95% at 72% 0%,rgb(220 232 255 / .95),rgb(170 196 235 / .5) 45%,rgb(120 150 200 / .12) 82%)}
.is-struck .film,.is-struck .hero__photo img,.is-struck .page-head__media img{filter:brightness(1.42) contrast(1.05) saturate(.9)}

/* Film grain on the moving frames */
.grain{position:absolute;inset:-60%;z-index:-1;pointer-events:none;background:url(/assets/img/grain.svg);opacity:.2;mix-blend-mode:overlay}
html[data-motion="moving"] .grain{animation:grain .8s steps(5) infinite}
html[data-motion="still"] .grain{display:none}
@keyframes grain{0%{translate:0 0}20%{translate:-6% 4%}40%{translate:5% -7%}60%{translate:-3% 8%}80%{translate:8% 2%}100%{translate:0 0}}

/* The hero opens like a film: letterbox bars pull away as the storm comes up */
@media (prefers-reduced-motion:no-preference){
  .hero__stage::before,.hero__stage::after{content:"";position:absolute;left:0;right:0;z-index:5;height:12vh;background:#04070a;pointer-events:none;animation:bars 1.9s var(--ease-out) .15s both}
  .hero__stage::before{top:0;transform-origin:top}
  .hero__stage::after{bottom:0;transform-origin:bottom}
}
@keyframes bars{from{transform:scaleY(1)}to{transform:scaleY(0)}}

/* Reel and timecode, read from the playing film */
.tc{position:absolute;z-index:2;right:var(--gutter);bottom:2.2rem;margin:0;font:700 .64rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;white-space:pre;color:rgb(255 255 255 / .58);text-shadow:0 1px 6px rgb(0 0 0 / .6);opacity:0;transition:opacity .6s;pointer-events:none}
.tc::before{content:"";display:inline-block;width:.5rem;height:.5rem;margin-right:.6rem;border-radius:50%;background:#ff5a4d;box-shadow:0 0 8px #ff5a4d;vertical-align:-.04rem}
.tc.is-on{opacity:1}
@media (max-width:760px){.tc{display:none}}

/* Ways into the theater */
.hero__reel{display:none}
html.has-theater .hero__reel{display:inline-flex;align-items:center;gap:.7rem;margin-top:clamp(1rem,2.4svh,1.5rem);font:700 .74rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:rgb(255 255 255 / .82);text-decoration:none}
.hero__reel svg{width:1.9rem;height:1.9rem;padding:.42rem .38rem .42rem .5rem;border:1.5px solid currentColor;border-radius:50%;fill:currentColor;flex:none}
.hero__reel:hover{color:var(--gold)}
.reel-btn{display:inline-flex;align-items:center;gap:1rem;margin-top:2rem;padding:.55rem 1.3rem .55rem .55rem;border:1.5px solid var(--line-2);border-radius:999px;background:var(--white);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .3s,box-shadow .3s,transform .3s var(--ease)}
.reel-btn:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:0 18px 30px -22px rgb(14 21 29 / .7)}
.reel-btn__disc{display:grid;place-items:center;width:3rem;height:3rem;flex:none;border-radius:50%;background:var(--red);color:#fff}
.reel-btn__disc svg{width:1.3rem;height:1.3rem;margin-left:3px;fill:currentColor}
html[data-motion="moving"] .reel-btn__disc{animation:disc 2.4s var(--ease) infinite}
@keyframes disc{0%{box-shadow:0 0 0 0 rgb(198 42 44 / .45)}70%,100%{box-shadow:0 0 0 14px rgb(198 42 44 / 0)}}
.reel-btn b{display:block;font:850 .95rem/1.1 var(--f-display);font-stretch:88%;letter-spacing:.06em;text-transform:uppercase}
.reel-btn small{display:block;margin-top:.3rem;font:400 .78rem/1.2 var(--f-mono);color:var(--muted)}
.stop__play{position:absolute;z-index:3;right:.8rem;bottom:.75rem;display:inline-flex;align-items:center;gap:.4rem;min-height:44px;padding:.45rem .85rem .45rem .65rem;border:0;border-radius:999px;background:rgb(6 10 14 / .62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font:800 .7rem/1 var(--f-display);font-stretch:84%;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background-color .25s,transform .3s var(--ease)}
.stop__play svg{width:1rem;height:1rem;fill:currentColor}
.stop__play:hover{background:var(--red);transform:scale(1.04)}
.stop--end > .stop__play{position:relative;right:auto;bottom:auto;justify-self:start;margin-top:.4rem;background:var(--gold);color:var(--night)}
.stop--end > .stop__play:hover{background:#fff}

/* Headlights: a soft amber light follows the pointer across the dark bands */
.spot{position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity .6s;mix-blend-mode:screen;background:radial-gradient(540px circle at var(--sx,-600px) var(--sy,-600px),rgb(244 178 62 / .13),rgb(244 178 62 / .04) 42%,transparent 70%)}
.spot.is-on{opacity:1}
html[data-motion="still"] .spot{display:none}

/* Duty board: letters flip into place */
.flap__w{display:inline-block;white-space:nowrap}
.flap__c{display:inline-block;text-align:center}
.flap__c.is-tick{color:var(--gold);animation:tick .1s steps(2)}
@keyframes tick{0%{transform:scaleY(.55);opacity:.6}100%{transform:none;opacity:1}}

/* Storm controls */
.wx-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-width:44px;min-height:44px;padding:.5rem .75rem;border:1.5px solid currentColor;border-radius:4px;background:transparent;color:inherit;font:800 .74rem/1 var(--f-display);font-stretch:84%;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.wx-btn svg{width:1.15rem;height:1.15rem;flex:none}
.wx-btn__lamp{position:absolute;top:-5px;right:-5px;width:10px;height:10px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 2px var(--paper),0 0 10px var(--gold);opacity:0;transition:opacity .3s}
.is-dark .wx-btn__lamp{box-shadow:0 0 0 2px var(--night),0 0 10px var(--gold)}
html[data-sound="on"] .wx-btn__lamp{opacity:1}
@media (max-width:520px){.wx-btn__text{display:none}.wx-btn{padding:.5rem .65rem}}
.wx{position:fixed;inset:auto;top:calc(var(--header-h) + .4rem);right:var(--gutter);left:auto;bottom:auto;margin:0;width:min(22rem,calc(100vw - 2 * var(--gutter)));padding:1.1rem 1.1rem 1rem;border:0;border-radius:6px;background:rgb(242 241 236 / .97);color:var(--ink);box-shadow:0 30px 60px -28px rgb(0 0 0 / .7),0 0 0 1px rgb(0 0 0 / .14);font:400 .86rem/1.4 var(--f-mono);max-height:calc(100svh - var(--header-h) - 1rem);overflow:auto;overscroll-behavior:contain}
.wx:popover-open{animation:wx-in .35s var(--ease-out)}
@keyframes wx-in{from{opacity:0;transform:translateY(-8px)}}
.wx__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 .95rem;padding-bottom:.75rem;border-bottom:3px solid var(--red)}
.wx__title{margin:0;font:700 .86rem/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase}
.wx__live{display:inline-flex;align-items:center;gap:.5rem;font:700 .66rem/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--red-deep)}
.wx__live .lamp{width:.5rem;height:.5rem}
.wx__group{margin:0 0 .9rem;padding:0;border:0}
.wx__group legend{margin-bottom:.45rem;padding:0;font:700 .68rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.wx__seg{display:flex;border:1.5px solid var(--ink);border-radius:4px;overflow:hidden}
.wx__seg label{position:relative;flex:1}
.wx__seg input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.wx__seg span{display:grid;place-items:center;min-height:44px;padding:.5rem .4rem;text-align:center;font:800 .74rem/1 var(--f-display);font-stretch:86%;letter-spacing:.1em;text-transform:uppercase;transition:background-color .2s,color .2s}
.wx__seg label + label span{border-left:1.5px solid var(--ink)}
.wx__seg input:checked + span{background:var(--night);color:#fff}
.wx__seg input:focus-visible + span{outline:3px solid var(--gold);outline-offset:-3px}
.wx__note{margin:.25rem 0 0;font-size:.74rem;line-height:1.45;color:var(--ink-2)}

/* The theater: the five stop road as a short film */
.theater{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#020406;color:#fff;overflow:hidden}
.theater[open]{display:grid;grid-template-rows:minmax(0,1fr) auto;animation:theater-in .6s var(--ease-out)}
.theater::backdrop{background:#020406}
@keyframes theater-in{from{opacity:0}}
html.theater-open{overflow:hidden}
.theater__stage{display:grid;place-items:center;min-height:0;container-type:size;padding-top:env(safe-area-inset-top,0px)}
.theater__screen{position:relative;width:min(100cqw,100cqh * 2.39);aspect-ratio:2.39/1;overflow:hidden;background:#000;isolation:isolate;cursor:pointer}
@media (max-aspect-ratio:1/1){.theater__screen{width:min(100cqw,100cqh * .8);aspect-ratio:4/5}}
.theater__films{position:absolute;inset:0}
.theater__film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s var(--ease)}
.theater__film.is-on{opacity:1}
.theater__shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgb(2 4 6 / .85) 0%,rgb(2 4 6 / .2) 38%,transparent 60%),linear-gradient(90deg,rgb(2 4 6 / .6),transparent 48%)}
.theater .grain{z-index:2}
.theater__card{position:absolute;z-index:3;left:clamp(1rem,4vw,3rem);top:clamp(1rem,5vw,3rem);max-width:min(30rem,72%);pointer-events:none}
.theater__chapter{margin:0 0 .65rem;font:700 .74rem/1.2 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.theater__title{margin:0;font:850 clamp(1.6rem,4vw,3.4rem)/1 var(--f-display);font-stretch:90%;letter-spacing:-.01em;color:#fff;text-wrap:balance}
.theater__card > *{opacity:0;transform:translateY(16px)}
.theater__card.is-in > *{opacity:1;transform:none;transition:opacity .9s var(--ease-out) .25s,transform .9s var(--ease-out) .25s}
.theater__card.is-in > :nth-child(2){transition-delay:.4s}
.theater__sub{position:absolute;z-index:3;left:50%;bottom:clamp(1rem,4vw,2.5rem);width:min(46rem,88%);translate:-50% 0;margin:0;text-align:center;font:italic 400 clamp(1rem,1.7vw,1.35rem)/1.45 var(--f-serif);color:#fff;text-shadow:0 2px 12px rgb(0 0 0 / .85);opacity:0;pointer-events:none}
.theater__sub.is-in{opacity:1;transition:opacity .8s 1.1s}
.theater__credit{position:absolute;z-index:3;right:1rem;top:1rem;margin:0;font:700 .6rem/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:rgb(255 255 255 / .55)}
.theater__end{position:absolute;inset:0;z-index:4;display:grid;place-content:center;justify-items:center;gap:1.3rem;padding:2rem;text-align:center;background:rgb(2 4 6 / .66);cursor:default}
.theater__end[hidden]{display:none}
.theater__end .theater__title span{display:block;color:var(--gold)}
.theater__end .btn-row{justify-content:center}
.theater .btn--ghost{--fg:#fff;--bd:rgb(255 255 255 / .55)}
.theater .btn--ghost:hover{--bg:#fff;--fg:var(--night);--bd:#fff}
.theater__bar{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.75rem 1.75rem;padding:1rem max(clamp(1rem,3vw,2rem),env(safe-area-inset-right,0px)) max(1rem,env(safe-area-inset-bottom,0px)) max(clamp(1rem,3vw,2rem),env(safe-area-inset-left,0px))}
@media (max-width:700px) and (orientation:portrait){.theater__bar{grid-template-columns:1fr}.theater__ctl{justify-content:center}}
@media (max-width:520px){.theater__card{top:2.6rem}.theater__credit{right:auto;left:clamp(1rem,4vw,3rem)}}
/* narrow or short screens: the Sound and Close buttons keep their names for screen readers but show only the icon */
@media (max-width:440px),(max-height:500px){.theater__btn--text span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.theater__btn{padding:.5rem}.theater__ctl{gap:.35rem;flex-wrap:nowrap}}
@media (max-height:500px){.theater__bar{padding-top:.4rem;padding-bottom:max(.4rem,env(safe-area-inset-bottom,0px))}.theater__card{top:.8rem}.theater__title{font-size:clamp(1.3rem,4.4vw,2.2rem)}.theater__sub{bottom:.8rem;font-size:.95rem}.theater__end{gap:.8rem;padding:1rem}}
.theater__chapters{display:grid;grid-template-columns:repeat(5,1fr);gap:.55rem;list-style:none;margin:0;padding:0}
.theater__step{display:grid;align-content:center;gap:.45rem;width:100%;min-height:44px;padding:.35rem 0;border:0;background:none;color:rgb(255 255 255 / .5);font:700 .7rem/1 var(--f-mono);letter-spacing:.12em;text-align:left;cursor:pointer}
.theater__step.is-now,.theater__step:hover{color:#fff}
.theater__track{display:block;height:3px;border-radius:2px;background:rgb(255 255 255 / .2);overflow:hidden}
.theater__track i{display:block;height:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}
.theater__ctl{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}
.theater__btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:44px;min-height:44px;padding:.5rem .75rem;border:1.5px solid rgb(255 255 255 / .3);border-radius:4px;background:transparent;color:#fff;font:800 .72rem/1 var(--f-display);font-stretch:84%;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,background-color .2s,color .2s}
.theater__btn svg{width:1.15rem;height:1.15rem;fill:currentColor;flex:none}
.theater__btn:hover{border-color:#fff}
.theater__btn--main{border-color:#fff;background:#fff;color:var(--night)}
.theater__btn[aria-pressed="true"]{border-color:var(--gold);background:var(--gold);color:var(--night)}
.theater :focus-visible{outline:3px solid var(--gold);outline-offset:3px}

/* Page changes cut through black, like a film edit */
@media (prefers-reduced-motion:no-preference){
  ::view-transition-old(root){animation:vt-out .3s var(--ease) both}
  ::view-transition-new(root){animation:vt-in .55s var(--ease-out) both}
}
@keyframes vt-out{to{opacity:0;filter:brightness(.3)}}
@keyframes vt-in{from{opacity:0;filter:brightness(.3)}}

/* ==========================================================================
   Phones and tablets (2026-10-15). Touch sized targets, readable small print, and layouts for phones
   held sideways, where the screen is short. Desktop with a mouse is unchanged.
   ========================================================================== */

/* Touch screens: every control at least 44 pixels, and the smallest labels a little larger */
@media (pointer:coarse){
  .nav a{display:flex;align-items:center;min-height:44px}
  .btn--sm{min-height:44px}
  .chip{min-height:44px}
  .site-footer ul{gap:0}
  .site-footer ul a{display:inline-flex;align-items:center;min-height:44px}
  .crumbs a{display:inline-block;padding:1rem .2rem;margin:-1rem -.2rem}
  .textlink{min-height:44px}
  .hero__reel{min-height:44px}
  .bulletin__link{padding:.8rem 0;margin:-.8rem 0}
  .credit-card a{display:inline-flex;align-items:center;min-height:44px}
  .photo-credit,.tc{font-size:.72rem}
  .tag__lot,.usmap__sub,.role__status,.board__status,.bulletin__time,.stop__play{font-size:.76rem}
  .brand__tag{font-size:.6rem}
}
/* No hover on touch: a tapped button should not stay lifted */
@media (hover:none){
  .btn:hover,.reel-btn:hover,.stop__play:hover{transform:none}
  .btn:hover svg,.textlink:hover svg{transform:none}
}

/* Phones held sideways: a shorter header, a hero that fits its copy, two column menu, storm controls in a row */
@media (orientation:landscape) and (max-height:500px){
  :root{--header-h:62px;--section:clamp(3.5rem,8vw,5.5rem)}
  .hero__inner{padding-top:calc(var(--header-h) + 1rem);padding-bottom:1.5rem}
  .hero__kicker{margin-bottom:.9rem}
  .hero .display{font-size:clamp(2.4rem,14svh,4.2rem)}
  .hero__lead{margin:1rem 0 1.3rem;font-size:1.05rem}
  .hero .btn-row .btn{flex:0 1 auto}
  .hero__reel{margin-top:.8rem}
  .hero .photo-credit{top:auto;bottom:1rem}
  .page-head{padding-top:calc(var(--header-h) + 2.5rem)}
  .menu__inner{gap:1rem;padding-top:.4rem}
  .menu__list{grid-template-columns:1fr 1fr;column-gap:2rem}
  .menu__list a{padding:.55rem 0;font-size:clamp(1.4rem,7svh,2rem)}
  .menu__note{margin-top:0}
  .wx{width:min(40rem,calc(100vw - 2 * var(--gutter)))}
  .wx:popover-open{display:grid;grid-template-columns:1.5fr 1fr 1fr;column-gap:1rem}
  .wx__head,.wx__note{grid-column:1/-1}
  .wx__group{margin-bottom:.6rem}
  .theater__end .btn-row{flex-wrap:nowrap}
  .theater__end .btn{min-height:44px;padding:.7em 1.1em}
}

/* ==========================================================================
   Field photos, honors and the charter (2026-10-15). Real photos and documents supplied by AVERT.
   Every photo and document opens full size: a plain link without scripts, the viewer below with them.
   ========================================================================== */

/* About: the photo wall */
.photos__group{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1rem;margin:0 0 1.4rem;font-size:clamp(1.35rem,2.4vw,1.85rem);font-weight:850}
.photos__group span{font:750 .78rem/1.2 var(--f-display);font-stretch:78%;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.photos__wall{list-style:none;margin:0 0 clamp(3rem,6vw,4.5rem);padding:0;columns:3 17rem;column-gap:1.25rem}
.photos__wall:last-child{margin-bottom:0}
.photos__wall li{break-inside:avoid;margin:0 0 1.25rem}
.photos__item{margin:0}
.photos__item a{position:relative;display:block;border-radius:6px;overflow:hidden;background:var(--night);box-shadow:0 22px 44px -32px rgb(14 21 29 / .8)}
.photos__item img{width:100%;transition:transform .7s var(--ease-out),opacity .3s}
.photos__item a:hover img{transform:scale(1.03)}
.photos__item a::after{content:"";position:absolute;right:.7rem;bottom:.7rem;width:2.2rem;height:2.2rem;border-radius:50%;background:rgb(14 21 29 / .62) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M12 3h5v5M8 17H3v-5M17 3l-6 6M3 17l6-6' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/1rem no-repeat;opacity:0;transition:opacity .3s}
.photos__item a:hover::after,.photos__item a:focus-visible::after{opacity:1}
.photos__item figcaption{margin-top:.6rem;font-size:.95rem;line-height:1.45;color:var(--ink-2)}

/* Home: a sideways strip of field photos, then the honors in brief */
.fieldstrip{background:radial-gradient(80% 60% at 0% 0%,rgb(43 74 99 / .5),transparent 60%),var(--night);color:#fff;overflow:clip}
.fieldstrip .lead{color:rgb(255 255 255 / .8)}
.fieldstrip__scroller{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:max(var(--gutter),(100% - var(--max)) / 2);padding:0 max(var(--gutter),(100% - var(--max)) / 2) 1.25rem;scrollbar-width:thin;scrollbar-color:rgb(255 255 255 / .35) transparent}
.fieldstrip__scroller:focus-visible{outline-offset:-3px}
.fieldstrip__list{display:flex;gap:clamp(.8rem,1.6vw,1.25rem);width:max-content;margin:0;padding:0;list-style:none}
.fieldstrip__list li{scroll-snap-align:start}
.fieldstrip figure{margin:0}
.fieldstrip img{height:clamp(220px,34vw,380px);width:auto;max-width:none;border-radius:6px;box-shadow:0 28px 50px -34px rgb(0 0 0 / .9)}
.fieldstrip figcaption{max-width:28rem;margin-top:.65rem;font-size:.92rem;line-height:1.4;color:rgb(255 255 255 / .74)}
.fieldstrip__honors{margin-top:clamp(2.5rem,5vw,3.75rem)}
.fieldstrip__honors .label{display:block;margin-bottom:1rem;color:var(--gold)}
.fieldstrip__honors ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12.5rem),1fr));gap:1px;margin:0;padding:0;list-style:none;border-radius:8px;overflow:hidden;background:rgb(255 255 255 / .14);box-shadow:0 0 0 1px rgb(255 255 255 / .14)}
.fieldstrip__honors li{display:grid;gap:.35rem;align-content:start;padding:1.15rem 1.2rem;background:var(--night-2)}
.fieldstrip__honors b{font:820 1.05rem/1.2 var(--f-display);font-stretch:94%}
.fieldstrip__honors span{font-size:.92rem;line-height:1.35;color:rgb(255 255 255 / .7)}
.fieldstrip__links{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin-top:1.5rem}
.fieldstrip__nav{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.4rem}
.fieldstrip__nav button{display:inline-grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid rgb(255 255 255 / .35);border-radius:50%;background:transparent;color:#fff;cursor:pointer;transition:background .2s,color .2s,opacity .2s}
.fieldstrip__nav button:hover{background:#fff;color:var(--night)}
.fieldstrip__nav button[disabled]{opacity:.35;cursor:default;background:transparent;color:#fff}
.fieldstrip__nav svg{width:1.25rem;height:1.25rem}
.textlink--light{color:var(--gold)}
.textlink--light:hover{color:var(--gold-2)}

/* About: recognition. Documents sit on a mat like frames on a wall */
.honor__doc{position:relative;display:grid;place-items:center;padding:clamp(.8rem,2vw,1.25rem);border-radius:6px;background:var(--paper-3);text-decoration:none;overflow:hidden}
.honor__doc img{border-radius:2px;box-shadow:0 1px 0 rgb(0 0 0 / .08),0 18px 30px -18px rgb(14 21 29 / .7);transition:transform .5s var(--ease-out)}
.honor__doc:hover img{transform:translateY(-3px) rotate(-.4deg)}
.honor__zoom{position:absolute;right:.6rem;bottom:.6rem;padding:.4rem .65rem;border-radius:3px;background:rgb(14 21 29 / .8);color:#fff;font:750 .7rem/1 var(--f-display);font-stretch:80%;letter-spacing:.14em;text-transform:uppercase;opacity:0;transition:opacity .25s}
.honor__doc:hover .honor__zoom,.honor__doc:focus-visible .honor__zoom{opacity:1}
.honor__text .label{display:block;margin-bottom:.6rem;color:var(--red)}
.honor__text h3{font-size:clamp(1.25rem,2vw,1.55rem);font-weight:840;margin-bottom:.6rem}
.honor__text p{font-size:1rem;line-height:1.6;color:var(--ink-2)}
.honor blockquote{margin:1rem 0 0;padding:.1rem 0 .1rem 1rem;border-left:3px solid var(--red)}
.honor blockquote p{font-style:italic;font-size:1.05rem;color:var(--ink)}
.honor__transcript{margin-top:1rem}
.honor__transcript summary{display:inline-flex;align-items:center;gap:.5em;min-height:44px;cursor:pointer;font:800 .82rem/1 var(--f-display);font-stretch:86%;letter-spacing:.08em;text-transform:uppercase;color:var(--red)}
.honor__transcript summary::marker{content:""}
.honor__transcript summary::-webkit-details-marker{display:none}
.honor__transcript summary::after{content:"+";font-size:1.2em;line-height:1}
.honor__transcript[open] summary::after{content:"\2212"}
.honor__transcript > div{padding:.6rem 0 0 1rem;border-left:1px solid var(--line-2)}
.honor__transcript > div p{font-size:.98rem}
.honor--feature{display:grid;gap:clamp(1.5rem,4vw,3rem);padding:clamp(1.2rem,3vw,2rem);margin-bottom:clamp(1.5rem,3vw,2rem);border-radius:10px;background:var(--white);box-shadow:0 0 0 1px var(--line)}
@media (min-width:960px){.honor--feature{grid-template-columns:1.15fr 1fr;align-items:start}}
.honor__docs{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(.6rem,1.5vw,1rem);align-items:start}
.honor__docs .honor__doc{height:100%}
.honor__also{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}
.honor__also p{margin-bottom:.9rem}
.honor__minis{display:flex;gap:.75rem;align-items:flex-end}
.honor__minis .honor__doc{padding:.5rem}
.honor__minis img{height:7.5rem;width:auto}
.honors__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));gap:clamp(1rem,2vw,1.5rem);margin:0;padding:0;list-style:none}
.honors__grid .honor{display:grid;grid-template-rows:auto 1fr;border-radius:10px;overflow:hidden;background:var(--white);box-shadow:0 0 0 1px var(--line)}
.honors__grid .honor__doc{display:flex;align-items:center;justify-content:center;height:clamp(16rem,30vw,19rem);border-radius:0}
.honors__grid .honor__doc picture{display:contents}
.honors__grid .honor__doc img{width:auto;height:auto;max-width:100%;max-height:100%}
.honors__grid .honor__text{padding:1.3rem 1.35rem 1.5rem}
.honors__grid .honor--news{position:relative;isolation:isolate;grid-template-rows:1fr;background:var(--night);color:#fff}
.honor--news::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/isobars.svg) center/cover;opacity:.12}
.honors__grid .honor--news .honor__text{display:flex;flex-direction:column;justify-content:center;padding:clamp(1.5rem,3vw,2.2rem)}
.honor--news .label{color:var(--gold)}
.honor--news p{color:rgb(255 255 255 / .8)}
.honor--news .textlink{margin-top:.6rem;color:var(--gold)}

/* About: the leader's portrait takes the place of the initials badge */
.leader__photo{width:9rem;height:9rem;border-radius:50%;overflow:hidden;box-shadow:0 0 0 3px var(--gold),0 0 0 9px rgb(244 178 62 / .15)}
.leader__photo img{width:100%;height:100%;object-fit:cover}
.leader p a{color:var(--gold)}

/* Charter: the band on About and the principles on both pages */
.charter-band{background:linear-gradient(180deg,var(--night),var(--night-2));color:#fff;overflow:clip}
.charter-band::before{content:"";position:absolute;inset:0;background:url(/assets/img/isobars.svg) center/cover;opacity:.1;pointer-events:none}
.charter-band__grid{position:relative;display:grid;gap:3rem}
@media (min-width:1000px){.charter-band__grid{grid-template-columns:.9fr 1.1fr;gap:4.5rem;align-items:start}.charter-band__head{position:sticky;top:calc(var(--header-h) + 2rem)}}
.charter-band .lead{margin:1.4rem 0 2rem;color:rgb(255 255 255 / .82)}
.principles{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:1px;margin:0;padding:0;list-style:none;border-radius:8px;overflow:hidden;background:var(--line);box-shadow:0 0 0 1px var(--line)}
.principles li{padding:1.5rem 1.45rem;background:var(--white)}
.principles__num{display:block;margin-bottom:.8rem;font-size:1.4rem;line-height:1;color:var(--red)}
.principles h3{font-size:1.18rem;font-weight:820;margin-bottom:.45rem}
.principles p{margin:0;font-size:1rem;line-height:1.55;color:var(--ink-2)}
.principles--band{background:rgb(255 255 255 / .12);box-shadow:0 0 0 1px rgb(255 255 255 / .12)}
.principles--band li{background:rgb(14 21 29 / .88)}
.principles--band .principles__num{color:var(--gold)}
.principles--band p{color:rgb(255 255 255 / .74)}

/* Charter page */
.charter__purpose{margin:0;font:400 clamp(1.3rem,2.3vw,1.85rem)/1.5 var(--f-serif);color:var(--ink);text-wrap:pretty}
.cycle{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:0;padding:0;list-style:none}
@media (min-width:760px){.cycle{grid-template-columns:repeat(4,1fr)}}
.cycle li{position:relative;display:grid;gap:.5rem;padding:1.15rem 1.1rem 1.25rem;border-radius:8px;background:var(--white);box-shadow:0 0 0 1px var(--line)}
.cycle li:last-child{background:var(--night);color:#fff;box-shadow:none}
.cycle__num{font-size:1.25rem;line-height:1;color:var(--red)}
.cycle li:last-child .cycle__num{color:var(--gold)}
.cycle b{font:850 clamp(1.15rem,1.8vw,1.4rem)/1.1 var(--f-display);font-stretch:96%}
.charter{display:grid;gap:2rem}
@media (min-width:1000px){.charter{grid-template-columns:16rem 1fr;gap:4rem;align-items:start}.charter__toc{position:sticky;top:calc(var(--header-h) + 1.5rem)}}
.charter__toc details{border-top:3px solid var(--ink);padding-top:.4rem}
.charter__toc summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:var(--red)}
.charter__toc ol{margin:.25rem 0 0;padding:0;list-style:none;font:700 .95rem/1.3 var(--f-display);font-stretch:92%}
.charter__toc a{display:flex;gap:.45em;padding:.4rem 0;text-decoration:none;color:var(--ink-2)}
.charter__toc a:hover{color:var(--red)}
.charter__toc a span{min-width:2.4em;color:var(--muted)}
.charter__body h2{margin-top:0}
.charter__body h3{scroll-margin-top:calc(var(--header-h) + 1.25rem)}
.charter__art{display:block;margin-bottom:.35rem;font:750 .74rem/1.2 var(--f-display);font-stretch:78%;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}
.creed__actions{justify-content:center;margin-top:2.5rem}

/* Donate: one line of proof under where the money goes */
.proof{max-width:52rem;margin:clamp(2rem,4vw,3rem) 0 0;padding:clamp(1.3rem,3vw,1.8rem) clamp(1.3rem,3vw,2rem);border-left:4px solid var(--red);border-radius:0 8px 8px 0;background:var(--white);box-shadow:0 0 0 1px var(--line)}
.proof blockquote{margin:0}
.proof blockquote p{font:italic 400 clamp(1.15rem,2vw,1.45rem)/1.45 var(--f-serif);color:var(--ink)}
.proof figcaption{margin-top:.8rem;font-size:.95rem;color:var(--ink-2)}

/* Full size viewer for photos and documents (scripts on). Without scripts each link opens the image */
.lightbox{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff;overflow:hidden}
.lightbox::backdrop{background:#06090d}
.lightbox[open]{display:grid;grid-template-rows:auto 1fr auto}
.lightbox__bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:calc(.6rem + env(safe-area-inset-top,0px)) var(--gutter) .6rem}
.lightbox__count{font:700 .78rem/1 var(--f-mono);letter-spacing:.12em;color:rgb(255 255 255 / .7)}
.lightbox__stage{position:relative;display:grid;place-items:center;min-height:0;padding:0 var(--gutter)}
.lightbox__img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:3px;box-shadow:0 30px 80px -30px #000}
.lightbox__cap{margin:0;padding:.9rem var(--gutter) calc(1rem + env(safe-area-inset-bottom,0px));text-align:center;font-size:1rem;line-height:1.45;color:rgb(255 255 255 / .86)}
.lightbox__btn{display:inline-grid;place-items:center;min-width:44px;min-height:44px;padding:0 .9rem;border:1px solid rgb(255 255 255 / .35);border-radius:4px;background:rgb(14 21 29 / .6);color:#fff;font:800 .8rem/1 var(--f-display);font-stretch:86%;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.lightbox__btn:hover{background:#fff;color:var(--night)}
.lightbox__btn svg{width:1.2rem;height:1.2rem}
.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;padding:0;border-radius:50%}
.lightbox__nav--prev{left:max(.5rem,env(safe-area-inset-left,0px))}
.lightbox__nav--next{right:max(.5rem,env(safe-area-inset-right,0px))}
.lightbox[data-single] .lightbox__nav{display:none}
html.lightbox-open{overflow:hidden}
@media (orientation:landscape) and (max-height:500px){.lightbox__cap{padding-top:.4rem;font-size:.9rem}.fieldstrip img{height:62svh}}
@media (prefers-reduced-motion:reduce){.photos__item img,.honor__doc img{transition:none}.photos__item a:hover img,.honor__doc:hover img{transform:none}}
@media (pointer:coarse){.photos__item a::after,.honor__zoom{opacity:1}.charter__toc a{min-height:44px;align-items:center}}

/* Search and trust pass (2026-10-15): pull quote, press coverage list, team cards, press page and the help guide */
.pullquote{margin:2rem 0;padding:1.4rem 0 1.4rem 1.4rem;border-left:4px solid var(--red)}
.pullquote blockquote{margin:0}
.pullquote blockquote p{font:italic 400 clamp(1.25rem,2.2vw,1.6rem)/1.4 var(--f-serif);color:var(--ink)}
.pullquote figcaption{margin-top:.6rem;font-size:.95rem;color:var(--ink-2)}
.coverage{display:grid;gap:.9rem;margin:.4rem 0 1rem;padding:0;list-style:none}
.coverage li{display:grid;gap:.2rem;padding-bottom:.9rem;border-bottom:1px solid rgb(255 255 255 / .14)}
.coverage a{font:780 1.02rem/1.3 var(--f-display);font-stretch:94%;color:#fff;text-decoration:none}
.coverage a:hover{color:var(--gold)}
.coverage span{font-size:.88rem;color:rgb(255 255 255 / .66)}
.roll--team{margin:1.5rem 0 clamp(2.5rem,5vw,3.5rem)}
.roll--team li{scroll-margin-top:calc(var(--header-h) + 1.25rem)}
.facts{display:grid;gap:1px;margin:0;border-radius:8px;overflow:hidden;background:var(--line);box-shadow:0 0 0 1px var(--line)}
.facts > div{display:grid;gap:.3rem;padding:1.1rem 1.3rem;background:var(--white)}
@media (min-width:760px){.facts > div{grid-template-columns:13rem 1fr;gap:1.5rem;align-items:baseline}}
.facts dt{font:750 .76rem/1.3 var(--f-display);font-stretch:80%;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.facts dd{margin:0;font-size:1rem;line-height:1.55;color:var(--ink)}
.facts dd small{display:block;margin-top:.25rem;font-size:.86rem;color:var(--muted)}
.press-list{display:grid;gap:1rem;margin:0;padding:0;list-style:none}
.press-list li{display:grid;gap:.35rem;padding:1.25rem 1.35rem;border-radius:8px;background:var(--white);box-shadow:0 0 0 1px var(--line)}
.press-list a{font:820 1.15rem/1.25 var(--f-display);font-stretch:94%;text-decoration:none;color:var(--ink)}
.press-list a:hover{color:var(--red)}
.press-list .label{color:var(--red)}
.press-list p{margin:0;font-size:1rem;color:var(--ink-2)}
.kit{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:1rem;margin:0;padding:0;list-style:none}
.kit li{display:grid;gap:.6rem;align-content:start;padding:1rem;border-radius:8px;background:var(--white);box-shadow:0 0 0 1px var(--line)}
.kit img{width:100%;height:11rem;object-fit:contain;background:var(--paper-2);border-radius:4px}
.kit b{font:820 1rem/1.25 var(--f-display)}
.kit span{font-size:.9rem;color:var(--ink-2)}
.kit a{display:inline-flex;align-items:center;min-height:44px;font:800 .82rem/1 var(--f-display);font-stretch:86%;letter-spacing:.08em;text-transform:uppercase;color:var(--red);text-decoration:none}
.guide{display:grid;gap:2.5rem}
@media (min-width:1000px){.guide{grid-template-columns:16rem 1fr;gap:4rem;align-items:start}.guide .charter__toc{position:sticky;top:calc(var(--header-h) + 1.5rem)}}
.guide__body h2{scroll-margin-top:calc(var(--header-h) + 1.25rem)}
.guide__body .source{display:block;margin-top:.35rem;font-size:.88rem;color:var(--muted)}
.guide__body .source a{color:inherit}
.answer{margin:0 0 2rem;padding:1.3rem 1.4rem;border-radius:8px;background:var(--white);box-shadow:0 0 0 1px var(--line);border-left:4px solid var(--gold)}
.answer p{margin:0;font-size:1.08rem;line-height:1.6}
.sources{margin-top:2.5rem;padding-top:1.5rem;border-top:3px solid var(--ink)}
.sources ol{padding-left:1.25em;font-size:.95rem;color:var(--ink-2)}
.sources li{margin:.45em 0}
@media (pointer:coarse){.coverage a,.press-list a{display:flex;align-items:center;min-height:44px}}
.optout{display:grid;gap:.9rem;justify-items:start;margin:1.2rem 0 0;padding:1.2rem 1.3rem;border-radius:8px;background:var(--white);box-shadow:0 0 0 1px var(--line)}
.optout__status{margin:0;font-weight:600}
.prose code{font:600 .92em var(--f-mono);background:var(--paper-2);padding:.05em .3em;border-radius:3px}
