/*
Theme Name: Happy Confident
Theme URI: https://happyconfident.com/
Author: Proof Digital
Author URI: http://madewithproof.com/
Description: Custom theme for Happy Confident Co
Version: 1.0.0
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl.html
Tags: Custom
Text Domain: Happy Confident Co

BlankSlate WordPress Theme © 2011-2017 TidyThemes
BlankSlate is distributed under the terms of the GNU GPL
*/


/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.9.0/css/all.min.css');
@import url('https://fonts.googleapis.com/css2?family=Baloo+Da+2:wght@500;600;700&display=swap');

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
  font-family: 'Baloo Da 2', cursive;
	-webkit-font-smoothing: antialiased;
}

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}


/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none;
}

::selection {
  background: #b3d4fc;
  text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
 
 
h2 { 
	font-size: 2.2rem;
	line-height: 2.2rem;
	text-transform: uppercase;
	letter-spacing: 4px;
	padding: 50px 0 0;
	margin: 0;
	color:#f7cd46;
} 

h3 { 
	font-size: 1.6rem;
	line-height: 1.6rem;
	text-transform: uppercase;
	letter-spacing: 4px;
	padding: 0;
	margin: 0;
	color:#f7cd46;
} 

h4 { 
	font-size: 1.4rem;
	line-height: 1.4rem;
	text-transform: uppercase;
	letter-spacing: 4px;
	padding: 40px 0 0;
	margin: 0;
	color:#f7cd46;
} 

h5 { 
	font-weight: 600;
	font-size: 1rem;
	margin: 0;
	padding: 0;
}


h2.blue,
h3.blue,
h4.blue { 
	color:#2d3b51;
}
   
a {
	font-weight: 600;
	font-size: 1.4rem;
	color: #f9d548;
	text-decoration: none; 
	-webkit-transition: all .5s;
	-moz-transition: all .5s;
	-o-transition: all .5s;
	transition: all .5s;
} 

a:hover { 
	opacity: .8;
}  
  

p { 
	font-size: 1rem;
}  
  
   
header { 
	width: 100%;
	background: #2d3b51;
}   

header .inner { 
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	align-content: center;
	justify-content: center;
}

header .header-social,
header .header-shop { 
	flex-basis: 25%;
	padding-top: 60px;
}

header .header-logo { 
	text-align: center;
	padding: 30px 0;
	flex-grow: 2;
}

header a {
	color:#f7cd46;
	text-decoration: none;
}

header .header-shop { 
	text-align: right;
}

header .header-shop a {
	font-size: 1.2rem;
	margin-left: 20px;
}

header .header-social i { 
	font-size: 1.8rem;
	margin-right: 10px;
}

#main-nav { 
	background:	#148f96;
}

#main-nav menu,
#main-nav ul,
#main-nav ul li { 
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#main-nav menu ul { 
	text-align: center;
	padding: 20px 0;
}

#main-nav ul li {
	display: inline-block;
	margin-right: 20px;
}

#main-nav ul li a { 
	font-weight: 700;
	color:#fff;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 1.2rem;
}

#main-nav ul li a:hover { 
	color:#f7cd46;
	opacity: 1;
}

#cssmenu > ul > li.has-sub:hover > a:before {
	top: 19px;
}
#cssmenu ul li.has-sub:hover > a, #cssmenu ul li.menu-item-object-page:hover a {
	z-index: 999;
}
#cssmenu ul li.has-sub:hover > ul,
#cssmenu ul li.has-sub:hover > div {
	display: block;
	width: 280px;
}

#cssmenu ul li.has-sub:hover > ul li.has-sub:hover > ul,
#cssmenu ul li.has-sub:hover > ul li.has-sub:hover > div { 
	top: 0;
	left: 220px;
}

#cssmenu ul li.has-sub > a:hover {
}
#cssmenu ul li > ul,
#cssmenu ul li > div {
	text-align: right;
	display: none;
	width: 100%;
	position: absolute;
	*right: 0;
	*padding: 10px 0 0 !important;
	*background: #00af9f;
	z-index: 999;
}

#cssmenu ul li > ul {
	width: 200px;
}
#cssmenu ul li > ul li {
	padding: 20px 20px;
	height: auto;
	text-align: left;
	display: block;
	margin-left: 0;
	background:#148f96;
	border-bottom: solid 1px #fff;
}
#cssmenu ul li > ul li:nth-child(1) {
	border-top:solid 1px #fff;
}
#cssmenu ul li > ul li:nth-last-child(1) {
	border-bottom: none;
}

