.venue-dossier { width:100%; }

.vd-hero { position:relative; height:90vh; display:flex; align-items:flex-end; }
.vd-hero-media { position:absolute; inset:0; }
.vd-hero-content { position:relative; max-width:520px; margin-left:var(--space-4); margin-bottom:var(--space-4); display:flex; flex-direction:column; gap:var(--space-2); }
.vd-hero-content h1 { max-width:18ch; }
.vd-hero-content p { max-width:40ch; }

.vd-premise-inner { max-width:700px; margin-inline:auto; display:flex; flex-direction:column; gap:var(--space-3); text-align:center; }

.vd-layout-grid { display:grid; grid-template-columns:55% 45%; gap:var(--space-4); align-items:center; }
.vd-layout-text { display:flex; flex-direction:column; gap:var(--space-2); }
.vd-layout-text p { max-width:55ch; }

.vd-light-inner { display:flex; justify-content:flex-end; }
.vd-light-text { max-width:500px; display:flex; flex-direction:column; gap:var(--space-2); }
.vd-light-text p { max-width:42ch; }

.vd-table-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-4); align-items:center; }
.vd-table-text { display:flex; flex-direction:column; gap:var(--space-2); }
.vd-table-text p { max-width:50ch; }

.vd-sound-inner { max-width:650px; margin-inline:auto; display:flex; flex-direction:column; gap:var(--space-3); text-align:center; }

.vd-scenes-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-4); }
.vd-scene { display:flex; flex-direction:column; gap:var(--space-2); }
.vd-scene-2 { margin-top:var(--space-4); }
.vd-scene-3 { margin-top:var(--space-2); }
.vd-scene p { max-width:32ch; }

.vd-guest-text { max-width:700px; display:flex; flex-direction:column; gap:var(--space-2); }
.vd-guest-text p { max-width:60ch; }

.vd-exclusive-inner { display:flex; justify-content:center; }
.vd-exclusive-box { max-width:500px; padding:var(--space-3); border:var(--border-thin); text-align:center; }
.vd-exclusive-box p { max-width:40ch; margin-inline:auto; }

.vd-cta-inner { display:flex; flex-direction:column; align-items:center; gap:var(--space-3); text-align:center; }
.vd-cta-inner p { max-width:42ch; }

@media (max-width:1024px) {
  .vd-layout-grid { grid-template-columns:1fr; }
  .vd-table-grid { grid-template-columns:1fr; }
  .vd-scenes-grid { grid-template-columns:1fr; }
  .vd-scene-2, .vd-scene-3 { margin-top:0; }
}

@media (max-width:640px) {
  .vd-hero { height:70vh; }
  .vd-hero-content { margin-left:var(--space-2); margin-right:var(--space-2); }
}