@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600&display=swap');

:root{
    --blue: #00b8b8;
    --light-blue: #7adcdc;
    --dark-blue: #007171;
    --shine-blue: #66ffff;
    --black: #444;
    --white: #fff;
    --light-color: #666;
    --light-bg: #eee;
    --green: #25d366;
    --dark-green: #075e54;
    --border: .2rem solid rgba(0,0,0,.1);
    --box-shadow: 0 .5rem 1rem rgba(0, 0, 0, 0.2);
    --box-shadow-strong: 0 .5rem 1rem rgba(0, 0, 0, 0.3);
    --text-shadow: 0rem .1rem .3rem rgba(0, 0, 0, 0.9);
  }

*{
    font-family: 'Poppins', sans-serif;
    margin: 0; padding: 0;
    box-sizing: border-box;
    outline: none; border: none;
    text-decoration: none !important;
}

*::-webkit-scrollbar{
    height: .5rem;
    width: 1rem;
}

*::-webkit-scrollbar-track{
    background-color: transparent;
}

*::-webkit-scrollbar-thumb{
    background-color: var(--blue);
}

html{
    font-size: 65%;
    overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-padding-top: 6.5rem;
}

section{
    padding: 7rem 2rem;
}

.tab {
    display: inline-block;
    margin-left: 4rem;
}

.heading {
    text-align: center;
    font-size: 4rem;
    margin-bottom: 3rem;
    color: var(--black);
    text-transform: uppercase;
    font-weight: bolder;
}

.heading.mod {
    color: var(--blue);
    margin-top: -3rem;
    font-size: 2.5rem;
    letter-spacing: .6rem;  
    font-weight: 500;
    
}

.call-btn{
    display: inline-block;
    padding: 1rem 2rem;
    margin-bottom: 1rem;
    border-radius: .5rem;
    background-color: var(--light-color);
    cursor: pointer;
    font-size: 1.7rem;
    color: var(--white);
    box-shadow: var(--box-shadow);

    text-align: center;
    width: 30%;
}

.call-btn:hover{
    /* background-color: var(--black); */
    color: var(--white);
    opacity: .8;
}

.wa-btn{
    display: inline-block;
    padding: 1rem 2rem;
    margin-left: .4rem;
    margin-bottom: 1rem;
    border-radius: .5rem;
    background-color: var(--green);
    cursor: pointer;
    font-size: 1.7rem;
    color: var(--white);
    box-shadow: var(--box-shadow);

    text-align: center;
    width: 30%;
}

.wa-btn:hover{
    /* background-color: var(--dark-green); */
    color: var(--white);
    opacity: .8;
}

.link-btn{
    display: inline-block;
    padding: 1rem 2rem;
    margin-bottom: 1rem;
    border-radius: .5rem;
    background-color: var(--blue);
    cursor: pointer;
    font-size: 1.7rem;
    color: var(--white);
    box-shadow: var(--box-shadow);

    text-align: center;
    width: 61%;
}

.link-btn:hover{
    color: var(--white);
    opacity: .8;
}

.header{
    padding: 2rem;
    /* border-bottom: var(--border); */
    /* backdrop-filter: blur(1rem); */
    background-color: var(--white);
    box-shadow: var(--box-shadow);
    border: 0;
}

.header.active{
    background-color: var(--white);
    box-shadow: var(--box-shadow);
    border: 0;
}

.header .logocontainer{
    display: flex;
    flex-wrap: wrap;
    width: 22rem;
}

.header .logo{
    font-size: 2rem;
    color: var(--black);
    flex: 1 0 33%;

    background-image: url("../images/psychology.png");
    background-repeat: no-repeat;
    background-position: .2rem .6rem;
    background-size: 1.6rem;
    padding-left: 2.4rem;
    display: block;
}
.header .logodesc{
    font-size: 1rem;
    color: var(--black);
    flex: 1 0 33%;
    padding-left: .4rem;
}

.header .logo .dott{
    font-weight: 200;
}

