/* ATL Passenger — site.css — W2 quality-pass design system
   Palette derived from the site's existing theme-color (#0B2545 navy) and
   existing gold accent already used across the site's markup. */
:root{
  --sp:.25rem;
  --navy:#0B2545;--navy-deep:#071829;--navy-light:#1c3a63;
  --gold:#c9a227;--gold-deep:#a8811d;--gold-bright:#e2b93f;
  --cream:#f8f4ea;--paper:#fffdf9;--ink:#1b2230;--ink-soft:#5c6572;
  --line:#e3ddd0;--white:#ffffff;
  --radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;
  --container-md:28rem;--container-2xl:42rem;--container-3xl:48rem;--container-7xl:80rem;
  --font-display:"Fraunces",Georgia,serif;--font-sans:"Inter",system-ui,sans-serif;
  --h1:2.2rem;--h2:1.5rem;--h3:1.2rem;--body:1rem;--small:.85rem;
}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
*,:before,:after{box-sizing:border-box;border-color:var(--line)}
html{-webkit-text-size-adjust:100%;line-height:1.5}
body{margin:0;font-family:var(--font-sans);color:var(--ink);background:var(--paper)}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;margin:0}
a{color:inherit;text-decoration:inherit}
img,svg{display:block;max-width:100%;height:auto}
table{border-collapse:collapse;text-indent:0}
button,input{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--gold-deep);outline-offset:2px}
.atl-skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--navy);padding:.5rem 1rem;z-index:100}
.atl-skip:focus{left:.5rem;top:.5rem}

/* ---------- layout / display ---------- */
.block{display:block}.hidden{display:none}.flex{display:flex}.inline-flex{display:inline-flex}
.inline-block{display:inline-block}.grid{display:grid}
.flex-1{flex:1}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.shrink-0{flex-shrink:0}
.items-center{align-items:center}.items-baseline{align-items:baseline}.items-end{align-items:flex-end}
.justify-between{justify-content:space-between}.justify-center{justify-content:center}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.min-h-screen{min-height:100vh}
.overflow-x-auto{overflow-x:auto}
.group{position:relative}

/* ---------- spacing ---------- */
.mt-1{margin-top:calc(var(--sp)*1)}.mt-2{margin-top:calc(var(--sp)*2)}.mt-3{margin-top:calc(var(--sp)*3)}
.mt-4{margin-top:calc(var(--sp)*4)}.mt-6{margin-top:calc(var(--sp)*6)}.mt-8{margin-top:calc(var(--sp)*8)}
.mt-10{margin-top:calc(var(--sp)*10)}.mt-16{margin-top:calc(var(--sp)*16)}
.mb-1{margin-bottom:calc(var(--sp)*1)}.mb-2{margin-bottom:calc(var(--sp)*2)}
.mb-3{margin-bottom:calc(var(--sp)*3)}.mb-4{margin-bottom:calc(var(--sp)*4)}
.ml-1{margin-left:calc(var(--sp)*1)}.mx-2{margin-inline:calc(var(--sp)*2)}.mx-auto{margin-inline:auto}
.pt-4{padding-top:calc(var(--sp)*4)}.pt-8{padding-top:calc(var(--sp)*8)}
.pr-4{padding-right:calc(var(--sp)*4)}.pl-5{padding-left:calc(var(--sp)*5)}
.p-3{padding:calc(var(--sp)*3)}.p-4{padding:calc(var(--sp)*4)}.p-5{padding:calc(var(--sp)*5)}.p-6{padding:calc(var(--sp)*6)}
.px-3{padding-inline:calc(var(--sp)*3)}.px-5{padding-inline:calc(var(--sp)*5)}
.py-1{padding-block:calc(var(--sp)*1)}.py-2{padding-block:calc(var(--sp)*2)}.py-3{padding-block:calc(var(--sp)*3)}
.py-5{padding-block:calc(var(--sp)*5)}.py-8{padding-block:calc(var(--sp)*8)}.py-10{padding-block:calc(var(--sp)*10)}
.py-12{padding-block:calc(var(--sp)*12)}.py-16{padding-block:calc(var(--sp)*16)}
.gap-2{gap:calc(var(--sp)*2)}.gap-3{gap:calc(var(--sp)*3)}.gap-4{gap:calc(var(--sp)*4)}
.gap-5{gap:calc(var(--sp)*5)}.gap-6{gap:calc(var(--sp)*6)}.gap-8{gap:calc(var(--sp)*8)}.gap-10{gap:calc(var(--sp)*10)}
.space-y-1\.5>*+*{margin-top:calc(var(--sp)*1.5)}.space-y-2>*+*{margin-top:calc(var(--sp)*2)}
.space-y-5>*+*{margin-top:calc(var(--sp)*5)}