#cssmenu ul li > ul li:hover a {
	color:#f7cd46 !important;
	opacity: 1;
}
#cssmenu ul li > ul li a {
	color: #fff !important;
}
#cssmenu ul ul a:hover {
	color: #999;
}
#cssmenu > ul > li.has-sub > a:hover:before {
	border-top: 5px solid #ffffff;
}









#home-header { 
	width: 100%;
	height: 600px;
	background:url('img/bg01.jpg');
	position: relative;
}

#home-header.member-zone { 
	height: 500px;
}

#home-header .inner { 
	max-width: 1280px;
	margin: 0 auto;
}

#home-header .header-text { 
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40%;
}

h1.header-title { 
	margin: 0;
	padding: 0;
	font-size: 2.4rem;
	line-height: 2.4rem;
	text-transform: uppercase;
	letter-spacing: 4px;
	color: #f7cd46;
}

h2.header-subtitle { 
	margin: 0;
	padding: 0;
	font-size: 2.6rem;
	line-height: 2.6rem;
	color: #2d3b51;
}

#home-header .product-cta { 
	float:right;
	padding-right: 75px;
	padding-top: 75px;
	text-align: center;
}

#home-header .product-cta img {
	max-height: 400px;
	width: auto;
}

#home-header .member-cta img { 
	max-height: 300px !important;
}

#home-header .wide-cta { 
	padding-right: 0;
}

#home-header .video-cta { 
	padding-top: 100px;
}

#home-header .product-cta a:hover { 
	opacity: 1;
}

#home-header .product-cta a.cta,
#product-page-header a.cta,
a.cta { 
	background: #f7cd46;
	*width: auto;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 1.2rem;
	font-weight: 700;
	padding: 15px 25px;
	color: #2d3b51;
	border-radius: 10px;
	text-align: center;
	display: inline-block;
	margin-top: 15px;
}

#product-page-header a.cta { 
	display: inline-block;
	margin: 30px 0;
}

#home-header .product-cta a.cta:hover,
#product-page-header a.cta:hover,
a.cta:hover { 
	background:#2d3b51;
	color:#fff;
	opacity: 1;
}




#testimonials { 
	width: 100%;
	background:#f7cd46;
	background-image: url('img/bg-testimonial.png');
	background-repeat: no-repeat;
	background-position: right center;
	text-align: center;
}

#testimonials .inner { 
	padding: 20px 0;
}

#testimonials .inner p,
.centre-title p {
	width: 50%;
    margin: 0 auto;
    padding: 10px 0 20px;
}




#as-seen-in { 
	background: #f9f8f1;
	width: 100%;
	text-align: center;
}

#as-seen-in .inner { 
	max-width: 1400px;
	margin: 0 auto;
}

#as-seen-in .pubs ul {
	margin: 0;
	padding: 0 0 40px;
}

#as-seen-in .pubs ul li { 
	list-style-type: none;
	display: inline-block;
}





#what-we-do,
#shop-products,
#how-we-do-it { 
	width: 100%;
	height:auto;
	background-color: #148f96;
	background-image: url('img/HCBee-Flying_side.png');
	background-repeat: no-repeat;
	background-position: 20px 20px;
	text-align: center;
}

#shop-products { 
	background-color: #f9f8f1;
}

#how-we-do-it {
	background-color:#f9f8f1;
	background-image: none;
}

#what-we-do .inner,
#shop-products .inner,
#how-we-do-it .inner { 
	padding: 30px 0;
}

#what-we-do .inner p,
#how-we-do-it .inner p {
	width: 50%;
    margin: 0 auto;
    padding: 20px 0 0;
    color:#fff;
}

#what-we-do .three-modules,
#shop-products .three-modules,
#how-we-do-it .three-modules { 
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
}

#what-we-do .three-modules .mod-col,
#shop-products .three-modules .mod-col,
#how-we-do-it .three-modules .mod-col { 
	flex: 1 0 33.3333%;
	text-align: center;
}

#what-we-do .three-modules .mod-col p,
#shop-products .three-modules .mod-col p,
#how-we-do-it .three-modules .mod-col p { 
	width: 80%;
	font-size: 1.2rem;
	margin: 0 auto;
}

