/*
Theme Name: LaDolceVita-Child
Theme URI: http://LaDolceVita-Child
Template: hello-elementor
Author: Deversus.it
Author URI: https://Deversus.it
Version: 1.2.0
Updated: 2026-06-10

*/

/* ============================================================
   LDV Restyling 2026-06 — eleganza "quiet luxury"
   Reversibile: ripristinare style.css.ORIGINALE dal backup
   ============================================================ */

/* --- 1. Tipografia dei testi: Jost leggero, righe ariose --- */
.elementor-widget-text-editor,
.elementor-widget-text-editor p {
    font-family: 'Jost', 'Roboto', sans-serif;
    font-weight: 300;
    line-height: 1.85;
    color: #4B4845;
}

/* titoli: respiro e raffinatezza, font invariato (Cormorant) */
.elementor-heading-title {
    letter-spacing: 0.01em;
}

/* --- 2. Pulsanti: bordo netto, maiuscoletto spaziato --- */
.elementor-button,
.elementor-button-link {
    border-radius: 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.16em !important;
    font-family: 'Jost', sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    padding: 16px 36px !important;
    transition: background-color .35s ease, color .35s ease, border-color .35s ease !important;
}
.elementor-button:hover,
.elementor-button-link:hover {
    background-color: #1B495A !important;
    border-color: #1B495A !important;
    color: #FAF9F7 !important;
}

/* --- 3. Immagini: zoom lento al passaggio --- */
.elementor-widget-image .elementor-widget-container {
    overflow: hidden;
}
.elementor-widget-image img {
    transition: transform .9s ease;
}
.elementor-widget-image:hover img {
    transform: scale(1.05);
}

/* --- 4. Divisori sottili ed eleganti --- */
.elementor-widget-divider .elementor-divider-separator {
    border-block-start-width: 1px !important;
}