.header .logo .surname{
    /* color: var(--blue); */
    background: linear-gradient(90deg, var(--blue), var(--blue), var(--blue), var(--blue), 
                var(--blue), var(--blue), var(--blue), var(--blue), var(--blue), var(--blue),
                var(--blue), var(--blue), var(--blue), var(--blue), var(--blue), var(--blue), 
                var(--blue), var(--blue), var(--shine-blue), var(--blue));
    background-size: 400%;
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    animation: animate 12s linear infinite;
}
@keyframes animate{
    0%{
        background-position: 0%;
    }
    100%{
        background-position: 400%;
    }  
}

.header .nav a{
    margin: 0 1rem;
    font-size: 1.7rem;
    color:var(--black);
}

.header .nav a:hover{
    color:var(--blue)
}

#menu-btn{
    font-size: 2.5rem;
    color: var(--black);
    cursor: pointer;
    display: none;
}

.wa-btn-mini{
    display: inline-block;
    padding: 1rem 2rem;
    border-radius: .5rem;
    background-color: var(--green);
    cursor: pointer;
    font-size: 1.7rem;
    color: var(--white);
    box-shadow: var(--box-shadow);
}

.wa-btn-mini:hover{
    color: var(--white);
    opacity: .8;
}

.home{
    background: url(../images/01_main.jpg) no-repeat;
    background-size: cover;
    background-position: center;
    background-position-y: 5rem;
}

.home .content{
    width: 70rem;
    margin-top: 8rem;  /* TOP SPACE */
}

.home .content img{
    width: 30rem;
    margin-bottom: 1.2rem;
    box-shadow: var(--box-shadow);
    border-radius: .5rem;
    display: none;
}

.home .content h3{
    font-size: 3.6rem;
    color: var(--black);
    letter-spacing : -.2rem;
}

.home .content h3 em{
    font-style: normal;
    font-weight: 200;
}

.home .content span{
    font-size: 2rem;
    text-transform: uppercase;
    color: var(--light-color);
    color: var(--blue);
}

.home .content p{
    line-height: 2;
    font-size: 1.9rem;
    color: var(--light-color);
    padding: 1rem 0;
    margin-top: .8rem;
}

.home .content p i{
    width: 3.5rem;
    /* text-align: center; */
}

.home .content p .phone-number{
    color: var(--light-color);
}

.about .row{
    min-height: 50vh;
}

.about .content{
    padding-inline: 1rem;
}

.about .content .par{
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.about .content span{
    font-size: 2rem;
    color: var(--blue);
}

.about .content h3{
    font-size: 3rem;
    color: var(--black);
    margin-top: .5rem;
}

.about .content p{
    padding: .3rem 0;
    font-size: 1.5rem;
    color: var(--light-color);
    line-height: 1.7;
}

.about .content p a, .about .content p a:link{
    color: var(--blue);
    background-color: transparent;
    text-decoration: none;
}

.about .image .img{
    width: 99%;
    box-shadow: var(--box-shadow);
}

.services{
    background-color: var(--light-bg);
}

.services .box-container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    gap: 2rem;
}

.services .box-container .box{
    text-align: center;
    padding: 2rem;
    background-color: var(--white);
    box-shadow: var(--box-shadow);
    border-radius: .5rem;
}

.services .box-container .box a{
    /* color: var(--blue); */

    background: linear-gradient(90deg, var(--blue), var(--blue), var(--blue), var(--blue), 
    var(--blue), var(--blue), var(--blue), var(--blue), var(--blue), var(--blue),
    var(--blue), var(--blue), var(--blue), var(--blue), var(--blue), var(--blue), 
    var(--blue), var(--blue), var(--shine-blue), var(--blue));
    background-size: 800%;
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    animation: animate 16s linear infinite;

    margin: 1rem 0;
}

.services .box-container .box h3{
    font-size: 2rem;
    padding: 1rem 0;
    color: var(--black);
}

.services .box-container .box p{
    font-size: 1.5rem;
    color: var(--light-color);
    line-height: 2;
}

.carousel{
    position: relative;
    height: 66vh;
    width: 60%;
    margin: 0 auto;
    padding-bottom: 4rem;
}

