/* ══════════════════════════════════════════════════════
   atelievents — BOZZA 3 · "L'Atelier Aperto"
   Landing page. Sedici sezioni, sedici impaginazioni.
   Solo superfici chiare. Salvia = tutto ciò che si tocca.
   ══════════════════════════════════════════════════════ */

:root{
  /* superfici — tutte chiare */
  --carta:#FBF8F3; --carta-pura:#FFFDFA; --sabbia:#F2ECE1;
  --salvia-pallida:#E8EDE2; --lino:#E7DECF; --ambra:#FDF3E1;
  --bordo:#E4DACA; --filetto:rgba(51,51,51,.12);
  --alba:#F5EBDA; --sera:#E5D9C8;
  /* inchiostri */
  --antracite:#333333; --grafite:#5C5750; --nebbia:#A9A49B;
  --salvia:#6E7C63; --salvia-chip:#DCE3D5;
  --rame:#B0722C; --terracotta:#B0654A;
  /* ombre calde */
  --om1:0 1px 2px rgba(60,50,38,.05);
  --om2:0 10px 30px rgba(60,50,38,.07);
  --om3:0 18px 44px rgba(60,50,38,.12);
  --om-cta:0 6px 24px rgba(51,51,51,.18);
  --sans:"Helvetica Neue",Helvetica,Arial,"Segoe UI",system-ui,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,"Courier New",monospace;
  --mg:clamp(20px,4vw,72px);
  --pv:clamp(84px,9vw,150px);
  --e:cubic-bezier(.22,.61,.36,1);
  --eo:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--carta);color:var(--antracite);font-family:var(--sans);
  font-weight:300;font-size:17.5px;line-height:1.62;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
li{list-style:none}
p+p{margin-top:1em}
sup{font-size:.42em;vertical-align:super;opacity:.55}
#sprite{display:none}
.sprite symbol{fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.ic{width:20px;height:20px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}

/* ── tipografia ────────────────────────── */
.h2{font-size:clamp(30px,3.5vw,52px);font-weight:300;line-height:1.08;letter-spacing:-.028em}
.h2 strong{font-weight:700}
.h2--c{text-align:center}
.mono{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.16em;
  color:var(--grafite);font-weight:400;display:flex;align-items:center;gap:9px}
.mono .ic{width:15px;height:15px}
.fig{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.14em;color:var(--nebbia)}
.cifra{font-size:clamp(96px,14vw,220px);font-weight:200;line-height:.8;letter-spacing:-.05em;
  color:transparent;-webkit-text-stroke:1.5px var(--salvia);font-variant-numeric:tabular-nums}
.cifra--rame{-webkit-text-stroke:1.5px rgba(176,114,44,.42)}
.filetto{display:block;width:64px;height:1px;background:var(--salvia);margin:22px 0}
.vert{writing-mode:vertical-rl;letter-spacing:.24em}

/* ── componenti ────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 28px;border-radius:999px;
  font-size:15px;font-weight:400;border:1px solid transparent;cursor:pointer;
  transition:background .35s var(--e),color .35s var(--e),box-shadow .35s var(--e),border-color .35s}
.btn .ic{transition:transform .35s var(--e)}
.btn:hover .ic{transform:translateX(4px)}
.btn--pri{background:var(--antracite);color:var(--carta)}
.btn--pri:hover{box-shadow:var(--om-cta)}
.btn--ghost{border-color:rgba(51,51,51,.18);color:var(--antracite)}
.btn--ghost:hover{background:var(--lino)}
.btn--wa{background:var(--salvia);color:#FFFDFA}
.btn--wa:hover{box-shadow:var(--om-cta)}

.pill{display:inline-flex;align-items:center;gap:9px;height:44px;padding:0 20px;border-radius:999px;
  background:var(--carta-pura);border:1px solid var(--bordo);font-size:15px;color:var(--grafite);
  cursor:default;transition:background .3s,border-color .3s,color .3s,transform .3s var(--e)}
.pill--on{background:var(--salvia-chip);border-color:var(--salvia);color:var(--antracite)}
.pill--mini{height:28px;padding:0 12px;font-size:11.5px;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase}
.pill--mini .ic{width:14px;height:14px}
.pill--big{height:52px;font-size:19px;padding:0 24px}

.tondo{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;
  border:1px solid var(--bordo);color:var(--salvia);background:var(--carta-pura)}
.tondo .ic{width:24px;height:24px}
.tondo--full{background:var(--salvia-chip);border-color:var(--salvia)}
.bolla{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;
  border:1px solid var(--bordo);color:var(--salvia)}
.bolla .ic{width:24px;height:24px}
.timbro{position:absolute;width:110px;height:110px;color:var(--salvia);opacity:.22;
  fill:none;stroke:currentColor;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;
  transform:rotate(-12deg);pointer-events:none}
.timbro--sm{width:66px;height:66px;top:-22px;right:-18px;opacity:.3}
.rassicura{margin-top:16px;color:var(--grafite)}

/* ── cornice fissa ─────────────────────── */
.filo{position:fixed;top:0;left:0;height:2px;width:0;background:var(--rame);z-index:90}
.bar{position:fixed;top:0;left:0;right:0;z-index:80;height:64px;display:flex;align-items:center;
  justify-content:space-between;padding:0 var(--mg);transition:background .4s var(--e),box-shadow .4s,height .4s}
.bar.solid{background:rgba(251,248,243,.92);backdrop-filter:blur(12px) saturate(160%);
  height:60px;box-shadow:0 1px 0 var(--filetto)}
.bar__logo{font-size:20px;letter-spacing:-.015em}
.bar__nav{display:none;gap:26px;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.14em}
.bar__nav a{position:relative;padding-bottom:3px;color:var(--grafite)}
.bar__nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--salvia);transition:width .4s var(--e)}
.bar__nav a:hover::after{width:100%}
.bar.solid .bar__nav{display:flex}
.bar__cta{height:42px;padding:0 20px;font-size:14px}
@media(max-width:900px){.bar.solid .bar__nav{display:none}}

