/* Hallmark · macrostructure: Layered Marquee Hero + record ledger · tone: steady, local, accomplished · theme: custom (Stand for Freedom Studio Masters, positive) · display: Newsreader 700 (opsz 72) · body: Barlow · nav: N1a wordmark only · footer: Ft5 statement with FEC box · pre-emit critique: P5 H5 E5 S5 R4 V5 */
@font-face{font-family:Newsreader;font-weight:500 800;font-style:normal;font-display:swap;src:url(/assets/fonts/Newsreader-var-latin.woff2) format("woff2")}
@font-face{font-family:Barlow;font-weight:500;font-style:normal;font-display:swap;src:url(/assets/fonts/Barlow-500.woff2) format("woff2")}
@font-face{font-family:Barlow;font-weight:600;font-style:normal;font-display:swap;src:url(/assets/fonts/Barlow-600.woff2) format("woff2")}
@font-face{font-family:Barlow;font-weight:700;font-style:normal;font-display:swap;src:url(/assets/fonts/Barlow-700.woff2) format("woff2")}
:root{
  --color-bg:#F6F3EC; --color-ink:#0F1B33; --color-body:#2B3244; --color-src:#5E677A; --color-panel:#FDFBF7; --color-panel-2:#FFFFFF;
  --color-line:rgba(15,27,51,.14); --color-line-strong:rgba(15,27,51,.36);
  --color-hero:#0F1B33; --color-hero-ink:#F6F3EC; --color-hero-body:#D7DCE8; --color-hero-line:rgba(246,243,236,.2);
  --color-accent:#D8151E; --color-accent-deep:#A9000D; --color-on-accent:#FFFFFF; --color-em:#C8202A; --color-hero-em:#FF3B45;
  --color-band:#C8202A; --color-focus:#355BBD;
  --color-card-bg:#FDFBF7; --color-card-ink:#0F1B33; --color-card-body:#2B3244; --color-card-src:#5E677A; --color-card-em:#C8202A; --color-card-rule:#D8151E; --color-footer:#FDFBF7;
  --font-display:Newsreader,Georgia,"Times New Roman",serif; --font-ui:Barlow,"Helvetica Neue",Arial,sans-serif;
  --space-2xs:4px; --space-xs:8px; --space-sm:12px; --space-md:20px; --space-lg:32px; --space-xl:56px; --space-2xl:88px; --space-3xl:132px;
  --text-xs:.74rem; --text-sm:.88rem; --text-md:1.02rem; --text-lg:1.18rem; --text-xl:1.5rem;
  --text-name:clamp(3rem,9.2vw,6.2rem); --text-msg:clamp(1.9rem,5.4vw,3.3rem); --text-h2:clamp(2rem,5vw,3.2rem); --text-card:clamp(1.5rem,3.6vw,1.95rem); --text-num:clamp(2rem,6vw,3rem);
  --ease-out:cubic-bezier(.16,1,.3,1); --dur-fast:160ms; --dur-base:420ms; --dur-slow:900ms;
  --wrap:1140px; --gutter:20px;
}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--color-bg);color:var(--color-ink);overflow-x:clip;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--font-ui);font-weight:500;font-size:var(--text-md);line-height:1.5;background:var(--color-bg);color:var(--color-ink);overflow-x:clip;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:700;font-style:normal;font-variation-settings:"opsz" 72;line-height:1;letter-spacing:-.015em;overflow-wrap:anywhere;min-width:0}
p{margin:0}
em{font-style:normal;color:var(--color-em)}
.wrap{width:min(var(--wrap),calc(100% - 2*var(--gutter)));margin-inline:auto}
.skip{position:absolute;left:12px;top:-60px;z-index:50;padding:10px 14px;background:var(--color-ink);color:var(--color-bg)}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}

/* ---------- election countdown banner ---------- */
.banner{background:var(--color-accent);color:var(--color-on-accent);text-align:center;padding:11px var(--gutter);font-family:var(--font-display);font-weight:600;font-variation-settings:"opsz" 24;font-size:1.04rem;line-height:1.3;letter-spacing:.03em;text-transform:uppercase;text-wrap:balance}
.banner strong{font-weight:700}
.banner__short{display:none}
@media (max-width:640px){.banner__long{display:none}.banner__short{display:inline}.banner{font-size:.98rem}}

