*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --navy:       #001F54;
  --navy-mid:   #003080;
  --blue:       #0057B8;
  --blue-light: #E6EFF9;
  --amber:      #E07B39;
  --amber-dark: #C0622A;
  --amber-pale: #FEF3EB;
  --white:      #FFFFFF;
  --off-white:  #F5F7FB;
  --border:     #DDE3EE;
  --gray-mid:   #8694A8;
  --gray-dark:  #3B4A5C;
  --ink:        #0D1B2A;
  --green:      #0A7C59;
  --green-pale: #E8F5F1;
  --red:        #C0392B;
  --red-pale:   #FEF0EE;

  --r-sm: 6px;
  --r-md: 12px;
  --r-lg: 18px;
  --r-xl: 24px;
  --shadow: 0 6px 32px rgba(0,31,84,.10), 0 1px 4px rgba(0,31,84,.06);
  --shadow-sm: 0 2px 8px rgba(0,31,84,.08);

  /* Navbar height — must be on :root so .xnav-drawer (sibling) can inherit */
  --n-h: 85px;
  /* Shared navbar colours (also set on .xnav for scoping) */
  --n-navy:#001F54;--n-navy2:#003080;--n-blue:#0057B8;--n-blue-lt:#E6EFF9;
  --n-amber:#E07B39;--n-amber2:#C0622A;--n-amber-lt:#FEF3EB;
  --n-white:#fff;--n-off:#F5F7FB;--n-border:#DDE3EE;
  --n-gray:#8694A8;--n-dark:#3B4A5C;--n-ink:#0D1B2A;--n-green:#0A7C59;
}

html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--off-white);color:var(--ink);min-height:100vh;display:flex;flex-direction:column}

/* ━━━ NAVBAR ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.xnav*,.xnav *::before,.xnav *::after{box-sizing:border-box;margin:0;padding:0}
.xnav{
  --n-navy:#001F54;--n-navy2:#003080;--n-blue:#0057B8;--n-blue-lt:#E6EFF9;
  --n-amber:#E07B39;--n-amber2:#C0622A;--n-amber-lt:#FEF3EB;
  --n-white:#fff;--n-off:#F5F7FB;--n-border:#DDE3EE;
  --n-gray:#8694A8;--n-dark:#3B4A5C;--n-ink:#0D1B2A;--n-green:#0A7C59;
  --n-shadow:0 8px 32px rgba(0,31,84,.14),0 2px 6px rgba(0,31,84,.07);
  --n-r:10px;--n-h:85px;
}

/* ══ STICKY WRAPPER ═══════════════════════════════════════════════════ */
.xnav{
  position:sticky;top:0;z-index:500;
  background:#ffffff;
  border-bottom:4px solid var(--blue);
  box-shadow:0 2px 12px rgba(0,31,84,.10);
  font-family:'Inter',sans-serif;
}
.xnav-inner{
  max-width:1200px;margin:0 auto;
  display:flex;align-items:center;
  height:var(--n-h);padding:0 24px;gap:0;
}

/* ══ LOGO ══════════════════════════════════════════════════════════════ */
.xnav-logo{
  display:flex;align-items:center;gap:10px;
  text-decoration:none;flex-shrink:0;margin-right:28px;
}
.xnav-logo-icon img{
  width:100%;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.05rem;
  transition:transform .15s;
}
.xnav-logo:hover .xnav-logo-icon{transform:scale(1.08)}
.xnav-logo-text{
  font-family:'Sora',sans-serif;font-weight:700;font-size:1.12rem;
  color:var(--n-ink);letter-spacing:-.3px;line-height:1;
}
.xnav-logo-text span{color:var(--n-blue)}
.xnav-logo-tagline{
  font-size:.6rem;color:rgba(0,31,84,.4);
  font-weight:500;letter-spacing:.5px;margin-top:2px;display:block;
}

/* ══ DESKTOP NAV LINKS ════════════════════════════════════════════════ */
.xnav-links{
  display:flex;align-items:center;gap:2px;
  list-style:none;flex:1;
}
.xnav-item{position:relative}

/* Top-level link */
.xnav-link{
  display:flex;align-items:center;gap:5px;
  padding:0 12px;height:var(--n-h);
  color:var(--n-ink);text-decoration:none;
  font-size:.83rem;font-weight:600;letter-spacing:.1px;
  white-space:nowrap;transition:color .15s,background .15s;
  border-bottom:3px solid transparent;
  cursor:pointer;border-radius:0;
}
.xnav-link:hover,.xnav-item:focus-within .xnav-link{
  color:var(--n-blue);background:rgba(0,87,184,.05);border-bottom-color:var(--n-amber);
}
.xnav-link.active{
  color:var(--n-blue);border-bottom-color:var(--n-amber);font-weight:700;
}
.xnav-link.active .xnav-link-icon{opacity:1}
.xnav-link-icon{font-size:.8rem;opacity:.55;transition:opacity .15s}
.xnav-arrow{
  font-size:.65rem;color:rgba(0,31,84,.35);margin-left:2px;
  transition:transform .2s;display:inline-block;
}
.xnav-item:focus-within .xnav-arrow,
.xnav-item:hover .xnav-arrow{transform:rotate(90deg);color:var(--n-amber)}

/* ══ STANDARD DROPDOWN ════════════════════════════════════════════════ */
.xnav-drop{
  position:absolute;top:calc(100% + 1px);left:0;
  background:var(--n-white);border-radius:var(--n-r);
  box-shadow:var(--n-shadow);border:1px solid var(--n-border);
  min-width:240px;padding:8px 0;
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .18s,visibility .18s,transform .18s;
  pointer-events:none;z-index:600;
}
.xnav-item:hover .xnav-drop,
.xnav-item:focus-within .xnav-drop{
  opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;
}
.xnav-drop-link{
  display:flex;align-items:flex-start;gap:11px;
  padding:10px 18px;text-decoration:none;
  transition:background .12s;
}
.xnav-drop-link:hover{background:var(--n-off)}
.xnav-drop-link.active{background:var(--n-blue-lt)}
.xnav-drop-ico{
  font-size:.95rem;flex-shrink:0;margin-top:1px;
  width:22px;text-align:center;
}
.xnav-drop-text .lbl{
  font-size:.84rem;font-weight:600;color:var(--n-ink);display:block;line-height:1.2;
}
.xnav-drop-text .dsc{
  font-size:.71rem;color:var(--n-gray);margin-top:2px;line-height:1.4;
}
.xnav-drop-link:hover .lbl,.xnav-drop-link.active .lbl{color:var(--n-blue)}
.xnav-drop-divider{height:1px;background:var(--n-border);margin:6px 0}

/* ══ MEGA MENU ════════════════════════════════════════════════════════ */
.xnav-mega{
  position:fixed;left:0;right:0;top:var(--n-h);
  background:var(--n-white);border-bottom:2px solid var(--n-border);
  box-shadow:var(--n-shadow);
  opacity:0;visibility:hidden;transform:translateY(-6px);
  transition:opacity .2s,visibility .2s,transform .2s;
  pointer-events:none;z-index:600;
}
.xnav-item:hover .xnav-mega,
.xnav-item:focus-within .xnav-mega{
  opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;
}
.xnav-mega-inner{
  max-width:1200px;margin:0 auto;padding:24px;
  display:flex;gap:0;
}
.xnav-mega-col{
  flex:1;padding:0 20px;
  border-right:1px solid var(--n-border);
}
.xnav-mega-col:first-child{padding-left:0}
.xnav-mega-col:last-child{border-right:none;padding-right:0}
.xnav-mega-heading{
  font-size:.66rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;
  color:var(--n-gray);margin-bottom:10px;padding-bottom:8px;
  border-bottom:1px solid var(--n-border);
}
.xnav-mega-link{
  display:flex;align-items:flex-start;gap:10px;
  padding:8px 10px;border-radius:8px;text-decoration:none;
  margin-bottom:2px;transition:background .12s;
}
.xnav-mega-link:hover{background:var(--n-off)}
.xnav-mega-link.active{background:var(--n-blue-lt)}
.xnav-mega-link .ico{font-size:.9rem;flex-shrink:0;margin-top:1px;width:20px;text-align:center}
.xnav-mega-link .tx .lb{font-size:.83rem;font-weight:600;color:var(--n-ink);display:block;line-height:1.2}
.xnav-mega-link .tx .ds{font-size:.7rem;color:var(--n-gray);margin-top:2px;line-height:1.4}
.xnav-mega-link:hover .lb,.xnav-mega-link.active .lb{color:var(--n-blue)}