.carousel_image{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.carousel_track-container{
    height: 100%;
    position: relative;
    box-shadow: var(--box-shadow);
    overflow: hidden;
}

.carousel_track{
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
    height: 100%;
    transition: transform 500ms ease-in;
}

.carousel_slide{
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100%;
}

.carousel_button{
    position: absolute;
    top: 50%;
    background: transparent;
    transform: translateY(-50%);
    border: 0;
    cursor: pointer;
}

.carousel_button-left{
    left: -4rem;
}

.carousel_button-right{
    right: -4rem;
}

.carousel_button i{
    height: 3rem;
    width: 3rem;
    font-size: 3rem;
    color: var(--blue);
}

.carousel_nav{
    display: flex;
    justify-content: center;
    padding: 2rem 0;
}

.carousel_indicator{
    border: 0;
    border-radius: 50%;
    width: 1.5rem;
    height: 1.5rem;
    background: var(--light-bg);
    margin: 0 1rem;
    cursor: pointer;
}

.carousel_indicator.current-slide{
    background: var(--blue);
    box-shadow: var(--box-shadow);
}

.arrow-off i{
    color: var(--light-bg);
}

.contact{
    background-color: var(--light-bg);
}

.contact .maps-text{
    position: absolute;
    left:0;
    right:0;
    top: 14rem;
    font-size: 1.5rem;
    color: #aaaaaa;
    text-shadow: .1rem .1rem var(--white);
}

.contact .iframe_map{
    box-shadow: var(--box-shadow);
    border-radius: .5rem;
    position: relative;
}

.contact .row{
    min-height: 50vh;
}

.contact .content span{
    font-size: 2rem;
    color: var(--blue);
}

.contact .content h3{
    font-size: 3rem;
    color: var(--black);
}

.contact .content p{
    padding: 0 0 2rem;
    font-size: 1.5rem;
    color: var(--light-color);
}

.contact .content p a{
    color: var(--light-color);
}

.contact .container .maps{
    text-align: center;
    padding-bottom: 4rem;
}

.contact .container .maps p{
    color: var(--light-color);
    margin-top: 1rem;
    font-size: 1.2rem;
}

.contact .buttons {
    margin-top: 3rem;
}

.contact .call-btn, .contact .link-btn, .contact .wa-btn {
    width: 100%;
    margin-inline: 0;
}

.contact iframe:not(.iframe_map) {
    height: 780px !important;
}

.row-contact{
    width: 280rem;
}

.footer{
    background-color: var(--blue);
    color: var(--white);
    padding: 4rem 2rem;
}

.footer .box-container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(25rem, 2fr));
    gap: 2rem;
    margin-bottom: 2rem;
}

.footer .box-container .box{
    text-align: center;
}

.footer .box-container .box i{
    height: 4rem;
    width: 4rem;
    border-radius: 50%;
    line-height: 4rem;
    font-size: 2rem;
    background-color: var(--white);
    color: var(--blue);
    margin-bottom: 1rem;
}

.footer .box-container .box h3{
    font-size: 1.5rem;
    margin: .5rem 0;
    color: var(--white);
}

.footer .box-container .box p{
    font-size: 1.2rem;
    color: var(--light-bg);
    text-transform: none;
    line-height: 1.5;
}

.footer .box-container .box p a{
    color: var(--light-bg);
}

.footer .c-and-p{
    margin-inline: 6rem;
    border-top: var(--border);
    column-gap: 4rem;
}

.footer .credit, .footer .privacy-and-cookie-policy{
    margin-top: 2rem;
    font-size: 1.5rem;
    color: var(--light-bg);
    padding-bottom: 1rem;
}

.footer .credit{
    margin-right: 3rem;
}

.footer .privacy-and-cookie-policy a{
    text-transform: uppercase;
    /* color: var(--light-bg); */
    color: var(--dark-blue);
    font-weight: bold;
    text-shadow: .1rem .1rem var(--light-blue);
}

.footer .privacy-and-cookie-policy a:hover{
    opacity: .8;
}

.footer .privacy-and-cookie-policy a.pp{
    margin-right: 1.5rem;
}