/* --- 5. Ingresso morbido allo scorrimento (attivato da ldv-reveal.js) --- */
html.ldv-reveal .ldv-fx {
    opacity: 0;
    transform: translateY(26px);
    transition: opacity .9s ease, transform .9s ease;
}
html.ldv-reveal .ldv-fx.ldv-in {
    opacity: 1;
    transform: none;
}
@media (prefers-reduced-motion: reduce) {
    html.ldv-reveal .ldv-fx {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
}

/* --- 6. Rifiniture --- */
html { scroll-behavior: smooth; }
::selection { background: #1B495A; color: #FAF9F7; }
a { transition: color .3s ease, opacity .3s ease; }

/* ============================================================
   LDV Restyling V2 — mosse editoriali (titoli grandi, aria,
   card foto, CTA fluttuante). Reversibile.
   ============================================================ */

/* --- V2.1 Titoli-dichiarazione (solo i titoli di sezione) --- */
.elementor-element-4b5633d .elementor-heading-title,
.elementor-element-c80f6a3 .elementor-heading-title,
.elementor-element-49ad63f .elementor-heading-title,
.elementor-element-cbd9404 .elementor-heading-title,
.elementor-element-79100af .elementor-heading-title,
.elementor-element-f54e55d .elementor-heading-title,
.elementor-element-c524ced .elementor-heading-title,
.elementor-element-15e9d9e .elementor-heading-title,
.elementor-element-1c1a3a3 .elementor-heading-title,
.elementor-element-c5dc44b .elementor-heading-title,
.elementor-element-f65d1f8 .elementor-heading-title {
    font-size: clamp(2.6rem, 5.5vw, 4.1rem) !important;
    line-height: 1.08 !important;
}

/* --- V2.2 Aria: respiro verticale tra le sezioni (hero esclusa) --- */
[data-elementor-type="wp-page"] > .elementor-section:not(:first-of-type) {
    padding-top: 96px !important;
    padding-bottom: 96px !important;
}

/* --- V2.3 Foto a card: angoli morbidi e spazio --- */
.elementor-widget-image .elementor-widget-container,
.elementor-widget-image img,
.elementor-image-carousel .swiper-slide img,
.e-gallery-img {
    border-radius: 16px;
}
.elementor-image-carousel .swiper-slide {
    padding: 0 7px;
    box-sizing: border-box;
}

/* --- V2.4 Pulsante prenotazione fluttuante --- */
.ldv-sticky-cta {
    position: fixed;
    right: 26px;
    bottom: 96px;
    z-index: 9990;
    background: #1B495A;
    color: #FAF9F7 !important;
    font-family: 'Jost', sans-serif;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: .16em;
    text-transform: uppercase;
    padding: 17px 30px;
    text-decoration: none;
    opacity: 0;
    transform: translateY(12px);
    pointer-events: none;
    transition: opacity .4s ease, transform .4s ease, background-color .3s ease;
}
.ldv-sticky-cta.ldv-cta-on {
    opacity: 1;
    transform: none;
    pointer-events: auto;
}
.ldv-sticky-cta:hover {
    background: #0C0B0B;
}
@media (max-width: 767px) {
    .ldv-sticky-cta { right: 16px; bottom: 84px; padding: 14px 22px; }
}

/* --- V2.5 Etichette decorative (Living/Cucina/Camere/Bagno):
       da finti bottoni a eleganti eyebrow non interattive --- */
.elementor-element-d0ea147 .elementor-button,
.elementor-element-b14e61b .elementor-button,
.elementor-element-c83b53a .elementor-button,
.elementor-element-bcfc51a .elementor-button,
.elementor-element-fd31746 .elementor-button,
.elementor-element-34efbae .elementor-button,
.elementor-element-dec77ac .elementor-button,
.elementor-element-f56ec79 .elementor-button {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    color: #BA7517 !important;
    font-size: 12px !important;
    letter-spacing: .32em !important;
    pointer-events: none;
    cursor: default;
}

/* --- V2.6a Altre etichette decorative -> eyebrow --- */
.elementor-element-8215941 .elementor-button,
.elementor-element-4dfbdf5 .elementor-button,
.elementor-element-00bd758 .elementor-button,
.elementor-element-d6f4a93 .elementor-button {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    color: #BA7517 !important;
    font-size: 12px !important;
    letter-spacing: .32em !important;
    pointer-events: none;
    cursor: default;
}

/* --- V2.6b Titoli-dichiarazione pagina Boutique (IT+EN) --- */
.elementor-element-e43eaff .elementor-heading-title,
.elementor-element-d39e28a .elementor-heading-title,
.elementor-element-4b8670c .elementor-heading-title,
.elementor-element-dbca464 .elementor-heading-title,
.elementor-element-0807797 .elementor-heading-title,
.elementor-element-b880cf1 .elementor-heading-title,
.elementor-element-e1437fb .elementor-heading-title,
.elementor-element-5b20772 .elementor-heading-title,
.elementor-element-45c3697 .elementor-heading-title,
.elementor-element-9c5a649 .elementor-heading-title {
    font-size: clamp(2.6rem, 5.5vw, 4.1rem) !important;
    line-height: 1.08 !important;
}

/* --- V2.6c Titoli medi (sezioni foto+testo della Boutique) --- */
.elementor-element-079a4a1 .elementor-heading-title,
.elementor-element-801972d .elementor-heading-title,
.elementor-element-5ea53e2 .elementor-heading-title,
.elementor-element-5cc50e6 .elementor-heading-title,
.elementor-element-30e1df0 .elementor-heading-title,
.elementor-element-18e9d4e .elementor-heading-title,
.elementor-element-6fa70de .elementor-heading-title,
.elementor-element-f813f18 .elementor-heading-title {
    font-size: clamp(2rem, 3.2vw, 2.7rem) !important;
    line-height: 1.12 !important;
}

/* ============================================================
   V3 — Uniformazione tipografica totale
   Gerarchia unica: titoli=Cormorant / sottotitoli e testi=Jost
   ============================================================ */

/* --- V3.1 Tutti i titoli in Cormorant --- */
h1, h2, h3, h4,
.elementor-heading-title,
.elementor-icon-box-title,
.elementor-accordion .elementor-tab-title,
.elementor-toggle .elementor-tab-title {
    font-family: 'Cormorant Garamond', serif !important;
}

/* --- V3.2 Tutti i testi in Jost, stessa taglia ovunque --- */
body,
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-icon-box-description,
.elementor-accordion .elementor-tab-content,
.elementor-toggle .elementor-tab-content,
.elementor-image-box-description,
.elementor-nav-menu a,
.elementor-widget-icon-list .elementor-icon-list-text {
    font-family: 'Jost', 'Roboto', sans-serif !important;
    font-weight: 300;
}
.elementor-widget-text-editor p,
.elementor-icon-box-description,
.elementor-accordion .elementor-tab-content,
.elementor-toggle .elementor-tab-content {
    font-size: 1.05rem !important;
    line-height: 1.85 !important;
    color: #4B4845;
}

/* --- V3.3 Sottotitoli (il titolo che segue un titolo o un divisore)
       sempre uguali: Jost leggero, grigio caldo --- */
.elementor-widget-heading + .elementor-widget-heading .elementor-heading-title,
.elementor-widget-divider + .elementor-widget-heading .elementor-heading-title {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300 !important;
    font-size: 1.25rem !important;
    letter-spacing: .02em;
    line-height: 1.6 !important;
    color: #5F5E5A !important;
}

/* --- V3.4 Riconferma scala dei titoli-dichiarazione
       (vince sull'eventuale regola sottotitolo) --- */
.elementor-element-4b5633d .elementor-heading-title,
.elementor-element-c80f6a3 .elementor-heading-title,
.elementor-element-49ad63f .elementor-heading-title,
.elementor-element-cbd9404 .elementor-heading-title,
.elementor-element-79100af .elementor-heading-title,
.elementor-element-f54e55d .elementor-heading-title,
.elementor-element-c524ced .elementor-heading-title,
.elementor-element-15e9d9e .elementor-heading-title,
.elementor-element-1c1a3a3 .elementor-heading-title,
.elementor-element-c5dc44b .elementor-heading-title,
.elementor-element-f65d1f8 .elementor-heading-title,
.elementor-element-e43eaff .elementor-heading-title,
.elementor-element-d39e28a .elementor-heading-title,
.elementor-element-4b8670c .elementor-heading-title,
.elementor-element-dbca464 .elementor-heading-title,
.elementor-element-0807797 .elementor-heading-title,
.elementor-element-b880cf1 .elementor-heading-title,
.elementor-element-e1437fb .elementor-heading-title,
.elementor-element-5b20772 .elementor-heading-title,
.elementor-element-45c3697 .elementor-heading-title,
.elementor-element-9c5a649 .elementor-heading-title {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: clamp(2.6rem, 5.5vw, 4.1rem) !important;
    font-weight: 500 !important;
    line-height: 1.08 !important;
    color: #1D1B1A !important;
}

/* --- V3.5 Eccezione hero: i sottotitoli nella prima sezione
       (foto scura) restano chiari e leggibili --- */
[data-elementor-type="wp-page"] > .elementor-section:first-of-type .elementor-widget-heading + .elementor-widget-heading .elementor-heading-title,
[data-elementor-type="wp-page"] > .elementor-section:first-of-type .elementor-widget-divider + .elementor-widget-heading .elementor-heading-title {
    color: #FAF9F7 !important;
    font-size: 1.35rem !important;
}

/* --- V4 Sezione recensioni "Dicono di noi" --- */
.ldv-statement .elementor-heading-title {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: clamp(2.6rem, 5.5vw, 4.1rem) !important;
    font-weight: 500 !important;
    line-height: 1.08 !important;
    color: #1D1B1A !important;
}
.ldv-statement { margin-bottom: 28px; }

/* --- V4.1 Riga punteggio server-side sotto il widget recensioni --- */
.ldv-review-line,
.ldv-review-line p {
    font-family: 'Jost', sans-serif !important;
    font-size: 0.95rem !important;
    color: #5F5E5A !important;
    letter-spacing: .04em;
}
.ldv-review-line a { color: #1B495A; text-decoration: underline; }

/* --- V4.2 Badge live nell'header: fondino chiaro per leggibilita' --- */
.ldv-header-badge {
    background: rgba(250, 249, 247, 0.92);
    border-radius: 10px;
    padding: 8px 14px;
}

/* --- V5 Box "Dove dormire" in coda agli articoli del blog --- */
.ldv-post-cta {
    background: #FAF9F7;
    border-left: 2px solid #1B495A;
    padding: 28px 32px;
    margin: 48px 0 8px;
}
.ldv-post-cta h2 {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 1.7rem !important;
    margin: 0 0 12px;
}
.ldv-post-cta p {
    font-family: 'Jost', sans-serif !important;
    font-weight: 300;
    line-height: 1.8;
}
.ldv-post-cta a { color: #1B495A; }

/* --- V4.3 Badge header: versione compatta (fix overflow colonna 113px) --- */
.ldv-header-badge .ti-top-rated-title,
.ldv-header-badge .ti-disclaimer {
    display: none !important;
}
.ldv-header-badge {
    padding: 7px 10px;
}
.ldv-header-badge .ti-large-logo img {
    width: 92px !important;
    height: auto !important;
}
.ldv-header-badge .ti-star {
    width: 12px !important;
    height: 12px !important;
}
.ldv-header-badge .ti-rating {
    font-size: 13px !important;
    line-height: 1.2 !important;
}

/* --- V4.4 Badge header: ricetta definitiva compatta (testata live) --- */
.ldv-header-badge .ti-widget .ti-header .ti-verified-by {
    display: none !important;
}
.ldv-header-badge .ti-widget .ti-header .ti-profile-details {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px !important;
    width: 100% !important;
    min-width: 0 !important;
}
.ldv-header-badge .ti-widget .ti-header .ti-large-logo img {
    width: 90px !important;
    max-width: 90px !important;
    height: auto !important;
}
.ldv-header-badge .ti-widget .ti-header .ti-stars img.ti-star {
    width: 12px !important;
    height: 12px !important;
}
.ldv-header-badge .ti-widget .ti-header .ti-rating {
    font-size: 13px !important;
}
.ldv-header-badge .ti-widget .ti-header {
    width: 100% !important;
    min-width: 0 !important;
}

/* --- V4.5 Badge header: pillola orizzontale allineata al menu (desktop) --- */
@media (min-width: 1100px) {
    .ldv-header-badge {
        background: none !important;
        padding: 0 !important;
    }
    .ldv-header-badge .elementor-widget-container {
        position: relative !important;
        height: 42px !important;
    }
    .ldv-header-badge .ti-widget {
        position: absolute !important;
        right: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: max-content !important;
        background: rgba(250, 249, 247, 0.95) !important;
        border-radius: 99px !important;
        padding: 7px 18px !important;
    }
    .ldv-header-badge .ti-widget .ti-header {
        width: max-content !important;
    }
    .ldv-header-badge .ti-widget .ti-header .ti-profile-details {
        flex-direction: row !important;
        align-items: center !important;
        gap: 9px !important;
        width: max-content !important;
    }
    .ldv-header-badge .ti-widget .ti-header .ti-large-logo img {
        width: 82px !important;
        max-width: 82px !important;
    }
    .ldv-header-badge .ti-widget .ti-header .ti-stars {
        display: flex !important;
        align-items: center !important;
        gap: 1px !important;
    }
    .ldv-header-badge .ti-widget .ti-header .ti-rating {
        font-size: 13px !important;
        font-weight: 600 !important;
    }
}
/* --- V4.6 Badge header: trasparente, contenuto bianco e piu' grande --- */
.ldv-header-badge,
.ldv-header-badge .ti-widget {
    background: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.ldv-header-badge .ti-widget {
    padding: 0 !important;
}
.ldv-header-badge .ti-widget .ti-header .ti-large-logo img {
    width: 118px !important;
    max-width: 118px !important;
    filter: brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.45));
}
.ldv-header-badge .ti-widget .ti-header .ti-stars img.ti-star {
    width: 15px !important;
    height: 15px !important;
    filter: brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0,0,0,.45));
}
.ldv-header-badge .ti-widget .ti-header .ti-rating {
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #FFFFFF !important;
    text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
@media (min-width: 1100px) {
    .ldv-header-badge .ti-widget .ti-header .ti-profile-details {
        gap: 12px !important;
    }
}
/* --- V4.7 Badge header: stelle blu originali (il filtro bianco le svuotava) --- */
.ldv-header-badge .ti-widget .ti-header .ti-stars img.ti-star {
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.35)) !important;
}
/* --- V4.8 Barra alta header: Instagram / Prenota / Lingua centrati --- */
.elementor-element-bb8c09f .elementor-icon-list-items,
.elementor-element-512997e3 .elementor-icon-list-items {
    justify-content: center !important;
}
.elementor-element-bb8c09f .elementor-widget-icon-list .elementor-widget-container,
.elementor-element-512997e3 .elementor-widget-icon-list .elementor-widget-container,
.elementor-element-bb8c09f .elementor-button-wrapper,
.elementor-element-512997e3 .elementor-button-wrapper,
.elementor-element-bb8c09f .elementor-widget-polylang-language-switcher .elementor-widget-container,
.elementor-element-512997e3 .elementor-widget-polylang-language-switcher .elementor-widget-container {
    text-align: center !important;
}
.elementor-element-bb8c09f > .elementor-container > .elementor-column > .elementor-widget-wrap,
.elementor-element-512997e3 > .elementor-container > .elementor-column > .elementor-widget-wrap {
    justify-content: center !important;
    align-items: center !important;
}
/* --- V4.9 Icona Instagram nella barra alta: colore visibile --- */
.elementor-element-bb8c09f .elementor-icon-list-icon i,
.elementor-element-512997e3 .elementor-icon-list-icon i {
    color: #1B495A !important;
    font-size: 18px !important;
}
/* --- V5.1 Header ristrutturato: menu nella barra alta + Instagram a colori --- */
.elementor-element-bb8c09f .elementor-nav-menu a,
.elementor-element-512997e3 .elementor-nav-menu a {
    color: #1D1B1A !important;
    font-size: 14px !important;
    letter-spacing: .06em;
}
.elementor-element-bb8c09f .elementor-nav-menu a:hover,
.elementor-element-bb8c09f .elementor-nav-menu .current-menu-item a,
.elementor-element-512997e3 .elementor-nav-menu a:hover,
.elementor-element-512997e3 .elementor-nav-menu .current-menu-item a {
    color: #1B495A !important;
}
.elementor-element-a1b2c21 .elementor-icon i,
.elementor-element-a1b2c22 .elementor-icon i {
    background: radial-gradient(circle at 30% 110%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent !important;
}
/* --- V5.2 Menu barra alta: carattere piu' grande --- */
.elementor-element-bb8c09f .elementor-nav-menu a,
.elementor-element-512997e3 .elementor-nav-menu a {
    font-size: 17px !important;
}
/* --- V5.3 Logo hero: intero, centrato, dimensione giusta + barra alta snella --- */
.elementor-element-da82859 img,
.elementor-element-6a3ad7b4 img {
    width: 300px !important;
    max-width: 300px !important;
    height: auto !important;
}
.elementor-element-da82859,
.elementor-element-6a3ad7b4 {
    text-align: center !important;
    overflow: visible !important;
}
@media (max-width: 767px) {
    .elementor-element-da82859 img,
    .elementor-element-6a3ad7b4 img {
        width: 210px !important;
        max-width: 210px !important;
    }
}
.elementor-element-bb8c09f,
.elementor-element-512997e3 {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}
.elementor-element-bb8c09f .elementor-button,
.elementor-element-512997e3 .elementor-button {
    padding: 10px 26px !important;
    font-size: 12px !important;
}
.elementor-element-bb8c09f .elementor-widget,
.elementor-element-512997e3 .elementor-widget {
    margin-bottom: 0 !important;
}
/* --- V5.4 Titoli hero Boutique sopra la foto: bianchi --- */
.elementor-element-e43eaff .elementor-heading-title,
.elementor-element-b880cf1 .elementor-heading-title {
    color: #FAF9F7 !important;
}
/* --- V5.5 Pagine FAQ (sfondo chiaro dietro l'header): logo e badge scuri --- */
body.page-id-2538 .elementor-element-da82859 img,
body.page-id-2539 .elementor-element-6a3ad7b4 img,
body.page-id-2538 .elementor-element-6a3ad7b4 img,
body.page-id-2539 .elementor-element-da82859 img {
    filter: invert(1) !important;
}
body.page-id-2538 .ldv-header-badge .ti-large-logo img,
body.page-id-2539 .ldv-header-badge .ti-large-logo img {
    filter: none !important;
}
body.page-id-2538 .ldv-header-badge .ti-rating,
body.page-id-2539 .ldv-header-badge .ti-rating {
    color: #1D1B1A !important;
    text-shadow: none !important;
}
/* --- V5.6 Footer scuro: testi chiari (il colore globale V3 li scuriva) --- */
[data-elementor-type="footer"] .elementor-widget-text-editor,
[data-elementor-type="footer"] .elementor-widget-text-editor p,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p {
    color: rgba(250, 249, 247, 0.9) !important;
}
/* --- V5.7 Blocco prezzo prenotazioni: fascia elegante centrata --- */
.vbo-rdet-desc-cont {
    display: none !important;
}
.vbo-rdet-descprice-block {
    display: block !important;
}
.vb_detcostroomdet,
.vb_detcostroom {
    width: 100% !important;
    float: none !important;
    background: transparent !important;
    padding: 0 !important;
}
.vblistroomnamedivprice {
    text-align: center !important;
    background: #FAF9F7 !important;
    border-top: 1px solid rgba(27, 73, 90, 0.25) !important;
    border-bottom: 1px solid rgba(27, 73, 90, 0.25) !important;
    padding: 28px 12px !important;
}
.vbliststartfromrdet {
    display: block !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 12px !important;
    letter-spacing: 0.3em !important;
    text-transform: uppercase !important;
    color: #909090 !important;
    margin-bottom: 8px !important;
}
.room_cost {
    font-family: 'Cormorant Garamond', serif !important;
    font-size: 46px !important;
    color: #1B495A !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}
.room_cost::after {
    content: ' a notte';
    font-family: 'Jost', sans-serif;
    font-size: 14px;
    letter-spacing: 0.05em;
    color: #5F5E5A;
    font-weight: 300;
}
html[lang^="en"] .room_cost::after {
    content: ' per night';
}
/* --- V5.8 Prenotazioni: blocco "a partire da" rimosso del tutto --- */
.vbo-rdet-descprice-block {
    display: none !important;
}
/* --- V5.9 Prenotazioni: nascondi nome camera (ridondante) --- */
.vblistroomnamediv {
    display: none !important;
}
/* --- V6.0 Modulo ricerca prenotazioni: tutti i controlli sulla stessa linea --- */
.vb-search-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-end !important;
    gap: 14px !important;
}
.vb-search-inner .vbo-search-inpblock,
.vb-search-inner .vbo-search-num-racblock,
.vb-search-inner .vbo-search-submit {
    margin: 0 !important;
}
.vbo-search-num-racblock select {
    height: 42px !important;
    box-sizing: border-box !important;
}
.vbo-search-submit input[type="submit"],
.vbo-search-submit button,
.vbo-search-submit .btn {
    height: 42px !important;
    box-sizing: border-box !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* --- V6.1 Modulo ricerca: allineamento fine di select e etichette --- */
.vbo-search-num-aduchild-entry {
    margin-bottom: 0 !important;
}
.vbo-search-num-racblock > div:last-child {
    margin-bottom: 0 !important;
}
.vbo-search-num-adults-entry-label,
.vbo-search-num-children-entry-label {
    margin-bottom: 9px !important;
}
/* --- V6.2 Top bar mobile: bottone Prenota compatto e contenuto --- */
@media (max-width: 767px) {
    .elementor-element-bbe3e7c .elementor-button,
    .elementor-element-8160707 .elementor-button {
        font-size: 11px !important;
        letter-spacing: 0.18em !important;
        padding: 10px 10px !important;
        white-space: nowrap !important;
    }
}

/* --- V6.3 Mobile: fascia bianca in alto sempre sopra il menu che scorre --- */
.elementor-element-6b6fc10,
.elementor-element-df3c135 {
    z-index: 100 !important;
}
.elementor-element-6b6fc10.elementor-sticky--active,
.elementor-element-df3c135.elementor-sticky--active {
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08) !important;
}

/* --- V6.4 Mobile: link menu (Home/Boutique/Contatti/FAQ) piu evidenti e cliccabili --- */
.elementor-element-1664cb4 a.elementor-item,
.elementor-element-8cdd3e2 a.elementor-item {
    font-size: 17px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.6) !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}
