/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/


/* setting the line-heights because there isn't a way to set this in the theme settings with the fonts  */
body { line-height: 150%; }
  h1, .h1 { line-height: 120%; }
  h2, .h2 { line-height: 120%; }
  h3, .h3 { line-height: 120%; }
  h4, .h4 { line-height: 130%; }
  h5, .h5 { line-height: 140%; }
  h6, .h6 { line-height: 140%; }

@media screen and (max-width: 768px) {
  h1, .h1 { line-height: 120%; }
  h2, .h2 { line-height: 120%; }
  h3, .h3 { line-height: 120%; }
  h4, .h4 { line-height: 140%; }
  h5, .h5 { line-height: 140%; }
  h6, .h6 { line-height: 140%; } 
}

.subheading { display: block; }

/* secondary Buttons */




  







  



/* tertiary Buttons */












:root {
 --box-shadow: 0px 20px 24px -4px rgba(0, 0, 0, 0.08), 0px 8px 8px -4px rgba(0, 0, 0, 0.03); 
}

.accent-1 {
  color: #2A0F5E;
}
.accent-2 {
  color: #473192;
}
.accent-3 {
  color: #F8F8FC;
}


a.header__skip {
  color: #fff;
}
/* adding sliding hover styles to buttons - slides from left to right - removed .menu--desktop .menu__item a.menu__link */
.button, .hs-button {
  display: inline-block;
  transition: all 0.3s;
  position: relative;
  overflow: hidden;
  z-index: 1;
  font-weight: bold;
}
.menu--desktop .menu__item a.menu__link{ 
 padding: 8px 20px !important; 
  color: #fff;
}
.button:after, .hs-button:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: 

  
  
    
  


  rgba(42, 15, 94, 1.0)

;
  border-radius: 10rem;
  z-index: -2;
}
.secondary_button,
.secondary_button:after {
  background-color: unset !important;
}
.secondary_button {
 color: #2a0f5e;
}
.tertiary_button,
.tertiary_button:after {
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

 !important;
}
.tertiary_button {
 color: #2A0F5E !important;
 font-weight: bold !important;
}
.button:before, .hs-button:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
  transition: all 0.3s;
  border-radius: 10rem;
  z-index: -1;
}
.secondary_button:before {
  background-color: 

  
  
    
  


  rgba(42, 15, 94, 1.0)

;
}
.tertiary_button:before {
  background-color: 

  
  
    
  


  rgba(255, 200, 68, 1.0)

;
}
.button:hover, .hs-button:hover, .button:focus, .hs-button:focus {
  color: 

  
  
    
  


  rgba(42, 15, 94, 1.0)

;
  font-weight: bold;
}
.secondary_button:hover {
   color: 

  
  
    
  


  rgba(255, 255, 255, 1.0)

;
   background-color: unset;
}
.tertiary_button:hover {
   color: 

  
  
    
  


  rgba(42, 15, 94, 1.0)

;
   background-color: unset;
}
.button:hover:before, .hs-button:hover:before {
  width: 100%;
}
.primary_button:focus {
 color: #fff !important; 
}
.secondary_button:focus {
  color: 

  
  
    
  


  rgba(42, 15, 94, 1.0)

 !important; 
}

button.text-link {
  background: unset;
  color: #382176;
  border-radius: unset;
  padding: unset;
  border: unset; 
  font-size: unset;
  display: flex;
  justify-content: space-between;
}
a:not(.button):not(.menu__link), a.text-link, button.text-link { position: relative; }
a:not(.button):not(.menu__link):before, a.text-link:before, button.text-link:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background-color: #382176;
  bottom: 0;
  left: 0;
  transform-origin: right;
  transform: scaleX(0);
  transition: transform .3s ease-in-out;
}

a:not(.button):not(.menu__link):hover::before, a.text-link:hover:before, button.text-link:hover:before {
  transform-origin: left;
  transform: scaleX(1);
}

.header {
/*  make header sticky  */
  position: fixed;
  width: 100%;
  z-index: 100; 
}
.section-id {
  scroll-margin-top: 144px;
}
.subheading {
  margin-bottom: 16px; 
  font-weight: 600;
}
.heading {
 margin-bottom: 24px; 
}

