/*
 * Gotogate-style homepage theme. Loaded only by layouts/gtg.blade.php,
 * and every rule is scoped to body.gtg-home so no other page is affected.
 * The search form's layout is left alone: only its colours, card and button are restyled.
 */
.gtg-home {
    --gtg-black: #000;
    --gtg-header: #1e293b; /* soft dark slate-navy: dark like Gotogate's bar but not pure black */
    --gtg-text: #212121;
    --gtg-muted: #5f6368;
    --gtg-grey: #f5f5f5;
    --gtg-line: #e0e0e0;
    --gtg-cyan: #41d3ff;
    --gtg-cyan-hover: #1fc6f7;
    --gtg-link: #005a75;
    --gtg-icon: #1a8fd6;
    font-family: "Noto Sans", Arial, sans-serif;
    color: var(--gtg-text);
    background: #fff;
}
.gtg-home h1, .gtg-home h2, .gtg-home h3, .gtg-home h4,
.gtg-home p, .gtg-home a, .gtg-home li, .gtg-home button, .gtg-home input {
    font-family: "Noto Sans", Arial, sans-serif;
}

/* ---------------------------------------------------------------- Header: solid black bar */
.gtg-home .travel24-header,
.gtg-home.page-search .travel24-header,
.gtg-home.page-search .travel24-header.is-scrolled,
.gtg-home .travel24-header.is-scrolled {
    top: 0;
    left: 0;
    transform: none;
    width: 100%;
    max-width: none;
    height: 68px;
    background: var(--gtg-header);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.gtg-home .travel24-header.is-hidden { transform: translateY(-100%); }
.gtg-home .travel24-header #header { background: transparent; }
/* 2026-10-15 owner: header content (logo to currency) as wide as the body sections, which use the Bootstrap .container
   (960 / 1140 / 1320 px + 12 px padding). Was capped at 1170 px, so the logo sat 88 px inside the deals grid on wide screens. */
.gtg-home .travel24-header .header-container { max-width: 1170px; margin: 0 auto; height: 100%; }
@media (min-width: 992px)  { .gtg-home .travel24-header .header-container { max-width: 960px;  padding: 0 12px; } }
@media (min-width: 1200px) { .gtg-home .travel24-header .header-container { max-width: 1140px; } }
@media (min-width: 1400px) { .gtg-home .travel24-header .header-container { max-width: 1320px; } }
.gtg-home .travel24-header .logo-header img { max-height: 34px; filter: brightness(0) invert(1); }

.gtg-home.page-search .travel24-header .nav-menu li a,
.gtg-home.page-search .travel24-header.is-scrolled .nav-menu li a {
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    background: transparent;
    border-radius: 3px;
}
.gtg-home.page-search .travel24-header .nav-menu li a:hover,
.gtg-home.page-search .travel24-header .nav-menu li a.active,
.gtg-home.page-search .travel24-header.is-scrolled .nav-menu li a:hover {
    color: #fff;
    background: rgba(255, 255, 255, .12);
}
.gtg-home .travel24-header .nav-menu li a i { color: #fff; }

/* Right-hand buttons: text-style links, with "Manage Booking" as the outlined button */
.gtg-home.page-search .travel24-header .btn-outline,
.gtg-home.page-search .travel24-header.is-scrolled .btn-outline,
.gtg-home.page-search .travel24-header .btn-primary,
.gtg-home.page-search .travel24-header.is-scrolled .btn-primary {
    background: transparent;
    color: #fff;
    border: 0;
    box-shadow: none;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
}
.gtg-home.page-search .travel24-header a[href*="manage-booking"].btn,
.gtg-home.page-search .travel24-header.is-scrolled a[href*="manage-booking"].btn {
    border: 1px solid #fff;
    padding: 10px 20px;
    height: auto;
}
.gtg-home.page-search .travel24-header .btn:hover { background: rgba(255, 255, 255, .12); color: #fff; }
.gtg-home.page-search .travel24-header .mobile-menu-btn i,
.gtg-home.page-search .travel24-header .mobile-signin-btn i,
.gtg-home.page-search .travel24-header.is-scrolled .mobile-menu-btn i,
.gtg-home.page-search .travel24-header.is-scrolled .mobile-signin-btn i { color: #fff; }
.gtg-home .travel24-header .mobile-currency-btn { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.5); }

/* ---------------------------------------------------------------- Hero */
.gtg-home .image-cover.hero-header {
    padding: 112px 0 64px !important;
    background-size: cover !important;
    background-position: center !important;
}
.gtg-home .hero-headline { margin-bottom: 72px !important; }
.gtg-home .hero-headline h1 {
    font-size: 32px !important;
    font-weight: 600 !important;
    letter-spacing: 0;
    text-shadow: 0 1px 6px rgba(0, 0, 0, .55) !important;
}
.gtg-home .hero-headline p {
    font-size: 15px !important;
    text-shadow: 0 1px 4px rgba(0, 0, 0, .5) !important;
}

/* Search card: white, 8px radius, flat like Gotogate. Layout untouched. */
.gtg-home .search-wrap.bg-white.rounded-3.p-3 {
    border-radius: 8px !important;
    border: 0 !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .18) !important;
}
.gtg-home .rg-search .btn.btn-primary,
.gtg-home .search-wrap .btn.btn-primary.full-width,
body.gtg-home button.btn.btn-primary.full-width.fw-medium.roundformsearch,
body.gtg-home button.btn.btn-primary.full-width.fw-medium.roundformsearch.search_btn_mobile {
    background: var(--gtg-cyan) !important;
    border: 1px solid var(--gtg-cyan) !important;
    color: #000 !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}
.gtg-home .rg-search .btn.btn-primary:hover,
.gtg-home .search-wrap .btn.btn-primary.full-width:hover,
body.gtg-home button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover {
    background: var(--gtg-cyan-hover) !important;
    border-color: var(--gtg-cyan-hover) !important;
}

/* ---------------------------------------------------------------- USP strip */
section.gtg-usp { background: #fff; border-bottom: 1px solid var(--gtg-line); padding: 0; }
.gtg-usp ul {
    display: flex;
    justify-content: space-around;
    gap: 16px;
    margin: 0;
    padding: 18px 0;
    list-style: none;
}
.gtg-usp li {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 16px;
    font-weight: 600;
    color: var(--gtg-text);
}
.gtg-usp svg { color: var(--gtg-icon); flex-shrink: 0; }

/* Coupon / promo image banner (moved out of the hero) */
section.gtg-promo-hero { background: #fff; padding: 28px 0 0; }
.gtg-promo-hero .row { margin-top: 0 !important; }
.gtg-promo-hero img { border-radius: 8px !important; box-shadow: none !important; }

/* ---------------------------------------------------------------- Flight deal cards (Gotogate style) */
.gtg-home section[style*="background:#f9fafb;padding:48px"] { background: #fff !important; padding: 40px 0 48px !important; }
.gtg-home .offer-grid-wrap::after { background: linear-gradient(to right, transparent, #fff 85%); }
.gtg-home .offer-grid { gap: 24px; }
.gtg-home .offer-card.gtg-deal {
    flex-direction: column;
    height: auto;
    border: 0;
    border-radius: 8px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .12);
    background: #fff;
    overflow: hidden;
}
.gtg-home .offer-card.gtg-deal:hover { transform: none; box-shadow: 0 6px 18px rgba(0, 0, 0, .16); }
.gtg-deal-img { position: relative; height: 190px; background: #e5e7eb; overflow: hidden; }
.gtg-deal-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s ease; }
.gtg-deal:hover .gtg-deal-img img { transform: scale(1.04); }
.gtg-deal-badge {
    position: absolute; top: 12px; left: 12px;
    background: #fff; color: var(--gtg-text);
    font-size: 11px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase;
    padding: 4px 8px; border-radius: 4px;
}
.gtg-deal-body { padding: 16px; display: flex; flex-direction: column; gap: 6px; flex: 1; }
.gtg-deal-route { font-size: 18px; font-weight: 700; color: var(--gtg-text); line-height: 1.3; }
.gtg-deal-route span { color: var(--gtg-muted); font-weight: 400; margin: 0 2px; }
.gtg-deal-airline { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--gtg-muted); }
.gtg-deal-airline img { width: 20px; height: 20px; object-fit: contain; border-radius: 50%; background: #fff; }
.gtg-deal-foot {
    display: flex; align-items: flex-end; justify-content: space-between; gap: 12px;
    margin-top: auto; padding-top: 12px; border-top: 1px solid var(--gtg-line);
}
.gtg-deal-pricing { display: flex; flex-direction: column; min-width: 0; }
.gtg-deal-from { font-size: 12px; color: var(--gtg-muted); }
.gtg-deal-price { font-size: 22px; font-weight: 700; color: var(--gtg-text); line-height: 1.2; }
.gtg-deal-flex { font-size: 12px; color: var(--gtg-link); margin-top: 2px; }
.gtg-deal-btn {
    flex-shrink: 0;
    background: linear-gradient(90deg, #55adf7, #1f6fff); color: #fff;   /* 2026-10-15: the passenger picker's blue (was cyan) */
    font-size: 14px; font-weight: 700;
    padding: 10px 16px; border-radius: 8px; text-decoration: none; white-space: nowrap;
    box-shadow: 0 2px 8px rgba(31, 111, 255, .25);
}
.gtg-deal-btn:hover { background: linear-gradient(90deg, #4aa8f8, #1255e0); color: #fff; text-decoration: none; }
.gtg-home .offer-scroll-hint { background: var(--gtg-header); box-shadow: none; animation: none; }
@media (max-width: 991px) {
    .gtg-deal-img { height: 160px; }
    .gtg-deal-route { font-size: 16px; }
}

/* ---------------------------------------------------------------- Grey info strip (CMS "why book" text) */
section.gtg-info { background: var(--gtg-grey); padding: 40px 0; }
.gtg-info .why-book-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}
.gtg-info .why-book-divider, .gtg-info .why-book-icon { display: none; }
.gtg-info .why-book-item { display: block; padding: 0; }
.gtg-info .why-book-text strong {
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: var(--gtg-text);
    margin-bottom: 8px;
}
.gtg-info .why-book-text span { display: block; font-size: 14px; line-height: 1.45; color: var(--gtg-text); }

/* ---------------------------------------------------------------- Newsletter + routes */
.gtg-home .call-to-act-wrap,
.gtg-home section.bg-cover + section,
.gtg-home .call-to-act-wrap .call-to-act { border-radius: 8px; }
.gtg-home section[style*="padding:36px 0 28px;background:#f9fafb"] { background: var(--gtg-grey) !important; border-top: 0 !important; }
.gtg-home section[style*="padding:36px 0 28px;background:#f9fafb"] h2 { color: var(--gtg-text) !important; font-size: 22px !important; }
.gtg-home .btn-primary:not(.travel24-header .btn) { border-radius: 8px; }

/* ---------------------------------------------------------------- Footer */
.gtg-footer { background: #000; color: #fff; padding: 40px 0 32px; }
.gtg-footer-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; }
.gtg-footer h2 { font-size: 22px; font-weight: 700; color: #fff; margin: 0 0 20px; }
.gtg-footer ul { list-style: none; margin: 0; padding: 0; }
.gtg-footer li { margin-bottom: 14px; }
.gtg-footer li a { color: #fff; text-decoration: none; font-size: 14px; }   /* 2026-10-15 owner: no underline in the footer */
.gtg-footer li a:hover { color: var(--gtg-cyan); }
.gtg-footer li a i { margin-right: 4px; }
.gtg-outline-btn {
    display: inline-flex; align-items: center; gap: 8px;
    border: 1px solid #fff; border-radius: 8px;
    padding: 12px 24px; color: #fff; font-weight: 600; font-size: 14px; text-decoration: none;
}
.gtg-outline-btn:hover { background: rgba(255, 255, 255, .12); color: #fff; text-decoration: none; }
.gtg-footer-social { display: flex; gap: 10px; margin-top: 20px; }
.gtg-footer-social a {
    width: 38px; height: 38px; border: 1px solid rgba(255,255,255,.6); border-radius: 8px;
    display: inline-flex; align-items: center; justify-content: center; color: #fff;
}
.gtg-footer-social a:hover { background: rgba(255, 255, 255, .12); color: #fff; }
.gtg-payments {
    background: #212121; border-radius: 4px; margin-top: 40px; padding: 26px 24px;
    display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 18px 36px;
}
.gtg-pay { color: #fff; font-weight: 800; font-size: 20px; letter-spacing: .02em; font-style: italic; }
.gtg-pay-img { height: 26px; background: #fff; border-radius: 4px; padding: 4px 8px; }
.gtg-partners { display: flex; justify-content: center; align-items: center; gap: 24px; margin: 24px 0 16px; }
.gtg-partners img { height: 40px; background: #fff; border-radius: 4px; padding: 4px 8px; }
.gtg-legal { text-align: center; font-size: 12px; line-height: 1.5; color: #fff; }
.gtg-legal p { margin: 0; color: #fff; }

/* ---------------------------------------------------------------- Mobile */
@media (max-width: 991px) {
    .gtg-home .travel24-header,
    .gtg-home.page-search .travel24-header { height: 60px; }
    .gtg-home .image-cover.hero-header { padding: 96px 0 64px !important; }
    .gtg-usp ul { flex-direction: column; align-items: flex-start; gap: 12px; padding: 18px 0; }
    .gtg-usp li { font-size: 15px; }
    .gtg-info .why-book-strip { grid-template-columns: 1fr; gap: 24px; }
    .gtg-footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 575px) {
    .gtg-footer-grid { grid-template-columns: 1fr; gap: 24px; }
    .gtg-footer h2 { font-size: 20px; margin-bottom: 14px; }
    .gtg-pay { font-size: 16px; }
}

/* ---------------------------------------------------------------- Airport autocomplete */
.gtg-home .inner_loc_search ul li.gtg-ac-active { background: #eef6ff; }
.gtg-home .inner_loc_search .search-loading { padding: 10px 16px; font-size: 13px; color: var(--gtg-muted); }

/* ---------------------------------------------------------------- Mobile full-screen search */
/* Hide the floating WhatsApp button and chat robot while a search screen is open. */
body.gtg-home:has(.search-wrap .tab-content.mobile-show) .gtg-wa-btn,
body.gtg-home:has(.search-wrap .tab-content.mobile-show) #kv-chat-bubble,
body.gtg-home:has(#mobileAirportModal[style*="block"]) .gtg-wa-btn,
body.gtg-home:has(#mobileAirportModal[style*="block"]) #kv-chat-bubble,
body.gtg-home:has(#mobilePaxModal[style*="block"]) .gtg-wa-btn,
body.gtg-home:has(#mobilePaxModal[style*="block"]) #kv-chat-bubble,
body.gtg-home.gtg-promo-open .gtg-wa-btn,
body.gtg-home.gtg-promo-open #kv-chat-bubble {
    display: none !important;
}
@media (max-width: 991px) {
    .gtg-home .search-wrap .tab-content.mobile-show .close-search-mobile { background: var(--gtg-header) !important; }
}

/* ---------------------------------------------------------------- Compact desktop search box (MakeMyTrip-like)
 * Desktop only (>= 992px); the mobile search screen is untouched. */
@media (min-width: 992px) {
    .gtg-home .web-sp { min-height: 100px !important; }
    .gtg-home .web-sp .form-group.hdd-arrow,
    .gtg-home .web-sp .form-group,
    .gtg-home .web-sp > .col-xl-3 .form-group.mb-0 { padding-top: 10px !important; padding-bottom: 8px !important; }
    .gtg-home .web-sp .form-group.hdd-arrow input.form-control,
    .gtg-home .web-sp input.choosedate_start,
    .gtg-home .web-sp input.choosedate_end {
        height: 44px !important;
        margin-top: 12px !important;
        font-size: 20px !important;
        padding-top: 4px !important;
        padding-bottom: 4px !important;
    }
    .gtg-home .web-sp span#guests-input-btn {
        font-size: 20px !important;
        margin-top: 10px !important;
        padding-top: 6px !important;
        padding-bottom: 4px !important;
    }
    /* Airport name / weekday / cabin lines under the big values */
    .gtg-home .web-sp .input-label-airports,
    .gtg-home .web-sp .input-label-airports_to { top: 78px !important; margin-top: 0 !important; }
    .gtg-home .web-sp .choosedate_start_date,
    .gtg-home .web-sp .choosedate_start_date2 { top: 78px !important; }

    /* Tighter gap between the Flights tile and the trip-type row */
    .gtg-home .search-wrap > .rg-navpill { margin-bottom: 0 !important; }
    .gtg-home .search-wrap .rg-nav-itm { margin-top: 6px !important; margin-bottom: 10px !important; }
    .gtg-home .web-sp .web-class-display { margin-top: -8px !important; }

    /* Search button straddles the card's bottom edge */
    .gtg-home .search-wrap.bg-white.rounded-3.p-3 { padding-bottom: 40px !important; }
    body.gtg-home .search-wrap button.btn.btn-primary.full-width.fw-medium.roundformsearch {
        top: auto !important;
        bottom: -24px !important;
        height: 48px !important;
        padding: 0 24px !important;
        font-size: 17px !important;
    }
}

/* ---------------------------------------------------------------- Mobile polish (iPhone) */
@media (max-width: 991px) {
    /* Header: fixed 60px bar */
    .gtg-home .travel24-header,
    .gtg-home.page-search .travel24-header,
    .gtg-home.page-search .travel24-header.is-scrolled { height: 60px !important; }

    /* Hero: clear the header, show a compact headline, then the Flights tile */
    .gtg-home .image-cover.hero-header { padding: 84px 0 76px !important; }
    /* The Flights tile below is pulled up 40px by the search markup, hence the larger margin */
    body.gtg-home .image-cover.hero-header .container > .row.hero-headline { display: block !important; margin: 0 0 58px !important; }
    .gtg-home .hero-headline h1 { font-size: 22px !important; line-height: 1.25 !important; margin-bottom: 6px !important; }
    .gtg-home .hero-headline p { display: none !important; }

    /* USP strip: tighter */
    .gtg-usp ul { gap: 10px; padding: 16px 0; }
    .gtg-usp li { font-size: 14px; gap: 12px; }
    .gtg-usp svg { width: 24px; height: 24px; }

    section.gtg-promo-hero { padding-top: 20px; }

    /* Deal cards: swipeable row, ~75% width so the next card peeks in */
    .gtg-home section[style*="background:#f9fafb;padding:48px"] { padding: 28px 0 32px !important; }
    .gtg-home section[style*="background:#f9fafb;padding:48px"] h2 { font-size: 20px !important; }
    .gtg-home section[style*="background:#f9fafb;padding:48px"] .row.mb-4 { margin-bottom: 14px !important; }
    .gtg-home .offer-grid { gap: 12px; padding-bottom: 8px; }
    .gtg-home .offer-card.gtg-deal { min-width: 74vw; max-width: 74vw; }
    .gtg-home .offer-grid-wrap::after,
    .gtg-home .offer-scroll-hint { display: none !important; }
    .gtg-deal-img { height: 130px; }
    .gtg-deal-badge { top: 8px; left: 8px; font-size: 10px; padding: 3px 6px; }
    .gtg-deal-body { padding: 12px; gap: 4px; }
    .gtg-deal-route { font-size: 15px; }
    .gtg-deal-airline { font-size: 12px; }
    .gtg-deal-airline img { width: 16px; height: 16px; }
    .gtg-deal-foot { padding-top: 10px; gap: 10px; flex-direction: column; align-items: stretch; }
    .gtg-deal-price { font-size: 18px; }
    .gtg-deal-flex { font-size: 11px; }
    .gtg-deal-btn { font-size: 14px; padding: 10px 12px; text-align: center; }
}

/* ---------------------------------------------------------------- Promo popup (Elements/Frontend/gtg-promo) */
.gtg-promo[hidden], .gtg-promo-bar[hidden] { display: none !important; }
.gtg-promo {
    position: fixed; inset: 0; z-index: 99999999;
    background: rgba(15, 23, 42, .55);
    display: flex; align-items: center; justify-content: center;
    padding: 16px;
    animation: gtgFade .2s ease;
}
.gtg-promo-card {
    position: relative; width: 100%; max-width: 420px;
    background: #fff; border-radius: 12px; overflow: hidden;
    box-shadow: 0 24px 64px rgba(0, 0, 0, .3);
    animation: gtgRise .3s cubic-bezier(.2, .8, .2, 1);
    font-family: "Noto Sans", Arial, sans-serif;
}
.gtg-promo-close {
    position: absolute; top: 10px; right: 10px; z-index: 2;
    width: 32px; height: 32px; border-radius: 50%; border: 0;
    background: rgba(0, 0, 0, .45); color: #fff; font-size: 20px; line-height: 1; cursor: pointer;
}
/* scoped to the pop-up card (2026-10-15): the homepage banner <section class="gtg-promo-hero"> shares the class name and was getting
   this height and the dark gradient overlay (the "shadow above the image" the owner saw) */
.gtg-promo-card .gtg-promo-hero {
    height: 130px; background-size: cover; background-position: center;
    position: relative;
}
.gtg-promo-card .gtg-promo-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0)); }
.gtg-promo-kicker {
    position: absolute; left: 20px; bottom: 12px; z-index: 1;
    background: var(--gtg-cyan, #41d3ff); color: #000;
    font-size: 11px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
    padding: 4px 10px; border-radius: 999px;
}
.gtg-promo-body { padding: 20px 22px 18px; text-align: left; }
.gtg-promo-body h2 { font-size: 26px !important; font-weight: 800 !important; color: #111827 !important; line-height: 1.15 !important; margin: 0 !important; }
.gtg-promo-sub { font-size: 15px; color: #4b5563; margin: 6px 0 16px; }
.gtg-promo-code {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    border: 2px dashed #22c55e; background: #f0fdf4; border-radius: 10px; padding: 10px 12px 10px 16px;
}
.gtg-promo-code-label { display: block; font-size: 11px; font-weight: 600; color: #15803d; text-transform: uppercase; letter-spacing: .04em; }
.gtg-promo-code-value { display: block; font-size: 22px; font-weight: 800; letter-spacing: 3px; color: #14532d; }
.gtg-promo-copy, .gtg-promo-bar-copy {
    border: 0; border-radius: 8px; background: #16a34a; color: #fff;
    font-weight: 700; font-size: 13px; padding: 10px 14px; cursor: pointer; white-space: nowrap;
}
.gtg-promo-copy.is-copied, .gtg-promo-bar-copy.is-copied { background: #111827; }
.gtg-promo-form { margin-top: 16px; }
.gtg-promo-form-label { display: block; font-size: 13px; font-weight: 600; color: #374151; margin-bottom: 6px; }
.gtg-promo-form-row { display: flex; gap: 8px; }
.gtg-promo-form-row input {
    flex: 1; min-width: 0; border: 1px solid #d1d5db; border-radius: 8px; padding: 11px 12px; font-size: 14px; outline: none;
}
.gtg-promo-form-row input:focus { border-color: #1a8fd6; box-shadow: 0 0 0 3px rgba(26, 143, 214, .15); }
.gtg-promo-form-row button {
    border: 0; border-radius: 8px; background: var(--gtg-cyan, #41d3ff); color: #000;
    font-weight: 700; font-size: 14px; padding: 0 16px; cursor: pointer; white-space: nowrap;
}
.gtg-promo-form-row button:disabled { opacity: .6; cursor: default; }
.gtg-promo-msg { min-height: 18px; font-size: 13px; margin-top: 6px; }
.gtg-promo-msg.is-ok { color: #15803d; }
.gtg-promo-msg.is-error { color: #dc2626; }
.gtg-promo-skip {
    display: block; width: 100%; margin-top: 4px; padding: 8px; border: 0; background: none;
    color: #005a75; text-decoration: underline; font-size: 14px; cursor: pointer;
}
.gtg-promo-fine { font-size: 11px; color: #9ca3af; text-align: center; margin: 4px 0 0; }

/* Slim coupon reminder */
.gtg-promo-bar {
    position: fixed; left: 50%; bottom: 20px; transform: translateX(-50%); z-index: 9999998;
    display: flex; align-items: center; gap: 10px;
    background: #1e293b; color: #fff; border-radius: 12px; padding: 10px 10px 10px 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .25); max-width: calc(100% - 32px);
    font-family: "Noto Sans", Arial, sans-serif; font-size: 14px;
    animation: gtgRise .3s ease;
}
.gtg-promo-bar-text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gtg-promo-bar-go {
    border: 0; border-radius: 8px; background: var(--gtg-cyan, #41d3ff); color: #000;
    font-weight: 700; font-size: 13px; padding: 9px 12px; cursor: pointer; white-space: nowrap;
}
.gtg-promo-bar-close { border: 0; background: none; color: rgba(255,255,255,.7); font-size: 20px; cursor: pointer; padding: 0 4px; }

@keyframes gtgFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes gtgRise { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }

@media (max-width: 575px) {
    /* Bottom sheet on phones */
    .gtg-promo { align-items: flex-end; padding: 0; }
    .gtg-promo-card { max-width: none; border-radius: 16px 16px 0 0; }
    .gtg-promo-card .gtg-promo-hero { height: 96px; }
    .gtg-promo-body { padding: 16px 18px 20px; }
    .gtg-promo-body h2 { font-size: 22px !important; }
    .gtg-promo-sub { font-size: 14px; margin-bottom: 12px; }
    .gtg-promo-form-row { flex-direction: column; }
    .gtg-promo-form-row button { padding: 12px; }
    .gtg-promo-bar { left: 12px; right: 12px; transform: none; bottom: 12px; max-width: none; flex-wrap: wrap; }
    .gtg-promo-bar-text { flex: 1 1 100%; white-space: normal; }
    .gtg-promo-bar-copy, .gtg-promo-bar-go { flex: 1; }
    .gtg-promo-bar-close { position: absolute; top: 4px; right: 6px; }
    .gtg-promo-bar { position: fixed; }
}
@media (max-width: 575px) {
    .gtg-promo-card .gtg-promo-hero { height: auto; background: none !important; padding: 16px 18px 0; }
    .gtg-promo-card .gtg-promo-hero::after { display: none; }
    .gtg-promo-kicker { position: static; display: inline-block; }
    .gtg-promo-close { background: #f1f5f9; color: #334155; top: 12px; right: 12px; }
    .gtg-promo-body { padding-top: 10px; }
    .gtg-promo-code { padding: 8px 10px 8px 14px; }
    .gtg-promo-code-value { font-size: 20px; }
    .gtg-promo-form { margin-top: 12px; }
    .gtg-promo-form-row input { padding: 10px 12px; }
    .gtg-promo-form-row button { padding: 11px; }
}
/* Floating chat buttons step aside while the coupon reminder bar is up */
body.gtg-home:has(#gtgPromoBar:not([hidden])) .gtg-wa-btn,
body.gtg-home:has(#gtgPromoBar:not([hidden])) #kv-chat-bubble { display: none !important; }
@media (max-width: 575px) {
    .gtg-promo-msg { min-height: 0; }
    .gtg-promo-msg:empty { display: none; }
    .gtg-promo-skip { margin-top: 8px; }
}
/* Cookie banner waits while a full-screen search picker is open (it returns when search closes) */
body.gtg-home:has(.search-wrap .tab-content.mobile-show) .travel24hr-cookie-consent,
body.gtg-home:has(#mobileAirportModal[style*="block"]) .travel24hr-cookie-consent,
body.gtg-home:has(#mobilePaxModal[style*="block"]) .travel24hr-cookie-consent,
body.gtg-home:has(#mobileDateModal[style*="block"]) .travel24hr-cookie-consent { display: none !important; }

/* 2026-10-15 owner (approved on the mock-up, claude.ai/artifact/PR5Ktb2JtDRDujbKUbsffC): desktop search box as ONE frosted-glass
   shape: a 180 × 60 "Flights" tab on the top-left edge joined to the box by the reference's slanted edge (16 px rounded corner,
   25° straight edge, 19 px sweep), the beach photo showing through; trip types as pills in the live sizes; the field bar 78 px
   tall; the cyan Search button under it as before. The outline is written by js/sk-home-glass.js into --sk-glass-path from the
   card's real width. Phones keep the tile strip (their open/close logic hangs on it). sk-home.css uses !important, hence here too. */
@media (min-width: 992px) {
    /* the card itself is see-through; the glass is its ::before, which also forms the tab */
    .gtg-home .search-wrap.bg-white.rounded-3.p-3 {
        position: relative !important; background: transparent !important; box-shadow: none !important; border-radius: 0 30px 30px 30px !important;
        padding: 20px 28px 44px !important; overflow: visible !important; min-height: 0 !important;
    }
    .gtg-home .search-wrap.bg-white.rounded-3.p-3::before {
        content: ""; position: absolute; left: 0; right: 0; top: -60px; bottom: 0; z-index: 0;
        background: rgba(255, 255, 255, .60); -webkit-backdrop-filter: blur(18px) saturate(150%); backdrop-filter: blur(18px) saturate(150%);
        clip-path: var(--sk-glass-path, inset(60px 0 0 0 round 30px)); -webkit-clip-path: var(--sk-glass-path, inset(60px 0 0 0 round 30px));
    }
    .gtg-home .search-wrap.bg-white.rounded-3.p-3 > * { position: relative; z-index: 1; }
    /* the tab: content only, the glass behind it is the ::before */
    .gtg-home .search-wrap > .rg-navpill {
        position: absolute !important; left: 0 !important; top: -60px !important; height: 60px !important; z-index: 1;
        display: flex !important; align-items: flex-end !important; margin: 0 !important; padding: 0 !important; line-height: normal !important;
    }
    .gtg-home ul#tour-pills-tab {
        display: flex !important; align-items: flex-end !important; gap: 6px !important;
        width: auto !important; height: 60px !important; margin: 0 !important; padding: 0 !important;
        background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
    }
    .gtg-home #tour-pills-tab .nav-item { height: 60px !important; min-height: 0 !important; line-height: normal !important; display: block !important; }
    .gtg-home #tour-pills-tab .tab-link, .gtg-home #tour-pills-tab .coming-soon-link {
        position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important;
        width: 180px !important; height: 60px !important; margin: 0 !important; padding: 6px 10px 0 12px !important;
        background: transparent !important; border: 0 !important; border-radius: 0 !important; overflow: visible !important; box-shadow: none !important;
    }
    .gtg-home #tour-pills-tab .tab-link:hover { transform: none !important; background: transparent !important; }
    .gtg-home #tour-pills-tab .tab-link.active { background: transparent !important; }
    .gtg-home #tour-pills-tab .tab-link h3, .gtg-home #tour-pills-tab .coming-soon-link h3 {
        font-size: 16px !important; font-weight: 700 !important; line-height: 1.2 !important; margin: 0 !important; color: #4a4a4a !important;
    }
    .gtg-home #tour-pills-tab .tab-link:hover h3, .gtg-home #tour-pills-tab .tab-link.active h3 { color: #2563eb !important; }
    .gtg-home #tour-pills-tab .illustration {
        order: -1; position: static !important; display: flex !important; align-items: center !important; justify-content: center !important;
        width: 30px !important; height: 30px !important;
    }
    .gtg-home #tour-pills-tab .illustration::before { display: none !important; }
    .gtg-home #tour-pills-tab .illustration img { width: 30px !important; height: 30px !important; margin: 0 !important; }
    .gtg-home #tour-pills-tab .tab-promo-badge { position: absolute; top: 6px; right: 12px; font-size: 9px; padding: 2px 6px; margin: 0; }
    .gtg-home #tour-pills-tab .sub { position: absolute; bottom: 3px; left: 0; right: 0; text-align: center; margin: 0 !important; font-size: 10px !important; }
    /* inside the box */
    .gtg-home .search-wrap .tab-content { margin-top: 0 !important; }
    .gtg-home .search-wrap .tab-pane form > .row { margin-top: 0 !important; }
    .gtg-home .search-wrap .rg-nav-itm { margin-top: 0 !important; margin-bottom: 16px !important; }
    /* trip types keep the original radio style (owner 2026-10-15: "use the radio button style we used for One Way / Round Trip");
       the trust line goes to the far right of the row with bigger type */
    .gtg-home .rg-nav-itm .trust-badges-inline { margin-left: auto !important; gap: 18px !important; }
    .gtg-home .rg-nav-itm .trust-badges-inline .tb-item { font-size: 14px !important; gap: 7px !important; }
    .gtg-home .rg-nav-itm .trust-badges-inline .tb-item svg { width: 16px !important; height: 16px !important; }
    /* owner 2026-10-15: the passenger picker's blue for the Search button (was cyan) */
    body.gtg-home .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch {
        background: linear-gradient(90deg, #55adf7, #1f6fff) !important; color: #fff !important; box-shadow: 0 6px 18px rgba(31, 111, 255, .35) !important; border: 0 !important;
    }
    body.gtg-home .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover { background: linear-gradient(90deg, #4aa8f8, #1255e0) !important; color: #fff !important; }
    /* the field bar: one white bar, 78 px (the theme gives each input 70 px + label + padding = 112) */
    .gtg-home .web-sp { min-height: 78px !important; border-radius: 18px !important; }
    /* equal cells: One Way = From, To, Departure, Passengers at a quarter each; Round Trip = five fifths */
    body.gtg-home .search-wrap .tab-content .web-sp > .col-xl-5 { flex: 2 !important; }
    body.gtg-home .search-wrap .tab-content .web-sp > .col-xl-4 { flex: 1 !important; }   /* sk-home (loaded after this file) gives it 2.1 with a :has() rule even on One Way */
    body.gtg-home .search-wrap .tab-content .web-sp > .col-xl-3 { flex: 1 !important; }
    body.gtg-home .search-wrap.roundtrip_active .tab-content .web-sp > .col-xl-4 { flex: 2 !important; }
    /* date picker (styles inline in index_gtg.blade.php): compact on desktop (owner: "so big, not compact") */
    .gtg-home .wdp-card { width: 720px; padding: 14px 20px 12px; border-radius: 14px; }
    .gtg-home .wdp-top { grid-template-columns: 32px 1fr 32px; gap: 8px; margin-bottom: 6px; }
    .gtg-home .wdp-titles, .gtg-home .wdp-months { gap: 28px; }
    .gtg-home .wdp-month-title { font-size: 16px; }
    .gtg-home .wdp-nav { width: 32px; height: 32px; border-radius: 16px; }
    .gtg-home .wdp-weekday { font-size: 12px; padding: 4px 0; }
    .gtg-home .wdp-days-grid { gap: 2px; }
    .gtg-home .wdp-day { height: 40px; gap: 2px; font-size: 14px; border-radius: 8px; }
    .gtg-home .wdp-day .wdp-p { font-size: 10px; }
    /* the swap button sits on the From | To divider: centred on the From cell's right edge */
    .gtg-home .web-sp > .col-xl-5 > .row > .col-xl-6:first-child { position: relative !important; }
    .gtg-home .web-sp .btn-flip-icon { left: 100% !important; }
    .gtg-home .web-sp .form-group.hdd-arrow.mb-0, .gtg-home .web-sp .input-wrapper-date, .gtg-home .web-sp > .col-xl-3 .form-group.mb-0 { padding: 8px 20px 6px !important; }
    /* label pinned at the top of the cell; the value line starts under it; the small line (airport name / weekday / class) follows */
    .gtg-home .web-sp .form-group.hdd-arrow.mb-0, .gtg-home .web-sp .input-wrapper-date, .gtg-home .web-sp > .col-xl-3 .form-group.mb-0, .gtg-home .web-sp .input-container { position: relative !important; }
    .gtg-home .web-sp .input-label.hsrlable { position: absolute !important; top: 9px !important; left: 20px !important; margin: 0 !important; line-height: 11px !important; }
    .gtg-home .web-sp .input-container .input-label.hsrlable { left: 0 !important; top: 1px !important; }
    .gtg-home .web-sp input.form-control, .gtg-home .web-sp .form-group.hdd-arrow input.form-control, .gtg-home .web-sp .form-control.choosedate_start,
    .gtg-home .web-sp .form-control.choosedate_end, .gtg-home .web-sp .form-control.flatpickr-input {
        min-height: 0 !important; height: 32px !important; margin: 16px 0 2px !important; padding: 0 !important; font-size: 18px !important; line-height: 32px !important;
    }
    .gtg-home .web-sp .input-label-airports, .gtg-home .web-sp .input-label-airports_to, .gtg-home .web-sp .choosedate_start_date, .gtg-home .web-sp .web-class-display {
        line-height: 14px !important; min-height: 14px !important; font-size: 12px !important;
    }
    .gtg-home .web-sp .input-label-airports_to { margin-top: 0 !important; margin-left: 0 !important; }
    .gtg-home .web-sp .input-label-airports, .gtg-home .web-sp .choosedate_start_date, .gtg-home .web-sp .choosedate_start_date2 { margin-top: 0 !important; margin-left: 0 !important; }
    /* those small lines are absolutely placed by the theme (top 78 px for the old 112 px cell): under the 32 px value line they sit at 58 px */
    .gtg-home .web-sp .input-label-airports, .gtg-home .web-sp .input-label-airports_to, .gtg-home .web-sp .choosedate_start_date, .gtg-home .web-sp .choosedate_start_date2 { top: 58px !important; left: 20px !important; }
    .gtg-home .web-sp > .col-xl-5 > .row > .col-xl-6:last-child .input-label-airports_to { left: 52px !important; }
    /* the Return cell (Round Trip) has its own wrapper rules in the theme: same geometry as the other cells */
    .gtg-home .web-sp .choosedate_end_div .input-wrapper-date, .gtg-home .web-sp .choosedate_end_div .form-group.mb-0 .input-wrapper-date { padding: 8px 20px 6px !important; }
    .gtg-home .web-sp .choosedate_end_div .input-label.hsrlable { top: 1px !important; left: 20px !important; }   /* its wrapper already sits 8 px lower */
    .gtg-home .web-sp .choosedate_end_div .form-control { margin: 16px 0 2px !important; }
    .gtg-home .web-sp .choosedate_end_div .choosedate_start_date2 { top: 58px !important; left: 20px !important; line-height: 14px !important; min-height: 14px !important; }
    .gtg-home .web-sp .input-wrapper-date.col-xl-12, .gtg-home .web-sp .choosedate_start_div .input-wrapper-date { padding: 8px 20px 6px !important; }
    .gtg-home .web-sp .web-class-display { margin-top: 0 !important; }
    .gtg-home .web-sp span#guests-input-btn { margin: 16px 0 2px !important; padding: 0 !important; height: 32px !important; line-height: 32px !important; font-size: 18px !important; display: block !important; }
    .gtg-home .web-sp .btn-flip-icon { top: 50% !important; transform: translate(-50%, -50%) !important; margin: 0 !important; }
    /* the Search button hangs under the box, whatever the box's height */
    .gtg-home .search-wrap.bg-white.rounded-3.p-3 { padding-bottom: 54px !important; }
    /* the button is absolutely placed against .tab-content (sk-home: top 134px); the box pads 54 px below that, the button hangs 24 px out */
    body.gtg-home .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch { top: auto !important; bottom: -78px !important; }
    /* the To cell leaves room for the swap button that sits on the divider */
    .gtg-home .web-sp > .col-xl-5 > .row > .col-xl-6:last-child .form-group.hdd-arrow.mb-0 { padding-left: 52px !important; }
    .gtg-home .web-sp > .col-xl-5 > .row > .col-xl-6:last-child .input-label.hsrlable { left: 0 !important; }   /* its offset parent (.input-container) already starts after the 52 px */
}

/* Top Flight Routes (owner 2026-10-15: the 12 routes in two rows on desktop instead of three; markup inline in index_gtg.blade.php) */
@media (min-width: 1200px) {
    .gtg-home .gtg-routes-grid { grid-template-columns: repeat(6, 1fr) !important; gap: 10px !important; }
    .gtg-home .gtg-route { padding: 10px 12px !important; }
    .gtg-home .gtg-route > div { min-width: 0; }
    .gtg-home .gtg-route > div > div:first-child { font-size: 13px !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block !important; }
    .gtg-home .gtg-route svg { width: 14px !important; height: 14px !important; flex: none; }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .gtg-home .gtg-routes-grid { grid-template-columns: repeat(4, 1fr) !important; }
}

/* 2026-10-15 owner: desktop search box 1120 px wide, centred (was the full container: 1296 px on screens from 1400 px, 1116 px
   from 1200 px). The glass outline and the Flights tab follow the card's real width (js/sk-home-glass.js), so nothing else changes. */
@media (min-width: 992px) {
    .gtg-home .search-wrap.bg-white.rounded-3.p-3 { max-width: 1120px !important; margin-left: auto !important; margin-right: auto !important; }
}

/* 2026-10-15 owner: cleaner airport dropdown (desktop From / To). Wider panel so airport names don't clip, inline SVG icons
   instead of the icon font (which loads at the footer, so the plane / magnifier used to show late or not at all), a 36 px icon tile
   per row, the IATA code as a badge on the right, no row borders. CSS only: markup, keyboard and mobile picker logic unchanged. */
@media (min-width: 992px) {
    .gtg-home .location_search, .gtg-home .location_search_to {
        min-width: 460px !important; width: 460px !important; max-height: 440px !important;
        border: 0 !important; border-radius: 16px !important; box-shadow: 0 18px 48px rgba(10, 37, 64, .18), 0 2px 6px rgba(10, 37, 64, .08) !important;
        margin-top: 8px; padding-bottom: 6px;
    }
    /* search bar at the top */
    .gtg-home .location_search .ls-top-bar, .gtg-home .location_search_to .ls-top-bar {
        height: 56px !important; padding: 0 16px !important; gap: 12px !important;
        background: #fff !important; border-bottom: 1px solid #eef1f5 !important; border-radius: 16px 16px 0 0 !important;
    }
    .gtg-home .ls-search-icon-wrap { width: 20px; height: 20px; }
    .gtg-home .ls-search-icon-wrap i { display: none !important; }
    .gtg-home .ls-search-icon-wrap::before {
        content: ""; display: block; width: 20px; height: 20px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center / contain no-repeat;
    }
    .gtg-home .ls-search-input { font-size: 16px !important; font-weight: 500 !important; color: #0a2540 !important; }
    .gtg-home .ls-search-input::placeholder { color: #9aa3b2 !important; font-weight: 400 !important; }
    /* section label */
    .gtg-home .location_search .top_city, .gtg-home .location_search_to .top_city {
        padding: 12px 16px 6px !important; font-size: 11px !important; letter-spacing: .08em !important; color: #8a94a6 !important;
    }
    /* rows: icon tile | city + airport | code badge */
    .gtg-home .location_search li, .gtg-home .location_search_to li {
        position: relative; display: grid !important; grid-template-columns: 36px 1fr; column-gap: 12px; align-items: center;
        margin: 0 8px !important; padding: 9px 76px 9px 10px !important; border: 0 !important; border-radius: 10px;
        transition: background .12s;
    }
    .gtg-home .location_search li:hover, .gtg-home .location_search_to li:hover,
    .gtg-home .location_search li.gtg-ac-active, .gtg-home .location_search_to li.gtg-ac-active,
    .gtg-home .location_search li.selected, .gtg-home .location_search_to li.selected { background: #eef4ff !important; }
    .gtg-home .location_search li::before, .gtg-home .location_search_to li::before {
        content: ""; grid-row: 1 / span 2; width: 36px; height: 36px; border-radius: 10px; background-color: #eaf2ff;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%232563eb'%3E%3Cpath d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5l8 2.5z'/%3E%3C/svg%3E");
        background-repeat: no-repeat; background-position: center; background-size: 20px 20px;
    }
    /* "All airports" city rows: building icon */
    .gtg-home .location_search li.sk-ac-metro::before, .gtg-home .location_search_to li.sk-ac-metro::before {
        background-color: #ecfdf5;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21h18M5 21V5a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v16M14 9h4a1 1 0 0 1 1 1v11M8 8h2M8 12h2M8 16h2M17 13h0M17 17h0'/%3E%3C/svg%3E");
    }
    .gtg-home .location_search .fli_name, .gtg-home .location_search_to .fli_name { font-size: 15px !important; gap: 6px !important; min-width: 0; }
    .gtg-home .location_search .fli_name i, .gtg-home .location_search_to .fli_name i { display: none !important; }
    .gtg-home .location_search .city_name, .gtg-home .location_search_to .city_name { font-weight: 700 !important; color: #0a2540 !important; }
    .gtg-home .location_search .airport_code, .gtg-home .location_search_to .airport_code {
        position: absolute; right: 12px; top: 50%; transform: translateY(-50%);
        font-size: 12px !important; font-weight: 700 !important; letter-spacing: .04em; color: #2563eb !important;
        background: #eaf2ff; border-radius: 6px; padding: 3px 8px; line-height: 1.2;
    }
    .gtg-home .location_search li.sk-ac-metro .airport_code, .gtg-home .location_search_to li.sk-ac-metro .airport_code { color: #059669 !important; background: #ecfdf5; }
    .gtg-home .location_search .airport_name, .gtg-home .location_search_to .airport_name {
        display: block !important; padding-left: 0 !important; margin-top: 1px !important; font-size: 12.5px !important; color: #6b7280 !important;
    }
    .gtg-home .location_search .airport_name span, .gtg-home .location_search_to .airport_name span { display: inline !important; color: #9aa3b2 !important; font-size: 12px !important; }
    .gtg-home .location_search .airport_name span::before, .gtg-home .location_search_to .airport_name span::before { content: "·"; margin: 0 2px 0 4px; }
    .gtg-home .location_search .search-loading, .gtg-home .location_search .no-results,
    .gtg-home .location_search_to .search-loading, .gtg-home .location_search_to .no-results { padding: 14px 16px !important; font-size: 13px !important; color: #6b7280 !important; }
}

/* ================================================================ Theme: Black Friday (2026-10-15, Admin › Home settings › Theme)
   body.sk-theme-bf is set by index_gtg.blade.php from skTheme(). Black + orange: black header, dark glass search box with white
   labels, orange Search / class pill / deal buttons / badges, black USP strip, orange accents in the airport list and calendar. */
body.gtg-home.sk-theme-bf {
    --gtg-header: #000;
    --gtg-cyan: #ff7a00;        /* Search button on phones + any cyan accent */
    --gtg-cyan-hover: #ff5f00;
    --gtg-icon: #ff7a00;
    --sk-bf: #ff7a00; --sk-bf-dark: #ff5f00; --sk-bf-soft: #fff1e6;
}
body.gtg-home.sk-theme-bf .travel24-header .main_lg { filter: brightness(0) invert(1); }
/* hero + search box */
body.gtg-home.sk-theme-bf .image-cover.hero-header { background-color: #050505 !important; }
body.gtg-home.sk-theme-bf .hero-headline h1 { color: #fff; }
body.gtg-home.sk-theme-bf .hero-headline h1::after { content: ""; display: block; width: 72px; height: 4px; margin: 10px auto 0; border-radius: 2px; background: var(--sk-bf); }
body.gtg-home.sk-theme-bf .hero-headline p { color: rgba(255,255,255,.85); }
body.gtg-home.sk-theme-bf #tour-pills-tab .tab-link h3, body.gtg-home.sk-theme-bf #tour-pills-tab .tab-link.active h3, body.gtg-home.sk-theme-bf #tour-pills-tab .tab-link:hover h3 { color: var(--sk-bf) !important; }
body.gtg-home.sk-theme-bf #tour-pills-tab .tab-promo-badge, body.gtg-home.sk-theme-bf .tab-promo-badge { background: var(--sk-bf) !important; color: #000 !important; }
body.gtg-home.sk-theme-bf .rg-nav-itm .trust-badges-inline .tb-item { color: #3a2a1a !important; }
body.gtg-home.sk-theme-bf .rg-nav-itm .trust-badges-inline .tb-item svg, body.gtg-home.sk-theme-bf .rg-nav-itm .trust-badges-inline .tb-item svg * { stroke: var(--sk-bf) !important; }
body.gtg-home.sk-theme-bf .rg-nav-itm input[type=radio] { accent-color: var(--sk-bf); }
body.gtg-home.sk-theme-bf .wdp-cls-btn { background: linear-gradient(90deg, #ff9a2e, #ff5f00) !important; color: #000 !important; }
body.gtg-home.sk-theme-bf .wdp-cls-btn:hover { background: linear-gradient(90deg, #ff8a10, #e85400) !important; }
body.gtg-home.sk-theme-bf .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch,
body.gtg-home.sk-theme-bf button.btn.btn-primary.full-width.fw-medium.roundformsearch {
    background: linear-gradient(90deg, #ff9a2e, #ff5f00) !important; color: #000 !important; border: 0 !important; box-shadow: 0 6px 18px rgba(255, 122, 0, .35) !important;
}
body.gtg-home.sk-theme-bf .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover,
body.gtg-home.sk-theme-bf button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover { background: linear-gradient(90deg, #ff8a10, #e85400) !important; color: #000 !important; }
body.gtg-home.sk-theme-bf .web-sp .input-label.hsrlable { color: var(--sk-bf-dark) !important; }
body.gtg-home.sk-theme-bf .swapButton, body.gtg-home.sk-theme-bf .swapButton i, body.gtg-home.sk-theme-bf .multiswapButton i { color: var(--sk-bf-dark) !important; }
@media (min-width: 992px) {
    /* light, slightly warm glass (owner 2026-10-15: the dark glass looked too dark against the black hero) */
    body.gtg-home.sk-theme-bf .search-wrap.bg-white.rounded-3.p-3::before { background: rgba(255, 246, 238, .74); -webkit-backdrop-filter: blur(18px) saturate(140%); backdrop-filter: blur(18px) saturate(140%); }
    body.gtg-home.sk-theme-bf .web-sp { box-shadow: 0 0 0 1px rgba(255, 122, 0, .35) !important; }
}
/* USP strip + deals banner + deals */
body.gtg-home.sk-theme-bf section.gtg-usp { background: #fff8f2; border-bottom: 1px solid #ffe3cc; }   /* light warm strip between the black hero and the banner */
body.gtg-home.sk-theme-bf .gtg-usp li { color: #1a1a1a; }
body.gtg-home.sk-theme-bf .gtg-promo-hero img { box-shadow: 0 0 0 1px rgba(255, 122, 0, .35) !important; }
body.gtg-home.sk-theme-bf #gtg-deals { background: #f7f5f2 !important; }
body.gtg-home.sk-theme-bf .gtg-deal-badge { background: var(--sk-bf); color: #000; }
body.gtg-home.sk-theme-bf .gtg-deal-btn { background: linear-gradient(90deg, #ff9a2e, #ff5f00); color: #000; box-shadow: 0 2px 8px rgba(255, 122, 0, .3); }
body.gtg-home.sk-theme-bf .gtg-deal-btn:hover { background: linear-gradient(90deg, #ff8a10, #e85400); color: #000; }
body.gtg-home.sk-theme-bf .gtg-deal-flex { color: #c24a00; }
/* airport list + calendar accents */
body.gtg-home.sk-theme-bf .location_search li:hover, body.gtg-home.sk-theme-bf .location_search_to li:hover,
body.gtg-home.sk-theme-bf .location_search li.gtg-ac-active, body.gtg-home.sk-theme-bf .location_search_to li.gtg-ac-active { background: var(--sk-bf-soft) !important; }
body.gtg-home.sk-theme-bf .location_search li::before, body.gtg-home.sk-theme-bf .location_search_to li::before { background-color: var(--sk-bf-soft); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ff5f00'%3E%3Cpath d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5l8 2.5z'/%3E%3C/svg%3E"); }
body.gtg-home.sk-theme-bf .location_search .airport_code, body.gtg-home.sk-theme-bf .location_search_to .airport_code { color: #c24a00 !important; background: var(--sk-bf-soft); }
body.gtg-home.sk-theme-bf .ls-search-icon-wrap::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff5f00' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E"); }
body.gtg-home.sk-theme-bf .wdp-day.wdp-selected, body.gtg-home.sk-theme-bf .wdp-day.wdp-range-start, body.gtg-home.sk-theme-bf .wdp-day.wdp-range-end { background: var(--sk-bf) !important; color: #000 !important; }
body.gtg-home.sk-theme-bf .wdp-day.wdp-selected .wdp-p, body.gtg-home.sk-theme-bf .wdp-day.wdp-range-start .wdp-p, body.gtg-home.sk-theme-bf .wdp-day.wdp-range-end .wdp-p { color: #000 !important; }
body.gtg-home.sk-theme-bf .wdp-day.wdp-in-range { background: var(--sk-bf-soft) !important; }
body.gtg-home.sk-theme-bf .wdp-day:not(.wdp-past):not(.wdp-muted):not(.wdp-selected):not(.wdp-range-start):not(.wdp-range-end):hover { background: var(--sk-bf-soft) !important; }
/* phones: long hero headlines (e.g. the Black Friday one) wrap instead of running off the screen */
@media (max-width: 767px) {
    body.gtg-home .image-cover.hero-header .hero-headline h1 { font-size: 1.5rem !important; line-height: 1.25 !important; white-space: normal !important; padding: 0 12px; }
}

/* 2026-10-15 owner: on desktop the first screen is header + hero + the "Compare fares…" strip, the strip sitting at the bottom of
   the window, so the hero picture shows in full when the site opens. Headline + search box are centred in the hero; the 78 px the
   Search button hangs below the box is counted. 68 px = header, 64 px = USP strip. */
@media (min-width: 992px) {
    body.gtg-home .image-cover.hero-header {
        min-height: calc(100vh - 67px) !important; display: flex !important; flex-direction: column !important; justify-content: center !important;   /* 67 px = the USP strip incl. its border */
        padding: 92px 0 32px !important;   /* the fixed 68 px header sits over the top of the hero */
    }
    body.gtg-home .image-cover.hero-header > .container { padding-bottom: 78px; }
}

/* ================================================================ Theme: Christmas (2026-10-15, Admin › Home settings › Theme)
   body.sk-theme-xmas. Red, green and gold: pine-green header with a Santa hat on the logo, falling snow over the hero, warm glass
   box, green class pill / field labels, red Search and deal buttons, gold badges and headline underline, snow-white USP strip. */
body.gtg-home.sk-theme-xmas {
    --gtg-header: #0b3d2e;
    --gtg-cyan: #d42426;        /* Search button on phones + any cyan accent */
    --gtg-cyan-hover: #b81c1e;
    --gtg-icon: #157347;
    --sk-x-red: #d42426; --sk-x-red-dark: #b81c1e; --sk-x-green: #157347; --sk-x-green-dark: #0b5c36; --sk-x-gold: #f5c242; --sk-x-soft: #edf7f1;
}
/* Santa hat on the logo (inline SVG, no file) */
body.gtg-home.sk-theme-xmas .travel24-header .logo-header { position: relative; overflow: visible; }
body.gtg-home.sk-theme-xmas .travel24-header .logo-header::after {
    content: ""; position: absolute; left: -11px; top: -15px; width: 36px; height: 31px; pointer-events: none; transform: rotate(-16deg);
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 56'%3E%3Cpath d='M10 40C6 20 26 4 48 8c6 1 8 6 4 8-12-4-28 6-30 24z' fill='%23d42426'/%3E%3Ccircle cx='53' cy='13' r='7' fill='%23fff'/%3E%3Cpath d='M6 38h28a5 5 0 0 1 0 10H6a5 5 0 0 1 0-10z' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat;
}
/* hero: snow */
body.gtg-home.sk-theme-xmas .image-cover.hero-header { background-color: #0a1f2e !important; }
body.gtg-home.sk-theme-xmas .image-cover.hero-header > .container { position: relative; z-index: 1; }
body.gtg-home.sk-theme-xmas .image-cover.hero-header::after {
    content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0; opacity: .75;
    background-image:
        radial-gradient(2.2px 2.2px at 24px 38px, #fff 60%, transparent 62%),
        radial-gradient(1.6px 1.6px at 120px 150px, rgba(255,255,255,.85) 60%, transparent 62%),
        radial-gradient(1.4px 1.4px at 230px 70px, rgba(255,255,255,.7) 60%, transparent 62%),
        radial-gradient(2px 2px at 310px 220px, #fff 60%, transparent 62%),
        radial-gradient(1.3px 1.3px at 70px 260px, rgba(255,255,255,.6) 60%, transparent 62%),
        radial-gradient(1.8px 1.8px at 190px 320px, rgba(255,255,255,.8) 60%, transparent 62%);
    background-size: 360px 360px, 300px 300px, 420px 420px, 340px 340px, 260px 260px, 380px 380px;
    animation: skSnow 14s linear infinite;
}
@keyframes skSnow { to { background-position: 20px 360px, -16px 300px, 10px 420px, -24px 340px, 14px 260px, -8px 380px; } }
@media (prefers-reduced-motion: reduce) { body.gtg-home.sk-theme-xmas .image-cover.hero-header::after { animation: none; } }
body.gtg-home.sk-theme-xmas .hero-headline h1 { color: #fff; }
body.gtg-home.sk-theme-xmas .hero-headline h1::after { content: ""; display: block; width: 72px; height: 4px; margin: 10px auto 0; border-radius: 2px; background: var(--sk-x-gold); }
body.gtg-home.sk-theme-xmas .hero-headline p { color: rgba(255,255,255,.88); }
/* search box */
body.gtg-home.sk-theme-xmas #tour-pills-tab .tab-link h3, body.gtg-home.sk-theme-xmas #tour-pills-tab .tab-link.active h3, body.gtg-home.sk-theme-xmas #tour-pills-tab .tab-link:hover h3 { color: var(--sk-x-red) !important; }
body.gtg-home.sk-theme-xmas #tour-pills-tab .tab-promo-badge, body.gtg-home.sk-theme-xmas .tab-promo-badge { background: var(--sk-x-gold) !important; color: #3b2a00 !important; }
body.gtg-home.sk-theme-xmas .rg-nav-itm .trust-badges-inline .tb-item { color: #1f3d2e !important; }
body.gtg-home.sk-theme-xmas .rg-nav-itm .trust-badges-inline .tb-item svg, body.gtg-home.sk-theme-xmas .rg-nav-itm .trust-badges-inline .tb-item svg * { stroke: var(--sk-x-green) !important; }
body.gtg-home.sk-theme-xmas .rg-nav-itm input[type=radio] { accent-color: var(--sk-x-red); }
body.gtg-home.sk-theme-xmas .wdp-cls-btn { background: linear-gradient(90deg, #1f8a56, #0b5c36) !important; color: #fff !important; }
body.gtg-home.sk-theme-xmas .wdp-cls-btn:hover { background: linear-gradient(90deg, #1a7a4b, #09492b) !important; }
body.gtg-home.sk-theme-xmas .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch,
body.gtg-home.sk-theme-xmas button.btn.btn-primary.full-width.fw-medium.roundformsearch {
    background: linear-gradient(90deg, #e63946, #c1121f) !important; color: #fff !important; border: 0 !important; box-shadow: 0 6px 18px rgba(212, 36, 38, .35) !important;
}
body.gtg-home.sk-theme-xmas .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover,
body.gtg-home.sk-theme-xmas button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover { background: linear-gradient(90deg, #d62839, #a40e1a) !important; color: #fff !important; }
body.gtg-home.sk-theme-xmas .web-sp .input-label.hsrlable { color: var(--sk-x-green) !important; }
body.gtg-home.sk-theme-xmas .swapButton, body.gtg-home.sk-theme-xmas .swapButton i, body.gtg-home.sk-theme-xmas .multiswapButton i { color: var(--sk-x-red) !important; }
@media (min-width: 992px) {
    body.gtg-home.sk-theme-xmas .search-wrap.bg-white.rounded-3.p-3::before { background: rgba(255, 250, 246, .78); -webkit-backdrop-filter: blur(18px) saturate(140%); backdrop-filter: blur(18px) saturate(140%); }
    body.gtg-home.sk-theme-xmas .web-sp { box-shadow: 0 0 0 1px rgba(212, 36, 38, .25) !important; }
}
/* USP strip + deals */
body.gtg-home.sk-theme-xmas section.gtg-usp { background: #f3f8f5; border-bottom: 1px solid #d9ebe0; }
body.gtg-home.sk-theme-xmas .gtg-usp li { color: #14301f; }
body.gtg-home.sk-theme-xmas .gtg-promo-hero img { box-shadow: 0 0 0 1px rgba(245, 194, 66, .6) !important; }
body.gtg-home.sk-theme-xmas #gtg-deals { background: #fbf7f2 !important; }
body.gtg-home.sk-theme-xmas .gtg-deal-badge { background: var(--sk-x-gold); color: #3b2a00; }
body.gtg-home.sk-theme-xmas .gtg-deal-btn { background: linear-gradient(90deg, #e63946, #c1121f); color: #fff; box-shadow: 0 2px 8px rgba(212, 36, 38, .3); }
body.gtg-home.sk-theme-xmas .gtg-deal-btn:hover { background: linear-gradient(90deg, #d62839, #a40e1a); color: #fff; }
body.gtg-home.sk-theme-xmas .gtg-deal-flex { color: var(--sk-x-green); }
/* airport list + calendar accents */
body.gtg-home.sk-theme-xmas .location_search li:hover, body.gtg-home.sk-theme-xmas .location_search_to li:hover,
body.gtg-home.sk-theme-xmas .location_search li.gtg-ac-active, body.gtg-home.sk-theme-xmas .location_search_to li.gtg-ac-active { background: var(--sk-x-soft) !important; }
body.gtg-home.sk-theme-xmas .location_search li::before, body.gtg-home.sk-theme-xmas .location_search_to li::before { background-color: var(--sk-x-soft); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23157347'%3E%3Cpath d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5l8 2.5z'/%3E%3C/svg%3E"); }
body.gtg-home.sk-theme-xmas .location_search .airport_code, body.gtg-home.sk-theme-xmas .location_search_to .airport_code { color: var(--sk-x-green-dark) !important; background: var(--sk-x-soft); }
body.gtg-home.sk-theme-xmas .ls-search-icon-wrap::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23157347' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E"); }
body.gtg-home.sk-theme-xmas .wdp-day.wdp-selected, body.gtg-home.sk-theme-xmas .wdp-day.wdp-range-start, body.gtg-home.sk-theme-xmas .wdp-day.wdp-range-end { background: var(--sk-x-red) !important; color: #fff !important; }
body.gtg-home.sk-theme-xmas .wdp-day.wdp-in-range { background: #fdecec !important; }
body.gtg-home.sk-theme-xmas .wdp-day:not(.wdp-past):not(.wdp-muted):not(.wdp-selected):not(.wdp-range-start):not(.wdp-range-end):hover { background: #fdecec !important; }

/* 2026-10-15 owner: "you added some animation on Christmas, add the same on Black Friday" → orange embers drifting up over the
   Black Friday hero (same technique as the Christmas snow: layered radial-gradient dots, background-position animated). */
body.gtg-home.sk-theme-bf .image-cover.hero-header > .container { position: relative; z-index: 1; }
body.gtg-home.sk-theme-bf .image-cover.hero-header::after {
    content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0; opacity: .85;
    background-image:
        radial-gradient(3.4px 3.4px at 30px 300px, #ffc27a 45%, rgba(255, 150, 60, .35) 70%, transparent 100%),
        radial-gradient(2.6px 2.6px at 140px 120px, rgba(255, 160, 70, .95) 45%, transparent 100%),
        radial-gradient(2.2px 2.2px at 240px 260px, rgba(255, 200, 130, .85) 45%, transparent 100%),
        radial-gradient(3px 3px at 320px 60px, #ff9a3a 45%, rgba(255, 122, 0, .35) 70%, transparent 100%),
        radial-gradient(2px 2px at 80px 200px, rgba(255, 220, 170, .8) 45%, transparent 100%),
        radial-gradient(2.8px 2.8px at 200px 340px, rgba(255, 130, 20, .9) 45%, transparent 100%);
    background-size: 360px 360px, 300px 300px, 420px 420px, 340px 340px, 260px 260px, 380px 380px;
    animation: skEmbers 16s linear infinite;
}
@keyframes skEmbers { to { background-position: 24px -360px, -18px -300px, 12px -420px, -26px -340px, 16px -260px, -10px -380px; } }
@media (prefers-reduced-motion: reduce) { body.gtg-home.sk-theme-bf .image-cover.hero-header::after { animation: none; } }

/* ================================================================ Theme: Halloween, everyday version (2026-10-15, Admin › Home settings › Theme)
   body.sk-theme-hw. Calm enough for regular use: deep purple header, twilight hero with a few bats drifting slowly across,
   lavender glass box, purple class pill / field labels / deal buttons, pumpkin-orange Search button and badges. */
body.gtg-home.sk-theme-hw {
    --gtg-header: #1c1133;
    --gtg-cyan: #ff8c1a;        /* Search button on phones + any cyan accent */
    --gtg-cyan-hover: #f07a05;
    --gtg-icon: #7c3aed;
    --sk-h-orange: #ff8c1a; --sk-h-orange-dark: #f07a05; --sk-h-purple: #6d28d9; --sk-h-purple-dark: #4c1d95; --sk-h-soft: #f4effc;
}
/* hero: three bat layers drifting right at different speeds (CSS only; off for reduced motion) */
body.gtg-home.sk-theme-hw .image-cover.hero-header { background-color: #1c1133 !important; }
body.gtg-home.sk-theme-hw .image-cover.hero-header > .container { position: relative; z-index: 1; }
body.gtg-home.sk-theme-hw .image-cover.hero-header::after {
    content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0; opacity: .5;
    /* one bat per wide tile, so they are sparse (a 64 × 32 bat inside a 1200 / 900 / 1500-unit-wide box) */
    --bat1: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 40'%3E%3Cpath transform='translate(300 4)' fill='%230b0618' d='M32 10c-3 6-7 7-10 5-2 4-6 6-10 5 1 4 0 7-3 9 7-1 12 1 15 5 2-4 5-6 8-6s6 2 8 6c3-4 8-6 15-5-3-2-4-5-3-9-4 1-8-1-10-5-3 2-7 1-10-5z'/%3E%3C/svg%3E");
    --bat2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 40'%3E%3Cpath transform='translate(600 8) scale(.7)' fill='%230b0618' d='M32 10c-3 6-7 7-10 5-2 4-6 6-10 5 1 4 0 7-3 9 7-1 12 1 15 5 2-4 5-6 8-6s6 2 8 6c3-4 8-6 15-5-3-2-4-5-3-9-4 1-8-1-10-5-3 2-7 1-10-5z'/%3E%3C/svg%3E");
    --bat3: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1500 40'%3E%3Cpath transform='translate(100 12) scale(.5)' fill='%230b0618' d='M32 10c-3 6-7 7-10 5-2 4-6 6-10 5 1 4 0 7-3 9 7-1 12 1 15 5 2-4 5-6 8-6s6 2 8 6c3-4 8-6 15-5-3-2-4-5-3-9-4 1-8-1-10-5-3 2-7 1-10-5z'/%3E%3C/svg%3E");
    background-image: var(--bat1), var(--bat2), var(--bat3);
    background-repeat: repeat-x, repeat-x, repeat-x;
    background-size: 1200px 40px, 900px 40px, 1500px 40px;
    background-position: 0 90px, 0 170px, 0 130px;
    animation: skBats 70s linear infinite;
}
@keyframes skBats { to { background-position: 1200px 90px, 1800px 170px, 1500px 130px; } }
@media (prefers-reduced-motion: reduce) { body.gtg-home.sk-theme-hw .image-cover.hero-header::after { animation: none; } }
body.gtg-home.sk-theme-hw .hero-headline h1 { color: #fff; }
body.gtg-home.sk-theme-hw .hero-headline h1::after { content: ""; display: block; width: 72px; height: 4px; margin: 10px auto 0; border-radius: 2px; background: var(--sk-h-orange); }
body.gtg-home.sk-theme-hw .hero-headline p { color: rgba(255,255,255,.88); }
/* search box */
body.gtg-home.sk-theme-hw #tour-pills-tab .tab-link h3, body.gtg-home.sk-theme-hw #tour-pills-tab .tab-link.active h3, body.gtg-home.sk-theme-hw #tour-pills-tab .tab-link:hover h3 { color: var(--sk-h-purple) !important; }
body.gtg-home.sk-theme-hw #tour-pills-tab .tab-promo-badge, body.gtg-home.sk-theme-hw .tab-promo-badge { background: var(--sk-h-orange) !important; color: #1c1133 !important; }
body.gtg-home.sk-theme-hw .rg-nav-itm .trust-badges-inline .tb-item { color: #2e1f4d !important; }
body.gtg-home.sk-theme-hw .rg-nav-itm .trust-badges-inline .tb-item svg, body.gtg-home.sk-theme-hw .rg-nav-itm .trust-badges-inline .tb-item svg * { stroke: var(--sk-h-purple) !important; }
body.gtg-home.sk-theme-hw .rg-nav-itm input[type=radio] { accent-color: var(--sk-h-purple); }
body.gtg-home.sk-theme-hw .wdp-cls-btn { background: linear-gradient(90deg, #7c3aed, #4c1d95) !important; color: #fff !important; }
body.gtg-home.sk-theme-hw .wdp-cls-btn:hover { background: linear-gradient(90deg, #6d28d9, #3b1578) !important; }
body.gtg-home.sk-theme-hw .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch,
body.gtg-home.sk-theme-hw button.btn.btn-primary.full-width.fw-medium.roundformsearch {
    background: linear-gradient(90deg, #ffa53d, #f07a05) !important; color: #1c1133 !important; border: 0 !important; box-shadow: 0 6px 18px rgba(255, 140, 26, .35) !important;
}
body.gtg-home.sk-theme-hw .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover,
body.gtg-home.sk-theme-hw button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover { background: linear-gradient(90deg, #ff9a2e, #d96c00) !important; color: #1c1133 !important; }
body.gtg-home.sk-theme-hw .web-sp .input-label.hsrlable { color: var(--sk-h-purple) !important; }
body.gtg-home.sk-theme-hw .swapButton, body.gtg-home.sk-theme-hw .swapButton i, body.gtg-home.sk-theme-hw .multiswapButton i { color: var(--sk-h-orange-dark) !important; }
@media (min-width: 992px) {
    body.gtg-home.sk-theme-hw .search-wrap.bg-white.rounded-3.p-3::before { background: rgba(248, 244, 255, .78); -webkit-backdrop-filter: blur(18px) saturate(140%); backdrop-filter: blur(18px) saturate(140%); }
    body.gtg-home.sk-theme-hw .web-sp { box-shadow: 0 0 0 1px rgba(109, 40, 217, .25) !important; }
}
/* USP strip + deals */
body.gtg-home.sk-theme-hw section.gtg-usp { background: #f6f2ff; border-bottom: 1px solid #e6dcfa; }
body.gtg-home.sk-theme-hw .gtg-usp li { color: #2e1f4d; }
body.gtg-home.sk-theme-hw .gtg-promo-hero img { box-shadow: 0 0 0 1px rgba(255, 140, 26, .45) !important; }
body.gtg-home.sk-theme-hw #gtg-deals { background: #faf7ff !important; }
body.gtg-home.sk-theme-hw .gtg-deal-badge { background: var(--sk-h-orange); color: #1c1133; }
body.gtg-home.sk-theme-hw .gtg-deal-btn { background: linear-gradient(90deg, #7c3aed, #4c1d95); color: #fff; box-shadow: 0 2px 8px rgba(109, 40, 217, .3); }
body.gtg-home.sk-theme-hw .gtg-deal-btn:hover { background: linear-gradient(90deg, #6d28d9, #3b1578); color: #fff; }
body.gtg-home.sk-theme-hw .gtg-deal-flex { color: var(--sk-h-purple); }
/* airport list + calendar accents */
body.gtg-home.sk-theme-hw .location_search li:hover, body.gtg-home.sk-theme-hw .location_search_to li:hover,
body.gtg-home.sk-theme-hw .location_search li.gtg-ac-active, body.gtg-home.sk-theme-hw .location_search_to li.gtg-ac-active { background: var(--sk-h-soft) !important; }
body.gtg-home.sk-theme-hw .location_search li::before, body.gtg-home.sk-theme-hw .location_search_to li::before { background-color: var(--sk-h-soft); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%236d28d9'%3E%3Cpath d='M21 16v-2l-8-5V3.5a1.5 1.5 0 0 0-3 0V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5l8 2.5z'/%3E%3C/svg%3E"); }
body.gtg-home.sk-theme-hw .location_search .airport_code, body.gtg-home.sk-theme-hw .location_search_to .airport_code { color: var(--sk-h-purple-dark) !important; background: var(--sk-h-soft); }
body.gtg-home.sk-theme-hw .ls-search-icon-wrap::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236d28d9' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E"); }
body.gtg-home.sk-theme-hw .wdp-day.wdp-selected, body.gtg-home.sk-theme-hw .wdp-day.wdp-range-start, body.gtg-home.sk-theme-hw .wdp-day.wdp-range-end { background: var(--sk-h-purple) !important; color: #fff !important; }
body.gtg-home.sk-theme-hw .wdp-day.wdp-in-range { background: var(--sk-h-soft) !important; }
body.gtg-home.sk-theme-hw .wdp-day:not(.wdp-past):not(.wdp-muted):not(.wdp-selected):not(.wdp-range-start):not(.wdp-range-end):hover { background: var(--sk-h-soft) !important; }

/* ================================================================ Theme: Navy & Orange, everyday version (2026-10-15, Admin › Home settings › Theme)
   body.sk-theme-blue. Catchy but calm: deep navy header, sunrise hero with two soft light blobs drifting (orange + blue), cool
   glass box, orange Search button with a light sweep every few seconds, blue class pill / field labels / deal buttons,
   orange badges, swap arrows and headline underline. */
body.gtg-home.sk-theme-blue {
    --gtg-header: #0b1f4b;
    --gtg-cyan: #ff8a00;        /* Search button on phones + any cyan accent */
    --gtg-cyan-hover: #f07a00;
    --gtg-icon: #ff8a00;
    --sk-b-orange: #ff8a00; --sk-b-orange-dark: #f07a00; --sk-b-blue: #1d4ed8; --sk-b-blue-dark: #1e3a8a; --sk-b-soft: #eef4ff;
}
/* hero: two soft light blobs drifting slowly */
body.gtg-home.sk-theme-blue .image-cover.hero-header { background-color: #0b1f4b !important; }
body.gtg-home.sk-theme-blue .image-cover.hero-header > .container { position: relative; z-index: 1; }
body.gtg-home.sk-theme-blue .image-cover.hero-header::after {
    content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0; opacity: .55; mix-blend-mode: screen;
    background-image: radial-gradient(420px 320px at 20% 80%, rgba(255, 138, 0, .55), transparent 70%), radial-gradient(520px 380px at 85% 15%, rgba(59, 130, 246, .5), transparent 70%);
    animation: skGlow 18s ease-in-out infinite alternate;
}
@keyframes skGlow { to { background-position: 160px -60px, -140px 80px; } }
/* the Search button: a light sweep every 6 s */
body.gtg-home.sk-theme-blue .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch { position: relative; overflow: hidden; }
body.gtg-home.sk-theme-blue .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch::after {
    content: ""; position: absolute; top: -20%; bottom: -20%; left: -40%; width: 30%; pointer-events: none;
    background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .55), transparent); transform: skewX(-18deg);
    animation: skSweep 6s ease-in-out infinite;
}
@keyframes skSweep { 0%, 70% { left: -40%; } 100% { left: 130%; } }
@media (prefers-reduced-motion: reduce) {
    body.gtg-home.sk-theme-blue .image-cover.hero-header::after, body.gtg-home.sk-theme-blue .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch::after { animation: none; }
}
body.gtg-home.sk-theme-blue .hero-headline h1 { color: #fff; }
body.gtg-home.sk-theme-blue .hero-headline h1::after { content: ""; display: block; width: 72px; height: 4px; margin: 10px auto 0; border-radius: 2px; background: var(--sk-b-orange); }
body.gtg-home.sk-theme-blue .hero-headline p { color: rgba(255,255,255,.88); }
/* search box */
body.gtg-home.sk-theme-blue #tour-pills-tab .tab-link h3, body.gtg-home.sk-theme-blue #tour-pills-tab .tab-link.active h3, body.gtg-home.sk-theme-blue #tour-pills-tab .tab-link:hover h3 { color: var(--sk-b-orange-dark) !important; }
body.gtg-home.sk-theme-blue #tour-pills-tab .tab-promo-badge, body.gtg-home.sk-theme-blue .tab-promo-badge { background: var(--sk-b-orange) !important; color: #0b1f4b !important; }
body.gtg-home.sk-theme-blue .rg-nav-itm .trust-badges-inline .tb-item { color: #1e2a44 !important; }
body.gtg-home.sk-theme-blue .rg-nav-itm .trust-badges-inline .tb-item svg, body.gtg-home.sk-theme-blue .rg-nav-itm .trust-badges-inline .tb-item svg * { stroke: var(--sk-b-blue) !important; }
body.gtg-home.sk-theme-blue .rg-nav-itm input[type=radio] { accent-color: var(--sk-b-blue); }
body.gtg-home.sk-theme-blue .wdp-cls-btn { background: linear-gradient(90deg, #2563eb, #1e3a8a) !important; color: #fff !important; }
body.gtg-home.sk-theme-blue .wdp-cls-btn:hover { background: linear-gradient(90deg, #1d4ed8, #172f6f) !important; }
body.gtg-home.sk-theme-blue .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch,
body.gtg-home.sk-theme-blue button.btn.btn-primary.full-width.fw-medium.roundformsearch {
    background: linear-gradient(90deg, #ffa52b, #f07a00) !important; color: #0b1f4b !important; border: 0 !important; box-shadow: 0 6px 18px rgba(255, 138, 0, .35) !important;
}
body.gtg-home.sk-theme-blue .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover,
body.gtg-home.sk-theme-blue button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover { background: linear-gradient(90deg, #ff9a1a, #d96d00) !important; color: #0b1f4b !important; }
body.gtg-home.sk-theme-blue .web-sp .input-label.hsrlable { color: var(--sk-b-blue) !important; }
body.gtg-home.sk-theme-blue .swapButton, body.gtg-home.sk-theme-blue .swapButton i, body.gtg-home.sk-theme-blue .multiswapButton i { color: var(--sk-b-orange-dark) !important; }
@media (min-width: 992px) {
    body.gtg-home.sk-theme-blue .search-wrap.bg-white.rounded-3.p-3::before { background: rgba(246, 249, 255, .8); -webkit-backdrop-filter: blur(18px) saturate(140%); backdrop-filter: blur(18px) saturate(140%); }
    body.gtg-home.sk-theme-blue .web-sp { box-shadow: 0 0 0 1px rgba(29, 78, 216, .22) !important; }
}
/* USP strip + deals */
body.gtg-home.sk-theme-blue section.gtg-usp { background: #eef4ff; border-bottom: 1px solid #d8e3fb; }
body.gtg-home.sk-theme-blue .gtg-usp li { color: #0b1f4b; }
body.gtg-home.sk-theme-blue .gtg-promo-hero img { box-shadow: 0 0 0 1px rgba(255, 138, 0, .4) !important; }
body.gtg-home.sk-theme-blue #gtg-deals { background: #f5f8ff !important; }
body.gtg-home.sk-theme-blue .gtg-deal-badge { background: var(--sk-b-orange); color: #0b1f4b; }
body.gtg-home.sk-theme-blue .gtg-deal-btn { background: linear-gradient(90deg, #2563eb, #1e3a8a); color: #fff; box-shadow: 0 2px 8px rgba(29, 78, 216, .3); }
body.gtg-home.sk-theme-blue .gtg-deal-btn:hover { background: linear-gradient(90deg, #1d4ed8, #172f6f); color: #fff; }
body.gtg-home.sk-theme-blue .gtg-deal-flex { color: #c2410c; }

/* ---------------------------------------------------------------- 2026-10-20: clearer claims, compact search card
   FlexPay note under the hero line, trust claims in their own row under the Search button, Search button just under the
   fields (no empty band, no button hanging off the card), WhatsApp button that doesn't cover the strip under the hero. */
.gtg-home .sk-flex-note { max-width: 760px; margin: 8px auto 0; font-size: 14px; line-height: 1.45; color: rgba(255, 255, 255, .9); text-shadow: 0 1px 4px rgba(0, 0, 0, .35); }
.gtg-home .sk-flex-note a { color: #fff; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }
.gtg-home .sk-trust-row { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 20px; list-style: none; margin: 12px 0 0; padding: 0; }
.gtg-home .sk-trust-row li { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; color: #475569; white-space: nowrap; }
.gtg-home .sk-trust-row svg { color: #2563eb; flex: none; }
@media (min-width: 992px) {
    .gtg-home .search-wrap.bg-white.rounded-3.p-3 { padding-bottom: 18px !important; }
    body.gtg-home .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch { position: relative !important; top: auto !important; bottom: auto !important; left: auto !important; transform: none !important; }
    .gtg-home .button-container .search-container { margin-top: 16px !important; }
    .gtg-home .search-wrap .tab-content .button-container { position: static !important; }
}
/* WhatsApp: smaller pill low on the left on desktop; an icon at the bottom right on phones (the strip's text starts at the left) */
.gtg-wa-btn { position: fixed; z-index: 9999; left: 16px; bottom: 16px; display: flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 999px;
    background: #25d366; color: #fff !important; font-size: 14px; font-weight: 700; text-decoration: none !important; box-shadow: 0 4px 14px rgba(37, 211, 102, .4); transition: transform .2s; }
.gtg-wa-btn:hover { transform: scale(1.05); }
.gtg-wa-btn svg { width: 20px; height: 20px; }
@media (max-width: 991px) {
    .gtg-wa-btn { left: auto; right: 14px; bottom: 14px; width: 50px; height: 50px; padding: 0; justify-content: center; }
    .gtg-wa-btn .gtg-wa-txt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
    .gtg-wa-btn svg { width: 26px; height: 26px; }
    .gtg-home .sk-flex-note { font-size: 12.5px; padding: 0 12px; }
}
/* white booking card (owner 2026-10-20, was a frosted 80% panel that read as grey over the dark hero), every theme */
@media (min-width: 992px) {
    body.gtg-home .search-wrap.bg-white.rounded-3.p-3::before { background: #fff !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
}
/* hero label + FlexPay section (owner 2026-10-20: hero = find and book; FlexPay below) */
.gtg-home .sk-hero-eyebrow { display: inline-block; margin: 0 0 8px; padding: 4px 12px; border-radius: 999px; background: rgba(255, 255, 255, .14); color: #fff;
    font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.gtg-home .sk-flexpay-sec { padding: 22px 0 6px; }
.gtg-home .sk-flexpay-box { display: flex; align-items: center; justify-content: space-between; gap: 16px 28px; flex-wrap: wrap; padding: 22px 28px; border-radius: 18px;
    background: linear-gradient(120deg, #0b1d3a 0%, #12305c 60%, #1e3a8a 100%); color: #fff; box-shadow: 0 10px 28px rgba(15, 23, 42, .18); }
.gtg-home .sk-flexpay-box h2 { margin: 0 0 4px; font-size: 26px; font-weight: 800; color: #fff; letter-spacing: -.01em; }
.gtg-home .sk-flexpay-line { margin: 0; font-size: 16px; color: rgba(255, 255, 255, .92); }
.gtg-home .sk-flexpay-cond { margin: 6px 0 0; font-size: 13px; color: #fde68a; }
.gtg-home .sk-flexpay-btn { flex: none; padding: 12px 22px; border-radius: 999px; background: #f97316; color: #fff !important; font-weight: 700; font-size: 15px; text-decoration: none !important;
    box-shadow: 0 6px 16px rgba(249, 115, 22, .35); }
.gtg-home .sk-flexpay-btn:hover { background: #ea580c; }
@media (max-width: 991px) {
    .gtg-home .sk-flexpay-box { padding: 18px 18px; }
    .gtg-home .sk-flexpay-box h2 { font-size: 21px; }
    .gtg-home .sk-flexpay-line { font-size: 14.5px; }
    .gtg-home .sk-flexpay-btn { width: 100%; text-align: center; }
    .gtg-home .sk-hero-eyebrow { font-size: 10.5px; }
}
/* WhatsApp bubble at the bottom right on every screen, clear of the strip's first item */
@media (min-width: 992px) { .gtg-wa-btn { left: auto; right: 20px; bottom: 20px; } }
/* hero ends just under the booking card (owner 2026-10-20: "reduce the empty space below the booking card"); the Search button
   no longer hangs out of the card, so the old 78 px room for it and the full-screen height go */
@media (min-width: 992px) {
    body.gtg-home .image-cover.hero-header { min-height: 0 !important; justify-content: flex-start !important; padding: 92px 0 34px !important; }
    body.gtg-home .image-cover.hero-header > .container { padding-bottom: 0 !important; }
}

/* ================================================================ Default theme: navy, white and orange (owner 2026-10-20)
   Header #10234B; hero = navy fading into the Hero Section picture on the right; white booking card without the raised
   "Flights" tab; one orange #FF9500 "Search flights" button with navy text; other controls plain blue #2563EB;
   sections below #F5F7FB; text #14213D. Scoped to body.sk-theme-default (config/themes.php) so seasonal themes keep their look. */
body.gtg-home.sk-theme-default { --gtg-header: #10234B; background: #F5F7FB; color: #14213D; }
body.gtg-home.sk-theme-default .travel24-header, body.gtg-home.sk-theme-default .travel24-header.is-scrolled { background: #10234B !important; }
/* hero text: left-aligned with the card, larger headline, plain small label */
body.gtg-home.sk-theme-default .hero-headline .col-12 { text-align: left !important; }
body.gtg-home.sk-theme-default .sk-hero-eyebrow { background: none; padding: 0; margin: 0 0 10px; border-radius: 0; font-size: 13px; letter-spacing: .14em; color: #FFB24D; }
body.gtg-home.sk-theme-default .image-cover.hero-header .hero-headline h1 { font-size: 56px !important; line-height: 1.08 !important; letter-spacing: -.02em; max-width: 760px; margin: 0 0 10px !important; text-shadow: none !important; }
body.gtg-home.sk-theme-default .image-cover.hero-header .hero-headline h1 + p { font-size: 19px !important; max-width: 640px; color: rgba(255, 255, 255, .88) !important; text-shadow: none !important; }
@media (min-width: 992px) {
    /* no raised "Flights" tab and plane: a plain rounded white card */
    body.gtg-home.sk-theme-default #tour-pills-tab { display: none !important; }
    body.gtg-home.sk-theme-default .image-cover.hero-header .container > .row.hero-headline { margin-bottom: 26px !important; }
    body.gtg-home.sk-theme-default .search-wrap.bg-white.rounded-3.p-3,
    body.gtg-home.sk-theme-default .search-wrap.bg-white.rounded-3.p-3::before { border-radius: 18px !important; }
    body.gtg-home.sk-theme-default .search-wrap.bg-white.rounded-3.p-3 { box-shadow: 0 12px 32px rgba(16, 35, 75, .22) !important; margin-top: 0 !important; }
    /* hero ends just under the card */
    body.gtg-home.sk-theme-default .image-cover.hero-header { min-height: 0 !important; justify-content: flex-start !important; padding: 104px 0 34px !important; }
    body.gtg-home.sk-theme-default .image-cover.hero-header > .container { padding-bottom: 0 !important; }
}
@media (max-width: 991px) {
    body.gtg-home.sk-theme-default .image-cover.hero-header .hero-headline h1 { font-size: 34px !important; }
    body.gtg-home.sk-theme-default .image-cover.hero-header .hero-headline h1 + p { font-size: 16px !important; }
    body.gtg-home.sk-theme-default .hero-headline .col-12 { padding: 0 16px !important; }
}
/* one orange action; other controls plain blue */
body.gtg-home.sk-theme-default .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch,
body.gtg-home.sk-theme-default button.btn.btn-primary.full-width.fw-medium.roundformsearch {
    background: #FF9500 !important; color: #10234B !important; box-shadow: 0 8px 20px rgba(255, 149, 0, .35) !important; border: 0 !important; }
body.gtg-home.sk-theme-default .search-wrap .tab-content button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover,
body.gtg-home.sk-theme-default button.btn.btn-primary.full-width.fw-medium.roundformsearch:hover { background: #F08700 !important; color: #10234B !important; }
body.gtg-home.sk-theme-default .wdp-cls-btn { background: #2563EB !important; box-shadow: none !important; }
body.gtg-home.sk-theme-default .sk-flexpay-btn { background: #2563EB; box-shadow: none; }
body.gtg-home.sk-theme-default .sk-flexpay-btn:hover { background: #1d4ed8; }
body.gtg-home.sk-theme-default .sk-flexpay-box { background: #10234B; }
/* sections below */
body.gtg-home.sk-theme-default .gtg-usp { background: #fff; color: #14213D; }
.gtg-wa-btn.is-wait { opacity: 0; transform: translateY(12px); pointer-events: none; }
.gtg-wa-btn { transition: opacity .25s, transform .25s; }
/* default theme: the card's background is a plain rounded rectangle (it was drawn 60 px higher with the raised tab's outline) */
@media (min-width: 992px) {
    body.gtg-home.sk-theme-default .search-wrap.bg-white.rounded-3.p-3::before { top: 0 !important; height: 100% !important; clip-path: none !important; -webkit-clip-path: none !important; border-radius: 18px !important; }
    body.gtg-home.sk-theme-default .search-wrap.bg-white.rounded-3.p-3 { margin-top: 18px !important; }
}
/* phones: the entry tile becomes a plain white "Search flights" card (no raised tab, no plane picture) */
@media (max-width: 991px) {
    body.gtg-home.sk-theme-default .hero-headline h1 + p { display: block !important; margin-top: 4px !important; }
    body.gtg-home.sk-theme-default #tour-pills-tab { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 16px !important; }
    body.gtg-home.sk-theme-default #tour-pills-tab .nav-item { width: 100% !important; max-width: none !important; margin: 0 !important; }
    body.gtg-home.sk-theme-default #tour-pills-tab .tab-link { display: flex !important; align-items: center !important; justify-content: space-between !important; width: 100% !important; height: auto !important;
        min-height: 0 !important; padding: 14px 16px !important; border-radius: 14px !important; background: #fff !important; border: 0 !important; box-shadow: 0 8px 22px rgba(16, 35, 75, .25) !important; }
    body.gtg-home.sk-theme-default #tour-pills-tab .tab-link h3 { font-size: 16px !important; color: #14213D !important; margin: 0 !important; }
    body.gtg-home.sk-theme-default #tour-pills-tab .tab-link h3::before { content: 'Where are you flying? '; display: block; font-size: 12px; font-weight: 600; color: #64748b; }
    body.gtg-home.sk-theme-default #tour-pills-tab .tab-link::after { content: 'Search flights'; padding: 10px 16px; border-radius: 10px; background: #FF9500; color: #10234B; font-weight: 800; font-size: 14px; }
    body.gtg-home.sk-theme-default #tour-pills-tab .illustration, body.gtg-home.sk-theme-default #tour-pills-tab .tab-promo-badge, body.gtg-home.sk-theme-default #tour-pills-tab .sub { display: none !important; }
    body.gtg-home.sk-theme-default .image-cover.hero-header .container > .row.hero-headline { margin-bottom: 18px !important; }
}
@media (max-width: 991px) {
    body.gtg-home.sk-theme-default .image-cover.hero-header .hero-headline h1 { padding: 0 !important; }
    body.gtg-home.sk-theme-default .image-cover.hero-header { padding-bottom: 30px !important; }
}

/* ================================================================ Homepage sections, finishing pass (owner 2026-10-20)
   Order: hero → offer → flight deals → FlexPay → why book → before you book (FAQ) → popular routes → newsletter → footer. */
/* hero: headline block as wide as the card (1120 px) so the left edges match at every width; readable placeholders */
@media (min-width: 992px) {
    body.gtg-home.sk-theme-default .hero-headline { justify-content: center; }
    body.gtg-home.sk-theme-default .hero-headline > .col-12 { max-width: 1144px; }
}
.gtg-home .web-sp input::placeholder, .gtg-home .web-sp .form-control::placeholder { color: #64748B !important; opacity: 1 !important; }
.gtg-home .sk-mc .sk-mc-field.is-empty .sk-mc-val { color: #64748B; }
@media (max-width: 991px) {
    /* phone search card: one label + the orange button (no extra "Flights" line) */
    body.gtg-home.sk-theme-default #tour-pills-tab .tab-link h3 { font-size: 0 !important; line-height: 0 !important; }
    body.gtg-home.sk-theme-default #tour-pills-tab .tab-link h3::before { content: 'Where are you flying?'; font-size: 15px; font-weight: 700; color: #14213D; line-height: 1.3; }
    body.gtg-home.sk-theme-default .image-cover.hero-header { padding-bottom: 20px !important; }
    /* tighter benefits strip */
    .gtg-usp ul { gap: 8px !important; padding: 12px 0 !important; }
    .gtg-usp li { font-size: 14px !important; }
    .gtg-usp li svg { width: 24px; height: 24px; }
}
.gtg-home .sk-sec-h { font-size: 24px; font-weight: 800; color: #14213D; margin: 0 0 18px; letter-spacing: -.01em; }

/* offer card (coupon from Admin, shown only while active) */
.gtg-home .gtg-promo-hero { padding: 0; }
.gtg-home .sk-offer { max-width: 1120px; margin: 24px auto 0; display: flex; align-items: center; justify-content: space-between; gap: 14px 24px; flex-wrap: wrap;
    padding: 18px 24px; border-radius: 16px; background: #fff; border: 1px solid #fde3bf; box-shadow: 0 4px 14px rgba(16, 35, 75, .06); }
.gtg-home .sk-offer-amt { font-size: 22px; font-weight: 800; color: #14213D; }
.gtg-home .sk-offer-terms { font-size: 13px; color: #64748B; margin-top: 2px; }
.gtg-home .sk-offer-code { display: flex; align-items: center; gap: 10px; padding: 8px 8px 8px 14px; border: 1.5px dashed #FF9500; border-radius: 12px; background: #fff8ee; }
.gtg-home .sk-offer-code span { font-size: 12px; color: #64748B; }
.gtg-home .sk-offer-code b { font-size: 18px; letter-spacing: .12em; color: #10234B; }
.gtg-home .sk-offer-copy { padding: 8px 14px; border: 0; border-radius: 8px; background: #2563EB; color: #fff; font-weight: 700; font-size: 13px; cursor: pointer; }
@media (max-width: 991px) {
    .gtg-home .sk-offer { margin: 16px 16px 0; padding: 16px; }
    .gtg-home .sk-offer-amt { font-size: 19px; }
    .gtg-home .sk-offer-code { width: 100%; justify-content: space-between; }
}

/* flight deals: the full fare first, what it covers, solid blue button, neutral label */
.gtg-home .gtg-deal-price { font-size: 24px; font-weight: 800; color: #14213D; }
.gtg-home .gtg-deal-covers { display: block; font-size: 12px; color: #64748B; margin-top: 2px; }
.gtg-home .gtg-deal-flex { font-size: 11.5px !important; color: #64748B !important; }
.gtg-home .gtg-deal-btn, body.gtg-home .gtg-deal-btn { background: #2563EB !important; color: #fff !important; box-shadow: none !important; }
.gtg-home .gtg-deal-btn:hover, body.gtg-home .gtg-deal-btn:hover { background: #1d4ed8 !important; }
.gtg-home .gtg-deal-badge { background: rgba(16, 35, 75, .82) !important; color: #fff !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 600 !important; }

/* FlexPay below the deals */
.gtg-home .sk-flexpay-sec { padding: 8px 0 32px; background: #f9fafb; }

/* why book: heading + three equal columns */
.gtg-home section.gtg-info { background: #fff; padding: 44px 0; }
.gtg-home .sk-why-h { font-size: 24px; font-weight: 800; color: #14213D; margin: 0 0 22px; text-align: left; }
.gtg-home .sk-why { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.gtg-home .sk-why-item { padding: 20px; border-radius: 14px; background: #F5F7FB; }
.gtg-home .sk-why-ic { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: #fff; color: #2563EB; margin-bottom: 10px; }
.gtg-home .sk-why-item h3 { font-size: 17px; font-weight: 700; color: #14213D; margin: 0 0 4px; }
.gtg-home .sk-why-item p { font-size: 14px; color: #475569; margin: 0; line-height: 1.5; }
@media (max-width: 767px) { .gtg-home .sk-why { grid-template-columns: 1fr; gap: 10px; } .gtg-home .sk-why-item { padding: 14px 16px; } }

/* before you book */
.gtg-home .sk-faq { padding: 40px 0; background: #F5F7FB; }
.gtg-home .sk-faq-list { display: grid; gap: 10px; max-width: 880px; }
.gtg-home .sk-faq details { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 0 18px; }
.gtg-home .sk-faq summary { list-style: none; cursor: pointer; padding: 15px 0; font-size: 16px; font-weight: 700; color: #14213D; display: flex; justify-content: space-between; gap: 12px; }
.gtg-home .sk-faq summary::-webkit-details-marker { display: none; }
.gtg-home .sk-faq summary::after { content: '+'; font-size: 20px; line-height: 1; color: #2563EB; }
.gtg-home .sk-faq details[open] summary::after { content: '\2212'; }
.gtg-home .sk-faq details p { margin: 0 0 15px; font-size: 14.5px; line-height: 1.6; color: #475569; }
.gtg-home .sk-faq details a { color: #2563EB; font-weight: 600; }

/* popular routes, grouped */
.gtg-home .sk-routes { padding: 40px 0 32px; background: #fff; }
.gtg-home .sk-routes-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.gtg-home .sk-routes-group h3 { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #64748B; margin: 0 0 10px; }
.gtg-home .sk-routes-group ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.gtg-home .sk-routes-group a { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 16px; border: 1px solid #e2e8f0; border-radius: 12px;
    color: #14213D; font-weight: 600; font-size: 15px; text-decoration: none; background: #fff; }
.gtg-home .sk-routes-group a:hover { border-color: #93c5fd; background: #f8fbff; }
.gtg-home .sk-routes-group small { font-size: 13px; color: #2563EB; font-weight: 700; white-space: nowrap; }
@media (max-width: 767px) { .gtg-home .sk-routes-groups { grid-template-columns: 1fr; } }

/* newsletter: compact strip, no stock photo */
body.gtg-home .cta-card { display: flex !important; align-items: center; justify-content: space-between; gap: 16px 28px; flex-wrap: wrap; padding: 22px 26px !important;
    border-radius: 16px !important; background: #10234B !important; min-height: 0 !important; box-shadow: none !important; }
body.gtg-home .cta-card-body { display: contents; }
body.gtg-home .cta-card-body h4 { color: #fff !important; font-size: 20px !important; margin: 0 !important; }
body.gtg-home .cta-card-body > p { color: rgba(255, 255, 255, .8) !important; margin: 0 !important; font-size: 14px !important; flex: 1 1 260px; }
body.gtg-home .cta-card-form { flex: 1 1 340px; margin: 0 !important; }

/* footer: navy, tighter */
.gtg-footer { background: #10234B !important; padding: 34px 0 24px !important; }
.gtg-footer h2 { font-size: 18px !important; margin-bottom: 14px !important; }
.gtg-footer li { margin-bottom: 10px !important; }
.gtg-payments { background: #0b1a3a !important; margin-top: 28px !important; padding: 18px 20px !important; }
.gtg-partners { margin: 18px 0 12px !important; }
.gtg-badge-iata { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 6px; background: #fff; color: #1d3f8f; font-weight: 800; font-size: 13px; letter-spacing: .02em; }
@media (max-width: 991px) {
    .gtg-footer-grid { gap: 18px !important; }
    .gtg-footer h2 { font-size: 16px !important; margin-bottom: 10px !important; }
    .gtg-footer li { margin-bottom: 8px !important; }
}
/* beats sk-home.css (.web-sp .form-group.hdd-arrow input.form-control::placeholder { color: #ccc !important }) */
body.gtg-home .web-sp .form-group.hdd-arrow input.form-control::placeholder { color: #64748B !important; opacity: 1 !important; }
@media (max-width: 767px) {
    body.gtg-home .cta-card { flex-direction: column !important; align-items: stretch !important; padding: 18px 16px !important; gap: 10px !important; }
    body.gtg-home .cta-card-body > p, body.gtg-home .cta-card-form { flex: none !important; }
    body.gtg-home .cta-card-body h4 { text-align: left !important; font-size: 18px !important; }
    body.gtg-home .cta-card-input { width: 100% !important; margin: 0 !important; }
}

/* ---------------------------------------------------------------- phone route selector (partials/sk-mobile-route, 2026-10-20) */
.sk-mr { display: none; }
@media (max-width: 991px) {
    body.gtg-home.sk-theme-default .sk-mr { display: block; margin: 0 16px; padding: 14px; border-radius: 16px; background: #fff; box-shadow: 0 10px 26px rgba(16, 35, 75, .25); }
    body.gtg-home.sk-theme-default #tour-pills-tab, body.gtg-home.sk-theme-default .rg-navpill { display: none !important; }
    .sk-mr-trip { display: flex; gap: 6px; margin: 0 0 12px; }
    .sk-mr-trip button { flex: 1; padding: 8px 10px; border-radius: 999px; border: 1px solid #dbe3ee; background: #fff; color: #334155; font-size: 14px; font-weight: 600; }
    .sk-mr-trip button.is-on { background: #2563EB; border-color: #2563EB; color: #fff; }
    .sk-mr-route { position: relative; display: flex; flex-direction: column; gap: 8px; }
    .sk-mr .sk-mr-field { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; width: 100%; text-align: left; padding: 10px 14px; border: 1px solid #dbe3ee; border-radius: 12px; background: #fff; }
    .sk-mr-lab { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: #2563EB; }
    .sk-mr-val { font-size: 17px; font-weight: 700; color: #14213D; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .sk-mr-val.is-empty { color: #64748B; font-weight: 600; }
    .sk-mr-sub { font-size: 12px; color: #64748B; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .sk-mr .sk-mr-swap { position: absolute; right: 14px; top: 50%; transform: translateY(-50%) rotate(90deg); z-index: 2; width: 34px; height: 34px; padding: 0; border-radius: 50%; border: 1px solid #dbe3ee; background: #fff; color: #f97316; display: grid; place-items: center; box-shadow: 0 1px 3px rgba(15, 23, 42, .12); }
    .sk-mr .sk-mr-search { display: block; width: 100%; margin: 12px 0 0; padding: 14px; border: 0; border-radius: 12px; background: #FF9500; color: #10234B; font-size: 16px; font-weight: 800; box-shadow: 0 6px 16px rgba(255, 149, 0, .3); }
    body.gtg-home.sk-theme-default .image-cover.hero-header .container > .row.hero-headline { margin-bottom: 16px !important; }
}
/* phone route selector: Departing | swap | Arriving in one row (owner 2026-10-20) */
@media (max-width: 991px) {
    body.gtg-home.sk-theme-default .sk-mr { padding: 16px; }
    .sk-mr-route { flex-direction: row !important; align-items: stretch !important; gap: 0 !important; height: 80px; border: 1px solid #dbe3ee; border-radius: 12px; overflow: visible; }
    .sk-mr .sk-mr-field { flex: 1 1 50%; min-width: 0; border: 0 !important; border-radius: 0 !important; padding: 12px 14px !important; justify-content: center; }
    .sk-mr .sk-mr-field#skMrTo { border-left: 1px solid #dbe3ee !important; padding-left: 26px !important; }
    .sk-mr-val { font-size: 16px; }
    .sk-mr-sub { font-size: 11px; }
    .sk-mr .sk-mr-swap { left: 50%; right: auto; top: 50%; transform: translate(-50%, -50%) !important; width: 32px; height: 32px; }
    .sk-mr .sk-mr-search { height: 52px; padding: 0 !important; margin-top: 12px; }
    .sk-mr-trip { margin-bottom: 12px; }
}
