/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Navigation
# Content
## Custom Element
### Carousel
### Accordion
# Footer
# Media - Max
# Media - Min
--------------------------------------------------------------*/
:root {
    --black: #1a1a1a;
    --white: #fff;
    --navy: #002260;
    --pink: #c4005c;
    --green: #00ae7a;
    --peach: #f4cbb2;
    --light-peach: #fbebe1;
    --beige: #fdf4ef;
    --shadow: 0px 0px 17px 5px rgba(0,0,0,0.1)
}
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
.row,
.vc_row{
	margin-left: 0!important;
 	margin-right: 0!important;
	width: 100%;
}
.vc_column_container>.vc_column-inner {
  padding: 0!important;
}
.screenreader-only {
  position:absolute;
  left:-10000px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
header .ast-container, 
header .ast-container-fluid,
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar, 
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-below-header-bar, 
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-above-header-bar{
  padding-left: 40px!important;
  padding-right: 40px!important;
}
.width-container,
.site-primary-footer-wrap .ast-builder-grid-row,
.site-above-footer-wrap .ast-builder-grid-row,
.site-below-footer-wrap .ast-builder-grid-row{
  max-width: 1460px!important;
  margin-left: auto!important;
  margin-right: auto!important;
  padding-left: 40px!important;
  padding-right: 40px!important;
  float: unset!important;
}
.d-center,
.d-center > .vc_column-inner > .wpb_wrapper{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flex-wrap,
.flex-wrap > .vc_column-inner > .wpb_wrapper{
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.align-bottom {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
html{
	font-size: 18px;
}
.text-large,
.text-large h1,
.text-large h2,
.text-large h3,
.text-large h4,
.text-large h5,
.text-large h6,
.text-large p,
.text-large a {
  font-size: 21px;
  line-height: normal;
}
.text-white,
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p{
  color: #fff;
}
.text-white a {
  color: #fff!important;
}

.text-pink,
.text-pink h1,
.text-pink h2,
.text-pink h3,
.text-pink h4,
.text-pink h5,
.text-pink h6,
.text-pink p,
.text-pink a {
  color: var(--pink);
}
.text-green,
.text-green h1,
.text-green h2,
.text-green h3,
.text-green h4,
.text-green h5,
.text-green h6,
.text-green p,
.text-green a {
  color: var(--green);
}
.text-navy,
.text-navy h1,
.text-navy h2,
.text-navy h3,
.text-navy h4,
.text-navy h5,
.text-navy h6,
.text-navy p,
.text-navy a {
  color: var(--navy);
}
.text-center,
.text-center h1,
.text-center h2,
.text-center h3,
.text-center h4,
.text-center h5,
.text-center h6,
.text-center p,
.text-center a {
  text-align: center;
}
.text-left,
.text-left .text-center,
.text-left h1,
.text-left h2,
.text-left h3,
.text-left h4,
.text-left h5,
.text-left h6,
.text-left p,
.text-left a {
  text-align: left!important;
}
.seo-h3,
.seo-h3 h1,
.seo-h3 h2,
.seo-h3 h4{
  font-size: 1.66rem;
  font-weight: 500;
  font-family: 'Outfit',sans-serif;
  line-height: 1.3em;
}
.seo-h4,
.seo-h4 h1,
.seo-h4 h2,
.seo-h4 h3{
  font-size: 1.33rem;
  line-height: 1.2em;
  font-weight: 500;
  font-family: 'Outfit',sans-serif;
}
.f-weight-600,
.f-weight-600 h1,
.f-weight-600 h2,
.f-weight-600 h3,
.f-weight-600 h4,
.f-weight-600 h5,
.f-weight-600 h6,
.f-weight-600 p,
.f-weight-600 a,
.f-weight-600 strong{
  font-weight: 600!important;
}
.btn,
#content .gform_footer input[type="submit"]{
  display: inline-block;
  border-radius: 8px;
  border-style: solid;
  border-top-width: 0px;
  border-right-width: 0px;
  border-left-width: 0px;
  border-bottom-width: 0px;
  color: var(--white);
  border-color: var(--pink);
  background-color: var(--pink);
  padding-top: 8px;
  padding-right: 12px;
  padding-bottom: 8px;
  padding-left: 12px;
  font-family: inherit;
  font-weight: 500;
  font-size: 20px;
  line-height: 1em;
  margin-right: .5rem;
  margin-bottom: .5rem;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  text-align: center;
}
.btn:hover,
.btn:focus,
#content .gform_footer input[type="submit"]:hover,
#content .gform_footer input[type="submit"]:focus {
  color: var(--white);
  border-color: var(--navy);
  background-color: var(--navy);
}
.btn-navy,
.btn-navy {
  color: var(--white);
  border-color: var(--navy);
  background-color: var(--navy);
}
.btn-navy:hover,
.btn-navy:focus {
  color: var(--white);
  border-color: var(--pink);
  background-color: var(--pink);
}
.text-large a{
  font-weight: 500;
  color: var(--pink);
}
.text-large a::after{
  content: '\f054';
  font-family: "Font Awesome 6 Free";
  font-size: 16px;
  display: inline-block;
  color: var(--pink);
  font-weight: 900;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  position: relative;
  left: 5px;
}
.text-large a:hover,
.text-large a:focus{
  color: var(--navy);
}
.text-large a:hover::after,
.text-large a:focus::after{
  left: 10px;
  color: var(--navy);
}
.text-white.text-large a,
.text-large .text-white a,
.text-white.text-large a::after,
.text-white .text-large a::after,
.text-large .text-white a::after  {
  color: #fff!important;
}
.text-white.text-large a:hover,
.text-white .text-large a:hover,
.text-large .text-white a:hover,
.text-white.text-large a:hover::after,
.text-white .text-large a:hover::after,
.text-large .text-white a:hover::after {
  color: var(--beige);!important;
}

strong.text-large{
  font-weight: 600;
}
.underline{
  text-decoration: underline!important;
}
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
.ast-above-header-wrap p{
  margin-bottom: 0;
}
.ast-builder-menu-1,
.ast-builder-menu-1 .ast-main-header-bar-alignment,
.ast-builder-menu .main-navigation > ul,
.ast-header-button-1{
  height: 100%;
}
.main-header-menu > .menu-item > .menu-link, 
#astra-footer-menu > .menu-item > .menu-link{
  position: relative;
  padding: 0 0 1.1rem 0;
  margin: 0 1em;
  -webkit-box-align: end!important;
  -ms-flex-align: end!important;
  align-items: flex-end!important;
}
.ast-header-button-1{
  padding-bottom: 1rem;
  margin-left: 1em;
  -webkit-box-align: end!important;
  -ms-flex-align: end!important;
  align-items: flex-end!important; 
}
.ast-builder-menu .main-navigation > ul a::after {
  content: '';
  background-color: var(--navy);
  display: none;
  width: 100%;
  height: 5px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg{
  width: 40px;
}
.ast-button-wrap .menu-toggle.main-header-menu-toggle{
  padding: 3px 10px!important;
}

.menu-toggle.toggled {
  color: var(--white)!important;
  background: var(--pink)!important;
}
.menu-toggle.toggled .ast-mobile-svg{
  fill: var(--white)!important;
}
/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.background-pink{
  background-color: var(--pink);
}
.background-peach{
  background-color: var(--peach);
}
.background-lightpeach,
.background-light-peach{
  background-color: var(--light-peach);
}
.background-green{
  background-color: var(--green);
}
.background-beige{
  background-color: var(--beige);
}
.background-box > .vc_column-inner{
  border: 3px solid var(--pink);
  background-color: #fff;
}
.img-fullwidth .wpb_wrapper,
.img-fullwidth .wpb_wrapper .vc_single_image-wrapper,
.img-fullwidth .wpb_wrapper .vc_single_image-wrapper img{
  width: 100%;
}
.pill-pink{
  border: 2px solid var(--pink);
  border-radius: 10px;
  background-color: #F7DBE0;
  padding: 1rem;
}
.pill-pink p{
  margin-bottom: .5rem;
}

.svg-heart .wpb_wrapper{
    max-width: 100px;
    width: 100%;
}
.svg-heart .vc_single_image-wrapper,
.svg-heart .vc_single_image-wrapper img{
    width: 100%;
}
/*--------------------------------------------------------------
## Custom Element
--------------------------------------------------------------*/
.background-half{
  background-color: grey;
  height: 100%;
  width: 50%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  top: 0;
  bottom: 0;
}
.background-half.align-left{
  left: 0;
}
.background-half.align-right{
  right: 0;
}
.background-half.position-top{
  background-position: top center;
}
.background-half.position-bottom{
  background-position: bottom center;
}
.background-half.position-left{
  background-position: left center;
}
.background-half.position-right{
  background-position: right center;
}
@media only screen and (max-width: 992px) {
  .background-half{
    position: relative;
    width: 100%!important;
  }  
}
/*--------------------------------------------------------------
### Counter
--------------------------------------------------------------*/
.counter .counter-number{
  font-size: 2.33em;
  font-weight: 500;
  font-family: 'Lora',serif;
  line-height: 1.3em;
}
.counter sup{
  top: -7px!important;
}
.counter p{
  margin-bottom: 0;
}
/*--------------------------------------------------------------
### Carousel
--------------------------------------------------------------*/

.larche-carosuel.has-arrows .slick-next,
.larche-carosuel.has-arrows .slick-prev{
  background-color: var(--navy);
}
.larche-carosuel.has-arrows .slick-next:hover,
.larche-carosuel.has-arrows .slick-prev:hover,
.larche-carosuel.has-arrows .slick-next:focus,
.larche-carosuel.has-arrows .slick-prev:focus{
  background-color: var(--pink);
}
.slick-slider{
  padding-left: 75px;
  padding-right: 75px;
}
.larche-carosuel.has-arrows .slick-next{
  position: absolute;
  top: calc(50% - 20px);
  right: 0px;
}
.larche-carosuel.has-arrows .slick-prev{
  position: absolute;
  top: calc(50% - 20px);
  left: 0px;
}
.larche-carosuel.has-arrows .slick-next span,
.larche-carosuel.has-arrows .slick-prev span{
  width: 16px;
  height: 16px;
}
@media only screen and (max-width: 1350px) {
  .larche-carosuel.has-arrows{
    padding-left: 50px;
    padding-right: 50px;
  }
  .larche-carosuel.has-arrows .slick-next{
    right: 0;
  }
  .larche-carosuel.has-arrows .slick-prev{
    left: 0;
  }
}
/* Dots */
.larche-carosuel.has-dots .slick-dots {
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 1rem 0;
  list-style-type: none;
  margin-bottom: 3rem;
}
.larche-carosuel.has-dots .slick-dots li {
  margin: 0 0.25rem;
}
.larche-carosuel .slick-dots button {
  display: block;
  width: 1rem;
  height: 1rem;
  padding: 0;
  border: none;
  border-radius: 100%;
  background-color: var(--light-pink);
  border: 2px solid var(--pink);
  text-indent: -9999px;
}
.larche-carosuel.has-dots .slick-dots li.slick-active button {
  background-color: var(--pink);
}


/*--------------------------------------------------------------
# Gravity Forms
--------------------------------------------------------------*/
#content input[type="email"],
#content input[type="number"],
#content input[type="password"],
#content input[type="reset"],
#content input[type="search"],
#content input[type="tel"],
#content input[type="text"],
#content input[type="url"],
#content select,
#content textarea,
#content input[type="email"]:focus,
#content input[type="number"]:focus,
#content input[type="password"]:focus,
#content input[type="reset"]:focus,
#content input[type="search"]:focus,
#content input[type="tel"]:focus,
#content input[type="text"]:focus,
#content input[type="url"]:focus,
#content select:focus,
#content textarea:focus{
  border-top: none;
  border-left: none;
  border-right: none;
  border-bottom: 3px solid var(--peach);
  border-radius: 0!important;
  box-shadow: none;
  color: var(--black);
  opacity: 1;
  font-size: 16px!important;
  line-height: 1;
  padding: 12px 8px;
}
#content input[type="email"]:focus,
#content input[type="number"]:focus,
#content input[type="password"]:focus,
#content input[type="reset"]:focus,
#content input[type="search"]:focus,
#content input[type="tel"]:focus,
#content input[type="text"]:focus,
#content input[type="url"]:focus,
#content select:focus,
#content textarea:focus{
  border-color: var(--navy);
}
::-ms-input-placeholder { 
  color: var(--black);
  opacity: 1;
}
::placeholder {
  color: var(--black);
  opacity: 1;
}
.gform-theme--foundation .gform_fields{
  row-gap: 20px;
}
.gform_footer{
  text-align: right;
  justify-content: flex-end;
}
#content .gform_footer input[type="submit"]{
  margin: 0!important;
}


