/*
	Theme Name: Xonex Child
	Description: Template della xonex web agency di roma
	Author: Staff Xonex
	Author URI: https://www.xonex.it/
	Version: 1.0.0
	Stable tag: 3.2.1
	Requires at least: 6.0
	Tested up to: 6.7
	Requires PHP: 7.4
	Text Domain: xonex

*/



@charset "utf-8";
/* CSS Document */


body {
    font-family: "Inter", Sans-serif;
}    

    

.cky-notice-btn-wrapper {
    row-gap: 10px;
}

.grecaptcha-badge
{
    opacity: 0;
}


/* inizio header */

.sezione-header-scrollata .sez-logo-header {
    box-shadow: 0 3px 3px -2px rgba(0, 0, 0, .25);
    background-color: #fff;
}

.consulenza-header {
    color: #fff;
    font-size: 12px;
}

.sez-esperto-header .elementor-icon-box-title span,
.sez-esperto-header .elementor-icon-box-description { 
    line-height: 10px;
}

.sez-esperto-header .elementor-icon-box-description { 
    font-size: 12px !important;
}

.sezione-header-scrollata {
    box-shadow: 0 3px 3px -2px rgba(0, 0, 0, .25);
}


/* fine header */


/* inizio elenco prestazioni */

.prestazioni-container {
    max-width: 900px;
    margin: 0 auto 30px auto;
    font-family: inherit;
}
.prestazioni-titolo {
    text-align: center;
    text-transform: uppercase;
    font-weight: 800;
    margin-bottom: 25px;
    font-size: 1.5rem;
    color: #000;
}
.prestazioni-lista {
    border-top: 1px solid #3ba354;
    border-bottom: 1px solid #3ba354;
}
.prestazione-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 15px;
    border-bottom: 1px solid #3ba354;
    background-color: #fff;
}
.prestazione-row:last-child {
    border-bottom: none;
}
.prestazione-row:nth-child(even) {
    background-color: #f6f6f6;
}
.prestazione-left {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    padding-right: 15px;
}
.prestazione-nome {
    font-weight: 600;
    text-transform: uppercase;
    font-size: 14px;
    color: #000;
}
.prestazione-info {
    font-size: 13px;
    color: #555;
    margin-top: 4px;
}
.prestazione-right {
    display: flex;
    align-items: center;
    gap: 25px;
    white-space: nowrap;
}
.prestazione-prezzo {
    font-weight: 700;
    font-size: 15px;
    color: #000;
}
.prestazione-cta {
    display: inline-flex;
    align-items: center;
    background-color: #40aa54;
    color: #fff;
    text-decoration: none;
    padding: 6px 14px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    transition: background-color 0.3s ease;
}
.prestazione-cta:hover, .prestazione-cta:focus {
    background-color: #318a42;
    color: #fff;
    text-decoration: none;
}
.prestazione-icon {
    width: 18px;
    height: 18px;
    margin-right: 8px;
}
@media (max-width: 650px) {
    .prestazione-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
    .prestazione-right {
        width: 100%;
        justify-content: space-between;
    }
}

/* fine elenco prestazioni */



/* inizio pulsante editor interno */

.pulsante-editor-interno {
    background-color: #F5C92C;
    font-size: 18px;
    font-weight: 700 !important;
    text-transform: none;
    fill: #1153A1 !important;
    color: #1153A1 !important;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.11) !important;
    padding: 10px 14px;
    display: block;
    border-radius: 24px;
    width: fit-content;
    min-width: 200px;
    text-align: center;
}

/* fine */




/* inizio contenuto pagina */

.testo-interno a {
    color: #1153a1;
    font-weight: 500;
    text-decoration: underline;
}

/* fine contenuto pagina */


/* inizio sezione header */

.header-stondato .elementor-motion-effects-container {
    border-radius: 35px;
}

/* fine sezione header */




/* --- INIZIO SEZIONE STAFF XONEX --- */

.cont-staff-xonex {
    margin: 0 auto;
    list-style: none;
    display: grid;
    /* 4 colonne di base per desktop */
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    width: 100%;
}

