/*
 Theme Name:   TCC: GeneratePress Child Theme
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* GLOBAL
--------------------------------------------*/
 :root {
	--brand1: #01aff3;
	--brand2: #01ae01;
	--brand3: #aa72d5;
	--light: #f6f6f6;
	--dark: #666;
}
.bg-brand1{background-color: var(--brand1);}
.bg-brand2{background-color: var(--brand2);}
.bg-dark{background-color: var(--dark);}
.bg-light{background-color: var(--light);}
.txt-brand1{color: var(--brand1);}
.txt-brand2{color: var(--brand2);}
.txt-brand3{color: var(--brand3);}
.txt-dark{color: var(--dark);}
.txt-light{color: var(--light);}

.section{padding: 40px 0;}
/* Responsive  --------------------- */
	@media only screen and (max-width: 768px){
		.section{padding: 10px 0;}
	}
/*----------------------------------------------*/

.forcewidth {
	box-sizing: border-box;
	position: relative;
	width: 100vw;
	left: calc(-50vw + 50%);
}
.forcewidth-in-grid{
	position: relative;
}
.forcewidth-in-grid:before {
	content: "";
	width: 100vw;
	position: absolute;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	top: 0;
	bottom: 0;
	background-color: inherit;
	z-index: -1;
}

h1,h2, a{
	color: var(--brand3);
}

/* add div class around element
------------------------------------------- */
.videoWrapper {
	position: relative;
	padding-bottom: 51%; 
	padding-top: 25px;
	height: 0;
	margin-bottom: 30px;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*HEADER
--------------------------------------------*/
body{
	background-image: url(images/page-bg.jpg);
	background-repeat: no-repeat;
	background-position: right top;
}
/* Responsive  --------------------- */
	@media only screen and (max-width: 1023px){
		body{
			background-image: none;
		}
	}
/*----------------------------------------------*/

#masthead{
	font-family: var(--font-display); 
}
.sticky-enabled .main-navigation.is_stuck{
	background-color: white;
}
nav#sticky-navigation.is_stuck{
	padding: 12px;
}
nav#sticky-navigation.is_stuck .site-logo img{
	width: 200px;
	height: auto;
}
.site-logo{
	/*max-width:80px;*/
}
.social-icon .fa{
	display: inline-block;
	margin-left: 8px;
	/*color: white;*/
	font-size: 36px;
}
.top-bar{
	border-bottom: 1px solid #d7d7d7;
}
.quickcart{
	text-align: right;
}
.quickcart a.cart-customlocation{
	background-color: var(--brand3) !important;
	border: 1px solid var(--brand3) !important;
	text-transform:uppercase;
	font-size:13px;
	display:inline-block;
	line-height:1;
	padding: 8px 12px;
	border-radius: 5px;
	color: #fff;
}
.quickcart a.cart-customlocation:hover{
	background-color: white !important;
	border: 1px solid var(--brand3) !important;
	color: var(--brand3) !important;
}

/* Responsive  ----------------------------------- */
	@media only screen and (max-width: 767px){
		.top-bar .inside-top-bar aside.widget.widget_product_search{
			display: none;
		}
		.quickcart{
			text-align: center;
		}
	}
/*-------------------------------------------------*/

 


/*NAVIGATION
--------------------------------------------*/
ul.menu > .current_page_item > a{
	border-bottom:solid 2px white;
}
.main-navigation ul#menu-main-menu{
	position: relative;
}
.main-navigation ul#menu-main-menu li.shop-menu{
	position: static;
}
.main-navigation ul#menu-main-menu li.shop-menu ul.sub-menu{
	width: 100%;
}
.main-navigation ul#menu-main-menu li.shop-menu ul.sub-menu li{
	float: left;
	min-width: 200px;
	width: auto;
}
.dropdown-hover .main-navigation:not(.toggled) ul li:hover > ul {
	left: 0;
	opacity: 1;
	transition-delay: 150ms;
	pointer-events: auto;
	height: auto;
	overflow: visible;
}
button.menu-toggle{
	position: relative;
	z-index: 999;
}


