/* ===== Proposta A: lo studio con il logo (fotomontaggi di Daniele, targa rifatta) ===== */
.studio{position:relative;height:360svh;background:#121212;border-top:1px solid var(--line)}
.studio .stick{position:sticky;top:0;height:100svh;overflow:hidden}
.studio .ph,.studio .pins{position:absolute;left:0;top:0;width:100%;height:100%}
.studio .ph{overflow:hidden;background:#1a1a1a}
.studio .shot{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease}
.studio .shot.on{opacity:1}
.studio .shot img{position:absolute;left:0;top:0;max-width:none;transform-origin:0 0;will-change:transform}
.studio .scrim{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(12,12,12,.8) 0,rgba(12,12,12,.5) 28%,rgba(12,12,12,0) 52%),linear-gradient(0deg,rgba(12,12,12,.6) 0,rgba(12,12,12,0) 42%)}
.studio .kick{position:absolute;left:var(--left);top:clamp(40px,7vh,72px);margin:0;z-index:3}

/* segnaposti sulle foto: posizione in pixel della foto, calcolata da studio.js */
.studio .pins{pointer-events:none;z-index:2}
.studio .pin{position:absolute;left:0;top:0;opacity:0;transition:opacity .35s ease}
.studio .pin.on{opacity:1;transition:opacity .5s ease var(--d)}
.studio .pin.out{visibility:hidden}
.studio .pin i{position:absolute;left:-6px;top:-6px;width:12px;height:12px;border-radius:50%;background:#F26A1B;box-shadow:0 0 0 3px rgba(255,255,255,.92)}
.studio .pin i::after{content:"";position:absolute;inset:-9px;border-radius:50%;border:1.5px solid rgba(255,255,255,.75);animation:pinpulse 2.4s ease-out infinite}
@keyframes pinpulse{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.studio .pin b{position:absolute;left:20px;top:0;transform:translateY(-50%);white-space:nowrap;font-weight:700;font-size:15px;letter-spacing:-.03em;color:#fff;background:rgba(18,18,18,.74);padding:7px 13px;border-radius:999px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.studio .pin.flip b{left:auto;right:20px}
.studio .leg{display:none}

/* testi: stessa gerarchia dei racconti a passi */
.studio .txt{position:absolute;left:var(--left);bottom:clamp(72px,12vh,120px);width:min(36vw,520px);min-height:12.5em;z-index:3}
.studio .count{font-weight:500;font-size:clamp(20px,2.3vw,36px);letter-spacing:-.035em;color:#E0E1CE;opacity:.75;margin-bottom:clamp(12px,1.4vw,20px)}
.studio .count b{color:#F26A1B;font-weight:500}
.studio .st{position:absolute;left:0;right:0;top:3.2em;opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.studio .st.on{opacity:1;transform:none}
.studio .st h3{font-weight:700;font-size:clamp(40px,5vw,84px);line-height:.95;letter-spacing:-.045em;color:#fff;margin-left:-.03em}
.studio .st p{margin-top:clamp(14px,1.6vw,22px);font-size:clamp(18px,1.6vw,24px);line-height:1.22;letter-spacing:-.02em;color:#E0E1CE;max-width:26ch}
.studio .bar{position:absolute;left:var(--left);right:var(--pad);bottom:clamp(24px,5vh,48px);height:2px;background:#ffffff26;z-index:3}
.studio .bar i{position:absolute;left:0;top:0;bottom:0;width:0;background:#F26A1B}

@media (max-width:760px){
  /* la foto lascia sempre circa 330 px ai testi: sui telefoni bassi (con la barra del browser) si accorcia, mai sotto il 40% */
  .studio{--ph:max(40svh, calc(100svh - 330px))}
  .studio .ph,.studio .pins{height:var(--ph)}
  .studio .scrim{bottom:auto;height:var(--ph);background:linear-gradient(0deg,#121212 0,rgba(18,18,18,0) 24%),linear-gradient(180deg,rgba(12,12,12,.5) 0,rgba(12,12,12,0) 22%)}
  .studio .txt{top:calc(var(--ph) + 4px);bottom:auto;right:24px;width:auto;min-height:0}
  /* linea di avanzamento sul bordo basso della foto, non più in fondo allo schermo sopra la legenda */
  .studio .bar{top:calc(var(--ph) - 2px);bottom:auto;left:0;right:0}
  .studio .st h3{font-size:clamp(34px,10vw,48px)}
  .studio .st p{font-size:18px}
  /* telefono: punti numerati, i nomi vanno nella legenda */
  .studio .pin b{display:none}
  .studio .pin i{left:-11px;top:-11px;width:22px;height:22px;box-shadow:0 0 0 2px rgba(255,255,255,.92);display:grid;place-items:center;font-weight:700;font-size:12px;line-height:1;color:#fff}
  .studio .pin i::before{content:attr(data-n)}
  .studio .pin i::after{inset:-7px}
  .studio .leg{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;list-style:none;font-size:14px;line-height:1.2;letter-spacing:-.02em;color:#E0E1CE}
  .studio .leg li{display:flex;align-items:center;gap:7px}
  .studio .leg i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#F26A1B;color:#fff;font-style:normal;font-weight:700;font-size:11px;flex:none}
}
@media (prefers-reduced-motion:reduce){ .studio .shot,.studio .pin,.studio .st{transition:none} .studio .pin i::after{animation:none} }
