
#content { position: relative; z-index: 1; }

main > section,
.stone-scene > section {
  position: relative;
  padding-block: var(--sp-120);
}
@media (max-width: 768px) { main > section, .stone-scene > section { padding-block: var(--sp-64); } }

@media (min-width: 769px) {
  main > section#voor-wie { scroll-margin-top: var(--sp-48); }
}

#hero {
  min-height: max(806px, 100svh);
  text-align: center;

  --crown-y: max(53.94svh, calc(2.216vw + 50svh));
  --crown-air: 20px;
}

@media (min-width: 769px) {
  #hero {
    padding-block: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(var(--crown-y), auto) 1fr;
    justify-items: center;
    align-items: end;
  }
}

@media (max-width: 768px) {
  #hero { min-height: 100svh; }
}

#wat-we-doen { min-height: 817px; }
#partners    { min-height: 296px; }

.container {
  width: min(1200px, 100% - (2 * var(--sp-120)));
  margin-inline: auto;
}

@media (max-width: 1024px) { .container { width: min(1200px, 100% - (2 * var(--sp-48))); } }
@media (max-width: 768px)  { .container { width: min(1200px, 100% - 48px); } }
@media (max-width: 480px)  { .container { width: min(1200px, 100% - 40px); } }

.section-ground {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  overflow: clip;
}

.section-ground > img,
.section-ground > video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

video::-webkit-media-controls,
video::-webkit-media-controls-enclosure,
video::-webkit-media-controls-panel { display: none !important; }

.section-ground--bleed > img { object-position: 50% 50%; }

.picture-band {
  display: block;
  width: 100%;
}

.picture-band > img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 1200px;
  margin-inline: auto;
}

#hero,
#aanpak {
  overflow: clip;
  background-color: var(--bg-studio);
  isolation: isolate;
}

#uitdaging { overflow: clip; isolation: isolate; }
#probleem  { isolation: isolate; }