.dock{position:fixed;left:0;right:0;bottom:0;z-index:85;height:68px;display:none;gap:10px;padding:8px 14px;
  background:rgba(251,248,243,.94);backdrop-filter:blur(12px);box-shadow:0 -1px 0 var(--filetto);
  transform:translateY(100%);transition:transform .4s var(--e)}
.dock.on{transform:none}
.dock .btn{flex:1;justify-content:center;height:52px;font-size:14px}
@media(max-width:760px){.dock{display:flex}body{padding-bottom:0}}

/* ══ 01 HERO ══ */
.hero{padding:calc(64px + 24px) 24px 24px}
.hero__frame{position:relative}
.hero__panel{position:relative;border-radius:24px;overflow:hidden;box-shadow:var(--om2);
  min-height:min(78vh,760px);background:var(--lino)}
.hero__panel::after{content:"";position:absolute;inset:-8px auto auto -8px;width:44%;height:56%;
  border:1px solid var(--antracite);border-radius:24px;opacity:.16;pointer-events:none}
.hero__v,.hero__swap{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero__swap{opacity:0;transition:opacity .26s var(--e)}
.hero__swap.on{opacity:1}
.hero__veil{position:absolute;inset:0;background:
  linear-gradient(180deg,rgba(251,248,243,.34),rgba(251,248,243,0) 26%,rgba(251,248,243,0) 40%,rgba(251,248,243,.72)),
  radial-gradient(112% 96% at 2% 92%,rgba(251,248,243,.96),rgba(251,248,243,.62) 40%,rgba(251,248,243,.12) 68%,rgba(251,248,243,0) 84%)}
.hero__fig{position:absolute;right:22px;bottom:96px;color:rgba(51,51,51,.6)}
.hero__band{position:absolute;left:0;right:0;bottom:0;height:76px;display:flex;align-items:center;
  background:rgba(251,248,243,.74);backdrop-filter:blur(14px);padding:0 clamp(16px,3vw,40px)}
.hero__band div{flex:1;display:flex;align-items:baseline;gap:12px;border-left:1px solid var(--filetto);padding-left:clamp(12px,2vw,26px)}
.hero__band div:first-child{border-left:none;padding-left:0}
.hero__band b{font-size:clamp(22px,2.4vw,34px);font-weight:200;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.hero__band span{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.13em;color:var(--grafite)}
@media(max-width:760px){.hero__band div:nth-child(3){display:none}.hero__fig{display:none}}

.hero__eyebrow{position:absolute;top:clamp(20px,3vw,32px);left:clamp(20px,3vw,36px);color:var(--antracite);z-index:3;font-size:11px}
.hero__eyebrow i{width:34px;height:1px;background:var(--rame);display:block}
.hero__t{position:absolute;left:clamp(20px,3vw,44px);right:clamp(20px,3vw,44px);bottom:calc(76px + clamp(28px,4vw,54px));z-index:3;
  font-size:clamp(30px,4.6vw,66px);font-weight:300;line-height:1.05;letter-spacing:-.033em;max-width:17ch;
  color:var(--antracite);text-shadow:0 2px 34px rgba(251,248,243,.85),0 1px 8px rgba(251,248,243,.7)}
.hero__t strong{font-weight:700}
.ln{display:block;overflow:hidden}
.ln>b{display:block;font-weight:inherit;transform:translateY(110%);transition:transform .76s var(--eo)}
.ready .ln>b,.ln.go>b{transform:none}
.ln--out>b{color:var(--grafite)}
.hero__foot{margin-top:34px;display:flex;flex-wrap:wrap;gap:30px;align-items:flex-end;justify-content:space-between}
.hero__sub{font-size:clamp(18px,1.6vw,23px);color:var(--antracite);margin-bottom:22px;font-weight:300}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{display:inline-flex;align-items:center;gap:9px;height:40px;padding:0 18px;border-radius:999px;
  background:var(--carta);border:1px solid var(--bordo);font:400 14px/1 var(--sans);color:var(--grafite);
  cursor:pointer;transition:background .28s,border-color .28s,color .28s}
.chip .ic{width:17px;height:17px;color:var(--salvia)}
.chip.on{background:var(--salvia-chip);border-color:var(--salvia);color:var(--antracite)}
.hero__t .ln--out>b{font-weight:300;color:var(--grafite)}
@media(max-width:760px){.hero__t{position:static;margin-top:26px;max-width:none;bottom:auto}
  .hero__panel{min-height:64vh}}

/* ══ 02 PROMESSA ══ */
.pro{display:grid;gap:clamp(26px,4vw,60px);padding:var(--pv) var(--mg);align-items:start}
@media(min-width:1000px){.pro{grid-template-columns:56px 1fr 300px}}
.pro__side{display:flex;flex-direction:column;align-items:center;gap:20px}
.pro__cols{color:var(--grafite);max-width:62ch}
.pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.pills .pill{height:52px;padding:0 26px}
.pills .ic{color:var(--salvia)}
.pro__ph{position:relative}
.pro__ph img{border:10px solid var(--carta-pura);box-shadow:var(--om2);transform:rotate(-1.5deg);border-radius:4px;aspect-ratio:1;object-fit:cover}
.pro__ph figcaption{margin-top:14px}
@media(max-width:999px){.pro__side{flex-direction:row}.vert{writing-mode:horizontal-tb}}

/* ══ 03 COME FUNZIONA ══ */
.scala{position:relative;background:var(--sabbia);padding:var(--pv) var(--mg);
  border-top:1px solid var(--bordo);border-bottom:1px solid var(--bordo)}
.scala__head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:44px}
.scala__head .mono{margin-bottom:10px}
.scala__link{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.scala__list{position:relative;display:grid;gap:22px}
.step{position:relative;width:100%;background:var(--carta-pura);border:1px solid var(--bordo);
  border-radius:20px;padding:30px 34px;box-shadow:var(--om1);
  transition:transform .4s var(--e),box-shadow .4s var(--e)}
.step:hover{transform:translateY(-6px);box-shadow:var(--om3)}
.step h3{font-size:22px;font-weight:700;margin:18px 0 8px;letter-spacing:-.01em}
.step p{font-size:16px;color:var(--grafite);max-width:46ch}
.step__n{position:absolute;top:-12px;right:18px;font-size:96px;font-weight:200;line-height:1;
  color:rgba(176,114,44,.22);letter-spacing:-.05em;font-variant-numeric:tabular-nums;pointer-events:none}
.step--big{background:var(--ambra)}
@media(min-width:1000px){
  .scala__list{gap:0}
  .step{width:62%}
  .step:nth-child(1){margin-left:0}
  .step:nth-child(2){margin-left:auto;margin-top:-14px}
  .step:nth-child(3){margin-left:8%;margin-top:-14px}
  .step--big{width:78%;margin-left:auto;margin-top:-14px}
}
.scala__foot{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:44px}
.scala__foot .ic{color:var(--salvia)}
@media(max-width:999px){.step__n{font-size:66px;top:-6px}}

/* ══ 04 LOCATION ══ */
.loc{position:relative;display:grid;gap:clamp(30px,4vw,70px);padding:var(--pv) var(--mg)}
@media(min-width:1000px){.loc{grid-template-columns:40% 1fr}}
.loc__txt{position:relative}
@media(min-width:1000px){.loc__txt{position:sticky;top:118px;align-self:start}}
.loc__txt .bolla{margin:16px 0 20px}
.loc__txt .h2{margin-bottom:22px}
.loc__txt p{color:var(--grafite);max-width:40ch}
.loc__txt .btn{margin-top:26px}
.loc__txt .timbro{right:-6px;bottom:-26px}
.loc__list{border-top:1px solid var(--filetto)}
.loc__list li{position:relative;display:flex;align-items:center;gap:14px;min-height:84px;padding:14px 0;
  border-bottom:1px solid var(--filetto);cursor:pointer;
  transition:transform .4s var(--e),border-color .4s}
.loc__list li:hover{transform:translateX(10px);border-color:var(--salvia)}
.loc__list b{font-size:clamp(20px,2.1vw,27px);font-weight:400;transition:font-weight .2s}
.loc__list li:hover b{font-weight:700}
.loc__list em{margin-left:auto;font-style:normal;color:var(--nebbia)}
.cursore{position:fixed;top:0;left:0;width:320px;height:420px;z-index:70;pointer-events:none;
  opacity:0;transform:scale(.92);transition:opacity .26s var(--e),transform .26s var(--e);
  background:var(--carta-pura);padding:8px;border-radius:12px;box-shadow:var(--om3)}
.cursore.on{opacity:1;transform:none}
.cursore img{width:100%;height:100%;object-fit:cover;border-radius:6px;
  filter:blur(0);transition:filter .7s cubic-bezier(.2,.7,.2,1)}
.cursore.lock img{filter:blur(16px) saturate(.92)}
.ic--lock{position:absolute;inset:0;margin:auto;width:44px;height:44px;color:var(--carta-pura);opacity:0;transition:opacity .4s}
.cursore.lock .ic--lock{opacity:1}
@media(max-width:999px){.cursore{display:none}
  .loc__list li{flex-wrap:wrap}
  .loc__list li::after{content:"";display:block;width:100%;height:150px;border-radius:12px;
    background-image:var(--bg);background-size:cover;background-position:center;margin-top:12px}}

/* ══ 05 CIBO ══ */
.menu{background:var(--carta-pura);padding:var(--pv) var(--mg);position:relative;
  border-top:1px solid var(--bordo);border-bottom:1px solid var(--bordo)}
.menu::before{content:"";position:absolute;inset:24px;border:1px solid var(--bordo);pointer-events:none}
.menu::after{content:"";position:absolute;inset:28px;border:1px solid var(--bordo);opacity:.5;pointer-events:none}
.menu__card{position:relative;max-width:980px;margin:0 auto;background:var(--carta);border:1px solid var(--bordo);
  border-radius:4px;box-shadow:var(--om2);padding:clamp(32px,5vw,56px) clamp(24px,5vw,64px);text-align:center}
.menu__card .mono{justify-content:center;margin-bottom:20px}
.menu__card p{color:var(--grafite);max-width:56ch;margin:0 auto}
.divisore{display:flex;align-items:center;gap:16px;justify-content:center;margin:26px 0}
.divisore i{width:110px;height:1px;background:var(--bordo)}
.divisore .ic{color:var(--salvia);width:24px;height:24px}
.minichips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:28px}
.minichips span{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;
  padding:8px 16px;border-radius:999px;background:var(--salvia-chip);color:var(--antracite)}
.menu__ph{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
  max-width:1240px;margin:clamp(30px,4vw,56px) auto 0}
.menu__ph figure{position:relative}
.menu__ph img{aspect-ratio:4/5;object-fit:cover;border-radius:12px;box-shadow:var(--om1);
  transition:transform .5s var(--e)}
.menu__ph figure:nth-child(2){margin-top:28px}
.menu__ph figure:nth-child(3){margin-top:56px}
.menu__ph figcaption{margin-top:10px}
.menu__ph figure:hover img{transform:translateY(-4px)}
.menu__ph figure:hover figcaption{color:var(--salvia)}
@media(max-width:760px){.menu__ph{grid-template-columns:1fr 1fr}.menu__ph figure:nth-child(3){display:none}}

/* ══ 06 ALLESTIMENTO ══ */
.prima{position:relative}
.prima__stage{position:relative;height:76vh;min-height:420px;overflow:hidden;background:var(--lino);cursor:ew-resize;touch-action:none}
.prima__b,.prima__a img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.prima__a{position:absolute;inset:0;width:55%;overflow:hidden}
.prima__a img{width:100vw;max-width:none;filter:grayscale(1) contrast(1.06) brightness(1.1)}
.prima__a::after{content:"";position:absolute;inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%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)' opacity='.5'/%3E%3C/svg%3E");
  opacity:.28;mix-blend-mode:multiply}
