/* Surron Light Bee 2 homepage launch — isolated production CSS */
.srlb2-launch,
.srlb2-launch * { box-sizing: border-box; }

.srlb2-launch {
    --lb2-yellow: #f9df00;
    --lb2-black: #050505;
    --lb2-white: #fff;
    position: relative;
    isolation: isolate;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    overflow: hidden;
    color: var(--lb2-white);
    background: var(--lb2-black);
    border-top: 3px solid var(--lb2-yellow);
    border-bottom: 3px solid var(--lb2-yellow);
    min-height: 690px;
    font-family: Arial, Helvetica, sans-serif;
    contain: layout paint style;
}

@supports (content-visibility: auto) {
    .srlb2-launch {
        content-visibility: auto;
        contain-intrinsic-size: auto 690px;
    }
}

.srlb2-launch::before {
    content: "";
    position: absolute;
    z-index: 30;
    top: 0;
    left: 50%;
    width: 126px;
    height: 6px;
    background: var(--lb2-yellow);
    transform: translateX(-50%) skewX(-30deg);
    pointer-events: none;
}

.srlb2-launch__header {
    position: absolute;
    z-index: 20;
    top: 0;
    left: 0;
    right: 0;
    padding: 27px 20px 0;
    text-align: center;
    text-shadow: 0 3px 20px rgba(0,0,0,.8);
    pointer-events: none;
}

.srlb2-launch__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    color: rgba(255,255,255,.84);
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.srlb2-launch__kicker::before,
.srlb2-launch__kicker::after {
    content: "";
    width: 28px;
    height: 2px;
    background: var(--lb2-yellow);
}

.srlb2-launch__header h2 {
    margin: 0 !important;
    color: #fff !important;
    font-family: "Hyperiot", "Arial Narrow", Arial, sans-serif;
    font-size: clamp(50px, 5.25vw, 84px);
    font-weight: 900;
    font-style: italic;
    line-height: .9;
    letter-spacing: -.025em;
    text-transform: uppercase;
}

.srlb2-launch__header p {
    margin: 8px 0 0 !important;
    color: #fff !important;
    font-size: clamp(11px, .92vw, 14px);
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.srlb2-launch__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 690px;
}

.srlb2-launch__panel {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 690px;
    align-items: flex-end;
    justify-content: center;
    overflow: hidden;
    color: #fff !important;
    text-decoration: none !important;
    background: #080808;
}

.srlb2-launch__panel--x { border-right: 1px solid rgba(255,255,255,.16); }

.srlb2-launch__panel--x::after {
    content: "";
    position: absolute;
    z-index: 18;
    top: -8%;
    right: -1px;
    width: 2px;
    height: 116%;
    background: linear-gradient(to bottom, transparent 5%, rgba(255,255,255,.38) 28%, rgba(249,223,0,.72) 52%, rgba(255,255,255,.38) 76%, transparent 95%);
    transform: rotate(6deg);
    transform-origin: center;
    pointer-events: none;
}

.srlb2-launch__bg {
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    filter: saturate(.86) contrast(1.08) brightness(.73);
    transform: scale(1.015);
    transition: transform .55s cubic-bezier(.2,.7,.2,1), filter .55s ease;
}

.srlb2-launch__panel--l3 .srlb2-launch__bg {
    filter: saturate(.92) contrast(1.08) brightness(.68);
}

.srlb2-launch__shade {
    position: absolute;
    z-index: 1;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0,0,0,.34) 0%, rgba(0,0,0,.02) 29%, rgba(0,0,0,.09) 50%, rgba(0,0,0,.86) 84%, rgba(0,0,0,.98) 100%),
        linear-gradient(90deg, rgba(0,0,0,.22), transparent 35%, transparent 65%, rgba(0,0,0,.20));
    pointer-events: none;
}

.srlb2-launch__glow {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 47%;
    width: 66%;
    aspect-ratio: 1.9 / 1;
    border-radius: 50%;
    background: radial-gradient(ellipse, rgba(249,223,0,.19) 0%, rgba(249,223,0,.07) 38%, transparent 72%);
    transform: translate(-50%, -50%);
    filter: blur(10px);
    pointer-events: none;
}

.srlb2-launch__bike {
    position: absolute !important;
    z-index: 5 !important;
    left: 50% !important;
    top: 43% !important;
    display: block !important;
    width: min(73%, 700px) !important;
    height: auto !important;
    max-height: 51% !important;
    margin: 0 !important;
    object-fit: contain !important;
    object-position: center center !important;
    filter: drop-shadow(0 28px 28px rgba(0,0,0,.48)) drop-shadow(0 0 2px rgba(255,255,255,.16));
    transform: translate(-50%, -50%);
    transition: transform .42s cubic-bezier(.2,.72,.2,1), filter .42s ease;
    pointer-events: none;
}

