/*
Theme Name: Twenty Twenty Child Theme
Author:
Description: Twenty Twenty Child Theme
Version: 1.0
Template: twentytwenty
This is the child theme for Twenty Twenty theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/

/* --- Google Fonts Import --- */
/* Hinweis: @import kann die Ladeleistung beeinträchtigen. Besser via functions.php oder <link> im Head. */
/* --- Globale Styles & Typografie --- */
body, body p, li {
    font-family: Roboto, sans-serif !important; /* Basis Schriftart */
}
body {
    overflow-x: hidden !important; /* Verhindert horizontales Scrollen */
    font-weight: 300 !important; /* Basis Schriftgewicht */
}
body p, li {
    font-weight: 400 !important; /* Schriftgewicht für Absätze und Listen */
}
body .elementor-accordion-title,
body h1, h2, h3, h4, h5, h6,
.newsss .head .elementor-widget-container,
.owl-carousel .card li h2, /* Betrifft ggf. Slider */
.woocommerce-cart table.shop_table.shop_table_responsive.cart th /* Warenkorb Tabelle */
{
    font-family: Poppins, sans-serif !important; /* Überschriften Schriftart */
}
.heading-size-6,
.newsletter-popup .gform_footer.top_label input, /* Gravity Forms Popup */
.owl-carousel .button, /* Slider Button */
h6 {
    text-transform: capitalize !important;
}
.cart_totals .checkout-button, /* Warenkorb */
.elementor-12 .elementor-element.elementor-element-082d157 > .elementor-widget-container, /* Spezifische Elementor ID */
.single-post p, /* Einzelne Beiträge */
.woocommerce-cart button, /* Warenkorb */
body table {
    font-family: Roboto, sans-serif !important; /* Sicherstellen, dass Roboto verwendet wird */
}
.acc, .con { /* Allgemeine Klassen? */
    opacity: .5;
}
.bestseller .card, /* Bestseller Sektion */
.finds ul.faqaa li, /* FAQ Sektion */
.tabberscons ol, /* Tabs/Accordion? */
.tabs-outer ul.tabs, /* Tabs Sektion */
ul.acc { /* Accordion? */
    list-style-type: none;
}
.error-cart ul.woocommerce-error { /* Warenkorb Fehler */
    margin-top: 50px;
    border-radius: 20px;
    color: #4c673d;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    font-style: normal;
}
a {
    color: #323232; /* Standard Link Farbe */
}
a:hover, a:focus, .bdp-readmorebtn:focus, .blog .bdp-readmorebtn:hover {
    text-decoration: none !important; /* Verhindert Unterstreichung bei Hover */
}


/* --- Versteckte Elemente --- */
/* Viele Elemente werden hier pauschal ausgeblendet. Prüfen, ob das noch benötigt wird. */
.archive .elementor-element-01e2cb1 .elementor-element-cb33736 label,
.archive .elementor-element-2687245 .wpc-edit-filter-set,
.archive .elementor-element-2687245 .wpc-filters-section-28400 .wpc-filter-header,
.archive .woocommerce ul li .star-rating,
.bestseller .card a:after,
.bundled_product.bundled_product_summary.product,
.cart-collaterals .cross-sells,
.comment_container img.avatar.photo,
.faq-section .ui-accordion h3 .ui-accordion-header-icon, /* jQuery UI Accordion Icon */
.footer-nav-widgets-wrapper.header-footer-group,
.header-footer-group .primary-menu #wpmenucartli a:after,
.header-footer-group .primary-menu li:nth-child(4) a:after,
.header-footer-group .primary-menu li:nth-child(5) a:after,
.newsletter-popup .gform_body.gform-body label, /* Gravity Forms Popup */
.owl-carousel .owl-next span, /* Owl Carousel Navigation Text */
.owl-carousel .owl-prev span, /* Owl Carousel Navigation Text */
.owl-carousel .star-rating,
.product .summary .product_meta, /* Einzelprodukt Meta */
.product .summary .ui-accordion h3 .ui-accordion-header-icon, /* jQuery UI Accordion Icon */
.review-slider .owl-dots, /* Owl Carousel Dots */
.single .onsale, /* Sale Badge auf Einzelprodukt? */
.single-product .woocommerce-breadcrumb, /* Breadcrumb auf Einzelprodukt */
.single-product p.stock, /* Lagerstatus auf Einzelprodukt */
.slick-prev::before, /* Slick Slider Pfeil */
.spectrum-aqua~.spectrum-aqua, /* Spezifische Klassen Kombinationen */
.spectrum-gold-plus~.spectrum-gold-plus,
.spectrum-liposomales~.spectrum-liposomales,
.spectrum-vollspektrum~.spectrum-vollspektrum,
.subsnew #validation_message_1_1, /* Gravity Forms? */
.subsnew .gform_legacy_markup_wrapper div.validation_error, /* Gravity Forms? */
.subsnew form .gfield_label, /* Gravity Forms? */
.tabs-outer .step1:last-child .left-inner:before, /* Tabs Sektion */
.term-cbd-fur-tiere .cbd-oil-filter, /* Kategorie-spezifisch */
.term-cbd-kapseln .cbd-oil-filter,
.term-cbd-oel-fuer-hunde .cbd-oil-filter,
.term-cbd-oel-pferde .cbd-oil-filter,
.term-fuer-katzen-und-kleine-hunde .cbd-oil-filter,
.woocommerce-cart .woocommerce-message, /* Warenkorb Nachrichten */
a.woocommerce-product-gallery__trigger, /* Galerie Zoom Button */
body.archive.tax-product_cat.term-cannabisoel-20-kapseln .cat-filter-section, /* Kategorie-spezifisch */
body.archive.tax-product_cat.term-cannabisol-10-kapseln .cat-filter-section,
body.archive.tax-product_cat.term-cannabisol-5-kapseln .cat-filter-section,
body.archive.tax-product_cat.term-cbd-fruchtgummis .cat-filter-section,
body.archive.tax-product_cat.term-cbd-schlaftropfen .cat-filter-section,
body.archive.tax-product_cat.term-salben .cat-filter-section,
body.search-results .post-meta-single-top .post-meta, /* Suche Meta */
header.entry-header.has-text-align-center.header-footer-group, /* Beitrag Header */
span.toggle-text, /* Menü Toggle Text */
.header-footer-group .header-inner .toggle-wrapper::before, /* Header Toggle */
#wpmenucartli span.cartcontents, /* Warenkorb Inhalt Zahl */
.product .summary .reset_variations, /* Variation Reset Link */
.product-type-variable p.price, /* Preis bei variablen Produkten (wird oft dynamisch gezeigt) */
.single-product form.cart .quantity, /* Menge auf Einzelproduktseite (ersetzt durch +/- Buttons?) */
.topbar .owl-carousel:after, /* Topbar Slider */
.topbar button, /* Topbar Buttons? */
.woocommerce-cart a.checkout-button.button.alt.wc-forward:after, /* Warenkorb Button */
.woocommerce-checkout .checkout_coupon.woocommerce-form-coupon, /* Checkout Coupon Form */
.woocommerce-checkout .woocommerce-form-coupon-toggle /* Checkout Coupon Toggle */
{
    display: none;
}

/* --- Layout & Container --- */
.container-fluid {
    max-width: 1280px;
    margin: 0 auto;
}
.container { /* Generischer Container, wird oft verwendet */
    margin: 0 auto;
    max-width: 1280px;
    width: 100%;
}
section.bg-images-outer,
section.slider-owl-outer {
    padding: 0; /* Kein Padding für bestimmte Sektionen */
}
section.shipping-related-section { /* Versand Sektion */
    width: 100%;
    display: inline-block;
}
.bg-images-outer .container {
    min-width: 1312px; /* Feste Mindestbreite, problematisch für Responsive */
    max-width: 1312px;
    margin: 0 auto;
}
.bg-images-outer .left { /* Layout innerhalb von bg-images-outer */
    display: flex;
    flex-wrap: wrap;
    width: calc(50% - 10px);
    margin-right: 10px;
}

/* --- Header Styles --- */
.header-footer-group {
    position: relative !important; /* Wichtig für Mega Menu? */
    z-index: 999;
    box-shadow: 0 5px 0 rgba(86, 127, 5, .04); /* Schatten unter Header */
    border-bottom: 1px solid #e2e8db;
}
.header-inner.section-inner {
    padding: 13px 15px !important; /* Header Innenabstand */
    max-width: 1280px !important;
    width: 100% !important;
    justify-content: normal !important; /* Flexbox Ausrichtung */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.header-titles-wrapper { /* Wrapper für Logo/Titel & Mobile Toggle */
    padding: 0 !important;
    display: flex !important; /* Mobile Layout Anpassung? */
    justify-content: space-between !important;
    width: calc(100% - 100px);
    position: relative;
    flex-wrap: wrap;
}
.header-titles { /* Logo/Titel */
    margin: 0 !important;
}
.site-logo img { /* Logo Größe */
    width: 100% !important;
}
#site-header .header-inner.section-inner .header-navigation-wrapper { /* Navigations-Wrapper Position */
    margin-left: auto !important;
}
.header-navigation-wrapper { /* Wrapper für Menü & Desktop Toggles */
    /* Styles hier */
}
.header-footer-group ul.primary-menu { /* Hauptmenü */
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
}
.header-footer-group ul.primary-menu li {
    margin: 0 !important;
    padding: 0 20px; /* Abstand zwischen Menüpunkten */
}
.header-footer-group ul.primary-menu li a { /* Menü Links */
    color: #000 !important;
    font-family: Roboto, sans-serif;
    font-size: 20px !important;
    font-weight: 400;
    line-height: 18px;
    position: relative;
    display: inline-block !important;
    float: none;
    text-decoration: none !important;
}
.header-footer-group ul.primary-menu li a:hover { /* Menü Links Hover */
    color: #4c673d !important;
}
li#menu-item-231, li#menu-item-35, li#menu-item-549 { /* Spezifische Menüpunkte Abstand */
    margin-right: 28px;
}
.header-footer-group .primary-menu li:hover a:after { /* Unterstrich bei Hover? */
    border-color: #4c673d !important;
}
/* Mega Menu Styles */
li#mega-menu-28554-0-0 { /* Spezifische Mega Menu Spalte */
    max-width: 262px !important;
}
.header-footer-group #mega-menu-wrap-header #mega-menu-header li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item h4.mega-block-title,
#mega-menu-wrap-header #mega-menu-header > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item h4.mega-block-title {
    font-family: "Poppins" !important;
    font-weight: 600 !important;
    color: #000 !important;
}
#mega-menu-wrap-header #mega-menu-header > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link,
#mega-menu-wrap-header #mega-menu-header > li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link {
    font-family: Poppins, sans-serif !important;
    font-weight: 400 !important;
    color: #000 !important;
    font-size: 16px !important;
}
.primary-menu ul.sub-menu { /* Standard Untermenü */
    background-color: #fff !important;
    box-shadow: 1px 3px 8px 4px #dfdfdf;
    width: 24rem;
}
.header-footer-group ul.primary-menu ul.sub-menu a {
    font-size: 16px !important;
}
/* Mega Menu Positionierung & Hintergrund */
.header-footer-group ul#mega-menu-header #mega-menu-item-28554 ul.mega-sub-menu,
.header-footer-group ul li .mega-sub-menu { /* Allgemeiner für Submenüs */
    display: flex; /* Statt display: none, um Konflikte zu vermeiden? */
    border: 0 !important;
    left: 0;
    right: 0;
    width: 100% !important;
    max-width: 1280px !important; /* Passt zur Container-Breite */
    z-index: 999;
    top: 100% !important;
    box-shadow: 0 0 10px rgb(0 0 0 / 10%);
}
.header-footer-group ul#mega-menu-header #mega-menu-item-28554 {
    position: static !important; /* Wichtig für Full-Width Mega Menu */
    z-index: 999;
}
.header-footer-group #mega-menu-header #mega-menu-item-28554,
.header-footer-group #mega-menu-header #mega-menu-item-28566,
.header-footer-group #mega-menu-header #mega-menu-item-28568 {
    padding: 40px 0 !important; /* Vertikaler Abstand für Hauptmenüpunkte */
}
/* Mega Menu Hintergründe */
#mega-menu-wrap-header,
#mega-menu-wrap-header #mega-menu-header,
#mega-menu-wrap-header #mega-menu-header #mega-menu-item-28554 ul.mega-sub-menu,
#mega-menu-wrap-header #mega-menu-header #mega-menu-item-28554 ul.mega-sub-menu a.mega-menu-link,
#mega-menu-wrap-header #mega-menu-header a.mega-menu-link,
#mega-menu-wrap-header #mega-menu-header li.mega-menu-column,
#mega-menu-wrap-header #mega-menu-header li.mega-menu-item,
#mega-menu-wrap-header #mega-menu-header li.mega-menu-row,
#mega-menu-wrap-header #mega-menu-header span.mega-menu-badge {
    background-color: #fff !important; /* Standard Hintergrund Weiß */
}
/* Spezifische Submenü-Hintergründe überschreiben (falls nötig) */
#mega-menu-wrap-header #mega-menu-header ul.mega-sub-menu,
#mega-menu-wrap-header #mega-menu-header ul.mega-sub-menu a.mega-menu-link {
    background-color: #4c673d !important; /* Grüner Hintergrund für Links im Submenü? */
    color: #fff !important;
}
/* Korrektur für verschachtelte Submenüs (Weißer Hintergrund) */
.header-inner .header-navigation-wrapper .mega-menu-wrap ul#mega-menu-header #mega-menu-item-28566 ul.mega-sub-menu,
.header-inner .header-navigation-wrapper .mega-menu-wrap ul#mega-menu-header #mega-menu-item-28568 ul.mega-sub-menu {
    background-color: #fff !important;
    box-shadow: 0 0 10px rgb(0 0 0 / 10%) !important;
    width: 200px !important; /* Feste Breite für Dropdowns */
}
/* Link Farbe in verschachtelten Submenüs */
.header-inner #mega-menu-wrap-header #mega-menu-header a.mega-menu-link {
    color: #000 !important;
    font-size: 16px !important;
    font-weight: 400;
}
/* Spezifischer Mega Menu Inhalt */
.header-inner #mega-menu-item-custom_html-3 .woocommerce-Price-amount.amount { /* Preis in Mega Menu */
    color: #878787 !important;
    font-size: 16px !important;
    font-weight: 400;
}
.header-footer-group ul li #mega-menu-28554-0-1 { /* Linke Spalte im Mega Menu */
    border-left: 2px solid #96b58c !important;
    padding-left: 4rem !important;
}
/* Produktliste im Mega Menu */
.header-footer-group #mega-menu-28554-0-1 ul.mega-sub-menu ul.product_list_widget {
    margin: 0;
    display: flex;
    float: none;
    align-items: inherit;
    padding: 10px 0 !important;
}
.header-footer-group #mega-menu-28554-0-1 ul.mega-sub-menu ul.product_list_widget li {
    margin: 0 10px 10px 0;
    width: calc(25% - 10px);
}
.header-footer-group #mega-menu-28554-0-1 ul.mega-sub-menu ul.product_list_widget li:nth-child(4n) {
    margin-right: 0; /* Kein rechter Rand beim 4. Element */
}
.header-footer-group #mega-menu-28554-0-1 ul.mega-sub-menu ul.product_list_widget li:first-child {
    padding-left: 0; /* Kein linker Rand beim 1. Element */
}
.header-footer-group #mega-menu-28554-0-1 ul.mega-sub-menu ul.product_list_widget li .product-title {
    color: #222;
    font-size: 16px;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 700;
    margin: 1rem 0;
    display: block;
}
.header-footer-group #mega-menu-28554-0-1 ul.mega-sub-menu ul.product_list_widget li img {
    display: block;
    float: none;
}
.header-footer-group #mega-menu-wrap-header #mega-menu-header li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-column>ul.mega-sub-menu>li.mega-menu-item {
    padding: 10px 10px 0; /* Abstand in Spalten */
}
/* Hover Effekt für Submenü */
.header-footer-group #mega-menu-header #mega-menu-item-28566 ul li:hover:after,
.header-footer-group #mega-menu-header #mega-menu-item-28568 ul li:hover:after {
    width: 100%;
    transition: .4s;
}
/* Header Toggles (Menu, Search) */
.header-footer-group .header-inner .toggle {
    padding: 0 1rem !important;
}
.header-footer-group, .menu-modal .toggle, body:not(.overlay-header) #site-header .toggle {
    color: #a4b696 !important; /* Farbe für Toggle Icons/Text */
}
button.toggle.nav-toggle.mobile-nav-toggle { /* Mobile Menü Button */
    /* Stile hier, falls nötig (Positionierung in @media queries) */
}
#site-header button.toggle.search-toggle { /* Such-Icon Button */
    display: block !important;
    position: relative !important;
    height: auto !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
}
/* Header Icons (Search + Cart) */
.icons-header {
    display: flex !important;
    align-items: center !important;
}
#site-header .icons-header a, .search-toggle {
    position: relative !important;
}
#site-header .cartcount { /* Warenkorb Zähler Badge */
    position: absolute !important;
    top: -3px !important;
    right: -8px !important;
    height: 16px;
    width: 16px;
    background-color: #4c673d;
    color: #fff !important;
    border-radius: 100%;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Top Bar */
.topbar {
    background-color: #4c673d;
    padding: 10px 1rem 7px;
    position: relative; /* Für :after Element */
}
.topbar .owl-carousel { /* Styles für Topbar Slider */
    margin-bottom: 0 !important;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.topbar .owl-carousel p { /* Text im Topbar Slider */
    color: #fff;
    font-family: Poppins;
    font-size: 13px;
    font-weight: 500;
    font-style: normal;
    margin: 0 !important;
    letter-spacing: normal;
    line-height: 18px !important;
    text-align: center;
}
.topbar .owl-carousel .owl-item img { /* Bilder im Topbar Slider */
    width: 100% !important;
    border: none !important;
    background: 0 0 !important;
    display: block !important;
    max-width: 70px;
    margin-right: 10px;
    margin-top: -3px;
}
.topbar #reviews1, .topbar #reviews1 .owl-stage-outer, .topbar #reviews1 .owl-stage-outer .owl-item {
    height: 27px; /* Feste Höhe für Topbar Slider */
    overflow-y: hidden;
}
.topbar #reviews1 .item {
    font-size: 14px;
    font-weight: 400;
    color: #fff; /* Farbe hinzugefügt */
}
.review-top-widget { /* eTrusted Widget Positionierung */
    position: relative;
    top: -14px;
}
/* ACF Action Header Bar */
.action-header {
    /* Styles hier */
    background-color: #ededed; /* Beispiel Hintergrund */
    padding: 5px 0;
    text-align: center;
}
.action-header .black-friday { /* Klasse aus dem ACF Snippet */
    /* Styles hier */
}
.action-header .tagline strong {
    color: #333; /* Beispiel Farbe */
    font-weight: 600;
}