/*--------------------------------------------------------------
## Checkbox + Radio
--------------------------------------------------------------*/
.gchoice input[type='checkbox'],
.gchoice input[type='radio'] {
  opacity: 0;
  position: absolute;   
  height: 25px;
  width: 25px;

}
.gfield_label{
  font-size: 16px!important;
  line-height: 1;
}
.gchoice label{
  min-height: 25px;
  align-items: center;
  display: flex !important;
  overflow: unset;
  font-size: 16px!important;
  line-height: 1;
}
.gchoice input[type='checkbox'] + label,
.gchoice input[type='radio'] + label {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  margin-left: 0;
  top: 0;
}
.gchoice input[type='checkbox'] + label:before,
.gchoice input[type='checkbox'] + label:after,
.gchoice input[type='radio'] + label:before,
.gchoice input[type='radio'] + label:after {
  content: '';
  position: absolute;
  left: 0;
  z-index: 1;
  -webkit-transition: .2s;
  transition: .2s;
}
.gchoice input[type='checkbox']:not(:checked) + label:after,
.gchoice input[type='radio']:not(:checked) + label:after  {
  width: 25px;
  height: 25px;
  border: 3px solid var(--peach);
  background-color: var(--white);
  top: 0px;
  border-radius: 50%;
}
.gchoice input[type='checkbox']:checked + label:after,
.gchoice input[type='radio']:checked + label:after {
  top: 0;
  width: 25px;
  height: 25px;
  border: 3px solid var(--navy);
  background-color: var(--navy);
  border-radius: 50%;
  z-index: 0;
}
.gchoice input[type="checkbox"] + label:before,
.gchoice input[type="radio"] + label:before {
  font-family: 'Font Awesome 6 Free';
  font-size: 1rem;
  font-weight: 900;
  color: #fff;
  content: '\f00c'!important;
  position: absolute; 
  top: 0px;
  left: 5px;
  opacity: 0;
}
.gchoice input[type='checkbox']:checked + label:before,
.gchoice input[type='radio']:checked + label:before {
    opacity: 1;
}

