/*
Theme Name: Nonfiction
Theme URI: https://nonfictionstudios.io
Description: Custom child theme developed for Bourke Street Bakery
Author: Nonfiction Studios 
Author URI: https://nonfictionstudios.io
Version: 1.0
Text Domain: hiroshi
Template: hiroshi
*/


/*********   Typography   **********/

@import url("https://use.typekit.net/zjx4bog.css");

* {
font-family: neue-haas-grotesk-display, sans-serif;
letter-spacing: 0 !important;	
color: #5B4126;
font-weight: 600 !important;
text-transform: uppercase;
}

h1, h1 a, h2, h2 a {
font-family: apotek-comp, sans-serif !important;
line-height: 0.9 !important;
}

.qodef-e-info a, h6 a, h6  {
	color: #5B4126 !important;
	font-weight: 600;
}

p {
	max-width: 800px;
	text-transform: none;
}

.qodef-m-nav-label, .qodef-m-nav-title, .qodef-tabbed-portfolio .qodef-category-holder a  {
	text-transform: uppercase !important;
	color: #5B4126 !important; 
}

/*********   Typography   **********/



.sub-menu .menu-item-has-children{
	padding-bottom: 30px !important;
}


/******* Post  Migration Temp   *******/

#qodef-page-mobile-header-inner:has(.qodef--opened){
	background-color: #fff;
}
/******* Post  Migration Temp   *******/




/************   Misc   ************/

.elementor-widget-wrap:has(.elementor-widget-hiroshi_core_pricing_table){
	overflow:hidden
}

.e-loop-item.partners .elementor-column {
        width: 100%;
}

.e-loop-item .elementor-column {
        width: unset;
}

.e-loop-item .elementor-inner-column:has(.elementor-widget-heading){
	flex: 1;
}

.e-loop-item h4{
	       min-height: 54px;
        margin-bottom: 0;
        margin-top: 12px;
}

.e-loop-item .elementor-widget-heading {
	margin-bottom: 0 !important;
}

.e-loop-item .elementor-icon-list-items{
	margin-bottom: 0;
}

.e-loop-item .elementor-widget-image{
	margin-bottom: 5px;
}

.sub-menu .elementor-widget-post-info{
    margin: 0 0 5px;
}

.sub-menu:has(.elementor-top-section) {
	padding-bottom: 0 !important;
}

.sub-menu:has(.external-products){
	padding-bottom: 20px !important;
}

/************   Misc   ************/



/******  External Products  *******/

.external-products .elementor-inner-section {
	border-bottom: 1px solid #5B4126 !important;
}

.external-products .elementor-inner-section .price {
	margin: 0 !important
}

.external-products .elementor-button span{
	 position: relative;
    --qodef-underline-position-y: calc(90% - 1px);
    --qodef-underline-height: 1px;
    background-repeat: no-repeat;
    background-image: linear-gradient(90deg, currentColor 0, currentColor 100%);
    background-position: 100% var(--qodef-underline-position-y);
    background-size: 100% var(--qodef-underline-height);
}

.external-products .elementor-button:hover span {
    animation: qode-inline-underline-initial-hover .8s cubic-bezier(.57,.39,0,.86) 1 forwards;
}

.external-products .elementor-button {
		padding: 0 !important;
    background-color: transparent;
	  font-size: 16px;
    line-height: 1.6875em;
}

.external-products .elementor-page-title{
	border-top: 1px solid #5B4126 !important;
}

.external-products .elementor-widget-button{
	text-align: end;
	margin-bottom: 0;
}

.external-products .elementor-widget-wrap{
	align-content: center !important;
  align-items: center !important;
}

@media screen and (min-width: 0) and (max-width: 767px) {
.qodef-pricing-table .qodef-m-inner {
    padding: 0 !important;
}	
}

/******  External Products  *******/


/*******   Ecommerce Temp  ********/

@media screen and (min-width: 0) and (max-width: 767px) {
.qodef-pricing-table .qodef-m-inner {
    padding: 0 !important;
}	
}
.sub-menu .qodef-pricing-table h4{
	font-size: 18px;
  line-height: 1.27778em;
}
	
/*******   Ecommerce Temp  ********/



/******   Template Sections   *******/

.elementor-widget-wrap:has(.elementor-widget-hiroshi_core_single_image){
	min-height: 30vw;
}

.elementor-column-gap-default:has(.elementor-widget-hiroshi_core_single_image){
	gap: 20px !important;
}

.elementor-section:has(.elementor-widget-hiroshi_core_single_image) .elementor-container{
	flex-wrap: unset;
}

.elementor-top-column:has(.elementor-widget-hiroshi_core_single_image), .elementor-widget-hiroshi_core_single_image, .elementor-widget-hiroshi_core_single_image .elementor-widget-container, .qodef-shortcode.qodef-single-image{
	height: 100%;
}

.qodef-shortcode.qodef-single-image .qodef-m-image{
	display: flex;
	flex-flow: row;
	height: 100%;
}

.qodef-shortcode.qodef-single-image .qodef-m-image img{
  object-fit: cover;
  flex: 1;
  overflow: hidden;
}