/* ---------- sizing ---------- */
.w-9{width:calc(var(--sp)*9)}.w-24{width:calc(var(--sp)*24)}.w-32{width:calc(var(--sp)*32)}.w-40{width:calc(var(--sp)*40)}
.w-full{width:100%}.h-2{height:calc(var(--sp)*2)}.h-9{height:calc(var(--sp)*9)}
.max-w-md{max-width:var(--container-md)}.max-w-2xl{max-width:var(--container-2xl)}
.max-w-3xl{max-width:var(--container-3xl)}.max-w-7xl{max-width:var(--container-7xl)}

/* ---------- typography ---------- */
.font-display{font-family:var(--font-display)}.font-sans{font-family:var(--font-sans)}
.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-normal{font-weight:400}
.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}
.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}
.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.2rem}
.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}
.leading-none{line-height:1}.leading-tight{line-height:1.25}.leading-snug{line-height:1.375}
.leading-relaxed{line-height:1.625}.leading-\[1\.05\]{line-height:1.05}
.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}
.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.25em\]{letter-spacing:.25em}
.uppercase{text-transform:uppercase}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}
.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}
.decoration-gold{text-decoration-color:var(--gold)}.decoration-gold\/40{text-decoration-color:rgba(201,162,39,.4)}
.whitespace-nowrap{white-space:nowrap}.tabular-nums{font-variant-numeric:tabular-nums}
.list-decimal{list-style:decimal;padding-left:1.25rem}

/* ---------- color ---------- */
.bg-navy{background-color:var(--navy)}.bg-navy-deep{background-color:var(--navy-deep)}
.bg-gold{background-color:var(--gold)}.bg-cream{background-color:var(--cream)}
.bg-paper{background-color:var(--paper)}.bg-white{background-color:var(--white)}
.bg-line{background-color:var(--line)}.bg-white\/5{background-color:rgba(255,255,255,.05)}
.text-navy{color:var(--navy)}.text-gold{color:var(--gold)}.text-gold-deep{color:var(--gold-deep)}
.text-ink{color:var(--ink)}.text-ink-soft{color:var(--ink-soft)}.text-line{color:var(--line)}
.text-white{color:var(--white)}.text-white\/55{color:rgba(255,255,255,.55)}
.text-white\/70{color:rgba(255,255,255,.7)}.text-white\/75{color:rgba(255,255,255,.75)}
.text-white\/80{color:rgba(255,255,255,.8)}.text-white\/85{color:rgba(255,255,255,.85)}
.border{border-width:1px;border-style:solid}.border-b{border-bottom:1px solid var(--line)}
.border-b-2{border-bottom:2px solid var(--line)}.border-t{border-top:1px solid var(--line)}
.border-y{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.border-line{border-color:var(--line)}.border-navy{border-color:var(--navy)}
.border-navy-light\/40{border-color:rgba(28,58,99,.4)}
.border-white\/10{border-color:rgba(255,255,255,.1)}.border-white\/15{border-color:rgba(255,255,255,.15)}
.border-white\/30{border-color:rgba(255,255,255,.3)}
.rounded{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}
.transition-colors{transition:color .2s,background-color .2s,border-color .2s}
.hover\:text-gold:hover{color:var(--gold)}.hover\:text-gold-deep:hover{color:var(--gold-deep)}
.hover\:text-navy:hover{color:var(--navy)}.hover\:bg-cream:hover{background-color:var(--cream)}
.hover\:bg-gold-bright:hover{background-color:var(--gold-bright)}.hover\:bg-white\/10:hover{background-color:rgba(255,255,255,.1)}
.card-hover{transition:transform .15s,border-color .15s,box-shadow .15s}
.card-hover:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 6px 16px rgba(11,37,69,.08)}
.hero-grad{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-deep) 100%)}
.gold-rule{height:3px;background:var(--gold);border-radius:2px}
.prose-atl p{margin:0 0 1rem;line-height:1.7;color:var(--ink)}
.prose-atl p:last-child{margin-bottom:0}

