

/* Button Primary */

.w-btn-wrapper {
    margin: 0;
}

.w-btn-wrapper:has(.button--primary) {
    width: 100%;
}

.button--primary {
    width: 100%;
    border-bottom-width: 2px !important;
    border-bottom-style: solid;
    padding: 0 !important;
    padding-bottom: 19px !important;
    text-align: left;
    position: relative;
    margin-top: 16px;
    margin-bottom: 0px;
}

.button--primary span {
    max-width: 40%;
}

.button--primary span {
    transform: translateX(0%);
    transition: transform 0.4s ease;
}

.button--primary:hover span {
    transform: translateX(2em);
}



.w-btn.button--primary::before,
.w-btn.button--primary::after {
    content: "";
    position: absolute;
    top: 30%;
    right: 25px;
    left: auto;
    
    width: 25px;
    height: 5px;
    
    background-color: var(--color-alt-content-primary);
    
    transform-origin: center center !important;
    transition: transform 0.3s ease, width 0.3s ease, background-color 0.3s ease !important;
}

.w-btn.button--primary::before {
    transform: translateY(-50%) rotate(0deg) !important;
}

.w-btn.button--primary::after {
    transform: translateY(-50%) rotate(90deg) !important;
}


.w-btn.button--primary:hover::before,
.w-btn.button--primary:hover::after {
    background-color: #FF8A53;
    width: 14px !important;
}

/* Ruota di 45° in senso orario e si sposta leggermente a sinistra per far perno sulla punta */
.w-btn.button--primary:hover::before {
    transform: translateY(-50%) rotate(45deg) translateX(-5.5px) !important;
}

/* Ruota di 135° (ovvero 90° + altri 45° sempre in senso orario) e si allinea sotto */
.w-btn.button--primary:hover::after {
    transform: translateY(-50%) rotate(135deg) translateX(5.5px) !important;
}



/* Button sections */
/* --------------- */

.w-btn.button--section span {
    max-width: 80%;
}

.w-btn.button--section:hover::before {
    transform: translateY(-50%) rotate(-45deg) translateX(-5.5px) !important;
}

.w-btn.button--section:hover::after {
    transform: translateY(-50%) rotate(45deg) translateX(-5.5px) !important;
}





/* Pulsanti Paginazione */
/* -------------------- */

a.page-numbers {
    text-decoration: unset;
}

a.page-numbers:hover a.page-numbers {
    color: red;
}

a.page-numbers.next:hover a.page-numbers.next::after {
    color: var(--color-content-secondary) !important;
}





/* Pulsanti accordion FAQ */
/* ---------------------- */

.afs-builder__item {
    border-width: 0 !important;
    border-bottom: 3px solid var(--color-content-primary) !important;
    margin-top: 2rem;
    box-shadow: none !important;
    border-radius: 0 !important;
}

.afs-builder__trigger {
    padding-left: 0 !important;
    padding-right: 0 !important;
    position: relative;
}

.afs-builder__title {
    font-size: 1.563rem !important;
    font-weight: 400 !important;
}

.afs-builder__body {
    font-size: 1.125rem;
    padding: 1em .5em !important;
}

.afs-builder__icon {
    background-color: transparent !important;
    
}

.afs-builder__icon::before,
.afs-builder__icon::after {
    content: "";
    position: absolute !important;
    top: 30% !important;
    right: 25px !important;
    left: auto !important;
    width: 25px !important;
    height: 5px !important;
    background-color: var(--color-alt-content-primary) !important;
    border-radius: 0 !important;
    transform: rotate(0deg) !important;
}

.afs-builder__icon::before {
    transition: transform .5s ease;
}

.afs-builder__icon::after {
    transform: rotate(90deg) !important;
    transition: transform .5s ease;
    opacity: 1 !important;
}

/* @note trucco per far funzionare le animazioni */
.afs-builder__item--is-open .afs-builder__icon {
    transform: rotate(0deg) !important;
}

.afs-builder__item--is-open .afs-builder__icon::before {
    transform: rotate(180deg) !important;
}

.afs-builder__item--is-open .afs-builder__icon::after {
    transform: rotate(360deg) !important;
}


@media screen and (max-width: 425px) {
    
    .faq-wrapper .w-tabs-section-control {
        margin-left: 2em !important;
    }

    .afs-builder__item {
        margin-left: 1rem;
        margin-right: 1rem;
    }

}