/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

/*** SPARK FORM ***/
.form-disclaimer p { font-family: 'Montserrat' !important; font-size: 14px; color: #818181; margin-bottom: 0; }

/*** DISPLAY NONE ***/
.mobile-only, .gform_required_legend {
	display: none;
}

/*** PRIVACY POLICY ***/
.privacy h2 { color: #FFF !important; }

/*** PAGE BACKGROUND ***/
#page {
	background: #000;
	z-index: 0;
}

/*** FONT ***/
.execphpwidget, .mkg p, .mkg p a, .about-text p:first-child, .program-title p {
	font-family: 'Montserrat' !important;
}
.contact .gfield_label, .contact .gform-field-label--type-sub, #gform_confirmation_message_1, .privacy h2 {
	font-family: 'akzidenz' !important;
}


/*** TOP BAR ***/
.top-bar p, .header-btn p {
	margin-bottom: 0 !important;
}

/*** HEADER ***/
.elementor-location-header {
	z-index: 999;
}
.header-btn a {
	font-size: 15px !important;
}
nav ul.sub-menu {
	background-color: transparent !important;
	text-transform: uppercase;
}
.elementor-250 .elementor-element.elementor-element-4eecd5f .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown {
	margin-top: 10px !important;
}
.sub-menu li {
	border-width: 1px !important;
	border-bottom: 1px solid #fecd08 !important;
}
.sub-menu li a {
	background-color: transparent !important;
	border-left: none !important;
	
	padding: 10px 15px !important;
}

/*** SEMINARS ***/
.elementor-post-info { list-style: none !important; margin: 0 !important; }
.elementor-icon-list-text { padding: 0 !important; }


/******************** HOMEPAGE ********************/

/*** HERO ***/
.hero-text h1 {
	font-size: 80px;
	line-height: 75px;
	letter-spacing: 3px;
	color: #FFF;
	
	padding-bottom: 35px;
}
.hero-text a, .about-text p a, .header-btn a, .trainers-link a, .about-btns a {
	font-size: 18px;
	color: #fecd08;
	border: 2px solid #fecd08;
	
	padding: 15px 25px;
}
.hero-text a:hover, .about-text p a:hover, .header-btn a:hover, .trainers-link a:hover, .about-btns a:hover {
	color: #FFF;
	background: #fecd08;
}

/*** PROGRAMS ***/
.section-title h2 {
	font-size: 55px;
	text-shadow: 2px 2px 15px #333;
	color: #FFF;
}
.section-title h2 span:after {
	content: ' ';
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    background-color: #fecd08;
    width: 100%;
    height: 0.45em;
    z-index: -1;
}

.program-title h3 {
	font-size: 36px;
	letter-spacing: 2px;
	color: #FFF;
	
	margin-top: -55px;
}
.program-title p {
	font-size: 15px;
	line-height: 22px;
	color: #f7f7f7;
	
	max-width: 480px;
}

/*** SCHEDULE ***/
.elementor-tab-title {
	padding-left: 0 !important;
}
.elementor-tab-title:hover {
	color: #fecd08 !important;
}
.elementor-tab-content {
	padding: 0 !important;
}
table.schedule {
	text-align: center;
}
table thead tr th {
	font-weight: 900;
	color: #FFF;
}
table tbody tr td {
	color: #FFF;
	
	padding: 15px 8px;
}
table .alt {
	background-color: #ffffff30;
}
p.schedule-ss {
	font-size: 18px;
	color: #FFF;
	text-align: center;
}
.schedule.mt td.event, .schedule.jj td.event, .schedule.wrestling td.event, .schedule.kids td.event {
	color: #ffffff26;
}
.schedule-active {
	font-weight: 500;
	color: #FFF !important;
}

.mobile-schedule span.separator {
	color: #fecd08;
	
	padding: 0 5px;
}
.mobile-schedule h3 {
	font-size: 50px;
	color: #FFF;
	
	padding-top: 25px;
	padding-bottom: 25px;
}
.mobile-schedule p {
	font-size: 24px;
	font-style: normal;
	
	margin-bottom: 25px;
}
.mobile-schedule h5 {
	font-size: 20px;
	color: #FFF;
	
	padding-top: 15px;
}

/*** TRAINERS ***/
.program-title.trainers h3 {
	font-size: 32px;
}
.program-title.trainers h3, .program-title.trainers p {
	padding-left: 25px;
}

/*** ABOUT ***/
.about-text {
	margin-top: -100px !important;
}
.section-title h2 span:after {
	top: 45px !important;
}
.about-text p {
	padding-bottom: 15px;
}
.about-text p:first-child {
	font-size: 18px;
	line-height: 28px;
	
	padding-top: 15px;
}