.srlb2-launch__bike--x { top: 43% !important; width: min(74%, 720px) !important; }
.srlb2-launch__bike--l3 { top: 44% !important; width: min(69%, 670px) !important; }

.srlb2-launch__copy {
    position: relative;
    z-index: 10;
    width: min(92%, 590px);
    margin: 0 auto;
    padding: 0 18px 31px;
    text-align: center;
}

.srlb2-launch__copy h3 {
    margin: 0 !important;
    color: #fff !important;
    font-family: "Hyperiot", "Arial Narrow", Arial, sans-serif;
    font-size: clamp(30px, 2.45vw, 42px) !important;
    font-weight: 900 !important;
    font-style: italic;
    line-height: .95 !important;
    letter-spacing: -.015em !important;
    text-transform: uppercase;
    text-shadow: 0 3px 15px rgba(0,0,0,.72);
}

.srlb2-launch__descriptor {
    margin-top: 5px;
    color: var(--lb2-yellow);
    font-size: 11px;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.srlb2-launch__stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 8px;
    width: 100%;
    margin: 15px 0 17px;
}

.srlb2-launch__stats > div {
    min-width: 0;
    margin: 0;
    padding: 0 5px;
    border-right: 1px solid rgba(255,255,255,.18);
}

.srlb2-launch__stats > div:last-child { border-right: 0; }