/* sottolineatura discreta sotto ogni voce: segnala che è cliccabile */
.elementor-element-1664cb4 a.elementor-item::after,
.elementor-element-8cdd3e2 a.elementor-item::after {
    content: "";
    display: block;
    width: 22px;
    height: 2px;
    margin: 4px auto 0;
    background: rgba(255, 255, 255, 0.55);
    border-radius: 2px;
}
.elementor-element-1664cb4 a.elementor-item-active::after,
.elementor-element-8cdd3e2 a.elementor-item-active::after {
    background: #fff;
    width: 30px;
}

/* --- V6.5 Mobile: fascetta nav per contrasto e leggibilità link --- */
.elementor-element-1664cb4 ul.elementor-nav-menu,
.elementor-element-8cdd3e2 ul.elementor-nav-menu {
    background: rgba(27, 73, 90, 0.72) !important;
    -webkit-backdrop-filter: blur(3px) !important;
    backdrop-filter: blur(3px) !important;
    border-radius: 0 !important;
}
/* rimuovo le sottolineature di prova della V6.4 (ridondanti con la fascetta) */
.elementor-element-1664cb4 a.elementor-item::after,
.elementor-element-8cdd3e2 a.elementor-item::after {
    display: none !important;
}
.elementor-element-1664cb4 a.elementor-item,
.elementor-element-8cdd3e2 a.elementor-item {
    text-shadow: none !important;
}
.elementor-element-1664cb4 a.elementor-item-active,
.elementor-element-8cdd3e2 a.elementor-item-active {
    text-decoration: underline !important;
    text-underline-offset: 5px !important;
    text-decoration-thickness: 2px !important;
}