/* Mega CTA panel */
.xnav-mega-cta{
  width:220px;flex-shrink:0;padding:0 0 0 20px;
  display:flex;flex-direction:column;gap:10px;
}
.xnav-mega-cta-card{
  background:linear-gradient(135deg,var(--n-navy),var(--n-navy2));
  border-radius:12px;padding:18px 16px;
}
.xnav-mega-cta-card h4{
  font-family:'Sora',sans-serif;font-size:.88rem;font-weight:700;color:#fff;margin-bottom:5px;
}
.xnav-mega-cta-card p{font-size:.73rem;color:rgba(255,255,255,.6);line-height:1.5;margin-bottom:12px}
.xnav-mega-cta-btn{
  display:block;text-align:center;padding:9px 14px;
  background:var(--n-amber);color:#fff;border-radius:7px;
  text-decoration:none;font-family:'Sora',sans-serif;font-size:.8rem;font-weight:700;
  transition:background .15s;
}
.xnav-mega-cta-btn:hover{background:var(--n-amber2)}
.xnav-mega-cta-phone{
  display:flex;align-items:center;gap:8px;padding:12px 14px;
  background:var(--n-off);border:1px solid var(--n-border);border-radius:10px;
  text-decoration:none;transition:border-color .15s,background .15s;
}
.xnav-mega-cta-phone:hover{border-color:var(--n-navy);background:var(--n-blue-lt)}
.xnav-mega-cta-phone .ph-ico{font-size:1.1rem}
.xnav-mega-cta-phone .ph-num{font-family:'Sora',sans-serif;font-size:.82rem;font-weight:700;color:var(--n-navy);display:block}
.xnav-mega-cta-phone .ph-sub{font-size:.68rem;color:var(--n-gray);display:block}

/* ══ PHONE BUTTON ═════════════════════════════════════════════════════ */
.xnav-phone{
  display:flex;align-items:center;gap:7px;margin-left:auto;flex-shrink:0;
  background:var(--n-amber);border:none;border-radius:8px;
  padding:8px 16px;color:#fff;font-family:'Sora',sans-serif;
  font-size:1rem;font-weight:700;text-decoration:none;
  transition:background .15s,transform .1s;white-space:nowrap;
  box-shadow:0 2px 8px rgba(224,123,57,.35);
}
.xnav-phone:hover{background:var(--n-amber2);transform:translateY(-1px)}
.xnav-phone-ico{font-size:.9rem}

/* ══ HAMBURGER ════════════════════════════════════════════════════════ */
.xnav-burger{
  display:none;flex-direction:column;justify-content:center;
  gap:5px;width:40px;height:40px;padding:8px;
  background:rgba(0,31,84,.06);border:1px solid rgba(0,31,84,.12);
  border-radius:8px;cursor:pointer;margin-left:12px;flex-shrink:0;
}
.xnav-burger span{
  display:block;width:100%;height:2px;background:var(--n-ink);border-radius:2px;
  transform-origin:center;transition:transform .22s,opacity .22s,margin .22s;
}
.xnav-burger[aria-expanded="true"] span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.xnav-burger[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0)}
.xnav-burger[aria-expanded="true"] span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* ══ MOBILE DRAWER ════════════════════════════════════════════════════ */
.xnav-drawer{
  position:fixed;inset:0;top:var(--n-h);z-index:490;
  background:rgba(0,12,30,.55);backdrop-filter:blur(3px);
  opacity:0;pointer-events:none;transition:opacity .22s;
}
.xnav-drawer.open{opacity:1;pointer-events:auto}
.xnav-drawer-panel{
  position:absolute;top:0;left:0;right:0;
  background:var(--n-white);max-height:calc(100vh - var(--n-h));
  overflow-y:auto;border-bottom:2px solid var(--n-border);
  transform:translateY(-12px);transition:transform .22s;
}
.xnav-drawer.open .xnav-drawer-panel{transform:translateY(0)}
.xnav-drawer-inner{max-width:100%;padding:12px 0 20px}

/* Mobile nav row */
.mob-row{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 20px;height:48px;border-bottom:1px solid var(--n-border);
  cursor:pointer;text-decoration:none;transition:background .12s;
}
.mob-row:hover{background:var(--n-off)}
.mob-row.active{background:var(--n-blue-lt)}
.mob-row-left{display:flex;align-items:center;gap:10px}
.mob-row-ico{font-size:.95rem;width:22px;text-align:center}
.mob-row-lbl{font-size:.88rem;font-weight:600;color:var(--n-ink)}
.mob-row.active .mob-row-lbl{color:var(--n-blue)}
.mob-row-arr{font-size:.75rem;color:var(--n-gray);transition:transform .2s;flex-shrink:0}
.mob-acc-btn[aria-expanded="true"] .mob-row-arr{transform:rotate(90deg);color:var(--n-amber)}

/* Mobile accordion panel */
.mob-acc-btn{width:100%;background:none;border:none;text-align:left}
.mob-acc-panel{
  display:none;background:var(--n-off);border-bottom:1px solid var(--n-border);
}
.mob-acc-panel.open{display:block}
.mob-sub-heading{
  font-size:.66rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  color:var(--n-gray);padding:10px 20px 4px 52px;
}
.mob-sub-link{
  display:flex;align-items:center;gap:10px;
  padding:9px 20px 9px 52px;text-decoration:none;
  transition:background .12s;border-bottom:1px solid var(--n-border);
}
.mob-sub-link:last-child{border-bottom:none}
.mob-sub-link:hover{background:var(--n-blue-lt)}
.mob-sub-link.active{background:var(--n-blue-lt)}
.mob-sub-ico{font-size:.85rem;width:18px;text-align:center;flex-shrink:0}
.mob-sub-lbl{font-size:.82rem;font-weight:600;color:var(--n-ink)}
.mob-sub-dsc{font-size:.7rem;color:var(--n-gray);margin-top:1px}
.mob-sub-link.active .mob-sub-lbl,.mob-sub-link:hover .mob-sub-lbl{color:var(--n-blue)}

/* Mobile CTA bar */
.mob-cta{
  padding:16px 20px;display:flex;flex-direction:column;gap:10px;
  border-top:1px solid var(--n-border);margin-top:8px;
}
.mob-cta-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:13px;background:var(--n-amber);color:#fff;border-radius:9px;
  text-decoration:none;font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;
  transition:background .15s;
}
.mob-cta-btn:hover{background:var(--n-amber2)}
.mob-cta-phone{
  display:flex;align-items:center;justify-content:center;gap:8px;
  padding:12px;background:var(--n-navy);color:#fff;border-radius:9px;
  text-decoration:none;font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;
}

