/* Isolated from Antler's legacy .inner/.title/Swiper rules. */
.start-offer.sl-menu-offer-host { padding: 0; min-width: 0; border-radius: 0 12px 12px 0; }
.sl-menu-offer, .sl-menu-offer * { box-sizing: border-box; }
.sl-menu-offer {
    height: 100%;
    position: relative;
    overflow: hidden;
    border-radius: inherit;
    border: 1px solid #ba9bef55;
    padding: 18px;
    color: #fff;
    background: radial-gradient(ellipse at 0 0, #ec8dc76b, transparent 65%), radial-gradient(ellipse at 100% 50%, #21cddd4d, transparent 70%), linear-gradient(150deg, #422664, #232540 58%, #112c40);
    font-family: Arial, sans-serif;
    text-align: left;
}
.sl-menu-offer [hidden] { display: none !important; }
.sl-menu-offer-track { display: grid; min-width: 0; }
.sl-menu-offer-slide { display: flex; flex-direction: column; grid-area: 1 / 1; min-width: 0; margin: 0; }
/* Hidden cards still size the shared grid, but cannot be seen, focused or clicked. */
.sl-menu-offer[data-menu-offer-ready] .sl-menu-offer-slide[hidden] { display: flex !important; visibility: hidden; pointer-events: none; opacity: 0; transform: translateX(12px); }
.sl-menu-offer[data-menu-offer-ready] .sl-menu-offer-slide { transition: opacity .28s ease, transform .28s ease; }
.sl-menu-offer[data-menu-offer-ready] .sl-menu-offer-slide:not([hidden]) { visibility: inherit; opacity: 1; transform: none; }
.sl-menu-offer-media { position: relative; width: 100%; aspect-ratio: 8 / 5; overflow: hidden; border: 0; border-radius: 0; background: transparent; }
.sl-menu-offer-media img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
.sl-menu-offer-media img:not([src]) { display: none; }
.sl-menu-offer-copy { flex: 1; display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding-top: 17px; }
.sl-menu-offer p.sl-menu-offer-kicker { margin: 0 0 7px; padding: 0; color: #b8f2fc; font: 700 10px/1.45 Arial, sans-serif; letter-spacing: 1.15px; }
.sl-menu-offer h3.sl-menu-offer-title { margin: 0 0 10px; padding: 0; color: #fff; font: 700 22px/1.15 Arial, sans-serif; letter-spacing: -.5px; overflow-wrap: anywhere; }
.sl-menu-offer p.sl-menu-offer-description { margin: 0 0 18px; padding: 0; color: #e7e3f0; font: 400 13px/1.65 Arial, sans-serif; overflow-wrap: anywhere; }
.sl-menu-offer a.sl-menu-offer-cta { display: inline-flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; min-height: 42px; margin: auto 0 0; padding: 11px 13px; border: 1px solid #fff8; border-radius: 10px; background: #fff; color: #322349; font: 700 12px/1.45 Arial, sans-serif; text-decoration: none; white-space: normal; }
.sl-menu-offer a.sl-menu-offer-cta:hover { background: #e7dcff; color: #261239; }
.sl-menu-offer .sl-menu-offer-cta > span { flex: 0 0 auto; font-size: 17px; }
.sl-menu-offer-controls { display: flex; align-items: center; flex-wrap: wrap; gap: 5px; margin-top: 16px; padding-top: 12px; border-top: 1px solid #ffffff30; }
.sl-menu-offer button.sl-menu-offer-control { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 30px; width: 30px; height: 32px; margin: 0; padding: 0; border: 1px solid #ffffff50; border-radius: 8px; background: #ffffff0d; color: #fff; cursor: pointer; font: 400 26px/1 Arial, sans-serif; }
.sl-menu-offer button.sl-menu-offer-toggle { font-size: 13px; }
.sl-menu-offer button.sl-menu-offer-control:hover { background: #ffffff28; }
.sl-menu-offer-dots { display: flex; justify-content: center; flex: 1 1 auto; flex-wrap: wrap; gap: 2px; min-width: 20px; }
.sl-menu-offer button.sl-menu-offer-dot { position: relative; display: inline-block; width: 17px; height: 28px; padding: 0; margin: 0; border: 0; background: transparent; cursor: pointer; }
.sl-menu-offer button.sl-menu-offer-dot::after { content: ""; position: absolute; width: 6px; height: 6px; border-radius: 10px; background: #ffffff5c; top: 11px; left: 5px; }
.sl-menu-offer button.sl-menu-offer-dot[aria-current="true"]::after { background: #71edee; box-shadow: 0 0 9px #55dbeb55; }
.sl-menu-offer .sl-menu-offer-position { width: 100%; margin-top: 5px; color: #e5ddf5; text-align: center; font: 400 10px/1.4 Arial, sans-serif; letter-spacing: 1.5px; }
.sl-menu-offer button:focus-visible, .sl-menu-offer a:focus-visible { outline: 2px solid #a9ffff; outline-offset: 3px; }
.sl-menu-offer .sl-menu-offer-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; padding: 0; margin: 0; }
/* Only these two mega menus gain keyboard access; the separate mobile navigation is untouched. */
.nav-menu .main-menu > .sl-menu-offer-menu:focus-within > .sub-menu { top: 35px; opacity: 1; visibility: visible; }
@media (prefers-reduced-motion: reduce) {
    .sl-menu-offer[data-menu-offer-ready] .sl-menu-offer-slide { transition: none; transform: none; }
}
