/* Readability pass: the itinerary, departure time and place names come first. */
body{background:#fafbf9;background-image:none}
.hero{min-height:0;padding-top:35px;padding-bottom:26px}
.hero h1{font-size:clamp(30px,5vw,46px);letter-spacing:-.035em;line-height:1.2}
.hero__eyebrow,.section-kicker{display:none}
.section-heading h2{font-size:26px;line-height:1.25}
.flight-card__airlines{font-size:14px;color:#c5dadd}
.flight-card__top{font-size:12px}
.flight-segment span{font-size:17px;line-height:1.4;overflow:visible}
.flight-flow{grid-template-columns:minmax(0,1fr) minmax(80px,.55fr) minmax(0,1fr)!important}
.flight-stop__city{font-size:14px;line-height:1.4}
.flight-stop__timing{font-size:14px;line-height:1.5}
.flight-stop__timing b{font-size:23px}
.flight-stop__timing em{font-size:13px}
.flight-countdown{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}
.flight-countdown strong{font-size:16px;font-weight:600}
.flight-countdown span{font-size:13px}
.flight-card{min-height:0;border-radius:14px;box-shadow:none}
.flight-placeholder h3{font-size:22px;line-height:1.4}
.flight-placeholder{margin:18px 0}
.flight-placeholder p,.flight-placeholder li{font-size:14px}
.day-meta,.day-title,.day-locations{display:block}
.day-title{font-size:20px;line-height:1.4}.day-meta{font-size:13px}.day-locations{font-size:14px}
.day-ticket-summary{font-size:12px;background:transparent!important;padding-left:0}
.schedule-text{font-size:16px;line-height:1.75}.schedule-time{font-size:13px;color:#365159}
.schedule-map-link{font-size:13px;min-height:40px;border-radius:7px}
.detail-note{font-size:14px;background:transparent;border-color:#d5dfda;color:#526564}
.reading-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.reading-nav a{padding:10px 17px;min-height:44px;border:1px solid #dce3df;border-radius:8px;text-decoration:none;font-size:15px;background:white}
.reading-nav a:first-child{background:#244d50;color:white;border-color:#244d50}
.day-anchors{display:block;margin-top:8px;color:#98633d;font-size:13px;line-height:1.5}
@media(max-width:600px){.hero{padding-top:24px}.day-card{padding-left:0}.timeline:before,.day-dot{display:none}.schedule-item{padding-left:70px}.schedule-item:before{left:58px}.schedule-item:after{left:54px}.schedule-time{width:52px;font-size:13px}.day-title{font-size:18px}.flight-stop__timing b{font-size:20px}.flight-segment span{font-size:16px}.flight-card{padding:20px}.day-toggle{padding-top:17px;padding-bottom:17px}.section{padding-top:24px}.reading-nav a{padding:10px 12px}}

/* Pastel travel palette: keep the information hierarchy, soften the surfaces. */
:root{--paper:#f8faf6;--surface:#fffdf9;--ink:#285356;--muted:#718884;--line:#dce8e1;--lake:#83b9b1;--lake-soft:#dceee9;--forest:#9fbe9b;--terracotta:#d3947e;--warning:#c87d74;--shadow:0 14px 40px rgba(88,126,116,.10)}
body{background:#f8faf6;color:var(--ink)}
.topbar{border-bottom-color:#dbe7e1;background:rgba(248,250,246,.92)}
.hero h1,.section-heading h2{color:var(--ink)}
.flight-card{border:1px solid #cfe4dc;color:var(--ink);background:#e2f0eb;box-shadow:0 10px 28px rgba(88,126,116,.12)}
.flight-card__top,.flight-card__airlines,.flight-stop__city,.flight-stop__timing,.flight-countdown span,.flight-placeholder p{color:#557572}
.flight-stop__code,.flight-stop__timing b,.flight-placeholder h3,.flight-countdown strong{color:#285356}
.flight-stop__dot{border-color:#7fb5ab;background:#e2f0eb}.flight-segment{color:#68968f}.flight-segment i{background:#9bc8bf;color:#5f9289}
.flight-card__countdown-row{border-top-color:#c6ddd5}.flight-placeholder__eyebrow{color:#b97868}.flight-placeholder li{border-color:#b8d9d0;color:#416c68;background:rgba(255,255,255,.42)}
.carousel-dot{background:#bdd2cc}.carousel-dot.is-active{background:#82b6ad}
.reading-nav a{border-color:#d8e6df;background:#fffdf9;color:#426c68}.reading-nav a:first-child{background:#9bc9bf;color:#285356;border-color:#9bc9bf}
.day-dot{border-color:var(--paper);background:#b8ccc5;box-shadow:0 0 0 1px #b8ccc5}.day-card.is-today .day-dot{background:#d3947e;box-shadow:0 0 0 3px rgba(211,148,126,.2)}
.day-meta,.section-kicker,.ticket-card__date{color:#6fa49a}.day-toggle{border-bottom-color:var(--line)}.day-chevron{border-color:#cfe0d8;color:#6ca298}.schedule-item::before{background:#dce8e1}.schedule-item::after{border-color:#83b9b1;background:var(--paper)}
.schedule-map-link{border-color:#c3ded7;color:#3f7a72;background:#e8f4f0}.detail-note{border-color:#e7c7bc;color:#6e5a54}.cost-tag{background:#e8f1eb;color:#5c7770}
.ticket-filters button{border-color:#d7e4de;background:#fffdf9;color:#6f8681}.ticket-filters button.is-active{border-color:#9bc9bf;color:#285356;background:#cfe9e2}.ticket-card,.accordion{border-color:#dce8e1;background:rgba(255,253,249,.86)}.ticket-card.is-purchased{background:#edf6ed}.ticket-card__guidance{border-top-color:#dce8e1}
.rental-panel{background:#e4f0eb;color:#285356;box-shadow:0 10px 28px rgba(88,126,116,.12)}.return-deadline{background:#fff0e9;color:#765148;border-bottom-color:#d3947e}.rental-countdown{background:#acd3ca;color:#285356}.rental-countdown span,.rental-countdown small,.rental-sub,.rental-stop__label,.rental-stop span,.rental-price{color:#527b75}.rental-price{border-top-color:#c7dfd8}.rental-price strong,.rental-car{color:#285356}.rental-details{background:#e4f0eb}
.accordion summary{background:rgba(255,253,249,.72)}
.route-region-tabs button[aria-pressed="true"],.geo-style-switch button[aria-pressed="true"]{background:#cfe9e2;color:#285356;border:1px solid #a9d2c8;box-shadow:none}
.route-day-tabs button[aria-pressed="true"]{background:#fffdf9;box-shadow:inset 0 0 0 1px #a9d2c8;color:#477b73}

/* Type and navigation refinement: clear editorial hierarchy without the default mono look. */
body,
button,
input,
textarea,
select{font-family:"Avenir Next","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
.hero__date{font-family:"Avenir Next","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;letter-spacing:.015em;color:#5d7b77}
.section-heading{align-items:center}
.section-heading h2{font-size:clamp(28px,4.8vw,34px);line-height:1.12;letter-spacing:-.035em;font-weight:760}
.section-index,.soft-label,.flight-card__top,.flight-placeholder__eyebrow{font-family:"Avenir Next","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:13px;letter-spacing:.1em;font-weight:720}
.section-index,.soft-label{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid #d3e4dd;border-radius:999px;color:#557f77;background:#e8f4f0;white-space:nowrap}
.section-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px;padding:5px;border:1px solid #dce8e1;border-radius:14px;background:rgba(255,253,249,.72);width:max-content;max-width:100%;box-shadow:0 8px 24px rgba(88,126,116,.06)}
.section-tabs a{display:inline-flex;align-items:center;min-height:38px;padding:8px 14px;border-radius:10px;color:#66837d;text-decoration:none;font-size:14px;font-weight:680;letter-spacing:.01em;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.section-tabs a:hover{background:#e8f4f0;color:#3f746c}
.section-tabs a[aria-current="page"]{background:#cfe9e2;color:#285356;box-shadow:inset 0 0 0 1px #a9d2c8}
.flight-card{min-height:0;padding:16px 18px;border-radius:18px}
.flight-card__airlines{font-size:13px}
.flight-flow{margin-top:12px}
.flight-stop__code{font-family:"Avenir Next","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:clamp(24px,7vw,32px);letter-spacing:-.04em}
.flight-stop__timing b{font-family:"Avenir Next","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:21px}
.flight-segment span,.flight-countdown strong{font-family:"Avenir Next","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
.flight-card__countdown-row{padding-top:13px}
.flight-countdown strong{font-size:15px;letter-spacing:.01em}
.day-meta{font-family:"Avenir Next","Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:14px;letter-spacing:.1em;font-weight:760}
.day-title{font-size:21px;line-height:1.35;font-weight:740}
.day-locations{font-size:14px}
@media(max-width:600px){
  .section-tabs{width:100%;gap:5px}
  .section-tabs a{flex:1 1 auto;justify-content:center;padding-inline:9px;font-size:13px}
  .section-heading h2{font-size:28px}
  .section-index,.soft-label{font-size:12px}
  .flight-card{padding:15px 16px}
  .day-meta{font-size:13px}
  .day-title{font-size:19px}
}
