.single_offers {
    background-color: #FFF;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    margin-bottom: 43px;
}
.offers_area .single_offers .about_thumb img {
    height: 250px;
    width: auto;
}
.offers_area .single_offers h3 {
    font-weight: 500 !important;
    padding: 0px 14px;
    white-space: nowrap;       /* Impedisce al testo di andare a capo */
    overflow: hidden;          /* Nasconde la parte di testo in eccesso */
    text-overflow: ellipsis;   /* Aggiunge i tre puntini (...) */
    display: block;            /* Assicura che l'elemento si comporti come un blocco */';;
    text-transform: uppercase;
}
.offers_area.comfort .single_offers h3 {
    font-weight: bold !important;
}
.offers_area .single_offers p {
    font-weight: 500 !important;
    padding: 0px 14px;
    text-align: justify;
    height: 84px;
    overflow: hidden;
}
.offers_area.comfort .single_offers p {
    font-weight: 500 !important;
    padding: 0px 14px;
    text-align: justify;
    height: 90px;
    overflow: hidden;
    font-size: 15px;
    line-height: 24px;
}
.offers_area.comfort .single_offers {
    border-bottom: 5px solid #aa8207;
}
.offers_area.comfort .single_offers h3 {
    font-size: 22px;
    font-weight: 400;
    color: #1F1F1F;
    margin-top: 17px;
    margin-bottom: 7px;
    text-transform: uppercase;
}
.offers_area .single_offers p.book_now {
    padding: 10px 25px;
    border: 1px solid #000;
    margin: 14px;
    height: auto;
    display: inline-block; /* Necessario per contenere lo sfondo correttamente */
    
    /* Configurazione Gradiente: Trasparente a sinistra, Marrone a destra */
    background-image: linear-gradient(to right, transparent 50%, #bb5922 50%);
    background-size: 200% 100%;
    background-position: 0% 0; /* Inizialmente vediamo la parte trasparente */
    
    /* Transizione fluida */
    transition: background-position 0.4s ease-out, color 0.3s ease, border-color 0.3s ease;
    
    /* Protezione per il testo */
    position: relative;
    z-index: 1;
    color: #000;
}

/* Effetto Hover: Il colore entra da DESTRA verso SINISTRA */
.link-dettagli-servizio:hover .single_offers .book_now {
    background-position: 100% 0; /* Sposta il gradiente a sinistra, rivelando il marrone */
    color: #fff;
    border-color: #fff;
}

/*CAROSELLO SERVIZI EXTRA*/
/* --- 2. STILE FRECCE (NAV) --- */
#offers_carousel.owl-carousel .owl-nav {
    display: block;
}

#offers_carousel.owl-carousel .owl-nav .owl-prev,
#offers_carousel.owl-carousel .owl-nav .owl-next {
    position: absolute;
    top: -94px;
    transform: translateY(-50%);
    background: #bfbbbb !important; /* Sfondo bianco per le frecce */
    color: #FFF !important;   /* Icona marrone */
    width: 55px;
    height: 55px;
    line-height: 55px;
    border-radius: 50%;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    font-size: 20px !important;
    text-align: center;
}

#offers_carousel.owl-carousel .owl-nav .owl-prev i,
#offers_carousel.owl-carousel .owl-nav .owl-next i {
    font-weight: bold;
}

#offers_carousel.owl-carousel .owl-nav .owl-prev {
    left: -20px; /* Posizionata a sinistra */
}

#offers_carousel.owl-carousel .owl-nav .owl-next {
    right: -20px; /* Posizionata a destra */
}

#offers_carousel.owl-carousel .owl-nav .owl-prev:hover,
#offers_carousel.owl-carousel .owl-nav .owl-next:hover {
    background: #aa8207 !important;
    color: #fff !important;
}

/* --- 3. STILE PUNTINI (DOTS) --- */
#offers_carousel.owl-carousel .owl-dots {
    text-align: center; /* Centra il contenuto */
    margin-top: 30px;
    width: 100%;       /* Occupa tutta la larghezza per poter centrare */
    display: block;    
}

#offers_carousel.owl-carousel .owl-dot {
    display: inline-block; /* FORZA l'allineamento orizzontale */
    background: none;      /* Rimuove sfondi di default del button */
    border: none;          /* Rimuove bordi di default del button */
    padding: 0;
    cursor: pointer;
}

#offers_carousel.owl-carousel .owl-dot span {
    width: 12px;
    height: 12px;
    margin: 5px 7px;
    background: #ccc; 
    display: block;
    border-radius: 30px;
    transition: all 0.3s ease;
}

#offers_carousel.owl-carousel .owl-dot.active span,
#offers_carousel.owl-carousel .owl-dot:hover span {
    background: #aa8207; 
    width: 30px; 
}



