/* ==========================================================================
   Landing "Posturale in piccoli gruppi" — aggiunte sopra style.css (condiviso con la landing EMS)
   ========================================================================== */

/* Hero: foto quadrata del gruppo sui tappetini */
.hero__img--post{width:54%;object-position:62% 30%}
@media (min-width:961px){.hero .hero__copy{max-width:540px}}
@media (max-width:960px){.hero__img--post{width:100%;aspect-ratio:4/3.4;object-position:55% 30%}}
@media (max-width:560px){.hero__img--post{aspect-ratio:1/1;object-position:50% 50%}}

.when{display:flex;align-items:center;gap:.55rem;margin:1rem 0 0;font-size:1.02rem;color:var(--muted)}
.when svg{width:1.25rem;height:1.25rem;color:var(--accent);flex:none}
.when strong{color:var(--text)}
.spots-pill{
  display:inline-flex;align-items:center;gap:.55rem;margin:.8rem 0 0;padding:.5rem .95rem;border-radius:999px;
  font-size:.92rem;color:var(--text);background:rgba(255,127,42,.12);border:1px solid rgba(255,127,42,.45)
}
.spots-pill strong{color:var(--accent-2)}
.spots-pill__dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent-glow);animation:pulse 1.8s infinite;flex:none}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,127,42,.55)}70%{box-shadow:0 0 0 10px rgba(255,127,42,0)}100%{box-shadow:0 0 0 0 rgba(255,127,42,0)}}
@media (prefers-reduced-motion:reduce){.spots-pill__dot{animation:none}}

/* Dubbi (virgolettati) */
.doubts{margin-top:2.2rem}
.doubt{
  margin:0;position:relative;padding:1.6rem 1.5rem 1.4rem 1.5rem;border-radius:var(--radius);
  background:linear-gradient(180deg,var(--surface-2),var(--surface));border:1px solid var(--line);
  font-size:1.18rem;font-weight:600;line-height:1.4;color:var(--text)
}
.doubt::before{
  content:"“";position:absolute;top:-.35rem;right:1.1rem;font-family:var(--display);font-size:4.6rem;line-height:1;color:var(--accent);opacity:.35
}

/* Massimo 6 persone */
.split--six{align-items:center;margin-top:0}
.six{
  text-align:center;padding:2rem 1.5rem;border-radius:24px;border:1px solid var(--line-strong);
  background:radial-gradient(80% 90% at 50% 0%,rgba(255,127,42,.14),transparent 70%),linear-gradient(180deg,var(--surface-2),var(--surface))
}
.six__num{font-family:var(--display);font-weight:600;font-size:clamp(5.5rem,11vw,8rem);line-height:.9;color:var(--accent);letter-spacing:-.03em}
.six__dots{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem;max-width:330px;margin:1.2rem auto 0}
.six__dots span{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.05);border:1px solid var(--line-strong);color:var(--accent-2)}
.six__dots svg{width:58%;height:58%}
.six__cap{margin:1rem 0 0;color:var(--muted);font-size:1rem}
.six__cap strong{color:var(--text)}
#gruppo .grid--4{margin-top:1rem}
#gruppo .card h3{font-size:1.12rem}
@media (max-width:1000px){#gruppo .grid--4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){#gruppo .grid--4{grid-template-columns:1fr}}

/* Orari */
#orari{overflow:hidden}
#orari .container{position:relative;z-index:1}
.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;margin-top:2rem}
.slot{
  position:relative;display:flex;flex-direction:column;gap:.15rem;padding:1.6rem 1.4rem 1.3rem;border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(28,32,40,.92),rgba(21,24,30,.92));border:1px solid var(--line-strong);
  transition:transform .2s,border-color .2s
}
.slot:hover{transform:translateY(-3px);border-color:rgba(255,127,42,.6)}
.slot__when{font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.slot__time{font-family:var(--display);font-weight:600;font-size:clamp(2rem,3.4vw,2.6rem);line-height:1.1;color:#fff;letter-spacing:.01em}
.slot__days{color:var(--muted);font-size:.98rem}
.slot__state{margin-top:.9rem;display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem;font-weight:700;color:var(--green)}
.slot__state::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.slot__state--hot{color:var(--accent-2)}
.slot__go{margin-top:.8rem;font-size:.92rem;font-weight:700;color:var(--accent-2)}
.slot--last{border-color:rgba(255,127,42,.55);box-shadow:0 30px 60px -40px rgba(255,127,42,.6)}
.slot__flag{
  position:absolute;top:-.75rem;right:1rem;padding:.3rem .75rem;border-radius:999px;background:var(--accent);color:#1c1006;
  font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase
}
@media (max-width:860px){.slots{grid-template-columns:1fr;gap:1.3rem}}
.where{max-width:760px;margin:2rem auto 0;text-align:center;color:var(--muted);font-size:1.05rem}
.where p{margin:0 0 .6rem}
.where p:first-child{display:inline-flex;gap:.5rem;align-items:flex-start;text-align:left}
.where svg{width:1.2rem;height:1.2rem;color:var(--accent);flex:none;margin-top:.25rem}
.where strong{color:var(--text)}
.where a{color:var(--accent-2);font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

/* Modulo di richiesta nella pagina */
#richiesta{scroll-margin-top:var(--topbar-h)}
#richiesta .apply__head h2{font-size:clamp(1.7rem,3.4vw,2.5rem)}
#richiesta .apply__head strong{color:var(--text)}
.qtitle{font-size:clamp(1.2rem,2.3vw,1.5rem);margin:0 0 .35em;line-height:1.25}
.opt__tag{font-style:normal;margin-left:auto;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.22rem .6rem;border-radius:999px;color:var(--muted);border:1px solid var(--line-strong);white-space:nowrap}
.opt__tag--hot{color:#1c1006;background:var(--accent);border-color:var(--accent)}
.salute-dett{margin-top:1rem}
.done h3{font-size:1.5rem}
.done__wa{font-size:.95rem}
.done__ico{background:rgba(61,220,132,.14);color:var(--green);border-color:rgba(61,220,132,.4)}
.done .btn--wa{margin-top:.4rem}
.stickybar.is-visible.is-hidden-form{transform:translateY(110%)}
.t-short{display:none}
@media (max-width:560px){.topbar .t-long{display:none}.topbar .t-short{display:inline}}
[data-key="fascia"] .opt span{white-space:nowrap}
@media (max-width:380px){.opt__tag{font-size:.68rem;padding:.2rem .5rem}}
