body{margin:0;background:#0c0b0b;overflow-x:clip}

/* ---------- TOKEN DEL SITO ---------- */
body{
  --ms-ink:#0c0b0b;
  --ms-ink-2:#151213;
  --ms-bone:#f1ebe3;
  --ms-bone-2:#e7dfd5;
  --ms-red:#9f2029;
  --ms-red-soft:#c4545c;
  --ms-rose:#d9c4bf;
  --ms-mute-d:#9a9192;   /* testo secondario su scuro */
  --ms-mute-l:#615853;   /* testo secondario su chiaro */
  --ms-sans:"Manrope",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --ms-serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --ms-ease:cubic-bezier(.2,.7,.1,1);
  --ms-top:var(--wp-admin--admin-bar--height,0px);
}

/* ---------- STRUTTURA COMUNE A TUTTE LE SEZIONI ---------- */
.ms-sec{
  position:relative!important;display:block!important;
  /* --ms-vw = larghezza reale della finestra senza barra di scorrimento (la calcola lo script) */
  width:var(--ms-vw,100vw)!important;max-width:none!important;
  margin:0 calc(50% - var(--ms-vw,100vw) / 2)!important;padding:0!important;
  font-family:var(--ms-sans);
  -webkit-font-smoothing:antialiased;
}
.ms-sec *,.ms-sec *:before,.ms-sec *:after{box-sizing:border-box}
.ms-sec img{max-width:none}
.ms-wrap{width:min(1240px,calc(var(--ms-vw,100vw) - 40px));margin:0 auto}
@media(max-width:860px){.ms-wrap{width:calc(var(--ms-vw,100vw) - 32px)}.ms-text{font-size:15px;line-height:1.68}.ms-btn{min-height:48px}}

.ms-label{
  display:flex;align-items:center;gap:12px;
  margin:0 0 18px;
  font:700 10.5px/1 var(--ms-sans);letter-spacing:.24em;text-transform:uppercase;
}
.ms-label:before{content:"";width:34px;height:1px;background:currentColor;opacity:.6}

.ms-h2{
  margin:0;
  font:700 clamp(40px,5.2vw,78px)/.94 var(--ms-sans);
  letter-spacing:-.055em;text-wrap:balance;
}
.ms-h2 em{
  display:block;
  font-family:var(--ms-serif);font-style:italic;font-weight:400;
  letter-spacing:-.03em;font-size:1.08em;line-height:.92;
}
.ms-text{font:400 15.5px/1.72 var(--ms-sans);max-width:58ch}

/* bottoni */
.ms-btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:50px;padding:0 24px;border-radius:999px;
  font:700 12.5px/1 var(--ms-sans);letter-spacing:.01em;text-decoration:none!important;
  overflow:hidden;isolation:isolate;
  transition:transform .45s var(--ms-ease),background .3s,color .3s,border-color .3s;
  will-change:transform;
}
.ms-btn .ms-arr{display:inline-block;transition:transform .45s var(--ms-ease)}
.ms-btn:hover .ms-arr{transform:translateX(4px)}
.ms-btn:after{
  content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;
  background:var(--ms-red);transform:translateY(101%);transition:transform .5s var(--ms-ease);
}
.ms-btn:hover:after{transform:translateY(0)}
.ms-btn:hover{color:#fff!important;border-color:var(--ms-red)!important}
.ms-btn:focus-visible{outline:2px solid var(--ms-red-soft);outline-offset:3px}
.ms-btn--light{background:#fff;color:#111!important}
.ms-btn--dark{background:#141213;color:#fff!important}
.ms-btn--ghost-d{border:1px solid rgba(255,255,255,.3);color:#fff!important;background:rgba(255,255,255,.04);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.ms-btn--ghost-l{border:1px solid rgba(0,0,0,.2);color:#141213!important}

/* resa foto: leggera correzione tono/contrasto, non altera volti né colori capelli */
.ms-photo{filter:contrast(1.05) saturate(1.06) brightness(1.02)}

/* se una foto non si carica resta un fondo caldo al posto dell'icona rotta */
.ms-par,#ms26Gallery figure,#ms26Haircare .hc-small,#ms26Hero .hero-media{background:linear-gradient(140deg,#3d2d29,#151112)}
img.ms-broken{opacity:0!important}
#ms26Nav .nav-logo.is-text img{display:none}
#ms26Nav .nav-logo.is-text:after{content:"Marzio Staff";display:block;line-height:1;padding:6px 2px;color:#fff;font:400 19px/1 var(--ms-serif);font-style:italic;white-space:nowrap}
#ms26Haircare .hc-logo.ms-broken,
/* ---------- ANIMAZIONI (attive solo se il JS gira) ---------- */
.ms-js [data-ms-reveal]{opacity:0;transform:translate3d(0,38px,0);transition:opacity 1s var(--ms-ease),transform 1.1s var(--ms-ease);transition-delay:calc(var(--i,0) * 90ms)}
.ms-js [data-ms-reveal="fade"]{transform:none}
.ms-js [data-ms-reveal="left"]{transform:translate3d(-40px,0,0)}
.ms-js [data-ms-reveal="right"]{transform:translate3d(40px,0,0)}
.ms-js [data-ms-reveal].is-in{opacity:1;transform:none}

/* righe di titolo che salgono da una maschera */
.ms-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.ms-line>span{display:block}
.ms-js .ms-lines .ms-line>span{transform:translate3d(0,108%,0);transition:transform 1.25s var(--ms-ease);transition-delay:calc(var(--i,0) * 120ms)}
.ms-js .ms-lines.is-in .ms-line>span{transform:none}

/* foto che si aprono come una tenda */
.ms-js [data-ms-curtain]{clip-path:inset(100% 0 0 0);transition:clip-path 1.4s var(--ms-ease)}
.ms-js [data-ms-curtain] img{transform:scale(1.25);transition:transform 1.8s var(--ms-ease)}
.ms-js [data-ms-curtain].is-in{clip-path:inset(0 0 0 0)}
.ms-js [data-ms-curtain].is-in img{transform:scale(1)}

/* contenitore parallax: l'immagine è più alta e scorre dentro */
.ms-par{position:relative;overflow:hidden}
.ms-par>img{position:absolute;left:0;width:100%;height:122%;top:-11%;object-fit:cover;display:block;
  translate:0 var(--py,0px);will-change:translate}

@media(prefers-reduced-motion:reduce){
  .ms-js [data-ms-reveal],.ms-js .ms-lines .ms-line>span,.ms-js [data-ms-curtain],.ms-js [data-ms-curtain] img{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
  .ms-par>img{translate:none!important}
}

/* ---------- BARRA AVANZAMENTO + MENU FISSO ---------- */
#ms26Progress{position:fixed;z-index:100001;left:0;top:var(--ms-top);height:2px;width:100%;
  background:var(--ms-red);transform-origin:0 50%;transform:scaleX(0);pointer-events:none}

#ms26Nav{
  position:fixed;z-index:100000;left:0;right:0;top:var(--ms-top);
  font-family:var(--ms-sans);color:#fff;
  transition:transform .6s var(--ms-ease),background .4s,border-color .4s,backdrop-filter .4s;
  border-bottom:1px solid rgba(255,255,255,0);
}
#ms26Nav *{box-sizing:border-box}
#ms26Nav.is-solid{background:rgba(12,11,11,.72);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);border-color:rgba(255,255,255,.08)}
#ms26Nav.is-hidden{transform:translateY(-110%)}
#ms26Nav .nav-in{width:min(1240px,calc(100% - 40px));margin:0 auto;height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;transition:height .4s var(--ms-ease)}
#ms26Nav.is-solid .nav-in{height:64px}
#ms26Nav .nav-logo{display:block;line-height:0;text-decoration:none!important}
#ms26Nav .nav-logo img{width:96px;height:auto;max-height:46px;object-fit:contain;display:block;transition:width .4s var(--ms-ease)}
#ms26Nav.is-solid .nav-logo img{width:80px}
#ms26Nav .nav-menu{display:flex;align-items:center;gap:30px}
#ms26Nav .nav-menu a{position:relative;color:#fff;text-decoration:none;font-size:12.5px;font-weight:600;letter-spacing:.01em}
#ms26Nav .nav-menu a:not(.ms-btn):after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ms-ease)}
#ms26Nav .nav-menu a:not(.ms-btn):hover:after,#ms26Nav .nav-menu a.is-current:after{transform:scaleX(1);transform-origin:left}
#ms26Nav .ms-btn{min-height:40px;padding:0 18px;font-size:12px}
#ms26Nav .nav-burger{display:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:transparent;color:#fff;cursor:pointer;padding:0}
#ms26Nav .nav-burger span{display:block;width:16px;height:1.5px;margin:4px auto;background:currentColor;transition:transform .4s var(--ms-ease)}
#ms26Nav.is-open .nav-burger span:first-child{transform:translateY(2.75px) rotate(45deg)}
#ms26Nav.is-open .nav-burger span:last-child{transform:translateY(-2.75px) rotate(-45deg)}

/* menu mobile a tutto schermo (fuori dal menu, così niente lo può ritagliare) */
#ms26Sheet{display:none}
@media(max-width:860px){
  #ms26Nav .nav-in{height:64px;width:calc(100% - 32px)}
  #ms26Nav.is-solid .nav-in{height:58px}
  #ms26Nav .nav-logo img,#ms26Nav.is-solid .nav-logo img{width:78px}
  #ms26Nav .nav-menu{gap:8px}
  #ms26Nav .nav-menu>a:not(.ms-btn){display:none}
  #ms26Nav .ms-btn{min-height:42px;padding:0 16px}
  #ms26Nav .nav-burger{display:block}
  #ms26Sheet{
    display:flex;flex-direction:column;justify-content:center;gap:4px;
    position:fixed;z-index:99999;left:0;right:0;bottom:0;top:var(--ms-top);
    padding:90px 28px 40px;background:#0c0b0b;font-family:var(--ms-sans);
    clip-path:circle(0% at calc(100% - 38px) 32px);transition:clip-path .8s var(--ms-ease);
    pointer-events:none;visibility:hidden;
  }
  #ms26Sheet.is-open{clip-path:circle(150% at calc(100% - 38px) 32px);pointer-events:auto;visibility:visible}
  #ms26Sheet a{color:#fff;text-decoration:none;font:400 44px/1.15 var(--ms-serif);font-style:italic;
    opacity:0;transform:translateY(20px);transition:opacity .5s,transform .6s var(--ms-ease)}
  #ms26Sheet.is-open a{opacity:1;transform:none;transition-delay:calc(.25s + var(--i,0) * 60ms)}
  #ms26Sheet small{margin-top:28px;color:#9a9192;font-size:13px;line-height:1.7}
}

/* =========================================================
   HERO
   ========================================================= */
#ms26Hero{
  background:var(--ms-ink);color:#fff;
  min-height:max(680px,100svh);
  overflow:hidden;
  display:flex!important;flex-direction:column;
}
#ms26Hero .hero-media{position:absolute;inset:-4%;
  translate:calc(var(--mx,0) * 14px) calc(var(--sy,0px) + var(--my,0) * 10px);
  will-change:translate}
