/* Gate East WTE Mega Menu Pro - Frontend */
.ge-wte-mega,
.ge-wte-mega * {
    box-sizing: border-box;
}

.ge-wte-mega {
    --ge-wte-accent: #00796f;
    --ge-wte-hover-bg: #eef9f7;
    --ge-wte-badge: #00796f;
    --ge-wte-text: #101827;
    --ge-wte-muted: #65706d;
    --ge-wte-border: rgba(17, 23, 47, 0.10);
    --ge-wte-img: 58px;
    --ge-wte-style-hover-bg: var(--ge-wte-hover-bg);
    --ge-wte-style-icon-bg: rgba(0, 121, 111, 0.08);
    --ge-wte-style-icon-color: var(--ge-wte-accent);
    --ge-wte-style-icon-size: 28px;
    --ge-wte-style-icon-glyph-size: 14px;
    --ge-wte-style-icon-radius: 50%;
    --ge-wte-offer-bg: transparent;
    --ge-wte-offer-hover-bg: var(--ge-wte-hover-bg);
    --ge-wte-offer-hover-shift: 2px;
    --ge-wte-offer-radius: 14px;
    --ge-wte-offer-img-w: 148px;
    --ge-wte-offer-img-h: 88px;

    width: 100%;
    min-width: 0;
    color: var(--ge-wte-text);
    font-family: inherit;
}

.ge-wte-mega a {
    color: inherit;
    text-decoration: none !important;
}

