.country-sections { display:flex; gap:8px; padding:16px 32px 0; }
.country-sections a { padding:8px 18px; border-radius:22px; text-decoration:none; color:#42698f; font-size:14px; border:1px solid #d4e3f3; background:#ffffffa6; }
.country-sections a[aria-current="page"] { background:#285b91; border-color:#285b91; color:white; }
.country-sections a:hover { box-shadow:0 2px 10px #21457315; }
.guide-content.arrival-content { padding-top:24px; }
.arrival-content .arrival-eyebrow { margin:0 0 6px; font-size:12px; color:#6682a5; letter-spacing:.06em; }
.arrival-content .arrival-intro h2 { margin:0 0 16px; padding:0; border:0; font-size:25px; }
.arrival-content .arrival-intro-note { margin:0 0 16px; color:#527493; }
.arrival-airports { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; margin-bottom:28px; }
.arrival-airport-button { display:flex; flex-direction:column; gap:3px; min-width:0; text-align:left; padding:14px 16px; border:1px solid #cedff0; border-radius:14px; background:#ffffffb8; color:#294f78; cursor:pointer; font:inherit; line-height:1.6; }
.arrival-airport-button strong { font-size:16px; }
.arrival-airport-button span { font-size:12px; color:#5f7b99; }
.arrival-airport-button[aria-pressed="true"] { background:#e1efff; border:2px solid #538fc7; padding:13px 15px; }
.arrival-airport-button:hover { background:#edf5ff; }
.arrival-airport-button:only-child { grid-column:1/-1; }
.arrival-airport-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:20px; }
.arrival-content .arrival-airport-heading h3 { margin:0 0 6px; font-size:22px; }
.arrival-content .arrival-airport-intro { margin:0; color:#537290; font-size:14px; }
.arrival-map-link { flex:0 0 auto; font-size:12px; padding-top:5px; }
.arrival-alert { border-left:3px solid #c79437; background:#fff7e9; padding:14px 18px; border-radius:0 12px 12px 0; margin-bottom:20px; font-size:13px; }
.arrival-content .arrival-alert p { margin:5px 0; }
.arrival-routes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; align-items:start; }
.arrival-route { border:1px solid #d1e1f2; border-radius:18px; background:#ffffffc2; padding:22px; min-width:0; }
.arrival-route:only-child { grid-column:1/-1; }
.arrival-route-title { display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
.arrival-route-kind { font-size:11px; background:#e5f0fc; color:#4278aa; padding:2px 8px; border-radius:6px; }
.arrival-content .arrival-route h4 { margin:0; font-size:19px; line-height:1.5; }
.arrival-content .arrival-route-fit { margin:8px 0 18px; font-size:13px; color:#627f9c; }
.arrival-route-facts { display:grid; grid-template-columns:84px minmax(0,1fr); gap:8px 12px; margin:0 0 18px; font-size:13px; }
.arrival-route-facts dt { color:#6d86a0; }
.arrival-route-facts dd { margin:0; color:#2b527d; }
.arrival-route-links a { min-width:0; overflow-wrap:anywhere; }
.arrival-content .arrival-steps { margin:0 0 16px; padding-left:20px; font-size:14px; }
.arrival-content .arrival-steps li { margin:7px 0; }
.arrival-route-links { display:flex; flex-wrap:wrap; gap:8px 16px; font-size:13px; border-top:1px solid #e4edf6; padding-top:14px; }
.arrival-hotel { margin-top:24px; padding:22px 24px; background:#e8f2fe; border:1px solid #ccdef2; border-radius:18px; }
.arrival-content .arrival-hotel h3,.arrival-content .arrival-tools h3,.arrival-content .arrival-late h3 { margin:0 0 10px; font-size:19px; }
.arrival-content .arrival-hotel > p { margin:0 0 16px; font-size:14px; }
.arrival-tools { margin-top:28px; }
.arrival-content .arrival-tools-list { list-style:none; padding:0; margin:0; }
.arrival-tools-list li { display:grid; grid-template-columns:180px minmax(0,1fr); gap:14px; padding:12px 0; border-bottom:1px solid #d8e5f3; font-size:14px; }
.arrival-tools-list span { color:#5d7b98; }
.arrival-late { padding:18px 0 0; margin-top:18px; font-size:13px; }
.arrival-content .arrival-late p { margin:0; color:#5d7b98; }
.arrival-content button:focus-visible,.country-sections a:focus-visible { outline:3px solid #3784ca; outline-offset:3px; }
@media(max-width:700px) {
  .country-sections { padding:14px 20px 0; }
  .guide-content.arrival-content { padding:22px 20px 28px; }
  .arrival-content .arrival-intro h2 { font-size:21px; }
  .arrival-airports { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .arrival-airport-button { padding:11px 12px; }
  .arrival-airport-button[aria-pressed="true"] { padding:10px 11px; }
  .arrival-airport-heading { flex-direction:column; gap:8px; }
  .arrival-content .arrival-airport-heading h3 { font-size:20px; }
  .arrival-routes { grid-template-columns:minmax(0,1fr); }
  .arrival-route { padding:18px; }
  .arrival-hotel { padding:18px; }
  .arrival-tools-list li { grid-template-columns:minmax(0,1fr); gap:3px; }
}
@media(max-width:420px) {
  .arrival-airports { grid-template-columns:minmax(0,1fr); }
  .arrival-route-facts { grid-template-columns:minmax(0,1fr); gap:3px; }
  .arrival-route-facts dd:not(:last-child) { margin-bottom:10px; }
}
