/*
 Theme Name:   Norsan Edition GeneratePress Child 
 Theme URI:    https://generatepress.com
 Description:  GeneratePress child theme
 Author:       Team Norsan
 Author URI:   stefan.bischoff@norsan.de
 Template:     generatepress
 Version:      0.1
*/

/* -------------------------------------------------------------------------------------------- */
/* General */
/* -------------------------------------------------------------------------------------------- */
/* Links with underline */
:is(p) a:not([class*="button"]) { 
  text-decoration: underline solid;
  text-decoration-color: color-mix(in srgb, currentColor 30%, transparent);
    text-decoration-thickness: 1px;
    text-underline-offset: 4px;
}

/* Adds a white border around the entire site */
.site-content { width: 100%; }



@media (min-width: 769px) {
    body { padding: 0; border-left: 30px solid var(--base-2); border-right: 30px solid var(--base-2); }
    .site-footer { margin-top: 30px; }
    .menu-item-4450 { display: none; }
}

.gb-button, .woocommerce .button, .button { border-radius: 5px !important; font-weight: 500 !important; text-transform: uppercase; }
block-button, .wp-block-button__link { border-radius: 5px; text-transform: uppercase; font-weight: 500 !important; }

.site-footer { margin-top: 0px !important; }

.wp-block-separator { border-top-width: 1px; }

hr { margin-top: 80px; margin-bottom: 80px; }

.no-shrink p { flex: 1; }

.wp-block-media-text { padding: 0 0 20px 0; margin: 0 0 20px 0; }

select { border-color: var(--base); }

/* Helper */
.nowrap{ white-space:nowrap }
.balance{ text-wrap:balance }

/* -------------------------------------------------------------------------------------------- */
/* Navigation */
/* -------------------------------------------------------------------------------------------- */
/* Mega menu */
@media (min-width: 768px) {
 .inside-navigation { position: unset; }
 .inside-navigation .mega-menu { position: unset; }
 .inside-navigation .mega-menu .sub-menu { width: 100%; left: 0 !important; background: transparent; box-shadow: none; }
 .inside-navigation .mega-menu .sub-menu > .menu-item { left: 0px !important; opacity: 1; }
}
.inside-navigation .mega-menu .sub-menu a { display: inline-flex; font-weight: unset; line-height: unset; }
.inside-navigation .mega-menu .sub-menu a:not(.gb-button) { font-size: unset; padding: 0; }
.inside-navigation .mega-menu .sub-menu ul { overflow: visible; opacity: 1; left: 0; position: relative; }
.inside-navigation .mega-menu .sub-menu > .menu-item ul { list-style: disc; background: unset; height: 100%; box-shadow: unset; margin-left: 20px; visibility: visible; border: unset; pointer-events: auto; }

/* Slideout Menu / Mobile Menu */
.slideout-menu > li.mega-menu .gb-container { color: var(--contrast); }
.slideout-menu > li.mega-menu .gb-container a { color: var(--contrast-2)!important; }
.slideout-menu > li.mega-menu .gb-container a:hover { color: var(--accent); }
html .slideout-navigation.do-overlay .menu-item-has-children .dropdown-menu-toggle { border: none; padding: 0; margin: 0 0 0 5px; }

/* Megamenu */
.inside-navigation .mega-menu .sub-menu a.gb-button { padding: 10px 20px; font-size: 18px; font-weight: 500; border-radius: 5px; color: var(--base-3)!important; background: var(--accent); text-transform: uppercase; }
.inside-navigation .mega-menu .sub-menu a.gb-button:hover { background: var(--accent-hover); }

/* Sticky Menu */
.nav-float-right .navigation-stick .navigation-branding { margin-right: 0; }
.nav-float-right .navigation-stick .main-nav { margin-right: auto; }
.nav-float-right .navigation-stick .navigation-branding { padding-right: 10px; }
.sticky-enabled .main-navigation.is_stuck .mega-menu li > .gb-container:first-child { box-shadow: 0 2px 2px -2px rgba(0, 0, 0, .2); }

/* Mobile menu styles */
#generate-slideout-menu.main-navigation .main-nav ul ul { background: transparent; }
.menu-bar-item:nth-child(1) { order: 2; }

/* pxl adjusting last menu item */
.cart-contents > span.number-of-items { background-color: #ce6632!important; color: white; }

/*@media(min-width:767px){
    .main-navigation, .main-navigation ul ul {
        margin-top: 28px;
    }
}*/

@media(max-width:767px){
    .sub-menu { width: 100% !important; padding-left: 15px !important; padding-right: 15px; }
}

/** LogIn Logout Menu **/
.loggedin_display { display: none; }
.loggedout_display { display: inline-block; }
body.logged-in .loggedin_display { display: inline-block; }
body.logged-in .loggedout_display { display: none; }
.magic-login-dbc #wpmll-login-wrapper { width: 100%; }
.menu-item-has-children .dropdown-menu-toggle { padding-right: 15px; }

/* Magic Login fix for checkout */
#wpmll-login input[type="email"] {
    font-size: 18px !important;
}

#generate-slideout-menu .slideout-menu > li{
	border-bottom: 1px solid rgba(255,255,255,0.1);
}

#generate-slideout-menu .slideout-menu > li > a{
	display: flex;
	width: 100%;
	padding: 0;
	align-items: center;
}

#generate-slideout-menu .slideout-menu li a .dropdown-menu-toggle{
	margin-left: auto;
	padding: 0 20px;
}

#generate-slideout-menu .slideout-menu li a .dropdown-menu-toggle svg {
    height: 1.4em;
    width: 1.4em;
    top: 0.2em;
}

