@charset "UTF-8";
/**
 * CTA general module. Reference: modulos/mod_cta_general/mod_cta_general.css
 */

.mod_cta_general {
  position: relative;
  overflow: hidden;
}
/* Ensure section has height so absolute __bg layer is visible */
.mod_cta_general.has-bg {
  min-height: 200px;
}
.mod_cta_general:not(.light-bg) {
  background: #231F20;
}
.mod_cta_general:not(.light-bg) h2,
.mod_cta_general:not(.light-bg) h3,
.mod_cta_general:not(.light-bg) p,
.mod_cta_general:not(.light-bg) a {
  color: #fff;
}

/* .mod_cta_general.thin .row — padding, width and alignment (reference: metal-roofing) */
.mod_cta_general.thin .row {
  position: relative;
  z-index: 2;
  text-align: left;
  padding: calc(40px + 4%) 60px;
  max-width: 1120px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
}

/* .cta .row — stacking so content is above background */
.mod_cta_general.cta .row {
  position: relative;
  z-index: 2;
}

.mod_cta_general.thin .row .text h2 {
  margin: 0;
}
.mod_cta_general.thin .row .text h2 a {
  text-decoration: none;
}

/* Background image: full-bleed layer (first child in DOM, same pattern as mod_banner, mod_box_grid) */
.mod_cta_general .mod_cta_general__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0.3;
  pointer-events: none;
}
