:root{--ink:#202326;--muted:#66707a;--red:#d71920;--red-dark:#a80f15;--paper:#fff;--wash:#f3f4f5;--line:#dce0e3;--max:1180px;--shadow:0 12px 32px rgba(0,0,0,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif;background:var(--paper)}img{max-width:100%;height:auto}a{color:var(--red-dark)}a:hover{text-decoration:none}.wrap{width:min(calc(100% - 36px),var(--max));margin:auto}.skip-link{position:absolute;left:-9999px;background:#fff;padding:10px;z-index:99}.skip-link:focus{left:10px;top:10px}.site-header{position:sticky;top:0;z-index:30;background:#2b2e31;color:#fff;box-shadow:0 2px 12px rgba(0,0,0,.2)}.utility{background:#1f2123;font-size:.82rem}.utility .wrap{display:flex;justify-content:space-between;padding:5px 0}.utility a{color:#fff}.nav-wrap{display:flex;align-items:center;min-height:72px;gap:24px}.brand img{display:block;width:190px;max-height:48px;object-fit:contain}.nav-wrap nav{margin-left:auto}.nav-wrap ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}.nav-wrap nav a{display:block;color:#fff;text-decoration:none;padding:10px 9px;border-radius:3px;font-size:.87rem;text-transform:uppercase;letter-spacing:.035em}.nav-wrap nav a:hover,.nav-wrap nav a[aria-current=page]{background:var(--red)}.menu-toggle{display:none;margin-left:auto;background:transparent;border:1px solid #777;color:#fff;padding:8px 12px}.hero{min-height:620px;display:grid;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(15,17,19,.9),rgba(15,17,19,.35)),url('../images/hero.jpg') center/cover}.hero-content{max-width:720px;padding:100px 0}.eyebrow{color:var(--red);text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.82rem}.hero .eyebrow,.page-hero .eyebrow{color:#ff555a}.hero h1,.page-hero h1{font-size:clamp(2.5rem,6vw,5rem);line-height:1.03;margin:.15em 0}.hero p{font-size:1.25rem;max-width:650px}.button{display:inline-block;padding:13px 20px;margin:8px 10px 0 0;background:var(--red);color:#fff;text-decoration:none;text-transform:uppercase;font-weight:700;font-size:.86rem;border-radius:2px}.button:hover{background:var(--red-dark)}.button.secondary{background:transparent;border:2px solid #fff;padding:11px 18px}.page-hero{padding:90px 0;color:#fff;background:linear-gradient(90deg,rgba(18,20,22,.92),rgba(18,20,22,.52)),url('../images/hero-alt.jpg') center/cover}.page-hero h1{font-size:clamp(2.2rem,5vw,4rem)}.page-hero p:last-child{max-width:720px;font-size:1.15rem}.section{padding:72px 0}.section.alt{background:var(--wash)}.section h1,.section-title{font-size:clamp(1.8rem,4vw,3rem);line-height:1.15;margin:.2em 0 1em}.lead{font-size:1.18rem;color:#4d555c;max-width:780px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid.two{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--red);padding:26px;box-shadow:0 6px 22px rgba(0,0,0,.05)}.card h2{font-size:1.25rem;line-height:1.25;margin:0 0 10px}.card p{color:var(--muted)}.text-link{font-weight:700}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.split img{box-shadow:var(--shadow)}.resource-list{list-style:none;padding:0;margin:24px 0}.resource-list li{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.resource-list strong{display:block}.resource-list span{color:var(--muted);font-size:.92rem}.notice{border-left:5px solid var(--red);background:#fff6f6;padding:18px 22px;margin:25px 0}.cta{background:var(--red);color:#fff;padding:46px;border-radius:3px}.cta h2{font-size:2rem;margin-top:0}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.contact-card{border:1px solid var(--line);padding:22px}.site-footer{background:#202326;color:#d9dcdf;padding-top:55px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:50px}.site-footer h2{font-size:1rem;text-transform:uppercase;color:#fff}.site-footer a,.site-footer address{display:block;color:#d9dcdf;margin:7px 0;font-style:normal}.footer-logo{width:190px;filter:brightness(0) invert(1)}.copyright{border-top:1px solid #42464a;margin-top:40px;padding:18px 0;font-size:.85rem}.copyright a{display:inline}.checks{padding-left:1.2rem}.checks li{margin:9px 0}.checks li::marker{color:var(--red)}
@media(max-width:980px){.menu-toggle{display:block}.nav-wrap nav{display:none;position:absolute;top:100%;left:0;right:0;background:#292c2f;padding:8px 18px}.nav-wrap nav.open{display:block}.nav-wrap ul{display:block}.nav-wrap nav a{padding:10px}.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.utility span{display:none}.utility .wrap{justify-content:flex-end}.hero{min-height:540px}.hero-content{padding:70px 0}.grid,.grid.two,.split,.footer-grid,.contact-grid{grid-template-columns:1fr}.section{padding:52px 0}.resource-list li{grid-template-columns:1fr}.page-hero{padding:65px 0}.cta{padding:30px}.brand img{width:160px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.capacity-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:32px}.updated{color:var(--muted)}.capacity-tools{display:grid;grid-template-columns:auto minmax(220px,1fr) auto minmax(160px,220px) auto;gap:12px;align-items:center;padding:18px;background:var(--wash);border:1px solid var(--line)}.capacity-tools label{font-weight:700}.capacity-tools input,.capacity-tools select{width:100%;padding:12px;border:1px solid #aeb5ba;background:#fff;font:inherit}.print-button{padding:12px 16px;border:1px solid var(--ink);background:#fff;font-weight:700;cursor:pointer}.results-count{font-weight:700;color:var(--muted)}.capacity-list{display:grid;gap:16px}.capacity-card{display:grid;grid-template-columns:120px minmax(240px,1.3fr) minmax(220px,1fr) auto;gap:24px;align-items:center;border:1px solid var(--line);border-left:5px solid var(--red);padding:22px;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.05)}.capacity-date span,.route-label{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.capacity-date strong{font-size:1.2rem}.capacity-route{display:grid;grid-template-columns:1fr auto 1fr;column-gap:12px;align-items:center}.capacity-route .route-label:first-child{grid-column:1}.capacity-route h2{grid-column:1;margin:2px 0;font-size:1.25rem}.capacity-route .route-arrow{grid-column:2;grid-row:1/3;font-size:1.7rem;color:var(--red)}.capacity-route .route-label:nth-of-type(2){grid-column:3;grid-row:1}.capacity-route h3{grid-column:3;grid-row:2;margin:2px 0;font-size:1.1rem}.capacity-details{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.capacity-details p{margin:0;color:var(--muted);font-size:.9rem}.capacity-details strong{color:var(--ink)}.capacity-contact{margin:0;text-align:center;white-space:nowrap}.capacity-empty{text-align:center;padding:60px 25px;border:2px dashed var(--line);background:var(--wash)}.carrier-strip{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-top:35px;padding:18px 22px;background:var(--ink);color:#fff}.carrier-strip a{margin-left:auto;color:#fff}.carrier-strip strong{color:#ff555a}.capacity-card[hidden]{display:none}
@media(max-width:1050px){.capacity-card{grid-template-columns:100px 1fr}.capacity-details{grid-column:1/3}.capacity-contact{grid-column:1/3;justify-self:start}.capacity-tools{grid-template-columns:1fr 2fr}.capacity-tools .print-button{grid-column:1/3}}
@media(max-width:680px){.capacity-intro{display:block}.capacity-tools{grid-template-columns:1fr}.capacity-tools .print-button{grid-column:auto}.capacity-card{grid-template-columns:1fr}.capacity-details,.capacity-contact{grid-column:auto}.capacity-details{grid-template-columns:1fr 1fr}.capacity-route{grid-template-columns:1fr}.capacity-route .route-label:first-child,.capacity-route h2,.capacity-route .route-label:nth-of-type(2),.capacity-route h3,.capacity-route .route-arrow{grid-column:1;grid-row:auto}.capacity-route .route-arrow{transform:rotate(90deg);justify-self:start}.carrier-strip{display:block}.carrier-strip span,.carrier-strip a{display:block;margin:7px 0}}
@media print{.site-header,.site-footer,.page-hero,.capacity-tools,.capacity-contact,.notice{display:none!important}.section{padding:0}.capacity-card{break-inside:avoid;box-shadow:none}.carrier-strip{color:#000;background:#fff;border:1px solid #000}}
.button.dark{background:var(--ink)}.proof-bar{background:var(--red);color:#fff}.proof-bar .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.proof-bar .wrap>div{padding:25px;border-right:1px solid rgba(255,255,255,.28)}.proof-bar strong,.proof-bar span{display:block}.proof-bar strong{font-size:1.45rem}.proof-bar span{font-size:.82rem;opacity:.9}.audience-grid{grid-template-columns:repeat(4,1fr)}.photo-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}.photo-grid img{width:100%;height:300px;object-fit:cover}.center-actions{text-align:center;margin-top:25px}.dark-section{background:#202326;color:#fff}.dark-section .section-title{color:#fff}.credential-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:30px 0}.credential-grid div{padding:22px;border:1px solid #555}.credential-grid strong,.credential-grid span{display:block}.credential-grid strong{font-size:1.15rem;color:#ff555a}.credential-grid span{font-size:.88rem;color:#d9dcdf}.testimonials blockquote{margin:0;padding:28px;background:var(--wash);border-left:5px solid var(--red)}.testimonials blockquote p{font-size:1.06rem}.testimonials cite{font-style:normal;font-weight:700;color:var(--muted)}.cta-split{display:flex;justify-content:space-between;align-items:center;gap:30px}.timeline{border-left:3px solid var(--red);margin-left:25px}.timeline>div{position:relative;padding:5px 0 25px 34px}.timeline>div:before{content:"";position:absolute;left:-9px;top:11px;width:15px;height:15px;border-radius:50%;background:var(--red)}.timeline strong{font-size:1.35rem}.timeline p{margin:.25em 0;color:var(--muted)}.driver-banner{display:flex;justify-content:space-between;align-items:center;gap:35px;background:var(--ink);color:#fff;padding:34px;margin-bottom:30px}.driver-banner h2{margin:.15em 0;max-width:750px}.driver-banner p{max-width:780px}.headquarters{display:grid;grid-template-columns:2fr 1fr;gap:30px;margin-top:35px;padding:35px;background:var(--wash)}
@media(max-width:1050px){.audience-grid{grid-template-columns:repeat(2,1fr)}.credential-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.proof-bar .wrap,.audience-grid,.credential-grid,.headquarters{grid-template-columns:1fr}.proof-bar .wrap>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.28)}.photo-grid{grid-template-columns:1fr}.photo-grid img{height:230px}.cta-split,.driver-banner{display:block}.driver-banner .button{margin-top:18px}.footer-grid{grid-template-columns:1fr}}
.footer-grid{grid-template-columns:1.7fr 1fr 1fr 1.3fr;gap:38px}
@media(max-width:1050px){.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.footer-grid{grid-template-columns:1fr}}
.status{display:inline-block;padding:3px 8px;border-radius:999px;background:#e8ecef;color:#30363b;font-size:.78rem;font-weight:700}.status-compliant{background:#e3f5e8;color:#11652d}.status-reviewrequired{background:#fff2cc;color:#775400}.status-noncompliant,.status-outofservice{background:#fde3e3;color:#9b1414}

/* Mobile footer: explicit selectors prevent the desktop four-column rule from leaking onto phones. */
@media(max-width:800px){
  .site-footer{padding-top:38px}
  .site-footer .footer-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
  .site-footer .footer-grid>div{padding:22px 0;border-bottom:1px solid #42464a}
  .site-footer .footer-grid>div:first-child{padding-top:0}
  .site-footer .footer-grid>div:last-child{border-bottom:0}
  .site-footer h2{margin:0 0 12px;font-size:.9rem;letter-spacing:.08em}
  .site-footer a,.site-footer address{margin:0;padding:7px 0;font-size:1rem;line-height:1.45}
  .site-footer p{max-width:32rem;font-size:.96rem;line-height:1.55}
  .footer-logo{width:170px;max-height:62px;object-fit:contain}
  .copyright{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:12px;padding:20px 0;font-size:.88rem;line-height:1.5}
  .copyright a{display:inline-block;padding:2px 0}
}

/* Keep the footer at the bottom of short pages without fixing it over content. */
body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
main{flex:1 0 auto}
.site-footer{flex-shrink:0}
