body.no-scroll {
	overflow: hidden;
}

.image_container img {
	width: 100%;
}

.link {
	display: inline-flex;
	align-items: center;
	gap: 0px 17px;
}

.hero_element {
	position: relative;
	overflow: hidden;
	min-height: 700px;
}

.hero_element > .container {
	position: relative;
	z-index: 5;
}

.hero_element .bg_container,
.hero_element .bg_overlay img,
.hero_element .bg_image,
.hero_element .bg_image img,
.hero_element .bg_content_width {
	width: 100%;
	height: 100%;
}

.hero_element .bg_content_width {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0px);
}

.hero_element .bg_container {
	position: absolute;
	left: 0px;
	top: 0px;
}

.hero_element .bg_image {
	z-index: 1;
}
.hero_element .bg_image img {
	object-fit: cover;
}
.hero_element .bg_overlay {
	position: absolute;
	right: 0;
	bottom: 0;
	max-width: 650px;
	z-index: 4;
}
.hero_element .bg_overlay img {
    object-fit: contain;
    position: relative;
    top: 5px;
}

.hero_element .products {
	--space_between: 30px;
	--product_width: 350px;
	position: absolute;
	bottom: 30px;
	width: auto;
	left: calc((((var(--product_count) - 1) * var(--product_width)) + (var(--space_between) * (var(--product_count) - 1))) * -1);
	display: grid;
	grid-template-columns: repeat(var(--product_count), var(--product_width));
	align-items: center;
	gap: 0px var(--space_between);
} 
.hero_element .content .products {
	position: relative;
	margin-top: 60px;
}

.hero_element .products .product img {
	width: 100%;
}
@media screen and (min-width: 990px) {
.hero_element .content .products {
	display: none;
}
}
@media screen and (max-width: 990px) {
	.hero_element {
	    min-height: clamp(800px, 180vw, 1150px);
	}
	.hero_element .bg_container .products {
		display: none;
	}
}

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

	.hero_element .products {
		--product_width: 270px;
	}
}
@media screen and (max-width: 340px) {
	.hero_element {
	    min-height: clamp(680px, 240vw, 1150px);
	}
}


html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}


.section_wrapper {
	display: block;
}


.text_and_image .container {
	border-bottom: 1px solid #D9D9D9;
}

.paragraph .title {
	letter-spacing: -0.03em;
}

.body_text a {
	display: inline-block;
	position: relative;
}
.body_text a::before {
	content: '';
    height: 1px;
    background: rgba(0,0,0,1);
    width: 100%;
    position: absolute;
    bottom: 6px;
}


.burgermenu {
	--thickness: 1px;
    --width: 35px;
    --height: 20px;
    --color: var(--fc_dark);
    width: var(--width);
    height: var(--height);
    position: relative;
    cursor: pointer;
}
.burgermenu .first,
.burgermenu .middle,
.burgermenu .last {
	display: block;
	position: absolute;
	background: rgb(var(--color));
	width: var(--width);
	height: var(--thickness);
	left: 50%;
	transform: translate(-50%, 0%);
}
.burgermenu .first {
	top: 0px;
}
.burgermenu .middle {
	top: calc(var(--height) / 2 - var(--thickness)  / 2);
	transition: width 0.2s ease;
}
.burgermenu .last {
	top: calc(var(--height) - var(--thickness));
}

.burgermenu .first,
.burgermenu .last {
	transition: top 0.15s ease 0.15s, transform 0.15s ease 0s;
}

.burgermenu.active .first,
.burgermenu.active .last {
	top: calc(var(--height) / 2 - var(--thickness)  / 2);
	transition: top 0.15s ease 0s, transform 0.15s ease 0.15s;
}
.burgermenu.active .first {
	transform: translate(-50%, 0%) rotate(45deg);
}
.burgermenu.active .last {
	transform: translate(-50%, 0%) rotate(-45deg);
}

.burgermenu.active .middle {
	width: 0px;
}


.menu_btn a {
	border:2px solid #000000;
	border-radius: 5px;
	padding: 8px 15px;
	color: #000000;
	font-weight: 700;
	font-size: var(--fz_15);
	transition: all 0.3s ease;
}

.menu_btn a:hover {
	background: #000000;
	color: #ffffff;
}

.menu-item.left_auto {
	margin-left: auto;
}