@media screen and (max-width: 768px) {
 .subheading {
   margin-bottom: 12px; 
  } 
  .heading {
   margin-bottom: 20px; 
  } 
}
/* hero section */

.hero-form {
  border-radius: 64px;
  padding: 48px;
  background: #fff;
  box-shadow: var(--box-shadow);
  width: 100%;
  max-width: 525px;
}
.hero-form form {
  padding: 0;
}
.hero--with-form .hero-image-1 {
    aspect-ratio: 368 / 376;
    max-width: 368px !important;
    width: 100%;
  }
  .hero-image-2 {
    aspect-ratio: 319 / 359;
    max-width: 319px !important;
    width: 100%;
  }
@media screen and (max-width: 1440px) {
.hero--with-form  .hero-image-1 {
/*     aspect-ratio: 331/349;
    max-width: 331px !important;
      width: 100%; */
   width: 49%;
  }
  .hero-image-2 {
/*     aspect-ratio: 269/329;
    max-width: 269px !important;
     width: 100%; */
    width: 49%;
  } 
}
@media screen and (max-width: 1200px) {
  .hero-form {
    max-width: 100%;
  }
  .hero {
    flex-wrap: wrap;
    justify-content: center;
  }
  .hero--with-form .hero-content {
    display: flex;
    flex-direction: column;
    max-width: 864px;
  }
  .hero--with-form .hero-images {
    max-width: 864px;
    width: 100%;
    margin: 0 auto;
  }
 .hero--with-form .hero-image-1 {
    aspect-ratio: 442/376;
    max-width: 442px !important;
     width: 100%;
  }
  .hero-image-2 {
    aspect-ratio: 398/359;
    max-width: 398px !important;
     width: 100%;
  }
}
@media screen and (max-width: 992px) {
  .dnd_area-row-0-background-layers {
     padding: 32px 1rem;
  }
  .hero-images {
    height: auto !important;
    order: -1;
  }
  .hero--with-form .hero-image-1 {
    width: 100%;
    aspect-ratio: unset;
    height: auto !important;
    position: relative !important;
    top: unset !important;
    left: unset !important;
    max-width: 100% !important;
    max-height: 350px;
  }
  .hero-image-2 {
    display: none;
  }
}
form input[type=checkbox] {
  height: 18px;
  width: 18px;
}
.hero-images img {
  border-radius: 48px;
  border: 2px rgba(255, 255, 255, 0.25);
/*   box-shadow: 0px 24px 48px -12px rgba(0, 0, 0, 0.18); */
  box-shadow: var(--box-shadow);
}
form label {
  margin-bottom: 8px !important;
}
@media screen and (max-width: 768px) {
  .hero h1 {
    font-size: 40px;
  }
  .button-wrapper {
    flex-wrap: wrap !important;
    width: 100%;
/*     justify-content: flex-start !important; */
  }
  .button-wrapper a {
/*     margin: .5em 0; */
  }
}
/* cards */
.card-group {
  flex-wrap: wrap;
}
.card-group .card {
  border-radius: 32px;
}
.card-group .card img {
 border-radius: 32px 32px 0 0; 
}
.person-spotlight .card-group .card {
  padding: 0; 
  min-width: unset;
}

.card-content h3 {
  margin-bottom: 24px;
  color: #2A0F5E;
}
.card-content a {
 margin-top: 24px; 
}
.person-spotlight .card-content a {
  margin-top: unset;
}
@media screen and (max-width: 768px) {
 .card-group {
   flex-direction: column;
   align-items: center;
  }
  .card-group .card {
/*     max-width: 300px; */
    width: 100%;
  }
}
@media screen and (max-width: 420px) {
 .card-group .card {
   min-width: 275px;
  }
}
/* person spotlight */
.person-spotlight .card-group .card {
    border-radius: 48px;
    max-width: unset;
}
.person-spotlight .card-group .card img {
   border-radius: 48px; 
}

@media screen and (max-width: 992px) {
  .person-spotlight .card-group {
   flex-direction: column;
   align-content: center;
  }
 .person-spotlight .card-group .card img {
   border-radius: 32px;
  }
}
/* CTA Section */
.cta-container {
  border-radius: 24px; /* is there a theme setting for this */
}

