
/* STUDIO AVOLA - SEZIONE EDITORIALE V11 */
.about-us.avola-editorial-intro {
    position: relative;
    min-height: 75vh;
    padding: 140px 0;
    background: #082830;
    border-bottom: 1px solid rgba(255,255,255,.08);
    overflow: hidden;
}
.avola-editorial-intro .container {
    position: relative;
    z-index: 2;
}
.avola-editorial-layout {
    display: grid;
    grid-template-columns: 23% 1fr;
    gap: 4%;
}
.avola-editorial-label {
    padding-top: 13px;
    color: #80A6A9;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .18em;
}
.avola-editorial-eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #73E4DF;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .24em;
}
.avola-editorial-dot {
    width: 6px;
    height: 6px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #73E4DF;
    box-shadow: 0 0 12px #73E4DF;
    animation: avolaEditorialPulse 2.5s infinite;
}
.avola-editorial-body h2 {
    margin: 25px 0 55px;
    color: #E8F2F1;
    font-size: clamp(44px,5.2vw,88px);
    font-weight: 400;
    letter-spacing: -.028em;
    line-height: 1.15;
}
.avola-editorial-body h2 em {
    color: #73E4DF;
    font-style: normal;
    font-weight: 300;
}
.avola-editorial-bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
}
.avola-editorial-bottom p {
    max-width: 800px;
    margin: 0;
    color: #A8C0C2;
    font-size: 17px;
    line-height: 1.85;
}
.avola-editorial-link {
    flex-shrink: 0;
    padding-bottom: 12px;
    border-bottom: 1px solid #73E4DF;
    color: #E8F2F1;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .1em;
    transition: color .3s ease;
}
.avola-editorial-link span {
    margin-left: 15px;
    color: #73E4DF;
}
.avola-editorial-link:hover {
    color: #73E4DF;
}
.avola-editorial-deco {
    position: absolute;
    right: -1%;
    bottom: -25%;
    color: rgba(255,255,255,.025);
    font-size: 48vw;
    font-weight: 800;
    line-height: 1;
    pointer-events: none;
    user-select: none;
}
@keyframes avolaEditorialPulse {
    50% { opacity: .35; }
}
@media (max-width: 991px) {
    .about-us.avola-editorial-intro {
        min-height: auto;
        padding: 95px 0;
    }
    .avola-editorial-layout {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    .avola-editorial-body h2 {
        font-size: clamp(38px,7vw,60px);
    }
    .avola-editorial-bottom {
        flex-direction: column;
        align-items: flex-start;
    }
}
@media (max-width: 767px) {
    .about-us.avola-editorial-intro {
        padding: 80px 0;
    }
    .avola-editorial-intro .container {
        padding-left: 30px;
        padding-right: 30px;
    }
    .avola-editorial-body h2 {
        font-size: clamp(36px,8vw,48px);
        margin: 25px 0 35px;
    }
    .avola-editorial-bottom {
        gap: 30px;
    }
    .avola-editorial-bottom p {
        font-size: 15px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .avola-editorial-dot {
        animation: none;
    }
}
.about-us.avola-editorial-intro .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}
@media (max-width: 767px) {
    .about-us.avola-editorial-intro .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }
}


/* STUDIO AVOLA V11 - 02 LE COMPETENZE */
.our-services.avola-competences {
    position: relative;
    padding: 140px 0;
    background: #041F26;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.avola-competences .container-fluid {
    width: 100%;
    padding-left: 5%;
    padding-right: 5%;
}
.avola-competences .avola-editorial-body h2 {
    margin: 25px 0 55px;
    color: #E8F2F1;
    font-size: clamp(44px,5.2vw,88px);
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: -.065em;
}
.avola-competences .avola-editorial-body h2 em {
    color: #73E4DF;
    font-style: normal;
    font-weight: 300;
}
.avola-competences-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 1px;
    padding: 1px;
    background: rgba(255,255,255,.10);
}
.avola-competence {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    min-height: 190px;
    padding: 33px;
    background: #06252C;
    color: #E8F2F1;
    text-decoration: none;
    transition: background .3s ease;
}
.avola-competence:hover {
    background: #0D424B;
}
.avola-competence-number {
    color: #73E4DF;
    font-size: 11px;
}
.avola-competence-content {
    flex: 1;
    min-width: 0;
}
.avola-competence-content h3 {
    margin: 0 0 18px;
    color: #E8F2F1;
    font-size: 36px;
    font-weight: 400;
    letter-spacing: -.04em;
}
.avola-competence-content p {
    margin: 0;
    color: #9DB5B7;
    font-size: 20px;
    line-height: 1.65;
}
.avola-competence-arrow {
    color: #73E4DF;
    font-size: 23px;
    line-height: 1;
    transition: transform .3s ease;
}
.avola-competence:hover .avola-competence-arrow {
    transform: translate(4px,-4px);
}
.avola-competence:focus-visible {
    outline: 2px solid #73E4DF;
    outline-offset: -3px;
}
@media (max-width: 991px) {
    .our-services.avola-competences {
        padding: 95px 0;
    }
    .avola-competences .avola-editorial-body h2 {
        font-size: clamp(38px,7vw,60px);
    }
    .avola-competences-grid {
        grid-template-columns: 1fr;
    }
    .avola-competence {
        min-height: 130px;
        padding: 25px;
    }
}
@media (max-width: 767px) {
    .our-services.avola-competences {
        padding: 80px 0;
    }
    .avola-competences .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }
    .avola-competences .avola-editorial-body h2 {
        font-size: clamp(34px,8vw,46px);
        margin: 25px 0 35px;
    }
    .avola-competence {
        gap: 15px;
        padding: 22px 16px;
    }
    .avola-competence-content h3 {
        font-size: 25px;
    }
    .avola-competence-content p {
        font-size: 16px;
    }
}
/* Nasconde le slide adiacenti del carosello competenze */
#competences-carousel .owl-stage-outer {
    overflow: hidden !important;
}

#competences-carousel {
    width: 100%;
    min-width: 0;
}

.avola-editorial-body {
    min-width: 0;
}



/* ==========================================
   SECTION 04 - CASI CLINICI
   ========================================== */

.avola-clinical-cases {
    background: #041F26;
    padding: 140px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.avola-clinical-cases .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-clinical-cases .row > [class*="col-"] {
    min-width: 0;
}

.avola-clinical-cases .avola-editorial-body h2 {
    color: #E8F2F1;
    font-size: clamp(44px, 5.2vw, 88px);
    margin: 28px 0 35px;
}

.avola-clinical-cases .avola-editorial-body h2 em {
    color: #73E4DF;
}

.avola-cases-description {
    max-width: 510px;
    color: #A8C0C2;
    font-size: 19px;
    line-height: 1.8;
}

.avola-cases-note {
    max-width: 480px;
    color: #80A6A9;
    font-size: 14px;
    line-height: 1.7;
    margin-top: 25px;
}

/* Carousel */
.avola-cases-carousel {
    width: 100%;
}

.avola-cases-carousel .owl-stage-outer {
    overflow: hidden;
}

.avola-case-image {
    position: relative;
    overflow: hidden;
    background: #0D343B;
    aspect-ratio: 3 / 4;
}

/* Contenitore delle immagini cliniche */

/* =========================================
   SECTION 04 — PRIMA / DOPO PREMIUM
   ========================================= */

/* Contenitori delle fotografie */
.avola-case-image {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 4 / 3;
    padding: 20px !important;
    overflow: hidden;
    border-radius: 16px;
    background: #0D343B;
    border: 1px solid rgba(255,255,255,.12);
    transition:
        border-color .35s ease,
        box-shadow .35s ease,
        transform .35s ease;
}

/* Fotografie: proporzioni originali */
.avola-case-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    object-fit: contain;
    object-position: center;
    border-radius: 9px;
}

/* PRIMA — rame satinato */
.avola-case-slide .col-6:first-child .avola-case-image {
    border-color: rgba(177,139,120,.65);
    background: linear-gradient(
        145deg,
        #17383D,
        #0B292F
    );
}

/* DOPO — turchese */
.avola-case-slide .col-6:nth-child(2) .avola-case-image {
    border-color: rgba(115,228,223,.65);
    background: linear-gradient(
        145deg,
        #12474D,
        #092E35
    );
}

/* Leggero effetto di profondità */
.avola-case-image:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(0,0,0,.25);
}

/* Etichette PRIMA / DOPO */
.avola-case-image span {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 2;
    padding: 9px 15px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .12em;
    backdrop-filter: blur(8px);
}

/* Etichetta PRIMA */
.avola-case-slide .col-6:first-child .avola-case-image span {
    color: #E9B9A1;
    background: rgba(24,38,41,.94);
    border: 1px solid rgba(177,139,120,.45);
}

/* Etichetta DOPO */
.avola-case-slide .col-6:nth-child(2) .avola-case-image span {
    color: #73E4DF;
    background: rgba(4,39,46,.94);
    border: 1px solid rgba(115,228,223,.45);
}

/* Smartphone */
@media (max-width: 767px) {
    .avola-case-image {
        padding: 6px;
        border-radius: 10px;
    }

    .avola-case-image img {
        border-radius: 6px;
    }

    .avola-case-image span {
        top: 10px;
        left: 10px;
        padding: 6px 8px;
        font-size: 10px;
    }
}

@media (hover: none) {
    .avola-case-image:hover {
        transform: none;
        box-shadow: none;
    }
}



.avola-case-caption {
    padding-top: 24px;
}

.avola-case-caption p {
    color: #A8C0C2;
    font-size: 16px;
    line-height: 1.7;
    margin-top: 12px;
}

.avola-case-caption span {
    color: #73E4DF;
    font-size: 12px;
    letter-spacing: .16em;
}

.avola-case-caption h3 {
    margin-top: 10px;
    color: #E8F2F1;
    font-size: 25px;
    font-weight: 400;
}

/* Navigazione */
.avola-cases-carousel .owl-nav {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 22px;
}

.avola-cases-carousel .owl-nav button.owl-prev,
.avola-cases-carousel .owl-nav button.owl-next {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border: 1px solid rgba(115,228,223,.4);
    border-radius: 50%;
    color: #73E4DF;
    background: transparent;
    font-size: 25px;
    transition: background .3s ease;
}

.avola-cases-carousel .owl-nav button:hover {
    background: #169F99;
    color: #FFFFFF;
}

/* Responsive */
@media (max-width: 767px) {
    .avola-clinical-cases {
        padding: 80px 0;
    }

    .avola-clinical-cases .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-clinical-cases .avola-editorial-body h2 {
        font-size: clamp(38px, 8vw, 52px);
    }

    .avola-cases-description {
        font-size: 16px;
    }

    .avola-cases-carousel {
        margin-top: 45px;
    }

    .avola-case-image span {
        top: 8px;
        left: 8px;
        padding: 7px 9px;
        font-size: 10px;
    }

    .avola-case-caption h3 {
        font-size: 21px;
    }
}
.avola-category-link {
    color: #73E4DF;
    text-decoration: none;
    transition: color .3s ease;
}

.avola-category-link:hover {
    color: #FFFFFF;
    text-decoration: underline;
}



/* SECTION 05 - STAFF */

.avola-staff {
    background: #F4F8F7;
    padding: 120px 0;
}

.avola-staff .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-staff .avola-editorial-body h2 {
    color: #041F26;
}

.avola-staff .avola-editorial-label {
    color: #55777A;
}

.avola-staff .avola-editorial-eyebrow {
    color: #169F99;
}

.avola-staff .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-staff-intro {
    color: #55777A;
    font-size: 18px;
    line-height: 1.8;
}

/* Fotografie */

.avola-staff-carousel {
    width: 100%;
}

.avola-staff-card {
    width: 100%;
    min-width: 0;
}

.avola-staff-photo {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    border-radius: 12px;
    background: #DDE9E7;
}

.avola-staff-photo img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    object-fit: cover;
    object-position: center;
}

.avola-staff-card:hover img {
    transform: scale(1.035);
}

/* Informazioni */

.avola-staff-info {
    padding: 22px 2px;
}

.avola-staff-info span {
    color: #169F99;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .06em;
}

.avola-staff-info h3 {
    color: #041F26;
    font-size: 25px;
    font-weight: 500;
    margin: 10px 0 15px;
}

.avola-staff-info a {
    color: #55777A;
    font-size: 16px;
    text-decoration: none;
}

.avola-staff-info a:hover {
    color: #169F99;
}

/* Navigazione carousel */

.avola-staff-carousel .owl-nav {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 20px;
}

.avola-staff-carousel .owl-nav button.owl-prev,
.avola-staff-carousel .owl-nav button.owl-next {
    width: 46px;
    height: 46px;
    border: 1px solid #B9D1CF;
    border-radius: 50%;
    color: #041F26;
    background: transparent;
    font-size: 24px;
}

.avola-staff-carousel .owl-nav button:hover {
    background: #041F26;
    color: #FFFFFF;
}

/* Mobile */

@media (max-width: 767px) {
    .avola-staff {
        padding: 75px 0;
    }

    .avola-staff .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-staff-intro {
        font-size: 16px;
        margin-top: 20px;
    }

    .avola-staff-info h3 {
        font-size: 22px;
    }
}



/* =========================================
   SECTION 06 - DENTRO IL NOSTRO STUDIO
========================================= */

.avola-studio {
    background: #E5F1EF;
    padding: 120px 0;
}

.avola-studio .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-studio .avola-editorial-body h2 {
    color: #041F26;
}

.avola-studio .avola-editorial-body h2 em,
.avola-studio .avola-editorial-eyebrow {
    color: #169F99;
}

.avola-studio .avola-editorial-label {
    color: #55777A;
}

.avola-studio-intro {
    color: #55777A;
    font-size: 18px;
    line-height: 1.8;
    max-width: 760px;
}

/* Contenitori foto e video */

.avola-studio-media {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 12px;
    background: #0D343B;
	border: 7px solid #FFFFFF;
}

/* Carousel */

.avola-studio-carousel,
.avola-studio-carousel .owl-stage-outer,
.avola-studio-carousel .owl-stage,
.avola-studio-carousel .owl-item,
.avola-studio-slide {
    height: 100%;
}

.avola-studio-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Video */

.avola-studio-video iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Etichette */

.avola-studio-media-label {
    position: absolute;
    left: 20px;
    bottom: 20px;
    z-index: 10;
    display: inline-block;
    padding: 10px 15px;
    border-radius: 6px;
    background: rgba(4,31,38,.88);
    color: #73E4DF;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .1em;
    text-decoration: none;
    cursor: pointer;
    pointer-events: auto;
    transition: background .3s ease, color .3s ease;
}

.avola-studio-media-label:hover {
    background: #169F99;
    color: #FFFFFF;
    text-decoration: none;
}

.avola-studio-media-label i {
    margin-right: 7px;
}

/* Frecce del carousel */

.avola-studio-carousel .owl-nav {
    position: absolute;
    right: 20px;
    bottom: 20px;
    display: flex;
    gap: 8px;
    margin: 0;
}

.avola-studio-carousel .owl-nav button.owl-prev,
.avola-studio-carousel .owl-nav button.owl-next {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(4,31,38,.88);
    color: #FFFFFF;
    font-size: 21px;
}

.avola-studio-carousel .owl-nav button:hover {
    background: #169F99;
}


/* Smartphone */

@media (max-width: 767px) {

    .avola-studio {
        padding: 75px 0;
    }

    .avola-studio .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-studio-intro {
        font-size: 16px;
    }

    .avola-studio-media {
        aspect-ratio: 16 / 10;
    }

    .avola-studio-media-label {
        left: 12px;
        bottom: 12px;
        padding: 8px 10px;
        font-size: 10px;
    }

    .avola-studio-carousel .owl-nav {
        right: 12px;
        bottom: 12px;
    }

}


/* SECTION 07 - CONSIGLIO DEL GIORNO */

.avola-daily-tip {
    background: #06272D;
    padding: 85px 0;
}

.avola-daily-tip .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-daily-tip .avola-editorial-body h2 {
    color: #FFFFFF;
    font-family: Georgia, "Times New Roman", serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(42px, 4.5vw, 75px);
    line-height: 1.1;
}

.avola-daily-tip .avola-editorial-body h2 em {
    color: #73E4DF;
}

/* Consiglio */

.avola-daily-tip-content {
    position: relative;
    max-width: none;
    margin: 0;
    padding: 25px 0 0 35px;
    border-top: none;
    border-bottom: none;
    border-left: 1px solid rgba(115,228,223,.35);
}

.avola-daily-tip-quote {
    display: block;
    color: #73E4DF;
    font-family: Georgia, serif;
    font-size: 70px;
    line-height: .6;
    margin-bottom: 18px;
}

.avola-daily-tip-content h3 {
    color: #FFFFFF;
    font-family: Georgia, "Times New Roman", serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(26px, 2.5vw, 38px);
    line-height: 1.3;
    margin-bottom: 15px;
}

.avola-daily-tip-content p {
    color: #B4CDCE;
    font-size: 17px;
    line-height: 1.75;
    max-width: 850px;
    margin-bottom: 25px;
}

/* Footer all'interno della colonna destra */

.avola-daily-tip-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.12);
}

.avola-daily-tip-footer span {
    color: #80A6A9;
    font-size: 11px;
    letter-spacing: .12em;
	text-transform:uppercase;
}

.avola-daily-tip-footer a {
    color: #73E4DF;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-decoration: none;
}

.avola-daily-tip-footer a:hover {
    color: #FFFFFF;
}

/* Smartphone */

@media (max-width: 767px) {
    .avola-daily-tip {
        padding: 65px 0;
    }

    .avola-daily-tip .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-daily-tip .avola-editorial-body h2 {
        font-size: clamp(38px, 8vw, 52px);
    }

    .avola-daily-tip-content {
        padding: 25px 0 0;
        border-left: none;
        border-top: 1px solid rgba(115,228,223,.35);
    }

    .avola-daily-tip-content p {
        font-size: 16px;
    }

    .avola-daily-tip-footer {
        flex-wrap: wrap;
    }
}


/* =========================================
   SECTION 08 - DOMANDE FREQUENTI
========================================= */

.avola-faqs {
    background: #FFFFFF;
    padding: 120px 0;
}

.avola-faqs .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-faqs .avola-editorial-body h2 {
    color: #041F26;
}

.avola-faqs .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-faqs .avola-editorial-label {
    color: #55777A;
}

.avola-faqs .avola-editorial-eyebrow {
    color: #169F99;
}

.avola-faqs-intro {
    color: #55777A;
    font-size: 18px;
    line-height: 1.8;
    max-width: 560px;
    margin: 30px 0 40px;
}

.avola-faqs-footer {
    margin-top: 30px;
    text-align: right;
}

.avola-faqs-footer a {
    color: #169F99;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-decoration: none;
}

.avola-faqs-footer a:hover {
    color: #041F26;
}

/* Icone FAQ: sempre bianche e visibili */
.avola-faqs .faq-contact-item .icon-box i,
.avola-faqs .faq-contact-item:hover .icon-box i {
    color: #fff !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: relative;
    z-index: 5;
}

/* Evita che un livello animato copra l'icona */
.avola-faqs .faq-contact-item .icon-box {
    position: relative;
}

.avola-faqs .faq-contact-item .icon-box::before,
.avola-faqs .faq-contact-item .icon-box::after {
    z-index: 0;
}

/* Mobile */
@media (max-width: 767px) {

    .avola-faqs {
        padding: 75px 0;
    }

    .avola-faqs .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-faqs-intro {
        font-size: 16px;
        margin-bottom: 30px;
    }

    .avola-faqs-footer {
        text-align: left;
    }
}


/* =========================================
   SECTION 09 - RECENSIONI
========================================= */

.avola-reviews {
    background: #F4F8F7;
    padding: 85px 0;
}

.avola-reviews .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-reviews .avola-editorial-body h2 {
    color: #041F26;
}

