.hp-field { display: none !important; }
        html { scroll-behavior: smooth; }
        body { background-color: #ffffff; letter-spacing: 0.02em; color: #000000; }
.text-gray-400 {
    --tw-text-opacity: 1;
    color: rgb(0 0 0);
    font-size: 14px !important;
}

.text-white\/80 {
    color: rgb(0 0 0 / 1000%) !important;
    font-weight: 600 !important;
}

.text-gold\/30 {
    color: rgb(197 160 89) !important;
}

.text-gold\/50 {
    color: rgb(197 160 89) !important;
}
.text-gray-400 {
    --tw-text-opacity: 1;
    color: rgb(23 51 99) !important;
}
.text-gray-600 {
    --tw-text-opacity: 1;
    color: rgb(0 0 0) !important;
    font-size: 16px !important;
}
.text-\[10px\] {
    font-size: 17px !important;
}
.text-\[9px\] {
    font-size: 16px !important;
    font-weight: 700 !important;
}
.text-gray-500 {
    --tw-text-opacity: 1;
    color: rgb(100 100 100) !important; /* Grigio per sfondo chiaro */
}
        .luxury-gradient { 
            background: linear-gradient(135deg, #C5A059 0%, #F1D39B 50%, #C5A059 100%); 
            -webkit-background-clip: text; 
            -webkit-text-fill-color: transparent; 
        }

        .hero-full { height: 100vh; height: 100dvh; }
        .text-overlay { background: linear-gradient(to top, rgba(255,255,255,1) 0%, rgba(255,255,255,0.2) 50%, transparent 100%); }
        
        #logo_aff { max-width: 250px !important; }
        
        @media (max-width: 768px) {
            #logo_aff { max-width: 130px !important; }
            .service-img-container { aspect-ratio: 16 / 10 !important; }
        }

        /* Nav Menu – slide in from right */
        #nav-menu {
            position: fixed;
            top: 0; right: 0;
            width: min(420px, 100vw);
            height: 100vh; height: 100dvh;
            z-index: 150;
            background: #f4f4f4; /* Sfondo menu chiaro */
            border-left: 1px solid rgba(197,160,89,0.12);
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: center;
            padding: 4rem 3rem;
            transform: translateX(100%);
            transition: transform 0.65s cubic-bezier(0.76, 0, 0.24, 1);
            pointer-events: none;
        }
        #nav-menu.open {
            transform: translateX(0);
            pointer-events: all;
        }

        /* Scrim dietro il pannello */
        #nav-scrim {
            position: fixed; inset: 0; z-index: 149;
            background: rgba(255,255,255,0.6);
            backdrop-filter: blur(4px);
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.5s ease;
        }
        #nav-scrim.open { opacity: 1; pointer-events: all; }

        #nav-menu nav { width: 100%; }
        #nav-menu nav a {
            display: block;
            font-family: 'Bodoni Moda', serif;
            font-size: clamp(1.8rem, 5vw, 3rem);
            color: #000; /* Testo menu nero */
            text-decoration: none;
            line-height: 1.2;
            padding: 0.6rem 0;
            border-bottom: 1px solid rgba(197,160,89,0.1);
            transition: color 0.3s, padding-left 0.3s;
        }
        #nav-menu nav a:first-child { border-top: 1px solid rgba(197,160,89,0.1); }
        #nav-menu nav a:hover { color: #C5A059; padding-left: 0.5rem; }

        #contact-modal {
            transition: opacity 0.4s ease, visibility 0.4s ease;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        #contact-modal.hidden { opacity: 0; visibility: hidden; pointer-events: none; }
        
        .luxury-tracking { letter-spacing: 0.4em !important; }
        .hp-field { display: none; }
        .service-img-container > img { border: 5px solid #bb9854 !important; }

        /* Sub-services list styling */
        .sub-services { list-style: none; padding: 0; margin: 0 0 1.5rem 0; }
        .sub-services li {
            color: #000000; /* Testo sub-servizi nero */
            font-size: 1.05rem;
            padding: 0.35rem 0;
            border-bottom: 1px solid rgba(197,160,89,0.08);
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }
        .sub-services li::before {
            content: '–';
            color: #C5A059;
            font-weight: 600;
            flex-shrink: 0;
        }
        .sub-services li:last-child { border-bottom: none; }
        
        
        /* Custom Swiper Arrows Style */
.service-img-container .swiper-button-next,
.service-img-container .swiper-button-prev {
    color: #C5A059 !important;
    /* border: 2px solid white; */
    transition: all 0.3s ease;
    opacity: 0;
    background-color: white;
    border-radius: 100%;
    /* width: 44px; */
    width: calc(var(--swiper-navigation-size) / 44 * 44);
}

.service-img-container:hover .swiper-button-next,
.service-img-container:hover .swiper-button-prev {
    opacity: 1; /* Appaiono al passaggio del mouse sulla card */
}

.service-img-container .swiper-button-next::after,
.service-img-container .swiper-button-prev::after {
    font-size: 18px !important; /* Frecce più sottili e piccole */
    font-weight: bold;
}

/* Posizionamento interno */
.swiper-button-next { right: 15px !important; }
.swiper-button-prev { left: 15px !important; }