/* ============================================================
   TBF v2 — Responsive
   ============================================================ */
@media (max-width:1150px){
  .blog-grid{grid-template-columns:repeat(2,1fr)}
  .cred-badges{display:none}
  .mega{left:0;transform:translateX(0) translateY(8px);width:min(640px,94vw)}
  .nav-links li:hover > .mega,
  .nav-links li:focus-within > .mega,
  .nav-links li.mega-open > .mega{transform:translateX(0) translateY(0)}
  .mega--split{grid-template-columns:minmax(200px,40%) minmax(0,1fr)}
  .dock-fields{grid-template-columns:minmax(0,1.2fr) auto minmax(0,1.2fr) minmax(200px,1.5fr);gap:.5rem}
  .dock-search{grid-column:1/-1;width:100%;height:46px;min-height:46px!important}
}
@media (max-width:980px){
  .nav-links,.nav-phone{display:none}
  .burger{display:flex}
  .mega{display:none!important}
  .drawer-acc-panel{grid-template-columns:1fr}
  .hero-grid{grid-template-columns:1fr;gap:2.4rem}
  .hero-copy{max-width:none;text-align:center;margin-inline:auto}
  .hero-kick{margin-inline:auto}
  .hero-cta,.hero-assure{justify-content:center}
  .dock{padding:1.1rem}
  .dock-fields{grid-template-columns:1fr auto 1fr;gap:.5rem}
  .dock-dates{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;grid-column:1/-1;min-width:0}
  .dock-search{grid-column:1/-1;width:100%;height:46px;min-height:46px!important}
  .mc-leg__row{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.45rem}
  .mc-leg__row .field-depart{grid-column:1/-1}
  .mc-leg__row .mc-remove{grid-column:1/-1;justify-self:end}
  .mc-toolbar .dock-search{width:100%;margin-left:0}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .pillars{grid-template-columns:1fr}
  .cabin,.spec,.about-wrap{grid-template-columns:1fr}
  .cabin-media{min-height:360px}
  .spec-photo{min-height:340px}
  .about-visual{max-width:440px;margin-inline:auto}
  .about-badge{left:0}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-brand{grid-column:1/-1}
  .enquiry-grid{grid-template-columns:1fr;gap:2.6rem}
  .enquiry-intro{text-align:center}
  .enquiry-intro>p{margin-inline:auto}
  .enquiry-direct,.enquiry-trust{max-width:480px;margin-inline:auto}
  .fly-map{grid-template-columns:1fr}
  .map-card{min-height:300px}
}
@media (max-width:720px){
  :root{--pad:4rem}
  body{font-size:16.5px}
  .diff-row{grid-template-columns:1fr;gap:.6rem;padding:1.2rem 0}
  .d-mid{display:none}
  .d-diy{padding-bottom:.6rem;border-bottom:1px dashed var(--line-2)}
  .diff-heads{gap:.6rem}
  .diff-head b{font-size:1rem}
  .dh-ico{width:36px;height:36px}
  .dock{padding:1rem}
  .dock-fields{grid-template-columns:1fr;gap:.5rem}
  .dock-dates{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;grid-column:auto;min-width:0}
  .dock-search{width:100%;height:48px;min-height:48px!important;border-radius:12px!important}
  .swap{display:none}
  .mc-leg__row .swap{display:none}
  .mc-leg__row{grid-template-columns:1fr;gap:.45rem}
  .seg{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .seg button{flex:1 0 auto;white-space:nowrap;padding:.4rem .75rem;font-size:.8rem}
  .dock-top{flex-direction:column;align-items:stretch}
  .dock-pax{margin-left:0}
  .pax-btn{width:100%;justify-content:center}
  .pax-pop{left:0;right:0;width:auto}
  .dock-extras{gap:.75rem 1rem;margin-top:.85rem;padding-top:.85rem}
  .dock-extras label{font-size:.84rem}
  .blog-grid{grid-template-columns:1fr}
  .cta-actions{flex-direction:column}
  .cta-actions .btn{width:100%}
  .footer-grid{grid-template-columns:1fr}
  .promo-table .trow{font-size:.76rem}
  .head-row{flex-direction:column;align-items:flex-start}
  .enq-grid{grid-template-columns:1fr}
  .enq-span2{grid-column:auto}
  .enquiry-direct,.enquiry-trust{max-width:none}
  .map-svg .map-label:not(.hub-label){display:none}
  .map-chips{gap:.4rem}
  .map-chip{padding:.4rem .8rem;font-size:.78rem}
}
@media (max-width:480px){
  .stats-grid{grid-template-columns:1fr 1fr;gap:.8rem}
  .stat{padding:1.4rem .8rem}
  .promo-city{font-size:2.2rem}
  .dock-dates{grid-template-columns:1fr;gap:.5rem}
  .field{padding:.4rem .7rem .45rem}
  .field input{font-size:.92rem}
}
@media (max-width:720px){
  .rail-track{animation:none!important}
  .brand-mark::after,.btn-gold::after{animation:none!important}
  [data-reveal],[data-stagger]>*{opacity:1!important;transform:none!important;transition:none!important}
  .section:not(.hero){content-visibility:auto;contain-intrinsic-size:1px 720px}
}
@media (hover:none){
  .pd-card:hover,.deal-card:hover,.stat:hover{transform:none}
}

