/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--bg:#020d18;--panel:#061a2b;--panel2:#082238;--blue:#29b6ff;--gold:#f6b22c;--text:#f4f8fb;--muted:#8fa9ba;--line:#3eaeee59}*{box-sizing:border-box}html{background:var(--bg)}body{background:radial-gradient(circle at 75% 12%,#005baf24,transparent 30%),var(--bg);color:var(--text);margin:0;font-family:Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}header{z-index:20;background:#020c17f5;border-bottom:1px solid #add2ea3d;justify-content:space-between;align-items:center;height:73px;padding:0 34px;display:flex;position:relative}.brand{color:#fff;text-align:left;background:0 0;border:0;align-items:center;gap:12px;display:flex}.brand>span{color:var(--gold);font:800 32px Georgia;transform:skew(-12deg)}.brand b{letter-spacing:2px;font-size:24px}.brand small{color:var(--gold);letter-spacing:5px;text-align:center;font-size:9px;display:block}nav{gap:36px;height:100%;display:flex}nav button,.account button{color:#fff;background:0 0;border:0;font-size:14px;position:relative}nav button.active{color:var(--gold)}nav button.active:after{content:"";background:var(--blue);height:2px;box-shadow:0 0 12px var(--blue);position:absolute;bottom:0;left:0;right:0}.account{align-items:center;gap:18px;display:flex}.account i{background:#fff3;width:1px;height:34px}main{min-height:100vh;overflow:hidden}.world{opacity:.75;pointer-events:none;background:radial-gradient(at 76%,#0078ff59,#0000 28%),repeating-radial-gradient(at 80% 48%,#0000 0 32px,#1496ff1f 33px 34px);border-radius:50%;width:520px;height:410px;position:absolute;top:72px;right:0}.world:before{content:"";background-image:radial-gradient(circle,#0e83ec 1px,#0000 1.5px);background-size:7px 7px;position:absolute;inset:22px 18px;-webkit-mask-image:radial-gradient(#000 45%,#0000 72%);mask-image:radial-gradient(#000 45%,#0000 72%)}.world .routes{color:#137dd6;letter-spacing:-8px;font-size:90px;position:absolute;top:130px;right:90px;transform:rotate(-14deg)}.world strong{color:var(--gold);text-shadow:0 0 18px var(--gold);font-size:48px;position:absolute;top:174px;right:92px}.world small{color:#f8c257;letter-spacing:2px;font-size:8px;position:absolute;top:235px;right:58px}.service-tabs{border:1px solid var(--line);z-index:3;border-radius:8px 8px 0 0;grid-template-columns:repeat(5,1fr);width:925px;margin:22px 0 0 34px;display:grid;position:relative;overflow:hidden}.service-tabs button{border:0;border-right:1px solid var(--line);color:#fff;background:#041626e0;height:61px;font-size:14px}.service-tabs button:last-child{border:0}.service-tabs i{margin-right:10px;font-size:18px;font-style:normal}.service-tabs button.active{box-shadow:inset 0 -3px 0 var(--blue);text-shadow:0 0 12px #38beff80;background:linear-gradient(#0074d038,#031626e6)}.search-card{border:1px solid var(--line);z-index:3;background:linear-gradient(110deg,#051d31f7,#03111feb);border-radius:0 8px 8px;width:min(1300px,100vw - 68px);min-height:275px;margin-left:34px;padding:24px 30px 0;position:relative}.search-card h4{color:#65c5ff;letter-spacing:1.4px;margin:0 0 19px}.search-card h2,.utility h1{margin:18px 0 28px;font-size:38px}.search-card h2 em,.about em{color:var(--gold);font-style:normal}.trip-types{gap:9px;margin-bottom:18px;display:flex}.trip-types button{color:#fff;background:#06182a;border:1px solid #b4d2e966;border-radius:6px;padding:10px 25px}.trip-types button.active{border-color:var(--blue);box-shadow:0 0 12px #20b8ff73}.fields{align-items:end;gap:9px;display:grid}.fields.six{grid-template-columns:repeat(6,1fr)}.fields.package{grid-template-columns:1.25fr 1fr 1.2fr .75fr .65fr .75fr}.fields.hotel{grid-template-columns:1.6fr .9fr .9fr 1fr auto}.fields.car{grid-template-columns:1.6fr .9fr .7fr .9fr .7fr .7fr}.fields.attraction{grid-template-columns:1.8fr .9fr .8fr 1fr auto}.field small{color:#d5e0e8;margin:0 0 7px;font-size:11px;display:block}.field>span{color:#fff;background:#081729;border:1px solid #97bdd96b;border-radius:5px;align-items:center;height:51px;padding:0 13px;display:flex}.field input,.field select,.field textarea{color:#fff;background:0 0;border:0;outline:0;width:100%;margin-left:8px}.field select option{background:#071827}.search-line{justify-content:space-between;align-items:center;margin-top:15px;font-size:12px;display:flex}.search-line.right{margin-top:14px}.search-line input,.consent input{accent-color:var(--blue)}.gold{height:48px;box-shadow:0 0 20px #f7b1283d;color:#071522!important;background:linear-gradient(135deg,#ed9c14,#ffd064)!important;border:1px solid #ffca58!important;border-radius:6px!important;padding:0 40px!important;font-weight:700!important}.advanced{text-align:left;color:#62c6ff;border:1px solid var(--line);background:linear-gradient(90deg,#082643,#06182c);border-radius:7px 7px 0 0;width:calc(100% + 60px);margin:8px -30px 0;padding:13px 25px;display:block}.advanced-panel{border:1px solid var(--line);background:#020f1be6;grid-template-columns:1fr .7fr 1.3fr 1fr;gap:0;margin:0 -30px;padding:14px 25px;display:grid}.advanced-panel>div{border-right:1px solid var(--line);flex-wrap:wrap;gap:6px;padding:0 16px;display:flex}.advanced-panel>div:last-child{border:0}.advanced-panel b{color:#68c8ff;width:100%;display:block}.advanced-panel span{color:#dfeaf0;border:1px solid #96bfdb59;border-radius:4px;padding:7px;font-size:10px}.advanced-panel .selected{border-color:var(--blue)}.advanced-panel label{margin-top:8px;font-size:10px}.deals{z-index:3;margin:28px 34px 32px;position:relative}.section-title{align-items:center;gap:20px;display:flex}.section-title h3{color:var(--gold);margin:0;font-size:21px}.section-title:after{content:"";background:linear-gradient(90deg,#f7b12559,#0000);flex:1;height:1px}.section-title button{color:var(--gold);background:0 0;border:0;order:3}.deal-cards{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px;display:grid}.deal-cards.four{grid-template-columns:repeat(4,1fr)}.deal-cards article{border:1px solid var(--blue);background-position:50%;background-size:cover;border-radius:9px;flex-direction:column;justify-content:flex-end;height:156px;padding:20px;display:flex}.deal-cards article.featured{border:2px solid var(--gold);box-shadow:0 0 14px #f7b22a40}.deal-cards small{color:var(--gold);font-weight:700}.deal-cards h3{margin:6px 0;font-size:22px}.deal-cards b{color:#42a7ff;font-size:28px}.deal-cards .featured b{color:var(--gold)}.attraction-strip{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:14px;display:grid}.attraction-strip article{border:1px solid var(--line);background-position:50%;background-size:cover;border-radius:9px;align-items:end;height:150px;padding:15px;font-size:18px;display:flex}.utility{z-index:2;width:min(1480px,94vw);margin:0 auto;padding:24px 0 55px;position:relative}.utility>p{color:#c1d0da}.subtabs{border-bottom:1px solid var(--line);gap:42px;margin-bottom:14px;display:flex}.subtabs button{color:#fff;background:0 0;border:0;padding:10px 12px}.subtabs button:first-child{color:var(--gold);border-bottom:2px solid var(--gold)}.trip-layout{grid-template-columns:1fr 350px;gap:42px;display:grid}.trip-card{border:1px solid var(--blue);background-position:50%;background-size:cover;border-radius:9px;min-height:430px;padding:34px}.trip-card>small{color:var(--gold)}.trip-card h2{font-size:34px}.trip-card p{color:#d4e0e7}.trip-card em{color:#72e08d}.timeline{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:12px;padding:28px 0;display:grid}.timeline span{font-size:22px}.timeline b,.timeline small{color:#fff;margin:7px 0;font-size:12px;display:block}.timeline small{color:var(--muted)}.actions{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.actions button{border:1px solid var(--line);color:#fff;background:#06192b;border-radius:6px;height:51px}.countdown{border:1px solid var(--line);background:#061b2e;border-radius:9px;padding:24px}.countdown h3{color:var(--gold)}.countdown b{color:var(--gold);text-align:center;font-size:80px;display:block}.countdown span{text-align:center;font-size:23px;display:block}.countdown p{text-align:center}.saved-title{color:var(--gold)}.saved{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.saved article{border:1px solid var(--line);border-radius:7px;padding:25px}.saved b{float:right;color:var(--muted)}.manage .world,.support .world,.contact .world,.about .world{top:0}.lookup{border:1px solid var(--blue);background:#06192a;border-radius:10px;grid-template-columns:1fr auto;align-items:end;gap:20px;width:840px;margin-top:30px;padding:28px;display:grid}.lookup h2{grid-column:1/3}.lookup .fields{grid-template-columns:1fr 1fr}.lookup small{color:var(--muted)}.action-grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:48px;display:grid}.action-grid article,.help-grid article,.stats article{border:1px solid var(--line);background:#051727d6;border-radius:9px;padding:28px}.action-grid i,.help-grid i{color:var(--blue);font-size:28px;font-style:normal}.action-grid p,.help-grid p,.stats p{color:var(--muted);line-height:1.5}.secure{text-align:center;color:var(--gold);margin-top:55px;font-weight:700}.support{text-align:center}.support>p{margin-top:-18px}.help-search{grid-template-columns:1fr auto;width:600px;height:58px;margin:30px auto 45px;display:grid}.help-search input{border:1px solid var(--line);color:#fff;background:#071a2e;border-radius:7px;padding:0 20px}.help-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.help-grid article{min-height:210px}.help-grid article b{color:var(--gold);font-size:30px}.support-bottom{text-align:left;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;display:grid}.support-bottom>article{border:1px solid var(--line);border-radius:9px;padding:22px}.support-bottom>article>button{color:#fff;border:1px solid var(--line);background:#081d32;border-radius:5px;justify-content:space-between;width:100%;margin-top:8px;padding:13px;display:flex}.contact-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.contact-options button{border:1px solid var(--blue);color:#fff;background:#07192b;border-radius:5px;padding:13px}.contact-layout{grid-template-columns:1.8fr 1fr;gap:30px;margin-top:25px;display:grid}.contact-layout>form,.contact-layout>aside{border:1px solid var(--line);background:#06192b;border-radius:9px;padding:28px}.contact-layout form{grid-template-columns:1fr 1fr;gap:15px;display:grid}.contact-layout h2{color:#65c8ff}.contact-layout form h2,.contact-layout form .field:last-of-type,.contact-layout .consent,.contact-layout form>.gold{grid-column:1/3}.contact-layout textarea{height:90px;padding-top:10px}.contact-layout form .field:has(textarea)>span{height:110px}.consent{color:#b9cad5;font-size:11px}.contact-layout aside h3{color:var(--gold);margin-bottom:4px}.contact-layout aside p{color:#d1dce3}.about-hero{grid-template-columns:1fr 1.7fr;align-items:center;gap:45px;display:grid}.about-hero h1{font-size:48px;line-height:1.1}.about-hero p{color:#c7d6df;line-height:1.6}.office{border:1px solid var(--line);text-align:center;height:350px;color:var(--gold);letter-spacing:4px;background:linear-gradient(135deg,#02111d33,#010a12e6),url(https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1400&q=85) 50%/cover;border-radius:9px;place-items:center;font-size:44px;display:grid}.office span{letter-spacing:9px;font-size:15px}.stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px;display:grid}.stats h3{color:var(--gold)}.story{grid-template-columns:1fr 1.5fr;gap:25px;margin:25px 0;display:grid}.story>div{border-top:1px solid var(--line);padding-top:20px}.story p{color:#c2d1da;line-height:1.7}footer{border-top:1px solid var(--line);color:#7995a6;background:#020a12;align-items:center;gap:30px;min-height:90px;padding:25px 34px;font-size:11px;display:flex}footer button{color:#8acbed;background:0 0;border:0}footer span:nth-last-child(2){margin-left:auto}@media (width<=900px){header{padding:0 14px}.account{display:none}nav{gap:10px}nav button{font-size:10px}.service-tabs{width:calc(100vw - 24px);margin:12px;overflow:auto}.service-tabs button{min-width:130px}.search-card{width:calc(100vw - 24px);margin:0 12px;padding:18px}.fields.six,.fields.package,.fields.hotel,.fields.car,.fields.attraction{grid-template-columns:1fr 1fr}.advanced{width:calc(100% + 36px);margin-left:-18px}.world{opacity:.25}.deal-cards,.deal-cards.four,.attraction-strip,.action-grid,.help-grid,.stats{grid-template-columns:1fr 1fr}.trip-layout,.contact-layout,.about-hero,.support-bottom{grid-template-columns:1fr}.countdown{display:none}.lookup{width:100%}.utility{width:92vw}.contact-layout form{grid-template-columns:1fr}.contact-layout form h2,.contact-layout form .field:last-of-type,.contact-layout .consent,.contact-layout form>.gold{grid-column:auto}.about-hero h1{font-size:38px}}@media (width<=600px){.brand b{font-size:16px}header nav button:nth-child(2),header nav button:nth-child(3){display:none}.service-tabs{grid-template-columns:repeat(5,125px)}.search-card{min-height:420px;padding:14px}.fields.six,.fields.package,.fields.hotel,.fields.car,.fields.attraction{grid-template-columns:1fr}.search-line{flex-direction:column;align-items:stretch;gap:14px}.gold{width:100%}.advanced{width:calc(100% + 28px);margin-left:-14px}.advanced-panel{grid-template-columns:1fr;margin:0 -14px}.deal-cards,.deal-cards.four,.attraction-strip,.actions,.saved,.action-grid,.help-grid,.stats{grid-template-columns:1fr}.deal-cards article{height:180px}.utility h1{font-size:32px}.timeline{grid-template-columns:1fr}.lookup{display:block}.lookup h2{font-size:20px}.lookup .fields{grid-template-columns:1fr}.lookup .gold{margin-top:20px}.help-search{width:100%}.support-bottom,.contact-options,.story{grid-template-columns:1fr}footer{flex-wrap:wrap}footer span:nth-last-child(2){margin-left:0}}

