/* FRG Scroll Page — scroll.css v2.0.3 */

/* Body scuro per evitare flash bianco nelle transizioni */
body.frg-scroll-active {
    background: #131620 !important;
}

/* Il JS gestisce position:fixed inline su ogni sezione.
   Questo file gestisce solo il reset Divi e il will-change. */

.frg-scroll-active .sezione-fp {
    will-change: transform;
    overflow: hidden !important;
}

/* Azzera padding Divi sulle section */
.frg-scroll-active .sezione-fp.et_pb_section {
    padding: 0 !important;
}

/* Azzera il padding-top che Divi aggiunge per il suo header */
.frg-scroll-active #page-container,
.frg-scroll-active.et_pb_pagebuilder_layout #page-container {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Cursore grab sulle card draggabili (solo hs-section non-half) */
.hs-section:not(.hs-section--half) .hs-slide {
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
}
.hs-section:not(.hs-section--half) .hs-slide:active {
    cursor: grabbing;
}
.hs-section:not(.hs-section--half) .hs-slide a,
.hs-section:not(.hs-section--half) .hs-slide button {
    cursor: pointer;
}

/* ── hs-section--half: layout statico desktop (2 pannelli) ── */
@media (min-width: 769px) {
    .hs-section--half {
        display: flex !important;
        align-items: stretch;
    }
    .hs-section--half .hs-slide.et_pb_row,
    .hs-section--half .hs-slide {
        flex: 0 0 50% !important;
        width: 50% !important;
        max-width: 50% !important;
        min-width: 0 !important;
        height: 100% !important;
        position: relative !important;
        overflow-y: auto;
        display: flex !important;
        align-items: center !important;
        box-sizing: border-box !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    /* Pannello sinistro: padding esterno = 10vw (= margine Divi 80%), gap interno = 40px */
    .hs-section--half .hs-slide.et_pb_row:first-child,
    .hs-section--half .hs-slide:first-child {
        justify-content: flex-end !important;
        padding-left: 10vw !important;
        padding-right: 40px !important;
    }
    /* Pannello destro: speculare */
    .hs-section--half .hs-slide.et_pb_row:last-child,
    .hs-section--half .hs-slide:last-child {
        justify-content: flex-start !important;
        padding-left: 40px !important;
        padding-right: 10vw !important;
    }
    /* Colonne Divi dentro il pannello: larghezza piena */
    .hs-section--half .hs-slide .et_pb_column {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* Mobile: centra verticalmente, padding laterale */
@media (max-width: 768px) {
    .hs-section--half .hs-slide.et_pb_row,
    .hs-section--half .hs-slide {
        position: absolute !important;
        width: 100vw !important;
        max-width: 100vw !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 40px !important;
        box-sizing: border-box !important;
    }
    .hs-section--half .hs-slide .et_pb_column {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ── Nascondi frecce quando il menu mobile è aperto ── */
body.frg-menu-open .frg-scroll-down-arrow,
body.frg-menu-open button[aria-label="Torna in cima"],
body.frg-menu-open button[aria-label="Scorri alla sezione successiva"] {
    opacity: 0 !important;
    pointer-events: none !important;
}
