/*
 * The few rules the row builder needs on top of the Webflow export.
 *
 * Everything else in a row template reuses the export's own classes; this file
 * only covers what the export never had to do: rows placed freely under each
 * other, and a column count chosen by an editor.
 */

.section.is--compact {
  padding-top: 20px;
  padding-bottom: 20px;
}

.section.is--compact .page-content {
  margin-bottom: 0;
}

/* A detail page puts its title in a section of its own and its rows below it;
   these keep the two reading as one block instead of two padded sections. */
.section.is--flush-bottom {
  padding-bottom: 0;
}

.section.is--flush-bottom .page-content {
  margin-bottom: 0;
}

.section.is--flush-top {
  padding-top: 0;
}

.cms-detail-image {
  width: 100%;
  height: 360px;
  margin-bottom: 20px;
  overflow: hidden;
  border-radius: .3125rem;
}

.cms-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

/* .flexbox-child_padding pads both sides; pull the outer columns back in line
   with the heading above them. */
.cms-columns {
  width: calc(100% + 50px);
  margin-left: -25px;
  margin-right: -25px;
  row-gap: 35px;
}

.cms-column__image {
  width: 100%;
  height: 220px;
  margin-bottom: 20px;
  overflow: hidden;
  border-radius: .3125rem;
}

.cms-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.cms-cta .homepage-cta {
  margin-left: auto;
  margin-right: auto;
  padding-top: 0;
}

.cms-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

@media screen and (max-width: 767px) {
  .cms-columns {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
