/* Plan: subject The Reserve Tenant Union; audience tenants at 215 E 124th St; job: explain offers, get them to email JOIN.
   Layout: navy bar / centered serif headline + rule / image left, text right / offers / footer.
   Alignment: left for body, headline centered as on the flyer. */
:root{
  --navy:#1e3a5f; --navy-2:#2c5282;
  --bg:#ffffff; --surface:#f3f6fa; --fg:#14181f; --fg-2:#3b4452; --muted:#5b6574; --rule:#d5dbe3;
  --head:#14181f; --head-accent:#1e3a5f; --link:#1e3a5f; --card-fg:#ffffff; --card-link:#ffffff;
  --card-accent:#1e3a5f; --bar-avg:#6b7f99;
  --bar-h:3.5rem; --side-w:16rem; --nav-line:rgba(255,255,255,.18); --nav-fill:rgba(255,255,255,.2); --nav-hover:rgba(255,255,255,.1); --z-bar:100;
  --s1:.25rem; --s2:.5rem; --s3:.75rem; --s4:1rem; --s5:1.5rem; --s6:2rem; --s7:3rem; --s8:4rem;
  --serif:"DM Serif Display","Playfair Display",Georgia,"Times New Roman",serif;
  --sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#0f1520; --surface:#18212f; --fg:#eef1f5; --fg-2:#c7ceda; --muted:#a2acbb; --rule:#2c3849;
    --head:#f2f4f8; --head-accent:#8fb4e8; --link:#9bbcec; --card-accent:#8fb4e8; --bar-avg:#6f7f96; color-scheme:dark;}
}
html{scroll-padding-top:calc(var(--bar-h) + var(--s3))}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
*{box-sizing:border-box}
html{font-size:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:400 1.0625rem/1.55 var(--sans);-webkit-text-size-adjust:100%}
a{color:var(--link);text-underline-offset:.2em}
:focus-visible{outline:2px solid var(--head-accent);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:var(--s4);top:var(--s4);background:#fff;color:#000;padding:var(--s2);z-index:1000}
.wrap{max-width:62rem;margin:0 auto;padding-inline:var(--s4)}
main .wrap{container-type:inline-size}
@media (min-width:40em){.wrap{padding-inline:var(--s5)}}

header.bar{background:var(--navy);color:#fff;position:sticky;top:0;z-index:var(--z-bar)}
.bar-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);min-height:var(--bar-h);padding-inline:var(--s4)}
.brand{display:flex;align-items:center;gap:var(--s3);min-width:0;min-height:2.75rem;color:#fff;text-decoration:none}
.brand img{width:2.25rem;height:auto;flex:none}
.brand span{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;line-height:1.25;overflow-wrap:anywhere}
.menu-btn{display:none;align-items:center;gap:var(--s2);flex:none;min-height:2.75rem;padding:0 var(--s3);background:transparent;color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:.5rem;font:600 1rem/1 var(--sans);cursor:pointer;touch-action:manipulation}
.js .menu-btn{display:inline-flex}
.menu-btn:hover{background:var(--nav-hover)}
.menu-btn svg{width:1.5rem;height:1.5rem;flex:none}
.menu-btn .x,.menu-open .menu-btn .bars{display:none}
.menu-open .menu-btn .x{display:block}
.nav{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--nav-line)}
.nav a{display:flex;align-items:center;min-height:3rem;padding:var(--s2) var(--s4);color:#fff;font:500 1.05rem/1.3 var(--sans);text-decoration:none;border-top:1px solid var(--nav-line);overflow-wrap:anywhere}
.nav .sub a{padding-left:var(--s6);font-weight:400}
.nav a:hover{background:var(--nav-hover)}
.nav a[aria-current="page"]{font-weight:700;box-shadow:inset 3px 0 0 #fff}
.nav a[aria-current="true"]{background:var(--nav-fill);font-weight:700}
.bar a:focus-visible,.bar button:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.addr{padding:var(--s4);font-size:.95rem;color:#dbe5f2}
html.menu-open,html.menu-open body{overflow:hidden}
@media (max-width:56.24em){
  .js .bar nav{position:absolute;left:0;right:0;top:100%;height:calc(100vh - var(--bar-h));height:calc(100dvh - var(--bar-h));overflow-y:auto;overscroll-behavior:contain;background:var(--navy);transform:translateY(-1rem);opacity:0;visibility:hidden;transition:transform .22s ease-out,opacity .22s ease-out,visibility 0s linear .22s}
  .js .bar.open nav{transform:none;opacity:1;visibility:visible;transition-delay:0s}
}
@media (min-width:56.25em){
  :root{--bar-h:0rem}
  html{scroll-padding-top:var(--s4)}
  body{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);grid-template-rows:1fr auto;align-items:start}
  header.bar{grid-column:1;grid-row:1/span 2;height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain}
  main{grid-column:2;grid-row:1;min-width:0}
  footer{grid-column:2;grid-row:2;min-width:0}
  .bar-top{display:block;padding:var(--s5) var(--s4) var(--s4)}
  .brand img{width:3.25rem}
  .brand span{font-size:.85rem;letter-spacing:.12em}
  .js .menu-btn{display:none}
  .bar nav{padding-inline:var(--s3)}
  .nav{border-bottom:0}
  .nav a{min-height:2.5rem;padding:.4rem var(--s3);font-size:.95rem;border-top:0;border-radius:.5rem;margin-bottom:2px}
  .nav .sub a{min-height:2.25rem;padding-left:var(--s5);font-size:.9rem}
  .addr{padding:var(--s4) var(--s4) var(--s5)}
}

.headline{text-align:center;padding-block:var(--s7) var(--s6)}
h1{margin:0;font:400 clamp(2.6rem,1.6rem + 5vw,4.5rem)/1.05 var(--serif);letter-spacing:-.02em;color:var(--head);text-wrap:balance}
h1 em{display:block;font-style:normal;color:var(--head-accent)}
.rule{width:3.5rem;height:4px;background:var(--head-accent);margin:var(--s5) auto 0;border:0;border-radius:2px}

.hero{display:grid;gap:var(--s5);padding-bottom:var(--s7);align-items:start}
.hero figure{margin:0}
.hero img{display:block;width:100%;height:auto;border-radius:.75rem;box-shadow:0 1px 2px rgba(0,0,0,.2),0 6px 18px rgba(0,0,0,.15)}
.hero p{margin:0 0 var(--s4);font-size:1.15rem;max-width:34rem}
.hero .text p:first-child{font-size:1.2rem}
@container (min-width:45rem){.hero{grid-template-columns:5fr 6fr;gap:var(--s6)}}

.member{background:var(--navy);color:var(--card-fg);border-radius:.75rem;padding:var(--s5);margin-top:var(--s5);
  display:grid;gap:var(--s3);grid-template-columns:1fr auto;align-items:center}
.member h2{grid-column:1/-1;margin:0;font:700 .8rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.member .lead{margin:0;font-size:1.05rem}
.member img{width:6.5rem;height:6.5rem;border-radius:.375rem;background:#fff;padding:var(--s1)}
.member .mail{grid-column:1/-1;margin:0;font:700 clamp(1rem,.5rem + 1.9vw,1.45rem)/1.25 var(--sans);overflow-wrap:anywhere}
.member .mail a{color:var(--card-link);text-decoration-thickness:2px;display:inline-flex;align-items:center;min-height:2.75rem}
.member .note{grid-column:1/-1;margin:0;font-size:1rem;color:#dbe5f2}
@container (max-width:19rem){.member{grid-template-columns:1fr}}

.offer{padding-block:var(--s7);border-top:1px solid var(--rule)}
.offer h2{margin:0 0 var(--s5);font:400 clamp(1.9rem,1.4rem + 2vw,2.5rem)/1.15 var(--serif);color:var(--head);letter-spacing:-.01em}
.cards,.facts{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--rule)}
.cards li,.facts li,.row{display:grid;gap:0;padding:var(--s5) 0;border-top:1px solid var(--rule);min-width:0;background:none}
@container (min-width:45rem){.cards li,.facts li,.row{grid-template-columns:15rem minmax(0,1fr);column-gap:var(--s6)}
  .cards li>h3,.facts li>h3,.row>h2,.row>h3{grid-column:1;grid-row:1/span 6}
  .cards li>:not(h3),.facts li>:not(h3),.row>:not(h2):not(h3){grid-column:2}}
.cards li>:not(h3),.facts li>:not(h3),.row>:not(h2):not(h3){justify-self:start;max-width:44rem}
.cards li.has-btn p{margin-bottom:var(--s4)}
.row h2{margin:0 0 var(--s2);font:700 1.15rem/1.25 var(--sans);color:var(--head)}
.row p{margin:0;color:var(--fg-2)}
.row .src-line{margin-top:var(--s3);font-size:.875rem;color:var(--muted)}
.btn{display:inline-block;background:var(--navy);color:#fff;font:700 1rem/1.25 var(--sans);padding:.8rem 1.25rem;min-height:2.75rem;border:0;border-radius:.5rem;text-decoration:none;cursor:pointer;touch-action:manipulation}
.btn:hover{background:var(--navy-2)}
.btn:focus-visible{outline:3px solid var(--head-accent);outline-offset:3px}
@media (prefers-color-scheme:dark){.btn{border:1px solid var(--card-accent)}}
.cards h3{margin:0 0 var(--s2);font:700 1.15rem/1.25 var(--sans);color:var(--head)}
.cards p{margin:0;color:var(--fg-2)}

.golf{padding-block:0}
.golf-card{padding:var(--s5) 0;border-top:1px solid var(--rule);display:grid;gap:var(--s3);justify-items:start}
.golf-card h2{margin:0;font:400 clamp(1.6rem,1.2rem + 1.6vw,2.1rem)/1.15 var(--serif);color:var(--head);scroll-margin-top:var(--s5)}
.golf-card p{margin:0;font-size:1.05rem;max-width:44rem}
.golf-card .btn{max-width:100%}
.golf-card .note{font-size:1rem;color:var(--muted)}

.complaint,.know{padding-block:var(--s7);border-top:1px solid var(--rule)}
.complaint h2,.know h2{margin:0 0 var(--s4);font:400 clamp(1.9rem,1.4rem + 2vw,2.5rem)/1.15 var(--serif);color:var(--head);letter-spacing:-.01em;scroll-margin-top:var(--s5)}
.complaint{scroll-margin-top:var(--s4)}
.complaint>p{margin:0 0 var(--s5);max-width:34rem}
.cform{display:grid;gap:var(--s4);max-width:34rem}
.cform label{display:block;font-weight:600;margin-bottom:var(--s1)}
.cform input,.cform textarea{width:100%;font:400 1rem/1.4 var(--sans);color:var(--fg);background:var(--surface);border:1px solid var(--muted);border-radius:.5rem;padding:.7rem .8rem;min-height:2.75rem}
.cform textarea{min-height:8rem;resize:vertical}
.cform .btn{justify-self:start;max-width:100%}
.alt{margin:var(--s5) 0 0;max-width:34rem;overflow-wrap:anywhere}
.big{margin:0 0 var(--s6);font:400 clamp(1.5rem,1.1rem + 1.8vw,2.1rem)/1.25 var(--serif);color:var(--head);max-width:44rem;text-wrap:pretty}
.big b{font-weight:400;color:var(--head-accent)}
.chart{margin:0 0 var(--s6);max-width:32.5rem}
.chart h3{margin:0 0 var(--s3);font:700 1.15rem/1.25 var(--sans);color:var(--head)}
.chart svg{display:block;width:100%;height:auto}
.chart .grid{stroke:var(--rule);stroke-width:1}
.chart .base{stroke:var(--muted);stroke-width:1.5}
.chart .tick{font:400 22px var(--sans);fill:var(--muted);text-anchor:end;font-variant-numeric:tabular-nums}
.chart .sub{font:500 22px var(--sans);fill:var(--muted);text-anchor:middle}
.chart .cat{font:600 22px var(--sans);fill:var(--fg-2);text-anchor:middle}
.chart .val{font:700 30px var(--sans);fill:var(--fg);text-anchor:middle;font-variant-numeric:tabular-nums}
.chart .bar-avg{fill:var(--bar-avg)}
.chart .bar-res{fill:var(--head-accent)}
.chart figcaption{margin:var(--s3) 0 0;font-size:.875rem;color:var(--muted)}
.evict{display:grid;gap:var(--s6);margin:0 0 var(--s6);align-items:center}
.evict .chart{margin:0;width:100%}
@container (min-width:45rem){.evict{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s6);align-items:start}}
.stat{margin:0;min-width:0;max-width:24rem}
.stat .num{margin:0;font:400 clamp(5.5rem,3.5rem + 9vw,9rem)/1 var(--serif);letter-spacing:-.02em;color:var(--head-accent);font-variant-numeric:tabular-nums}
.stat .line{margin:var(--s3) 0 0;font:700 1.35rem/1.3 var(--sans);color:var(--head);text-wrap:balance}
.stat .detail{margin:var(--s3) 0 0;color:var(--muted)}
.stat .from{margin:var(--s3) 0 0;font-size:.8rem;color:var(--muted)}
.facts h3{margin:0 0 var(--s2);font:700 1.15rem/1.25 var(--sans);color:var(--head)}
.facts p{margin:0;color:var(--fg-2)}
.src{margin:var(--s5) 0 0;font-size:.875rem;color:var(--muted);max-width:44rem}

.hist{padding-block:var(--s7);border-top:1px solid var(--rule)}
.hist h2{margin:0 0 var(--s4);font:400 clamp(1.9rem,1.4rem + 2vw,2.5rem)/1.15 var(--serif);color:var(--head);letter-spacing:-.01em;scroll-margin-top:var(--s5)}
.hist .intro{margin:0 0 var(--s6);max-width:44rem;font-size:1.15rem;text-wrap:pretty}
.hist .count{margin:0 0 var(--s6);max-width:24rem}
.hist .count .num{margin:0;font:400 clamp(5.5rem,3.5rem + 9vw,9rem)/1 var(--serif);letter-spacing:-.02em;color:var(--head-accent);font-variant-numeric:tabular-nums}
.hist .count .line{margin:var(--s3) 0 0;font:700 1.35rem/1.3 var(--sans);color:var(--head);text-wrap:balance}
.hist .chart{margin:0 0 var(--s7);max-width:32.5rem}
.hist .chart .blab{font:600 24px var(--sans);fill:var(--fg-2)}
.hist .chart .bval{font:700 26px var(--sans);fill:var(--fg);font-variant-numeric:tabular-nums}
.hist h3.list-h{margin:0 0 var(--s3);font:700 1.15rem/1.25 var(--sans);color:var(--head)}
.scrollwrap{position:relative;max-width:44rem}
.scrollwrap::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3rem;background:linear-gradient(to bottom,transparent,var(--bg));pointer-events:none;}
.scrollbox{max-height:min(420px,60vh);max-height:min(420px,60dvh);overflow-y:auto;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bg);scrollbar-color:var(--muted) var(--surface);overscroll-behavior:auto}
.scrollbox::-webkit-scrollbar{width:12px}
.scrollbox::-webkit-scrollbar-track{background:var(--surface)}
.scrollbox::-webkit-scrollbar-thumb{background:var(--muted);border-radius:6px;border:2px solid var(--surface)}
.scrollbox ol{list-style:none;margin:0;padding:0 0 var(--s7)}
.scrollbox li{display:grid;gap:var(--s1);padding:var(--s4) 0;border-top:1px solid var(--rule);min-width:0}
.scrollbox li:first-child{border-top:0}
@container (min-width:37rem){.scrollbox li{grid-template-columns:7.5rem minmax(0,1fr);gap:var(--s4)}}
.scrollbox .d{color:var(--muted);font-variant-numeric:tabular-nums;font-size:1rem}
.scrollbox strong{color:var(--head)}
.scrollbox .t{color:var(--fg-2);display:block;overflow-wrap:anywhere}
.hist .src{margin-top:var(--s5)}

footer{border-top:1px solid var(--rule);padding-block:var(--s5) var(--s7);color:var(--fg-2);font-size:1rem}
footer p{margin:0 0 var(--s3);max-width:44rem}
@media print{.skip{display:none}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.member,.offer{scroll-margin-top:var(--s4)}
@container (min-width:45rem){.evict .chart h3{min-height:2.5em}}
.nav-card{padding-block:var(--s6) var(--s7);border-bottom:1px solid var(--rule)}
.nav-card .golf-card{border-top:0;padding-block:0}
.nav-card .golf-card h2 a{color:var(--link);text-underline-offset:.2em}
.cards .src-line{margin:var(--s3) 0 0;font-size:.875rem;color:var(--muted)}
.page-h{margin:0;font:400 clamp(2.4rem,1.6rem + 4vw,3.75rem)/1.05 var(--serif);letter-spacing:-.02em;color:var(--head)}
.hpage{padding-block:var(--s7) var(--s6)}
.hpage .count{margin:var(--s6) 0 0;max-width:36rem}
.hpage .count .num{margin:0;font:400 clamp(5.5rem,3.5rem + 9vw,9rem)/1 var(--serif);letter-spacing:-.02em;color:var(--head-accent);font-variant-numeric:tabular-nums}
.hpage .count .line{margin:var(--s3) 0 0;font:700 1.35rem/1.3 var(--sans);color:var(--head);text-wrap:balance}
.split{margin:var(--s3) 0 0;padding:0;list-style:none;color:var(--fg-2);font-size:1.1rem}
.ruling{margin:var(--s4) 0 0;max-width:36rem;font-size:1.1rem;color:var(--fg);text-wrap:pretty}
.tl-sec{padding-block:var(--s6) var(--s7);border-top:1px solid var(--rule)}
.tl-sec h2{margin:0 0 var(--s4);font:400 clamp(1.9rem,1.4rem + 2vw,2.5rem)/1.15 var(--serif);color:var(--head);letter-spacing:-.01em}
.tl{list-style:none;margin:0;padding:0;max-width:44rem}
.tl li{display:grid;gap:var(--s1);padding:var(--s4) 0;border-top:1px solid var(--rule);min-width:0}
.tl{border-bottom:1px solid var(--rule)}
@container (min-width:37rem){.tl li{grid-template-columns:8.5rem minmax(0,1fr);gap:var(--s4)}}
.tl .d{color:var(--muted);font-variant-numeric:tabular-nums;font-size:1rem;font-weight:600}
.tl .t{color:var(--fg-2);overflow-wrap:anywhere}
.tl-sec .btn{margin-top:var(--s5)}
.tl-sec .src{margin-top:var(--s6)}

.won{padding-block:var(--s7);border-top:1px solid var(--rule)}
.won h2{margin:0 0 var(--s4);font:400 clamp(1.9rem,1.4rem + 2vw,2.5rem)/1.15 var(--serif);color:var(--head);letter-spacing:-.01em}
.won .rows{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--rule)}
.won .rows li{display:grid;gap:0;padding:var(--s5) 0;border-top:1px solid var(--rule)}
@container (min-width:45rem){.won .rows li{grid-template-columns:15rem minmax(0,1fr);column-gap:var(--s6)}.won .rows li>h3{grid-row:1/span 2}.won .rows li>p{grid-column:2}}
.won h3{margin:0 0 var(--s2);font:700 1.15rem/1.25 var(--sans);color:var(--head)}
.won p{margin:0;color:var(--fg-2);max-width:44rem}
.won .src-line{margin-top:var(--s3);font-size:.875rem;color:var(--muted)}
.hpage .row{margin-top:var(--s5);border-bottom:1px solid var(--rule)}
.hpage .row{margin:var(--s5) 0 var(--s6)}
.tl-sec .intro{margin:0 0 var(--s5);max-width:44rem}
.tl .t strong{display:block;color:var(--fg);margin-bottom:var(--s1)}

/* sticky bar offsets, targets */
main [id]{scroll-margin-top:var(--s4)}

/* email line and copy button */
.mailline{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s3);margin:var(--s4) 0 0;max-width:34rem}
.mailline a{display:inline-flex;align-items:center;min-height:2.75rem;font-weight:600;overflow-wrap:anywhere}
.copy{min-height:2.75rem;min-width:5.5rem;padding:0 var(--s4);background:transparent;color:var(--link);border:1px solid var(--link);border-radius:.5rem;font:600 1rem/1 var(--sans);cursor:pointer;touch-action:manipulation}
.copy:hover{background:var(--surface)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
footer a{display:inline-flex;align-items:center;min-height:2.75rem}
footer .mailline{margin-top:0}

/* ---- messaging: chat button, panel, email buttons, send status ---- */
:root{--z-fab:90;--z-scrim:110;--z-chat:120;--fab-h:3.5rem;--fab-gap:1rem}
[hidden]{display:none!important}
body{padding-bottom:calc(var(--fab-h) + var(--fab-gap)*2 + env(safe-area-inset-bottom,0px))}
.btn-alt{background:transparent;color:var(--link);border:1px solid var(--link)}
.btn-alt:hover{background:var(--surface)}
.actions{display:flex;flex-wrap:wrap;gap:var(--s3);margin:var(--s4) 0 0}
.hero .mailline{margin:var(--s3) 0 var(--s4);font-size:1rem}
.email-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:2.75rem;padding:0 var(--s3);color:#fff;border:1px solid rgba(255,255,255,.55);border-radius:.5rem;font:600 1rem/1 var(--sans);text-decoration:none;white-space:nowrap;touch-action:manipulation}
.email-btn:hover{background:var(--nav-hover)}
.bar-top .brand{flex:1 1 auto}
@media (max-width:23.75em){.brand span{font-size:.7rem;letter-spacing:.04em}.bar-top{gap:var(--s2);padding-inline:var(--s3)}.brand{gap:var(--s2)}.brand img{width:2rem}.menu-btn{padding:0 var(--s2)}.email-btn{padding:0 var(--s2)}}
@media (min-width:56.25em){.email-btn{display:flex;margin-top:var(--s4)}.bar-top .brand{flex:none}}

.send-status:empty{display:none}
.send-ok{margin:0;font-weight:600;color:var(--head)}
.send-fail{display:grid;gap:var(--s3);justify-items:start}
.send-msg{margin:0;font-weight:700;color:var(--head)}
.send-fail .mailline{margin:0}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}

.chat-fab{position:fixed;z-index:var(--z-fab);right:max(var(--fab-gap),env(safe-area-inset-right,0px));bottom:max(var(--fab-gap),env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:var(--s2);height:var(--fab-h);padding:0 var(--s5) 0 var(--s4);background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:var(--fab-h);font:700 1rem/1 var(--sans);cursor:pointer;touch-action:manipulation;box-shadow:0 1px 3px rgba(0,0,0,.3),0 6px 16px rgba(0,0,0,.25)}
.chat-fab:hover{background:var(--navy-2)}
.chat-fab svg{width:1.5rem;height:1.5rem;flex:none}
.chat-fab:focus-visible{outline:3px solid var(--head-accent);outline-offset:3px}
.typing .chat-fab{visibility:hidden}
.chat-scrim{position:fixed;inset:0;z-index:var(--z-scrim);background:rgba(10,16,26,.55)}
html.chat-modal,html.chat-modal body{overflow:hidden}
.chat{position:fixed;z-index:var(--z-chat);left:0;right:0;bottom:0;max-height:88vh;max-height:88dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--bg);color:var(--fg);border:1px solid var(--rule);border-bottom:0;border-radius:.75rem .75rem 0 0;padding:var(--s4) var(--s4) calc(var(--s4) + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 24px rgba(0,0,0,.3);animation:chat-in .22s ease-out}
@keyframes chat-in{from{transform:translateY(1.5rem);opacity:0}}
@media (prefers-reduced-motion:reduce){.chat{animation:none}}
.chat-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}
.chat h2{margin:0;font:400 1.6rem/1.15 var(--serif);color:var(--head)}
.chat-x{display:inline-flex;align-items:center;justify-content:center;flex:none;width:2.75rem;height:2.75rem;margin-right:calc(var(--s2)*-1);background:transparent;color:var(--fg);border:0;border-radius:.5rem;cursor:pointer;touch-action:manipulation}
.chat-x:hover{background:var(--surface)}
.chat-x svg{width:1.5rem;height:1.5rem}
.chat-lead{margin:var(--s2) 0 var(--s4);color:var(--fg-2)}
.chat-form{display:grid;gap:var(--s3)}
.chat-form label{display:block;font-weight:600;margin-bottom:var(--s1)}
.chat-form input,.chat-form textarea{width:100%;font:400 1rem/1.4 var(--sans);color:var(--fg);background:var(--surface);border:1px solid var(--muted);border-radius:.5rem;padding:.7rem .8rem;min-height:2.75rem}
.chat-form textarea{min-height:6rem;resize:vertical}
.chat-form .hp input{min-height:0}
.chat-form .btn{justify-self:start;max-width:100%}
@media (min-width:40em){
  .chat{left:auto;right:max(var(--fab-gap),env(safe-area-inset-right,0px));bottom:max(var(--fab-gap),env(safe-area-inset-bottom,0px));width:23rem;max-height:calc(100dvh - 2*var(--fab-gap));border:1px solid var(--rule);border-radius:.75rem;padding:var(--s4);box-shadow:0 2px 6px rgba(0,0,0,.25),0 12px 32px rgba(0,0,0,.3)}
  .chat-scrim{display:none}
}
@media (prefers-color-scheme:dark){.chat-fab,.email-btn{border-color:rgba(255,255,255,.5)}}
@media print{.chat-fab,.chat,.chat-scrim,.email-btn{display:none}}

/* rows lists */
.hpage .intro{margin:var(--s4) 0 0;max-width:44rem;font-size:1.15rem;text-wrap:pretty}
.rl{list-style:none;margin:0;padding:0;border-bottom:1px solid var(--rule)}
.rl li{display:grid;gap:var(--s1);padding:var(--s4) 0;border-top:1px solid var(--rule);min-width:0}
.rl .d{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}
.rl .d:empty{display:none}
.rl .w{color:var(--head);font-weight:700;overflow-wrap:anywhere}
.rl .t{color:var(--fg-2);overflow-wrap:anywhere}
.rl.two li{grid-template-columns:7.75rem minmax(0,1fr);gap:var(--s3);padding:var(--s3) 0}
@container (min-width:44rem){.rl:not(.two) li{grid-template-columns:8.5rem 15rem minmax(0,1fr);gap:var(--s4)}.rl .d:empty{display:block}}
.tl-sec .rl{max-width:48rem}
.tl-sec .listnote{margin:0 0 var(--s4);max-width:44rem;color:var(--fg-2)}
.tl-sec .actions .btn{margin-top:0}
.tl-sec .more{margin:var(--s4) 0 0}
.tl-sec .more a,.tl-sec .src a{display:inline-flex;align-items:center;min-height:2.75rem}
.tl .d:empty{display:none}
@container (min-width:37rem){.tl .d:empty{display:block}}

/* emphasis: lawsuit feature (history) and lead fact (home) */
.feature{margin:var(--s5) 0 var(--s7);padding:var(--s6) 0 var(--s6) var(--s5);border-left:.375rem solid var(--head-accent);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);min-width:0}
.feature .kicker{margin:0 0 var(--s3);font:700 .8rem/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--head-accent)}
.feature h2{margin:0 0 var(--s5);font:400 clamp(2rem,1.4rem + 3vw,3.25rem)/1.1 var(--serif);letter-spacing:-.02em;color:var(--head-accent);text-wrap:balance;overflow-wrap:break-word}
.feature p:not(.kicker){margin:0;max-width:44rem;color:var(--fg-2);font-size:1.125rem}
.feature p.src-line{margin-top:var(--s4);font-size:.875rem;color:var(--muted)}
.facts li.lead-fact{display:block;border-left:.375rem solid var(--head-accent);padding-left:var(--s4)}
.facts li.lead-fact h3{font:400 clamp(1.5rem,1.2rem + 1.5vw,1.9rem)/1.15 var(--serif);letter-spacing:-.01em;color:var(--head-accent);text-wrap:balance}
.facts li.lead-fact .more{margin-top:var(--s2)}
.facts li.lead-fact .more a{display:inline-flex;align-items:center;min-height:2.75rem;font-weight:700}
