/* Airport Transfers Service: content pages (about, airport transfers, long distance) */
.ats-page { --navy:#042E7C; --gold:#DFB44E; --ink:#102436; --muted:#5b6b85; --line:#e3e8f1; --soft:#f4f6fb; font-family:'Open Sans',Arial,sans-serif; color:var(--ink); }
.ats-page * { box-sizing:border-box; }
.ats-page .wrap { max-width:1140px; margin:0 auto; padding:0 16px; }
.ats-page section { padding:56px 0; }
.ats-page .soft { background:var(--soft); }
.ats-page .navy { background:var(--navy); color:#fff; }
.ats-page h1, .ats-page h2, .ats-page h3 { color:var(--navy); font-weight:800; line-height:1.2; margin:0 0 14px; }
.ats-page h1 { font-size:40px; }
.ats-page h2 { font-size:30px; }
.ats-page h3 { font-size:19px; }
.ats-page p { font-size:16px; line-height:1.7; color:var(--ink); margin:0 0 14px; }
.ats-page .eyebrow { display:inline-block; margin-bottom:10px; font-size:13px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#b8902f; }
.ats-page .lead { font-size:18px; color:var(--muted); max-width:760px; }
.ats-page .center { text-align:center; } .ats-page .center .lead { margin-left:auto; margin-right:auto; }

/* Hero */
.ats-page .hero { padding:64px 0 56px; background:linear-gradient(135deg, #042E7C 0%, #0a3f9e 100%); color:#fff; }
.ats-page .hero h1 { color:#fff; max-width:820px; }
.ats-page .hero .lead { color:rgba(255,255,255,.88); }
.ats-page .hero .eyebrow { color:var(--gold); }
.ats-page .crumbs { margin:0 0 18px; padding:0; list-style:none; display:flex; flex-wrap:wrap; gap:6px; font-size:13px; color:rgba(255,255,255,.75); }
.ats-page .crumbs li + li::before { content:"\203A"; margin-right:6px; }
.ats-page .crumbs a { color:rgba(255,255,255,.9); text-decoration:none; }
.ats-page .ticks { list-style:none; margin:20px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:10px 22px; }
.ats-page .ticks li { display:flex; align-items:center; gap:8px; font-weight:600; font-size:15px; }
.ats-page .ticks li::before { content:"\2713"; display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; background:var(--gold); color:var(--navy); font-size:13px; font-weight:800; }
.ats-page .soft .ticks li::before, .ats-page section:not(.hero):not(.navy) .ticks li::before { background:#e9f6ef; color:#1b7f4b; }

/* Buttons */
.ats-page .btns { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.ats-page .btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:52px; padding:0 26px; border-radius:10px; font-weight:800; font-size:16px; text-decoration:none !important; letter-spacing:.02em; }
.ats-page .btn.gold { background:var(--gold); color:var(--navy) !important; box-shadow:0 4px 12px rgba(223,180,78,.35); }
.ats-page .btn.ghost { border:2px solid rgba(255,255,255,.6); color:#fff !important; }
.ats-page .btn.outline { border:2px solid var(--navy); color:var(--navy) !important; }
.ats-page .btn:hover { filter:brightness(1.05); }

/* Cards and grids */
.ats-page .grid { display:grid; gap:20px; }
.ats-page .g2 { grid-template-columns:repeat(2, minmax(0,1fr)); }
.ats-page .g3 { grid-template-columns:repeat(3, minmax(0,1fr)); }
.ats-page .g4 { grid-template-columns:repeat(4, minmax(0,1fr)); }
.ats-page .card { background:#fff; border:1px solid var(--line); border-radius:14px; padding:24px; box-shadow:0 2px 8px rgba(16,36,54,.05); }
.ats-page .card p:last-child { margin-bottom:0; }
.ats-page .card .ico { width:46px; height:46px; border-radius:12px; background:#eef3fc; color:var(--navy); display:flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:14px; }
.ats-page .card h3 { margin-bottom:8px; }
.ats-page .card p { font-size:15px; color:var(--muted); }
.ats-page .split { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:40px; align-items:center; }
.ats-page .split img { width:100%; height:auto; border-radius:16px; box-shadow:0 12px 32px rgba(4,46,124,.15); display:block; }

/* Steps */
.ats-page .steps { counter-reset:step; }
.ats-page .step { position:relative; padding-top:58px; }
.ats-page .step::before { counter-increment:step; content:counter(step); position:absolute; top:24px; left:24px; width:30px; height:30px; border-radius:50%; background:var(--navy); color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; }
.ats-page .step { padding-top:68px; }

/* Price / route cards */
.ats-page .route { display:flex; flex-direction:column; text-decoration:none !important; color:inherit; transition:transform .15s, box-shadow .15s; }
.ats-page a.route:hover { transform:translateY(-2px); box-shadow:0 10px 24px rgba(4,46,124,.12); }
.ats-page .route .from { font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.ats-page .route .price { font-size:28px; font-weight:800; color:var(--navy); margin:4px 0 10px; }
.ats-page .route .meta { font-size:14px; color:var(--muted); }
.ats-page .route .go { margin-top:auto; padding-top:14px; font-weight:800; color:var(--navy); }

/* Chips list */
.ats-page .chips { display:flex; flex-wrap:wrap; gap:10px; list-style:none; padding:0; margin:18px 0 0; }
.ats-page .chips li, .ats-page .chips a { display:inline-block; padding:9px 14px; border-radius:999px; background:#fff; border:1px solid var(--line); font-size:14px; font-weight:600; color:var(--ink); text-decoration:none; }
.ats-page .chips li:has(a) { padding:0; border:0; background:none; }
.ats-page .chips a:hover { border-color:var(--navy); color:var(--navy); }

/* Fleet table */
.ats-page .fleet { width:100%; border-collapse:separate; border-spacing:0; background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.ats-page .fleet th, .ats-page .fleet td { padding:14px 16px; text-align:left; font-size:15px; border-bottom:1px solid var(--line); }
.ats-page .fleet th { background:var(--navy); color:#fff; font-size:13px; letter-spacing:.06em; text-transform:uppercase; }
.ats-page .fleet tr:last-child td { border-bottom:0; }
.ats-page .fleet td small { display:block; color:var(--muted); }
.ats-page .table-wrap { overflow-x:auto; }

/* FAQ */
.ats-page .faq { max-width:860px; margin:0 auto; }
.ats-page .faq details { background:#fff; border:1px solid var(--line); border-radius:12px; margin-bottom:10px; }
.ats-page .faq summary { cursor:pointer; list-style:none; padding:18px 52px 18px 20px; font-weight:700; font-size:16px; color:var(--navy); position:relative; }
.ats-page .faq summary::-webkit-details-marker { display:none; }
.ats-page .faq summary::after { content:"+"; position:absolute; right:20px; top:50%; transform:translateY(-50%); font-size:22px; color:var(--muted); }
.ats-page .faq details[open] summary::after { content:"\2212"; }
.ats-page .faq details p { padding:0 20px 18px; margin:0; color:var(--muted); font-size:15px; }

/* CTA band */
.ats-page .cta { text-align:center; }
.ats-page .cta h2 { color:#fff; }
.ats-page .cta p { color:rgba(255,255,255,.85); }
.ats-page .cta .btns { justify-content:center; }
.ats-page .note { font-size:13px; color:var(--muted); }

@media (max-width: 991px) {
  .ats-page .g4 { grid-template-columns:repeat(2, minmax(0,1fr)); }
  .ats-page .g3 { grid-template-columns:repeat(2, minmax(0,1fr)); }
  .ats-page .split { grid-template-columns:1fr; gap:28px; }
}
@media (max-width: 600px) {
  .ats-page section { padding:40px 0; }
  .ats-page .hero { padding:44px 0 40px; }
  .ats-page h1 { font-size:30px; }
  .ats-page h2 { font-size:24px; }
  .ats-page .lead { font-size:16px; }
  .ats-page .g2, .ats-page .g3, .ats-page .g4 { grid-template-columns:1fr; }
  .ats-page .btn { width:100%; }
}