.shortcode_col {
	padding: clamp(30px, 6vw, 50px) clamp(20px, 5vw, 50px);
	background: #eeeeee;
}


.ff-default .ff-el-form-control:focus {
    border-color: rgba(0,0,0,0.3) !important;
}
#content_wrapper {
	padding-top: var(--nav_container_height);
}
#content_wrapper .ff-default .ff_btn_style {
	background: #000000;
    font-weight: 700;
    font-size: var(--fz_15);
    border-radius: 5px;
    padding: 8px 22px;
}

#content_wrapper .ff-message-success {
    border: 0;
    box-shadow: 0 0px 0px transparent;
    text-align: center;
    font-size: var(--fz_20);
}

.table_container {
	width: 100%;
	overflow-x: auto; 
    padding-bottom: 15px;	
}

.table_container::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}

.table_container::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px rgba(0,0,0,0.15); 
  border-radius: 100px;
}
 
.table_container::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,1); 
  border-radius: 100px;
}

.table_container::-webkit-scrollbar-thumb:hover {
  background: rgba(0,0,0,.8);
}


.acf_custom_table {
	text-align: left;
    border-spacing: 10px 5px;
    width: 100%;
    min-width: 600px;
}
.acf_custom_table tr {
	vertical-align: top;
}
.paragraph_container .acf_custom_table {
	margin-top: 30px;
} 


.product_sale .header .information {
	max-width: 570px;
}

.product_sale .product_container .form_container {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	margin-bottom: 30px; 
}
@media screen and (max-width: 767px) {
	.product_sale .product_container .form_container {
		grid-template-columns: 1fr;
	}
	.product_sale .product_container .form_container .image_container {
		order: -1;
	}
}

.product_sale .select_amount .ff-el-form-control {
	width: 100%;
	max-width: 300px;
}


select.ff-el-form-control {
  appearance: none !important;
  background-image: var(--icon_arrow_dropdown) !important;
  background-size: 10px auto;
  background-repeat: no-repeat;
  background-position: calc(100% - 10px) calc(50% - -1px);
}


.pum-overlay .pum-close {
	color: transparent !important;
	background: transparent !important;
	box-shadow: 0 0 0 !important;
	padding: 0 !important;
	text-shadow: 0 0 transparent !important;
	top: 30px !important;
	right: 30px !important;
	width: 30px !important;
	height: 30px !important;
}

.pum-theme-537 .pum-container, .pum-theme-default-theme .pum-container {
	padding: clamp(20px, 5vw, 50px) !important;
}


.pum-overlay .pum-close::before,
.pum-overlay .pum-close::after {
	content: '';
	position: absolute;
	width: 30px;
	height: 2px;
	background: rgba(0,0,0,1);
	left: 50%;
	top: 50%;
}

.pum-overlay .pum-close::before {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.pum-overlay .pum-close::after {
	transform: translate(-50%, -50%) rotate(45deg);
} 

form.fluent_form_5 .ff-btn-submit:not(.ff_btn_no_style) {
	background: rgba(0,0,0,1) !important;
	font-weight: 600;
}

.ff-message-success {
    border: 0px solid #ced4da !important;
    box-shadow: 0 0px 0px rgba(0,0,0,0) !important;
}


footer,
footer p {
	font-size: var(--fz_20);
}

.footer_logo {
	max-width: 220px;
}
.footer_top,
.footer_bot {
	max-width: 770px;
}
.footer_top {
	display: grid;
	grid-template-columns: repeat(14, 1fr);
}

.content_container {
	grid-column: span 6;
}
.page_links_container,
.some_links_container {
	grid-column: span 4;
}

footer .pagelink {
	display: block;
    margin-top: 18px;	
}
footer .pagelink:first-child {
	margin-top: 0px;
}

footer .content p {
	margin-top: 30px;
}
footer .content p:first-child {
	margin-top: 0px;
}

.footer_bot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}




.recipe_header {
	position: relative;
	aspect-ratio: 16 / 6;
	overflow: hidden;
	margin: 0 auto;
}
.recipe_header .image_container {
	position: relative;
	width: 100%;
	height: 100%;
}
.recipe_header .image_container img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.recipe_links .recipe_link {
    margin: 3px 0;	
}
.recipe_links .recipe_link a {
	display: inline-block;
}

.policy_link {
	border-left: 1px solid #000000;
	margin-left: 10px;
	padding-left: 10px;
}
.policy_link:first-child {
	padding-left: 0px;
	border: 0px;
	margin-left: 0px;
}

