:root{--ink:#1c1917;--soft:#57534e;--line:#e7e5e4;--accent:#c2410c;--bg:#fff;--tint:#fff7ed}
@media (prefers-color-scheme:dark){:root{--ink:#f5f5f4;--soft:#a8a29e;--line:#3a3532;--accent:#fb923c;--bg:#1c1917;--tint:#2a211b}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
header,main,footer{max-width:42rem;margin:0 auto;padding:0 1.25rem}
header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding-top:1.1rem;padding-bottom:1.1rem;border-bottom:1px solid var(--line)}
.brand{font-weight:650;color:var(--ink);text-decoration:none;white-space:nowrap}
nav{white-space:nowrap}
nav a{margin-left:.9rem;color:var(--soft);text-decoration:none;font-size:.94rem}
main{padding-top:1.6rem;padding-bottom:2rem}
h1{font-size:1.6rem;line-height:1.25;margin:.2rem 0 .9rem;letter-spacing:-.01em}
h2{font-size:1.1rem;margin:2rem 0 .5rem}
a{color:var(--accent)}
.kicker{margin:0;color:var(--soft);font-size:.9rem}
.kicker a{color:var(--soft)}
.lead{font-size:1.06rem}
.small,footer{color:var(--soft);font-size:.86rem}
footer{border-top:1px solid var(--line);padding-top:1rem;padding-bottom:2rem}
table{border-collapse:collapse;width:100%;margin:1.2rem 0}
th,td{text-align:left;padding:.55rem .5rem .55rem 0;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:600;font-size:.86rem;color:var(--soft)}
.times td:not(:first-child){font-variant-numeric:tabular-nums;white-space:nowrap}
.times td:last-child{font-weight:650}
td small{display:block;color:var(--soft);font-size:.8rem}
.note{background:var(--tint);padding:.8rem 1rem;border-radius:6px}
.steps{padding-left:1.3rem}.steps li{margin:.5rem 0}
.firms{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.6rem}
.firms li{display:flex;align-items:center;gap:.8rem}
.firm{display:inline-block;min-width:9.5rem;text-align:center;padding:.65rem 1rem;border-radius:6px;background:var(--accent);color:#fff;font-weight:600;text-decoration:none}
@media (prefers-color-scheme:dark){.firm{color:#1c1917}}
.firms span{color:var(--soft);font-size:.88rem}
.search{display:block;font-weight:600;margin:1.2rem 0 .4rem}
#q{width:100%;font:inherit;padding:.7rem .8rem;border:1px solid var(--soft);border-radius:6px;background:var(--bg);color:var(--ink)}
#found{margin-top:.6rem}
.flights,.months{list-style:none;padding:0;margin:.4rem 0}
.flights a{display:grid;grid-template-columns:4.6rem 1fr auto auto;gap:.8rem;padding:.55rem 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;font-variant-numeric:tabular-nums}
.flights a:hover .fn{text-decoration:underline}
.fn{font-weight:650;color:var(--accent)}
.dt,.dl{color:var(--soft);white-space:nowrap}
.dl{min-width:5.4rem;text-align:right}
.months li{padding:.35rem 0;border-bottom:1px solid var(--line)}
.months span{color:var(--soft);font-size:.9rem;margin-left:.4rem}
@media (max-width:30rem){.flights a{grid-template-columns:4.2rem 1fr auto}.dt{display:none}}