.col-staff-xonex {
    background-color: #ffffff;
    border-radius: 12px;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    /* Ombra elegante per staccare la card dallo sfondo */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    border: 1px solid #f2f2f2;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Effetto elegante al passaggio del mouse */
.col-staff-xonex:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.titolo-staff-xonex {
    font-size: 24px;
    font-weight: 600;
    line-height: 1.2em;
    color: #1a365d; /* Ripreso il tuo blu originale */
    margin-bottom: 8px;
}

.ruolo-staff-xonex {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4em;
    color: #666666;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Responsive: 2 colonne per tablet e smartphone */
@media screen and (max-width: 768px) {
    .cont-staff-xonex {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
        padding: 0 15px;
    }
    
    .col-staff-xonex {
        padding: 30px 15px;
    }
    
    .titolo-staff-xonex {
        font-size: 20px;
    }
    
    .ruolo-staff-xonex {
        font-size: 14px;
    }
}

/* Per smartphone molto piccoli (opzionale, se vuoi passare a 1 colonna) 
@media screen and (max-width: 480px) {
    .cont-staff-xonex {
        grid-template-columns: 1fr;
    }
}
*/

/* --- FINE SEZIONE STAFF XONEX --- */

/* inizio aggiuntive contenuto pagina */

.titolo-info-aggiuntiva {
    color: #1A365D;
    font-weight: 800;
    font-size: 16px;
    text-transform: uppercase;
    min-height: 50px;
    margin: 0;
}

.testo-info-aggiuntiva h4 {
    color: #1153a1;
    font-weight: 600;
    font-size: 17px;
    margin: 0;
    margin-bottom: 4px;
    font-style: italic;
}

.container-info-aggiuntive {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
}

.riga-info-aggiuntiva {
    row-gap: 5px;
    display: flex;
    flex-direction: column;
    border: solid 2px #1A365D;
    border-radius: 26px;
    padding: 12px 15px;
    background-color: #F0F4F8;
}

/* fine aggiuntive contenuto pagina */


/* inizio prima dopo widget */

.bafg-twentytwenty-container img,
.twentytwenty-overlay {
    border-radius: 30px;
}


/* inizio prima dopo singolo trattamento */

.container-pd-singolotrattamento {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
}

.riga-pd-singolotrattamento {
    background-color: #1153a1;
    border-radius: 30px;
}

.pd-singolotrattamento-cta a {
    padding: 20px;
    display: flex;
    text-align: center;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    color: #fff;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    text-decoration: underline;
    font-weight: 500;
    font-size: 18px;
}

.pd-singolotrattamento-titolo {
    color: #fff;
    text-align: left;
    font-size: 22px;
    font-weight: 500;
}

.pd-singolotrattamento-sottotitolo {
    color: #1153a1;
    background-color: #fff;
    border-radius: 20px;
    padding: 5px 15px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
}

/* fine prima dopo trattamento */


/* fine prima dopo widget */


/* inizio punti forza header */

.container-puntiforza-header {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
}    

.riga-puntoforza {
    display: flex;
    flex-direction: row;
    column-gap: 10px;
    align-items: center;
    color: #fff;
}    

.ico-puntoforza {
    width: 30px;
    height: 30px;
    background-color: #ffffff8a;
    border-radius: 50%;
    padding: 2px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}

.ico-puntoforza svg {
    width: 15px;
}

.ico-puntoforza svg path {
    color: #fff;
    fill: #fff;
}

/* fine punti forza header */


/* inizio punti forza pag interna */

.punti-forza-pag-interna .container-puntiforza-header {
    display: flex;
    flex-direction: column;
}

.punti-forza-pag-interna .titolo-puntoforza {
    color: #18191E;
}

.punti-forza-pag-interna .ico-puntoforza {
    background-color: #928AAB;
}

/* fine punti forza pag interna */

/* inizio servizi home */



.cont-servizi-home {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
}

.cont-servizi-home .col-servizi-home {
    position: relative;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    box-sizing: border-box;
}



.txt-servizi-home {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    display: flex;
    background-color: #D8E6F3;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
    border: solid 4px #1A365D;
}

.col-servizi-home:hover .txt-servizi-home,
.col-servizi-home:hover .txt-servizi-home {
    background-color: #d2eaef00 !important;
}





.col-servizi-home:hover .titolo-servizi-home,
.col-servizi-home:hover .cta-servizi-home {
    color: #fff !important;
}

.col-servizi-home:hover .cta-servizi-home svg {
    color: #fff;
    fill: #fff;
}

.sfondo-img-servizi-home img {
    vertical-align: top;
    width: 100%;
}

.col-servizio-home {
    width: 50%;
}

.col-servizi-home-icone img {
    vertical-align: top;
    width: 100%;
}

.txt-servizi-home,
.sfondo-img-servizi-home,
.col-servizi-home {
    border-radius: 25px;
}

.col-servizi-home-titoli {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 0px 0px 50px 35px;
    row-gap: 10px;
    position: relative;
    z-index: 10;
}

.titolo-servizi-home {
    color: #1A365D;
    font-size: 25px;
    line-height: 0.9em;
    font-weight: 600;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
    font-family: "Century Gothic", Sans-serif;
}

.cta-servizi-home {
    color: #1A365D;
    font-size: 20px;
    line-height: 0.9em;
    font-weight: 500;
    display: flex;
    column-gap: 10px;
    flex-direction: row;
    align-items: center;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
}

.cta-servizi-home svg {
    width: 15px;
    color: #1A365D;
    fill: #1A365D;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
}
/* fine servizi home */


/* inizio numero verde */

.box-numero-verde-desktop {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color: #ffffff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
    padding: 15px 25px;
    border-radius: 8px;
    z-index: 99999;
    display: flex;
    flex-direction: column;
    align-items: center;
    border: 1px solid #eaeaea;
    font-family: inherit;
}

.box-numero-verde-desktop .titolo-nv {
    font-size: 14px;
    color: #555555;
    margin-bottom: 8px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.box-numero-verde-desktop .pulsante-nv {
    background-color: #28a745;
    color: #ffffff;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 50px;
    font-weight: bold;
    font-size: 18px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 5px rgba(40, 167, 69, 0.3);
}

.box-numero-verde-desktop .pulsante-nv:hover {
    background-color: #218838;
    color: #ffffff;
    transform: translateY(-2px);
}

@media screen and (max-width: 768px) {
    .box-numero-verde-desktop {
        display: none !important;
    }
}

/* fine numero verde */



/* inizio punto elenco home */

.elenco-puntato-home .elementor-icon-list-item {
    background-color: #d2eaef2e;
    padding: 20px;
    border-radius: 15px;
    border-left: solid 4px #008c00;
    min-width: 500px;
    width: fit-content;
}




/* fine punto elenco home */




/* inizio metodo */

.col-indice-metodo {
    display: inline-block;
    width: 100%;
    position: relative;
}

.txt-indice-metodo {
    position: absolute;
    top: 0;
    width: 100%;
    padding: 20px 20px 0px 20px;
    z-index: 2;
}

.wrapper-indici-metodo {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
    padding: 0px 50px;
}

.img-indice-metodo {
    padding-top: 30px;
}

.img-indice-metodo img {
    vertical-align: top;
    width: 100%;
    border-radius: 8px;
    opacity: 0.8;
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}

.container-indice-metodo a:hover .img-indice-metodo img {
    opacity: 1;
}

.header-indice-metodo {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
}

.col-header-indice-metodo-dx {
    width: 50px;
    vertical-align: top;
}

.titolo-header-indice-metodo {
    color: #000418;
    font-size: 25px;
    line-height: 1.3em;
    display: flex;
    flex-direction: column;
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}


.container-indice-metodo a:hover .titolo-header-indice-metodo {
    color: #1153a1;
}


.col-header-indice-metodo-sx {
    width: calc(100% - 70px);
}

.titolo-header-indice-metodo strong {
    background-color: #9790AF;
    color: #fff;
    padding: 5px 10px;
    width: fit-content;
    border-radius: 8px;
    font-size: 20px;
    line-height: 1.3em;
}

.col-header-indice-metodo-dx img {
    width: 100%;
}

.container-indice-metodo a {
    display: block;
    border: solid 2px #dddddd;
    border-radius: 10px;
    background-color: #fff;
}

.container-metodo {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 50px;
}

.icona-ripetuta-metodo {
    width: 170px;
    vertical-align: top;
}

.row-metodo {
    padding: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 10px;
    width: 100%;
}

.row-metodo-dispari {
    background-color: #1153a1;
}

.titolo-metodo {
    font-size: 42px;
    margin: 0px;
    color: #fff;
}

.sottotitolo-metodo {
    font-size: 16px;
    color: #fff;
}

.container-info-metodo {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 50px;
    row-gap: 20px;
    width: 100%;
    max-width: 1050px;
    margin-top: 30px;
}

.col-info-metodo-dx {
    color: #fff;
}

.col-info-metodo-sx img {
    vertical-align: top;
    width: 100%;
    border-radius: 10px;
}

.cta-metodo {
    background-color: #F5C92C;
    font-size: 18px;
    font-weight: 700;
    color: #1153a1;
    border: solid 2px #F5C92C;
    border-radius: 25px;
    padding: 10px 20px 10px 20px;
    display: block;
    width: fit-content;
    margin-top: 20px;
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}

.cta-metodo:hover {
    background-color: #fff;
}

.col-info-metodo-dx h3 {
    margin: 0;
    margin-bottom: 20px;
}

.pagine-figlie-metodo .container-pagine-figlie {
    grid-template-columns: repeat(3, 1fr);
}

/* fine metodo */


/* inizio video */

.container-lista-video {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 30px;
    row-gap: 30px;
    margin: 0 auto;
    margin-bottom: 20px;
}

.singolo-video video {
    height: 560px;
    background-color: #928AAB;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center left;
    object-position: center left;
    width: 100%;
    border-radius: 10px;
    border: solid 2px #928AAB;
}

height: 573px;
    background-color: #000;

 /* fine video */



/* inizio cont carosello primadopo */

.cont-carosello-primadopo {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
}    

.col-carosello-primadopo {
    border: solid 1px #fff;
    border-radius: 20px;
    background-color: #1666c6;
}

.header-carosello-primadopo img {
    vertical-align: top;
    width: 100%;
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
}

.header-etichette-carosello-primadopo {
    position: absolute;
    bottom: 0;
    z-index: 5;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    padding: 20px;
}

.header-carosello-primadopo {
    position: relative;
}

.header-etichette-carosello-primadopo div {
    width: 120px;
    height: 20px;
    background-color: #fff;
    text-align: center;
    padding: 20px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    font-weight: 700;
    color: #1153a1;
}

.txt-carosello-primadopo {
    padding: 20px;
    row-gap: 5px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    color: #fff;
    font-size: 16px;
}

.titolo-txt-carosello-primadopo,
.servizio-txt-carosello-primadopo {
    display: flex;
    flex-direction: row;
}

.titolo-txt-carosello-primadopo strong, .servizio-txt-carosello-primadopo strong {
    width: 120px;
    display: block;
}

/* fine cont carosello primadopo */



/* inizio pagine figlie */

.container-pagine-figlie {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
    padding: 0px;
}

.container-pagine-figlie li {
    background-color: #fff;
    border-radius: 25px;
}

.titolo-pagine-figlie h3 {
    color: #1153a1;
    font-size: 24px;
    margin: 0;
}

.cta-pagine-figlie {
    border: solid 2px #1153a1;
    width: fit-content;
    padding: 2px 15px;
    border-radius: 20px;
    color: #1153a1;
    font-size: 15px;
}

.img-pagine-figlie img {
    vertical-align: top;
    border-top-left-radius: 25px;
    border-top-right-radius: 25px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center left;
    object-position: center;
    width: 100%;
    height: 300px;
}

.txt-pagine-figlie {
    padding: 20px;
    row-gap: 10px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
}

/* fine pagine figlie */

.pagine-figlie-articolo .container-pagine-figlie {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
    padding: 0px;
}


/* inizio anteprima archivio prima e dopo */

.cat-anteprima-archivio-pd {
    padding: 10px 15px;
    background-color: #fff;
    display: block;
    width: fit-content;
    border-radius: 25px;
    color: #1153a1;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 600;
}


.container-anteprima-archivio-pd {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    column-gap: 10px;
    justify-content: center;
}

.container-archivio-pd {
    display: flex;
    flex-direction: column;
}


.container-archivio-pd {
    display: flex;
    flex-direction: column;
    padding: 0px;
}

.titolo-cat-archivio-pd {
    font-size: 35px;
    font-weight: 600;
    color: #1153a1;
}

.testo-cat-archivio-pd {

}

.cta-cat-archivio-pd {
    margin-top: 40px;
}

.cta-cat-archivio-pd a {
    display: block;
    margin: 0 auto;
    color: #fff;
    background-color: #1153a1;
    width: fit-content;
    padding: 12px 20px;
    border-radius: 30px;
    font-weight: 600;
}

.container-singoli-short-archivio-pd {
    margin: 0 auto;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 100px;
    row-gap: 50px;
    width: 100%;
    margin-top: 20px;
}

.container-cat-archivio-pd {
    background-color: #D2EAEF2E;
    border-radius: 20px;
    padding: 50px;
}    

/* fine anteprima archivio prima e dopo */


/* inizio pagina archivio blog */

.categorie-articoli {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}


.categorie-articoli li a {
    width: 100%;
    background-color: #fff;
    color: #307bc4;
    border: solid 1px #d2eaef;
    display: block;
    padding: 8px 20px;
    border-radius: 40px;
    transition: all .2s ease-out;
    -webkit-transition: all .2s ease-out;
}


.categorie-articoli li a:hover {
    width: 100%;
    background-color: #d2eaef;
    color: #1153a1;
    border: solid 1px #d2eaef;
}

.contenuto-articolo a {
    color: #1153a1;
    font-weight: 600;
}

/* fine pagina archivio bloh */




/* inizio mega menu */

.xonex-mega-menu {
    display: flex;
    background: #fff;
    border-radius: 0px;
    overflow: hidden;
    min-height: 450px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .05);
    max-width: 100%;
    margin: 0 auto;
}

.xonex-mega-menu__sidebar {
    width: 380px;
    padding: 25px;
    background: #fafafa;
    border-right: 1px solid #eee;
    flex-shrink: 0;
}

.xonex-mega-menu__nav {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.xonex-mega-menu__item {
    margin-bottom: 8px;
    border-radius: 15px;
    transition: all 0.25s ease;
    color: #041540;
    font-weight: 600;
    overflow: hidden;
}

.xonex-mega-menu__item.is-active {
    background-color: #ededed;
    color: #000;
}

.xonex-mega-menu__link {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 12px 16px;
    text-decoration: none;
    color: #000;
    cursor: pointer;
    gap: 14px;
}

.xonex-mega-menu__thumb {
    width: 48px;
    height: 36px;
    border-radius: 6px;
    overflow: hidden;
    flex-shrink: 0;
}

.xonex-mega-menu__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.xonex-mega-menu__item-title {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
}

.xonex-mega-menu__content-wrap {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    background: #fff;
    width: calc(100% - 380px);
}

.xonex-mega-menu__panel {
    width: 100%;
    flex-grow: 1;
    display: none;
    text-decoration: none;
    color: inherit;
    animation: xonexFadeIn 0.3s ease-out;
}

.xonex-mega-menu__panel-active {
    display: flex;
}

@keyframes xonexFadeIn {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}

.xonex-mega-menu__text-side {
    flex: 0.7;
    padding: 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
}

.xonex-mega-menu__badge {
    background: #008c00;
    color: #fff;
    padding: 5px 15px;
    border-radius: 30px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.5px;
    margin-bottom: 20px;
}

.xonex-mega-menu__panel-title {
    font-size: 25px;
    font-weight: 700;
    color: #292929;
    line-height: 1.1;
    margin-bottom: 16px;
    font-family: "Glowstore", Sans-serif;
    text-transform: uppercase;
}

.xonex-mega-menu__desc {
    font-size: 16px;
    line-height: 1.4;
    color: #292929;
    margin-bottom: 20px;
}

.xonex-mega-menu__cta-icon {
    color: #ae7640;
    margin-top: auto;
}

.xonex-mega-menu__img-side {
    flex: 1.3;
    position: relative;
    min-height: 100%;
}

.xonex-mega-menu__img-side img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

@media (max-width: 1024px) {

    .xonex-mega-menu {
        flex-direction: column;
        min-height: auto;
    }

    .xonex-mega-menu__sidebar {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #eee;
    }

    .xonex-mega-menu__content-wrap {
        width: 100%;
    }

    .xonex-mega-menu__panel {
        flex-direction: column;
    }

    .xonex-mega-menu__img-side {
        width: 100%;
        height: 300px;
        flex: none;
    }

}
/* fine mega menu */


/* inizio faq */
.cont-spec-prodotto {
    margin: 0;
}

.accordion-contenitore {
    display: flex;
    flex-direction: column;
    row-gap: 5px;
}

/* Pannello che si apre */
.accordion-contenitore .panel {
    padding: 0 18px;
    background-color: white;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
    border-radius: 5px;
}


.accordion-contenitore .panel a {
    color: #000;
    font-weight: 600;
    text-decoration: underline;
}

/* Pulsante FAQ */
.accordion-contenitore .accordion {
    background-color: transparent;
    color: #fff;
    cursor: pointer;
    padding: 18px 0 !important;
    width: 100%;
    text-align: left;
    font-size: 16px;
    border: none;
    border-bottom: solid 1px #3e79be;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: 0.3s;
    gap: 10px;
    border-radius: 0px;
}

/* Wrapper interno: numero + titolo */
.accordion-title {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
}

/* Testo della FAQ */

.faq-home .titolo-faq {
    color: #18191E;
}

.titolo-faq {
    flex: 1;
    white-space: normal;
}

/* Cerchietto con numero */
.numero-faq {
    width: 30px;
    height: 30px;
    background-color: #008c00;
    border-radius: 50%;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 14px;
    box-sizing: border-box;
}

/* Freccia */
.accordion svg {
    width: 15px;
    fill: #fff;
    transition: transform 0.3s ease;
}

/* Ruota freccia se attivo */
.accordion.active svg {
    transform: rotate(90deg);
}

/* fine faq */




/* inizio testo a scacchiera */

.scacchiera-wrapper {
    width: 100%;
        font-family: "Century Gothic", Sans-serif;
}
.scacchiera-grid {
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.scacchiera-row {
    display: flex;
    align-items: center;
    gap: 50px;
}
.scacchiera-row:nth-child(even) {
    flex-direction: row-reverse;
}
.scacchiera-col-img {
    width: 50%;
    border-radius: 12px;
    overflow: hidden;
}
.scacchiera-col-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 4/3;
    display: block;
}
.scacchiera-col-txt {
    width: 50%;
    padding: 20px 0;
}
.scacchiera-title {
    font-size: 32px;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 20px;
    color: #1a365d;
    line-height: 1.2;
}
.scacchiera-content {
    font-size: 16px;
    line-height: 1.6;
    color: #555555;
}
.scacchiera-content p:last-child {
    margin-bottom: 0;
}
.scacchiera-cta-btn {
display: inline-block;
    margin-top: 25px;
    padding: 10px 28px;
    background: #1a365d;
    color: #ffffff;
    text-decoration: none;
    border-radius: 40px;
    font-weight: 600;
    font-size: 17px;
    transition: all 0.3s ease;
}
.scacchiera-cta-btn:hover {
    background: #ffcc00;
    color: #111111;
}
@media (max-width: 992px) {
    .scacchiera-row, .scacchiera-row:nth-child(even) {
        flex-direction: column;
        gap: 30px;
    }
    .scacchiera-col-img, .scacchiera-col-txt {
        width: 100%;
    }
    .scacchiera-title {
        font-size: 26px;
    }
}

/* fine testo a scacchiera */


/* inizio form */

.nascondo-data-form {
    display: none !important;
}

#richiedi-info .label-etichetta-form {
    color: #F7F8F8;
    font-size: 14px;
    margin-bottom: 6px;
    display: block;
    font-weight: 700;
}

#richiedi-info .etichetta-label {
    color: #000;
    text-transform: uppercase;
    font-size: 14px;
    margin-bottom: 5px;
    display: block;
    margin-top: 5px;
}    



#richiedi-info form {

}

