body {
    position: relative;
    font-size: 0.9rem !important;
}

/* OVERLAY */
body::before {
    content: "";
    position: fixed;   /* 👈 fondamentale */
    top: 0;
    left: 0;
    width: 100%;
    height: 50vh;

    background: url("../images/overlay.png") no-repeat top left;
    background-size: 1100px;

    pointer-events: none;
    z-index: 20;        
    opacity: 0.35;
}

.content-wrapper {
    position: relative;
    flex: 1 0 auto;
}

.wrapper {
    background-color: #4B3F40;
        display: flex;
    flex-direction: column;
    min-height: 70vh;
}


.main-header.navbar,
.navbar-collapse,
.navbar-toggler,
.cart-mobile-icon {
    position: relative;
    z-index: 15;
}


.alert-info {
  background-color:#A58E80 ;
}

@media (max-width: 768px) {
    body::before {
        background-size: 700px;
        opacity: 0.25;
    }
}
/* === Rendi trasparenti TUTTI gli elementi che coprono lo sfondo === */
/*
.light-mode .wrapper,
.light-mode .content-wrapper,
.light-mode .main-header,
.light-mode .navbar,
.light-mode .navbar-light,
.light-mode .navbar-white,
.light-mode .header-container,
.light-mode nav.main-header,
.light-mode .container-lg {
    background: transparent !important;
    box-shadow: none !important;
}
*/
.light-mode nav.main-header {
    background-color:#4B3F40 !important ;
}
*/
/* Rimuove qualunque stile inline "background-color" rimasto */
.light-mode .header-container[style],
.light-mode .navbar[style],
.light-mode .main-header[style] {
    background-color: transparent !important;
}

    
        /* Make the image fully responsive */
        .carousel-inner img {
            width: 100%;
            height: 100%;
        }

        .container-fluid {
            width: 100%;
            padding-right: 0px;
            padding-left: 0px;
            margin-right: auto;
            margin-left: auto;
        }