/* --- Footer Styles --- */
.footer-section {
    background-color: #4c673d;
    margin-top: -100px; /* Negativer Rand, um überlappenden Effekt zu erzielen? */
    padding: 15px 15px 0 !important;
}
.footer-section .elementor-container.elementor-column-gap-default { /* Container im Footer */
    max-width: 1280px;
    margin: auto !important;
}
.footer-inner { /* Wrapper für Widget Spalten */
    display: flex;
    flex-wrap: wrap;
    padding: 128px 0 70px !important;
    justify-content: space-between;
}
.footer-col { /* Basis Footer Spalte */
    /* Allgemeine Styles für Spalten */
}
/* Spezifische Spaltenbreiten/Ränder (Problematisch bei Flexbox `justify-content: space-between`) */
.footer-col.col-sm-2.c1 { margin-right: 0; margin-left: 7px; }
.footer-col.col-sm-2.c2 { margin-right: 15px; margin-left: 15px; }
.footer-col.col-sm-2.c3 { margin-right: 30px; margin-left: 30px; }
.footer-col.col-sm-2.c4 { margin-right: 0; margin-left: 0; }
.footer-col.col-sm-4.c5 { margin-left: 30px; margin-top: -42px; }
/* Footer Widget Titel */
.footer-section .footer-col .widget-title {
    margin: 0 0 20px;
    font-size: 24px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: normal;
    text-align: left;
    color: #fff;
}
/* Footer Widget Listen & Links */
.footer-section .footer-col ul { /* Generell für Listen in Footer Spalten */
    list-style: none !important;
    padding-left: 0; /* Kein Einzug */
    margin: 1rem 0 !important;
}
.footer-section .footer-col ul li {
    margin: 0 !important; /* Kein Abstand zwischen Listenelementen */
}
.footer-section .footer-col ul li a {
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    font-style: normal;
    letter-spacing: normal;
    line-height: 28px;
    text-align: left;
    transition: .4s;
    text-decoration: none;
}
.footer-section .footer-col ul li a:hover {
    color: #9eb423; /* Hover Farbe */
    transition: .4s;
}
/* Spezifische Blöcke/Bilder im Footer */
.footer-inner figure.wp-block-image { margin: 2rem 0 !important; }
.footer-inner figure.wp-block-image.size-full.is-resized { margin: 0 0 15px !important; }
.footer-section .accept, .footer-section .accepts { /* Überschriften für Zahlung/Versand? */
    color: #fff;
    text-align: left;
    font-size: 24px;
    font-weight: 500;
    margin-bottom: 1rem;
    margin-top: 0;
}
.footer-section .accepts {
    margin-bottom: 20px !important;
}
/* Footer Credits */
.footer-credits {
    display: flex;
    border-top: 2px solid #fff;
    padding: 1rem 0;
    flex-wrap: wrap;
    justify-content: space-around;
}
.footer-credits p { /* Allgemein für Text im Credit Bereich */
    margin: 0 !important;
}
.footer-section .privacys, .footer-credits p { /* Privacy/Copyright Text */
    font-size: 14px;
    letter-spacing: normal;
    line-height: 28px;
    color: #fff;
    font-style: normal;
    text-align: left;
    font-weight: 300;
}
.footer-section .col-sm-12.footer-credits p.privacys a { /* Privacy/AGB Links */
    color: #fff !important;
}
/* Social Icons im Footer */
ul.wp-container-2.is-content-justification-left.wp-block-social-links.aligncenter.has-normal-icon-size {
    margin-left: -11px !important; /* Korrektur der Position? */
}
.wp-block-social-links .wp-social-link a {
    background-color: #d3d3d3; /* Hintergrund der Icons */
    color: grey !important; /* Icon Farbe? */
    padding: 2px !important;
    border-radius: 15px !important;
    transition: .4s;
}
.wp-block-social-links .wp-social-link svg {
    width: 32px;
    height: 32px;
    padding: 3px;
    background: #fff; /* Hintergrund des SVGs */
    border-radius: 7px;
    fill: #4C673D; /* Farbe des SVGs */
    opacity: .7;
}
.wp-block-social-links .wp-social-link a:hover {
    box-shadow: 0 0 10px rgba(255, 255, 255, .8); /* Hover Effekt */
    transition: .4s;
}


/* --- WooCommerce Allgemein & Shop Loop --- */
.woocommerce-shop .woocommerce ul li {
    padding: 0 !important;
}
.archive .woocommerce ul#productfilter li { /* Produkt Item im Loop */
    margin: 0;
}
.archive .woocommerce ul li .woocommerce-loop-product__title {
    margin-top: 0 !important;
}
.archive .woocommerce ul li .price { /* Preis im Loop */
    display: flex;
    margin-bottom: 1rem !important;
    color: #393939;
    font-family: Poppins;
    font-size: 19px;
    line-height: 22px;
    text-align: left;
    font-weight: 600;
    font-style: normal;
    letter-spacing: normal;
}
.archive .woocommerce ul li .price del[aria-hidden=true] { /* Durchgestrichener Preis */
    color: transparent !important; /* Verstecken durch Transparenz */
}
.archive .woocommerce ul li .price del[aria-hidden=true] .amount bdi { /* Text im durchgestrichenen Preis */
    color: #878787 !important;
    font-family: Poppins !important;
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22px;
    text-decoration: line-through;
}
.archive .woocommerce ul li .price ins { /* Aktueller Preis */
    padding-right: 10px;
    display: block;
}
.archive .woocommerce ul li .button, /* Button im Loop */
.ajax_add_to_cart { /* AJAX Add-to-Cart Button */
    padding: 8px 20px !important;
    border-radius: 50px !important;
    border: 1px solid #4c673d !important;
    color: #4c673d !important;
    transition: .4s;
    text-decoration: none !important;
}
.archive .woocommerce ul li .button:hover,
.ajax_add_to_cart:hover {
    color: #fff !important;
    background-color: #4c673d !important;
}
.archive .woocommerce ul li .onsale, /* Sale Badge im Loop */
.woocommerce-shop .woocommerce ul li .onsale {
    color: #f7f7f7;
    font-size: 11px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal; /* war 1.82px */
    line-height: 18.05px;
    text-transform: uppercase;
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    border-radius: 0 0 0 10px;
    background-color: #f60; /* Original Farbe */
    padding: 5px 11px;
    max-width: 100px; /* War 125px */
}
/* Sternbewertung */
.woocommerce p.stars a {
    position: relative;
    height: 1em;
    width: 1em;
    text-indent: -999em;
    display: inline-block;
    text-decoration: none;
}
.woocommerce p.stars a::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 1em;
    height: 1em;
    line-height: 1;
    font-family: WooCommerce;
    content: "\e021"; /* Leerer Stern */
    text-indent: 0;
    color: #fc0; /* Farbe für leere Sterne */
}
.woocommerce p.stars a:hover ~ a::before, /* Hover-Effekt */
.woocommerce p.stars a:focus ~ a::before {
    content: "\e020"; /* Gefüllter Stern */
}
.woocommerce p.stars a.active:focus ~ a.active::before, /* Aktive Sterne */
.woocommerce p.stars a.ranked::before,
.woocommerce p.stars a:focus::before,
.woocommerce p.stars a:hover::before {
    content: "\e020"; /* Gefüllter Stern */
    color: #fc0; /* Farbe für gefüllte Sterne */
}
p.stars { /* Rechts-nach-links für Hover-Effekt */
    direction: rtl !important;
}
/* Filter Widget (Filter Everything?) */
.archive .orderby { /* Sortierungs-Dropdown */
    border: 1px solid #4c673d;
    padding: 9px;
    color: #4c673d;
}
.archive #selectpercent option, .archive #wpc-taxonomy-spectrum-28400 option {
    color: #000 !important; /* Optionen im Filter-Dropdown */
}
.archive #wpc-taxonomy-spectrum-28400 { /* Spezifisches Filter Dropdown */
    text-align: center !important;
    width: 259px !important;
    height: 41px;
    border-radius: 20px;
    background: 0 0;
    margin: 0 !important;
    text-shadow: 0 2px 4px rgb(0 0 0 / 15%);
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 18px;
    border: 0;
    outline: 0;
}
.select-filter-content, .wpc-filter-content.wpc-filter-spectrum { /* Wrapper für Filter-Dropdowns */
    height: 41px;
    border-radius: 20px;
    text-align: center !important;
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%) !important;
    margin: 0 !important;
    color: #fff;
    font-size: 16px;
    font-style: normal;
    letter-spacing: normal;
    line-height: 18px;
    font-weight: 400;
    width: 299px !important;
    text-shadow: 0 2px 4px rgb(0 0 0 / 15%);
    padding: 0 10px !important; /* Innenabstand hinzugefügt */
    line-height: 41px !important; /* Vertikal zentrieren */
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}
.archive #selectpercent { /* Anderes Filter Dropdown */
    width: 172px !important;
    text-shadow: 0 2px 4px rgba(0,0,0,.15);
    border: 0;
    outline: 0;
    height: 41px;
    border-radius: 20px;
    text-align: center !important;
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%) !important;
    margin: 0 !important;
    color: #fff;
    font-size: 16px;
    font-style: normal;
    letter-spacing: normal;
    line-height: 18px;
    font-weight: 400;
}


/* --- WooCommerce Single Product --- */
.single-product div#ts_product_widget { /* Trustpilot Widget? */
    padding-bottom: 15px;
    border-bottom: 1px solid #f1f1f1;
    margin-bottom: 15px;
}
.single-product .site-main, .woocommerce-product-details__short-description {
    padding-top: 20px; /* Abstand oben */
}
.product .summary h1.product_title.entry-title { /* Produkttitel */
    margin: 0 0 10px !important;
    color: #1b5300;
    font-size: 48px;
    font-weight: 600;
}
.single-product .woocommerce-product-rating { /* Bewertung unter Titel */
    margin: 0 0 3rem !important;
}
.product .summary .price { /* Preisbereich */
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    color: #f60; /* Standard Sale Farbe? */
    font-size: 25px;
    letter-spacing: normal;
    margin-bottom: 0 !important;
    line-height: 27.82px;
    padding: 6px 0 16px;
    font-family: Poppins;
    font-weight: 700;
    font-style: normal;
}
.single-product .summary p.price { display: none; } /* Versteckt Standardpreis? */
.product .summary .price ins span.woocommerce-Price-amount.amount bdi,
.single .price .woocommerce-Price-amount bdi { /* Preis Text (Sale) */
    color: #f60;
    font-family: Poppins;
    font-size: 25px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: normal;
    line-height: 27.82px;
    text-align: left;
}
.product .summary .price del span.woocommerce-Price-amount.amount { /* Preis Text (Regular, durchgestrichen) */
    line-height: 27.82px;
    font-family: Poppins;
    letter-spacing: normal;
    text-align: left;
    font-style: normal;
    color: #878787 !important;
    padding-left: 1rem;
    font-size: 20px;
    font-weight: 500;
    text-decoration: line-through;
}
.single .price del .woocommerce-Price-amount bdi { /* Preis Text (Regular, durchgestrichen) - Single */
    color: #878787;
    font-weight: 500;
    font-size: 20px;
}
/* Variation Preis */
.woocommerce-variation.single_variation { /* Wrapper für Preis & Add-to-Cart bei Variationen */
    display: flex;
    flex-direction: column;
}
.single .woocommerce-variation-price .price { /* Preis bei ausgewählter Variation */
    padding-top: 0 !important;
    color: transparent !important; /* Verstecken? */
    border: none !important;
}
.single .woocommerce-variation-price .price del { /* Durchgestrichener Preis bei Variation */
    opacity: 1 !important;
    font-size: 23px !important; /* Größer als normaler durchgestrichener Preis? */
    font-weight: 700;
}
.product .summary .single_variation_wrap .price { /* Preis im Variation-Wrapper */
    border: none !important;
    padding-bottom: 0 !important;
}
/* Preis & Text vor Add-to-Cart (durch mish_before_add_to_cart_btn) */
.btn-price {
    color: #f60;
    font-size: 25px;
    font-weight: 700;
    margin-top: 2rem;
    font-family: Poppins;
    font-style: normal;
    letter-spacing: normal;
    line-height: 27.82px;
    text-align: left;
    display: flex; /* Für row-reverse */
    flex-direction: row-reverse; /* Platzierung del/ins */
    justify-content: flex-end;
    align-items: baseline;
}
.btn-price del { order: 2; } /* Platzierung Originalpreis */
.btn-price del bdi { /* Style Originalpreis */
    color: #878787;
    font-weight: 500;
    font-size: 20px;
    margin-left: 9px;
    text-decoration: line-through;
}
p.show-price { /* Allgemein für Texte unter Preis */
    font-size: 16px;
}
.product .summary p.show-price.tax-price { /* MwSt.-Hinweis */
    color: #000;
    font-size: 16px;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22px;
    text-align: left;
    margin: 3px 0 4px !important;
}
/* Kurzbeschreibung */
.product .summary .woocommerce-product-details__short-description ul {
    margin: 0;
    list-style: none;
    padding: 1rem 0 8px !important;
}
.product .summary .woocommerce-product-details__short-description ul li {
    position: relative;
    margin: 0 0 18px;
    padding-left: 3rem;
    color: #393939;
    font-family: Poppins !important;
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22px;
    text-align: left;
}
.product .summary .woocommerce-product-details__short-description ul li:before { /* Checkmark Icon */
    content: "";
    position: absolute;
    background: url('/wp-content/uploads/2022/09/check.png') center/contain no-repeat; /* Hardcodierter Pfad! */
    width: 17px; /* war 14px */
    height: 11px; /* Höhe hinzugefügt */
    top: 7px; /* war 'auto', dann 0 */
    left: 0;
    bottom: 0;
    margin: auto 0; /* Zentriert vertikal */
}
.single .content-area .woocommerce-product-details__short-description p a { /* Links in Kurzbeschreibung */
    color: #000;
    text-decoration: none;
}
.woocommerce-product-details__short-description p.p1 { /* Spezifischer Absatz */
    color: #393939;
    font-size: 18px;
    font-family: Poppins,sans-serif !important;
    line-height: 29px;
}
.woocommerce-variation-description p { /* Beschreibung bei Variationen */
    color: #393939;
    font-size: 12px;
    font-weight: 600 !important;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22px;
    text-align: left;
    order: 2; /* Reihenfolge mit Preis */
}
/* Variationen Formular */
.product .summary .variations {
    border: none !important;
    margin: 1rem 0;
}
.product .summary .variations tr { /* Reihe im Formular */
    border: none !important;
    display: flex !important;
    flex-wrap: wrap;
    flex-direction: column;
}
.product .summary .variations tr th { /* Label Zelle */
    border: none !important;
    padding: 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
}
.product .summary .variations label { /* Label für Attribute/Menge */
    font-size: 16px !important;
    font-weight: 600 !important;
    font-style: normal;
    letter-spacing: normal;
    line-height: normal;
    text-align: left;
    text-transform: uppercase;
    color: #1b5300;
    padding: 9px 0 0 !important;
}
.product .summary .variations tr td { /* Options Zelle */
    border: none !important;
    padding: 10px 0 !important;
    text-align: left;
}
/* Variation Swatches (CFVSW Plugin?) */
.product .summary .cfvsw-swatches-option {
    border-radius: 18px !important;
    border: 1px solid #4c673d;
    width: 80px;
    height: 38px;
    margin-right: 10px; /* Abstand zwischen Swatches */
}
.product .summary .cfvsw-swatches-option .cfvsw-swatch-inner {
    text-shadow: 0 2px 4px rgba(0,0,0,.15);
    color: #4c673d;
    font-family: Poppins;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 18px;
}
.product .summary .cfvsw-swatches-option.cfvsw-selected-swatch,
.product .summary .cfvsw-swatches-option:hover {
    background-color: #eaefe6; /* Hintergrund bei Hover/Selected */
}
/* YITH Swatches? */
.single .content-area .select_option_label.select_option {
    text-shadow: 0 2px 4px rgb(0 0 0 / 15%);
    color: #4c673d;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 18px;
    text-align: left;
    padding: 4px 20px;
    border-radius: 20px;
    border-color: #4c673d !important;
    margin-right: 7px;
    background-color: #fff; /* Hintergrund hinzugefügt */
}
.single .content-area .select_option_label.select_option.selected,
li.activeproduct a { /* Aktive Auswahl/Link */
    background-image: linear-gradient(130deg,#5f7931 24%,#41622f 59%);
    color: #fff;
}
.single .content-area .select_option_label.select_option .yith_wccl_value {
    height: auto !important;
    min-height: auto !important;
    border: 0 !important;
}
/* Mengenfeld & Buttons */
.product .summary label[for=quantity] {
    padding-top: 1rem !important;
}
.product .summary .quantity .input-text { /* Mengen-Input */
    text-shadow: 0 2px 4px rgb(0 0 0 / 15%);
    color: #4c673d;
    font-family: Poppins;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 18px;
    border: 1px solid #4c673d;
    width: 80px;
    height: 38px;
    border-radius: 20px !important;
    outline: 0 !important;
    box-shadow: none; /* Hinzugefügt */
    text-align: center; /* Hinzugefügt */
    padding: 0; /* Hinzugefügt */
}
.product-quantity .quantity { /* Wrapper für Mengenfeld & Buttons */
    display: flex;
    align-items: center;
    border: 1px solid #dfdfdf;
    border-radius: 4px;
    text-align: center;
    justify-content: center;
    padding: 0;
}
button.minus, button.plus { /* +/- Buttons */
    padding: 0; /* Reset Padding */
    /* Weitere Styles für Buttons hier */
    background-color: #fff !important; /* Überschreibt evtl. Theme Styles */
    color: #000 !important; /* Überschreibt evtl. Theme Styles */
    border: none; /* Beispiel */
    width: 30px; /* Beispiel */
    cursor: pointer;
}
/* Add-to-Cart Button */
.product .summary button[type=submit] {
    width: 100%;
    margin: 1rem 0 0;
    /* Weitere Button-Styles können hier oder unter .button gelten */
}
cart button.single_add_to_cart_button.button.alt { /* Spezifischer Button */
    color: #fff !important;
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%);
    border-radius: 50px;
    text-decoration-line: none;
}
/* Verlinkte Produkte (ACF) */
.linked-products-section h5 {
    color: #1b5300;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: inherit;
    margin-top: 0;
    margin-bottom: 3px;
}
ul.linked_products { margin: 0; }
.linked_products li {
    display: inline-block;
    margin-top: 6px;
    margin-left: 0;
    margin-right: 5px;
}
.linked_products a {
    text-shadow: 0 2px 4px rgb(0 0 0 / 15%);
    color: #4c673d;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    text-decoration: none;
    width: 80px;
    height: 38px;
    border-radius: 18px;
    border: 1px solid #4c673d;
    background-color: #fff;
    text-align: center;
    display: flex; /* War inline-block */
    justify-content: center;
    align-items: center;
    line-height: normal; /* War 34px */
}
/* Checkout Sicher/Trusted Logos */
.product .summary .secure-trusted-checkout {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 16px 0;
}
.product .summary .secure-trusted-checkout h5 {
    margin: 0 !important;
    display: flex;
    align-items: center;
    font-size: 13px;
    color: #393939;
}
.product .summary .secure-trusted-checkout h5 span {
    color: #393939;
    font-family: Poppins;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22px;
    text-align: left;
    text-transform: uppercase;
    padding-right: 1rem;
}
/* Angebots-Sektion (ACF?) */
.product .summary .offer-section {
    display: flex;
    align-items: center;
    border-radius: 10px;
    background-color: #ededed;
    padding: 2rem 3rem;
    flex-wrap: wrap;
    margin-bottom: 2rem;
}
.product .summary .offer-img {
    margin-right: 2rem;
}
.product .summary .offer-section .offer-middle {
    width: calc(100% - 239px); /* Feste Breite minus Bild/Button */
}
.offer-middle h5 { /* Text im Angebot */
    font-size: 15px;
    font-weight: 400;
    margin: 0;
    color: #333;
    line-height: 22px;
}
.product .summary .offer-section .offer-middle h6 {
    font-weight: 500;
    font-style: normal;
    letter-spacing: .15px;
    line-height: normal;
    margin: 0;
    color: #333;
    font-size: 16px;
}
.product .summary .offer-section .offer-middle h6 b {
    font-size: 25px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: normal;
    line-height: normal;
    text-transform: uppercase;
}
.product .summary .offer-section .offer-last-section {
    margin-left: auto;
    position: relative;
}
.product .summary .offer-section .offer-last-section button[type=submit] {
    margin-top: 0 !important;
    padding: 10px 37px !important;
}
.offer-last-section a.button.product_type_bundle.add_to_cart_button.ajax_add_to_cart {
    padding: 10px 27px; /* Spezifisches Padding */
}
.product .summary .offer-section .offer-last-section button[type=submit] i {
    display: none !important;
    background-color: #4c673d !important; /* Sollte das Icon verstecken? */
    color: #fff !important;
}
.product .summary .offer-section a.added_to_cart.wc-forward { /* "View Cart" Link nach AJAX Add */
    position: absolute;
    left: 0;
    font-size: 13px;
    font-weight: 600;
    color: #9cb30b;
    bottom: -34px;
    right: 0;
    margin: 0 auto;
    text-align: center;
}
/* Produkt Tabs/Accordions */
.product .summary .ui-accordion h3 { /* Accordion Header */
    position: relative;
    padding: 2rem 0 !important;
    background: 0 0 !important;
    border: none;
    border-bottom: 1px solid #ecf0e8 !important;
    color: #1b5300;
    font-family: Poppins;
    font-size: 20px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: normal;
    line-height: normal;
    text-align: left;
    margin: 0 !important;
    cursor: pointer; /* Hinzugefügt */
}
.product .summary .ui-accordion h3.ui-state-active { /* Aktiver Accordion Header */
    background: 0 0 !important;
    border: none !important;
    color: #1b5300;
    border-bottom: none !important; /* Keine untere Linie bei Aktiv */
}
.product .summary .ui-accordion h3:after { /* Accordion Icon (Pfeil nach unten) */
    content: "";
    position: absolute;
    border: solid #4c673d;
    padding: 4px;
    top: 29px;
    right: 16px;
    transition: .4s;
    display: inline-block;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}
