/*! 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;
}

/* Elegant Theme-Matched Scrollbar for All Dropdowns */
.select2-results__options,
.select2-results > .select2-results__options,
.select2-dropdown,
.traveller-popover,
.airport-dropdown-list,
.custom-scrollbar,
select {
    scrollbar-width: thin !important;
    scrollbar-color: #1e527d #061a2b !important;
}

.select2-results__options::-webkit-scrollbar,
.select2-results > .select2-results__options::-webkit-scrollbar,
.select2-dropdown::-webkit-scrollbar,
.traveller-popover::-webkit-scrollbar,
.airport-dropdown-list::-webkit-scrollbar,
.custom-scrollbar::-webkit-scrollbar,
select::-webkit-scrollbar {
    width: 6px !important;
    height: 6px !important;
}

.select2-results__options::-webkit-scrollbar-track,
.select2-results > .select2-results__options::-webkit-scrollbar-track,
.select2-dropdown::-webkit-scrollbar-track,
.traveller-popover::-webkit-scrollbar-track,
.airport-dropdown-list::-webkit-scrollbar-track,
.custom-scrollbar::-webkit-scrollbar-track,
select::-webkit-scrollbar-track {
    background: #061a2b !important;
    border-radius: 4px !important;
}

.select2-results__options::-webkit-scrollbar-thumb,
.select2-results > .select2-results__options::-webkit-scrollbar-thumb,
.select2-dropdown::-webkit-scrollbar-thumb,
.traveller-popover::-webkit-scrollbar-thumb,
.airport-dropdown-list::-webkit-scrollbar-thumb,
.custom-scrollbar::-webkit-scrollbar-thumb,
select::-webkit-scrollbar-thumb {
    background: #1e527d !important;
    border-radius: 4px !important;
    border: 1px solid #061a2b !important;
}

.select2-results__options::-webkit-scrollbar-thumb:hover,
.select2-results > .select2-results__options::-webkit-scrollbar-thumb:hover,
.select2-dropdown::-webkit-scrollbar-thumb:hover,
.traveller-popover::-webkit-scrollbar-thumb:hover,
.airport-dropdown-list::-webkit-scrollbar-thumb:hover,
.custom-scrollbar::-webkit-scrollbar-thumb:hover,
select::-webkit-scrollbar-thumb:hover {
    background: #29b6ff !important;
}
/* ==========================================================================
   MINIMAL STANDARD CALENDAR (Responsive across Desktop, Tablet & Mobile)
   ========================================================================== */
#ui-datepicker-div,
.ui-datepicker,
#ui-datepicker-div.ui-datepicker {
    background: #081d33 !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    border-radius: 12px !important;
    box-shadow: 0 16px 45px rgba(0, 0, 0, 0.85) !important;
    padding: 14px !important;
    z-index: 9999999 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
    color: #ffffff !important;
    width: 295px !important;
    max-width: calc(100vw - 24px) !important;
    box-sizing: border-box !important;
}

#ui-datepicker-div.ui-datepicker-multi,
#ui-datepicker-div.ui-datepicker-multi-2 {
    width: auto !important;
    max-width: calc(100vw - 20px) !important;
}

#ui-datepicker-div .ui-datepicker-group {
    width: 260px !important;
    float: left !important;
    margin-right: 15px !important;
    box-sizing: border-box !important;
}

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

@media (max-width: 768px) {
    #ui-datepicker-div,
    .ui-datepicker,
    #ui-datepicker-div.ui-datepicker,
    #ui-datepicker-div.ui-datepicker-mobile-modal {
        position: fixed !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: min(340px, calc(100vw - 28px)) !important;
        max-width: calc(100vw - 28px) !important;
        margin: 0 !important;
        z-index: 9999999 !important;
        box-shadow: 0 20px 60px rgba(0, 0, 0, 0.95), 0 0 0 9999px rgba(2, 12, 23, 0.75) !important;
        backdrop-filter: blur(8px) !important;
        -webkit-backdrop-filter: blur(8px) !important;
        border: 1px solid rgba(62, 174, 238, 0.5) !important;
        border-radius: 16px !important;
        padding: 16px !important;
    }

    #ui-datepicker-div .ui-datepicker-group {
        width: 100% !important;
        float: none !important;
        margin-right: 0 !important;
        margin-bottom: 12px !important;
    }
}

