/*
Theme Name: Blocksy Child
Description: Child theme per Essere Benessere
Author: Zeropare
Template: blocksy
Version: 1.0
Text Domain: blocksy-child
*/

/* test */

body{
overflow-x:hidden;
}

/* Home full width */

.home .entry-content.is-layout-constrained{
max-width:100%!important;
width:100%!important;
padding:0!important;
margin:0!important;
}

.home .wp-block-cover{
max-width:100%!important;
width:100vw!important;
margin-left:calc(50% - 50vw)!important;
margin-right:calc(50% - 50vw)!important;
}

/* Header sopra la hero, non di fianco */
#header,
.ct-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 50;
}

/* Hero full screen */
.home .wp-block-cover {
    width: 100vw !important;
    max-width: 100vw !important;
    min-height: 100vh !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
}

/* Spazio sopra al contenuto della hero per non finire sotto l'header */
.home .wp-block-cover {
    padding-top: 120px !important;
}

/* Sposta il contenuto della hero più in basso e più ordinato */
.home .wp-block-cover .wp-block-cover__inner-container {
    padding-top: 80px !important;
}

#header .site-title,
.ct-header .site-title {
    display: none !important;
}

/* Contenuto hero più elegante */
.home .wp-block-cover .wp-block-cover__inner-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 60px !important;
}

/* Blocchetto testo hero */
.home .wp-block-cover h1,
.home .wp-block-cover p,
.home .wp-block-cover .wp-block-buttons {
    max-width: 620px;
}

/* Titolo hero più premium */
.home .wp-block-cover h1 {
    font-size: clamp(42px, 5vw, 72px);
    line-height: 1.05;
    margin-bottom: 20px;
}

/* Bottoni più coerenti */
.home .wp-block-cover .wp-block-button__link {
    background: #8C7B75 !important;
    border-radius: 12px !important;
    padding: 16px 26px !important;
}

/* CTA stile wellness */
.home .wp-block-button__link{
    background:#8C7B75!important;
    color:#fff!important;
    border-radius:999px!important;
    padding:14px 28px!important;
    border:none!important;
    transition:.3s;
}

.home .wp-block-button__link:hover{
    transform:translateY(-2px);
    opacity:.9;
}

/* Header elegante */
.ct-header{
backdrop-filter:blur(12px);
background:rgba(255,255,255,.08)!important;
}

.wp-block-columns{
padding:90px 60px;
}

/* Sezione servizi */
.wp-block-columns{
padding:100px 80px!important;
gap:40px!important;
}

.wp-block-column{
background:#ffffff;
padding:40px;
border-radius:20px;
text-align:center;
box-shadow:0 10px 30px rgba(0,0,0,.06);
transition:.3s;
}

.wp-block-column:hover{
transform:translateY(-8px);
}

.wp-block-column h3{
margin-top:15px;
margin-bottom:15px;
font-size:28px;
}

/* Sezione chi siamo */
.home .wp-block-columns:nth-of-type(2){
    background:#f5f1ec;
    padding:100px 80px!important;
    align-items:center!important;
}

.home .wp-block-columns:nth-of-type(2) .wp-block-image img{
    border-radius:24px;
    width:100%;
    box-shadow:0 20px 40px rgba(0,0,0,.12);
}

.home .wp-block-columns:nth-of-type(2) h2{
    font-size:clamp(36px,4vw,56px);
    margin-bottom:20px;
}

.home .wp-block-columns:nth-of-type(2) p{
    font-size:18px;
    line-height:1.7;
    max-width:560px;
}

/* Trattamenti in evidenza */
.home .wp-block-group:nth-of-type(2){
    padding:100px 80px!important;
    background:#ffffff;
}

.home .wp-block-group:nth-of-type(2) > h2{
    text-align:center;
    font-size:clamp(36px,4vw,56px);
    margin-bottom:50px;
}

.home .wp-block-group:nth-of-type(2) .wp-block-column{
    background:#f5f1ec;
}

/* CTA finale */
.home .wp-block-cover:last-of-type{
    min-height:500px!important;
    text-align:center;
}