#richiedi-info form label {
    width: 100%;
    width: 100%;
    margin-bottom: 12px;
}

#richiedi-info form option {
    color: #000;
}


#richiedi-info .wpcf7-form-control::placeholder {
    color: #000; /* Sostituisci con il colore desiderato */
    opacity: 0.6; /* Assicura che il colore sia visibile su alcuni browser */
}


#richiedi-info form label input {
    padding: 8px 15px;
    border-color: #424242d4;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 500;
    text-transform: initial;
    background-color: #fff;
    color: #424242d4;
}

#richiedi-info form select {
    border-color: #BFB9AA;
    border-radius: 8px;
    background-color: #ffffff42;
    color: #fff;
}

#richiedi-info form label textarea {
    border-radius: 8px;
    font-size: 15px;
    font-weight: 500;
    max-height: 180px;
    background-color: #fff;
    border-color: #424242d4;
    color: #424242d4;
}

#richiedi-info form .wpcf7-submit {
    background-color: #1a365d;
    color: #fff;
    border-color: #1a365d;
    padding: 12px 4px;
    font-size: 18px;
    width: 100%;
    border-radius: 30px;
    font-weight: 600;
}

form .wpcf7-acceptance input[type="checkbox"] {
    width: 22px;
    height: 22px;
}