/* ---------- layered hero ---------- */
.hero{position:relative;isolation:isolate;overflow:clip;background:var(--color-hero);color:var(--color-hero-ink)}
.hero__tex{position:absolute;inset:0;z-index:-3;background:url(/assets/img/flag-texture.webp) center/cover no-repeat;opacity:.9}
.hero__band{position:absolute;top:0;bottom:0;right:0;z-index:-2;width:clamp(90px,20vw,320px);background:var(--color-band);clip-path:polygon(38% 0,100% 0,100% 100%,0 100%)}
.hero__band::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 40%,rgba(0,0,0,.18));}
.hero__wrap{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}
.masthead{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) 0 0}
.brand img{height:34px;width:auto}
.brand--text{color:var(--color-hero-ink);text-decoration:none;font-weight:700;font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase}
.masthead:empty{padding:0;min-height:var(--space-md)}
.hero__copy{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg) 0 var(--space-md);max-width:36rem;container-type:inline-size;min-width:0}
.kicker{font-weight:700;font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--color-hero-body);display:inline-flex;align-items:center;gap:10px}
.kicker::before{content:"";width:26px;height:2px;background:var(--color-accent)}
.name{font-size:var(--text-name);line-height:.94;color:var(--color-hero-ink)}
@supports (font-size:1cqw){.name{font-size:min(var(--text-name),15.2cqw)}}
.name span{display:block;white-space:nowrap}
.rule{width:72px;height:5px;background:var(--color-accent)}
.msg{font-family:var(--font-display);font-weight:600;font-variation-settings:"opsz" 72;font-size:var(--text-msg);line-height:1.02;letter-spacing:-.015em;text-wrap:balance;color:var(--color-hero-ink)}
.msg em{color:var(--color-hero-em)}
.lede{font-size:var(--text-lg);line-height:1.45;color:var(--color-hero-body);max-width:34rem;text-wrap:pretty}
.lede--box{background:var(--color-card-bg);color:var(--color-card-ink);padding:var(--space-md);max-width:30rem}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);align-items:center;margin-top:var(--space-xs)}
.hero__cut{position:relative;display:flex;justify-content:flex-end;align-items:flex-end;min-height:0;margin:0 calc(-1*var(--gutter)) 0 0}
.hero__cut img{width:auto;max-width:100%;height:auto;max-height:min(68vw,520px);filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.hero__cut--wide img{max-height:min(60vw,440px)}
@media (min-width:900px){
  .hero__wrap{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);column-gap:var(--space-xl);align-items:stretch;min-height:660px}
  .masthead{grid-column:1/-1}
  .hero__copy{padding:var(--space-xl) 0 var(--space-xl);justify-content:center}
  .hero__cut{margin:0;align-items:flex-end}
  .hero__cut img{max-height:620px}
  .hero__cut--wide img{max-height:520px;max-width:none;width:min(100%,720px)}
  .hero__cut--bleed{justify-content:flex-start;align-items:flex-end;margin-right:calc(-1*max(var(--gutter),(100vw - var(--wrap))/2))}
  .hero__cut--bleed img{max-height:none;max-width:none;width:min(140%,900px)}
}
.hero__cut--bleed{margin-right:calc(-1*var(--gutter))}
.hero__cut--bleed img{max-height:none;width:min(100%,520px);max-width:none}

/* chips */
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 10px}
.chip{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--color-hero-line);padding:8px 12px;font-weight:700;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-hero-ink);white-space:nowrap}
.chip::before{content:"";width:8px;height:8px;background:var(--color-accent);flex:none}
.chip--hot{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}
.chip--hot::before{background:var(--color-on-accent)}

/* endorsement */
.endorse{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg);align-items:center}
@media (min-width:900px){.endorse{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:var(--space-2xl)}}
.endorse__img{margin:0;border:1px solid var(--color-hero-line);box-shadow:0 24px 60px rgba(0,0,0,.35)}
.endorse__img img{width:100%;height:auto}
.endorse .quote{border-left-color:var(--color-hero-em)}
.endorse .quote cite{color:var(--color-hero-body)}

/* framed photograph variant of the hero image */
.hero__photo{position:relative;margin:0 0 var(--space-lg);aspect-ratio:3/2;overflow:hidden;border:1px solid var(--color-hero-line);box-shadow:0 24px 60px rgba(0,0,0,.4);background:var(--color-hero)}
.hero__photo img{width:100%;height:100%;object-fit:cover;object-position:var(--focus,50% 40%);transform:scale(1.04);transition:transform 1.4s var(--ease-out)}
.hero.is-in .hero__photo img{transform:none}
@media (min-width:900px){.hero__photo{aspect-ratio:4/5;max-height:600px;align-self:center;justify-self:end;width:min(100%,480px);margin:var(--space-lg) 0}}