#ms26Hero .hero-media img{width:100%;height:100%;object-fit:cover;object-position:57% center;display:block;
  animation:ms26HeroIn 2.4s var(--ms-ease) both}
@keyframes ms26HeroIn{from{transform:scale(1.18);opacity:0;filter:contrast(1.05) saturate(.6) brightness(.7)}to{transform:scale(1.03);opacity:1}}
#ms26Hero .hero-shade{position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(8,7,7,.92) 0%,rgba(8,7,7,.7) 40%,rgba(8,7,7,.15) 100%),
    linear-gradient(0deg,rgba(8,7,7,.85) 0%,transparent 38%)}
#ms26Hero .hero-glow{position:absolute;width:780px;height:780px;right:-260px;top:-260px;border-radius:50%;
  background:radial-gradient(circle,rgba(159,32,41,.32),rgba(159,32,41,.08) 45%,transparent 70%);
  filter:blur(10px);animation:ms26Glow 12s ease-in-out infinite alternate;pointer-events:none}
@keyframes ms26Glow{to{transform:translate3d(-120px,110px,0)}}
#ms26Hero .hero-grain{position:absolute;inset:0;opacity:.07;pointer-events:none;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

#ms26Hero .hero-inner{position:relative;z-index:3;flex:1;
  display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.62fr);gap:70px;align-items:end;
  padding:150px 0 120px}
#ms26Hero .hero-copy{min-width:0}
#ms26Hero .ms-label{color:rgba(255,255,255,.72)}
#ms26Hero .ms-label:before{background:var(--ms-red-soft);opacity:1}
#ms26Hero h1{margin:0;color:#fff;
  font:800 clamp(52px,7.4vw,118px)/.9 var(--ms-sans);letter-spacing:-.065em;text-wrap:balance}
#ms26Hero h1 em{font-family:var(--ms-serif);font-style:italic;font-weight:400;letter-spacing:-.035em;color:#f3e9e2;font-size:1.06em}
#ms26Hero .hero-copy>p{max-width:540px;margin:30px 0 32px;color:rgba(255,255,255,.76);font-size:16px;line-height:1.7}
#ms26Hero .hero-actions{display:flex;flex-wrap:wrap;gap:10px}

#ms26Hero .hero-proof{justify-self:end;width:min(310px,100%);padding:26px;border-radius:24px;
  border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.025));
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 30px 80px rgba(0,0,0,.3)}
#ms26Hero .proof-title{color:rgba(255,255,255,.66);font-size:9.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;margin-bottom:6px}
#ms26Hero .proof-row{display:grid;grid-template-columns:64px 1fr;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1)}
#ms26Hero .proof-row strong{font:400 38px/1 var(--ms-serif);font-style:italic;color:#fff}
#ms26Hero .proof-row span{color:rgba(255,255,255,.64);text-align:right;font-size:11px;line-height:1.4}
#ms26Hero .proof-address{padding-top:16px;color:rgba(255,255,255,.66);font-size:11px;line-height:1.7}
#ms26Hero .proof-address a{color:#fff;text-decoration:none}

/* nastro che scorre */
#ms26Hero .hero-marquee{position:relative;z-index:3;border-top:1px solid rgba(255,255,255,.12);overflow:hidden;padding:16px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
#ms26Hero .marquee-track{display:flex;width:max-content;animation:ms26Marquee 38s linear infinite}
#ms26Hero .marquee-track span{display:flex;align-items:center;gap:34px;padding-right:34px;white-space:nowrap;
  color:rgba(255,255,255,.55);font:400 22px/1 var(--ms-serif);font-style:italic}
#ms26Hero .marquee-track i{width:6px;height:6px;border-radius:50%;background:var(--ms-red-soft);display:inline-block}
@keyframes ms26Marquee{to{transform:translateX(-50%)}}

#ms26Hero .hero-scroll{position:absolute;z-index:4;right:max(20px,calc((100vw - 1240px)/2));bottom:76px;
  display:flex;flex-direction:column;align-items:center;gap:10px;color:rgba(255,255,255,.5);
  font-size:9px;letter-spacing:.24em;text-transform:uppercase;writing-mode:vertical-rl}
