/* The shell paints the viewport; only the inner content follows the site width. */
.wp-block-aquaticfarms-contained-hero.af-contained-hero {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin-inline: 0;
}
.af-contained-hero > .af-contained-hero__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--ag-container, var(--wp--style--global--wide-size, 1280px));
  min-width: 0;
  margin-inline: auto;
}
.af-contained-hero__inner > :first-child { margin-block-start: 0; }
.af-contained-hero__inner > :last-child { margin-block-end: 0; }

/* Native inner blocks keep their own typography, color and spacing controls. */
.af-contained-hero .af-hero-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-areas: 'copy media';
}
.af-contained-hero .af-hero-layout > * { min-width: 0; margin-block: 0; }
.af-contained-hero .af-hero-copy {
  grid-area: copy;
  display: grid;
  align-content: center;
  gap: 1.2rem;
  padding: clamp(2rem, 5vw, 5rem) var(--ag-gutter, 1.25rem);
}
.af-contained-hero .af-hero-media { grid-area: media; }
.af-contained-hero .af-hero-title { font-size: .875rem; letter-spacing: .1em; }
.af-contained-hero.af-hero-text-right .af-hero-layout { grid-template-areas: 'media copy'; }
.af-contained-hero.af-hero-text-above .af-hero-layout { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'copy' 'media'; }
.af-contained-hero.af-hero-vertical-start .af-hero-copy { align-content: start; }
.af-contained-hero.af-hero-vertical-end .af-hero-copy { align-content: end; }
@media (max-width: 760px) {
  .af-contained-hero .af-hero-layout,
  .af-contained-hero.af-hero-text-right .af-hero-layout {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: 'copy' 'media';
  }
}