/* framed photograph in a section */
.frame{margin:0;border:1px solid var(--color-line-strong);box-shadow:0 22px 50px rgba(15,27,51,.18);background:var(--color-panel)}
.frame img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.frame figcaption{padding:10px 14px;font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-src)}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:14px;background:var(--color-accent);color:var(--color-on-accent);text-decoration:none;font-weight:700;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;padding:17px 24px;border:0;cursor:pointer;line-height:1;white-space:nowrap;transition:background var(--dur-fast) linear,transform var(--dur-fast) var(--ease-out)}
.btn::after{content:"\2192";font-size:1.15em;line-height:0;transition:transform var(--dur-base) var(--ease-out)}
.btn:hover,.btn:focus-visible{background:var(--color-accent-deep)}
.btn:hover::after{transform:translateX(5px)}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.55;cursor:default}
.btn--ghost{background:transparent;color:inherit;border:1px solid currentColor;opacity:.9}
.btn--ghost:hover,.btn--ghost:focus-visible{background:rgba(127,127,127,.12)}
.btn--ghost::after{content:"\2193"}

/* ---------- sections ---------- */
.sec{padding:var(--space-2xl) 0}
.sec+.sec{border-top:1px solid var(--color-line)}
.sec--band{background:var(--color-hero);color:var(--color-hero-ink);border-top:0}
.sec--band .eyebrow{color:var(--color-hero-em)}
.sec--band .sec__lede,.sec--band .prose{color:var(--color-hero-body)}
.sec--band em{color:var(--color-hero-em)}
.sec--panel{background:var(--color-panel)}
.sec__head{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg);max-width:44rem}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--color-em)}
.eyebrow::before{content:"";width:26px;height:2px;background:currentColor}
.sec__title{font-size:var(--text-h2);line-height:1;text-wrap:balance}
.sec__lede{color:var(--color-body);font-size:var(--text-lg);max-width:40rem;text-wrap:pretty}

/* cards */
.cards{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md)}
@media (min-width:760px){.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--space-lg)}}
.card{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg) var(--space-md) var(--space-md);background:var(--color-card-bg);border-top:4px solid var(--color-card-rule);text-decoration:none;color:var(--color-card-ink);position:relative;transition:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}
a.card:hover,a.card:focus-visible{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.12)}
.card__date{font-weight:700;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-card-em)}
.card em{color:var(--color-card-em)}
.card__title{font-size:var(--text-card);line-height:1.02}
.card__body{color:var(--color-card-body);font-size:var(--text-md);line-height:1.45;text-wrap:pretty}
.card__src{color:var(--color-card-src);font-size:var(--text-sm);line-height:1.4;margin-top:auto}
.card__src a{color:inherit}
.card__more{font-weight:700;font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--color-card-ink);display:inline-flex;gap:10px;align-items:center;margin-top:var(--space-xs)}
.card__more::after{content:"\2192";color:var(--color-card-em);font-size:1.15em;line-height:0}

/* split (bio) */
.split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg);align-items:center}
@media (min-width:900px){.split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--space-2xl)}.split--rev>:first-child{order:2}.split--photo{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--space-xl);align-items:start}.split--photo .frame{position:sticky;top:var(--space-lg)}}
.plate{position:relative;isolation:isolate;display:flex;justify-content:center;align-items:flex-end;background:var(--color-hero);min-height:360px;overflow:clip;margin:0}
.plate::before{content:"";position:absolute;inset:0;z-index:-1;background:url(/assets/img/flag-texture.webp) center/cover no-repeat;opacity:.9}
.plate::after{content:"";position:absolute;top:0;bottom:0;right:0;width:14%;background:var(--color-band);clip-path:polygon(50% 0,100% 0,100% 100%,0 100%);z-index:-1}
.plate img{max-height:520px;width:auto;max-width:92%;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.plate--wide{background:transparent}
.plate--wide::before,.plate--wide::after{display:none}
.plate--wide img{max-height:440px;max-width:100%}
.biolist{list-style:none;margin:var(--space-lg) 0 0;padding:0;display:grid;gap:var(--space-md)}
.biolist li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-md);align-items:start;padding-top:var(--space-md);border-top:1px solid var(--color-line)}
.biolist b{font-family:var(--font-display);font-weight:700;font-variation-settings:"opsz" 72;font-size:var(--text-xl);line-height:1.1;color:var(--color-em);min-width:7.5rem}
.biolist p{color:var(--color-body);text-wrap:pretty}