/* Custom Overrides */
.field > span .select2-container {
    width: 100% !important;
    flex: 1;
}
.field > span .select2-container--default .select2-selection--single {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    box-shadow: none !important;
}
.field > span .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #fff !important;
    font-weight: normal !important;
    font-size: 14px !important;
    padding-left: 6px !important;
    line-height: normal !important;
}
.field > span .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100% !important;
    top: 0 !important;
    right: 0 !important;
}
.select2-dropdown {
    background-color: #061a2b !important;
    border: 1px solid #3eaeee59 !important;
    color: #f4f8fb !important;
}
.select2-search--dropdown {
    background-color: #061a2b !important;
}
.select2-search--dropdown .select2-search__field {
    background-color: #081729 !important;
    border: 1px solid #97bdd96b !important;
    color: #fff !important;
}
.select2-results__option {
    padding: 8px 12px !important;
    font-size: 13px !important;
    color: #8fa9ba !important;
}
.select2-results__option--highlighted[aria-selected] {
    background-color: #29b6ff !important;
    color: #fff !important;
}
.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: #082238 !important;
    color: #fff !important;
}
#ui-datepicker-div,
.ui-datepicker,
#ui-datepicker-div.ui-datepicker {
    background: linear-gradient(145deg, #072238, #031221) !important;
    border: 1px solid rgba(62, 174, 238, 0.4) !important;
    border-radius: 16px !important;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.85), 0 0 20px rgba(41, 182, 255, 0.2) !important;
    padding: 18px 20px !important;
    z-index: 99999 !important;
    font-family: inherit !important;
    color: #ffffff !important;
}

#ui-datepicker-div.ui-datepicker-multi-2 {
    width: 620px !important;
}

#ui-datepicker-div .ui-datepicker-group {
    width: 275px !important;
    float: left !important;
    margin-right: 20px !important;
}

#ui-datepicker-div .ui-datepicker-group-last {
    margin-right: 0 !important;
}