form .wpcf7-acceptance label {
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
    column-gap: 8px;
    font-size: 14px;
    color: #424242;
    font-weight: 500;
}

#richiedi-info form .wpcf7-acceptance a {
    color: #fff;
    text-decoration: underline;
}

#richiedi-info form .wpcf7-submit:hover {
    background-color: #000;
    color: #fff;    
}

#richiedi-info form .wpcf7-acceptance {
}

#richiedi-info form .wpcf7-acceptance a {
    text-decoration: underline;
    color: #424242;
}



#richiedi-info {
    column-gap: 30px;
}


.richiedi-info-minimal .richiesta-form {
    display: none;
}

.col-form-sx {
    background: radial-gradient(100% 50% at 0% 0%, rgba(11, 114, 185, 0.8) 0%, rgba(0, 3, 15, 0) 100%);
}


#richiedi-info .cta-invia-richiesta p {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: flex-end;
}

#richiedi-info .cta-invia-richiesta .wpcf7-submit {
    width: 50%;
}

#richiedi-info .wpcf7-file {
    width: 100%;
}


/* fine form */



/* inizio form appuntamento */

.scelta-step-2 .wpcf7-form-control {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
    row-gap: 15px;
}

.scelta-step-2 .wpcf7-form-control label {
    border: 2px solid #e9ecef;
    border-radius: 12px;
    padding: 12px;
    cursor: pointer;
    text-align: center;
    transition: border .2s, box-shadow .2s;
    min-width: 320px;
    background: #fff;
    text-transform: uppercase;
    color: #000;
    font-weight: 700;
}

 
    