.sale{
    text-align: center;
    background: linear-gradient(90deg, #d4af37, #d4af37, #e2c564, #d4af37, #d4af37);
    background-size: 200%;
    animation: animate 5s linear infinite;

    box-shadow: var(--box-shadow);
    border-radius: .5rem;
    width: 61%;
    margin-top: 2rem;
    margin-bottom: 2rem;
    padding: 1rem;
    color: var(--white);
    display: none;
    text-shadow: var(--text-shadow);
}

.sale h2{
    margin: 0.5rem;
    font-size: 2.2rem;
    font-weight: 800;
}

.sale h4{
    font-size: 1.75rem;
    font-weight: 300;
}

.sale div{
    font-weight: 400;
    border-top: var(--border);
    padding-top: 1rem;
    margin-top: 1rem;
}

form{
    display: flex;
    flex-direction: column;
    margin-top: 2rem;
}

.contact em{
    font-size: 2rem;
    color: var(--blue);
    font-style: normal;
    margin-bottom: 2rem!important;
}

form input, form textarea{
    border: 0;
    margin-bottom: 2rem;
    padding: 1rem 1.5rem 1rem 1.5rem;
    outline: none;
    background: var(--white);
    color: var(--black);
    font-size: 1.5rem;
    border-radius: .5rem;
    box-shadow: var(--box-shadow);
    resize: none;
}

form button{
    display: inline-block;
    padding: 1rem 2rem;
    border-radius: .5rem;
    background-color: var(--blue);
    cursor: pointer;
    font-size: 1.7rem;
    color: var(--white);
    box-shadow: var(--box-shadow);
    text-align: center;
    width: 100%;
    margin-top: 1rem;
    margin-bottom: 2rem;
    margin-left: auto;
    margin-right: auto;
    display:block;
    font-weight: 400;
}

form button:hover{
    color: var(--white);
    opacity: .8;
}

#email-form-success{
    display: none;
}

/* inizio banner terapia */

.card-banner {
    width: 61%;
    height: 25rem;
    position: relative;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: var(--box-shadow);;
    background-image: url("../images/terapia.jpg");
    background-size: cover;
    background-position: center 40%;
    margin-top: 3.5rem;
    box-shadow: var(--box-shadow-strong);
    text-shadow: var(--text-shadow);
    cursor: pointer;
}

.card-banner::before {
    pointer-events: none;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, #ffffff00, #ffffff00, #ffffff00, #ffffff00, #ffffff00, #ffffff00,
                                        #ffffff00, #ffffff00, #ffffff50, #ffffff00, #ffffff00,
                                        #ffffff00, #ffffff00, #ffffff00, #ffffff00, #ffffff00, #ffffff00);
    background-size: 400%;
    z-index: 1;
    opacity: 0.7;
    transition: opacity 0.3s ease;
    animation: animate 9s linear infinite;
}

.card-banner:hover{
    opacity: .8;
}

.card-banner.gruppo1:hover, .card-banner.gruppo2:hover{
    opacity: 1;
    cursor: default;
}

.tag-novita {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background-color: #d4af37b6;
    color: var(--white);
    font-size: 1.3rem;
    font-weight: 600;
    padding: 0.3rem 0.6rem;
    border-radius: 1rem;
    text-transform: uppercase;
}

.tag-info {
    position: absolute;
    top: 1.5rem;
    left: 1.5rem;
    background-color: #00000070;
    color: var(--white);
    font-size: 1.3rem;
    font-weight: 600;
    padding: .5rem;
    padding-inline: 1rem;
    border-radius: 1rem;
    text-transform: uppercase;
    line-height: 2.2rem;
}

.tag-info a{
    /* color: var(--white);
    margin-right: 1rem;
    width: 2rem;
    height: 2rem; */

    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 1.5rem;
    height: 1.5rem;
    font-size: 1.2rem;
    color: var(--white);
    margin-right: .5rem;
}

.card-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1.8rem;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8)); 
    color: white;
    padding-top: 5rem;
}

.card-content h2 {
    margin: 0 0 0.5rem;
    font-size: 2.4rem;
    font-weight: 600;
    text-transform: uppercase;
}

.card-content h3 {
    margin: 0 0 0.5rem;
    font-size: 2.4rem;
    font-weight: 600;
    text-transform: uppercase;
}

.card-content h3 .fa-solid {
    font-size: 2rem;
    color: white;
    margin-right: 1rem;
}

.card-content p {
    margin: 0 0 1rem;
    font-size: 1.5rem!important;
    color: var(--white)!important;
    padding: 0!important;
    font-weight: 300;
    text-align: left;
}

.new-btn{
    display: inline-block;
    padding: 1rem 2rem;
    margin: 2rem;
    border-radius: .5rem;
    background-color: var(--blue);
    font-size: 1.7rem;
    color: var(--white);
    box-shadow: var(--box-shadow);
    text-align: center;
    position: absolute;
    bottom: 0;
    right: 0rem;
}

