/*
	Theme Name: HTML5 Blank
	Theme URI: http://html5blank.com
	Description: HTML5 Blank WordPress Theme
	Version: 1.4.3
	Author: Todd Motto (@toddmotto)
	Author URI: http://toddmotto.com
	Tags: Blank, HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
	margin: 0;
	padding: 0;
	width:100%;
}
body {
	font:300 14px/1.4 'apexnewbookwebfont','Helvetica Neue', Helvetica, Arial, sans-serif;
	color:#444;
	margin: 0;
	padding: 0;
	width:100%;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color:#444;
	text-decoration:none;
}
a:hover {
	color:#444;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

@font-face {
	font-family: 'apexnewbookwebfont';
	src: url('/fonts/apexnewbookwebfont.eot');
	src: local('apexnewbookwebfont'), url('/fonts/apexnewbookwebfont.woff') format('woff'), url('/fonts/apexnewbookwebfont.ttf') format('truetype');
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */
.wrapper {
	max-width:1040px;
	width:100%;
	margin:0 auto;
	padding: 0;
	position:relative;
}



/* header */

.headerbg
{
    width:100%;
    height:107px;
    background-color:#191919;
    position:absolute;
    padding:13px 0 12px 0;
    opacity:0.3;
}

.header {
    width:100%;
    height:107px;
    padding:0;
    margin-top:0px;
    position:fixed;
    top: 0;
    z-index: 1800;
}

.header .wrapper
{
    padding:12px 0 13px 0;
}

/* logo */
.logo {
  display:none;
  float:left;
}

.mobilelogo {display:block; margin-bottom: 0;}

    #logoimage, #logotext, .mobileNav { display: inline-block; text-align: center; vertical-align: middle; margin: 0 auto; }
    #logoimage { width: 8%; margin-left: 15px; }
    #logotext { width: 15%; margin-left: 10px;}

/* nav */
.nav {
    float:right;
}

.nav ul
{
    list-style: none;
    padding:0px;
    margin:0px;
}

.nav ul li:first-child
{
	margin-left: 0px;    
}

.nav ul li
{
	float: left;
	margin-left: 20px;    
}

.nav  ul li a 
{
	font-size:1.4em;
	color:#ddd;	
}

.nav ul li a:hover,
.nav ul li a:active
{
    color:#fff;    
}

.mobileNav { width: 41px; float: right; margin-right: 7px; margin-top: 25px; }  

a:hover #burger .cls-1 { fill:#d7d7d7; }
a:hover #burger_cross .cls-1 { fill:#d7d7d7; }

