/*
Theme Name:  JK-Divi-Child_v22
Theme URI:
Version:     1.0
Description: This theme requires Divi parent theme.
Author:      JK
Author URI:
Template:    Divi
*/

/*- Add any CSS custom code for this child theme below this line -*/


#ie-message {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  align-items: center;
  justify-content: center;
  display: none;
  pointer-events: none;
  z-index: -1;
}

#ie-message.on {
  z-index: 9999999;
  display: flex;
  pointer-events: all;
}



body.complete.logged-in > :not(.preloader-plus) { transition: none !important; }

/* Font path: url('../../../wp-content/themes/jk-divi-child_v22/fonts/ */

html {

  --ui-vh: 100vh;
  --ui-vw: 100vw;

  --ui-window-size: calc(var(--ui-vw) + var(--ui-vh));

  --ui-mult: .01;

  --ui-scale: calc(var(--ui-window-size) * var(--ui-mult));

  font-size: var(--ui-scale);

}

body {

  --brand-gray: #606060;
  --brand-light-green: #11b49b;
  --brand-medium-green: #264742;
  --brand-dark-green: #172724;

  --easeInOutExpo: cubic-bezier(0.4, 0, 0, 1);

}



body {  }

h1, h2, h3, h4, h5 {
  padding-bottom: 0;
}

#main-header ,
#main-footer {
	display: none !important;
}

#page-container {
  overflow: hidden;
  padding-top: var(--nav-height) !important;
}

.display-none { display: none !important; }


#footer-bottom { display: none; }

.flex-centered { display: flex; flex-wrap: wrap; align-items: center; align-content: center; justify-content: center; }
.flex-centered-nowrap { display: flex; align-items: center; align-content: center; justify-content: center; }
.flex-centered-left { display: flex; flex-wrap: wrap; align-items: center; align-content: center; justify-content: left; }
.flex-centered-right { display: flex; flex-wrap: wrap; align-items: center; align-content: center; justify-content: flex-end; }

.vertical-space-between {
  align-content: space-between;
}

.space-between {
  justify-content: space-between;
}

.align-top {
  align-items: flex-start;
}

.single-post article.post {
  margin-bottom: 0;
  padding-bottom: 0;
}



@media (max-width:980px) {

  .swap-cols-mobile {
    display: flex;
    flex-direction: column-reverse;
  }

}




#global-nav {
  position: fixed;
  top: 0;
  width: 100%;
  height: var(--top-navbar-height);
  padding: 0;
  z-index: 99;
  box-shadow: 0px 0px 30px -10px rgb(0 0 0 / 20%);
  backdrop-filter: blur(20px) saturate(2);
  transition: all .5s ease;
}







.mobile_menu_bar {
  width: 18px;
  height: 17px;
  transform: translateY(0px);
  transition: all .5s var(--easeInOutExpo);
}

.mobile_menu_bar:before ,
.mobile_menu_bar:after { display: none; }

.mobile_menu_bar a {
  width: 100%;
  height: 100%;
  display: block;
}

.hamburger {
  cursor: pointer;
  position: relative;
  display: inline-block;
  margin: 0;
  transition: all 1s ease;
}
.hamburger span {
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: black;
  position: absolute;
  transition: all 1s ease;
  right: 0;
  top: calc(50%);
}


.nav-open .hamburger span:first-child ,
.nav-open .hamburger span:last-child { width: 100%; }

.hamburger span:first-child { transform: translateY(-15px); }
.hamburger span:last-child { transform: translateY(15px); }

/*Effect 35*/
.hamburger span:first-child {
  transform-origin: center;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-name: rotate-base-1;
}
.hamburger span:last-child {
  transform-origin: center;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  animation-name: rotate-base-2;
}

.nav-open .hamburger { transform: rotate(90deg); z-index: 99999; }

.nav-open .hamburger span:nth-child(2) {
  transition-delay: .25s;
  opacity: 0;
}
.nav-open .hamburger span:first-child {
  transform: translateY(0);
  animation-name: rotate-active-1;
}
.nav-open .hamburger span:last-child {
  transform: translateY(0);
  animation-name: rotate-active-2;
}

.nav-open .hamburger span {

}

@keyframes rotate-active-1 {
  0% { transform: translateY(calc(var(--nav-scale) * -.3)); }
  50% { transform: translateY(0); }
  100% { transform: rotate(-45deg); }
}

