/* Sections, rows, product layout — translated 1:1 from the legacy build's
   compiled stylesheet. */
@layer styles {
  .heimr-section,
  .section {
    margin-bottom: var(--oma-page__space--large);
  }

  .heimr-section:first-child,
  .section:first-child {
    margin-top: var(--oma-page__space--large);
  }

  .size-1200 .heimr-section,
  .size-1200 .section {
    margin-left: auto;
    margin-right: auto;
  }

  .section--full-width {
    margin-left: 0;
    margin-right: 0;
    padding: var(--oma-page__space--medium) var(--page__margin);
  }

  .section--with-theme-color {
    background-color: var(--color__theme);
  }

  .section--with-background,
  .section--with-theme-color {
    border-radius: var(--corner__size);
    margin-left: var(--page__margin);
    margin-right: var(--page__margin);
    padding: var(--space__section);
  }

  .section--with-background {
    background-color: var(--color__background--transparent);
  }

  .section--with-margin {
    margin-top: var(--oma-page__space--medium);
  }

  .section--with-image-grid {
    grid-gap: var(--oma-page__space--small);
    display: grid;
  }

  .size-900 .section--with-image-grid {
    grid-template-columns: 1fr 1fr;
  }

  .section__heading,
  .section__sub-heading {
    color: var(--color__theme);
    font-family: var(--font__family--emphasize);
    font-size: var(--font__size--small-heading);
    font-weight: var(--font__weight--heading);
    line-height: var(--font__line-height-heading);
    margin-bottom: 0.5rem;
  }

  .size-600 .section__heading,
  .size-600 .section__sub-heading {
    font-size: var(--font__size--medium-heading);
  }

  .section__text {
    line-height: 1.75;
  }

  .section__text:not(:last-child) {
    margin-bottom: var(--oma-page__space--small);
  }

  .section__text--margin-top {
    margin-top: var(--oma-page__space--small);
  }

  /* Site additions (from the legacy site stylesheet, loaded after the theme) */
  .section:last-child {
    margin-bottom: var(--oma-page__space--extra-large);
  }

  .section__heading {
    color: var(--color__theme);
    font-family: var(--font__family--emphasize);
    font-size: var(--font__size--small-heading);
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 0.5rem;
  }

  .size-600 .section__heading {
    font-size: var(--font__size--medium-heading);
  }

  /* Rows */
  .row--with-shadow {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.4);
  }

  .row--with-theme-color {
    background: var(--color__theme);
  }

  .size-900 .row--with-top-margin {
    margin-top: var(--oma-page__space--large);
  }

  .row--non-transparent {
    background-color: var(--color__white);
  }

  .row--bottom {
    bottom: 0;
    position: fixed;
    width: 100%;
  }

  .size-1200 .row--bottom {
    width: var(--oma-grid__width);
  }

  .row--with-auto-margin {
    margin: auto;
  }

  /* Product page */
  .size-600 .product {
    grid-gap: var(--oma-page__space--extra-small);
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .size-900 .product {
    grid-gap: var(--oma-page__space--small);
  }

  .product__list {
    letter-spacing: 0.05rem;
    line-height: 1.625rem;
    list-style: none;
    padding: 0;
  }

  /* Sortiment page logotypes */
  .logotypes {
    align-items: center;
    display: grid;
    gap: var(--oma-page__space--small);
    grid-template-columns: minmax(auto, 380px);
    justify-content: space-around;
    text-align: center;
  }

  .size-600 .logotypes {
    column-gap: var(--oma-page__space--small);
    grid-template-columns: repeat(2, minmax(auto, 380px));
    row-gap: var(--oma-page__space--small);
  }

  .logotype {
    max-width: 100%;
  }

  /* Site page-margin utility (the legacy header @extends it) */
  .header,
  .page-margin {
    padding-left: var(--page__margin);
    padding-right: var(--page__margin);
  }
}