.home .wp-block-cover:last-of-type h2{
    font-size:clamp(36px,4vw,60px);
    color:#fff;
}

.home .wp-block-cover:last-of-type p{
    color:#fff;
    font-size:20px;
}

/* Contatti */
.home .sezione-contatti{
    padding:90px 80px!important;
    background:#f5f1ec;
    text-align:center;
}

.home .sezione-contatti h2{
    font-size:clamp(36px,4vw,56px);
    margin-bottom:50px;
}

.home .sezione-contatti .wp-block-column{
    background:#fff;
}

body{
background:linear-gradient(
to bottom,
#DDE4DC,
#EEF2EE
);
}

/* HEADER CUSTOM HOME - floating, rounded, sticky */
.home-custom-header{
    position:sticky;
    top:15px;
    z-index:99999;

    width:92%;
    max-width:1400px;
    margin:0 auto;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;

    padding:20px 40px;

    border-radius:30px;
    background:rgba(219,226,218,.40);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.25);
    box-shadow:0 10px 40px rgba(0,0,0,.06);

    box-sizing:border-box;
    transition:.4s ease;
}

/* LOGO HEADER */
.logo-wrap img{
    width:500px;
    max-width:90vw;
    height:auto;
    display:block;
    margin:0 auto;
}

/* MENU DESKTOP */
.home-custom-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:40px;
    margin-top:12px;
}

.home-custom-nav a{
    color:#5b6156;
    text-decoration:none;
    font-size:15px;
    letter-spacing:.5px;
    font-weight:500;
    transition:.3s ease;
}

.home-custom-nav a:hover{
    opacity:.6;
}

/* BURGER BUTTON */
.menu-toggle{
    width:45px;
    height:45px;

    display:none;
    position:absolute;
    right:25px;
    top:50%;
    transform:translateY(-50%);

    border:none;
    background:transparent;
    cursor:pointer;
    padding:0;
    z-index:100001;
}

/* BURGER LINES */
.menu-toggle span{
    position:absolute;
    left:7px;

    width:30px;
    height:2px;

    background:#5b6156;
    border-radius:999px;

    transition:
        top .35s ease,
        transform .35s ease,
        opacity .25s ease;
}

.menu-toggle span:nth-child(1){
    top:12px;
}

.menu-toggle span:nth-child(2){
    top:21px;
}

.menu-toggle span:nth-child(3){
    top:30px;
}

/* BURGER MORPH TO X */
.home-custom-header.menu-open .menu-toggle span:nth-child(1){
    top:21px;
    transform:rotate(45deg);
}

.home-custom-header.menu-open .menu-toggle span:nth-child(2){
    opacity:0;
}

.home-custom-header.menu-open .menu-toggle span:nth-child(3){
    top:21px;
    transform:rotate(-45deg);
}

/* TABLET E MOBILE */
@media(max-width:1024px){

    .home-custom-header{
        flex-direction:row;
        justify-content:center;
        padding:18px 30px;
        min-height:92px;
    }

    .logo-wrap img{
        width:280px;
        max-width:70vw;
    }

    .menu-toggle{
        display:block;
    }

    .home-custom-nav{
        display:none;

        position:absolute;
        top:calc(100% + 12px);
        right:0;

        width:260px;
        margin-top:0;
        padding:30px;

        border-radius:24px;
        background:rgba(219,226,218,.95);

        backdrop-filter:blur(25px);
        -webkit-backdrop-filter:blur(25px);

        box-shadow:0 12px 30px rgba(0,0,0,.12);

        flex-direction:column;
        gap:25px;
        text-align:center;
    }

    .home-custom-header.menu-open .home-custom-nav{
        display:flex;
    }
}

/* MOBILE PICCOLO */
@media(max-width:600px){

    .home-custom-header{
        width:94%;
        top:10px;
        padding:14px 22px;
        min-height:82px;
        border-radius:24px;
    }

    .logo-wrap img{
        width:220px;
        max-width:68vw;
    }

    .menu-toggle{
        right:18px;
    }

    .home-custom-nav{
        right:0;
        width:230px;
        padding:24px;
    }
}