/* Minimal Header & Month Title */
#ui-datepicker-div .ui-datepicker-header {
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid rgba(62, 174, 238, 0.18) !important;
    border-radius: 0 !important;
    margin-bottom: 10px !important;
    position: relative !important;
    padding: 4px 0 10px 0 !important;
    min-height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}

#ui-datepicker-div .ui-datepicker-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    text-align: center !important;
    margin: 0 !important;
    letter-spacing: 0.3px !important;
}

/* Minimal Navigation Prev/Next Arrows */
#ui-datepicker-div .ui-datepicker-prev,
#ui-datepicker-div .ui-datepicker-next {
    position: absolute !important;
    top: 2px !important;
    width: 26px !important;
    height: 26px !important;
    border-radius: 6px !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.05) !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.2s ease !important;
}

#ui-datepicker-div .ui-datepicker-prev {
    left: 0 !important;
}

#ui-datepicker-div .ui-datepicker-next {
    right: 0 !important;
}

#ui-datepicker-div .ui-datepicker-prev:hover,
#ui-datepicker-div .ui-datepicker-next:hover {
    background: rgba(41, 182, 255, 0.2) !important;
    border-color: #29b6ff !important;
}

#ui-datepicker-div .ui-datepicker-prev .ui-icon,
#ui-datepicker-div .ui-datepicker-next .ui-icon,
#ui-datepicker-div .ui-icon {
    display: none !important;
}

#ui-datepicker-div .ui-datepicker-prev::after {
    content: '' !important;
    display: block !important;
    width: 6px !important;
    height: 6px !important;
    border-left: 2px solid #29b6ff !important;
    border-bottom: 2px solid #29b6ff !important;
    transform: rotate(45deg) !important;
    margin-left: 2px !important;
}

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

/* Minimal Calendar Grid */
#ui-datepicker-div .ui-datepicker-calendar {
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: separate !important;
    border-spacing: 2px !important;
    margin: 0 !important;
}

#ui-datepicker-div .ui-datepicker-calendar th {
    color: #8fa9ba !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    border: none !important;
    text-align: center !important;
    padding: 4px 0 !important;
}

#ui-datepicker-div .ui-datepicker-calendar td {
    padding: 1px !important;
    border: none !important;
    background: transparent !important;
    text-align: center !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: none !important;
    border-radius: 6px !important;
    width: 32px !important;
    height: 32px !important;
    line-height: 32px !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #e1ecf4 !important;
    margin: 0 auto !important;
    display: block !important;
    padding: 0 !important;
    background: transparent !important;
    transition: all 0.15s ease !important;
}

/* Day Hover 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.18) !important;
    color: #29b6ff !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: #ed9c14 !important;
    color: #071522 !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
    box-shadow: 0 2px 8px rgba(237, 156, 20, 0.4) !important;
}

/* Today's Date Highlight (if not selected) */
#ui-datepicker-div .ui-datepicker-calendar td a.ui-state-highlight:not(.ui-state-active) {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffca58 !important;
    font-weight: 600 !important;
}