.product-large, .product-large .elementor-widget-container, .qodef-pricing-table{
	height: 100%;
}

.qodef-pricing-table .qodef-m-content{
	margin: 0 5px 10px;
}

.product-large .qodef-m-inner {
	display: flex;
	flex-flow: column;
	height: 100%;
}

.product-large .qodef-m-inner .qodef-m-image {
	flex: 1;
	display: flex;
}
.product-large .qodef-m-inner .qodef-m-image img{
  object-fit: cover;
  flex: 1;
  overflow: hidden;
	aspect-ratio: 1 /1;
}

.qodef-pricing-table .qodef-button span{
	width: min-content;
    text-wrap: nowrap;
}

.qodef-pricing-table .qodef-m-price{
	padding-right: 20px
}

.qodef-pricing-table .qodef-m-bottom{
	flex-wrap: wrap;
	row-gap: 10px;
}

.qodef-pricing-table .qodef-m-top{
	padding: 15px 5px !important;
}

.elementor-widget-hiroshi_core_pricing_table h4{
	min-height: 60px;
}

.elementor-col-33:has(.elementor-widget-hiroshi_core_pricing_table){
		flex:	1
	}	

@media screen and (min-width: 0) and (max-width: 767px) {
.elementor-widget.elementor-widget-hiroshi_core_pricing_table{
    margin-block-end: 20px;
}
	.elementor-col-33:has(.elementor-widget-hiroshi_core_pricing_table){
		flex:	unset;
	}	
	.elementor-widget-hiroshi_core_pricing_table h4{
	min-height: 40px;
}
}

@media screen and (min-width: 0) and (max-width: 1740px) {
.responsive-large:has(.elementor-widget-hiroshi_core_pricing_table){
    display: none;
}
}

@media screen and (min-width: 0) and (max-width: 767px) {
.elementor-section:has(.elementor-widget-hiroshi_core_single_image) .elementor-container{
	flex-wrap: wrap;
}
}

/******   Template Sections   *******/



/*******   Responsive CPT   ********/

.qodef-content-grid {
        width: 100% !important;
    }
}

@media screen and (min-width: 0) and (max-width: 1024px) {
.qodef-blog.qodef-grid .qodef-blog-item, .archive .qodef-blog-item, .blog .qodef-blog-item
	{
        width: 100% !important;
				clear: unset !important;
    }
}
@media screen and (min-width: 1025px) and (max-width: 1440px) {
.qodef-blog.qodef-grid .qodef-blog-item, .archive .qodef-blog-item, .blog .qodef-blog-item{
        width: 50% !important;
				clear: unset !important;
    }
}

@media screen and (min-width: 1441px) and (max-width: 1800px){
	
.qodef-blog.qodef-grid .qodef-blog-item, .archive .qodef-blog-item, .blog .qodef-blog-item {
        width: 33.33% !important;
				clear: unset !important;
    }	
}

@media screen and (min-width: 1801px) and (max-width: 2200px){
.qodef-blog.qodef-grid .qodef-blog-item, .archive .qodef-blog-item, .blog .qodef-blog-item{
        width: 25% !important;
				clear: unset !important;
    }
}
@media screen and (min-width: 2201px) and (max-width: 2500px){
.qodef-blog.qodef-grid .qodef-blog-item, .archive .qodef-blog-item, .blog .qodef-blog-item{
        width: 20% !important;
				clear: unset !important;
    }
}
@media screen and (min-width: 2501px){
.qodef-blog.qodef-grid .qodef-blog-item, .archive .qodef-blog-item, .blog .qodef-blog-item{
        width: 16.666% !important;
				clear: unset !important;
    }
}

/*******   Responsive CPT   ********/




/****   Templates / Homepage   *****/

.page-template-page-home-hero .qodef-page-title {
	display: none;
}

.page-template-page-home-hero #qodef-page-inner{
	margin-top: 0 !important;
	padding: 0;
}

.page-template-page-home-hero .elementor-top-section{
	margin: 0 50px
}

.page-template-page-home-hero .hero-section{
	margin: 0;
}

.page-template-page-home-hero .elementor-widget-wrap{
	padding: 0 !important
}

.elementor-top-section{
	padding: 80px 0;	
}

.hero-section .elementor-container{
	padding:0 50px;
}

.relative-section{
	position: absolute;
	width: 30% !important;
}

.elementor-widget-hiroshi_core_info_section {
	border-top: 1px solid #5B4126;
	padding: 20px 0;
}

.elementor-widget-hiroshi_core_info_section:last-of-type {
	border-bottom: 1px solid #5B4126;
}

.locations-list-wrap{
	display: flex;
	align-items: center;
	border-top: 1px solid #5B4126;
}

.locations-list-wrap:last-of-type{
	border-bottom: 1px solid #5B4126;
}

.locations-list-wrap .locations-list-title, 
.locations-list-wrap .locations-list-details, .locations-list-address{
	flex: 1;
	display: flex;
	align-items: center;
	column-gap: 20px;
}

.locations-list-read-more{
	margin: 10px 0;
}

.elementor-widget-locations_list .qodef-info-section .qodef-button  {
	margin-top: 0;
}