/* Contenitore esterno header */
.home .entry-content > header.home-custom-header{
    background:transparent!important;
}

.home .entry-content.is-layout-constrained > header{
    background:transparent!important;
}

/* wrapper blocco html che contiene l'header */
.home .entry-content .wp-block-html{
    background:#DDE4DC!important;
}

/* Sezione prodotti */
.sezione-prodotti{
    position:relative;
    padding:120px 80px 130px;
    background:linear-gradient(180deg, #EEF2EE 0%, #F5F1EC 100%);
    overflow:hidden;
}

.prodotti-content{
    max-width:760px;
    margin:0 auto 56px;
    text-align:center;
}

.prodotti-eyebrow{
    text-transform:uppercase;
    letter-spacing:.22em;
    font-size:13px;
    color:#2f352f;
    margin-bottom:14px;
    font-weight:600;
}

.prodotti-content h2{
    font-size:clamp(38px, 5vw, 68px);
    line-height:1.05;
    margin-bottom:22px;
    color:#2f352f;
}

.prodotti-content p{
    max-width:680px;
    margin:0 auto;
    font-size:18px;
    line-height:1.7;
    color:#5c6257;
}

/* Gallery prodotti sfalsata */
.prodotti-gallery{
    position:relative;
    max-width:1160px;
    height:560px;
    margin:0 auto;
}

.prodotto-img{
    position:absolute;
    overflow:hidden;
    border-radius:34px;
    background:#fff;
    box-shadow:0 25px 60px rgba(0,0,0,.14);
}

.prodotto-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

/*
   Layout:
   - immagine principale centrale grande
   - immagine sinistra sovrapposta circa 1/3
   - immagine destra sovrapposta circa 1/2 e contenuta nello spazio verticale del primario
*/
.prodotto-img-main{
    width:54%;
    height:440px;
    left:50%;
    top:70px;
    transform:translateX(-50%);
    z-index:2;
}

.prodotto-img-left{
    width:35%;
    height:340px;
    left:7%;
    top:40px;
    z-index:3;
}

.prodotto-img-right{
    width:36%;
    height:340px;
    right:7%;
    top:120px;
    z-index:4;
}

/* Piccolo bordo luminoso elegante sulle immagini */
.prodotto-img::after{
    content:"";
    position:absolute;
    inset:0;
    border:1px solid rgba(255,255,255,.75);
    border-radius:inherit;
    pointer-events:none;
}

/* Responsive prodotti */
@media(max-width:1024px){

    .sezione-prodotti{
        padding:90px 40px;
    }

    .prodotti-content{
        margin-bottom:46px;
    }

    .prodotti-gallery{
        height:auto;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:24px;
        max-width:900px;
    }

    .prodotto-img{
        position:relative;
        width:100%!important;
        height:320px!important;
        left:auto!important;
        right:auto!important;
        top:auto!important;
        transform:none!important;
    }

    .prodotto-img-main{
        grid-column:1 / -1;
        height:420px!important;
    }
}

@media(max-width:600px){

    .sezione-prodotti{
        padding:70px 22px;
    }

    .prodotti-content{
        margin-bottom:36px;
    }

    .prodotti-gallery{
        grid-template-columns:1fr;
    }

    .prodotto-img,
    .prodotto-img-main{
        height:300px!important;
    }
}

/* MINI TITOLO tipo "PRODOTTI SELEZIONATI" */
.cta-mini-title{
    text-align:center;
    text-transform:uppercase;
    letter-spacing:.28em;
    font-size:15px;
    font-weight:600;
    color:#2f352f;

    margin-bottom:25px;
}

/* TITOLO GRANDE tipo "Beauty routine professionale" */
.cta-big-title{
    text-align:center;

    font-size:clamp(56px,5vw,86px);
    line-height:1.05;
    font-weight:800;

    color:#ffffff;

    max-width:1000px;
    margin:auto;
}

/* tablet */
@media(max-width:1024px){

.cta-big-title{
font-size:clamp(42px,7vw,62px);
}
}

/* mobile */
@media(max-width:768px){

.cta-mini-title{
font-size:12px;
letter-spacing:.18em;
}

.cta-big-title{
font-size:clamp(34px,9vw,48px);
}
}

/* Footer custom */
.footer-custom{
    width:100%;
    max-width:1400px;
    margin:0 auto 60px;
    padding:80px;

    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:60px;

    background:#F5F1EC;
    border-radius:34px;
    box-shadow:0 20px 60px rgba(0,0,0,.06);
}

.footer-custom h2{
    font-size:clamp(38px,4vw,64px);
    line-height:1.05;
    color:#2f352f;
    margin-bottom:30px;
}

.footer-map iframe{
    width:100%;
    height:420px;
    border:0;
    border-radius:28px;
    box-shadow:0 16px 40px rgba(0,0,0,.10);
}

.footer-info{
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.footer-info p{
    font-size:20px;
    line-height:1.6;
    color:#5c6257;
    margin-bottom:28px;
}

.footer-info strong{
    color:#2f352f;
    font-weight:700;
}

.footer-info a{
    color:#8C7B75;
    text-decoration:none;
    font-weight:600;
}

.footer-info a:hover{
    opacity:.7;
}

/* Nasconde footer Blocksy */
.site-footer,
.ct-footer{
    display:none!important;
}

/* Responsive */
@media(max-width:900px){
    .footer-custom{
        grid-template-columns:1fr;
        padding:50px 28px;
        margin-bottom:30px;
        border-radius:28px;
    }

    .footer-map iframe{
        height:340px;
    }
}

/* Sezione recensioni */
.reviews-section{
    padding:110px 80px;
    background:linear-gradient(180deg,#EEF2EE 0%,#F5F1EC 100%);
    overflow:hidden;
}

.reviews-header{
    text-align:center;
    max-width:760px;
    margin:0 auto 60px;
}

.reviews-eyebrow{
    text-transform:uppercase;
    letter-spacing:.28em;
    font-size:15px;
    font-weight:700;
    color:#8C7B75!important;
    margin-bottom:18px;
}

.reviews-header h2{
    font-size:clamp(52px,5vw,78px);
    line-height:1.05;
    font-weight:800;
    color:#2f352f;
    margin-bottom:20px;
}

.reviews-header p{
    font-size:20px;
    color:#5c6257;
}

.reviews-slider{
    position:relative;
    max-width:1300px;
    margin:auto;
}

.reviews-track{
    display:flex;
    gap:30px;
    transition:transform .45s ease;
}

.review-card{
    flex:0 0 calc((100% - 60px) / 3);
    background:#fff;
    border-radius:28px;
    padding:38px;
    box-shadow:0 18px 45px rgba(0,0,0,.08);
    min-height:260px;
}

.review-stars{
    color:#c79a6b;
    letter-spacing:.12em;
    margin-bottom:22px;
    font-size:18px;
}

.review-card p{
    font-size:18px;
    line-height:1.7;
    color:#5c6257;
    margin-bottom:24px;
}

.review-card strong{
    color:#2f352f;
    font-weight:700;
}

.reviews-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:3;
    width:48px;
    height:48px;
    border-radius:50%;
    border:none;
    background:#8C7B75;
    color:#fff;
    font-size:34px;
    cursor:pointer;
}

.reviews-prev{
    left:-24px;
}

.reviews-next{
    right:-24px;
}

@media(max-width:900px){
    .reviews-section{
        padding:80px 28px;
    }

    .review-card{
        flex:0 0 100%;
    }

    .reviews-prev{
        left:5px;
    }

    .reviews-next{
        right:5px;
    }
}

.social-icons-slider{
    width:100%;
    overflow:hidden;
    padding:55px 0 65px;
    background:#DDE4DC;
}

.social-icons-track{
    display:flex;
    gap:90px;
    width:max-content;
    animation:socialSlide 28s linear infinite;
}

.social-slide{
    min-width:210px;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-decoration:none;
    color:#5c6257;
}

.social-circle{
    width:90px;
    height:90px;
    border-radius:50%;
    background:rgba(255,255,255,.35);
    border:4px solid rgba(92,98,87,.45);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:44px;
    color:#5c6257;
    box-shadow:0 10px 30px rgba(0,0,0,.06);
}

.social-slide span{
    margin-top:14px;
    font-family:cursive;
    font-size:28px;
    color:#5c6257;
}

@keyframes socialSlide{
    from{ transform:translateX(0); }
    to{ transform:translateX(-50%); }
}

@media(max-width:768px){
    .social-icons-track{
        gap:55px;
        animation-duration:22s;
    }

    .social-slide{
        min-width:160px;
    }

    .social-circle{
        width:76px;
        height:76px;
        font-size:36px;
    }

    .social-slide span{
        font-size:24px;
    }
}

/* barra copyright finale */

.footer-bottom-custom{
    max-width:1400px;
    margin:0 auto 40px;

    padding:30px 40px;

    display:flex;
    justify-content:space-between;
    align-items:center;

    border-top:1px solid rgba(92,98,87,.12);

    color:#5c6257;
    font-size:15px;
}

.footer-copy strong{
    color:#2f352f;
    font-weight:700;
}

.footer-legal{
    display:flex;
    align-items:center;
    gap:15px;
}

.footer-legal a{
    text-decoration:none;
    color:#8C7B75;
    font-weight:600;
    transition:.3s;
}

.footer-legal a:hover{
    opacity:.7;
}

.footer-legal span{
    opacity:.4;
}

/* mobile */

@media(max-width:768px){

.footer-bottom-custom{
    flex-direction:column;
    gap:15px;
    text-align:center;
}

.footer-legal{
    justify-content:center;
}

}

/* ==========================
   FIX TABLET 769px - 1024px
========================== */
@media (min-width:769px) and (max-width:1024px){

  /* contenuto generale */
  .home .entry-content.is-layout-constrained{
    max-width:100%!important;
    width:100%!important;
    padding:0!important;
    margin:0!important;
  }

  /* header tablet: simile desktop ma più compatto */
  .home-custom-header{
    width:92%!important;
    max-width:1100px!important;
    padding:18px 36px!important;
    border-radius:30px!important;
    flex-direction:column!important;
  }

  .logo-wrap img{
    width:380px!important;
    max-width:70vw!important;
  }

  .home-custom-nav{
    display:flex!important;
    gap:30px!important;
    margin-top:10px!important;
  }

  .menu-toggle{
    display:none!important;
  }

  /* hero */
  .home .wp-block-cover{
    min-height:760px!important;
    padding-top:130px!important;
  }

  .home .wp-block-cover .wp-block-cover__inner-container{
    max-width:960px!important;
    padding:0 50px!important;
    margin:0 auto!important;
  }

  .home .wp-block-cover h1{
    font-size:clamp(48px, 6vw, 68px)!important;
    max-width:720px!important;
  }

  .home .wp-block-cover p{
    max-width:620px!important;
    font-size:20px!important;
  }

  /* colonne: restano affiancate, ma più strette */
  .home .wp-block-columns{
    display:flex!important;
    flex-direction:row!important;
    gap:28px!important;
    padding:80px 44px!important;
    align-items:stretch!important;
  }

  .home .wp-block-column{
    width:auto!important;
    flex-basis:0!important;
    flex-grow:1!important;
    padding:34px 28px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  .home .wp-block-column h3{
    font-size:24px!important;
  }

  .home .wp-block-column p{
    font-size:17px!important;
    line-height:1.6!important;
  }

  /* titoli sezioni */
  .home h2,
  .prodotti-content h2,
  .reviews-header h2,
  .footer-custom h2{
    font-size:clamp(42px, 5vw, 62px)!important;
    line-height:1.08!important;
  }

  /* prodotti tablet: mantiene struttura ordinata */
  .sezione-prodotti{
    padding:90px 44px!important;
  }

  .prodotti-gallery{
    max-width:900px!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:24px!important;
  }

  .prodotto-img{
    position:relative!important;
    width:100%!important;
    height:320px!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    transform:none!important;
  }

  .prodotto-img-main{
    grid-column:1 / -1!important;
    height:420px!important;
  }

  /* recensioni tablet */
  .reviews-section{
    padding:90px 44px!important;
  }

  .review-card{
    flex:0 0 300px!important;
    max-width:300px!important;
  }

  /* footer tablet */
  .footer-custom{
    max-width:92%!important;
    padding:60px 44px!important;
    gap:38px!important;
    grid-template-columns:1fr 1fr!important;
  }

  .footer-map iframe{
    height:360px!important;
  }
}

/* forza solo la sezione Chi siamo */
.home #chi-siamo h2{
    font-family: var(--theme-heading-font-family)!important;
}

.home #chi-siamo p{
    font-family: var(--theme-font-family)!important;
    font-size:22px!important;
    line-height:1.8!important;
}

.prodotti-content h2,
.reviews-header h2,
.orari-title,
.home h1,
.home h2,
.home h3{
   font-family:"Poppins", sans-serif!important;
   font-weight:800!important;
   letter-spacing:-2px!important;
   color:#25302d!important;
}

/* SEZIONE VIDEO HOME */
.home .video-section{
  background:#f5f1ec;
  padding:100px 80px!important;
  gap:44px!important;
  align-items:stretch!important;
}

.home .video-section .wp-block-column{
  background:#fff!important;
  border-radius:28px!important;
  padding:36px 36px 44px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.08)!important;
  overflow:hidden!important;
}