#ms26Hero .hero-scroll:after{content:"";width:1px;height:54px;background:linear-gradient(rgba(255,255,255,.7),transparent);animation:ms26Drop 2s var(--ms-ease) infinite}
@keyframes ms26Drop{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* ingresso hero al caricamento */
.ms-js #ms26Hero .hero-copy .ms-label,.ms-js #ms26Hero .hero-copy>p,.ms-js #ms26Hero .hero-actions,.ms-js #ms26Hero .hero-proof{opacity:0;transform:translateY(24px);animation:ms26Up 1.1s var(--ms-ease) forwards}
.ms-js #ms26Hero .hero-copy .ms-label{animation-delay:.35s}
.ms-js #ms26Hero .hero-copy>p{animation-delay:1s}
.ms-js #ms26Hero .hero-actions{animation-delay:1.15s}
.ms-js #ms26Hero .hero-proof{animation-delay:1.3s}
.ms-js #ms26Hero h1 .ms-line>span{transform:translateY(108%);animation:ms26Rise 1.3s var(--ms-ease) forwards}
.ms-js #ms26Hero h1 .ms-line:nth-child(1)>span{animation-delay:.5s}
.ms-js #ms26Hero h1 .ms-line:nth-child(2)>span{animation-delay:.65s}
@keyframes ms26Up{to{opacity:1;transform:none}}
@keyframes ms26Rise{to{transform:none}}

@media(max-width:860px){
  #ms26Hero{min-height:max(640px,100svh)}
  #ms26Hero .hero-shade{background:linear-gradient(0deg,rgba(8,7,7,.96) 0%,rgba(8,7,7,.62) 52%,rgba(8,7,7,.28) 100%)}
  #ms26Hero .hero-media img{object-position:60% center}
  #ms26Hero .hero-inner{display:flex;align-items:flex-end;padding:110px 0 48px}
  #ms26Hero .ms-wrap{width:calc(var(--ms-vw,100vw) - 32px)}
  #ms26Hero .hero-media{inset:0}
  #ms26Hero .hero-proof,#ms26Hero .hero-scroll{display:none}
  #ms26Hero h1{font-size:clamp(42px,12.4vw,62px);letter-spacing:-.055em}
  #ms26Hero .hero-copy>p{font-size:14.5px;margin:22px 0 24px}
  #ms26Hero .marquee-track span{font-size:18px}
}
@media(max-width:470px){
  #ms26Hero .hero-actions{display:grid;grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  #ms26Hero .hero-media img,#ms26Hero .hero-glow,#ms26Hero .marquee-track,#ms26Hero .hero-scroll:after{animation:none!important}
  .ms-js #ms26Hero *{animation:none!important;opacity:1!important;transform:none!important}
}


#ms26Story{background:var(--ms-bone);color:#161414;overflow:hidden}
#ms26Story:before{content:"";position:absolute;width:620px;height:620px;right:-300px;bottom:-280px;border-radius:50%;
  background:radial-gradient(circle,rgba(159,32,41,.13),rgba(159,32,41,.03) 45%,transparent 70%);
  animation:ms26StoryGlow 12s ease-in-out infinite alternate}
@keyframes ms26StoryGlow{to{transform:translate(-90px,-70px)}}

/* numero enorme sullo sfondo */
#ms26Story .st-bignum{position:absolute;left:-2vw;top:40px;z-index:0;pointer-events:none;
  font:400 clamp(260px,38vw,560px)/.8 var(--ms-serif);font-style:italic;color:transparent;
  -webkit-text-stroke:1px rgba(159,32,41,.16);translate:0 var(--py,0px)}

#ms26Story .st-wrap{position:relative;z-index:2;padding:130px 0;
  display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}
#ms26Story .st-media{position:relative;min-width:0}
#ms26Story .st-photo{height:640px;border-radius:2px}
#ms26Story .st-photo:hover img{scale:1.03}
#ms26Story .st-photo img{transition:scale 1s var(--ms-ease)}
#ms26Story .st-gen{position:absolute;right:-28px;bottom:36px;width:170px;padding:24px;background:#fff;
  box-shadow:0 28px 60px rgba(35,20,18,.14)}
#ms26Story .st-gen strong{display:block;color:var(--ms-red);font:400 72px/.8 var(--ms-serif);font-style:italic}
#ms26Story .st-gen span{display:block;margin-top:12px;font-size:9.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}

/* le quattro generazioni come segmenti */
#ms26Story .st-gens{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:14px}
#ms26Story .st-gens i{height:3px;background:rgba(159,32,41,.18);position:relative;overflow:hidden}
#ms26Story .st-gens i:after{content:"";position:absolute;inset:0;background:var(--ms-red);transform:scaleX(0);transform-origin:left;transition:transform .9s var(--ms-ease)}
#ms26Story .st-gen.is-in .st-gens i:after{transform:scaleX(1)}
#ms26Story .st-gen.is-in .st-gens i:nth-child(2):after{transition-delay:.3s}
#ms26Story .st-gen.is-in .st-gens i:nth-child(3):after{transition-delay:.6s}
#ms26Story .st-gen.is-in .st-gens i:nth-child(4):after{transition-delay:.9s}

#ms26Story .st-copy{min-width:0}
#ms26Story .ms-label{color:#7e706b}
#ms26Story .ms-h2 em{color:#4a2224}
#ms26Story .st-text{margin-top:30px;color:var(--ms-mute-l)}
#ms26Story .st-text p{margin:0 0 16px}
#ms26Story .st-quote{margin:30px 0 0;padding:4px 0 4px 26px;border-left:2px solid var(--ms-red);
  color:#2f2324;font:400 clamp(24px,2.2vw,30px)/1.3 var(--ms-serif);font-style:italic;max-width:30ch}
#ms26Story .st-actions{margin-top:34px;display:flex;gap:10px;flex-wrap:wrap}

@media(max-width:860px){
  #ms26Story .st-wrap{grid-template-columns:1fr;gap:46px;padding:84px 0}
  #ms26Story .st-photo{height:440px}
  #ms26Story .st-gen{right:14px;bottom:-26px;width:140px;padding:18px}
  #ms26Story .st-gen strong{font-size:56px}
  #ms26Story .st-bignum{top:auto;bottom:-40px}
}


#ms26Method{
  background-color:var(--ms-ink);color:#fff;
  overflow:clip; /* "clip" e non "hidden": serve al titolo che resta fermo mentre scorri */
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:72px 72px;
}
#ms26Method .m-wrap{padding:130px 0 120px;display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
#ms26Method .m-head{position:sticky;top:calc(var(--ms-top) + 120px);min-width:0}
#ms26Method .ms-label{color:#9a7f83}
#ms26Method .ms-h2 em{color:var(--ms-rose)}
#ms26Method .m-intro{margin-top:26px;color:var(--ms-mute-d)}

#ms26Method .m-steps{position:relative;padding-left:56px;min-width:0}
#ms26Method .m-progress{position:absolute;left:14px;top:12px;bottom:12px;width:1px;background:rgba(255,255,255,.12)}
#ms26Method .m-progress i{position:absolute;inset:0;background:linear-gradient(var(--ms-red-soft),var(--ms-red));transform-origin:top;transform:scaleY(0)}

#ms26Method .m-step{position:relative;padding:44px 0;border-bottom:1px solid rgba(255,255,255,.08);transition:opacity .6s var(--ms-ease)}
#ms26Method .m-step:last-child{border-bottom:0}
/* le fasi si "accendono" solo se lo script gira; senza script restano tutte visibili */
.ms-js #ms26Method .m-step{opacity:.35}
.ms-js #ms26Method .m-step.is-active{opacity:1}
#ms26Method .m-step:before{content:"";position:absolute;left:-47px;top:56px;width:11px;height:11px;border-radius:50%;
  background:var(--ms-ink);border:1px solid rgba(255,255,255,.35);transition:background .5s,border-color .5s,box-shadow .5s}
#ms26Method .m-step.is-active:before{background:var(--ms-red);border-color:var(--ms-red);box-shadow:0 0 0 6px rgba(159,32,41,.2)}
#ms26Method .m-num{display:block;margin-bottom:14px;color:#7a7375;font:600 11px/1 var(--ms-sans);letter-spacing:.2em}
#ms26Method .m-step h3{margin:0 0 12px;color:#fff;font:400 clamp(38px,4vw,58px)/1 var(--ms-serif);font-style:italic;letter-spacing:-.02em}
#ms26Method .m-step p{margin:0;color:#a29c9e;font-size:15.5px;line-height:1.65;max-width:40ch}

#ms26Method .m-cta{grid-column:1/-1;margin-top:20px;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:30px;
  border:1px solid rgba(255,255,255,.1);border-radius:24px;
  background:linear-gradient(100deg,rgba(159,32,41,.18),rgba(255,255,255,.02) 60%)}
#ms26Method .m-cta strong{display:block;font-size:20px;font-weight:700;letter-spacing:-.02em;margin-bottom:4px}
#ms26Method .m-cta span{color:var(--ms-mute-d);font-size:14px}

