:root{--bg: #f8fafc;--surface: #ffffff;--ink: #0f172a;--muted: #64748b;--brand: #0c4a6e;--brand-2: #0ea5e9;--accent: #16a34a;--warn: #b45309;--border: #e2e8f0;--radius: 10px;--shadow: 0 1px 3px rgba(15, 23, 42, .08);--max: 960px;--font: system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--brand-2)}img,svg{max-width:100%;height:auto}.wrap{width:min(100% - 2rem,var(--max));margin-inline:auto}.site-header{background:var(--brand);color:#fff;padding:.85rem 0;position:sticky;top:0;z-index:20;box-shadow:var(--shadow)}.site-header a{color:#e0f2fe;text-decoration:none}.site-header a:hover{color:#fff}.header-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;justify-content:space-between}.logo{font-weight:750;font-size:1.15rem;letter-spacing:-.02em;color:#fff!important}.logo span{font-weight:500;opacity:.85;font-size:.85rem}.nav{display:flex;flex-wrap:wrap;gap:.65rem 1rem;font-size:.92rem}.site-footer{margin-top:3rem;padding:2rem 0 2.5rem;border-top:1px solid var(--border);background:#fff;color:var(--muted);font-size:.88rem}.site-footer a{color:var(--muted)}.hero{padding:2.25rem 0 1.5rem}.hero h1{margin:0 0 .5rem;font-size:clamp(1.6rem,4vw,2.2rem);letter-spacing:-.03em;line-height:1.2}.lede{color:var(--muted);font-size:1.05rem;max-width:40rem;margin:0 0 1.25rem}.grid{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:640px){.grid.cols-2{grid-template-columns:1fr 1fr}.grid.cols-3{grid-template-columns:repeat(3,1fr)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;box-shadow:var(--shadow)}.card h2,.card h3{margin:0 0 .4rem;font-size:1.05rem}.card p{margin:0;color:var(--muted);font-size:.92rem}.card a.stretched{text-decoration:none;color:inherit;display:block}.badge{display:inline-block;font-size:.72rem;font-weight:650;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .45rem;border-radius:999px;background:#e0f2fe;color:var(--brand);margin-bottom:.4rem}.badge.warn{background:#ffedd5;color:var(--warn)}.badge.ok{background:#dcfce7;color:#166534}.note{background:#fff7ed;border:1px solid #fed7aa;border-radius:var(--radius);padding:.85rem 1rem;font-size:.9rem;color:#9a3412;margin:1rem 0}.note.info{background:#eff6ff;border-color:#bfdbfe;color:#1e3a8a}.map-frame{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;overflow-x:auto;box-shadow:var(--shadow)}.map-frame svg{display:block;margin-inline:auto;min-width:260px}.legend{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.82rem;color:var(--muted);margin:.75rem 0 0}.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-right:4px;border:1px solid #0f172a}table.seats{width:100%;border-collapse:collapse;font-size:.9rem}table.seats th,table.seats td{text-align:left;padding:.5rem .4rem;border-bottom:1px solid var(--border);vertical-align:top}table.seats th{font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.score{font-weight:700;font-variant-numeric:tabular-nums}.breadcrumb{font-size:.85rem;color:var(--muted);margin:1rem 0 .5rem}.breadcrumb a{color:var(--muted)}.prose h2{margin-top:1.75rem;font-size:1.25rem}.prose p{max-width:40rem}.btn{display:inline-block;background:var(--brand);color:#fff!important;text-decoration:none;padding:.55rem .95rem;border-radius:8px;font-weight:600;font-size:.92rem}.btn:hover{background:#075985}.btn.secondary{background:#fff;color:var(--brand)!important;border:1px solid var(--border)}.btn-row{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}.tags{display:flex;flex-wrap:wrap;gap:.3rem}.tag{font-size:.72rem;background:#f1f5f9;border-radius:4px;padding:.1rem .35rem;color:#475569}h1.page-title{margin:.25rem 0 .75rem;font-size:clamp(1.4rem,3.5vw,1.9rem);letter-spacing:-.02em}.muted{color:var(--muted)}ul.clean{padding-left:1.1rem}ul.clean li{margin-bottom:.35rem}.section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem}.section-head h2{margin:0;font-size:1.25rem}.filter-label{display:flex;align-items:center;gap:.45rem;font-size:.85rem;color:var(--muted)}.filter-input{font:inherit;padding:.4rem .65rem;border:1px solid var(--border);border-radius:8px;min-width:min(100%,16rem);background:#fff;color:var(--ink)}.filter-input:focus{outline:2px solid var(--brand-2);outline-offset:1px}.airline-card[hidden]{display:none!important}