.avola-reviews .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-reviews .avola-editorial-label {
    color: #55777A;
}

.avola-reviews .avola-editorial-eyebrow {
    color: #169F99;
}

.avola-reviews-intro {
    color: #55777A;
    font-size: 17px;
    line-height: 1.8;
    max-width: 480px;
    margin: 25px 0 0;
}

.avola-reviews-widget {
    width: 100%;
    min-width: 0;
}

/* TABLET E MOBILE */
@media (max-width: 767px) {

    .avola-reviews {
        padding: 65px 0;
    }

    .avola-reviews .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-reviews-intro {
        font-size: 16px;
        margin-top: 20px;
    }

}


/* =========================================
   STUDIO AVOLA IN NUMERI
========================================= */

.avola-numbers {
    background: #06272D;
    padding: 75px 0;
}

.avola-numbers .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-numbers .avola-editorial-body h2 {
    color: #FFFFFF;
    font-size: clamp(32px, 3vw, 48px);
    line-height: 1.15;
}

.avola-numbers .avola-editorial-body h2 em {
    color: #73E4DF;
}

.avola-numbers .avola-editorial-eyebrow {
    color: #73E4DF;
}

.avola-numbers-intro {
    color: #B4CDCE;
    font-size: 15px;
    line-height: 1.7;
    max-width: 360px;
    margin: 20px 0 0;
}

.avola-number-item {
    text-align: center;
    padding: 15px 5px;
}

.avola-number-value {
    color: #FFFFFF;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(32px, 3vw, 52px);
    font-weight: 400;
    line-height: 1.1;
    white-space: nowrap;
}

.avola-number-line {
    width: 38px;
    height: 2px;
    background: #169F99;
    margin: 18px auto;
}

.avola-number-label {
    color: #B4CDCE;
    font-size: 18px;
    line-height: 1.5;
    max-width: 150px;
    margin: 0 auto;
}

@media (max-width: 991px) {

    .avola-numbers {
        padding: 60px 0;
    }

    .avola-numbers .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-numbers-intro {
        max-width: 100%;
    }

}

@media (max-width: 575px) {

    .avola-number-value {
        font-size: 38px;
    }

    .avola-number-item {
        padding: 18px 5px;
    }

}


/* =========================================
   SECTION 10 - BLOG
========================================= */

.avola-blog {
    background: #FFFFFF;
    padding: 100px 0;
}

.avola-blog .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTESTAZIONE */

.avola-blog-heading {
    margin-bottom: 45px;
}

.avola-blog .avola-editorial-body h2 {
    color: #041F26;
}

.avola-blog .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-blog .avola-editorial-label {
    color: #55777A;
}

.avola-blog .avola-editorial-eyebrow {
    color: #169F99;
}

.avola-blog-intro {
    color: #55777A;
    font-size: 17px;
    line-height: 1.8;
    max-width: 480px;
    margin: 0 0 8px auto;
}

/* =========================================
   ARTICOLO PRINCIPALE
========================================= */

.avola-blog .avola-blog-featured {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 16px;
    overflow: hidden;
    background: #041F26;
}

/* Immagine a piena larghezza */

.avola-blog .avola-blog-featured .post-featured-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.avola-blog .avola-blog-featured .post-featured-image > a,
.avola-blog .avola-blog-featured .post-featured-image figure {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
}

.avola-blog .avola-blog-featured .post-featured-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
}

/* Gradiente per leggibilità */

.avola-blog .avola-blog-featured::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(
        to top,
        rgba(4, 31, 38, .96) 0%,
        rgba(4, 31, 38, .78) 35%,
        rgba(4, 31, 38, .15) 75%,
        transparent 100%
    );
}

/* Overlay testuale */

.avola-blog .avola-blog-featured .post-item-body {
    position: absolute;
    inset: auto 0 0 0;
    z-index: 2;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 30px;
    background: transparent;
    transform: none;
    opacity: 1;
    visibility: visible;
}

/* Titolo a tutta larghezza */

.avola-blog .avola-blog-featured .post-item-content,
.avola-blog .avola-blog-featured .post-item-content h2 {
    width: 100%;
    max-width: none;
}

.avola-blog .avola-blog-featured .post-item-content h2 {
    font-size: clamp(23px, 2vw, 34px);
    line-height: 1.25;
    margin: 0 0 18px;
}

.avola-blog .avola-blog-featured .post-item-content h2 a {
    display: block;
    width: 100%;
    color: #FFFFFF;
    text-decoration: none;
}

.avola-blog .avola-blog-featured .post-item-content h2 a:hover {
    color: #73E4DF;
}

/* Metadati sotto il titolo */

.avola-blog-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-bottom: 14px;
}

.avola-blog-meta span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    line-height: 1.5;
    color: #55777A;
}

.avola-blog-meta i {
    color: #169F99;
    font-size: 13px;
}

/* Metadati chiari nell'articolo principale */

.avola-blog .avola-blog-featured .avola-blog-meta span {
    color: #E5F1EF;
}

.avola-blog .avola-blog-featured .avola-blog-meta i {
    color: #73E4DF;
}

/* Descrizione */

.avola-blog .avola-blog-featured .post-item-content p {
    color: #E5F1EF;
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 20px;
}

/* Pulsante */

.avola-blog .avola-blog-featured .post-item-btn {
    position: relative;
    margin-top: 10px;
}

.avola-blog .avola-blog-featured .readmore-btn {
    color: #FFFFFF;
}

.avola-blog .avola-blog-featured .readmore-btn:hover {
    color: #73E4DF;
}

/* =========================================
   ARTICOLI SECONDARI
========================================= */

.avola-blog .avola-blog-secondary .post-featured-image figure {
    aspect-ratio: 1 / 1;
    overflow: hidden;
    margin: 0;
}

.avola-blog .avola-blog-secondary .post-featured-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.avola-blog .avola-blog-secondary .post-item-content h2 a:hover {
    color: #169F99;
}

.avola-blog .avola-blog-secondary .post-item-content p {
    color: #55777A;
}

/* =========================================
   LINK ARCHIVIO
========================================= */

.avola-blog-footer {
    text-align: right;
    margin-top: 35px;
}

.avola-blog-footer a {
    color: #169F99;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .1em;
    text-decoration: none;
}

.avola-blog-footer a:hover {
    color: #041F26;
}

.avola-blog-empty {
    color: #55777A;
    text-align: center;
    padding: 35px 0;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1199px) {

    .avola-blog .avola-blog-featured {
        min-height: 500px;
    }

}

@media (max-width: 991px) {

    .avola-blog {
        padding: 75px 0;
    }

    .avola-blog .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-blog-heading {
        margin-bottom: 35px;
    }

    .avola-blog-intro {
        margin: 25px 0 0;
        font-size: 16px;
    }

}

@media (max-width: 767px) {

    .avola-blog .avola-blog-featured {
        min-height: 470px;
    }

    .avola-blog .avola-blog-featured .post-item-body {
        padding: 22px;
    }

    .avola-blog .avola-blog-featured .post-item-content h2 {
        font-size: 24px;
    }

    .avola-blog .avola-blog-featured .post-item-content p {
        font-size: 14px;
    }

    .avola-blog-meta {
        gap: 6px 12px;
    }

    .avola-blog-meta span {
        font-size: 11px;
    }

    .avola-blog-footer {
        text-align: left;
    }

}

/* =========================================
   SECTION 11 - RICHIESTA APPUNTAMENTO
========================================= */

.avola-appointment {
    background: #06272D;
    padding: 100px 0;
}

.avola-appointment .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* =========================================
   COLONNA SINISTRA
========================================= */

.avola-appointment-heading {
    padding-right: 35px;
}

.avola-appointment .avola-editorial-label {
    color: #80A6A9;
}

.avola-appointment .avola-editorial-eyebrow {
    color: #73E4DF;
}

.avola-appointment .avola-editorial-body h2 {
    color: #FFFFFF;
    font-size: clamp(38px, 3.8vw, 64px);
    line-height: 1.12;
}

.avola-appointment .avola-editorial-body h2 em {
    color: #73E4DF;
}

.avola-appointment-intro {
    color: #B4CDCE;
    font-size: 17px;
    line-height: 1.8;
    max-width: 500px;
    margin: 30px 0;
}

/* CONTATTO TELEFONICO */

.avola-appointment-contact {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-top: 25px;
    border-top: 1px solid rgba(255,255,255,.15);
    max-width: 400px;
}

.avola-appointment-contact span {
    color: #A8C1C2;
    font-size: 20px;
}

.avola-appointment-contact a {
    color: #FFFFFF;
    font-size: 23px;
    font-weight: 600;
    text-decoration: none;
}

.avola-appointment-contact a i {
    color: #73E4DF;
    font-size: 17px;
    margin-right: 10px;
}

.avola-appointment-contact a:hover {
    color: #73E4DF;
}

/* =========================================
   COLONNA DESTRA - FORM
========================================= */

.avola-appointment-form {
    width: 100%;
    background: transparent;
    padding: 0;
    margin: 0;
}

.avola-appointment-form .form-group {
    margin-bottom: 12px;
}

/* ETICHETTE BIANCHE */

.avola-appointment .avola-appointment-form label {
    display: block;
    color: #FFFFFF !important;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 8px;
    opacity: 1;
}

/* CAMPI */

.avola-appointment .avola-appointment-form .form-control {
    display: block;
    width: 100%;
    height: 52px;
    padding: 12px 16px;
    color: #FFFFFF;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 8px;
    font-size: 14px;
    box-shadow: none;
    transition: border-color .2s ease,
                background .2s ease;
}

.avola-appointment .avola-appointment-form .form-control::placeholder {
    color: #B4CDCE;
    opacity: 1;
}

.avola-appointment .avola-appointment-form .form-control:focus {
    color: #FFFFFF;
    background: rgba(255,255,255,.10);
    border-color: #73E4DF;
    outline: none;
    box-shadow: none;
}


/* =========================================
   STUDIO AVOLA - SELECT MODULO PRENOTAZIONE
========================================= */

.avola-appointment .avola-appointment-form select.form-control {
    display: block;
    width: 100%;
    height: 52px;
    padding: 12px 42px 12px 16px;

    font-family: inherit;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;

    color: #FFFFFF;
    background-color: #193A40;

    border: 1px solid rgba(255,255,255,.22);
    border-radius: 8px;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2373E4DF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 16px;

    cursor: pointer;
}

.avola-appointment .avola-appointment-form select.form-control:focus {
    color: #FFFFFF;
    background-color: #21474D;
    border-color: #73E4DF;
    outline: none;
    box-shadow: none;
}


/* =========================================
   VOCI DEL MENU SELECT - STUDIO AVOLA
========================================= */

.avola-appointment .avola-appointment-form select.form-control option {
    color: #FFFFFF;
    background-color: #193A40;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important;

    padding: 12px 16px;
    line-height: 2;
}

/* Voce iniziale: seleziona il motivo */
.avola-appointment .avola-appointment-form select.form-control option:disabled {
    color: #B4CDCE;
}

/* Opzione selezionata */
.avola-appointment .avola-appointment-form select.form-control option:checked {
    color: #FFFFFF;
    background-color: #32636A;
}



/* TEXTAREA */

.avola-appointment .avola-appointment-form textarea.form-control {
    height: auto;
    min-height: 125px;
    resize: vertical;
}

/* NOTA INFORMATIVA */

.avola-appointment-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #B4CDCE;
    font-size: 18px;
    line-height: 1.7;
    margin: 8px 0 20px;
}

.avola-appointment-note i {
    color: #73E4DF;
    margin-top: 3px;
}

/* PULSANTE */

.avola-appointment .book-appointment-form-btn {
    margin-top: 0;
}

.avola-appointment .book-appointment-form-btn .btn-default {
    background: #169F99;
    color: #FFFFFF;
    border: none;
}

.avola-appointment .book-appointment-form-btn .btn-default:hover {
    background: #73E4DF;
    color: #041F26;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 991px) {

    .avola-appointment {
        padding: 75px 0;
    }

    .avola-appointment .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-appointment-heading {
        padding-right: 0;
        margin-bottom: 20px;
    }

    .avola-appointment-intro {
        max-width: 100%;
    }

}

@media (max-width: 767px) {

    .avola-appointment {
        padding: 65px 0;
    }

    .avola-appointment .avola-editorial-body h2 {
        font-size: clamp(36px, 8vw, 48px);
    }

    .avola-appointment-intro {
        font-size: 16px;
        margin: 25px 0;
    }

    .avola-appointment-form .form-group {
        margin-bottom: 6px;
    }

    .avola-appointment-contact a {
        font-size: 21px;
    }

}

/* =========================================
   SECTION 11 - PRIVACY E RECAPTCHA
========================================= */

.avola-appointment-privacy {
    margin: 5px 0 10px;
}

.avola-appointment-privacy > a {
    display: inline-block;
    color: #73E4DF;
    font-size: 16px;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 4px;
    margin-bottom: 15px;
}

.avola-appointment-privacy > a:hover {
    color: #FFFFFF;
}

.avola-appointment-privacy > a i {
    font-size: 11px;
    margin-left: 5px;
}

.avola-privacy-options {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 25px;
}

.avola-appointment .avola-privacy-options label {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #FFFFFF !important;
    font-size: 16px;
    font-weight: 400;
    margin: 0;
    cursor: pointer;
}

.avola-privacy-options input[type="radio"] {
    width: 17px;
    height: 17px;
    margin: 0;
    accent-color: #169F99;
    cursor: pointer;
}

.avola-appointment-recaptcha {
    margin: 10px 0;
    max-width: 100%;
}

.avola-appointment-recaptcha .g-recaptcha {
    max-width: 100%;
}

@media (max-width: 575px) {

    .avola-privacy-options {
        gap: 18px;
    }

}
/* CALENDARIO SEZIONE 11 */

#ui-datepicker-div {
    z-index: 99999 !important;
    font-family: inherit;
    font-size: 14px;
    border-radius: 10px;
    padding: 12px;
}

#ui-datepicker-div .ui-datepicker-header {
    background: #06272D;
    color: #FFFFFF;
    border: none;
}

#ui-datepicker-div .ui-datepicker-calendar .ui-state-active {
    background: #169F99;
    border-color: #169F99;
    color: #FFFFFF;
}

#ui-datepicker-div .ui-datepicker-calendar .ui-state-highlight {
    border-color: #169F99;
}


/* =========================================
   SECTION 12 - CITAZIONE EMOZIONALE
========================================= */

.avola-quote {
    position: relative;
    background: #041F26;
    padding: 95px 0 100px;
    overflow: hidden;
    text-align: center;
}

.avola-quote .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-quote-inner {
    position: relative;
    max-width: 1050px;
    margin: 0 auto;
}

/* VIRGOLETTE DECORATIVE */

.avola-quote-symbol {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 115px;
    line-height: .75;
    color: #73E4DF;
    opacity: .65;
    margin-bottom: 22px;
}

/* TESTO DELLA CITAZIONE */

.avola-quote-text {
    margin: 0;
    padding: 0;
    border: none;
}

.avola-quote-text p {
    font-family: Georgia, "Times New Roman", serif;
    font-style: italic;
    font-weight: 400;
    font-size: clamp(26px, 3vw, 44px);
    line-height: 1.45;
    letter-spacing: -.02em;
    color: #FFFFFF;
    margin: 0 auto;
    max-width: 1000px;
    overflow-wrap: break-word;
}

/* AUTORE */

.avola-quote-author {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    margin-top: 35px;
}

.avola-quote-author cite {
    font-family: inherit;
    font-style: normal;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: #73E4DF;
}

.avola-quote-line {
    display: block;
    width: 35px;
    height: 1px;
    background: rgba(115, 228, 223, .45);
}

/* RESPONSIVE */

@media (max-width: 767px) {

    .avola-quote {
        padding: 70px 0 75px;
    }

    .avola-quote .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-quote-symbol {
        font-size: 85px;
        margin-bottom: 15px;
    }

    .avola-quote-text p {
        font-size: clamp(24px, 6vw, 32px);
        line-height: 1.5;
    }

    .avola-quote-author {
        margin-top: 28px;
        gap: 12px;
    }

    .avola-quote-author cite {
        font-size: 11px;
        letter-spacing: .1em;
    }

    .avola-quote-line {
        width: 22px;
    }

}




/* =========================================
   CHI SIAMO - PAGE HEADER
========================================= */

.avola-about-page-header {
    padding: 190px 0 105px;
}

.avola-about-page-header .page-header-box h1 {
    color: #FFFFFF;
}

.avola-about-page-header .page-header-box h1 span {
    color: #73E4DF;
}


/* =========================================
   SECTION 01 - INTRODUZIONE
========================================= */

.avola-about-intro {
    background: #F4F8F7;
    padding: 110px 0;
    overflow: hidden;
}

.avola-about-intro .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

.avola-about-intro-content {
    padding-right: 45px;
}

.avola-about-intro .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin-bottom: 30px;
}

.avola-about-intro .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-about-intro-lead {
    font-size: 21px;
    line-height: 1.6;
    font-weight: 500;
    color: #041F26;
    margin-bottom: 25px;
}

.avola-about-intro-text {
    font-size: 16px;
    line-height: 1.85;
    color: #5A7073;
    margin-bottom: 18px;
}

.avola-about-intro-text:last-child {
    margin-bottom: 0;
}


/* IMMAGINE */

.avola-about-intro-image {
    position: relative;
    width: 100%;
}

.avola-about-intro-image img {
    display: block;
    width: 100%;
    height: 540px;
    object-fit: cover;
    border-radius: 8px;
}

.avola-about-intro-image-caption {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
    color: #668083;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
}

.avola-about-intro-caption-line {
    width: 32px;
    height: 1px;
    background: #169F99;
    flex-shrink: 0;
}

.avola-about-intro .avola-editorial-label {
    color: #587C80;
}

.avola-about-intro .avola-editorial-eyebrow {
    color: #087B78;
}
/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-about-page-header {
        padding: 150px 0 85px;
    }

    .avola-about-intro {
        padding: 80px 0;
    }

    .avola-about-intro .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-about-intro-content {
        padding-right: 0;
    }

    .avola-about-intro-image img {
        height: 450px;
    }

}

@media (max-width: 767px) {

    .avola-about-page-header {
        padding: 125px 0 70px;
    }

    .avola-about-intro {
        padding: 65px 0;
    }

    .avola-about-intro .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-about-intro-lead {
        font-size: 18px;
    }

    .avola-about-intro-text {
        font-size: 15px;
    }

    .avola-about-intro-image img {
        height: 350px;
    }

    .avola-about-intro-image-caption {
        font-size: 10px;
        letter-spacing: .08em;
    }

}


/* =========================================
   CHI SIAMO - SECTION 02
   LE NOSTRE ORIGINI
========================================= */

.avola-about-history {
    background: #06272D;
    padding: 110px 0;
    overflow: hidden;
}

.avola-about-history .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* FOTOGRAFIA */

.avola-about-history-media {
    position: relative;
    width: 100%;
}

.avola-about-history-image {
    width: 100%;
    overflow: hidden;
    border-radius: 8px;
}

.avola-about-history-image img {
    display: block;
    width: 100%;
    height: 560px;
    object-fit: cover;
    object-position: center;
    transition: transform .6s ease;
}

.avola-about-history-image:hover img {
    transform: scale(1.025);
}

.avola-about-history-caption {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
    color: #A8C1C2;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .12em;
}

.avola-about-history-caption-line {
    display: block;
    width: 32px;
    height: 1px;
    background: #73E4DF;
    flex-shrink: 0;
}

/* TESTO */

.avola-about-history-content {
    padding-left: 45px;
}

.avola-about-history .avola-editorial-label {
    color: #A8C1C2;
}

.avola-about-history .avola-editorial-eyebrow {
    color: #73E4DF;
}

.avola-about-history .avola-editorial-body h2 {
    color: #FFFFFF;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin-bottom: 30px;
}

