.dl-banner{padding:2.5rem 0;background:#0a1628;border-bottom:2px solid #1a3050}
.dl-banner h1{font-size:clamp(1.3rem,3vw,1.75rem);font-weight:800;color:#f0f6fc;margin-bottom:.65rem}
.dl-banner h1 em{color:#ffb347;font-style:normal}
.dl-banner p{color:#8aa8c0;font-size:.9rem;max-width:580px;margin-bottom:1.2rem}
.dl-stats{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:1.2rem}
.dl-stats span{background:#0f2038;border:1px solid #1a3050;padding:.4rem .8rem;font-size:.76rem;color:#7a9ab8;font-family:monospace}
.dl-stats strong{color:#ffb347}

.departure-board{background:#0f2038;border:3px solid #1a3050;border-radius:2px;overflow:hidden}
.board-header{background:#1a3050;padding:.65rem 1rem;display:flex;justify-content:space-between;align-items:center}
.board-header h2{font-size:.85rem;color:#ffb347;font-weight:800;font-family:monospace;margin:0}
.board-header span{font-size:.7rem;color:#7a9ab8}
.board-table{width:100%;border-collapse:collapse;font-size:.82rem}
.board-table th{background:#152840;color:#ffb347;padding:.55rem .75rem;text-align:left;font-family:monospace;font-size:.72rem;font-weight:800;border-bottom:1px solid #243850}
.board-table td{padding:.65rem .75rem;border-bottom:1px solid #152030;color:#c8d8e8;vertical-align:middle}
.board-table tr:last-child td{border-bottom:none}
.board-table tr:hover td{background:#152840}
.flight-no{font-family:monospace;font-weight:800;color:#ffb347}
.status-open{color:#4ade80;font-weight:700;font-size:.78rem}
.status-soon{color:#7ec8ff;font-weight:700;font-size:.78rem}
.gate-tag{display:inline-block;background:#1a3050;border:1px solid #ffb347;color:#ffb347;font-family:monospace;font-size:.72rem;padding:.2rem .5rem;font-weight:800}

.ticket-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.ticket-card{background:#0f2038;border:1px dashed #243850;padding:1.1rem;position:relative}
.ticket-card::after{content:"";position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:12px;height:12px;background:#0a1628;border-radius:50%;border:1px dashed #243850}
.ticket-card h3{font-size:.9rem;color:#f0f6fc;margin-bottom:.35rem;font-weight:800}
.ticket-card p{font-size:.78rem;color:#7a9ab8;margin-bottom:.55rem;line-height:1.45}
.ticket-code{font-family:monospace;font-size:.68rem;color:#ffb347;margin-bottom:.4rem}

.lounge-steps{display:flex;flex-direction:column;gap:0;max-width:600px;margin:0 auto}
.lounge-step{display:grid;grid-template-columns:80px 1fr;gap:1rem;padding:1rem 0;border-bottom:1px dashed #243850}
.lounge-step:last-child{border-bottom:none}
.lounge-gate{font-family:monospace;font-size:.85rem;color:#ffb347;font-weight:800;padding-top:.1rem}
.lounge-step h3{font-size:.92rem;color:#f0f6fc;margin-bottom:.3rem;font-weight:800}
.lounge-step p{font-size:.8rem;color:#7a9ab8;line-height:1.5}

.baggage-dual{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.baggage-col{background:#0f2038;border:1px solid #1a3050}
.baggage-col .bh{padding:.5rem 1rem;background:#152840;font-size:.72rem;font-family:monospace;color:#7ec8ff;border-bottom:1px solid #243850}
.baggage-col ul{padding:1rem 1.1rem}
.baggage-col li{font-size:.82rem;color:#7a9ab8;padding:.25rem 0;border-bottom:1px solid #152030;line-height:1.45}
.baggage-col li:last-child{border-bottom:none}

.dl-cta{background:#1a3050;padding:2.5rem 0;text-align:center;border-top:2px solid #ffb347}
.dl-cta h2{font-size:clamp(1.05rem,2.6vw,1.35rem);color:#f0f6fc;margin-bottom:.4rem;font-weight:800}
.dl-cta p{color:#7a9ab8;font-size:.86rem;margin-bottom:1rem}

.dl-img{border:1px solid #1a3050;border-radius:3px;overflow:hidden;max-width:480px}

@media(max-width:768px){
  .ticket-grid,.baggage-dual{grid-template-columns:1fr}
  .board-table{font-size:.75rem}
  .board-table th:nth-child(3),.board-table td:nth-child(3){display:none}
}