.elementor-inner-section .elementor-element-populated{
	  align-content: flex-end;
    align-items: flex-end;
}

.elementor-element-populated:has(.vertical-heading-section){
	flex-flow: column;
	display: flex;
	flex: 1;
}

.elementor-widget-locations_list .elementor-widget-hiroshi_core_info_section{
	margin-block-end: 0 !important;
	padding: 20px 10px;
}

.elementor-widget-horizontal_heading_section.vertical-heading-section{
	display:flex;
	flex: 1;
}

.elementor-widget-horizontal_heading_section .elementor-widget-container {
	display: flex;
	align-items: end;
	margin-bottom: 20px;
}

.elementor-widget-horizontal_heading_section .elementor-widget-container p{
	margin-bottom: 0;
}

.elementor-widget-horizontal_heading_section .nonfiction-heading-wrap{
	flex: 1;
	padding-right: 80px;
}

.vertical-heading-section .elementor-widget-container{
	display: flex;
	flex-flow: column;
	align-items: start;
}

.vertical-heading-section .nonfiction-heading-wrap{
	flex: 1;
}

.elementor-widget-horizontal_heading_section h5, .elementor-widget-horizontal_heading_section h2{
	margin: 0 !important;
}

.qodef-interactive-link-showcase .qodef-m-items {
    padding: 50px 2%;
}

.hero-section h5{
	max-width: 800px;
}

.qodef-pricing-table{
	background-color: #FAF4E6 !important;

}
.qodef-pricing-table .qodef-m-inner {
    padding: 20px;
}

.qodef-pricing-table .qodef-m-top  {
    border: none;
}

.qodef-pricing-table .qodef-m-bottom {
		border-bottom: 1px solid #5B4126 !important;
		border-top: 1px solid #5B4126 !important;
		padding: 6px 10px 11px;
}

.qodef-pricing-table .qodef-m-image {
    margin-bottom: 0;
}

.qodef-m-price-wrapper{
	flex-flow: row-reverse;
}

.qodef-m-price .qodef-e-label{
	margin-bottom: 0;
	color: #5B4126 !important;
}

@media screen and (min-width: 0) and (max-width: 1024px) {
	.page-template-page-home-hero .elementor-top-section{
		margin: 0 20px;
	}		
	.page-template-page-home-hero .hero-section .elementor-top-section{
		min-height: 60vh;
  	display: flex;
	}	
	.hero-section	{
		margin: 0 !important;	
	}
	.hero-section.elementor-top-section{
		padding: 150px 0 20px;	
	}	
	.relative-section {
		position: inherit;
    width: 100% !important;
	}	
	.elementor-widget-wrap:has(.qodef-interactive-link-showcase){
		flex-flow: column-reverse !important;
	}
	.qodef-interactive-link-showcase.qodef-layout--list .qodef-m-items {
        padding: 20px 0 40px;
    }
	.elementor-widget-horizontal_heading_section .nonfiction-heading-wrap{
	padding-right: 0;
	margin-bottom: 20px;
}
	.elementor-top-section{
	padding: 50px 0;	
}
	.elementor-widget-horizontal_heading_section .elementor-widget-container {
	display: inherit;
}
  .qodef-tabbed-portfolio .qodef-e-info-bottom {
     flex-direction: column-reverse;
		row-gap: 20px;
    }
	.locations-list-wrap{
	column-gap: 20px;
}
	.locations-list-wrap .locations-list-details{
		justify-content: end;
	}
	.hero-section .elementor-container{
	padding:0 20px;
}
	.locations-list-title {
	padding-top: 1px;	
	}
	.locations-list-address{
		display: none;
	}
}

/****   Templates / Homepage   *****/



/*********   Carousels   ***********/

.elementor-swiper-button{
	background-color: #fff;
	padding: 15px !important;
	border-radius:	50px !important;
	border: 1px solid #5B4126 !important;
	color: #5B4126 !important;
}

.elementor-swiper-button.elementor-swiper-button-prev{
	left: 15px !important;
}

.elementor-swiper-button.elementor-swiper-button-next{
	right: 15px !important;
}

.elementor-swiper-button svg {
	fill: #5B4126 !important;
}

.elementor-widget-loop-carousel{
	margin-right: -50px;
	width: calc(100% + 50px) !important;
}

.type-partners .elementor-widget-theme-post-featured-image{
	padding: 30px;
	background-color: #fff;
	border-radius: 10px;
}

.elementor-widget-loop-carousel .elementor-top-section{
	padding: 0;
	margin: 0;
}

.type-partners .elementor-widget-theme-post-featured-image a{
	aspect-ratio: 1 /1;
	display: flex;
	justify-content: center;
}

.type-partners .elementor-widget-theme-post-featured-image img{
	object-fit: contain;
}

.elementor-swiper-button:hover{
	scale: 105%;
}

.e-loop-item h3{
	margin: 0;
}

.elementor-post-info{
	margin: 0;
	list-style-type: none;
}

.elementor-widget-loop-carousel .elementor-loop-container{
	width: 118% !important;
}