/* --- V6.6 Mobile: via la fascetta verde, scritte menu con piu corpo --- */
.elementor-element-1664cb4 ul.elementor-nav-menu,
.elementor-element-8cdd3e2 ul.elementor-nav-menu {
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}
.elementor-element-1664cb4 a.elementor-item,
.elementor-element-8cdd3e2 a.elementor-item {
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    text-shadow: 0 1px 7px rgba(0, 0, 0, 0.75) !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}
.elementor-element-1664cb4 a.elementor-item::after,
.elementor-element-8cdd3e2 a.elementor-item::after {
    display: none !important;
}

/* --- V6.7 Mobile: icona hamburger bianca + pannello a tendina pulito --- */
.elementor-element-1664cb4 .elementor-menu-toggle,
.elementor-element-8cdd3e2 .elementor-menu-toggle {
    color: #FAF9F7 !important;
}
.elementor-element-1664cb4 .elementor-menu-toggle i,
.elementor-element-8cdd3e2 .elementor-menu-toggle i,
.elementor-element-1664cb4 .elementor-menu-toggle svg,
.elementor-element-8cdd3e2 .elementor-menu-toggle svg {
    color: #FAF9F7 !important;
    fill: #FAF9F7 !important;
    font-size: 30px !important;
    filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.5)) !important;
}
/* voci dentro il pannello a tendina: nitide, niente ombra (sfondo già scuro) */
.elementor-element-1664cb4 .elementor-nav-menu--dropdown a.elementor-item,
.elementor-element-8cdd3e2 .elementor-nav-menu--dropdown a.elementor-item {
    font-size: 18px !important;
    font-weight: 500 !important;
    text-shadow: none !important;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
}