/*--- Errors ---*/
.gform-theme--framework .gform_validation_errors .gform_submission_error{
  margin-bottom: 0;
}
/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
footer{
  font-weight: 500;
}
.ast-above-header-bar a,
footer .site-primary-footer-wrap a{
  color: var(--navy);
}
.ast-above-header-bar a:hover,
.ast-above-header-bar a:focus,
footer .site-primary-footer-wrap a:hover,
footer .site-primary-footer-wrap a:focus{
  color: var(--pink);
}
#block-10 figure {
  max-width: 132px;
}
.site-primary-footer-wrap{
  padding-bottom: 0;
}
.site-footer-primary-section-3 .footer-widget-area{
  margin-bottom: 0;
}
.site-below-footer-wrap{
  border-bottom: 10px solid var(--navy);
}
.site-below-footer-wrap,
.site-below-footer-wrap a {
  color: var(--pink);
  font-size: 16px;
}
.site-below-footer-wrap a:hover,
.site-below-footer-wrap a:focus{
  color: var(--navy);
}
.footer-widget-area{
  text-align: left!important;
}
/*--------------------------------------------------------------
# Media - MAX
--------------------------------------------------------------*/
@media only screen and (max-width: 992px) {
  .seo-h3,
  .seo-h3 h1,
  .seo-h3 h2,
  .seo-h3 h4{
    font-size: 1.63rem;
  }
  .seo-h4,
  .seo-h4 h1,
  .seo-h4 h2,
  .seo-h4 h3{
    font-size: 1.31rem;
  }
  .main-header-menu > .menu-item > .menu-link,
  .ast-header-button-1{
    margin: 0;
  }
  #ast-hf-mobile-menu,
  .ast-header-button-1{
    padding-left: 40px!important;
    padding-right: 40px!important;
  }
  .menu-link,
  .text-large,
  .text-large h1,
  .text-large h2,
  .text-large h3,
  .text-large h4,
  .text-large h5,
  .text-large h6,
  .text-large p,
  .text-large a {
    font-size: 18px;
  }
  p,
  p span,
  a,
  .btn{
    font-size: 16px;
  }
}

