/**
 * Global look for booking-form tab widgets.
 *
 * `.advanced-booking-tabs` is added by js/booking-tabs-class.js to any Elementor tab
 * widget (elementskit / premium / native) that contains a known booking form. This
 * stylesheet forces the same flat, underlined-active-tab visual on every such widget,
 * overriding per-widget Elementor inline CSS.
 *
 * Opt out per widget by adding `non-global-advanced-tabs-rule` in Elementor →
 * Advanced → CSS Classes.
 */

/* Width: keep the inner ekit container full-width so the form below isn't clipped. */
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .ekit-wid-con {
    width: 100% !important;
}

/* Lock width: the tab pane and the inner booking-form wrapper must always stretch
   to the .ekit-wid-con (100%) width set above. Without this, switching from a
   wide tab (Pauschalreise) to a narrow one (Hotel) shrinks the pane to fit the
   active form's content. */
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-tab-wraper,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementskit-fitcontent-tab,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-tab-content,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-tab-pane,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .tab-content,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .tab-pane,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-content-wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-content,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-content,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .hotel_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .tour_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .inclusive_tour_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .sport_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .special_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .flight_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .bus_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .hotelbed_search_wrap,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .form_search_wrap {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

/* ----- Tab nav strip (container <ul>) ------------------------------------- */
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .nav-tabs.elementkit-tab-nav,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-tab-nav,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-nav-list,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-list,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tabs-wrapper {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 0 !important;
    padding: 0 !important;
    margin: 0 0 10px 0 !important;
    box-shadow: none !important;
}

/* ----- Tab nav items (the <li> or wrapping list item) -------------------- */
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .nav-tabs.elementkit-tab-nav > li,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-tab-nav > li,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-nav-list > li,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-list > li {
    background: transparent !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ----- Tab links (the clickable text) ------------------------------------ */
/* `transition: none` is required: ElementsKit sets `transition: all 0.4s` on the link,
   which lets CSS transitions interpolate over our !important values and effectively
   pin them to the per-widget Elementor defaults. Disabling transitions on the link
   lets our overrides apply immediately. */
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-nav-link,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .nav-tabs .elementkit-nav-link,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-nav-item,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-link,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-nav .premium-tab-title,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title > a {
    transition: none !important;
    padding: 0 10px 0 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    color: rgb(122, 122, 122) !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
}

/* ----- Active state ------------------------------------------------------ */
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-nav-link.active,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .nav-tabs .elementkit-nav-link.active,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-nav-item.active,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-link.active,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-nav .premium-tab-title.active,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title.elementor-active,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title.elementor-active > a {
    color: var(--ast-global-color-0, #0170B9) !important;
    background: transparent !important;
    background-color: transparent !important;
    text-decoration: underline !important;
}

/* ----- Hover/focus: keep things calm; no big paddings or backgrounds ----- */
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-nav-link:hover,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-nav-link:focus,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-nav-item:hover,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-link:hover,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title:hover,
.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title:hover > a {
    color: var(--ast-global-color-0, #0170B9) !important;
    background: transparent !important;
    background-color: transparent !important;
    text-decoration: underline !important;
}

/* ============================================================== *
 * GLOBAL FALLBACK — same rules, but targeting the elementor tab  *
 * widgets directly. Fires even if booking-tabs-class.js never    *
 * tagged the widget (new pages with no booking form yet).        *
 *                                                                *
 * Opt-out per widget by adding `non-global-advanced-tabs-rule`   *
 * to Elementor → Advanced → CSS Classes, OR by setting custom    *
 * attribute `data-tt-equal-tabs="off"`.                          *
 * ============================================================== */

.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .ekit-wid-con,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .ekit-wid-con,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .ekit-wid-con {
    width: 100% !important;
}

.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-tab-wraper,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementskit-fitcontent-tab,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-tab-content,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-tab-pane,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .tab-content,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .tab-pane,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-content-wrap,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-content,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-content-wrap,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-content,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tab-content {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

/* Tab nav strip */
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .nav-tabs.elementkit-tab-nav,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-tab-nav,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav-list,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-list,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav-list,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-list,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tabs-wrapper {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 0 !important;
    padding: 0 !important;
    margin: 0 0 10px 0 !important;
    box-shadow: none !important;
}

/* Tab nav items */
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .nav-tabs.elementkit-tab-nav > li,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-tab-nav > li,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav-list > li,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-list > li,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav-list > li,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-list > li {
    background: transparent !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Tab links */
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-nav-link,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .nav-tabs .elementkit-nav-link,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav .premium-tab-title,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav .premium-tab-title,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tab-title,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tab-title > a {
    transition: none !important;
    padding: 0 10px 0 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    font-size: 24px !important;
    font-weight: 500 !important;
    color: rgb(122, 122, 122) !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
}

/* Active state */
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-nav-link.active,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .nav-tabs .elementkit-nav-link.active,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item.active,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link.active,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav .premium-tab-title.active,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item.active,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link.active,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tabs-nav .premium-tab-title.active,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tab-title.elementor-active,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tab-title.elementor-active > a {
    color: var(--ast-global-color-0, #0170B9) !important;
    background: transparent !important;
    background-color: transparent !important;
    text-decoration: underline !important;
}

/* Hover/focus */
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-nav-link:hover,
.elementor-widget-elementskit-tab:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-nav-link:focus,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item:hover,
.elementor-widget-premium-addon-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link:hover,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item:hover,
.elementor-widget-premium-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link:hover,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tab-title:hover,
.elementor-widget-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementor-tab-title:hover > a {
    color: var(--ast-global-color-0, #0170B9) !important;
    background: transparent !important;
    background-color: transparent !important;
    text-decoration: underline !important;
}

/* Elementor may emit page-specific tab typography with equal or higher
   specificity after this file on some destination pages. Keep typography global. */
body .advanced-booking-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementkit-nav-link,
body .advanced-booking-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .nav-tabs .elementkit-nav-link,
body .advanced-booking-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-nav-item,
body .advanced-booking-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tab-link,
body .advanced-booking-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .premium-tabs-nav .premium-tab-title,
body .advanced-booking-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title,
body .advanced-booking-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule) .elementor-tab-title > a,
body .elementor-widget-elementskit-tab.advanced-booking-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .elementkit-nav-link,
body .elementor-widget-premium-addon-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item,
body .elementor-widget-premium-addon-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link,
body .elementor-widget-premium-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-nav-item,
body .elementor-widget-premium-tabs.advanced-booking-tabs:not(.non-global-advanced-tabs-rule):not([data-tt-equal-tabs="off"]) .premium-tab-link {
    font-size: 24px !important;
    line-height: 1.4 !important;
}