@keyframes rotate-active-2 {
  0% { transform: translateY(calc(var(--nav-scale) * .3)); }
  50% { transform: translateY(0); }
  100% { transform: rotate(45deg); }
}

@keyframes rotate-base-1 {
  0% { transform: translateY(0) rotate(45deg); }
  50% { transform: rotate(0deg); }
  100% { transform: translateY(-8px); }
}

@keyframes rotate-base-2 {
  0% { transform: translateY(0) rotate(-45deg); }
  50% { transform: rotate(0deg); }
  100% { transform: translateY(8px); }
}








.dis-grid {
  display:grid !important;
  align-items: center;
  justify-items: center;
}

.dis-grid.align-top {
  align-items: start;
}

.dis-grid.col-1 { grid-template-columns: repeat(1,1fr); }
.dis-grid.col-2 { grid-template-columns: repeat(2,1fr); }
.dis-grid.col-3 { grid-template-columns: repeat(3,1fr); }
.dis-grid.col-4 { grid-template-columns: repeat(4,1fr); }
.dis-grid.col-5 { grid-template-columns: repeat(5,1fr); }
.dis-grid.col-6 { grid-template-columns: repeat(6,1fr); }


.dis-grid.row-1 { grid-template-rows: repeat(1,1fr); }
.dis-grid.row-2 { grid-template-rows: repeat(2,1fr); }
.dis-grid.row-3 { grid-template-rows: repeat(3,1fr); }
.dis-grid.row-4 { grid-template-rows: repeat(4,1fr); }
.dis-grid.row-5 { grid-template-rows: repeat(5,1fr); }
.dis-grid.row-6 { grid-template-rows: repeat(6,1fr); }

.dis-grid.gap-25px {
  gap: 25px 25px;
}

.dis-grid.gap-50px {
  gap: 50px 50px;
}

.dis-grid.gap-100px {
  gap: 100px 100px;
}


.dis-grid.gap-small {
  gap: 2rem 1rem;
}

.dis-grid.gap-mid {
  gap: 3rem 2rem;
}

.dis-grid.gap-large {
  gap: 4rem 3rem;
}



@media (max-width:980px) {

  .dis-grid.col-4 { grid-template-columns: repeat(2,1fr); }

  .dis-grid.col-5 ,
  .dis-grid.col-6 { grid-template-columns: repeat(6,1fr); }

   .dis-grid.col-5 > .et_pb_module ,
   .dis-grid.col-6 > .et_pb_module {
    grid-column: span 2;
  }

  .dis-grid.col-5 > .et_pb_module:nth-child(4) ,
  .dis-grid.col-5 > .et_pb_module:nth-child(5) { 
    grid-column: span 3;
  }
  

}


@media (max-width:767px) {

  .dis-grid.col-3 { grid-template-columns: repeat(1,1fr); }

  .dis-grid.col-5 > .et_pb_module:nth-child(2) ,
  .dis-grid.col-5 > .et_pb_module:nth-child(4) {
    border-right: none;
  }

  .dis-grid.col-5 > .et_pb_module:nth-child(3) {
    border-right-width: 1px;
  }

  .dis-grid.col-5 > .et_pb_module:nth-child(4) {
    border-bottom-width: 1px;
  }

  .dis-grid.col-5 > .et_pb_module ,
  .dis-grid.col-6 > .et_pb_module {
    grid-column: span 3;
  }

  .dis-grid.col-5 > .et_pb_module:nth-child(5) { 
    grid-column: span 6;
  }

}










/* Vimeo BG */

body:not(.logged-in) #video-bg {
  position: fixed;
  width: 100vw;
  height: 100vh;
  left: 0;
  top: 0;
  pointer-events: none;
}


body:not(.logged-in) #video-bg .et_pb_video_box ,
body:not(.logged-in) #video-bg .fluid-width-video-wrapper {
  width: 100%;
  height: 100%;
  padding: 0 !important;
}

body:not(.logged-in) #video-bg .fluid-width-video-wrapper iframe {
  box-sizing: border-box;
  height: 56.25vw;
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  width: 177.77777778vh;
  max-width: none;
}












/* -- Global Parallax --*/

.et_parallax_bg_wrap { overflow: visible; }