.product .summary .ui-accordion h3.ui-state-active:after { /* Accordion Icon (Pfeil nach oben) */
    border-width: 0 2px 2px 0;
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
}
.product .summary .ui-accordion .ui-accordion-content { /* Accordion Inhalt */
    border: none;
    border-bottom: 2px solid rgba(76, 103, 61, .3);
    padding: 0 0 2rem;
    font-size: 14px;
    line-height: 24px;
    font-family: Poppins;
    font-weight: 400;
    margin-right: 0 !important; /* War 15% */
}
#accordion .ui-accordion-content { /* Generisches Accordion */
    max-height: 200px;
    overflow-y: auto;
}
/* Bewertungen */
.product .review-top-section { /* Box über den Bewertungen */
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 10px;
    border: 2px solid #e7e7e7;
    flex-wrap: wrap;
    padding: 20px !important; /* Responsive */
}
.product .review-top-section .woocommerce-product-rating { margin: 0; }
.product .review-top-section .write-comment-sec { /* "Write Review" Bereich */
    display: flex;
    align-items: center;
    justify-content: center; /* Responsive */
    gap: 15px; /* Responsive */
    width: 100%; /* Responsive */
    flex-direction: column; /* Responsive */
}
.product .review-top-section .write-comment-sec h3 {
    margin: 0;
    color: #000;
    font-family: "Poppins - Semi Bold";
    font-size: 28px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: normal;
    line-height: 40px;
    text-align: left;
}
.product .review-top-section .write-comment-sec h3 b { /* Zusatztext im H3 */
    font-size: 18px;
    font-weight: 400;
}
.product .review-top-section .write-comment-sec .write-review { /* Button */
    padding: 14px 35px;
    background-color: #4c673d;
    text-decoration: none;
    border-radius: 23px;
    text-shadow: 0 2px 4px rgba(0,0,0,.15);
    color: #fff;
    font-size: 16px;
    line-height: 18px;
    text-align: left;
    font-family: Poppins;
    font-style: normal;
    letter-spacing: normal;
    font-weight: 400;
}
.product .woocommerce-Reviews h2 { /* Hauptüberschrift Bewertungen */
    margin: 20px 0 !important;
    color: #1b5300;
    font-family: "Poppins - Semi Bold";
    font-size: 48px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: normal;
    line-height: normal;
    text-align: center !important;
    margin-bottom: 0 !important;
}
.product .woocommerce-Reviews .commentlist { /* Liste der Bewertungen */
    margin: 0;
    list-style: none;
}
.product .woocommerce-Reviews .commentlist li { /* Einzelne Bewertung */
    margin: 0 0 2rem;
    padding: 3rem;
    border-radius: 10px;
    border: 2px solid #e7e7e7;
}
.product .woocommerce-Reviews .commentlist li:last-child {
    margin-bottom: 0 !important;
}
.product .woocommerce-Reviews .commentlist li img { /* Avatar */
    margin-bottom: 1rem;
    width: 50px; /* Größe hinzugefügt */
    height: 50px;
}
.product .woocommerce-Reviews .star-rating { /* Sterne in Bewertung */
    font-size: 20px !important;
    margin-bottom: 10px !important;
}
.product .woocommerce-Reviews .commentlist li .description p { /* Bewertungstext */
    color: #000;
    font-family: "Poppins - Semi Bold"; /* War Poppins */
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 30px;
    text-align: left;
}
.single .product .woocommerce-Reviews .meta { /* Meta Info (Autor, Datum) */
    margin: 0 !important;
}
/* Bewertungsformular */
.single .woocommerce-Reviews .comment-form {
    margin: 3rem auto auto;
    background-color: #4c673d;
    padding: 30px;
    border: 2px solid #fff;
    border-radius: 10px;
}
.single .woocommerce-Reviews .comment-form label {
    color: #fff;
    margin-bottom: 10px;
}
.single .woocommerce-Reviews .comment-form .comment-form-comment {
    max-width: 100% !important;
    margin: 2rem 0;
}
.single .woocommerce-Reviews .comment-form textarea { /* Textarea */
    border: none !important;
    outline: 0 !important;
}
.single .woocommerce-Reviews .comment-form .stars span a.active:after { /* Aktive Sterne im Formular */
    color: #ffa700;
}
input#cr_review_image { /* Bild Upload? */
    font-size: 16px;
    color: #fff;
}
.cr-voting-cont img, .cr-voting-cont-uni svg { /* Voting Icons? */
    width: 20px;
    height: 20px;
}
.single .woocommerce-Reviews .comment-form .form-submit { /* Submit Button Wrapper */
    margin-bottom: 0 !important;
}
.single .woocommerce-Reviews .comment-form input[type=submit] { /* Submit Button */
    color: #4c673d !important;
    padding: 10px 30px !important;
    font-size: 15px !important;
    text-decoration: none !important;
    background-color: #fff !important; /* Hintergrund hinzugefügt */
}
.single .woocommerce-Reviews .comment-form-cookies-consent { /* Cookie Checkbox */
    display: block !important;
}
.single .woocommerce-Reviews .comment-notes { /* Pflichtfeld Hinweis */
    margin: 1rem 0 !important;
    text-align: left !important;
    color: red !important; /* Auffällige Farbe */
    font-size: 15px !important;
}
/* "No reviews" Text */
.review-block p.woocommerce-noreviews {
    text-align: center;
    margin-bottom: 0 !important;
}
/* =============================================
   Sticky Product Image NUR auf Desktop
   ============================================= */

@media (min-width: 1024px) { /* Greift nur bei Bildschirmbreite >= 1024px */
    .woocommerce div.product .woocommerce-product-gallery, /* Standard-WooCommerce-Selektor */
    .wpa-woocommerce-product-gallery.wpa-woocommerce-product-gallery--with-images.wpa-woocommerce-product-gallery--columns-4.images /* Dein spezifischer Selektor */
    {
        position: -webkit-sticky; /* Für ältere Safari-Browser */
        position: sticky;
        top: 40px; /* Abstand zum oberen Rand (z.B. für Header, anpassen!) */
        z-index: 10; /* Sicherstellen, dass es über anderem Inhalt liegt */
        /* WICHTIG: Höhe ggf. begrenzen, damit es nicht über den Footer scrollt */
        /* max-height: calc(100vh - 80px); */ /* Beispiel: Max Höhe = Viewport - 80px Puffer */
        /* overflow-y: auto; */ /* Falls Höhe begrenzt wird, Scrollen erlauben */
    }
}

/* Sicherstellen, dass auf Mobile KEIN sticky/fixed angewendet wird */
@media (max-width: 1023px) {
    .woocommerce div.product .woocommerce-product-gallery,
    .wpa-woocommerce-product-gallery.wpa-woocommerce-product-gallery--with-images.wpa-woocommerce-product-gallery--columns-4.images {
        position: static !important; /* Standard-Positionierung erzwingen */
        top: auto !important;
    }
}
.wpa-product-gallery-thumbs.slick-slider .slick-slide img { /* Thumbnails */
    height: 100% !important;
    width: 100% !important;
    object-fit: cover;
}
.single .product-image-section { /* Responsive Wrapper */
    display: flex;
    padding: 30px 20px 50px !important;
    flex-wrap: wrap;
}
.single .product-image-section .woocommerce-product-gallery { /* Galerie auf Mobilgeräten */
    width: 100% !important;
    margin-bottom: 30px !important;
}
.single .product-image-section img.wp-post-image { /* Hauptbild auf Mobilgeräten */
    max-height: 100%;
    object-fit: contain;
    margin: 0 !important;
    width: 100% !important;
}
.single-product .wpa-product-gallery-thumbs .slick-track {
    transform: unset !important;
}
/* Trustpilot Widget? */
.trusted-stars-service-widget .wrapper .content .grade-summary {
    color: #fff !important;
}
.trusted-stars-service-widget .wrapper .content .logo > img {
    vertical-align: middle;
    height: 1.6666666667em;
    width: 1.6666666667em;
    filter: invert(1); /* Macht Logo weiß auf dunklem Hintergrund? */
}


/* --- WooCommerce Cart --- */
.woocommerce-cart .woocommerce { /* Haupt-Wrapper Warenkorb */
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 15px !important;
}
.woocommerce-cart .container { /* Container um Warenkorb */
    width: 100% !important;
}
.woocommerce-cart .woocommerce .can-cart { /* Flex Container für Form & Totals */
    display: flex;
    padding: 0 !important;
    flex-wrap: wrap;
}
.woocommerce-cart .woocommerce .woocommerce-cart-form { /* Warenkorb-Formular (linke Seite) */
    width: 70%;
    padding-right: 5rem;
    padding-top: 4rem;
}
.woocommerce-cart .woocommerce .cart-collaterals { /* Zusammenfassung (rechte Seite) */
    padding: 48px 25px 52px !important;
    width: 30%;
    background-color: #eaf6f5;
}
.woocommerce-cart .woocommerce .woocommerce-cart-form table.shop_table { /* Haupt-Warenkorb-Tabelle */
    /* Basis Stile für Tabelle */
}
.woocommerce-cart .woocommerce .woocommerce-cart-form table th { /* Tabellenkopf */
    color: #1b5300;
    font-size: 18px;
    font-weight: 400; /* War 600 */
    font-style: normal;
    letter-spacing: normal;
    line-height: 22.9px; /* War 25px */
    text-align: left; /* War center */
}
.woocommerce-cart .woocommerce .woocommerce-cart-form table tr td { /* Zellen */
    width: 15%;
    text-align: center;
}
.woocommerce-cart .woocommerce .woocommerce-cart-form table tr td:nth-child(2) { /* Produktname Zelle */
    padding-left: 0;
}
.woocommerce-cart .product-thumbnail { /* Thumbnail Zelle */
    width: 14% !important;
}
.woocommerce-cart .product-thumbnail img {
    box-shadow: 0 0 5px #d2d2d2;
}
.woocommerce-cart .woocommerce .product-name { /* Produktname Zelle (Inhalt) */
    width: 29%;
    padding: 10px 20px 10px 10px;
}
.woocommerce-cart .woocommerce td a { /* Produkt Link */
    color: #1b5300;
    font-family: "Poppins - Semi Bold";
    font-size: 22px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22.9px;
    text-decoration: none; /* Hinzugefügt */
}
.woocommerce-cart .woocommerce .product-subtotal span { /* Zwischensumme */
    color: #393939;
    font-family: "Poppins - Semi Bold";
    font-size: 18px;
    line-height: 22.9px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: normal;
}
.woocommerce-cart-form .quantity input.qty { /* Mengenfeld im Warenkorb */
    display: inline-block;
    max-width: 55px;
    padding: 7px 0 7px 7px;
    text-align: center;
    border: 0 !important;
    box-shadow: none; /* Hinzugefügt */
    outline: 0; /* Hinzugefügt */
    height: auto; /* Hinzugefügt */
}
.woocommerce-cart-form .quantity input { /* Allgemeiner für Mengenfeld */
    width: 91px !important;
    height: 34px !important;
    border-radius: 5px !important;
    border: 1px solid #eee9e3 !important;
    background-color: #fff !important;
    outline: 0;
    box-shadow: none;
}
.woocommerce-cart td.product-remove { /* Entfernen Button Zelle */
    width: 5% !important;
}
a.remove:hover { /* Entfernen Button Hover */
    background: #ffffff00 !important; /* Transparenter Hintergrund */
}
.woocommerce-cart .woocommerce .woocommerce-cart-form table td.actions { /* Aktionszeile (Coupon, Update) */
    text-align: left !important;
}
.woocommerce-cart .woocommerce button[type=submit] { /* Allgemeiner Submit Button (Update Cart) */
    text-shadow: 0 2px 4px rgba(0,0,0,.15);
    color: #4c673d;
    font-family: Poppins;
    font-size: 13px !important;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 14.3px;
    text-align: center;
    border-radius: 18px !important;
    border: 1px solid #4c673d !important;
    padding: 12px 25px;
    text-decoration: none;
    margin-right: 15px;
}
.woocommerce-cart .shop_table.cart.woocommerce-cart-form__contents button[type=submit] { /* Spezifischer Update Button */
    margin-top: 1.5rem !important;
    font-size: 16px !important;
    margin-bottom: 17px;
}
.woocommerce-cart .woocommerce button[type=submit]:hover {
    color: #fff !important;
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%) !important; /* Hover Effekt von Checkout Button */
}
/* Coupon im Warenkorb */
.woocommerce-cart .woocommerce .cart-collaterals .shop_table_responsive .actions .coupon {
    width: 100%;
    text-align: left !important;
}
.woocommerce-cart .woocommerce .coupon label[for=coupon_code] {
    color: #628058;
    font-family: Poppins;
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22.9px;
    text-align: left;
}
.woocommerce-cart .woocommerce .coupon input[type=text] {
    border-radius: 5px;
    background-color: #fff;
    padding: 10px;
    border: none;
    outline: 0;
    box-shadow: none;
    margin-bottom: 15px; /* War 20px */
    margin-top: 15px;
}
.woocommerce-cart table tr input[type=text] { /* Allgemeiner für Text Input in Tabelle */
    text-shadow: 0 2px 4px rgb(0 0 0 / 15%);
    font-size: 13px !important;
    font-weight: 400;
    line-height: 14.3px;
    border: 1px solid #4c673d !important;
    padding: 12px 25px;
    text-decoration: none;
    height: 41px;
    margin-right: 15px !important;
    font-family: Poppins;
    font-style: normal;
    letter-spacing: normal;
}
.woocommerce-cart table tr input[type=text]::placeholder {
    color: #4c673d;
    opacity: 1;
    font-size: 13px !important;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 14.3px;
}
/* Cart Totals (rechte Seite) */
.woocommerce .cart-collaterals .cart_totals h2 {
    color: #1b5300;
    font-size: 18px;
    line-height: 22.9px;
    text-align: left;
    margin: 0 !important;
    padding-bottom: 15px; /* War 27px */
    border-bottom: 1px solid #dbdbdb;
    font-weight: 600;
    font-style: normal;
    letter-spacing: normal;
}
.woocommerce-cart .woocommerce .cart-collaterals table { /* Tabelle in Totals */
    margin: 0;
    display: block; /* Macht Tabelle zu Block? */
}
.woocommerce-cart .woocommerce .cart-collaterals .shop_table_responsive tbody {
    display: flex;
    flex-wrap: wrap;
    padding: 0 !important;
}
.woocommerce-cart .woocommerce .cart-collaterals .shop_table_responsive tbody tr {
    padding-left: 0 !important;
    display: flex;
    width: 100%; /* Hinzugefügt */
    justify-content: space-between; /* Hinzugefügt */
}
.woocommerce-cart .woocommerce .cart-collaterals table tbody tr {
    border-bottom: 1px solid #dbdbdb;
}
.woocommerce-cart .woocommerce .cart-collaterals table tbody tr:last-child {
    border-bottom: none !important;
}
.woocommerce-cart .woocommerce .cart-collaterals .shop_table_responsive tbody th { /* Labels (Subtotal, Shipping, Total) */
    padding-left: 0 !important;
    text-align: left; /* Hinzugefügt */
    width: 50% !important; /* Hinzugefügt */
}
.woocommerce-cart .woocommerce .cart-collaterals .shop_table_responsive tbody td { /* Werte */
    text-align: right;
    width: 50%; /* Hinzugefügt */
}
a.checkout-button.button.alt.wc-forward { /* Checkout Button */
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%) !important;
    color: #fff !important;
    border: 1px solid;
    border-radius: 50px;
    text-transform: capitalize !important;
    letter-spacing: 0 !important;
    font-weight: 500;
    margin-top: 8px !important;
    padding: 10px !important; /* Responsive */
    display: block; /* Hinzugefügt */
    text-align: center; /* Hinzugefügt */
}
/* Cart - Responsive Layout Anpassungen */
.woocommerce table.shop_table_responsive tr, .woocommerce-page table.shop_table_responsive tr {
    margin: 0 !important; /* Responsive */
}
.woocommerce-cart .woocommerce .cart-collaterals .shop_table_responsive .actions form {
    width: 100% !important; /* Responsive */
}
.woocommerce-cart .woocommerce .cart-collaterals .shop_table_responsive tbody tr td {
    /* Responsive Styles könnten hier sein */
}