.avola-about-history .avola-editorial-body h2 em {
    color: #73E4DF;
}

.avola-about-history-lead {
    color: #FFFFFF;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.65;
    margin-bottom: 25px;
}

.avola-about-history-text {
    color: #B4CDCE;
    font-size: 16px;
    line-height: 1.85;
    margin-bottom: 20px;
}

.avola-about-history-text:last-of-type {
    margin-bottom: 0;
}

/* FIRMA EDITORIALE */

.avola-about-history-signature {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 35px;
    padding-top: 28px;
    border-top: 1px solid rgba(255, 255, 255, .14);
}

.avola-about-history-signature-line {
    width: 3px;
    height: 42px;
    background: #169F99;
    flex-shrink: 0;
}

.avola-about-history-signature div {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.avola-about-history-signature strong {
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 600;
}

.avola-about-history-signature div span {
    color: #A8C1C2;
    font-size: 12px;
    line-height: 1.5;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-about-history {
        padding: 80px 0;
    }

    .avola-about-history .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-about-history-content {
        padding-left: 0;
    }

    .avola-about-history-image img {
        height: 470px;
    }

}

@media (max-width: 767px) {

    .avola-about-history {
        padding: 65px 0;
    }

    .avola-about-history-image img {
        height: 380px;
    }

    .avola-about-history .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-about-history-lead {
        font-size: 18px;
    }

    .avola-about-history-text {
        font-size: 15px;
    }

    .avola-about-history-signature {
        margin-top: 28px;
        padding-top: 24px;
    }

}


/* =========================================
   CHI SIAMO - SECTION 03
   LA NOSTRA FILOSOFIA
========================================= */

.avola-about-philosophy {
    background: #F4F8F7;
    padding: 105px 0;
    overflow: hidden;
}

.avola-about-philosophy .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* COLONNA INTRODUTTIVA */

.avola-about-philosophy-heading {
    padding-right: 35px;
}

.avola-about-philosophy .avola-editorial-label {
    color: #587C80;
}

.avola-about-philosophy .avola-editorial-eyebrow {
    color: #087B78;
}

.avola-about-philosophy .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin-bottom: 30px;
}

.avola-about-philosophy .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-about-philosophy-lead {
    color: #041F26;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.65;
    margin-bottom: 25px;
}

.avola-about-philosophy-description {
    color: #5A7073;
    font-size: 16px;
    line-height: 1.85;
    margin-bottom: 18px;
}

.avola-about-philosophy-description:last-child {
    margin-bottom: 0;
}

/* ELENCO DEI PRINCIPI */

.avola-about-philosophy-principles {
    border-top: 1px solid #D4E2E0;
}

.avola-philosophy-item {
    display: grid;
    grid-template-columns: 65px 1fr;
    gap: 25px;
    padding: 30px 0;
    border-bottom: 1px solid #D4E2E0;
}

.avola-philosophy-number {
    color: #169F99;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .08em;
    padding-top: 10px;
}

.avola-philosophy-content {
    position: relative;
    padding-right: 55px;
}

.avola-philosophy-icon {
    position: absolute;
    right: 0;
    top: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #E5F1EF;
    color: #087B78;
    font-size: 16px;
}

.avola-philosophy-content h3 {
    color: #041F26;
    font-size: 26px;
    font-weight: 500;
    line-height: 1.3;
    margin: 0 0 12px;
}

.avola-philosophy-content p {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
    max-width: 570px;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-about-philosophy {
        padding: 80px 0;
    }

    .avola-about-philosophy .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-about-philosophy-heading {
        padding-right: 0;
    }

}

@media (max-width: 767px) {

    .avola-about-philosophy {
        padding: 65px 0;
    }

    .avola-about-philosophy .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-about-philosophy-lead {
        font-size: 18px;
    }

    .avola-about-philosophy-description {
        font-size: 15px;
    }

    .avola-philosophy-item {
        grid-template-columns: 38px 1fr;
        gap: 12px;
        padding: 25px 0;
    }

    .avola-philosophy-content {
        padding-right: 48px;
    }

    .avola-philosophy-content h3 {
        font-size: 23px;
    }

    .avola-philosophy-content p {
        font-size: 14px;
    }

    .avola-philosophy-icon {
        width: 36px;
        height: 36px;
        font-size: 14px;
    }

}

/* =========================================
   CHI SIAMO - SECTION 04
   IL NOSTRO IMPEGNO
========================================= */

.avola-about-quality {
    background: #06272D;
    padding: 105px 0;
    overflow: hidden;
}

.avola-about-quality .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* COLONNA EDITORIALE */

.avola-about-quality-heading {
    padding-right: 35px;
}

.avola-about-quality .avola-editorial-label {
    color: #A8C1C2;
}

.avola-about-quality .avola-editorial-eyebrow {
    color: #73E4DF;
}

.avola-about-quality .avola-editorial-body h2 {
    color: #FFFFFF;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin-bottom: 30px;
}

.avola-about-quality .avola-editorial-body h2 em {
    color: #73E4DF;
}

.avola-about-quality-lead {
    color: #FFFFFF;
    font-size: 21px;
    font-weight: 500;
    line-height: 1.65;
    margin-bottom: 25px;
}

.avola-about-quality-description {
    color: #B4CDCE;
    font-size: 16px;
    line-height: 1.85;
    margin-bottom: 0;
}

/* GRIGLIA */

.avola-about-quality-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 38px;
}

/* SINGOLO ELEMENTO */

.avola-quality-item {
    min-width: 0;
    padding: 27px 0 30px;
    border-top: 1px solid rgba(255, 255, 255, .18);
}

.avola-quality-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
}

.avola-quality-number {
    color: #73E4DF;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .1em;
}

.avola-quality-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(115, 228, 223, .10);
    color: #73E4DF;
    font-size: 17px;
    transition: background .3s ease, color .3s ease;
}

.avola-quality-item:hover .avola-quality-icon {
    background: #73E4DF;
    color: #041F26;
}

.avola-quality-item h3 {
    color: #FFFFFF;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
    margin: 0 0 14px;
}

.avola-quality-item p {
    color: #B4CDCE;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-about-quality {
        padding: 80px 0;
    }

    .avola-about-quality .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-about-quality-heading {
        padding-right: 0;
    }

}

@media (max-width: 767px) {

    .avola-about-quality {
        padding: 65px 0;
    }

    .avola-about-quality .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-about-quality-lead {
        font-size: 18px;
    }

    .avola-about-quality-description {
        font-size: 15px;
    }

    .avola-about-quality-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .avola-quality-item {
        padding: 24px 0 28px;
    }

    .avola-quality-item h3 {
        font-size: 22px;
    }

    .avola-quality-item p {
        font-size: 14px;
    }

    .avola-quality-top {
        margin-bottom: 16px;
    }

}

/* =========================================
   CHI SIAMO - SECTION 06
   CHIUSURA EMOZIONALE
========================================= */

.avola-about-closing {
    position: relative;
    background: #E5F1EF;
    padding: 105px 0;
    overflow: hidden;
}

.avola-about-closing .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* COLONNA SINISTRA */

.avola-about-closing-heading {
    padding-right: 35px;
}

.avola-about-closing .avola-editorial-label {
    color: #587C80;
}

.avola-about-closing .avola-editorial-eyebrow {
    color: #087B78;
}

.avola-about-closing .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.17;
    margin: 0;
}

.avola-about-closing .avola-editorial-body h2 em {
    color: #087B78;
}

/* COLONNA DESTRA */

.avola-about-closing-content {
    padding-left: 35px;
    border-left: 1px solid #B8D3D0;
}

.avola-about-closing-lead {
    color: #041F26;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.65;
    margin-bottom: 20px;
}

.avola-about-closing-text {
    color: #506B6D;
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 30px;
}

/* PULSANTE */

.avola-about-closing-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    min-height: 54px;
    padding: 15px 25px;
    background: #06272D;
    color: #FFFFFF;
    border: 1px solid #06272D;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease;
}

.avola-about-closing-btn i {
    font-size: 13px;
    transition: transform .3s ease;
}

.avola-about-closing-btn:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFFFFF;
}

.avola-about-closing-btn:hover i {
    transform: translateX(4px);
}

.avola-about-closing-btn:focus-visible {
    outline: 3px solid #087B78;
    outline-offset: 4px;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-about-closing {
        padding: 80px 0;
    }

    .avola-about-closing .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-about-closing-heading {
        padding-right: 0;
    }

    .avola-about-closing-content {
        padding-left: 0;
        padding-top: 30px;
        border-left: none;
        border-top: 1px solid #B8D3D0;
    }

}

@media (max-width: 767px) {

    .avola-about-closing {
        padding: 65px 0;
    }

    .avola-about-closing .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-about-closing-lead {
        font-size: 18px;
    }

    .avola-about-closing-text {
        font-size: 15px;
    }

    .avola-about-closing-btn {
        width: 100%;
        gap: 14px;
    }

}

@media (prefers-reduced-motion: reduce) {

    .avola-about-closing-btn,
    .avola-about-closing-btn i {
        transition: none;
    }

}

/* =========================================
   CHI SIAMO - SECTION 07
   LE NOSTRE CONVENZIONI
========================================= */

.avola-about-conventions {
    background: #FFFFFF;
    padding: 90px 0;
    overflow: hidden;
}

.avola-about-conventions .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* COLONNA SINISTRA */

.avola-about-conventions-heading {
    padding-right: 35px;
}

.avola-about-conventions .avola-editorial-label {
    color: #587C80;
}

.avola-about-conventions .avola-editorial-eyebrow {
    color: #087B78;
}

.avola-about-conventions .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 60px);
    line-height: 1.15;
    margin-bottom: 25px;
}

.avola-about-conventions .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-about-conventions-description {
    color: #5A7073;
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 25px;
}

.avola-about-conventions-link {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    color: #087B78;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: color .3s ease;
}

.avola-about-conventions-link:hover {
    color: #041F26;
}

.avola-about-conventions-link i {
    font-size: 12px;
    transition: transform .3s ease;
}

.avola-about-conventions-link:hover i {
    transform: translateX(4px);
}

/* SLIDER */

.avola-conventions-carousel-wrap {
    position: relative;
    width: 100%;
    min-width: 0;
}

.avola-conventions-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}

.avola-conventions-carousel .owl-item {
    display: flex;
}

.avola-conventions-item {
    width: 100%;
    /*height: 175px;*/
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px;
    background: #F4F8F7;
    border: 1px solid #E0EAE8;
    border-radius: 8px;
    transition: border-color .3s ease, background .3s ease;
}

.avola-conventions-item:hover {
    background: #FFFFFF;
    border-color: #169F99;
}

.avola-conventions-item a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.avola-conventions-item img,
.avola-conventions-carousel .owl-item img {
    display: block;
    width: auto !important;
    max-width: 350px;
	width:100%;
    height: auto;
    object-fit: contain;
    margin: 0 auto;
}

/* FRECCE */

.avola-conventions-nav {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 22px;
}

.avola-conventions-prev,
.avola-conventions-next {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid #C9DAD7;
    border-radius: 50%;
    background: transparent;
    color: #041F26;
    cursor: pointer;
    transition: all .3s ease;
}

.avola-conventions-prev:hover,
.avola-conventions-next:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFFFFF;
}

.avola-conventions-prev:focus-visible,
.avola-conventions-next:focus-visible {
    outline: 3px solid #169F99;
    outline-offset: 3px;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-about-conventions {
        padding: 75px 0;
    }

    .avola-about-conventions .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-about-conventions-heading {
        padding-right: 0;
    }

}

@media (max-width: 767px) {

    .avola-about-conventions {
        padding: 60px 0;
    }

    .avola-about-conventions .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-about-conventions-description {
        font-size: 15px;
    }

    .avola-conventions-item {
        height: auto;
        padding: 18px;
    }

}
/* =========================================
   CONVENZIONI - CORREZIONE BORDI SLIDER
========================================= */

.avola-conventions-carousel .owl-stage-outer {
    padding: 2px;
    margin: -2px;
}

.avola-conventions-carousel .owl-stage {
    align-items: stretch;
}

.avola-conventions-carousel .owl-item {
    box-sizing: border-box;
}

.avola-conventions-item {
    box-sizing: border-box;
    border: 1px solid #D4E2E0;
}


/* =========================================
   PAGINA STAFF - SECTION 01
========================================= */

.avola-staff-page {
    background: #F4F8F7;
    padding: 100px 0 110px;
    overflow: hidden;
}

.avola-staff-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-staff-page-heading {
    margin-bottom: 55px;
}

.avola-staff-page .avola-editorial-label {
    color: #587C80;
}

.avola-staff-page .avola-editorial-eyebrow {
    color: #087B78;
}

.avola-staff-page .avola-editorial-dot {
    background: #087B78;
}

.avola-staff-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin-bottom: 0;
}

.avola-staff-page .avola-editorial-body h2 em {
    color: #169F99;
}

.avola-staff-page-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-staff-page-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* GRIGLIA RESPONSIVE */

.avola-staff-page .avola-staff-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 35px 25px;
}

/* SCHEDE: RIUTILIZZO STILI HOMEPAGE */

.avola-staff-page .avola-staff-card {
    min-width: 0;
    width: 100%;
    margin: 0;
}

/* RESPONSIVE */

/* TABLET */
@media (max-width: 991px) {
    .avola-staff-page {
        padding: 75px 0 85px;
    }

    .avola-staff-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }


    .avola-staff-page-heading {
        margin-bottom: 40px;
    }
}

@media (max-width: 575px) {
    .avola-staff-page {
        padding: 60px 0 70px;
    }

    .avola-staff-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-staff-page-intro {
        font-size: 16px;
    }

    .avola-staff-page-description {
        font-size: 14px;
    }
}

/* =========================================
   PAGINA STAFF - GRIGLIA COMPATTA
========================================= */

.avola-staff-page .avola-staff-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 25px !important;
    width: 100%;
}

/* Singole schede */
.avola-staff-page .avola-staff-grid .avola-staff-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    flex: none !important;
}

/* Contenitore fotografia */
.avola-staff-page .avola-staff-grid .avola-staff-photo {
    width: 100% !important;
    height: auto !important;
    overflow: hidden;
}

/* Fotografie */
.avola-staff-page .avola-staff-grid .avola-staff-photo img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
}

/* TABLET */
@media (max-width: 1199px) {
    .avola-staff-page .avola-staff-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 991px) {
    .avola-staff-page .avola-staff-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* SMARTPHONE */
@media (max-width: 575px) {
    .avola-staff-page .avola-staff-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================
   PROFILO STAFF - SECTION 01
========================================= */

.avola-profile-intro {
    background: #F4F8F7;
    padding: 105px 0;
}

.avola-profile-intro .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* FOTOGRAFIA */

.avola-profile-photo {
    width: 100%;
    max-width: 520px;
    overflow: hidden;
    border-radius: 8px;
    background: #E5F1EF;
}

.avola-profile-photo img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 600px;
    object-fit: contain;
}

/* TESTI */

.avola-profile-content {
    padding-left: 45px;
}

.avola-profile-intro .avola-editorial-label {
    color: #587C80;
}

.avola-profile-intro .avola-editorial-eyebrow {
    color: #087B78;
}

.avola-profile-intro .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(40px, 4vw, 68px);
    line-height: 1.12;
    margin-bottom: 30px;
}

.avola-profile-summary {
    color: #4F696B;
    font-size: 18px;
    line-height: 1.85;
    max-width: 90%;
}

.avola-profile-summary p {
    margin-bottom: 15px;
}

/* AZIONI */

.avola-profile-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 25px;
    margin-top: 35px;
}

.avola-profile-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding: 16px 25px;
    background: #06272D;
    border-radius: 6px;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: background .3s ease;
}

.avola-profile-btn:hover {
    background: #087B78;
    color: #FFFFFF;
}

.avola-profile-back {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #087B78;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}

.avola-profile-back:hover {
    color: #041F26;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-profile-intro {
        padding: 75px 0;
    }

    .avola-profile-intro .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-profile-content {
        padding-left: 0;
    }

    .avola-profile-photo {
        max-width: 500px;
    }

}

@media (max-width: 575px) {

    .avola-profile-intro {
        padding: 60px 0;
    }

    .avola-profile-intro .avola-editorial-body h2 {
        font-size: clamp(35px, 9vw, 48px);
    }

    .avola-profile-summary {
        font-size: 16px;
    }

    .avola-profile-actions {
        align-items: stretch;
        flex-direction: column;
        gap: 20px;
    }

    .avola-profile-btn {
        width: 100%;
    }

}

/* Specializzazione nella pagina profilo */

.avola-profile-intro .avola-profile-specialization,
.avola-profile-intro .avola-profile-specialization * {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78 !important;
    opacity: 1 !important;
}
/* =========================================
   PROFILO STAFF - CATEGORIE RESPONSIVE
========================================= */

.avola-profile-intro .avola-profile-specialization {
    display: block !important;
    width: 100%;
    max-width: 100%;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.6 !important;
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78 !important;
}

/* SMARTPHONE */
@media (max-width: 767px) {

    .avola-profile-intro .avola-profile-specialization {
        font-size: 14px !important;
        letter-spacing: 1px !important;
        line-height: 1.8 !important;
        text-align: left;
    }

}


/* =========================================
   GALLERIA FOTOGRAFICA
========================================= */

.avola-gallery-page {
    background: #F4F8F7;
    padding: 105px 0 115px;
    overflow: hidden;
}

.avola-gallery-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-gallery-heading {
    margin-bottom: 45px;
}

.avola-gallery-page .avola-editorial-label {
    color: #587C80;
}

.avola-gallery-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-gallery-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin: 0;
}

.avola-gallery-page .avola-editorial-body h2 em {
    color: #087B78;
}

.avola-gallery-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-gallery-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* FILTRI */

.avola-gallery-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 35px;
    padding-bottom: 25px;
    border-bottom: 1px solid #D4E2E0;
}

.avola-gallery-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 11px 19px;
    border: 1px solid #CEDFDC;
    border-radius: 5px;
    background: transparent;
    color: #087B78;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    cursor: pointer;
    transition: background .25s ease, color .25s ease, border-color .25s ease;
}

.avola-gallery-filter:hover,
.avola-gallery-filter.active {
    background: #06272D;
    border-color: #06272D;
    color: #FFFFFF;
}

.avola-gallery-filter:focus-visible {
    outline: 3px solid #087B78;
    outline-offset: 3px;
}

/* GRIGLIA */

.avola-gallery-page .avola-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.avola-gallery-page .avola-gallery-item {
    display: block;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.avola-gallery-page .avola-gallery-item.is-hidden {
    display: none !important;
}

/* CARD */

.avola-gallery-card {
    width: 100%;
    overflow: hidden;
    border-radius: 8px;
    background: #E5F1EF;
}

.avola-gallery-card a {
    display: block;
    color: inherit;
    text-decoration: none;
}

.avola-gallery-card figure {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
}

.avola-gallery-card img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s ease;
}

.avola-gallery-card:hover img {
    transform: scale(1.045);
}

/* OVERLAY */

.avola-gallery-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 15px;
    padding: 22px;
    background: linear-gradient(
        to top,
        rgba(4, 31, 38, .82) 0%,
        rgba(4, 31, 38, .15) 55%,
        transparent 100%
    );
    opacity: 0;
    transition: opacity .3s ease;
}

.avola-gallery-card:hover .avola-gallery-overlay,
.avola-gallery-card a:focus-visible .avola-gallery-overlay {
    opacity: 1;
}

.avola-gallery-title {
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
}

.avola-gallery-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.65);
    border-radius: 50%;
    color: #FFFFFF;
}

/* MESSAGGIO VUOTO */

.avola-gallery-empty {
    padding: 35px 20px;
    text-align: center;
    color: #587C80;
    font-size: 15px;
}

.avola-gallery-empty[hidden] {
    display: none !important;
}

/* RESPONSIVE */