.form-prenota-app fieldset {
    border: none;
}

.form-prenota-app .cf7-step-label {
    display: none;
}

.form-prenota-app .titolo-filed-form {
    text-transform: uppercase;
    text-align: center;
    font-size: 34px;
    color: #000;
    font-weight: 600;
}

.form-prenota-app fieldset {
    border: none;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    width: 100%;
}

.cf7-nav button {
    background-color: #f5c92c;
    border: none;
    width: 300px;
    text-align: center;
    color: #1153a1;
}

.cf7-nav button.cf7-prev {
    background-color: #ebebeb;
}


.cf7-nav button:hover {
    background-color: #1153a1;
    color: #fff;
}

.form-prenota-app .cf7-card-select-wrapper {
    display: flex;
    column-gap: 40px;
    flex-direction: row;
    justify-content: center;
    flex-wrap: nowrap;
}

.form-prenota-app input {
    padding: 8px 15px;
    border-color: #424242d4;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 500;
    text-transform: initial;
    background-color: #fff;
    color: #424242d4;
}

.form-prenota-app label {
    width: 100%;
}


.form-prenota-app fieldset p {
    display: flex;
    width: 100%;
    justify-content: center;
    flex-direction: column;
    max-width: 500px;
}

/* fine form appuntamento */


/* inizio cta mobile */