@media only screen and (max-width: 768px) {
  .text-sm-left,
  .text-sm-left h1,
  .text-sm-left h2,
  .text-sm-left h3,
  .text-sm-left h4,
  .text-sm-left h5,
  .text-sm-left h6,
  .text-sm-left p,
  .text-sm-left a {
    text-align: left!important;
  }
}

@media only screen and (max-width: 600px) {
  #block-10 figure{
    text-align: left;
    max-width: 125px;
    padding-bottom: 1rem;   
  }
}
@media only screen and (max-width: 425px) {
  #block-10 figure{
    text-align: left;
  }
  .ast-builder-grid-row-container.ast-builder-grid-row-mobile-3-firstrow .ast-builder-grid-row {
    grid-template-columns: 1fr;
  }
  .site-primary-footer-wrap[data-section="section-primary-footer-builder"].ast-footer-row-mobile-stack .site-footer-section{
    margin-bottom: 0;
  }
}
/*--------------------------------------------------------------
# Media - MIN
--------------------------------------------------------------*/
@media only screen and (min-width: 993px) {
  .ast-builder-menu .main-navigation > ul  .current-menu-item a::after,
  .ast-builder-menu .main-navigation > ul a:hover::after,
  .ast-builder-menu .main-navigation > ul a:focus::after{
    display: block;
  }
  #input_1_8{
    display: grid;
    grid-template-columns: repeat(2,1fr);
  }
  .svg-heart .wpb_wrapper{
    max-width: 300px!important;
    width: 100%;
  }
}


@media only screen and (min-width: 1200px) {
    .pt-xl-7,
    .py-xl-7{
        padding-top: 6rem!important;
    }
    .pb-xl-7,
    .py-xl-7{
        padding-bottom: 6rem!important;
    }
    .pr-xl-6{
        padding-right: 10rem!important;
    }
    .pl-xl-6{
        padding-left: 10rem!important;
    }
}