/* Header & Month Titles */
#ui-datepicker-div .ui-datepicker-header {
    background: rgba(15, 45, 75, 0.6) !important;
    border: 1px solid rgba(62, 174, 238, 0.2) !important;
    border-radius: 10px !important;
    margin-bottom: 14px !important;
    position: relative !important;
    padding: 10px 12px !important;
    min-height: 46px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#ui-datepicker-div .ui-datepicker-title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #ffca58 !important;
    text-align: center !important;
    margin: 0 !important;
    letter-spacing: 0.5px !important;
    line-height: 1.2 !important;
}

/* Prev / Next Month Navigation Buttons */
#ui-datepicker-div .ui-datepicker-prev,
#ui-datepicker-div .ui-datepicker-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    background: rgba(15, 45, 75, 0.85) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
    z-index: 10 !important;
}

#ui-datepicker-div .ui-datepicker-prev {
    left: 8px !important;
    right: auto !important;
}

#ui-datepicker-div .ui-datepicker-next {
    right: 8px !important;
    left: auto !important;
}

#ui-datepicker-div .ui-datepicker-prev:hover,
#ui-datepicker-div .ui-datepicker-next:hover {
    background: #29b6ff !important;
    border-color: #29b6ff !important;
    box-shadow: 0 0 12px rgba(41, 182, 255, 0.4) !important;
}

/* Hide default jQuery UI icon sprite image & text */
#ui-datepicker-div .ui-datepicker-prev .ui-icon,
#ui-datepicker-div .ui-datepicker-next .ui-icon,
#ui-datepicker-div .ui-icon {
    display: none !important;
    background: none !important;
    background-image: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* Custom CSS Chevron Arrows */
#ui-datepicker-div .ui-datepicker-prev::after {
    content: '' !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    border-left: 2px solid #29b6ff !important;
    border-bottom: 2px solid #29b6ff !important;
    transform: rotate(45deg) !important;
    margin-left: 3px !important;
    transition: border-color 0.2s ease !important;
}

#ui-datepicker-div .ui-datepicker-next::after {
    content: '' !important;
    display: block !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 2px solid #29b6ff !important;
    border-top: 2px solid #29b6ff !important;
    transform: rotate(45deg) !important;
    margin-right: 3px !important;
    transition: border-color 0.2s ease !important;
}

#ui-datepicker-div .ui-datepicker-prev:hover::after,
#ui-datepicker-div .ui-datepicker-next:hover::after {
    border-color: #03101c !important;
}

/* Day Names Header (Sun, Mon, Tue...) */
#ui-datepicker-div .ui-datepicker-calendar {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 3px !important;
    margin: 0 !important;
}

#ui-datepicker-div .ui-datepicker-calendar th {
    color: #65c5ff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    border: none !important;
    text-align: center !important;
    padding: 6px 0 !important;
}

/* Calendar Days / Cells */
#ui-datepicker-div .ui-datepicker-calendar td {
    padding: 1px !important;
    border: none !important;
    background: transparent !important;
}

#ui-datepicker-div .ui-datepicker-calendar td a,
#ui-datepicker-div .ui-datepicker-calendar td span,
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-default {
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 8px !important;
    width: 34px !important;
    height: 34px !important;
    line-height: 32px !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 auto !important;
    display: block !important;
    padding: 0 !important;
    transition: all 0.15s ease !important;
    background: rgba(15, 38, 62, 0.7) !important;
}

/* Hover Day State */
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-default:hover,
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-hover {
    background: rgba(41, 182, 255, 0.25) !important;
    color: #ffca58 !important;
    border-color: #29b6ff !important;
}

/* Distinct Weekend Styling (Sat/Sun) */
#ui-datepicker-div .ui-datepicker-calendar th.ui-datepicker-week-end {
    color: #ffca58 !important;
}

#ui-datepicker-div .ui-datepicker-calendar td.ui-datepicker-week-end a.ui-state-default {
    background: rgba(255, 202, 88, 0.08) !important;
    color: #ffd875 !important;
    border-color: rgba(255, 202, 88, 0.2) !important;
}

#ui-datepicker-div .ui-datepicker-calendar td.ui-datepicker-week-end a.ui-state-default:hover {
    background: #ffca58 !important;
    color: #03101c !important;
    font-weight: 700 !important;
}

/* Active Selected Day */
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-active,
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-highlight.ui-state-active {
    background: linear-gradient(135deg, #ed9c14, #ffd064) !important;
    color: #03101c !important;
    font-weight: 800 !important;
    border-color: #ffd064 !important;
    box-shadow: 0 4px 15px rgba(237, 156, 20, 0.5) !important;
}

/* Disabled Days (Past Dates) */
#ui-datepicker-div .ui-datepicker-calendar td.ui-datepicker-unselectable span,
#ui-datepicker-div .ui-datepicker-calendar td.ui-state-disabled span {
    color: rgba(255, 255, 255, 0.25) !important;
    background: rgba(255, 255, 255, 0.02) !important;
    border-color: transparent !important;
    opacity: 0.4 !important;
}

/* Legend Bar at Bottom (Hidden) */
#ui-datepicker-div .datepicker-legend-bar,
.datepicker-legend-bar {
    display: none !important;
}

/* Sleek Dark Theme Custom Scrollbar */
.airline-filter-list::-webkit-scrollbar,
.custom-scrollbar::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.airline-filter-list::-webkit-scrollbar-track,
.custom-scrollbar::-webkit-scrollbar-track {
    background: rgba(4, 22, 38, 0.7);
    border-radius: 10px;
}

.airline-filter-list::-webkit-scrollbar-thumb,
.custom-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(41, 182, 255, 0.4);
    border-radius: 10px;
    border: 1px solid rgba(4, 22, 38, 0.8);
    transition: all 0.2s ease;
}

.airline-filter-list::-webkit-scrollbar-thumb:hover,
.custom-scrollbar::-webkit-scrollbar-thumb:hover {
    background: #29b6ff;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.7);
}

/* Firefox scrollbar support */
.airline-filter-list,
.custom-scrollbar {
    scrollbar-width: thin;
    scrollbar-color: rgba(41, 182, 255, 0.5) rgba(4, 22, 38, 0.7);
}

/* Sleek Price Range Slider */
.custom-price-range {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 5px;
    background: rgba(62, 174, 238, 0.25);
    border-radius: 5px;
    outline: none;
}

.custom-price-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #29b6ff;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.8);
    cursor: pointer;
    transition: transform 0.15s ease, background-color 0.15s ease;
}

.custom-price-range::-webkit-slider-thumb:hover {
    transform: scale(1.15);
    background: #29b6ff;
}

.custom-price-range::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #29b6ff;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.8);
    cursor: pointer;
}


.sleek-swap-btn {
    position: absolute !important;
    right: -16px !important;
    top: 24px !important;
    background: #081729 !important;
    border: 1px solid #97bdd96b !important;
    color: #29b6ff !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    z-index: 10 !important;
}
@media (max-width: 900px) {
    .sleek-swap-btn {
        position: relative !important;
        right: auto !important;
        top: auto !important;
        margin: 5px auto !important;
        transform: rotate(90deg) !important;
    }
}

/* Header Navbar Design Overrides */
header {
    height: 64px !important;
    background: #030c17 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 0 32px !important;
}

header nav {
    display: flex !important;
    align-items: center !important;
    gap: 30px !important;
    height: 100% !important;
}

header nav button, 
header .account button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    height: 100% !important;
    padding: 0 2px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    background: transparent !important;
    border: none !important;
    position: relative !important;
    transition: color 0.2s ease !important;
    cursor: pointer !important;
}

header nav button svg,
header .account button svg {
    width: 17px !important;
    height: 17px !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    flex-shrink: 0 !important;
}