.prima__h{position:absolute;top:0;bottom:0;left:55%;width:2px;background:var(--salvia);z-index:4;
  display:grid;place-items:center;cursor:ew-resize}
.prima__h::before{content:"";position:absolute;width:48px;height:48px;border-radius:50%;
  background:var(--carta-pura);box-shadow:var(--om2)}
.prima__h .ic{position:relative;width:22px;height:22px;color:var(--salvia);transform:rotate(0)}
.prima__lab{position:absolute;top:26px;z-index:3;font-family:var(--mono);font-size:11px;
  text-transform:uppercase;letter-spacing:.16em;padding:8px 16px;border-radius:999px;
  background:rgba(251,248,243,.9);color:var(--antracite)}
.prima__lab--l{left:26px}
.prima__lab--r{right:26px}
.prima__hint{position:absolute;bottom:26px;left:50%;translate:-50% 0;z-index:3;color:var(--antracite);
  background:rgba(251,248,243,.9);padding:8px 16px;border-radius:999px}
.prima__card{position:relative;background:var(--carta);border-radius:20px;box-shadow:var(--om3);
  padding:32px;max-width:460px;margin:-90px var(--mg) 0 auto;margin-right:var(--mg);z-index:5}
.prima__card .bolla{margin:14px 0 18px}
.prima__card p{color:var(--grafite);font-size:16px}
.prima__card .btn{margin-top:22px}
@media(max-width:760px){.prima__stage{height:56svh}.prima__card{margin:-50px 16px 0;max-width:none}.prima__hint{display:none}}