#how-we-do-it .inner p { 
	color: #222;
}

img.courses { 
	padding: 70px 0;
    max-width: 300px;
}





#shop-landing { 
	width: 100%;
	background:#f9f8f1;
}

#shop-landing .inner { 
	max-width: 1400px;
	margin: 0 auto;
	padding-bottom: 5px;
}

#shop-landing .product-row { 
	display: flex; 
	flex-wrap: wrap;
}

#shop-landing .product-row:nth-child(even){
	flex-direction: row-reverse;
}

#shop-landing .product-row .product-image { 
	text-align: center;
}

#shop-landing .product-row .product-image,
#shop-landing .product-row .product-details { 
	flex: 1 0 50%;
	align-self: center;
}






#hc-club { 
	width: 100%;
	background-color: #f9f8f1;
	background-image: url('img/#');
	background-repeat: no-repeat;
	text-align: center;
}

#hc-club .inner { 
	max-width: 1400px;
	margin: 0 auto;
	padding-bottom: 30px;
}

#hc-club .club-cta { 
	display: flex;
	flex-wrap: wrap;
}

#hc-club .club-cta .hc-text,
#hc-club .club-cta .hc-image { 
	flex: 1 0 50%;
	align-self: center;
	text-align: left;
	padding-top: 30px;
}

#hc-club .club-cta .hc-image { 
	text-align: center;
	padding-top: 0;
}

#hc-club .club-cta .hc-image img { 
	width: 100%;
	max-width: 500px;
	height: auto;
}

#hc-club .club-cta .bee-image img { 
	max-width: 275px;
}

   






#articles { 
	width: 100%;
	background:#2d3b51;
}   

#articles .inner { 
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 0;
	display: flex;
	align-content: center;
	justify-content: center;
}

#articles .inner p {
	color: #fff;
	padding-right: 50px;
}

#articles .inner .article-intro { 
	align-self: center;
}

#articles .inner .article-intro,
#articles .inner .article-highlights {
	flex: 1 0 50%;
}

#articles .article-post { 
	display: flex;
}

#articles .article-post:nth-last-child(1) {
	margin-top: 40px;
}

#articles .article-image { 
	flex: 1 0 50%;
	flex-basis: 50%;
	height: 200px;
	display: block;
}

#articles .article-meta { 
	width: 50%;
	margin-left: 20px;
	padding-top: 50px;
}

#articles .article-meta h3 { 
	color:#fff;
	text-transform: none;
	font-size: 1.2rem;
	letter-spacing: 0;
}

#articles .article-meta a { 
	color:#f7cd46;
	text-decoration: none;
	display: inline-block;
	margin-top: 20px;
	font-size: 1.2rem;
}
   
   
   
   
   
   
   
   
   
#instagram,
#newsletter { 
	width: 100%;
	background-color: #f9f8f1;
	background-repeat: no-repeat;
	text-align: center;
}

#newsletter { 
	background-color: #f7cd46;
}

#instagram .inner,
#newsletter .inner { 
	max-width: 1400px;
	margin: 0 auto;
}

#instagram .feed-wrapper {
	padding-top: 20px;
}


#newsletter .inner { 
	padding-bottom: 40px;
}
  
#newsletter h4 {
	padding-top: 40px;
    color: #2d3b51;
}   
 
.newsletter-signup { 
	text-align: center;
} 

.newsletter-signup ul,
.newsletter-signup ul li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.newsletter-signup ul { 
	padding-top: 30px;
}  

.newsletter-signup label { 
	display: none;
}

.newsletter-signup input { 
	width: 400px;
	border: solid 1px #2d3b51;
	padding: 10px;
	text-align: center;
	background:none;
	margin-top: -1px;
}

.newsletter-signup .ginput_container ul { 
	padding: 0;
	margin: 0;
}

.newsletter-signup .ginput_container label { 
	display: block;
}

.newsletter-signup .ginput_container input[type="checkbox"] { 
	width: 50px;
	float: left;
}

.newsletter-signup input[type="submit"] {
	box-sizing: border-box;
	background:#2d3b51;
	color:#fff;
	width: 420px;
	border: none;
	margin-top: 11px;
	font-size: 1.2rem;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 600;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}
   
   
   
   