/* Disabled/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.18) !important;
    background: transparent !important;
    opacity: 0.4 !important;
}

#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: 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;
}
@media (max-width: 768px) {
    .sleek-swap-btn {
        right: 12px !important;
        top: 50% !important;
        transform: translateY(-50%) 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;
    align-items: center;
    gap: 20px;
    height: 100%;
}

@media (max-width: 992px) {
    header nav,
    header .account,
    .account,
    .lang-selector-container {
        display: none !important;
    }
    header .hamburger-menu,
    .hamburger-menu {
        display: flex !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: 6px 0 !important;
    text-decoration: none !important;
}

header .brand-logo {
    height: 42px !important;
    max-height: 44px !important;
    width: auto !important;
    object-fit: contain !important;
    display: block !important;
    transition: transform 0.2s ease !important;
}

header .brand-logo:hover {
    transform: scale(1.02) !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: 1.35fr 1.35fr 1fr 1.15fr 1fr;
}

.fields.six.trip-return {
    grid-template-columns: 1.25fr 1.25fr 1fr 1fr 1.1fr 1fr;
}

.fields.five {
    grid-template-columns: 1.35fr 1.35fr 1fr 1.15fr 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 rgba(62, 174, 238, 0.3) !important;
    background: linear-gradient(90deg, #082643, #06182c) !important;
    border-radius: 8px !important;
    width: 100% !important;
    margin: 20px 0 0 !important;
    padding: 12px 18px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
}

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

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

.advanced-panel {
    width: 100% !important;
    margin: 10px 0 0 !important;
    border-radius: 10px !important;
    border: 1px solid rgba(62, 174, 238, 0.28) !important;
    background: linear-gradient(135deg, #031424, #051a2e) !important;
    padding: 18px 22px !important;
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: 1.15fr 0.9fr 1.3fr 1.1fr !important;
    gap: 16px !important;
    box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.4) !important;
}
.advanced-panel > div {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 16px 0 0 !important;
    border-right: 1px solid rgba(62, 174, 238, 0.18) !important;
    box-sizing: border-box !important;
}
.advanced-panel > div:last-child {
    border-right: none !important;
    padding-right: 0 !important;
}
.advanced-panel b {
    color: #65c5ff !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.6px !important;
    text-transform: uppercase !important;
    margin-bottom: 2px !important;
    display: block !important;
}
.advanced-panel-group {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    align-items: center !important;
}
.advanced-panel .pill-btn,
.advanced-panel .time-card {
    color: #d0e6f7 !important;
    background: #082138 !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    border-radius: 6px !important;
    padding: 6px 12px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    user-select: none !important;
    transition: all 0.2s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1.2 !important;
}
.advanced-panel .pill-btn:hover,
.advanced-panel .time-card:hover {
    background: #0e3458 !important;
    border-color: #29b6ff !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}
.advanced-panel .pill-btn.selected,
.advanced-panel .pill-btn.active,
.advanced-panel .time-card.selected,
.advanced-panel .time-card.active {
    background: linear-gradient(135deg, #29b6ff, #008be3) !important;
    border-color: #29b6ff !important;
    color: #041626 !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 10px rgba(41, 182, 255, 0.4) !important;
}
.airline-dropdown {
    height: 36px !important;
    background: #082138 !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    border-radius: 6px !important;
    color: #ffffff !important;
    padding: 0 10px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    outline: none !important;
    cursor: pointer !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s ease !important;
}
.airline-dropdown:focus,
.airline-dropdown:hover {
    border-color: #29b6ff !important;
    background: #0b2c4c !important;
}
.airline-dropdown option {
    background: #041626 !important;
    color: #ffffff !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 - Premium High-Definition Badge Styling */
.airline-logo-badge,
.airline-logo-img,
.custom_card img[src*="airlines"] {
    width: 46px !important;
    height: 46px !important;
    max-width: 46px !important;
    max-height: 46px !important;
    object-fit: contain !important;
    border-radius: 10px !important;
    background: transparent !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.45)) !important;
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s ease !important;
    display: inline-block !important;
}

.custom_card:hover .airline-logo-badge,
.custom_card:hover .airline-logo-img,
.custom_card:hover img[src*="airlines"] {
    transform: translateY(-2px) scale(1.06) !important;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.55), 0 0 12px rgba(41, 182, 255, 0.25) !important;
}

/* Header Brand Logo Neon Glow & Crisp Contrast Enhancements */
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;
}

/* ==========================================================================
   Top Flight Quick-Filter & Sort Tabs Bar (Cheapest, Best, Quickest, Top Rated)
   ========================================================================== */
.top-flight-filter-bar {
    background: linear-gradient(135deg, rgba(5, 29, 49, 0.96), rgba(3, 17, 31, 0.98)) !important;
    border: 1px solid rgba(62, 174, 238, 0.35) !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.45) !important;
    backdrop-filter: blur(8px) !important;
}

.filter-tabs-container {
    min-height: 64px;
}