/* timeline */
.tl{list-style:none;margin:0;padding:0;position:relative}
.tl::before{content:"";position:absolute;left:11px;top:14px;bottom:14px;width:2px;background:var(--color-line-strong)}
.tl li{position:relative;padding:0 0 var(--space-lg) 44px}
.tl li::before{content:"";position:absolute;left:4px;top:8px;width:16px;height:16px;background:var(--color-accent);border:3px solid var(--color-bg);box-shadow:0 0 0 2px var(--color-accent)}
.tl li:last-child{padding-bottom:0}
.tl__date{display:block;font-family:var(--font-display);font-weight:700;font-variation-settings:"opsz" 72;font-size:var(--text-num);line-height:1;color:var(--color-em)}
.tl__what{display:block;margin-top:var(--space-xs);font-size:var(--text-lg);font-weight:600;line-height:1.35;max-width:56ch;text-wrap:pretty}
.tl__src{display:block;margin-top:var(--space-2xs);color:var(--color-src);font-size:var(--text-sm)}
.tl__src a{color:inherit}
@media (min-width:760px){.tl li{display:grid;grid-template-columns:210px minmax(0,1fr);column-gap:var(--space-lg);padding-left:44px}.tl__what{margin-top:4px}}

/* quote */
.quote{border-left:4px solid var(--color-accent);padding:var(--space-sm) var(--space-md);margin:var(--space-lg) 0 0;max-width:60ch}
.quote p{font-family:var(--font-display);font-weight:600;font-variation-settings:"opsz" 72;font-size:clamp(1.35rem,3.2vw,1.9rem);line-height:1.2;text-wrap:pretty}
.quote cite{display:block;margin-top:var(--space-xs);font-style:normal;color:var(--color-src);font-size:var(--text-sm)}
.quote cite a{color:inherit}

/* ledger */
.ledger{width:100%;border-collapse:collapse;font-size:var(--text-md)}
.ledger th,.ledger td{text-align:left;vertical-align:top;padding:16px 0;border-bottom:1px solid var(--color-line)}
.ledger th{font-weight:700;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-src)}
.ledger td:last-child,.ledger th:last-child{text-align:right;white-space:nowrap;padding-left:var(--space-md)}
.ledger .num{font-family:var(--font-display);font-weight:700;font-variation-settings:"opsz" 72;font-size:clamp(1.4rem,4vw,2rem);line-height:1}
.ledger .sub{display:block;color:var(--color-src);font-size:var(--text-sm);margin-top:4px;text-wrap:pretty}
.ledger tr.total td{border-bottom:0;border-top:2px solid var(--color-ink);padding-top:18px}
.ledger tr.total .num{font-size:clamp(1.9rem,6vw,2.7rem);color:var(--color-em)}
@media (max-width:640px){.ledger thead{display:none}.ledger tr{display:block;padding:14px 0;border-bottom:1px solid var(--color-line)}.ledger td{display:block;padding:0;border:0}.ledger td:last-child{text-align:left;padding:8px 0 0}.ledger tr.total{border-top:2px solid var(--color-ink);border-bottom:0;padding-top:18px}.ledger tr.total td{border:0;padding-top:0}.ledger tr.total td:last-child{padding-top:8px}}

/* facts */
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:var(--space-md);margin-top:var(--space-lg)}
.fact{border-top:2px solid currentColor;padding-top:var(--space-sm);min-width:0;overflow-wrap:anywhere}
.fact__num{display:block;font-family:var(--font-display);font-weight:700;font-variation-settings:"opsz" 72;font-size:clamp(1.6rem,3.2vw,2.6rem);line-height:1;color:var(--color-em);letter-spacing:-.01em}
.split .fact__num{font-size:clamp(1.5rem,2.2vw,2.1rem)}
.sec--band .fact__num{color:var(--color-hero-em)}
.fact__label{display:block;margin-top:6px;font-weight:600;font-size:var(--text-sm);line-height:1.35}
.fact__src{display:block;margin-top:4px;color:var(--color-src);font-size:var(--text-xs)}
.sec--band .fact__src{color:var(--color-hero-body)}

.prose{max-width:62ch;color:var(--color-body);font-size:var(--text-lg);line-height:1.5;display:grid;gap:var(--space-md);text-wrap:pretty}
.prose strong{color:inherit;font-weight:700}
.close{font-family:var(--font-display);font-weight:700;font-variation-settings:"opsz" 72;font-size:clamp(1.9rem,5.4vw,3.1rem);line-height:1.02;max-width:24ch;margin-top:var(--space-xl);letter-spacing:-.015em}

