/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jul 16 2024 | 17:05:06 */
/* === UTILITIES === */
.align-center {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.align-end {
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}

.grecaptcha-badge {
  visibility: hidden !important;
}

.row-small-gap .et_pb_column_1_2 {
	width: calc(50% - 10px);
	margin-right: 20px;
}

.dsm_pricelist .et_pb_module.dsm_pricelist_child {
	margin-bottom: 0;
}

.dsm-pricelist-header {
	margin-bottom: 3px;
}

.section-full-height.et_pb_section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.section-full-height.et_pb_section .et_pb_row {
	margin-top: 0;
	margin-bottom: 0;
}

.row-small-gap.et_pb_row_4col .et_pb_column {
	width: calc(25% - 7.5px);
	margin-right: 10px;
}

.row-small-gap.et_pb_row .et_pb_column_1_3 {
	width: calc(33.333% - 6.667px);
	margin-right: 10px;
}

@media only screen and (max-width: 980px) {
  .col-mobile-no-margin {
    margin-bottom: 0 !important;
  }

	.row-small-gap.et_pb_row .et_pb_column_1_3 {
		width: 100%;
		margin-right: 0;
	}
}

@media (max-width: 500px) {
	.dsm_button .et_pb_button_module_wrappers {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	
	body #page-container .et_pb_section .dsm_button .et_pb_button_module_wrappers .et_pb_button_two.et_pb_button {
		margin-left: 0 !important;
	}
}

/* === TYPOGRAPHY === */
h1,
h2,
h3,
h4,
h5,
h6 {
	padding-bottom: 0;
}

.et_pb_text_inner a {
	display: inline-block;
	position: relative;
	font-weight: bold;
}

.et_pb_text_inner a::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 3px;
	left: 0;
	width: 100%;
	height: 1px;
	background: #15498b;
}

.entry-content ol {
	list-style-type: none;
	padding: 0;
	counter-reset: my-awesome-counter;
}

.entry-content ol li {
	counter-increment: my-awesome-counter;
	position: relative;
	padding-left: 25px;
}

.entry-content ol li:before {
	content: counter(my-awesome-counter)".";
	position: absolute;
	top: 0;
	left: 0;
	opacity: .35;
/* 	color: #15498b; */
/* 	font-weight: 400; */
	font-size: .85em;
}

.entry-content ol li:not(:last-child) {
	margin-bottom: 8px;
}

/* === TOPBAR === */

/* === HEADER === */
#header-right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

/* --- Menu --- */

/* --- Sub Menu --- */
#header-menu .et-menu .sub-menu li {
  width: 100%;
  padding: 0;
}

#header-menu .et-menu .sub-menu li a {
  display: block;
  width: 100%;
  font-weight: 400;
  line-height: 1.2em;
  padding: 10px 15px;
}

#header-menu .et-menu > li.menu-item-has-children > a {
  padding-right: 20px;
}

#header-menu .et-menu > li > a:after {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(0,-50%);
      -ms-transform: translate(0,-50%);
          transform: translate(0,-50%);
}

/* --- Full Height Menu --- */
/* #header-menu,
#header-menu .et_pb_menu_inner_container, 
#header-menu .et_pb_menu__wrap, 
#header-menu .et_pb_menu__menu, 
#header-menu .et-menu-nav, 
#header-menu .et-menu, 
#header-menu .et-menu > li, 
#header-menu .et-menu > li > a {
  height: 100%;
} 

#header-menu .et-menu > li {
  margin-top: 0;
  margin-left: 4px;
  margin-right: 4px;
  padding: 0;
}

#header-menu .et-menu > li > a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 12px;
} */

/* --- Mobile Menu --- */
#header-menu-button-module, 
.et-db #et-boc .et-l #header-menu-button-module {
  margin-left: 45px !important;
}

#header-menu-button-wrapper, 
.et-db #et-boc .et-l #header-menu-button-wrapper {
  position: relative;
  width: 30px;
  height: 60px;
  border-radius: 50%;
  cursor: pointer;
}