/* --- V6.8 Mobile: pannello menu a tendina OPACO e pulito --- */
.elementor-element-1664cb4 .elementor-nav-menu--dropdown,
.elementor-element-8cdd3e2 .elementor-nav-menu--dropdown {
    background-color: #FAF9F7 !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22) !important;
    border-radius: 0 0 8px 8px !important;
}
.elementor-element-1664cb4 .elementor-nav-menu--dropdown a.elementor-item,
.elementor-element-8cdd3e2 .elementor-nav-menu--dropdown a.elementor-item {
    color: #1B495A !important;
    background-color: transparent !important;
    text-shadow: none !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    padding: 18px 20px !important;
    text-align: center !important;
    border-bottom: 1px solid rgba(27, 73, 90, 0.12) !important;
}
.elementor-element-1664cb4 .elementor-nav-menu--dropdown a.elementor-item:last-child,
.elementor-element-8cdd3e2 .elementor-nav-menu--dropdown a.elementor-item:last-child {
    border-bottom: none !important;
}
.elementor-element-1664cb4 .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active,
.elementor-element-8cdd3e2 .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active {
    background-color: rgba(27, 73, 90, 0.06) !important;
    color: #1B495A !important;
    text-decoration: none !important;
}

/* --- V6.9 Forza tema chiaro su device in dark mode (no fasce nere iOS) --- */
:root {
    color-scheme: light !important;
}
html {
    background-color: #ffffff !important;
}