/* --- WooCommerce Checkout --- */
.woocommerce-checkout .woocommerce { max-width: 100%; } /* Volle Breite */
.checkout.woocommerce-checkout {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between;
}
.woocommerce-checkout form .col2-set { /* Linke Spalte (Billing/Shipping) */
    width: 70% !important;
    display: block !important;
    float: none;
    padding: 5rem 5rem 0 0;
}
.woocommerce-checkout form .col2-order { /* Rechte Spalte (Order Review) */
    width: 30% !important;
    display: block !important;
    float: none;
    padding: 5rem 2rem;
    background-color: #eaf6f5;
}
.woocommerce-checkout form h3 { /* Überschriften in Spalten */
    color: #1b5300;
    font-size: 22px;
    line-height: 22.9px;
    margin: 0 0 30px !important;
    float: none !important;
    display: block;
    width: 100% !important;
    font-family: "Poppins - Semi Bold";
    font-weight: 600; /* Korrigiert von font-family */
    font-style: normal;
    letter-spacing: normal;
}
.woocommerce-billing-fields-custom h3 { /* Spezifische Überschrift ändern via JS */
    /* Geändert durch JS: .html("Kundeninformation"); */
}
/* Checkout Felder */
.woocommerce-checkout form .col2-set label,
.woocommerce-checkout form .col-2 label /* Shipping Fields */
{
    color: #393939;
    font-family: Poppins;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22.9px;
    text-align: left;
}
.woocommerce-checkout form input,
.woocommerce-checkout form textarea { /* Allgemeine Inputs/Textarea */
    outline: 0;
    border-radius: 5px;
    border: 1px solid #e6e6e6;
    background-color: #fff;
    color: #7d7579 !important; /* Textfarbe im Input */
}
.woocommerce-checkout form .col2-set input:focus { /* Fokus Effekt */
    box-shadow: 0 0 5px rgba(76, 103, 61, 0.25); /* War rgba(76,103%,61%,25%) - Prozent korrigiert */
    border-color: #4c673d; /* Fokus Border Farbe? Hinzugefügt */
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper input,
.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper input {
    height: 48px; /* Feste Höhe für Inputs */
}
.woocommerce-checkout form .col2-set .form-row, /* Form Row Wrapper */
.woocommerce-checkout form .form-row {
    width: 49% !important; /* Zweispaltiges Layout für Felder */
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .shipping_address .woocommerce-shipping-fields__field-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#four_slider .owl-item .card-body li, /* Selektor scheint falsch hier */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_email_field,
.woocommerce-checkout #order_comments_field { /* Felder mit voller Breite */
    width: 100% !important;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_address_2_field {
    margin-top: 28px; /* Abstand für Adresszeile 2 */
}
/* Select2 Dropdowns (Country/State) */
.woocommerce-checkout form select {
    outline: 0 !important;
    border-radius: 5px;
    border: 1px solid #e6e6e6 !important;
    background-color: #fff;
}
.woocommerce-checkout form .col2-set .select2-selection {
    border-color: #e6e6e6 !important;
    color: #a07979 !important; /* Textfarbe im Select */
    height: 48px; /* Passend zu Inputs */
    display: flex; /* Hinzugefügt */
    align-items: center; /* Hinzugefügt */
}
.woocommerce-checkout .select2-container--focus .select2-selection {
    outline: 0 !important;
    border-color: #e6e6e6 !important;
    box-shadow: 0 0 5px rgba(76, 103, 61, 0.25); /* Fokus Effekt */
}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
    color: #7d7579 !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: #4c673d !important; /* Highlight Farbe in Dropdown */
    margin: 0 !important;
}
/* Order Review (rechte Spalte) */
.woocommerce-checkout form .col2-order #order_review,
.woocommerce-checkout form .col2-order h3 {
    padding: 0 !important;
    margin: 0 0 30px !important;
}
.woocommerce-checkout form .col2-order table tr th { /* Tabellenkopf in Order Review */
    color: #393939;
    font-size: 18px;
    font-weight: 400;
    line-height: 22.9px;
    text-align: left;
    font-family: Poppins;
    font-style: normal;
    letter-spacing: normal;
}
.woocommerce-checkout-review-order-table td { /* Zellenbreite */
    width: auto !important;
}
.woocommerce-checkout form .col2-order table .product-total, /* Rechte Spalte (Preis) */
.woocommerce-checkout form .col2-order table tfoot td { /* Footer Zellen */
    text-align: end !important;
}
.woocommerce-checkout form .col2-order table .order-total { /* Gesamtsumme Zeile */
    font-family: "Poppins - Semi Bold";
    font-weight: 600; /* Hinzugefügt */
}
.woocommerce-checkout form #order_review .woocommerce-checkout-review-order-table tbody::after {
    height: 0 !important; /* Linie entfernen? */
}
/* Versandkosten */
.woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping {
    flex-wrap: wrap;
    display: flex; /* War table-row */
}
.woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping td {
    max-width: 100% !important;
    width: 100% !important; /* Responsive */
}
.woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping ul li label[for^="shipping_method_"] { /* Versandmethoden Label */
    text-align: right !important; /* Responsive */
}
.woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping .betrs_option_desc { /* Beschreibung Versandmethode */
    text-align: left !important;
}
/* Zahlungsmethoden */
.woocommerce-checkout form .col2-order ul#payment li {
    margin: 0 0 20px;
    background-color: #fff;
    padding: 10px;
    border-radius: 12px;
}
.woocommerce-checkout form .col2-order ul li label {
    color: #1b5300;
    font-family: "Poppins - Semi Bold";
    font-size: 18px; /* War 15px */
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22.9px;
    text-align: left;
}
.woocommerce-checkout form .col2-order .payment_box { /* Zusätzliche Infos bei Zahlungsmethode */
    background: 0 0 !important;
    padding: 0;
}
.single-cartflows_step .woocommerce-checkout-payment input[type=radio],
.woocommerce-checkout-review-order input[type=radio] {
    opacity: 0; /* Versteckt Standard Radio Button */
}
.woocommerce-checkout .wc_payment_method input.input-radio[name=payment_method]+label::before { /* Custom Radio Button */
    box-shadow: 0 0 0 2px #1b5300 !important;
    border-color: #1b5300 !important; /* Farbe für Rand */
}
.woocommerce-checkout form .col2-order .wc_payment_method input.input-radio[name=payment_method]:checked+label::before { /* Custom Radio Button (checked) */
    background-color: #1b5300 !important;
}
/* AGB & Datenschutz */
.woocommerce-checkout form .col2-order p {
    color: #393939;
    font-size: 12px;
    font-weight: 400;
    line-height: 21px;
    font-family: Poppins;
    font-style: normal;
    letter-spacing: normal;
}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper { margin: 0 !important; }
.woocommerce-checkout form .col2-order .woocommerce-privacy-policy-text p {
    font-size: 12px; /* War 16px */
}
/* "Ship to different address" Checkbox */
.woocommerce-checkout #ship-to-different-address label span {
    text-align: left;
    display: inline-block;
}
/* Order Button */
button#place_order {
    background-color: #4c673d !important;
    color: #fff;
    border: 1px solid;
    border-radius: 65px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    width: 100%; /* Hinzugefügt */
    padding: 15px; /* Hinzugefügt */
}
.woocommerce-checkout form .col2-order button#place_order:hover {
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%) !important;
}
/* Coupon im Checkout */
.woocommerce-info .showcoupon { /* "Have a coupon?" Link */
    color: #4c673d;
    text-decoration: none;
    font-size: 20px;
    font-weight: 400;
}
a.showcoupon:hover {
    color: #4c673d; /* Bleibt gleich bei Hover */
}
form.checkout_coupon.woocommerce-form-coupon { /* Coupon Formular */
    max-width: 800px;
    margin: 0 auto;
}
/* Checkout Header (Elementor) */
.woocommerce-checkout .elementor-heading-title {
    color: #fff !important;
    font-size: 42px !important;
    font-weight: 400 !important;
    font-style: normal;
    letter-spacing: normal;
    line-height: normal;
    margin: 0 !important;
}
.woocommerce-checkout .elementor-heading-title i {
    font-size: 35px;
}
.woocommerce-checkout .elementor-element-346b8643 { /* Header Sektion */
    padding-top: 10rem !important;
    background-position: center !important;
    position: relative;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}
.woocommerce-checkout .elementor-element-346b8643 .elementor-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
}
/* Login Form im Checkout */
button.woocommerce-button.button.woocommerce-form-login__submit {
    margin-bottom: 20px !important;
    color: #000;
    text-decoration: none;
    font-size: 18px;
    font-weight: 500;
    border: 1px solid; /* Fehlende Farbe? */
}

/* --- WooCommerce My Account --- */
.woocommerce-account .woocommerce {
    max-width: 1280px !important; /* Container Breite */
    padding: 0 0 82px !important;
    margin: 0 auto;
}
.woocommerce-account .woocommerce-MyAccount-navigation { /* Navigation */
    float: left;
    overflow-x: scroll !important; /* Mobile Scroll */
    border-bottom: 1px solid #eeeded;
    margin-bottom: 30px !important;
    padding: 0 10px 30px; /* Mobile Padding */
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex;
    width: 100%;
    align-items: center;
    height: fit-content !important;
    margin: 0 !important; /* Responsive */
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    width: fit-content !important;
    min-width: fit-content !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
    margin: 0 !important; /* Responsive */
}
.woocommerce-account .woocommerce-MyAccount-content { /* Inhaltsbereich */
    float: right;
    width: 75%;
    padding: 0 20px !important; /* Mobile Padding */
}
.woocommerce-account .woocommerce-EditAccountForm button { /* Speicher Button */
    background-color: #eeeded !important;
}
/* Login/Register Form auf Account Seite */
.elementor-9 .elementor-element.elementor-element-22b1aff6 h2 { margin-top: 0 !important; }
.elementor-9 .elementor-element.elementor-element-22b1aff6 p.woocommerce-form-row.form-row:last-child { margin-bottom: 0 !important; }
.elementor-9 .elementor-element.elementor-element-22b1aff6 { padding: 50px 20px !important; }
.elementor-9 .elementor-element.elementor-element-34bd16f3 { padding: 20px !important; margin: 0 !important; }

/* --- Sliders & Carousels (Owl, Slick, WPS) --- */
.owl-carousel { /* Allgemein Owl Carousel */
    position: relative;
    padding: 0 !important; /* Responsive */
    margin: 0 !important; /* Responsive */
}
.owl-slider { /* Wrapper? */
    overflow: hidden !important;
    position: relative;
}
.owl-carousel .owl-item img { /* Bilder in Owl */
    border-radius: 6px;
    border: 1px solid rgba(184, 184, 184, .48);
    background-color: #fff;
}
/* Karussell Inhalte (Karten) */
.owl-carousel .card { /* Karte im Karussell */
    /* Basis Stile */
}
.owl-carousel .card li { /* Liste in Karte? */
    margin: 0;
    list-style: none;
}
.owl-carousel .card li h2 { /* Titel in Karte */
    font-size: 19px;
    font-style: normal;
    text-align: left;
    color: #393939;
    font-weight: 400;
    letter-spacing: normal;
    line-height: normal; /* war 1 */
    margin: 10px 0;
}
.owl-carousel .price { /* Preis in Karussell */
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: center;
    margin-top: 1rem;
    font-family: Roboto, sans-serif !important;
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: normal;
    line-height: 22px;
    text-align: left;
}
.owl-carousel .price ins { /* Sale Preis */
    color: #f60 !important;
    font-size: 20px;
    line-height: 22px;
    text-align: left;
    letter-spacing: normal;
    padding-right: 1rem;
    font-family: Poppins; /* Geändert von Roboto */
    font-weight: 700;
    font-style: normal;
}
.owl-carousel .price del bdi { /* Regular Preis */
    color: #878787;
    font-family: Poppins;
    font-size: 16px;
    font-weight: 500;
    line-height: 22px;
    text-align: left;
    text-decoration: line-through;
    font-style: normal;
    letter-spacing: normal;
}
.owl-carousel .price .woocommerce-Price-amount.amount,
.single .owl-carousel .owl-stage .price .woocommerce-Price-amount bdi {
    color: #f60; /* Sale Farbe */
}
.bestseller .owl-carousel .price del { /* Bestseller durchgestrichener Preis */
    color: #323232 !important;
    opacity: .5;
}
.bestseller .owl-carousel .price,
.elementor-element-c59494c .owl-carousel .price { /* Bestseller Preis Farbe */
    color: #333;
}
.owl-carousel span.onsale { /* Sale Badge */
    color: #f7f7f7;
    font-family: "Poppins - Semi Bold";
    font-size: 11px;
    line-height: 18.05px;
    text-align: center;
    text-transform: uppercase;
    font-style: normal;
    letter-spacing: 1.82px;
    padding: 5px 11px;
    border-radius: 0 0 0 10px;
    right: 0 !important;
    width: 100% !important;
    margin-left: auto !important;
    max-width: 125px;
    font-weight: 400; /* Hinzugefügt */
    letter-spacing: normal; /* Hinzugefügt */
    background-color: #f60; /* Hinzugefügt */
    position: absolute; /* Hinzugefügt */
    top: 0; /* Hinzugefügt */
}
.owl-carousel .button { /* Button in Karussell */
    padding: 8px 25px;
    margin-top: 2rem;
    border-radius: 50px !important;
    border: 1px solid #4c673d !important;
    text-shadow: 0 2px 4px rgba(0,0,0,.15);
    color: #4c673d !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 18px;
    text-align: left;
    transition: .4s;
    font-style: normal;
    letter-spacing: normal;
    font-family: Roboto, sans-serif !important;
}
.owl-carousel .button:hover {
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%) !important;
    color: #fff !important;
    transition: .4s;
}
/* Owl Navigation */
.owl-carousel .owl-nav button { /* Allgemeine Nav Buttons */
    padding: 25px !important; /* Responsive */
}
.owl-carousel .owl-prev, .owl-carousel .owl-next {
    height: 44px;
    width: 44px;
    border-radius: 100%;
    top: 50%;
    z-index: 9;
    transform: translateY(-50%);
    position: absolute;
    background-color: #4c673d !important;
}
.owl-carousel .owl-prev { left: 0; }
.owl-carousel .owl-next { right: 10%; }
.owl-carousel button.owl-prev:after { /* Pfeil Links */
    content: "";
    float: none;
    padding: 5px;
    border: 1px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    display: inline-block;
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    top: 18px !important; /* war 16px */
    left: 20px !important; /* war 18px */
    position: absolute;
    width: 10px !important; /* Responsive */
    height: 10px !important; /* Responsive */
}
.owl-carousel button.owl-next:after { /* Pfeil Rechts */
    content: "";
    float: none;
    padding: 5px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    display: inline-block;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    top: 18px !important; /* war 16px */
    left: 16px !important; /* war 15px */
    position: absolute;
    width: 10px !important; /* Responsive */
    height: 10px !important; /* Responsive */
}
/* Spezifische Slider Positionierung */
#four_slider button.owl-next, #four_slider button.owl-prev,
#fours_slider button.owl-next, #fours_slider button.owl-prev {
    top: 40%;
}
#relatedslider.owl-carousel .owl-prev { left: -56px; }
#relatedslider.owl-carousel .owl-next { right: 98px; }
/* Fade-out Effekt am Rand? */
.owl-carousel:after {
    content: "";
    position: absolute;
    right: 0;
    width: calc(10% + 1px);
    background: rgba(255, 255, 255, .7);
    height: 100%;
    top: 0;
}
/* WPS Slider Plugin */
#wps-slider-section .wps-product-section .slick-arrow { /* Pfeile */
    z-index: 99 !important;
    top: 0 !important; /* Zentriert vertikal */
    bottom: 0 !important;
    margin: auto 0 !important;
    height: 44px !important; /* Größe wie Owl */
    border-radius: 100% !important;
}
#wps-slider-section .wps-product-image { /* Produktbild */
    display: block;
    box-shadow: 0 0 0;
    outline: 0;
    width: 281px !important;
    height: 281px !important;
    background-color: #f7f7f7; /* Hintergrund für Bilder */
}
#wps-slider-section .wps-product-section:not(.sp-wps-custom-template) .wpsf-product-title { /* Titel */
    margin-top: 10px;
    line-height: 22px;
    position: relative;
    top: 32px; /* Verschiebung? */
    text-align: left;
    color: #393939;
    font-size: 19px;
    font-weight: 400;
}
#wps-slider-section #sp-woo-product-slider-189 .wpsf-product-price, /* Preis */
#wps-slider-section #sp-woo-product-slider-83 .wpsf-product-price {
    color: #f60;
    font-family: Poppins !important;
    font-size: 20px;
    font-weight: 700;
    position: relative;
    top: -24px; /* Verschiebung? */
    text-align: left;
    margin: 0;
    padding-top: 11px;
    line-height: 22px;
}
#wps-slider-section #sp-woo-product-slider-189 .wpsf-product-price del span, /* Durchgestrichener Preis */
#wps-slider-section #sp-woo-product-slider-83 .wpsf-product-price del span {
    color: #848484 !important;
}
#wps-slider-section .wpsf-product-price del { /* Position durchgestrichener Preis */
    position: absolute !important;
    left: 82px;
    color: #000 !important;
    font-family: Poppins !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 22px;
    text-align: left;
    text-decoration: line-through;
}
#wps-slider-section .wpsf-cart-button { /* Warenkorb Button Wrapper */
    padding-top: 25px;
    margin-right: 158px; /* Großer Rand? */
}
#wps-slider-section .wpsf-cart-button p { /* Button als Flex Container */
    display: flex !important;
}
#wps-slider-section .wpsf-cart-button a:not(.sp-wqvpro-view-button):not(.sp-wqv-view-button) { /* Button */
    min-width: 125px !important;
    /* Übernimmt Styles von .ajax_add_to_cart */
}
#wps-slider-section #sp-woo-product-slider-189 .wpsf-cart-button a.added_to_cart,
#wps-slider-section #sp-woo-product-slider-189 .wpsf-cart-button a:not(.sp-wqvpro-view-button):not(.sp-wqv-view-button):hover,
#wps-slider-section #sp-woo-product-slider-83 .wpsf-cart-button a.added_to_cart,
#wps-slider-section #sp-woo-product-slider-83 .wpsf-cart-button a:not(.sp-wqvpro-view-button):not(.sp-wqv-view-button):hover { /* Button Hover/Added */
    color: #fff !important;
    background-color: #4c673d !important;
    border-color: #222 !important; /* War #222 */
}
/* Slick Slider */
.elementor-element-1c45ea6 .slick-list { /* Slick Liste */
    position: relative;
    display: block;
    overflow: visible; /* Erlaubt überstehende Pfeile? */
    margin: 0;
    padding: 0;
}
.best .elementor-container .slick-next.slick-arrow, /* Slick Pfeile */
.best .slick-prev.slick-arrow {
    top: 0 !important;
    bottom: 0 !important;
    margin: auto 0 !important;
    /* Weitere Styles für Pfeile */
    height: 44px; /* Wie Owl */
    width: 44px;
    border-radius: 100% !important;
    background-color: #4c673da6 !important; /* Original */
}
.elementor-element-1c45ea6 .best .elementor-container .slick-next.slick-arrow {
    right: -110px !important; /* Weit außen */
}


