:root{--cma-night:#121110;--cma-ivory:#F6F3EE;--cma-sand:#EDE7DD;--cma-gold:#C9A86F;--cma-bronze:#7A5F35;--cma-muted:#5C564C;--cma-muted-d:#CFC7BA;--cma-line:#E2DBCF;--cma-line-d:#3A3631}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}

/* intestazione */
.cma-header{position:sticky;top:0;z-index:50;background:rgba(246,243,238,.86);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--cma-line)}
.admin-bar .cma-header{top:32px}
@media(max-width:782px){.admin-bar .cma-header{top:46px}}
.cma-header-inner{max-width:1240px;margin:0 auto;padding:12px clamp(1.25rem,4vw,2rem);gap:20px}
.cma-logo{display:flex;position:relative;z-index:1;cursor:pointer;text-decoration:none;flex-direction:column;line-height:1.05;color:var(--wp--preset--color--ink)}
.cma-logo b{font-family:var(--wp--preset--font-family--serif);font-size:21px;font-weight:500;letter-spacing:.16em}
.cma-logo small{font-family:var(--wp--preset--font-family--sans);font-size:9.5px;letter-spacing:.32em;color:var(--cma-muted)}
.cma-header .wp-block-navigation{font-size:14px;gap:26px}
.cma-header .wp-block-button__link{padding:.7rem 1.25rem;white-space:nowrap}
.cma-header .wp-block-navigation{flex-wrap:wrap}
.cma-header .wp-block-navigation__container{row-gap:.5rem}
.cma-header-inner > .wp-block-group{min-width:0}

/* sezioni */
.is-style-cma-dark{background:var(--cma-night);color:var(--cma-ivory)}
.is-style-cma-dark a:not(.wp-block-button__link){color:var(--cma-ivory)}
.is-style-cma-dark .cma-kicker{color:var(--cma-gold)}
.is-style-cma-dark .cma-muted{color:var(--cma-muted-d)}
.is-style-cma-sand{background:var(--cma-sand)}
.cma-section{padding-top:var(--wp--preset--spacing--60)!important;padding-bottom:var(--wp--preset--spacing--60)!important}
.cma-center{text-align:center}
.cma-center .wp-block-buttons{justify-content:center}
.cma-kicker{font-size:12px!important;letter-spacing:.3em;text-transform:uppercase;color:var(--cma-bronze);margin-bottom:0}
.cma-muted{color:var(--cma-muted)}
.cma-lead{font-size:clamp(1.0625rem,1.6vw,1.1875rem);max-width:620px}
.cma-center .cma-lead{margin-left:auto;margin-right:auto}
h1 em,h2 em{font-style:italic;color:var(--cma-bronze)}
.is-style-cma-dark h1 em,.is-style-cma-dark h2 em{color:var(--cma-gold)}