@media (max-width: 1199px) {
    .avola-gallery-page .avola-gallery-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .avola-gallery-page {
        padding: 75px 0 85px;
    }

    .avola-gallery-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-gallery-page .avola-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .avola-gallery-overlay {
        opacity: 1;
    }
}

@media (max-width: 575px) {
    .avola-gallery-page {
        padding: 60px 0 70px;
    }

    .avola-gallery-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-gallery-intro {
        font-size: 16px;
    }

    .avola-gallery-page .avola-gallery-grid {
        grid-template-columns: 1fr;
    }

    .avola-gallery-filter {
        font-size: 12px;
        padding: 10px 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .avola-gallery-card img,
    .avola-gallery-overlay,
    .avola-gallery-filter {
        transition: none;
    }
}


/* =========================================
   AVOLA - VIDEO GALLERY
========================================= */

.avola-video-page {
    background: #F4F8F7;
    padding: 105px 0 115px;
    overflow: hidden;
}

.avola-video-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-video-heading {
    margin-bottom: 45px;
}

.avola-video-page .avola-editorial-label {
    color: #587C80;
}

.avola-video-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-video-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin: 0;
}

.avola-video-page .avola-editorial-body h2 em {
    color: #087B78;
}

.avola-video-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-video-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* FILTRI */

.avola-video-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 35px;
    padding-bottom: 25px;
    border-bottom: 1px solid #D4E2E0;
}

.avola-video-filter {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 11px 19px;
    border: 1px solid #CEDFDC;
    border-radius: 5px;
    background: transparent;
    color: #087B78;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
    cursor: pointer;
    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease;
}

.avola-video-filter:hover,
.avola-video-filter.active {
    background: #06272D;
    border-color: #06272D;
    color: #FFFFFF;
}

.avola-video-filter:focus-visible {
    outline: 3px solid #087B78;
    outline-offset: 3px;
}

/* GRIGLIA */

.avola-video-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
    align-items: start;
}

.avola-video-item {
    min-width: 0;
}

.avola-video-item.is-hidden {
    display: none !important;
}

/* CARD */

.avola-video-card {
    background: #FFFFFF;
    border: 1px solid #E1EBE9;
    border-radius: 8px;
    overflow: hidden;
    height: 100%;
    transition:
        border-color .3s ease,
        box-shadow .3s ease;
}

.avola-video-card:hover {
    border-color: #BDD8D4;
    box-shadow: 0 15px 35px rgba(4, 31, 38, .07);
}

/* PLAYER */

.avola-video-player {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #041F26;
}

.avola-video-player iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* CONTENUTO */

.avola-video-info {
    padding: 28px 30px 32px;
}

.avola-video-type {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 13px;
    color: #087B78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1.5;
}

.avola-video-dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: #087B78;
}

.avola-video-info h3 {
    margin: 0;
    color: #041F26;
    font-size: clamp(21px, 2vw, 27px);
    font-weight: 600;
    line-height: 1.35;
}

.avola-video-text {
    margin-top: 14px;
    color: #5A7073;
    font-size: 15px;
    line-height: 1.75;
    overflow-wrap: anywhere;
}

.avola-video-text p {
    margin-bottom: 10px;
}

.avola-video-text p:last-child {
    margin-bottom: 0;
}

/* NESSUN RISULTATO */

.avola-video-empty {
    padding: 35px 20px;
    text-align: center;
    color: #587C80;
    font-size: 15px;
}

.avola-video-empty[hidden] {
    display: none !important;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-video-page {
        padding: 75px 0 85px;
    }

    .avola-video-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-video-grid {
        gap: 20px;
    }

    .avola-video-info {
        padding: 23px;
    }

}

@media (max-width: 767px) {

    .avola-video-page {
        padding: 60px 0 70px;
    }

    .avola-video-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-video-intro {
        font-size: 16px;
    }

    .avola-video-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .avola-video-info {
        padding: 22px;
    }

    .avola-video-filter {
        font-size: 12px;
        padding: 10px 14px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .avola-video-filter,
    .avola-video-card {
        transition: none;
    }
}


/* =========================================
   AVOLA - DICONO DI NOI
========================================= */

.avola-reviews-page {
    background: #F4F8F7;
    padding: 105px 0 115px;
    overflow: hidden;
}

.avola-reviews-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-reviews-heading {
    margin-bottom: 45px;
}

.avola-reviews-page .avola-editorial-label {
    color: #587C80;
}

.avola-reviews-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-reviews-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin: 0;
}

.avola-reviews-page .avola-editorial-body h2 em {
    color: #087B78;
}

.avola-reviews-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-reviews-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* DIVISORE */

.avola-reviews-divider {
    width: 100%;
    height: 1px;
    background: #D4E2E0;
    margin-bottom: 45px;
}

/* WIDGET ELFSIGHT */

.avola-reviews-widget {
    width: 100%;
    min-width: 0;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-reviews-page {
        padding: 75px 0 85px;
    }

    .avola-reviews-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-reviews-heading {
        margin-bottom: 30px;
    }

    .avola-reviews-divider {
        margin-bottom: 30px;
    }

}

@media (max-width: 767px) {

    .avola-reviews-page {
        padding: 60px 0 70px;
    }

    .avola-reviews-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-reviews-intro {
        font-size: 16px;
    }

}

/* =========================================
   AVOLA - PAGINA CONVENZIONI
========================================= */

.avola-conventions-page {
    background: #F4F8F7;
    padding: 105px 0 115px;
}

.avola-conventions-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-conventions-heading {
    margin-bottom: 55px;
}

.avola-conventions-page .avola-editorial-label {
    color: #587C80;
}

.avola-conventions-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-conventions-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin: 0;
}

.avola-conventions-page .avola-editorial-body h2 em {
    color: #087B78;
}

.avola-conventions-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-conventions-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* GRIGLIA */

.avola-conventions-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.avola-conventions-item {
    min-width: 0;
}

/* CARD */

.avola-conventions-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 235px;
    height: 100%;
    padding: 30px 22px;
    background: #FFFFFF;
    border: 1px solid #DFEAE8;
    border-radius: 8px;
    text-align: center;
    transition:
        border-color .3s ease,
        box-shadow .3s ease,
        transform .3s ease;
}

.avola-conventions-card:hover {
    border-color: #A9CFCA;
    box-shadow: 0 12px 30px rgba(4, 31, 38, .06);
    transform: translateY(-3px);
}

/* LOGHI */

.avola-conventions-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 125px;
}

.avola-conventions-logo img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 110px;
    object-fit: contain;
}

/* NOME CONVENZIONE */

.avola-conventions-name {
    margin-top: 20px;
    color: #041F26;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

/* RESPONSIVE */

@media (max-width: 1199px) {

    .avola-conventions-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

}

@media (max-width: 991px) {

    .avola-conventions-page {
        padding: 75px 0 85px;
    }

    .avola-conventions-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-conventions-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .avola-conventions-card {
        min-height: 205px;
        padding: 24px 18px;
    }

}

@media (max-width: 575px) {

    .avola-conventions-page {
        padding: 60px 0 70px;
    }

    .avola-conventions-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-conventions-intro {
        font-size: 16px;
    }

    .avola-conventions-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .avola-conventions-card {
        min-height: 185px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .avola-conventions-card {
        transition: none;
    }
}

/* =========================================
   AVOLA - LINK CONVENZIONI
========================================= */

/* Link sul logo */
.avola-conventions-logo a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    cursor: pointer;
}

/* Link sul nome */
.avola-conventions-name a {
    color: #041F26;
    text-decoration: none;
    transition: color .25s ease;
}

.avola-conventions-name a:hover {
    color: #087B78;
}

/* Indicazione visiva del collegamento */
.avola-conventions-logo a img {
    transition: transform .3s ease;
}

.avola-conventions-logo a:hover img {
    transform: scale(1.05);
}

.avola-conventions-card a:focus-visible {
    outline: 2px solid #087B78;
    outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    .avola-conventions-logo a img {
        transition: none;
    }
}


/* =========================================
   AVOLA - PAGINA CONSIGLI UTILI
========================================= */

.avola-advice-page {
    background: #F4F8F7;
    padding: 105px 0 115px;
}

.avola-advice-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-advice-heading {
    margin-bottom: 70px;
}

.avola-advice-page .avola-editorial-label {
    color: #587C80;
}

.avola-advice-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-advice-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin: 0;
}

.avola-advice-page .avola-editorial-body h2 em {
    color: #087B78;
}

.avola-advice-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-advice-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* CATEGORIE */

.avola-advice-category {
    margin-bottom: 55px;
}

.avola-advice-category-header {
    margin-bottom: 32px;
}

.avola-advice-category-label {
    color: #087B78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.avola-advice-category-header h3 {
    margin: 0;
    color: #041F26;
    font-size: clamp(27px, 2.6vw, 39px);
    font-weight: 600;
    line-height: 1.25;
}

/* LISTA CONSIGLI */

.avola-advice-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.avola-advice-item {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 24px 28px;
    background: #FFFFFF;
    border: 1px solid #DFEAE8;
    border-radius: 7px;
}

.avola-advice-marker {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #E5F1EF;
    color: #087B78;
    font-size: 13px;
}

.avola-advice-content {
    flex: 1;
    min-width: 0;
}

.avola-advice-text {
    color: #041F26;
    font-size: 17px;
    line-height: 1.8;
    overflow-wrap: anywhere;
}

.avola-advice-author {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 16px;
    color: #087B78;
    font-size: 13px;
    font-weight: 600;
}

.avola-advice-author i {
    font-size: 13px;
}

/* SEPARATORE FINALE */

.avola-advice-divider {
    display: block;
    width: 100%;
    height: 1px;
    border: 0;
    background: #D4E2E0;
    opacity: 1;
    margin: 45px 0 0;
}

/* NESSUN CONTENUTO */

.avola-advice-empty {
    padding: 40px 25px;
    background: #FFFFFF;
    border: 1px solid #DFEAE8;
    border-radius: 7px;
    color: #5A7073;
    font-size: 16px;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-advice-page {
        padding: 75px 0 85px;
    }

    .avola-advice-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-advice-heading {
        margin-bottom: 50px;
    }

}

@media (max-width: 767px) {

    .avola-advice-page {
        padding: 60px 0 70px;
    }

    .avola-advice-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-advice-intro {
        font-size: 16px;
    }

    .avola-advice-category {
        margin-bottom: 38px;
    }

    .avola-advice-category-header h3 {
        font-size: 28px;
    }

    .avola-advice-item {
        gap: 13px;
        padding: 20px 18px;
    }

    .avola-advice-marker {
        flex-basis: 28px;
        width: 28px;
        height: 28px;
        font-size: 11px;
    }

    .avola-advice-text {
        font-size: 15px;
        line-height: 1.75;
    }

    .avola-advice-divider {
        margin-top: 35px;
    }

}


/* =========================================
   AVOLA - PAGINA DOMANDE FREQUENTI
========================================= */

.avola-faq-page {
    background: #F4F8F7;
    padding: 105px 0 115px;
}

.avola-faq-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-faq-heading {
    margin-bottom: 65px;
}

.avola-faq-page .avola-editorial-label {
    color: #587C80;
}

.avola-faq-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-faq-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin: 0;
}

.avola-faq-page .avola-editorial-body h2 em {
    color: #087B78;
}

.avola-faq-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-faq-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* INDICE CATEGORIE */

.avola-faq-index {
    margin-bottom: 75px;
    padding: 30px;
    background: #FFFFFF;
    border: 1px solid #DFEAE8;
    border-radius: 8px;
}

.avola-faq-index-title {
    color: #087B78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
    margin-bottom: 20px;
}

.avola-faq-index-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.avola-faq-index-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    min-height: 52px;
    padding: 11px 16px;
    border: 1px solid #DFEAE8;
    border-radius: 5px;
    background: #F4F8F7;
    color: #041F26;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease;
}

.avola-faq-index-link img {
    display: block;
    width: 25px;
    height: 25px;
    object-fit: contain;
}

.avola-faq-index-link i {
    color: #087B78;
    font-size: 11px;
}

.avola-faq-index-link:hover {
    background: #E5F1EF;
    border-color: #A9CFCA;
    color: #087B78;
}

/* CATEGORIE */

.avola-faq-category {
    margin-bottom: 55px;
    scroll-margin-top: 120px;
}

.avola-faq-category-header {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-bottom: 30px;
}

.avola-faq-category-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 70px;
    width: 70px;
    height: 70px;
    border-radius: 7px;
    background: #E5F1EF;
}

.avola-faq-category-icon img {
    display: block;
    width: auto;
    height: auto;
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
}

.avola-faq-category-label {
    color: #087B78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
    margin-bottom: 9px;
}

.avola-faq-category-heading h3 {
    margin: 0;
    color: #041F26;
    font-size: clamp(27px, 2.6vw, 39px);
    font-weight: 600;
    line-height: 1.25;
}

/* ACCORDION */

.avola-faq-accordion {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.avola-faq-accordion .accordion-item {
    border: 1px solid #DFEAE8;
    border-radius: 7px !important;
    background: #FFFFFF;
    overflow: hidden;
}

.avola-faq-accordion .accordion-header {
    margin: 0;
}

.avola-faq-accordion .accordion-button {
    display: flex;
    align-items: center;
    gap: 18px;
    width: 100%;
    min-height: 75px;
    padding: 22px 26px;
    background: #FFFFFF;
    color: #041F26;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    box-shadow: none;
}

.avola-faq-accordion .accordion-button:not(.collapsed) {
    background: #E5F1EF;
    color: #041F26;
    box-shadow: none;
}

.avola-faq-accordion .accordion-button:focus {
    box-shadow: none;
    border-color: transparent;
}

.avola-faq-accordion .accordion-button:focus-visible {
    outline: 2px solid #087B78;
    outline-offset: -3px;
}

.avola-faq-question-number {
    flex: 0 0 32px;
    color: #087B78;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
}

.avola-faq-question-text {
    flex: 1;
    min-width: 0;
}

/* ICONA APERTURA */

.avola-faq-accordion .accordion-button::after {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    background-size: 18px;
}

/* RISPOSTA */

.avola-faq-accordion .accordion-body {
    padding: 25px 30px 30px 76px;
    color: #4C6467;
    font-size: 15px;
    line-height: 1.85;
    overflow-wrap: anywhere;
}

.avola-faq-answer p {
    margin-bottom: 15px;
}

.avola-faq-answer p:last-child {
    margin-bottom: 0;
}

.avola-faq-answer ul,
.avola-faq-answer ol {
    margin: 12px 0 18px;
    padding-left: 22px;
}

.avola-faq-answer li {
    margin-bottom: 8px;
}

.avola-faq-answer strong {
    color: #041F26;
}

.avola-faq-answer a {
    color: #087B78;
    text-decoration: underline;
}

/* DIVISORE */

.avola-faq-divider {
    display: block;
    width: 100%;
    height: 1px;
    border: 0;
    background: #D4E2E0;
    opacity: 1;
    margin: 50px 0 0;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-faq-page {
        padding: 75px 0 85px;
    }

    .avola-faq-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-faq-heading {
        margin-bottom: 45px;
    }

    .avola-faq-index {
        margin-bottom: 55px;
    }

}

@media (max-width: 767px) {

    .avola-faq-page {
        padding: 60px 0 70px;
    }

    .avola-faq-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-faq-intro {
        font-size: 16px;
    }

    .avola-faq-index {
        padding: 20px;
        margin-bottom: 45px;
    }

    .avola-faq-index-list {
        gap: 8px;
    }

    .avola-faq-index-link {
        width: 100%;
        justify-content: flex-start;
    }

    .avola-faq-index-link i {
        margin-left: auto;
    }

    .avola-faq-category {
        margin-bottom: 38px;
        scroll-margin-top: 85px;
    }

    .avola-faq-category-header {
        gap: 15px;
    }

    .avola-faq-category-icon {
        flex-basis: 54px;
        width: 54px;
        height: 54px;
    }

    .avola-faq-category-icon img {
        max-width: 35px;
        max-height: 35px;
    }

    .avola-faq-category-heading h3 {
        font-size: 26px;
    }

    .avola-faq-accordion .accordion-button {
        gap: 12px;
        padding: 18px 16px;
        font-size: 14px;
    }

    .avola-faq-question-number {
        flex-basis: 24px;
        font-size: 11px;
    }

    .avola-faq-accordion .accordion-body {
        padding: 20px 18px;
        font-size: 14px;
    }

    .avola-faq-divider {
        margin-top: 35px;
    }

}

/* =========================================
   AVOLA FAQ - PULSANTI CATEGORIE VERDI
========================================= */

.avola-faq-index-link {
    background: #087B78;
    border: 1px solid #087B78;
    color: #FFFFFF !important;
}

.avola-faq-index-link span {
    color: #FFFFFF !important;
}

.avola-faq-index-link i {
    color: #FFFFFF !important;
}

/* Effetto al passaggio del mouse */
.avola-faq-index-link:hover {
    background: #041F26;
    border-color: #041F26;
    color: #FFFFFF !important;
}

.avola-faq-index-link:hover span,
.avola-faq-index-link:hover i {
    color: #FFFFFF !important;
}

/* Accessibilità da tastiera */
.avola-faq-index-link:focus-visible {
    outline: 2px solid #041F26;
    outline-offset: 3px;
}
/* =========================================
   AVOLA FAQ - RIQUADRO ICONA CATEGORIA
========================================= */

.avola-faq-category-icon {
    background: #087B78;
    border-radius: 7px;
}

/* Icone bianche, se compatibili con il filtro */
.avola-faq-category-icon img {
    filter: brightness(0) invert(1);
}




/* =========================================
   AVOLA - PAGINA TRATTAMENTI ODONTOIATRICI
========================================= */

.avola-treatments-page {
    background: #F4F8F7;
    padding: 105px 0 115px;
}

.avola-treatments-page .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTRODUZIONE */

.avola-treatments-heading {
    margin-bottom: 65px;
}

.avola-treatments-page .avola-editorial-label {
    color: #587C80;
}

.avola-treatments-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-treatments-page .avola-editorial-body h2 {
    color: #041F26;
    font-size: clamp(38px, 3.7vw, 62px);
    line-height: 1.15;
    margin: 0;
}

.avola-treatments-page .avola-editorial-body h2 em {
    color: #087B78;
}

/* TESTI INTRODUTTIVI */

.avola-treatments-intro {
    color: #041F26;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.75;
    margin-bottom: 15px;
}

.avola-treatments-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* GRIGLIA */

.avola-treatments-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

/* SCHEDA */

.avola-treatment-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
    padding: 35px 30px 28px;
    background: #FFFFFF;
    border: 1px solid #DFEAE8;
    border-radius: 8px;
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease;
}

.avola-treatment-card:hover {
    transform: translateY(-4px);
    border-color: #A9CFCA;
    box-shadow: 0 15px 35px rgba(4, 31, 38, .07);
}

/* ICONA */

.avola-treatment-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    flex: 0 0 72px;
    margin-bottom: 28px;
    background: #087B78;
    border-radius: 8px;
}

.avola-treatment-icon img {
    display: block;
    width: auto;
    height: auto;
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

/* CONTENUTO */

.avola-treatment-content {
    flex: 1;
    min-width: 0;
}

.avola-treatment-content h3 {
    margin: 0 0 16px;
    color: #041F26;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3;
}

.avola-treatment-content h3 a {
    color: inherit;
    text-decoration: none;
    transition: color .25s ease;
}

.avola-treatment-content h3 a:hover {
    color: #087B78;
}

.avola-treatment-description {
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
    overflow-wrap: anywhere;
}

.avola-treatment-description p {
    margin-bottom: 12px;
}

.avola-treatment-description p:last-child {
    margin-bottom: 0;
}

/* LINK FINALE */

.avola-treatment-footer {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #E5EEEC;
}

.avola-treatment-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #087B78;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: color .25s ease;
}

.avola-treatment-link i {
    font-size: 12px;
    transition: transform .25s ease;
}