/* --- Blog & Beiträge --- */
.blog .carousel .owl-stage .card .card-body p { /* Text im Blog Slider */
    flex-grow: 1;
}
.blog .carousel .owl-stage .card .card-image { /* Bild Wrapper für Seitenverhältnis */
    padding-top: 59%;
    position: relative;
}
.blog .carousel .owl-stage .card .card-image img { /* Bild im Wrapper */
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    object-fit: cover; /* Hinzugefügt */
}
.blog .carousel .owl-stage .card,
.blog .carousel .owl-stage .card .card-body {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    flex-wrap: wrap;
    height: 100%; /* Hinzugefügt für gleiche Höhe */
}
/* BDP Plugin Styles */
.bdp-readmorebtn { /* Read More Button */
    color: #4c673d;
    border: none !important;
    font-weight: 500;
    display: inline-block;
    box-sizing: border-box;
    line-height: normal !important;
    text-align: left !important;
    padding: 21px 0 !important;
    margin-right: 291px; /* Großer Rand? */
    font-family: Poppins !important;
    font-size: 13px;
}
.blog .bdp-post-carousel button.slick-next,
.blog .bdp-post-carousel button.slick-prev { /* BDP Carousel Pfeile */
    background-color: #4c673da6 !important;
    -moz-transition: .5s ease-out;
    -ms-transition: .5s ease-out;
    -o-transition: .5s ease-out;
    transition: .5s ease-out;
    background-size: 20px 20px !important;
    outline: 0 !important;
    height: 44px; /* Wie andere Pfeile */
    width: 44px;
    border-radius: 100% !important;
    background-image: none !important;
    position: relative;
}
.blog .bdp-post-carousel button:hover,
.blog .bdp-post-carousel button:active {
    border: none !important;
    outline: 0 !important;
}
.blogslide button.slick-prev.slick-arrow { /* Positionierung */
    padding-right: 2rem !important;
    left: 20px !important;
}
.blog .bdp-post-carousel button.slick-prev:before { /* Pfeil Links Icon */
    content: "";
    border: solid #fff;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 4px;
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    top: 17px;
    left: 19px;
    position: absolute;
}
.blog .bdp-post-carousel button.slick-next:before { /* Pfeil Rechts Icon */
    content: "";
    border: solid #fff;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 4px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    top: 17px;
    right: 19px;
    position: absolute;
}
/* Single Post Styles */
.single-post .featured-media, .single-post .post-inner {
    max-width: 1280px;
    width: 100%;
    margin: auto;
    padding: 5rem 1rem;
}
.single-post .featured-media-inner.section-inner {
    max-width: 100%;
    position: relative;
    left: 0;
    overflow: hidden;
}
.single-post .featured-media img {
    max-width: 800px;
    margin-left: 0;
    border: 5px solid #1b5300;
    border-radius: 10px;
    transition: .4s;
    width: 100%;
    object-fit: cover; /* Responsive */
}
.entry-header-inner.section-inner.medium h2.entry-title.heading-size-1 { /* Titel */
    font-size: 24px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
}
.single-post .post-inner .entry-content p {
    max-width: 100% !important;
    margin: 0 0 15px !important;
    width: 100% !important;
    font-size: 16px;
}
.single-post .post-inner h2, .single-post h2 { /* Überschriften im Inhalt */
    color: #1b5300;
    line-height: normal;
    text-align: left;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    font-size: 30px; /* war 42px */
    margin: 19px 0 6px; /* war 0 0 20px */
    width: 100% !important;
    max-width: 100% !important;
}
.single-post .post-inner h3, .single-post h3 {
    color: #1b5300;
    line-height: normal;
    text-align: left;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    font-size: 25px; /* war 27px */
    margin: 19px 0 6px; /* war 10px 0 */
    width: 100% !important;
    max-width: 100% !important;
}
.single-post .post-inner p a {
    text-decoration: none;
    font-weight: 700 !important;
}
hr.post-separator.styled-separator.is-style-wide.section-inner {
    margin: 30px auto !important;
}

/* --- Search Results --- */
.search.search-results .section-inner.medium { max-width: 1110px; }
.search.search-results .pagination-wrapper.section-inner {
    max-width: 1000px;
    margin: 33px auto 150px;
}
body.search-results:not(.singular) main > article:first-of-type { padding: 0; }
body.search-results .post-meta-wrapper.post-meta-single-bottom {
    margin-top: 3rem;
    display: none;
}
body.search-results .entry-content > :not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
    max-width: 73%; /* Sehr spezifisch */
    width: calc(100% - 4rem);
    font-size: 16px;
}
.search-results h2.entry-title.heading-size-1 {
    font-size: 26px;
    text-align: left;
    font-weight: 500;
}
.search-results .archive-header { padding: 3rem 0; }
.search-results hr { margin: 3rem auto; }
/* Search Form Block */
button.wp-block-search__button {
    font-size: 16px;
    font-weight: 400;
    border-radius: 18px;
    padding: 0 auto;
    position: relative;
    right: 68px !important;
    width: 26px;
    height: 37px;
    margin: 0 auto !important;
    background-color: #ffffff00 !important;
    border: #ffffff00 !important;
    content-visibility: hidden;
    justify-content: center;
    top: 14px;
    background-image: url('/wp-content/uploads/2022/10/709592_copy.png'); /* Hardcodiert! */
    background-repeat: no-repeat;
    background-attachment: scroll;
}
input#wp-block-search__input-1, .wp-block-search__input {
    padding-left: 29px !important;
    font-size: 14px;
    font-style: normal;
    letter-spacing: normal;
    color: #a1a1a1;
    font-family: poppins !important;
    font-weight: 400;
    padding: 0 !important;
    line-height: 18px;
    text-align: left;
}
.wp-block-search__inside-wrapper {
    width: 471px;
    height: 54px;
    margin: 0 auto !important;
    font-size: 16px;
    color: #343434;
    font-weight: 400;
    position: relative; /* Für Button Positionierung */
    background: #fff; /* Responsive? */
    display: flex !important; /* Responsive? */
}
/* Search Form in Elementor (Page ID 613) */
.page-id-613 .elementor-element-ba7de39 .elementor-widget-container { margin: 0 !important; overflow: hidden !important; }
.page-id-613 .elementor-element-ba7de39 { margin-top: 30px; }
.page-id-613 .elementor-element-ba7de39 .wp-block-search__text-button.wp-block-search .wp-block-search__inside-wrapper {
    background: #fff;
    display: flex !important;
    width: 100%;
    max-width: 471px !important;
    position: relative !important;
}
.page-id-613 .elementor-element-ba7de39 .wp-block-search__text-button.wp-block-search .wp-block-search__inside-wrapper input[type=search] {
    background: 0 0;
    width: 100%;
    border: none;
    outline: 0 !important;
    box-shadow: none !important;
    text-transform: capitalize;
    color: #a1a1a1;
    font-family: Poppins;
    font-size: 14px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: normal;
    line-height: 18px;
    text-align: left;
}
.page-id-613 .elementor-element-ba7de39 .wp-block-search__text-button.wp-block-search .wp-block-search__inside-wrapper button[type=submit] {
    position: absolute !important;
    right: 25px !important;
    top: 14px !important;
    padding: 0 !important;
    content-visibility: visible; /* Überschreibt generelles Verstecken */
    height: auto;
    width: auto;
    background: none !important;
    border: none !important;
    margin: 0 !important;
}