.home .video-section h3,
.home .video-section h2{
  font-size:22px!important;
  line-height:1.35!important;
  font-weight:800!important;
  color:#25302d!important;
  margin-bottom:28px!important;
  min-height:60px;
}

.home .video-section video{
  width:100%!important;
  height:560px!important;
  object-fit:cover!important;
  border-radius:0!important;
  display:block!important;
  background:#000;
}

/* tablet */
@media(max-width:1024px){
  .home .video-section{
    padding:80px 44px!important;
    gap:28px!important;
  }

  .home .video-section .wp-block-column{
    padding:28px!important;
  }

  .home .video-section video{
    height:440px!important;
  }
}

/* mobile */
@media(max-width:768px){
  .home .video-section{
    padding:60px 22px!important;
  }

  .home .video-section .wp-block-column{
    padding:26px 22px!important;
    margin-bottom:28px!important;
  }

  .home .video-section video{
    height:480px!important;
  }
}

/* ==========================
   CHI SIAMO - TABLET
========================== */
@media(min-width:769px) and (max-width:1024px){

  .page-id-CHI_SIAMO .about-hero-page,
  body:not(.home) .about-hero-page{
    grid-template-columns:1fr 1fr!important;
    gap:36px!important;
    padding:140px 44px 80px!important;
    align-items:center!important;
  }

  body:not(.home) .about-hero-text h1{
    font-size:72px!important;
    line-height:.95!important;
  }

  body:not(.home) .about-hero-text p{
    font-size:18px!important;
    line-height:1.65!important;
  }

  body:not(.home) .about-hero-image img{
    max-width:420px!important;
    margin:auto!important;
  }

  body:not(.home) .about-center-section,
  body:not(.home) .team-member-section,
  body:not(.home) .about-final-cta{
    max-width:92vw!important;
    padding:70px 44px!important;
    gap:38px!important;
  }

  body:not(.home) .team-member-image img{
    height:520px!important;
  }
}