.header-menu-button, 
.et-db #et-boc .et-l .header-menu-button {
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 1;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.header-menu-button-inner, 
.et-db #et-boc .et-l .header-menu-button-inner {
  width: 30px;
  height: 3px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  -webkit-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
          transform: translateY(-2px);
}

.header-menu-button-inner:before,
.header-menu-button-inner:after, 
.et-db #et-boc .et-l .header-menu-button-inner:before, 
.et-db #et-boc .et-l .header-menu-button-inner:after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 30px;
  height: 3px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.header-menu-button-inner, 
.et-db #et-boc .et-l .header-menu-button-inner, 
.header-menu-button-inner:before,
.header-menu-button-inner:after, 
.et-db #et-boc .et-l .header-menu-button-inner:before, 
.et-db #et-boc .et-l .header-menu-button-inner:after {
  background-color: #15498b;
}

.header-menu-button-inner:before, 
.et-db #et-boc .et-l .header-menu-button-inner:before {
  -webkit-transform: translateY(-8px);
      -ms-transform: translateY(-8px);
          transform: translateY(-8px);
}

.header-menu-button-inner:after, 
.et-db #et-boc .et-l .header-menu-button-inner:after {
  -webkit-transform: translateY(8px);
      -ms-transform: translateY(8px);
          transform: translateY(8px);
}

#header-menu-button-wrapper.open .header-menu-button-inner, 
.et-db #et-boc .et-l #header-menu-button-wrapper.open .header-menu-button-inner {
  background: transparent;
}

#header-menu-button-wrapper.open .header-menu-button-inner:before, 
.et-db #et-boc .et-l #header-menu-button-wrapper.open .header-menu-button-inner:before {
  -webkit-transform: translateY(0) rotate(45deg);
      -ms-transform: translateY(0) rotate(45deg);
          transform: translateY(0) rotate(45deg);
}

#header-menu-button-wrapper.open .header-menu-button-inner:after, 
.et-db #et-boc .et-l #header-menu-button-wrapper.open .header-menu-button-inner:after {
  -webkit-transform: translateY(0) rotate(-45deg);
      -ms-transform: translateY(0) rotate(-45deg);
          transform: translateY(0) rotate(-45deg);
}

@media only screen and (max-width: 767px) {
  #header-menu-button-wrapper, 
  .et-db #et-boc .et-l #header-menu-button-wrapper {
    width: 50px;
    height: 50px;
  }
  
  .header-menu-button-inner,
  .header-menu-button-inner:before,
  .header-menu-button-inner:after {
    width: 20px;
  }
  
  #header-menu-button-module, 
  .et-db #et-boc .et-l #header-menu-button-module {
    margin-left: 20px !important;
  }
}

/* Offcanvas Menu */
#offcanvas-menu, 
.et-db #et-boc .et-l #offcanvas-menu {
  position: fixed;
  right: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
/*   overflow-x: hidden;
  overflow-y: scroll; */
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}

#offcanvas-menu.open, 
.et-db #et-boc .et-l #offcanvas-menu.open {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

/* === ACCORDIONS === */
.et_pb_module.et_pb_accordion .et_pb_toggle {
	margin-bottom: 10px;
	padding: 20px 5%;
}

.et_pb_module.et_pb_accordion .et_pb_toggle:first-child {
	display: none;
}

.et_pb_module.et_pb_accordion .et_pb_toggle_title {
	padding-top: 6px;
}

.et_pb_module.et_pb_accordion .et_pb_toggle_title::before {
	content: "L";
}

.et_pb_module.et_pb_accordion .et_pb_toggle_open .et_pb_toggle_title::before {
	content: "K";
	color: #E61C22 !important;
	display: block !important;
}

/* === BLURBS === */
.et_pb_module.et_pb_blurb.circle-icon-blurb .et_pb_image_wrap {
	background-color: #e61c22;
	border-radius: 50%;
	padding: 20px;
}