/* segnaposto immagini */
.cma-ph{display:flex;align-items:center;justify-content:center;text-align:center;min-height:clamp(260px,40vw,540px);border-radius:24px;background:#E7E1D7;color:var(--cma-muted);font-size:13px;padding:20px}
.is-style-cma-dark .cma-ph{background:#2A2723;color:#B9B2A6}
.cma-rounded img{border-radius:24px}

/* pulsanti (stili blocco) */
.wp-block-button.is-style-cma-light .wp-block-button__link{background:var(--cma-ivory);color:var(--cma-night)}
.wp-block-button.is-style-cma-ghost .wp-block-button__link{background:transparent;color:var(--cma-ivory);border:1px solid #6B6458;font-weight:500}
.wp-block-button.is-style-cma-line .wp-block-button__link{background:transparent;color:var(--wp--preset--color--ink);border:1px solid currentColor}
.wp-block-button__link{transition:transform .2s,opacity .2s}
.wp-block-button__link:hover{transform:translateY(-1px)}

/* card */
.cma-cards{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:24px}
.cma-card{background:#fff;border-radius:24px;padding:18px 18px 28px;transition:transform .3s}
.cma-card:hover{transform:translateY(-4px)}
.cma-card .cma-ph{min-height:260px;border-radius:16px}
.cma-card img{border-radius:16px;aspect-ratio:4/3;object-fit:cover}
.cma-card > :not(.cma-ph):not(figure){padding-left:8px;padding-right:8px}
.cma-card h3{font-size:2rem;margin:0}

/* passaggi */
.cma-steps{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px}
.cma-steps > .wp-block-group{background:var(--cma-ivory);border-radius:24px;padding:34px;margin:0!important}
.cma-num{font-family:var(--wp--preset--font-family--serif);font-size:48px!important;line-height:1;color:var(--cma-bronze);margin:0}
.cma-steps h3{font-family:var(--wp--preset--font-family--sans);font-size:20px;font-weight:600;margin:12px 0 6px}

/* scheda "in breve" */
.cma-facts{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:1px!important;background:var(--cma-line-d);border-radius:24px;overflow:hidden;text-align:left}
.cma-facts > .wp-block-group{background:#1A1816;padding:26px 24px;margin:0!important}
.cma-facts p{margin:0}
.cma-facts .cma-kicker{font-size:11px!important;margin-bottom:8px}
.cma-facts p:not(.cma-kicker){font-size:18px;font-weight:500}

/* testo pagina trattamento */
.cma-prose h2{font-size:clamp(2rem,3.6vw,2.875rem);margin-top:3.5rem}
.cma-prose p,.cma-prose li{font-size:1.125rem;color:#3F3A33}
.cma-note{background:var(--cma-sand);border-radius:20px;padding:24px 28px!important;font-size:1rem!important;color:var(--cma-muted)!important}
.cma-review{font-size:.875rem!important;color:var(--cma-muted)!important;border-top:1px solid var(--cma-line);padding-top:20px}
.cma-doc{background:#fff;border-radius:24px;padding:22px;gap:20px}
.cma-doc img,.cma-doc .cma-ph{width:96px;height:96px;min-height:0;border-radius:50%;flex:none;object-fit:cover;font-size:11px;padding:8px}

/* FAQ (blocco Dettagli) */
.wp-block-details{border-bottom:1px solid var(--cma-line);padding:20px 0}
.wp-block-details summary{cursor:pointer;font-size:1.1875rem;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:16px}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::after{content:"+";font-family:var(--wp--preset--font-family--serif);font-size:28px;line-height:1;color:var(--cma-bronze);transition:transform .3s}
.wp-block-details[open] summary::after{transform:rotate(45deg)}
.wp-block-details > :not(summary){margin-top:14px}

/* contatti e footer */
.cma-contacts{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:32px;border-top:1px solid var(--cma-line-d);padding-top:44px}
.cma-contacts p{margin:0;font-size:1.25rem}
.cma-contacts .cma-kicker{font-size:12px!important;margin-bottom:6px}
.cma-contacts > .wp-block-group{margin:0!important}
.cma-footer{background:var(--cma-night);color:#B9B2A6;font-size:13px}
.cma-footer-inner{max-width:1240px;margin:0 auto;padding:32px clamp(1.25rem,4vw,2rem) calc(32px + env(safe-area-inset-bottom));display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;border-top:1px solid var(--cma-line-d)}
.cma-footer a{color:#B9B2A6}.cma-footer a:hover{color:var(--cma-gold)}
.cma-footer nav{display:flex;gap:22px}

/* barra contatti mobile */
.cma-mbar{display:none}
@media(max-width:700px){
 .cma-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:10px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(18,17,16,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
 .cma-mbar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:999px;font-weight:600;font-size:15px}
 .cma-mbar a:first-child{background:var(--cma-ivory);color:var(--cma-night)}
 .cma-mbar a:last-child{border:1px solid #6B6458;color:var(--cma-ivory)}
 body{padding-bottom:0}
 .cma-footer{padding-bottom:76px}
}

/* comparsa allo scroll */
.cma-js .cma-reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.cma-js .cma-reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.cma-js .cma-reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* ===== Animazioni "stile Apple" ===== */

/* entrata sfalsata degli elementi di una griglia */
.cma-js .cma-stagger > *{opacity:0;transform:translateY(24px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1)}
.cma-js .cma-stagger.is-in > *{opacity:1;transform:none}
.cma-stagger > :nth-child(2){transition-delay:.1s}
.cma-stagger > :nth-child(3){transition-delay:.2s}
.cma-stagger > :nth-child(4){transition-delay:.3s}
.cma-stagger > :nth-child(5){transition-delay:.4s}
.cma-stagger > :nth-child(6){transition-delay:.5s}

/* testo che si accende parola per parola */
.cma-word{transition:opacity .35s ease}
.cma-js .cma-words .cma-word{opacity:.16}
.cma-js .cma-words .cma-word.on{opacity:1}

/* immagini guidate dallo scroll (solo CSS, nessun impatto sulle prestazioni) */
@supports (animation-timeline: view()){
 .cma-grow{animation:cmaGrow linear both;animation-timeline:view();animation-range:entry 0% cover 45%}
 @keyframes cmaGrow{from{transform:scale(.86);border-radius:48px;opacity:.6}to{transform:scale(1);opacity:1}}
 .cma-zoom{overflow:hidden;border-radius:24px}
 .cma-zoom img,.cma-zoom .cma-ph{animation:cmaZoom linear both;animation-timeline:view();animation-range:cover 0% cover 100%}
 @keyframes cmaZoom{from{transform:scale(1.16)}to{transform:scale(1)}}
}

/* sezione bloccata: la foto resta ferma, i passaggi scorrono */
.cma-pin{display:grid;gap:24px;margin-top:48px}
.cma-pin-media{display:none}
.cma-pin-steps{display:grid;gap:24px}
.cma-pin-step{background:var(--cma-ivory);border-radius:24px;padding:34px;margin:0!important}
.cma-pin-step h3{font-family:var(--wp--preset--font-family--sans);font-size:20px;font-weight:600;margin:12px 0 6px}
@media(min-width:900px){
 .cma-pin{grid-template-columns:1fr 1fr;gap:72px;align-items:start}
 .cma-pin-media{display:block;position:sticky;top:120px;height:min(70vh,620px)}
 .cma-pin-slide{margin:0!important;height:100%}
 .cma-js .cma-pin-slide{position:absolute;inset:0;opacity:0;transform:scale(.97);transition:opacity .6s ease,transform .9s cubic-bezier(.2,.8,.2,1)}
 .cma-js .cma-pin-slide.is-active{opacity:1;transform:none}
 .cma-pin-slide .cma-ph,.cma-pin-slide figure,.cma-pin-slide img{height:100%;min-height:0;width:100%;margin:0;object-fit:cover;border-radius:24px}
 .cma-pin-steps{gap:0}
 .cma-pin-step{background:transparent;padding:0;min-height:62vh;display:flex;flex-direction:column;justify-content:center}
 .cma-pin-step .cma-num{font-size:72px!important}
 .cma-pin-step h3{font-family:var(--wp--preset--font-family--serif);font-weight:400;font-size:clamp(2rem,3vw,2.75rem)}
 .cma-js .cma-pin-step{opacity:.25;transition:opacity .5s ease}
 .cma-js .cma-pin-step.is-active{opacity:1}
}

@media(prefers-reduced-motion:reduce){
 .cma-js .cma-stagger > *{opacity:1;transform:none;transition:none}
 .cma-grow,.cma-zoom img,.cma-zoom .cma-ph{animation:none}
 .cma-js .cma-pin-slide,.cma-js .cma-pin-step{transition:none}
}

/* breadcrumb Rank Math */
.rank-math-breadcrumb{font-size:13px;color:var(--cma-muted)}
.rank-math-breadcrumb p{margin:0}
.rank-math-breadcrumb a{color:inherit;text-decoration:none}
.rank-math-breadcrumb a:hover{color:var(--cma-bronze)}
.rank-math-breadcrumb .separator{margin:0 .4em;opacity:.7}
.is-style-cma-dark .rank-math-breadcrumb{color:var(--cma-muted-d)}
.is-style-cma-dark .rank-math-breadcrumb a:hover{color:var(--cma-gold)}
.cma-center .rank-math-breadcrumb{text-align:center}

/* sezioni a tutta larghezza anche dentro contenitori stretti */
body{overflow-x:clip}
.wp-block-post-content > .alignfull{width:auto;max-width:none}

/* ===== Spaziature sezioni (v1.8) ===== */
.cma-section{padding-top:clamp(88px,9vw,140px)!important;padding-bottom:clamp(88px,9vw,140px)!important}
.is-style-cma-dark.cma-section{padding-top:clamp(112px,12vw,180px)!important;padding-bottom:clamp(112px,12vw,180px)!important}
/* sezioni attaccate tra loro, senza strisce chiare */
.wp-block-post-content > .alignfull{margin-top:0!important;margin-bottom:0!important}
.wp-block-post-content > :last-child{margin-bottom:0!important}
/* nessuno spazio tra contenuto e piè di pagina */
.wp-site-blocks > *{margin-block-start:0!important}
.wp-site-blocks > main,.wp-site-blocks > .wp-block-group{margin:0!important;padding-bottom:0!important}
.wp-block-post-content{margin-bottom:0!important}
footer.wp-block-template-part,.cma-footer{margin-top:0!important}
.cma-footer-inner{border-top:0}

/* recensioni */
.cma-reviews{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px;margin-top:40px}
.cma-review-card{background:#fff;border-radius:24px;padding:36px 32px;margin:0!important;text-align:center}
.cma-review-card p{margin:0 0 6px}
.cma-review-card .has-large-font-size{font-family:var(--wp--preset--font-family--serif);color:var(--cma-bronze)}
.cma-review-card .wp-block-buttons{justify-content:center;margin-top:18px}

/* spazio sotto la sezione con la mappa (pagina Trattamenti) */
.cma-map-section,
.wp-block-post-content > .alignfull:has(> .wp-block-shortcode .cma-map),
.wp-block-post-content > .alignfull:has(.cma-map):not(.cma-section){padding-bottom:clamp(88px,9vw,140px)!important}

/* riga titolo + link */
.cma-head-row{display:flex!important;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:40px}
.cma-head-row > *{margin:0!important}

/* card tutte della stessa misura */
.cma-cards{align-items:stretch}
.cma-cards > .cma-card{display:flex!important;flex-direction:column;height:100%;margin:0!important}
.cma-card > *{margin-top:0!important;margin-bottom:0!important}
.cma-card > * + *{margin-top:12px!important}
.cma-card > .cma-ph,.cma-card > figure{height:280px;min-height:280px;flex:none}
.cma-card > .cma-ph + *{margin-top:20px!important}
.cma-card > :last-child{margin-top:auto!important;padding-top:16px}
.cma-card img{width:100%;height:280px;object-fit:cover}
/* entrata sfalsata senza disallineare l'altezza */
.cma-js .cma-cards.cma-stagger > *{transform:translateY(24px)}
.cma-js .cma-cards.cma-stagger.is-in > *{transform:none}

/* paragrafi vuoti lasciati per errore tra le sezioni */
.wp-block-post-content > p:empty,
.wp-block-post-content > p:has(> br:only-child){display:none!important}
.wp-site-blocks > footer,.wp-site-blocks > .wp-block-template-part:last-child{margin-top:0!important}
main.wp-block-group{padding-top:0;padding-bottom:0!important;margin-bottom:0!important}

/* apertura home: immagine a tutto schermo con titolo sopra */
.wp-block-cover.cma-hero{min-height:calc(100svh - 70px)!important;padding:clamp(96px,10vw,140px) clamp(1.25rem,4vw,2rem)!important;align-items:center}
.cma-hero .wp-block-cover__inner-container{color:var(--cma-ivory)}
.cma-hero .wp-block-cover__background{background:linear-gradient(180deg,rgba(18,17,16,.25) 0%,rgba(18,17,16,.55) 60%,rgba(18,17,16,.8) 100%)!important}
.cma-hero h1{text-shadow:0 2px 30px rgba(0,0,0,.25)}
.cma-hero .cma-muted{color:#E6DFD3}
.cma-hero .wp-block-cover__image-background,.cma-hero .wp-block-cover__video-background{animation:cmaHeroZoom 16s cubic-bezier(.2,.8,.2,1) both}
@keyframes cmaHeroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.cma-hero .wp-block-cover__image-background,.cma-hero .wp-block-cover__video-background{animation:none}}

/* icone social (Instagram, Facebook) in intestazione e piè di pagina */
.cma-social.wp-block-social-links{gap:14px;margin:0!important;padding:0}
.cma-social.is-style-logos-only .wp-social-link{color:inherit!important;background:none!important}
.cma-social .wp-social-link a{padding:4px!important;transition:color .2s,opacity .2s}
.cma-social .wp-social-link svg{width:20px;height:20px}
.cma-social-header{color:var(--wp--preset--color--ink)}
.cma-social-header .wp-social-link a:hover{color:var(--cma-bronze)}
.cma-social-footer{color:#B9B2A6}
.cma-social-footer .wp-social-link a:hover{color:var(--cma-gold)}
.cma-footer-inner{align-items:center}
.cma-footer-inner > *{margin:0!important}
@media(max-width:781px){.cma-social-header{display:none!important}}

/* nessuno spazio bianco tra l'ultima sezione e il piè di pagina (tutte le pagine) */
.wp-block-post-content,main.wp-block-group{padding-bottom:0!important;margin-bottom:0!important}
.wp-block-post-content > .wp-block-spacer:last-child,
.wp-block-post-content > :is(p,div,section):empty:last-child{display:none!important}
.wp-block-post-content > :last-child,
.wp-block-post-content > :last-child > :last-child{margin-bottom:0!important}
.wp-site-blocks > footer,.wp-site-blocks > .cma-footer{margin-block-start:0!important}

/* mappa Google dello studio [coppede_mappa_studio] */
.cma-gmap{position:relative;height:var(--cma-gmap-h,460px);border-radius:24px;overflow:hidden;background:#E7E1D7;margin-top:40px}
.cma-gmap iframe,.cma-gmap .cmplz-placeholder-element,.cma-gmap > div{position:absolute;inset:0;width:100%!important;height:100%!important;border:0}
.cma-gmap-link,.cma-maps-links{display:flex;flex-wrap:wrap;gap:10px 28px}
.cma-gmap-link{margin-top:14px!important;justify-content:center}

/* ===== Menu hamburger (mobile): tutta la pagina, sfondo nero, voci bianche centrate ===== */
/* l'effetto sfocato dell'intestazione "intrappolava" il menu nella sua altezza: si toglie quando il menu è aperto */
html.has-modal-open .cma-header,
.cma-header:has(.wp-block-navigation__responsive-container.is-menu-open){-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:var(--cma-night)!important}
.cma-header .wp-block-navigation__responsive-container.is-menu-open{box-sizing:border-box!important;position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;max-height:none!important;z-index:100000!important;background:var(--cma-night)!important;color:var(--cma-ivory)!important;padding:clamp(24px,6vw,48px)!important;overflow-y:auto}
.admin-bar .cma-header .wp-block-navigation__responsive-container.is-menu-open{top:46px!important;height:calc(100dvh - 46px)!important}
@media(min-width:783px){.admin-bar .cma-header .wp-block-navigation__responsive-container.is-menu-open{top:32px!important;height:calc(100dvh - 32px)!important}}
.cma-header .is-menu-open .wp-block-navigation__responsive-dialog,
.cma-header .is-menu-open .wp-block-navigation__responsive-container-content{min-height:100%;display:flex!important;flex-direction:column;align-items:center!important;justify-content:center!important;padding-top:0!important;margin:0!important}
.cma-header .is-menu-open .wp-block-navigation__container{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;gap:clamp(18px,3.5vh,30px)!important;width:100%;text-align:center}
.cma-header .is-menu-open .wp-block-navigation-item{justify-content:center!important;align-items:center!important;width:100%;text-align:center}
.cma-header .is-menu-open .wp-block-navigation-item__content{color:var(--cma-ivory)!important;font-family:var(--wp--preset--font-family--serif);font-size:clamp(1.75rem,7vw,2.5rem)!important;line-height:1.15;font-weight:400;padding:4px 0!important;text-align:center}
.cma-header .is-menu-open .wp-block-navigation-item__content:hover,.cma-header .is-menu-open .current-menu-item > .wp-block-navigation-item__content{color:var(--cma-gold)!important}
/* sottomenu (es. Trattamenti) sempre visibili e centrati */
.cma-header .is-menu-open .wp-block-navigation__submenu-container{position:static!important;display:flex!important;flex-direction:column;align-items:center!important;gap:10px;padding:12px 0 0!important;border:0!important;background:transparent!important;opacity:1!important;visibility:visible!important;width:auto!important;height:auto!important}
.cma-header .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-family:var(--wp--preset--font-family--sans);font-size:1.05rem!important;color:var(--cma-muted-d)!important}
.cma-header .is-menu-open .wp-block-navigation__submenu-icon{display:none!important}
/* pulsante di chiusura */
.cma-header .is-menu-open .wp-block-navigation__responsive-container-close{position:absolute!important;z-index:2;display:flex!important;background:none!important;border:0!important;padding:6px!important;cursor:pointer;color:var(--cma-ivory)!important;top:clamp(16px,4vw,28px)!important;right:clamp(16px,4vw,28px)!important}
.cma-header .wp-block-navigation__responsive-container-close svg{width:30px;height:30px;fill:currentColor}
/* icona hamburger */
.cma-header .wp-block-navigation__responsive-container-open svg{width:28px;height:28px}

/* spazio libero in alto nel menu mobile aperto (per il logo inserito dall'editor) */
.cma-header .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:clamp(120px,18vh,180px)!important;justify-content:flex-start!important;gap:clamp(18px,3.5vh,30px)}
.cma-header .is-menu-open .wp-block-site-logo,.cma-header .is-menu-open .wp-block-image{margin:0 auto!important;text-align:center}

/* elementi visibili solo nel menu mobile aperto (es. logo in negativo): classe cma-solo-mobile */
.cma-header .wp-block-navigation .cma-solo-mobile{display:none!important}
.cma-header .is-menu-open .cma-solo-mobile{display:block!important;margin:0 auto clamp(12px,3vh,28px)!important;text-align:center}
.cma-header .is-menu-open .cma-solo-mobile img{width:min(170px,45vw)!important;height:auto!important;margin:0 auto}