.elementor-widget-loop-carousel .external-products h5{
	margin-top: 10px;
}

@media screen and (min-width: 0) and (max-width: 1024px) {
.elementor-widget-loop-carousel{
	margin-right: -20px;
	width: calc(100% + 20px) !important;
}
	.elementor-swiper-button.elementor-swiper-button-prev{
	left: -20px !important;
	scale: 80%;
}
.elementor-swiper-button.elementor-swiper-button-next{
	right: 0 !important;
		scale: 80%;
}

.elementor-section:has(.elementor-widget-loop-carousel) .elementor-col-33, .elementor-section:has(.elementor-widget-loop-carousel).elementor-section .elementor-col-66 {
    width: 100% !important;
}	
	
	.elementor-widget-loop-carousel .elementor-loop-container{
	width: 135% !important;
}
}

.e-loop-item.partners .elementor-column {
	width: 100%;
}

.portfolio-category-supplier .nonfiction-portfolio-title-wrap p{
display: none;
}

.e-loop-item.partners .elementor-column {
width: 100%;
}

/*********   Carousels   ***********/



/*******  Cooking Classes  *********/

.page-id-10491 #qodef-page-inner{
	background-color: #fff !important;
}

.page-id-10491 .elementor-top-section{
	padding-top: 0;
}

/*******  Cooking Classes  *********/



/*********  Instore Menu  **********/

.elementor-widget:has(.menu-item-wrap){
	margin-bottom: 0 !important;
}


.elementor-element-populated .elementor-widget-menu_item{
		border-top: 1px solid #5B4126;
		padding: 20px 0;
		min-height: 90px;
}

.elementor-element-populated .elementor-widget-menu_item:last-of-type {
	border-bottom: 1px solid #5B4126;
}

.menu-item-wrap h5{
	margin: 0;
}

.menu-item-wrap .main-item-inner{
	gap: 50px
}

.elementor-top-section:has(.menu-item-wrap){
	padding-top: 40px;
}

section:has(.menu-item-wrap) h3{
    text-align: center;
		font-size: 33px;
		line-height: 35px;
}

.menu-item-wrap p{
	margin: 0;
}

.main-item-inner p{
	line-height: 25px !important;
}

.main-item-inner, .sub-item-inner{
	display: flex;
	align-items: start;
}

.main-item-description, .sub-item-description{
	flex: 1;
}

/*********  Instore Menu  **********/



/*********   Recipes CPT   *********/

.single-recipes .qodef-page-title, .qodef-e-share-holder {
	display: none;
}

.qodef-blog.qodef--single .qodef-blog-item .qodef-e-bottom-holder {
    border-bottom: none;
}

.nonfiction-ingredient-section{
	border-bottom: 1px solid #5B4126;
	border-top: 1px solid #5B4126;
	padding: 20px 0 15px;
}

.nonfiction-ingredient-section h6{
	margin: 0 0 20px;
}

.nonfiction-recipe-section h6{
	margin: 0;
}

.nonfiction-recipe-section{
	margin-bottom: 50px;
}

.archive .qodef-e-info{
	display: none !important;
}

/*********   Recipes CPT   *********/




/********   Partners CPT   *********/

.single-partners .nonfiction-media-wrap{
	flex: 1;
}

.single-partners .qodef-e-content{
	flex: 1
}

.qodef-svg--circle path{
	color: #ffffff; 
}

.single-partners .qodef-page-title{
	display: none;
}

.nonfiction-media-wrap{
	padding-bottom: 20px;
}

.related-location-wrap{
	width: calc(50% - 29px);
  display: inline-block;
  margin: 10px;
}

.related-locations-image a{
	 display: flex;
   aspect-ratio: 2 / 3;
}

.related-locations-image a img {
    object-fit: cover;
    flex: 1;
    overflow: hidden;
}

.related-locations-categories a{
	font-size: 12px;
	margin-right: 5px;
}

.related-locations-title h4{
	margin-top: 15px; !important;
}

/********   Partners CPT   *********/




/********  Journal / Blog  *********/

.single .qodef-e-inner{
	display: flex !important;
	gap: 50px;
}

.single .qodef-e-media-image img{
	max-height: calc(100vh - 190px);
	max-height: 1080px;
}

.single .qodef-e-content {
	align-self: flex-start;
	position: sticky !important;
	top: 0;
}

#qodef-single-post-navigation .qodef-m-nav-title {
    max-width: 400px;
}

.archive .qodef-blog, .blog .qodef-blog {
	font-size: 0;
}
.archive .qodef-blog-item, .blog .qodef-blog-item{
	padding: 0 15px;
}

.archive .qodef-e-media-image, .blog .qodef-e-media-image {
    width: 100%;
    overflow: hidden;
    overflow-x: hidden;
    overflow-y: hidden;
}

.archive .qodef-e-media-image img, .blog .qodef-e-media-image img {
    width: calc(100% + 10px) !important;
    transform: translateX(-8px);
    transition: transform .5s cubic-bezier(.25,.46,.35,.94);
    max-width: unset;
}

.archive article:hover .qodef-e-media-image img, 
.blog article:hover .qodef-e-media-image img {
    transform: translateX(0);
}