.srlb2-launch__stats dt {
    margin: 0;
    color: #fff;
    font-size: 15px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

.srlb2-launch__stats dd {
    margin: 5px 0 0;
    color: rgba(255,255,255,.67);
    font-size: 7.5px;
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: .035em;
    text-transform: uppercase;
    white-space: nowrap;
}

.srlb2-launch__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 160px;
    min-height: 45px;
    padding: 0 23px;
    color: #090909;
    background: var(--lb2-yellow);
    border: 2px solid var(--lb2-yellow);
    box-shadow: 0 11px 28px rgba(0,0,0,.24), 0 0 18px rgba(249,223,0,.08);
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .065em;
    text-transform: uppercase;
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.srlb2-launch__footer {
    position: absolute;
    z-index: 25;
    bottom: 9px;
    left: 50%;
    padding: 0 12px;
    color: rgba(255,255,255,.62);
    background: rgba(0,0,0,.58);
    font-size: 8px;
    font-weight: 900;
    line-height: 17px;
    letter-spacing: .18em;
    text-transform: uppercase;
    transform: translateX(-50%);
    pointer-events: none;
}

@media (hover:hover) {
    .srlb2-launch__panel:hover .srlb2-launch__bg,
    .srlb2-launch__panel:focus-visible .srlb2-launch__bg {
        filter: saturate(.98) contrast(1.1) brightness(.79);
        transform: scale(1.035);
    }
    .srlb2-launch__panel:hover .srlb2-launch__bike,
    .srlb2-launch__panel:focus-visible .srlb2-launch__bike {
        filter: drop-shadow(0 31px 31px rgba(0,0,0,.54)) drop-shadow(0 0 3px rgba(255,255,255,.18));
        transform: translate(-50%, -52%) scale(1.018);
    }
    .srlb2-launch__panel:hover .srlb2-launch__button,
    .srlb2-launch__panel:focus-visible .srlb2-launch__button {
        background: #fff;
        border-color: #fff;
        transform: translateY(-2px);
    }
}

.srlb2-launch__panel:focus-visible {
    outline: 3px solid var(--lb2-yellow);
    outline-offset: -5px;
}

/* Laptop */
@media only screen and (max-width: 1250px) {
    .srlb2-launch,
    .srlb2-launch__grid,
    .srlb2-launch__panel { min-height: 640px; }
    .srlb2-launch__bike { max-height: 49% !important; }
    .srlb2-launch__copy { padding-bottom: 27px; }
}

/* Tablet and phone: stack the two environments. */
@media only screen and (max-width: 767px) {
    .srlb2-launch {
        min-height: 0;
        content-visibility: visible;
    }
    .srlb2-launch::before { width: 96px; height: 5px; }
    .srlb2-launch__header {
        position: relative;
        padding: 24px 16px 21px;
        background: linear-gradient(180deg, #090909 0%, #111 100%);
    }
    .srlb2-launch__header h2 { font-size: clamp(40px, 12vw, 54px); }
    .srlb2-launch__header p { margin-top: 7px !important; font-size: 10px; }
    .srlb2-launch__grid {
        grid-template-columns: 1fr;
        min-height: 0;
    }
    .srlb2-launch__panel,
    .srlb2-launch__panel--x {
        min-height: 535px;
        border-right: 0;
        border-top: 1px solid rgba(255,255,255,.14);
    }
    .srlb2-launch__panel--x::after { display: none; }
    .srlb2-launch__bike,
    .srlb2-launch__bike--x,
    .srlb2-launch__bike--l3 {
        top: 42% !important;
        width: min(84%, 485px) !important;
        max-height: 49% !important;
    }
    .srlb2-launch__bike--l3 { width: min(78%, 455px) !important; }
    .srlb2-launch__copy {
        width: min(96%, 500px);
        padding: 0 10px 27px;
    }
    .srlb2-launch__copy h3 { font-size: clamp(27px, 8vw, 35px) !important; }
    .srlb2-launch__descriptor { font-size: 9.5px; }
    .srlb2-launch__stats { gap: 3px; margin: 13px 0 15px; }
    .srlb2-launch__stats > div { padding: 0 3px; }
    .srlb2-launch__stats dt { font-size: 12px; }
    .srlb2-launch__stats dd { font-size: 6.5px; }
    .srlb2-launch__button { min-width: 150px; min-height: 43px; font-size: 10.5px; }
    .srlb2-launch__footer { display: none; }
}

@media only screen and (max-width: 380px) {
    .srlb2-launch__panel { min-height: 525px; }
    .srlb2-launch__stats {
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: 9px 0;
        max-width: 275px;
        margin-right: auto;
        margin-left: auto;
    }
    .srlb2-launch__stats > div:nth-child(2) { border-right: 0; }
    .srlb2-launch__stats > div:nth-child(3),
    .srlb2-launch__stats > div:nth-child(4) { padding-top: 3px; }
    .srlb2-launch__stats dt { font-size: 13px; }
    .srlb2-launch__stats dd { font-size: 6.7px; }
}

@media (prefers-reduced-motion: reduce) {
    .srlb2-launch__bg,
    .srlb2-launch__bike,
    .srlb2-launch__button { transition: none !important; }
}


/* ==============================================================
   WORDPRESS ACF WRAPPER RESET — EXACT LAUNCH ROW ONLY
   Removes the white Product Descriptions bands above/below the
   shortcode on desktop, tablet and mobile. No other component is hit.
   ============================================================== */
.home section.product-descriptions:has(.srlb2-launch),
.home section.product-descriptions:has(.srlb2-launch) .top-area,
.home section.product-descriptions:has(.srlb2-launch) .container {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #050505 !important;
    border: 0 !important;
    box-shadow: none !important;
}

.home section.product-descriptions:has(.srlb2-launch) .top-area > *,
.home section.product-descriptions:has(.srlb2-launch) .container > * {
    width: 100% !important;
    max-width: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.home section.product-descriptions:has(.srlb2-launch) p {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.home section.product-descriptions:has(.srlb2-launch) p:empty {
    display: none !important;
}

.home .srlb2-launch {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.home .srlb2-launch.srlb2-launch--ready {
    visibility: visible !important;
}

/* ==============================================================
   v1.0.2 — ACF/TinyMCE SHELL SCRUB FALLBACK
   Runtime adds .srlb2-shell-reset to every wrapper between this
   shortcode and its dedicated section. These rules remove any
   theme spacing that survives the class-specific selectors above.
   ============================================================== */
.home .srlb2-shell-reset {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #050505 !important;
    border: 0 !important;
    box-shadow: none !important;
}
.home .srlb2-shell-reset > p,
.home .srlb2-shell-reset > br {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
}


/* ==============================================================
   v1.0.3 — BOTTOM-GAP HARDENING
   The top shell is already clean. Some Product Descriptions rows
   still emit an empty lower child after the shortcode; collapse it.
   ============================================================== */
.home .srlb2-empty-shell {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
}
.home section.product-descriptions:has(.srlb2-launch) {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
.home section.product-descriptions:has(.srlb2-launch) > :not(:has(.srlb2-launch)):empty {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.home .srlb2-launch {
    position: relative !important;
    z-index: 3 !important;
}
\n\n/* ==============================================================\n   v1.0.4 — TIGHT JOIN INTO HOMEPAGE COMPARE BLOCK\n   Runtime applies this class only to the first following section\n   that actually contains "COMPARE THE RANGE". The calculated\n   negative margin removes only its empty top breathing space; the\n   launch section itself remains untouched.\n   ============================================================== */\n.home .srlb2-following-compare {\n    position: relative !important;\n    z-index: 1 !important;\n}\n