/*
        .light-mode .content-wrapper {
            background-color: #FBE3EF !important;
        }
*/
        .slogan-spa {
            width: 100%;
            margin-left: auto !important;
            margin-right: auto !important;
            background-color: #C7C0B3;
            padding: 0.5rem;
            border-top-left-radius: 0.3rem;
            border-top-right-radius: 0.3rem;
            color: #fff;
            text-align: center;
            border-radius: 10px;
        }

       .slogan-spa-top {
            width: 100%;
            margin-left: auto !important;
            margin-right: auto !important;
            background-color: #C7C0B3;
            padding: 0.5rem;
            color: #fff;
            text-align: center;
        }

        .slogan-spa h3, .slogan-spa-top h3 {
            color: #4B3F40;
            font-size: 24px !important;
        }

        .slogan-spa h4 {
            color: #4B3F40;
        }

        .slogan-spa h5 {
            color: #4B3F40;
        }

        .slogan-spa strong, .slogan-spa-top strong {
            color: #4B3F40;
            font-size: 1.2rem;
        }

        .slogan-spa hr {
            border-top: 1px solid #8D8D8D;
        }

        .fa-2x {
            font-size: 2em !important;
            color: #4B3F40;
        }

        .fa-x {
            font-size: 1.2em !important;
        }

        a.privacy-policy-link:hover {
            color: red;
        }

        /* ------- main menu ----- */
        .main-header .navbar-nav .nav-item {
            margin-bottom: 10px !important;
        }


        .dropdown-item {
            font-size: 1.5rem !important;
        }

        .dropdown-item:hover {
            color: #da0370;
            text-decoration: none;
            background-color: #f8f9fa;
        }

        .custom-dropdown-width {
            width: 200px;
            margin-top: 5px !important;
        }

        .custom-dropdown-width .dropdown-item {
            white-space: normal;
            /* Permette al testo di andare a capo */
            word-break: break-word;
            /* Forza il testo a dividere su più righe se necessario */
            font-weight: 500;
            line-height: 1.1;
            /* Riduci l'interlinea */
        }

        /* Riduce l'interlinea solo per la prima voce del dropdown */
        .dropdown-toggle.custom-line-height {
            line-height: 1.1;
            /* Riduce l'interlinea */
            white-space: normal;
            /* Permette al testo di andare a capo se necessario */
            margin-top: 5px;
        }

        /* Questo garantisce che il dropdown rimanga aperto quando si passa con il mouse */
        .dropdown:hover .dropdown-menu {
            display: block;
        }

        /* Rimuove il delay e gli effetti di fade-in/fade-out */
        .dropdown-menu {
            margin-top: 0;
            /* Rimuove il margine superiore */
        }

        /* Nascondi il caret standard di Bootstrap */
        .navbar-nav .dropdown-toggle::after {
            display: none;
        }

        /* Stile personalizzato per il caret */
        .custom-caret {
            display: inline-block;
            margin-left: 5px;
            /* Aggiusta la distanza dal testo */
            font-size: 14px;
            /* Dimensione dell'icona */
            position: relative;
            top: 0;
            /* Puoi regolare questo valore per posizionarlo correttamente */
        }

        @media (max-width: 991px) {
            .navbar-collapse {
                position: absolute;
                /* Sovrapposizione */
                top: 100%;
                /* Posiziona subito sotto la navbar */
                left: 0;
                right: 0;
                margin-left: -10px;
                margin-right: -10px;
                -ms-flex-preferred-size: 100%;
                flex-basis: 100%;
                -ms-flex-positive: 1;
                flex-grow: 1;
                -ms-flex-align: center;
                align-items: center;
                background-color: rgba(30, 30, 30, 0.9);
            }

            .navbar-toggler {
                text-decoration: none;
                position: absolute;
                right: 12%;
                top: 35%;
            }

            .light-mode .navbar-light .navbar-nav .nav-link {
                color: #fff;
                transition: transform .4s;
            }
            

            .custom-dropdown-width {
                width: 95%;
                margin-top: 5px !important;
                background-color: rgba(30, 30, 30, 0.9);
            }

            .dropdown-item:hover {
                color: #da0370;
                background-color: #FFFFFF00;
            }

            .dropdown-item {
                color: #e0e0e0;

            }

            .dropdown-divider {
                border-top: 1px solid #656565;
            }

        }

        @media (min-width: 768px) {
            .navbar-collapse {
                padding-left: 100px !important;
            }
        }

        /* Cambia il colore dello sfondo e del testo dell'opzione selezionata */
        .select-custom option:checked {
            background-color: #4CAF50;
            /* Cambia con il colore di sfondo desiderato */
            color: #fff;
            /* Colore del testo dell'opzione selezionata */
        }

        /* Cambia il colore dello sfondo e del testo quando si passa con il mouse */
        .select-custom option:hover {
            background-color: #f0f0f0;
            /* Cambia con il colore di sfondo desiderato */
            color: #bbb;
            /* Cambia con il colore del testo desiderato */
        }

        .cookie-link {
            text-decoration: underline;
            color: inherit;
            /* Colore normale (non cambia) */
            transition: color 0.3s;
        }

        .cookie-link:hover {
            color: red;
            /* Quando passi sopra diventa rosso */
        }

        .cookie-btn {
    margin-left: 8px;
    padding: 6px 14px;
    background-color: #ffffff;
    color: #000000;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
}

.cookie-btn:hover {
    background-color: #f0f0f0;
}

.open-privacy-modal{
    color:#4c99eb !important;
}

.cart-icon-img {
    width: 28px;
    height: auto;
    vertical-align: middle;
    margin-left: 5px;
}

.cart-mobile-icon {
   position: absolute;
   right: 10px;
}

#cart_badge_mobile {
    position: absolute;
    top: -5px;
    right: -8px;
    background: #e83e8c;
    color: #fff;
    font-size: 11px;
    padding: 2px 6px;
    border-radius: 50%;
}

.prenota-image {
margin-top: 0.6rem;
margin-right: .2rem;
height: auto;
max-width: 140px;
}

.effetto {
    animation: bounce 1.4s infinite;
    display: inline-block;
}

@keyframes bounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
}