/* ══ 07 MUSICA ══ */
.mus{background:var(--salvia-pallida);border-top:1px solid var(--bordo);border-bottom:1px solid var(--bordo)}
.mus__pano img{width:100%;height:380px;object-fit:cover}
.mus__in{display:grid;gap:clamp(30px,4vw,64px);padding:var(--pv) var(--mg);align-items:center}
@media(min-width:1000px){.mus__in{grid-template-columns:45% 1fr}}
.mus__in .h2{margin:14px 0 18px}
.mus__in>div>p{color:var(--grafite);max-width:44ch}
.sel{margin-top:28px;border-top:1px solid var(--bordo)}
.sel li{display:flex;align-items:center;gap:14px;padding:15px 20px;border-bottom:1px solid var(--bordo);
  cursor:pointer;font-size:18px;color:var(--grafite);border-radius:999px;
  transition:background .32s var(--e),color .32s}
.sel .ic{color:var(--salvia)}
.sel li.on{background:var(--salvia-chip);color:var(--antracite);border-color:transparent}
.eq{display:flex;align-items:flex-end;gap:7px;height:44px;margin-top:26px}
.eq i{width:3px;background:var(--salvia);border-radius:999px;transform-origin:bottom;height:100%}
.eq.run i:nth-child(1){animation:eqA 1.1s var(--e) infinite alternate}
.eq.run i:nth-child(2){animation:eqA .8s var(--e) infinite alternate -.3s}
.eq.run i:nth-child(3){animation:eqA 1.4s var(--e) infinite alternate -.6s}
.eq.run i:nth-child(4){animation:eqA .9s var(--e) infinite alternate -.15s}
.eq.run i:nth-child(5){animation:eqA 1.2s var(--e) infinite alternate -.45s}
@keyframes eqA{from{transform:scaleY(.16)}to{transform:scaleY(1)}}
.mus__v{position:relative}
.mus__v img{aspect-ratio:3/4;object-fit:cover;border-radius:20px;box-shadow:var(--om2)}
@media(max-width:760px){.mus__pano img{height:220px}}