/* TABLETS & Larger ------------------------- */
	@media only screen and (max-width: 768px){
		#menu-main-menu{
			background: #FFF;
			border: solid 1px silver;
			max-width: 93%;
		}	
	}
/*----------------------------------------------*/



/*SEARCH BOX
--------------------------------------------*/
.woocommerce-product-search{
	position: relative;
	min-width: 100%;
}
.top-bar .woocommerce-product-search{
	position: relative;
	min-width: 300px;
}
.woocommerce-product-search button[type='submit']{
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	font-size: 12px;
	background-color: var(--brand3);
}
.woocommerce-product-search input.search-field{
	font-size: 12px;
}


/*PAGES
--------------------------------------------*/
/* ==== global ==== */
.page-banner{
	height: 35vh;
}
body.blog h2.entry-title{
	font-size: 17px;
	font-weight: 700;
	line-height: 1.2;
}
body.blog.post-image-above-header .inside-article .post-image {
	margin-bottom: 10px !important;
}
body.home.one-container #content.site-content{
	padding-bottom: 0;
	padding-top: 40px;
}

/* Responsive  ----------------------------------- */
	@media only screen and (max-width: 767px){
		body.home.one-container #content.site-content{
			padding-top: 0;
		}
		body.home h2, body.home h5{
			text-align: center;
		}

	}
/*-------------------------------------------------*/


.gallery-item {
	width: auto;
}

/* ==== reviews page ===== */
.tcc-reviews .item{
	margin-bottom: 50px;
	max-width: 80%;
}
.tcc-reviews .item .author{
	font-weight: 600;
	color: var(--brand3);
}
.tcc-reviews .item .body{
	color: #666;
	position: relative;
	font-style: italic;
}
.tcc-reviews .item .body::before {
	content: "\2018\2018";
	font-size: 178px;
	color: #ededed;
	position: absolute;
	font-family: serif;
	left: -50px;
	top: -72px;
	z-index: -1;
	letter-spacing: -14px;
}
.tcc-reviews .item .title{
	font-style: italic;
	font-size: 14px;
}


/* ==== frontpage ==== */
.products-block h5{
	font-family: "Nunito", sans-serif;
	font-weight: 500;
	font-size: 28px;
	color: var(--brand3);
}

.products-block ul.product_list_widget{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
		    justify-content: space-between;
	margin-left: 0;
}
.products-block ul.product_list_widget > li{
	list-style: none;
	padding: 16px;
	background-color: white;

}
.products-block.show-4 ul.product_list_widget > li{
	width: 23.5%;
}
/* RESPONSIVE  --------------------- */
	@media only screen and (max-width: 767px){
			.products-block ul.product_list_widget{
				display: block;
			}
			.products-block.show-4 ul.product_list_widget > li{
				width: 100%;
				text-align: center;
			}
			.products-block ul.product_list_widget > li{
			margin-right: 0;
			margin-bottom: 20px;
		}
	}
/*----------------------------------------------*/
.products-block .product_list_widget img,
.products-block .product_list_widget .product-title{
	display: block;
}
.products-block .product_list_widget img.attachment-woocommerce_thumbnail{
	margin: 0 auto 20px auto;
	max-height: 320px;
	width: auto !important;
}
.products-block .product_list_widget > li .star-rating{
	display: none;
}
.products-block .product_list_widget .woocommerce-Price-amount{
	font-size: 28px;
	color: var(--brand3);
}
.products-block .product_list_widget del .woocommerce-Price-amount{
	color: #999;
	font-size: 18px;
}
.woocommerce ul.products li.product .woocommerce-loop-category__title{
	text-align:center;
}


/*FOOTER
--------------------------------------------*/
.site-footer{
	background-color: var(--light);   
}
.copyright-bar{
	font-size: 12px;
}
.footer-widget-4{
	text-align: right;
}

