@layer utilities {
  /* Layout Builder styles for the multicol layout template. */
.layout--multicol {
  display: block;
}

.layout--multicol .layout__columns:not(.flex):not(.\!flex) {
  display: block;
}

.layout--multicol .layout__columns.layout__columns--tabs {
  grid-auto-flow: row;
  grid-template-columns: 1fr;
}

.layout--multicol.layout--columns-2 .layout__columns:not(.flex):not(.\!flex),
.layout--multicol.layout--columns-3 .layout__columns:not(.flex):not(.\!flex),
.layout--multicol.layout--columns-4 .layout__columns:not(.flex):not(.\!flex) {
  display: grid;
}

.layout--multicol.layout--columns-2 .layout__columns:not(.layout__columns--tabs) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.layout--multicol.layout--columns-3 .layout__columns:not(.layout__columns--tabs) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.layout--multicol.layout--columns-4 .layout__columns:not(.layout__columns--tabs) {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--max-1fr:not(.layout__columns--tabs) {
  grid-template-columns: max-content 1fr;
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--1fr-max:not(.layout__columns--tabs) {
  grid-template-columns: 1fr max-content;
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--33-66:not(.layout__columns--tabs) {
  grid-template-columns: 0.6666fr 1.3333fr;
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--66-33:not(.layout__columns--tabs) {
  grid-template-columns: 1.3333fr 0.6666fr;
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--40-60:not(.layout__columns--tabs) {
  grid-template-columns: 0.8fr 1.2fr;
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--60-40:not(.layout__columns--tabs) {
  grid-template-columns: 1.2fr 0.8fr;
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--25-75:not(.layout__columns--tabs) {
  grid-template-columns: 0.5fr 1.5fr;
}

.layout--multicol.layout--columns-2 .layout__columns.layout__columns--75-25:not(.layout__columns--tabs) {
  grid-template-columns: 1.5fr 0.5fr;
}

@media (max-width: 767px) {
  .layout--multicol.layout--columns-2 .layout__columns {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
  }
  .layout--multicol.layout--columns-2 .layout__columns:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--max-1fr:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--1fr-max:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--33-66:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--66-33:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--40-60:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--60-40:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--25-75:not(.layout__columns--tabs),
  .layout--multicol.layout--columns-2 .layout__columns.layout__columns--75-25:not(.layout__columns--tabs) {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1023px) {
  .layout--multicol.layout--columns-3 .layout__columns:not(.layout__columns--tabs) {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
  }
}
@media (max-width: 1023px) {
  .layout--multicol.layout--columns-4 .layout__columns:not(.layout__columns--tabs) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .layout--multicol.layout--columns-4 .layout__columns:not(.layout__columns--tabs) {
    grid-template-columns: 1fr;
    grid-auto-flow: row;
  }
}

/* Hide unused column regions based on selected column count. */
.layout--multicol.layout--columns-1 .layout__region--col_2,
.layout--multicol.layout--columns-1 .layout__region--col_3,
.layout--multicol.layout--columns-1 .layout__region--col_4 {
  display: none;
}

.layout--multicol.layout--columns-2 .layout__region--col_3,
.layout--multicol.layout--columns-2 .layout__region--col_4 {
  display: none;
}

.layout--multicol.layout--columns-3 .layout__region--col_4 {
  display: none;
}
}