/* --- Elementor Specific Styles --- */
/* Viele Stile sind sehr spezifisch auf Elementor IDs/Klassen bezogen. */
.elementor-12 .elementor-element.elementor-element-082d157 > .elementor-widget-container { padding-top: 0 !important; }
.elementor-element-bdb31a4 .elementor-widget-wrap.elementor-element-populated { padding: 0; }
.elementor-widget-tabs .elementor-tab-desktop-title {
    position: relative;
    font-weight: 700;
    line-height: 1;
    border: solid transparent;
    padding: 16px 25px !important;
}
.elementor-widget-tabs .elementor-tab-desktop-title.elementor-active {
    background-color: #c6d7bc !important; /* Aktiver Tab Hintergrund */
}
.elementor-tabs-wrapper { padding: 10px; }
.howtouse .elementor-tabs-wrapper { /* Spezifische Tab Sektion */
    background-color: #1b530026 !important;
    max-width: 930px;
    border-radius: 40px;
    padding: 7px !important;
    width: 100%;
    text-align: center;
    margin: 0 auto;
    font-size: 16px;
    font-weight: 400;
}
.elementor-12 .elementor-element.elementor-element-3d4e941 .elementor-tab-title.elementor-active,
.elementor-12 .elementor-element.elementor-element-3d4e941 .elementor-tab-title.elementor-active a {
    color: #f9f9f9 !important;
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%) !important;
    border-radius: 50px;
}
.howtouse img.alignnone.size-medium.wp-image-188 { /* Spezifisches Bild */
    width: 674px !important;
    height: 404px !important;
    margin: 0;
    padding: 0;
}
.howtouse .elementor-widget-tabs.elementor-tabs-alignment-stretch.elementor-tabs-view-horizontal .elementor-tab-title {
    width: 100%;
    text-align: center;
    margin: 0 auto;
    font-size: 16px;
    font-weight: 600 !important;
}
.howtouse .elementor-12 .elementor-element.elementor-element-d11f1f7 .elementor-heading-title {
    color: #1b5300;
    font-size: 48px;
    font-weight: 600;
    text-transform: none;
    font-style: normal;
    text-decoration: none;
}
.elementor-12 .elementor-element.elementor-element-995d96f > .elementor-widget-container {
    margin: 0 auto;
    padding: 19px 0 0 22px !important;
}
.elementor-12 .elementor-element.elementor-element-b8f01f4 .elementor-heading-title {
    font-size: 40px !important;
}
.elementor-12 .elementor-element.elementor-element-b8f01f4 > .elementor-widget-container {
    padding: 0 !important;
    margin: 0 !important;
}
/* Weitere Elementor Styles... */
.elementor-star-rating__wrapper .elementor-star-rating__title { margin-left: 14px !important; }
body:not(.rtl) .elementor-12 .elementor-element.elementor-element-f05531c:not(.elementor-star-rating--align-justify) .elementor-star-rating__title { margin-left: 11px !important; }
.elementor-star-rating--align-left .elementor-star-rating__wrapper { text-align: left; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; FLEX-DIRECTION: row-reverse; } /* Stern Reihenfolge umkehren? */
.elementor-button-link .elementor-button-content-wrapper { align-items: center; }
.elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg { width: 17px; height: auto; }
.elementor-element.elementor-element-fbd3c9b .elementor-button.elementor-button-link { background-image: linear-gradient(to right,#5f7931,#41622f); }
.elementor-element-4a0c72b .elementor-widget-container, .elementor-element-8c8b321 .elementor-widget-container { font-size: 16px !important; }
.elementor-element-0b53a2d .card { padding: 3rem 2rem 0; text-align: center; display: flex; flex-wrap: wrap; flex-grow: 1; flex-direction: column; overflow: hidden; }
.elementor-element-0b53a2d .card img { width: auto !important; margin: auto !important; border: none !important; }
.elementor-element-0b53a2d .card .card-body { display: flex; flex-wrap: wrap; flex-grow: 1; flex-direction: column; padding-top: 0 !important; }
.elementor-element-0b53a2d .card p { text-align: center !important; color: #343434; margin: 2rem 0 !important; font-family: Poppins; font-size: 14px; font-weight: 400; font-style: normal; letter-spacing: normal; line-height: 27px; flex-grow: 1; }
.elementor-element-0b53a2d .card h3 { color: #000; font-family: "Poppins - Semi Bold"; font-size: 18px; font-weight: 600 !important; font-style: normal; letter-spacing: normal; line-height: 40px; text-align: center !important; padding-top: 3px !important; }
.elementor-element-0b53a2d .owl-height { padding: 0 !important; }
.elementor-element-0b53a2d .owl-stage-outer .owl-stage { display: flex; }
.elementor-element-0b53a2d .owl-stage-outer .owl-stage .owl-item { padding: 0 !important; display: flex; /* Für gleiche Höhe */ }
/* ... Weitere hunderte von spezifischen Elementor Regeln ... */

/* --- Plugin Specific Styles --- */
/* WPForms */
.elementor-613 .elementor-element.elementor-element-9873666 .ekit_wpForms_container .wpforms-submit-container .wpforms-submit {
    display: inline-block; position: relative; font-size: 12px; font-weight: 300; text-transform: none;
    font-style: normal; text-decoration: none; background-color: #4c673d !important;
    border-radius: 15px; top: -57px; left: 288px; border: 1px solid #4c673d !important;
}
button.wpforms-submit:before {
    position: absolute; top: 50%; left: 60%; content: "";
    background-image: url('/wp-content/uploads/2022/09/60525.png'); /* Hardcodiert! */
    width: 19px; height: 17px; transform: translate(-50%, -50%);
}
button.wpforms-submit {
    position: absolute !important; top: -60px; right: 92px; padding: 0 !important;
    background: #4c673d !important; width: 50px !important; height: 46px !important;
    font-size: 0 !important; /* Versteckt Text */
    border: 0 !important; /* Fehlender Border Style? */
}
input#wpforms-259-field_2-container { /* Spezifisches Feld */
    border-radius: 10px; padding: 12px 200px 12px 25px; width: 426px;
    font-size: 17px; font-style: italic; color: #181818;
}
/* Gravity Forms (Newsletter Popup & Subsnew) */
.newsletter-popup { padding: 30px !important; }
.newsletter-popup .gform_heading h3 { margin: 0 0 20px; font-weight: 600 !important; font-size: 26px !important; line-height: 34px !important; font-style: none; text-decoration: none; }
.newsletter-popup span.gform_description { font-family: Poppins, sans-serif !important; font-size: 18px !important; font-weight: 300 !important; letter-spacing: .8px; font-style: none; text-decoration: none; }
.newsletter-popup ul#gform_fields_4 li { list-style-type: none !important; margin: 0 !important; }
.newsletter-popup ul#gform_fields_4 { margin: 20px 0 !important; }
.newsletter-popup .ginput_container.ginput_container_email input { border-radius: 10px !important; }
.newsletter-popup .gform_footer.top_label input { background-color: #4c673d !important; width: 100% !important; border-radius: 10px; color: #fff !important; font-size: 18px !important; line-height: 10px; font-style: normal; font-weight: 400; }
.subsnew form { display: flex; align-items: center; background: #fff; max-width: 500px; margin-left: 0; border-radius: 11px; padding: 3px 3px 3px 10px; justify-content: space-between; }
.subsnew form ul { margin: 0 !important; padding: 0 !important; list-style: none; }
.subsnew form .ginput_container input { width: 100% !important; border: none; outline: 0; background: 0 0; font-size: 16px !important; }
.subsnew form .gform_footer { width: auto !important; padding: 0 !important; margin: 0 !important; }
.subsnew form input[type=submit] { width: 50px !important; height: 46px; box-shadow: 0 1px 30px rgb(0 0 0 / 35%) !important; border-radius: 11px; border: 0 solid #fff; font-size: 0px !important; margin: 0 !important; background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAARBAMAAADNtor0AAAAIVBMVEX///9HcEz///////////////////////////////////+jWTucAAAACnRSTlP1ALVsDiyR30zRR88UFQAAAF5JREFUCNdjMBGEAgGGBalwJtcqDQRz1WRHOHMVWyCYuQoEmBpBTHWQ8KqVJkCmoGtz0nSuVQtSgUwQCFZYtcoALKpeABR1gKpdbgIzYVEjmrlAZrEjhhtWIVyGcC8A/7MrkenLDwIAAAAASUVORK5CYII=') center no-repeat; background-size: inherit; } /* Hardcodiert! */
.subsnew .gfield_error { margin: 0 !important; border: none !important; background: 0 0 !important; }
.subsnew li.gfield_error input { border: none !important; }
.subsnew .elementor-element-populated { padding: 0 4rem 0 2rem !important; }
/* Filter Everything Plugin */
/* Styles wurden oben bei WooCommerce Allgemein / Shop Loop hinzugefügt */

/* --- Spezifische Sektionen / Shortcodes --- */
/* Tabs */
.tabs-outer .tabs {
    display: flex;
    flex-wrap: no-wrap !important; /* Verhindert Umbruch */
    margin-bottom: 14px;
    align-items: center !important;
}
.tabs-outer ul.tabs { /* Tab Navigation */
    border-radius: 60px;
    background-color: #1b530026;
    text-align: center;
    padding: 1rem !important;
    justify-content: space-between; /* Gleichmäßiger Abstand */
    margin-bottom: 12px !important;
    max-width: 287px !important; /* Feste Breite? */
    margin-left: 0 !important;
}
.tabs-outer .tabBox ul.tabs li {
    margin: 0;
    padding: 0 !important;
}
.tabs-outer .tabBox ul.tabs li:first-child {
    margin-right: 20px;
}
.tabs-outer ul a { color: #4c673d; }
.tabs-outer .tabs li a {
    color: #4c673d !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 0; /* Komisch? */
    padding: 22px 37px !important;
    text-decoration: none; /* Hinzugefügt */
}
.tabs-outer ul.tabs li a.activelink {
    color: #fff !important;
    background-color: #4c673d;
    border-radius: 35px;
}
.tabs-outer .main-contents p { /* Tab Inhalt */
    color: #343434;
    font-family: Poppins !important;
    font-size: 13px;
    font-weight: 300;
    text-align: left;
    margin: 0;
    padding: 0 0 15px 22px;
}
/* Tabberscons (Accordion/Steps?) */
.tabberscons ol { margin: 0; padding: 0; }
.tabberscons li.step1 { display: flex !important; flex-wrap: wrap !important; align-items: center !important; position: relative; }
.tabberscons .left { /* Nummer/Icon links */
    position: relative;
    width: 29px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    border: 1px dashed #1b5300;
    color: #1b5300;
    font-family: Poppins !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin-right: 17px;
    height: 31px; /* Wie Original */
    background: #fff; /* Wie Original */
}
.tabberscons .left p { /* Inhalt in Nummer/Icon */
    width: 31px;
    height: 31px;
    color: #1b5300 !important;
    font-family: Poppins !important;
    font-size: 14px !important;
    font-weight: 600;
    text-align: center; /* War left */
    border-radius: 36px;
    border: 1px dashed #1b5300;
    margin: 0;
    align-items: center;
    justify-content: center;
    position: relative;
    display: flex; /* Zentrierung */
}
.tabberscons .right-contents { /* Inhalt rechts */
    width: calc(100% - 52px); /* Breite minus Icon */
    margin-bottom: 10px; /* War 10px */
    margin-top: 12px !important; /* Responsive */
    padding: 20px;
    font-size: 16px;
    border-radius: 10px;
    background-color: #1b530026;
}
.tabberscons .right-contents h6 { color: #1b5300; font-size: 18px; font-weight: 600 !important; text-align: left; margin: 0; padding-bottom: 7px; padding-left: 0 !important; }
.tabberscons .right-contents p, .tabberscons p.right-contents { font-family: Poppins !important; font-size: 13px; color: #343434; font-weight: 300; text-align: left; margin: 0; line-height: 19.92px; padding-left: 0 !important; }
/* Vertikale Linien für Steps */
.tabs-outer .left-inner:before, li.step1 .left:before {
    border-left: 1px dashed #1b5300;
    position: absolute;
    height: 100%;
    top: 50%; /* Zentriert */
    left: 50%; /* Zentriert */
    content: " ";
    transform: translateX(-50%);
    z-index: -3; /* Hinter Icon */
}
li.step1:first-child .left:before { top: 50%; height: 50%; } /* Linie nur nach unten */
li.step1:last-child .left:before { bottom: 50%; top: auto; height: 50%; } /* Linie nur nach oben */
/* FAQs */
#faqacc .ui-accordion-content {
    color: #343434; font-size: 14px; font-weight: 400; font-style: normal;
    letter-spacing: normal; line-height: 24.01px; text-align: left;
    margin-right: 0; /* War 15% */
    border: none; /* Fehlende Stile von .product .summary ... */
    border-bottom: 2px solid rgba(76, 103, 61, .3);
    padding: 0 0 2rem;
}
.faq-section .ui-accordion h3, .faq-section .ui-accordion h3.ui-state-active {
    line-height: normal; font-style: normal; letter-spacing: normal;
    color: #1b5300; text-align: left; font-family: Poppins;
    font-weight: 500; font-size: 22px; background: 0 0 !important;
    padding: 2rem 2rem 2rem 0 !important; /* Abstand rechts für Icon */
    border: none !important; margin: 0 !important; position: relative; cursor: pointer;
}
.faq-section .ui-accordion h3 {
    border-bottom: 1px solid #ecf0e8 !important; /* Linie zwischen Fragen */
}
.faq-section .ui-accordion h3.ui-state-active {
    border-bottom: none !important;
}
.faq-section .ui-accordion h3:after { /* Icon nach unten */
    position: absolute; border: solid #4c673d; padding: 4px;
    top: 29px; right: 16px; content: ""; display: inline-block; transition: .4s;
    border-width: 0 2px 2px 0; transform: rotate(45deg); -webkit-transform: rotate(45deg);
}
.faq-section .ui-accordion h3.ui-state-active:after { /* Icon nach oben */
    transform: rotate(-135deg); -webkit-transform: rotate(-135deg);
}
.faq-section .ui-accordion h3 span.countn { /* Nummerierung */
    position: absolute; left: -36px; /* Positionierung der Zahl */
}
/* Andere spezifische Sektionen */
.checkpq p { display: flex !important; align-items: baseline; }
.checkpq img { width: 13px; height: 9px; margin: 0 10px; }
.qltyprdt { background-color: #eaf6f5; width: 100%; padding-left: 20px; }
.qltyprdt .elementor-container.elementor-column-gap-default { display: flex; flex-wrap: wrap; justify-content: end; align-items: center; width: 100% !important; padding-left: 0; margin: auto !important; }
.listing-content ul { list-style: none; display: flex; flex-wrap: wrap; justify-content: center; margin: 0; }
.listing-content ul li { margin: 0 15px 15px 0; width: calc(33.3% - 10px); text-align: center; display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }
.listing-content ul li:nth-child(3n) { margin-right: 0; }
.listing-content ul li .content { width: 100%; min-height: 60px; display: flex; }
.listing-content ul li img { margin: auto; }


/* --- Hilfsklassen & Overrides --- */
.bg-accent, .bg-accent-hover:focus, .bg-accent-hover:hover,
.button, .comment-reply-link, .faux-button, .wp-block-button__link,
.wp-block-file .wp-block-file__button, :root .has-accent-background-color,
button, input[type=button], input[type=reset], input[type=submit] {
    background-color: #ffffff00 !important; /* Transparenter Hintergrund für Buttons? */
    color: #000 !important; /* Schwarzer Text für Buttons? */
}
.color-accent, .color-accent-hover:focus, .color-accent-hover:hover,
.has-drop-cap:not(:focus):first-letter, .wp-block-button.is-style-outline,
:root .has-accent-color {
    color: #323232; /* Standard Akzentfarbe */
}
/* Spezifische Akzentfarben überschreiben */
.archive-header a, .elementor-29392 .elementor-element.elementor-element-d33eb2e [type=checkbox]:after,
.elementor-29392 .elementor-element.elementor-element-d33eb2e [type=checkbox]:before,
.footer-menu a, .footer-widgets a,
.header-footer-group .color-accent, .header-footer-group .color-accent-hover:hover,
.modal-menu a, .singular:not(.overlay-header) .entry-header a,
.site-main nav.woocommerce-breadcrumb, .star-rating span, .star-rating span:before,
.wp-block-pullquote:before, body:not(.overlay-header) .primary-menu > li > .icon,
body:not(.overlay-header) .primary-menu > li > a {
    color: #4c673d !important; /* Grün als Akzentfarbe */
}
/* Weitere Textfarben */
.powered-by-wordpress, .singular .entry-header .post-meta,
.singular:not(.overlay-header) .entry-header .post-meta a, .site-description,
.to-the-top, .widget .post-date, .widget .rss-date, .widget cite,
.widget_archive li, .widget_categories li, .widget_meta li, .widget_nav_menu li,
.widget_pages li, body:not(.overlay-header) .toggle-inner .toggle-text {
    color: #a5b696 !important; /* Helleres Grün für Meta-Text */
}


/* --- Media Queries --- */
/* Größere Bildschirme */
@media(max-width: 1500px) {
    .canblogs .owl-prev { left: 0 !important; }
    .elementor-12 .elementor-element.elementor-element-9075bd1 { padding: 0 !important; }
}
@media(max-width: 1400px) {
    .elementor-element-c62f558 { padding-left: 15px !important; }
    .owl-carousel .owl-prev { left: 0; }
    .elementor-element-b540d7b .elementor-element-ed56e2f { max-width: 1280px !important; margin: auto !important; }
    .related-section-new { padding-left: 15px; }
}
@media(min-width: 1400px) {
    .canblogs .owl-prev, .owl-carousel .owl-prev { left: -1vw !important; }
}
@media(min-width: 1500px) {
    .canblogs .owl-prev, .owl-carousel .owl-prev { left: -2vw !important; }
}
@media(min-width: 1600px) {
    .canblogs .owl-prev, .owl-carousel .owl-prev { left: -3vw !important; }
}

/* Tablet Querformat / Kleine Desktops */
@media(max-width: 1300px) {
    .elementor-12 .elementor-element.elementor-element-9075bd1 { background-position: bottom right 30% !important; }
    .archive .elementor-element-2687245 .elementor-col-50 { padding-left: 15px !important; }
}
@media(max-width: 1200px) {
    .header-titles-wrapper .nav-toggle { position: relative; margin-right: auto; }
    .header-footer-group .toggle.search-toggle.mobile-search-toggle { margin-left: auto; padding-right: 3rem !important; margin-top: -48px; }
    .elementor-element-689140c { overflow: hidden !important; }
    .elementor-element-0e02b5a .cp { height: auto !important; line-height: 1 !important; font-size: 40px; margin-bottom: 10px; }
    .elementor-element-0e02b5a .cbdp { margin: 0 0 10px; height: auto !important; line-height: 1; }
    .elementor-element-7e41185 .elementor-container.elementor-column-gap-default { padding: 0 15px; }
    .elementor-element-2b3050f, .elementor-element-87a9895, .elementor-element-b1b476f, .elementor-element-e5122db { width: 100% !important; }
    .product .summary .offer-section .offer-middle { width: 100% !important; margin-top: 1rem; }
    .product .summary .offer-section .offer-last-section { margin-right: auto !important; margin-left: 0 !important; padding-top: 1rem; }
    .single .elementor-3897 .elementor-element.elementor-element-4f51e5a > .elementor-widget-container { padding: 0 !important; }
    .single .related-section-new { padding: 8rem 1rem !important; }
    .single .layout-1 { padding: 8rem 1rem; }
    .related-section-new .wrapper { width: 100%; }
    .woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping { display: table-row !important; }
    .woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping ul li label[for^="shipping_method_"] { text-align: right !important; }
}
@media(min-width: 768px) and (max-width: 1092px) { /* Spezifischer Bereich */
    /* Header & Menu */
    .header-footer-group .close-nav-toggle, .header-footer-group .header-inner .nav-toggle { background-repeat: no-repeat; background-position: center; height: 30px; background-size: contain; }
    .header-inner.section-inner { width: 100% !important; padding-left: 15px !important; padding-right: 15px !important; }
    .header-footer-group .header-inner .nav-toggle { background-image: url('https://cannalin.de/app/uploads/2022/10/header-menu-toggle.svg'); width: 20px; fill: #4C673D !important; position: relative; top: 11px; }
    .header-footer-group .menu-modal-inner.modal-inner { background-color: rgba(76, 103, 61, .9) !important; }
    .header-footer-group .close-nav-toggle { margin-left: auto; padding: 0; background-image: url('https://cannalin.de/app/uploads/2022/10/close-1.svg'); width: 30px; background-color: transparent !important; margin-top: 1rem; margin-bottom: 1rem; }
    .header-footer-group .mobile-menu ul li a { letter-spacing: normal; font-weight: 500 !important; font-size: 16px !important; }
    /* Footer */
    .footer-section .accept { margin: 0 0 10px !important; }
    .footer-inner { padding-top: 143px !important; }
    .footer-inner #block-9 .wp-block-image { margin-bottom: 1rem !important; }
    .footer-inner ul, .footer-section ul li { margin: 0 !important; }
    /* Single Product */
    .single .image-with-text-section .content-inner-sec-left { padding: 3rem; }
    .layout-3 .content-inner-sec-left { padding: 0 !important; }
    .layout-3 .content-inner-sec-left p { margin: 0; }
    /* Andere */
    .header-footer-group span.tpct:first-child { margin-left: 0 !important; }
    .elementor-element-0e02b5a .cp1 { font-size: 52px; }
    .elementor-element-88ce534 .elementor-container.elementor-column-gap-default { display: flex; align-items: center; }
    .faqs .elementor-image-box-description { font-size: 21px !important; }
    .cp { height: auto !important; margin-bottom: 0 !important; }
    .elementor-element-87a9895 button.owl-prev, .owl-carousel .owl-prev { left: 0 !important; }
    .bestseller .owl-nav button.owl-next { right: 15% !important; }
    .elementor-element-7e41185 .elementor-container.elementor-column-gap-no { display: flex; justify-content: center; }
}
@media (min-width: 768px) { /* Nur für größere Tablets und Desktops */
    .elementor-widget-tabs.elementor-tabs-alignment-center .elementor-tabs-wrapper { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: space-between !important; }
}
@media only screen and (min-width: 769px) { /* Mega Menu Spaltenbreite */
    #mega-menu-wrap-header #mega-menu-header li.mega-menu-megamenu > ul.mega-sub-menu > li.mega-menu-row > ul.mega-sub-menu > li.mega-menu-columns-9-of-12 { width: 78%; }
}

/* Tablet Hochformat */
@media (min-width: 768px) and (max-width: 992px) {
    .footer-inner ul, .footer-section ul li { margin: 0 !important; }
    .elementor-12 .elementor-element.elementor-element-18f6757, .elementor-12 .elementor-element.elementor-element-7e73593, .elementor-element-0e02b5a .cp { margin-top: 0 !important; }
    .elementor-element-30895d0 { margin-bottom: 3rem; }
    .cp, .elementor-element-f8ace07 { margin-bottom: 0 !important; }
    .elementor-12 .elementor-element.elementor-element-9eebc95 { padding: 0 15px !important; }
    .bestslide, .elementor-12 .elementor-element.elementor-element-30895d0, .elementor-12 .elementor-element.elementor-element-4370604, .elementor-element-9075bd1 .elementor-element-10b37e7, .elementor-element-9075bd1 .elementor-element-224181c, .footer-inner .footer-col.c1, .woocommerce-checkout form .col2-order { width: 100% !important; }
    .best .elementor-container .slick-next.slick-arrow, .elementor-element-0b53a2d button.owl-next { right: 0 !important; }
    .elementor-12 .elementor-element.elementor-element-02bf143 { margin-bottom: 0; }
    .elementor-12 .elementor-element.elementor-element-d560ee8 { width: 100%; padding-right: 0 !important; }
    .elementor-12 .elementor-element.elementor-element-0ce3d51, .product .image-with-text-section .content-section, .woocommerce-cart .woocommerce .woocommerce-cart-form { width: 100%; }
    .elementor-element-c62f558:after { display: none !important; }
    .elementor-element-bd70389, .elementor-element-d1c23ac, .elementor-element-ec209de, .footer-inner .footer-col.c2, .footer-inner .footer-col.c3, .footer-inner .footer-col.c4 { width: 50% !important; }
    .elementor-element-c7f6e10 { width: 46% !important; margin-left: 2rem; }
    .elementor-element-3d4e941 .elementor-tabs-wrapper .elementor-tab-title { padding: 12px 13px !important; }
    .cp { height: auto !important; }
    .elementor-element-0b53a2d button.owl-prev, .elementor-element-87a9895 button.owl-prev, .owl-carousel .owl-prev { left: 0 !important; }
    .elementor-element-9075bd1 { background-image: none !important; }
    .elementor-element-7e41185 .elementor-container.elementor-column-gap-no { display: flex; justify-content: center; }
    .faqs .elementor-image-box-description { font-size: 17px !important; padding: 0 16px; line-height: 1.4 !important; margin-bottom: 10px !important; }
    .faqs .elementor-image-box-title { padding: 9px 15px; }
    .elementor-element-9075bd1 .cp { height: auto !important; margin-bottom: 0 !important; margin-top: 0 !important; font-size: 30px !important; }
    .elementor-element-9075bd1 .cp1 { font-size: 36px; padding-left: 10px; }
    .elementor-element-9075bd1 .cbdp { height: auto !important; margin-bottom: 0 !important; font-size: 45px; }
    /* ... weitere Tablet Stile ... */
}

/* Mobile */
@media only screen and (max-width: 767px) { /* Älterer Mobile Breakpoint */
    .card li h2, span.price { line-height: 1 !important; }
    .card li h2 { margin-bottom: 5px !important; font-size: 16px !important; }
    span.price { font-size: 14px !important; margin-top: 0 !important; }
    span.price span.woocommerce-Price-amount.amount { font-size: 16px; line-height: 1; }
    span.price span.woocommerce-Price-currencySymbol { font-size: 14px; }
    .elementor-widget-wrap.elementor-element-populated { padding: 0 !important; }
    .menu-modal { height: 48vh; overflow-y: scroll; box-shadow: 0 20px 20px 2px rgb(57 63 72 / 14%); }
    .header-footer-group .mobile-menu ul li a { padding: 15px; color: #fff !important; }
    button.toggle.sub-menu-toggle.fill-children-current-color { background: 0 0 !important; border: none !important; color: #fff !important; }
    .modal-menu ul li { border-left-width: 0; padding-left: 20px; }
    .header-footer-group .close-nav-toggle { filter: brightness(0) invert(1); }
    .header-footer-group .mobile-menu ul li:first-child { border-top: none !important; padding-top: 0 !important; }
    /* ... weitere Mobile Stile ... */
}
@media (max-width: 767.9px) { /* Neuerer Mobile Breakpoint */
    .elementor-element-9075bd1 .cbdp, .elementor-element-9075bd1 .cp { height: auto !important; margin-bottom: 0 !important; }
    .howtouse .elementor-tabs-content-wrapper { display: flex; flex-wrap: wrap; }
    .howtouse .elementor-tab-content.elementor-active { order: 1; }
    .howtouse .elementor-tabs-view-horizontal .elementor-tab-title.elementor-tab-mobile-title { width: 33.3% !important; font-size: 14px !important; vertical-align: middle; padding: 10px 0; }
    .howtouse .elementor-tabs-view-horizontal .elementor-widget-wrap .elementor-tab-title.elementor-tab-mobile-title { width: 50% !important; font-size: 15px !important; vertical-align: middle; padding: 10px 0; }
    .elementor-element-0e02b5a .cp { margin-top: 0 !important; font-size: 30px; }
    .elementor-element-30895d0 { margin-bottom: 3rem; }
    .elementor-12 .elementor-element.elementor-element-9eebc95 { padding: 0 15px !important; margin-top: 0 !important; }
    .elementor-element-f8ace07 { margin-bottom: 0 !important; text-align: center; }
    .bestslide, .elementor-12 .elementor-element.elementor-element-30895d0, .elementor-12 .elementor-element.elementor-element-4370604, .elementor-5666 .elementor-element.elementor-element-28611a55, .elementor-5666 .elementor-element.elementor-element-3ef78f13, .footer-inner .footer-col.c1, .single .elementor-5666 .elementor-element.elementor-element-7c07cc0f .elementor-col-50, .single .elementor-element-3884c0c .elementor-column, .single .elementor-element-7083381, .single .product .review-top-section .woocommerce-product-rating, .single .summary.entry-summary, .woocommerce-checkout form .col2-order, .woocommerce-checkout form .col2-set .form-row, .woocommerce-checkout form .form-row { width: 100% !important; }
    .best .elementor-container .slick-next.slick-arrow, .elementor-element-0b53a2d button.owl-next, .single .owl-carousel .owl-next { right: 0 !important; }
    .elementor-12 .elementor-element.elementor-element-02bf143 { margin-bottom: 0; }
    .elementor-12 .elementor-element.elementor-element-d560ee8 { width: 100%; padding-right: 0 !important; }
    .elementor-12 .elementor-element.elementor-element-0ce3d51, .product .image-with-text-section .content-section { width: 100%; }
    .elementor-element-c62f558:after { display: none !important; }
    #wps-slider-section .wps-product-image, .elementor-12 .elementor-element.elementor-element-3dc7044 { margin: auto !important; }
    .elementor-12 .elementor-element.elementor-element-18f6757, .woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_address_2_field { margin-top: 0 !important; }
    .bestslide .slick-list .sp-wps-product-details { display: flex; justify-content: center; }
    .bestslide .slick-list .wpsf-cart-button { margin-right: 0 !important; }
    .elementor-element-9075bd1 { background-image: none !important; }
    .elementor-element-9075bd1 .elementor-element-10b37e7 { width: 100% !important; order: 2; }
    .elementor-element-9075bd1 .elementor-element-224181c { width: 100% !important; order: 1; }
    .elementor-element-9075bd1 .cp { margin-top: 0 !important; font-size: 36px !important; text-align: center !important; }
    .elementor-element-9075bd1 .cbdp, .elementor-element-9075bd1 .cp1 { font-size: 36px; text-align: center !important; }
    /* ... weitere Mobile Stile ... */
    #site-content { height: auto !important; min-height: 100% !important; } /* War 100vh */
    .page-template-default main#site-content { padding-bottom: 150px !important; } /* Großer Abstand unten */
}
@media (max-width: 668px) {
    .archive .elementor-column.elementor-col-50.elementor-top-column.elementor-element.elementor-element-01e2cb1 { width: 100% !important; }
}
@media (max-width: 641px) { /* Kleinere Mobilgeräte */
    .elementor-12 .elementor-element.elementor-element-b8f01f4 .elementor-heading-title, .elementor-12 .elementor-element.elementor-element-f8ace07 .elementor-heading-title { font-size: 28px !important; }
    .faqs .elementor-image-box-description { font-size: 17px !important; }
    .owl-carousel .owl-next, .owl-carousel .owl-prev { height: 32px; width: 32px; }
    .owl-carousel button.owl-prev:after { top: 11px; left: 14px; padding: 4px; }
    .owl-carousel .owl-next:after { top: 11px !important; padding: 4px !important; left: 10px !important; }
    .footer-section .accept, .footer-section h5 { margin: 1rem 0 !important; font-size: 20px !important; line-height: 1.3 !important; }
    .footer-inner .footer-col.c1, .footer-inner .footer-col.c2, .footer-inner .footer-col.c3, .footer-inner .footer-col.c4, .single .elementor-element-f5347e4 .elementor-column { width: 100% !important; }
    .footer-section .privacys { text-align: center !important; line-height: 24px !important; }
    .product .about-blocks ul li { width: 100%; margin: 0 0 15px !important; }
    .single .owl-carousel .owl-next { right: 0 !important; }
    .single .elementor-3897 .elementor-element.elementor-element-1eea236 > .elementor-element-populated { padding: 15px 0 0 !important; }
    .woocommerce-cart .woocommerce .cart-collaterals { width: 100%; }
    .product .summary .offer-section { justify-content: center; }
    .product .summary .offer-section .offer-middle { text-align: center; }
    .product .summary .offer-section .offer-last-section { margin: auto !important; }
    .elementor-3897 .eael-infobox .infobox-content { padding: 0 !important; }
    .elementor-3897 .infobox-icon { min-width: 35px !important; }
    .elementor-3897 .infobox-icon img { max-width: 22px; }
    .woocommerce-checkout form .col2-set { width: 100% !important; padding: 5rem 0 2rem; }
    .woocommerce-checkout form .col2-order { padding: 3rem 1rem; }
    .archive .woocommerce ul li .button { padding: 8px 13px !important; }
    .listing-content ul li { margin: 0 0 15px; width: 100%; }
    .elementor-28010 .elementor-element.elementor-element-54ae35af > .elementor-element-populated { padding: 2rem 1rem !important; }
    .elementor-28010 .elementor-element.elementor-element-6cf1b0cc img { height: auto !important; }
}
@media (max-width: 481px) {
    .listing-content ul li { margin: 0 0 15px; width: 100%; }
    .archive .woocommerce ul#productfilter li .onsale { padding: 0 11px; max-width: 72px; font-size: 10px !important; }
}
@media (max-width: 479px) {
    .archive .elementor-element-2687245 .elementor-column.elementor-col-50.elementor-top-column.elementor-element.elementor-element-01e2cb1, .archive .elementor-element-2687245 .elementor-column.elementor-col-50.elementor-top-column.elementor-element.elementor-element-b08c03b.cbd-oil-filter, .elementor-28010 .elementor-element.elementor-element-3c8c1ac2 .elementor-column.elementor-col-16, .elementor-488 .elementor-element.elementor-element-15abcfe .elementor-column, .shipping-related-section .elementor-column.elementor-col-16, section.shipping-related-section .elementor-28007 .elementor-column.elementor-col-25 { width: 100% !important; }
    .elementor-28010 .elementor-element.elementor-element-3c8c1ac2 .elementor-element.elementor-element-46e66ca4.elementor-widget.elementor-widget-image { margin-bottom: 10px !important; }
    .elementor-12 .elementor-element.elementor-element-63303d1 .elementor-tab-title.elementor-tab-mobile-title { width: 46% !important; padding: 10px !important; }
    .elementor-12 .elementor-element.elementor-element-7e73593 .elementor-column.elementor-col-25 { width: 100% !important; margin: 0 !important; }
    .elementor-28010 .elementor-element.elementor-element-758c315 font.linked_products { margin: -50px 5px 0 !important; font-size: 12px !important; }
    .elementor-28010 .elementor-element.elementor-element-758c315 h2.woocommerce-loop-product__title { font-size: 14px !important; }
    .elementor-28010 .elementor-element.elementor-element-461bc2a7.elementor-wc-products .attachment-woocommerce_thumbnail { height: 150px !important; }
    section.shipping-related-section .elementor-28007 .elementor-element.eael-infobox-shape-square.eael-infobox-hover-img-shape-square.elementor-widget.elementor-widget-eael-info-box { justify-content: flex-start !important; }
}
@media (max-width: 425px) {
    .elementor-12 .elementor-element.elementor-element-7af679c { padding: 0 22px; }
    .faqs .elementor-inner-column.elementor-element { padding: 0 !important; }
    #four_slider .add_to_cart_button { background-image: linear-gradient(to right,#5f7931,#41622f); color: #fff !important; font-size: 14px !important; font-weight: 400 !important; }
    .owl-carousel .card li h2 { font-size: 17px !important; }
    .owl-carousel .price ins { font-size: 18px !important; }
    .owl-carousel .price del bdi { font-size: 14px !important; }
    .woocommerce-checkout .col2-order table tr td { width: 50% !important; max-width: 50% !important; }
    .woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping { display: flex !important; flex-wrap: wrap; }
    .woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping td { width: 100% !important; max-width: 100% !important; }
    .woocommerce-checkout .col2-order .woocommerce-shipping-totals.shipping ul li label[for^="shipping_method_"] { text-align: left !important; }
}

/* Letzte Fixes & Overrides */
a.woocommerce-button.button { padding: 3px; font-size: 14px; margin: 3px !important; }
.category-first-content .elementor-widget-container h2 { font-size: 35px; }
a.woocommerce-review-link { color: #f60; font-weight: 500; position: relative; top: -2px; }
.owl-carousel li h2 { font-size: 19px; font-style: normal; text-align: left; color: #393939; font-weight: 400; margin: 10px 0; }
.owl-carousel li { list-style: none; }
.qltyprdts .elementor-container.elementor-column-gap-default { margin: 0; }
.blog .elementor-container.elementor-column-gap-no { margin: 0; }
.cat-filter-section .elementor-column.elementor-col-50 { max-width: 288px; } /* Filter Spaltenbreite? */
.canblogs .owl-item { box-shadow: 0 0 26px rgb(192 192 192 / 10%); border-radius: 10px; border: 1px solid #e8e8e8; background-color: #fffdfd; }
#reviews .owl-item { font-size: 14px; font-weight: 400; color: #ffffff; } /* Topbar Slider Text */
.single-post h2 { font-size: 30px; margin: 19px 0 6px; }
.single-post h3 { font-size: 25px; margin: 19px 0 6px; }
#elementor-popup-modal-28982 .dialog-close-button { right: 10px !important; top: 10px !important; /* War -4%, -2% */ background-color: maroon !important; border-radius: 20px; padding: 10px; display: block !important; /* War none */}
#elementor-popup-modal-28982 .dialog-message { width: auto !important; height: auto; margin: 0; }
#elementor-popup-modal-28982 .dialog-widget-content { margin: 0 20px !important; }
/* Auskommentierter Code */
/* .canblogs a:after{content:"";background:url('/wp-content/uploads/2022/10/icon-1.png') center/contain no-repeat; */


/* =============================================
   Fix für Warenkorb-Summe Breite und Textumbruch
   ============================================= */

/* Direkter ansprechen der rechten Spalte und der Tabelle */
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td {
    max-width: none !important;
    width: auto !important;
    white-space: normal !important;
    text-align: left !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    padding-left: 10px !important; /* Erhöhte Spezifität */
    padding-right: 5px !important; /* Erhöhte Spezifität */
    vertical-align: top !important; /* Erhöhte Spezifität */
    display: table-cell !important; /* Sicherstellen, dass es sich wie eine Zelle verhält */
    float: none !important; /* Floats entfernen */
    overflow: visible !important; /* Versteckten Overflow aufheben */
}

/* Spezifischer für Versand */
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr.woocommerce-shipping-totals td,
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td:has(address) { /* Moderner Selektor */
    text-align: left !important;
    white-space: normal !important;
    max-width: none !important;
    width: auto !important;
    padding-left: 10px !important;
    padding-right: 5px !important;
    vertical-align: top !important;
}

/* Linke Spalte */
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th {
    width: 35% !important;
    padding-right: 10px !important;
    vertical-align: top !important;
    text-align: left !important; /* Sicherstellen */
    white-space: nowrap; /* Verhindert Umbruch im Label */
}

/* Eventuell störende Flexbox-Eigenschaften aufheben (falls vorhanden) */
body.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr {
    display: table-row !important; /* Standard-Tabellenverhalten erzwingen */
}


/* EMCO */

.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals {
    float: right !important;
    width: 100% !important;
}



/* =============================================
   Fix für Add-to-Cart Button Style (Gradient)
   ============================================= */

/* Stellt den grünen Gradienten für primäre WooCommerce-Aktionsbuttons wieder her */
.woocommerce button.button.alt,
.woocommerce button.button.single_add_to_cart_button,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
#respond input#submit.alt,
a.checkout-button.button.alt.wc-forward /* Auch Checkout Button */
{
    background: linear-gradient(130deg, #5f7931 24%, #41622f 59%) !important; /* Dein Gradient */
    color: #ffffff !important; /* Weißer Text */
    border: 1px solid #41622f !important; /* Optional: Dunkelgrüner Rand */
    border-radius: 50px !important; /* Abrundung wie bei anderen Buttons */
    text-shadow: none !important; /* Textschatten entfernen, falls vorhanden */
    padding: 12px 25px !important; /* Innenabstand (ggf. anpassen) */
    line-height: normal !important; /* Normaler Zeilenabstand */
    font-weight: 500; /* Mittleres Gewicht (ggf. anpassen) */
    transition: background 0.3s ease; /* Sanfter Übergang für Hover */
}

/* Hover-Effekt (Optional, z.B. etwas heller oder dunkler) */
.woocommerce button.button.alt:hover,
.woocommerce button.button.single_add_to_cart_button:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover,
#respond input#submit.alt:hover,
a.checkout-button.button.alt.wc-forward:hover
{
    background: linear-gradient(130deg, #6a8a36 24%, #4a7038 59%) !important; /* Etwas hellerer Gradient bei Hover */
    color: #ffffff !important;
    border-color: #4a7038 !important;
}

/* Korrigiert spezifische Buttons, die fälschlicherweise weiß wurden */
/* (Falls der obere Fix nicht für alle Buttons reicht) */

/* Beispiel: Update Cart Button (soll vielleicht nicht den Gradienten haben) */
.woocommerce-cart-form .actions button[name="update_cart"] {
    background: #ffffff !important; /* Weißer Hintergrund zurück */
    color: #4c673d !important; /* Grüne Schrift zurück */
    border: 1px solid #4c673d !important; /* Grüner Rand zurück */
}
.woocommerce-cart-form .actions button[name="update_cart"]:hover {
    background: #f0f0f0 !important; /* Leichter Grauton bei Hover */
    color: #4c673d !important;
    border-color: #4c673d !important;
}



/* =============================================
   Layout Quantity Buttons (Inline, KEIN Rahmen um Gruppe/Buttons)
   ============================================= */

.woocommerce div.product form.cart .quantity {
    display: inline-flex !important; /* Nebeneinander */
    align-items: center;
    vertical-align: middle;
    margin-right: 1em;
    border: none !important; /* KEIN Rahmen um Container */
    background: none !important;
    padding: 0 !important;
    overflow: visible; /* Entferne overflow hidden */
}

.woocommerce div.product form.cart .quantity input.qty {
    border: 1px solid #ddd !important;  /* NUR Input hat Rahmen */
    height: 38px;
    line-height: 38px !important;
    padding: 0 5px !important;
    width: 4em;
    min-width: 45px;
    text-align: center;
    border-radius: 4px; /* Input hat Abrundung */
    box-shadow: none !important;
    outline: none !important;
    order: 2;
    -moz-appearance: textfield;
    appearance: none;
    background-color: #fff !important;
    color: #333 !important;
    flex-grow: 0;
    flex-shrink: 0;
    margin: 0 5px; /* Fügt Abstand zwischen Buttons und Input hinzu */
}
/* Chrome, Safari, Edge, Opera: Pfeile entfernen */
.woocommerce div.product form.cart .quantity input.qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.woocommerce div.product form.cart .quantity button.plus,
.woocommerce div.product form.cart .quantity button.minus {
    background: transparent !important; /* KEIN Button-Hintergrund */
    color: #555 !important;            /* Farbe für +/- Text */
    border: none !important;          /* KEIN Button-Rand */
    height: 38px !important;           /* Höhe an Input anpassen */
    width: auto;                     /* Breite automatisch an Text anpassen */
    line-height: 38px;                 /* Vertikale Zentrierung */
    font-size: 1.5em;                  /* Größe +/- */
    font-weight: bold;
    padding: 0 8px !important;         /* Etwas Abstand um +/- Text */
    cursor: pointer;
    display: inline-block !important;
    vertical-align: middle;
    border-radius: 0;
    box-shadow: none !important;
    flex-shrink: 0;
    transition: color 0.2s ease;
}

.woocommerce div.product form.cart .quantity button.minus {
    order: 1;
}

.woocommerce div.product form.cart .quantity button.plus {
    order: 3;
}

.woocommerce div.product form.cart .quantity button.plus:hover,
.woocommerce div.product form.cart .quantity button.minus:hover {
    color: #000 !important; /* Dunklere Farbe bei Hover */
    background: transparent !important; /* Hintergrund bleibt transparent */
}



/* =============================================
   Fix für WooCommerce Onsale Badge (Überschreibt Elementor) - Korrigiert
   ============================================= */

/* Ziel: .onsale innerhalb von WooCommerce Produktlisten, auch in Elementor Widgets */
.elementor-widget-wc-products ul.products li.product .onsale,
.elementor-widget-wc-archive-products ul.products li.product .onsale {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    padding: 5px 11px !important;
    margin: 0 !important;
    background-color: #f60 !important; /* Original Orange */
    color: #f7f7f7 !important; /* Original Heller Text */
    border-radius: 0 0 0 10px !important; /* Original Abrundung unten links */
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 18.05px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    min-width: auto !important;
    min-height: auto !important;
    width: auto !important;
    height: auto !important;
    display: inline-block !important;
    z-index: 9;
    letter-spacing: normal !important;
    font-style: normal !important;
}
.tax-product_cat .product-range-new {
    position: absolute !important;
    bottom: 0px !important;
    padding: 5px 11px !important;
    margin: 0 !important;
    color: #f7f7f7 !important;
    border-radius: 0 0 0 4px !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 18.05px !important;
    text-align: center !important;
    text-transform: uppercase !important;
    min-width: auto !important;
    min-height: auto !important;
    width: auto !important;
    height: auto !important;
    display: inline-block !important;
    z-index: 9;
    letter-spacing: normal !important;
    font-style: normal !important;
    background-color: transparent;
    background-image: linear-gradient(110deg, #68AD56 0%, #4C673D 100%);
    left: 0px;
}
.woocommerce ul.products li.product .onsale {
    display: none;
}
.tax-product_cat .rel_post-title a {
    font-size: 21px !important;
}
.tax-product_cat .rel_post-title {
    margin-top: 5px;
}
/* =============================================
   Fix für "Mein Konto" Layout (Navigation links, Inhalt rechts) - V2
   ============================================= */

/* Haupt-Wrapper auf der "Mein Konto"-Seite als Flex-Container */
.woocommerce-account .woocommerce {
    display: flex;
    flex-wrap: wrap;
    /* NEU: Elemente oben ausrichten */
    align-items: flex-start;
    gap: 30px;
    padding-top: 30px;
    padding-bottom: 30px;
}

/* Navigation (Linke Spalte) - Keine Änderung hier nötig */
.woocommerce-account .woocommerce-MyAccount-navigation {
    float: none !important;
    width: 250px !important; /* Breite anpassen bei Bedarf */
    flex-shrink: 0;
    border-bottom: none;
    margin-bottom: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
    display: block !important;
    width: 100% !important;
    margin: 0 0 0 0 !important; /* Unteren Abstand entfernt */
    padding: 0 !important;
    min-width: auto !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    border-bottom: 1px solid #eee;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child a {
    border-bottom: none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
    background-color: #f5f5f5;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
    background-color: #eee;
    font-weight: bold;
}

/* Hauptinhalt (Rechte Spalte) */
.woocommerce-account .woocommerce-MyAccount-content {
    float: none !important;
    width: auto !important;
    margin-left: 0 !important;
    flex-grow: 1;
    padding: 0 !important; /* Innenabstand am Container selbst entfernen */
    min-width: 0;
    /* NEU: Sicherstellen, dass kein unerwünschter oberer Margin vorhanden ist */
    margin-top: 0 !important;
}

/* Optional: Padding für den *inneren* Inhalt hinzufügen, damit er nicht am Rand klebt */
.woocommerce-account .woocommerce-MyAccount-content > *:first-child {
    margin-top: 0; /* Verhindert doppelten Margin, falls erster Absatz/Tabelle einen hat */
}
.woocommerce-account .woocommerce-MyAccount-content p:first-of-type {
    margin-top: 0; /* Speziell für Absätze wie im Dashboard */
}

/* Responsive Anpassung: Bleibt gleich */
@media (max-width: 767.9px) {
    .woocommerce-account .woocommerce {
        display: block;
        gap: 0;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation {
        width: 100% !important;
        max-width: none;
        border-bottom: 1px solid #eeeded;
        margin-bottom: 30px !important;
        padding: 0 0 20px 0;
        overflow-x: auto;
        white-space: nowrap;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: flex !important;
        width: auto;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation ul li {
        display: inline-block !important;
        width: auto !important;
        margin: 0 5px 0 0 !important;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
        white-space: nowrap;
        border-bottom: none;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        margin-left: 0 !important;
        padding: 0 10px !important;
    }
}


/* =============================================
   Fix für "Newsletter Button Font Text" Layout - V2 by Emir Corovic
   ============================================= */

.subsnew form input[type=submit] {
    width: 150px !important;
    height: 58px !important;
    box-shadow: 0 1px 30px rgb(0 0 0 / 35%) !important;
    border-radius: 11px;
    border: 0 solid #ffffff;
    font-size: 18px !important;
    margin: 0px !important;
    background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAARBAMAAADNtor0AAAAIVBMVEX///9HcEz///////////////////////////////////+jWTucAAAACnRSTlP1ALVsDiyR30zRR88UFQAAAF5JREFUCNdjMBGEAgGGBalwJtcqDQRz1WRHOHMVWyCYuQoEmBpBTHWQ8KqVJkCmoGtz0nSuVQtSgUwQCFZYtcoALKpeABR1gKpdbgIzYVEjmrlAZrEjhhtWIVyGcC8A/7MrkenLDwIAAAAASUVORK5CYII=') center no-repeat;
    background-size: inherit;
}

/* =============================================
   Fix für Add-to-Cart & Mini-Cart Button Style (Gradient)
   ============================================= */

/* Stellt den grünen Gradienten für primäre WooCommerce-Aktionsbuttons UND Mini-Cart-Buttons wieder her */
.woocommerce button.button.alt,
.woocommerce button.button.single_add_to_cart_button,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
#respond input#submit.alt,
a.checkout-button.button.alt.wc-forward, /* Checkout Button im Warenkorb/Kasse */
.bdt-mini-cart-footer-buttons .bdt-button-view-cart,  /* NEU: Mini-Cart "Warenkorb" */
.bdt-mini-cart-footer-buttons .bdt-button-checkout /* NEU: Mini-Cart "Kasse" */
{
    background: linear-gradient(130deg, #5f7931 24%, #41622f 59%) !important; /* Dein Gradient */
    color: #ffffff !important; /* Weißer Text */
    border: 1px solid #41622f !important; /* Dunkelgrüner Rand */
    border-radius: 50px !important; /* Abrundung */
    text-shadow: none !important;
    padding: 10px 25px !important; /* Innenabstand (ggf. für Mini-Cart anpassen) */
    line-height: normal !important;
    font-weight: 500;
    transition: background 0.3s ease;
    display: inline-block; /* Stellt sicher, dass Padding etc. greift */
    text-align: center;    /* Text zentrieren */
    cursor: pointer;
    text-decoration: none !important; /* Keine Unterstreichung */
}

/* Hover-Effekt */
.woocommerce button.button.alt:hover,
.woocommerce button.button.single_add_to_cart_button:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover,
#respond input#submit.alt:hover,
a.checkout-button.button.alt.wc-forward:hover,
.bdt-mini-cart-footer-buttons .bdt-button-view-cart:hover,  /* NEU */
.bdt-mini-cart-footer-buttons .bdt-button-checkout:hover /* NEU */
{
    background: linear-gradient(130deg, #6a8a36 24%, #4a7038 59%) !important; /* Etwas hellerer Gradient bei Hover */
    color: #ffffff !important;
    border-color: #4a7038 !important;
}

/* Optional: Abstand zwischen den Mini-Cart-Buttons, falls sie direkt nebeneinander sind */
.bdt-mini-cart-footer-buttons .bdt-button + .bdt-button {
    margin-left: 10px; /* Abstand hinzufügen */
}

/* Optional: Sicherstellen, dass der Footer-Button-Container zentriert ist oder die volle Breite hat */
/* .bdt-mini-cart-footer-buttons {
    text-align: center; /* Zentriert die inline-block Buttons */
/* display: flex; */ /* Alternative: Flexbox */
/* justify-content: space-around; */ /* Buttons mit Abstand verteilen */
/* padding-top: 15px; */ /* Abstand nach oben */
/* } */


.bdt-button-text:hover {
    color: #ffffff !important;
}

.bdt-button-text {
    padding: 0;
    line-height: 1.5;
    background: none;
    color: #ffffff !important;
}

.elementor-products-grid ul.products.elementor-grid li.product .onsale,
.tax-product_cat .onsale-text-inner {
    display: none !important;
}
.wpa-product-gallery-thumbs.slick-slider .slick-slide.slick-current img {
    opacity: 1;
    border: 1px solid #4a7038;
    border-radius: 12px;
    padding: 4px;
}
.wpa-product-gallery-thumbs.slick-slider .slick-slide img {
    opacity: 1;
    border: unset;
}
.single-product .variations .reset_variations {
    display: none !important;
}
.single-product .wcboost-variation-swatches__item.selected {
    background-image: linear-gradient(130deg,#5f7931 24%,#41622f 59%);
    color: #fff;
    border: unset;
    box-shadow: unset;
}
.single-product .wcboost-variation-swatches__wrapper {
    margin-left: 1px;
}
.single-product .summary .wlr-product-message {
    width: fit-content;
    background: linear-gradient(130deg,#5f7931 24%,#41622f 59%);
    color: white;
    padding: 5px 10px !important;
}
.single-product .woocommerce-variation-add-to-cart-wrap {
    display: flex;
    flex-direction: row;
}
.single-product .woocommerce-variation-add-to-cart-wrap .quantity input.qty {
    height: 42px !important;
}
.single-product .woocommerce-variation-add-to-cart-wrap .quantity {
    margin-top: 10px;
}
.single-product .offer-last-section .wlr-product-message {
    display: none !important;
}
.bdt-wc-carousel .bdt-wc-add-to-cart {
    opacity: 1;
}
.bdt-wc-carousel .bdt-wc-add-to-cart .add_to_cart_button {
    background: #4c673d !important;
    color: white !important;
    text-decoration: unset !important;
}
.ep-megamenu.ep-megamenu-horizontal .bdt-navbar-nav li {
    width: 100%;
}
.bdt-wc-carousel {
    position: relative;
}
.elementor-12 .elementor-element.elementor-element-f6f2024 > .elementor-widget-container {
    padding: 0 50px;
}
.elementor-46637 .elementor-element.elementor-element-41d23f4 {
    width: 70%;
}
[data-widget_type="theme-site-logo.default"] img {
    width: 120px !important;
    max-width: 100% !important;
    margin-top: -15px;
}
.ep-megamenu.ep-megamenu-horizontal .bdt-navbar-nav li#menu-item-41800 {
    width: 130%;
}
.elementor-12 .elementor-element.elementor-element-5cd438a,
.elementor-12 .elementor-element.elementor-element-0ddc388 {
    width: fit-content;
}


.product-single-review-section {
    padding: 29px 20px 25px;
    background: #f9f1ec;
    border-radius: 10px;
}
.product-single-review-section img {
    width: 90px;
    margin-bottom: 14px;
}
.product-single-review-section p {
    font-style: italic;
}
.product-single-review-section p::before {
    content: "\201C";
    margin-right: -2px;
}
.product-single-review-section p::after {
        content: "\201D";
        margin-left: -2px;
}
.product-single-review-section h5 {
    margin: 1rem auto;
    font-size: 1.7rem;
}

.about-cbd-oil__title,
.about-cbd-oil__description {
    text-align: center;
}
.about-cbd-oil__title {
    font-weight: 600;
    color: #1B5300;
}
.about-cbd-oil__description {
    margin-bottom: 50px;
    font-weight: normal;
    line-height: 1.34;
}

.about-blocks {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 30px;
}

.about-block {
    padding: 20px;
    border: 1px solid rgba(184, 184, 184, .48);
    border-radius: 10px;
}
.about-block__content > h4,
.about-block__content h4 > strong {
    font-weight: 600;
}
.about-block__content > h4 {
    margin: 2rem auto 1.2rem;
    font-size: 2.6rem;
    color: #1B5300;
}
.about-block__content > p {
    font-size: 16px;
}

.woocommerce .image-with-text-section {
    padding: 3rem 0;
}
.image-with-text-section .container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(420px, 1fr));
    gap: 30px;
    align-items: center;
}
.image-with-text-section .img-section img {
    border-radius: 20px;
}
.image-with-text-section.right-content-left-img .img-section {
    order: -1;
}
.image-with-text-section .container .content-section h2,
.image-with-text-section .container .content-section h2 > strong {
    font-weight: 600;
}
.product .image-with-text-section .container .content-section h2 {
    font-size: 32px;
    line-height: 1.34;
}
.image-with-text-section .container .content-section h3 {
    margin: 3rem auto 1.5rem;
    font-size: 2.4rem;
    font-weight: 600;
    color: #41622f;
}
.image-with-text-section .content-section p {
    font-size: 16px;
}
.single-product #primary .image-with-text-section.right-content-left-img .img-section {
    padding-right: 0;
}

.cta-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border: none;
    outline: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-size: 16px;
    background: linear-gradient(130deg, #5f7931 24%, #41622f 59%) !important;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    text-decoration: none;
}
.image-with-text-section .cta-button-wrapper {
    margin-top: 30px;
}

form.cart .bos4w-display-options {
    margin-top: 12px;
}
form.cart label:has(input[type="radio"]) {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 6px;
    margin-bottom: 7px;
}
form.cart input[type="radio"] {
    appearance: none;
    width: 20px;
    height: 20px;
    margin: -2px 0 0;
    border: 2px solid #41622f;
    border-radius: 50%;
    background-clip: content-box;
    padding: 3px;
}
form.cart input[type="radio"]:checked {
    background-image: linear-gradient(130deg, #5f7931 24%, #41622f 59%);
}

form.cart .bos4w-display-dropdown label {
    margin-bottom: 10px;
}
form.cart .bos4w-display-dropdown select {
    appearance: none;
    max-width: 100%;
    height: 48px;
    padding: 0 50px 0 15px;
    border: none;
    border-radius: 10px;
    outline: none;
    font-weight: 500;
    font-family: "Roboto", sans-serif;
    font-size: 16px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath fill='%23fff' d='m8.728 15.795-5-8A1.5 1.5 0 0 1 5 5.5h10a1.5 1.5 0 0 1 1.272 2.295l-5 8a1.5 1.5 0 0 1-2.544 0Z'/%3E%3C/svg%3E") right 12px center / 26px no-repeat, linear-gradient(130deg, #5f7931 24%, #41622f 59%);
    color: #fff;
    cursor: pointer;
}

.product-tabs-section .e-n-tabs-heading {
    width: 840px;
    max-width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding: 4px;
    border-radius: 16px;
    background: rgba(156, 179, 11, 0.2);
}
.product-tabs-section .e-n-tabs-heading .e-n-tab-title {
    flex-grow: 1;
    border-radius: 12px;
}
.product-tabs-section .e-n-tabs-heading .e-n-tab-title[aria-selected="true"] {
    background: #9CB30B !important;
    color: #fff !important;
    box-shadow: 0px 3px 1px rgba(0, 0, 0, 0.05);
}
.product-tabs-section .e-n-tabs-heading .e-n-tab-title:hover,
.product-tabs-section .e-n-tabs-heading .e-n-tab-title:focus {
    text-decoration: none;
}

.single-product-box .add_to_cart_button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 48px;
    border: none !important;
    background: #4C673D !important;
    color: #FFF !important;
    text-align: center;
    transition: .3s;
}
.single-product-box:hover .add_to_cart_button {
    background: #9CB30B !important;
    text-decoration: none !important;
}
.single-product-box-rating {
    text-align: center;
}
.single-product-box-rating .star-rating .filled {
    --accent-color: #FFCC00 !important;
}
.single-product-box .elementor-widget-woocommerce-product-price .etrusted_widget {
    display: none;
}
.single-product-box .elementor-widget-woocommerce-product-price p.price {
    display: flex;
    justify-content: center;
    gap: 8px;
    font-size: 20px;
    font-family: 'Poppins', sans-serif;
}
.single-product-box .elementor-widget-woocommerce-product-price p.price del {
    opacity: 1;
    color: #696969;
    font-size: 14px;
}
.single-product-box .elementor-widget-woocommerce-product-price p.price ins {
    order: -1;
}

.discount {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 0.5px 8px;
    border-radius: 6px;
    background: #FF6600;
    color: #fff;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
    font-size: 18px;
    letter-spacing: 0;
}

.product-label {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 2px 14px;
    border-radius: 6px;
    background: #A7C203;
    color: #fff;
    font-weight: 600;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    letter-spacing: 0;
}

.single-product-header {
    display: grid;
    grid-template-areas: "wrapper";
    grid-template-columns: 100%;
}
.single-product-header__img-wrapper,
.single-product-header__hovered-img-wrapper,
.single-product-header__product-label,
.single-product-header__discount {
    grid-area: wrapper;
}
.single-product-header__discount {
    z-index: 1;
    justify-self: start;
    align-self: end;
    margin: 12px;
}
.single-product-header__product-label {
    z-index: 1;
    justify-self: end;
    align-self: start;
    margin: 12px;
}

.single-product-box .single-product-header {
    margin: -20px -20px 0px;
}
.single-product-box .single-product-header__img-wrapper img,
.single-product-box .single-product-header__hovered-img {
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}
.single-product-box .star-rating span::before {
    color: #FC0 !important;
}

.single-product-header .single-product-header__img-wrapper,
.single-product-header .single-product-header__hovered-img-wrapper {
    transition: .45s;
}
.single-product-header:has(.single-product-header__hovered-img-wrapper)::before,
.single-product-header:has(.single-product-header__hovered-img-wrapper)::after {
    content: "";
    grid-area: wrapper;
    z-index: 1;
    justify-self: center;
    align-self: end;
    width: 4px;
    height: 4px;
    margin-bottom: 8px;
    border-radius: 50%;
    transition: .45s;
}
.single-product-header:has(.single-product-header__hovered-img-wrapper)::before {
    margin-right: 6px;
    background: #000;
}
.single-product-header:has(.single-product-header__hovered-img-wrapper)::after {
    margin-left: 6px;
    background: #CACACA;
}
.single-product-box:has(.single-product-header__hovered-img-wrapper):hover .single-product-header::before {
    background: #CACACA;
}
.single-product-box:has(.single-product-header__hovered-img-wrapper):hover .single-product-header::after {
    background: #000;
}
.single-product-box:has(.single-product-header__hovered-img-wrapper):hover .single-product-header__img-wrapper,
.single-product-header .single-product-header__hovered-img-wrapper {
    visibility: hidden;
    opacity: 0;
}
.single-product-box:hover .single-product-header__hovered-img-wrapper {
    visibility: visible;
    opacity: 1;
}

@media (max-width: 1092px) {
    .single .image-with-text-section .content-section .content-inner-sec-left {
        padding: 0;
    }
}

@media (max-width: 1023px) {
    .about-cbd-oil__description {
        margin-bottom: 40px;
    }

    .about-blocks {
        gap: 24px;
    }

    .about-block__content > h4 {
        font-size: 2.4rem;
    }
}
@media (max-width: 767px) {
    .about-cbd-oil__description {
        margin-bottom: 30px;
        font-size: 17px;
    }

    .about-blocks {
        gap: 16px;
    }

    .about-block__content > h4 {
        font-size: 2.2rem;
    }
    .about-block__content > p {
        font-size: 15px;
    }

    .woocommerce .image-with-text-section {
        padding: 1.5rem 0;
    }

    .image-with-text-section .container {
        grid-template-columns: 100%;
    }

    .product .image-with-text-section .container .content-section h2 {
        font-size: 26px;
    }
    .image-with-text-section .container .content-section h3 {
        font-size: 2rem;
    }
    .image-with-text-section.left-content-right-img .img-section {
        order: -1;
    }
}

@media (max-width: 439px) {
    .product-tabs-section .e-n-tabs-heading {
        padding: 0;
        background: transparent;
    }
    .product-tabs-section .e-n-tabs-heading .e-n-tab-title[aria-selected="false"] {
        background: rgba(156, 179, 11, 0.2) !important;
    }
}
