/*
Theme Name: The HTML5 Reset Theme
Theme URI: http://html5reset.org
Description: A style-free theme to get you started on an HTML5-based WordPress theme of your own.
Author: Monkey Do! + @ckhicks
Author URI: http://monkeydo.biz
Version: 2.0
License: BSD 2-Clause
License URI: http://opensource.org/licenses/bsd-license.php
*/

/* Ok, this is where the fun starts.
-------------------------------------------------------------------------------*/

/* A Linux- and Windows-friendly sans-serif font stack: http://prospects.mhurrell.co.uk/post/updating-the-helvetica-font-stack */
body {font: 13px Helmet, Freesans, sans-serif;} 

/* Using local fonts? Check out Font Squirrel's webfont generator: http://www.fontsquirrel.com/tools/webfont-generator */

/* We like off-black for text. */
body, select, input, textarea {color: #333;}
body, html{
	font-size: 18px;
	line-height: 1.5em;
	font-family: 'Outfit', sans-serif;
}

a {color: rgba(0,0,0,.6);}
a:hover {color: rgba(0,0,0,1);}

/* Custom text-selection colors (remove any text shadows: http://twitter.com/miketaylr/status/12228805301) */
::-moz-selection{background: #fcd700; color: #fff; text-shadow: none;}
::selection {background: #fcd700; color: #fff; text-shadow: none;}

/*	j.mp/webkit-tap-highlight-color */
a:link {-webkit-tap-highlight-color: #fcd700;}

ins {background-color: #fcd700; color: #000; text-decoration: none;}
mark {background-color: #fcd700; color: #000; font-style: italic; font-weight: bold;}

/* Mozilla dosen't style place holders by default */
input:-moz-placeholder { color:#a9a9a9; }
textarea:-moz-placeholder { color:#a9a9a9; }
p, ol{
	margin: 13px 0;
	font-weight: 100;
}
ol{
	margin-left: 22px;
}
ol li{
	font-weight: 100;
}
h1{
	font-size: 28px;
	letter-spacing: 3px;
	text-transform: uppercase;
	font-family: 'Cormorant Garamond', serif;
	margin-bottom: 20px;
	color: #36586b;
}
h2{
	font-size: 21px;
	color: #36586b;
	font-weight: bold;
	margin-top: 30px;
}

.primaryh2 {
	font-size: 28px;
	letter-spacing: 3px;
	text-transform: uppercase;
	font-family: 'Cormorant Garamond', serif;
	margin-bottom: 20px;
	color: #36586b;
}

ul li, ol li{
	margin: 10px 0;
	margin-left: 20px;
	padding-left: 5px;
	list-style-type: disc;
}
ol li{
	list-style-type: decimal;
}
.logo{
	width: 400px;
	display: block;
	margin: 0 auto;
}
.page-template-template_about .logo{
	width: 250px;
}
article.post{
	margin-top: 40px;
}
.blue_text_area{
	color: white;
}
.blue_text_area h3{
	font-size: 25px;
	letter-spacing: 3px;
	text-transform: uppercase;
	font-family: 'Cormorant Garamond', serif;
	margin-bottom: 20px;
	color: white;
}
.blue_text_area ul li{
	margin: 10px 0;
}
.blue_text_area h1{
	color: white;
}
.blue_indent{
	margin-left: 40px;
}
.uppercase{
	text-transform: uppercase;
}


/* And here begins the WordPress fun.
-------------------------------------------------------------------------------*/

#wrapper {
	width: 100%;
	max-width: 100%;
	position: relative;
}
.blue_section{
	width: 100%;
	padding: 50px 25px;
	color: white;
	background-color: #36586b;
}
.width_1000, .width_800{
	width: 1000px;
	margin: 20px auto;
	padding: 25px;
	max-width: 100%;
}
.width_800{
	width: 800px;
}
.width_1500{
	width: 1450px;
	margin: 20px auto;
	padding: 25px;
	max-width: 100%;
}
.video_wrapper{
	position: relative;
	padding-bottom: 53.2%;
	padding-top: 25px;
	height: 0;
	width: 100%;
	margin: 30px 0;
	margin-top: -10px;
	border: 5px solid white;
	border-radius: 5px;
}
.video_wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
body .ui-dialog .ui-dialog-content .video_wrapper {
	margin: 0px;
}
header{
	text-align: center;
}
body #mega-menu-wrap-primary{
	background: none;
}
body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link, body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link, body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{
	background: none;
	color: black;
	border-left: 1px solid #ccc;
}
body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link, body .mega-current_page_parent{
	font-weight: bold !important; 
}	
body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link, body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link{
	font-weight: bold !important; 
}
body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
	color: black;
	border-left: 1px solid #ccc;
	padding: 0px 20px 0px 20px;
	line-height: inherit;
	height: auto;
	font-size: 16px;
	text-transform: uppercase;
}
body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:first-child > a.mega-menu-link{
	border-left: none;
}
body #mega-menu-wrap-primary #mega-menu-primary{
	text-align: center;
	margin-top: 20px;
}
body .mega-current-menu-item{
	font-weight: bold;
}
person{
	display: block;
	font-size: 22px;
	margin: 10px 0 10px;
}
.contact{
	display: block;
	margin: 0 auto;
	margin-bottom: 60px;
}
#footer{
	background: #acb7ac;
	color: white;
	padding: 30px 30px;
}
.footer_list{
	float: left;
}
.footer_list li{
	display: inline-block;
	margin: 10px 0;
	margin-right: 40px;
	border-left: 1px solid white;
	padding-left: 40px;
	line-height: 1.1em;
}
.footer_list p{
	margin: 0;
}
.footer_list li:first-child{
	border: none;
}
.footer_list li a{
	color: white;
	text-decoration: none;
	font-size: 16px;
}
.footer_list li a:hover{
	text-decoration: underline;
}
.social_links a img{
	height: 33px;
	margin-top: 3px;
	margin-right: 16px;
}
.no_underline{
	text-decoration: none;
}
.no_underline:hover{
	text-decoration: underline;
}
.will_signature img{
	width: 178px;
	height: 178px;
	margin-top: -90px;
	position: absolute;
	right: 6%;
}
.will_signature:before{
	content: "William B. Elder";
	position: absolute;
	display: block;
	right: 232px;
	top: 20px;
}
.button, button{
	transition: all .2s;
	padding: 14px 35px;
	background: #acb7ac;
	color: #36586b; 
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 2px;
	display: inline-block;
}
.button.button_small{
	padding: 10px 20px;
	font-size: 16px;
	letter-spacing: 1px;
	text-transform: none;
}
.wp-block-buttons>.wp-block-button.button_small{
	margin-top:20px;
}
.center{
	text-align: center;
}
.button_small:hover a, .button_small:hover a a{
	color: white !important;
}
.wp-block-button__link a{
	color: white !important;
	text-decoration: none !important;
}
.button:hover{
	transform: translateY(-3px);
	-webkit-box-shadow: 0px 4px 13px 0px rgb(0 0 0 / 47%);
	-moz-box-shadow: 0px 4px 13px 0px rgba(0,0,0,0.47);
	box-shadow: 0px 4px 13px 0px rgb(0 0 0 / 47%);
	cursor: pointer;
	color: white !important;
}
.will_signature{position: relative; margin-bottom: 100px;}
body .metaslider{
	margin: 0 auto 120px;
	max-width: 500px;
}
.flex_header{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
.flex_header > div:first-child, .flex_header > div:last-child{
	flex: 1 0 150px;
}
body.page-template-template_about #mega-menu-wrap-primary #mega-menu-primary{ 
	margin-top: 0;
}
.header_wrapper{
	position: relative;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 450px;
	width: 100%;
}
.header_wrapper .width_1500{
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.header_wrapper .width_1500 h1{
	position: absolute;
	top: 0;
	padding: 9px 25px;
	background: #738392;
	margin: 0;
	color: white;
	text-transform: uppercase;
	font-family: 'Cormorant Garamond', serif;
	letter-spacing: 3px;
	font-size: 22px;
	font-weight: 100;
}
body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu, body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{
	background: #acb7ac; 
	color: white;
}
body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover, body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-current-menu-item a.mega-menu-link{
	background: #96a197;
	color: white;
}
body .wp-block-image .alignleft {
	float: left;
	margin: 0.5em 1.5em 0.5em 0;
}
.footer_logo{
	float: right;
	width: 200px;
}
.footer_logo:after{
	content: "";
	display: block;
	float: none;
	clear: both;
}
.blue_section a{
	color: rgba(255,255,255, .6);
}
.blue_section a:hover{
	color: rgba(255,255,255, 1); 
}
.virtual_sessons{
	margin-top: 18px;
	margin-bottom: 6px;
	text-align: center;
	color: #acb7ac;
	font-size: 18px;

}
.virtual_sessons:before{
	content: "";
	display: block;
	margin: 30px auto 24px;
	width: 100px;
	border: 1px solid #acb7ac;
	opacity: .8;
}
.blue_background{
	padding: 40px;
	background: #36586b;
}

.buttons{
	text-align: center;
}
button{
	border: none;
	font-size: 20px;
	vertical-align:top;
}
.buttons > div{
	display: inline-block;
	margin: 10px;
	vertical-align:top;
}
.buttons cite{
	display: block;
}
cite{
	font-size: 15px;
}
.certified > a{
	margin: 35px auto 20px;
}
/* Print styles!
-------------------------------------------------------------------------------*/
@media print {

}


/* Media queries!
-------------------------------------------------------------------------------*/
@media screen and (max-width: 1250px) {
	.flex_header{
		display: block;
	}
	.flex_header > div{
		margin-bottom: 25px;
	}
}

@media screen and (max-width: 1000px) { 
	.will_signature img{
		margin-top: 0px;
		right: inherit;
		left: 10%;
	}	
	.header_wrapper{
		height: 30vw;
	}
	.will_signature:before {
		right: auto;
		top: 20px;
		left: 20px;
		position: relative;
	}
} 
@media screen and (max-width: 800px) {
	.clear_800{
		clear: both;
		float: none;
	}
	.will_signature img{
		width: 128px;
	}
	.header_wrapper{
		height: 30vw;
	}
	.nav_wrapper{
		position: absolute;
		top: 0px;
		right: 25px;
		width: 90%;
	}
	
	/* Mobile Menu Toggle Button Styling */
	body #mega-menu-wrap-primary .mega-menu-toggle{
		background: transparent !important;
		padding: 0 !important;
		float: right;
		z-index: 1000;
		position: relative;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-blocks-right{
		float: none;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block{
		background: transparent !important;
		padding: 0 !important;
	}
	
	/* Style the actual hamburger button */
	body #mega-menu-wrap-primary .mega-menu-toggle button.mega-toggle-animated{
		background: #36586b !important;
		border-radius: 8px;
		padding: 0 !important;
		transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease !important;
		box-shadow: 0 2px 8px rgba(0,0,0,0.1);
		border: none;
		cursor: pointer;
		width: 52px;
		height: 52px;
		display: flex !important;
		align-items: center;
		justify-content: center;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle button.mega-toggle-animated:hover{
		background: #2d4757 !important;
		transform: scale(1.02) !important;
		box-shadow: 0 4px 12px rgba(0,0,0,0.15);
	}
	
	/* Style the hamburger lines container */
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-box{
		display: flex !important;
		align-items: center;
		justify-content: center;
		width: 28px;
		height: 28px;
		position: relative;
	}
	
	/* Style the hamburger lines */
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner{
		display: block !important;
		position: relative !important;
		width: 28px !important;
		height: 3px !important;
		background: white !important;
		border-radius: 2px !important;
		transition: all 0.3s ease !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::before,
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::after{
		content: "" !important;
		display: block !important;
		position: absolute !important;
		width: 28px !important;
		height: 3px !important;
		background: white !important;
		border-radius: 2px !important;
		transition: all 0.3s ease !important;
		left: 0 !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::before{
		top: -8px !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-inner::after{
		top: 8px !important;
	}
	
	/* Transform to X when menu is open */
	/* Target the mega-menu-open class that the plugin uses */
	body #mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-animated-slider .mega-toggle-animated-inner{
		background: transparent !important;
		height: 0 !important;
		transform: none !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-animated-slider .mega-toggle-animated-inner::before{
		top: 0 !important;
		transform: rotate(45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
		opacity: 1 !important;
		left: 0 !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-animated-slider .mega-toggle-animated-inner::after{
		top: 0 !important;
		bottom: auto !important;
		transform: rotate(-45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
		left: 0 !important;
	}
	
	/* Fallback for non-slider variants */
	body #mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-animated-inner{
		background: transparent !important;
		height: 0 !important;
		transform: none !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-animated-inner::before{
		top: 0 !important;
		transform: rotate(45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
		opacity: 1 !important;
		left: 0 !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle.mega-menu-open .mega-toggle-block-1 .mega-toggle-animated-inner::after{
		top: 0 !important;
		bottom: auto !important;
		transform: rotate(-45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
		left: 0 !important;
	}
	
	/* Also target aria-expanded for backup */
	body #mega-menu-wrap-primary .mega-menu-toggle button.mega-toggle-animated[aria-expanded="true"] .mega-toggle-animated-inner{
		background: transparent !important;
		height: 0 !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle button.mega-toggle-animated[aria-expanded="true"] .mega-toggle-animated-inner::before{
		top: 0 !important;
		transform: rotate(45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle button.mega-toggle-animated[aria-expanded="true"] .mega-toggle-animated-inner::after{
		top: 0 !important;
		transform: rotate(-45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
	}
	
	/* Also target the slider variant specifically */
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-slider[aria-expanded="true"] .mega-toggle-animated-inner{
		background: transparent !important;
		height: 0 !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-slider[aria-expanded="true"] .mega-toggle-animated-inner::before{
		top: 0 !important;
		transform: rotate(45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
	}
	
	body #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-animated-slider[aria-expanded="true"] .mega-toggle-animated-inner::after{
		top: 0 !important;
		transform: rotate(-45deg) !important;
		background: white !important;
		width: 28px !important;
		height: 3px !important;
	}
	
	/* Mobile Menu Container */
	body #mega-menu-wrap-primary #mega-menu-primary{
		background: white !important;
		border-radius: 12px;
		margin-top: 70px !important;
		box-shadow: 0 8px 24px rgba(0,0,0,0.12);
		overflow: hidden;
		animation: slideDown 0.3s ease;
		position: relative;
		z-index: 999;
	}
	
	@keyframes slideDown {
		from {
			opacity: 0;
			transform: translateY(-20px);
		}
		to {
			opacity: 1;
			transform: translateY(0);
		}
	}
	
	/* Mobile Menu Items */
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item{
		border-bottom: 1px solid #f0f0f0;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item:last-child{
		border-bottom: none;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
		color: #36586b !important;
		border-left: none !important;
		padding: 16px 24px !important;
		font-size: 17px !important;
		font-weight: 500 !important;
		text-align: left !important;
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		min-height: 56px;
		transition: all 0.25s ease;
		background: white !important;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus{
		background: #f8f9fa !important;
		padding-left: 28px !important;
		color: #2d4757 !important;
	}
	
	/* Current/Active Menu Item */
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item.mega-current-page-item > a.mega-menu-link{
		background: #f0f4f5 !important;
		color: #36586b !important;
		border-left: 4px solid #36586b !important;
		font-weight: 600 !important;
		padding-left: 20px !important;
	}
	
	/* Submenu Indicator Arrow */
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children > a.mega-menu-link .mega-indicator{
		display: inline-block;
		width: 24px;
		height: 24px;
		transition: transform 0.3s ease;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item-has-children.mega-toggle-on > a.mega-menu-link .mega-indicator{
		transform: rotate(180deg);
	}
	
	/* Submenu Styling */
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu{
		background: #f8f9fa !important;
		padding: 8px 0 !important;
		border-radius: 0 !important;
		border-top: 2px solid #e9ecef;
		animation: slideDown 0.25s ease;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item{
		border: none;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link{
		background: transparent !important;
		color: #36586b !important;
		padding: 14px 24px 14px 40px !important;
		font-size: 16px !important;
		font-weight: 400 !important;
		text-align: left !important;
		min-height: 48px;
		transition: all 0.25s ease;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover,
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus{
		background: white !important;
		color: #2d4757 !important;
		padding-left: 44px !important;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-current-menu-item a.mega-menu-link{
		background: white !important;
		color: #36586b !important;
		font-weight: 600 !important;
		border-left: 3px solid #acb7ac !important;
		padding-left: 37px !important;
	}
	
	/* Add subtle icon before submenu items */
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:before{
		content: "→";
		margin-right: 8px;
		opacity: 0.5;
		transition: opacity 0.25s ease;
	}
	
	body #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover:before{
		opacity: 1;
	}
	
	.header_wrapper .width_1500 h1 {
		letter-spacing: 2px;
		font-size: 19px;
	}
	.footer_list li{
		display: block;
		margin-bottom: 15px;
		border: none;
	}
	.footer_logo{
		margin: 40px auto 20px;
	}
	.will_signature:before{
		top: 0px;
	}
}
@media screen and (max-width: 600px){
	body .wp-block-image.mobile_center figure{
		float: none;
		clear: both;
		margin: 25px auto 50px;
	}
}