/* ══ 08 OSPITI ══ */
.osp{padding:var(--pv) var(--mg)}
.osp__head{display:flex;align-items:center;gap:clamp(16px,3vw,44px);flex-wrap:wrap;margin-bottom:56px}
.osp__head .cifra{margin-left:calc(var(--mg) * -.4)}
.osp__head .h2{margin-top:12px}
.asse{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:60px}
.asse__linea{position:absolute;top:28px;left:6%;right:6%;height:1.5px;background:var(--salvia);
  transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--e)}
.in .asse__linea{transform:scaleX(1)}
.nodo{display:grid;justify-items:center;gap:14px;text-align:center;position:relative;z-index:2}
.nodo .tondo{width:56px;height:56px;transition:transform .5s var(--e),background .5s}
.nodo p{max-width:170px;justify-content:center;text-align:center;font-size:10.5px;line-height:1.5}
.nodo.on .tondo{transform:scale(1.12);background:var(--salvia-chip);border-color:var(--salvia)}
.tavole{width:100%;height:auto;margin:0 auto 50px;max-width:1100px}
.osp__last{text-align:center;font-size:clamp(19px,2vw,26px);font-weight:300;max-width:40ch;margin:0 auto;line-height:1.4}
@media(max-width:820px){.asse{grid-template-columns:repeat(2,1fr);gap:26px}.asse__linea{display:none}}