header nav button.active {
    color: var(--gold, #f6b22c) !important;
}

header nav button.active svg {
    stroke: var(--gold, #f6b22c) !important;
}

header nav button.active:after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: #00a2ff !important;
    box-shadow: 0 0 10px rgba(0, 162, 255, 0.7) !important;
    border-radius: 2px 2px 0 0 !important;
}

header nav button:hover,
header .account button:hover {
    color: #f1f5f9 !important;
}

header .account {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    height: 100% !important;
}

header .account button .lucide-chevron-down {
    width: 13px !important;
    height: 13px !important;
    margin-left: 2px !important;
    opacity: 0.8 !important;
}

header .account i {
    display: block !important;
    width: 1px !important;
    height: 22px !important;
    background: rgba(255, 255, 255, 0.15) !important;
    margin: 0 4px !important;
}

header .brand {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

header .brand:hover {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    transform: none !important;
}

header .brand-logo {
    height: 42px !important;
    max-height: 44px !important;
    width: auto !important;
    object-fit: contain !important;
    display: block !important;
    filter: drop-shadow(0 0 5px rgba(41, 182, 255, 0.4)) !important;
}

header .brand:hover .brand-logo {
    transform: none !important;
    filter: drop-shadow(0 0 5px rgba(41, 182, 255, 0.4)) !important;
}

/* Hero Search Area & World Graphic Overrides */
.world {
    position: absolute !important;
    top: 30px !important;
    right: 0 !important;
    width: 620px !important;
    height: 480px !important;
    opacity: 0.88 !important;
    pointer-events: none !important;
    z-index: 1 !important;
    overflow: hidden !important;
    background: transparent !important;
    border-radius: 0 !important;
}

.world img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: right top !important;
    filter: drop-shadow(0 0 30px rgba(0, 140, 255, 0.45)) !important;
    -webkit-mask-image: radial-gradient(ellipse at 75% 45%, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 0) 82%) !important;
    mask-image: radial-gradient(ellipse at 75% 45%, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 0) 82%) !important;
}

.service-tabs {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    margin: 28px 0 0 34px !important;
    width: fit-content !important;
    max-width: calc(100% - 68px) !important;
    position: relative !important;
    z-index: 3 !important;
}

.service-tabs button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 12px 24px !important;
    height: 46px !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    color: #94a3b8 !important;
    background: #041626e0 !important;
    border: 1px solid var(--line, #3eaeee59) !important;
    border-bottom: none !important;
    border-radius: 8px 8px 0 0 !important;
    margin-right: -1px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    position: relative !important;
}

.service-tabs button svg {
    width: 17px !important;
    height: 17px !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    flex-shrink: 0 !important;
}

.service-tabs button:hover {
    color: #ffffff !important;
    background: #061a2b !important;
}