/* Responsive  ----------------------------------- */
	@media only screen and (max-width: 767px){
		.inside-footer-widgets{
			text-align: center !important;
		}
	}
/*-------------------------------------------------*/




/*SLIDER
--------------------------------------------*/
.tcc-slick-slide .tcc-slide{
	height: 70vh;
	display: -webkit-box !important;display: -ms-flexbox !important; display: flex !important; 
	background-size: cover;
	background-position: center center;
}
.tcc-slick-slide .tcc-slide:before{
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0,0,0,0.3);
	z-index: 1;
}
.tcc-slick-slide .tcc-slide .tcc-slide-content{
	position: relative;
	z-index: 2;
	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;
	width: 800px;
	max-width: 90%;
	margin: 0 auto;
}
.tcc-slick-slide .tcc-slide-title{
	font-size: 60px;
	margin-bottom: 20px;
	color: white;
	line-height: 1.1;
	font-weight: 200;
}
.tcc-slick-slide .tcc-slide-body{
	font-size: 20px;
	margin-bottom: 20px;
	color: white;
	text-align: center;
}
.tcc-slick-slide .tcc-slide-button{
	
}

/*SITEWIDE CTA
--------------------------------------------*/
.sitewide-cta{
	padding:30px 0;
	background-color: var(--brand3);
	text-align: center;
	color: white;
}
.sitewide-cta #gform_2{
	display: flex;display: -webkit-box;display: -ms-flexbox;
	justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;
}
.sitewide-cta #gform_2 .gform_heading{
	display: none;
}
.sitewide-cta .gf_simple_horizontal li.hidden_label input {
	padding: 8px !important;
	border:none;
	border-radius: 5px;
}

/*GRAVITY FORMS GLOBAL
--------------------------------------------*/
.gform_wrapper .gf_simple_horizontal li.hidden_label input{
	margin-top: 0;
}

/* BUTTONS
--------------------------------------------*/
.button,
.elementor-button,
.woocommerce a.button,
.gform_button,
input[type="submit"]{
  background-color: var(--brand3) !important;
  border: 1px solid var(--brand3) !important;
  text-transform:uppercase;
  font-size:18px;
  display:inline-block;
  line-height:1;
  padding: 12px 20px;
  border-radius: 5px;
  color: #fff;
}
.button:hover,
.elementor-button:hover,
.woocommerce a.button:hover,
.gform_button:hover{
	background-color: white !important;
	border: 1px solid var(--brand3) !important;
	color: var(--brand3) !important;
}
.button-reverse{
  background-color: white !important;
  border: 1px solid white !important;
  color: var(--brand3) !important;
}
.button-reverse:hover{
  background-color: var(--brand3) !important;
  color: white !important;
  border: 1px solid white !important;
}

a.button.subscribe-button,
.woocommerce a.button.subscribe-button{
	font-size: 12px;
	margin: 0 0 0 12px;
	display: inline-block;
}

/* woocommerce buttons */
	/* --> mobile view */
	@media only screen and (max-width: 768px){
		body.woocommerce a.button.nmgr-add-to-wishlist-button{
			font-size: 10px;
			padding: 5px 8px;
			display: inline-block !important;
		}
	}


/* TESTIMONIALS
--------------------------------------------*/
.tcc-testimonials .item{
	padding:2vw;
	text-align: center;
}
.tcc-testimonials .title{
	font-size:26px;
	font-weight:600;
}
.tcc-testimonials .body{
	font-size:16px;
}
.tcc-testimonials .author{
	font-size:16px;
	font-weight:600;
}

