.grid-col-1-2 {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: var(--fontSz3);
}

.grid-col-2-1 {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: var(--fontSz3);
}


.grid-3rows {
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  gap: var(--fontSz0);
}

.grid-3rows>* {
  min-width: 0;
  /*overflow-wrap: break-word;*/
  align-items: center;
}

.grid-3rows img {
  max-height: 100%;
  width: auto;
  display: block;
}


.grid-3rows-auto {
  display: grid;
  grid-template-rows: 1fr, max-content, 1fr;
  gap: var(--fontSz0);
}



.grid-2rows {
  display: grid;
  grid-template-rows: repeat(2, auto);
}

.cta-wrapper .grid-2rows {
  row-gap: var(--fontSz0);
}



.grid-3col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--fontSz3);
}

.grid-3col>* {
  min-width: 0;
  /*overflow-wrap: break-word;*/
}

.grid-3col img {
  max-width: 100%;
  height: auto;
  display: block;
}


.grid-2col {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--fontSz0);
}

.grid-2col>* {
  min-width: 0;
  /*overflow-wrap: break-word;*/
  align-items: center;
}

.grid-2col img {
  max-width: 100%;
  height: auto;
  display: block;
}


.grid-2col-header,
.grid-3Col-footer {
  display: grid;
  gap: 0;
}

.grid-2col-header {
  grid-template-columns: 45fr 55fr;

  height: var(--header-h);
}

.grid-3Col-footer {
  grid-template-columns: minmax(0, 3fr) var(--in-footer-logo-width) minmax(0, 3fr);
}

/* === Auto-generated responsiveness review for: assets/css/grid_layouts.css === */
/* Breakpoint skeleton (fill in as needed) */
@media (max-width: 1200px) {
  /* xl down */
}

@media (max-width: 992px) {
  /* lg down: stack sidebars, shrink grids */
  
  .grid-3col {
    grid-template-columns: auto 1fr;
    /* Grid with ~3 columns — reduce to 2 on tablets. */
  }
}

@media (max-width: 768px) {
  /* md down: single-column layout */
  .grid-col-1-2 {
    grid-template-columns: 1fr /* 2 cols -> 1 col on phones */;
  }

  .grid-col-2-1 {
    grid-template-columns: 1fr /* 2 cols -> 1 col on phones */;
  }
  .grid-3col {
    grid-template-columns: 1fr /* stack to single column */;
  }
  .grid-2col {
    grid-template-columns: 1fr /* 2 cols -> 1 col on phones */;
    text-align: left;
  }

  .grid-2col > * {
     text-align: left;
  }

}

@media (max-width: 576px) {
  /* sm down: tighten paddings, font sizes */
  .grid-3col {
    grid-template-columns: 1fr /* ensure single column */;
  }

  .grid-3Col-footer {
    grid-template-columns: 1fr /* ensure single column */;
  }
  .grid-3Col-footer .place-left-center,
  .grid-3Col-footer .place-right-center {
    justify-items: center;
  }
}



/* === End auto-generated review === */


/* Ensure header grid children can actually shrink within their tracks */
.grid-2col-header > * { min-width: 0; }
.place-right-center { min-width: 0; }