.et_pb_parallax_css {
  background-attachment: scroll !important;
  height: 120%;
  opacity: .5;
}

.lux.et_pb_parallax_css {
  background-attachment: scroll !important;
  height: 120%;
  opacity: .5;
}

.lux.et_pb_parallax_css {

}

.bg-opacity-1 .et_pb_parallax_css ,
.opacity-1 .et_pb_parallax_css {
  opacity: 1 !important;
}

.bg-color-burn .et_pb_parallax_css { mix-blend-mode: color-burn; }
.bg-hard-light .et_pb_parallax_css { mix-blend-mode: hard-light; }
.bg-multiply .et_pb_parallax_css { mix-blend-mode: multiply; }
.bg-soft-light .et_pb_parallax_css { mix-blend-mode: soft-light; }
.bg-overlay .et_pb_parallax_css { mix-blend-mode: overlay; }
.bg-lighten .et_pb_parallax_css { mix-blend-mode: lighten; }



/* -- Global Animations --*/

.emerge-parent { perspective: 1500px; transform-style: preserve-3d; }

.emerge {
  transition: opacity 1s var(--easeInOutExpo) , transform 1.5s var(--easeInOutExpo) , color .5s ease !important;
}

.emerge[data-emergence=hidden] {
  opacity: 0;
  transform: translateY(30px) translateZ(1px);
  /* filter: blur(3px); */
}

.emerge[data-emergence=visible] {
  opacity: 1;
  transform: translateY(0px) translateZ(1px);
  /* filter: blur(0px); */
}

.et_pb_column:nth-of-type(1) .emerge ,
.et_pb_column .emerge:nth-of-type(1) { transition-delay: .1s; }

.et_pb_column:nth-of-type(2) .emerge ,
.et_pb_column .emerge:nth-of-type(2) { transition-delay: .3s; }

.et_pb_column:nth-of-type(3) .emerge ,
.et_pb_column .emerge:nth-of-type(3) { transition-delay: .5s; }

.et_pb_column:nth-of-type(4) .emerge ,
.et_pb_column .emerge:nth-of-type(4) { transition-delay: .7s; }

.et_pb_column:nth-of-type(5) .emerge ,
.et_pb_column .emerge:nth-of-type(5) { transition-delay: .9s; }

.et_pb_column:nth-of-type(6) .emerge ,
.et_pb_column .emerge:nth-of-type(6) { transition-delay: .6s; }

.et_pb_column:nth-of-type(7) .emerge ,
.et_pb_column .emerge:nth-of-type(7) { transition-delay: .7s; }

.et_pb_column:nth-of-type(8) .emerge ,
.et_pb_column .emerge:nth-of-type(8) { transition-delay: .8s; }

.et_pb_column:nth-of-type(9) .emerge ,
.et_pb_column .emerge:nth-of-type(9) { transition-delay: .9s; }

.et_pb_column:nth-of-type(10) .emerge ,
.et_pb_column .emerge:nth-of-type(10) { transition-delay: 1s; }




.mfp-image-holder .mfp-content {
  max-height: 90vh;
}

.mfp-figure:after {
  display: none;
}

.mfp-figure ,
.mfp-img {
  height: 100%;
  padding: 0 !important;
  display: block;
}

.mfp-close {
  position: fixed;
  top: 20px !important;
  right: 40px !important;
}



/* -- Form Styles --*/

#signup-module ,
#contact-form-module {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  --input-height: 44px;
}

#signup-module input[type="text"] ,
#contact-form-module input[type="text"] {
  font-size: 16px;
  border: 1px solid #E2E2E2;
  color: #6D6D6D;
  height: var(--input-height);
}

#contact-form-module .ginput_full ,
#contact-form-module select {
  height: var(--input-height);
}

#contact-form-module textarea {
  height: 140px;
}

#contact-form-module label {
  color: #6D6D6D;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5em;
}

#contact-form-module .ginput_complex label {
  font-size: 14px;
  margin-top: 15px;
}

#contact-form-module li.gfield { margin-top: 20px !important; }

input::-webkit-input-placeholder ,
textarea::-webkit-input-placeholder {  }
input::-moz-placeholder ,
textarea::-moz-placeholder {  }
input:-ms-input-placeholder ,
textarea:-ms-input-placeholder {  }
input:-moz-placeholder ,
textarea:-moz-placeholder {  }


