/* Content follows document flow; the cinematic scenes keep their scroll timing. */
#gamme { min-height: 100svh; height: auto; }
#gamme .gamme_container { position: relative; inset: auto; display: block; height: auto; min-height: 100svh; }
#gamme .padding-global { padding: 0 clamp(20px, 5vw, 72px); }
#gamme .container-large, #gamme .max-width-medium { width: 100%; max-width: 1200px; }
#gamme .padding-bottom { padding-bottom: 0; }
.oneira-experience-hero {
  position: relative; inset: auto; width: 100%; max-width: none; max-height: none;
  margin: 0 auto; padding: 120px 0 64px; overflow: visible;
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 48px;
}
.oneira-experience-hero > * { grid-column: 1; min-width: 0; }
.oneira-experience-hero::before { inset: 0 -6vw; background: linear-gradient(90deg,rgba(8,10,8,.92),rgba(8,10,8,.55) 46%,transparent 75%); }
.oneira-experience-hero h1 { width: auto; font-size: clamp(48px,5.2vw,76px); line-height: .98; letter-spacing: -.05em; }
.oneira-experience-hero__lead { margin-top: 24px; font-size: 16px; line-height: 1.6; }
.oneira-experience-hero__actions { margin-top: 24px; gap: 12px; }
.oneira-experience-hero__button { min-height: 48px; }
.oneira-experience-hero .o1-drops-teaser { margin-top: 20px; line-height: 1.6; }
.oneira-experience-hero .oneira-ai-ecosystem { grid-column: 1 / -1; width: 100%; max-width: none; margin-top: 64px; padding: 28px 32px; }
.oneira-ai-ecosystem__groups { grid-template-columns: repeat(3,minmax(0,1fr)); }
.oneira-ai-ecosystem__header { margin-bottom: 20px; }
.oneira-ai-ecosystem__group { padding: 0 24px; }
.oneira-ai-ecosystem__items { gap: 12px; }
.oneira-ai-ecosystem strong { white-space: normal; overflow: visible; }
.oneira-ai-ecosystem__disclosure { margin-top: 20px; padding-top: 16px; font-size: 12px; line-height: 1.6; }
.section.o1-eyes, .section.o1-play, .section.o1-drops, .section.is-faq { min-height: 0; height: auto; }
.o1-eyes, .o1-play, .o1-drops, .o1-guide-links { padding: 80px clamp(20px,5vw,72px); }
.o1-eyes__inner, .o1-play__inner, .o1-drops__inner, .o1-guide-links__inner { max-width: 1200px; margin-inline: auto; }
.section.is-full-gamme, .section.is-full-gamme .full-gamme_container, .oneira-spin-gallery { min-height: 0; }
.oneira-spin-gallery { max-width: 1344px; padding: 80px clamp(20px,5vw,72px); gap: 48px; }
.oneira-spin-gallery__choices { flex-wrap: wrap; overflow: visible; }
.oneira-spin-gallery__choice { min-height: 44px; }
.o1-play__heading { padding-top: 0; }
.o1-eyes__studio, .o1-play__inner { gap: 40px; }
@media(max-width:760px) {
  .oneira-experience-hero { padding-top: 104px; padding-bottom: 48px; grid-template-columns: minmax(0,1fr); }
  .oneira-experience-hero::before { background: rgba(8,10,8,.8); }
  .oneira-experience-hero h1 { font-size: clamp(40px,11vw,64px); line-height: 1.02; }
  .oneira-experience-hero__line { white-space: normal; }
  .oneira-experience-hero__lead { font-size: 16px; }
  .oneira-experience-hero .oneira-ai-ecosystem { margin-top: 40px; padding: 24px 20px; }
  .oneira-ai-ecosystem__groups { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .oneira-ai-ecosystem__group, .oneira-ai-ecosystem__group:first-child, .oneira-ai-ecosystem__group:last-child { padding: 16px 0 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.12); }
  .oneira-ai-ecosystem__group:first-child { padding-top: 0; border-top: 0; }
  .oneira-ai-ecosystem__items { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .o1-eyes, .o1-play, .o1-drops, .o1-guide-links, .oneira-spin-gallery { padding: 48px 20px; }
  .o1-eyes__studio, .o1-play__inner, .oneira-spin-gallery { gap: 28px; }
}
@media(max-width:380px) {
  .oneira-experience-hero__button { flex-basis: 100%; }
  .oneira-ai-ecosystem__items { grid-template-columns: minmax(0,1fr); }
}
/* The legacy scene wrapper has a narrow mobile width and an oversized glow. */
#gamme { overflow: clip; }
#gamme .gamme_container > .padding-global { width: 100%; max-width: none; margin: 0; box-sizing: border-box; }
#gamme .gamme_gradient-wrapper { overflow: clip; }
#gamme .gamme_container { padding: 0; }
/* Empty legacy end scenes no longer reserve two screens below the waitlist. */
.section.is-last-copy, .section.is-last { min-height: 0; height: 0; padding: 0; overflow: clip; }
.section.is-last-copy .padding-section-large, .section.is-last .padding-section-large { padding: 0; }
.section.is-full-gamme .full-gamme_container { height: auto; display: block; }
