@import url('bootstrap.min.css');
@import url('aos.css');
@import url('magnific-popup.css');
@import url('owl.carousel.min.css');


html{
  -webkit-font-smoothing: antialiased;
}

body{
  font-family: 'Work Sans', sans-serif;
  font-size: 1rem;
  line-height: 1.625em;
  color:#020021c7;
  overflow-x: hidden;
}

::-webkit-scrollbar{
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-thumb {
  cursor: pointer;
  background: #23a592;
}

::selection{
  background-color:#23a592;
  color:#fff;
}

-webkit-::selection{
    background-color:#23a592;
    color:#fff;
}

::-moz-selection{
    background-color:#23a592;
    color:#fff;
}






h1,
.h1{ 
  font-family: 'Montserrat', sans-serif;
  font-size: 4.125rem;
  font-weight: 700;
  line-height: 1.1;
  color: #343434;
}

h2,
.h2{ 
  position: relative;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 2.1rem;
  line-height: 1.2;
  color: #343434;
  margin:2rem 0;
}

h3,
.h3{ 
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 1.925rem;
  line-height: 1.2;
  color: #343434;
  margin:1.5rem 0;
}

h4,
.h4{ 
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 1.325rem;
  line-height: 1.2;
  color: #19a98f;
  margin:1.5rem 0;
}

h5,
.h5{ 
  font-family: 'Montserrat', sans-serif;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.2;
  color: #2f6d3fcc;
  margin:1.2rem 0;
}

h6,
.h6{ 
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  font-size: 0.9rem;
  letter-spacing: 1px;
  line-height: 1.2;
  color: #343434;
  margin:1rem 0;
  text-transform: uppercase;
}


h1 a,
.h1 a,
h2 a,
.h2 a,
h3 a,
.h3 a,
h4 a,
.h4 a,
h5 a,
.h5 a,
h6 a,
.h6 a{
  color:inherit;
}

h1 a:hover,
.h1 a:hover,
h2 a:hover,
.h2 a:hover,
h3 a:hover,
.h3 a:hover,
h4 a:hover,
.h4 a:hover,
h5 a:hover,
.h5 a:hover,
h6 a:hover,
.h6 a:hover{
  text-decoration: none;
}

p{
  margin-bottom: 1rem;
}

ul{
  list-style: none;
  padding-left: 0;
}

a {
  color:#23a592;
  -webkit-transition: color .3s ease-out;
       -o-transition: color .3s ease-out;
          transition: color .3s ease-out;
}

a:hover,
a:focus {
  color:#23a592;
  outline: none;
}

a:focus{
  text-decoration: none;
}

.lead{
  line-height: 1.9;
  font-size: 1.125rem;
}



/* 1.3 Fields */



.form-control,
textarea.form-control{
  font-size: 1em;
  height: 3.625em;
  border-radius: 0;
  padding-left: 22px;
  color: #9818d6;
  background-color: transparent;
  border:0;
  border-bottom:1px solid #c3c3c3;
  -webkit-box-shadow:none;
          box-shadow:none;
      -webkit-appearance: none;
  -webkit-transition: all .15s;
       -o-transition: all .15s;
          transition: all .15s;
}

textarea.form-control{
  height: 7.9em;
  padding-top:1.1em;
  resize:none;
}

.form-control:focus{
  border-color:#23a592;
  outline: 0;
  -webkit-box-shadow:none;
          box-shadow:none;
}

.form-control::-moz-placeholder {
  color: #343434;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #343434;
}

.form-control::-webkit-input-placeholder {
  color: #343434;
}

label.error{
  border-color:#23a592;
  padding:9px 0 0 22px;
  font-size:0.9rem;
}

.mc-label{
  padding:9px 0 0 22px;
  font-size:0.9rem;
  color: #fff;
}

.input-group .form-control{
  background-color: #fff;
  border-radius: 30px 0  0 30px;
}






.btn{
  font-family: 'Montserrat', sans-serif;
  position: relative;
  display: inline-block;
  border:0.2em solid #23a592;
  border-radius: 30px;
  padding:1.2em 2.4em 1.15em;
  font-size: 0.875em;
  color:#fff;
  white-space: nowrap;
  text-align: center;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  text-decoration: none;
  background-color:#23a592;
  border-width: 1px;
  -webkit-transition: all .3s ease-out!important;
          transition: all .3s ease-out!important;
}

.btn:hover,
.btn:focus,
.btn:active{
  color: #000;
  background-color: transparent;
  border-color: #23a592;
  -webkit-box-shadow:none;
  box-shadow: none;
  outline: none!important;
}

.btn-white{
  background-color: #fff;
  border-color: #fff;
  color: #343434;
}

.btn-white:hover{
  background: transparent;
  border-color: #fff;
  color: #fff;
}

.btn-b-white{
  background-color: transparent;
  border-color: #fff;
}

.btn-b-white:hover{
  background-color: #fff;
  color: #000;
}

.btn-bg-dark:hover,
.btn-bg-dark:focus{
  color: #fff;
  border-color:#fff;
}





ion-icon{
  color:#23a592;
  font-size: 3.8rem;
  --ionicon-stroke-width: 17px;

}

.icon-video-play{
  position:relative;
  display: inline-block;
  width:5.15rem;
  height: 5.15rem; 
  background-color:#23a592;
  border-color:#23a592;
  border-radius: 50%;
  transition:all 0.3s ease;
} 

.icon-video-play:before{
  position: absolute;
  top: 50%;
  left: 50%;
  margin:-6px 0 0 -5px;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 12px;
  border-color: transparent transparent transparent #fff;
}

.icon-video-play:hover{
  border:1px solid #fff;
  background-color: transparent;
}





.loader{
  position:absolute;
  z-index: 10;
  z-index: 100;
  left: 0;
  width: 100%;
  top:0;
  height: 100%;
  background: #fff;
}

.spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.double-bounce1, .double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #23a592;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out;
}