@media(prefers-reduced-motion:reduce){#ms26Method .m-step{opacity:1}}
@media(max-width:860px){
  #ms26Method .m-wrap{grid-template-columns:1fr;gap:30px;padding:84px 0}
  #ms26Method .m-head{position:static}
  #ms26Method .m-steps{padding-left:44px}
  #ms26Method .m-step{padding:30px 0}
  #ms26Method .m-step:before{left:-35px;top:40px}
  #ms26Method .m-cta{display:block;padding:24px}
  #ms26Method .m-cta .ms-btn{margin-top:18px}
}


#ms26Services{background:#f6f1eb;color:#161414;overflow:hidden}
#ms26Services .sv-wrap{padding:130px 0 110px}
#ms26Services .sv-head{display:grid;grid-template-columns:1.1fr .7fr;gap:80px;align-items:end;margin-bottom:56px}
#ms26Services .sv-head>*{min-width:0}
#ms26Services .ms-label{color:#7e706b}
#ms26Services .ms-h2 em{color:#5c2a2d}
#ms26Services .sv-head p{margin:0;color:var(--ms-mute-l)}

#ms26Services .sv-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}
#ms26Services .sv-side{display:grid;grid-template-rows:repeat(3,1fr);gap:14px}
#ms26Services .sv-card{position:relative;overflow:hidden;border-radius:4px;color:#fff;isolation:isolate;min-height:200px}
#ms26Services .sv-card--big{min-height:660px}
#ms26Services .sv-card img{transition:scale 1.2s var(--ms-ease)}
#ms26Services .sv-card:hover img{scale:1.06}
#ms26Services .sv-card:after{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(10,8,8,0) 30%,rgba(10,8,8,.82));transition:opacity .6s}
#ms26Services .sv-body{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}
#ms26Services .sv-tag{display:inline-block;margin-bottom:12px;padding:6px 11px;border-radius:999px;
  background:rgba(255,255,255,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  font-size:9.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
#ms26Services .sv-card h3{margin:0 0 8px;color:#fff;font-weight:400;font-family:var(--ms-serif);font-style:italic;letter-spacing:-.01em}
#ms26Services .sv-card--big h3{font-size:clamp(32px,3.4vw,48px);line-height:1.02;max-width:16ch}
#ms26Services .sv-side h3{font-size:28px;line-height:1.05}
#ms26Services .sv-card p{margin:0;color:rgba(255,255,255,.8);font-size:13px;line-height:1.55;max-width:44ch}
/* il testo secondario sale al passaggio del mouse */
@media(hover:hover){
  #ms26Services .sv-side .sv-card p{max-height:0;opacity:0;transition:max-height .6s var(--ms-ease),opacity .5s}
  #ms26Services .sv-side .sv-card:hover p{max-height:60px;opacity:1}
}
#ms26Services .sv-plus{position:absolute;z-index:2;top:20px;right:20px;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(255,255,255,.4);display:grid;place-items:center;font-size:18px;line-height:1;
  transition:transform .6s var(--ms-ease),background .4s}
#ms26Services .sv-card:hover .sv-plus{transform:rotate(90deg);background:var(--ms-red);border-color:var(--ms-red)}

#ms26Services .sv-bottom{margin-top:44px;padding-top:30px;border-top:1px solid rgba(0,0,0,.12);
  display:flex;justify-content:space-between;align-items:center;gap:40px}
#ms26Services .sv-bottom p{margin:0;color:var(--ms-mute-l);font-size:15px;line-height:1.65;max-width:58ch}

@media(max-width:860px){
  #ms26Services .sv-wrap{padding:84px 0}
  #ms26Services .sv-head{grid-template-columns:1fr;gap:18px;margin-bottom:34px}
  #ms26Services .sv-grid{grid-template-columns:1fr}
  #ms26Services .sv-card--big{min-height:440px}
  #ms26Services .sv-side{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  #ms26Services .sv-side .sv-card{min-height:250px}
  #ms26Services .sv-side .sv-card:last-child{grid-column:span 2}
  #ms26Services .sv-side h3{font-size:23px}
  #ms26Services .sv-body{left:18px;right:18px;bottom:18px}
  #ms26Services .sv-bottom{display:block}
  #ms26Services .sv-bottom .ms-btn{margin-top:20px}
}
@media(max-width:470px){
  #ms26Services .sv-side{grid-template-columns:1fr}
  #ms26Services .sv-side .sv-card:last-child{grid-column:auto}
}


#ms26Gallery{background:var(--ms-ink);color:#fff;overflow:clip}
#ms26Gallery .gal-sticky{padding:110px 0 70px}
#ms26Gallery .gal-head{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:end;margin-bottom:44px}
#ms26Gallery .gal-head>*{min-width:0}
#ms26Gallery .ms-label{color:#8c7276}
#ms26Gallery .ms-h2 em{color:var(--ms-rose)}
#ms26Gallery .gal-head p{margin:0;color:var(--ms-mute-d)}

#ms26Gallery .gal-track{display:flex;gap:16px;align-items:stretch;
  padding:0 max(20px,calc((100vw - 1240px)/2));
  overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
#ms26Gallery .gal-track::-webkit-scrollbar{display:none}
#ms26Gallery figure{position:relative;flex:0 0 auto;margin:0;height:min(62vh,560px);scroll-snap-align:center;overflow:hidden;border-radius:4px}
#ms26Gallery figure.w-l{width:min(46vw,640px)}
#ms26Gallery figure.w-m{width:min(34vw,460px)}
#ms26Gallery figure.w-s{width:min(26vw,360px)}
#ms26Gallery figure img{width:100%;height:100%;object-fit:cover;display:block;transition:scale 1.1s var(--ms-ease)}
#ms26Gallery figure:hover img{scale:1.05}
#ms26Gallery figcaption{position:absolute;left:18px;right:18px;bottom:16px;z-index:2;display:flex;justify-content:space-between;align-items:baseline;
  font:400 22px/1 var(--ms-serif);font-style:italic;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.4)}
#ms26Gallery figcaption small{font:600 10px/1 var(--ms-sans);letter-spacing:.2em;color:rgba(255,255,255,.7)}
#ms26Gallery figure:after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}

/* scheda finale dentro la galleria */
#ms26Gallery .gal-end{flex:0 0 auto;width:min(30vw,380px);display:flex;flex-direction:column;justify-content:flex-end;gap:22px;
  padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:4px;scroll-snap-align:center;
  background:linear-gradient(160deg,rgba(159,32,41,.25),rgba(255,255,255,.02))}
#ms26Gallery .gal-end p{margin:0;color:#d9d2d3;font:400 26px/1.25 var(--ms-serif);font-style:italic}

#ms26Gallery .gal-foot{margin-top:28px;display:flex;align-items:center;gap:24px}
#ms26Gallery .gal-bar{flex:1;height:1px;background:rgba(255,255,255,.14);position:relative}
#ms26Gallery .gal-bar i{position:absolute;inset:0;background:#fff;transform-origin:left;transform:scaleX(0)}
#ms26Gallery .gal-hint{color:#7d7678;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}

/* modalità "fissata" su desktop: la sezione resta ferma e le foto scorrono */
#ms26Gallery.is-pinned .gal-sticky{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;padding:calc(var(--ms-top) + 70px) 0 40px;overflow:hidden}
#ms26Gallery.is-pinned .gal-track{overflow:visible;scroll-snap-type:none;will-change:transform}
#ms26Gallery.is-pinned figure{height:min(52vh,520px)}

@media(max-width:900px){
  #ms26Gallery .gal-sticky{padding:84px 0 60px}
  #ms26Gallery .gal-head{grid-template-columns:1fr;gap:16px;margin-bottom:30px}
  #ms26Gallery figure{height:400px}
  #ms26Gallery figure.w-l,#ms26Gallery figure.w-m,#ms26Gallery figure.w-s{width:78vw}
  #ms26Gallery figure.w-s{width:62vw}
  #ms26Gallery .gal-end{width:78vw}
}


#ms26Haircare{background:linear-gradient(120deg,#eee7df,#e4dad0);color:#161414;overflow:hidden}
#ms26Haircare .hc-wrap{padding:130px 0;display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}
#ms26Haircare .hc-copy{min-width:0}
#ms26Haircare .hc-logo{width:80px;max-height:48px;object-fit:contain;margin-bottom:30px;display:block}
#ms26Haircare .ms-label{color:#816d69}
#ms26Haircare .ms-h2 em{color:#57292d}
#ms26Haircare .hc-copy>p{margin:26px 0 0;color:var(--ms-mute-l)}
#ms26Haircare .hc-actions{margin-top:32px;display:flex;gap:10px;flex-wrap:wrap}