input:focus::-webkit-input-placeholder ,
textarea:focus::-webkit-input-placeholder { opacity: .5; }
input:focus::-moz-placeholder ,
textarea:focus::-moz-placeholder { opacity: .5; }
input:focus:-ms-input-placeholder ,
textarea:focus:-ms-input-placeholder { opacity: .5; }
input:focus:-moz-placeholder ,
textarea:focus:-moz-placeholder { opacity: .5; }




#contact-form-module  .gfield_checkbox { overflow: visible !important; }

#contact-form-module  .gfield_checkbox input[type=checkbox] {
  margin-left: -18px;
  opacity: 0;
  cursor: pointer;
}

#contact-form-module  .gfield_checkbox label {
	position: relative;
	left: 30px;
}

#contact-form-module .gfield_checkbox label:before {
	content: "";
	position: absolute;
  display: inline-block;
  margin-right: 10px;
  top: 0px;
  left: -30px;
  height: 15px;
  width: 15px;
  border: 2px solid white;
  border-radius: 3px;
}

#contact-form-module .gfield_checkbox input:checked + label:before { border: 2px solid rgba(255,255,255,1); }

#contact-form-module .gfield_checkbox input:checked + label:after {
	content: "";
  position: absolute;
  z-index: 1;
  top: 3px;
  left: -23px;
  width: 4px;
  height: 8px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}



#signup-module .gform_footer input.button ,
#contact-form-module .gform_footer input.button {
	border: 4px solid var(--brand-red);
  border-radius: 0px;
  background-color: var(--brand-red);
  color: white;
  transition: all .5s ease;
}

.gform_footer input.button:hover {
  cursor: pointer;
  color: var(--brand-red);
  background-color: rgba(255,255,255,0);
}

#signup-module .gform_wrapper { margin: 0 !important; }

#signup-module .gform_wrapper form.gf_simple_horizontal {
  width: 100% !important;
  display: flex;
}

#signup-module .gform_body {
  width: 75%;
}

#signup-module .gform_footer {
  padding: 0 !important;
  margin: 0 !important;
  display: flex;
  width: 30%;
  max-width: 30%;
}

#signup-module .gform_footer input.button  {
  padding: 0px !important;
  font-size: 14px;
  height: var(--input-height);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  margin: 0 !important;
  width: 100%;
}

#signup-module .gfield ,
#signup-module .ginput_container {
  width: 100%;
  padding: 0 !important;
  margin: 0 !important;
}

#signup-module .gfield input[type="text"] {
  margin: 0 !important;
  border: none;
  padding: 0 20px;
}

#contact-form-module .gform_footer input.button {
  padding: 15px 30px;
  font-size: 16px;
  width: 300px;
}

@media (max-width:767px) {
  #contact-form-module .gform_footer input.button {
    width: 100%;
  }
}

.gform_ajax_spinner {
	border: 2px solid rgba(255, 255, 255, 0.5);
	border-left: 2px solid rgba(255, 255, 255,1);
	animation: spinner 1.1s infinite linear;
	border-radius: 50%;
	width: 15px;
	height: 15px;
	position: absolute;
	bottom: 10px;
	right: 10px;
}

@keyframes spinner { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

.gform_confirmation_message h1 ,
.gform_confirmation_message h2 ,
.gform_confirmation_message h3 {

}


.gform_wrapper li.gfield.gfield_error,
.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
	margin-bottom: 0!important;
	border: none !important;
	padding-bottom: 0 !important;
	padding-top: 0 !important;
	padding-right: 15px !important;
	background-color: rgba(0,0,0,0) !important;
}

.gform_wrapper .validation_error ,
.gform_wrapper .validation_message { display: none; }

.gform_wrapper .validation_error .gfield_error {
  max-width: 100% !important;
}

.gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gform_wrapper li.gfield_error textarea ,
.gfield_error .ginput_container_checkbox ,
.gfield_error select
{ border: 2px solid var(--brand-red) !important; }

.gform_wrapper .gfield_error .gfield_label ,
.gform_wrapper li.gfield_error ul.gfield_checkbox { color: var(--brand-red) !important; }

#contact-form-module .question-dropdown .gfield_required {
  margin: 0;
}

.gform_wrapper .gfield_required { color: var(--brand-red); }