/* ══ 09 IL GIORNO ══ */
.gio{background:var(--sabbia);padding:var(--pv) 0 0;border-top:1px solid var(--bordo)}
.gio>.mono,.gio>.h2,.gio__lead{padding:0 var(--mg)}
.gio>.mono{justify-content:center;margin-bottom:18px}
.gio__lead{text-align:center;max-width:52ch;margin:26px auto 0;color:var(--grafite)}
.linea{position:relative;max-width:1200px;margin:clamp(50px,7vw,96px) auto 0;padding:0 var(--mg);
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:center;min-height:400px}
.linea__barra{position:absolute;left:var(--mg);right:var(--mg);top:50%;height:3px;border-radius:999px;
  background:var(--lino);overflow:hidden}
.linea__barra b{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--alba),var(--sera));transition:width .3s linear}
.linea__ora{position:absolute;right:var(--mg);top:-42px;background:var(--carta-pura);border:1px solid var(--bordo);
  padding:8px 16px;border-radius:999px;font-variant-numeric:tabular-nums}
.tappa{position:relative;display:grid;justify-items:center;gap:16px}
.tappa figure{width:220px;max-width:100%}
.tappa img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:12px;box-shadow:var(--om1)}
.tappa p{font-size:15px;text-align:center;color:var(--nebbia);max-width:24ch;transition:color .5s}
.tappa.on p{color:var(--antracite)}
.marker{width:14px;height:14px;border-radius:50%;background:var(--carta-pura);border:1.5px solid var(--salvia);
  z-index:2;transition:background .4s,transform .4s var(--e)}
.tappa.on .marker{background:var(--terracotta);border-color:var(--terracotta);transform:scale(1.15)}
.tappa--giu{grid-template-rows:auto auto auto}
.gio__punch{display:flex;align-items:center;justify-content:center;gap:22px;text-align:center;
  font-size:clamp(20px,2.4vw,30px);font-weight:300;max-width:900px;margin:clamp(60px,8vw,120px) auto;padding:0 var(--mg);line-height:1.35}
.gio__punch i{width:60px;height:1px;background:var(--bordo);flex:0 0 auto}
.gio__full{overflow:hidden;height:66vh}
.gio__full img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 2.4s var(--e)}
.in .gio__full img{transform:none}
@media(max-width:820px){.linea{grid-template-columns:1fr;gap:40px}.linea__barra,.linea__ora{display:none}
  .gio__punch i{display:none}.gio__full{height:44vh}}

/* ══ 10 PROGETTI ══ */
.prog{background:var(--carta-pura);padding:var(--pv) var(--mg);border-top:1px solid var(--bordo)}
.prog__head{display:flex;align-items:center;gap:clamp(14px,3vw,40px);flex-wrap:wrap;margin-bottom:34px}
.prog__head .cifra{margin-left:calc(var(--mg) * -.5)}
.prog__head .h2{margin-top:12px}
.filtri{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:34px}
.filtri .pill{cursor:pointer}
.filtri .pill:hover{border-color:var(--salvia)}
.filtri .ic{color:var(--salvia);width:17px;height:17px}
.prog__body{display:grid;gap:34px}
@media(min-width:1100px){.prog__body{grid-template-columns:230px 1fr}}
.italia{width:100%;height:auto}
.mosaico{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:20px}
.cd{cursor:pointer}
.cd figure{overflow:hidden;border-radius:12px;background:var(--lino)}
.cd img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 1.2s var(--e)}
.cd:hover img{transform:scale(1.06)}
.cd div{padding-top:12px;display:flex;flex-direction:column;gap:3px}
.cd b{font-size:17px;font-weight:700}
.cd em{font-style:normal}
.cd.hide{display:none}
@media(max-width:1099px){.italia{display:none}}