#product-header { 
	width: 100%;
	height: auto;
	background:url('img/bg-product.png');
	position: relative;
	padding-bottom: 5px;
}

#product-header .inner { 
	max-width: 1400px;
	margin: 0 auto;
}

.product-wrapper { 
	padding-top: 40px;
}

.woocommerce div.product .product_title { 
	color:#f7cd46;
	font-size: 3rem;
}

.product-wrapper h2 { 
	color:#2d3b51; 
	text-transform: none;
	padding-top: 0;
	letter-spacing: 0;
	line-height: 2.6rem;
}


#page-wrapper .woocommerce { 
	text-align: left;
}

#page-wrapper .woocommerce a {
	font-size: 1rem;
	color: #148f96;
}

.woocommerce div.product p.price, .woocommerce div.product span.price { 
	color:#148f96;
	font-size: 2rem;
	font-weight: 600;
}

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea { 
	background: none;
	border: solid 1px #2d3b51;
	padding: 10px;
}

.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt { 
	background: #f7cd46;
    width: auto;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 20px 25px;
    color: #2d3b51;
    border-radius: 10px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active { 
	background: none;
	border-bottom-color: #f9f8f1;
}

.woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover { 
    background: #2d3b51;
    color: #fff;
}

.woocommerce p.stars a::before {
  color:#148f96;
}

.woocommerce #review_form #respond textarea { 
	padding: 10px;
	height: 200px;
	background: none;
	border: solid 1px #2d3b51;
	font-size: 1rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation { 
	background:#f5f5f5;
	margin-bottom: 30px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul,
.woocommerce-account .woocommerce-MyAccount-navigation ul li { 
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li { 
	padding: 20px 30px;
	background:#f7cd46;
	border-bottom: solid 1px white;
	text-align: left;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	color: #2d3b51;
	text-decoration: none;
	font-size: 1.4rem;
	font-weight: 600;
}

.woocommerce-account .woocommerce-MyAccount-content { 
	text-align: left;
}

.return-to-shop {
	display:none !important;
}

.woocommerce-info { 
	border-top-color: #148f96;
}

.woocommerce-info::before { 
	color: #148f96;
}



#shop-wrapper { 
	width: 100%;
	height: auto;
	background:url(img/bg-shop.jpg);
	text-align: center;
}

#shop-wrapper .inner { 
	max-width: 1400px;
	margin: 0 auto;
	padding-bottom: 60px;
}

h3.shop-subtitle {
	letter-spacing: 0;
	text-transform: none;
	font-size: 2.4rem;
	line-height: 2.4rem;
	width: 70%;
	margin: 0 auto;	 
	color:#2d3b51;
}




#product-page-header { 
	width: 100%;
	background:url('img/bg-journals.jpg');
	text-align: center;
	background-position: center top;
}

#product-page-header .inner {
	max-width: 1400px;
	margin: 0 auto;
	padding-bottom: 10px;
}

#product-page-header .inner p {
	width: 60%; 
	margin: 0 auto;
	padding: 30px 0;
}

.product-page-image { 
	width: 350px;
	height: auto;
	margin: 0 auto;
	padding: 40px 0;
}

#product-page-header .team { 
	display: flex;
	flex-wrap: wrap;
	padding: 40px 0;
}

.team .read-more { 
	display: block;
	cursor: pointer;
	color:#148f96;
}

#product-page-header .team .team-member { 
	flex: 1 0 33.333%;
}

#product-page-header .team .team-member h4 { 
	padding: 20px 0 0;
	color: #2d3b51;
}

#product-page-header .team .team-member span { 
	color: #148f96;
	font-size: 1.4rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
}

#product-page-header .team .team-member p {
	font-size: 1rem; 
	padding: 0 30px;
}




#product-sell { 
	width: 100%;
	background:#f9f8f1;
}

#product-sell .inner { 
	max-width: 1400px; 
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
}

#product-sell .inner .half { 
	flex: 0 50%;
	padding: 40px 0;
	align-self: center;
}

#product-sell .inner .half.float-image { 
	text-align: center;
}

#product-sell .inner .half.float-image img { 
	max-width: 400px;
}

#product-sell.founder-story { 
	background: #148f96;
}

#product-sell.founder-story p { 
	color: #fff;
}

#product-sell.founder-story .inner .half { 
	padding: 0 0 40px;
}

