﻿    .atHome2025_stage {
        position: relative;
        height: 90vh;
        /* Stage should not itself create parallax or extra color bars */
        overflow: hidden;
        /* clip internal fixed background strictly to this section */
        background: transparent;
        /* avoid extra navy band above/below */
        isolation: isolate;
        /* keep stacked contexts separate */
    }

    /* Parallax layer (only this class should have the effect) */
    .atHome2025_EventRow {
        position: relative;
        height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        overflow: hidden;
        /* confine effect to this section */
        /* Offset vertical responsivo para la imagen de fondo */
        --bg-offset: 0%;
        /* Permite desplazamiento vertical dinámico usando variable --bg-offset (positivo mueve hacia abajo la imagen) */
        /* Adaptar SOLO al ancho del contenedor; altura respeta proporción de la imagen */
        background-position: 50% calc(0% + var(--bg-offset, 0%));
        /* center top con offset */
        background-size: 100% auto;
        /* width 100%, height auto */
        background-repeat: no-repeat;
        background-attachment: fixed;
        /* parallax effect within section */
    }

    /* Parallax background from inline <img> */
    /* Default: hide inline image (Option 1 & 2 use background only) */
    .atHome2025_EventRow-inner>img {
        display: none;
    }

    /* OPTION 3: Sticky image alternative (activate by adding class 'parallax-sticky' to parent .atHome2025_stage) */
    .parallax-sticky .atHome2025_EventRow {
        background: none;
        background-image: none;
        background-attachment: scroll;
    }

    .parallax-sticky .atHome2025_EventRow::before {
        display: none;
    }

    .parallax-sticky .atHome2025_EventRow-inner>img {
        display: block;
        position: sticky;
        top: 0;
        width: 100%;
        height: 100vh;
        object-fit: cover;
        z-index: 0;
        pointer-events: none;
    }

    /* Inner content stays above */
    .atHome2025_EventRow-inner {
        position: relative;
        z-index: 2;
        text-align: center;
        padding-top: 64px;
        /* ensure clear under top learn-more bar */
    }

    /* Register button visibility and placement */
    .atHome2025_EventRowButtonWrap {
        /* Fixed + centered; force behind everything by very low z-index; still visible if background not opaque */
        position: fixed;
        left: 50%;
        bottom: 15vh;
        transform: translateX(-50%);
        display: inline-block;
        /* Intentionally send the whole wrapper behind page content. This
       will place the button underneath other elements (it will not be
       clickable if fully covered). */
        z-index: 1;
        /* Visibility baseline */
        opacity: 0;
        /* Fade-out más rápido */
        transition: opacity 0.12s ease;
        pointer-events: none;
        will-change: opacity;
    }

    .atHome2025_EventRowButtonWrap.visible {
        opacity: 1;
        /* Fade-in un poco más lento para suavidad */
        transition: opacity 0.28s ease;
        pointer-events: auto;
    }

    .atHome2025_EventRowButton {
        display: inline-block;
        padding: 14px 28px;
        font-family: "Lato", sans-serif;
        box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
        font-size: 35px;
        line-height: 45px;
        font-weight: 600;
        background: #ffc425;
        border: 1px solid #ffc425;
        color: #003062 !important;
        text-decoration: none !important;
        cursor: pointer;
        /* show hand cursor on hover */
        /* keep the button itself at the same negative stacking level to
       avoid it popping above the wrapper in some browsers/contexts */
        position: relative;
        z-index: 10;
    }

    .banner-background {
        background-image: url("/-/media/aspentech/home/homepage-media/parallax-banner/opt-ad-mobile-background-digiital-web.png");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: -1;

    }

    .banner-content {
        text-align: center;
    }

    .optimize {
        display: flex;
    }

    .powering {
        display: flex;
    }

    @media (max-width: 381px) {
        .atHome2025_EventRowButton {
            width: 55%;
            font-size: 18px !important;
        }
    }

    @media (max-width: 500px) {
        .atHome2025_EventRowButton {
            width: 50%;
            font-size: 24px;
        }
    }


    @media (max-width: 991.98px) {

        /* Slightly closer to system UI on small screens */
        .atHome2025_EventRowButtonWrap {
            bottom: 11vh;
        }

        .atHome2025_EventRowButton {
            padding: 12px 22px;
            text-align: center;
        }
    }

    /* Create root stacking context so negative z-index always sits behind regular content */
    html,
    body {
        position: relative;
        z-index: 0;
    }

    /* CSS-only implementation: no JS needed. */

    /* Mobile tweak: if background-attachment fixed is not honored, ensure readability */
    @media (max-width: 991.98px) {
        .atHome2025_EventRow-inner>img {
            display: none;
            /* keep hidden for option 1 & 2 */
        }

        .atHome2025_EventRow {
            background-attachment: scroll;
            background-size: 100% auto;
            /* mantener regla de ancho en mobile */
            background-position: 50% calc(0% + var(--bg-offset, 0%));
        }

        /* Sticky fallback: make sticky act like static on mobile */
        .parallax-sticky .atHome2025_EventRow-inner>img {
            position: relative;
            height: 100%;
        }
    }

    @media (min-width: 1900px) {
        .atHome2025_EventRowButtonWrap.visible {
            bottom: 8vh !important;
        }
    }

    @media (min-width: 1200px) and (max-width: 1600px) {
        .atHome2025_EventRowButtonWrap.visible {
            bottom: 6.5vh !important;
        }
    }

    @media (min-width: 1000px) and (max-width: 1199px) {
        .atHome2025_EventRowButtonWrap.visible {
            margin-top: 5vh !important;
        }
    }

    /* @media (max-width: 999px) { .atHome2025_EventRowButtonWrap.visible { position: absolute; top: 150px; }} */
    @media (max-width: 1600px) {
        .atHome2025_EventRow {
            --bg-offset: 10%;
        }
    }

    @media (max-width: 1400px) {
        .atHome2025_EventRow {
            --bg-offset: 18%;
        }
    }

    @media (max-width: 1200px) {
        .atHome2025_EventRow {
            --bg-offset: 50%;
        }
    }

    /* @media (max-width: 991.98px) { .atHome2025_EventRow { --bg-offset: 38%; } } */

    @media (max-width: 991.98px) {

        .atHome2025_EventRowButtonWrap,
        .atHome2025_EventRowButtonWrap.visible {
            position: absolute;
            top: 70%;
            bottom: 19vh;
            margin-top: 0;
        }
    }

    @media (max-width: 768px) {
        .atHome2025_EventRow {
            --bg-offset: 40%;
        }
    }

    @media (max-width: 576px) {
        .atHome2025_EventRow {
            --bg-offset: 55%;
        }
    }

    @media (max-width: 480px) {
        .atHome2025_EventRow {
            --bg-offset: 55%;
        }
    }

    @media (max-width: 380px) {

        .atHome2025_EventRowButtonWrap,
        .atHome2025_EventRowButtonWrap.visible {
            bottom: 13vh;
        }
    }

    /* Optional: adjust when user prefers reduced motion */
    @media (prefers-reduced-motion: reduce) {
        .atHome2025_EventRow {
            background-attachment: scroll;
        }

        .parallax-sticky .atHome2025_EventRow-inner>img {
            position: relative;
        }

    }

    @media (max-width: 991.98px) {
        .atHome2025_EventRow {
            height: 53vh;
        }

        .atHome2025_stage {
            height: 48vh;
        }
    }



    @media (max-width:991px) {
        #desktop-parallax {
            display: none;
        }

        .emerson {
            position: relative;
            top: 35%;
        }

        .banner-button-wrap {
            position: absolute;
            top: 390px;
        }
    }



    @media (min-width:992px) {
        #desktop-parallax {
            display: flex;
        }

        #banner-section-mobile-parallax {
            display: none;

        }

        .emerson {
            position: relative;
            top: 120px;
        }
    }

    /* Position the learn-more bars correctly (top outside, bottom inside) */
    /* Position only the TOP learn-more bar; hide the bottom duplicate */
    .atHome2025_stage>.atHome2025_EventRowLearnMoreWrap {
        position: sticky;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 5;
        /* above any content */
    }

    .atHome2025_EventRow>.atHome2025_EventRowLearnMoreWrap {
        display: none;
    }

    /* (moved padding into main declaration above to avoid duplicate selector) */