.top-filter-tab {
    position: relative !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    padding: 12px 18px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

.top-filter-tab:hover {
    background: rgba(255, 255, 255, 0.05) !important;
}

.top-filter-tab.active {
    background: rgba(41, 182, 255, 0.08) !important;
}

.top-filter-tab .tab-title {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    line-height: 1.2 !important;
    letter-spacing: 0.2px !important;
}

.top-filter-tab.active .tab-title {
    color: #29b6ff !important;
}

.top-filter-tab .tab-subtitle {
    font-size: 12px !important;
    color: #8fa9ba !important;
    margin-top: 3px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
}

.top-filter-tab.active .tab-subtitle {
    color: #ffca58 !important;
    font-weight: 600 !important;
}

.top-filter-tab .active-indicator {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #29b6ff, #00d2ff);
    border-radius: 3px 3px 0 0;
    box-shadow: 0 0 10px rgba(41, 182, 255, 0.8);
}

.top-filter-tab.active .active-indicator {
    display: block !important;
}

.tab-divider {
    width: 1px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    margin: 8px 0 !important;
}

.info-tooltip-icon {
    display: inline-flex;
    align-items: center;
    color: #8fa9ba;
    transition: color 0.2s ease;
    cursor: help;
}

.info-tooltip-icon:hover {
    color: #29b6ff;
}

.top-sort-opt {
    color: #d1e2ee !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    transition: background 0.15s ease, color 0.15s ease !important;
}

.top-sort-opt:hover, .top-sort-opt.active {
    background: rgba(41, 182, 255, 0.2) !important;
    color: #ffffff !important;
}

/* Airline Comfort & Rating Badges on Flight Cards */
.airline-rating-tag {
    background: rgba(255, 202, 88, 0.15) !important;
    border: 1px solid rgba(255, 202, 88, 0.4) !important;
    color: #ffca58 !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    border-radius: 4px !important;
    padding: 2px 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
}

/* Flight Details Drawer Timeline & Styling */
.flight-details-drawer .segment-block {
    background: rgba(8, 30, 52, 0.85) !important;
    border: 1px solid rgba(147, 190, 217, 0.2) !important;
    border-radius: 8px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.flight-details-drawer .segment-block:hover {
    border-color: rgba(41, 182, 255, 0.4) !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
}

.equipment-badge {
    background: rgba(41, 182, 255, 0.12) !important;
    border: 1px solid rgba(41, 182, 255, 0.3) !important;
    color: #6ed0ff !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    padding: 3px 7px !important;
    border-radius: 4px !important;
}

.layover-notice {
    background: rgba(237, 156, 20, 0.12) !important;
    border: 1px dashed rgba(255, 202, 88, 0.5) !important;
    color: #ffca58 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
}

@media (max-width: 768px) {
    .filter-tabs-container {
        flex-direction: column !important;
    }
    .top-filter-tab {
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
        padding: 10px 14px !important;
    }
    .top-filter-tab .active-indicator {
        left: 0;
        bottom: 0;
        top: 0;
        right: auto;
        width: 4px;
        height: 100%;
        border-radius: 0 3px 3px 0;
    }
}

/* =========================================================
   FLASH DEAL ENQUIRY MODAL STYLES
   ========================================================= */
.theme-modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(2, 12, 23, 0.88) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    z-index: 99999 !important;
    overflow-y: auto;
    padding: 40px 15px;
    box-sizing: border-box;
}

.theme-modal-dialog {
    max-width: 580px;
    margin: 30px auto;
    position: relative;
    box-sizing: border-box;
}

.theme-modal-card {
    background: linear-gradient(145deg, #072238 0%, #031424 100%) !important;
    border: 1px solid rgba(41, 182, 255, 0.35) !important;
    border-radius: 16px !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.9), 0 0 30px rgba(41, 182, 255, 0.15) !important;
    color: #ffffff !important;
    overflow: hidden;
    position: relative;
    padding: 32px 32px 28px !important;
    box-sizing: border-box;
}

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

.btn-modal-close:hover {
    background: rgba(255, 75, 75, 0.25) !important;
    border-color: #ff5555 !important;
    color: #ff5555 !important;
    transform: rotate(90deg) scale(1.05) !important;
}

.deal-badge-pill {
    background: rgba(255, 202, 88, 0.12) !important;
    border: 1px solid rgba(255, 202, 88, 0.35) !important;
    color: #ffca58 !important;
    padding: 5px 14px !important;
    border-radius: 20px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-transform: uppercase !important;
}

.modal-header-custom {
    padding-right: 40px !important;
    margin-bottom: 24px !important;
}

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

@media (max-width: 600px) {
    .modal-grid-2 {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }
}

.theme-field-group {
    margin-bottom: 16px !important;
    display: flex !important;
    flex-direction: column !important;
}

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

.theme-field-input {
    display: block !important;
    width: 100% !important;
    background: #06192b !important;
    border: 1px solid #1c4b7a !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    font-size: 14px !important;
    padding: 12px 16px !important;
    outline: none !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    height: auto !important;
    line-height: 1.5 !important;
}

.theme-field-input:focus {
    border-color: #29b6ff !important;
    box-shadow: 0 0 0 3px rgba(41, 182, 255, 0.22) !important;
    background: #08223a !important;
    color: #ffffff !important;
}

.theme-field-input::placeholder {
    color: #5c7890 !important;
    font-size: 13px !important;
}

textarea.theme-field-input {
    min-height: 80px !important;
    resize: vertical !important;
}

.btn-theme-submit {
    width: 100% !important;
    background: linear-gradient(135deg, #ed9c14 0%, #ffd064 100%) !important;
    color: #071522 !important;
    border: 1px solid #ffca58 !important;
    border-radius: 8px !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 15px rgba(237, 156, 20, 0.35) !important;
    transition: all 0.25s ease !important;
    margin-top: 8px !important;
}

.btn-theme-submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 22px rgba(237, 156, 20, 0.5) !important;
    color: #000000 !important;
}

.btn-theme-submit:active {
    transform: translateY(0) !important;
}

/* =========================================================
   SECTION TITLE (SINGLE ROW MIDDLE ALIGNMENT)
   ========================================================= */
.section-title {
    align-items: center !important;
    gap: 16px !important;
    display: flex !important;
    position: relative !important;
}

.section-title h3 {
    color: var(--gold, #f6b22c) !important;
    margin: 0 !important;
    font-size: 21px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.section-title h3 svg {
    display: inline-block !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
    color: #ffca58 !important;
    margin: 0 !important;
}

.section-title:after {
    content: "" !important;
    background: linear-gradient(90deg, rgba(247, 177, 37, 0.4), transparent) !important;
    flex: 1 !important;
    height: 1px !important;
    display: block !important;
    margin: 0 !important;
}

.section-title button {
    color: var(--gold, #f6b22c) !important;
    background: transparent !important;
    border: 0 !important;
    order: 3 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
}

/* Deal Modal Alert Messages (Error & Success) */
#dealModalAlert.alert-danger {
    background: rgba(231, 76, 60, 0.16) !important;
    border: 1px solid #e74c3c !important;
    color: #ff8585 !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    display: block !important;
    box-shadow: 0 4px 15px rgba(231, 76, 60, 0.2) !important;
}

#dealModalAlert.alert-success {
    background: rgba(46, 204, 113, 0.16) !important;
    border: 1px solid #2ecc71 !important;
    color: #2ecc71 !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    display: block !important;
    box-shadow: 0 4px 15px rgba(46, 204, 113, 0.2) !important;
}

/* =========================================================
   LUXURY ELEGANT DEAL CARDS (SILKY SMOOTH HOVER EFFECT)
   ========================================================= */
.deal-cards {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    margin-top: 22px !important;
    display: grid !important;
}

/* Override any default .deal-cards article rules */
.deal-cards article,
.deal-cards article.theme-deal-card,
.theme-deal-card {
    height: auto !important;
    min-height: 445px !important;
    max-height: none !important;
    padding: 0 !important;
    background: #041424 !important;
    border: 1px solid rgba(62, 174, 238, 0.25) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    position: relative !important;
    cursor: pointer !important;
    will-change: transform, box-shadow, border-color !important;
    transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1), 
                box-shadow 0.55s cubic-bezier(0.25, 1, 0.5, 1), 
                border-color 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.65) !important;
    text-decoration: none !important;
}