#ms26Haircare .hc-media{position:relative;min-height:620px;min-width:0}
#ms26Haircare .hc-big{position:absolute;top:0;bottom:0;left:0;width:72%;border-radius:4px}
#ms26Haircare .hc-small{position:absolute;right:0;bottom:-30px;width:44%;height:58%;border:8px solid #ebe3da;border-radius:4px;
  box-shadow:0 30px 70px rgba(55,30,30,.18);translate:0 var(--py,0px)}
#ms26Haircare .hc-small img{width:100%;height:100%;object-fit:cover;display:block}

/* timbro circolare che ruota con lo scroll */
#ms26Haircare .hc-badge{position:absolute;z-index:3;left:62%;top:36px;width:136px;height:136px;border-radius:50%;
  background:var(--ms-red);color:#fff;display:grid;place-items:center;box-shadow:0 18px 40px rgba(159,32,41,.35)}
#ms26Haircare .hc-badge svg{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px)}
#ms26Haircare .hc-badge text{fill:#fff;font:700 8.2px var(--ms-sans);letter-spacing:.2em;text-transform:uppercase}
#ms26Haircare .hc-badge b{font:400 34px/1 var(--ms-serif);font-style:italic}

@media(max-width:860px){
  #ms26Haircare .hc-wrap{grid-template-columns:1fr;gap:48px;padding:84px 0 110px}
  #ms26Haircare .hc-media{min-height:460px}
  #ms26Haircare .hc-badge{width:104px;height:104px;left:auto;right:6px;top:-30px}
  #ms26Haircare .hc-badge b{font-size:26px}
}


/* azzera ciò che WordPress lascia dopo l'ultimo blocco */
body,body .wp-site-blocks,body .wp-site-blocks>main,body main,body main.wp-block-group,body .wp-block-post-content,body .entry-content{margin-bottom:0!important;padding-bottom:0!important}
body .wp-block-post-content>.wp-block-html:last-child+*,body .entry-content>.wp-block-html:last-child+*{margin:0!important;padding:0!important}

#ms26Contact{overflow:hidden;color:#fff;
  background:radial-gradient(circle at 82% 6%,rgba(159,32,41,.4),transparent 32%),linear-gradient(150deg,#1a1214,#0c0b0b 65%)}
#ms26Contact .ct-wrap{padding:130px 0 0}
#ms26Contact .ct-intro{max-width:980px;margin-bottom:60px}
#ms26Contact .ms-label{color:#b08f93}
#ms26Contact .ms-h2{font-size:clamp(44px,6.2vw,96px)}
#ms26Contact .ms-h2 em{color:#efe3dd}
#ms26Contact .ct-sub{margin-top:26px;color:var(--ms-mute-d)}

#ms26Contact .ct-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;padding-bottom:70px}
#ms26Contact .ct-grid>*{min-width:0}
#ms26Contact .ct-card{padding:30px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:rgba(255,255,255,.03)}
#ms26Contact .ct-item{display:block;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;text-decoration:none}
#ms26Contact .ct-item:first-child{padding-top:0}
#ms26Contact .ct-item small{display:block;margin-bottom:8px;color:#a3868a;font-size:9.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
#ms26Contact .ct-item strong{display:flex;justify-content:space-between;align-items:center;gap:16px;font:400 clamp(26px,2.6vw,36px)/1.1 var(--ms-serif);font-style:italic}
#ms26Contact .ct-item strong:after{content:"↗";font:400 18px var(--ms-sans);transition:transform .45s var(--ms-ease)}
#ms26Contact .ct-item:hover strong:after{transform:translate(4px,-4px)}
#ms26Contact .ct-actions{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px}

#ms26Contact .ct-faq .ms-label{margin-bottom:8px}
#ms26Contact details{border-bottom:1px solid rgba(255,255,255,.1)}
#ms26Contact summary{position:relative;padding:22px 44px 22px 0;cursor:pointer;list-style:none;font-size:16px;font-weight:600;line-height:1.4;transition:color .3s}
#ms26Contact summary::-webkit-details-marker{display:none}
#ms26Contact summary:hover{color:var(--ms-rose)}
#ms26Contact summary:after{content:"";position:absolute;right:4px;top:50%;width:14px;height:14px;margin-top:-7px;
  background:linear-gradient(currentColor,currentColor) center/14px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 14px no-repeat;
  transition:transform .5s var(--ms-ease)}
#ms26Contact details[open] summary:after{transform:rotate(135deg)}
#ms26Contact details p{margin:0 0 22px;color:#a19a9c;font-size:14.5px;line-height:1.65;max-width:56ch;animation:ms26Faq .6s var(--ms-ease)}
@keyframes ms26Faq{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

#ms26Contact .ct-map{width:min(1300px,calc(100vw - 24px));margin:0 auto;padding:8px 8px 0;border:1px solid rgba(255,255,255,.1);border-bottom:0;border-radius:26px 26px 0 0;background:rgba(255,255,255,.035);overflow:hidden}
#ms26Contact .ct-map>div{height:380px;overflow:hidden;border-radius:18px 18px 0 0}
#ms26Contact .ct-map iframe{width:100%;height:100%;display:block;border:0;filter:grayscale(.35) contrast(1.05)}

/* footer con firma gigante */

#ms26MobileCTA{display:none}

@media(max-width:860px){
  #ms26Contact .ct-wrap{padding-top:84px}
  #ms26Contact .ct-intro{margin-bottom:40px}
  #ms26Contact .ct-grid{grid-template-columns:1fr;gap:44px;padding-bottom:56px}
  #ms26Contact .ct-card{padding:22px}
  #ms26Contact .ct-map>div{height:290px}
      
  #ms26MobileCTA{position:fixed;z-index:99999;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));
    display:flex;gap:6px;padding:6px;border:1px solid rgba(255,255,255,.14);border-radius:18px;
    background:rgba(12,11,11,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 14px 40px rgba(0,0,0,.35);
    font-family:var(--ms-sans);transform:translateY(140%);transition:transform .6s var(--ms-ease)}
  #ms26MobileCTA.is-on{transform:none}
  #ms26MobileCTA a{flex:1;min-height:46px;display:flex;align-items:center;justify-content:center;border-radius:12px;text-decoration:none;font-size:12px;font-weight:700}
  #ms26MobileCTA .mobile-book{background:#fff;color:#111}
  #ms26MobileCTA .mobile-map{color:#fff;border:1px solid rgba(255,255,255,.16)}
}


/* ---------- CARATTERI SUL NOSTRO SERVER (nessun dato a Google Fonts) ---------- */
@font-face{font-family:"Manrope";font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/ms-manrope.woff2) format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/ms-instrument.woff2) format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(fonts/ms-instrument-italic.woff2) format("woff2")}