.ge-wte-mega__heading {
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
    color: var(--ge-wte-text) !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

.ge-wte-mega__list,
.ge-wte-mega-style-list,
.ge-wte-mega-offer-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.ge-wte-mega-trip {
    display: grid;
    grid-template-columns: var(--ge-wte-img) minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    min-height: calc(var(--ge-wte-img) + 10px);
    padding: 7px 8px;
    border-radius: 12px;
    background: transparent;
    transition: background-color .18s ease, transform .18s ease;
}

.ge-wte-mega-trip:hover,
.ge-wte-mega-trip:focus-visible {
    background: var(--ge-wte-hover-bg);
    transform: translateX(2px);
    outline: none;
}

.ge-wte-mega-trip__media {
    display: block;
    width: var(--ge-wte-img);
    height: var(--ge-wte-img);
    overflow: hidden;
    border-radius: 10px;
    background: #f2f6f5;
}

.ge-wte-mega-trip__media img,
.ge-wte-mega-offer__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ge-wte-mega-trip__placeholder,
.ge-wte-mega-offer__placeholder {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #e7efed, #f7faf9);
}

.ge-wte-mega-trip__body {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    min-width: 0;
}

.ge-wte-mega-trip__title {
    display: block;
    color: var(--ge-wte-text);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ge-wte-mega-trip__meta {
    display: block;
    color: var(--ge-wte-muted);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ge-wte-mega__view-all {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    color: var(--ge-wte-accent) !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    transition: gap .18s ease, opacity .18s ease;
}

.ge-wte-mega__view-all:hover,
.ge-wte-mega__view-all:focus-visible {
    gap: 12px;
    opacity: .88;
    outline: none;
}

.ge-wte-mega__empty {
    margin: 0;
    color: var(--ge-wte-muted);
    font-size: 14px;
    font-weight: 600;
}

/* Travel styles */
.ge-wte-mega-style {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 42px;
    padding: 8px 10px;
    border-radius: 12px;
    transition: background-color .18s ease, transform .18s ease;
}

.ge-wte-mega-style:hover,
.ge-wte-mega-style:focus-visible {
    background: var(--ge-wte-style-hover-bg);
    transform: translateX(2px);
    outline: none;
}

.ge-wte-mega-style__icon {
    width: var(--ge-wte-style-icon-size);
    height: var(--ge-wte-style-icon-size);
    flex: 0 0 var(--ge-wte-style-icon-size);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ge-wte-style-icon-color);
    background: var(--ge-wte-style-icon-bg);
    border-radius: var(--ge-wte-style-icon-radius);
}

.ge-wte-mega-style__icon svg,
.ge-wte-mega-style__icon i {
    display: block;
    width: var(--ge-wte-style-icon-glyph-size);
    height: var(--ge-wte-style-icon-glyph-size);
    fill: currentColor;
    color: currentColor;
}

.ge-wte-mega-style__text {
    color: var(--ge-wte-text);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
}

.ge-wte-mega-style__text small {
    color: var(--ge-wte-muted);
    font-weight: 700;
}

/* Offers */
.ge-wte-mega-offer {
    display: grid;
    grid-template-columns: var(--ge-wte-offer-img-w) minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    min-height: 104px;
    padding: 8px;
    border-radius: var(--ge-wte-offer-radius);
    background: var(--ge-wte-offer-bg);
    transition: background-color .18s ease, transform .18s ease;
}

.ge-wte-mega-offer:hover,
.ge-wte-mega-offer:focus-visible {
    background: var(--ge-wte-offer-hover-bg);
    transform: translateX(var(--ge-wte-offer-hover-shift));
    outline: none;
}

.ge-wte-mega-offer__media {
    position: relative;
    width: var(--ge-wte-offer-img-w);
    height: var(--ge-wte-offer-img-h);
    display: block;
    overflow: hidden;
    border-radius: 10px;
    background: #f2f6f5;
}

.ge-wte-mega-offer__badge {
    position: absolute;
    top: 0;
    right: 0;
    min-height: 26px;
    padding: 0 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--ge-wte-badge);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    border-radius: 0 10px 0 10px;
}

.ge-wte-mega-offer__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.ge-wte-mega-offer__title {
    display: block;
    color: var(--ge-wte-text);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ge-wte-mega-offer__duration {
    display: block;
    color: var(--ge-wte-muted);
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
}

.ge-wte-mega-offer__price {
    display: flex;
    align-items: baseline;
    gap: 7px;
    flex-wrap: wrap;
    color: var(--ge-wte-muted);
    font-size: 13px;
    font-weight: 700;
}

.ge-wte-mega-offer__price strong {
    color: var(--ge-wte-accent);
    font-size: 17px;
    font-weight: 900;
}

.ge-wte-mega-offer__price del {
    color: #7a8582;
    font-size: 12px;
    font-weight: 700;
    opacity: .8;
}

/* Elementor mega menu safety */
.e-n-menu-content .ge-wte-mega {
    overflow: visible;
}

/* RTL */
html[dir="rtl"] .ge-wte-mega-trip:hover,
html[dir="rtl"] .ge-wte-mega-trip:focus-visible,
html[dir="rtl"] .ge-wte-mega-style:hover,
html[dir="rtl"] .ge-wte-mega-style:focus-visible {
    transform: translateX(-2px);
}

html[dir="rtl"] .ge-wte-mega-offer:hover,
html[dir="rtl"] .ge-wte-mega-offer:focus-visible {
    transform: translateX(calc(-1 * var(--ge-wte-offer-hover-shift)));
}

html[dir="rtl"] .ge-wte-mega-offer__badge {
    right: auto;
    left: 0;
    border-radius: 10px 0 10px 0;
}

@media (max-width: 1024px) {
    .ge-wte-mega-offer {
        grid-template-columns: min(120px, var(--ge-wte-offer-img-w)) minmax(0, 1fr);
    }
    .ge-wte-mega-offer__media {
        width: min(120px, var(--ge-wte-offer-img-w));
        height: min(78px, var(--ge-wte-offer-img-h));
    }
}

@media (max-width: 767px) {
    .ge-wte-mega-trip {
        grid-template-columns: 52px minmax(0, 1fr);
    }
    .ge-wte-mega-trip__media {
        width: 52px;
        height: 52px;
    }
    .ge-wte-mega-offer {
        grid-template-columns: min(96px, var(--ge-wte-offer-img-w)) minmax(0, 1fr);
        gap: 10px;
    }
    .ge-wte-mega-offer__media {
        width: min(96px, var(--ge-wte-offer-img-w));
        height: min(70px, var(--ge-wte-offer-img-h));
    }
}