/* ---------- responsive utility variants ---------- */
@media (min-width:640px){
  .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sm\:col-span-1{grid-column:span 1 / span 1}
}
@media (min-width:768px){
  .md\:flex-row{flex-direction:row}
  .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  .md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}
  .md\:col-span-2{grid-column:span 2 / span 2}
  .md\:col-span-5{grid-column:span 5 / span 5}
  .md\:col-span-7{grid-column:span 7 / span 7}
  .md\:text-3xl{font-size:1.875rem}.md\:text-4xl{font-size:2.2rem}
  .md\:text-5xl{font-size:2.6rem}.md\:text-6xl{font-size:3rem}
  .md\:text-base{font-size:1rem}.md\:text-lg{font-size:1.125rem}
  .md\:p-8{padding:calc(var(--sp)*8)}
  .md\:py-14{padding-block:calc(var(--sp)*14)}.md\:py-16{padding-block:calc(var(--sp)*16)}
  .md\:py-24{padding-block:calc(var(--sp)*24)}
}
@media (min-width:1024px){
  .lg\:hidden{display:none}.lg\:flex{display:flex}
  .lg\:col-span-2{grid-column:span 2 / span 2}
  .lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* =====================================================================
   NEW CHROME — topbar, header, nav, breadcrumb, hero/banner, footer, table
   ===================================================================== */
.atl-topbar{background:var(--navy-deep);color:rgba(255,255,255,.7);font-size:.75rem;padding:.35rem 0}
.atl-topbar .atl-wrap{max-width:var(--container-7xl);margin-inline:auto;padding-inline:1.25rem}
.atl-header{background:var(--navy);color:#fff}
.atl-header .atl-wrap{max-width:var(--container-7xl);margin-inline:auto;padding:.75rem 1.25rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem}
.atl-brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}
.atl-brand-mark{width:2.25rem;height:2.25rem;flex-shrink:0}
.atl-brand-name{font-family:var(--font-display);font-weight:600;font-size:1.125rem;line-height:1.2}
.atl-brand-sub{font-size:.7rem;color:var(--gold);letter-spacing:.04em;text-transform:uppercase}
.atl-nav{display:none;list-style:none;margin:0;padding:0;gap:1.25rem;font-size:.9rem}
.atl-nav a{color:rgba(255,255,255,.85);text-decoration:none}
.atl-nav a:hover,.atl-nav a[aria-current="page"]{color:var(--gold)}
@media (min-width:1024px){.atl-nav{display:flex}}
.atl-menu-toggle{position:absolute;opacity:0;pointer-events:none}
.atl-menu-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;
  border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-md);cursor:pointer;color:#fff}