/*** PRICING ***/
.pricing .elementor-price-table {
	min-width: 300px;
}
.pricing .elementor-price-table h3 {
	display: flex;
	justify-content: center;
	align-items: center;
	
	min-height: 60px;
}

.trial-text p {
	font-size: 18px;
	line-height: 28px;
}

/*** FOOTER ***/
.footer-location h5 {
	font-size: 24px;
	color: #FFF;
	
	padding-bottom: 5px;
}
.footer-location p {
	font-size: 18px;
	
	margin-bottom: 15px;
}
.footer-location p a {
	color: #f7f7f7;
}
.footer-location p a:hover {
	color: #fecd08;
	cursor: pointer;
}
.footer-links ul li {
	cursor: pointer;
}
.footer-links ul li a {
	padding-left: 0 !important;
	padding-bottom: 0 !important;
}

.event-data {
	margin-top: -10px;
}
.event-data .elementor-icon-list-icon {
	display: none !important;
}
.event-data ul {
	flex-direction: column;
}
.event-data ul li {
	margin-left: 0 !important;
}

.events-btn p {
	margin-top: 10px;
}
.events-btn p a {
	color: #fecd08;
	border: 2px solid #fecd08;
	
	padding: 10px 25px;
}
.events-btn p a:hover {
	background: #fecd08;
	color: #FFF;
}

/*** COPYRIGHT ***/
.execphpwidget, .mkg p, .mkg p a {
	font-size: 12px;
	text-transform: uppercase;
	color: #8d8d8d;
}
.mkg p a:hover {
	color: #fecd08;
}

/*** CONTACT ***/
.contact .gfield {
	text-align: center;
}
.contact .gfield_label {
	font-size: 22px !important;
	font-style: italic;
	color: #FFF;
	text-transform: uppercase;
}
.contact .ginput_container {
	padding-bottom: 20px;
}
#gform_submit_button_1 {
	background-color: transparent;
	border: 2px solid #fecd08;
	color: #fecd08;
}
#gform_submit_button_1:hover {
	background-color: #fecd08;
	color: #FFF;
}
.contact input, .contact select {
	height: 3em !important;
}
.contact .gform-field-label--type-sub {
	font-size: 13px !important;
	font-style: italic;
	text-transform: uppercase;
	text-align: left;
	color: #F7F7F7;
	
	padding-top: 0 !important;
}

#gform_confirmation_message_1 {
	font-size: 18px;
	font-style: italic;
	color: #FFF;
	text-align: center;
}

/*** FIGHTERS ***/
.fighter img {
	margin-bottom: -50px;
}

/*** ABOUT PAGE ***/
.about-page-text p {
	width: 90%;
	
	margin: 0 auto;
}
.about-btns a {
	margin-right: 15px;
}


/******************** MEDIA QUERIES ********************/

@media only screen and (max-width: 1400px) {
	/*** ABOUT ***/
	.about-text {
		margin-top: -25px !important;
	}
}

@media only screen and (max-width: 1200px) {
	/*** HEADER ***/
	#header .enroll-btn {
		display: none;
	}
	.logo {
		width: 10% !important;
	}
	
	/*** PROGRAMS ***/
	.programs, .trainers, .prices {
		flex-wrap: wrap;
		justify-content: center;
	}
	.program-box, .trainer-box, .pricing {
		width: 45% !important;
	}
	.pricing .elementor-price-table__features-list {
		min-height: 75px;
	}
	
	/*** ABOUT ***/
	.section-title.about h2 {
		margin-bottom: 0px;
	}
	
	/*** ABOUT PAGE ***/
	.prices .e-con-inner, .split-2 .e-con-inner {
		flex-wrap: wrap !important;
		justify-content: center !important;
	}
}

@media only screen and (max-width: 1024px) {
	/*** HEADER ***/
	.logo {
		width: 12% !important;
	}
	
	/*** HERO ***/
	.hero-text .elementor-widget-container {
		padding: 0 0 0 25px !important;
	}
	
	/*** HOMEPAGE ***/
	.section-title h2 {
		text-shadow: none;
	}
	
	/*** PROGRAMS ***/
	.program-title h3 {
		font-size: 28px;
		margin-top: -45px;
	}
	
	/*** SCHEDULE ***/
	.calendar .e-con-inner {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		justify-content: space-evenly !important;
	}
	.elementor-element-6728ed4.mobile-schedule {
		width: 100%;
	}
	.mobile-schedule h3 {
		padding-top: 15px;
		padding-bottom: 10px;
	}
	.mobile-schedule p {
		font-size: 22px;
		
		margin-bottom: 10px;
	}
	
	/*** ABOUT ***/
	.home-about .e-con-inner {
		flex-direction: column !important;
		
		padding: 0 15px;
	}
	.section-title.about h2 span:after {
		width: 30%;
	}
	
	/*** PRICING ***/
	.pricing .e-con-inner {
		flex-wrap: wrap;
	}
	
	/*** FOOTER ***/
	.footer-event-loop .elementor-loop-container {
		grid-template-columns: repeat(1,1fr) !important;
	}
}