.avola-treatment-link:hover {
    color: #041F26;
}

.avola-treatment-link:hover i {
    transform: translateX(4px);
}

/* RESPONSIVE */

@media (max-width: 1199px) {

    .avola-treatments-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

}

@media (max-width: 991px) {

    .avola-treatments-page {
        padding: 75px 0 85px;
    }

    .avola-treatments-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-treatments-heading {
        margin-bottom: 45px;
    }

}

@media (max-width: 767px) {

    .avola-treatments-page {
        padding: 60px 0 70px;
    }

    .avola-treatments-page .avola-editorial-body h2 {
        font-size: clamp(35px, 8vw, 46px);
    }

    .avola-treatments-intro {
        font-size: 16px;
    }

    .avola-treatments-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .avola-treatment-card {
        padding: 28px 24px 24px;
    }

    .avola-treatment-icon {
        width: 60px;
        height: 60px;
        flex-basis: 60px;
        margin-bottom: 22px;
    }

    .avola-treatment-icon img {
        max-width: 39px;
        max-height: 39px;
    }

    .avola-treatment-content h3 {
        font-size: 22px;
    }

    .avola-treatment-description {
        font-size: 14px;
    }

    .avola-treatment-footer {
        margin-top: 24px;
    }

}

@media (prefers-reduced-motion: reduce) {

    .avola-treatment-card,
    .avola-treatment-content h3 a,
    .avola-treatment-link,
    .avola-treatment-link i {
        transition: none;
    }

}
/* =========================================
   AVOLA - TRATTAMENTI CON IMMAGINI 3D
========================================= */

/* Due schede per riga */
.avola-treatments-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

/* Scheda */
.avola-treatment-card {
    padding: 30px;
    overflow: hidden;
}

/* Layout interno */
.avola-treatment-layout {
    display: grid;
    grid-template-columns: 42% minmax(0, 1fr);
    gap: 25px;
    width: 100%;
    height: 100%;
}

/* Immagine tridimensionale */
.avola-treatment-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 220px;
}

.avola-treatment-visual a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.avola-treatment-visual img {
    display: block;
    width: 100%;
    max-width: 260px;
    max-height: 270px;
    height: auto;
    object-fit: contain;
    transition: transform .35s ease;
}

.avola-treatment-card:hover .avola-treatment-visual img {
    transform: scale(1.045);
}

/* Colonna di destra */
.avola-treatment-details {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
}

/* Icona piccola */
.avola-treatment-details .avola-treatment-icon {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    margin-bottom: 22px;
    background: #087B78;
}

.avola-treatment-details .avola-treatment-icon img {
    max-width: 35px;
    max-height: 35px;
    filter: brightness(0) invert(1);
}

/* Testi */
.avola-treatment-details .avola-treatment-content {
    flex: 1;
}

.avola-treatment-details .avola-treatment-content h3 {
    font-size: 23px;
    line-height: 1.3;
    margin-bottom: 14px;
}

/* Link sempre in basso */
.avola-treatment-details .avola-treatment-footer {
    margin-top: 25px;
}

/* TABLET */
@media (max-width: 1199px) {

    .avola-treatment-layout {
        grid-template-columns: 38% minmax(0, 1fr);
        gap: 18px;
    }

    .avola-treatment-card {
        padding: 24px;
    }

    .avola-treatment-visual img {
        max-height: 230px;
    }

}

/* TABLET PICCOLI */
@media (max-width: 991px) {

    .avola-treatments-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .avola-treatment-layout {
        grid-template-columns: 38% minmax(0, 1fr);
        gap: 25px;
    }

}

/* SMARTPHONE */
@media (max-width: 575px) {

    .avola-treatment-card {
        padding: 22px 18px;
    }

    .avola-treatment-layout {
        grid-template-columns: 34% minmax(0, 1fr);
        gap: 15px;
    }

    .avola-treatment-visual {
        min-height: 160px;
    }

    .avola-treatment-visual img {
        max-height: 190px;
    }

    .avola-treatment-details .avola-treatment-icon {
        width: 45px;
        height: 45px;
        flex-basis: 45px;
        margin-bottom: 16px;
    }

    .avola-treatment-details .avola-treatment-icon img {
        max-width: 28px;
        max-height: 28px;
    }

    .avola-treatment-details .avola-treatment-content h3 {
        font-size: 19px;
    }

    .avola-treatment-details .avola-treatment-footer {
        margin-top: 18px;
        padding-top: 15px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .avola-treatment-visual img {
        transition: none;
    }
}







/* =====================================================
   STUDIO AVOLA
   HERO TRATTAMENTI - GLB + GLOBO WIREFRAME ANIMATO
===================================================== */

.avola-implant-hero {
    position: relative;
    width: 100%;
    padding: 65px 0 75px;
    overflow: hidden;
    background: #F4F8F7;
}

.avola-implant-hero .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* GRIGLIA */

.avola-implant-hero-grid {
    display: grid;
    grid-template-columns: 46% minmax(0, 1fr);
    align-items: center;
    gap: 4%;
    min-height: 550px;
}

/* COLONNA TESTI */

.avola-implant-hero-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

.avola-implant-hero .avola-editorial-label {
    color: #587C80;
}

.avola-implant-hero .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
}

.avola-implant-hero h1 {
    margin: 22px 0 25px;
    color: #041F26;
    font-size: clamp(43px, 4.6vw, 74px);
    line-height: 1.12;
    font-weight: 600;
    overflow-wrap: break-word;
}

.avola-implant-lead {
    max-width: 590px;
    color: #526D70;
    font-size: 17px;
    line-height: 1.85;
}

.avola-implant-lead p:last-child {
    margin-bottom: 0;
}

.avola-implant-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 35px;
}

.avola-implant-primary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    padding: 16px 25px;
    background: #087B78;
    border: 1px solid #087B78;
    border-radius: 5px;
    color: #FFF !important;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: background .25s ease,
                border-color .25s ease;
}

.avola-implant-primary-btn:hover {
    background: #041F26;
    border-color: #041F26;
    color: #FFF !important;
}

/* COLONNA VISUAL */

.avola-implant-hero-visual {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
    width: 100%;
}

/* SCENA */

.avola-implant-scene {
    position: relative;
    isolation: isolate;
    width: 100%;
    height: 540px;
    overflow: hidden;
    background: transparent;
}

/* GLOBO */

.avola-implant-globe {
    position: absolute;
    z-index: 1;
    width: min(95%, 505px);
    aspect-ratio: 1;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    opacity: .68;
    pointer-events: none;
    will-change: transform;
}

.avola-implant-globe svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.avola-implant-globe line,
.avola-implant-globe ellipse,
.avola-implant-globe circle,
.avola-implant-globe path {
    vector-effect: non-scaling-stroke;
}

/* MODELLO 3D */

.avola-implant-scene model-viewer {
    position: absolute;
    z-index: 3;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: transparent;
    --poster-color: transparent;
    --progress-bar-color: #087B78;
}

/* FALLBACK IMMAGINE */

.avola-implant-static-fallback {
    position: relative;
    z-index: 3;
    display: block;
    width: 100%;
    height: 100%;
    max-height: 490px;
    object-fit: contain;
}

/* CONTROLLI */

.avola-implant-model-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 2px;
}

.avola-implant-interaction-hint {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-right: 12px;
    color: #587C80;
    font-size: 12px;
}

.avola-implant-interaction-hint i {
    color: #087B78;
}

.avola-implant-model-controls button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 10px 14px;
    border: 1px solid #C8DCDA;
    border-radius: 5px;
    background: rgba(255,255,255,.85);
    color: #041F26;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background .25s ease,
                border-color .25s ease,
                color .25s ease;
}

.avola-implant-model-controls button:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFF;
}

.avola-implant-model-controls button:focus-visible,
.avola-implant-primary-btn:focus-visible {
    outline: 2px solid #087B78;
    outline-offset: 3px;
}

/* TABLET */

@media (max-width: 1199px) {

    .avola-implant-hero-grid {
        grid-template-columns: 45% minmax(0, 1fr);
        gap: 3%;
    }

    .avola-implant-scene {
        height: 460px;
    }

    .avola-implant-globe {
        width: min(96%, 420px);
    }

}

/* TABLET VERTICALE */

@media (max-width: 991px) {

    .avola-implant-hero {
        padding: 70px 0;
    }

    .avola-implant-hero .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-implant-hero-grid {
        grid-template-columns: 1fr;
        gap: 25px;
        min-height: 0;
    }

    .avola-implant-hero-content {
        text-align: left;
    }

    .avola-implant-scene {
        height: 460px;
    }

    .avola-implant-globe {
        width: min(80%, 420px);
    }

}

/* SMARTPHONE */

@media (max-width: 575px) {

    .avola-implant-hero {
        padding: 55px 0 60px;
    }

    .avola-implant-hero h1 {
        font-size: clamp(36px, 9vw, 47px);
        margin: 18px 0 20px;
    }

    .avola-implant-lead {
        font-size: 15px;
        line-height: 1.75;
    }

    .avola-implant-hero-actions {
        margin-top: 25px;
    }

    .avola-implant-scene {
        height: 345px;
    }

    .avola-implant-globe {
        width: min(100%, 325px);
        opacity: .55;
    }

    .avola-implant-model-controls {
        gap: 8px;
    }

    .avola-implant-interaction-hint {
        width: 100%;
        justify-content: center;
        margin: 0 0 5px;
    }

    .avola-implant-model-controls button {
        padding: 9px 12px;
        font-size: 11px;
    }

}

@media (prefers-reduced-motion: reduce) {

    .avola-implant-primary-btn,
    .avola-implant-model-controls button {
        transition: none;
    }

}












/* ============================================================
   STUDIO ODONTOIATRICO AVOLA
   PAGINA MACROCATEGORIA - VERSIONE COMPLETA
   Hero 3D / Globo / Contenuti / Trattamenti / CTA
============================================================ */

/* 01 - IMPOSTAZIONI GENERALI */

.avola-implant-page {
    width: 100%;
    color: #041F26;
    background: #FFFFFF;
}

.avola-implant-page *,
.avola-implant-page *::before,
.avola-implant-page *::after {
    box-sizing: border-box;
}

.avola-implant-page .container-fluid {
    width: 100%;
    padding-left: 5%;
    padding-right: 5%;
}

.avola-implant-page h1,
.avola-implant-page h2,
.avola-implant-page h3 {
    color: #041F26;
}

.avola-implant-page h2 em {
    color: #087B78;
    font-style: italic;
    font-weight: inherit;
}

.avola-implant-page .avola-editorial-label {
    color: #587C80;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.5;
    text-transform: uppercase;
}

.avola-implant-page .avola-editorial-eyebrow {
    color: #087B78 !important;
    -webkit-text-fill-color: #087B78;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1.5;
    text-transform: uppercase;
}

/* ============================================================
   02 - HERO
============================================================ */

.avola-implant-hero {
    position: relative;
    width: 100%;
    padding: 70px 0 80px;
    background: #F4F8F7;
    overflow: hidden;
}

.avola-implant-hero-grid {
    display: grid;
    grid-template-columns: 46% minmax(0, 1fr);
    align-items: center;
    column-gap: 4%;
    min-height: 590px;
}

.avola-implant-hero-content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

.avola-implant-hero h1 {
    margin: 22px 0 26px;
    color: #041F26;
    font-size: clamp(44px, 4.6vw, 76px);
    font-weight: 650;
    line-height: 1.12;
    letter-spacing: -1.5px;
    overflow-wrap: break-word;
}

.avola-implant-lead {
    max-width: 95%;
    color: #526D70;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.85;
	text-align:justify;
}

.avola-implant-lead p {
    margin: 0 0 16px;
}

.avola-implant-lead p:last-child {
    margin-bottom: 0;
}

.avola-implant-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 34px;
}

.avola-implant-primary-btn,
.avola-implant-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-height: 48px;
    padding: 14px 24px;
    border-radius: 5px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none;
    transition: background .25s ease,
                color .25s ease,
                border-color .25s ease;
}

.avola-implant-primary-btn {
    background: #087B78;
    border: 1px solid #087B78;
    color: #FFFFFF !important;
}

.avola-implant-primary-btn:hover {
    background: #041F26;
    border-color: #041F26;
    color: #FFFFFF !important;
}

.avola-implant-secondary-btn {
    background: transparent;
    border: 1px solid #B7CFCC;
    color: #041F26 !important;
}

.avola-implant-secondary-btn:hover {
    border-color: #087B78;
    color: #087B78 !important;
}

/* ============================================================
   03 - SCENA 3D
============================================================ */

.avola-implant-hero-visual {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
}

.avola-implant-scene {
    position: relative;
    isolation: isolate;
    width: 100%;
    height: 590px;
    overflow: visible;
    background: transparent;
}

/*
   GLOBO:
   Occupa quasi tutta la scena, con un diametro
   maggiore rispetto al modello odontoiatrico.
*/

.avola-implant-globe {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: min(112%, 670px);
    aspect-ratio: 1;
    transform: translate(-50%, -50%);
    pointer-events: none;
    opacity: .85;
}

.avola-implant-globe svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.avola-implant-globe line {
    fill: none;
    stroke: #087B78;
    stroke-width: .8;
    vector-effect: non-scaling-stroke;
}

/* MODELLO DAVANTI AL GLOBO */

.avola-implant-scene model-viewer {
    position: absolute;
    z-index: 3;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: transparent;
    --poster-color: transparent;
    --progress-bar-color: #087B78;
}

/* IMMAGINE DI RISERVA */

.avola-implant-static-fallback {
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    width: 75%;
    max-height: 78%;
    object-fit: contain;
    transform: translate(-50%, -50%);
}

/* ============================================================
   04 - CONTROLLI MODELLO 3D
============================================================ */

.avola-implant-model-controls {
    position: relative;
    z-index: 5;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    margin-top: -8px;
}

.avola-implant-interaction-hint {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-right: 14px;
    color: #587C80;
    font-size: 12px;
    line-height: 1.5;
}

.avola-implant-interaction-hint i {
    color: #087B78;
    font-size: 14px;
}

.avola-implant-model-controls button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 39px;
    padding: 10px 15px;
    border: 1px solid #C8DCDA;
    border-radius: 5px;
    background: #FFFFFF;
    color: #041F26;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: background .25s ease,
                color .25s ease,
                border-color .25s ease;
}

.avola-implant-model-controls button:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFFFFF;
}

.avola-implant-model-controls button:focus-visible,
.avola-implant-primary-btn:focus-visible,
.avola-implant-secondary-btn:focus-visible {
    outline: 2px solid #087B78;
    outline-offset: 3px;
}

/* ============================================================
   05 - INTESTAZIONI SEZIONI
============================================================ */

.avola-implant-section-heading {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    align-items: end;
    gap: 60px;
    margin-bottom: 48px;
}

.avola-implant-section-heading h2,
.avola-implant-about-heading h2 {
    margin: 18px 0 0;
    color: #041F26;
    font-size: clamp(36px, 3.8vw, 58px);
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: -1px;
}

.avola-implant-section-heading > p {
    margin: 0;
    color: #5A7073;
    font-size: 16px;
    line-height: 1.85;
}

/* ============================================================
   06 - APPROFONDIMENTO
============================================================ */

.avola-implant-about {
    position: relative;
    padding: 110px 0;
    background: #FFFFFF;
}

.avola-implant-about-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    align-items: start;
    gap: 8%;
}

.avola-implant-about-heading {
    min-width: 0;
}

.avola-implant-about-heading img {
    display: block;
    width: 100%;
	height:auto;
    /*max-width: 500px;
    max-height: 420px;*/
    margin-top: 36px;
    border-radius: 8px;
    object-fit: cover;
}

.avola-implant-about-text {
    min-width: 0;
}

.avola-implant-richtext {
    color: #526B6F;
    font-size: 18px;
    line-height: 1.9;
    overflow-wrap: anywhere;
	letter-spacing:0.6;
}

.Cavola-implant-richtext ul {
     margin: 0px 20px 0px 20px !important;
     padding: 10px;
     list-style: circle;
}

.avola-implant-richtext p {
    margin: 0 0 22px;
}

.avola-implant-richtext h2,
.avola-implant-richtext h3,
.avola-implant-richtext h4 {
    margin: 30px 0 14px;
    color: #041F26;
    font-weight: 600;
    line-height: 1.35;
}

.avola-implant-richtext h2 {
    font-size: 28px;
}

.avola-implant-richtext h3 {
    font-size: 23px;
}

.avola-implant-richtext h4 {
    font-size: 19px;
}

.avola-implant-richtext strong,
.avola-implant-richtext b {
    color: #041F26;
    font-weight: 700;
}

.avola-implant-richtext a {
    color: #087B78;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.avola-implant-richtext a:hover {
    color: #041F26;
}

.avola-implant-richtext ul,
.avola-implant-richtext ol {
    margin: 0 0 22px;
    padding-left: 24px;
}

.avola-implant-richtext li {
    margin-bottom: 10px;
}

.avola-implant-richtext img {
    max-width: 100%;
    height: auto;
}

/* ============================================================
   07 - TRATTAMENTI COLLEGATI
============================================================ */

.avola-implant-services {
    position: relative;
    padding: 105px 0 115px;
    background: #F4F8F7;
}

.avola-implant-services-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.avola-implant-service {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 215px;
    padding: 35px 34px;
    border: 1px solid #DFEAE8;
    border-radius: 8px;
    background: #FFFFFF;
    transition: transform .3s ease,
                box-shadow .3s ease,
                border-color .3s ease;
}

.avola-implant-service:hover {
    transform: translateY(-4px);
    border-color: #A9CFCA;
    box-shadow: 0 15px 35px rgba(4,31,38,.07);
}

.avola-implant-service-num {
    display: block;
    margin-bottom: 25px;
    color: #087B78;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.avola-implant-service h3 {
    margin: 0 0 15px;
    color: #041F26;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.35;
}

.avola-implant-service p {
    margin: 0;
    color: #5A7073;
    font-size: 15px;
    line-height: 1.8;
}

.avola-implant-service a {
    color: #087B78;
    font-weight: 700;
    text-decoration: none;
}

.avola-implant-service a:hover {
    color: #041F26;
}

/* ============================================================
   08 - CTA PRENOTAZIONE
============================================================ */

.avola-implant-cta {
    position: relative;
    padding: 105px 0;
    background: #041F26;
}

.avola-implant-cta-inner {
    max-width: 80%;
}

.avola-implant-cta .avola-editorial-label {
    color: #73E4DF;
}

.avola-implant-cta h2 {
    margin: 20px 0 25px;
    color: #FFFFFF;
    font-size: clamp(38px, 4.2vw, 64px);
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: -1px;
}

.avola-implant-cta h2 em {
    color: #73E4DF;
    font-style: italic;
}

.avola-implant-cta p {
    max-width: 670px;
    margin: 0;
    color: #C2D6D5;
    font-size: 16px;
    line-height: 1.85;
}

.avola-implant-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin-top: 35px;
}

.avola-implant-book-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-height: 50px;
    padding: 16px 27px;
    border: 1px solid #73E4DF;
    border-radius: 5px;
    background: #73E4DF;
    color: #041F26 !important;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: background .25s ease,
                border-color .25s ease,
                transform .25s ease;
}

.avola-implant-book-btn:hover {
    transform: translateY(-2px);
    border-color: #FFFFFF;
    background: #FFFFFF;
    color: #041F26 !important;
}

/* ============================================================
   09 - RESPONSIVE DESKTOP MEDIO
============================================================ */

@media (max-width: 1199px) {

    .avola-implant-hero-grid {
        grid-template-columns: 45% minmax(0, 1fr);
        gap: 3%;
        min-height: 500px;
    }

    .avola-implant-scene {
        height: 500px;
    }

    .avola-implant-globe {
        width: min(115%, 560px);
    }

    .avola-implant-about-grid {
        gap: 5%;
    }

}

