/* ==========================================================================
   Landing page (CPT landing-page)
   Lo stile delle sezioni è impostato in Elementor (tab Stile / Avanzate).
   Qui resta solo ciò che Elementor non gestisce nativamente; i selettori
   usano le classi CSS assegnate nel pannello Avanzate dei rispettivi elementi.
   ========================================================================== */

body.single-landing-page .page-header { display: none; }
body.single-landing-page .site-main { max-width: none; padding: 0; }

/* --------------------------------------------------------------------------
   Barra annuncio (.bf-topbar) sopra l'header del sito.
   L'header è un popup Elementor fisso: il JS lo fa partire sotto la barra
   e imposta --bf-bar-h / --bf-header-h. Nell'editor la barra resta nel flusso.
   -------------------------------------------------------------------------- */
body.single-landing-page .elementor[data-elementor-type="wp-post"] { position: relative; padding-top: calc(var(--bf-bar-h, 40px) + var(--bf-header-h, 78px)); }
body.single-landing-page .e-con.bf-topbar { position: absolute; top: 0; left: 0; right: 0; width: 100%; max-width: none; z-index: 2; }
body.single-landing-page.elementor-editor-active .elementor[data-elementor-type="wp-post"] { padding-top: 0; }
body.single-landing-page.elementor-editor-active .e-con.bf-topbar { position: relative; }

/* --------------------------------------------------------------------------
   Hero (.bf-hero): "-15%" evidenziato nel titolo.
   Elementor toglie le classi dentro i titoli, quindi si usa lo <span>.
   -------------------------------------------------------------------------- */
body.single-landing-page .bf-hero .elementor-heading-title span {
    display: inline-block;
    padding: .28em 6px 0; /* il font ha ascendenti alti: padding sopra e interlinea ridotta per centrare il testo nel box */
    background: #fff;
    color: var(--e-global-color-accent, #15847E);
    font-weight: 500;
    line-height: .75;
}

/* --------------------------------------------------------------------------
   Footer globale: sulle landing tolgo lo spaziatore bianco iniziale
   (primo container del footer Elementor 21508), la CTA finale arriva al footer.
   -------------------------------------------------------------------------- */
body.single-landing-page .elementor-location-footer .elementor-element-080d028 { display: none; }

/* Caroselli: cursore "trascina" (il JS rende trascinabile anche la slide in anteprima) */
body.single-landing-page .e-n-carousel.bf-drag { cursor: grab; }
body.single-landing-page .e-n-carousel.bf-drag:active { cursor: grabbing; }

/* --------------------------------------------------------------------------
   Chip delle date (.bf-chips sull'elenco icone)
   -------------------------------------------------------------------------- */
body.single-landing-page .bf-chips .elementor-icon-list-items { gap: 12px; }
body.single-landing-page .bf-chips .elementor-icon-list-item { margin: 0 !important; padding: 6px 12px !important; background: var(--e-global-color-accent, #15847E); }
body.single-landing-page .bf-chips .elementor-icon-list-item::after { display: none; }
body.single-landing-page .bf-chips .elementor-icon-list-icon i { color: #fff; font-size: 12px; }
body.single-landing-page .bf-chips .elementor-icon-list-icon svg { fill: #fff; width: 12px; height: 12px; }
body.single-landing-page .bf-chips .elementor-icon-list-text { color: #fff; font-size: 13px; padding-left: 7px; }

/* --------------------------------------------------------------------------
   Citazioni a scorrimento (.bf-quotes sull'editor di testo con un elenco)
   -------------------------------------------------------------------------- */
body.single-landing-page .bf-quotes { width: 100%; overflow: hidden; }
body.single-landing-page .bf-quotes ul { display: flex; gap: 40px; width: max-content; margin: 0; padding: 0; list-style: none; }
body.single-landing-page .bf-quotes.is-marquee ul { animation: bf-marquee var(--bf-marquee-duration, 40s) linear infinite; }
body.single-landing-page .bf-quotes.is-marquee:hover ul { animation-play-state: paused; }
body.single-landing-page .bf-quotes li { white-space: nowrap; }
body.single-landing-page .bf-quotes cite { font-style: normal; font-size: 13px; font-weight: 700; color: var(--e-global-color-accent, #15847E); }
@keyframes bf-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { body.single-landing-page .bf-quotes.is-marquee ul { animation: none; } }

@media (max-width: 767px) {
    body.single-landing-page .bf-quotes { overflow: visible; }
    body.single-landing-page .bf-quotes ul { flex-direction: column; width: auto; gap: 24px; }
    body.single-landing-page .bf-quotes.is-marquee ul { animation: none; }
    body.single-landing-page .bf-quotes li { white-space: normal; }
    body.single-landing-page .bf-quotes li[aria-hidden="true"] { display: none; }
    body.single-landing-page .bf-quotes cite { display: block; margin-top: 10px; }

    /* Barra fissa mobile (.bf-sticky): spazio in fondo alla pagina e icona accessibilità sopra la barra */
    body.single-landing-page { padding-bottom: 72px; }
    body.single-landing-page .e-con.bf-sticky { padding-bottom: calc(10px + env(safe-area-inset-bottom)); }
    body.single-landing-page .bf-sticky .elementor-button { white-space: nowrap; }
    body.single-landing-page .asw-menu-btn { bottom: 86px !important; }
}
