.repeater-module-outer h2{
  color: #cca62a;
  font-family: Open Sans,sans-serif;
  font-size: 40px;
  font-weight: 400;
  letter-spacing: .75px;
  line-height: 1.15;
  margin: 0;
  padding-bottom: 0px;
  text-align:center;
  text-transform:uppercase;
}
h4.repeater-subheading {
  color: #172f35;
  font-size: 23px !important;
  font-weight: 500;
  letter-spacing: .15px;
  margin: 20px 0px 40px 0px; 
  text-align: center;
}
.repeater-module-outer .repeater-module-repeater {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 equal columns */
  gap: 50px;
}
.repeater-module-outer .repeater-module-repeater-image-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:21px;
  padding-bottom:24px;
}
.repeater-module-outer h3 {
  margin: 0;
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: 0.54px;
  font-family: Open Sans,sans-serif;
  color: #29545E;
  font-weight:bold;
  text-transform:uppercase;
}
.repeater-module-outer p {
  margin: 0;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.25px;
  color: #29545E;
  font-weight:400;
  padding-bottom:10px;
}
.repeater-module-outer a {
  display:inline-block;
  font-size: 18px;
  line-height: 1.6;
  letter-spacing: 0.99px;
  color: #29545E;
  font-weight:400;
  text-transform:uppercase;
  text-decoration:none;
  position:relative;
}
.repeater-module-outer a:before {
  content:'';
  width:50px;
  height:1px;
  background-color:#CCA62A;
  position:absolute;
  bottom:3px;
}
.repeater-module-outer a:after {
  border-bottom: 1px solid #cca62a;
  border-right: 1px solid #cca62a;
  content: "";
  height: 10px;
  position: absolute;
  right: -16px;
  width: 10px;
  transform: rotate(-45deg);
  bottom: 10px;
}
.repeater-module-outer .repeater-module-repeater-inner {
  padding: 50px 40px;
  box-shadow: 0px 3px 25px #00000029;
  transition: 0.3s all;
}
.repeater-module-outer .repeater-module-repeater-inner:hover {
  background-color:#29545E;
}
.repeater-module-outer .repeater-module-repeater-inner:hover h3,
.repeater-module-outer .repeater-module-repeater-inner:hover p{
  color:#fff;
}
.repeater-module-outer .repeater-module-repeater-inner:hover a{
  color:#CCA62A;
}
.repeater-module-outer .repeater-module-repeater-inner:hover a:before {
  width:100%;
}
.repeater-module-outer .repeater-module-repeater-inner:hover a:after {
  border-color:#fff;
}

.learn-more-text {
    text-align: right;
    margin-right: 30px;
}

@media (max-width: 1600px) {
  .repeater-module-outer .repeater-module-repeater {
    gap: 60px;
  }
}
@media (max-width: 1200px) {
  .repeater-module-outer h2 {
    padding-bottom:35px;
  }
  .repeater-module-outer .repeater-module-repeater {
    gap: 50px;
  }
  .repeater-module-outer .repeater-module-repeater-image-heading{
    flex-direction:column;
    padding-bottom: !important;
  }
}
@media (max-width: 767px) {
  .repeater-module-outer {
    padding-top: 25px !important;
    padding-bottom: 0 !important;
  }
  .repeater-module-outer h2 {
    font-size: 20px;
    padding-bottom:25px;
  }
  .repeater-module-outer .repeater-module-repeater {
    grid-template-columns: repeat(1, 1fr);
  }
  .repeater-module-outer h3 {
    font-size: 20px !important;
    letter-spacing:0.5px !important;
  }
  .repeater-module-outer .repeater-module-repeater-inner {
    padding: 40px 30px;
  }
  .repeater-module-outer p {
    padding-bottom: 20px !important;
  }
/* ===============================
   End of Repeater Module Styles
   =============================== */

/* Fluid font sizing for all viewports */
.repeater-module-outer h2 {
  font-size: clamp(20px, 4vw, 40px);
}

.repeater-module-outer h3 {
  font-size: clamp(20px, 2.5vw, 28px);
}

.repeater-module-outer p {
  font-size: clamp(16px, 1.8vw, 18px);
}

h4.repeater-subheading {
  font-size: clamp(18px, 2vw, 23px);
}