#generate-slideout-menu.main-navigation .main-nav ul ul{
	padding: 0!important;
}

/* -------------------------------------------------------------------------------------------- */
/* WooCommerce + Shop Related */
/* -------------------------------------------------------------------------------------------- */
/* B2B product single fixes */
.add-to-cart-panel form.cart, .woocommerce div.product.do-quantity-buttons form.cart { display: block; flex-wrap: wrap; }

/* Remove Padding from cart & checkout (already set by GP) */
body.woocommerce-cart .fc-content.fc-container,
body.woocommerce-checkout .fc-content.fc-container{
    padding: 0;
}

/* product additional information tabs font styling */
.woocommerce table.shop_attributes th { font-size: 16px; }
.woocommerce table.shop_attributes td p { padding: 8px 16px; font-size: 16px; }

/* WooCommerce - Loop */
.woocommerce span.onsale, .woocommerce ul.products li.product .onsale { border-radius: 5px; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link { margin: 0; }
.woocommerce ul.products li.product .woocommerce_de_versandkosten { margin-bottom: 20px; }
.woocommerce ul.products li.product .button { margin-top: 0; }

/* Usp List */
ul.usp-list { list-style: unset; margin-left: 0px; padding-left: 0px; text-align: center; display: flex; flex-direction: column; align-items: flex-start; }
ul.usp-list li { display: flex; text-align: left; gap: 0.5em; }
ul.usp-list li::before { content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23CE6732' d='m9.55 15.15l8.475-8.475q.3-.3.7-.3t.7.3t.3.713t-.3.712l-9.175 9.2q-.3.3-.7.3t-.7-.3L4.55 13q-.3-.3-.288-.712t.313-.713t.713-.3t.712.3z'/%3E%3C/svg%3E"); flex-shrink: 0; width: 24px; height: auto; padding-top: 0.1em; }

@media screen and (max-width: 1024px) {
    .woocommerce .woocommerce-ordering {
         margin-bottom: 20px;
    }
}

.woocommerce ul.products li.product .price, .woocommerce div.product p.price { font-size: 100%; margin: 10px 0; }
.woocommerce ul.products .pxl-custom-field-wrapper { margin-bottom: 20px; }
.woocommerce ul.products .pxl-custom-field-wrapper ul { margin-bottom: 0; }
.woocommerce ul.products li.product a img { aspect-ratio: 1 / 1; object-fit: contain; }

/* WooCommerce - Product Detail */
.woocommerce div.product .product_title { color: var(--contrast-2); }
.woocommerce .koala-bmsm-main-hd { align-items: center; font-size: 22px; font-weight: 700; color: var(--accent); }
.woocommerce .wgm-info { font-size: 16px; }
.woocommerce .wgm-info small { font-size: inherit; }
.woocommerce div.product.do-quantity-buttons form.cart { border-top: 1px solid #E5E5E5; padding-top: 20px; margin-top: 20px; margin-bottom: 20px; }
.woocommerce .variations_form + .woocommerce-product-details__short-description { border-top: 1px solid #E5E5E5; padding-top: 20px; margin-top: 20px; }
.woocommerce form .quantity > .qty { font-weight: 700; }
.woocommerce .koala-bmsm-div-parent { border-bottom: 1px solid #E5E5E5; padding-bottom: 40px; margin-bottom: 40px; }
.woocommerce .koala-preview-card-item { border-radius: 5px; border: none; background: #F6F6F6 !important; padding: 15px 40px 15px 15px; margin: 0; font-size: 400; }
.koala-bmsm-text-dec-tl { color: var(--contrast-2); margin-right: 0.5em; }
.woocommerce .koala-preview-card-lb + div { color: var(--accent); }
.woocommerce .koala-bmsm-cd-dic-pr { font-size: 17px; }
.woocommerce .koala-bmsm-cd-discount-price { border-radius: 4px; border-top-right-radius: 4px; border-top-left-radius: 0px; border-bottom-right-radius: 0; padding: 4px; background-color: var(--contrast-3); }
.woocommerce .koala-bmsm-prev-card-ft-org-prc { font-weight: normal; }

/* Product Variations */
.woocommerce div.product form.cart .variations { border-bottom: 1px solid #E5E5E5; padding-bottom: 20px; margin-bottom: 20px; }
.woocommerce div.product form.cart .reset_variations { font-size: inherit; }
.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th { padding: 0; text-align: left; }
.woocommerce div.product form.cart .variations th { width: 170px; padding-top: 8px; vertical-align: top; }

html .woocommerce-variation-price .price { color: var(--contrast-2) !important; }

.woocommerce-product-details__short-description ul { margin: 0 0 0 1em; }

.icons-product-page-wrap { display: flex; flex-direction: column; gap: 5px; font-size: 22px; margin-bottom: 40px; }
.icons-product-page-wrap .icons-product-page i { display: inline-flex; align-items: center; justify-content: center; width: 32px; color: #005b97; }

/* WooCommerce Message */
html .woocommerce-message { background-color: var(--base-3); color: var(--contrast-2); border: 1px solid var(--contrast-3); border-radius: 5px; color: var(--contrast-3); padding: 20px; outline: none!important; }

div.woocommerce-message a.button, 
div.woocommerce-message a.button:focus, 
div.woocommerce-message a.button:hover, 
div.woocommerce-message a, 
div.woocommerce-message a:focus, 
div.woocommerce-message a:hover{
    color: var(--contrast-3);
}

/* WooCommerce - Add to Cart Sticky Panel */
.add-to-cart-panel { padding: 15px 0; box-shadow: 0 2px 2px -2px rgba(0, 0, 0, .2); border: none; }
.add-to-cart-panel>div { padding: 0 30px; font-size: 18px; }
.add-to-cart-panel form.cart { display: flex; gap: 10px; }
.add-to-cart-panel .product-price { color: var(--contrast-2); }

/* 3er Packs */
.postid-6932.woocommerce div.product.do-quantity-buttons form.cart { display: none !important; }
.postid-6932 #wc-sticky-cart-panel { display: none !important; }

@media (min-width: 750px) {
    html .fc-progress-bar .fc-progress-bar__inner { padding: 0 0 20px 0; }
}

/* Produktanker Box */
.produkt-anker-box { background-color: var(--base-3); position: relative; text-align: center; display: flex; justify-content: center; flex-wrap: wrap; align-items: center; gap: 10px; padding: 10px 0; margin-bottom: 40px; }
.produkt-anker-box a { background-color: var(--contrast-3); color: var(--base-3); padding: 10px 20px; display: block; border-radius: 5px; }

/* Various WooCommerce Tweaks */
.woocommerce div.product form.cart .reset_variations { border-radius: 5px; font-weight: 500; text-transform: uppercase; margin-top: 15px; }
.woocommerce-variation-add-to-cart { gap: 15px; }
html .woocommerce .related ul.products li.product,
html .woocommerce .up-sells ul.products li.product { background-color: var(--base-2); width: 100%; padding: 40px; border-top-left-radius: 5px; border-top-right-radius: 5px; border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; text-align: left; align-items: flex-start; }
html .woocommerce .related ul.products li.product .button { margin: 0; margin-top: auto; width: auto; }
html .woocommerce .related ul.products li.product .woocommerce-LoopProduct-link h2 { font-size: 28px; margin-top: 20px; margin-bottom: 0px; color: var(--contrast-3); }
html .woocommerce .related ul.products li.product p.price { color: var(--contrast-2); font-size: 24px; font-weight: 500; }
html .woocommerce .related ul.products li.product ul.usp-list li { color: var(--contrast-2); }

/* Doppelte h2 auf Produkten*/
.woocommerce-Tabs-panel.woocommerce-Tabs-panel--description > h2:first-child { display: none; }
.woocommerce.widget_shopping_cart .woocommerce-mini-cart__buttons a { font-weight: bold !important; }

/* Product Details Link */
.view-product-link { text-decoration: underline solid !important; text-decoration-color: color-mix(in srgb, currentColor 30%, transparent); }

/* WC tab styling */
@media screen and (min-width: 1024px) {
     .wc-tabs { text-align: center; justify-content: center; box-shadow: inset 0px -1px 0px 0px #E6E6E6; }
     .wc-tabs > li:first-child { border-top-left-radius: 5px!important; }
     .wc-tabs > li:last-child { border-top-right-radius: 5px!important; }
}

.woocommerce ul.products li.product a img {
    width: 300px !important;
    height: auto;
    display: block;
    margin: 0 0 1em;
    box-shadow: none;
}

/* shop page fix regular listing vs gridblock */
body.norsan-shop-page #wc-column-container {
    display: none;
}

.wpzoom-rcb-index-media img {
    height: 14em;
}

/* Shortcode Title + Pricing */
html .woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    margin: 0 0 5px 0;
}

html .woo-categories .woocommerce ul.products li.product .price {
    margin: 0 0 10px 0;
}

/* Mini Cart */
.wgm-info.woocommerce-de_price_taxrate { font-size: 12px; }

/* WooCommerce Checkout Fields Positioning */
@media screen and (min-width: 769px) {
   .fc-checkout-step .address-field{
			 float: left;
			 width: 71% !important;
			margin-right: 4% !important;
			margin-left: 0;
		}

		.fc-checkout-step #shipping_house_number_field,
		.fc-checkout-step #billing_house_number_field{
			float: left;
			width: 25% !important;
		} 
}


html div.woocommerce form .fc-checkout-step div.fc-expansible-form-section, 
.fc-checkout-step #billing_address_2_field{
	width: 100% !important;
	margin-right: 0!important;
	float: none;
}

.fc-checkout-step  #shipping_city_field,
.fc-checkout-step  #shipping_state_field,
.fc-checkout-step  #shipping_country_field,
.fc-checkout-step  #shipping_postcode_field,
.fc-checkout-step  #billing_city_field,
.fc-checkout-step  #billing_state_field,
.fc-checkout-step  #billing_country_field,
.fc-checkout-step  #billing_postcode_field{
	width: 100% !important;
	margin-right: 0!important;
	float: none;
}

/* -------------------------------------------------------------------------------------------- */
/* Slider */
/* -------------------------------------------------------------------------------------------- */
.wp-swiper>.wp-swiper__wrapper{ margin-bottom: 0; }

:root { 
    --swiper-navigation-size: 32px; 
    --swiper-navigation-sides-offset: 0px;
    --swiper-theme-color: var(--base-3);
    --swiper-pagination-bullet-inactive-color: var(--base-3);
    --swiper-pagination-bullet-inactive-opacity: 0.2;
    --swiper-pagination-bottom: 10px;
    --swiper-pagination-bullet-border-radius: 50%;
    --swiper-pagination-bullet-height: 8px;
    --swiper-pagination-bullet-width: 8px;
}

.inline-slider .swiper-button-next:after,
.inline-slider .swiper-button-prev:after { color: var(--contrast-3); }
.inline-slider .swiper-pagination { text-align: center; padding: 0 15px; }

@media (max-width: 768px) {
    .hero-slider .swiper-button-next, .hero-slider .swiper-button-prev { display: flex !important; }
}

.inline-slider {
	--swiper-navigation-sides-offset: -30px;
}

@media screen and (max-width: 1024px) {
    --swiper-navigation-sides-offset: 10px;
}

/* Inline-Slider-2 */
.inline-slider-2  { 
    --swiper-navigation-size: 32px; 
    --swiper-navigation-sides-offset: -60px;
    --swiper-theme-color: var(--contrast-3);
    --swiper-pagination-bullet-inactive-color: var(--contrast-3);
    --swiper-pagination-bullet-inactive-opacity: 0.2;
    --swiper-pagination-bottom: -40px;
    --swiper-pagination-bullet-border-radius: 50%;
    --swiper-pagination-bullet-height: 8px;
    --swiper-pagination-bullet-width: 8px;
}

.inline-slider-2 { padding-bottom: 40px; }
.inline-slider-2 .swiper-button-next:after,
.inline-slider-2 .swiper-button-prev:after { color: var(--contrast-3); }
.inline-slider-2 .swiper-pagination { text-align: center; padding: 0 15px; }

/* -------------------------------------------------------------------------------------------- */
/* Misc */
/* -------------------------------------------------------------------------------------------- */
/* Rezept Optimizations */
article.category-rezepte .entry-content h1{
	color: var(--contrast-2)!important;
  	font-weight: 500!important;
}

article.category-rezepte .entry-content h1 strong{ 
	font-weight: inherit; 
}

article.category-rezepte .wpzoom-recipe-card-buttons a{
	background-color: var(--accent)!important;
}

article.category-rezepte .entry-content .wp-block-separator{
	display: none;
}

html .wp-block-wpzoom-recipe-card-block-recipe-card.is-style-default .recipe-card-heading .recipe-card-title {
    font-family: inherit;
	font-weight: 500;
	color: var(--contrast-2);
}

/*Pop Banner with NL */
.bannercontainer { display: flex; justify-content: center; }
.banner { position: fixed; box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px; top: 100px; flex-grow: 1; z-index: 999; transform: translatex(-300vw); animation: banner-fade-in .5s 2s ease-in forwards; }
.close-btn { position: absolute; top: 5px; right: 5px; }

@keyframes banner-fade-in {
     0% { transform: translatex(-300vw); }
     100% { transform: translatex(0); }
}

.hide-me { display: none; }
.background-video { position: absolute; opacity: 0.5; }
video[poster] { object-fit: cover; width: 100%; height: 100%; }

/* Adjust the Media/Text Block to our spacing */
@media screen and (min-width: 1024px) {
     .wp-block-media-text>.wp-block-media-text__content { padding: 0 0 0 80px; }
     .wp-block-media-text.has-media-on-the-right>.wp-block-media-text__content { padding: 0 80px 0 0; }
}

/* Wissenankerbox */
.wissen-anker-box { background-color: var(--base-3); position: sticky; z-index: 2; top: 50px; text-align: center; display: flex; justify-content: center; flex-wrap: wrap; align-items: center; gap: 10px; padding: 10px 0; margin-bottom: 40px; }
.wissen-anker-box a { background-color: var(--contrast-3); color: var(--base-3); padding: 10px 20px; display: block; border-radius: 5px; }
.wissen-anker-box { top: 75px !important; }

/* Entry Meta / Pagination under posts */
.single-post article .entry-meta { font-size: 100%; }
.single-post article .entry-meta .cat-links,
.single-post article .entry-meta .tags-links { display: none; }
.single-post article .entry-meta .post-navigation { width: 100%; display: flex; justify-content: space-between; font-size: 100%; }
.single-post article .entry-meta .post-navigation .gp-icon { display: block; margin: 0; }
.single-post article .entry-meta .post-navigation .nav-previous { display: flex; gap: 8px; align-items: center; }
.single-post article .entry-meta .post-navigation .nav-next { display: flex; flex-direction: row-reverse; gap: 8px; align-items: center; }

/* Table */
.wp-block-table { margin: 0 0 40px 0; }
.wp-block-table table { border-collapse: collapse; width: 100%; margin: 0; padding: 0; border: 1px solid #014272; }
.wp-block-table thead { background-color: #014272; color: white; border-bottom: none; }
.wp-block-table th { padding: 0.5rem; text-align: left; font-weight: 600; border: 1px solid #014272; }
.wp-block-table td { padding: 0.5rem; border: 1px solid #014272; }
.wp-block-table tbody tr:hover { background-color: #f7f7f7; }

/* Table Stripes */
.wp-block-table.is-style-stripes tbody tr:nth-child(odd){
	background-color: #F4F8FA;
}
.wp-block-table tbody tr:hover{
	background-color: transparent;
}

.wp-block-table table {
    border-collapse: separate;
	border-radius: 5px;
	overflow: clip;
}

/* Omega 3 Selbsttest Quiz */
.fluent_form_6 .ff-el-form-check-label .ff-el-form-check-input { width: 24px; height: 24px; margin-right: 10px; color: #CE6732; accent-color: #CE6732; }
.fluent_form_6 .quiz-info { display: block; font-size: 20px; background: rgba(0,0,0,0.1); padding: 20px; border-radius: 5px; margin-bottom: 40px!important; }
.fluent_form_6 .quiz-info p:last-child { margin: 0; }
html .fluent_form_6 .ff-el-is-error .text-danger { color: var(--accent); font-size: 16px; }
.fluent_form_6 .ff_step_nav_last { margin-top: 40px; }

/* WP Grid Builder */
html .wpgb-facet.wpgb-style-1 select.wpgb-select { padding-right: 50px; }
html .wpgb-facet>fieldset:last-child { margin-bottom: 20px; }
.priceExtra { padding-right: 15px; }

/* Oil Intake Calculator */
.oil-intake-result { display: flex; align-items: center; justify-content: center; gap: 16px; }
.oil-intake-result img { width: 30%; max-width: 120px; height: auto; }
.oil-intake-result:has(span:empty) { display: none; }
.gb-tabs button.gb-button { border-bottom-left-radius: 0!important; border-bottom-right-radius: 0!important; font-weight: 700!important; transition: color 0.2s; }

/* Trenne Headlines mit Bindestrichen auf kleinen Geräten */
@media (max-width: 768px) {
    .gb-headline-a480d372 { hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto; overflow-wrap: break-word; word-wrap: break-word; }
}

/* Fluent Forms Button */
.ff_btn_no_style { border-radius: 5px; font-weight: 500!important; text-transform: uppercase; }

/* Datei Download Button */
.wp-block-file:not(.wp-element-button) { font-size: 18px; }
a.wp-element-button.wp-block-file__button { background: var(--accent); color: #ffffff; font-size: 18px; text-transform: uppercase; font-weight: 500; }
.bm-cheapest-bulk b { font-size: 1.3em; }

/* Badge Neu */
.badge-neu, .items-badge-neu li { position: relative; }
.badge-neu:after, .items-badge-neu li:after { content: 'Neu'; position: absolute; display: flex; align-items: center; justify-content: center; top: 0; right: 0; background: var(--accent); color: #ffffff; border-radius: 50%; text-transform: uppercase; font-size: 14px; aspect-ratio: 1 / 1; padding: 8px; font-weight: 600; pointer-events: none; mask-image: url("data:image/svg+xml,%3Csvg width='28' height='27' viewBox='0 0 28 27' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M.924 17.196a1.325 1.325 0 0 0 .62.81l2.547 1.472v2.932a1.333 1.333 0 0 0 1.333 1.333h2.932l1.472 2.547a1.345 1.345 0 0 0 1.155.666c.232 0 .463-.061.668-.18l2.544-1.47 2.547 1.472a1.335 1.335 0 0 0 1.82-.487l1.472-2.547h2.932a1.333 1.333 0 0 0 1.333-1.333v-2.932l2.547-1.472a1.332 1.332 0 0 0 .486-1.823l-1.47-2.545 1.472-2.544a1.333 1.333 0 0 0-.487-1.821L24.3 7.802V4.868a1.333 1.333 0 0 0-1.333-1.333h-2.932L18.565.99a1.344 1.344 0 0 0-1.33-.657c-.173.023-.34.08-.492.169l-2.548 1.47L11.65.5a1.333 1.333 0 0 0-1.822.487L8.356 3.534H5.424a1.333 1.333 0 0 0-1.333 1.333v2.932L1.544 9.27a1.337 1.337 0 0 0-.486 1.824l1.472 2.544-1.472 2.544a1.346 1.346 0 0 0-.134 1.013Z' fill='%23000'/%3E%3C/svg%3E"); mask-size: cover; mask-position: center center; }

.sub-menu .badge-neu:after { transform: translatex(-20px) translatey(30px); }
.items-badge-neu li:after { transform: translatex(30%) translatey(-30%); }

.swiper-button-next:after, .swiper-button-prev:after {
    color: white;
}

/* -------------------------------------------------------------------------------------------- */
/* Motion Cards */
/* -------------------------------------------------------------------------------------------- */
.custom_col_box.alignwide { position: relative; }
.card-1, .card-2, .card-3, .card-1-orange, .card-1-blue, .card-1-green { border-radius: 37px; width: 45% !important; margin: auto !important; padding: 20px; }
.card-1 .gb-button, .card-2 .gb-button, .card-3 .gb-button,
.card-1-orange .gb-button, .card-1-blue .gb-button, .card-1-green .gb-button { background: transparent; padding-top: 20px; }
.card-1 .gb-button:hover, .card-2 .gb-button:hover, .card-3 .gb-button:hover,
.card-1-orange .gb-button:hover, .card-1-blue .gb-button:hover,
.card-1-green .gb-button:hover { background: transparent; }
.card-1 img, .card-2 img, .card-3 img, .card-1-orange img, .card-1-blue img,
.card-1-green img { width: 108px; height: auto; margin-bottom: 15px; }
.custom_col_box { position: relative; }
.card-2, .card-3, .card-1-orange, .card-1-blue, .card-1-green { position: absolute; top: 0; right: 0; left: 0; }
.custom_container_box1 { height: 100vh !important; }
.card-1-orange { transform: rotate(11deg); transition: unset !important; }
.card-1-blue { transform: rotate(30deg); transition: unset !important; }
.card-1-green { transform: rotate(7deg); transition: unset !important; }
.pin-spacer { width: 100% !important; max-width: 100%; margin: auto; align-items: center !important; justify-content: center; display: flex; display: flex !important; }

@media(max-width:767px) {
     .custom_container_box1 { height: 100vh !important; display: flex; flex-wrap: wrap; }
     .card-1, .card-2, .card-3, .card-1-orange, .card-1-blue, .card-1-green { border-radius: 37px; width: 80% !important; margin: auto !important; padding: 20px; }
     .custom_col_box.alignwide { position: relative; margin-top: 50px; }
     .gb-container.gb-container-76d04b42.card-2.alignwide { transform: rotate(2deg) ; }
     .card-1 { transform: rotate(4deg) ; }
     .card-1-blue { transform: rotate(6deg) ; }
     .card-1-orange { transform: rotate(8deg) ; }
     .card-1-green { transform: rotate(10deg) ; }
     .card-1 h2, .card-2 h2, .card-3 h2, .card-1-orange h2, .card-1-blue h2,
     .card-1-green h2, .card-1 p, .card-2 p, .card-3 p, .card-1-orange p,
     .card-1-blue p, .card-1-green p { font-size: 16px; }
     .card-1 .gb-button, .card-2 .gb-button, .card-3 .gb-button,
     .card-1-orange .gb-button, .card-1-blue .gb-button, .card-1-green .gb-button { font-size: 16px; }
     .card-1 img, .card-2 img, .card-3 img, .card-1-orange img, .card-1-blue img,
     .card-1-green img { width: 60px; height: auto; margin-bottom: 15px; }
}

/* -------------------------------------------------------------------------------------------- */
/* Carousel */
/* -------------------------------------------------------------------------------------------- */
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}

/* Owl Carousel Custom Styles */
.gb-grid-wrapper.owl-carousel { margin: 0!important; }
html .post-slider { margin: 0; }
html .owl-nav { position: absolute; height: 40px; top: 50%; transform: translatey(-50%); left: 0; right: 0; pointer-events: none; }
html .owl-carousel .owl-nav button.owl-next,
html .owl-carousel .owl-nav button.owl-prev { position: absolute; font-size: 24px; color: var(--contrast-3); pointer-events: initial; }
html .owl-carousel .owl-nav button.disabled { opacity: 0.35; }
.owl-prev { left: 0; transform: translateX(calc(-100%)); }
.owl-next { right: 0; transform: translateX(calc(100%)); }
.owl-prev span, .owl-next span { display: none; }
.owl-prev:before { font-family: "Font Awesome 5 Free"; content: "\f053"; /* chevron-left */ font-weight: 600; }
.owl-next:before { font-family: "Font Awesome 5 Free"; content: "\f054"; /* chevron-right */ font-weight: 600; }
.owl-dots { display: flex; gap: 10px; justify-content: center; align-items: center; flex-wrap: wrap; margin-top: 20px; }
.owl-dots .owl-dot span { display: block; height: 8px; width: 8px; border-radius: 100%; background: var(--contrast-3); opacity: 0.35; transition: all 0.3s ease; }
.owl-dots .owl-dot.active span { opacity: 1; }

.owl-carousel.post-carousel .owl-stage{ height: 100%;}
.owl-carousel.post-carousel .owl-item{ display: flex; height: 100%; }

.woo-carousel{ position: relative; width: 100%; }
.woo-carousel.woo-categories ul.products{ display: block; }
.woo-carousel.woo-categories ul.products .owl-item{ display: block; float: left; }
.woo-carousel.woo-categories .owl-stage-outer{ overflow: hidden; }
html .woo-carousel .owl-nav button.owl-next,
html .woo-carousel .owl-nav button.owl-prev { position: absolute; font-size: 24px; color: var(--contrast-3); background: none; pointer-events: initial; padding: 0; }
html .woo-carousel .owl-nav button.disabled { opacity: 0.35; }
html .woo-carousel .owl-dots .owl-dot{ padding: 0; background: none; }

.owl-carousel .owl-stage-outer{
	height: auto!important;
}

.owl-carousel.post-carousel .owl-item > div{
	min-height: 480px;
}

/* -------------------------------------------------------------------------------------------- */
/* Store Locator */
/* -------------------------------------------------------------------------------------------- */
#wpsl-wrap { overflow: hidden; }
#wpsl-search-wrap form { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
#wpsl-search-wrap form > div { margin: 0!important; display: flex; }
html .wpsl-input label, html #wpsl-radius label, html #wpsl-category label { width: unset; }
.wpsl-search { padding: 20px; background-color: var(--base-4); margin: 0; margin-bottom: 40px; border-radius: 5px; }
html #wpsl-stores, html #wpsl-direction-details, html #wpsl-gmap { height: 500px !important; }
#wpsl-result-list { margin: 0!important; background-color: var(--base-2); border-radius: 5px 0 0 5px; }
#wpsl-gmap { width: 67%; }

@media (max-width: 675px) {
    #wpsl-gmap { width: 100%; margin: 0; }
}

#wpsl-wrap #wpsl-result-list li { padding: 15px; border-bottom: 1px solid var(--base-4); }
.wpsl-store-location strong { color: var(--contrast-2); }

/* -------------------------------------------------------------------------------------------- */
/* Tribe Events */
/* -------------------------------------------------------------------------------------------- */
html .tribe-events{
    --tec-color-background-view-selector-list-item-hover: var(--base-4);
    --tec-color-text-events-bar-submit-button-hover: white;
    --tec-color-text-events-bar-submit-button: white;
    --tec-color-background-events-bar-submit-button-hover: var(--contrast-3);
    --tec-font-size-2: 18px;
    --tec-font-size-1: 18px;
    --tec-color-background: var(--base-2);
    --tec-color-icon-disabled: var(--base-2);
    --tec-color-icon-primary: var(--contrast-3);
    --tec-color-background-secondary: var(--contrast-3);
    --tec-color-background-secondary-hover:  var(--contrast-3);
    --tec-color-border-default: var(--base-2);
    --tec-color-text-primary: var(--contrast-2);
    --tec-grid-gutter-page: 0;
    --tec-grid-gutter-page-small: 0;
    --tec-grid-width: 100%;
    --tec-color-background-messages: var(--base-2);
    --tec-font-weight-bold: 500;
    --tec-color-accent-secondary: var(--contrast-3);
}

.tribe-events .tribe-events-calendar-list__event-datetime { display: none; }
.tribe-events-c-events-bar__filter-button-container { display: none!important; }

html .tribe-events .tribe-events-header__events-bar { border-radius: 5px; }
.tribe-events .tribe-events-c-search__button:focus,
.tribe-events button.tribe-events-c-search__button:focus,
.tribe-events .tribe-events-c-events-bar .tribe-common-form-control-text__input,
.tribe-events .tribe-events-c-events-bar__filter-button:focus { outline: none; }
.single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-text:focus, .single-tribe_events .tribe-events-c-subscribe-dropdown button.tribe-events-c-subscribe-dropdown__button-text:focus, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-text:focus, .tribe-events .tribe-events-c-subscribe-dropdown button.tribe-events-c-subscribe-dropdown__button-text:focus {
    outline: none;
}
html .tribe-filter-bar .tribe-filter-bar-c-pill__pill { border-radius: 5px; background-color: var(--base-4); outline: none!important; }
html .tribe-filter-bar .tribe-filter-bar-c-pill__pill:hover { color: var(--base-3); outline: none!important; }
html .tribe-filter-bar .tribe-filter-bar-c-pill--has-selections .tribe-filter-bar-c-pill__pill { border-radius: 5px; --tec-color-text-primary: white; }
.tribe-events .tribe-events-calendar-list__event-featured-image { border-radius: 5px; }
.tribe-events .tribe-events-calendar-list__event-date-tag-weekday,
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum { color: var(--contrast-3)!important; }
.tribe-common .tribe-common-anchor-thin:active,
.tribe-common .tribe-common-anchor-thin:focus,
.tribe-common .tribe-common-anchor-thin:hover { border-bottom: 0px solid var(--tec-color-link-primary)!important; outline: none!important; }
html .tribe-common .tribe-common-anchor-thin { transition: none!important; }
html .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button { color: white!important; background-color: var(--accent)!important; border-color: var(--accent)!important; }
html .tribe-events-adv-list-widget .tribe-events-widget-link a,
html .tribe-events-back a,
htmln.tribe-events-list-widget .tribe-events-widget-link a,
html ul.tribe-events-sub-nav a { font-size: 18px; }
.single-tribe_events .tribe-blocks-editor .tribe-events-single-event-title { font-size: 40px; line-height: 1.3; }
.single-tribe_events .tribe-blocks-editor .tribe-events-schedule .tribe-events-schedule__datetime { font-size: 28px; }
.single-tribe_events .tribe-blocks-editor .tribe-events-schedule .tribe-events-schedule__datetime > span { font-size: 28px; color: var(--contrast-3); font-weight: 500; }
.events-list #tribe-events-footer, .single-tribe_events #tribe-events-footer,
.tribe-events-day #tribe-events-footer, .tribe-events-map #tribe-events-footer,
.tribe-events-photo #tribe-events-footer { border-top: 1px solid var(--base-4); }
#tribe-events-pg-template, .tribe-events-pg-template { max-width: 100%; }
#tribe-events, #tribe-events-pg-template, .tribe-events-pg-template { padding: 0; }
html .single-tribe_events .tribe-events .tribe-events-c-subscribe-dropdown__container, html .tribe-block__events-link .tribe-events .tribe-events-c-subscribe-dropdown__container {
    width: unset;
}
html .single-tribe_events .tribe-events-c-subscribe-dropdown__button, html .tribe-block__events-link .tribe-events-c-subscribe-dropdown__button {
    width: auto;
}

/* -------------------------------------------------------------------------------------------- */
/* SearchWP Adjustments */
/* -------------------------------------------------------------------------------------------- */
.custom_wp_search_box { background: #ffffff; padding: 30px 30px 20px 30px; border-radius: 5px; box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.2); }
.searchwp-form input[type=submit].swp-button { background-color: var(--accent); border-radius: 5px; }
.gp-modal__container { width: 800px; }

html main.site-main.swp-rp-main, html main.wp-block-group.swp-rp-main { width: 100%; max-width: 1400px; margin: 0 auto 0 auto!important; padding: 80px 30px 80px 30px; }
@media (max-width: 768px) { 
    html main.site-main.swp-rp-main, html main.wp-block-group.swp-rp-main { padding: 80px 25px 80px 25px; } 
}
html .swp-rp-main h1 { color: var(--contrast-2); }
html .swp-result-item--img img { aspect-ratio: 1 / 1; object-fit: cover; object-position: center center; border-radius: 5px; }
html .swp-rp-main .nav-links > * { padding: 5px 15px; background-color: var(--base-2); border-radius: 5px; }
html .swp-result-item--info-container h2.entry-title { color: var(--contrast-2); }
html .swp-result-item--desc { font-size: 18px; }

/* --------------------------------------------------------------------------------------------
 * New Style Design System
 * -------------------------------------------------------------------------------------------- */
/* New Style: Fixed font weight for headlines */
.new-style h1, .new-style h2, .new-style h3, .new-style h4, .new-style h5,
.new-style h6, .new-style .new-h1, .new-style .new-h2, .new-style .new-h3,
.new-style .new-h4, .new-style .new-h5, .new-style .new-h6 { font-weight: 600; margin-top: 0; }
.new-style h1 strong, .new-style h2 strong, .new-style h3 strong,
.new-style h4 strong, .new-style h5 strong, .new-style h6 strong,
.new-style .new-h1 strong, .new-style .new-h2 strong, .new-style .new-h3 strong,
.new-style .new-h4 strong, .new-style .new-h5 strong, .new-style .new-h6 strong { font-weight: inherit; }
.new-style strong, .new-style b { font-weight: 600; }
.new-style p { margin-bottom: 24px; }

/* New Style: Remove bottom margin from final paragraph */
.new-style p:last-child:last-of-type, .new-style ul:last-child:last-of-type,
.new-style ol:last-child:last-of-type { margin-bottom: 0; }

/* New Style: Headline bottom spacing */
.new-style h1, .new-style .new-h1 { font-size: 48px; line-height: 1.2; margin-bottom: 16px; color: var(--contrast-3); }
.new-style h2, .new-style .new-h2 { font-size: 24px; margin-bottom: 16px; color: var(--contrast-2); }
.new-style h3, .new-style .new-h3 { font-size: 22px; margin-bottom: 8px; color: var(--contrast-2); }
.new-style h4, .new-style .new-h4 { font-size: 20px; margin-bottom: 1rem; color: var(--contrast-2); }
.new-style h5, .new-style .new-h5 { font-size: 18px; margin-bottom: 0.75rem; color: var(--contrast-2); }
.new-style h6, .new-style .new-h6 { font-size: 18px; margin-bottom: 0.75rem; color: var(--contrast-2); }

@media screen and (max-width: 1024px) {
    .new-style h1, .new-style .new-h1 { font-size: 40px; line-height: 1.3; }
}

@media screen and (max-width: 768px) {
    .new-style h1, .new-style .new-h1 { font-size: 32px; line-height: 1.4; }
}

/* New Style: Paragraph styling */
.new-p, .new-style .new-p { font-size: 18px; line-height: 1.5; color: var(--contrast); font-weight: 400; margin-bottom: 1rem; }

/* New Style: 56px top spacing when headlines follow paragraphs or lists */
.new-style p + h1, .new-style p + h2, .new-style p + h3, .new-style p + h4,
.new-style p + h5, .new-style ul + h1, .new-style ul + h2, .new-style ul + h3,
.new-style ul + h4, .new-style ul + h5, .new-style ol + h1, .new-style ol + h2,
.new-style ol + h3, .new-style ol + h4, .new-style ol + h5 { margin-top: 56px; }

/* New Style: List Spacing*/
.new-style ul, .new-style ol { margin-top: 0; margin-bottom: 1rem; padding-left: 1em; margin-left: 0px; }
.new-style ul li::marker, .new-style ol li::marker { color: var(--contrast); font-weight: 600; }
.new-style ul li, .new-style ol li { padding-left: 0.25rem; }
.new-style ul:last-child, .new-style ol:last-child { margin-bottom: 0; }

/* New Style: Divider / HR */
.new-style hr, .new-style hr.wp-block-separator { border-color: var(--base-4); margin-top: 56px; margin-bottom: 56px; }

/* New Style: Auto Columns */
.new-style .column-2-auto { columns: 2; column-gap: 2rem; }
.new-style .column-3-auto { columns: 3; column-gap: 2rem; }
.new-style .column-4-auto { columns: 4; column-gap: 2rem; }
.column-break { break-after: column; }

/* New Style: Links */
.new-style :is(p) a:not([class*="button"]) { text-decoration: underline solid; color: var(--accent); text-decoration-color: color-mix(in srgb, var(--accent) 30%, transparent); text-decoration-thickness: 1px; text-underline-offset: 4px; }
.new-style :is(p) a:not([class*="button"]):hover { text-decoration-color: var(--accent); }

/* Usp List - Products*/
ul.usp-list { list-style: unset; text-align: center; display: flex; flex-direction: column; align-items: flex-start;}
ul.usp-list li { display: flex; text-align: left; gap: 0.5em;padding: 8px 0;line-height: 1.5em}
ul.usp-list li::before { content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23CE6732' d='m9.55 15.15l8.475-8.475q.3-.3.7-.3t.7.3t.3.713t-.3.712l-9.175 9.2q-.3.3-.7.3t-.7-.3L4.55 13q-.3-.3-.288-.712t.313-.713t.713-.3t.712.3z'/%3E%3C/svg%3E"); flex-shrink: 0; width: 24px; height: auto; padding-top: 0.1em; }
.wpgb-masonry .usp-list li {min-height: 4em;width: 100%;border-bottom: 1px solid #D2DCE5;}
.wpgb-masonry .usp-list li:first-child {border-top: 1px solid #D2DCE5;}

.image-circle {
    aspect-ratio: 1 / 1;
    border-bottom-left-radius: 50%;
    border-bottom-right-radius: 50%;
    border-top-left-radius: 50%;
    border-top-right-radius: 50%;
    object-fit: cover;
}
/* Woocommerce styles for Shop */
.woocommerce-archive-wrapper ul.products.columns-3 li.product{
  background-color: #eaf1f7;
 padding: 30px;
  border-radius: 8px; /* optional */
	display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.woocommerce-archive-wrapper ul.products[class*="columns-"] li.product a.button {
    position: absolute;
    bottom: 0;
    margin: 30px auto;
    align-self: center;
}
.woocommerce-archive-wrapper ul.products[class*="columns-"] ul.usp-list li:first-child {
    border-top: 1px solid #D2DCE5;
}
.woocommerce-archive-wrapper ul.products.columns-3 ul.usp-list li{
    border-bottom: 1px solid #D2DCE5;
	width: 100%;
}
.woocommerce-archive-wrapper ul.products.columns-3 ul.usp-list {
    margin: 30px 0px;
}

.woocommerce-archive-wrapper .view-product-link{
	display: none;
}

