.container.relative-container {
  position: relative;
}

img.teal-blackground-swatch,
picture.teal-blackground-swatch {
  width: 100%;
  height: 100%;
  position: absolute;
  opacity: 0.4;
  z-index: 0;
  left: 0;
  top: 0;
  object-fit: contain;
}

.single-column .icon-box .icon {
  max-width: 150px;
  display: block;
  margin: auto;
  height: auto;
  position: relative;
}

.icon-box {
  position: relative;
  text-align: center;
  font-size: 18px;
  line-height: 36px;
}

.icon-box h2 {
  color: var(--navy);
  margin-bottom: -8px;
  position: relative;
}

.icon-box h2 span {
  display: block;
  color: var(--purple);
  font-size: 28px;
  line-height: 28px;
}

.one-col-border-content:before,
.one-col-border-content:after {
  content: '';
  position: absolute;
  height: 100%;
  width: 20%;
  border: 5px solid var(--navy);
  top: 0;
}

.one-col-border-content:before {
  left: 0;
  border-right: 0px;
  border-radius: 30px 0px 0px 30px;
}

.one-col-border-content:after {
  right: 0;
  border-left: 0px;
  border-radius: 0px 30px 30px 0px;
}

.one-col-border-content {
  position: relative;
  padding: 50px;
}

.icon-box {
  position: relative;
  text-align: center;
  font-size: 20px;
  line-height: 42px;
  padding-top: 100px;
  padding-bottom: 150px;
  margin-top: -100px;
  margin-bottom: -150px;
}

.full-content {
  display: none;
}
.full-content.visible {
  display: block;
}

.img-box .image-container {
  border: 5px solid var(--navy);
}

.one-column-section.with-partial-border .container {
  border-bottom: 5px solid var(--navy);
  border-radius: 30px;
}

.one-column-section.with-partial-border .container:before,
.one-column-section.with-partial-border .container:after {
  border: 5px solid var(--navy);
  content: '';
  position: absolute;
  height: calc(100% - 55px);
  bottom: -5px;
  width: 25%;
}

.one-column-section.with-partial-border .container:before {
  left: 0;
  border-radius: 30px 0px 0px 30px;
  border-right: 0;
}

.one-column-section.with-partial-border .container:after {
  right: 0;
  border-radius: 0px 30px 30px 0px;
  border-left: 0;
}
.one-column-section.with-partial-border h2 {
  position: relative;
  background: transparent;
  color: var(--navy);
  width: fit-content;
  display: block;
  margin: auto;
  padding: 0px 25px;
  width: 50%;
}

.one-column-section.with-partial-border .container {
  padding: 25px 50px;
  text-align: center;
}

.single-column.with-full-border .container {
  border: 5px solid var(--ltnavy);
  padding: 25px 50px;
  text-align: center;
  border-radius: 30px;
}

.img-box.one-column-section .container.relative-container {
  padding-bottom: 150px;
}

.img-box .image-container,
.btn-box-only .image-container {
  margin: auto;
  display: block;
  border-radius: 30px;
  overflow: hidden;
  position: relative;
  border: 5px solid var(--purple);
}

.btn-box-only .image-container {
  height: 400px;
}
.btn-box-only .image-container h2 {
  text-align: left;
  color: var(--cream) !important;
  text-shadow: 2px 2px 10px var(--gray);
}
.img-box .image-container {
  margin-top: -150px;
  border: 5px solid var(--navy);  
  background: var(--ltnavy);
  width: 95%;
  max-width: 1000px;
  height: 300px;
}

.img-box .image-container .button-container,
.btn-box-only .image-container .button-container {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  padding: 50px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.btn-box-only .image-container .button-container {
  background: linear-gradient(90deg, #00000099, transparent);
  width: 60%;
}

.img-box .image-container img.button-image,
.img-box .image-container picture.button-image {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.img-box .image-container .button-container a.btn.btn-primary {
  display: block;
  width: 100%;
}

.button-container a.btn.btn-primary {
  width: 100%;
}

.button-container a.btn.btn-primary {
  width: 100%;
}

@media (min-width: 990px) {
  .read-more-wrapper {
    max-height: 168px;
    overflow: hidden;
    transition: transform 0.3s ease;
  }

  .intro-content {
    transition: transform 5s ease;
  }

  .read-more-wrapper:hover .intro-content {
    transform: translateY(calc(-100% + 168px)); /* Move content upwards */
  }
}
@media (max-width: 990px) {
  .one-col-border-content:before,
  .one-col-border-content:after {
    width: 13%;
  }
}
@media (max-width: 764px) {
  .one-col-border-content:before,
  .one-col-border-content:after {
    display: none;
  }

  .icon-box h2 {
    color: var(--navy);
    font-size: 32;
    line-height: 48px;
    margin-bottom: -30px;
    position: relative;
  }

  .icon-box h2 span {
    display: block;
    color: var(--purple);
    font-size: 18px;
    line-height: 27px;
  }

  img.teal-blackground-swatch,
  picture.teal-blackground-swatch {
    width: 199%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    opacity: 0.4;
    z-index: 0;
    top: 0;
    right: -50%;
    left: -50%;
  }
  .one-column-section.with-icon {
    overflow-x: hidden;
    padding: 0;
  }

  .icon-box {
    position: relative;
    text-align: center;
    font-size: 20px;
    line-height: 42px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
  }

  button.d-block.d-md-none.toggle-read-more {
    background: transparent;
    border: 0;
    text-transform: capitalize;
    color: var(--navy);
    font-weight: 500;
    opacity: 75%;
    font-size: 14px;
    line-height: 20px;
  }
  .single-column.with-full-border .container {
    border: 0px solid var(--ltnavy);
    padding: 0px;
    text-align: center;
    border-radius: 30px;
  }
  .btn-box-only .image-container .button-container {
    width: 100%;
  }
}


@media (max-width: 655px) {
 .one-column-section.with-partial-border h2 {
  width: 80%;
 }
}