.deal-cards article:hover,
.theme-deal-card:hover {
    transform: translateY(-8px) !important;
    border-color: rgba(246, 178, 44, 0.6) !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.9), 0 0 35px rgba(246, 178, 44, 0.25) !important;
}

/* Image Viewport (220px tall) */
.deal-card-image-wrap {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
    width: 100% !important;
    position: relative !important;
    overflow: hidden !important;
    background: #020a12 !important;
    flex-shrink: 0 !important;
}

.deal-card-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    will-change: transform !important;
    transition: transform 0.85s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.theme-deal-card:hover .deal-card-img {
    transform: scale(1.06) !important;
}

.deal-card-overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(180deg, rgba(2, 13, 23, 0.2) 0%, rgba(2, 13, 23, 0) 40%, rgba(4, 20, 36, 0.95) 100%) !important;
    pointer-events: none !important;
    transition: opacity 0.55s ease !important;
}

/* Badges floating on photo */
.deal-card-badges {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    right: 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    z-index: 3 !important;
    pointer-events: none !important;
    transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.theme-deal-card:hover .deal-card-badges {
    transform: translateY(-1px) !important;
}

.deal-badge-country {
    background: rgba(3, 16, 28, 0.88) !important;
    border: 1px solid #ffca58 !important;
    color: #ffca58 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1.2px !important;
    padding: 5px 12px !important;
    border-radius: 20px !important;
    backdrop-filter: blur(8px) !important;
    text-transform: uppercase !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.4s ease !important;
}

.theme-deal-card:hover .deal-badge-country {
    background: rgba(3, 16, 28, 0.95) !important;
    box-shadow: 0 4px 15px rgba(255, 202, 88, 0.4) !important;
}

.deal-badge-tag {
    background: rgba(14, 45, 74, 0.9) !important;
    border: 1px solid #29b6ff !important;
    color: #65c5ff !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.8px !important;
    padding: 5px 11px !important;
    border-radius: 20px !important;
    backdrop-filter: blur(8px) !important;
    text-transform: uppercase !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
    transition: all 0.4s ease !important;
}

.theme-deal-card:hover .deal-badge-tag {
    box-shadow: 0 4px 15px rgba(41, 182, 255, 0.4) !important;
}

/* Card Body Content */
.deal-card-body {
    padding: 18px 22px 20px 22px !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    justify-content: space-between !important;
    background: linear-gradient(180deg, #05192d 0%, #020d18 100%) !important;
    position: relative !important;
    z-index: 2 !important;
    transition: background 0.55s ease !important;
}

.theme-deal-card:hover .deal-card-body {
    background: linear-gradient(180deg, #062039 0%, #03111f 100%) !important;
}

/* Route Title */
.deal-route-title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 6px 0 !important;
}

.route-city {
    color: #ffffff !important;
    font-size: 17.5px !important;
    font-weight: 700 !important;
    letter-spacing: -0.2px !important;
    white-space: nowrap !important;
}

.route-plane-icon {
    flex-shrink: 0 !important;
    color: #f6b22c !important;
    transform: rotate(45deg) !important;
    transition: transform 0.55s cubic-bezier(0.25, 1, 0.5, 1), color 0.4s ease !important;
}

.theme-deal-card:hover .route-plane-icon {
    transform: rotate(55deg) scale(1.15) translateX(2px) !important;
    color: #ffd064 !important;
}

/* Deal Travel Dates Badge with Calendar Icon */
.deal-dates-tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #ffd875 !important;
    background: rgba(255, 202, 88, 0.1) !important;
    border: 1px solid rgba(255, 202, 88, 0.28) !important;
    border-radius: 6px !important;
    padding: 3px 9px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    letter-spacing: 0.2px !important;
    margin: 0 0 10px 0 !important;
    width: fit-content !important;
    transition: all 0.35s ease !important;
}

.deal-dates-tag svg {
    color: #ffca58 !important;
    flex-shrink: 0 !important;
    transition: transform 0.3s ease !important;
}

.theme-deal-card:hover .deal-dates-tag {
    background: rgba(255, 202, 88, 0.18) !important;
    border-color: rgba(255, 202, 88, 0.5) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 10px rgba(255, 202, 88, 0.2) !important;
}

.theme-deal-card:hover .deal-dates-tag svg {
    transform: scale(1.1);
}

/* Perks / Inclusions */
.deal-perks {
    color: #d1e2ee !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin: 0 0 16px 0 !important;
    line-height: 1.4 !important;
}

.perk-dot {
    color: #29b6ff !important;
    font-size: 10px !important;
}

/* Footer Price & Action Bar */
.deal-footer-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-top: auto !important;
    padding-top: 14px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.deal-price-block {
    display: flex !important;
    flex-direction: column !important;
}

.deal-price-label {
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #8fa9ba !important;
    letter-spacing: 0.8px !important;
    text-transform: uppercase !important;
    margin-bottom: 2px !important;
}

.deal-price-amount {
    color: #ffca58 !important;
    font-size: 26px !important;
    font-weight: 800 !important;
    letter-spacing: -0.5px !important;
    line-height: 1 !important;
    text-shadow: 0 0 15px rgba(255, 202, 88, 0.35) !important;
    transition: color 0.4s ease, text-shadow 0.4s ease !important;
}

.theme-deal-card:hover .deal-price-amount {
    color: #ffd875 !important;
    text-shadow: 0 0 20px rgba(255, 202, 88, 0.55) !important;
}

.btn-deal-claim {
    background: linear-gradient(135deg, #ed9c14 0%, #ffd064 100%) !important;
    color: #041422 !important;
    border: 1px solid #ffd064 !important;
    border-radius: 8px !important;
    padding: 9px 18px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.2px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    cursor: pointer !important;
    transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1), 
                box-shadow 0.45s cubic-bezier(0.25, 1, 0.5, 1), 
                filter 0.3s ease !important;
    box-shadow: 0 4px 15px rgba(237, 156, 20, 0.35) !important;
}

.btn-deal-claim svg {
    transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.theme-deal-card:hover .btn-deal-claim {
    transform: translateX(4px) !important;
    box-shadow: 0 6px 22px rgba(237, 156, 20, 0.6) !important;
    filter: brightness(1.04) !important;
    color: #000000 !important;
}

.theme-deal-card:hover .btn-deal-claim svg {
    transform: translateX(3px) !important;
}

@media (max-width: 992px) {
    .deal-cards {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 18px !important;
    }
}

@media (max-width: 600px) {
    .deal-cards {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .deal-cards article,
    .theme-deal-card {
        height: auto !important;
        min-height: 380px !important;
    }
    .deal-card-image-wrap {
        height: 190px !important;
        min-height: 190px !important;
        max-height: 190px !important;
    }
}

/* Gold Calendar Picker Icon for HTML5 Date Inputs across all devices */
input[type="date"] {
    color-scheme: dark;
    position: relative;
}
input[type="date"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ffca58' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px 16px;
    filter: drop-shadow(0 0 3px rgba(255, 202, 88, 0.6)) !important;
    opacity: 0.95 !important;
    padding: 4px;
    border-radius: 4px;
    transition: all 0.2s ease;
}
input[type="date"]::-webkit-calendar-picker-indicator:hover {
    opacity: 1 !important;
    filter: drop-shadow(0 0 6px rgba(255, 202, 88, 0.9)) !important;
    transform: scale(1.15);
}

/* Universal Center Alignment for All Loaders, Spinners & Modal Overlays */
.spinner-border,
.spinner-grow {
    display: inline-block;
    vertical-align: middle;
}
.modal-content.text-center .spinner-border,
.modal-content.text-center .spinner-grow,
.text-center > .spinner-border,
.text-center > .spinner-grow,
.loader-center .spinner-border,
.loader-center .spinner-grow {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.modal.loading-modal .modal-dialog,
.modal-dialog-centered.loader-dialog {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.modal.loading-modal .modal-content,
.loader-modal-content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}