/* ══ SKIP LINK (accessibility) ════════════════════════════════════════ */
/* ══ THIRD-PARTY DISCLAIMER STRIP ════════════════════════════════════ */
.xnav-disclaimer{
  background:#FFF8E7;border-bottom:1px solid #F0D87C;
  text-align:center;padding:6px 16px;font-size:.75rem;color:#5C4A00;line-height:1.4;
}
.xnav-disclaimer strong{color:#3D3000}

.xnav-skip{
  position:absolute;top:-60px;left:20px;
  background:var(--n-amber);color:#fff;padding:8px 16px;border-radius:0 0 8px 8px;
  font-weight:700;font-size:.85rem;text-decoration:none;z-index:9999;
  transition:top .15s;
}
.xnav-skip:focus{top:0}

/* ══ SEARCH BAR (optional — hidden by default) ════════════════════════ */
.xnav-search{
  position:absolute;top:100%;left:0;right:0;z-index:600;
  background:var(--n-navy2);padding:16px 24px;
  display:none;
}
.xnav-search.open{display:flex;align-items:center;gap:12px}
.xnav-search input{
  flex:1;max-width:600px;margin:0 auto;display:block;
  border:none;background:rgba(255,255,255,.12);border-radius:8px;
  padding:12px 16px;font-family:'Inter',sans-serif;font-size:.9rem;color:#fff;outline:none;
}
.xnav-search input::placeholder{color:rgba(255,255,255,.4)}

/* ══ RESPONSIVE BREAKPOINTS ═══════════════════════════════════════════ */
@media(max-width:1040px){
  .xnav-phone .ph-label{display:none}
  .xnav-link{padding:0 9px;font-size:.8rem}
}
@media(max-width:900px){
  .xnav-links,.xnav-phone{display:none}
  .xnav-burger{display:flex}
}
@media(max-width:420px){
  .xnav-inner{padding:0 14px}
  .xnav-logo-tagline{display:none}
}
@media(prefers-reduced-motion:reduce){
  .xnav *{transition:none !important;animation:none !important}
}
/* ━━━ NAVBAR ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* ━━━ TOPBAR ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.topbar{
  background:#fff;
  border-bottom:4px solid var(--blue);
  box-shadow:0 2px 12px rgba(0,31,84,.08);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 32px;height:64px;position:sticky;top:0;z-index:200;
}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-icon{display:flex;align-items:center}
.logo-icon img{height:36px;width:auto;display:block}
.topbar-right{display:flex;align-items:center;gap:20px}
.topbar-right a{
  color:var(--gray-dark);text-decoration:none;font-size:.83rem;
  font-weight:500;transition:color .15s;
}
.topbar-right a:hover{color:var(--blue)}
.topbar-phone{
  display:flex;align-items:center;gap:7px;
  background:var(--amber);
  border-radius:8px;padding:7px 14px;
  color:#fff !important;font-weight:600 !important;font-size:.88rem !important;
  transition:background .15s !important;
}
.topbar-phone:hover{background:var(--amber-dark) !important}

/* ━━━ HERO ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.hero{
  background:linear-gradient(120deg, var(--navy) 0%, var(--navy-mid) 55%, #005FA3 100%);
  padding:52px 48px 100px;
  position:relative;overflow:hidden;
}
/* Boarding-pass grid watermark — the signature element */
.hero::before{
  content:'';position:absolute;inset:0;
  background-image:
    repeating-linear-gradient(0deg,  rgba(255,255,255,.03) 0, rgba(255,255,255,.03) 1px, transparent 1px, transparent 40px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.03) 0, rgba(255,255,255,.03) 1px, transparent 1px, transparent 40px);
  pointer-events:none;
}
/* Soft glow orbs */
.hero::after{
  content:'';position:absolute;
  width:600px;height:600px;
  background:radial-gradient(circle, rgba(224,123,57,.18) 0%, transparent 70%);
  right:-100px;top:-100px;pointer-events:none;
}
.hero-inner{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center;
  position:relative;z-index:1;
}
.hero-label{
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(224,123,57,.2);border:1px solid rgba(224,123,57,.4);
  color:#FFB877;font-size:.72rem;font-weight:600;letter-spacing:1.5px;
  text-transform:uppercase;padding:5px 12px;border-radius:20px;
  margin-bottom:18px;
}
.hero-title{
  font-family:'Sora',sans-serif;
  font-size:2.8rem;font-weight:800;color:#fff;
  line-height:1.15;letter-spacing:-1px;margin-bottom:14px;
}
.hero-title em{
  font-style:normal;
  background:linear-gradient(90deg,#FFD166,#E07B39);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.hero-sub{font-size:.97rem;color:rgba(255,255,255,.7);line-height:1.7;max-width:480px;margin-bottom:28px}
.hero-badges{display:flex;gap:10px;flex-wrap:wrap}
.badge{
  display:flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);
  border-radius:20px;padding:6px 14px;
  font-size:.75rem;color:rgba(255,255,255,.8);font-weight:500;
}
.badge-icon{font-size:.85rem}
.hero-stats{
  display:flex;flex-direction:column;gap:14px;
  background:rgba(255,255,255,.07);backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.13);
  border-radius:var(--r-xl);padding:28px 32px;
  min-width:210px;flex-shrink:0;
}
.stat{text-align:center}
.stat-num{font-family:'Sora',sans-serif;font-size:1.8rem;font-weight:800;color:#FFD166;line-height:1}
.stat-label{font-size:.72rem;color:rgba(255,255,255,.55);margin-top:3px;letter-spacing:.3px}
.stat-divider{height:1px;background:rgba(255,255,255,.1)}

/* ━━━ TICKET SEAM (signature) ━━━━━━━━━━━━━ */
.seam{
  max-width:1100px;margin:-1px auto 0;
  display:flex;align-items:center;gap:0;
  position:relative;z-index:15;
}
.seam-notch{
  width:28px;height:28px;border-radius:50%;
  background:var(--off-white);flex-shrink:0;
  margin-top:-14px;
}
.seam-line{
  flex:1;border:none;border-top:2.5px dashed rgba(0,31,84,.15);margin-top:-14px;
}

/* ━━━ MAIN CARD ━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.card-wrap{
  max-width:1100px;margin:-72px auto 0;
  padding:0 24px 56px;position:relative;z-index:10;
}
.main-card{
  background:var(--white);border-radius:var(--r-xl);
  box-shadow:var(--shadow);overflow:hidden;
}

/* ━━━ SERVICE TABS ━━━━━━━━━━━━━━━━━━━━━━━━ */
.svc-tabs{
  display:grid;grid-template-columns:repeat(1,1fr);
  border-bottom:1px solid var(--border);
}
.svc-tab{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:5px;padding:20px 12px;cursor:pointer;
  border-right:1px solid var(--border);
  border-bottom:3px solid transparent;
  transition:background .15s,border-color .15s;
  position:relative;
}
.svc-tab:last-child{border-right:none}
.svc-tab:hover{background:var(--off-white)}
.svc-tab.active{border-bottom-color:var(--amber);background:#fff}
.svc-tab.active .tab-icon{background:var(--amber-pale);color:var(--amber-dark)}
.svc-tab-icon-wrap{
  width:40px;height:40px;border-radius:10px;
  background:var(--off-white);
  display:flex;align-items:center;justify-content:center;
  font-size:1.15rem;transition:background .15s,color .15s;
}
.tab-lbl{font-size:.78rem;font-weight:600;color:var(--gray-dark);text-align:center;line-height:1.3}
.svc-tab.active .tab-lbl{color:var(--amber-dark)}
.tab-pill{
  position:absolute;top:10px;right:10px;
  background:var(--amber);color:#fff;
  font-size:.6rem;font-weight:700;letter-spacing:.5px;
  padding:2px 7px;border-radius:10px;text-transform:uppercase;
}

/* ━━━ PANEL HEADER ━━━━━━━━━━━━━━━━━━━━━━━━ */
.panel-head{
  padding:24px 32px 0;
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:12px;
}
.panel-title{font-family:'Sora',sans-serif;font-size:1.1rem;font-weight:700;color:var(--ink)}
.panel-sub{font-size:.8rem;color:var(--gray-mid);margin-top:2px}
.urgency-badge{
  display:flex;align-items:center;gap:7px;
  background:var(--red-pale);border:1px solid #F5C6C1;
  border-radius:20px;padding:6px 14px;
  font-size:.75rem;font-weight:600;color:var(--red);
}

/* ━━━ FORM SECTIONS ━━━━━━━━━━━━━━━━━━━━━━━ */
.panel-form{padding:20px 32px 0}
.form-section{margin-bottom:20px}
.section-label{
  font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  color:var(--gray-mid);margin-bottom:10px;
  display:flex;align-items:center;gap:7px;
}
.section-label::after{content:'';flex:1;height:1px;background:var(--border)}

.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}

.fld{display:flex;flex-direction:column;gap:5px}
.fld label{font-size:.73rem;font-weight:600;color:var(--gray-dark);letter-spacing:.2px}

.inp-wrap{
  display:flex;align-items:center;gap:9px;
  border:1.5px solid var(--border);border-radius:var(--r-sm);
  padding:11px 14px;background:var(--off-white);
  transition:border-color .15s,background .15s;
}
.inp-wrap:focus-within{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px rgba(0,87,184,.08)}
.inp-wrap .ico{font-size:.95rem;color:var(--gray-mid);flex-shrink:0}
.inp-wrap input,
.inp-wrap select,
.inp-wrap textarea{
  border:none;background:transparent;outline:none;
  font-family:'Inter',sans-serif;font-size:.88rem;font-weight:500;
  color:var(--ink);width:100%;
}
.inp-wrap textarea{resize:vertical;min-height:72px;font-size:.85rem;line-height:1.5}
.inp-wrap input::placeholder,.inp-wrap textarea::placeholder{color:var(--border);font-weight:400}
.inp-wrap select{cursor:pointer}

/* Change type checkboxes */
.change-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.chk-card{
  display:flex;align-items:center;gap:9px;
  border:1.5px solid var(--border);border-radius:var(--r-sm);
  padding:10px 13px;cursor:pointer;transition:border-color .15s,background .15s;
  user-select:none;
}
.chk-card:hover{border-color:var(--blue);background:var(--blue-light)}
.chk-card input[type=checkbox]{display:none}
.chk-card.checked{border-color:var(--amber);background:var(--amber-pale)}
.chk-dot{
  width:18px;height:18px;border-radius:4px;border:1.5px solid var(--border);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  font-size:.7rem;transition:all .15s;
}
.chk-card.checked .chk-dot{background:var(--amber);border-color:var(--amber);color:#fff}
.chk-lbl{font-size:.8rem;font-weight:500;color:var(--gray-dark)}

/* Contact strip */
.contact-strip{
  background:linear-gradient(135deg,var(--navy) 0%, #003080 100%);
  margin:20px 0 0;padding:22px 32px 24px;
}
.contact-title{
  font-size:.72rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
}
.contact-title::before{content:'📬'}
.contact-title::after{content:'';flex:1;height:1px;background:rgba(255,255,255,.1)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}
.contact-grid .inp-wrap{
  background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15);
}
.contact-grid .inp-wrap:focus-within{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.4);box-shadow:none}
.contact-grid .inp-wrap input{color:#fff}
.contact-grid .inp-wrap input::placeholder{color:rgba(255,255,255,.3)}
.contact-grid .ico{color:rgba(255,255,255,.4) !important}

.submit-btn{
  display:flex;align-items:center;gap:8px;
  padding:13px 26px;background:var(--amber);color:#fff;
  border:none;border-radius:var(--r-sm);
  font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;
  cursor:pointer;white-space:nowrap;letter-spacing:.2px;
  box-shadow:0 3px 12px rgba(224,123,57,.4);
  transition:background .15s,transform .1s;
}
.submit-btn:hover{background:var(--amber-dark);transform:translateY(-1px)}
.submit-btn:active{transform:translateY(0)}
.contact-note{
  font-size:.7rem;color:rgba(255,255,255,.4);
  margin-top:10px;line-height:1.5;
}

/* ━━━ HOW IT WORKS ━━━━━━━━━━━━━━━━━━━━━━━━ */
.how-section{max-width:1100px;margin:0 auto;padding:0 24px 56px}
.how-title{
  font-family:'Sora',sans-serif;font-size:1.3rem;font-weight:700;
  color:var(--ink);text-align:center;margin-bottom:6px;
}
.how-sub{font-size:.85rem;color:var(--gray-mid);text-align:center;margin-bottom:28px}
.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative}
.how-steps::before{
  content:'';position:absolute;
  top:26px;left:calc(16.666% + 16px);right:calc(16.666% + 16px);
  height:2px;background:linear-gradient(90deg,var(--amber),var(--blue));
  opacity:.25;z-index:0;
}
.step-card{
  background:var(--white);border-radius:var(--r-md);
  padding:24px 20px;text-align:center;
  box-shadow:var(--shadow-sm);position:relative;z-index:1;
}
.step-num{
  width:44px;height:44px;border-radius:50%;
  background:linear-gradient(135deg,var(--amber),var(--amber-dark));
  color:#fff;font-family:'Sora',sans-serif;font-size:1.1rem;font-weight:800;
  display:flex;align-items:center;justify-content:center;
  margin:0 auto 14px;box-shadow:0 4px 12px rgba(224,123,57,.3);
}
.step-icon{font-size:1.5rem;margin-bottom:8px}
.step-title{font-family:'Sora',sans-serif;font-size:.92rem;font-weight:700;color:var(--ink);margin-bottom:6px}
.step-desc{font-size:.78rem;color:var(--gray-mid);line-height:1.55}

/* ━━━ AIRLINE LOGOS STRIP ━━━━━━━━━━━━━━━━━ */
.airlines-strip{
  background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border);
  padding:18px 48px;margin-bottom:0;
}
.airlines-inner{max-width:1100px;margin:0 auto;text-align:center}
.airlines-label{font-size:.7rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--gray-mid);margin-bottom:14px}
.airline-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.airline-pill{
  padding:6px 16px;border-radius:20px;
  background:var(--off-white);border:1px solid var(--border);
  font-size:.78rem;font-weight:600;color:var(--gray-dark);
  white-space:nowrap;
}