.cta-mobile-full {
    position: fixed;
    z-index: 100;
    bottom: 0;
    right: 0;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
    width: 100%;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
}

.posizione-cta-mobile-nulla {
    right: -100px;
}


.posizione-cta-mobile-bassa {
    right: 0px;
}

.container-cta-mobile {
    margin-bottom: 75px;
    margin-right: 10px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    row-gap: 10px;    
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
    width: fit-content;
}

.container-cta-preventivo-mobile {
    transition: all .3sease-out;
    -webkit-transition: all .3sease-out;
    will-change: bottom;
    transition: bottom .3sease-out;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    background-color: #fffffffa;
    padding: 10px 20px;
    width: 100%;
}

.container-cta-mobile .mobile-telefono {
    background-color: #f5c92c;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out; 
    border-color: #c2c2c2 !important;   
}

.container-cta-mobile .mobile-whatsapp {
    background-color: #5cb85c;
    border-color: #5cb85c !important;
}

.container-cta-mobile .mobile-telefono span {
    color: #000 !important;
}


.container-cta-mobile .pulsante-mobili {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    padding: 10px;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    row-gap: 4px;
    box-shadow: 0 5px 15px #0000004d;
    transition: all .3sease-out;
    -webkit-transition: all .3sease-out;
    cursor: pointer;
    border: solid 1px;
}