#product-sell .inner .half:nth-child(1) {
	*padding-right: 40px;
}

#product-sell .inner .half img { 
	width: 100%;
	height: auto;
}

#product-sell .slider { 
	width: 100%;
}

#product-sell .slider span { 
	font-size: 2rem;
	line-height: 2rem;
	font-weight: 600;
	text-align: center;
    text-transform: uppercase;
    letter-spacing: 4px;
    padding: 0;
    margin: 0;
}

.centre-title { 
	text-align: center;
	padding: 40px 0;
}

.slider .slick-slide img { 
	margin: 0 auto !important;
	max-width: 600px;
}

.checklist { 
	background-image: url(img/bg-checklist.jpg);
	background-repeat: no-repeat;
	background-position: cover;
	width: 100%;
}

.checklist ul {
	width: 50%;
	columns: 2;
	-webkit-columns: 2;
	-moz-columns: 2;
	margin: 0 auto;
}

.checklist ul li { 
	width: 300px;
	font-size: 2rem;
	color:#148f96;
	font-weight: 600;
	padding-left: 10px;
	list-style-image: url(img/check.png);
}

.price { 
	display: block;
	color: #148f96;
	font-weight: 700;
	font-size: 2rem;
	margin-bottom: 40px;
}

.product-highlight { 
	display: block;
	text-align: center;
	flex-direction: column;
}

.product-highlight img { 
	width: 400px !important;
}

.add-product span { 
	display: block;
	width: 100%;
	text-align: center;
	font-weight: 600;
	color:#2d3b51;
    font-size: 2rem;
    line-height: 2rem;
    text-transform: uppercase;
    letter-spacing: 4px;
    padding: 0;
    margin: 0;
    padding: 30px 0 20px;
}

#product-sell .add-product .inner { 
	padding: 0 0 40px;
}

#comp-table {
	width: 100%;
}

#comp-table .inner { 
	width: 60%;
	margin: 0 auto;
}

#comp-table .inner .comp-intro {
	display: block;
	width: 60%;
	margin: 0 auto;
	text-align: center;
}

.tablepress tfoot th, .tablepress thead th { 
	background-color: #f9f8f1 !important;
	font-size: 1.4rem;
	text-align: center !important;
}

#tablepress-1 .column-1 { 
	font-size: 1.4rem !important;
}

#tablepress-1 .column-2,
#tablepress-1 .column-3 { 
	text-align: center;
}

#tablepress-1 tbody tr {
	height: 60px;
}

#tablepress-1 tbody tr td {
	vertical-align: middle;
}







#page-wrapper { 
	width: 100%;
	background: #f9f8f1;
	text-align: center;
}

#page-wrapper .inner { 
	max-width: 1400px;
	margin: 0 auto;
	padding-bottom: 10px;
}

#page-wrapper.single-article .inner h2 { 
	line-height: 2.8rem;
}

#page-wrapper.single-article .article-content { 
	text-align: left;
	width: 75%; 
	margin: 0 auto;
	margin-top: 40px;
}

#page-wrapper.single-article .article-content .article-image { 
	margin-bottom: 40px;
    width: 600px;
    height: 400px;
    margin: 0 auto;
}







#course-modules { 
	width: 100%;
	background:#f9f8f1;
}

#course-modules .inner { 
	max-width: 1400px;
	margin: 0 auto;
	padding: 40px 0;
}

#course-modules .inner .tab-content-container { 
	width: 60%;
	margin: 0 auto;
	text-align: left;
}

#course-modules .inner .tab-content-container ul {
	font-size: 1.4rem;
}

#course-modules .inner .tab-content-container ul li {
	margin-bottom: 10px;
}

#course-modules .course-info { 
	width: 60%;
    text-align: left;
    margin: 0 auto;
}

.courses-header { 
	text-align: center;
}

#tabs .tab-in {
	display: none;
}

#tabs { 
	text-align: center;
}

#tabs section {
  display: none;
  padding: 20px 0 0;
  *border-top: 1px solid #ddd;
}

#tabs .tab-lab {
  display: inline-block;
  margin: 0 0 -1px;
  padding: 15px 25px;
  font-size: 1.4rem;
  font-weight: 600;
  text-align: center;
  color: #148f96;
  border: 1px solid transparent;
}

#tabs .navy { 
	background:#2d3b51 !important;
	color:#fff;
}