.service-tabs button.active {
    color: #ffffff !important;
    background: linear-gradient(180deg, #072642, #051d31f7) !important;
    border-color: #3eaeee80 !important;
    box-shadow: inset 0 3px 0 var(--blue, #29b6ff) !important;
    font-weight: 600 !important;
    z-index: 4 !important;
}

.service-tabs button.active svg {
    stroke: var(--blue, #29b6ff) !important;
}

.search-card {
    border: 1px solid var(--line, #3eaeee59) !important;
    z-index: 3 !important;
    background: linear-gradient(110deg, #051d31f7, #03111feb) !important;
    border-radius: 0 8px 8px 8px !important;
    width: min(1300px, 100vw - 68px) !important;
    min-height: 260px !important;
    margin-left: 34px !important;
    padding: 24px 30px !important;
    position: relative !important;
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.45) !important;
}

.search-card h4 {
    color: #65c5ff !important;
    letter-spacing: 1.2px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    margin: 0 0 18px !important;
    text-transform: uppercase !important;
}

.trip-types {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 20px !important;
}

.trip-types button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    color: #ffffff !important;
    background: #06182a !important;
    border: 1px solid #b4d2e944 !important;
    border-radius: 6px !important;
    padding: 9px 20px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.trip-types button svg {
    width: 16px !important;
    height: 16px !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    flex-shrink: 0 !important;
}

.trip-types button:hover {
    border-color: #29b6ffaa !important;
    color: #ffffff !important;
}

.trip-types button.active {
    border-color: var(--blue, #29b6ff) !important;
    background: #061e35 !important;
    box-shadow: 0 0 12px rgba(32, 184, 255, 0.45) !important;
    color: #ffffff !important;
    font-weight: 600 !important;
}

.trip-types button.active svg {
    stroke: var(--blue, #29b6ff) !important;
}

.fields {
    align-items: end !important;
    gap: 12px !important;
    display: grid !important;
}

.fields.six {
    grid-template-columns: repeat(6, 1fr);
}

.fields.five {
    grid-template-columns: repeat(5, 1fr);
}

.field small {
    color: #8fa9ba !important;
    margin: 0 0 6px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    display: block !important;
}

.field > span {
    color: #fff !important;
    background: #081729 !important;
    border: 1px solid #97bdd96b !important;
    border-radius: 6px !important;
    align-items: center !important;
    height: 48px !important;
    padding: 0 12px !important;
    display: flex !important;
    transition: border-color 0.2s ease !important;
    position: relative !important;
}

.field > span:focus-within,
.field > span:hover {
    border-color: var(--blue, #29b6ff) !important;
}

.field > span svg {
    width: 17px !important;
    height: 17px !important;
    stroke: var(--blue, #29b6ff) !important;
    stroke-width: 1.8 !important;
    flex-shrink: 0 !important;
    margin-right: 6px !important;
}

.field input, .field select, .field textarea {
    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    width: 100% !important;
    font-size: 13.5px !important;
}

.sleek-swap-btn {
    position: absolute !important;
    right: -16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: #081729 !important;
    border: 1px solid #97bdd96b !important;
    color: #29b6ff !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    z-index: 10 !important;
    font-size: 14px !important;
    transition: all 0.2s ease !important;
}

.sleek-swap-btn:hover {
    background: #0d233e !important;
    border-color: #29b6ff !important;
    color: #ffffff !important;
    transform: translateY(-50%) scale(1.1) !important;
}

.search-line {
    justify-content: space-between !important;
    align-items: center !important;
    margin-top: 20px !important;
    font-size: 12.5px !important;
    display: flex !important;
}

.search-line label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #c1d0da !important;
    cursor: pointer !important;
}

.search-line input[type="checkbox"] {
    accent-color: var(--blue, #29b6ff) !important;
    width: 16px !important;
    height: 16px !important;
    cursor: pointer !important;
}

.gold {
    height: 48px !important;
    box-shadow: 0 0 20px rgba(247, 177, 40, 0.35) !important;
    color: #071522 !important;
    background: linear-gradient(135deg, #ed9c14, #ffd064) !important;
    border: 1px solid #ffca58 !important;
    border-radius: 6px !important;
    padding: 0 32px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.gold:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 25px rgba(247, 177, 40, 0.5) !important;
}

.gold svg {
    width: 18px !important;
    height: 18px !important;
    stroke: #071522 !important;
    stroke-width: 2.2 !important;
}

.advanced {
    text-align: left !important;
    color: #62c6ff !important;
    border: 1px solid var(--line, #3eaeee59) !important;
    background: linear-gradient(90deg, #082643, #06182c) !important;
    border-radius: 6px !important;
    width: calc(100% + 60px) !important;
    margin: 20px -30px 0 !important;
    padding: 12px 25px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: background 0.2s ease !important;
}

.advanced:hover {
    background: linear-gradient(90deg, #0b3257, #08223c) !important;
    color: #92d9ff !important;
}

.advanced svg {
    width: 16px !important;
    height: 16px !important;
    stroke: currentColor !important;
    transition: transform 0.2s ease !important;
}

/* ==========================================================================
   FLIGHT SEARCH RESULTS & BOOKING CARDS DARK THEME STYLING
   ========================================================================== */

.revalidated {
    background-color: #020c17 !important;
    color: #e2e8f0 !important;
    min-height: calc(100vh - 80px) !important;
}

/* Header Panel Banner */
.booking_header {
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    background: linear-gradient(135deg, #051d31f7 0%, #03111feb 100%) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.45) !important;
    border-radius: 12px !important;
}

.search_btn {
    padding: 9px 24px !important;
    background: rgba(237, 156, 20, 0.12) !important;
    border: 1px solid #ffca58 !important;
    border-radius: 6px !important;
    color: #ffca58 !important;
    font-weight: 700 !important;
    font-size: 13.5px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
}

.search_btn:hover {
    background: linear-gradient(135deg, #ed9c14, #ffd064) !important;
    color: #071522 !important;
    box-shadow: 0 0 15px rgba(247, 177, 40, 0.4) !important;
}

.header_panel h5 {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    margin: 0 !important;
}

.header_panel p {
    color: #65c5ff !important;
    font-weight: 700 !important;
    font-size: 18px !important;
    margin: 0 !important;
}

/* Main Flight Result Cards */
.custom_card, .card.custom_card {
    background: linear-gradient(135deg, #051d31f7, #03111feb) !important;
    border: 1px solid rgba(62, 174, 238, 0.3) !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.45) !important;
    margin-bottom: 18px !important;
    color: #ffffff !important;
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.custom_card:hover, .card.custom_card:hover {
    border-color: var(--blue, #29b6ff) !important;
    box-shadow: 0 12px 35px rgba(32, 184, 255, 0.25) !important;
    transform: translateY(-2px) !important;
}

.custom_card .card-body {
    padding: 22px 24px !important;
}

/* Flight Details Text & Typography */
.time {
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
}

.port-block {
    color: #65c5ff !important;
    font-weight: 600 !important;
    font-size: 15px !important;
}

.date-block {
    color: #94a3b8 !important;
    font-size: 13px !important;
}

.duration, .total-stop, .flight-no {
    color: #94a3b8 !important;
    font-size: 12.5px !important;
}

.font-200, .font-600, .font-700 {
    color: #cbd5e1 !important;
}

/* Carrier / Airline Info */
.custom_card img[alt="LOGO"] {
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.4)) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    padding: 6px 10px !important;
    border-radius: 6px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* Divider Lines Inside Card */
.custom_card hr {
    border-top: 1px solid rgba(148, 163, 184, 0.18) !important;
    margin: 16px 0 !important;
    opacity: 1 !important;
}

.custom_card .col-12.col-md-3 {
    border-left: 1px solid rgba(148, 163, 184, 0.18) !important;
}

@media (max-width: 767px) {
    .custom_card .col-12.col-md-3 {
        border-left: none !important;
        border-top: 1px solid rgba(148, 163, 184, 0.18) !important;
    }
}

/* Flight Line Graphic (Plane between origin and dest) */
.flight-icon {
    background: #ffca58 !important;
    height: 1.5px !important;
}

.flight-icon:before, .flight-icon:after {
    filter: brightness(0) invert(1) drop-shadow(0 0 4px #29b6ff) !important;
}

/* Price Heading & Currency */
.custom_card .col-12.col-md-3 h2,
.custom_card .col-12.col-md-3 h3,
.custom_card .col-12.col-md-3 div h2 {
    color: #65c5ff !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    margin: 0 0 10px 0 !important;
}

/* Continue / Select Flight Button */
.btn-price {
    background: linear-gradient(135deg, #ed9c14, #ffd064) !important;
    color: #071522 !important;
    border: 1px solid #ffca58 !important;
    box-shadow: 0 0 15px rgba(247, 177, 40, 0.3) !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    border-radius: 6px !important;
    padding: 10px 28px !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    max-width: 180px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.btn-price:hover {
    background: linear-gradient(135deg, #f5a623, #ffe082) !important;
    box-shadow: 0 4px 20px rgba(247, 177, 40, 0.5) !important;
    transform: translateY(-1px) !important;
    color: #000000 !important;
}

/* Bottom Flight Meta Row (Flight Details, Baggage, Meal) */
.flight-details span, .flight-details {
    color: #65c5ff !important;
    font-weight: 600 !important;
}

.flight-details svg, .baggage-allowance svg, .meal svg {
    filter: brightness(0) saturate(100%) invert(67%) sepia(85%) saturate(1450%) hue-rotate(185deg) brightness(102%) contrast(101%) !important;
}

.baggage-allowance, .meal {
    color: #94a3b8 !important;
    font-size: 12.5px !important;
}

/* Right Sidebar Support Card */
.col-lg-3 .card.box_shadow, .card.box_shadow, .box_shadow {
    background: linear-gradient(135deg, #051d31f7, #03111feb) !important;
    border: 1px solid rgba(62, 174, 238, 0.3) !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.45) !important;
    overflow: hidden !important;
}

.support_icon {
    background: rgba(41, 182, 255, 0.1) !important;
    border-radius: 50% !important;
    width: 72px !important;
    height: 72px !important;
    margin: 24px auto 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid rgba(41, 182, 255, 0.25) !important;
}

.support_icon img {
    width: 42px !important;
    height: 42px !important;
    filter: brightness(0) saturate(100%) invert(67%) sepia(85%) saturate(1450%) hue-rotate(185deg) brightness(102%) contrast(101%) !important;
}

.card-title {
    color: #ffffff !important;
    text-align: center !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    margin-bottom: 0 !important;
}

.list-group-flush {
    border-top: 1px solid rgba(148, 163, 184, 0.15) !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

.list-group-item {
    background: transparent !important;
    border: none !important;
    color: #94a3b8 !important;
    padding: 10px 20px !important;
}

.list-group-item a {
    color: #65c5ff !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
}

.list-group-item a:hover {
    color: #ffca58 !important;
}

.list-group-item svg {
    fill: #29b6ff !important;
    color: #29b6ff !important;
    width: 18px !important;
    height: 18px !important;
    margin-right: 10px !important;
}

/* Download API Response Button */
.btn-primary {
    background: #061e35 !important;
    border: 1px solid rgba(62, 174, 238, 0.4) !important;
    color: #65c5ff !important;
    font-weight: 600 !important;
    padding: 8px 20px !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
}

.btn-primary:hover {
    background: #082a4a !important;
    border-color: #29b6ff !important;
    color: #ffffff !important;
    box-shadow: 0 0 12px rgba(32, 184, 255, 0.3) !important;
}

/* Fares / Class options box on checkout / revalidate screen */
.flight_details {
    background: #041627 !important;
    border: 1px solid rgba(62, 174, 238, 0.25) !important;
    border-radius: 8px !important;
    padding: 14px !important;
    color: #ffffff !important;
}

.flight_details strong {
    color: #65c5ff !important;
}

.flight_details .small_text {
    color: #94a3b8 !important;
}

/* Flight Segment Details Breakdown Drawer */
.flight-details-toggle {
    color: #65c5ff !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    transition: color 0.2s ease !important;
}

.flight-details-toggle:hover {
    color: #ffca58 !important;
}

.chevron-icon {
    transition: transform 0.25s ease !important;
}

.chevron-icon.rotate-180 {
    transform: rotate(180deg) !important;
}

.flight-details-drawer {
    display: none;
}

.equipment-badge {
    background: rgba(41, 182, 255, 0.15) !important;
    color: #65c5ff !important;
    border: 1px solid rgba(41, 182, 255, 0.3) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    border-radius: 4px !important;
    padding: 3px 8px !important;
}

.amenities-badge {
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.2) !important;
}

.amenities-badge svg {
    opacity: 0.9 !important;
    transition: transform 0.15s ease !important;
}

.amenities-badge svg:hover {
    transform: scale(1.2) !important;
    opacity: 1 !important;
}

/* Timeline Vertical Path */
.segment-timeline {
    margin-left: 6px !important;
}

.timeline-line {
    border-radius: 2px !important;
}

.timeline-dot {
    z-index: 5 !important;
}

.layover-notice {
    box-shadow: 0 4px 15px rgba(237, 156, 20, 0.15) !important;
}

/* Airline Logos - Clean Transparent Styling */
.airline-logo-img, .custom_card img[src*="airlines"] {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    object-fit: contain !important;
    filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.5)) !important;
    max-height: 45px !important;
}

/* ==========================================================================
   ADVANCED OPTIONS DRAWER PANEL - REFERENCE DESIGN STYLING
   ========================================================================== */
.advanced-panel {
    border: 1px solid rgba(62, 174, 238, 0.3) !important;
    background: linear-gradient(180deg, #020c17 0%, #041626 100%) !important;
    grid-template-columns: 1.25fr 0.9fr 1.4fr 1.35fr !important;
    gap: 0 !important;
    margin: 0 -30px !important;
    padding: 16px 20px !important;
    display: grid !important;
    align-items: center !important;
    border-radius: 0 0 8px 8px !important;
}

.advanced-panel > div {
    border-right: 1px solid rgba(62, 174, 238, 0.25) !important;
    padding: 0 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.advanced-panel > div:last-child {
    border-right: 0 !important;
}

.advanced-panel b {
    color: #29b6ff !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    margin-bottom: 2px !important;
    display: block !important;
    letter-spacing: 0.2px !important;
}

.advanced-panel-group {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

.advanced-panel .pill-btn, .advanced-panel .time-card {
    color: #ffffff !important;
    background: rgba(4, 22, 38, 0.8) !important;
    border: 1px solid rgba(150, 191, 219, 0.35) !important;
    border-radius: 6px !important;
    padding: 6px 12px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.advanced-panel .pill-btn:hover, .advanced-panel .time-card:hover {
    border-color: #29b6ff !important;
    color: #ffffff !important;
    background: rgba(41, 182, 255, 0.12) !important;
}

.advanced-panel .pill-btn.selected, .advanced-panel .pill-btn.active,
.advanced-panel .time-card.selected, .advanced-panel .time-card.active {
    border-color: #29b6ff !important;
    color: #ffffff !important;
    background: rgba(41, 182, 255, 0.2) !important;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.35) !important;
    font-weight: 600 !important;
}

/* Airline preference column flex */
.airline-pref-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
}

.airline-dropdown {
    border: 1px solid rgba(150, 191, 219, 0.4) !important;
    background: #041626 !important;
    color: #ffffff !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    outline: none !important;
    cursor: pointer !important;
    min-width: 140px !important;
    height: 31px !important;
    transition: border-color 0.2s ease !important;
}

.airline-dropdown:focus, .airline-dropdown:hover {
    border-color: #29b6ff !important;
    box-shadow: 0 0 8px rgba(41, 182, 255, 0.3) !important;
}

.airline-dropdown option {
    background: #041626 !important;
    color: #ffffff !important;
    padding: 6px 10px !important;
}

.baggage-checkbox-label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 11px !important;
    color: #ffffff !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    font-weight: 500 !important;
    margin: 0 !important;
}

.baggage-checkbox-label input[type="checkbox"] {
    accent-color: #29b6ff !important;
    width: 14px !important;
    height: 14px !important;
    cursor: pointer !important;
}

/* ==========================================================================
   SELECT2 CUSTOM THEME & SLEEK SCROLLBARS (MATCHING THEME & INDUSTRY STANDARD)
   ========================================================================== */
.select2-container--default .select2-dropdown {
    background: linear-gradient(145deg, #051d31, #03111f) !important;
    border: 1px solid rgba(62, 174, 238, 0.4) !important;
    border-radius: 12px !important;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.85), 0 0 20px rgba(41, 182, 255, 0.2) !important;
    overflow: hidden !important;
    padding: 6px 0 !important;
    z-index: 99999 !important;
}

/* Hide horizontal scrollbar completely and add sleek custom vertical scrollbar */
.select2-results__options {
    max-height: 280px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 4px 6px !important;
}

/* Custom Sleek Scrollbar */
.select2-results__options::-webkit-scrollbar {
    width: 6px !important;
    height: 0px !important;
}

.select2-results__options::-webkit-scrollbar-track {
    background: rgba(4, 22, 38, 0.8) !important;
    border-radius: 4px !important;
}

.select2-results__options::-webkit-scrollbar-thumb {
    background: rgba(62, 174, 238, 0.4) !important;
    border-radius: 4px !important;
}

.select2-results__options::-webkit-scrollbar-thumb:hover {
    background: #29b6ff !important;
    box-shadow: 0 0 8px #29b6ff !important;
}

/* Select2 Search Input Box */
.select2-search--dropdown {
    padding: 8px 10px !important;
    background: transparent !important;
}

.select2-search--dropdown .select2-search__field {
    background: #041626 !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    padding: 8px 12px !important;
    font-size: 12px !important;
    outline: none !important;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.5) !important;
}

.select2-search--dropdown .select2-search__field:focus {
    border-color: #29b6ff !important;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.3) !important;
}

/* Select2 Result Options Hover & Active States */
.select2-container--default .select2-results__option {
    padding: 8px 10px !important;
    border-radius: 8px !important;
    margin-bottom: 3px !important;
    transition: all 0.2s ease !important;
    background: transparent !important;
    color: #e1eff8 !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option:hover {
    background: rgba(41, 182, 255, 0.15) !important;
    color: #ffffff !important;
}

.select2-container--default .select2-results__option[aria-selected="true"] {
    background: rgba(41, 182, 255, 0.22) !important;
    border: 1px solid rgba(41, 182, 255, 0.3) !important;
}

.select2-container--default .select2-results__option[aria-selected="true"] .airport-code-pill {
    background: #ffca58 !important;
    color: #041626 !important;
    border-color: #ffca58 !important;
}

/* ==========================================================================
   SEARCH LINE CHECKBOXES (FLEXIBLE DATES & BAGGAGE INCLUDED)
   ========================================================================== */
.search-checkboxes {
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
}

.custom-theme-checkbox {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #e1eff8 !important;
    cursor: pointer !important;
    user-select: none !important;
    margin: 0 !important;
    padding: 6px 12px !important;
    border: 1px solid rgba(150, 191, 219, 0.3) !important;
    background: rgba(4, 22, 38, 0.6) !important;
    border-radius: 6px !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.custom-theme-checkbox:hover {
    border-color: #29b6ff !important;
    color: #ffffff !important;
    background: rgba(41, 182, 255, 0.1) !important;
    box-shadow: 0 0 8px rgba(41, 182, 255, 0.2) !important;
}

.custom-theme-checkbox input[type="checkbox"] {
    accent-color: #29b6ff !important;
    width: 15px !important;
    height: 15px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    margin: 0 !important;
}

/* ==========================================================================
   SMOOTH COLLAPSIBLE DRAWER & CHEVRON ANIMATION FOR ADVANCED OPTIONS
   ========================================================================== */
#advancedToggleBtn {
    cursor: pointer !important;
    user-select: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.3s ease !important;
}

#advancedToggleBtn:hover {
    color: #29b6ff !important;
    text-shadow: 0 0 10px rgba(41, 182, 255, 0.4) !important;
}

#advancedToggleBtn .chevron-icon {
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

#advancedToggleBtn.active .chevron-icon {
    transform: rotate(180deg) !important;
}

/* Collapsible Outer Wrapper */
.advanced-panel-wrapper {
    width: calc(100% + 60px) !important;
    margin: 0 -30px !important;
    overflow: hidden !important;
}

/* ==========================================================================
   FLASH DEALS CARD THEME STYLING & HOVER ANIMATION
   ========================================================================== */
.deals .section-title h3 {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    white-space: nowrap !important;
    text-transform: uppercase !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #ffca58 !important;
    margin: 0 !important;
    line-height: 1 !important;
}

.deals .section-title h3 svg {
    display: inline-block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    width: 22px !important;
    height: 22px !important;
    stroke: #ffca58 !important;
}

.deals .section-title button {
    background: transparent !important;
    border: none !important;
    color: #29b6ff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: color 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.deals .section-title button:hover {
    color: #ffca58 !important;
}

.theme-deal-card {
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.35s ease, border-color 0.35s ease !important;
    border: 1px solid rgba(62, 174, 238, 0.45) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.8), 0 0 18px rgba(41, 182, 255, 0.2) !important;
    position: relative !important;
}

.theme-deal-card:hover {
    transform: translateY(-5px) scale(1.015) !important;
    border-color: #29b6ff !important;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.95), 0 0 30px rgba(41, 182, 255, 0.45) !important;
}

.attraction-strip article {
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.35s ease, box-shadow 0.35s ease !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.75), 0 0 15px rgba(41, 182, 255, 0.15) !important;
}

.attraction-strip article:hover {
    transform: translateY(-4px) !important;
    border-color: #29b6ff !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.9), 0 0 25px rgba(41, 182, 255, 0.4) !important;
}

/* ==========================================================================
   ULTRA-SLEEK GLASSMORPHIC MODAL & ENQUIRY FORM THEME STYLES
   ========================================================================== */
.theme-modal-card {
    background: linear-gradient(145deg, #051d31 0%, #03111f 100%) !important;
    border: 1px solid rgba(62, 174, 238, 0.4) !important;
    border-radius: 20px !important;
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.95), 0 0 35px rgba(41, 182, 255, 0.25) !important;
    color: #ffffff !important;
    overflow: hidden !important;
    position: relative !important;
    padding: 40px 40px 36px !important;
}

.btn-modal-close {
    position: absolute !important;
    top: 24px !important;
    right: 24px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    color: #ffffff !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 50 !important;
}

.btn-modal-close:hover {
    background: rgba(41, 182, 255, 0.25) !important;
    border-color: #29b6ff !important;
    color: #ffffff !important;
    box-shadow: 0 0 15px rgba(41, 182, 255, 0.5) !important;
    transform: rotate(90deg) scale(1.05) !important;
}

.deal-badge-pill {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    white-space: nowrap !important;
    background: rgba(41, 182, 255, 0.12) !important;
    border: 1px solid rgba(41, 182, 255, 0.35) !important;
    color: #29b6ff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.8px !important;
    padding: 6px 14px !important;
    border-radius: 50px !important;
    box-shadow: 0 0 12px rgba(41, 182, 255, 0.15) !important;
    line-height: 1 !important;
}

.deal-badge-pill svg {
    display: inline-block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    width: 14px !important;
    height: 14px !important;
}

.deal-badge-pill span {
    display: inline-block !important;
    vertical-align: middle !important;
    line-height: 1 !important;
}

.theme-field-group {
    margin-bottom: 26px !important;
}

.theme-field-label {
    display: block !important;
    color: #8fa9ba !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    margin-bottom: 10px !important;
}

.theme-field-input {
    background: rgba(3, 18, 32, 0.9) !important;
    border: 1px solid rgba(150, 191, 219, 0.25) !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    padding: 13px 16px !important;
    font-size: 14px !important;
    outline: none !important;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4) !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    width: 100% !important;
}

.theme-field-input::placeholder {
    color: #55758c !important;
}

.theme-field-input:focus {
    border-color: #29b6ff !important;
    box-shadow: 0 0 15px rgba(41, 182, 255, 0.35), inset 0 2px 4px rgba(0, 0, 0, 0.2) !important;
    background: rgba(5, 28, 48, 0.95) !important;
    color: #ffffff !important;
}

.btn-theme-submit {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    white-space: nowrap !important;
    width: 100% !important;
    min-height: 52px !important;
    padding: 14px 28px !important;
    background: linear-gradient(135deg, #f7b128 0%, #e08e00 100%) !important;
    color: #03111f !important;
    border: none !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    font-size: 15.5px !important;
    letter-spacing: 0.3px !important;
    box-shadow: 0 8px 25px rgba(247, 177, 40, 0.35) !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    line-height: 1 !important;
}

.btn-theme-submit svg {
    display: inline-block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
    width: 18px !important;
    height: 18px !important;
}

.btn-theme-submit span {
    display: inline-block !important;
    vertical-align: middle !important;
    line-height: 1 !important;
}

.btn-theme-submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 30px rgba(247, 177, 40, 0.55) !important;
    filter: brightness(1.08) !important;
}

/* ==========================================================================
   COMPREHENSIVE RESPONSIVE DESIGN AUDIT & BREAKPOINT RULES
   ========================================================================== */

/* Tablet & Mobile Devices (max-width: 991px) */
@media (max-width: 991px) {
    /* Navbar Mobile Adaptation */
    header nav, .account {
        display: none !important;
    }

    .hamburger-menu {
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        width: 30px !important;
        height: 22px !important;
        cursor: pointer !important;
        z-index: 10001 !important;
    }

    .hamburger-menu .bar {
        width: 100% !important;
        height: 3px !important;
        background-color: #29b6ff !important;
        border-radius: 3px !important;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .hamburger-menu.active .bar-1 {
        transform: translateY(9.5px) rotate(45deg) !important;
    }
    .hamburger-menu.active .bar-2 {
        opacity: 0 !important;
    }
    .hamburger-menu.active .bar-3 {
        transform: translateY(-9.5px) rotate(-45deg) !important;
    }

    .mobile-menu-wrap {
        display: block !important;
        position: fixed !important;
        top: 75px !important;
        left: 0 !important;
        right: 0 !important;
        background: linear-gradient(180deg, rgba(3, 17, 31, 0.98), rgba(2, 12, 23, 0.99)) !important;
        border-bottom: 1px solid rgba(62, 174, 238, 0.35) !important;
        box-shadow: 0 15px 40px rgba(0, 0, 0, 0.9) !important;
        backdrop-filter: blur(16px) !important;
        padding: 24px 20px !important;
        z-index: 10000 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transform: translateY(-15px) !important;
        transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .mobile-menu-wrap.active, .mobile-menu-wrap.open {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateY(0) !important;
    }

    .menu_item_mob a {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 12px 16px !important;
        color: #ffffff !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        text-decoration: none !important;
        border-radius: 10px !important;
        transition: all 0.2s ease !important;
        margin-bottom: 6px !important;
    }

    .menu_item_mob a:hover, .menu_item_mob.active a {
        background: rgba(41, 182, 255, 0.15) !important;
        color: #29b6ff !important;
    }

    .btn-mobile-signin {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        background: linear-gradient(135deg, #f7b128 0%, #e08e00 100%) !important;
        color: #03111f !important;
        font-weight: 700 !important;
        padding: 12px 20px !important;
        border-radius: 10px !important;
        border: none !important;
        font-size: 15px !important;
        margin-top: 10px !important;
        cursor: pointer !important;
    }

    /* Form Wrap & Hero Container */
    .form-wrap {
        padding: 24px 20px 20px !important;
    }

    .service-tabs {
        overflow-x: auto !important;
        white-space: nowrap !important;
        -webkit-overflow-scrolling: touch !important;
        padding-bottom: 6px !important;
        margin-bottom: 20px !important;
    }

    .service-tabs button {
        padding: 10px 16px !important;
        font-size: 13px !important;
    }

    .form-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 14px !important;
    }

    #swapAirports {
        top: 28px !important;
        transform: translate(-50%, -50%) rotate(90deg) !important;
    }

    .advanced-panel {
        grid-template-columns: 1fr 1fr !important;
        gap: 16px !important;
    }

    .advanced-panel-wrapper {
        width: 100% !important;
        margin: 0 !important;
    }

    /* Flash Deals Grid */
    .deals .grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 16px !important;
    }

    .deals article.featured {
        grid-column: span 2 !important;
    }

    /* Popular Destinations Grid */
    .destination-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 16px !important;
    }

    /* Attraction Strip */
    .attraction-strip {
        grid-template-columns: 1fr 1fr !important;
        gap: 16px !important;
    }
}

/* Mobile Devices (max-width: 767px) */
@media (max-width: 767px) {
    .brand img, .brand-logo {
        max-height: 38px !important;
    }

    .search-line {
        flex-wrap: wrap !important;
        gap: 12px 18px !important;
    }

    .search-line .radios {
        width: 100% !important;
        justify-content: flex-start !important;
        margin-bottom: 6px !important;
    }

    .form-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .field-block {
        width: 100% !important;
    }

    .search-action button.search-btn-theme {
        width: 100% !important;
        min-height: 52px !important;
    }

    .advanced-panel {
        grid-template-columns: 1fr !important;
        gap: 18px !important;
    }

    /* Flash Deals Grid 1-column on mobile */
    .deals .grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .deals article.featured {
        grid-column: span 1 !important;
        height: 220px !important;
    }

    .deals article {
        height: 200px !important;
    }

    .destination-grid, .attraction-strip {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    /* Revalidated Flight Results Page */
    .booking_header .header_panel {
        flex-direction: column !important;
        gap: 12px !important;
        text-align: center !important;
    }

    .booking_header .col-8, .booking_header .col-4 {
        width: 100% !important;
    }

    .flight-result-item .card-body .row {
        flex-direction: column !important;
        gap: 16px !important;
    }

    .flight-result-item .col-12, .flight-result-item .col-9, .flight-result-item .col-3 {
        width: 100% !important;
        text-align: center !important;
    }

    .flight-result-item .info-block.text-end {
        text-align: center !important;
    }
}

/* Extra Small Phones (max-width: 576px) */
@media (max-width: 576px) {
    .theme-modal-overlay {
        padding: 15px 10px !important;
    }

    .theme-modal-dialog {
        max-width: calc(100% - 20px) !important;
        margin: 15px auto !important;
    }

    .theme-modal-card {
        padding: 30px 20px 24px !important;
        border-radius: 16px !important;
    }

    .modal-header-custom h3#modalDealTitle {
        font-size: 20px !important;
    }

    .btn-modal-close {
        top: 18px !important;
        right: 18px !important;
        width: 32px !important;
        height: 32px !important;
    }

    .theme-modal-form .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .theme-modal-form .col-md-6 {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .btn-theme-submit {
        font-size: 14px !important;
        padding: 12px 18px !important;
    }
}

/* ==========================================================================
   ULTRA-SLEEK DARK GLASSMORPHIC JQUERY UI DATEPICKER THEME
   ========================================================================== */
#ui-datepicker-div, .ui-datepicker {
    width: 320px !important;
    padding: 16px !important;
    background: linear-gradient(145deg, #051d31 0%, #03111f 100%) !important;
    border: 1px solid rgba(62, 174, 238, 0.4) !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.95), 0 0 30px rgba(41, 182, 255, 0.25) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    font-family: inherit !important;
    color: #ffffff !important;
    z-index: 10560 !important; /* Always sit above modal backdrop (10555) */
    box-sizing: border-box !important;
}

/* Multi-month dual calendar width override for hero datepicker */
#ui-datepicker-div.ui-datepicker-multi {
    width: 620px !important;
}

/* Datepicker Header (Month/Year & Prev/Next Nav) */
.ui-datepicker .ui-datepicker-header {
    background: rgba(4, 22, 38, 0.8) !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    border-radius: 12px !important;
    padding: 0 45px !important;
    position: relative !important;
    margin-bottom: 16px !important;
    height: 44px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

.ui-datepicker .ui-datepicker-title {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    text-align: center !important;
    color: #ffca58 !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    letter-spacing: 0.3px !important;
    width: 100% !important;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 8px !important;
    background: rgba(41, 182, 255, 0.12) !important;
    border: 1px solid rgba(41, 182, 255, 0.35) !important;
    color: #29b6ff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

.ui-datepicker .ui-datepicker-prev {
    left: 7px !important;
    right: auto !important;
}

.ui-datepicker .ui-datepicker-next {
    right: 7px !important;
    left: auto !important;
}

.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
    background: rgba(41, 182, 255, 0.25) !important;
    border-color: #29b6ff !important;
    color: #ffffff !important;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.4) !important;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: none !important; /* Hide default sprite icons */
}

.ui-datepicker .ui-datepicker-prev::after {
    content: "‹" !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: #29b6ff !important;
    display: block !important;
}

.ui-datepicker .ui-datepicker-next::after {
    content: "›" !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: #29b6ff !important;
    display: block !important;
}

/* Calendar Table & Cells */
.ui-datepicker table.ui-datepicker-calendar {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 4px !important;
    margin: 0 !important;
}

.ui-datepicker table.ui-datepicker-calendar th {
    padding: 6px 0 !important;
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #29b6ff !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border: none !important;
}

.ui-datepicker table.ui-datepicker-calendar th:first-child,
.ui-datepicker table.ui-datepicker-calendar th:last-child {
    color: #ffca58 !important; /* Weekend SU & SA header in Gold */
}

.ui-datepicker table.ui-datepicker-calendar td {
    padding: 0 !important;
    text-align: center !important;
    border: none !important;
    background: transparent !important;
}

.ui-datepicker table.ui-datepicker-calendar td a,
.ui-datepicker table.ui-datepicker-calendar td span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    margin: 0 auto !important;
    border-radius: 8px !important;
    background: rgba(4, 22, 38, 0.7) !important;
    border: 1px solid rgba(150, 191, 219, 0.2) !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Hover Day Cell */
.ui-datepicker table.ui-datepicker-calendar td a:hover {
    background: rgba(41, 182, 255, 0.25) !important;
    border-color: #29b6ff !important;
    color: #ffffff !important;
    box-shadow: 0 0 12px rgba(41, 182, 255, 0.4) !important;
    transform: scale(1.08) !important;
}

/* Today Day Cell */
.ui-datepicker table.ui-datepicker-calendar td.ui-datepicker-today a {
    border-color: #29b6ff !important;
    color: #29b6ff !important;
    font-weight: 700 !important;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.3) !important;
}

/* Selected Active Day Cell */
.ui-datepicker table.ui-datepicker-calendar td.ui-datepicker-current-day a,
.ui-datepicker table.ui-datepicker-calendar td a.ui-state-active {
    background: linear-gradient(135deg, #29b6ff 0%, #0088cc 100%) !important;
    border-color: #29b6ff !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    box-shadow: 0 0 15px rgba(41, 182, 255, 0.6) !important;
}

/* Disabled / Unselectable Days */
.ui-datepicker table.ui-datepicker-calendar td.ui-datepicker-unselectable span,
.ui-datepicker table.ui-datepicker-calendar td.ui-state-disabled span {
    background: transparent !important;
    border-color: transparent !important;
    color: #3b5466 !important;
    opacity: 0.4 !important;
    cursor: not-allowed !important;
}

/* ==========================================================================
   GLOBAL RESPONSIVE SYSTEM FOR ALL DEVICES & SCREENS
   ========================================================================== */

/* Tablet Breakpoint (769px to 1024px) */
@media (max-width: 1024px) {
    .search-card {
        width: calc(100% - 32px) !important;
        margin: 20px auto 0 !important;
        padding: 22px 20px !important;
    }
    .service-tabs {
        width: calc(100% - 32px) !important;
        margin: 20px auto 0 !important;
        display: flex !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
    }
    .service-tabs::-webkit-scrollbar {
        display: none;
    }
    .service-tabs button {
        flex-shrink: 0 !important;
        min-width: 140px !important;
    }
    .fields.six, .fields.five, .fields {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }
    .advanced {
        width: calc(100% + 40px) !important;
        margin: 16px -20px 0 !important;
    }
    .advanced-panel {
        grid-template-columns: 1fr 1fr !important;
        width: calc(100% + 40px) !important;
        margin: 0 -20px !important;
        padding: 18px !important;
        gap: 16px !important;
    }
    .advanced-panel > div {
        border-right: none !important;
        border-bottom: 1px solid rgba(62, 174, 238, 0.25) !important;
        padding-bottom: 12px !important;
    }
    .advanced-panel > div:last-child {
        border-bottom: none !important;
    }
}

/* Mobile Breakpoint (<= 768px) */
@media (max-width: 768px) {
    /* Top Tabs */
    .service-tabs {
        width: calc(100% - 20px) !important;
        margin: 14px auto 0 !important;
        display: flex !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch !important;
        border-radius: 8px !important;
    }
    .service-tabs button {
        flex-shrink: 0 !important;
        min-width: 125px !important;
        padding: 10px 14px !important;
        font-size: 12.5px !important;
    }

    /* Main Search Card */
    .search-card {
        width: calc(100% - 20px) !important;
        margin: 0 auto !important;
        padding: 18px 14px !important;
        border-radius: 8px !important;
    }
    .search-card h4 {
        font-size: 13.5px !important;
        letter-spacing: 0.8px !important;
        margin-bottom: 12px !important;
    }

    /* Trip Type Buttons */
    .trip-types {
        display: flex !important;
        gap: 6px !important;
        flex-wrap: wrap !important;
        margin-bottom: 16px !important;
    }
    .trip-types button {
        flex: 1 1 calc(33.33% - 6px) !important;
        min-width: 85px !important;
        padding: 8px 6px !important;
        font-size: 12px !important;
        justify-content: center !important;
        text-align: center !important;
    }

    /* Fields: Stack cleanly in single full-width column */
    .fields.six, .fields.five, .fields, .fields.attraction {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
    .field small {
        font-size: 10.5px !important;
        margin-bottom: 4px !important;
    }
    .field > span {
        height: 48px !important;
        padding: 0 10px !important;
    }
    .sleek-swap-btn {
        right: 10px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 30px !important;
        height: 30px !important;
        font-size: 13px !important;
    }

    /* Search Line & Checkboxes */
    .search-line {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 14px !important;
        margin-top: 16px !important;
        text-align: left !important;
    }
    .search-checkboxes {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        width: 100% !important;
        gap: 10px !important;
        text-align: left !important;
    }
    .custom-theme-checkbox {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        align-self: flex-start !important;
        text-align: left !important;
        margin: 0 !important;
    }
    .gold {
        width: 100% !important;
        height: 48px !important;
        font-size: 15px !important;
    }

    /* Advanced Options Panel */
    .advanced {
        width: calc(100% + 28px) !important;
        margin: 16px -14px 0 !important;
        padding: 12px 14px !important;
        border-radius: 0 !important;
    }
    .advanced-panel {
        grid-template-columns: 1fr !important;
        width: calc(100% + 28px) !important;
        margin: 0 -14px !important;
        padding: 14px !important;
        gap: 14px !important;
    }
    .advanced-panel > div {
        border-right: none !important;
        border-bottom: 1px solid rgba(62, 174, 238, 0.2) !important;
        padding: 0 0 12px 0 !important;
    }
    .advanced-panel > div:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }
    .advanced-panel-group {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    .advanced-panel .pill-btn,
    .advanced-panel .time-card {
        flex: 1 1 calc(50% - 6px) !important;
        min-width: 90px !important;
        padding: 8px 6px !important;
        font-size: 11.5px !important;
        text-align: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
    }

    /* Deals cards */
    .deals {
        margin: 24px 10px 30px !important;
    }
    .deal-cards, .deal-cards.four {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
}