.nav { background-color:#3f3f3f; padding: 10px; width: 25%; display:none; margin-top: 7px;}
.nav ul li { width:100%; margin-left:0; padding: 5px 0; }
.nav ul li a { color: #d7d7d7; display: block;}
.nav ul li a:hover, .nav ul li a:active { color:#fff; }

.subnav
{
    float:right;
    padding-top: 25px;
    padding-right: 15px;
}

.subnav a
{
    font-size:1.2em;
    color:#fff;
    line-height: 41px;
    height: 30px;
    display: block;
    margin-right: 9px;
    background-repeat: no-repeat;
    background-position: right top;
    float: left;
}

.subnav a:hover,
.subnav a:active
{
    color:#fff;   
    background-position: right bottom;
}

.subnav a svg {width: 41px;}
.subnav a:hover svg .cls-1,.subnav a:hover svg .cls-3,.subnav a:hover svg .cls-6 {fill: #d7d7d7;}
.subnav a:hover {color:#d7d7d7}


h1
{
    
}

h2
{
    background-color:#3f3f3f;
    font-size: 64px;
    height:92px;
    line-height: 92px;
    text-align:center;
    color:#fff;
    font-weight:normal;
    margin: 0;
    -skrollr-animation-name:h2-grow;
}

@-skrollr-keyframes h2-grow {
    bottom-top {
        font-size: 64px;
    }

    200-bottom {
        font-size: 72px;
    }
    
    300 {
        font-size: 64px;
    }

    500 {
        font-size: 72px;
    }
}

h3
{
    font-size:36px;
    font-style: italic;
    font-weight: normal;
    /* line-height: 46px; */
}

h4
{
    font-size:24px;
    
    font-weight: normal;
    line-height: 28px;
    margin: 0;
}

h2.black
{
    background-color:#000;
}

h2.trans
{
    background-color:transparent;
}

br.clear
{
    clear:both;
}

a.su-button-style-default,
a.su-button-style-default:hover,
a.su-button-style-default:active
{
color:#000000 !important;
}

/*------------------------------------*\
    PAGES / Sections
\*------------------------------------*/

div#banner_bgs
{
    height: 670px;
    position: relative;
}

div.banner_bg
{
    height: 670px;
    width: 100%;
    position: absolute;
    background-attachment: fixed;
    background-position: center top;
    background-color: #000;
    background-repeat: no-repeat;
}

.banner-fg
{
    background-image: url(/images/rotator-content-bg.png);
    margin:0 auto;
    height: 670px;
    max-width:1040px;
    width:100%;
    background-position: 10px 130px;
    background-repeat: no-repeat;
}

.slidesjs-container
{
    background-image: url(/images/rotator-fg.png);
    background-position: top center;
    background-repeat: no-repeat;
}

.banner_nav
{
    top: 600px;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 999;
}

.slidesjs-previous,
.slidesjs-next,
.slidesjs-previous svg,
.slidesjs-next svg
{
    width:54px;
    height:54px;   
    display:block;
}
.slidesjs-previous
{
    float:left;
}
.slidesjs-next
{
    float:right;
}
.slidesjs-previous:active svg .cls-2,
.slidesjs-next:active svg .cls-2,
.slidesjs-previous:hover svg .cls-2,
.slidesjs-next:hover svg .cls-2
{
  fill: #000;
}

a.buttonr
{
    background-image: url(/images/button.png);
    background-position: right bottom;
    background-repeat: no-repeat;
    height: 42px;
    line-height: 42px;
    display: inline-block;
}
.buttonl
{
    background-image: url(/images/button.png);
    background-position: left -84px;
    background-repeat: no-repeat;
    margin-right: 4px;
    height: 42px;
    display: table;
    width: auto;
    line-height: 42px;
    padding: 0 16px 0 20px;
    
}

a.buttonr:hover,
a.buttonr:active
{
    background-position: right -42px;
}

a.buttonr:hover .buttonl,
a.buttonr:active .buttonl
{
    background-position: left top;
    color:#000;
}


.banner .content-area
{
	padding-top: 240px;
	padding-left: 70px;
	height: 540px;
	width: 445px;
}

.banner .content-area a.buttonr
{
    margin:0 auto;
}

.banner-comment h4
{
	font-size:48px;
	color:#fff;
	text-align:center;
	line-height:50px;
}
.banner-link
{
	text-align:center;
}

.banner-comment p
{
	font-size:18px;
	color:#fff;
}

table.pricelist {
    width:49%;
    display:inline-block;
}

div.training p
{
    font-size: 14px;
    line-height: 20px;
}

#intro-page
{
    padding-top: 18px;
}

section.intro-page .su-row {
    display:flex;
    align-items: stretch;
}

section.intro-page .su-column {
    display:flex;
    align-items: stretch;
}

section.intro-page .su-column-inner {
    margin-bottom: 60px;
}

section.intro-page .su-column-inner img {
    min-height: 230px;
}


section.intro-page .su-column-inner .find-out-more {
    text-align: center;
    position: absolute;
    bottom: 0;
    width: 22%;
}


section.template-mission
{
    background-color:#1f1f1f;
    background-image: url(/images/mission-bg.png);
    background-position: center top;
    background-repeat: no-repeat;
    padding:40px 0;
}

section.template-mission p
{
    color:#fff;
    font-size:14px;
    line-height:20px;
    margin-bottom:20px;
    margin-top: 0;
}

section.template-mission h4
{
    font-size: 28px;
    font-weight: normal;
    line-height: 36px;
    color:#fff;
}

section.template-people .personrow
{
    float:left;
    padding-top:30px;
}

section.template-people .person
{
	width:30%;
	float:left;
	text-align:center;
	margin-left:40px;
}
section.template-people .person.firstCol
{
	margin-left:0;
}

section.template-people .person .person_image
{
	padding-bottom:20px;	
	background-repeat:no-repeat;
	background-size:contain;
	background-position:center center;
	width:274px;
	height:274px;
	margin:0 auto 20px auto;
}

section.template-people .person .person_content p
{
	font-size: 15px;
	line-height: 20px;
	margin-bottom:10px;
}

section.template-people .person .person_contact a
{
	background-color:#b0b0b0;
	width: 75px;
	height: 75px;
	display: block;
	margin: 0 auto;
}

section.template-people .person .person_contact a:active,
section.template-people .person .person_contact a:hover
{
	background-color:#727272;
}

section.template-testimonial
{
    background-color:#000;
    background-image: url(/images/testimonial-bg.jpg);
    background-position: center center;
    background-attachment: fixed;
    background-repeat: no-repeat;
    
}

section.template-testimonial article
{
    max-width:1040px;
    width:100%;
    margin:0 auto;
    padding: 30px 0px;
    position:relative;
    color:#fff;
    font-size:36px;
    text-align:center;
    font-style: italic;
}

section.template-testimonial p
{
    margin:0; 
    padding:0;
    
}
section.template-services-white.single,
section.template-services-grey.single
{
    margin-top:105px;
}

section.template-services-white,
section.template-services-grey
{
    color:#3a3a3a;
    font-size:15px;
    line-height: 20px;
}
section.template-services-grey
{
    color:#fff;
    background-color: #3f3f3f;
}

section.template-services-grey .su-column.right{
    float:right;
}

section.template-services-white h3,
section.template-services-grey h3
{
    font-size:48px;
    font-style: normal;
    padding-top: 15px;
    line-height: 48px;
    margin: 0 0 30px 0;
}

section.template-services-white article,
section.template-services-grey article
{
    max-width:1040px;
    width:100%;
    margin:0 auto;
    padding:30px 0 10px 0;
}
section.template-services-white
{
    background-image: url(/images/services-bg.jpg);
    background-position: center top;
    background-repeat: no-repeat;
}

.template-services-grey a { color: #d7d7d7; }
.template-services-grey a:hover { color: #fff; }

section.template-products
{
    background-color:#000;
    color:#fff;
    
}

section.template-products h2
{
    background-color:#000;
    
}

section.template-products article
{
    max-width:1040px;
    width:100%;
    margin:0 auto;
    padding:10px 0px;
}

section.template-contact
{
    
}

section.template-contact h4
{
    line-height: 30px;
}

section.template-contact hr
{
	margin: 20px 0;
}

section.template-people h2,
section.template-contact h2
{
	margin: 0 0 30px 0;
}


section#map
{
    width:100% !important;
    max-width:100% !important;
    margin-bottom: 0px !important;
}

section#map p
{
    margin:0;
    height:355px;
}


#google-map {
    border-top: 1px solid #fff;
    border-bottom: 0px solid;
    width: 100%;
    height: 355px;
}

.wpcf7-form input[type='text'],
.wpcf7-form input[type='email'],
.wpcf7-form textarea,
.wpcf7-form select
{
	width:480px;
	background-color:#eee;
	padding:10px;
	border:0px;
}

.wpcf7-form textarea
{
	height:100px;
}

.wpcf7-submit
{
    background-color: #fff;
    border: 2px solid #ddd;
    padding: 10px 50px;
    color: #555;
    border-radius: 5px;
}

.wpcf7-submit:active,
.wpcf7-submit:hover
{
    border: 2px solid #555;    
}


body.error404
{
	background-color: #3f3f3f;
}

article#post-404
{
	padding-top: 140px;
	color:#fff;
}

article#post-404 a
{
	color:#fff;
}

.ptrainers, .posts {
    margin-top: 107px;
    
}

.ptrainer {
    color: #fff;
    font-size: 26px;
    text-align: center;
    font-style: italic;
		background-color: #000;
    background-image: url(/images/testimonial-bg.jpg);
    background-position: center center;
    background-attachment: fixed;
    background-repeat: no-repeat;
}

.ptcontent {
		max-width: 800px;
    margin: 0 auto;
    padding: 30px 0;
    line-height: 1.4em;
}

.ptcontact {
 		max-width: 1040px;
    width:100%;
    margin: 0 auto;
    padding: 30px 0 10px 0;
}

section.ptrainers .wrapper,
section.posts .wrapper
{
  margin-bottom:20px;
}


section.ptrainers .personrow
{
    float:left;
    padding-top:30px;
}

section.ptrainers .person
{
	width:30%;
	float:left;
	text-align:center;
	margin-left:40px;
}
section.ptrainers .person.firstCol
{
	margin-left:0;
}

section.ptrainers .person .person_image
{
	padding-bottom:20px;	
	background-repeat:no-repeat;
	background-size:contain;
	background-position:center center;
	width:274px;
	height:274px;
	margin:0 auto 20px auto;
}

section.ptrainers .person .person_content p
{
	font-size: 15px;
	line-height: 20px;
	margin-bottom:10px;
}

section.ptrainers .person .person_contact a
{
	background-color:#b0b0b0;
	width: 75px;
	height: 75px;
	display: block;
	margin: 0 auto;
}

section.ptrainers .person .person_contact a:active,
section.ptrainers .person .person_contact a:hover
{
	background-color:#727272;
}


section.ptrainers h3,
section.posts h3
{
    font-size:48px;
    font-style: normal;
    padding-top: 15px;
    line-height: 48px;
    margin: 0 0 30px 0;
}

section.ptrainers .imageleft,
section.ptrainers .imageright
{
    background-image: url(/images/services-bg.jpg);
    background-position: center top;
    background-repeat: no-repeat;
}

.newsArticles { display: flex; justify-content: space-around; flex-wrap: wrap; align-items: stretch; }
.newsArticle { max-width: 30%; margin-bottom: 40px; }
.newsArticle .newsImage img { width: 100%; }
.newsArticle .newsTitle h3 { font-size: 18px; padding: 0; margin: 20px 0; line-height: normal; }
.newsArticle .newsContent {  }
.newsArticle a.more { padding-top: 20px; }
.newsHeaderImage { width: 100%; height: 36rem; background-repeat: no-repeat; background-position: center center; background-size: cover; } 

.faqs {}
.faqs .faq { padding: 1rem 0; }
.faqs .faq .question { width: 100%; }
.faqs .faq .question a { display:block; color: #191919;  width: 100%; }
.faqs .faq .question a::before
{
  content: 'Q'; background-color: #3f3f3f; color: #fff; border-radius: 50%; font-weight: bold; width: 4rem; display: inline-block; text-align: center; height: 4rem; line-height: 4rem; font-size: 2rem; margin-right: 1rem; 
}

.faqcontent {
	width: 80%;
  margin: 0 auto;
}

.faqs .faq .answer { 
  display: none; 
	padding: 1rem 3rem;
  background-color: #eee;
  margin: 1rem 5rem 0 5rem;
  font-size: 15px;
  color: #000;
}





/*------------------------------------*\
    IMAGES
\*------------------------------------*/

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (max-width:415px) {

    h2 { font-size: 38px; height: 62px; line-height: 62px; }
  .ptrainers h2 { height: auto; line-height: normal; }
      
    .header { height: 87px }
    .header .wrapper {padding: 15px 0 15px 0; background-color: #191919;}
    .headerbg { opacity:1; height: 87px; }

    .logo {display:none;padding: 10px 0; width: 80%;}
    .logo a { margin-left: 20px; }
    .logo a img {
        width:70%;
        margin-left:10px;
    }

    .mobilelogo {display:block; margin-bottom: 0;}

    #logoimage, #logotext, .mobileNav { display: inline-block; text-align: center; vertical-align: middle; margin: 0 auto; }
    #logoimage { width: 18%; margin-left: 15px; }
    #logotext { width: 50%; margin-left: 10px;}
    .mobileNav { width: 10%; float: right; margin-right: 15px; margin-top: 20px; }  

    .nav { background-color:#3f3f3f; padding: 10px; width: 100%; display:none; margin-top: 13px;}
    .nav ul li { width:100%; margin-left:0; padding: 5px 0; }
    .nav ul li a { color: #fff; display: block;}
    .subnav { display:none; }
    

    #banner_bgs .banner { margin-top: 330px; background-color: #191919; }
    #banner_bgs .banner .content-area { padding: 20px 0;  width: 80%; margin: 0 auto; }
    #banner_bgs .banner .banner-comment h4 { font-size:32px; }
    #banner_bgs .banner .banner-comment br { display: none; }
    #banner_bgs .banner .banner-fg { background-image:none; }
    #banner_bgs .banner_bg { margin-top: 97px; height: 240px; background-size: cover; background-attachment: inherit;}
    #banner_bgs .banner_nav { top:308px; width: 98%; margin: 0 auto; }

    section.intro-page .su-row.wrapper { flex-wrap: wrap; }
    section.intro-page .su-column-inner { width: 80%; margin: 0 auto; }
    section.intro-page .su-column-inner .find-out-more { position: relative; width: 100% }

    section.template-mission { background-image:none; background-color: #000; padding:0;}
    section.template-mission h2 { font-size: 38px; height: 62px; line-height: 62px; text-align: center !important;}
    section.template-mission h4 {text-align: center !important; font-size: 20px; line-height: 25px; width: 85%; margin: 0 auto;}
    section.template-mission h4 br { display:none; }
    section.template-mission div.su-column { padding: 30px 0; }
    section.template-mission div.ethos { background-color: #1f1f1f; padding-bottom: 40px;}
    section.template-mission div.ethos h2 { text-align: left !important;}
    section.template-mission div.ethos .su-column-inner { width: 80%; margin: 0 auto; }
    section.template-mission .su-row { margin-bottom:0; }

    section.template-people .person { width: 80%; margin: 0 auto !important; float: none; padding-top: 25px; }
    section.template-people .personrow:first-child .person:first-child { padding-top: 0; }
    section.template-people .person .person_image { width: 60%; height: 200px; margin: 0 auto; padding-bottom: 0; }
    section.template-people .personrow { padding-top: 0; }
  
  	section.ptrainers, section.posts { margin-top: 92px; }
    section.ptrainers .person { width: 80%; margin: 0 auto !important; float: none; padding-top: 25px; }
    section.ptrainers .personrow:first-child .person:first-child { padding-top: 0; }
    section.ptrainers .person .person_image { width: 60%; height: 200px; margin: 0 auto; padding-bottom: 0; }
    section.ptrainers .personrow { padding-top: 0; }
  	section.ptrainers .ptcontact { width:90%; }
  	section.ptrainers .ptrainer { padding: 20px; }
  	section.ptrainers .ptrainer br { display:none; }

    section.template-testimonial article {font-size: 18px; width: 85%; }
    section.template-testimonial article br {display:none;}

    section.template-services-white { background-position: left top; }
    section.template-services-white .su-column img, section.template-services-grey .su-column img { width: 70% }
    section.template-services-white h3, section.template-services-grey h3 { font-size: 26px; text-align: center; padding-top: 0; line-height: 28px; margin: 0px 0 20px 0; }
    section.template-services-white .su-column-inner, section.template-services-grey .su-column-inner { width: 85%; margin: 0 auto; }

    section#products .su-column { width: 100% !important; float:left !important; min-height: 310px; }
    section#products .su-column .su-column-inner { width: 85%; margin:0 auto; text-align: center;}
    section#products .su-column .su-column-inner p { font-size:12px;}

    section.template-contact .su-column-inner { width: 85%; margin: 0 auto; }
    section.template-contact h4 {font-size: 18px;}
    .wpcf7-form input[type='text'], .wpcf7-form input[type='email'], .wpcf7-form textarea, .wpcf7-form select { width:100%; }

		.slidesjs-previous, .slidesjs-next, .slidesjs-previous svg, .slidesjs-next svg { width:44px; height:44px; background-size: 200%; }
  
    table.pricelist {
      width:100%;
      display:inline-block;
    }
   .ptcontact h4 { font-size: 18px; }
   .ptcontact h4 br { display:none; }
  .newsArticle { max-width: 80%; }
  .newsHeaderImage {  height: 26rem; }
  .newsArticle .newsTitle h3 { font-size:10px;} 
}
@media only screen and (min-width:415px) {
.headerbg
{
    opacity:1;
}
.newsArticle { max-width: 45%; }
}
@media only screen and (min-width:480px) {
.headerbg
{
    opacity:1;
}
.newsArticle { max-width: 45%; }
}
@media only screen and (min-width:768px) {
.headerbg
{
    opacity:1;
}
.newsArticle { max-width: 30%; }
}
@media only screen and (min-width:1024px) {

}
@media only screen and (min-width:1140px) {
.headerbg
{
    opacity:1;
}

}
@media only screen and (min-width:1280px) {
.headerbg
{
    opacity:1;
}

}
@media only screen and (-webkit-min-device-pixel-ratio:1.5),
	   only screen and (min-resolution:144dpi) {
.headerbg
{
    opacity:1;
}
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
	margin:5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
	display:block;
	margin:5px auto 5px auto;
}
.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright {
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone {
	margin:5px 20px 20px 0;
}
a img.alignleft {
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption {
	background:#FFF;
	border:1px solid #F0F0F0;
	max-width:96%;
	padding:5px 3px 10px;
	text-align:center;
}
.wp-caption.alignnone {
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft {
	margin:5px 20px 20px 0;
}
.wp-caption.alignright {
	margin:5px 0 20px 20px;
}
.wp-caption img {
	border:0 none;
	height:auto;
	margin:0;
	max-width:98.5%;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption {
	font-size:11px;
	line-height:17px;
	margin:0;
	padding:0 4px 5px;
}
.sticky {

}
.bypostauthor {

}




/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}