/* ---------- TEMA ---------- */
body{font-family:var(--ms-sans);color:#f4efea}
.ms-main{display:block}
.ms-skip{position:absolute;left:12px;top:-60px;z-index:100002;padding:10px 16px;border-radius:10px;background:#fff;color:#111;font:700 13px/1 var(--ms-sans);text-decoration:none;transition:top .2s}
.ms-skip:focus{top:calc(var(--ms-top) + 12px)}
#ms26Nav a:focus-visible,#ms26Sheet a:focus-visible,.ms-sec a:focus-visible,.ms-sec summary:focus-visible,.ms-sec button:focus-visible{outline:2px solid var(--ms-red-soft);outline-offset:3px;border-radius:6px}
#ms26Sheet small a{color:inherit;font:inherit;opacity:1;transform:none}

/* stato "aperto ora" */
[data-ms-open] i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#a39b9e;flex:none}
[data-ms-open].is-open i{background:#3fbf72;box-shadow:0 0 0 0 rgba(63,191,114,.55);animation:ms26Ping 2.2s ease-out infinite}
[data-ms-open].is-closed i{background:var(--ms-red-soft)}
@keyframes ms26Ping{0%{box-shadow:0 0 0 0 rgba(63,191,114,.5)}70%,100%{box-shadow:0 0 0 9px rgba(63,191,114,0)}}
#ms26Hero .proof-open{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;font-size:11.5px;font-weight:600;line-height:1.4}

/* ---------- ORARI E RECENSIONI ---------- */
#ms26Info{overflow:hidden;color:#fff;background:radial-gradient(circle at 12% 0%,rgba(255,255,255,.12),transparent 38%),linear-gradient(150deg,#a3222c,#7c171f 70%,#5e1117)}
#ms26Info .in-wrap{padding:120px 0}
#ms26Info .ms-label{color:#f1cfd2}
#ms26Info .ms-h2 em{color:#fff3ee}
#ms26Info .in-head{margin-bottom:56px}
#ms26Info .in-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:stretch}
#ms26Info .in-grid>*,#ms26Info .in-side>*{min-width:0}
#ms26Info .in-side{display:grid;gap:22px}
#ms26Info .in-card{display:block;padding:30px;border-radius:24px;border:1px solid rgba(255,255,255,.18);background:rgba(20,6,8,.18);color:#fff;text-decoration:none;
  transition:transform .6s var(--ms-ease),background .4s,border-color .4s}
#ms26Info a.in-card:hover{transform:translateY(-4px);background:rgba(20,6,8,.28);border-color:rgba(255,255,255,.32)}
#ms26Info small{display:block;color:#f1cfd2;font-size:9.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
#ms26Info .in-top{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
#ms26Info .in-status{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border-radius:999px;background:rgba(0,0,0,.2);font-size:12px;font-weight:600}
#ms26Info .in-days{list-style:none;margin:0 0 28px;padding:0}
#ms26Info .in-days li{display:flex;justify-content:space-between;gap:16px;padding:14px 4px;border-bottom:1px solid rgba(255,255,255,.14);font-size:15px;transition:background .4s,padding .4s}
#ms26Info .in-days li b{font:400 21px/1.1 var(--ms-serif);font-style:italic;letter-spacing:.01em}
#ms26Info .in-days li.off{color:rgba(255,255,255,.62)}
#ms26Info .in-days li.is-today{padding-left:14px;padding-right:14px;border-radius:12px;background:rgba(255,255,255,.12);border-bottom-color:transparent}
#ms26Info .in-days li.is-today span:after{content:"Oggi";margin-left:10px;padding:3px 8px;border-radius:99px;background:#fff;color:#7c171f;font-size:9.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;vertical-align:2px}
#ms26Info .in-score{display:flex;align-items:center;gap:18px;margin:16px 0 10px}
#ms26Info .in-score strong{font:400 84px/.9 var(--ms-serif);font-style:italic;letter-spacing:-.03em}
#ms26Info .in-stars{position:relative;display:inline-block;width:132px;height:24px;
  background:linear-gradient(90deg,#fff calc(var(--v) * 100%),rgba(255,255,255,.28) 0);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 24'%3E%3Cg fill='%23000'%3E%3Cpath id='s' d='M12 1.5l3.1 6.6 7.2.9-5.3 5 1.4 7.1L12 17.6 5.6 21.1 7 14l-5.3-5 7.2-.9z'/%3E%3Cuse href='%23s' x='27'/%3E%3Cuse href='%23s' x='54'/%3E%3Cuse href='%23s' x='81'/%3E%3Cuse href='%23s' x='108'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 24'%3E%3Cg fill='%23000'%3E%3Cpath id='s' d='M12 1.5l3.1 6.6 7.2.9-5.3 5 1.4 7.1L12 17.6 5.6 21.1 7 14l-5.3-5 7.2-.9z'/%3E%3Cuse href='%23s' x='27'/%3E%3Cuse href='%23s' x='54'/%3E%3Cuse href='%23s' x='81'/%3E%3Cuse href='%23s' x='108'/%3E%3C/g%3E%3C/svg%3E") center/100% 100% no-repeat}
#ms26Info .in-card p{margin:0;color:rgba(255,255,255,.78);font-size:14.5px;line-height:1.6}
#ms26Info .in-social strong{display:block;margin:12px 0 8px;font:400 clamp(32px,3vw,44px)/1 var(--ms-serif);font-style:italic}
#ms26Info .in-link{display:inline-flex;gap:8px;margin-top:18px;font-size:12.5px;font-weight:700}
#ms26Info .in-link .ms-arr{transition:transform .45s var(--ms-ease)}
#ms26Info a.in-card:hover .in-link .ms-arr{transform:translate(3px,-3px)}
@media(max-width:860px){
  #ms26Info .in-wrap{padding:84px 0}
  #ms26Info .in-head{margin-bottom:36px}
  #ms26Info .in-grid{grid-template-columns:1fr}
  #ms26Info .in-card{padding:22px}
  #ms26Info .in-score strong{font-size:68px}
}

/* ---------- MAPPA CARICATA SOLO SU RICHIESTA ---------- */
#ms26Contact .ct-map-box{position:relative;height:380px;overflow:hidden;border-radius:18px 18px 0 0;
  background:radial-gradient(circle at 50% 60%,rgba(159,32,41,.35),transparent 55%),
  repeating-linear-gradient(0deg,rgba(255,255,255,.045) 0 1px,transparent 1px 46px),repeating-linear-gradient(90deg,rgba(255,255,255,.045) 0 1px,transparent 1px 46px),#141012}
#ms26Contact .ct-map-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center}
#ms26Contact .ct-map-ph strong{font:400 clamp(26px,3vw,38px)/1.1 var(--ms-serif);font-style:italic}
#ms26Contact .ct-map-ph p{max-width:46ch;margin:0;color:#a19a9c;font-size:13.5px;line-height:1.6}
#ms26Contact .ct-map-act{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}
#ms26Contact .ct-map-pin{width:46px;height:46px;border-radius:50% 50% 50% 0;background:var(--ms-red);transform:rotate(-45deg);box-shadow:0 14px 30px rgba(159,32,41,.45);position:relative;animation:ms26Pin 2.6s var(--ms-ease) infinite}
#ms26Contact .ct-map-pin:after{content:"";position:absolute;inset:15px;border-radius:50%;background:#fff}
@keyframes ms26Pin{0%,100%{translate:0 0}50%{translate:0 -6px}}
#ms26Contact .ct-map-box iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;filter:grayscale(.35) contrast(1.05)}
#ms26Contact .ct-map-box.is-loaded .ct-map-ph{display:none}
@media(max-width:860px){#ms26Contact .ct-map-box{height:330px}}
@media(prefers-reduced-motion:reduce){#ms26Contact .ct-map-pin,[data-ms-open].is-open i{animation:none}}

/* ---------- FOOTER ---------- */
#ms26Footer{background:#080707;overflow:hidden;color:#a39b9e}
#ms26Footer .ct-sign{padding:56px 0 0;text-align:center;font:400 clamp(64px,15vw,230px)/.8 var(--ms-serif);font-style:italic;letter-spacing:-.04em;
  color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.14);white-space:nowrap;translate:0 var(--py,0px)}
#ms26Footer .ft-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr .8fr;gap:40px;padding:56px 0 40px;border-bottom:1px solid rgba(255,255,255,.08)}
#ms26Footer .ft-grid>*{min-width:0}
#ms26Footer .ft-brand img{width:110px;height:auto;display:block;margin-bottom:16px}
#ms26Footer .ft-brand p{margin:0;max-width:36ch;font-size:13px;line-height:1.7}
#ms26Footer .ft-col{display:flex;flex-direction:column;gap:9px;font-size:13px;line-height:1.55}
#ms26Footer .ft-col b{margin-bottom:4px;color:#fff;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase}
#ms26Footer a{color:#a39b9e;text-decoration:none;transition:color .3s}
#ms26Footer a:hover{color:#fff}
#ms26Footer .ft-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:22px 0 30px;font-size:11.5px;color:#7a7375}
#ms26Footer .ft-bottom nav{display:flex;gap:20px;flex-wrap:wrap}
@media(max-width:860px){
  #ms26Footer .ft-grid{grid-template-columns:1fr 1fr;gap:30px;padding:40px 0 30px}
  #ms26Footer .ft-brand{grid-column:1/-1}
  #ms26Footer .ft-bottom{padding-bottom:96px}
}
@media(max-width:420px){#ms26Footer .ft-grid{grid-template-columns:1fr}}

/* ---------- PAGINE DI TESTO (privacy, cookie, 404) ---------- */
.ms-page{background:var(--ms-bone);color:#1b1718}
.ms-page .ms-wrap{padding:150px 0 110px}
.ms-page .ms-label{color:#816d69}
.ms-page h1{margin:0 0 34px;font:700 clamp(40px,6vw,76px)/.95 var(--ms-sans);letter-spacing:-.05em;text-wrap:balance}
.ms-page h1 em{font-family:var(--ms-serif);font-style:italic;font-weight:400;letter-spacing:-.02em}
.ms-prose{max-width:72ch;font-size:16px;line-height:1.75;color:#3b3335}
.ms-prose h2{margin:44px 0 12px;font:700 22px/1.25 var(--ms-sans);letter-spacing:-.02em;color:#141213}
.ms-prose h3{margin:28px 0 8px;font-size:17px;color:#141213}
.ms-prose p,.ms-prose ul,.ms-prose ol{margin:0 0 16px}
.ms-prose ul,.ms-prose ol{padding-left:22px}
.ms-prose li{margin-bottom:6px}
.ms-prose a{color:var(--ms-red);text-underline-offset:3px}
.ms-prose table{width:100%;border-collapse:collapse;margin:8px 0 22px;font-size:14px}
.ms-prose th,.ms-prose td{padding:10px 8px;border-bottom:1px solid rgba(0,0,0,.12);text-align:left;vertical-align:top}
.ms-prose .wp-block-table{overflow-x:auto;margin:0}
.ms-page .ms-upd{margin-top:40px;color:#7a6f6b;font-size:13px}
.ms-404 .ms-btn{margin-top:10px}
@media(max-width:860px){.ms-page .ms-wrap{padding:120px 0 80px}.ms-prose{font-size:15px}}
body.ms-inner #ms26Nav{background:rgba(12,11,11,.92);border-color:rgba(255,255,255,.08)}
.ms-prose code{font:500 .86em/1.4 ui-monospace,Menlo,monospace;word-break:break-all;background:rgba(0,0,0,.05);padding:1px 5px;border-radius:5px}

/* ---------- 1.1 · DETTAGLI DI MOVIMENTO (sobri, da salone storico) ---------- */
/* foto: un velo rosso Marzio Staff sale e si ritira scoprendo l'immagine */
#ms26Story .st-photo{position:relative}
.ms-js [data-ms-curtain]:after{content:"";position:absolute;inset:0;z-index:4;background:var(--ms-red);transform-origin:50% 0;pointer-events:none}
.ms-js [data-ms-curtain].is-in:after{transform:scaleY(0);transition:transform 1.05s cubic-bezier(.7,0,.2,1) .5s}
/* cambio pagina dissolto, dove il browser lo permette */
@media(prefers-reduced-motion:no-preference){
  @view-transition{navigation:auto}
  ::view-transition-old(root){animation:ms26VtOut .3s cubic-bezier(.4,0,1,1) both}
  ::view-transition-new(root){animation:ms26VtIn .55s cubic-bezier(.2,.7,.1,1) both}
}
@keyframes ms26VtOut{to{opacity:0}}
@keyframes ms26VtIn{from{opacity:0;transform:translateY(14px)}}

/* Home: la riga "Parrucchieri a Bologna" fa parte del titolo principale */
#ms26Hero h1 .hero-kicker{margin:0 0 22px;letter-spacing:.24em;line-height:1.4;font-size:10.5px}
#ms26Hero h1 .ms-line:nth-child(2)>span{animation-delay:.5s}
#ms26Hero h1 .ms-line:nth-child(3)>span{animation-delay:.65s}

/* Home: ogni scheda servizio porta alla sua pagina */
#ms26Services .sv-link{position:absolute;inset:0;z-index:3;display:flex;align-items:flex-start;justify-content:flex-end;padding:18px;text-decoration:none;color:#fff}
#ms26Services .sv-link span{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(12,11,11,.42);border:1px solid rgba(255,255,255,.28);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font:700 10px/1 var(--ms-sans);letter-spacing:.14em;text-transform:uppercase;transition:background .45s,border-color .45s}
#ms26Services .sv-link .ms-arr{font-style:normal;transition:transform .45s var(--ms-ease)}
#ms26Services .sv-card:hover .sv-link span,#ms26Services .sv-link:focus-visible span{background:var(--ms-red);border-color:var(--ms-red)}
#ms26Services .sv-card:hover .sv-link .ms-arr{transform:translateX(4px)}
#ms26Services .sv-link:focus-visible{outline:2px solid var(--ms-red-soft);outline-offset:-4px}
#ms26Services .sv-plus{display:none}
@media(max-width:560px){#ms26Services .sv-link{padding:12px}#ms26Services .sv-link span{padding:9px 12px;font-size:9.5px}}
@media(min-width:1101px){#ms26Footer .ft-grid{grid-template-columns:1.3fr 1fr 1fr 1.1fr .8fr}}
@media(max-width:1100px) and (min-width:861px){#ms26Footer .ft-grid{grid-template-columns:repeat(4,1fr)}#ms26Footer .ft-brand{grid-column:1/-1}}

/* ---------- PAGINE DEI SERVIZI ---------- */
.svp-hero{background:var(--ms-ink);color:#fff;overflow:hidden}
.svp-hero .hero-grain{position:absolute;inset:0;pointer-events:none;opacity:.05;
  background-image:radial-gradient(rgba(255,255,255,.7) 1px,transparent 1px);background-size:3px 3px}
.svp-hero-in{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,84px);align-items:center;padding:150px 0 100px;min-height:min(100svh,940px)}
.svp-copy{min-width:0}
.svp-crumbs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 34px;font-size:12px;color:var(--ms-mute-d)}
.svp-crumbs a{color:inherit;text-decoration:none;transition:color .3s}
.svp-crumbs a:hover{color:#fff}
.svp-crumbs [aria-current]{color:#d8d0d2}
.svp-hero .ms-label{color:var(--ms-rose)}
.svp-hero .ms-label:before{background:var(--ms-red-soft);opacity:1}
.svp-h1{margin:0 0 28px;font:700 clamp(40px,5.3vw,82px)/.95 var(--ms-sans);letter-spacing:-.055em;text-wrap:balance}
.svp-h1 em{display:block;font-family:var(--ms-serif);font-style:italic;font-weight:400;letter-spacing:-.03em;font-size:1.08em;line-height:.95}
.svp-intro{margin:0 0 34px;color:#cfc7c9}
.svp-actions{display:flex;flex-wrap:wrap;gap:12px}
.svp-open{display:flex;align-items:center;gap:10px;margin-top:30px;color:#cfc7c9;font-size:12.5px;font-weight:600}
.svp-photo{position:relative;margin:0;aspect-ratio:4/5;max-height:calc(100svh - 190px);width:100%;justify-self:end;border-radius:4px;overflow:hidden;
  background:linear-gradient(140deg,#3d2d29,#151112)}
.svp-photo img{width:100%;height:100%;object-fit:cover;display:block}
.svp-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(12,11,11,.35));pointer-events:none}
/* entrata della pagina: tutto a tempo, finisce sempre */
.ms-js .svp-copy>*{opacity:0;transform:translateY(22px);animation:ms26Up 1s var(--ms-ease) forwards}
.ms-js .svp-copy>.svp-crumbs{animation-delay:.1s}
.ms-js .svp-copy>.ms-label{animation-delay:.2s}
.ms-js .svp-copy>.svp-h1{opacity:1;transform:none;animation:none}
.ms-js .svp-h1 .ms-line>span{transform:translateY(108%);animation:ms26Rise 1.25s var(--ms-ease) forwards}
.ms-js .svp-h1 .ms-line:nth-child(1)>span{animation-delay:.3s}
.ms-js .svp-h1 .ms-line:nth-child(2)>span{animation-delay:.45s}
.ms-js .svp-copy>.svp-intro{animation-delay:.7s}
.ms-js .svp-copy>.svp-actions{animation-delay:.82s}
.ms-js .svp-copy>.svp-open{animation-delay:.94s}
.ms-js .svp-photo{animation:ms26Clip 1.5s cubic-bezier(.7,0,.2,1) .15s both}
.ms-js .svp-photo img{animation:ms26Settle 2.2s var(--ms-ease) .15s both}
@keyframes ms26Clip{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes ms26Settle{from{transform:scale(1.16)}to{transform:none}}

.svp-eval{background:var(--ms-bone);color:#161414}
.svp-eval-in{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,100px);align-items:start;padding:clamp(84px,11vw,150px) 0}
.svp-eval-head{position:sticky;top:120px}
.svp-eval .ms-label{color:#816d69}
.svp-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(0,0,0,.12)}
.svp-list li{position:relative;display:grid;grid-template-columns:70px 1fr;gap:6px 18px;padding:28px 0;border-bottom:1px solid rgba(0,0,0,.12)}
.svp-list li:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--ms-red);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ms-ease)}
.svp-list li:hover:after{transform:scaleX(1)}
.svp-list b{grid-row:span 2;color:var(--ms-red);font:400 38px/1 var(--ms-serif);font-style:italic}
.svp-list h3{margin:0;font:700 19px/1.3 var(--ms-sans);letter-spacing:-.02em}
.svp-list p{margin:0;color:var(--ms-mute-l);font-size:15px;line-height:1.65}

.svp-method{background:var(--ms-ink);color:#fff}
.svp-method .ms-wrap{padding:clamp(84px,11vw,150px) 0}
.svp-method .ms-label{color:var(--ms-rose)}
.svp-method-head{max-width:760px}
.svp-method-head .ms-text{margin:24px 0 0;color:#a19a9c}
.svp-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:60px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08)}
.svp-step{position:relative;padding:34px 28px 40px;background:var(--ms-ink);transition:background .5s}
.svp-step:hover{background:#141112}
.svp-step:before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:var(--ms-red);transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ms-ease) calc(var(--i,0) * 160ms + .25s)}
.svp-step.is-in:before{transform:scaleX(1)}
.svp-step span{color:var(--ms-red-soft);font:700 10px/1 var(--ms-sans);letter-spacing:.2em;text-transform:uppercase}
.svp-step h3{margin:52px 0 12px;font:400 36px/1 var(--ms-serif);font-style:italic;letter-spacing:-.01em}
.svp-step p{margin:0;color:#a19a9c;font-size:14.5px;line-height:1.65}

.svp-faq{background:var(--ms-bone-2);color:#161414}
.svp-faq-in{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(32px,6vw,100px);padding:clamp(84px,11vw,150px) 0}
.svp-faq .ms-label{color:#816d69}
.svp-faq-head .ms-text{margin:24px 0 0;color:var(--ms-mute-l)}
.svp-faq-head a{color:var(--ms-red);font-weight:700;text-decoration:none;white-space:nowrap}
.svp-faq-list{border-top:1px solid rgba(0,0,0,.14)}
.svp-faq details{border-bottom:1px solid rgba(0,0,0,.14)}
.svp-faq summary{position:relative;padding:24px 46px 24px 0;cursor:pointer;list-style:none;font-size:17px;font-weight:700;line-height:1.4;letter-spacing:-.01em;transition:color .3s}
.svp-faq summary::-webkit-details-marker{display:none}
.svp-faq summary:hover{color:var(--ms-red)}
.svp-faq summary:focus-visible{outline:2px solid var(--ms-red);outline-offset:4px}
.svp-faq summary:after{content:"";position:absolute;right:6px;top:50%;width:14px;height:14px;margin-top:-7px;
  background:linear-gradient(currentColor,currentColor) center/14px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 14px no-repeat;transition:transform .5s var(--ms-ease)}
.svp-faq details[open] summary:after{transform:rotate(135deg)}
.svp-faq details p{margin:0 0 24px;max-width:60ch;color:var(--ms-mute-l);font-size:15px;line-height:1.7;animation:ms26Faq .6s var(--ms-ease)}

.svp-more{background:var(--ms-ink-2);color:#fff}
.svp-more .ms-wrap{padding:clamp(84px,11vw,140px) 0 clamp(84px,10vw,120px)}
.svp-more .ms-label{color:var(--ms-rose)}
.svp-others{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:52px}
.svp-other{display:flex;flex-direction:column;min-width:0;border-radius:4px;overflow:hidden;background:#1b1718;border:1px solid rgba(255,255,255,.07);color:#fff;text-decoration:none;transition:border-color .45s}
.svp-other:hover{border-color:rgba(196,84,92,.6)}
.svp-other:focus-visible{outline:2px solid var(--ms-red-soft);outline-offset:3px}
.svp-other-img{display:block;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(140deg,#3d2d29,#151112)}
.svp-other-img img{width:100%;height:100%;object-fit:cover;display:block;transition:scale 1.1s var(--ms-ease)}
.svp-other:hover .svp-other-img img{scale:1.05}
.svp-other-t{position:relative;display:block;padding:20px 52px 22px 22px}
.svp-other-t small{display:block;margin-bottom:8px;color:var(--ms-red-soft);font-size:9.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.svp-other-t strong{display:block;font:400 25px/1.05 var(--ms-serif);font-style:italic}
.svp-other-t .ms-arr{position:absolute;right:22px;bottom:22px;font-style:normal;transition:transform .45s var(--ms-ease)}
.svp-other:hover .ms-arr{transform:translateX(5px)}
.svp-visit{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:30px;margin-top:60px;padding:clamp(28px,4vw,48px);border-radius:4px;
  background:var(--ms-red);background-image:radial-gradient(120% 140% at 100% 0,rgba(255,255,255,.12),transparent 55%)}
.svp-visit-txt{min-width:0}
.svp-visit .ms-label{color:rgba(255,255,255,.75)}
.svp-visit strong{display:block;margin-bottom:20px;font:400 clamp(30px,3.6vw,48px)/1 var(--ms-serif);font-style:italic}
.svp-hours{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.svp-hours li{padding:9px 14px;border:1px solid rgba(255,255,255,.3);border-radius:999px;font-size:12.5px;color:rgba(255,255,255,.88)}
.svp-hours li b{margin-left:4px;color:#fff}
.svp-hours li.is-today{background:#fff;border-color:#fff;color:#7c171f}
.svp-hours li.is-today b{color:#7c171f}
.svp-visit-act{display:flex;flex-wrap:wrap;gap:12px}

@media(max-width:1024px){
  .svp-steps{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
  .svp-hero-in{grid-template-columns:1fr;gap:40px;padding:112px 0 64px;min-height:0}
  .svp-photo{aspect-ratio:4/4.2;max-height:none;justify-self:stretch}
  .svp-crumbs{margin-bottom:26px}
  .svp-eval-in,.svp-faq-in{grid-template-columns:1fr;gap:36px}
  .svp-eval-head{position:static}
  .svp-list li{grid-template-columns:52px 1fr;padding:22px 0}
  .svp-list b{font-size:30px}
  .svp-steps{margin-top:40px}
  .svp-step{padding:28px 20px 30px}
  .svp-step h3{margin-top:34px;font-size:30px}
  .svp-faq summary{font-size:16px}
  .svp-others{grid-template-columns:1fr;gap:12px;margin-top:36px}
  .svp-other{flex-direction:row;align-items:stretch}
  .svp-other-img{flex:0 0 116px;aspect-ratio:auto}
  .svp-other-t{flex:1;align-self:center;padding:18px 44px 18px 18px}
  .svp-other-t strong{font-size:21px}
  .svp-other-t .ms-arr{right:16px;bottom:auto;top:50%;margin-top:-.6em}
  .svp-visit{margin-top:40px}
  .svp-visit-act,.svp-visit-act .ms-btn{width:100%}
}
@media(max-width:560px){.svp-steps{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  .ms-js [data-ms-curtain]:after{display:none}
  .ms-js .svp-copy>*,.ms-js .svp-h1 .ms-line>span,.ms-js .svp-photo,.ms-js .svp-photo img{opacity:1!important;transform:none!important;clip-path:none!important;animation:none!important}
  .svp-step:before{transform:scaleX(1);transition:none}
}
@media(max-width:560px){#ms26Hero h1 .hero-kicker{font-size:9.5px;letter-spacing:.16em}#ms26Hero h1 .hero-kicker:before{display:none}}

/* 1.1.3 · Il metodo su computer: il titolo resta fermo mentre scorri le fasi, quindi il riquadro
   "Non devi sapere già cosa chiedere" sta nella colonna delle fasi e non passa più sotto al titolo */
@media(min-width:861px){
  #ms26Method .m-cta{grid-column:2;flex-wrap:wrap;margin-left:56px}
}