/* CATEGORY LISTS
--------------------------------------------*/
.elementor-widget-wp-widget-woocommerce_product_categories h5{
	text-transform: uppercase;
	padding-top: 45px;
}
h4.menu-title{
	margin-bottom: 0;
}
ul#menu-category-menu,
.home-category-block ul.product-categories{
	margin: 0 -15px 50px -15px;
	padding: 10px;
	font-size: 14px;
}
ul#menu-category-menu{
	/*border-bottom: 1px solid #E0E0E0;*/
	/*border-top: 1px solid #E0E0E0;*/
}
ul#menu-category-menu li,
.home-category-block ul.product-categories li{
	list-style: none;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 1.1;
	display: inline-block;
	margin-right: 5px;
}
ul#menu-category-menu li a,
.home-category-block ul.product-categories li a{
	margin-bottom: 8px;
	display: inline-block;
	color: var(--brand3);
	padding: 5px 16px;
	border-radius: 5px;
	border: 1px solid #E0E0E0;
}
ul#menu-category-menu li a:hover,
.home-category-block ul.product-categories li a:hover{
	border: 1px solid ;
	border-color: var(--brand3);
	background-color: var(--brand3);
	color: white;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link > :not(:first-child) {
	margin-top: 5px !important;
}

/* Responsive  ----------------------------------- */
	@media only screen and (max-width: 767px){
		h4.menu-title{
			cursor: pointer;
			background-color: var(--brand3) !important;
			border: 1px solid var(--brand3) !important;
			text-transform: uppercase;
			font-size: 13px;
			display: inline-block;
			line-height: 1;
			padding: 8px 12px;
			border-radius: 5px;
			color: #fff;
		}
		ul#menu-category-menu{
			height: 0;
			overflow: hidden;
			opacity: 0;
			-webkit-transition: all 0.5s ease;
			transition: all 0.5s ease;
		}
		ul#menu-category-menu.mobile-friendly{
			height: auto;
			opacity: 1;
		}
		ul#menu-category-menu li{
			display: block;
			width: 48%;
			margin-right: 1%;
			float: left;
		}
		ul#menu-category-menu li a{
			padding: 15px 8px;
			display: block;
			margin-bottom: 8px;
		}
	}
/*-------------------------------------------------*/




/* WOOCOMMERCE
--------------------------------------------*/
/* ==== GLOBAL ===== */
.woocommerce-message {
	background-color: var(--brand3) !important;
}






/* ==== product page ===== */
body.single-product.woocommerce div.product div.images .flex-control-thumbs {
	padding-top: 5px;
}
body.single-product.woocommerce div.product div.images .flex-control-thumbs img {
	transform: scale(0.95);
}
body.single-product.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: block;
}
body.single-product.woocommerce ul.products li.product, 
.woocommerce-page ul.products li.product{
	    -ms-flex-line-pack: justify;
	        align-content: space-between;
}
body.single-product .related.products{
	padding-top: 40px;
	margin-top: 100px;
	border-top: 1px solid var(--brand3);
}


/* ==== checkout ===== */
body.woocommerce-checkout .col2-set,
#customer_details + #wc_checkout_add_ons, 
#order_review, #order_review_heading {
	float: none !important;
	width: 100% !important;
}
body.woocommerce-checkout .col-1,
body.woocommerce-checkout .col-2{
	box-sizing: border-box;
	margin-bottom: 30px !important;
}
.woocommerce .col2-set .col-2{
	padding: 20px !important;
	border: solid 1px silver;
}

body.woocommerce-checkout .woocommerce{
	max-width: 800px;
}
body.woocommerce-checkout .woocommerce h3{
	text-transform: uppercase;
}
body.woocommerce-checkout .woocommerce h3 span{
	text-transform: none;
}
body.woocommerce-checkout .woocommerce,
body.woocommerce-checkout .woocommerce input,
body.woocommerce-checkout .woocommerce textarea{
	font-size: 14px;
}
#order_review_heading {
	margin-top: 50px;
}

/* New header CSS */

.top-bar-align-left .inside-top-bar>.widget:nth-child(even) {
	float: right;
	margin: 9px;
	text-transform: uppercase;
	font-weight: 600;
}

.inside-header {
	display: flex;
}

.site-logo {
	flex: 0 0 30%;
	display: flex;
	order: -1;
}