@media (min-width:1024px){.atl-menu-btn{display:none}}
.atl-mobile-nav{max-height:0;overflow:hidden;background:var(--navy-deep);transition:max-height .2s ease}
.atl-mobile-nav ul{list-style:none;margin:0;padding:.5rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.5rem}
.atl-mobile-nav a{color:rgba(255,255,255,.85);text-decoration:none;font-size:.95rem}
.atl-menu-toggle:checked~.atl-mobile-nav{max-height:24rem}
@media (min-width:1024px){.atl-mobile-nav{display:none}}
.atl-breadcrumb{background:var(--cream);border-bottom:1px solid var(--line);font-size:.85rem;color:var(--ink-soft)}
.atl-breadcrumb .atl-wrap{max-width:var(--container-7xl);margin-inline:auto;padding:.5rem 1.25rem}
.atl-breadcrumb a{color:var(--ink-soft);text-decoration:none}
.atl-breadcrumb a:hover{color:var(--navy)}
.atl-breadcrumb .sep{margin:0 .4rem;color:var(--line)}
.atl-hero{position:relative;overflow:visible;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-deep) 100%);color:#fff}
.atl-hero .atl-wrap{max-width:var(--container-7xl);margin-inline:auto;padding:1.5rem 1.25rem;
  display:flex;flex-direction:column-reverse;gap:1.25rem;align-items:center}
@media (min-width:768px){.atl-hero .atl-wrap{flex-direction:row;justify-content:space-between;padding:2rem 1.25rem}}
.atl-hero-media{flex-shrink:0;width:100%;max-width:22rem}
.atl-hero-media img{width:100%;height:auto;max-height:220px;object-fit:cover;border-radius:var(--radius-lg)}
@media (min-width:768px){.atl-hero-media{width:38%}}
.atl-banner{margin:0 0 1.5rem;display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap}
.atl-banner img{width:100%;max-width:220px;height:auto;max-height:140px;object-fit:cover;border-radius:var(--radius-lg)}
@media (min-width:768px){.atl-banner img{max-height:220px}}
.atl-footer{background:var(--navy-deep);color:rgba(255,255,255,.85);margin-top:2rem}
.atl-footer-grid{max-width:var(--container-7xl);margin-inline:auto;padding:2.5rem 1.25rem;
  display:grid;gap:2rem;grid-template-columns:1fr}
@media (min-width:768px){.atl-footer-grid{grid-template-columns:2fr 1fr 1fr 1fr}}
.atl-footer h4{font-family:var(--font-display);font-size:1rem;font-weight:600;color:#fff;margin-bottom:.75rem}
.atl-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;font-size:.875rem}
.atl-footer a{color:inherit;text-decoration:none}.atl-footer a:hover{color:var(--gold)}
.atl-footer-bottom{border-top:1px solid rgba(255,255,255,.1)}
.atl-footer-bottom .atl-wrap{max-width:var(--container-7xl);margin-inline:auto;padding:1.1rem 1.25rem;
  display:flex;flex-direction:column;gap:.5rem;align-items:center;justify-content:space-between;
  font-size:.75rem;color:rgba(255,255,255,.55)}
@media (min-width:768px){.atl-footer-bottom .atl-wrap{flex-direction:row}}
.atl-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--radius-lg)}
.atl-table-wrap table{width:100%;font-size:.875rem;border-collapse:collapse}
.atl-table-wrap th{background:var(--navy);color:#fff;text-align:left;padding:.6rem .9rem;position:sticky;top:0}
.atl-table-wrap td{padding:.55rem .9rem;border-bottom:1px solid var(--line)}
.atl-table-wrap tbody tr:nth-child(even){background:var(--cream)}
.atl-table-wrap td:first-child,.atl-table-wrap th:first-child{position:sticky;left:0;background:inherit;box-shadow:1px 0 0 var(--line)}
.atl-stat-chip{border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-lg);padding:1rem;background:rgba(255,255,255,.05)}
.atl-404{min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:3rem 1.25rem}

/* ---------- print ---------- */
@media print{
  .atl-topbar,.atl-header,.atl-mobile-nav,.atl-menu-btn,.atl-footer,.atl-breadcrumb{display:none}
  body{color:#000;background:#fff}
  a{text-decoration:underline}
}