.et_pb_module.et_pb_blurb.circle-icon-blurb .et_pb_image_wrap img {
	border-radius: 0;
}

/* === HERO === */
.hero-heading h1 .small {
	display: block;
	font-size: 42px;
	line-height: 42px;
	font-family: 'Mulish',Helvetica,Arial,Lucida,sans-serif;
	padding-left: 2%;
	font-weight: 800;
	margin-top: -20px;
/* 	text-shadow: -0.08em 0.08em 0em #15498B; */
}

/* === PROGRAMS === */
.program-carousel-section .slick-list {
	width: 90%;
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
}

.program-carousel-section .slick-track {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
	margin-left: -5px;
	margin-right: -5px;
}

.program-carousel-section .slick-slide.et_pb_row,
.program-carousel-section .slick-slide.et_pb_row.et_pb_column {
    height: 100% !important;
	margin: 0 5px !important;
}

.et_pb_module.program-details-blurb .et_pb_image_wrap {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
	background-color: #f3f6f9;
	border-radius: 50%;
}

.et_pb_module.program-details-blurb .et_pb_image_wrap img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	   object-fit: contain;
	padding: 15px;
	border-radius: 0;
}

#programs-slider-right,
#programs-slider-left {
	cursor: pointer;
}

.program-carousel-section .slick-list + .slick-dots {
	width: 90%;
	max-width: 1300px;
	margin: 0 auto;
	list-style-type: none;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 15px;
}

