/* Stable image geometry and isolated layout rules, October 2026. */
:root body #main.studios-page .studio-grid {display:grid;gap:24px;}
/* Studio cards must not inherit height rules from other image components. */
:root body #main.studios-page .studio-grid > .studio > figure {
  position:relative; aspect-ratio:3/2; overflow:hidden;
}
:root body #main.studios-page .studio-grid > .studio > figure img {
  display:block; position:absolute; inset:0; width:100%!important;
  height:100%!important; min-height:0!important; max-height:none!important;
  object-fit:cover!important; object-position:center;
}
/* Let detail photos keep their native proportions, with space reserved before loading. */
:root body #main:is(.studio-page,.q19-page) :is(.studio-grid,.q19-grid) {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:34px; align-items:center;
}
:root body #main:is(.studio-page,.q19-page) :is(.studio-grid,.q19-grid)>* { min-width:0; }
:root body #main:is(.studio-page,.q19-page) :is(.studio-grid,.q19-grid)>figure {
  margin:0; height:auto; min-height:0; width:100%; align-self:center;
}
:root body #main:is(.studio-page,.q19-page) :is(.studio-grid,.q19-grid)>figure img {
  position:static; display:block; width:100%; height:auto; max-width:100%; object-fit:contain;
}
:root body #main:is(.studio-page,.q19-page) :is(.studio-gallery,.q19-gallery) {
  grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start;
}
:root body #main:is(.studio-page,.q19-page) :is(.studio-gallery,.q19-gallery)>* { min-width:0; }
:root body #main:is(.studio-page,.q19-page) :is(.studio-video-card,.q19-video-card) {
  aspect-ratio:4/3; position:relative; overflow:hidden;
}
:root body #main:is(.studio-page,.q19-page) :is(.studio-video-card,.q19-video-card) img {
  position:absolute; inset:0; display:block; width:100%; height:100%; max-height:none; object-fit:cover;
}
:root body #main .price-decision-guide h2 { overflow-wrap:anywhere!important; hyphens:auto; }
@media(max-width:900px) {
  :root body #main:is(.studio-page,.q19-page) :is(.studio-grid,.q19-grid) {
    grid-template-columns:minmax(0,1fr); gap:24px;
  }
}
@media(max-width:600px) {
  :root body #main.studios-page .studio-grid > .studio > figure {
    height:auto!important; min-height:0; aspect-ratio:3/2;
  }
  :root body #main:is(.studio-page,.q19-page) :is(.studio-gallery,.q19-gallery) {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
/* Longer German labels and wordmarks must fit the available text column. */
:root body #main .corporate-options h2 {overflow-wrap:anywhere!important;hyphens:auto!important;}
:root body #main .story-chapters .rs-wordmark {white-space:normal!important;display:inline-flex;flex-wrap:wrap;max-width:100%;}
@media(max-width:760px) {
  :root body #main .rs-news-heading .rs-wordmark {
    display:inline-flex!important;flex-wrap:wrap!important;justify-content:center;
    white-space:normal!important;max-width:100%;column-gap:.2em;
  }
}
@media(max-width:900px) {
  :root body #main:is(.studio-page,.q19-page) :is(.studio-grid,.q19-grid)>figure {
    max-width:560px;margin-inline:auto;
  }
}