/* ============================================================
   10 - RESPONSIVE TABLET
============================================================ */

@media (max-width: 991px) {

    .avola-implant-page .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-implant-hero {
        padding: 70px 0;
    }

    .avola-implant-hero-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        min-height: 0;
    }

    .avola-implant-hero h1 {
        font-size: clamp(42px, 6vw, 62px);
    }

    .avola-implant-scene {
        height: 490px;
    }

    .avola-implant-globe {
        width: min(92%, 540px);
    }

    .avola-implant-section-heading {
        grid-template-columns: 1fr;
        gap: 24px;
        margin-bottom: 38px;
    }

    .avola-implant-about {
        padding: 80px 0;
    }

    .avola-implant-about-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .avola-implant-about-heading img {
        max-width: 520px;
    }

    .avola-implant-services {
        padding: 80px 0;
    }

    .avola-implant-services-grid {
        gap: 18px;
    }

    .avola-implant-service {
        padding: 28px;
    }

    .avola-implant-cta {
        padding: 80px 0;
    }

}

/* ============================================================
   11 - RESPONSIVE SMARTPHONE
============================================================ */

@media (max-width: 767px) {

    .avola-implant-hero {
        padding: 55px 0 60px;
    }

    .avola-implant-hero h1 {
        margin: 18px 0 22px;
        font-size: clamp(36px, 9vw, 48px);
        letter-spacing: -.7px;
    }

    .avola-implant-lead {
        font-size: 15px;
        line-height: 1.75;
    }

    .avola-implant-hero-actions {
        margin-top: 26px;
    }

    .avola-implant-scene {
        height: 380px;
    }

    .avola-implant-globe {
        width: min(108%, 410px);
        opacity: .75;
    }

    .avola-implant-model-controls {
        gap: 8px;
        margin-top: 5px;
    }

    .avola-implant-interaction-hint {
        justify-content: center;
        width: 100%;
        margin: 0 0 6px;
    }

    .avola-implant-section-heading h2,
    .avola-implant-about-heading h2 {
        font-size: clamp(34px, 8vw, 45px);
    }

    .avola-implant-section-heading > p {
        font-size: 15px;
    }

    .avola-implant-about {
        padding: 65px 0;
    }

    .avola-implant-richtext {
        font-size: 15px;
        line-height: 1.8;
    }

    .avola-implant-richtext h2 {
        font-size: 25px;
    }

    .avola-implant-richtext h3 {
        font-size: 21px;
    }

    .avola-implant-services {
        padding: 65px 0 75px;
    }

    .avola-implant-services-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .avola-implant-service {
        min-height: 0;
        padding: 27px 25px;
    }

    .avola-implant-service-num {
        margin-bottom: 20px;
    }

    .avola-implant-service h3 {
        font-size: 21px;
    }

    .avola-implant-service p {
        font-size: 14px;
    }

    .avola-implant-cta {
        padding: 70px 0;
    }

    .avola-implant-cta h2 {
        font-size: clamp(36px, 8vw, 47px);
    }

    .avola-implant-cta p {
        font-size: 15px;
    }

}

/* ============================================================
   12 - SMARTPHONE PICCOLI
============================================================ */

@media (max-width: 420px) {

    .avola-implant-scene {
        height: 325px;
    }

    .avola-implant-globe {
        width: 112%;
    }

    .avola-implant-model-controls button {
        padding: 9px 11px;
        font-size: 11px;
    }

}

/* ============================================================
   13 - ACCESSIBILITA'
============================================================ */

@media (prefers-reduced-motion: reduce) {

    .avola-implant-primary-btn,
    .avola-implant-secondary-btn,
    .avola-implant-service,
    .avola-implant-book-btn,
    .avola-implant-model-controls button {
        transition: none;
    }

}
/* ==========================================
   STUDIO AVOLA
   SOTTOTRATTAMENTI CON IMMAGINI 3D
   ========================================== */

.avola-implant-services .avola-implant-service-with-image {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 25px;
    min-width: 0;
}

/* Immagine 3D */

.avola-implant-service-image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 155px;
    min-width: 155px;
    height: 165px;
    flex-shrink: 0;
}

.avola-implant-service-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    transition: transform .35s ease;
}

/* Leggero movimento al passaggio del mouse */

.avola-implant-service-with-image:hover
.avola-implant-service-image img {
    transform: scale(1.055);
}

/* Contenuto testuale */

.avola-implant-service-content {
    flex: 1;
    min-width: 0;
}

.avola-implant-service-content h3 {
    margin: 12px 0 12px;
    line-height: 1.35;
}

.avola-implant-service-content p {
    margin: 0;
    line-height: 1.7;
}

/* Tablet */

@media (max-width: 1199px) {

    .avola-implant-services .avola-implant-service-with-image {
        gap: 18px;
    }

    .avola-implant-service-image {
        width: 115px;
        min-width: 115px;
        height: 135px;
    }

}

/* Smartphone */

@media (max-width: 767px) {

    .avola-implant-services .avola-implant-service-with-image {
        gap: 15px;
        align-items: center;
    }

    .avola-implant-service-image {
        width: 105px;
        min-width: 105px;
        height: 125px;
    }

    .avola-implant-service-content h3 {
        margin: 9px 0;
        font-size: 18px;
    }

    .avola-implant-service-content p {
        font-size: 13px;
        line-height: 1.6;
    }

}

@media (prefers-reduced-motion: reduce) {

    .avola-implant-service-image img {
        transition: none;
    }

}

/* ==========================================
   STUDIO AVOLA
   CASI CLINICI PER MACRO-CATEGORIA
   ========================================== */

.avola-implant-cases {
    background: #FFFFFF;
    padding: 110px 0 115px;
}

.avola-implant-cases .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTESTAZIONE */

.avola-implant-cases-heading {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    align-items: end;
    gap: 65px;
    margin-bottom: 55px;
}

.avola-implant-cases .avola-editorial-label {
    color: #587C80;
}

.avola-implant-cases .avola-editorial-eyebrow {
    color: #087B78;
    margin-top: 10px;
}

.avola-implant-cases-heading h2 {
    color: #041F26;
    font-size: clamp(36px, 3.8vw, 62px);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -.035em;
    margin: 25px 0 0;
}

.avola-implant-cases-heading h2 em {
    color: #087B78;
    font-weight: 400;
}

.avola-implant-cases-intro p {
    color: #587477;
    font-size: 17px;
    line-height: 1.85;
    margin-bottom: 20px;
}

.avola-implant-cases-count {
    display: inline-block;
    color: #087B78;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* GRIGLIA */

.avola-implant-cases-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
}

/* SCHEDA */

.avola-implant-case {
    min-width: 0;
    overflow: hidden;
    background: #F4F8F7;
    border: 1px solid #DFEAE8;
    border-radius: 10px;
    transition: border-color .3s ease,
                box-shadow .3s ease;
}

.avola-implant-case:hover {
    border-color: #A9CFCA;
    box-shadow: 0 16px 40px rgba(4,31,38,.07);
}

/* FOTOGRAFIE */

.avola-implant-case-photos {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px;
    background: #DCE9E7;
}

.avola-implant-case-photo {
    position: relative;
    min-width: 0;
    aspect-ratio: 4 / 3;
    margin: 0;
    overflow: hidden;
    background: #E5F1EF;
}

.avola-implant-case-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    transition: transform .4s ease;
}

.avola-implant-case:hover .avola-implant-case-photo img {
    transform: scale(1.025);
}

.avola-implant-case-photo figcaption {
    position: absolute;
    left: 14px;
    bottom: 14px;
    z-index: 2;
    padding: 8px 12px;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .1em;
}

.avola-implant-case-before figcaption {
    color: #FFFFFF;
    background: #604B47;
}

.avola-implant-case-after figcaption {
    color: #FFFFFF;
    background: #087B78;
}

/* CONTENUTO */

.avola-implant-case-content {
    padding: 30px;
}

.avola-implant-case-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    color: #087B78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.avola-implant-case-meta span {
    width: 18px;
    height: 1px;
    background: #A9C5C1;
}

.avola-implant-case-content h3 {
    color: #041F26;
    font-size: 25px;
    font-weight: 600;
    line-height: 1.35;
    margin: 17px 0 12px;
}

.avola-implant-case-subtitle {
    color: #087B78;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    margin-bottom: 12px;
}

.avola-implant-case-content p {
    color: #587477;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}

/* NOTA CLINICA */

.avola-implant-cases-disclaimer {
    margin: 35px 0 0;
    color: #71888A;
    font-size: 12px;
    line-height: 1.7;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-implant-cases {
        padding: 80px 0;
    }

    .avola-implant-cases .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-implant-cases-heading {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-bottom: 40px;
    }

    .avola-implant-cases-grid {
        gap: 20px;
    }

    .avola-implant-case-content {
        padding: 24px;
    }

    .avola-implant-case-content h3 {
        font-size: 22px;
    }

}

@media (max-width: 767px) {

    .avola-implant-cases {
        padding: 65px 0;
    }

    .avola-implant-cases-heading h2 {
        font-size: clamp(34px, 8vw, 46px);
    }

    .avola-implant-cases-intro p {
        font-size: 15px;
    }

    .avola-implant-cases-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .avola-implant-case-content {
        padding: 22px;
    }

    .avola-implant-case-photo figcaption {
        left: 8px;
        bottom: 8px;
        padding: 6px 9px;
        font-size: 10px;
    }

    .avola-implant-case-content p {
        font-size: 14px;
    }

}

@media (prefers-reduced-motion: reduce) {

    .avola-implant-case,
    .avola-implant-case-photo img {
        transition: none;
    }

}

/* ==========================================
   STUDIO AVOLA - VIDEO TRATTAMENTI
========================================== */

.avola-implant-videos {
    background: #F4F8F7;
    padding: 105px 0 115px;
}

.avola-implant-videos .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* INTESTAZIONE */

.avola-implant-videos-heading {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    align-items: end;
    gap: 65px;
    margin-bottom: 55px;
}

.avola-implant-videos .avola-editorial-label {
    color: #587C80;
}

.avola-implant-videos .avola-editorial-eyebrow {
    color: #087B78;
    margin-top: 10px;
}

.avola-implant-videos-heading h2 {
    color: #041F26;
    font-size: clamp(36px, 3.8vw, 62px);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -.035em;
    margin: 25px 0 0;
}

.avola-implant-videos-heading h2 em {
    color: #087B78;
    font-weight: 400;
}

.avola-implant-videos-intro p {
    color: #587477;
    font-size: 17px;
    line-height: 1.85;
    margin-bottom: 20px;
}

.avola-implant-videos-count {
    color: #087B78;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
}

/* GRIGLIA */

.avola-implant-videos-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
}

.avola-implant-videos-single {
    grid-template-columns: minmax(0, 850px);
}

/* CARD */

.avola-implant-video-card {
    min-width: 0;
    overflow: hidden;
    background: #FFFFFF;
    border: 1px solid #DFEAE8;
    border-radius: 10px;
    transition: border-color .3s ease,
                box-shadow .3s ease;
}

.avola-implant-video-card:hover {
    border-color: #A9CFCA;
    box-shadow: 0 15px 35px rgba(4,31,38,.07);
}

/* VIDEO 16:9 */

.avola-implant-video-frame {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #041F26;
}

.avola-implant-video-frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* TESTI */

.avola-implant-video-content {
    padding: 30px;
}

.avola-implant-video-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    color: #087B78;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.avola-implant-video-meta span {
    width: 18px;
    height: 1px;
    background: #A9C5C1;
}

.avola-implant-video-content h3 {
    color: #041F26;
    font-size: 25px;
    font-weight: 600;
    line-height: 1.35;
    margin: 17px 0 12px;
}

.avola-implant-video-description {
    color: #587477;
    font-size: 15px;
    line-height: 1.8;
}

.avola-implant-video-description p {
    margin-bottom: 12px;
}

.avola-implant-video-description p:last-child {
    margin-bottom: 0;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-implant-videos {
        padding: 80px 0;
    }

    .avola-implant-videos .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-implant-videos-heading {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-bottom: 40px;
    }

    .avola-implant-videos-grid {
        gap: 20px;
    }

    .avola-implant-video-content {
        padding: 24px;
    }

    .avola-implant-video-content h3 {
        font-size: 22px;
    }

}

@media (max-width: 767px) {

    .avola-implant-videos {
        padding: 65px 0;
    }

    .avola-implant-videos-heading h2 {
        font-size: clamp(34px, 8vw, 46px);
    }

    .avola-implant-videos-intro p {
        font-size: 15px;
    }

    .avola-implant-videos-grid,
    .avola-implant-videos-single {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .avola-implant-video-content {
        padding: 22px;
    }

    .avola-implant-video-content h3 {
        font-size: 21px;
    }

    .avola-implant-video-description {
        font-size: 14px;
    }

}

@media (prefers-reduced-motion: reduce) {

    .avola-implant-video-card {
        transition: none;
    }

}

/* ==========================================
   STUDIO AVOLA - FAQ MACRO-CATEGORIA
========================================== */

.avola-implant-faq {
    background: #041F26;
    padding: 115px 0 120px;
    color: #FFFFFF;
}

.avola-implant-faq .container-fluid {
    padding-left: 5%;
    padding-right: 5%;
}

/* LAYOUT */

.avola-implant-faq-layout {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: clamp(50px, 7vw, 120px);
    align-items: start;
}

/* COLONNA INTRODUTTIVA */

.avola-implant-faq .avola-editorial-label {
    color: #73E4DF;
}

.avola-implant-faq .avola-editorial-eyebrow {
    color: #A5C8C7;
    margin-top: 12px;
}

.avola-implant-faq-intro h2 {
    color: #FFFFFF;
    font-size: clamp(38px, 3.7vw, 60px);
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -.035em;
    margin: 28px 0 28px;
}

.avola-implant-faq-intro h2 em {
    color: #73E4DF;
    font-weight: 400;
}

.avola-implant-faq-intro p {
    color: #B6CBCD;
    font-size: 16px;
    line-height: 1.9;
    max-width: 440px;
    margin-bottom: 35px;
}

.avola-implant-faq-count {
    display: flex;
    align-items: center;
    gap: 14px;
    color: #A5C8C7;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
}

.avola-implant-faq-count span {
    color: #73E4DF;
    font-size: 32px;
    font-weight: 400;
    letter-spacing: -.03em;
}

/* ACCORDION */

.avola-implant-faq-accordion {
    --bs-accordion-bg: transparent;
    --bs-accordion-border-width: 0;
    --bs-accordion-btn-focus-box-shadow: none;
}

.avola-implant-faq-item {
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(255,255,255,.18);
    border-radius: 0 !important;
}

.avola-implant-faq-item:first-child {
    border-top: 1px solid rgba(255,255,255,.18);
}

.avola-implant-faq-item .accordion-header {
    margin: 0;
}

.avola-implant-faq-item .accordion-button {
    display: flex;
    align-items: center;
    gap: 22px;
    width: 100%;
    padding: 27px 0;
    background: transparent !important;
    color: #FFFFFF !important;
    border: 0;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: left;
    font-size: 19px;
    font-weight: 500;
    line-height: 1.5;
}

.avola-implant-faq-item .accordion-button::after {
    display: none;
}

.avola-implant-faq-num {
    color: #73E4DF;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    flex: 0 0 30px;
}

.avola-implant-faq-question {
    flex: 1;
    min-width: 0;
}

/* ICONA + / - */

.avola-implant-faq-symbol {
    position: relative;
    display: block;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    border: 1px solid rgba(115,228,223,.5);
    border-radius: 50%;
    transition: background .3s ease,
                border-color .3s ease;
}

.avola-implant-faq-symbol::before,
.avola-implant-faq-symbol::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #73E4DF;
    transform: translate(-50%, -50%);
    transition: transform .3s ease;
}

.avola-implant-faq-symbol::before {
    width: 12px;
    height: 1px;
}

.avola-implant-faq-symbol::after {
    width: 1px;
    height: 12px;
}

.avola-implant-faq-item
.accordion-button:not(.collapsed)
.avola-implant-faq-symbol::after {
    transform: translate(-50%, -50%) scaleY(0);
}

.avola-implant-faq-item
.accordion-button:not(.collapsed)
.avola-implant-faq-symbol {
    background: rgba(115,228,223,.1);
    border-color: #73E4DF;
}

/* RISPOSTA */

.avola-implant-faq-answer {
    padding: 0 55px 28px 52px;
    color: #B6CBCD;
    font-size: 15px;
    line-height: 1.9;
}

.avola-implant-faq-answer p {
    margin-bottom: 14px;
}

.avola-implant-faq-answer p:last-child {
    margin-bottom: 0;
}

.avola-implant-faq-answer a {
    color: #73E4DF;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* RESPONSIVE */

@media (max-width: 991px) {

    .avola-implant-faq {
        padding: 80px 0;
    }

    .avola-implant-faq .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }

    .avola-implant-faq-layout {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .avola-implant-faq-intro h2 {
        font-size: clamp(36px, 5vw, 50px);
    }

    .avola-implant-faq-intro p {
        max-width: 650px;
    }

}

@media (max-width: 767px) {

    .avola-implant-faq {
        padding: 65px 0;
    }

    .avola-implant-faq-layout {
        gap: 35px;
    }

    .avola-implant-faq-intro h2 {
        font-size: clamp(34px, 8vw, 44px);
    }

    .avola-implant-faq-intro p {
        font-size: 15px;
    }

    .avola-implant-faq-item .accordion-button {
        gap: 12px;
        padding: 22px 0;
        font-size: 16px;
    }

    .avola-implant-faq-num {
        flex-basis: 25px;
        font-size: 11px;
    }

    .avola-implant-faq-symbol {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

    .avola-implant-faq-answer {
        padding: 0 10px 23px 37px;
        font-size: 14px;
    }

}

@media (prefers-reduced-motion: reduce) {

    .avola-implant-faq-symbol,
    .avola-implant-faq-symbol::before,
    .avola-implant-faq-symbol::after {
        transition: none;
    }

}
/* ==========================================
   STUDIO AVOLA
   HERO TRATTAMENTO - IMMAGINE STATICA
========================================== */

.avola-treatment-hero-visual {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 440px;
    overflow: visible;
}

.avola-treatment-hero-image {
    display: block;
    width: 100%;
    max-width: 620px;
    max-height: 560px;
    height: auto;
    object-fit: contain;
    object-position: center;
    filter: drop-shadow(0 25px 35px rgba(4,31,38,.12));
}

/* TABLET */

@media (max-width: 991px) {

    .avola-treatment-hero-visual {
        min-height: 350px;
    }

    .avola-treatment-hero-image {
        max-width: 480px;
        max-height: 440px;
    }

}

/* SMARTPHONE */

@media (max-width: 767px) {

    .avola-treatment-hero-visual {
        min-height: 260px;
    }

    .avola-treatment-hero-image {
        max-width: 360px;
        max-height: 340px;
    }

}




/* ====================================================
   STUDIO ODONTOIATRICO AVOLA
   BLOG - VERSIONE COMPLETA RESPONSIVE
==================================================== */

.avb-page {
    --avb-dark: #041F26;
    --avb-petrol: #062D34;
    --avb-green: #087B78;
    --avb-aqua: #73E4DF;
    --avb-light: #F4F8F7;
    --avb-muted: #52676A;

    width: 100%;
    max-width: 100%;
    overflow-x: clip;
    background: #FFFFFF;
}

.avb-page,
.avb-page *,
.avb-page *::before,
.avb-page *::after {
    box-sizing: border-box;
}

.avb-page .container {
    width: 100%;
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}

.avb-page h2,
.avb-page h3,
.avb-page p {
    margin-top: 0;
}

.avb-page h2,
.avb-page h3 {
    letter-spacing: -0.045em;
}

.avb-eyebrow {
    display: inline-block;
    color: var(--avb-green);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.3px;
    line-height: 1.5;
}

.avb-small-line {
    display: block;
    width: 58px;
    height: 2px;
    background: var(--avb-green);
    margin-bottom: 25px;
}

/* ====================================
   INTRODUZIONE
==================================== */

.avb-intro {
    position: relative;
    display: block;
    width: 100%;
    background: var(--avb-light);
    padding: 105px 0 110px;
    overflow: hidden;
}

.avb-intro-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr);
    align-items: end;
    gap: 65px;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.avb-intro-heading,
.avb-intro-description {
    position: relative;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.avb-intro-heading h2 {
    color: var(--avb-dark);
    font-size: clamp(42px, 5vw, 82px);
    line-height: 1.08;
    font-weight: 600;
    margin: 24px 0 0;
    overflow-wrap: normal;
    word-break: normal;
}

.avb-intro-heading h2 span {
    color: var(--avb-green);
    font-weight: 400;
}

.avb-intro-description {
    padding-bottom: 8px;
}

.avb-intro-description p {
    color: var(--avb-muted);
    font-size: 17px;
    line-height: 1.8;
    margin-bottom: 24px;
	text-align:justify;
}

.avb-text-link {
    display: inline-flex;
    align-items: center;
    gap: 24px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--avb-green);
    color: var(--avb-dark);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: color .3s ease;
}

.avb-text-link:hover {
    color: var(--avb-green);
}

/* ====================================
   TITOLI SEZIONI
==================================== */

.avb-section-title {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 45px;
}

.avb-section-title h2 {
    color: var(--avb-dark);
    font-size: clamp(36px, 4vw, 62px);
    font-weight: 600;
    line-height: 1.12;
    margin: 14px 0 0;
}

.avb-section-title h2 span {
    color: var(--avb-green);
    font-weight: 400;
}

.avb-section-number {
    color: #849693;
    font-size: 11px;
    letter-spacing: 2px;
}

/* ====================================
   ARTICOLO IN EVIDENZA
==================================== */

.avb-featured {
    background: #FFFFFF;
    padding: 105px 0 120px;
}

.avb-featured-card {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr);
    min-height: 475px;
    background: var(--avb-dark);
    border-radius: 22px;
    overflow: hidden;
}