#tabs .teal { 
	background:#148f96 !important;
	color:#fff;
}
#tabs .yellow { 
	background:#f7cd46 !important;
	color:#fff;
}


#tabs label:before {
  font-family: fontawesome;
  font-weight: normal;
  margin-right: 10px;
}


#tabs .tab-lab:hover {
  color: #f7cd46;
  cursor: pointer;
}

#tabs input:checked + label {
	color: #fff;
    background: #148f96;
    border: 1px solid #ddd;
    font-size: 1.4rem;
    border-bottom: 2px solid #148f96;
}

#tabs #tab1:checked ~ #content1,
#tabs #tab2:checked ~ #content2,
#tabs #tab3:checked ~ #content3,
#tabs #tab4:checked ~ #content4,
#tabs #tab5:checked ~ #content5,
#tabs #tab6:checked ~ #content6 {
  display: block;
}


.thumbnail { 
	text-align: center;
}

.thumbnail img { 
	max-width: 400px;
	height: auto;
}






#contact-form p { 
	width: 60%;
	margin: 0 auto;
	padding: 10px 0;
}

.contact-form,
.registration-form { 
	width: 50%;
	margin: 0 auto;
}

.contact-form ul,
.contact-form ul li,
.registration-form ul,
.registration-form ul li { 
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.contact-form ul,
.registration-form ul { 
	text-align: left;
}

.contact-form ul li,
.registration-form ul li { 
	margin-top: 20px;
}

.contact-form input, 
.contact-form textarea,
.registration-form input,
.registration-form textarea { 
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	*background: #f9f8f1;
	background: none;
	border: solid 1px #999;
}

.contact-form label,
.registration-form label { 
	color:#148f96;
	font-size: 1.4rem;
	font-weight: 600;
}

.contact-form input[type="submit"],
.registration-form input[type="submit"] { 
    background: #f7cd46;
    width: auto;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 1.4rem;
    font-weight: 700;
    padding: 15px 25px;
    color: #2d3b51;
    border-radius: 10px;
    border: none;
    margin-top: 20px;
}

.registration-form .micro-labels div label,
.check-label .gfield_label { 
	display: none;
}









#article-listing { 
	width: 100%;
	background: #f9f8f1;
}

#article-listing .inner { 
	max-width: 1400px;
	margin: 0 auto;
	padding: 30px 0;
	display: flex;
	flex-flow: row wrap;
}

#article-listing .article-post { 
	flex: 1 0 33.3333%; 
}

#article-listing .article-post .inner-pad { 
	padding: 0 20px;
}

#article-listing .article-post .article-image { 
	width: 100%;
	height: 300px;
	position: relative;
}

#article-listing .article-meta h4 { 
	padding: 20px 0;
}

#article-listing .article-meta h4 a { 
	color:#148f96;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1rem;
}






footer { 
	width: 100%;
	background:#f5f5f5;
}

footer .inner { 
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	align-content: center;
	justify-content: center;
}

footer .footer-social,
footer .footer-nav { 
	flex-basis: 25%;
	padding-top: 60px;
}

footer .footer-social a { 
	font-size: 2rem;
	color:#2d3b51;
}

footer .footer-nav { 
	text-align: right;
}

footer .footer-logo { 
	text-align: center;
	padding: 30px 0;
	flex-grow: 2;
}
   
footer ul.menu,
footer ul.menu li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

footer ul.menu li  {
	display: inline-block;
}

footer ul.menu li a {
	color: #2d3b51;
	font-size: 1rem !important;
}


   
   
      
   

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Hide visually and from screen readers
 */