.header-widget {
	flex: 0 0 70%;
	display: flex;
	order: 1;
	overflow: hidden;
	max-width: 100%;
	justify-content: space-around;
	align-items: center;
	float: unset;
}
.header-widget .widget {
	padding: 0;
	margin-bottom: 0;
}

aside#woocommerce_product_search-4 {
	width: 50%;
}

.quickcart {
	position: relative;
}

.dashicons-search.mgc-search {
	display: none;
}

.nav-aligned-center .main-navigation ul {
	display: inline-block;
}

.inside-wc-product-image {	
	min-height: 300px;
	max-height: 300px;
}

.woocommerce ul.products li.product a img {
	max-height: inherit;
}

.main-navigation .main-nav ul li a {
    padding-left: 12px;
}

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

	#menu-main-menu {
		background: #FFF;
		border: none;
		max-width: 100%;
		padding-top: 5px;
	}

	#menu-megantic-menu {
		background: #FFF;
		border: solid 1px silver;
		max-width: 100%;
		margin: 10px;
		max-height: calc(99vh - 116px);
		overflow: auto;
	}

	.nav-aligned-center .main-navigation ul {
		display: none;
	}

	.quickcart {
		text-align: right;
	}

	aside#woocommerce_product_search-4 {
		display: none;
	}

	.header-widget {
		justify-content: flex-end;
	}

	.inside-header>:not(:last-child):not(.main-navigation) {
		margin-bottom: 0px;
	}

	.dashicons-search.mgc-search {
		display: block;
		position: absolute;
		font-size: 30px;
		left: -40px;
	}

}

@media only screen and (max-width: 576px){
	
	.site-logo {
		flex: 0 0 100%;
		display: flex;
		order: -1;
		justify-content: center;
	}

	.inside-header {
		display: flex;
		flex-wrap: wrap;
	}

	.header-widget {
		justify-content: center;
		margin: 15px auto 0px !important;
	}

	p.h2_p {
		text-align: center;
	}

	.inside-wc-product-image {
		min-height: 180px;		
	}

	.woocommerce ul.products li.product a img {
		max-height: inherit;
	}

	.top-bar-align-left .inside-top-bar>.widget:nth-child(even) {
		display: none;
	}
}


#site-navigation .quickcart-sticky {
	display: none;
}

#sticky-navigation .quickcart-sticky {
	display: block;
}

nav#sticky-navigation.is_stuck {
	padding: 0px;
}

nav#sticky-navigation.is_stuck .inside-navigation {
	padding: 12px; 
}

body.home.one-container #content.site-content {
	padding-bottom: 0;
	padding-top: 0px;
}

.one-container .site-content {
	padding-top: 40px;
	padding-right: 40px;
	padding-bottom: 30px;
	padding-left: 40px;
}

nav#sticky-navigation.is_stuck .site-logo img {
	width: 190px;
	height: auto;
}

/* Cleaning H tags*/


p.h2_p {
	color: var(--brand3);
	font-family: "Nunito", sans-serif;
	font-weight: 500;
	font-size: 28px;
	margin-bottom: 20px;
	line-height: 1.2em;
	text-transform: none;
}

.homepage_h1 {
	color: #7a7a7a;
	font-family: "Roboto", Sans-serif;
	font-weight: 400;
	font-size: 14px;
	text-transform: none;
	display: inline;
}

/* Mobile subcategories */

.btn_sub-clicker {
	background-color: transparent;
	cursor: pointer;
	display:block;
	color: var(--brand3);
	padding: 15px 15px;
	border-radius: 5px;
	border: 1px solid #E0E0E0;
	text-align: center;
}

.btn_sub-clicker:after {
	content: "\0025BC";
	padding-left: 5px;
	font-size: 15px;
}

li.btn_sub-clicker:after {
	content: " ";
	padding-left: 5px;
	font-size: 15px;
}

.mob_subcat-list {
	list-style: none;
	text-align: center;
	margin: 0 auto;
}

.mob_subcat-list li {
	margin: 10px auto;
}

.mob_show-subcat {    
	background-color: #ffffff;
	opacity: 0;
	position: absolute;
}