/* IMMAGINE ARTICOLO IN EVIDENZA */

/* CONTENITORE IMMAGINE */
.avb-featured-image {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;

    min-width: 0;
    min-height: 440px;

    background: #041F26;

    border-radius: 22px 0 0 22px;
    overflow: hidden;
	padding:12px
}

/* IMMAGINE */
.avb-featured-image > img {
    display: block;
    width: 100%;
    height: 100%;

    object-fit: contain;
    object-position: center;

    border-radius: 22px;

    margin: 0;
    padding: 0;
}

.avb-placeholder {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 250px;
    background:
        radial-gradient(
            ellipse at 72% 40%,
            rgba(115,228,223,.32),
            transparent 43%
        ),
        radial-gradient(
            ellipse at 15% 85%,
            rgba(8,123,120,.55),
            transparent 50%
        ),
        linear-gradient(
            135deg,
            #041F26 0%,
            #0A4B4D 65%,
            #087B78 100%
        );
}

.avb-placeholder > span {
    position: relative;
    z-index: 1;
    color: rgba(255,255,255,.45);
    font-size: clamp(35px, 5vw, 75px);
    font-weight: 400;
    letter-spacing: -.05em;
    line-height: 1.2;
    text-align: center;
}

.avb-placeholder-large {
    min-height: 440px;
}

.avb-image-label {
    position: absolute;
    left: 28px;
    bottom: 25px;
    z-index: 2;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
	text-transform:uppercase;
}

.avb-featured-content {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: clamp(35px, 4.5vw, 70px);
}

.avb-featured-category {
    color: var(--avb-aqua);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.6px;
    line-height: 1.6;
	text-transform:uppercase;
}

.avb-featured-content h3 {
    color: #FFFFFF;
    font-size: clamp(28px, 2.8vw, 44px);
    font-weight: 500;
    line-height: 1.18;
    margin: 30px 0 20px;
}

.avb-featured-content p {
    color: #B8D1D0;
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 28px;
}

.avb-featured-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: auto;
}

.avb-circle-button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    background: var(--avb-aqua);
    color: var(--avb-dark);
    font-size: 24px;
    text-decoration: none;
    transition: transform .3s ease, background .3s ease;
}

.avb-circle-button:hover {
    transform: translateY(-4px);
    background: #FFFFFF;
    color: var(--avb-dark);
}

.avb-featured-bottom small {
    max-width: 250px;
    color: #A4BDBB;
    font-size: 9px;
    letter-spacing: 1.4px;
    line-height: 1.6;
    text-align: right;
}

/* ====================================
   ARCHIVIO E RICERCA
==================================== */

.avb-archive {
    background: var(--avb-light);
    padding: 110px 0 120px;
}

.avb-archive-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
}

.avb-archive-heading-text {
    flex: 1 1 auto;
    min-width: 0;
}

.avb-archive-subtitle {
    color: var(--avb-muted);
    font-size: 15px;
    line-height: 1.7;
    margin: 15px 0 0;
}

.avb-search-wrapper {
    flex: 0 0 340px;
    max-width: 100%;
}

.avb-search-form {
    display: flex;
    align-items: center;
    width: 100%;
    height: 58px;
    padding: 5px 5px 5px 22px;
    margin: 0;
    background: #FFFFFF;
    border: 1px solid #DCE8E5;
    border-radius: 100px;
    transition: border-color .3s ease,
                box-shadow .3s ease;
}

.avb-search-form:focus-within {
    border-color: var(--avb-green);
    box-shadow: 0 0 0 3px rgba(8,123,120,.10);
}

.avb-page .avb-search-input {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    height: 100%;
    padding: 0 10px 0 0;
    margin: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    outline: none;
    box-shadow: none;
    color: var(--avb-dark);
    font-size: 14px;
    font-weight: 400;
    line-height: normal;
}

.avb-search-input::placeholder {
    color: #839391;
    opacity: 1;
}

.avb-page .avb-search-input:focus {
    border: 0;
    outline: none;
    box-shadow: none;
}

.avb-page .avb-search-button {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    padding: 0;
    margin: 0;
    background: var(--avb-green);
    color: #FFFFFF;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    transition: background .3s ease,
                transform .3s ease;
}

.avb-search-button:hover {
    background: var(--avb-dark);
    transform: scale(1.04);
}

.avb-search-button i {
    font-size: 17px;
    color: #FFFFFF;
}

.avb-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* ====================================
   CATEGORIE - DESKTOP
==================================== */


/* ==========================================
   AVOLA BLOG - CATEGORIE DINAMICHE
========================================== */

.avb-page .avb-categories {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 11px;
    width: 100%;
    margin-bottom: 45px;
}

/* PULSANTE */

.avb-page .avb-categories .avb-cat-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    min-height: 46px;
    padding: 10px 17px;

    background: #FFFFFF;
    border: 1px solid #DCE8E5;
    border-radius: 100px;

    color: #041F26;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;

    white-space: normal;
    text-align: center;

    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease,
        transform .25s ease;
}

/* NOME CATEGORIA */

.avb-page .avb-cat-name {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
}

/* CONTEGGIO ARTICOLI */

.avb-page .avb-cat-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 25px;
    height: 25px;
    padding: 0 6px;
    background: #E8F3F1;
    color: #087B78;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
}

/* HOVER */

.avb-page .avb-categories .avb-cat-btn:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFFFFF;
    transform: translateY(-2px);
}

.avb-page .avb-cat-btn:hover .avb-cat-count {
    background: rgba(255,255,255,.20);
    color: #FFFFFF;
}

/* CATEGORIA ATTIVA */

.avb-page .avb-categories .avb-cat-btn.active {
    background: #041F26;
    border-color: #041F26;
    color: #FFFFFF;
}

.avb-page .avb-cat-btn.active .avb-cat-count {
    background: #73E4DF;
    color: #041F26;
}

/* ACCESSIBILITA' */

.avb-page .avb-cat-btn:focus-visible {
    outline: 3px solid #73E4DF;
    outline-offset: 3px;
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {

    .avb-page .avb-categories {
        gap: 9px;
    }

    .avb-page .avb-categories .avb-cat-btn {
        padding: 10px 14px;
    }
}

/* ==========================================
   SMARTPHONE - DUE COLONNE
========================================== */

@media (max-width: 767px) {

    .avb-page .avb-categories {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;

        width: 100%;
        margin-bottom: 32px;
        padding: 0;

        overflow: visible;
    }

    .avb-page .avb-categories .avb-cat-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 7px;

        width: 100%;
        min-width: 0;
        min-height: 56px;

        padding: 11px 9px;

        border-radius: 14px;

        font-size: 14px;
        line-height: 1.3;
        text-align: center;
    }

    .avb-page .avb-cat-name {
        min-width: 0;
        overflow-wrap: anywhere;
    }

    .avb-page .avb-cat-count {
        flex: 0 0 auto;
        min-width: 23px;
        height: 23px;
        font-size: 10px;
    }

    /* TUTTI GLI ARTICOLI OCCUPA LA RIGA INTERA */

    .avb-page .avb-categories .avb-cat-btn:first-child {
        grid-column: 1 / -1;
    }
}


/* ====================================
   GRIGLIA ARTICOLI
==================================== */

.avb-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    width: 100%;
}

.avb-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    background: #FFFFFF;
    border: 1px solid #E5EEEC;
    border-radius: 18px;
    overflow: hidden;
    transition: transform .35s ease, box-shadow .35s ease;
}

.avb-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 50px rgba(4,31,38,.09);
}

.avb-card-image {
    position: relative;
    width: 100%;
    aspect-ratio: 1.4 / 1;
    overflow: hidden;
}

.avb-card-image > img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.avb-card-image .avb-placeholder {
    min-height: 0;
}

.avb-card-image .avb-placeholder > span {
    font-size: 85px;
    font-weight: 300;
}

.avb-category-label {
    position: absolute;
    left: 20px;
    bottom: 18px;
    background: rgba(4,31,38,.92);
    color: #FFFFFF;
    padding: 9px 13px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.2;
}

.avb-card-content {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
    padding: 29px 27px 30px;
}

.avb-card-meta {
    color: var(--avb-green);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1.5;
	text-transform:uppercase
}

.avb-card-content h3 {
    color: var(--avb-dark);
    font-size: clamp(21px, 1.8vw, 27px);
    font-weight: 600;
    line-height: 1.25;
    margin: 16px 0;
}

.avb-card-content p {
    color: var(--avb-muted);
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 25px;
}

.avb-card-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    border-top: 1px solid #E7EFED;
    padding-top: 18px;
    margin-top: auto;
    color: var(--avb-green);
    font-size: 12px;
    font-weight: 700;
}

.avb-card-bottom span:last-child {
    font-size: 21px;
}



/* ====================================
   CALL TO ACTION
==================================== */

.avb-cta {
    background:
        radial-gradient(
            circle at 85% 30%,
            rgba(8,123,120,.4),
            transparent 40%
        ),
        var(--avb-dark);
    padding: 100px 0;
}

.avb-cta-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr);
    align-items: center;
    gap: 75px;
}

.avb-cta-heading,
.avb-cta-description {
    min-width: 0;
}

.avb-cta .avb-eyebrow {
    color: var(--avb-aqua);
}

.avb-cta-heading h2 {
    color: #FFFFFF;
    font-size: clamp(35px, 4.5vw, 65px);
    font-weight: 600;
    line-height: 1.14;
    margin: 18px 0 0;
}

.avb-cta-heading h2 span {
    color: var(--avb-aqua);
    font-weight: 400;
}

.avb-cta-description p {
    color: #C1D9D7;
    font-size: 15px;
    line-height: 1.8;
    margin-bottom: 25px;
}

.avb-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    background: var(--avb-aqua);
    color: var(--avb-dark);
    border-radius: 100px;
    padding: 16px 23px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    text-decoration: none;
    transition: background .3s ease,
                transform .3s ease;
}

.avb-cta-button:hover {
    background: #FFFFFF;
    color: var(--avb-dark);
    transform: translateY(-3px);
}

/* ====================================
   TABLET
==================================== */

@media (max-width: 991px) {

    .avb-intro-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
    }

    .avb-intro-heading h2 {
        font-size: clamp(46px, 7vw, 70px);
    }

    .avb-intro-description {
        max-width: 650px;
    }

    .avb-featured-card {
        grid-template-columns: 1fr 1fr;
    }

    .avb-featured-content {
        padding: 35px;
    }

    .avb-archive-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 25px;
    }

    .avb-search-wrapper {
        flex: 0 0 auto;
        width: 100%;
        max-width: 500px;
    }

    .avb-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .avb-cta-layout {
        gap: 35px;
    }
}

/* ====================================
   SMARTPHONE
   CATEGORIE SU DUE COLONNE
==================================== */

@media (max-width: 767px) {

    .avb-page .container {
        padding-left: 20px;
        padding-right: 20px;
    }

    .avb-intro {
        padding: 65px 0 70px;
    }

    .avb-intro-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 28px;
    }

    .avb-intro-heading h2 {
        font-size: clamp(38px, 10vw, 55px);
        margin-top: 18px;
    }

    .avb-intro-description p {
        font-size: 15px;
    }

    .avb-featured,
    .avb-archive {
        padding: 70px 0;
    }

    .avb-section-title {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        margin-bottom: 28px;
    }

    .avb-section-title h2 {
        font-size: 36px;
    }

    .avb-featured-card {
        grid-template-columns: minmax(0, 1fr);
        min-height: 0;
    }

    .avb-placeholder-large {
        min-height: 250px;
    }

    .avb-featured-content {
        padding: 30px 25px;
    }

    .avb-featured-content h3 {
        font-size: 28px;
        margin: 22px 0 15px;
    }

    .avb-featured-bottom small {
        max-width: 170px;
    }

    .avb-search-wrapper {
        width: 100%;
        max-width: 100%;
    }

    .avb-search-form {
        height: 56px;
    }

    .avb-page .avb-search-button {
        flex-basis: 44px;
        width: 44px;
        height: 44px;
    }

    .avb-archive-subtitle {
        font-size: 14px;
    }

    /* NUOVA NAVIGAZIONE MOBILE */

    .avb-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 22px;
    }

    .avb-card-image {
        aspect-ratio: 1.55 / 1;
    }

    .avb-card-content {
        padding: 25px;
    }

    .avb-card-content h3 {
        font-size: 24px;
    }

    .avb-cta {
        padding: 70px 0;
    }

    .avb-cta-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
    }

    .avb-cta-heading h2 {
        font-size: 38px;
    }
}
@media (max-width: 767px) {

    /* Scheda articolo */
    .avb-page .avb-featured-card {
        display: flex;
        flex-direction: column;
        height: auto;
        min-height: 0;
        overflow: hidden;
        border-radius: 22px;
    }

    /* Contenitore immagine */
    .avb-page .avb-featured-image {
        display: block;
        position: relative;

        width: 100%;
        height: auto;
        min-height: 0;

        padding: 0;
        margin: 0;

        background: #041F26;
        overflow: hidden;

        border-radius: 22px 22px 0 0;
    }

    /* Fotografia completa, senza ritagli */
    .avb-page .avb-featured-image > img {
        display: block;

        width: 100%;
        height: auto;
        max-width: 100%;

        min-height: 0;
        max-height: none;

        object-fit: contain;
        object-position: center;

        padding: 0;
        margin: 0;

        border-radius: 0;
    }

    /* Etichetta sovrapposta alla fotografia */
    .avb-page .avb-image-label {
        position: absolute;
        left: 18px;
        bottom: 15px;
        z-index: 2;
        font-size: 9px;
    }

    /* Testo sotto la fotografia */
    .avb-page .avb-featured-content {
        width: 100%;
        padding: 30px 25px 35px;
    }
}

/* ==========================================
   AVOLA BLOG - PULSANTE LEGGI ARTICOLO
========================================== */

.avb-page .avb-card-bottom {
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid #E7EFED;
}

.avb-page .avb-read-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;

    min-height: 48px;
    padding: 7px 8px 7px 20px;

    background: #041F26;
    color: #FFFFFF;

    border: 1px solid #041F26;
    border-radius: 50px;

    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;

    transition: background .3s ease,
                border-color .3s ease,
                transform .3s ease;
}

.avb-page .avb-read-button:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFFFFF;
    transform: translateY(-2px);
}

.avb-page .avb-read-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 32px;
    height: 32px;
    flex: 0 0 32px;

    background: #73E4DF;
    color: #041F26;

    border-radius: 50%;

    font-size: 19px;
    line-height: 1;
}

.avb-page .avb-read-button:focus-visible {
    outline: 3px solid #73E4DF;
    outline-offset: 3px;
}

/* SMARTPHONE */

@media (max-width: 767px) {
    .avb-page .avb-read-button {
        width: 100%;
        justify-content: space-between;
        min-height: 52px;
        font-size: 13px;
    }
}

/* ==========================================
   AVOLA BLOG - PAGINAZIONE DINAMICA
========================================== */

.avb-page .avb-pagination {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    margin-top: 55px;
    padding: 0;
}

/* LISTA */

.avb-page .avb-pagination-list {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 10px;

    margin: 0;
    padding: 0;

    list-style: none;
}

.avb-page .avb-pagination-list li {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* PULSANTI NUMERICI E FRECCE */

.avb-page .avb-pagination-list a {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 45px;
    height: 45px;
    min-width: 45px;

    padding: 0;
    margin: 0;

    background: #FFFFFF;
    color: #041F26;

    border: 1px solid #D7E4E1;
    border-radius: 50%;

    font-size: 15px;
    font-weight: 500;
    line-height: 1;

    text-decoration: none;

    transition:
        background .25s ease,
        border-color .25s ease,
        color .25s ease,
        transform .25s ease;
}

.avb-page .avb-pagination-list a span {
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: 1;
}

/* HOVER */

.avb-page .avb-pagination-list a:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFFFFF;
    transform: translateY(-2px);
}

/* PAGINA CORRENTE */

.avb-page .avb-pagination-list a.current {
    background: #041F26;
    border-color: #041F26;
    color: #FFFFFF;

    cursor: default;
    pointer-events: none;
}

.avb-page .avb-pagination-list a.current:hover {
    transform: none;
}

/* FRECCE */

.avb-page .avb-pagination-list a.avb-page-arrow {
    background: #E8F3F1;
    border-color: #E8F3F1;
    color: #087B78;
}

.avb-page .avb-pagination-list a.avb-page-arrow:hover {
    background: #087B78;
    border-color: #087B78;
    color: #FFFFFF;
}

.avb-page .avb-pagination-list a.avb-page-arrow i {
    font-size: 14px;
}

/* FOCUS TASTIERA */

.avb-page .avb-pagination-list a:focus-visible {
    outline: 3px solid #73E4DF;
    outline-offset: 3px;
}

/* ==========================================
   SMARTPHONE
========================================== */

@media (max-width: 767px) {

    .avb-page .avb-pagination {
        margin-top: 35px;
    }

    .avb-page .avb-pagination-list {
        gap: 7px;
    }

    .avb-page .avb-pagination-list a {
        width: 40px;
        height: 40px;
        min-width: 40px;
        font-size: 12px;
    }

    .avb-page .avb-pagination-list a.avb-page-arrow i {
        font-size: 13px;
    }
}





/* ==========================================================
   STUDIO AVOLA - DETTAGLIO ARTICOLO BLOG
   VERSIONE 2 - LAYOUT CORRETTO
   Tutte le regole sono circoscritte a .avd-page
   ========================================================== */

/* BASE */

.avd-page {
    --avd-dark: #041F26;
    --avd-teal: #169F99;
    --avd-aqua: #73E4DF;
    --avd-muted: #55777A;
    --avd-light: #F4F8F7;
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    color: var(--avd-dark);
    overflow: clip;
}

.avd-page *,
.avd-page *::before,
.avd-page *::after {
    box-sizing: border-box;
}