.container-cta-mobile .mobile-telefono.pulsante-mobili {

}

.container-cta-mobile .pulsante-mobili img {
    width: 25px;
    vertical-align: top;

} 

.container-cta-mobile .mobile-whatsapp img {
    filter: brightness(0) invert(1) grayscale(100%);
}

.container-cta-mobile .pulsante-mobili span {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    line-height: 1.3em;
    color: #fff;
}    

.mobile-email {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    background-color: #d2eaef;
    width: 100%;
    padding: 8px 10px;
    border-radius: 8px;
    column-gap: 15px;
}

.mobile-email img {
    width: 25px;
    vertical-align: top;
}


.mobile-email span {
    color: #1153a1;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 700;
}

.nascondi-preve-mobile {
    position: fixed;
    z-index: 5;
    left: 0;
    bottom: -5rem;
    width: 100%;
    padding: 1rem 1.5rem;
    box-shadow: 0 5px 12px #0003;
    background-color: #fff;
    transition: all .3s;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
}

.nascondi-tutte-cta-mobile {
    display: none;
}

.mostra-preve-mobile {
    bottom: 0;
    transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
    position: fixed;
    z-index: 100;
}

.posizione-cta-mobile-alta {
    margin-bottom: 90px;
}


/* fine cta mobile */



/* inizio mobile */

.sffm-flymenu-trigger {
    display: none;
}

.sffm-header-image img {
    width: 170px;
}

.menu-sottolineato-mobile .sffm-menu-item-title {
    text-decoration: underline;
    color: #1153a1;
}


@media only screen and (max-width: 1350px) {

    .titolo-header-indice-metodo {
        font-size: 18px;
    }

}


@media only screen and (max-width: 1300px) {

    .container-full-mega-menu {
        padding: 20px 10px;
    	column-gap: 10px;
    }

    .col-testuale-mega-menu {
        width: calc(100% - 220px);
        padding: 0px 10px;
    }
    
    .col-voci-mega-menu {
        column-gap: 10px;
    }
    
    .titolo-header-full-mega-menu {
        font-size: 20px;
    }
    
    .cta-header-full-mega-menu a {
        font-size: 16px;
        width: fit-content;
    }
    
    .col-singola-mm {
        padding-right: 10px;
    }
    
    
}