/* ==========================
   CHI SIAMO - MOBILE
========================== */
@media(max-width:768px){

  body:not(.home) .about-hero-page{
    grid-template-columns:1fr!important;
    padding:130px 22px 60px!important;
    gap:36px!important;
    text-align:center!important;
    overflow:hidden!important;
  }

  body:not(.home) .about-hero-text{
    width:100%!important;
    max-width:100%!important;
  }

  body:not(.home) .about-hero-text h1{
    font-size:54px!important;
    line-height:.95!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body:not(.home) .about-hero-text p{
    font-size:16px!important;
    line-height:1.65!important;
    max-width:92%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body:not(.home) .about-btn{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body:not(.home) .about-hero-image{
    width:100%!important;
    max-width:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
  }

  body:not(.home) .about-team-names{
    transform:none!important;
    left:auto!important;
    width:100%!important;
    margin:0 auto 24px!important;
    font-size:13px!important;
    letter-spacing:.15em!important;
  }

  body:not(.home) .about-team-names::after{
    width:70%!important;
  }

  body:not(.home) .about-hero-image img{
    max-width:92vw!important;
    width:100%!important;
    margin:auto!important;
  }

  body:not(.home) .about-center-section,
  body:not(.home) .team-member-section,
  body:not(.home) .about-philosophy,
  body:not(.home) .about-values-section,
  body:not(.home) .about-final-cta{
    max-width:92vw!important;
    margin:50px auto!important;
    padding:50px 22px!important;
    grid-template-columns:1fr!important;
    gap:30px!important;
    text-align:center!important;
    box-sizing:border-box!important;
  }

  body:not(.home) .about-center-text,
  body:not(.home) .team-member-text{
    padding:0!important;
  }

  body:not(.home) .about-center-text h2,
  body:not(.home) .team-member-text h2,
  body:not(.home) .about-philosophy h2,
  body:not(.home) .about-final-text h2{
    font-size:42px!important;
    line-height:1!important;
  }

  body:not(.home) .about-center-text p,
  body:not(.home) .team-member-text p,
  body:not(.home) .about-philosophy p,
  body:not(.home) .about-final-text p{
    font-size:16px!important;
    line-height:1.7!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body:not(.home) .about-center-image img{
    height:360px!important;
  }

  body:not(.home) .team-member-image img{
    height:430px!important;
    object-position:center top!important;
  }

  body:not(.home) .team-member-section.reverse .team-member-image,
  body:not(.home) .team-member-section.reverse .team-member-text{
    order:initial!important;
  }

  body:not(.home) .about-values-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
}

@media (max-width:768px){

  .about-hero-page{
    display:flex!important;
    flex-direction:column!important;
    gap:30px!important;
    padding:130px 25px 50px!important;
    min-height:auto!important;
    height:auto!important;
  }

  .about-hero-image{
    margin-top:0!important;
    padding-top:0!important;
    height:auto!important;
    min-height:auto!important;
  }

  .about-team-names{
    margin:0 auto 20px!important;
    transform:none!important;
  }

  .about-hero-image img{
    max-width:100%!important;
    width:100%!important;
    height:auto!important;
  }

}

/* FIX DEFINITIVO CHI SIAMO MOBILE */
@media(max-width:768px){

  body.page-id-330 .about-hero-page{
    display:flex!important;
    flex-direction:column!important;
    padding:120px 24px 50px!important;
    gap:30px!important;
    min-height:auto!important;
    height:auto!important;
    text-align:center!important;
  }

  body.page-id-330 .about-hero-text h1{
    font-size:58px!important;
    line-height:.95!important;
    margin-bottom:24px!important;
  }

  body.page-id-330 .about-hero-text p{
    font-size:17px!important;
    line-height:1.6!important;
    max-width:92%!important;
    margin:0 auto!important;
  }

  body.page-id-330 .about-btn{
    margin:28px auto 0!important;
  }

  body.page-id-330 .about-hero-image{
    margin-top:20px!important;
    padding:0!important;
    height:auto!important;
    min-height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }

  body.page-id-330 .about-team-names{
    transform:none!important;
    margin:0 auto 22px!important;
    font-size:14px!important;
    letter-spacing:.18em!important;
  }

  body.page-id-330 .about-team-names::after{
    width:70%!important;
    margin-top:14px!important;
  }

  body.page-id-330 .about-hero-image img{
    width:100%!important;
    max-width:92vw!important;
    height:auto!important;
    max-height:none!important;
    margin:0 auto!important;
  }
}



