.archive .qodef-e-inner, .blog .qodef-e-inner,
.qodef-shortcode.qodef-blog .qodef-e-inner{
	padding-bottom: 60px
}

.archive .qodef-e-content, .blog .qodef-e-content,
.qodef-shortcode.qodef-blog .qodef-e-content{
	display: flex !important;
	flex-flow: column-reverse;	
}

.archive .qodef-e-bottom-holder, .blog .qodef-e-bottom-holder,
.qodef-shortcode.qodef-blog .qodef-e-bottom-holder{
	margin: 0 0 30px !important;
}

.archive .qodef-blog-item .qodef-e-media>*, .blog .qodef-blog-item .qodef-e-media>*,
.qodef-shortcode.qodef-blog .qodef-blog-item .qodef-e-media>*{
    margin-bottom: 20px;
}

.archive.category .qodef-blog.qodef--list .qodef-blog-item, .blog .qodef-blog.qodef--list .qodef-blog-item {
    padding-bottom: 0 !important;
    margin-bottom: 30px !important;
    border-bottom: none;
}

.single-post .qodef-page-title, .qodef-e-info-author {
	display: none;
}

@media screen and (min-width: 0) and (max-width: 1024px){
.single .qodef-e-inner{
	display: block !important;
}
	
}

/********  Journal / Blog  *********/



/****   Locations / Portfolio  *****/

.single-portfolio-item #qodef-page-inner{
	min-height: unset
}

.single-portfolio-item .qodef-page-title{
	display: none !important;
}

.single-portfolio-item .qodef-grid>.qodef-grid-inner{
	margin: 0;
}

.single-portfolio-item .qodef-e-content {
	flex: 1;
}

.nonfiction-portfolio-media, .nonfiction-portfolio-content{
	flex: 1;
}

.nonfiction-thumbnail-wrap{
	padding-bottom: 10px;
}

.nonfiction-portfolio-content {
	position: sticky;
	top: 0;
	height: fit-content;
}

.nonfiction-portfolio-open-hours{
	border-top: 1px solid #5B4126;
	border-bottom: 1px solid #5B4126;
	padding: 15px 0;
}

.nonfiction-portfolio-title-wrap{
	display: flex;
	padding-bottom: 40px;
  align-items: end;
}

.nonfiction-portfolio-title-wrap h1{
	margin: 0 !important;
	flex: 1
}

.nonfiction-portfolio-title-wrap p{
	margin: 3px 0;
}

.nonfiction-portfolio-open-hours h6{
	margin: 0 0 15px;
}

.nonfiction-portfolio-open-hours p{
	margin: 2px;
}

.nonfiction-portfolio-section p{
	line-height: 130%
}

.nonfiction-portfolio-hours-wrap .nonfiction-portfolio-inner{
	display: flex;
	flex: 1;
}

.nonfiction-portfolio-section{
	flex: 1;
	align-items: center;
	border-bottom: 1px solid #5B4126;
	padding: 10px 0;
}

.nonfiction-portfolio-section .nonfiction-portfolio-text, .nonfiction-portfolio-hours-wrap .nonfiction-portfolio-text{
	flex: 1;
}

.nonfiction-portfolio-about{
	padding: 80px 0;
}

.nonfiction-portfolio-section p, .nonfiction-portfolio-open-hours p{
	text-transform: uppercase;
}

.nonfiction-portfolio-button .qodef-button span{
	min-width: 150px;
	text-align: center;
	flex: 1;
}

#qodef-single-portfolio-navigation .qodef-m-inner {
	border-top: none;
}

#qodef-single-portfolio-navigation{
	position: absolute;
  bottom: 0;
	background-color: #FAF4E6;
	padding-top: 20px;
}

.qodef-tabbed-portfolio .qodef-e-media-image{
		aspect-ratio: 3 / 2;
    overflow: hidden;
    display: flex;
    align-items: center;
}	

.qodef-tabbed-portfolio .ui-accordion-header:after {
    background-color: #5B4126;
}

.qodef-portfolio-single.qodef-layout--custom #qodef-single-portfolio-navigation {
    padding: 0;
}

.single-portfolio-item .qodef-grid-item {
	padding: 0 !important;
}

@media screen and (min-width: 1025px){
	
.nonfiction-portfolio-wrap{
	height: calc(100vh - 190px);
	display: flex;
	gap: 50px;
	overflow: scroll;
	-ms-overflow-style: none;  
  scrollbar-width: none; 
}
	
.nonfiction-portfolio-content{
	min-height: calc(100vh - 190px);
}

.nonfiction-portfolio-wrap::-webkit-scrollbar {
  display: none;
}
	
.nonfiction-portfolio-media img{
	max-width: 650px;
}
	
.nonfiction-portfolio-section{
	display: flex;
	}
}	

@media screen and (min-width: 0) and (max-width: 1024px){
.single-portfolio-item .qodef-button.qodef-html--link {
        width: 100%;
    }
	.ui-accordion-header{
		margin: 0 !important;
	}	
.qodef-tabbed-portfolio .qodef-e-info-bottom {
    padding-bottom: 20px !important;
}
}