@media only screen and (max-width: 1200px) {


    .wrapper-indici-metodo {
	grid-template-columns: repeat(2, 1fr);
    }

    .cont-servizi-home {
        gap: 10px;
        row-gap: 15px;
	        grid-template-columns: repeat(2, 1fr);
    }
    

    
}

@media only screen and (max-width: 1100px) {

    .container-cat-archivio-pd {
        padding: 20px 10px;
    }


    .container-anteprima-archivio-pd {
        margin: 0 auto;
        list-style: none;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 10px;
        row-gap: 5px;
        width: 100%;
    }
    
    .titolo-cat-archivio-pd {
        font-size: 30px;
    }
    
    .container-singoli-short-archivio-pd {
        grid-template-columns: repeat(1, 1fr);
    }
    
    .cat-anteprima-archivio-pd {
        padding: 10px 10px;
        width: 100%;
        font-size: 12px;
        text-align: center;
    }

    .container-lista-video {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 10px;
        row-gap: 10px;
    }
    
    
    
    .container-pd-singolotrattamento {
        grid-template-columns: repeat(1, 1fr);
    }
    
    
}


@media only screen and (max-width: 800px) {



    .cont-servizi-home {
        gap: 10px;
        row-gap: 15px;
	        grid-template-columns: repeat(1, 1fr);
    }
    

    
}

@media only screen and (max-width: 750px) {

    .wrapper-indici-metodo {
        grid-template-columns: repeat(1, 1fr);
        padding: 0px 10px;
    }
    
    .titolo-metodo {
        font-size: 28px;
        margin: 0px;
        color: #fff;
    }
    
    .row-metodo {
        padding: 50px 10px;
    }
    
    .container-info-metodo {
        grid-template-columns: repeat(1, 1fr);
        column-gap: 50px;
        row-gap: 20px;
        width: 100%;
        max-width: 1050px;
        margin-top: 30px;
    }


    .video-slide-home video {
        object-fit: cover !important;
        transform: scale(1.3) !important;
        transform-origin: center center;
        pointer-events: none;
        top: -2% !important;
        left: 2% !important;
    }

    .cat-anteprima-archivio-pd {
        padding: 6px 4px;
        width: 100%;
        font-size: 12px;
        text-align: center;
    }
    
    .container-anteprima-archivio-pd {
        column-gap: 2px;
        row-gap: 10px;
    }

    .header-stondato .elementor-motion-effects-container {
        border-radius: 20px;
    }

    .container-puntiforza-header {
        grid-template-columns: repeat(1, 1fr);
    }


    .container-pagine-figlie {
        grid-template-columns: repeat(1, 1fr);
    }
    
    .container-info-aggiuntive {
        column-gap: 5px;
        row-gap: 20px;
        grid-template-columns: repeat(1, 1fr)
    }
    
    .titolo-info-aggiuntiva {
        min-height: initial;
    }


 

    #richiedi-info .cta-invia-richiesta .wpcf7-submit {
        width: 100%;
    }


    .singolo-video video {
        height: 300px;
    }

    .col-servizi-home {
        width: 100% !important;
    }
    
    .col-servizi-home-titoli {
        padding: 0px 0px 40px 20px;
    }
    
    .elenco-puntato-home .elementor-icon-list-item {
        padding: 10px 10px;
        border-left: solid 4px #307BC5;
        min-width: initial;
        display: flex;
        flex-direction: row;
        align-items: center;
        width: 100%;
    }
    
    .elenco-puntato-home .elementor-icon-list-item:nth-child(2) {
        margin-left: 15px;
        width: calc(100% - 15px) !important;
    }
    
    .elenco-puntato-home .elementor-icon-list-item:nth-child(3) {
        margin-left: 25px;
        width: calc(100% - 25px) !important;
    }
    
    .elenco-puntato-home .elementor-icon-list-text {
        width: 100%;
        font-size: 14px !important;
    }
    
    .col-servizi-home-titoli {
        padding: 0px 0px 25px 10px; 
    }
    
    .col-servizi-home-icone {
  
    }
    
    .titolo-servizi-home {
        font-size: 18px;
        line-height: 1.1em;
    }
    
    .cta-servizi-home {
        font-size: 15px;
    }
    
    .txt-carosello-primadopo {
        padding: 5px;
	font-size: 14px;
    }
    
    .titolo-txt-carosello-primadopo strong, .servizio-txt-carosello-primadopo strong {
        width: 100px;
        display: block;
    }
 
    
    
}


.cky-revisit-bottom-left {
    bottom: 75px !important;
}

