:root{--blue:#0a2b5e;--blue2:#1267d6;--sky:#eef6ff;--yellow:#ffb700;--ink:#182230;--muted:#64748b;--line:#d9e2ec;--green:#168a4a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#f7f9fc}a{text-decoration:none;color:inherit}.top{background:#061d42;color:#fff;padding:9px 5%;font-size:13px;display:flex;justify-content:space-between;gap:12px}.header{position:sticky;top:0;z-index:50;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:13px 5%;box-shadow:0 2px 14px #0001}.logo{font-size:27px;font-weight:900;color:var(--blue)}.logo span{color:var(--yellow)}nav{display:flex;gap:20px;align-items:center;font-size:14px;font-weight:700}nav a:hover{color:var(--blue2)}.navbtn{background:var(--blue2);color:#fff;padding:10px 15px;border-radius:8px}.mobile-menu{display:none}.hero{min-height:560px;background:linear-gradient(90deg,#031a3acc,#031a3a55),var(--bg) center/cover;display:flex;align-items:center;color:#fff;padding:70px 6%}.hero-inner{width:100%;max-width:1200px;margin:auto}.hero h1{font-size:clamp(38px,6vw,70px);line-height:1.03;margin:0 0 12px;max-width:780px}.hero p{font-size:19px;max-width:720px}.searchbox{margin-top:28px;background:#fff;border-radius:14px;padding:9px;color:var(--ink);box-shadow:0 15px 40px #0004;max-width:1100px}.tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:9px}.tabs button{border:0;background:transparent;padding:13px 18px;font-weight:800;white-space:nowrap;cursor:pointer}.tabs .active{color:var(--blue2);border-bottom:3px solid var(--blue2)}.searchgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr auto;gap:8px}.field{border:1px solid var(--line);border-radius:9px;padding:11px 13px;background:#fff}.field small{display:block;color:var(--muted);font-size:11px}.field input,.field select{border:0;outline:0;width:100%;font-size:14px;margin-top:4px;background:transparent}.btn{background:var(--blue2);color:#fff;border:0;border-radius:8px;padding:13px 20px;font-weight:800;display:inline-block;cursor:pointer}.btn.yellow{background:var(--yellow);color:#172033}.section{max-width:1400px;margin:auto;padding:55px 6%}.section h2{font-size:32px;margin:0 0 10px}.lead{color:var(--muted);max-width:760px}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:-35px;position:relative}.feature{background:#fff;border-radius:12px;padding:20px;box-shadow:0 7px 25px #18304b18}.feature b{display:block;margin-bottom:7px}.feature span{font-size:13px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid #e3e9f0;border-radius:13px;overflow:hidden;box-shadow:0 5px 18px #10243f0c}.card img{width:100%;height:220px;object-fit:cover}.card-body{padding:17px}.card h3{margin:0 0 7px}.muted{color:var(--muted);font-size:14px}.price{font-size:23px;font-weight:900;color:var(--blue)}.rating{color:#d58b00;font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.split img{width:100%;border-radius:15px}.destinations{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.destination{position:relative;height:250px;border-radius:13px;overflow:hidden;color:#fff}.destination img{width:100%;height:100%;object-fit:cover}.destination div{position:absolute;inset:auto 0 0;padding:35px 18px 18px;background:linear-gradient(transparent,#00172edd)}.result-layout{display:grid;grid-template-columns:260px 1fr;gap:25px}.filters{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;height:max-content;position:sticky;top:90px}.filters label{display:block;margin:12px 0;font-size:14px}.result{display:grid;grid-template-columns:260px 1fr auto;gap:18px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px;margin-bottom:15px}.result img{width:260px;height:170px;object-fit:cover;border-radius:9px}.result h3{margin:3px 0 7px}.result .side{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end}.badge{display:inline-block;background:#eaf7ef;color:var(--green);font-size:12px;font-weight:800;padding:5px 8px;border-radius:5px}.content{max-width:950px;margin:auto;line-height:1.8;background:#fff;padding:35px;border-radius:14px}.faq{background:#fff;border:1px solid var(--line);padding:18px;border-radius:10px;margin:10px 0}.footer{background:#071d3b;color:#dce8f5;padding:45px 6% 20px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:25px}.footer a{display:block;margin:8px 0;color:#dce8f5;font-size:14px}.copy{border-top:1px solid #ffffff22;margin-top:25px;padding-top:16px;font-size:13px}.float{position:fixed;right:18px;z-index:100;color:#fff;padding:12px 17px;border-radius:50px;font-weight:800;box-shadow:0 5px 18px #0004}.call{bottom:74px;background:#c92727}.wa{bottom:18px;background:#168a4a}.notice{background:#fff7db;border:1px solid #f0d27b;padding:13px 15px;border-radius:9px;margin:18px 0}.breadcrumbs{max-width:1400px;margin:auto;padding:18px 6%;font-size:13px;color:var(--muted)}.booking{display:grid;grid-template-columns:1.6fr .8fr;gap:25px}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:22px}.panel h2{margin-top:0}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.formgrid input,.formgrid select,.formgrid textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:8px}.full{grid-column:1/-1}.center{text-align:center}.success{padding:60px 20px}.success .icon{font-size:60px;color:var(--green)}@media(max-width:900px){nav{display:none}.mobile-menu{display:block}.searchgrid{grid-template-columns:1fr}.features{grid-template-columns:1fr 1fr}.grid,.destinations{grid-template-columns:1fr 1fr}.result-layout{grid-template-columns:1fr}.filters{position:static}.result{grid-template-columns:1fr}.result img{width:100%;height:220px}.result .side{align-items:flex-start;gap:10px}.split,.booking{grid-template-columns:1fr}.footergrid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.top{justify-content:center;text-align:center;flex-wrap:wrap}.hero{min-height:620px;padding:50px 5%}.hero h1{font-size:42px}.features,.grid,.destinations,.footergrid,.formgrid{grid-template-columns:1fr}.section{padding:40px 5%}.section h2{font-size:28px}.card img{height:210px}.float{right:10px}.header{padding:12px 5%}}


/* Desktop/PC compatibility fixes - AirFly 2026 */
html,body{width:100%;max-width:100%;overflow-x:hidden}
img{max-width:100%;display:block}
button,input,select,textarea{font-family:inherit}
.header{min-height:68px}
.header nav{flex-wrap:wrap;justify-content:flex-end}
.header nav a{white-space:nowrap}
.hero-inner{min-width:0}
.searchbox{width:100%;margin-left:auto;margin-right:auto}
.section,.breadcrumbs{width:100%}
.grid,.destinations,.features,.result-layout,.booking,.split{min-width:0}
.card,.feature,.destination,.result,.panel,.content{min-width:0}
.result .side{min-width:130px}

/* Medium desktop / laptop widths: preserve desktop layout without squashing fields */
@media (min-width:901px) and (max-width:1199px){
  .header{padding-left:3%;padding-right:3%}
  nav{gap:12px;font-size:13px}
  .hero{padding-left:4%;padding-right:4%}
  .searchgrid{grid-template-columns:2fr 1fr 1fr;gap:9px}
  .searchgrid .btn{grid-column:auto}
  .section{padding-left:4%;padding-right:4%}
  .result-layout{grid-template-columns:220px 1fr}
  .result{grid-template-columns:210px 1fr auto}
  .result img{width:210px;height:155px}
}

/* Full desktop: stable wide layout */
@media (min-width:1200px){
  .hero{padding-top:72px;padding-bottom:72px}
  .searchgrid{align-items:stretch}
  .searchgrid .field{min-width:0}
  .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .destinations{grid-template-columns:repeat(4,minmax(0,1fr))}
  .result{grid-template-columns:260px minmax(0,1fr) 145px}
}

/* Do not allow the mobile button/menu to affect desktop layout */
@media (min-width:901px){
  .mobile-menu{display:none!important}
  .header nav{display:flex!important;position:static!important;background:transparent!important;padding:0!important}
}

@media (max-width:900px){
  .header nav{z-index:60;max-height:calc(100vh - 70px);overflow:auto}
  .result{min-width:0}
}

/* Travel enquiry forms */
.search-form{display:block}.tabs .tab{padding:13px 18px;font-weight:800;white-space:nowrap;cursor:pointer;color:var(--ink);display:inline-block}.tabs .tab.active{color:var(--blue2);border-bottom:3px solid var(--blue2)}.searchgrid{align-items:stretch}.searchgrid>.btn{min-height:50px}.enquiry-head{max-width:900px;margin:0 auto 25px}.enquiry-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);gap:25px;max-width:1200px;margin:auto}.enquiry-form label{display:block;font-size:13px;font-weight:700;color:var(--ink)}.enquiry-form label input,.enquiry-form label select,.enquiry-form label textarea{margin-top:7px}.phone-row{display:grid;grid-template-columns:180px 1fr;gap:8px}.phone-row select,.phone-row input{min-width:0}.category-pill{display:inline-block;background:var(--blue);color:#fff;padding:8px 12px;border-radius:30px;font-weight:800;margin-bottom:12px}.category-fields{margin-bottom:18px}.category-fields h2{font-size:22px;margin:8px 0 14px}.enquiry-side .step{padding:16px 0;border-bottom:1px solid var(--line)}.enquiry-side .step b,.enquiry-side .step span{display:block}.enquiry-side .step span{font-size:14px;color:var(--muted);margin-top:5px;line-height:1.5}.consent{display:flex!important;align-items:flex-start;gap:8px;margin:15px 0}.consent input{margin-top:3px}.form-note{margin-bottom:0}.search-form .field input,.search-form .field select{min-width:0}@media(max-width:900px){.enquiry-layout{grid-template-columns:1fr}.phone-row{grid-template-columns:1fr 1.4fr}}@media(max-width:600px){.phone-row{grid-template-columns:1fr}.searchgrid>.btn{width:100%}}

/* Language selector / full-site translation */
.language-switcher{display:flex;align-items:center;gap:6px;margin-left:auto;margin-right:12px;font-size:13px;white-space:nowrap}
.language-switcher select{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:7px;padding:7px 9px;font-weight:700;cursor:pointer}
.google-translate-hidden{display:none!important}
.goog-te-banner-frame,.skiptranslate{display:none!important}
body{top:0!important}
@media(max-width:900px){.language-switcher{margin-left:auto;margin-right:8px}.language-switcher select{padding:6px 7px;font-size:12px}}
/* CRM-managed availability cards */
#catalogResults{min-width:0}.filters input[type=range]{width:100%;accent-color:var(--blue2)}.crm-link{display:inline-block;margin-top:10px;font-weight:800;color:var(--blue2)}

/* CRM-controlled attractive offer styling */
.result-image{position:relative;min-width:260px}.offer-ribbon{position:absolute;top:12px;left:10px;background:linear-gradient(135deg,#ff1744,#ff8a00,#ffd000);color:#fff;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.3px;box-shadow:0 5px 18px #ff5a004d;animation:offerPulse 1.8s ease-in-out infinite}.offer-badge{background:linear-gradient(135deg,#ff1744,#ff7a00);color:#fff!important;box-shadow:0 3px 12px #ff5a0040;animation:offerBlink 2s ease-in-out infinite}.offer-sub{display:inline-block;margin:8px 0 4px;padding:6px 9px;border-radius:8px;background:#fff4df;color:#9a4b00;font-weight:800;font-size:12px}.offer-saving{margin-top:6px;color:#e3262e;font-weight:900;font-size:13px;animation:offerPulse 1.8s ease-in-out infinite}.original-price{font-size:13px}.has-offer{border:2px solid #ffb000;box-shadow:0 8px 25px #ffb00026}.has-offer:hover{transform:translateY(-2px);box-shadow:0 12px 30px #ff7a0030}@keyframes offerBlink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.62;transform:scale(1.035)}}@keyframes offerPulse{0%,100%{filter:brightness(1);transform:translateY(0)}50%{filter:brightness(1.12);transform:translateY(-1px)}}
@media(max-width:700px){.result-image{min-width:0}.offer-ribbon{font-size:11px;padding:6px 9px}.has-offer{border-width:1px}}

/* AirFly navigation spacing upgrade */
@media (min-width:901px){
  .header{gap:36px;padding-left:5%;padding-right:5%;}
  .header .logo{flex:0 0 auto;margin-right:24px;white-space:nowrap;}
  .header nav{flex:1 1 auto;justify-content:flex-start;gap:30px;padding-left:8px;}
  .header nav a{padding:7px 2px;}
  .header .language-switcher{margin-left:auto;}
}
@media (min-width:1200px){
  .header nav{gap:34px;}
  .header .logo{margin-right:30px;}
}
@media (max-width:900px){
  .header{gap:12px;}
}

/* CRM-controlled offers */
.has-offer{position:relative;overflow:visible}.offer-ribbon{position:absolute;top:10px;left:10px;z-index:3;padding:8px 12px;border-radius:999px;background:#ff3b30;color:#fff;font-weight:900;font-size:12px;box-shadow:0 5px 16px #0003}.offer-ribbon.ribbon{border-radius:5px;transform:rotate(-2deg)}.offer-ribbon.square{border-radius:6px}
.offer-pulse{animation:airflyOfferPulse 1.7s ease-in-out infinite}.offer-blink{animation:airflyOfferBlink 1.05s step-start infinite}.offer-glow{animation:airflyOfferGlow 1.7s ease-in-out infinite}.offer-none{animation:none!important}
.offer-badge{background:#fff0ef;color:#c5221f!important;border:1px solid #ffb4ad}.offer-sub{margin:7px 0;font-weight:700;font-size:13px}.offer-saving{margin-top:5px;font-weight:900}.original-price{font-size:13px!important}
@keyframes airflyOfferPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}@keyframes airflyOfferBlink{0%,45%,100%{opacity:1}50%,90%{opacity:.42}}@keyframes airflyOfferGlow{0%,100%{box-shadow:0 5px 16px #0003}50%{box-shadow:0 5px 16px #0003,0 0 22px currentColor}}
@media(prefers-reduced-motion:reduce){.offer-pulse,.offer-blink,.offer-glow{animation:none!important}}