/****   Locations / Portfolio  *****/



/****   Locations / Suppliers  *****/

.single-portfolio-item .portfolio-category-supplier .nonfiction-portfolio-open-hours, .single-portfolio-item .portfolio-category-supplier .nonfiction-portfolio-section{
	display: none;
}

/****   Locations / Suppliers  *****/


/********   Global Page   *********/

#qodef-page-inner{
	min-height: calc(100vh - 600px);
}

#qodef-page-inner{
	padding: 50px;
}

.single #qodef-page-inner{
	margin-top:90px
}

.qodef-page-title{
	min-height: 23vw;
	border-bottom: 1px solid rgb(91, 65, 38);
	flex-flow: column;
	justify-content: end;
	display: flex;
	padding: 20px 50px;
	height: unset;
}

.qodef-page-title .qodef-m-content {
    width: unset;
		padding-right: 50px;
		padding-left: 50px;
		justify-content: end;
}

.qodef-page-title.qodef-title--standard .qodef-m-title{
	margin-bottom: 0;
}

.page-template-page-full-width  #qodef-page-header-inner{
	border: none;
}

.nonfiction-title-wrap {
	display: flex;
	gap: 20px;
}

.nonfiction-title-inner, .nonfiction-description-inner{
	flex: 1;
}

.nonfiction-title-wrap h5{
	margin: 0;
}

@media screen and (min-width: 0) and (max-width: 1024px) {
	
#qodef-page-inner{
	padding: 20px;
}
.single #qodef-page-inner{
	margin-top:70px;
	}	
.page-template-default:not(.page-template-page-home-hero) #qodef-page-outer{
	margin-top: 0 !important;
}
	.qodef-page-title{
		padding: 20px
	}
	.nonfiction-title-wrap{
		display: block;
	}
	.nonfiction-title-wrap h5{
	margin-top: 80px;
}
}

/********   Global Page   *********/




/***********   Footer   ************/

footer .qodef-grid-inner{
	display: flex;
}

footer .qodef-grid-item{
	display: flex !important;
	column-gap: 40px;
	width: unset !important;
}

#qodef-page-footer-top-area .qodef-grid-inner{
	min-height: 400px;
}

#qodef-page-footer-top-area .qodef-grid-item:nth-child(1){
	flex-flow: column;
	padding-right: 80px;
	flex: 2;
	width: min-content;
}

#qodef-page-footer-top-area .qodef-grid-item:nth-child(2){
	flex: 3;
	justify-content: end;
}

#qodef-page-footer-top-area .widget_media_image{
	flex: 1;
}

#qodef-page-footer-top-area .widget_nav_menu{
		flex: 0 1 180px;	
}

#qodef-page-footer-bottom-area .qodef-grid{
	border-top: 1px solid #5B4126;
	border-bottom: 1px solid #5B4126;
	align-items: center;
}

#qodef-page-footer-bottom-area .qodef-grid-item:nth-child(1){
	flex:	1;
}

#qodef-page-footer-bottom-area .qodef-grid-item:nth-child(2){
	width: min-content;
}

#qodef-page-footer-bottom-area .widget_block{
	margin: 0 !important;
}

#qodef-page-footer-bottom-area h6{
	margin: 25px 0;
}

#qodef-page-footer-bottom-area .qodef-social-icons-group{
	  vertical-align: middle;
    display: flex;
}

footer li{
	line-height: 1.6875em !important;
	margin: 0 0 8px !important;
}

#qodef-page-footer .widget a, #qodef-page-footer .widget .qodef-widget-title  {
	color: #5B4126;
}

.qodef-button.qodef-layout--filled.qodef-html--link:hover {
    background-color: #fff;
}

#qodef-page-footer .widget a:hover {
	color: #5B4126;
}

#qodef-page-footer-bottom-area .qodef-grid-item{
	align-items: center;
}

.widget_block:has(.mobile-acknowledgement){
	display: none;
	line-height: 1.1;
}

@media screen and (min-width: 0) and (max-width: 1024px) {
	#qodef-page-footer-top-area .qodef-grid-inner{
		flex-flow: column;
	}
	#qodef-page-footer-top-area .qodef-grid-inner .qodef-grid-item{
		justify-content: flex-start !important;
	}
	.qodef-grid-item:has(.widget_nav_menu){
		margin-top: 100px;
	}
	#qodef-page-footer-top-area-inner, #qodef-page-footer-bottom-area-inner  {
    padding-left: 20px !important;
    padding-right: 20px !important;
}
	#qodef-page-footer-top-area .qodef-grid-item:nth-child(1) {
    padding-right: 0;
}

	#qodef-page-footer-bottom-area .qodef-grid-item:has(h6){
		opacity: 1;
	}	
}