/* Image and content split */
.split .flex-image {
  border-radius: 56px;
}
.split .callout-title {
  font-family: Open Sans;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;    
}
.image-callout {
  border-radius: 32px;
}
.split .callout-date {
  font-family: Open Sans;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 120%;
}
.split .grid-content h3 {
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 140%
}
.split form {
  padding: 0;
}
.checklist h3 {
 color: #2A0F5E; 
}
.square svg {
  fill: #2A0F5E;
}
/* icon-card-block-container */
.icon-card-block-container .card {
  box-shadow: var(--box-shadow);
}
/* statistics card */
.statistic-cards .card .card-content h3 {
    font-size: 80px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    color: #2A0F5E;
  }
.statistic-cards .card-group .card {
    border-radius: 48px;
    box-shadow: var(--box-shadow);
}
.content-container ul li {
 margin-bottom: 8px; 
}
/* accordion */
.accordion .accordion-header {
  font-size: 18px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
}

/* offerings */
.section__offerings {
  padding: 64px;
  border-radius: 120px;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25), 0px 20px 24px -4px rgba(0, 0, 0, 0.08);
}
.section__offerings .card-content {
  margin-top: 24px;
}
.section__offerings .card-content .h4 {
  font-size: 24px;
  margin-bottom: 16px;
}

@media screen and (max-width: 768px) {
  .section__offerings .card-content {
    margin-top: 20px;
  }
 .section__offerings .card-content .h4 {
    font-size: 20px;
  } 
  .section__offerings .card-content h3 {
    margin-bottom: 12px:
  }
}

/* responsive tabs */
.container-tabs  *:focus, .container-tabs  input:focus + label {
  box-shadow: inset 0 0 0 5px lightBlue;
}

.container-tabs .tab-title {
  font-size: 30px;
}

.container-tabs .label {
  border-radius: 48px 0px 0px 0px;
  border-right: 1px solid #2A0F5E;
  background: rgba(255, 255, 255, 0.85);
  font-weight: bold;
}

.container-tabs .label:active {
  background: #ccc;  
}

.container-tabs .radiotab:checked + .label {
  border-top: solid 1px #2A0F5E;
  border-left: solid 1px #2A0F5E;
  border-right: solid 1px #2A0F5E;
}

.container-tabs .panel {
  background: rgba(255, 255, 255, 0.85);
  box-shadow: 0px 20px 24px -4px rgba(0, 0, 0, 0.08);
  backdrop-filter: blur(4px);
  border-radius: 0;
}
@media screen and (max-width: 767px) {
 .container-tabs .panel {
   box-shadow: unset;
  }
 .container-tabs .tabs {
    box-shadow: 0px 20px 24px -4px rgba(0, 0, 0, 0.08);
    border-radius: 48px;
    backdrop-filter: blur(4px);
  }
}
.container-tabs label.label:first-of-type {
    border-radius: 48px 48px 0 0 !important;
  }
  .container-tabs label.label:last-of-type {
    border-radius: 0 0 48px 48px !important;
  }
.container-tabs.radiotab:checked + label.label:last-of-type {
  border-radius: 0 !important;
}

@media (min-width: 768px) {
  .container-tabs .panel {
    border-radius: 0 0 48px 48px;
  }
  .container-tabs .label {
    border-radius: 0 0 48px 48px;
    border-bottom: solid 1px #2A0F5E;
    font-size: 20px;
  }
  .container-tabs label.label:first-of-type {
    border-radius: 48px 0 0 0 !important;
  }
  .container-tabs label.label:last-of-type {
    border-radius: 0 48px 0 0 !important;
  }

}

#apply-now-content {
  width: 50%;
  border: 0;
  border-radius: 32px;
  padding: 56px 48px 64px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
 #apply-now-content {
    width: 95%;
    padding: 48px 24px 48px;
    top: 40%;
  }
  #apply-now-content h2 {
    font-size: 24px;
    line-height: unset;
    padding: 0;
    margin: 0;
  }
}
@media screen and (max-width: 768px) {
  #footer .widget_1738876750344-flexbox-positioning {
    align-items: flex-start !important;
    padding-bottom: 48px;
  }
  #footer .menu--desktop .menu__item a.menu__link {
    padding-left: 0 !important;
  }
  .accordion button > span {
    width: 90%;
  }
}