.cma-map{background:#121110;color:#F6F3EE;border-radius:32px;padding:36px clamp(18px,4vw,56px) 48px}
.cma-map .cma-tabs{display:flex;gap:4px;background:#24211D;padding:5px;border-radius:999px;width:max-content;margin:0 auto 28px}
.cma-map .cma-tabs button{min-height:44px;padding:0 30px;border:0;border-radius:999px;background:transparent;color:#CFC7BA;font:500 15px var(--wp--preset--font-family--sans);cursor:pointer;transition:background .25s,color .25s}
.cma-map .cma-tabs button[aria-selected="true"]{background:#F6F3EE;color:#121110;font-weight:600}
.cma-map-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:40px;align-items:center}
.cma-fig{position:relative;width:100%;margin:0 auto}
.cma-fig[hidden]{display:none}
.cma-fig.viso,.cma-fig.corpo{max-width:460px;aspect-ratio:2/3}
.cma-fig > svg,.cma-fig > img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.cma-fig > img{-webkit-mask-image:linear-gradient(to bottom,#000 74%,transparent 99%),linear-gradient(to left,transparent 0,#000 9%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,#000 74%,transparent 99%),linear-gradient(to left,transparent 0,#000 9%);mask-composite:intersect}
.cma-hot{position:absolute;transform:translate(-50%,-50%);width:48px;height:48px;border:0;border-radius:50%;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.cma-hot span{width:14px;height:14px;border-radius:50%;background:#121110;border:2px solid #F6F3EE;box-shadow:0 0 0 6px rgba(201,168,111,.45);transition:all .3s cubic-bezier(.2,.8,.2,1);animation:cmaPulse 2.6s ease-in-out infinite}
.cma-hot[aria-pressed="true"] span{width:20px;height:20px;background:#C9A86F;border:2px solid #121110;box-shadow:0 0 0 8px rgba(18,17,16,.35);animation:none}
.cma-hot:hover span{box-shadow:0 0 0 9px rgba(201,168,111,.55)}
.cma-hot:focus-visible{outline:2px solid #C9A86F;outline-offset:2px}
@keyframes cmaPulse{50%{box-shadow:0 0 0 11px rgba(201,168,111,.12)}}
.cma-panel{min-height:420px;display:flex;flex-direction:column;justify-content:center}
.cma-panel .cma-kicker{color:#C9A86F}
.cma-panel h2,.cma-panel-title{color:#F6F3EE;margin:12px 0 18px;font-family:var(--wp--preset--font-family--serif);font-weight:400;line-height:1.08;font-size:clamp(2.25rem,4vw,3.5rem)}
.cma-zpanel[hidden]{display:none}
.cma-zpanel{display:flex;flex-direction:column}
.cma-tlist{display:flex;flex-direction:column;gap:10px;animation:cmaFade .45s ease}
.cma-trow{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#1E1C19;border:1px solid #34302B;border-radius:18px;padding:18px 22px;color:#F6F3EE!important;transition:border-color .25s,background .25s}
.cma-trow:hover{border-color:#C9A86F;background:#24211D}
.cma-trow strong{display:block;font-size:17px;margin-bottom:4px}
.cma-trow small{display:block;color:#CFC7BA;font-size:14.5px;line-height:1.5}
.cma-trow > span{color:#C9A86F;font-size:20px}
.cma-panel .cma-book{align-self:flex-start;margin-top:20px;display:inline-flex;align-items:center;min-height:46px;padding:0 24px;border-radius:999px;border:1px solid #6B6458;color:#F6F3EE!important}
.cma-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;border-top:1px solid #2E2B27;padding-top:26px;margin-top:32px}
.cma-chips button{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid #45403A;background:transparent;color:#E6DFD3;font:500 14px var(--wp--preset--font-family--sans);cursor:pointer}
.cma-chips button[aria-pressed="true"]{background:#C9A86F;border-color:#C9A86F;color:#121110;font-weight:600}
@keyframes cmaFade{from{opacity:0;transform:translateY(8px)}}
.cma-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:40px;margin-top:56px}
.cma-list h3{margin:0 0 10px;font-family:var(--wp--preset--font-family--sans);font-size:12px;font-weight:600;letter-spacing:.24em;color:#7A5F35}
.cma-list ul{list-style:none;margin:0;padding:0}
.cma-list a{display:block;padding:12px 0;border-bottom:1px solid #E2DBCF;font-size:17px}
@media(prefers-reduced-motion:reduce){.cma-hot span,.cma-tlist{animation:none}}

/* testi della mappa allineati come nella pagina Trattamenti, anche dentro sezioni centrate (home) */
.cma-center .cma-map,.cma-map{text-align:left}
.cma-center .cma-map .cma-panel .cma-book{align-self:flex-start}