.hidden {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

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

	.inner { 
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 20px;
	}
	
	#home-header .header-text { 
		width: 50%;
	}

}


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

	.inner { 
		padding: 0 20px;
	}

}

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

	
	
	h2 { 
		font-size: 2rem;
		line-height: 2rem;
		padding: 40px 0 0;
	}
	
	h3 { 
		line-height: 2rem;
	}
	
	
	h1.header-title { 
		font-size: 2rem;
	}
	
	h2.header-subtitle { 
		font-size: 2rem;
		line-height: 2rem;
	}
	
	h3.shop-subtitle { 
		font-size: 2rem;
		line-height: 2rem;
		width: 90%;
	}
	
	p { 
		font-size: 1rem;
	}
	
	.half h3,
	.half p {
		padding: 0 20px;
	}
	
	

	header .inner,
	footer .inner { 
		flex-direction: column;
	}
	
	header .header-social, header .header-shop,
	footer .footer-social, footer .footer-nav { 
		flex-basis: 100%;
		text-align: center;
		padding-top: 20px;
	}
	
	footer .footer-nav { 
		padding-bottom: 30px;
	}
	
	header .header-shop { 
		padding-bottom: 20px;
	}
	
	header .header-logo,
	footer .footer-logo { 
		padding: 20px 0;
	}
	
	#home-header { 
		height: auto;
	}
	
	#home-header .inner { 
		padding-bottom: 20px;
	}
	
	#home-header .header-text { 
		position: relative;
		transform: none;
		top: 0;
		left: 0;
		width: 100%;
	}
	
	#home-header .header-text .inner { 
		padding: 20px;
	}
	
	#home-header .product-cta { 
		float: none;
	}
	
	#home-header .product-cta { 
		padding-right: 0;
		padding-top: 0;
	}
	
	#home-header .product-cta img { 
		max-width: 50%;
	}
	
	
	
	#hc-club .club-cta{ 
		flex-direction: column-reverse;
	}
	
	#hc-club .club-cta .hc-text, #hc-club .club-cta .hc-image { 
		flex: 1 0 100%;
	}
	
	
	
	img.courses { 
		width: 70%;
		padding-top: 20px;
	}
	
	
	#articles .inner .article-intro, #articles .inner .article-highlights { 
		text-align: center;
	}
	
	#articles .article-post { 
		flex-direction: column;
	}
	
	#articles .article-image { 
		display: block;
		flex: none;
		width: 100%;
		height: 200px;
	}
	
	#articles .article-meta { 
		width: 90%;
	}
	
	#articles .inner p { 
		padding-right: 0;
		padding: 0 20px 20px;
	}
	
	
	
	#shop-landing .inner { 
		padding: 0 10px 10px;
	}
	
	#shop-landing .product-row:nth-child(even) { 
		flex-direction: column;
	}
	
	
	
	#testimonials .inner { 
		padding: 10px 0;
	}
	
	
	#testimonials .inner p,
	.centre-title p { 
		width: 80%;
	}
	
	.checklist ul {
		width: 90%;
	}
	
	.checklist ul li { 
		font-size: 1.4rem;
	}
	
	
	
	#what-we-do .inner p, #how-we-do-it .inner p { 
		width: 90%;
		padding: 20px 0;
	}
	
	#what-we-do .inner, #shop-products .inner, #how-we-do-it .inner { 
		padding: 10px 0;
	}
	
	#what-we-do, #shop-products, #how-we-do-it { 
		background-image: none;
	}
	
	
	#article-listing .article-post { 
		flex: 1 0 100%;
	}
	
	#page-wrapper.single-article .article-content .article-image { 
		height: 200px;
	}
	
	
	#product-sell .inner { 
		flex-direction: column;
	}
	
	#product-sell .inner .half { 
		padding: 20px 0;
	}
	
	#what-we-do .three-modules .mod-col, #shop-products .three-modules .mod-col, #how-we-do-it .three-modules .mod-col { 
		flex: 1 0 100%;
	}
	
	#product-page-header .inner p { 
		width: 95%;
	}
	
	
	#contact-form p { 
		width: 90%;
	}
	
	#contact-form .contact-form { 
		width: 90%;
	}
	
	
	#product-sell .slider span { 
		line-height: 2rem;
		text-align: center;
	}
	
	.slider .slick-slide img {
		width: 100%;
		height: auto;
	}
	
	#comp-table .inner { 
		width: 95%;
	}
	
	
	
	#course-modules .inner .tab-content-container,
	#course-modules .inner .course-info { 
		width: 95%;
	}
	
	
	
	.contact-form,
	.registration-form { 
		width: 90%;
	}
	
	
	
	#articles .inner { 
		flex-direction: column;
	}
	
	
	.newsletter-signup input { 
		width: 80%;
	}
	
	.newsletter-signup input[type="submit"] { 
		width: 85%;
		margin-bottom: 40px;
	}


}



@media only screen and (min-width: 35em) {
  /* Style adjustments for viewports that meet the condition */
}

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    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) ")";
  }
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