.btn_sub-clicker:focus+.hiddendiv ul {
	display: block;
}

.hidden {
	display: none;
}

input#mob_subcat-toggle:checked + label + div {	
	opacity: 1;
	transition: all 0.7s;
	position: relative;
}

input#mob_subcat-toggle:checked + .btn_sub-clicker:after {
	content: "\0025B2";
	padding-left: 5px;
	font-size: 15px;
}

/* Mega Menu */

.main-navigation ul#menu-megantic-menu li.nursery-menu {
	position: static;
}

.main-navigation ul#menu-megantic-menu li.nursery-menu ul.sub-menu {
	width: 400px;
}

.main-navigation ul#menu-megantic-menu li.nursery-menu ul.sub-menu li {
	float: left;
	min-width: 200px;
	width: auto;
}

/* OLD Gift Registry CSS */
/*
.page-id-48170 .entry-header h1 {
    text-transform: capitalize;
	    font-family: "Nunito", sans-serif;
    font-weight: 500;
	    font-size: 35px;
    line-height: 1em;
}

.filter-giftregistry #filter-giftregistry, #level_filter {
    height: 45px;
}

.page-id-48170 .search-result {
    margin-top: 10px !important;
}

.page-id-48170 .view-search-form {
    width: 80%;
    margin: 30px;
    text-align: center;
    float: middle;
}

.page-id-48170 .view a {
    font-size: 13px;
    margin-bottom: 10px;
    width: 95%;
    text-align: center;
}

*/

/* Megantic Gift Registry CSS */

.page-id-48170 .entry-header h1 {
    text-transform: capitalize;
	    font-family: "Nunito", sans-serif;
    font-weight: 500;
	    font-size: 35px;
    line-height: 1em;
}

.page-id-48170 .elementor-widget-text-editor .view a {
    color: #ffffff;
}

.page-id-48170 .elementor-widget-text-editor a {
    color: #aa72d5
}

.page-id-48170 .view-search-form {
    width: 33%;
    margin: 0 auto;
}
.view-search{
	background-size: cover !important;
    background-position: center !important;
    padding-top: 8% !important;
    background-image: url(https://www.kjessentials.com.au/wp-content/uploads/2020/06/Registry-Pic-Desktop.png) !important;
	padding-bottom: 8% !important;
}
@media only screen and (max-width: 768px) {
	.view-search{
	 background-image: url(https://www.kjessentials.com.au/wp-content/uploads/2020/06/Registry-Pic-FB-sml.png) !important;
	}
	.page-id-48170 .view-search-form {
    width: 50%;
    margin: 0 auto;
}
}

@media only screen and (max-width: 600px) {
    .page-id-48170 .view-search-form {
        width: 80%;
        margin: 0 auto;
  }
}
@media only screen and (max-width: 340px) {
    .page-id-48170 .view-search-form {
        width: 95%;
        margin: 0 auto;
  }
}
.cart{
  width: 100% !important;	
}
.woocommerce div.product form.cart div.quantity{
	    margin-right: 30px !important;
}
.button-add-giftregistry{
	position: relative;
    right: 25px;
    display: inline-block;
    bottom: 112px;
    float: right;
    padding: 0 !important;
}
button#add-to-giftregistry-list{
	padding: 14px 20px;
}
@media only screen and (max-width: 1150px) {
	.button-add-giftregistry{
		right: 0;
	}
	button#add-to-giftregistry-list{
	padding: 14px 10px;
}
}
@media only screen and (max-width: 1085px) {
	.woocommerce div.product form.cart div.quantity {
    margin-right: 15px !important;
}
}
@media only screen and (max-width: 1023px) {
	.button-add-giftregistry {
    bottom: 0;
    float: none;
}
}
@media only screen and (max-width: 768px) {
	.button-add-giftregistry {
    bottom: 112px;
    left: 300px;
}
}
@media only screen and (max-width: 522px) {
	.button-add-giftregistry {
    bottom: 0;
    left: 0;
}
}