@media only screen and (max-width: 768px) {
	/*** HEADER ***/
	.logo {
		width: 15% !important;
	}
	.sub-menu li {
		width: 35%;
		
		margin: 0 auto !important;
	}
	
	/*** HERO ***/
	.hero {
		min-height: 600px !important;
	}
	.hero-text h1 {
		font-size: 55px;
		line-height: 55px;
		
		padding-top: 50px;
	}
	
	/*** SCHEDULE ***/
	.mobile-schedule h3 {
		font-size: 38px;
		
		padding-top: 15px;
		padding-bottom: 10px;
	}
	.mobile-schedule p {
		font-size: 18px;
		
		margin-bottom: 10px;
	}
	
	/*** PRICING ***/
	.pricing .elementor-price-table {
		min-width: 250px;
	}
	
	/*** FOOTER ***/
	.footer-section img {
		width: 30%;
	}
	.location-1, .location-2 {
		width: 45%;
	}
	.location-1 {
		align-items: flex-start !important;
	}
	.links-col, .footer-events-col {
		padding-left: 4%;
	}
	.links-col ul {
		columns: 4;
	}
	.footer-logo-container {
		width: 100%;
	}
	/*** COLUMNS ***/
	.footer-event-loop .elementor-loop-container, .events-page .elementor-loop-container, .events-page.fighters .elementor-loop-container {
		grid-template-columns: repeat(2,1fr) !important;
	}
	
	/*** ABOUT PAGE ***/
	.responsive-section .e-con-inner {
		flex-direction: column-reverse !important;
	}
	.about-btns .elementor-widget-container {
		display: flex;
		flex-direction: column;
	}
	.about-btns a {
		margin-right: 0;
		margin-bottom: 15px;
	}
}

@media only screen and (max-width: 600px) {
	/*** HEADER ***/
	.logo {
		width: 20% !important;
	}
	
	/*** PROGRAMS ***/
	.program-title p {
		font-size: 14px;
	}
	
	/*** ABOUT ***/
	.section-title.about h2 span:after {
		width: 45%;
	}
	
	/*** PRICING ***/
	.pricing {
		width: 100% !important;
	}
	.pricing .elementor-price-table__features-list {
		min-height: unset;
	}
	
	/*** ABOUT PAGE ***/
	.page-id-796 .section-title h2, .page-id-612 .section-title h2 {
		font-size: 38px;
	}
	.page-id-796 .section-title h2 span:after, .page-id-612 .section-title h2 span:after {
		top: 30px !important;
	}
}

@media only screen and (max-width: 480px) {
	/*** DISPLAY ***/
	.mobile-only {
		display: block;
	}
	
	/*** HEADER ***/
	.top-bar {
		justify-content: center;
	}
	.logo {
		width: 25% !important;
	}
	
	/*** HERO ***/
	.hero {
		min-height: 400px !important;
	}
	.hero-text .elementor-widget-container {
		padding: 0 0 0 15px !important;
	}
	.hero-text h1 {
		font-size: 42px;
		line-height: 44px;
		text-shadow: 2px 2px 20px #000;
		
		padding-top: 120px;
		padding-bottom: 25px;
	}
	.hero-text a {
		font-size: 15px;
	}
	
	/*** PROGRAMS ***/
	.program-title h3 {
		font-size: 22px;
		line-height: 24px;
		
		margin-top: -35px;
	}
	
	/*** ABOUT ***/
	.section-title.about h2 span:after {
		width: 60%;
	}
	.about-text p:first-child {
		font-size: 16px;
		line-height: 26px;
	}
	
	/*** FOOTER ***/
	.footer-banner {
		min-height: 330px !important;
	}
	.footer-section {
		padding: 25px;
	}
	.footer-section img {
		width: 50%;
	}
	.footer-event-loop .elementor-loop-container {
		grid-template-columns: repeat(1,1fr) !important;
	}
	.links-col ul {
		columns: 3;
	}
	.footer-location h5 {
		font-size: 20px;
	}
	.footer-location p {
		font-size: 15px;
	}
	
	/*** ABOUT PAGE ***/
	.page-id-796 .section-title h2 {
		font-size: 34px;
	}
	.page-id-796 .section-title h2 span:after {
		top: 25px !important;
	}
}