html {
    scroll-padding-top: 100px;
}

@media (max-width: 991px) {
    html {
        scroll-padding-top: 240px;
    }
}
body {
        font-family: 'Lato', Arial, sans-serif;
        background: #fff;
        color: #6b5e3c;
        font-size: 1.08rem;
        letter-spacing: 0.01em;
        padding-left: 40px;
        padding-right: 40px;
}

@media (max-width: 991px) {
    body {
        padding-left: 16px;
        padding-right: 16px;
    }
}
            .navbar {
                box-shadow: 0 2px 16px rgba(210,180,80,0.07);
                font-family: 'Lato', Arial, sans-serif;
                font-size: 1.13rem;
                letter-spacing: 0.5px;
                background: #fff !important;
                position: sticky;
                top: 0;
                z-index: 1050;
                transition: box-shadow 0.2s;
            }
            .navbar-brand {
                font-family: 'Playfair Display', serif;
                font-weight: 700;
                font-size: 2.2rem;
                letter-spacing: 2px;
                color: #bfa14a !important;
                text-shadow: 0 2px 8px #fff8;
                font-style: italic;
            }
            .navbar-nav .nav-link {
                color: #bfa14a !important;
                font-weight: 600;
                margin-left: 8px;
                margin-right: 8px;
                border-radius: 6px;
                transition: background 0.2s, color 0.2s;
                font-family: 'Lato', Arial, sans-serif;
                        font-style: italic;
                    }
                    .navbar-nav .nav-link {
                        color: #bfa14a !important;
                        font-weight: 600;
                        margin-left: 8px;
                        margin-right: 8px;
                        border-radius: 6px;
                        transition: background 0.2s, color 0.2s;
                        font-family: 'Lato', Arial, sans-serif;
                    }
                    .navbar-nav .nav-link.active, .navbar-nav .nav-link:hover {
                        background: #fffbe6;
                        color: #e6c97a !important;
                    }
                    .hero-spa {
                        background: linear-gradient(120deg, #fff 60%, #fff 100%);
                        min-height: 50px;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        text-align: center;
                        box-shadow: 0 8px 32px rgba(210,180,80,0.10);
                        border-radius: 0 0 24px 24px;
                        margin-bottom: 2rem;
                    }
                    .hero-spa h1 {
                        font-family: 'Playfair Display', serif;
                        font-size: 3.3rem;
                        font-weight: 700;
                        color: #bfa14a;
                        letter-spacing: 2px;
                        text-shadow: 0 2px 12px #fff8;
                        font-style: italic;
                    }
                    .hero-spa p {
                        font-size: 1.5rem;
                        color: #bfa14a;
                        font-family: 'Lato', Arial, sans-serif;
                        margin-top: 1rem;
                    }
                    /* Carousel SPA - desktop visibilità migliorata */
                    #carouselSpa {
                            margin-bottom: 2.5rem;
                            border-radius: 0 0 18px 18px;
                            overflow: hidden;
                            box-shadow: 0 4px 24px rgba(210,180,80,0.10);
                            max-width: 1100px;
                            margin-left: auto;
                            margin-right: auto;
                    }
                    #carouselSpa .carousel-item img {
                            height: 480px;
                            object-fit: cover;
                    }
                    .carousel-caption {
                            background: transparent;
                            border-radius: 0 0 18px 18px;
                            padding: 2rem 3rem;
                            font-size: 2rem;
                            font-weight: 700;
                            letter-spacing: 1px;
                            color: #bfa14a;
                            text-shadow: 0 2px 12px #fff8e1, 0 1px 0 #e6c97a;
                            font-family: 'Playfair Display', serif;
                            font-style: italic;
                    }
                    @media (max-width: 991px) {
                        .carousel-caption {
                            background: rgba(255, 245, 200, 0.75);
                            font-size: 1.2rem;
                            padding: 1.2rem 1rem;
                        }
                    }
                    @media (max-width: 991px) {
                        #carouselSpa .carousel-item img {
                            height: 340px;
                        }
                        .carousel-caption {
                            font-size: 1.2rem;
                            padding: 1.2rem 1rem;
                        }
                    }
                    @media (max-width: 600px) {
                        #carouselSpa .carousel-item img {
                            height: 180px;
                        }
                    }
                    .servizi-icona {
                        font-size: 3.2rem;
                        color: #e6c97a;
                        margin-bottom: 16px;
                        filter: drop-shadow(0 2px 8px #f7e9c3);
                    }
                    .card-servizio {
                        background: #fffbe6;
                        border-radius: 18px;
                        box-shadow: 0 4px 24px rgba(210,180,80,0.10);
                        padding: 2rem 1.2rem 1.2rem 1.2rem;
                        margin-bottom: 1.5rem;
                        transition: transform 0.18s, box-shadow 0.18s;
                        min-height: 270px;
                    }
                    .card-servizio:hover {
                        transform: translateY(-6px) scale(1.03);
                        box-shadow: 0 8px 32px rgba(210,180,80,0.18);
                    }
                    h2, h4 {
                        font-family: 'Playfair Display', serif;
                        font-weight: 700;
                        letter-spacing: 1px;
                    }
                    h2 {
                        font-size: 2.2rem;
                        color: #bfa14a;
                        margin-bottom: 1.5rem;
                        font-style: italic;
                    }
                    h4 {
                        font-size: 1.18rem;
                        color: #e6c97a;
                        font-style: italic;
                    }
                    .footer-spa {
                        background: #f7e9c3;
                        color: #bfa14a;
                        padding: 30px 0 10px 0;
                        text-align: center;
                        font-size: 1.1rem;
                        letter-spacing: 1px;
                        font-family: 'Playfair Display', serif;
                        margin-top: 3rem;
                        border-radius: 18px 18px 0 0;
                        box-shadow: 0 -2px 16px rgba(210,180,80,0.07);
                    }
                    .btn-primary {
                        background: linear-gradient(90deg, #e6c97a 60%, #bfa14a 100%);
                        border: none;
                        font-weight: 700;
                        font-family: 'Lato', Arial, sans-serif;
                        font-size: 1.1rem;
                        letter-spacing: 1px;
                        border-radius: 8px;
                        color: #fff;
                        box-shadow: 0 2px 8px #f7e9c3;
                        transition: background 0.2s, box-shadow 0.2s;
                    }
                    .btn-primary:hover {
                        background: linear-gradient(90deg, #bfa14a 60%, #e6c97a 100%);
                        box-shadow: 0 4px 16px #e6c97a;
                    }
                    .form-label {
                        font-weight: 700;
                        color: #bfa14a;
                        font-family: 'Playfair Display', serif;
                        font-style: italic;
                    }
                    .form-control:focus {
                        border-color: #bfa14a;
                        box-shadow: 0 0 0 0.2rem #bfa14a33;
                    }
                    body.scrolled .navbar {
                        box-shadow: 0 4px 24px rgba(210,180,80,0.18);
                    }



/* Slider Owl Carousel - base */

.slider-nuovo {
    width: 100vw;
    max-width: 100%;
    margin: 0 auto 40px auto;
    position: relative;
    background: #f7f7f7;
    overflow: hidden;
}
.slider-nuovo .owl-carousel {
    position: relative;
}
.slider-nuovo .owl-carousel .item {
    position: relative;
    text-align: center;
}
.slider-nuovo img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 10px;
    display: block;
}
.slider-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 30px;
    color: #fff;
    background: rgba(0,0,0,0.45);
    font-size: 2rem;
            width: 100vw;
            max-width: 100%;
            margin: 0 auto 40px auto;
            position: relative;
            background: linear-gradient(120deg, #f7f7f7 60%, #e0e7ef 100%);
            overflow: hidden;
            box-shadow: 0 8px 32px rgba(60,60,90,0.10);
            border-radius: 0 0 18px 18px;
/* NAVIGATION ARROWS */
.slider-nuovo .owl-nav {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
            width: 100%;
            height: 420px;
            object-fit: cover;
            border-radius: 0 0 18px 18px;
            display: block;
            filter: brightness(0.92) contrast(1.08) saturate(1.1);
            transition: filter 0.3s;
            box-shadow: 0 4px 24px rgba(60,60,90,0.10);
    background: #fff !important;
    border-radius: 50%;
            position: absolute;
            left: 50%;
            bottom: 36px;
            transform: translateX(-50%);
            min-width: 60vw;
            max-width: 90vw;
            color: #fff;
            background: rgba(30,30,60,0.55);
            font-size: 2.1rem;
            font-family: 'Montserrat', sans-serif;
            padding: 18px 24px 16px 24px;
            border-radius: 0 0 18px 18px;
            letter-spacing: 1px;
            text-shadow: 0 2px 12px #000, 0 1px 0 #222;
            box-shadow: 0 4px 24px rgba(30,30,60,0.10);
            font-weight: 700;
            opacity: 0.97;
            animation: sliderCaptionIn 1s cubic-bezier(.7,1.7,.5,1) both;
    }
    @keyframes sliderCaptionIn {
        0% { opacity: 0; transform: translateX(-50%) translateY(40px) scale(0.98); }
        100% { opacity: 0.97; transform: translateX(-50%) translateY(0) scale(1); }
    }
.slider-nuovo .owl-nav button.owl-prev:hover,
.slider-nuovo .owl-nav button.owl-next:hover {
    background: #e0e0e0 !important;
}
.slider-nuovo .owl-nav .fa {
    font-size: 2rem;
    color: #333;
}
/* DOTS */
.slider-nuovo .owl-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 18px;
    display: flex;
    justify-content: center;
    z-index: 2;
}
.slider-nuovo .owl-dot span {
    width: 12px;
    height: 12px;
    background: #bbb;
    display: block;
    border-radius: 50%;
    margin: 0 4px;
    transition: background 0.2s;
}
            opacity: 0.92;
            font-size: 2.2rem;
            margin: 0 8px;
            filter: drop-shadow(0 2px 8px rgba(30,30,60,0.10));
.slider-nuovo .owl-dot.active span {
    background: #333;
}
            background: #e0e0e0 !important;
            transform: scale(1.08);
            opacity: 1;
    font-family: 'Montserrat', 'Roboto', Arial, sans-serif;
    background: #f6f7fb;
    color: #222;
    margin: 0;
            filter: drop-shadow(0 2px 8px #fff8);
    padding: 0;
}
.header-nuovo {
    background: #222;
    color: #fff;
    padding: 0;
            bottom: 12px;
.navbar-nuovo {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}
.menu-nuovo {
    list-style: none;
            background: #bbb;
    justify-content: flex-end;
    gap: 30px;
    margin: 0;
    padding: 20px 0;
}
.menu-nuovo li a {
            background: #2a4d7a;
            box-shadow: 0 2px 8px #fff8;
    text-decoration: none;
    /* RESPONSIVE SLIDER */
    @media (max-width: 900px) {
        .slider-nuovo img {
            height: 260px;
        }
        .slider-caption {
            font-size: 1.2rem;
            min-width: 80vw;
            padding: 10px 10px 10px 10px;
        }
    }
    @media (max-width: 600px) {
        .slider-nuovo img {
            height: 160px;
            border-radius: 0 0 10px 10px;
        }
        .slider-caption {
            font-size: 1rem;
            min-width: 90vw;
            padding: 7px 4px 7px 4px;
            border-radius: 0 0 10px 10px;
        }
        .slider-nuovo .owl-nav button.owl-prev,
        .slider-nuovo .owl-nav button.owl-next {
            width: 32px;
            height: 32px;
            font-size: 1.2rem;
        }
    }
    font-weight: 700;
    letter-spacing: 1px;
    transition: color 0.2s;
}
.menu-nuovo li a:hover {
    color: #dab360;
}
.hero-nuovo {
    background: linear-gradient(120deg, #dab360 0%, #f6f7fb 100%);
    padding: 80px 0 40px 0;
    text-align: center;
}
.titolo-nuovo {
    font-size: 3rem;
    margin-bottom: 10px;
    font-family: 'Montserrat', Arial, sans-serif;
}
.sottotitolo-nuovo {
    font-size: 1.3rem;
    color: #555;
}
.container-nuovo {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
}
.servizi-nuovo {
    background: #fff;
    padding: 60px 0 40px 0;
}
.servizi-lista-nuovo {
    display: flex;
    gap: 30px;
    justify-content: center;
    flex-wrap: wrap;
}
.servizio-nuovo {
    background: #f6f7fb;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    padding: 30px 20px;
    text-align: center;
    width: 260px;
    transition: box-shadow 0.2s;
}
.servizio-nuovo:hover {
    box-shadow: 0 4px 16px rgba(218,179,96,0.15);
}
.servizio-nuovo i {
    font-size: 2.5rem;
    color: #dab360;
    margin-bottom: 10px;
}
.servizio-nuovo h3 {
    margin: 10px 0 8px 0;
    font-size: 1.2rem;
    font-family: 'Montserrat', Arial, sans-serif;
}
.servizio-nuovo p {
    color: #555;
    font-size: 1rem;
}
.chi-siamo-nuovo {
    background: #f6f7fb;
    padding: 50px 0;
    text-align: center;
}
.chi-siamo-nuovo h2 {
    font-family: 'Montserrat', Arial, sans-serif;
    font-size: 2rem;
}
.chi-siamo-nuovo p {
    color: #444;
    font-size: 1.1rem;
    max-width: 700px;
    margin: 20px auto 0 auto;
}
.contatti-nuovo {
    background: #fff;
    padding: 50px 0;
    text-align: center;
}
.form-nuovo {
    max-width: 400px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.form-nuovo input,
.form-nuovo textarea {
    padding: 12px;
    border-radius: 6px;
    border: 1px solid #dab360;
    font-size: 1rem;
    font-family: 'Roboto', Arial, sans-serif;
}
.form-nuovo button {
    background: #dab360;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 12px;
    font-size: 1rem;
    font-family: 'Montserrat', Arial, sans-serif;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s;
}
.form-nuovo button:hover {
    background: #bfa03c;
}
.footer-nuovo {
    background: #222;
    color: #fff;
    text-align: center;
    padding: 25px 0 10px 0;
    margin-top: 40px;
}
.footer-nuovo p {
    margin: 0;
    font-size: 1rem;
}