/* CONTENITORE UNICO
   Indipendente da Bootstrap e dal template */

.avd-page .avd-container {
    display: block;
    position: relative;
    width: 90%;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    float: none;
    clear: both;
}

/* ==========================================
   01 - HERO ARTICOLO
========================================== */

.avd-page .avd-hero {
    display: block;
    position: relative;
    width: 100%;
    padding: 65px 0 75px;
    background: var(--avd-light);
}

.avd-page .avd-back {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 65px;
    color: var(--avd-teal);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-decoration: none;
    transition: color .25s ease;
}

.avd-page .avd-back:hover {
    color: var(--avd-dark);
}

.avd-page .avd-hero-content {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

.avd-page .avd-kicker {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 30px;
    color: var(--avd-teal);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.avd-page .avd-kicker-dot {
    display: inline-block;
    width: 7px;
    height: 7px;
    flex: 0 0 7px;
    border-radius: 50%;
    background: currentColor;
}

.avd-page .avd-category {
    display: inline-block;
    width: auto;
    margin: 0 0 26px;
    padding: 9px 17px;
    border: 1px solid #C7E4E0;
    border-radius: 50px;
    background: #E5F1EF;
    color: #087B78;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.avd-page .avd-hero h1 {
    display: block;
    width: 100%;
    margin: 0 0 28px;
    padding: 0;
    color: var(--avd-dark);
    font-size: clamp(28px, 5vw, 50px);
    font-weight: 400;
    line-height: 1.13;
    letter-spacing: -.04em;
    text-align: left;
    overflow-wrap: break-word;
}

.avd-page .avd-subtitle {
    display: block;
    width: 100%;
    margin: 0 0 35px;
    color: var(--avd-muted);
    font-size: clamp(16px, 1.8vw, 20px);
    font-weight: 400;
    line-height: 1.4;
	text-align:justify;
}

.avd-page .avd-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px 25px;
    width: 100%;
    margin: 0;
}

.avd-page .avd-meta span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--avd-muted);
    font-size: 16px;
    line-height: 1.6;
}

.avd-page .avd-meta i {
    color: var(--avd-teal);
    font-size: 15px;
}

/* ==========================================
   02 - IMMAGINE PRINCIPALE
========================================== */

.avd-page .avd-cover {
    display: block;
    width: 100%;
    padding: 0 0 75px;
    background: var(--avd-light);
}

.avd-page .avd-cover-frame {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    min-height: 200px;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #E5F1EF;
}

.avd-page .avd-cover-frame img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    margin: 0 auto;
    object-fit: contain;
    object-position: center;
}

/* ==========================================
   03 - CORPO ARTICOLO
========================================== */

.avd-page .avd-content-section {
    display: block;
    width: 100%;
    padding: 100px 0 110px;
    background: #FFFFFF;
}

.avd-page .avd-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    align-items: start;
    gap: clamp(35px, 5vw, 90px);
    width: 100%;
    margin: 0;
}

.avd-page .avd-article {
    display: block;
    min-width: 0;
    width: 100%;
    margin: 0;
}

.avd-page .avd-lead {
    display: block;
    margin: 0 0 45px;
    padding: 0 0 0 28px;
    border-left: 3px solid var(--avd-teal);
    color: var(--avd-dark);
    font-size: clamp(20px, 2vw, 25px);
    font-weight: 400;
    line-height: 1.7;
}

.avd-page .avd-article-body {
    display: block;
    width: 100%;
    color: var(--avd-muted);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.95;
    overflow-wrap: anywhere;
}

.avd-page .avd-article-body h2 {
    margin: 45px 0 20px;
    padding: 0;
    color: var(--avd-dark);
    font-size: clamp(26px, 2.8vw, 36px);
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -.025em;
}

.avd-page .avd-article-body h3 {
    margin: 35px 0 15px;
    color: var(--avd-dark);
    font-size: 24px;
    font-weight: 500;
    line-height: 1.4;
}

.avd-page .avd-article-body p {
    margin: 0 0 25px;
    color: var(--avd-muted);
    font-size: inherit;
    line-height: inherit;
}

.avd-page .avd-article-body ul,
.avd-page .avd-article-body ol {
    margin: 20px 0 30px;
    padding-left: 25px;
    list-style-position: outside;
}

.avd-page .avd-article-body ul {
    list-style-type: disc;
}

.avd-page .avd-article-body ol {
    list-style-type: decimal;
}

.avd-page .avd-article-body li {
    margin: 0 0 12px;
    padding: 0;
    color: var(--avd-muted);
    line-height: 1.8;
}

.avd-page .avd-article-body a {
    color: var(--avd-teal);
    text-decoration: underline;
    text-underline-offset: 4px;
}

.avd-page .avd-article-body img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 14px;
}

.avd-page .avd-article-body blockquote {
    display: block;
    margin: 45px 0;
    padding: 35px 40px;
    border: 0;
    border-left: 3px solid var(--avd-teal);
    border-radius: 0 14px 14px 0;
    background: var(--avd-light);
    color: var(--avd-dark);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(21px, 2.2vw, 29px);
    font-style: italic;
    font-weight: 400;
    line-height: 1.6;
}

/* BOX CONSIGLIO */

.avd-page .avd-note {
    display: flex;
    align-items: flex-start;
    gap: 22px;
    width: 100%;
    margin: 50px 0 0;
    padding: 30px;
    border-radius: 16px;
    background: var(--avd-light);
}

.avd-page .avd-note-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    border-radius: 50%;
    background: #D9F0EC;
    color: var(--avd-teal);
    font-size: 22px;
}

.avd-page .avd-note h3 {
    margin: 0 0 12px;
    color: var(--avd-dark);
    font-size: 21px;
    font-weight: 600;
    line-height: 1.4;
}

.avd-page .avd-note p {
    margin: 0;
    color: var(--avd-muted);
    font-size: 15px;
    line-height: 1.8;
}

/* CONDIVISIONE */

.avd-page .avd-share {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    width: 100%;
    margin: 45px 0 0;
    padding: 35px 0 0;
    border-top: 1px solid #DFEAE7;
}

.avd-page .avd-share > span {
    color: var(--avd-dark);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
}

.avd-page .avd-share-icons {
    display: flex;
    align-items: center;
    gap: 10px;
}

.avd-page .avd-share-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid #D5E6E2;
    border-radius: 50%;
    background: #FFFFFF;
    color: var(--avd-teal);
    text-decoration: none;
    transition: background .25s ease, color .25s ease;
}

.avd-page .avd-share-icons a:hover {
    background: var(--avd-teal);
    color: #FFFFFF;
}

/* ==========================================
   SIDEBAR
========================================== */

.avd-page .avd-sidebar {
    /*display: block;
    position: sticky;
    top: 35px;*/
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 5px;
}

.avd-page .avd-sidebar-card {
    display: block;
    width: 100%;
    margin: 0;
    padding: 35px 30px;
    border-radius: 18px;
    background: var(--avd-dark);
    color: #FFFFFF;
}

.avd-page .avd-sidebar-label {
    margin: 0 0 30px;
    color: var(--avd-aqua);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .12em;
	text-transform:uppercase;
}

.avd-page .avd-sidebar-card h3 {
    margin: 0 0 20px;
    color: #FFFFFF;
    font-size: 32px;
    font-weight: 400;
    line-height: 1.25;
}

.avd-page .avd-sidebar-card p {
    margin: 0 0 30px;
    color: #B4CDCE;
    font-size: 15px;
    line-height: 1.8;
}

.avd-page .avd-sidebar-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 16px 20px;
    border-radius: 50px;
    background: var(--avd-aqua);
    color: var(--avd-dark);
    font-size: 17px;
    font-weight: 500;
    line-height: 1.5;
    text-decoration: none;
    transition: background .25s ease;
}

.avd-page .avd-sidebar-cta:hover {
    background: #FFFFFF;
    color: var(--avd-dark);
}

.avd-page .avd-disclaimer {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
    padding: 25px 8px;
}

.avd-page .avd-disclaimer i {
    margin-top: 4px;
    color: var(--avd-teal);
}

.avd-page .avd-disclaimer p {
    margin: 0;
    color: var(--avd-muted);
    font-size: 12px;
    line-height: 1.8;
}

/* ==========================================
   04 - CALL TO ACTION
========================================== */

.avd-page .avd-cta-section {
    display: block;
    width: 100%;
    padding: 85px 0;
    background: var(--avd-dark);
}

.avd-page .avd-cta-layout {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    width: 100%;
}

.avd-page .avd-cta-copy {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 850px;
}

.avd-page .avd-cta-section .avd-kicker {
    color: var(--avd-aqua);
}

.avd-page .avd-cta-section h2 {
    margin: 0 0 25px;
    color: #FFFFFF;
    font-size: clamp(34px, 4.5vw, 60px);
    font-weight: 400;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.avd-page .avd-cta-section p {
    max-width: 700px;
    margin: 0;
    color: #B4CDCE;
    font-size: 17px;
    line-height: 1.8;
}

.avd-page .avd-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex: 0 0 auto;
    padding: 20px 25px;
    border-radius: 50px;
    background: var(--avd-aqua);
    color: var(--avd-dark);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .04em;
    text-decoration: none;
    transition: background .25s ease;
}

.avd-page .avd-cta-button:hover {
    background: #FFFFFF;
    color: var(--avd-dark);
}

/* ==========================================
   05 - ARTICOLI CORRELATI
========================================== */

.avd-page .avd-related {
    display: block;
    width: 100%;
    padding: 100px 0 115px;
    background: var(--avd-light);
}

.avd-page .avd-related-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    width: 100%;
    margin: 0 0 45px;
}

.avd-page .avd-related-heading h2 {
    margin: 0;
    color: var(--avd-dark);
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: -.035em;
}

.avd-page .avd-related-all {
    color: var(--avd-teal);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .06em;
    text-decoration: none;
    white-space: nowrap;
}

.avd-page .avd-related-all:hover {
    color: var(--avd-dark);
}

.avd-page .avd-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    width: 100%;
}

.avd-page .avd-related-card {
    display: block;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border-radius: 16px;
    background: #FFFFFF;
    box-shadow: 0 8px 30px rgba(4,31,38,.04);
    transition: transform .3s ease;
}

.avd-page .avd-related-card:hover {
    transform: translateY(-5px);
}

.avd-page .avd-related-image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #DCEAE7;
}

.avd-page .avd-related-image img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    object-fit: cover;
    transition: transform .4s ease;
}

.avd-page .avd-related-card:hover .avd-related-image img {
    transform: scale(1.035);
}

.avd-page .avd-related-body {
    display: block;
    padding: 28px;
}

.avd-page .avd-related-body > span {
    color: var(--avd-teal);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .12em;
}

.avd-page .avd-related-body h3 {
    margin: 16px 0 28px;
    color: var(--avd-dark);
    font-size: 23px;
    font-weight: 500;
    line-height: 1.4;
}

.avd-page .avd-related-body h3 a {
    color: inherit;
    text-decoration: none;
}

.avd-page .avd-related-body h3 a:hover {
    color: var(--avd-teal);
}

.avd-page .avd-related-read {
    color: var(--avd-teal);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .06em;
    text-decoration: none;
}

.avd-page .avd-related-read:hover {
    color: var(--avd-dark);
}

/* ==========================================
   TABLET
========================================== */

@media (max-width: 991px) {

    .avd-page .avd-container {
        width: calc(100% - 50px);
    }

    .avd-page .avd-hero {
        padding: 55px 0 65px;
    }

    .avd-page .avd-back {
        margin-bottom: 45px;
    }

    .avd-page .avd-layout {
        grid-template-columns: minmax(0, 1fr) 270px;
        gap: 35px;
    }

    .avd-page .avd-sidebar-card {
        padding: 28px 22px;
    }

    .avd-page .avd-sidebar-card h3 {
        font-size: 27px;
    }

    .avd-page .avd-cta-layout {
        flex-direction: column;
        align-items: flex-start;
        gap: 35px;
    }

    .avd-page .avd-related-grid {
        gap: 18px;
    }

    .avd-page .avd-related-body {
        padding: 22px;
    }

    .avd-page .avd-related-body h3 {
        font-size: 20px;
    }
}

/* ==========================================
   SMARTPHONE
========================================== */

@media (max-width: 767px) {

    .avd-page .avd-container {
        width: calc(100% - 40px);
        max-width: none;
    }

    .avd-page .avd-hero {
        padding: 40px 0 50px;
    }

    .avd-page .avd-back {
        margin-bottom: 40px;
    }

    .avd-page .avd-kicker {
        gap: 9px;
        margin-bottom: 25px;
        font-size: 10px;
        letter-spacing: .12em;
    }

    .avd-page .avd-hero h1 {
        font-size: clamp(34px, 8.5vw, 48px);
        line-height: 1.16;
        letter-spacing: -.035em;
    }

    .avd-page .avd-subtitle {
        font-size: 17px;
        line-height: 1.7;
    }

    .avd-page .avd-meta {
        gap: 12px 18px;
    }

    .avd-page .avd-meta span {
        font-size: 14px;
    }

    .avd-page .avd-cover {
        padding-bottom: 45px;
    }

    .avd-page .avd-cover-frame {
        min-height: 120px;
        border-radius: 12px;
    }

    .avd-page .avd-content-section {
        padding: 60px 0 75px;
    }

    .avd-page .avd-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 55px;
    }

    .avd-page .avd-lead {
        padding-left: 18px;
        font-size: 20px;
    }

    .avd-page .avd-article-body {
        font-size: 16px;
        line-height: 1.85;
    }

    .avd-page .avd-article-body h2 {
        font-size: 28px;
    }

    .avd-page .avd-article-body h3 {
        font-size: 22px;
    }

    .avd-page .avd-article-body blockquote {
        padding: 25px;
        font-size: 22px;
    }

    .avd-page .avd-note {
        padding: 22px;
        gap: 15px;
    }

    .avd-page .avd-note-icon {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
    }

    .avd-page .avd-share {
        align-items: flex-start;
    }

    .avd-page .avd-sidebar {
        position: static;
    }

    .avd-page .avd-cta-section {
        padding: 65px 0;
    }

    .avd-page .avd-cta-section h2 {
        font-size: 38px;
    }

    .avd-page .avd-cta-section p {
        font-size: 15px;
    }

    .avd-page .avd-cta-button {
        width: 100%;
    }

    .avd-page .avd-related {
        padding: 70px 0;
    }

    .avd-page .avd-related-heading {
        flex-direction: column;
        align-items: flex-start;
        gap: 25px;
    }

    .avd-page .avd-related-heading h2 {
        font-size: 36px;
    }

    .avd-page .avd-related-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 25px;
    }
}

/* ==========================================
   ACCESSIBILITA'
========================================== */

@media (prefers-reduced-motion: reduce) {

    .avd-page .avd-related-card,
    .avd-page .avd-related-image img {
        transition: none;
    }

    .avd-page .avd-related-card:hover,
    .avd-page .avd-related-card:hover .avd-related-image img {
        transform: none;
    }
}

/* ==========================================
   BLOG DETTAGLIO - TAG ARTICOLO
========================================== */

.avd-page .avd-tags {
    margin-top: 38px;
    padding: 26px 0;
    border-top: 1px solid #E0EAE8;
    border-bottom: 1px solid #E0EAE8;
}

.avd-page .avd-tags-heading {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: #041F26;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.3px;
}

.avd-page .avd-tags-heading i {
    color: #169F99;
    font-size: 15px;
}

.avd-page .avd-tags-list {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.avd-page .avd-tag {
    display: inline-flex;
    align-items: center;
    padding: 9px 15px;
    border: 1px solid #DCEAE8;
    border-radius: 6px;
    background: #F4F8F7;
    color: #55777A;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    transition: all 0.25s ease;
}

.avd-page .avd-tag a {
    color: #55777A;
}


/* ==========================================
   STUDIO AVOLA - PAGINA CONTATTI
   Allineamento con modulo prenotazione
========================================== */

.page-contact-us.avola-contact-page .container-fluid,
.google-map.avola-contact-map .container-fluid {
    width: 100%;
    padding-left: 5%;
    padding-right: 5%;
}

/* Recapiti su due colonne, senza spazi eccessivi */
.avola-contact-page .contact-us-item-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
    align-content: start;
}

.avola-contact-page .contact-us-item {
    min-width: 0;
    flex-wrap: nowrap;
}

.avola-contact-page .contact-us-item-content {
    min-width: 0;
    overflow-wrap: anywhere;
}

/* Mappa a tutta la larghezza disponibile */
.avola-contact-map .google-map-iframe {
    width: 100%;
    height: 520px;
}

/* Tablet e smartphone */
@media (max-width: 991px) {
    .page-contact-us.avola-contact-page .container-fluid,
    .google-map.avola-contact-map .container-fluid {
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media (max-width: 767px) {
    .avola-contact-page .contact-us-item-list {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .avola-contact-map .google-map-iframe {
        height: 380px;
    }
}




/* ============================================
   STUDIO AVOLA - PAGINA 404
   ============================================ */

.av404-page {
    background: #F4F8F7;
}

.av404-section {
    padding: 90px 20px 100px;
    text-align: center;
}

.av404-container {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

/* Visual 404 */

.av404-visual {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 290px;
    margin-bottom: 30px;
}

.av404-number {
    font-size: clamp(150px, 23vw, 290px);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -12px;
    color: rgba(22, 159, 153, 0.10);
    user-select: none;
}

.av404-mascot {
    position: absolute;
    width: 280px;
    max-width: 60%;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 15px 22px rgba(4,31,38,.12));
}

/* Content */

.av404-content {
    max-width: 850px;
    margin: 0 auto;
}

.av404-subtitle {
    display: block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #169F99;
    margin-bottom: 20px;
}

.av404-content h1 {
    font-size: clamp(30px, 4vw, 52px);
    line-height: 1.2;
    font-weight: 700;
    color: #041F26;
    margin-bottom: 25px;
}

.av404-content h1 span {
    color: #169F99;
}

.av404-content p {
    font-size: 17px;
    line-height: 1.85;
    color: #55777A;
    max-width: 700px;
    margin: 0 auto 35px;
}

/* Buttons */

.av404-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

/* Help box */

.av404-help {
    display: flex;
    align-items: center;
    text-align: left;
    gap: 25px;
    margin-top: 85px;
    padding: 35px 40px;
    background: #FFFFFF;
    border: 1px solid rgba(22,159,153,.12);
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(4,31,38,.04);
}

.av404-help-icon {
    flex: 0 0 70px;
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #E6F7F5;
    color: #169F99;
    font-size: 30px;
}

.av404-help-text h2 {
    font-size: 23px;
    font-weight: 700;
    color: #041F26;
    margin-bottom: 10px;
}

.av404-help-text p {
    font-size: 15px;
    line-height: 1.7;
    color: #55777A;
    margin-bottom: 12px;
}

.av404-help-text a {
    color: #169F99;
    font-weight: 700;
    text-decoration: none;
}

.av404-help-text a:hover {
    color: #041F26;
}

.av404-help-text a i {
    margin-left: 7px;
}

/* Responsive */

@media (max-width: 767px) {

    .av404-section {
        padding: 55px 18px 70px;
    }

    .av404-visual {
        min-height: 210px;
        margin-bottom: 20px;
    }

    .av404-number {
        font-size: clamp(125px, 34vw, 190px);
        letter-spacing: -6px;
    }

    .av404-mascot {
        width: 200px;
        max-width: 65%;
    }

    .av404-content p {
        font-size: 15px;
        line-height: 1.75;
    }

    .av404-actions {
        flex-direction: column;
        align-items: center;
    }

    .av404-actions .btn-default {
        width: 100%;
        max-width: 310px;
        text-align: center;
    }

    .av404-help {
        flex-direction: column;
        text-align: center;
        gap: 18px;
        margin-top: 55px;
        padding: 30px 22px;
    }

    .av404-help-text h2 {
        font-size: 21px;
    }
}