/* ══ 11 TESTIMONIANZE ══ */
.test{background:var(--sabbia);padding:var(--pv) var(--mg);border-top:1px solid var(--bordo);border-bottom:1px solid var(--bordo)}
.test__head{display:flex;align-items:center;gap:18px;margin-bottom:34px}
.test__grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.slot{position:relative;background:var(--carta-pura);border:1px dashed #DCD2C1;border-radius:20px;
  padding:32px;min-height:280px;display:flex;flex-direction:column;gap:14px;
  transition:transform .4s var(--e),box-shadow .4s}
.slot:hover{transform:translateY(-8px);box-shadow:var(--om3)}
.slot--mid{transform:scale(1.03)}
.slot--mid:hover{transform:scale(1.03) translateY(-8px)}
.virg{font-size:52px;line-height:.6;color:rgba(176,114,44,.2)}
.slot i{display:block;height:10px;border-radius:999px;background:var(--lino);position:relative;overflow:hidden}
.slot i:nth-of-type(2){width:92%}
.slot i:nth-of-type(3){width:64%}
.slot i::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);
  transform:translateX(-100%);animation:shim 2.4s linear infinite}
@keyframes shim{to{transform:translateX(100%)}}
.slot footer{margin-top:auto;display:flex;align-items:center;gap:12px}
.ini{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--bordo);
  font-family:var(--mono);font-size:11px;color:var(--grafite)}

/* ══ 12 FRANCESCA ══ */
.fra{display:grid;gap:clamp(30px,5vw,72px);padding:var(--pv) var(--mg);align-items:center}
@media(min-width:1000px){.fra{grid-template-columns:45% 1fr}}
.fra__ph img{border:12px solid var(--carta-pura);border-radius:4px;box-shadow:var(--om2);
  aspect-ratio:4/5;object-fit:cover;transform:rotate(-2deg);transition:transform 1s var(--e)}
.in .fra__ph img{transform:none}
.fra__ph figcaption{margin-top:18px;font-size:11px}
.fra__ph figcaption i{width:40px;height:1px;background:var(--salvia);display:block}
.fra__txt .h2{margin:14px 0 20px}
.fra__txt>p{color:var(--grafite);max-width:54ch}
.numeri{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:36px 0 30px}
.numeri div{padding:0 clamp(10px,2vw,24px);border-left:1px solid var(--filetto)}
.numeri div:first-child{border-left:none;padding-left:0}
.numeri b{display:block;font-size:clamp(36px,4vw,64px);font-weight:200;letter-spacing:-.04em;
  color:var(--salvia);font-variant-numeric:tabular-nums;line-height:1}
.numeri i{display:block;width:0;height:1px;background:var(--bordo);margin:14px 0 10px;transition:width .8s var(--e)}
.in .numeri i{width:100%}
.numeri span{font-size:10.5px;line-height:1.5;display:block}
@media(max-width:600px){.numeri{grid-template-columns:1fr;gap:20px}.numeri div{border-left:none;padding-left:0}}

/* ══ 13 DOVE ══ */
.dove{background:var(--salvia-pallida);padding:var(--pv) var(--mg);display:grid;gap:clamp(30px,4vw,64px);
  align-items:center;border-top:1px solid var(--bordo);border-bottom:1px solid var(--bordo)}
@media(min-width:1000px){.dove{grid-template-columns:1fr 44%}}
.dove__txt .bolla{margin:16px 0 20px;background:var(--carta-pura)}
.dove__txt .h2{margin-bottom:20px}
.dove__txt>p{color:var(--grafite);max-width:48ch}
.luoghi{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.luoghi .pill{cursor:default;transition:background .3s,border-color .3s,transform .3s var(--e)}
.luoghi .pill.on{background:var(--salvia-chip);border-color:var(--salvia);transform:translateY(-3px)}
.luoghi .ic{color:var(--terracotta)}
.italia--big{max-width:420px;margin:0 auto}

/* ══ 14 DOMANDE ══ */
.dom{padding:var(--pv) var(--mg);background:var(--sabbia);
  background-image:repeating-linear-gradient(180deg,transparent 0 47px,rgba(51,51,51,.05) 47px 48px)}
.dom>.mono{margin-bottom:30px}
.dom__mas{columns:2;column-gap:20px}
@media(max-width:860px){.dom__mas{columns:1}}
.dom details{break-inside:avoid;background:var(--carta-pura);border:1px solid var(--bordo);border-radius:14px;
  padding:20px 22px;margin-bottom:16px;transition:border-color .24s}
.dom details:hover{border-color:var(--salvia)}
.dom details[open]{border-color:var(--salvia)}
.dom details:first-child{background:var(--ambra)}
.dom summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;position:relative;padding-right:8px}
.dom summary::-webkit-details-marker{display:none}
.dom summary .ic{color:var(--salvia)}
.dom summary span{font-size:17.5px;font-weight:500;line-height:1.35;flex:1}
.dom summary em{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--nebbia);letter-spacing:.12em}
.piu{position:relative;width:26px;height:26px;border-radius:50%;border:1px solid var(--bordo);flex:0 0 auto;
  transition:transform .34s var(--e),border-color .34s}
