/* Margini condivisi: Il Club, Spiaggia, Attività, Ristorante e Sistemazioni. */
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .page {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
  padding: 4px;
  box-sizing: border-box;
}
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .page > :is(.blk, .si-hh-gallery, .foto-affiancate, .video-pagina, .nav-pg) {
  --width: 100%;
  width: 100%;
  max-width: 100%;
  margin: 0;
  box-sizing: border-box;
}
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .page > .box-main:not(.fotobig) {
  padding: 0;
  gap: 8px;
}
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .page > .box-main > .box-child {
  margin: 0;
  min-width: 0;
}
/* Foto e video a tutta larghezza dentro una sezione intermedia. */
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .page > .box-main > :is(.box-child, .cmp.cmincu):only-child {
  --width: 100%;
  width: 100%;
  max-width: 100%;
  margin: 0;
}
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .page > .box-limit > .box-in {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  gap: 8px;
}
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .page > .box-limit > .box-in > .box-child {
  margin: 0;
  min-width: 0;
}
body:is(.ty-cl, .ty-sp, .ty-at, .ty-ri, .ty-si) main .foto-affiancate { gap: 8px; }
/* Jesolo notturna: il 90% ereditato da .fotobig tagliava il video,
   lasciando spazio vuoto prima della sezione Posizione eccezionale. */
body.ty-cl main .pg-ai .cl-html4,
body.ty-cl main .pg-ai .cl-html4 > .cmp-in { height: auto; }
/* Le percentuali variabili delle dotazioni lasciano spazio alla distanza centrale. */
@media (min-width: 1161px) {
  /* Ombrellone extralarge: riempie lo spazio dopo il testo largo il 40%. */
  html:not(.menu-compatto) body.ty-sp .pg-sp .sp-s4 > .sp-c4 {
    --width: calc(60% - 8px);
  }
  html:not(.menu-compatto) body.ty-si .pg-si .si-s11 > :is(.si-c10, .si-c11) {
    width: calc(var(--width) - 4px);
  }
}
/* FAQ: stesso bordo esterno, colonna di lettura centrata e limitata. */
body.pagina-faq main.faq-pagina {
  padding-inline: 4px;
  box-sizing: border-box;
}
body.pagina-faq .faq-contenuto { width: min(100%, 1000px); }
