/* MANTLE */
.index--mantle {
  position: relative;
  margin-top: 112px;
  margin-bottom: 70px;
}
  @media (min-width: 600px)  {.index--mantle {margin-top: 138px;}}
  @media (min-width: 768px)  {.index--mantle {margin-bottom: 80px;}}
  @media (min-width: 1024px) {.index--mantle {margin-bottom: 110px; margin-top: 92px;}}
  @media (min-width: 1440px) {.index--mantle {margin-top: 118px;}}


.index--mantle-copy {
  position: relative;
  margin-top: 30px;
}
  @media (min-width: 768px)  {.index--mantle-copy {margin-top: 50px;}}
  @media (min-width: 1024px) {.index--mantle-copy {margin-top: 60px;}}


.index--mantle-copy h2 {float: left; max-width: 560px;}
  @media (min-width: 1024px) {.index--mantle-copy h2 {max-width: 680px;}}


.index--mantle-image-background {
  position: relative;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: linear-gradient(157.31deg, #D62229 12.3%, #7D204B 85.26%);
  height: 250px;
}
  @media (min-width: 768px)  {.index--mantle-image-background {height: 390px;}}
  @media (min-width: 1440px) {.index--mantle-image-background {height: 548px;}}

.index--mantle-image {
  position: relative;
  width: 100%;
  height: 100%;
  background-size: 130%;
  background-repeat: no-repeat;
  background-position: center 7%;
}
  @media (min-width: 1024px) {.index--mantle-image {background-size: 115%;}}
  @media (min-width: 1244px) {.index--mantle-image {background-size: 100%;}}


.index--mantle-cta-button-wrap {
  margin-top: -60px;
  float: left;
  width: 100%;
}
  @media (min-width: 1024px) {.index--mantle-cta-button-wrap {margin-top: -115px;}}
  @media (min-width: 1244px) {.index--mantle-cta-button-wrap {margin-top: -150px;}}
  @media (min-width: 1440px) {.index--mantle-cta-button-wrap {margin-top: -170px;}}

.index--mantle-cta-button-wrap h2 {float: left;}
  @media (min-width: 1024px) {.index--mantle-cta-button-wrap h2 {max-width: 660px;}}




.index--mantle-cta-button {
  float: left;
  position: relative;
  width: 100%;
  border-radius: var(--borderradius-large);
  background: linear-gradient(157.31deg, #D62229 12.3%, #7D204B 85.26%);
}
  @media (min-width: 1024px) {.index--mantle-cta-button {width: calc(50% - 15px);}}
  @media (min-width: 1244px) {.index--mantle-cta-button {width: calc(50% - 15px);}}


.index--mantle-cta-button-interior {
  position: relative;
  display: flex;
  align-items: center;
  padding: 25px;
  border-radius: var(--borderradius-large);
  z-index: 2;
}
  @media (min-width: 1024px) {.index--mantle-cta-button-interior {padding: 55px 30px;}}
  @media (min-width: 1244px) {.index--mantle-cta-button-interior {padding: 90px 50px;}}
  .index--mantle-cta-button-interior:hover {color: #FFF;}


.index--mantle-cta-button-gradient {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(140.59deg, #FFECAA 18.68%, #FFAAAE 92.24%);
  transition: opacity 0.5s linear;
  opacity: 1;
  border-radius: var(--borderradius-large);
}
  .index--mantle-cta-button:hover .index--mantle-cta-button-gradient {opacity: 0;}


.index--mantle-cta-button-left {margin-bottom: 10px;}
  @media (min-width: 768px)  {.index--mantle-cta-button-left {margin-bottom: 20px; margin-right: 30px;}}
  @media (min-width: 1024px) {.index--mantle-cta-button-left {margin-bottom: 0; margin-right: 30px;}}


.index--mantle-cta-button svg {
  float: left;
  width: 72px;
}
  @media (min-width: 1024px) {.index--mantle-cta-button svg {width: 114px;}}
  @media (min-width: 1440px) {.index--mantle-cta-button svg {width: 144px;}}

    
.index--mantle-cta-button svg path {transition: all 0.6s ease-in, all 0.6s ease-out;}
  .index--mantle-cta-button-interior:hover svg path {fill: #FFF;}

.index--mantle-cta-button-text {
  float: left;
  width: calc(100% - 72px);
  margin-left: 25px;
}
  @media (min-width: 1024px) {.index--mantle-cta-button-text {width: calc(100% - 114px);}}
  @media (min-width: 1440px) {.index--mantle-cta-button-text {width: calc(100% - 144px);}}

.index--mantle-cta-button-text .btn-arrow-withcolorchange {font-size: 1.4rem;}
  @media (min-width: 768px)  {.index--mantle-cta-button-text .btn-arrow-withcolorchange {font-size: 1.8rem;}}
  @media (min-width: 1440px) {.index--mantle-cta-button-text .btn-arrow-withcolorchange {font-size: 2.4rem;}}

.index--mantle-cta-button h3 {
  color: #000;
  margin-bottom: 10px;
  transition: all 0.5s ease-in, all 0.5s ease-out;
}
  @media (min-width: 1440px) {.index--mantle-cta-button h3 {margin-bottom: 30px;}}
  a.index--mantle-cta-button-interior:hover .index--mantle-cta-button h3 {color: #FFF;}

  .index--mantle-cta-button:hover.index--mantle-cta-button a h3 {color: #FFF;}

.index--mantle-cta-button span {
  color: var(--red);
  transition: all 0.5s ease-in, all 0.5s ease-out;
}
.index--mantle-cta-button-interior:hover span {color: #FFF;}

.index--mantle-learnmore {
  position: relative;
  float: left;
  width: 100%;
  margin-top: 30px;
}

  @media (min-width: 1024px) {
    .index--mantle-learnmore {
      position: absolute;
      right: 64px;
      bottom: 0;
      width: auto;
      margin-top: 0;
    }
  }

.index--mantle-learnmore .btn-arrow-down {margin-right: 20px;}
/* MANTLE */


/* SECTION PADDING */
.index--section {padding: 70px 0 130px;}
  @media (min-width: 768px)  {.index--section {padding: 80px 0;}}
  @media (min-width: 1024px) {.index--section {padding: 80px 0 140px;}}

.index--section-header {
  float: left;
  width: 100%;
  padding-bottom: 40px;
}
  @media (min-width: 1024px) {.index--section-header {padding-bottom: 60px;}}

.index--section-header p {}
/* SECTION PADDING */


/* INDEX - LOCATIONS */
.index-locations-wrap {}
  @media (min-width: 1024px) and (max-width: 1439px) {.index-locations-wrap {margin-left: -4px; margin-right: -4px;}}

.index-locations-wrap .module--location {}
  @media (min-width: 1024px) and (max-width: 1439px) {.index-locations-wrap .module--location {padding: 4px;}}

#locations {scroll-behavior: smooth;}

.index--locations {
  padding: 70px 0 130px;
  scroll-margin-top: 50px;
}
  @media (min-width: 768px)  {.index--locations {padding: 80px 0;}}
  @media (min-width: 1024px) {.index--locations {padding: 80px 0 140px;}}

.index--locations h4 {}
  @media (min-width: 1024px) {
    .index--locations h4 {
      font-size: 1.8rem;
      min-height: 80px;
    }
  }
  @media (min-width: 1440px) {
    .index--locations h4 {
      font-size: 2.4rem;
      min-height: 90px;
    }
  }

.module--location-phoneandemail a {}
  @media (min-width: 1024px) and (max-width: 1243px) {.module--location-phoneandemail a {font-size: 1.4rem;}}

.module--location-phoneandemail a:last-child {padding-bottom: 0;}


.index--locations .index--section-header h1,
.index--locations .index--section-header p {
  float: left;
  width: 100%;
}
.index--locations .index--section-header p {margin-top: 20px;}
  @media (min-width: 768px) {
    .index--locations .index--section-header p {width: calc(50% - 15px);}
    .index--locations .index--section-header p.p-one {margin-right: 30px;}
  }

  @media (min-width: 1024px) {
    .index--locations .index--section-header h1,
    .index--locations .index--section-header p {
      width: 33%;
      margin-top: 0;
    }

    .index--locations .index--section-header p.p-one {padding-right: 15px; margin-right: 0;}
    .index--locations .index--section-header p.p-two {padding-left: 15px;}
  }





.index--locations .module--location .module--inner {}
  @media (min-width: 1024px) {
    .index--locations .module--location .module--inner {
      display: inline-block;
      padding: 30px 15px;
    }
  }
  @media (min-width: 1244px) {.index--locations .module--location .module--inner {padding: 30px 20px;}}

.index--locations .module--location-icon {}
  @media (min-width: 1024px) {
    .index--locations .module--location-icon {
      width: 52px;
      margin-bottom: 20px;
    }
  }

  @media (min-width: 1024px) {
    .index--locations .module--location-info {
      margin-left: 0;
      width: 100%;
    }
  }
/* INDEX - LOCATIONS */


/* INDEX - SERVICES */
.index--services-header {}

.index--services .index--section-header h1,
.index--services .index--section-header p {
  float: left;
  width: 100%;
}
.index--services .index--section-header p {margin-top: 20px;}

  @media (min-width: 768px) {.index--services .index--section-header p {width: 66%;}}
  @media (min-width: 1024px) {
    .index--services .index--section-header h1 {width: 33%;}
    .index--services .index--section-header p {
      width: 66%;
      margin-top: 0;
    }
  }
  @media (min-width: 1440px) {
    .index--services .index--section-header h1,
    .index--services .index--section-header p {width: 50%;}

    .index--services .index--section-header p {padding-left: 15px;}
  }



.index--services-header h2 {margin-bottom: 20px;}
  @media (min-width: 1024px) {.index--services-header h2 {margin-bottom: 0;}}

.index--services-header h2,
.index--services-header p {
  float: left;
  width: 100%;
}
  @media (min-width: 768px) {
    .index--services-header h2,
    .index--services-header p {width: 48%;}
  }

.index--services .locations-wrap {margin-top: 60px;}
/* INDEX - SERVICES */


/* INDEX - NEWS & EVENTS */
.index--newsandevents .index--section-header a {margin-top: 20px;}
  @media (min-width: 768px) {
    .index--newsandevents .index--section-header h1 {float: left;}
    .index--newsandevents .index--section-header a {float: right;}
  }

.index--newsandevents .module--newsandevents-preview h5 {}
  @media (min-width: 1440px) {.index--newsandevents .module--newsandevents-preview h5 {font-size: 3.0rem;}}
/* INDEX - NEWS & EVENTS */

/* INDEX - INSTAGRAM FEED */
.index--instagramfeed {margin-top: 80px;}

/*.index--instagramfeed .index--section-header {padding-bottom: 0;}*/

@media (min-width: 768px) {
  .index--instagramfeed .index--section-header h4 {float: left;}
  .index--instagramfeed .index--section-header a {
    margin-top: 10px;
    float: right;
  }
}

.index--instagramimageblock {
  margin-bottom: 10px;
  overflow: hidden;
}
/* INDEX - INSTAGRAM FEED */

/* INDEX - ABOUT US */
.index--aboutus {}
  @media (min-width: 600px)  {.index--aboutus {padding-left: 60px; padding-right: 60px;}}
  @media (min-width: 1024px) {.index--aboutus {padding-left: 0; padding-right: 0;}}


.index--aboutus-left,
.index--aboutus-right {float: left;}
  @media (min-width: 1024px) {
    .index--aboutus-left,
    .index--aboutus-right {width: 50%;}

    .index--aboutus-left {padding-right: 25px;}
    .index--aboutus-right {padding-left: 25px;}
  }
  @media (min-width: 1244px) {
    .index--aboutus-left {padding-right: 50px;}
    .index--aboutus-right {padding-left: 50px;}
  }

.index--aboutus-left h4,
.index--aboutus-left p {margin-bottom: 20px;}
  @media (min-width: 1024px) {
    .index--aboutus-left h4,
    .index--aboutus-left p {margin-bottom: 30px;}
  }

.index--aboutus-right h1 {
  text-align: center;
  margin: 50px 0 30px;
}
  @media (min-width: 1024px) {.index--aboutus-right h1 {margin: 30px 0 30px;}}
/* INDEX - ABOUT US */