/* fine banner terapia */

/* inizio terapia gruppo */

.section-terapia{
    background-color: #0071710f;
    border-radius: 2rem;
    box-shadow: var(--box-shadow);
    padding: 3rem;
    padding-bottom: 5rem;
    margin-top: 8rem;
    padding-top: 0rem;
}

.heading-mini{
    text-align: center;
    font-size: 2rem;
    margin-inline: 14rem;
    background-color: var(--blue);
    color: var(--white);
    padding: .6rem;
    font-weight: bolder;
    font-weight: 400;
    border-radius: 2rem;
    text-transform: uppercase;
    letter-spacing : .1rem;
    position: relative;
    top: -1.8rem!important;
    box-shadow: var(--box-shadow);
}

.terapia-di-gruppo {
    padding: 7rem 2rem;
    background-color: var(--light-bg);
    margin-top: 8rem!important;
}

.terapia-di-gruppo .description {
    text-align: center;
    font-size: 1.8rem;
    color: var(--light-color);
    width: 55rem;
    margin: auto;
}

.terapeuti-container {
    display: flex;
    justify-content: center;
    gap: 4rem;
    margin-top: 4rem;
}

.terapeuta {
    text-align: center;
    position: relative;
    width: 45rem;

    color: var(--black);
    background: var(--white);
    border-radius: 2rem;
    box-shadow: var(--box-shadow);

    margin-top: 12rem;
    padding-top: 7rem;
    padding-bottom: 2rem;
    padding-inline: 2rem;
}

.terapeuta .img-circle {
    width: 18rem;
    height: 18rem;
    border-radius: 50%;
    box-shadow: var(--box-shadow-strong);
    position: relative;
    z-index: 2;

    position: absolute;
    top: -12rem;
    left: 50%;
    transform: translateX(-50%);
}

.terapeuta h3{
    font-size: 3rem;
    letter-spacing : -.2rem;
    font-weight: 400;
}

.terapeuta h3 .tname{
    color: var(--blue);
}

.terapeuta h3 .tsuff{
    font-weight: 200;
    letter-spacing : -.1rem;
}

.terapeuta p{
    font-size: 1.6rem;
    font-weight: 300;
    text-transform: uppercase;
    margin-top: .5rem;
    margin-bottom: 1.5rem;
}

.terapeuta-info {
    font-size: 1.2rem;
    background: #eeeeee;
    border-radius: 2rem;
    text-align: left;
    padding-inline: 1.8rem;
    padding-top: 1.8rem;
    padding-bottom: 1.8rem;
    margin: 0; /* Assicura che non ci siano margini extra attorno al contenitore */
}

.terapeuta-info div {
    display: flex;
    align-items: center;
}

.terapeuta-info div + div {
    margin-top: 1rem; /* Aggiungi spazio solo tra i div */
}

.terapeuta-info i {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 4.5rem;
    height: 3.5rem;
    font-size: 1.2rem;
    color: var(--white);
    background-color: var(--blue);
    border-radius: 2rem 0 0 2rem;
    box-shadow: var(--box-shadow);
}

.terapeuta-info a {
    font-size: 1.3rem;
    /* background-color: #aaaaaa; */
    background-color: white;
    border-radius: 0 2rem 2rem 0;
    display: inline-flex;
    width: 100%;
    padding: .8rem;
    font-weight: 500;
    height: 3.5rem;
    /* color: white; */
    color: var(--black);
    text-decoration: none;
    padding-left: 1.5rem;
    box-shadow: var(--box-shadow);
}

.griglia-card {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Griglia 1x2 */
    gap: 2rem;
}