/* ━━━ FOOTER ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* ━━━ MODAL ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.overlay{
  position:fixed;inset:0;background:rgba(0,12,30,.6);
  backdrop-filter:blur(5px);z-index:900;
  display:none;align-items:center;justify-content:center;
}
.overlay.open{display:flex;animation:fo .2s ease}
@keyframes fo{from{opacity:0}to{opacity:1}}
.modal{
  background:var(--white);border-radius:var(--r-xl);
  padding:44px 40px 36px;max-width:440px;width:100%;margin:20px;
  box-shadow:0 24px 64px rgba(0,0,0,.25);
  animation:su .22s ease;text-align:center;
}
@keyframes su{from{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}
.modal-icon-ring{
  width:72px;height:72px;border-radius:50%;
  background:var(--amber-pale);border:3px solid var(--amber);
  display:flex;align-items:center;justify-content:center;
  font-size:2rem;margin:0 auto 20px;
}
.modal h2{font-family:'Sora',sans-serif;font-size:1.2rem;font-weight:700;margin-bottom:10px;color:var(--ink)}
.modal-details{
  background:var(--off-white);border-radius:10px;padding:14px 18px;
  margin:16px 0 20px;text-align:left;
}
.modal-row{
  display:flex;align-items:center;gap:9px;font-size:.82rem;color:var(--gray-dark);
  padding:4px 0;
}
.modal-row:not(:last-child){border-bottom:1px solid var(--border);padding-bottom:8px;margin-bottom:4px}
.modal-row strong{color:var(--ink);margin-left:auto;text-align:right}
.modal p{font-size:.95rem;color:var(--gray-mid);line-height:1.6;margin-bottom:22px}
.modal p strong{color:var(--navy);font-size:1rem}
.modal-btns{display:flex;gap:10px}
.btn-cancel{
  flex:1;padding:12px;background:var(--off-white);
  border:1.5px solid var(--border);border-radius:9px;
  font-family:inherit;font-size:.86rem;font-weight:600;
  color:var(--gray-dark);cursor:pointer;transition:background .15s;
}
.btn-cancel:hover{background:var(--border)}
.btn-go{
  flex:2;padding:12px;background:var(--amber);
  border:none;border-radius:9px;
  font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;
  color:#fff;cursor:pointer;
  box-shadow:0 3px 12px rgba(224,123,57,.35);
  transition:background .15s;
}
.btn-go:hover{background:var(--amber-dark)}

/* ━━━ RESPONSIVE ━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media(max-width:900px){
  .topbar{padding:0 20px}
  .hero{padding:36px 20px 90px}
  .hero-inner{grid-template-columns:1fr;gap:24px}
  .hero-title{font-size:2rem}
  .hero-stats{flex-direction:row;justify-content:space-around;min-width:0;padding:18px}
  .stat-divider{width:1px;height:auto;margin:0 4px}
  .card-wrap{padding:0 14px 40px}
  .svc-tabs{grid-template-columns:repeat(2,1fr)}
  .svc-tab:nth-child(2){border-right:none}
  .svc-tab:nth-child(3){border-top:1px solid var(--border)}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  .change-grid{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr}
  .how-steps{grid-template-columns:1fr}
  .how-steps::before{display:none}
  .panel-form,.panel-head,.contact-strip{padding-left:18px;padding-right:18px}
  .airlines-strip{padding:18px 20px}
}

/* ━━━ WHY CHOOSE ━━━━━━━━━━━━━━━━━━━━━━━━━ */
.why-section{background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:24px 0}
.why-inner{max-width:1100px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden}
.why-card{display:flex;align-items:flex-start;gap:14px;padding:20px 22px;border-right:1px solid var(--border)}
.why-card:last-child{border-right:none}
.why-ico{font-size:1.7rem;flex-shrink:0;margin-top:2px}
.why-title{font-size:.84rem;font-weight:700;color:var(--ink);margin-bottom:4px}
.why-desc{font-size:.73rem;color:var(--gray-mid);line-height:1.5}