@media screen and (min-width: 0) and (max-width: 768px) {
	.qodef-grid-item:has(.widget_nav_menu){
		gap: 20px;
		flex-wrap: wrap;
	}
	.widget_nav_menu{
		flex: 0 0 calc(50% - 10px) !important;
	}
	#qodef-page-footer-bottom-area-inner .qodef-grid-inner{
	overflow: scroll;
	margin-right: -20px;
	padding-right: 30px;
}
	.widget_block:has(.desktop-acknowledgement){
		display: none;
	}
	.widget_block:has(.mobile-acknowledgement){
	display: inherit;
	}
	#qodef-page-footer-top-area .widget_block img{
		max-width: 70% !important;
	}
		#qodef-page-footer-bottom-area .qodef-grid-inner{
		display: block;
		padding-bottom: 20px
	}	
}

@media only screen and (max-width: 1024px) { 
	#qodef-page-footer-top-area .qodef-content-full-width, #qodef-page-footer-bottom-area .qodef-content-full-width{
		padding-right: 20px !important;
		padding-left: 20px !important;
}
}

/***********   Footer   ************/



/***********   Header   ************/


.qodef-header-logo-link svg, .qodef-mobile-header-logo-link svg {
	stroke-opacity: 0;
}

.single #qodef-page-header{
	border-bottom: 1px solid #5B4126;
}

.qodef-header-navigation>ul>li {
    padding-right: 30px;
		margin: 0;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display) #qodef-page-header {
    background-color: transparent;
}

#qodef-page-header:has(.qodef-drop-down--start) {
    background-color: #fff !important;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display) .qodef-header-navigation:not(:has(.qodef-drop-down--start)) span{
		color: #fff;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display) .qodef-header-navigation .sub-menu span{
		color: #5B4126;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display) .qodef-header-navigation:not(:has(.qodef-drop-down--start)) span::after {
    background-color: #fff;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display):not(:has(.qodef-drop-down--start)) .qodef-header-logo-link path{
	fill: #fff;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display):not(:has(.qodef-drop-down--start)) .qodef-widget-holder .qodef-layout--textual span{
	color: #fff;
} 

.page-template-page-home-hero:not(.qodef-header--fixed-display):not(:has(.qodef-drop-down--start)) .qodef-widget-holder .qodef-layout--outlined {
	color: #fff !important;
		border-color: #fff !important;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display):not(:has(.qodef-drop-down--start)) .qodef-widget-holder .qodef-layout--outlined:hover span{
		color: #5B4126 !important;
		border-color: #5B4126 !important;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display):not(:has(.qodef-drop-down--start)) .qodef-widget-holder .qodef-layout--outlined:hover {
		border-color: #5B4126 !important;
}

.page-template-page-home-hero:not(.qodef-header--fixed-display):not(:has(.qodef-drop-down--start)) .qodef-widget-holder .qodef-layout--outlined span{
		color: #fff !important;
}

#qodef-page-mobile-header{
	z-index: 50;
	border-bottom: 1px solid #5B4126 !important;
}

.page-template-page-home-hero:not(.qodef-mobile-header--sticky-display).page-template-page-home-hero #qodef-page-mobile-header {
    background-color: transparent;
		border-bottom: none !important;
}

.page-template-page-home-hero:not(.qodef-mobile-header--sticky-display) #qodef-page-mobile-header-inner:not(:has(a.qodef--opened)) .qodef-mobile-header-logo-link svg path{
    fill: #fff !important;
}

.page-template-page-home-hero:not(.qodef-mobile-header--sticky-display) #qodef-page-mobile-header-inner:not(:has(a.qodef--opened)) .qodef-opener-icon span {
    color: #fff !important
}

.page-template-page-home-hero:not(.qodef-mobile-header--sticky-display) #qodef-page-mobile-header-inner:not(:has(a.qodef--opened)) .qodef-opener-icon path {
    color: #fff !important
}

.qodef-mobile-header-navigation{
	position: absolute;
	top: 0;
	padding-top: 70px;
}

.qodef-mobile-header-navigation{
	max-height: 100vh;
}

#menu-mobile-menu-1{
	min-height: calc(100vh - 70px);
	display: flex;
  flex-flow: column;
}

.menu-item-12514{
	position: absolute !important;
	bottom: 0;
}

.elementor-element-ebaf862{
	position: absolute;
    bottom: 7px;
    right: 20px;
}

.elementor-element-ebaf862 .e-con-inner{
    justify-content: end !important;
	fill: #5B4126 !important;
}

.qodef-mobile-header-navigation .elementor-icon svg {
    width: 0.4em;
    height: 0.4em;
}

.qodef-mobile-header-navigation h2{
		font-size: 4.8em;
		line-height: 0.9em;
		margin: 0;
}

.qodef-mobile-header-navigation .elementor-top-section{
	margin: 0;
}

.qodef-mobile-header-navigation .elementor-element{
	padding: 0;
}

.qodef-mobile-header-navigation>ul {
  padding-bottom: 0;
	padding-top: 15px;
}

#qodef-page-mobile-header-inner{
	z-index: 200;
	padding: 0 20px;
}

.qodef-mobile-header-navigation ul li .qodef-menu-item-arrow {
    display: none;
}

@media screen and (min-width: 0) and (max-width: 1024px) {
    body:not(.qodef-content-behind-header) #qodef-page-outer {
        margin-top: -70px !important;
    }		
	.elementor-9923 .elementor-element.elementor-element-8cba998 > .elementor-container {
    min-height: 100vw;
}
}