.terapia-di-gruppo .card-banner{
    width: 100%;
    height: 28rem;
    box-shadow: var(--box-shadow-strong);
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.card-banner.gruppo1 {
    background-image: url("../images/ansia.jpg");
    background-position: center 0%;
}
.card-banner.gruppo2 {
    background-image: url("../images/sessualita.jpg");
    background-position: center 0%;
}

.terapia-di-gruppo .tag-novita {
    font-size: 1.8rem;
    top: 1.5rem;
    right: 1.5rem;
    padding: 0.4rem 0.8rem;
}

.terapia-di-gruppo .gruppo1 .tag-novita {
    background-color: #37add4b6;
}
.terapia-di-gruppo .gruppo2 .tag-novita {
    background-color: #d44e37b6;
}

.ter-container{
    display: grid;
    grid-template-columns: 40% 60%; /* Definisce le colonne */
    gap: 1rem; /* Spazio tra i div, opzionale */
}

.ter-img {
    margin-top: 2.5rem;
    margin-left: 1rem;
    width: 38rem;
    height: 26rem;
    background-image: url("../images/terapia.jpg");
    background-size: cover;
    background-position: center 50%;
    border-radius: 2rem;
    box-shadow: var(--box-shadow);
}

.ptext {
    margin: 1rem;
    color: var(--black);
    font-size: 1.5rem!important;
    padding: 0;
    padding-top: 1rem;
    font-weight: 300;
    text-align: left;
}

.ptext.pcard {
    text-align: center;
    padding-inline: 12rem;
    margin-bottom: 0rem;
}

/* fine terapia gruppo */




/* media queries */

@media (max-width: 1200px){
    .terapeuti-container {
        display: grid;
        grid-template-columns: 1fr;
        gap: 6rem;
        margin-top: 5rem;
        margin-bottom: 3rem;
        justify-items: center;
    }

    .terapeuta {
        width: 70%;
        padding-top: 5rem;
    }

    .terapeuta .img-circle {
        width: 18rem;
        height: 18rem;

        top: -14rem;
    }

    .griglia-card {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0rem;
    }

    .ter-img {
        width: 32rem;
        height: 30rem;
    }

    .heading-mini{
        margin-inline: 8rem;
    }

    .ptext.pcard {
        padding-inline: 2rem;
    }
    
}

@media (max-width: 992px){

    html{
        font-size: 55%;
    }

    section{
        padding: 5rem 2rem;

    }

    .carousel{
        height: 50vh;
        width: 80%;
    }

    .contact .maps-text{
        top: 17rem;
    }

    .ter-img {
        float: left;
        width: 96%;
    }

    .ter-container{
        grid-template-columns: 50% 50%;
        gap: 1rem;
    }
}

@media (max-width: 768px){

    section{
        padding: 3rem 1rem;
    }

    #menu-btn{
        display: inline-block;
        transition: .3s linear;
    }

    #menu-btn.fa-times{
        transform: rotate(180deg);
    }

    
    .header .wa-btn-mini{
        display: none;
        
    }

    .header .nav{
        position: absolute;
        top: 99%; left: 0; right: 0;
        background-color: var(--white);
        opacity: 0.9;
        border-top: var(--border);
        border-bottom: var(--border);
        padding: 1rem 0;
        text-align: center;
        flex-flow: column;
        clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
        transition: .2s linear;
    }

    .header .nav.active{
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }


    .header .nav a{
        margin: 1rem 0;
        font-size: 2rem;
    }

    .home{
        background-position: left;
    }

    .home .content img{
        display: inline-block;
    }

    .home .content p{
        margin-left: 14vw;
        text-align: left;
    }

    .about .image .img{
        margin: 2rem 0 2rem;
    }

    .footer .box-container{
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(16rem, 2fr));
        gap: 1rem;
    }
    
    .footer .box-container .box p{
        font-size: 99%;

    }

    .footer .c-and-p{
        padding-top: 2rem;
    }

    .footer .credit, .footer .privacy-and-cookie-policy{
        margin: auto;
    }

    .footer .credit{
        text-align: center;
        margin-bottom: .5rem;
    }

    .call-btn{
        justify-content: center;
        margin: auto;
        margin-top: 1rem;
        width: 39%;
        max-width: 21.1rem;
        padding-inline: 1.4rem;
    }

    .wa-btn{
        justify-content: center;
        margin: auto;
        margin-left: .4rem;
        margin-top: 1rem;
        width: 39%;
        max-width: 21.1rem;
        padding-inline: 1.4rem;
    }

    .link-btn{
        justify-content: center;
        margin: auto;
        margin-top: 1rem;
        width: 80%;
        max-width: 43rem;
        padding-inline: 1.4rem;
    }

    .link-btn a{
        color: var(--white);
    }

    .sale{
        display: flex;
        justify-content: center;
        margin: auto;
        margin-top: 3rem;
        margin-bottom: 3rem;
        width: 80%;
        display: none;
        max-width: 43rem;
    }

    .carousel{
        height: 40rem;
        width: 80%;
    }

    .contact .call-btn, .contact .link-btn, .contact .wa-btn {
        max-width: none;
    }

    .card-banner{
        display: flex;
        justify-content: center;
        margin: auto;
        margin-top: 3rem;
        margin-bottom: 3rem;
        width: 80%;
        max-width: 43rem;
    }

    .card-content h2 {
        margin-left: 0!important;
        text-align: left;
    }
    
    .card-content p {
        margin-left: 0!important;
    }

    .heading-mini{
        margin-inline: 2rem;
    }

    .terapeuta{
        width: 100%;
    }

    .terapia-di-gruppo .container{
        max-width: 900rem;
    }

    .terapia-di-gruppo .card-banner{
        max-width: 900rem;
    }

    .ter-container{
        display: flex;
        flex-direction: column; /* Dispone gli elementi in colonna */
        align-items: center; /* Allinea l'immagine e il testo al centro */
        text-align: center; /* Centra il testo orizzontalmente */
    }
    
    .ter-img {
        margin-top: 2.5rem;
        margin-left: 1rem;
        width: 38rem;
        height: 26rem;
        background-image: url("../images/terapia.jpg");
        background-size: cover;
        background-position: center 30%;
        border-radius: 2rem;
        box-shadow: var(--box-shadow);

        width: 100%; /* Adatta l'immagine alla larghezza del contenitore, se necessario */
    }

}