.double-bounce2 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

@-webkit-keyframes sk-bounce {
  0%, 100% { -webkit-transform: scale(0.0) }
  50% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bounce {
  0%, 100% { 
    transform: scale(0.0);
    -webkit-transform: scale(0.0);
  } 50% { 
    transform: scale(1.0);
    -webkit-transform: scale(1.0);
  }
}






.bg-light{
  background: #f5f5f5!important;
}

.bg-dark{
  background:#1a1c26!important;
  color:#86878a;
}

.bg-dark .btn:hover,
.bg-dark .btn:focus{
  color: #fff
}

.bg-primary{
  background:#23a592!important;
  color:#fff;
}

.bg-dark .progress{
  background: #393b46;;
}





.text-dark{
  color:#343434!important;
}

.text-white{
  color:#fff!important;
}

.text-gray{
  color:#767676!important;
}

.text-primary{
  color:#23a592!important;
}






.navbar{
  position: absolute;
  z-index: 1;
  width: 100%;
  padding: 0 3rem;
  border-bottom: 1px solid rgba(52,52,52,0.1);
  height:4.7rem;
}

.navbar a,
.navbar a:hover{
  color:#343434;
}

.toggler{
 width:2rem;
 height: 2rem;
 padding:0;
 background: none;
 border:0;
}

.toggler:focus{
  outline: none;
}

.toggler-icon{
  display: block;
  border-top:2px solid #343434;
  margin-top: 0.5rem;
}

.toggler-icon:first-child{
  margin-top: 0;
}

.navbar-brand{
  float: left;
  font-family: 'Sacramento','Montserrat', sans-serif;
  font-size:1.875rem;
  font-weight: 700;
  color:#fff;
  margin-right: 4rem;
  padding:0;
  line-height: 1;
}

.navbar-brand:hover,
.navbar-brand:focus{
  color:#fff;
}

.navbar ul{
  margin-bottom:0;
}

.navbar-desctop .social-icons{
  margin:0.25rem 0 0 -1.5rem;
}

.social-icons{
  margin-left: -1.5rem;
}

.social-icons li{
  float: left;
  margin-left: 1.5rem;
}

.social-icons ion-icon{
  display: block;
  font-size:1.2rem;
  color:#343434;
  transition: all 0.3s ease;
}

.social-icons ion-icon:hover{
  color: #23a592;
}





.navbar-desctop:before{
  content:'';
  position: absolute;
  top:0;
  left:0;
  width: 100%;
  height: 0;
  background:#fff;
  transition: all 0.3s ease;
}

.navbar-nav-desctop{
  font-family: 'Montserrat', sans-serif;
  font-size:0.8rem;
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 0.05em;
  margin-top:0.3rem;
}

.nav-link{
  padding: 0;
}

.navbar-nav-desctop li a{
  color: #343434;
  transition:all 0.3s;
}

.navbar-nav-desctop li a:hover{
  text-decoration: none;
}

.navbar-nav-desctop > li{
  position: relative;
  float: left;
  margin-right: 2.1rem;
} 

.navbar-nav-desctop > li > a{
  display: flex;
  align-items: center;
}

.navbar-nav-desctop > li > .active,
.navbar-nav-desctop >  li:hover > a{
  color:#9a0a0a;
}

.navbar-nav-desctop li ul{
  opacity: 0;
  visibility: hidden;
  padding:0.7rem 1.8rem;
  position: absolute;
  top:85%;
  background:#1a1c26;
  color:#000;
  min-width: 12rem;
  margin-left: -1.5rem;
  transition:all 0.3s linear;
}

.navbar-nav-desctop li:hover ul{
  top:100%;
  opacity: 1;
  visibility: visible;
}

.navbar-nav-desctop li ul li{
  margin:1rem 0;
}

.navbar-nav-desctop li ul li a{
  opacity: 0.5;
  display: block;
}

.navbar-nav-desctop li ul .active a,
.navbar-nav-desctop li ul li:hover a{
  opacity: 1;
}






.click-capture{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
  z-index: 99;
  background: rgba(0,0,0,0.3);
  transition: opacity 0.5s;
}

.navbar-mobile{
  display: block;
  align-items: baseline;
  flex-wrap: unset;
  padding:1.5rem 2rem 1.3rem;
  position: fixed;
  top:0;
  bottom:0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background-color: #fff;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  display: -ms-flexbox;
  box-shadow:0 0 50px rgba(0,0,0,0.1);
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
  display: flex;
  flex-direction: column;
  -webkit-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  transition: all 0.6s ease;
}

.navbar-mobile .social-icons{
  margin-top:0;
}

.navbar-mobile .close{
  position: absolute;
  right: 1rem;
  top:0.5rem;
  font-size: 3rem;
  color: #343434;
  transition:all 0.3s ease;
  cursor: pointer;
}

.navbar-mobile .close:hover{
  opacity: 1;
}

@media (min-width: 576px){
  .navbar-mobile{
    max-width: 50%;
  }
}

.navbar-mobile-footer{
  margin-top: auto;
}

.navbar-nav-mobile{
  display: block;
  font-size:4vh;
  margin-top: 8vh;
  font-weight: 600;
}

.navbar-nav-mobile  li{
  margin-bottom: 5vmin;
}

.navbar-nav-mobile  li a{
  color:#767676;
}

.navbar-nav-mobile li .active,
.navbar-nav-mobile  li a:hover{
  color:#343434;
}

.menu-is-open{
  overflow:hidden;
}

.menu-is-open .navbar-mobile{
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  -o-transform: translateX(0);
  transform: translateX(0);
}

.menu-is-open .click-capture{
  visibility: visible;
  opacity: 1;
}






.navbar.fixed{
  position: fixed;
  z-index: 10;
  top:0;
  box-shadow:0 0 30px rgba(0,0,0,0.1);
}

.navbar.fixed:before{
  height: 100%;
}





.masthead{
  position: relative;
  min-height: 100vh;
  background-size: cover;
  display: flex;
  align-items: center;
  padding:9rem 0 5rem 0;
  background-position: left top;
  background-size: cover;
}

.masthead.masked:after{
  content:'';
  position: absolute;
  top:0;
  width: 100%;
  height: 100%;
  background:rgba(0,0,0,0.35);
}

.opener{
  position: relative;
  z-index: 1;
  width: 100%;
}

.opener .icon-video-play{
  margin-top:2rem;
}

.opener .modal-content{
  background-color: rgba(255,255,255,0.9);
}





.section{
  position: relative;
  padding:9rem 0;
}

.section-sm{
  padding: 6rem 0;
}

.section h2{
  margin-top: 0;
}

.bg-responsive{
  position: absolute;
  height: 100%;
  top:0;
}

.jarallax {
    position: relative;
    z-index: 0;
}

.bg-responsive.jarallax{
  position: absolute!important
}

.jarallax > .jarallax-img {
    position: absolute;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}




.experience{
  font-family: 'Montserrat', sans-serif;
}

.experience-number{
  display: inline-block;
  font-size: 10rem;
  line-height: 1;
  background: url(../img/bg/text-parallax.jpg) 50% 50% no-repeat;
  background-size: cover;
  background-clip: text;
  -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    
}

.row-experience{
  padding:2rem 0;
}

.row-experience:nth-child(even){
  background: #f4f4f4;
  border-color:transparent;
}

.row-experience p{
  margin-bottom: 0;
}

.progress{
  height: 0.5rem;
  background-color: #f2f2f2;
}

.progress-bar{
  position: relative;
  background-color: transparent;
}

.progress-bar:before{
  background:#23a592;
  content:'';
  width: 0;
  height: 100%;
  transition:all 0.3s ease;
}

.aos-animate.progress-bar:before{
  width: 100%;
}




.experience-item figcaption{
  position:absolute;
  left:2rem;
  bottom:2rem;
}

.experience-item h4{
  color: #2f6d3fcc;
  display: inline-block;
}

.zoom-anim-dialog {
  position: relative;
  background: #fff;
  padding: 2.2rem;
  margin: 2rem auto;
}



.my-mfp-zoom-in .zoom-anim-dialog {
  opacity: 0;
  -webkit-transition: all 0.2s ease-in-out; 
  -moz-transition: all 0.2s ease-in-out; 
  -o-transition: all 0.2s ease-in-out; 
  transition: all 0.2s ease-in-out; 
  -webkit-transform: scale(0.8); 
  -moz-transform: scale(0.8); 
  -ms-transform: scale(0.8); 
  -o-transform: scale(0.8); 
  transform: scale(0.8); 
}


.my-mfp-zoom-in.mfp-ready .zoom-anim-dialog {
  opacity: 1;
  -webkit-transform: scale(1); 
  -moz-transform: scale(1); 
  -ms-transform: scale(1); 
  -o-transform: scale(1); 
  transform: scale(1); 
}

.my-mfp-zoom-in.mfp-removing .zoom-anim-dialog {
  -webkit-transform: scale(0.8); 
  -moz-transform: scale(0.8); 
  -ms-transform: scale(0.8); 
  -o-transform: scale(0.8); 
  transform: scale(0.8); 
  opacity: 0;
}


.my-mfp-zoom-in.mfp-bg {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-out; 
  -moz-transition: opacity 0.3s ease-out; 
  -o-transition: opacity 0.3s ease-out; 
  transition: opacity 0.3s ease-out;
}


.my-mfp-zoom-in.mfp-ready.mfp-bg {
opacity: 0.8;
}

/* animate out */
.my-mfp-zoom-in.mfp-removing.mfp-bg {
  opacity: 0;
}

.mfp-close-btn-in .mfp-close{
  color: #000;
}





.testimonials{
  border-top: 1px solid rgba(0,0,0,0.1);
}
.col-testimonial{
  position: relative;
  padding: 6.2em 3.75em 0 3em;
}

.col-testimonial .quiote{
  position: absolute;
  left:0rem;
  top:4rem;
  font-size:13rem;
  opacity: 0.11;
}

.owl-dots{
  position: absolute;
  width: 100%;
  margin-top:3.5rem;
  text-align: center;
}

.owl-dot{
  display: inline-block;
  margin:0 0.35rem;
}

.owl-dot:focus{
  outline: none;
}

.owl-dots span{
  display: block;
  width: 9px;
  height:9px;
  border-radius: 50%;
  background-color: #d6d6d6;
}

.owl-dot.active span{
  background-color: #23a592;
}

.owl-nav{
  position: absolute;
  left:0;
  width: 100%;
  top:50%;
  font-size:10rem;
  transform:translateY(-50%);
}

.owl-prev{
  position: absolute;
  left:-10rem;
  opacity: 0.15;
}

.owl-next{
  position: absolute;
  right:-10rem;
  opacity: 0.15;
  transition: all 0.3s;
}

.owl-prev:focus,
.owl-next:focus{
  outline: none;
}

.owl-prev:hover,
.owl-next:hover{
  opacity: 1;
}





.row-news{
  margin-top: -30px;
}

.col-news{
  margin-top: 30px;
}

.col-news figure{
  background-color: #fff;
  box-shadow: 0 0 35px rgba(0,0,0,0.05);
  margin:0;
}

.col-news figure a img{
  transition:all 0.3s ease;
}

.col-news figure a:hover  img{
  opacity: 0.7;
}

.col-news figure .date{
  position: absolute;
  left: 1.1rem;
  bottom: 0;
  background-color: #343434;
  color: #fff;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
  font-size: 0.9rem;
  letter-spacing: 1;
}

.col-news figcaption{
  padding: 1.8rem 1.1rem 2rem;
}

.col-news figcaption h5{
  margin:0 0 1rem 0;
}






.row-partner{
  margin:0 -4rem;
}

.col-partner{
  padding:0 4rem;
  text-align: center;
}

.col-partner img{
  max-width: 100%;
  opacity: 0.5;
  transition: all 0.3s ease;
}

.col-partner img:hover{
  opacity: 1;
}



footer{
  color:#f5f5f5;
}

footer a{
  color: #fff;
}

footer a:hover{
  fill:#23a592!important;
  text-decoration: none;
}

footer ul{
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  font-size: 0.8rem;
  letter-spacing: 1px;
}

footer ul li{
  margin-bottom: 0.5rem;
}

footer .social-icons ion-icon{
  color: #fff;
}

.footer-copy{
  padding:2rem 0;
  background-color: #101117;
  font-size: 0.8rem;
  color:#767676;
}





.modal-content{
  border-radius: 30px;
}

.modal-header,
.modal-body,
.modal-footer{
  padding: 1.7rem;
  border:0;
}

.modal-header{
  padding-bottom: 1.2rem;
}

.modal-header .close:focus{
  outline: none;
}

.modal-body{
  padding-top:0;
}

@media (min-width: 576px){
  .modal-dialog {
    max-width:400px;
  }
}

.message{
  margin-bottom: 1rem;
  display: none;
  color:#23a592;
}