/* Shared editorial typography and responsive spacing. */
:root{--text-secondary:#c5bdb3;--section-pad-mobile:24px}
body{font-kerning:normal;text-rendering:optimizeLegibility}
h1,h2,h3,.page-h1,.hero-h1{letter-spacing:-.025em;text-wrap:balance}
p{ text-wrap:pretty }
a{ text-underline-offset:.22em }
::selection{background:#c8102e;color:#fff}
:focus-visible{outline:2px solid #ff9090;outline-offset:5px}
.overline,.eyebrow,.policy-label,.hours-card-label,.scope-chip,.chip,.cap h3,.meta dt{font-family:'DM Sans',sans-serif;letter-spacing:.08em;line-height:1.5}
.about-hero-badge,.national-strip-label{color:#ff9090}
.about-page-hero{height:auto;min-height:580px;padding:150px 0 64px}
.about-page-hero .container{width:100%}
.about-page-hero .page-h1{max-width:18ch;font-size:clamp(34px,4.8vw,64px)}
.about-hero-meta{flex-wrap:wrap;gap:12px}
.about-story-text{min-width:0;padding-right:48px}
.about-story-text p{font-size:16px;line-height:1.75}
.about-story-inner{align-items:start}
.about-story-image{align-self:start}
.about-service-policy>div{grid-template-columns:1fr;gap:8px}
.availability-policy{margin-top:32px;padding:28px 0;border-top:1px solid var(--border-warm);display:grid;grid-template-columns:1fr 1fr;gap:28px}
.availability-policy span{display:block;font-weight:600;color:#faf7f2;margin-bottom:10px}
.availability-policy p{font-size:15px;line-height:1.7;color:#c5bdb3}
.availability-terms{grid-column:1/-1;max-width:85ch}
.hero-lead,.about-hero-sub{max-width:62ch;line-height:1.7}
.meta div{border-left-width:1px}
.cap li{font-size:15px;line-height:1.65}
.btn,.btn-primary,.btn-secondary,.hours-card-action{min-height:44px}
.profile-actions{align-items:center}
@media(max-width:900px){
 :root{--section-pad-desktop:32px}
 .about-story-inner{grid-template-columns:1fr}
 .about-story-text{padding:0 32px 32px}
 .about-story-image{max-height:480px}
}
@media(max-width:640px){
 :root{--section-pad-desktop:24px;--section-pad-mobile:24px}
 .about-page-hero{min-height:0;padding:140px 0 48px}
 .about-page-hero .page-h1{font-size:clamp(32px,9vw,40px);line-height:1.12;overflow-wrap:normal}
 .about-story-text{padding:0 24px 28px}
 .about-story-section{padding:56px 0}
 .availability-policy{grid-template-columns:1fr;gap:22px}
 .about-hero-meta{gap:10px}
 .about-hero-badge{font-size:10px;padding:8px 10px}
 .national-cities{gap:14px 20px}
 .about-national-strip{padding:28px 24px}
 .cta-buttons,.profile-actions{flex-wrap:wrap}
 .hero-content,.container{min-width:0}
 .bar .wrap{gap:12px}
 .bar nav{margin-left:0}
 .btn{white-space:normal;text-align:center}
 #emergency-ribbon .status-clock{display:none}
 #emergency-ribbon .live-status{font-size:10px}
 .about-service-policy>div{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1!important;transform:none!important;transition:none!important}}

/* Aligned statistics band: value, label and supporting line share fixed presentation rows. */
.stats-grid{align-items:stretch}
.stats-grid .stat-item{
 display:grid;
 grid-template-rows:minmax(68px,auto) minmax(34px,auto) minmax(3.2em,auto);
 align-content:start;
 min-width:0;
 text-align:center;
}
.stats-grid .stat-number{
 display:flex;
 align-items:flex-end;
 justify-content:center;
 min-height:68px;
 margin:0;
 line-height:.95;
 font-variant-numeric:tabular-nums;
}
.stats-grid .stat-number.stat-word{
 max-width:12ch;
 margin-inline:auto;
 font-size:clamp(30px,3.1vw,46px);
 line-height:1;
}
.stats-grid .stat-label{
 display:flex;
 align-items:flex-start;
 justify-content:center;
 margin-top:12px;
 line-height:1.35;
}
.stats-grid .stat-note{
 align-self:start;
 justify-self:center;
 margin-top:10px;
 min-height:3.2em;
 max-width:27ch;
 text-wrap:balance;
}
@media(max-width:1024px){
 .stats-grid .stat-item{grid-template-rows:minmax(64px,auto) minmax(34px,auto) minmax(3.2em,auto)}
 .stats-grid .stat-number{min-height:64px}
}
@media(max-width:560px){
 .stats-grid .stat-item{
  grid-template-rows:auto;
  justify-items:start;
  text-align:left;
  padding:4px 0 4px 20px;
  border-left:2px solid var(--red);
 }
 .stats-grid .stat-number,
 .stats-grid .stat-label,
 .stats-grid .stat-note{justify-content:flex-start;justify-self:start;min-height:0;margin-inline:0;text-align:left}
 .stats-grid .stat-number{font-size:44px}
 .stats-grid .stat-number.stat-word{font-size:36px;max-width:none}
 .stats-grid .stat-label{margin-top:10px}
 .stats-grid .stat-note{margin-top:8px;max-width:34ch}
}

/* About positioning statement: preserve intentional word spacing and line hierarchy. */
.about-positioning-title{max-width:19ch!important;text-wrap:balance}
.about-positioning-title span{display:block}
.about-positioning-title span:first-child{margin-bottom:.16em;color:#ff7a7a}
.about-positioning-title span:last-child{max-width:19ch}
@media(max-width:640px){
 .about-positioning-title{font-size:clamp(30px,8.4vw,39px)!important;line-height:1.1!important;overflow-wrap:normal!important}
 .about-positioning-title span:first-child{margin-bottom:.22em}
}