.somelink {
	--icon_size: 15px;
	display: flex;
	align-items: center;
	margin-bottom: 8px;
}
.somelink .icon {
	display: block;
	position: relative;
	width: var(--icon_size);
	height: var(--icon_size);
	margin-right: 6px;
}

.somelink .icon img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

@media screen and (max-width: 550px) {
	.content_container {
		grid-column: span 14;
	}
	.page_links_container,
	.some_links_container {
		grid-column: span 7;
	}

}


/** Menu **/
.nav_container {
	top: 0;
	position: fixed;
	width: 100%;
	z-index: 9999;
	background: rgb(var(--c_white));	
}

.logged-in .nav_container {
	top: 30px;
}


.nav_container .container {
	display: flex;
    align-items: center;
    padding-top: 20px;
    padding-bottom: 20px;
}


.nav_container .logo_container {
	display: inline-block;
	max-width: 170px;
    position: relative;
    z-index: 150;	
}

.nav_container .menulinks {
	width: 100%;
    margin-left: clamp(20px, 5vw, 75px);	
}

.nav_container .burgermenu_container {
	margin-left: auto;
	display: none;
	position: relative;
	z-index: 150;
}

#main_menu {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
    gap: 0px clamp(15px, 3vw, 30px);	
}
#main_menu .menu-item {
	font-size: var(--fz_15);
	text-transform: uppercase;
}
#main_menu .menu-item.current-menu-item {
	font-weight: 700;
}

#page_navigation_menu {
	position: fixed;
	overflow: scroll;
	margin-top: 120px;	
    padding-bottom: 120px;	
	display: flex;
	left: 0;
	top: 0;
	z-index: 9999;
	background: transparent;
}
#page_navigation_menu .bg {
	position: fixed;
	left: 0;
	top: -100%;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

#page_navigation_menu.show .bg_1 {
	top: 0%;
}

#page_navigation_menu.show .bg_2 {
	top: 0%;
}



#page_navigation_menu .bg.gradient {
	background: linear-gradient(0deg, #B1455C 0%, rgba(88, 6, 23, 0.36) 100%);
}
#page_navigation_menu .content {
	position: relative;
	margin: auto;
	z-index: 10;
	display: flex;
	width: calc(100% - 30px);
}

#page_navigation_menu .content > * {
	width: 100%;
}

#page_navigation_menu #main_menu {
	padding: 0;
}
#page_navigation_menu .menu-item {
	list-style-type: none;
}
#page_navigation_menu .menu-item.current-menu-item a {
	color: rgb(var(--c_coralred));
}
#page_navigation_menu .menu-item a {
	position: relative;
	text-decoration: none;
	color: var(--fc_light);
	font-size: var(--fz_30);
	font-weight: 500;
	padding: 5px 0;
	display: inline-block;
}

#page_navigation_menu .link_category {
	margin-bottom: 50px;
}

#page_navigation_menu .menu-item a::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform:translate(0, -50%);
	width: 0%;
	height: 4px;
	background: rgb(var(--c_coralred));
	transition: width 0.3s ease;
}
#page_navigation_menu .menu-item:hover a::before {
	width: 100%;
}


@media screen and (max-width: 1200px) {
	
	.nav_container .burgermenu_container {
		display: block;
	}

	.nav_container #main_menu_container {
	    position: fixed;
	    width: 100%;
	    height: 100%;
	    top: -100%;
	    left: 0;
	    z-index: 99;
	    background: white;
	    transition: all 0.3s ease;
	}
	.nav_container.active #main_menu_container {
	    top: 0%;
	}
	#main_menu_container {
	    padding-top: calc(var(--nav_container_height, 80px) + 50px);
	    padding-bottom: 100px
	}
	.menu_btn a {
	    padding: 17px clamp(20px, 7vw, 65px);
	    font-size: var(--fz_25);
	    display: block;
	    margin-top: 40px;
	}	

	.menu-item.left_auto {
		margin-right: auto;
	}

	#main_menu {
		flex-direction: column;
	    justify-content: center;
	    gap: clamp(15px, 4vw, 40px) 0;
	    overflow-y: scroll;
	    overflow-x: hidden;
	    height: 100%;	
	}
	#main_menu .menu-item {
		font-size: clamp(var(--fz_25), 6vw, var(--fz_35));
	}

}