.program-carousel-section .slick-list + .slick-dots > li {
	position: relative;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: transparent;
	cursor: pointer;
	border: 4px solid #15498b;
/* 	opacity: .5; */
	-webkit-transition: all .3s ease-in-out;
	-o-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.program-carousel-section .slick-list + .slick-dots > li:hover {
	opacity: 1;
}

.program-carousel-section .slick-list + .slick-dots > li:not(:last-child) {
	margin-right: 8px;
}

.program-carousel-section .slick-list + .slick-dots > li button {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

.program-carousel-section .slick-list + .slick-dots > li.slick-active {
	background-color: #15498b;
	opacity: 1;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(1) {
	border-color: #154b8b;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(1).slick-active {
	background-color: #154b8b;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(2) {
	border-color: #4fb7b0;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(2).slick-active {
	background-color: #4fb7b0;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(3) {
	border-color: #87368f;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(3).slick-active {
	background-color: #87368f;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(4) {
	border-color: #f47531;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(4).slick-active {
	background-color: #f47531;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(5) {
	border-color: #fdd700;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(5).slick-active {
	background-color: #fdd700;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(6) {
	border-color: #e61c23;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(6).slick-active {
	background-color: #e61c23;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(7) {
	border-color: #c4d946;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(7).slick-active {
	background-color: #c4d946;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(8) {
	border-color: #60b3dd;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(8).slick-active {
	background-color: #60b3dd;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(9) {
	border-color: #000000;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(9).slick-active {
	background-color:#000000;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(10) {
	border-color: #767676;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(10).slick-active {
	background-color: #767676;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(11) {
	border-color: #154b8b;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(11).slick-active {
	background-color: #154b8b;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(12) {
	border-color: #154b8b;
}

.program-carousel-section .slick-list + .slick-dots > li:nth-child(12).slick-active {
	background-color: #154b8b;
}

/* === TEAM === */
.et_pb_module.et_pb_team_member {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.et_pb_module.et_pb_team_member.middle {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.et_pb_module.et_pb_team_member .et_pb_team_member_image {
	width: 120px;
}

.et_pb_module.et_pb_team_member .et_pb_team_member_description {
	padding-left: 20px;
}

/* === LESSONS === */
.dsm-advanced-tabs-content-wrapper .dsm-content h3 {
	color: #000;
	font-size: 24px;
}

.dsm-advanced-tabs-content-wrapper .dsm-content h4 {
	font-weight: 800;
	text-transform: uppercase;
	font-size: 14px;
	color: #e61c22 !important;
	letter-spacing: 1px;
	margin-top: 8px;
	font-family: 'Mulish',Helvetica,Arial,Lucida,sans-serif;
}

/* === FOOTER === */

/* === RESPONSIVENESS === */
@media (max-width: 1580px) {
	#why-image {
		display: none;
	}
}

@media (max-width: 980px) {
	#header-bar-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	
	#header-bar-inner .et_pb_column {
		margin-bottom: 0;
	}
	
	.row-small-gap.et_pb_row_4col .et_pb_column,
	.row-small-gap .et_pb_column_1_2 {
		width: 100%;
		margin-right: 0;
	}
	
	.hero-heading h1 .small {
		padding-left: 0;
	}
	
	.et_pb_module.et_pb_accordion .et_pb_toggle_title {
	  padding-top: 0;
	}
	
	.et_pb_module.et_pb_team_member .et_pb_team_member_image, 
	.et_pb_module.et_pb_team_member .et_pb_team_member_image img {
	  width: 70px;
		height: 70px;
	}
	
	.et_pb_module.et_pb_team_member .et_pb_team_member_description {
	  padding-left: 15px;
		width: calc(100% - 70px);
	}
}

@media (max-width: 767px) {
	.hero-heading h1 .small {
		font-size: 28px;
		line-height: 28px;
		margin-top: -10px;
	}
	
	.contact-blurb.et_pb_blurb .et_pb_main_blurb_image {
		margin-bottom: 15px;
	}
}

/* === CONTACT FORM === */
.contact-form {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.contact-form-field {
	margin-bottom: 30px;
}

.contact-form-field-half {
	width: calc(50% - 15px);
}

.contact-form-field-full {
	width: 100%;
}

.contact-form-field-third {
	width: calc(33.333% - 20px);
}

.contact-form-field h2 {
	text-align: center;
}

.contact-form-field label {
	margin-bottom: 5px;
}

.contact-form-field-submit, .contact-form-field-submit p {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.contact-form-field.contact-form-field-merch {
    background: #fff;
    border: 1px solid #E3EAEF;
    border-radius: 8px;
    padding: 20px 20px 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.contact-form-field.contact-form-field-merch h3 {
	font-size: 20px;
    line-height: 1.3em;
    font-family: 'Mulish', Helvetica, Arial, Lucida, sans-serif;
	font-weight: 800 !important;
	text-align: center;
	color: #000;
}

.contact-form-field-merch-image {
	margin: 20px 0;
}

.contact-form-field-merch-image img {
	width: 200px;
	height: 200px;
	object-fit: contain;
	object-position: center center;
}

.contact-form-field.contact-form-field-merch .wpcf7-list-item {
	margin: 0;
}

.contact-form-field.contact-form-field-merch .wpcf7-list-item label {
	margin-bottom: 0;
}

.contact-form-field.contact-form-field-merch input[type="checkbox"] {
	-webkit-appearance: none;
  appearance: none;
}

.contact-form-field.contact-form-field-merch input[type="checkbox"] + span {
	color: #ffffff;
	background-color: #15498b;
    border-width: 0px !important;
    border-radius: 50px;
    font-weight: bold;
    font-style: normal;
    text-transform: none;
    text-decoration: none;
    padding-top: 0.5em !important;
    padding-right: 1em !important;
    padding-bottom: 0.5em !important;
    padding-left: 1em !important;
	min-width: 200px;
    text-align: center;
	font-size: 20px;
	line-height: 1.7em !important;
	cursor: pointer;
}

.contact-form-field.contact-form-field-merch input[type="checkbox"]:checked + span {
	background-color: #2ead75;
}

.contact-form-field.contact-form-field-merch input[type="checkbox"]:checked + span::before {
	display: inline-block;
	padding-right: 8px;
	content: "✔";
}

.contact-form-field.contact-form-field-merch .wpcf7-list-item-label::before {
	display: none;
}

@media (max-width: 980px) {
	.contact-form-field-half, 
	.contact-form-field-third {
		width: 100%;
	}
}