@media (max-width: 558px){

    .terapia-di-gruppo .description {
        width: 100%;
    }

    .terapeuta p{
        font-size: 1.4rem;
    }

}

@media (max-width: 489px){

    .sale{
        width: 90vw;
    }

    .call-btn{
        width: 44vw;
    }

    .wa-btn{
        width: 44vw;
        margin-left: 1.5vw;
    }

    .link-btn{
        width: 90vw;

    }

    .home .content p{
        margin-left: 8vw;
    }

    .carousel{
        height: 30rem;
        width: 80%;
    }

    .footer .c-and-p{
        padding-top: 2rem;
    }

    .footer .credit, .footer .privacy-and-cookie-policy{
        font-size: 1.3rem;
        margin: auto;
    }

    .card-banner{
        width: 90vw;
    }

    .card-content h3{
        font-size: 2rem;
    }

    .card-content p{
        font-size: 1.3rem!important;
    }

    .terapia-di-gruppo {
        padding: 7rem 2rem;
        background-color: var(--light-bg);
        margin-top: 8rem!important;
        padding-inline: 0rem!important;
    }

    .terapia-di-gruppo .heading{
        font-size: 3.3rem;
    }

    .terapia-di-gruppo .heading.mod{
        font-size: 2.1rem;
    }

    .terapia-di-gruppo .description{
        font-size: 1.65rem;
    }

    .terapeuta p{
        font-size: 1.2rem;
    }

    .heading-mini{
        margin-inline: 0rem;
    }

    .ptext.pcard {
        padding-inline: 0rem;
    }

    .terapia-di-gruppo .tag-novita {
        font-size: 1.4rem;
        top: 1.5rem;
        right: 1.5rem;
        padding: 0.2rem 0.6rem;
    }
}

@media (max-width: 400px){

    .home .content{
        margin-bottom: 4rem;
    }

    .home .content h3{
        font-size: 3rem;
    }
    
    .home .content span{
        font-size: 2rem;
    }
    
    .home .content .logodesc{
        font-size: 1rem;
    }

    .home .content h3{
        margin-bottom: .2rem;
    }

    .home .content span{
        font-size: 1.6rem;
    }

    .home .content p{
        padding: .8rem 0 1rem;
        margin-left: 2rem;
        font-size: 1.8rem;
    }

    .about .image .img{
        width: 99%;
    }

    .terapia-di-gruppo .tag-info {
        font-size: 1.2rem;
    }

    .terapia-di-gruppo .tag-novita {
        font-size: 1.2rem;
    }

    .terapia-di-gruppo .card-banner{
        height: 30rem;
    }

    .card-content h3 {
        font-size: 1.8rem;
    }

}