/* statement */
.stamp{display:inline-block;font-family:var(--font-display);font-weight:700;font-variation-settings:"opsz" 72;font-size:clamp(1.7rem,4.6vw,2.9rem);line-height:1.1;color:var(--color-em);text-decoration:underline;text-decoration-color:var(--color-accent);text-decoration-thickness:5px;text-underline-offset:9px;margin-top:var(--space-xs);letter-spacing:-.01em}

/* sources */
.sources{padding:var(--space-xl) 0;border-top:1px solid var(--color-line)}
.sources h2{font-size:var(--text-xl);margin-bottom:var(--space-md)}
.sources ol{margin:0;padding-left:1.4em;color:var(--color-src);font-size:var(--text-sm);line-height:1.5;display:grid;gap:8px;max-width:78ch;overflow-wrap:anywhere}
.sources a{color:var(--color-body)}
.sources li::marker{color:var(--color-em);font-weight:700}

/* share + optin */
.share{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}
.share .btn{font-size:.76rem;padding:13px 16px}
.share__status{color:var(--color-src);font-size:var(--text-sm)}
.optin{display:grid;gap:var(--space-sm);max-width:560px}
.optin__row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}
.field{display:grid;gap:6px}
.field span{font-weight:700;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-body)}
.field .opt{font-weight:500;letter-spacing:0;text-transform:none;font-style:normal;color:var(--color-src)}
.field input{font:inherit;font-size:1rem;padding:13px 14px;background:var(--color-panel);color:var(--color-ink);border:1px solid var(--color-line-strong);border-radius:0;width:100%;min-width:0}
.field input:focus{outline:0;border-color:var(--color-ink);box-shadow:0 0 0 3px var(--color-line)}
.field.is-error input{border-color:var(--color-accent)}
.field .err{color:var(--color-accent);font-size:var(--text-xs);min-height:1em}
.consent{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start;font-size:var(--text-sm);line-height:1.45;color:var(--color-src)}
.consent input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--color-accent)}
.consent a{color:var(--color-body)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.optin__msg{font-size:var(--text-sm);color:var(--color-body);min-height:1.4em}
.optin__msg.is-error{color:var(--color-accent)}
.grid-2{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-xl)}
@media (min-width:900px){.grid-2{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--space-2xl)}}

/* footer: the FEC box lives here */
.footer{padding:var(--space-xl) 0 0;border-top:1px solid var(--color-line);color:var(--color-src);font-size:var(--text-sm);background:var(--color-footer)}
.footer__disc{margin-top:var(--space-lg);padding:var(--space-md) 0;background:var(--color-hero)}
.footer__disc .disc{margin:0 auto;max-width:760px;color:var(--color-hero-ink);border-color:var(--color-hero-line)}
.disc{display:block;border:1px solid var(--color-line-strong);padding:14px 16px;font-size:.78rem;line-height:1.35;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink);text-align:center;text-wrap:balance}
.footer__row{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-md);justify-content:space-between;align-items:center;margin-top:var(--space-md)}
.footer__links{display:flex;flex-wrap:wrap;gap:var(--space-md)}
.footer a{color:var(--color-body);text-decoration:none;border-bottom:1px solid var(--color-line-strong)}
.footer a:hover{color:var(--color-ink);border-color:var(--color-ink)}
.footer__brand img{height:26px;width:auto;opacity:.9}

/* legal pages */
.legal{padding:var(--space-xl) 0 var(--space-2xl);max-width:70ch}
.legal h1{font-size:clamp(2rem,6vw,3rem);margin-bottom:var(--space-md)}
.legal h2{font-size:var(--text-xl);margin:var(--space-lg) 0 var(--space-xs)}
.legal p,.legal li{color:var(--color-body);line-height:1.55}
.legal ul{padding-left:1.2em}
.legal .updated{color:var(--color-src);font-size:var(--text-sm);margin-bottom:var(--space-sm)}
.legal a{color:var(--color-ink)}
.minihead{padding:var(--space-md) 0;background:var(--color-hero)}
.minihead img{height:30px;width:auto}

/* audience rules */
/* one site for every visitor (JR, Sept 30): the audience split is off */
.order-ab-first{order:-1}
.aud-c{display:none !important}
html:not([data-review]) .hold{display:none !important}

/* reveal */
.js-reveal .reveal{opacity:0;transform:translateY(18px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out)}
.js-reveal .reveal.in{opacity:1;transform:none}
.hero__cut img{transform:translateY(14px);opacity:0;transition:transform 1.1s var(--ease-out),opacity .9s var(--ease-out)}
.hero.is-in .hero__cut img,html:not(.js) .hero__cut img{transform:none;opacity:1}
@media (prefers-reduced-motion:reduce){.reveal,.hero__cut img{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