.piu::before,.piu::after{content:"";position:absolute;inset:0;margin:auto;background:var(--antracite)}
.piu::before{width:11px;height:1px}
.piu::after{width:1px;height:11px}
.dom details[open] .piu{transform:rotate(45deg);border-color:var(--salvia)}
.dom details p{margin-top:14px;font-size:16px;color:var(--grafite);max-width:46ch}
.dom__cta{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:26px;background:var(--carta-pura);
  border:1px solid var(--bordo);border-radius:20px;padding:26px 30px;box-shadow:var(--om1)}
.dom__cta p{flex:1;min-width:220px;color:var(--grafite)}

/* ══ 15 CHIUSURA ══ */
.fine{position:relative;background:var(--salvia-pallida);padding:clamp(70px,10vw,140px) var(--mg);overflow:hidden}
.fine::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 60% at 50% 45%,rgba(255,255,255,.7),transparent)}
.fine__sx,.fine__dx{position:absolute;top:-40px;width:220px;opacity:.85}
.fine__sx{left:-46px;transform:rotate(-7deg)}
.fine__dx{right:-46px;transform:rotate(6deg)}
.fine__sx img,.fine__dx img{border-radius:12px;border:8px solid var(--carta-pura);box-shadow:var(--om2);aspect-ratio:1;object-fit:cover}
.fine__box{position:relative;max-width:760px;margin:0 auto;text-align:center;
  border:1px solid var(--salvia);border-radius:24px;padding:clamp(38px,6vw,70px) clamp(22px,4vw,56px);background:rgba(255,253,250,.5)}
.fine__box .mono{justify-content:center;margin-bottom:22px}
.arco{display:flex;justify-content:center;gap:10px;margin-bottom:28px}
.arco img{width:84px;height:112px;object-fit:cover;border-radius:12px;box-shadow:var(--om1);border:4px solid var(--carta-pura)}
.arco img:nth-child(1){transform:rotate(-8deg) translateY(10px)}
.arco img:nth-child(2){transform:rotate(-4deg) translateY(3px)}
.arco img:nth-child(4){transform:rotate(4deg) translateY(3px)}
.arco img:nth-child(5){transform:rotate(8deg) translateY(10px)}
.fine__t{font-size:clamp(38px,5.4vw,72px);font-weight:300;line-height:1.06;letter-spacing:-.03em}
.fine__t strong{font-weight:700}
.fine__p{margin:24px auto 0;color:var(--grafite);max-width:44ch}
.fine .btn--wa{margin-top:32px;height:62px;padding:0 40px;font-size:19px}
.fine .rassicura{justify-content:center}
.fine__box .timbro{right:-18px;top:-26px}
@media(max-width:760px){.fine__sx,.fine__dx{display:none}.arco img:nth-child(1),.arco img:nth-child(5){display:none}}

/* ══ FOOTER ══ */
.pie{background:var(--carta);border-top:1px solid var(--bordo);padding:clamp(44px,6vw,80px) var(--mg) clamp(80px,8vw,60px);
  display:grid;gap:clamp(24px,3vw,44px);font-size:14px;color:var(--grafite)}
@media(min-width:820px){.pie{grid-template-columns:1.4fr 1fr 1fr .7fr}}
.pie__logo{color:var(--antracite);font-size:21px}
.pie__c{display:flex;flex-direction:column;gap:9px}
.pie__c a:hover{color:var(--salvia)}
.pie__c--dim{color:var(--nebbia);line-height:1.9}

/* ══ reveal ══ */
.rv{opacity:0;transform:translateY(14px);transition:opacity .55s var(--e),transform .55s var(--e)}
.rv.in{opacity:1;transform:none}
/* i timbri non devono mai spingere la pagina in orizzontale */
.loc__txt,.mus__v,.fine__box,.menu__ph figure{overflow:visible}
@media(max-width:760px){.timbro{display:none}}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important}
  .rv{opacity:1;transform:none}.ln>b{transform:none}
  html{scroll-behavior:auto}
}