@media screen and (min-width: 0) and (max-width: 1200px) {
	#qodef-page-header .qodef-widget-holder .qodef-layout--textual{
		display: none;
    }		
}
.qodef-opener-icon .qodef-m-icon.qodef--close {
    top: 0 !important;
}

.page-id-13631 .qodef-header-navigation ul li.qodef-menu-item--wide .qodef-drop-down-second {
    background-color: #FAF4E6;
    border-bottom: 1px solid #5B4126;
	  border-top: 1px solid #5B4126;
}

.page-id-13631.page-template-page-home-hero #qodef-page-header:has(.qodef-drop-down--start) {
    background-color: #FAF4E6 !important;
}

/***********   Header   ************/



/**********   Megamenu   ***********/


.sub-menu .menu-item .qodef-menu-item-text{
	font-size: 12px;
}

.inner-menu-column-2:has(.elementor-element) .menu-item .qodef-menu-item-text, .inner-menu-column-2:has(.location-menu-wrap) .menu-item .qodef-menu-item-text{
	font-size: 12px;
}

.menu-item:not(.menu-item-has-children) .qodef-menu-item-text {
	font-size: inherit;
}

.qodef-drop-down-second{
	height: min-content !important;
	max-height: 85vh !important;
  overflow-y: scroll !important;
	max-width: 100vw;
}

.locations-menu-outer{
	display: flex;
	flex-wrap: wrap;
	margin: 14px -20px 0;
}

.location-menu-wrap{
	width: calc(50% - 40px);
	border-top: 1px solid #000 !important;
	margin: 0 20px;
	padding: 0 10px;
}

.locations-menu-outer .location-details-wrap{
	display: flex;
  align-items: center;
}

.locations-menu-outer .location-details-wrap a:has(.location-established), .locations-menu-outer .location-details-wrap h6{
	flex: 1;
}

.location-title, .location-established{
	margin: 12px 0;
}

.sub-menu .elementor-loop-container{
	display: flex;
}

.sub-menu .elementor-top-section{
	padding: 0;
}

.sub-menu .elementor-top-section{
	margin: 0 15px !important;
}

.qodef-header-navigation ul li.qodef--hide-link>a {
    margin: 0 !important;
}

.inner-menu-column-2{
	flex: 3;
}

.inner-menu-column-1{
	flex: 1;
}

.menu-item-9336 .qodef-drop-down-second-inner .e-loop-item a {
    position: inherit !important;
    display: unset !important;
    font-family: inherit !important;
    color: inherit !important;
}

.qodef-drop-down-second-inner .qodef-pricing-table {
    background-color: #fff !important;
}

.inner-menu-column-1 .sub-menu{
	height: 100%;
	display: flex;
	flex-flow: column;
}

.inner-menu-column-1 .sub-menu li.push-bottom{
	flex:	1;
	align-content: end;
}

.sub-menu .elementor-widget-hiroshi_core_pricing_table .qodef-m-button{
	display: flex !important;
  flex: 1 !important;
  justify-content: flex-end !important;
}

.sub-menu .elementor-widget-hiroshi_core_pricing_table.elementor-element {
	margin-bottom: 0 !important;
}

.sub-menu .elementor-widget-image {
	margin-bottom: 0;
}

.sub-menu h4{
	text-wrap: wrap;
	margin: 15px 0 0;
	min-height: 56px
}

.sub-menu .elementor-widget-loop-grid .e-loop-item .elementor-column-gap-default a:has(.elementor-column){
	flex: 1;
}

.qodef-header-navigation ul li.qodef-menu-item--wide .qodef-drop-down-second-inner>ul {
    padding: 20px 0 20px;
}	

.sub-menu:has(.elementor-widget-loop-grid){
	padding: 0;
}
	
.sub-menu .elementor-top-section {
    margin: 0 20px;
}

.sub-menu .elementor-top-section h5{
    text-wrap: wrap;
    margin: 10px 0 0;
    min-height: 46px;
}

.elementor-post-info__terms-list{
	font-size: 12px;
}

.sub-menu .external-products .elementor-widget-image{
	margin-bottom: 0;
}

.sub-menu .recipes .elementor-widget-image {
	margin-bottom: 0;
}

.sub-menu .elementor-widget-post-info{
	margin-bottom: 10px !important;
}

.sub-menu .e-loop-item.recipes {
	flex: 1;
	margin-bottom: 15px;
}



/**********   Megamenu   ***********/




/********   Buttons / UI   *********/

.qodef-button.qodef-layout--filled.qodef-html--link:after {
    background-color: #FAF4E6;
}

.qodef-layout--filled.qodef-html--link{
	text-align: center;
}

.qodef-button.qodef-layout--outlined:hover {
    color: #fff;
    background-color: transparent;
    border-color: #5B4126;
}

.qodef-button.qodef-layout--outlined:after {
    background-color: #fff;
}

@media screen and (min-width: 0) and (max-width: 1024px) {
.qodef-button.qodef-html--link {
	padding: 8px 60px;
}	
}

/********   Buttons / UI   *********/