/* ━━━ RECOMMENDED TRIPS ━━━━━━━━━━━━━━━━━━━ */
.reco-section{max-width:1100px;margin:0 auto;padding:44px 24px 0}
.sec-hd{margin-bottom:18px}
.sec-hd h2{font-family:'Sora',sans-serif;font-size:1.15rem;font-weight:700;color:var(--ink)}
.sec-hd p{font-size:.78rem;color:var(--gray-mid);margin-top:3px}
.reco-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.reco-card{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;cursor:pointer;transition:box-shadow .15s,transform .15s;background:var(--white)}
.reco-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.reco-img{height:150px;display:flex;align-items:flex-end;justify-content:space-between;padding:12px;position:relative}
.reco-img-note{background:rgba(255,255,255,.88);border-radius:5px;padding:4px 9px;font-size:.68rem;color:var(--gray-dark);font-weight:500;line-height:1.4}
.reco-body{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.reco-route{font-size:.72rem;color:var(--gray-mid)}
.reco-dest{font-family:'Sora',sans-serif;font-size:.95rem;font-weight:700;color:var(--ink);margin-top:2px}
.reco-dates{font-size:.72rem;color:var(--gray-mid);margin-top:3px}
.reco-price{text-align:right;flex-shrink:0}
.reco-from{font-size:.65rem;color:var(--gray-mid)}
.reco-amt{font-family:'Sora',sans-serif;font-size:1.25rem;font-weight:800;color:var(--navy)}
.reco-amt sup{font-size:.65rem;font-weight:700;vertical-align:super}
.reco-kind{font-size:.65rem;color:var(--gray-mid);display:block;text-align:right}
.reco-footer{font-size:.64rem;color:var(--gray-mid);padding:0 16px 10px;display:flex;align-items:center;gap:5px}

/* ━━━ PROMO STRIP ━━━━━━━━━━━━━━━━━━━━━━━━━ */
.promo-strip{max-width:1100px;margin:28px auto 0;padding:0 24px}
.promo-inner{background:linear-gradient(90deg,var(--off-white) 0%,#EFF4FF 100%);border:1px solid var(--border);border-radius:var(--r-md);padding:22px 28px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.promo-left{display:flex;align-items:center;gap:14px;flex-shrink:0}
.promo-icon{font-size:2rem}
.promo-label strong{font-size:.95rem;font-weight:700;color:var(--ink);display:block}
.promo-label em{font-style:normal;font-size:.78rem;color:var(--green);font-weight:600}
.promo-form{display:flex;gap:10px;flex:1;min-width:260px}
.promo-inp{flex:1;border:1.5px solid var(--border);border-radius:8px;padding:11px 14px;font-family:inherit;font-size:.85rem;outline:none;transition:border-color .15s}
.promo-inp:focus{border-color:var(--blue)}
.promo-btn{padding:11px 24px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:'Sora',sans-serif;font-size:.86rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s}
.promo-btn:hover{background:var(--blue)}
.promo-note{font-size:.66rem;color:var(--gray-mid);margin-top:6px}
.promo-note a{color:var(--blue)}

/* ━━━ TOP DESTINATIONS ━━━━━━━━━━━━━━━━━━━━ */
.topdest{max-width:1100px;margin:0 auto;padding:44px 24px 0}
.topdest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.dest-card{border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;cursor:pointer;transition:box-shadow .15s,transform .15s}
.dest-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.dest-img{height:110px}
.dest-body{padding:12px 14px}
.dest-name{font-size:.88rem;font-weight:700;color:var(--ink)}
.dest-from{font-size:.68rem;color:var(--gray-mid);margin-top:2px}
.dest-row{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.dest-price{font-family:'Sora',sans-serif;font-size:1rem;font-weight:800;color:var(--navy)}
.dest-btn{border:1.5px solid var(--blue);border-radius:5px;padding:4px 10px;font-size:.7rem;font-weight:600;color:var(--blue);background:none;cursor:pointer;transition:background .15s,color .15s}
.dest-card:hover .dest-btn{background:var(--blue);color:#fff}

/* ━━━ FLIGHT DEALS ━━━━━━━━━━━━━━━━━━━━━━━━ */
.deals-section{max-width:1100px;margin:0 auto;padding:44px 24px 0}
.deals-phone-box{border:1px solid var(--border);border-radius:var(--r-md);padding:28px 24px;text-align:center;background:var(--white);margin-bottom:32px}
.deals-phone-ring{width:60px;height:60px;border-radius:50%;border:3px solid var(--green);background:var(--green-pale);display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin:0 auto 12px}
.deals-phone-box h4{font-family:'Sora',sans-serif;font-size:.95rem;font-weight:700;color:var(--ink);margin-bottom:4px}
.deals-phone-box p{font-size:.78rem;color:var(--gray-mid);margin-bottom:14px}
.deals-phone-link{display:inline-flex;align-items:center;gap:8px;background:var(--green-pale);border:1.5px solid var(--green-border);border-radius:8px;padding:10px 22px;font-family:'Sora',sans-serif;font-size:1.02rem;font-weight:700;color:var(--green);text-decoration:none}
.deals-phone-sub{font-size:.68rem;color:var(--gray-mid);margin-top:8px}
.fares-hd{margin-bottom:14px}
.fares-hd h3{font-family:'Sora',sans-serif;font-size:1.1rem;font-weight:700;color:var(--ink)}
.fares-hd p{font-size:.76rem;color:var(--gray-mid);margin-top:2px}
.fares-hd p a{color:var(--blue);font-weight:600}
.fare-tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-bottom:16px}
.fare-tab{padding:8px 18px;font-size:.83rem;font-weight:600;color:var(--gray-mid);cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-2px;transition:color .15s,border-color .15s}
.fare-tab.on{color:var(--navy);border-bottom-color:var(--navy)}
.fares-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.fare-card{border:1px solid var(--border);border-radius:var(--r-md);padding:16px;background:var(--white);transition:box-shadow .15s}
.fare-card:hover{box-shadow:var(--shadow-sm)}
.fare-top{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.fare-al-dot{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;color:#fff;flex-shrink:0}
.fare-route-row{display:flex;align-items:flex-start;gap:0;flex:1}
.fare-ep{flex:1}
.fare-code{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:800;color:var(--ink)}
.fare-city-name{font-size:.68rem;color:var(--gray-mid)}
.fare-dt{font-size:.64rem;color:var(--gray-mid);margin-top:1px}
.fare-mid{display:flex;flex-direction:column;align-items:center;padding:0 6px;padding-top:4px}
.fare-line{width:40px;height:1px;background:var(--border);margin:3px 0}
.fare-plane{font-size:.7rem;color:var(--gray-mid)}
.fare-btm{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--off-white)}
.fare-price-wrap{display:flex;flex-direction:column}
.fare-from-lbl{font-size:.63rem;color:var(--gray-mid)}
.fare-amt{font-family:'Sora',sans-serif;font-size:1.1rem;font-weight:800;color:var(--navy)}
.fare-amt sup{font-size:.65rem;vertical-align:super}
.fare-bk{padding:7px 15px;background:var(--navy);color:#fff;border:none;border-radius:7px;font-family:'Sora',sans-serif;font-size:.75rem;font-weight:700;cursor:pointer;transition:background .15s}
.fare-bk:hover{background:var(--blue)}
.show-more-row{margin-top:14px;text-align:center}
.show-more-btn{padding:12px 48px;background:var(--off-white);border:1.5px solid var(--border);border-radius:var(--r-sm);font-family:'Sora',sans-serif;font-size:.86rem;font-weight:700;color:var(--gray-dark);cursor:pointer;transition:background .15s}
.show-more-btn:hover{background:var(--border)}

/* ━━━ SEO CONTENT ━━━━━━━━━━━━━━━━━━━━━━━━━ */
.seo-section{max-width:1100px;margin:0 auto;padding:48px 24px 0}
.seo-section h2{font-family:'Sora',sans-serif;font-size:1.35rem;font-weight:800;color:var(--ink);margin-bottom:14px}
.seo-section p{font-size:.85rem;color:var(--gray-dark);line-height:1.85;margin-bottom:14px}

/* ━━━ REVIEWS ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.reviews-section{max-width:1100px;margin:0 auto;padding:40px 24px 0}
.reviews-section h2{font-family:'Sora',sans-serif;font-size:1.2rem;font-weight:800;color:var(--ink);margin-bottom:20px}
.tp-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:12px}
.tp-left{display:flex;align-items:center;gap:18px;flex-wrap:wrap;gap:12px}
.tp-logo{display:flex;align-items:center;gap:6px;font-weight:700;font-size:.95rem}
.tp-logo .tp-star-logo{color:var(--blue)}
.tp-stars{display:flex;gap:3px}
.tp-s{width:26px;height:26px;background:var(--blue);border-radius:3px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem}
.tp-s.half{background:linear-gradient(90deg,var(--blue) 65%,#ddd 65%)}
.tp-meta strong{font-size:.9rem;font-weight:700;color:var(--ink);display:block}
.tp-meta span{font-size:.72rem;color:var(--gray-mid)}
.tp-submit-btn{padding:8px 20px;border:1.5px solid var(--border);border-radius:20px;background:var(--white);font-family:inherit;font-size:.8rem;font-weight:600;color:var(--navy);cursor:pointer;transition:border-color .15s}
.tp-submit-btn:hover{border-color:var(--navy)}
.reviews-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.rev-card{border:1px solid var(--border);border-radius:var(--r-md);padding:18px;background:var(--white)}
.rev-stars{color:var(--blue);font-size:.85rem;margin-bottom:9px;letter-spacing:1px}
.rev-title{font-size:.88rem;font-weight:700;color:var(--ink);margin-bottom:8px}
.rev-body{font-size:.77rem;color:var(--gray-dark);line-height:1.55;margin-bottom:8px}
.rev-more{font-size:.73rem;color:var(--blue);font-weight:600;cursor:pointer}
.rev-author{font-size:.69rem;color:var(--gray-mid);margin-top:10px;padding-top:8px;border-top:1px solid var(--off-white)}

/* ━━━ NEWSLETTER ━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.nl-strip{background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:48px;padding:26px 48px}
.nl-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:36px;flex-wrap:wrap}
.nl-left{display:flex;align-items:center;gap:14px;flex-shrink:0;min-width:220px}
.nl-icon{font-size:2.2rem}
.nl-text strong{font-size:.95rem;font-weight:700;color:var(--ink)}
.nl-text p{font-size:.76rem;color:var(--gray-mid);margin-top:2px}
.nl-right{flex:1;min-width:280px;display:flex;flex-direction:column;gap:7px}
.nl-form{display:flex;gap:10px}
.nl-inp{flex:1;border:1.5px solid var(--border);border-radius:8px;padding:12px 16px;font-family:inherit;font-size:.85rem;outline:none;transition:border-color .15s}
.nl-inp:focus{border-color:var(--blue)}
.nl-btn{padding:12px 26px;background:var(--navy);color:#fff;border:none;border-radius:8px;font-family:'Sora',sans-serif;font-size:.86rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .15s}
.nl-btn:hover{background:var(--blue)}
.nl-consent{font-size:.67rem;color:var(--gray-mid);line-height:1.5}
.nl-consent a{color:var(--blue)}

/* ━━━ TERMS & CONDITIONS ━━━━━━━━━━━━━━━━━━━ */
.tnc-section{max-width:1100px;margin:32px auto 0;padding:0 24px}
.tnc-title{font-family:'Sora',sans-serif;font-size:1.05rem;font-weight:800;color:var(--ink);margin-bottom:12px}
.tnc-body{font-size:.78rem;color:var(--gray-dark);line-height:1.8;margin-bottom:14px}
.tnc-body a{color:var(--blue)}
.tnc-acc{border-top:1px solid var(--border)}
.tnc-item{border-bottom:1px solid var(--border)}
.tnc-btn{width:100%;display:flex;align-items:center;gap:8px;padding:12px 0;background:none;border:none;cursor:pointer;font-family:inherit;font-size:.83rem;font-weight:600;color:var(--navy);text-align:left}
.tnc-btn:hover{color:var(--blue)}
.tnc-panel{display:none;padding:0 0 14px 22px;font-size:.76rem;color:var(--gray-dark);line-height:1.7}
.tnc-panel.open{display:block}

/* STEPS */
.steps-bar{background:var(--white);border-bottom:1px solid var(--border);padding:0 48px}
.steps{max-width:900px;margin:0 auto;display:flex;align-items:center;padding:0}
.step{display:flex;align-items:center;gap:8px;padding:16px 0;flex:1;position:relative}
.step-num1{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-size:.78rem;font-weight:700;flex-shrink:0;transition:all .2s}
.step-lbl{font-size:.78rem;font-weight:600;white-space:nowrap}
.step.done .step-num1{background:var(--green);color:#fff}
.step.done .step-lbl{color:var(--green)}
.step.active .step-num1{background:var(--amber);color:#fff}
.step.active .step-lbl{color:var(--amber-dark);font-weight:700}
.step.pending .step-num1{background:var(--border);color:var(--gray-mid)}
.step.pending .step-lbl{color:var(--gray-mid)}
.step-line{flex:1;height:2px;background:var(--border);margin:0 8px}
.step-line.done-line{background:var(--green)}

/* BOOKING SUMMARY CARD */
.summary-card{background:var(--white);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.summary-head{background:linear-gradient(120deg,var(--navy),var(--navy-mid));padding:22px 24px;display:flex;align-items:center;gap:14px}
.summary-icon-ring{width:48px;height:48px;border-radius:50%;background:rgba(224,123,57,.2);border:2px solid rgba(224,123,57,.45);display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}
.summary-head-text h3{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:#fff}
.summary-head-text p{font-size:.75rem;color:rgba(255,255,255,.55);margin-top:3px}
.summary-body{padding:22px 24px}
.sum-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--off)}
.sum-row:last-child{border-bottom:none}
.sum-label{font-size:.76rem;color:var(--gray-mid);display:flex;align-items:center;gap:7px}
.sum-val{font-size:.83rem;font-weight:600;color:var(--ink);text-align:right;max-width:200px}

/* FEE BREAKDOWN CARD */
.fee-card{background:var(--white);border-radius:16px;box-shadow:var(--shadow);overflow:hidden;position:sticky;top:20px}
.fee-head{background:var(--off);border-bottom:1px solid var(--border);padding:18px 22px}
.fee-head-lbl{font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--gray-mid)}
.fee-head-title{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:var(--ink);margin-top:3px}
.fee-body{padding:20px 22px}

.fee-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--off)}
.fee-row:last-of-type{border-bottom:none}
.fee-row-name{font-size:.84rem;font-weight:600;color:var(--ink)}
.fee-row-note{font-size:.71rem;color:var(--gray-mid);margin-top:3px;line-height:1.4;max-width:180px}
.fee-row-amt{font-family:'Sora',sans-serif;font-size:1rem;font-weight:700;color:var(--navy);flex-shrink:0;white-space:nowrap}
.fee-row-amt.free{color:var(--green)}

.fee-divider{height:1px;background:var(--border);margin:4px 0 14px}
.fee-total-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.fee-total-lbl{font-family:'Sora',sans-serif;font-size:.9rem;font-weight:700;color:var(--ink)}
.fee-total-amt{font-family:'Sora',sans-serif;font-size:1.5rem;font-weight:800;color:var(--navy)}

.fee-note{background:var(--amber-pale);border:1px solid #F0D9B0;border-radius:8px;padding:11px 14px;margin:14px 0;font-size:.73rem;color:#7A5000;line-height:1.55}
.fee-note strong{color:#5A3A00}

.proceed-btn{display:block;width:100%;padding:15px;background:var(--amber);color:#fff;border:none;border-radius:10px;font-family:'Sora',sans-serif;font-size:.95rem;font-weight:700;cursor:pointer;text-align:center;text-decoration:none;box-shadow:0 4px 14px rgba(224,123,57,.35);transition:background .15s,transform .1s;margin-top:16px}
.proceed-btn:hover{background:var(--amber-dark);transform:translateY(-1px)}

.secure-badges{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;flex-wrap:wrap}
.s-badge{font-size:.65rem;color:var(--gray-mid);display:flex;align-items:center;gap:4px}

/* TRUST ROW */
.trust-strip{margin-top:24px;background:var(--white);border:1px solid var(--border);border-radius:12px;padding:18px 22px}
.trust-strip h4{font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:14px}
.trust-items{display:flex;flex-direction:column;gap:10px}
.trust-item{display:flex;align-items:flex-start;gap:10px;font-size:.78rem;color:var(--gray-dark);line-height:1.5}
.trust-item .ti{font-size:.9rem;flex-shrink:0;margin-top:1px}

/* ━━━ SITE FOOTER ━━━━━━━━━━━━━━━━━━━━━━━━━ */
footer.site-footer{background:var(--off-white);border-top:2px solid var(--border);margin-top:48px}
.sf-top{max-width:1100px;margin:0 auto;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.sf-easy{font-family:'Sora',sans-serif;font-size:1rem;font-weight:800;color:var(--ink)}
.sf-social{display:flex;align-items:center;gap:10px}
.sf-connect{font-family:'Sora',sans-serif;font-size:1rem;font-weight:800;color:var(--ink);margin-right:6px}
.sf-social-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--border);background:var(--white);display:flex;align-items:center;justify-content:center;font-size:.85rem;text-decoration:none;transition:border-color .15s,background .15s}
.sf-social-btn:hover{border-color:var(--navy);background:var(--blue-light)}
.sf-divider{border:none;border-top:1px solid var(--border)}
.sf-phone-bar{max-width:1100px;margin:0 auto;padding:13px 24px;font-size:.95rem;color:var(--gray-dark)}
.sf-phone-bar a{color:var(--navy);font-weight:700;text-decoration:none;font-size:1.05rem}
.sf-phone-bar a:hover{text-decoration:underline}
.sf-links{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:24px;padding:20px 24px 36px;border-top:1px solid var(--border)}
.sf-col-lbl{font-family:'Sora',sans-serif;font-size:.8rem;font-weight:700;color:var(--blue);margin-bottom:14px}
.sf-col-lbl.hl{background:var(--blue-light);border-radius:7px;padding:7px 12px;color:var(--navy);display:flex;align-items:center;justify-content:space-between}
.sf-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.sf-col li a{font-size:.78rem;color:var(--gray-dark);text-decoration:none;transition:color .15s}
.sf-col li a:hover{color:var(--navy)}
.sf-badges-wrap{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--white)}
.sf-badges{max-width:1100px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.sf-badge{padding:5px 12px;border:1px solid var(--border);border-radius:5px;font-size:.68rem;font-weight:700;color:var(--gray-dark);background:var(--white);white-space:nowrap}
.sf-copy{background:var(--off-white);text-align:center;padding:14px 24px;font-size:.71rem;color:var(--gray-mid);border-top:1px solid var(--border)}

/* FEE INFO PANEL */
.fee-info-panel{background:var(--blue-light);border:1px solid #B8D0EE;border-radius:14px;padding:20px 24px;margin-top:4px}
.fip-title{font-family:'Sora',sans-serif;font-size:.82rem;font-weight:700;color:var(--navy);margin-bottom:14px}
.fip-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:12px}
.fip-col{}
.fip-head{font-size:.71rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--gray-mid);margin-bottom:8px;border-bottom:1px solid var(--border);padding-bottom:5px}
.fip-row{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;color:var(--gray-dark);padding:4px 0;border-bottom:1px solid rgba(0,0,0,.04)}
.fip-row strong{color:var(--navy);font-weight:700}
.fip-free{color:var(--green)!important}
.fip-na{color:var(--red-pale)!important;color:#994C00!important}
.fip-note{font-size:.71rem;color:var(--gray-mid);line-height:1.5}
@media(max-width:600px){.fip-grid{grid-template-columns:1fr}}

/* STATUS CARD */
.status-card{background:var(--white);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}

.status-top{padding:28px 32px;display:flex;align-items:center;gap:18px;position:relative;overflow:hidden}
.status-top.pay-fail{background:linear-gradient(120deg,#994C00,#E07B39)}
.status-top.general{background:linear-gradient(120deg,var(--navy),var(--navy-mid))}
.status-top::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 1px,transparent 36px),repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0,rgba(255,255,255,.03) 1px,transparent 1px,transparent 36px)}
.st-icon-ring{width:60px;height:60px;border-radius:50%;background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0;position:relative;z-index:1}
.st-text{position:relative;z-index:1}
.st-eyebrow{font-size:.67rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:5px}
.st-title{font-family:'Sora',sans-serif;font-size:1.15rem;font-weight:700;color:#fff;line-height:1.25}
.ref-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:3px 10px;margin-top:8px;font-size:.73rem;font-weight:600;color:rgba(255,255,255,.8);letter-spacing:.5px}

.status-body{padding:26px 32px}

/* ALERT */
.alert-box{display:flex;align-items:flex-start;gap:12px;border-radius:10px;padding:15px 18px;margin-bottom:20px}
.alert-box.error{background:#FFF4EC;border:1px solid #F5C6A0}
.alert-box.warn{background:var(--amber-pale);border:1px solid #F0D9B0}
.alert-icon{font-size:1.05rem;flex-shrink:0;margin-top:2px}
.alert-title{font-size:.83rem;font-weight:700;margin-bottom:3px}
.alert-error .alert-title{color:#994C00}
.alert-warn .alert-title{color:#8A5200}
.alert-desc{font-size:.77rem;line-height:1.55;color:var(--gray-dark)}

/* DETAIL ROWS */
.section-lbl{font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--gray-mid);margin-bottom:10px;display:flex;align-items:center;gap:7px}
.section-lbl::after{content:'';flex:1;height:1px;background:var(--border)}
.detail-rows{display:flex;flex-direction:column;margin-bottom:22px}
.d-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.82rem;padding:9px 0;border-bottom:1px solid var(--off)}
.d-row:last-child{border-bottom:none}
.d-lbl{color:var(--gray-mid);display:flex;align-items:center;gap:7px}
.d-val{font-weight:600;color:var(--ink);text-align:right}

/* CONTACT SAVED */
.contact-saved{background:var(--green-pale);border:1px solid var(--green-border);border-radius:10px;padding:16px 18px;margin-bottom:22px}
.cs-head{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--green);margin-bottom:10px}
.cs-items{display:flex;flex-direction:column;gap:7px}
.cs-item{display:flex;align-items:center;gap:9px;font-size:.82rem;color:var(--gray-dark)}
.cs-item strong{color:var(--ink)}

/* WHAT NEXT */
.what-next{margin-bottom:22px}
.wn-list{display:flex;flex-direction:column;gap:10px}
.wn-item{display:flex;align-items:flex-start;gap:10px;font-size:.8rem;color:var(--gray-dark);line-height:1.5}
.wn-icon{font-size:.9rem;flex-shrink:0;margin-top:1px}

/* PAYMENT RETRY */
.retry-box{background:var(--blue-light);border:1px solid #B8D4F8;border-radius:10px;padding:16px 18px;margin-bottom:22px;text-align:center}
.retry-box p{font-size:.82rem;color:var(--gray-dark);margin-bottom:12px;line-height:1.55}
.retry-btn{display:inline-block;padding:10px 24px;background:var(--blue);color:#fff;border-radius:8px;font-family:'Sora',sans-serif;font-size:.86rem;font-weight:700;text-decoration:none;transition:background .15s}
.retry-btn:hover{background:var(--navy)}

/* ━━━ FLOATING CALL BAR ━━━━━━━━━━━━━━━━━━━ */
.float-bar{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:998;background:var(--white);border-radius:50px;box-shadow:0 8px 40px rgba(0,31,84,.18),0 2px 8px rgba(0,31,84,.1);padding:8px 10px 8px 8px;display:flex;align-items:center;gap:12px;min-width:380px;max-width:520px;animation:floatIn .4s ease .6s both}
@keyframes floatIn{from{transform:translateX(-50%) translateY(20px);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}
.fb-avatar{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--amber),var(--navy));display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}
.fb-text{flex:1;min-width:0}
.fb-title{font-size:.82rem;font-weight:700;color:var(--ink)}
.fb-sub{font-size:.88rem;margin-top:2px}
.fb-sub a{color:var(--navy);font-weight:700;text-decoration:none;font-size:.95rem}
.fb-sub em{font-style:normal;color:var(--green);font-weight:700}
.fb-btn{padding:10px 20px;background:var(--navy);color:#fff;border:none;border-radius:30px;font-family:'Sora',sans-serif;font-size:.82rem;font-weight:700;cursor:pointer;flex-shrink:0;transition:background .15s;text-decoration:none;display:inline-flex;align-items:center;gap:5px}
.fb-btn:hover{background:var(--blue)}
.fb-close{position:absolute;top:-7px;right:-4px;width:20px;height:20px;border-radius:50%;background:var(--border);display:flex;align-items:center;justify-content:center;font-size:.55rem;cursor:pointer;color:var(--gray-mid);transition:background .15s;border:none;font-family:inherit}
.fb-close:hover{background:var(--gray-mid);color:#fff}

/* ━━━ FOOTER ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
footer.sf{background:var(--off);border-top:2px solid var(--border);margin-top:48px}
.sf-top{max-width:1100px;margin:0 auto;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.sf-easy{font-family:'Sora',sans-serif;font-size:.95rem;font-weight:800;color:var(--ink)}
.sf-social{display:flex;align-items:center;gap:8px}
.sf-connect{font-family:'Sora',sans-serif;font-size:.95rem;font-weight:800;color:var(--ink);margin-right:6px}
.sf-sb{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--border);background:var(--white);display:flex;align-items:center;justify-content:center;font-size:.82rem;text-decoration:none;transition:border-color .15s,background .15s}
.sf-sb:hover{border-color:var(--navy);background:var(--blue-light)}
.sf-div{border:none;border-top:1px solid var(--border)}
.sf-phone-bar{max-width:1100px;margin:0 auto;padding:12px 24px;font-size:.82rem;color:var(--gray-dark)}
.sf-phone-bar a{color:var(--navy);font-weight:700;text-decoration:none}
.sf-links{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:22px;padding:18px 24px 32px;border-top:1px solid var(--border)}
.sf-col-lbl{font-family:'Sora',sans-serif;font-size:.79rem;font-weight:700;color:var(--blue);margin-bottom:12px}
.sf-col-lbl.hl{background:var(--blue-light);border-radius:7px;padding:7px 12px;color:var(--navy);display:flex;align-items:center;justify-content:space-between}
.sf-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.sf-col li a{font-size:.77rem;color:var(--gray-dark);text-decoration:none;transition:color .15s}
.sf-col li a:hover{color:var(--navy)}
.sf-badges-wrap{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--white)}
.sf-badges{max-width:1100px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}
.sf-badge{padding:5px 12px;border:1px solid var(--border);border-radius:5px;font-size:.67rem;font-weight:700;color:var(--gray-dark);background:var(--white);white-space:nowrap}
.sf-copy{text-align:center;padding:13px 24px;font-size:.7rem;color:var(--gray-mid);border-top:1px solid var(--border)}


/* ━━━ RESPONSIVE ADDITIONS ━━━━━━━━━━━━━━━━━ */
@media(max-width:900px){
  .why-inner{grid-template-columns:repeat(2,1fr)}
  .why-card:nth-child(2){border-right:none}
  .why-card:nth-child(3),.why-card:nth-child(4){border-top:1px solid var(--border)}
  .reco-grid{grid-template-columns:1fr}
  .topdest-grid{grid-template-columns:repeat(2,1fr)}
  .fares-grid{grid-template-columns:repeat(2,1fr)}
  .reviews-grid{grid-template-columns:repeat(2,1fr)}
  .nl-strip{padding:22px 18px}
  .float-bar{min-width:300px;max-width:calc(100vw - 32px)}
  .sf-links{grid-template-columns:repeat(2,1fr)}
  .sf-top{padding:14px 16px}
}
@media(max-width:580px){
  .topdest-grid,.fares-grid,.reviews-grid{grid-template-columns:1fr}
  .sf-links{grid-template-columns:1fr}
  .float-bar{padding:8px}
  .fb-sub,.fb-s{display:none}
}

/* ━━━ MOBILE POLISH (≤ 768px) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media(max-width:768px){
  /* Navbar: shrink height on phones — update :root so drawer top tracks */
  :root{ --n-h:64px }
  .xnav{ --n-h:64px }
  .xnav-inner{ height:64px;padding:0 16px }
  .xnav-logo-icon img{ height:32px }
  .xnav-logo-text{ font-size:.98rem }

  /* Hero */
  .hero{ padding:28px 16px 70px }
  .hero-inner{ gap:16px }
  .hero-title{ font-size:1.65rem;letter-spacing:-.5px }
  .hero-sub{ font-size:.88rem }
  .hero-label{ font-size:.66rem }
  .hero-badges{ flex-wrap:wrap;gap:8px }
  .hero-stats{ padding:14px 12px;gap:8px }
  .stat-num{ font-size:1.4rem }
  .stat-label{ font-size:.68rem }

  /* Main card */
  .card-wrap{ padding:0 8px 32px }
  .main-card{ border-radius:12px }
  .panel-head{ flex-direction:column;align-items:flex-start;gap:10px;padding:16px }
  .urgency-badge{ font-size:.72rem }
  .panel-form{ padding:16px }
  .section-label{ font-size:.7rem }

  /* Form grids: all single column */
  .grid-2,.grid-3,.grid-4{ grid-template-columns:1fr }

  /* Checkbox grid: 2-col on phone (1-col on very small) */
  .change-grid{ grid-template-columns:repeat(2,1fr) }

  /* Contact strip: stack submit button full-width */
  .contact-strip{ padding:18px 14px 20px }
  .contact-grid{ grid-template-columns:1fr;gap:10px }
  .submit-btn{ width:100%;justify-content:center }

  /* Fee info panel */
  .fip-grid{ grid-template-columns:1fr }

  /* Submit row */
  .submit-row{ flex-direction:column;align-items:stretch }
  .submit-row .btn-submit{ width:100%;text-align:center }
  .btn-go{ width:100%;padding:14px }

  /* Old topbar (pricing / error header-3) */
  .topbar{ padding:0 16px !important;height:58px !important }
  .topbar-right a{ font-size:.78rem }
  .topbar-phone{ padding:6px 10px !important }

  /* Steps bar */
  .steps-bar{ padding:0 14px }
  .step-lbl{ font-size:.7rem }

  /* Airlines strip */
  .airlines-strip{ padding:16px 14px }
  .airline-pills{ gap:6px }
  .airline-pill{ font-size:.74rem;padding:6px 12px }
  .airlines-label{ font-size:.78rem;margin-bottom:10px }

  /* Newsletter — stack the form on mobile */
  .nl-strip{ padding:20px 16px }
  .nl-inner{ flex-direction:column;gap:18px;align-items:stretch }
  .nl-left{ min-width:0 }
  .nl-right{ min-width:0 }
  .nl-form{ flex-direction:column }
  .nl-btn{ width:100%;padding:12px;text-align:center }
  .nl-inp{ width:100% }

  /* Promo strip — stack on mobile */
  .promo-strip{ padding:0 8px }
  .promo-inner{ flex-direction:column;gap:14px;padding:18px 16px }
  .promo-form{ flex-direction:column }
  .promo-btn{ width:100%;padding:12px;text-align:center }
  .promo-inp{ width:100% }

  /* Recommended trips */
  .reco-section,.topdest,.deals-section,.seo-section,.reviews-section,.how-section,.tnc-section,.reco-section{ padding-left:14px;padding-right:14px }
  .reco-grid{ grid-template-columns:1fr }

  /* Top destinations */
  .topdest-grid{ grid-template-columns:repeat(2,1fr) }

  /* Reviews */
  .reviews-grid{ grid-template-columns:1fr }
  .tp-bar{ flex-direction:column;align-items:flex-start;gap:10px }

  /* Fare grid */
  .fares-grid{ grid-template-columns:1fr }

  /* Why section */
  .why-inner{ grid-template-columns:1fr }
  .why-card{ border-right:none;border-bottom:1px solid var(--border) }
  .why-card:last-child{ border-bottom:none }

  /* Terms & conditions */
  .tnc-section{ margin-top:16px }

  /* Footer */
  .sf-links{ grid-template-columns:1fr;gap:0;padding:8px 14px 24px }
  .sf-col{ border-bottom:1px solid var(--border);padding:10px 0 }
  .sf-top{ flex-direction:column;gap:10px;text-align:center;padding:14px }
  .sf-badges{ gap:6px;padding:10px 14px }
  .sf-phone-bar{ font-size:.8rem;padding:10px 14px;text-align:center }
  .sf-copy{ padding:10px 14px;font-size:.66rem }

  /* Float bar */
  .float-bar{ left:8px;right:8px;bottom:8px;padding:10px 12px;gap:10px;transform:none;min-width:0 }
  .fb-avatar{ display:none }
  .fb-text .fb-title{ font-size:.82rem }
  .fb-text .fb-sub{ font-size:.74rem }

  /* Alert/error banner */
  .alert-box{ margin:12px 14px }

  /* ── Legal pages (privacy-policy.php etc.) ── */
  .legal-hero{ padding:24px 14px !important }
  .legal-hero h1{ font-size:1.5rem !important }
  .legal-hero p{ font-size:.88rem !important }
  .legal-layout{ padding:8px 14px 48px !important }
  .legal-toc{ display:none !important }

  /* ── About-us / misc page grids ── */
  .cf-row{ grid-template-columns:1fr !important }
  .rev-grid,.team-grid,.ad-grid,.sitemap-grid,.press-grid,.related-grid{ grid-template-columns:1fr !important }
  .stat-grid{ grid-template-columns:repeat(2,1fr) !important }

  /* ── Service pages (flight-changes.php etc.) ── */
  .pg-hero{ padding:24px 14px !important }
  .pg-h1{ font-size:1.5rem !important;letter-spacing:-.3px }
  .pg-sub{ font-size:.88rem !important }
  .pg-eyebrow{ font-size:.66rem }
  .breadcrumb{ padding:8px 14px !important }
  .page-wrap{ padding:20px 14px 48px !important }
  .info-table{ font-size:.74rem }
  .info-table th,.info-table td{ padding:8px 10px }
  .steps-row{ grid-template-columns:1fr !important }
  .sidebar-card{ padding:16px !important }
  .cta-block{ padding:18px 14px !important }

  /* Pricing page */
  .layout{ grid-template-columns:1fr !important }
  .fee-card{ position:static !important }
  .steps-bar{ padding:0 14px }

  /* Error page */
  .page-grid{ grid-template-columns:1fr !important }
  .sidebar{ display:none !important }
  .status-top,.status-body{ padding:20px 16px !important }
}

@media(max-width:420px){
  .hero-title{ font-size:1.4rem }
  .hero-stats{ gap:6px }
  .stat-divider{ display:none }
  .stat{ text-align:center }
  .svc-tabs{ grid-template-columns:1fr }
  /* Checkbox grid: 1 column on very small phones */
  .change-grid{ grid-template-columns:1fr }
  /* Destination cards: 1 col on tiny screens */
  .topdest-grid{ grid-template-columns:1fr }
  /* Fare tabs: smaller text */
  .fare-tab{ padding:8px 12px;font-size:.78rem }
}

@media(prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}