/* ==========================================================================
   THEME STYLESHEET STRUCTURE
   --------------------------------------------------------------------------
   1) Design Tokens
   2) Base / Reset
   3) Global Layout & Shared UI
   4) Header / Navigation / Search
   5) Footer
   6) Shop & Catalog
   7) Product Page
   8) Account & Address
   9) Cart / Checkout / Order Flow
   10) Responsive Overrides
   11) Dashboard / Data Tables
   12) Plugin Overrides
   13) Front Page Sections
   14) About / Contact Pages
   ========================================================================== */

/* ==========================================================================
   1) Design Tokens
   ========================================================================== */
:root {
    /* Colors */
    --color-primary: #fe9400;
    --color-text: #747474;
    --color-border: #dedede;
    --color-background: #fff;
    --color-background-light: #f7f7f7;
    --color-background-gray: #edeeee;
    --color-error: #ff4a48;
    --color-success: #090;
    --color-info: #03a9f4;
    --color-text-dark: #000;
    --color-text-light: #fff;

    /* Border Radius */
    --border-radius-sm: 3px;
    --border-radius-md: 6px;
    --border-radius-lg: 8px;
    --border-radius-xl: 16px;

    /* Shadows & transitions (mockup system) */
    --shadow-sm: 0 2px 8px rgba(16, 47, 78, 0.06);
    --shadow-md: 0 4px 16px rgba(16, 47, 78, 0.1);
    --shadow-lg: 0 8px 32px rgba(16, 47, 78, 0.15);
    --shadow-hover: 0 12px 40px rgba(16, 47, 78, 0.18);
    --transition-fast: 0.15s ease;
    --transition-base: 0.25s ease;
    --transition-slow: 0.4s ease;

    /* Mockup footer */
    --color-footer-bg: #102f4e;

    /* Layout: hero + header = 100vh */
    --header-height: 170px;

    --yith-wcan-filters_colors_accent_r: 254 !important;
    --yith-wcan-filters_colors_accent_g: 148 !important;
    --yith-wcan-filters_colors_accent_b: 0 !important;
    --yith-wcan-labels_style_background_hover: var(--color-primary) !important;
    /* --yith-wcan-labels_style_background_active: #A7144C; */
    --yith-wcan-anchors_style_text_hover: var(--color-primary) !important;
    --yith-wcan-anchors_style_text_active: var(--color-primary) !important;
    --yith-wcan-filters_colors_accent: var(--color-primary) !important;
}

@import url("https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap");

/* ==========================================================================
   2) Base / Reset
   ========================================================================== */

html {
    overflow-x: hidden;
    scroll-behavior: smooth;
}

*,
body,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: 0;
    padding: 0;
    outline: none;
    box-sizing: border-box;
    font-family: "Raleway", sans-serif;
}

/* a {
    color: var(--color-primary);
} */

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    color: var(--color-primary);
    font-weight: 400;
    line-height: 1.1;
    margin-bottom: 1rem;
}

h1,
.h1 {
    font-size: 2.5rem;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

body {
    font-family: "Raleway", sans-serif;
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.5;
    color: var(--color-text);
}

a {
    text-decoration: none;
    transition: 0.5s ease;
    display: inline-block;
}

.page-width {
    width: 100%;
    max-width: 1240px;
    padding: 0 15px;
    margin: 0 auto;
}

.blockHeader {
    display: grid;
    grid-template-columns: 1fr 3fr;
    grid-gap: 8px;
    margin-bottom: 8px;
}

img {
    max-width: 100%;
}

.woocommerce ul.products li.product a img {
    border-top-right-radius: var(--border-radius-md);
    border-top-left-radius: var(--border-radius-md);
}

.woocommerce ul.products li.product .button {
    margin-top: 4px;
}

/* ==========================================================================
   3) Global Layout & Shared UI
   ========================================================================== */
.site_logo img.img-fluid {
    max-width: 260px;
    height: auto;
    object-fit: contain;
    display: block;
}

.site_logo {
    margin: 0px 0;
}

.user-area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
}

.user-area .text-sm-center {
    width: 100%;
    text-align: center;
}

.user-area .text-sm-center a {
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    grid-gap: 3px;
}

/* ==========================================================================
   4) Header / Navigation / Search
   ========================================================================== */
header.main_header {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: var(--color-primary);
    padding: 0.5rem 0;
    transition:
        box-shadow var(--transition-base),
        padding var(--transition-base),
        background-color var(--transition-base);
}

header.main_header.is-scrolled {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.15);
    padding: 0.25rem 0;
}

ul.product_catList {
    max-width: 718px;
    margin: 25px auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 30px;
}

ul.product_catList li {
    list-style: none;
}

.AllItem_SearchBar {
    margin-bottom: 0.5rem;
}

ul.product_catList li a {
    position: relative;
    overflow: hidden;
    width: 100%;
    border-radius: var(--border-radius-md);
}

ul.product_catList li a:hover {
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

ul.product_catList li a img {
    height: 100%;
    object-fit: cover;
    border-bottom: 10px;
    transition: all 1s ease;
}

ul.product_catList li a:hover img {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
}

ul.product_catList li a span {
    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    min-height: 200px;
    flex-direction: column;
    justify-content: center;
    -ms-flex-item-align: end;
    align-self: flex-end;
    width: 100%;
    border: 2px solid var(--color-border);
    background: var(--color-background-light);
    padding: 15px;
    display: inline-flex;
    text-align: center;
    color: var(--color-primary);
    font-size: 1.05rem;
    font-weight: 600;
    border-radius: var(--border-radius-md);
}

.ornament {
    background: var(--color-background-gray);
    padding: 15px 0;
}

.white-bg {
    background: var(--color-background);
    padding: 0 10px;
    height: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: flex-end;
}

.white-bg img.gray-branding {
    max-width: 640px;
    width: 100%;
    object-fit: contain;
}

.mainBlock__footer ul.item_navbar-nav li.nav-item {
    display: block;
    padding: 5px 0;
    border-top: 1px solid var(--color-background-gray);
}

.mainBlock__footer ul.item_navbar-nav li.nav-item:first-child {
    border: none;
}

.mainBlock__footer ul.item_navbar-nav li.nav-item a {
    color: var(--color-text);
}

.mainBlock__footer {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 30px;
}

.copyright_footerBlock {
    background: var(--color-primary);
    padding: 8px 0;
}

/* ==========================================================================
   5) Footer
   ========================================================================== */
/* ============================================
   FOOTER (mockup layout)
============================================ */
.footer.mIan_Footer {
    background: var(--color-footer-bg);
    color: var(--color-text-light);
    padding: 4rem 0 0;
}

.footer-inner {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
    gap: 3rem;
    padding-bottom: 2rem;
}

.footer__heading {
    margin-bottom: 1.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-text-light);
}

.footer p {
    opacity: 0.8;
    font-size: 0.9rem;
    line-height: 1.8;
    margin-bottom: 0;
    color: var(--color-text-light);
}

.footer ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.footer ul li {
    margin-bottom: 0.6rem;
}

.footer a {
    color: var(--color-text-light);
    text-decoration: none;
    opacity: 0.8;
    font-size: 0.9rem;
    transition: opacity var(--transition-fast);
}

.footer a:hover {
    opacity: 1;
}

.footer-bottom {
    padding: 2rem 0;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    text-align: center;
}

.footer-bottom p {
    margin: 0 0 0.5rem;
}

.footer-bottom p:last-child {
    margin-bottom: 0;
}

.footer-bottom__agency {
    font-size: 0.85rem;
    opacity: 0.75;
}

.footer-bottom__agency a {
    color: var(--color-text-light);
}

.footer-bottom__agency a:hover {
    opacity: 1;
}

.footer-bottom__jcr {
    margin: 0;
    font-size: 0.9rem;
    opacity: 0.8;
    color: var(--color-text-light);
}

@media (max-width: 1024px) {
    .footer-inner {
        grid-template-columns: 1fr 1fr;
    }
}

.footer__brand ul {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0;
}

@media (max-width: 768px) {
    .footer.mIan_Footer {
        padding: 3rem 0 0;
    }

    .footer-inner {
        grid-template-columns: 1fr;
        gap: 2rem;
        padding-bottom: 2rem;
    }

    .footer-bottom {
        padding: 1.5rem 0;
    }
}

.mainCopyRight {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between;
    flex-wrap: wrap;
    grid-gap: 10px;
}

.copyright_Links ul.item_navbar-nav {
    display: flex;
    list-style: none;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.copyright_Links ul.item_navbar-nav li.nav-item {
    padding: 0 10px;
}

.copyright_Links ul.item_navbar-nav li.nav-item a.nav-link {
    color: var(--color-text-light);
    font-size: 12px;
}

.mainCopyRight p {
    font-size: 12px;
    color: var(--color-text-light);
}

.mainBlock__footer ul.item_navbar-nav {
    margin-bottom: 1rem;
    margin-top: 1rem;
}

.user-area .text-sm-center a:hover {
    text-decoration: underline;
}

.user-area .text-sm-center a span {
    color: var(--color-text-light);
    font-size: 12px;
    border-radius: var(--border-radius-md);
    padding: 2px 2px;
    background: var(--color-error);
    font-style: normal;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 20px;
}

.ysm-search-widget .search-field[type="search"] {
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
    /* z-index: 101; */
    position: relative;
    background: var(--color-background);
    transition: all 0.4s ease;
    width: 100%;
    min-height: 40px;
}

.AllItem_SearchBar {
    display: grid;
    grid-template-columns: 176px 1fr;
    grid-gap: 30px;
    position: relative;
    align-items: center;
}

/* Products category button + hamburger/X icon */
.products-category-trigger-wrap {
    position: relative;
}

.products-category-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 130px;
    justify-content: space-between;
    font-size: 16px;
    color: var(--color-text);
    font-family: "Raleway", sans-serif;
    background: var(--color-background);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
    padding: 10px 14px;
    min-height: 40px;
    cursor: pointer;
    transition:
        border-color 0.2s ease,
        color 0.2s ease;
}

.products-category-btn:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
}

/* Hamburgers library (https://jonsuh.com/hamburgers/) – collapse icon inside products button
   Isolate from page font-size/line-height and use whole pixels so all 3 lines render identical. */
.products-category-btn .hamburger {
    padding: 0;
    vertical-align: middle;
    font-size: 0;
    line-height: 0;
    display: inline-block;
}

.products-category-btn .hamburger-box {
    width: 24px;
    height: 18px;
    display: block;
    line-height: 0;
    font-size: 0;
}

.products-category-btn .hamburger-inner,
.products-category-btn .hamburger-inner::before,
.products-category-btn .hamburger-inner::after {
    width: 24px;
    height: 3px;
    min-height: 3px;
    max-height: 3px;
    box-sizing: border-box;
    background-color: currentColor;
}

.products-category-btn .hamburger-inner {
    margin-top: -2px;
    line-height: 0;
}

/* Whole-pixel positions to avoid subpixel rendering differences */
.products-category-btn .hamburger-inner::before {
    top: -8px;
}

.products-category-btn .hamburger-inner::after {
    bottom: -8px;
}

/* Collapse animation tuned for 18px box */
.products-category-btn .hamburger--collapse .hamburger-inner:after {
    top: -16px;
}

.products-category-btn .hamburger--collapse.is-active .hamburger-inner {
    transform: translate3d(0, -6px, 0) rotate(-45deg);
    background: currentColor !important;
}

.products-category-btn .hamburger--collapse.is-active .hamburger-inner::before,
.products-category-btn .hamburger--collapse.is-active .hamburger-inner::after {
    background: currentColor !important;
}

/* Products category panel – large box, flex hierarchy */
.products-category-panel {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 8px;
    width: min(1050px, calc(100vw - 30px));
    max-height: 70vh;
    overflow-y: auto;
    background: var(--color-background);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-lg);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
    z-index: 200;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity 0.25s ease,
        visibility 0.25s ease;
}

.products-category-panel.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.products-category-panel-inner {
    padding: 24px 20px;
}

.products-category-grid.level-0 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px 32px;
}

.products-cat-column {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.products-cat-level a {
    color: var(--color-text);
    text-decoration: none;
    font-size: 14px;
    transition: color 0.2s ease;
}

.products-cat-level a:hover {
    color: var(--color-primary);
}

.products-cat-main a {
    font-weight: 600;
    font-size: 15px;
    color: var(--color-text-dark);
}

.products-cat-children.level-1 {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.products-cat-child {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.products-cat-sub-row {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 1.5em;
}

.products-cat-sub-row .products-cat-sub {
    flex: 1;
    min-width: 0;
}

.products-cat-sub-toggle {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    padding: 0;
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-sm);
    background: var(--color-background);
    color: var(--color-text);
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    transition:
        border-color 0.2s ease,
        color 0.2s ease,
        background 0.2s ease;
}

.products-cat-sub-toggle:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    background: var(--color-background-light);
}

.products-cat-sub a {
    font-weight: 500;
}

.products-cat-subchildren-wrap {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease;
}

.products-cat-subchildren-wrap.is-expanded {
    max-height: 500px;
}

.products-cat-subchildren.level-2 {
    margin: 0;
    padding: 6px 0 0 14px;
    list-style: none;
    border-left: 1px solid var(--color-border);
    margin-left: 10px;
}

.products-cat-subchildren.level-2 li {
    margin-bottom: 4px;
}

.products-cat-subchildren.level-2 a {
    font-size: 13px;
    font-weight: 400;
    color: inherit;
}

.products-cat-subchildren.level-2 a:hover {
    color: var(--color-primary);
}

.products-category-empty {
    margin: 0;
    color: var(--color-text);
    font-size: 14px;
}

@media screen and (max-width: 900px) {
    .products-category-grid.level-0 {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 480px) {
    .products-category-grid.level-0 {
        grid-template-columns: 1fr;
    }
}

.Alle_Menus_Button ul.list-unstyled {
    margin: 1rem 0;
    list-style: none;
}

.Alle_Menus_Button ul.list-unstyled a.btn.reset {
    font-size: 16px;
    color: #747474;
    font-family: "Raleway", sans-serif;
}

.AllItem_SearchBar .absolute-container {
    position: absolute;
    background: var(--color-background);
    border-radius: var(--border-radius-md);
    z-index: 100;
    padding: 30px;
    border: 1px solid var(--color-border);
    white-space: nowrap;
    margin-top: 15px;
    width: calc(100% - 0px);
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
    left: 0px;
}

.AllItem_SearchBar .absolute-container:before {
    content: "";
    width: 22px;
    height: 22px;
    border: 1px solid var(--color-border);
    border-bottom-color: transparent;
    border-right-color: transparent;
    position: absolute;
    top: -3px;
    left: 50%;
    -webkit-transform: rotate(45deg) translateX(-50%);
    transform: rotate(45deg) translateX(-50%);
    display: block;
    background: var(--color-background);
}

.AllItem_SearchBar .absolute-container:after {
    content: "";
    height: 20px;
    width: 100%;
    position: absolute;
    top: -20px;
    left: 0;
}

ul:hover .absolute-container {
    opacity: 1;
    visibility: visible;
}

.ysm-search-widget .search-submit {
    z-index: 999;
}

/* 21-03-2024 -----------------*/

nav.woocommerce-breadcrumb a:first-child::before {
    content: "\f015";
    display: inline-block;
    font: normal normal normal 14px / 1 FontAwesome;
    text-rendering: auto;
    color: var(--color-primary);
    font-size: 25px;
}

.wooCustom-breadcrumbs {
    background: var(--color-background-gray);
    border-bottom: 1px solid rgba(218, 218, 218, 0.7);
}

nav.woocommerce-breadcrumb a {
    position: relative;
    margin: 0 20px 0 10px;
}

nav.woocommerce-breadcrumb a:first-child {
    font-size: 0;
}

nav.woocommerce-breadcrumb a::after {
    content: "";
    width: 1px;
    height: 28px;
    background: var(--color-border);
    position: absolute;
    right: -10px;
    top: 50%;
    display: block;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

nav.woocommerce-breadcrumb {
    font-size: 11.2px !important;
    display: flex;
    align-items: center;
    padding: 10px 0 !important;
    margin: 0 !important;
    flex-wrap: wrap;
    row-gap: 7px;
}

.site-main {
    margin: 0;
}

.main_collectionBlock {
    display: flex;
    flex-wrap: wrap;
    margin: 50px 0 0;
}

nav.woocommerce-pagination {
    width: 100%;
    max-width: 1240px;
    padding: 0 15px;
    margin: 0 auto 50px;
}

/* WooCommerce product pagination — match catalog UI (borders, radius, primary accent) */
.woocommerce nav.woocommerce-pagination ul.page-numbers {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
    border: none;
}

.woocommerce nav.woocommerce-pagination ul.page-numbers li {
    margin: 0;
    padding: 0;
    list-style: none;
    border: none;
}

.woocommerce nav.woocommerce-pagination .page-numbers {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.5rem;
    min-height: 2.5rem;
    padding: 0.35rem 0.65rem;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    color: var(--color-text-dark);
    background: var(--color-background);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
    transition:
        color var(--transition-fast),
        background-color var(--transition-fast),
        border-color var(--transition-fast),
        box-shadow var(--transition-fast);
}

.woocommerce nav.woocommerce-pagination a.page-numbers:hover,
.woocommerce nav.woocommerce-pagination a.page-numbers:focus {
    color: var(--color-text-light);
    background: var(--color-primary);
    border-color: var(--color-primary);
    box-shadow: var(--shadow-sm);
}

.woocommerce nav.woocommerce-pagination span.page-numbers.current {
    color: var(--color-text-light);
    background: var(--color-primary);
    border-color: var(--color-primary);
    cursor: default;
}

.woocommerce nav.woocommerce-pagination span.page-numbers.dots {
    min-width: auto;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    font-weight: 500;
    color: var(--color-text);
    background: transparent;
    border: none;
    box-shadow: none;
}

.woocommerce nav.woocommerce-pagination a.next.page-numbers,
.woocommerce nav.woocommerce-pagination a.prev.page-numbers {
    min-width: 2.75rem;
    padding-left: 0.85rem;
    padding-right: 0.85rem;
}

.filterBlock_items {
    background: var(--color-background-gray);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
}

ul.woocommerce-widget-layered-nav-list {
    list-style: none;
}

li.woocommerce-widget-layered-nav-list__item {
    border-top: 1px solid var(--color-border);
}

li.woocommerce-widget-layered-nav-list__item:first-child {
    border-top: none;
}

li.woocommerce-widget-layered-nav-list__item a {
    padding: 10px 30px 10px 35px !important;
    color: var(--color-text-dark);
    width: 100%;
}

/* Spinner Overlay */
.spinner-overlay {
    display: none;
    /* Hidden by default */
    position: fixed;
    /* Stay in place */
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    /* Semi-transparent background */
    z-index: 9999;
    /* Make sure it's on top of everything else */
    justify-content: center;
    /* Center horizontally */
    align-items: center;
    /* Center vertically */
}

/* Loading Spinner on home page */
.spinner {
    border: 8px solid rgba(0, 0, 0, 0.1);
    /* Light grey border */
    border-left: 8px solid #3498db;
    /* Blue border */
    border-radius: 50%;
    /* Round shape */
    width: 50px;
    /* Size */
    height: 50px;
    /* Size */
    animation: spin 1s linear infinite;
    /* Spin animation */
    position: absolute;
    left: 50%;
    top: 50%;
}

/* Spin Animation */
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.woocommerce .woocommerce-ordering,
p.woocommerce-result-count {
    float: unset;
}

.productsRight_block li.product {
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
    height: 100%;
    margin: 0 30px 0 0;
}

.productsRight_block li.product:hover {
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.list_ContentArea {
    padding: 0 20px 20px 20px !important;
}

.productsRight_block li.product .woocommerce-placeholder {
    border: none !important;
}

.productsRight_block a.woocommerce-LoopProduct-link:hover {
    text-decoration: underline !important;
    color: var(--color-text);
}

h2.woocommerce-loop-product__title {
    font-size: 16px;
    color: var(--color-text);
    font-weight: 400;
    margin-bottom: 0 !important;
    line-height: 1.5;
}

li.product span.sku {
    color: var(--color-text);
    font-size: 12.8px;
}

.productsRight_block .product span.price {
    border-top: 1px solid var(--color-border);
    margin: 1.5rem 0;
    padding-top: 1.5rem;
}

.productsRight_block span.woocommerce-Price-amount {
    color: var(--color-text-dark);
    font-weight: bolder;
}

form.cart .quantity .qty {
    /* width: 70px; */
    /* border-radius: var(--border-radius-md); */
    text-align: center;
    /* min-height: 40px; */
    padding: 0 10px;
    /* border: 1px solid var(--color-border); */
    font-size: 18px;
    color: var(--color-text);
}

form.variations_form.cart {
    display: block;
}

form.cart {
    flex-wrap: wrap;
}

form.cart {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.productsRight_block button.button.add_to_cart_icon_btn {
    /* margin: 0 !important; */
    min-height: 40px;
    /* background-color: var(--color-primary) !important; */
    font-size: 0;
    padding: 0 22px;
    position: relative;
}

button.button.add_to_cart_icon_btn:before {
    content: "\f07a";
    display: inline-block;
    font: normal normal normal 14px / 1 FontAwesome;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-size: 16px;
}

.stockMainShop_page {
    margin-top: 10px;
}

.stockMainShop_page .input-group {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    justify-content: space-between;
    border: 1px solid var(--color-success);
    color: var(--color-success);
    border-radius: var(--border-radius-md);
    align-items: center;
    min-height: 40px;
}

span.inSTockTAg {
    text-align: center;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    line-clamp: 1;
    overflow: hidden;
    width: 100%;
    padding: 5px 10px;
}

.stockMainShop_page .input-group-addon {
    background: var(--color-success);
    padding: 7px 12px;
}

.stockMainShop_page .input-group-addon .fa-check:before {
    color: var(--color-text-light);
}

.woocommerce div.product p.stock {
    min-width: 300px;
}

h2.widgettitle {
    padding: 0 0px;
    color: var(--color-primary);
    font-size: 20px;
    margin-bottom: 1rem;
    font-weight: 500;
}

.filterBlock_items .woocommerce-widget-layered-nav {
    padding: 32px 16px;
    border-bottom: 1px solid var(--color-border);
}

.stockMainShop_page .outofStock_icon+.input-group-addon {
    padding: 7px 16px;
}

span.inSTockTAg.outTagStock.outofStock_icon {
    font-size: 16px;
}

select.woocommerce-widget-layered-nav-dropdown,
.productsRight_block select.orderby,
.variations td.value select {
    width: 100%;
    min-height: 40px;
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
    padding: 0 30px 0 10px;
    cursor: pointer;
    color: var(--color-text);
    height: 32px;
    font-size: 13px;
    letter-spacing: 0.2px;
}

li.woocommerce-widget-layered-nav-list__item a:hover {
    text-decoration: underline;
}

.productsRight_block form.woocommerce-ordering {
    width: 100%;
    max-width: 280px;
    margin: 0 !important;
}

.productsRight_block .wooCustom__resultCount_Ordering {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 3rem;
    padding-bottom: 10px;
    align-items: center;
}

/* ==========================================================================
   6) Shop & Catalog
   ========================================================================== */
.productsRight_block p.woocommerce-result-count {
    margin-bottom: 0 !important;
}

li.woocommerce-widget-layered-nav-list__item span.count {
    display: none;
}

.shippingInformation_modal li,
.shippingInformation_modal li:first-child a {
    color: #000;
}

/* ==========================================================================
   7) Product Page
   ========================================================================== */
/* Product Page ----------*/
h1.product_title {
    font-size: 40px;
    font-weight: 400;
    color: var(--color-primary);
    line-height: 1.1;
    margin-bottom: 1rem;
}

.mainProduct_Title {
    margin-top: 50px;
}

.ProductPage_cls {
    display: flex;
    flex-wrap: wrap;
}

.ProductPage_cls .woocommerce-product-gallery {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
}

.ProductPage_cls .flex-viewport {
    width: 75%;
    padding-left: 15px;
}

.ProductPage_cls ol.flex-control-nav {
    width: 25%;
    display: flex;
    flex-direction: column;
    padding-right: 15px !important;
}

.ProductPage_cls ol.flex-control-nav li {
    width: 100%;
}

.ProductPage_cls .woocommerce-product-gallery__image a {
    border: 1px solid #dadada;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 1rem;
    width: 100%;
}

.ProductPage_cls ol.flex-control-nav li {
    border: 1px solid #dadada;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 1rem !important;
    width: 100% !important;
}

.ProductPage_cls .product-sku {
    color: #747474;
    margin-bottom: 1rem;
}

.ProductPage_cls .product-sku span {
    font-weight: 600;
}

.ProductPage_cls p.price {
    color: #000 !important;
    font-weight: bolder;
    font-size: 26px !important;
    margin-bottom: 8px;
}

ul.shippingInformation_modal {
    list-style: none;
}

.ProductPage_cls .woocommerce-variation-add-to-cart {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.ProductPage_cls form.cart .quantity {
    width: 25%;
}

.ProductPage_cls form.cart .custom-html {
    width: 66.666%;
}

.ProductPage_cls button.single_add_to_cart_button {
    width: 100%;
    margin-top: 1rem;
    margin-bottom: 0.75rem;
}

.zurEinkaufslisteBTN button.btn.shopping-list {
    border: 1px solid #dadada;
    background: #edeeee;
    font-size: 1.25rem;
    padding: 18px 10px;
    color: var(--color-primary);
    border-radius: 6px;
    cursor: pointer;
}

.ProductPage_cls form.cart button.single_add_to_cart_button:before {
    font-size: 1.25rem !important;
}

/* .ProductPage_cls button.single_add_to_cart_button:hover,
.ProductPage_cls button.single_add_to_cart_button.button.alt.disabled {
    background-color: var(--color-primary);
} */

.ProductPage_cls form.cart::before {
    content: none !important;
}

.ProductPage_cls .stockMainShop_page {
    margin-top: 8px;
    width: calc(75% - 2px);
}

.ProductPage_cls form.cart .quantity .qty {
    /* min-width: 100px; */
    width: calc(25% - 8px) !important;
}

.ProductPage_cls form.cart .quantity .qty.input-text {
    width: 100% !important;
}

.woocommerce div.product form.cart div.quantity {
    min-width: 120px;
    width: calc(25% - 6px) !important;
    max-height: 40px;
}


.ProductPage_cls table.variations tr {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.variations td.value {
    width: 100%;
    line-height: normal !important;
}

.ProductPage_cls table.variations tr th label {
    font-weight: 500 !important;
}

.variations td.value select#pa_grose {
    font-size: 16px;
}

/* Variations table (all variations with stock, price, qty, add-to-cart) */
.woocommerce-variations-table-wrapper {
    margin: 1rem 0;
    overflow-x: auto;
}

.woocommerce-variations-table {
    width: 100%;
    border-collapse: collapse;
}

.woocommerce-variations-table th,
.woocommerce-variations-table td {
    padding: 0.5rem 0.75rem;
    text-align: left;
    border-bottom: 1px solid #e5e5e5;
}

.woocommerce-variations-table thead th {
    font-weight: 600;
    border-bottom-width: 2px;
}

.product-add-to-cart-below {
    max-width: 900px;
    width: 100%;
}

span.variable-in-stock {
    color: var(--color-success) !important;
}

span.variable-out-of-stock-backorder {
    color: var(--color-info) !important;
}

div.product span.price {
    color: black !important;
}

.woocommerce-variations-table .variation-row.not-purchasable {
    opacity: 0.7;
}

/* Variations table form: block layout so bulk add-to-cart button is below the table */
form.variations_table_form.cart {
    display: block;
}

.woocommerce-variations-table th.variation-stock,
.woocommerce-variations-table td.variation-stock {
    min-width: 300px;
}

/* Quantity column: align header and quantity inputs (with +/- buttons) */
.woocommerce-variations-table th.variation-quantity,
.woocommerce-variations-table td.variation-quantity {
    vertical-align: middle;
    display: flex;
    gap: 1rem;
    align-items: center;
}

.woocommerce-variations-table .variation-quantity .quantity {
    margin: 0;
    display: inline-flex;
    align-items: center;
}


/* Submit rows above and below table: span (selected count) left, button right */
.variations-table-submit {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 1rem 0;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.variations-table-submit-top {
    margin-bottom: 0.5rem;
}

.variations-table-submit-bottom {
    margin-top: 1rem;
}

.variations-table-selected-count {
    font-weight: 500;
}

.variations-table-submit .single_add_to_cart_button {
    white-space: nowrap;
    margin-left: auto;
}

.variations-table-submit .single_add_to_cart_button:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Quantity input with +/- buttons */
.quantity-with-buttons {
    display: inline-flex;
    align-items: center;
    border: 1px solid #ddd;
    border-radius: 4px;
    overflow: hidden;
}

.quantity-with-buttons .quantity-minus,
.quantity-with-buttons .quantity-plus {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    background: #f5f5f5;
    cursor: pointer;
    font-size: 1.25rem;
    line-height: 1;
    color: #333;
    -webkit-appearance: none;
    appearance: none;
}

.quantity-with-buttons .quantity-minus:hover,
.quantity-with-buttons .quantity-plus:hover {
    background: #eee;
}

.quantity-with-buttons input.qty {
    width: 3rem;
    min-width: 3rem;
    margin: 0;
    padding: 0 0.25rem;
    border: none;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-radius: 0;
    text-align: center;
    -moz-appearance: textfield;
    appearance: textfield;
}

.quantity-with-buttons input.qty::-webkit-outer-spin-button,
.quantity-with-buttons input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

a.remove-item-link {
    color: currentColor;
    text-decoration: underline;
    font-size: 12px;
}

th.wcsfw-title {
    text-align: left !important;
    padding: 8px !important;
}

@media (max-width: 768px) {

    /* Stack table and add-to-cart button; button full width underneath table */
    form.variations_table_form.cart {
        display: block;
    }

    form.variations_table_form.cart .woocommerce-variations-table-wrapper {
        width: 100%;
        margin-bottom: 1rem;
    }

    form.variations_table_form.cart .variations-table-submit {
        width: 100%;
        margin-top: 1rem;
    }

    form.variations_table_form.cart .variations-table-submit .single_add_to_cart_button {
        width: 100%;
        display: block;
    }

    .woocommerce-variations-table thead {
        display: none;
    }

    .woocommerce-variations-table tr {
        display: block;
        margin-bottom: 1rem;
        border-bottom: 1px solid #e5e5e5;
    }

    .woocommerce-variations-table td {
        display: flex;
        /* justify-content: space-between; */
        align-items: center;
        padding: 0.5rem 0.75rem;
        border-bottom: 0px !important;
        border-top: 0px !important;
    }

    .woocommerce-variations-table span.variable-out-of-stock-backorder {
        width: 50% !important;
    }

    .woocommerce-variations-table td::before {
        content: attr(data-title);
        font-weight: 600;
        width: 50%;
        /* margin-right: 0.5rem; */
    }

    .woocommerce-variations-table td.variation-quantity {
        flex-wrap: wrap;
    }

    .woocommerce-variations-table td.variation-quantity::before {
        /* width: 100%; */
        margin-bottom: 0.25rem;
    }
}

p.VarianteAuswahlen {
    margin: 1rem 0;
}

.zurEinkaufslisteBTN button.btn.shopping-list,
.zurEinkaufslisteBTN {
    width: 100%;
}

.woocommerce-Tabs-panel h2 {
    display: none;
}

.woocommerce-Tabs-panel {
    border: 1px solid #dadada;
    padding: 3rem 25px !important;
    border-top: none;
}

li.description_tab {
    margin: 0 0 -1px !important;
}

.woocommerce-tabs ul {
    padding: 0 !important;
    margin: 0 !important;
    border-bottom: 1px solid #ddd;
}

ul.tabs.wc-tabs li.active {
    color: var(--color-text) !important;
    background-color: #fff !important;
    border-color: #ddd #ddd #fff !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    padding: 0.5em 1em !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
    overflow: visible !important;
}

ul.tabs.wc-tabs li {
    border: 1px solid transparent !important;
    border-top-right-radius: 0.31rem !important;
    border-top-left-radius: 0.31rem !important;
    padding: 0 !important;
}

.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs li.description_tab:before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
    content: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after {
    position: absolute;
    content: "" !important;
    background: #fff !important;
    width: 100%;
    height: 2px;
    bottom: -2px;
    z-index: 999;
    border: none !important;
    box-shadow: none !important;
    left: 0;
}

.woocommerce-tabs ul.tabs li {
    background-color: transparent !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    border: none;
    border-radius: 0;
    margin: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-weight: 500;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: var(--color-primary);
}

.searchBar_header {
    align-self: center;
}

.searchBar_header .ysm-search-widget .search-field[type="search"] {
    font-style: normal !important;
    font-size: 1rem;
}

.innerForm_item {
    display: grid;
    grid-template-columns: 1fr 1.85fr;
    grid-gap: 30px;
}

/* ==========================================================================
   8) Account & Address
   ========================================================================== */
/* Address Page */

.btn-different-address {
    border-radius: 6px;
    border: 1px solid var(--color-border);
    /*     min-height: 40px; */
    color: #747474;
    font-weight: 300;
    width: 100%;
    padding: 0.5rem 0.75rem;
    /*     font-size: 1rem; */
    line-height: 1.25;
    color: #000;
}

.thwma-adr-box.address-box {
    border-radius: 6px !important;
}

/* End Address Page */

/* Account Page – Login/Register 3-column layout */
.login-register-three-col {
    padding: 2rem 0;
}

.login-register-three-col__grid {
    display: grid;
    gap: 2rem;
    align-items: start;
}

.login-register-three-col--with-register .login-register-three-col__grid {
    grid-template-columns: 1fr 1fr 1fr;
}

.login-register-three-col--login-guest .login-register-three-col__grid {
    grid-template-columns: 1fr 1fr;
}

@media (max-width: 1024px) {
    .login-register-three-col__grid {
        grid-template-columns: 1fr;
    }
}

.login-register-section {
    background: var(--color-background-light);
    border-radius: var(--border-radius-md);
    padding: 1.5rem;
}

.login-register-section__title {
    font-size: 1.25rem;
    margin: 0 0 0.75rem;
}

.login-register-section__subtitle {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0 0 0.5rem;
}

.login-register-section__desc {
    font-size: 0.95rem;
    line-height: 1.5;
    margin: 0 0 1.25rem;
    color: var(--color-text);
}

.login-register-section__forgot {
    margin: 1rem 0 0;
}

.login-register-section__forgot-link {
    font-size: 0.9rem;
    text-decoration: underline;
}

.login-register-section__forgot-link:hover {
    text-decoration: none;
}

.login-register-three-col form {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.login-register-three-col .button--outline {
    background: transparent;
    border: 2px solid var(--color-primary);
    color: var(--color-primary);
}

.login-register-three-col .button--outline:hover {
    background: var(--color-primary);
    color: #fff;
}

.account-page-inner form,
form.lost_reset_password {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Unified WooCommerce form input styles – applies to account forms, lost-password, reset-password, edit-account */
.account-page-inner form p.woocommerce-form-row,
form.lost_reset_password p.woocommerce-form-row,
.login-register-three-col form p.woocommerce-form-row,
form.woocommerce-EditAccountForm p.woocommerce-form-row {
    padding: 0;
    margin: 0 0 1rem 0;
}

.account-page-inner form p.woocommerce-form-row label,
form.lost_reset_password p.woocommerce-form-row label,
.login-register-three-col form p.woocommerce-form-row label,
form.woocommerce-EditAccountForm p.woocommerce-form-row label {
    display: inline-block;
    margin-bottom: 0.5rem;
    font-size: 16px;
    line-height: normal;
}

.account-page-inner form p.woocommerce-form-row input,
form.lost_reset_password p.woocommerce-form-row input,
.login-register-three-col form p.woocommerce-form-row input,
form.woocommerce-EditAccountForm p.woocommerce-form-row input {
    border-radius: 6px;
    border: 1px solid var(--color-border);
    min-height: 40px;
    color: #747474;
    font-weight: 300;
    width: 100%;
    padding: 0.5rem 0.75rem;
    font-size: 1rem;
    line-height: 1.25;
    color: #000;
}

h2,
.h2 {
    font-size: 2rem;
}

.btn-yellow {
    background: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
    color: #fff !important;
    white-space: nowrap;
    font-weight: normal !important;
    min-height: 40px;
}

.btn-yellow i {
    margin-left: 10px;
}

.innerLoginBlock_right h2 {
    margin: 40px 0 20px 0;
}

.innerLostPassword {
    display: grid;
    grid-template-columns: 1fr 3fr;
    grid-gap: 30px;
}

.innerLostPassword p.woocommerce-form-row {
    width: 100%;
}

.mainCopyRight p {
    margin: 0;
}

/*----Referenznummer & Express-Lieferung----*/
.cart_additional_fields label {
    font-weight: bold;
    display: inline-block;
    margin-bottom: 0.5rem;
}

.cart_additional_fields {
    margin-bottom: 2rem;
}

.cart_additional_fields input[type="text"] {
    margin-bottom: 0;
    border: 1px solid var(--color-border);
    min-height: 40px;
    color: #747474;
    font-weight: 300;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    border-radius: 0.31rem;
}

.cart_additional_fields .input-group {
    align-items: center;
    display: flex;
    gap: 10px;
}

.cart_additional_fields input[type="checkbox"] {
    width: 1rem;
    height: 1rem;
}

.wooCart_page .cartPage_buttons {
    display: flex;
    margin-bottom: 1.5rem;
    padding-top: 50px;
    gap: 15px;
}

.wooCart_page .cartPage_buttons .btn_cart_btn {
    padding-right: 15px;
    padding-left: 15px;
}

.checkout-tooltip {
    display: none;
    /* Hidden by default */

    /*     transform: translateX(-50%); */
    background-color: #eee;
    color: black;
    text-align: center;
    border-radius: 5px;
    padding: 5px 10px;
    margin-top: 10px;
    z-index: 1;
    font-size: 12px;
    opacity: 0.9;
}

#checkout-button[disabled]:hover+.checkout-tooltip {
    display: block;
}

.wooCart_page .cartPage_buttons i.fa.fa-chevron-left.left-aligned {
    margin-right: 10px !important;
}

.wooCart_page .cartPage_buttons .btn_cart_btn a.button.save-shopping-list {
    font-weight: 500;
    color: #000;
}

.wooCart_page .cartPage_buttons i.fa.fa-cart-plus,
.wooCart_page .cartPage_buttons i.fa.fa-chevron-right {
    margin-left: 10px;
}

.wooCart_page .cartPage_buttons .btn_cart_btn a.button.save-shopping-list:hover,
.wooCart_page .updateCart_button.btn_cart_btn button.updateProductCart_btn:hover {
    background: #c1c1c1 !important;
}

/* table.shop_table tbody tr td {
    padding-left: 0 !important;
    padding-right: 0 !important;
} */
.wooCart_page table.shop_table {
    border: none !important;
    border-top: 1px solid rgba(0, 0, 0, 0.1) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1) !important;
}

.wooCart_page table.shop_table th {
    padding: 12px !important;
}

.wooCart_page table.shop_table tr td h2.basket-supplier-name {
    font-size: 32px;
    margin: 40px 0 20px 0;
}

.woocommerce-cart table.cart td {
    vertical-align: top !important;
}

.wooCart_page table.shop_table td.product-price span {
    font-size: 16px;
    font-weight: bold;
    text-align: start;
}

.wooCart_page table.shop_table td input.input-text.qty.text {
    border-radius: 6px;
    border: 1px solid var(--color-border);
    min-height: 40px;
    color: #747474;
    font-weight: 300;
    padding-right: 10px;
    padding-left: 10px;
    width: 70px;
    font-size: 21px;
    text-align: start;
}

.wooCart_page table.shop_table .cartSipping_info ul {
    list-style: none;
}

.wooCart_page table.shop_table td.product-subtotal {
    text-align: end;
}

.wooCart_page table.shop_table .cartSubtotalPrice span {
    color: #000;
    font-size: 16px;
    font-weight: 600;
}

.wooCart_page table.shop_table .cartSipping_info ul li {
    color: #000;
}

.wooCart_page table.shop_table td.product-thumbnail a img {
    width: 95px;
}

.wooCart_page .cartInput_propertys .form-group.item-note input,
.wooCart_page .cartInput_propertys .form-group.item-note select {
    border-radius: 6px;
    border: 1px solid var(--color-border);
    min-height: 40px;
    color: #747474;
    font-weight: 300;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    font-size: 16px;
}

.wooCart_page table.shop_table .cartInput_propertys .form-group.item-note {
    padding-bottom: 1rem;
}

.wooCart_page table.shop_table .cartInput_propertys .form-group.item-note label {
    display: inline-block;
    margin-bottom: 0.5rem;
}

.wooCart_page table.shop_table .cartSKU {
    margin-bottom: 1rem;
}

.wooCart_page table.shop_table td.product-thumbnail {
    width: 9.1%;
    padding-left: 0 !important;
}

.wooCart_page table.shop_table td.product-name {
    width: 46%;
}

.wooCart_page table.shop_table td.product-price {
    width: 14%;
}

td.product-quantity {
    line-height: 40px !important;
}

.wooCart_page table.shop_table td.product-quantity {
    width: 10%;
}

.wooCart_page table.shop_table td.product-subtotal {
    width: 14%;
}

.wooCart_page table.shop_table td.product-remove {
    padding-right: 0 !important;
    display: flex;
    align-items: end;
    justify-content: center;
}

.wooCart_page table.shop_table td.product-name .cartTitle a:hover {
    color: #3c3c3c;
    text-decoration: underline;
}

table.shop_table tfoot th {
    max-width: 200px;
    width: 200px;
}

table.shop_table tfoot td {
    max-width: 200px;
    width: 150px;
}

table.budget_payment_table {
    display: flex;
}

table.budget_payment_table tr.border_bottom_row {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

html {
    overflow-x: hidden;
}

.wooCart_page .updateCart_button.btn_cart_btn button.updateProductCart_btn {
    background-color: #e9e6ed !important;
    color: #000;
}

.cart-collaterals .cart_totals table {
    margin-left: auto !important;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
    width: 100%;
}

.wooCart_page .cart-collaterals .cart_totals table tr th {
    font-weight: normal !important;
}

.wooCart_page .cart-collaterals .cart_totals table tr td {
    font-weight: 600;
    text-align: end !important;
}

.wooCart_page .cart_totals .zusammenfassungHeading {
    margin-top: 26px;
}

.wooCart_page .cart_totals table {
    border-top: 0 !important;
    border-bottom: 0 !important;
}

.wooCart_page table.shop_table th.product-thumbnail {
    padding-left: 0 !important;
}

.wooCart_page .homePage_button {
    padding-left: 0 !important;
}

.wooCart_page table.shop_table th {
    padding-left: 0 !important;
    font-weight: 600;
}

/* ==========================================================================
   9) Cart / Checkout / Order Flow
   ========================================================================== */
/* Checkout Page */

div#customer_details .col {
    float: left;
    width: 50%;
    padding-right: 5%;
}

.empProduct_details_mobile {
    display: none;
}

.empProduct_details img {
    border-radius: 6px;
    max-width: 150px;
}

/* .empManager_chechoutHeading h4 {
	font-size: 20px;
} */

.woocommerce-billing-fields input,
.woocommerce-billing-fields select,
.woocommerce-billing-fields__field-wrapper input,
.woocommerce form .form-row input.input-text,
.woocommerce-billing-fields__field-wrapper select,
.woocommerce-shipping-fields input,
.woocommerce-shipping-fields select,
.woocommerce-additional-fields textarea,
.woocommerce-address-fields input,
.woocommerce-address-fields select {
    border: 1px solid var(--color-border);
    border-radius: 6px;
    /* z-index: 101; */
    position: relative;
    background: white;
    transition: all 0.4s ease;
    /*     min-height: 44px; */
    padding: 10px;
    color: #000;
}

#billing_company_field {
    margin-top: 86px !important;
}

p.form-row-hidden {
    visibility: hidden;
    /* Hide the element but keep it in the layout */
    position: absolute;
    /* Remove it from the normal flow */
    left: -9999px;
    /* Move it off-screen */
}

.woocommerce-additional-fields textarea {
    min-height: 160px;
}

.woocommerce-billing-fields h3,
.woocommerce-additional-fields h3,
h3#order_review_heading {
    font-size: 24px;
}

h3#order_review_heading {
    margin-top: 30px;
}

table.shop_table td,
table.shop_table th {
    padding: 0.75rem;
    vertical-align: top;
    /* border-top: 1px solid var(--color-border); */
}

table.shop_table th {
    vertical-align: bottom;
}

table.my_account_orders th {
    text-align: start;
}

table.shop_table td:first-child,
table.shop_table th:first-child {
    padding-left: 0;
    text-align: left;
}

.woocommerce table.shop_table {
    border: 0px solid rgba(0, 0, 0, 0.1);
}

td.checkout-product-image img {
    max-width: 100px;
}

.shop_table.woocommerce-checkout-review-order-table {
    padding: 1em !important;
}

h2.basket-supplier-name.text-left {
    margin: 40px 0 20px 0;
}

div#order_review {
    overflow-x: auto;
}

td.checkout-product-image {
    max-width: 120px;
}

.product-own-name {
    color: var(--color-primary);
}

td.checkout-product-name {
    max-width: 370px;
}

td.checkout-product-total {
    max-width: 140px;
}

ul.cartSipping_UL {
    list-style: none;
    display: inline-block;
}

ul.cartSipping_UL li {
    display: inline-block;
    color: #000;
}

td.checkout-product-total span {
    color: #000;
    font-weight: 600;
}

td.checkout-product-total {
    text-align: right;
}

th.checkout-product-total {
    text-align: right;
}

/* span.woocommerce-Price-amount.amount {
    font-weight: 600;
	float: right;
} */

tr.basket-summary h2 {
    margin-top: 40px;
}

tfoot tr.cart-subtotal th,
tfoot tr.cart-subtotal td,
tfoot tr.fee th,
tfoot tr.fee td,
tfoot tr.order-total th,
tfoot tr.order-total td {
    border: none !important;
}

table.shop_table tr.tax-rate.tax-rate-de-vat-19-1>th>small {
    display: none !important;
}

/* tfoot tr.cart-subtotal th, tfoot tr.fee th, tfoot tr.order-total th {
    width: 100%;
    text-align: right;
}
tfoot tr.cart-subtotal td, tfoot tr.fee td, tfoot tr.order-total td {
    text-align: right;
    width: 100%; 
}  */

nav.woocommerce-MyAccount-navigation ul li {
    list-style: none;
    background-color: var(--color-primary);
    padding: 8px 20px;
    margin: 0px 15px 15px 15px;
    text-align: center;
    border-radius: 6px;
}

nav.woocommerce-MyAccount-navigation ul li a {
    color: #fff;
    font-weight: 700;
}

.woocommerce-MyAccount-content {
    border: 1px solid #d5d5d5;
    padding: 15px;
    border-radius: 6px;
}

form.woocommerce-EditAccountForm.edit-account .input-text {
    border: 1px solid var(--color-border);
    border-radius: 6px;
    position: relative;
    background: white;
    transition: all 0.4s ease;
    min-height: 40px;
    padding: 8px;
    color: #000;
    width: 100%;
}

form.woocommerce-EditAccountForm.edit-account .input-text:disabled {
    border: 1px solid var(--color-border);
    border-radius: 6px;
    position: relative;
    background: #f8f8f8;
    transition: all 0.4s ease;
    min-height: 40px;
    padding: 8px;
    color: #000;
    width: 100%;
}

form.woocommerce-EditAccountForm.edit-account fieldset {
    border: none;
    margin-bottom: 25px;
}

form.woocommerce-EditAccountForm.edit-account fieldset legend {
    color: var(--color-primary);
    font-weight: 700;
}

form.woocommerce-EditAccountForm.edit-account p.woocommerce-form-row.woocommerce-form-row--wide.form-row.form-row-wide>span {
    color: var(--color-primary);
    font-size: 12px;
}

.required {
    color: #ff0000 !important;
}

/* Primary button 
 * TODO: Make sure we use this button everywhere
 * */
button.woocommerce-Button.button,
.woocommerce #place_order,
.woocommerce-page #payment #place_order,
a.woocommerce-Button.button,
a.button.add_to_cart_button,
a.checkout-button.button.alt.wc-forward,
.ProductPage_cls button.single_add_to_cart_button,
.variations-table-submit .single_add_to_cart_button {
    display: inline-block;
    padding: 0.875rem 1.75rem;
    border-radius: var(--border-radius-md);
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all var(--transition-base);
    position: relative;
    overflow: hidden;

    color: var(--color-text-light);
    background: var(--color-primary);
    /* border: 2px solid var(--color-primary); */
    cursor: pointer;
    min-height: 36px;
    margin-top: 8px;
    margin-bottom: 8px;
}

button.woocommerce-Button.button::before,
.woocommerce #place_order::before,
.woocommerce-page #payment #place_order::before,
a.woocommerce-Button.button::before,
a.button.add_to_cart_button::before,
a.checkout-button.button.alt.wc-forward::before,
.ProductPage_cls button.single_add_to_cart_button::before,
.variations-table-submit .single_add_to_cart_button::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, 0.2),
            transparent);
    transition: left 0.5s ease;
}

.woocommerce button.alt,
.woocommerce button.reset-filters {
    /* background-color: #fff; */
    color: currentColor;
    border: none;
    border-radius: 6px;
    box-shadow: 0 0 0 1px #d7d7d7;
    cursor: pointer;
    font-weight: 400;
    min-height: 36px;
    margin-top: 8px;
    margin-bottom: 8px;
    padding: 0.618em 1em;
    transition-duration: 0.5s ease;
}

.woocommerce button.alt:hover,
.woocommerce button.reset-filters:hover {
    background-color: #fff;
    color: var(--color-primary);
    box-shadow: 0 0 0 1px var(--color-primary);
    transition-duration: 0.5s ease;
}

button.reset-filters {
    margin: 1rem !important;
}

button.woocommerce-Button.button:hover::before,
.woocommerce #place_order:hover::before,
.woocommerce-page #payment #place_order:hover::before,
a.woocommerce-Button.button:hover::before,
a.button.add_to_cart_button:hover::before,
a.checkout-button.button.alt.wc-forward:hover::before,
.ProductPage_cls button.single_add_to_cart_button:hover::before,
.variations-table-submit .single_add_to_cart_button:hover::before {
    left: 100%;
}

button.woocommerce-Button.button:hover,
.woocommerce #place_order:hover,
.woocommerce-page #payment #place_order:hover,
a.woocommerce-Button.button:hover,
a.button.add_to_cart_button:hover,
a.checkout-button.button.alt.wc-forward:hover,
.ProductPage_cls button.single_add_to_cart_button:hover,
.variations-table-submit .single_add_to_cart_button:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    color: var(--color-text-light);
    background: #e07800;
}

button.woocommerce-Button.button:disabled,
a.woocommerce-Button.button:disabled,
.woocommerce #payment #place_order:disabled,
.woocommerce-page #payment #place_order:disabled,
a.woocommerce-Button.button[disabled] {
    background-color: var(--color-primary);
    color: #fff;
    pointer-events: none;
    padding: 0.875rem 1.75rem !important;
    opacity: 0.5;
    /* cursor: not-allowed; */
}

.paypal-button.paypal-button-shape-rect {
    border-radius: 6px;
}

.woocommerce #place_order,
.woocommerce-page #place_order {
    display: flex;
    grid-gap: 9px;
}

@media only screen and (min-width: 500px) {

    .woocommerce #place_order,
    .woocommerce-page #place_order {
        min-width: 500px;
        max-width: 750px;
        width: 100%;
    }
}

ul.payment_methods {
    border: none !important;
}

.productsRight_block a.button.product_type_variable.add_to_cart_button {
    width: 100%;
}

button.add-employee-btn {
    margin-bottom: 24px !important;
}

table.employee_manager-info-table button {
    min-height: 30px;
}

table.employee_manager-info-table button.icon-btn {
    width: 36px;
    height: 36px;
    padding: 8px;
}

button.woocommerce-Button.delete-btn {
    background-color: #ff0000;
    border-color: #ff0000;
}

button.woocommerce-Button.delete-btn:hover {
    color: #ff0000;
    background-color: #fff;
}

.add-employee-form-label,
.add-employee-form-input {
    /* width: 160px; */
    display: flex;
    flex: 1;
}

input.add-employee-form-input:read-only {
    color: #dcdad1 !important;
}

.add-employee-form-row {
    display: flex;
    gap: 16px;
    max-width: 350px;
}

.add-employee-form-row>p {
    flex: 1;
}

div#dropdownContent {
    position: absolute;
    top: 27px;
    left: 50px;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: 0.5rem 0 0 0;
    margin: 0.125rem 0 0;
    font-size: 1rem;
    color: #747474;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 6px;
}

div#dropdownContent.Drop_Active {
    display: block;
}

div#dropdownContent h6,
.user-area .text-sm-center div#dropdownContent a {
    display: block;
    padding: 0.5rem 1.5rem;
    margin-bottom: 0;
    color: #747474;
    white-space: nowrap;
    border-bottom: 1px solid #edeeee;
    line-height: 1.1;
    font-size: 16px;
    font-weight: 400;
}

a#meinProfil_logout {
    color: #ff0000 !important;
    background-color: #fff5f5;
}

a#meinProfil_logout:hover {
    color: #c62828 !important;
    background-color: #ffe9e9;
    text-decoration: none;
}

div#dropdownContent h6 {
    color: var(--color-primary);
}

.meinProfil_divider {
    height: 1px;
    margin: 1.5rem 0;
    overflow: hidden;
    background-color: #edeeee;
    margin-top: 0.4rem;
    margin-bottom: 0.4rem;
}

.user-area .text-sm-center div#dropdownContent a span.pending-check {
    display: none;
}

.user-area .text-sm-center div#dropdownContent a:hover {
    color: #676767;
    text-decoration: none;
    background-color: #f7f7f9;
}

.myAccountDropdown {
    display: flex;
    justify-content: center;
    align-items: center;
}

.myAccountDropdown a#mainButton {
    cursor: pointer;
}

/* 
.my_account_budget_span {
	font-size: 1rem;
	color: black;
} */

.single_page.page_id_17 h2 {
    margin-top: 40px;
    font-weight: normal;
}

.single_page.page_id_17 ul.chapter {
    margin-bottom: 1rem;
    padding-left: 42px;
}

.single_page.page_id_17 ul.bullet_list {
    padding-left: 39px;
}

.single_page.page_id_17 p.stand-spril {
    padding-bottom: 30px;
}

.single_page.page_id_19 h1.pagetitle {
    margin-bottom: 50px;
}

.single_page h3 {
    font-size: 28px;
    font-weight: normal;
}

.single_page h1,
.single_page h2 {
    font-weight: normal;
}

.single_page.page_id_30 ul.list-items,
.single_page.page_id_19 ul.list-items,
.single_page.page_id_60 ul.chapter,
.single_page.page_id_60 ul.bullet_list {
    padding-left: 40px;
}

.single_page.page_id_60 ul.chapter {
    padding-bottom: 30px;
}

.single_page.page_id_34 ul.list-group li {
    list-style: none;
    position: relative;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    flex-flow: row wrap;
    -webkit-box-align: center;
    align-items: center;
    padding: 0.75rem 1.25rem;
    margin-bottom: -1px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.125);
}

.page-width .page-width {
    padding: 0;
}

.single_page.page_id_34 ul.list-group li:first-child {
    border-top-right-radius: 0.31rem;
    border-top-left-radius: 0.31rem;
}

.single_page.page_id_34 ul.list-group li:last-child {
    border-bottom-right-radius: 0.31rem;
    border-bottom-left-radius: 0.31rem;
}

.single_page.page_id_34 ul.list-group {
    margin-bottom: 40px;
}

.employee-info-tab {
    display: inline-block;
    width: 100%;
}

/* 07-05-2024    START */

.main__status_order .inner_cencelled input {
    border: 2px solid #ff6858;
    background: #ff8c82;
    color: #fff;
    border-radius: 6px;
    cursor: pointer;
    padding: 5px 20px;
}

.main__status_order .inner_processing input {
    padding: 5px 20px;
    color: #000;
    border: 2px solid #b5de91;
    background: #cde9b5;
    border-radius: 6px;
    cursor: pointer;
}

.main__status_order {
    display: flex;
    gap: 15px;
    align-items: center;
    justify-content: center;
}

.main__status_order .inner_processing input:hover {
    background: #b5de91;
}

.main__status_order .inner_cencelled input:hover {
    background: #ff6858;
}

span.outTagStock {
    font-size: 14px;
}

/* 07-05-2024    END */

.orderStatus_cancelled {
    color: #ff6858;
    /* text-align: center; */
    font-weight: 600;
}

.orderStatus_processing {
    color: #b5de91;
    /*     text-align: center; */
    font-weight: 600;
}

.select_Return_heading {
    margin-bottom: 15px;
}

.view-order_Return_Request input[type="number"] {
    width: 50px;
    margin-left: 10px;
    margin-right: 10px;
    text-align: center;
    border: 1px solid gray;
    border-radius: 6px;
    padding: 5px;
    height: 30px;
}

.view-order_Return_Request input[type="submit"] {
    margin-top: 10px;
    background-color: var(--color-primary);
    border: navajowhite;
    padding: 10px 25px;
    border-radius: 6px;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.6px;
    cursor: pointer;
}

/* dropdown */

.mainDrop_meinCompany.company_dropdownContent.companyDrop_Active {
    display: block !important;
}

.mainDrop_meinCompany.company_dropdownContent {
    display: none;
    position: absolute;
    top: 27px;
    left: 50px;
    z-index: 1000;
    float: left;
    min-width: 10rem;
    padding: 0.5rem 0 0 0;
    margin: 0.125rem 0 0;
    font-size: 1rem;
    color: #747474;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 6px;
}

.user-area .text-sm-center .meinCompany_dropdown a:last-child {
    border-bottom: none;
}

.user-area {
    background: var(--color-primary);
    max-width: 385px;
    float: right;
    width: 100%;
    border-bottom-right-radius: 0.31rem;
    border-bottom-left-radius: 0.31rem;
    justify-content: center;
    align-items: center;
}

.user-area .text-sm-center a {
    color: #fff;
}

.user-area .text-sm-center {
    padding: 10px 4px;
}

.user-area .text-sm-center a {
    gap: 4px;
}

.mainCompany_Button_cls {
    cursor: pointer;
}

.myCompany__Dropdoen {
    position: relative;
}

.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table {
    margin: 0;
}

.user-area .text-sm-center .meinCompany_dropdown a,
.user-area .text-sm-center .meinCompany_dropdown h6 {
    display: block;
    padding: 0.5rem 1.5rem;
    margin-bottom: 0;
    color: #747474;
    white-space: nowrap;
    line-height: 1.1;
    font-size: 16px;
    font-weight: 400;

    border-bottom: 1px solid #edeeee;
}

.user-area .text-sm-center .meinCompany_dropdown h6 {
    color: var(--color-primary);
}

.user-area .text-sm-center .meinCompany_dropdown a:hover {
    color: #676767;
    text-decoration: none;
    background-color: #f7f7f9;
}

.user-area.managerDropDown_user_area {
    max-width: 550px;
}

.topHeader_menu {
    /* padding-right: 15px; */
    display: flex;
    flex-direction: row;
    align-content: center;
    align-items: center;
    justify-content: flex-end;
    gap: 1.5rem;
}

/* Header nav: Lösungen dropdown + Über uns */
.header-nav__list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 1rem;
    align-items: center;
    justify-content: flex-end;
}

.header-nav__link,
.header-nav__dropdown-trigger {
    color: var(--color-text-light);
    font-size: 0.95rem;
    font-weight: 500;
    padding: 0.5rem 0.85rem;
    cursor: pointer;
    text-decoration: none;
    transition:
        color 0.2s ease,
        opacity 0.2s ease,
        background-color 0.2s ease;
    border-radius: var(--border-radius-md);
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    line-height: 1;
}

.header-nav__button {
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.35);
}

.header-nav__button .fa-angle-down {
    margin-left: 0.15rem;
}

.header-nav__link:hover,
.header-nav__dropdown-trigger:hover {
    color: var(--color-text-light);
    background: rgba(255, 255, 255, 0.2);
    text-decoration: none;
}

.header-nav__item--dropdown {
    position: relative;
}

.header-nav__dropdown {
    position: absolute;
    top: calc(100% + 6px);
    left: auto;
    /* right: 0; */
    min-width: 255px;
    background: var(--color-background);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-md);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    list-style: none;
    margin: 0;
    padding: 0.5rem 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-4px);
    transition:
        opacity 0.2s ease,
        visibility 0.2s ease,
        transform 0.2s ease;
    z-index: 10000;
}

.header-nav__item--dropdown:hover .header-nav__dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.header-nav__item--dropdown:hover .fa-angle-down {
    transform: rotate(180deg);
}

.header-nav__dropdown li {
    margin: 0;
}

.header-nav__dropdown a {
    display: block;
    padding: 0.5rem 1rem;
    color: var(--color-text);
    font-size: 0.9rem;
    text-decoration: none;
    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.header-nav__dropdown a:hover {
    background: var(--color-background-light);
    color: var(--color-primary);
}

/* Keep all top-right buttons in one aligned row */
.header-nav {
    margin-left: auto;
}

.header-nav__action-button {
    color: var(--color-text-light);
    white-space: nowrap;
}

.header-nav__action-button:hover {
    color: var(--color-text-light);
}

.header-nav__dropdown--profile {
    top: calc(100% + 6px);
    /* left: 0; */
    min-width: 220px;
    /* right: 0; */
    left: auto;
}

.daten_loschen_form {
    width: 50%;
}

.daten_loschen_form input {
    width: 100%;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    min-height: 40px;
    color: #747474;
    font-weight: 300;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
}

.daten_loschen_form label {
    display: inline-block;
    margin-bottom: 0.5rem;
}

.daten_loschen_form .form-group.form_checkBox span.wpcf7-list-item {
    margin: 0;
}

.daten_loschen_form .form-group.form_checkBox span.wpcf7-list-item input {
    width: auto !important;
    height: auto !important;
    min-height: auto;
}

.daten_loschen_form span.wpcf7-not-valid-tip {
    font-size: smaller;
}

.daten_loschen_form button.form_submitBtn {
    min-height: 40px;
    box-shadow: unset !important;
    background: var(--color-primary);
    border: 1px solid var(--color-primary);
    display: inline-block;
    font-weight: normal;
    line-height: 1.25;
    text-align: center;
    white-space: nowrap;
    padding: 0.5rem 1rem;
    font-size: 1rem;
    border-radius: 6px;
    color: #fff;
}

.woocommerce-MyAccount-content {
    width: 100% !important;
}

table.employee_manager-info-table {
    border: 1px solid #edeeee;
    border-radius: 6px;
    width: 100%;
}

table.employee_manager-info-table th,
table.employee_manager-info-table td {
    border: 0;
    border-bottom: 1px solid #edeeee;
    color: #747474;
    text-align: left;
    font-family: Raleway;
    font-size: 16px;
    font-style: normal;
    /*     font-weight: 400; */
    line-height: 24px;
    padding: 8px !important;
}

table.employee_manager-info-table tr:last-child td {
    border-bottom: 0px;
}

.employee_manager-info-content h4 {
    /*     border-bottom: 1px solid #EDEEEE; */
    padding-bottom: 36px;
    margin-bottom: 0;
    color: #747474;
    font-weight: 400;
}

/* ==========================================================================
   10) Responsive Overrides
   ========================================================================== */
/* Responsive styles */
@media only screen and (max-width: 768px) {
    .employee_manager-info-table {
        display: block;
        width: 100%;
    }

    .employee_manager-info-table thead {
        display: none;
    }

    .employee_manager-info-table tbody tr {
        display: inline-block;
        margin: 8px;
        border: 1px solid #eee;
        border-radius: 6px;
        width: -webkit-fill-available;
        align-self: center;
    }

    .employee_manager-info-table tbody td {
        display: block;
        text-align: left;
        font-size: 14px;
        position: relative;
        padding-top: 20px;
        line-height: 30px;
        /* 		top: 0px; */
        /*         padding-left: 50%; */
        padding-right: 10px;
        border: none;
        /*         border-bottom: 1px solid #ddd; */
        /*         border-bottom: 1px solid #ddd; */
    }

    .employee_manager-info-table tbody td::before {
        content: attr(data-label);
        position: absolute;
        left: 10px;
        top: 0;
        font-weight: bold;
        white-space: nowrap;
        line-height: 24px;
    }

    .employee_manager-info-table tbody td:last-child {
        border-bottom: none;
    }

    div#customer_details .col {
        float: left;
        width: 100%;
    }

    .empProduct_details table,
    .empProduct_details {
        display: none;
        /* Hide the table on small screens */
    }

    .empProduct_details_mobile {
        display: block;
    }

    .product_details_mobile {
        display: block;
        padding: 15px;
        margin-bottom: 15px;
        border: 1px solid #ddd;
        border-radius: 6px;
        box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
        background-color: #f9f9f9;
    }

    .product_details_mobile img {
        border-radius: 6px;
    }

    .empProduct_detail_row {
        display: flex;
        justify-content: space-between;
        padding: 5px 0;
        border-bottom: 1px solid #eaeaea;
    }

    .empProduct_detail_row:last-child {
        border-bottom: none;
    }

    .empProduct_detail_label {
        font-weight: bold;
        flex-basis: 40%;
        text-align: left;
    }

    .empProduct_detail_value {
        flex-basis: 60%;
        text-align: right;
    }

    .empProduct_image img {
        max-width: 80px;
        height: auto;
    }

    .cartSipping_info ul {
        margin: 0;
        padding: 0;
        list-style-type: none;
        font-size: 0.8rem;
        text-align: right;
    }

    td.checkout-product-total {
        max-width: 100%;
    }
}

.woocommerce-MyAccount-content {
    max-width: 1200px;
    margin: 0 auto;
}

/* 20-06-2024 ---------*/
table.EmpProuductSummery {
    border-collapse: collapse;
    border: none;
    width: 100%;
    border-top: 1px solid #edeeee;
    border-bottom: 1px solid #edeeee;
}

.EmpProuductSummery td {
    padding: 9px 12px;
    vertical-align: top;
}

.EmpProuductSummery th,
.EmpProuductSummery td {
    border: none;
}

table.EmpProuductSummery tr {
    border-bottom: 1px solid #edeeee;
}

.EmpProuductSummery th {
    border-bottom: 1px solid #edeeee;
    padding: 12px;
    padding-left: 0;
}

.title h5 {
    font-size: 16px;
    line-height: 24px;
}

.EmpProuductSummery th {
    color: #747474;
    font-size: 16px;
    font-weight: 600;
    text-align: left;
}

td.empProduct_image {
    width: 10%;
    padding-left: 0;
}

td.empProduct_title {
    width: 46%;
}

td.empProductPrice {
    width: 14%;
    font-weight: bold;
}

td.empProductQty {
    width: 10%;
}

td.empProductTotle {
    width: 20%;
    text-align: right;
}

.EmpProuductSummery td p {
    margin: 0;
}

td.empProductTotle p {
    color: #000;
    font-weight: bold;
}

.empTotle__value,
.overall__value {
    width: 30%;
    margin-left: auto;
}

.value__Item {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
}

.strongText {
    font-weight: 600;
}

.empTotle__value {
    margin-top: 20px;
}

.empTotle__value {
    margin-top: 20px;
}

.woocommerce table.my_account_orders td,
.woocommerce table.my_account_orders th {
    padding: 8px 8px;
}

.Main_EmpBudget_payment .innerBudget_payment .not_enough_to_placeOrder {
    padding-left: 0;
    padding-right: 0;
}

.empName h4 {
    font-size: 24px;
    color: #012f52;
    margin: 30px 0 0;
    line-height: 79px;
    font-weight: 400;
    border-top: 1px solid #000;
    padding: 10px 0 0;
}

.totle_empCart_value span.value__Price {
    font-weight: bold;
}

.totle_empCart_value {
    margin: 20px 0 50px 0;
}

.empManager_chechoutHeading h4 {
    font-size: 20px;
    margin: 0 0 50px;
}

h3#order_review_heading {
    font-size: 36px;
    margin: 30px 0;
}

.totle_empCart_Heading h4 {
    font-size: 31px;
}

.EmpProuductSummery ul.cartSipping_UL li {
    display: block;
}

.innerBudget_payment,
.not_enough_to_placeOrder {
    background: #e9e6ed;
    padding: 20px 25px;
    border-radius: 6px;
}

.innerBudget_payment .heading h4 {
    font-size: 27px;
    line-height: 30px;
    margin: 0 0 20px;
}

.innerBudget_payment .Budget_radio label {
    color: #515151;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 6px;
}

.innerBudget_payment .Budget_radio label input[type="radio"] {
    accent-color: #2d3648;
    width: 20px;
    height: 20px;
}

.innerBudget_payment .Budget_radio {
    padding-bottom: 20px;
    border-bottom: 1px solid #cfc8d8;
}

.innerBudget_payment p.budgetText {
    margin: 20px 0;
}

.EmpBudget_payment__Button {
    text-align: right;
}

.innerBudget_payment .Budget__checkBox label {
    position: relative;
    margin: 0 0 18px;
    padding-left: 42px;
    display: inline-block;
}

.innerBudget_payment .Budget__checkBox input {
    position: absolute;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.innerBudget_payment .Budget__checkBox .custom-check:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background: #fff;
    border-radius: 3px;
    border: 2px solid #cbd2e0;
}

.innerBudget_payment .Budget__checkBox input:checked~.custom-check::before {
    background: #cbd2e0;
}

.not_enough_to_placeOrder .empNew_budget label {
    color: #2d3648;
    font-weight: 500;
}

.not_enough_to_placeOrder .empNew_budget input {
    color: #2d3648;
    font-weight: 500;
}

.not_enough_to_placeOrder .empNew_budget input {
    border: 2px solid #cbd2e0;
    border-radius: 6px;
    min-height: 40px;
    padding: 5px;
}

.not_enough_to_placeOrder .empNew_budget button {
    border-radius: 6px;
    padding: 6px 15px;
    min-height: 40px;
    /*     font-size: 15px; */
}

.innerPlaceOrder_budget {
    width: 100%;
    max-width: 95%;
}

.not_enough_to_placeOrder .innerPlaceOrder_budget .red_icon {
    color: #ff0000;
    font-weight: 700;
    font-size: 23px;
    margin-right: 10px;
    line-height: normal;
}

.employee_page {
    text-align: center;
    /*     font-size: 20px; */
}

.WooCommerceProducts .term-description {
    display: none;
}

.no_ProductFound {
    margin-top: 2em;
}

.woocommerce-info {
    border-top-color: var(--color-primary);
}

.woocommerce-info::before {
    color: var(--color-primary);
}

.ProductPage_cls .price .price {
    color: var(--color-primary) !important;
}

/* Product loop (shop / category): skeleton while thumbnail loads */
.product-loop-image-wrap {
    position: relative;
    overflow: hidden;
    background-color: #e8eaed;
    min-height: 200px;
}

.product-loop-image-wrap::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background: linear-gradient(
        90deg,
        #e8eaed 0%,
        #f2f3f5 45%,
        #f2f3f5 55%,
        #e8eaed 100%
    );
    background-size: 200% 100%;
    animation: mytundh-product-loop-shimmer 1.15s ease-in-out infinite;
    pointer-events: none;
    transition: opacity 0.35s ease;
}

.product-loop-image-wrap.is-loaded::before {
    opacity: 0;
    animation: none;
}

@keyframes mytundh-product-loop-shimmer {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

.product-loop-image-wrap img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
    opacity: 0;
    transition: opacity 0.35s ease;
}

.product-loop-image-wrap.is-loaded img {
    opacity: 1;
}

.product-loop-image-wrap .onsale {
    position: relative;
    z-index: 2;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
    -webkit-line-clamp: 3;
    line-clamp: 3;
    overflow-wrap: anywhere;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 112px;
    line-height: 2em;
}

tr.woocommerce-product-attributes-item.woocommerce-product-attributes-item--attribute_pa_grose {
    display: none;
}

.check_disable {
    cursor: not-allowed !important;
    opacity: 0.5;
}

.page-id-1034 section.woocommerce-order-details,
.woocommerce-variation-availability .out-of-stock-backorder {
    display: none;
}

/* select {
    border: 0;
    border-right: 16px solid #26323800;
    outline: 1px solid;
    border-radius: 4px;
} */

/* 20-06-2024---- End */
@media screen and (max-width: 767px) {
    .daten_loschen_form {
        width: 100%;
    }

    .user-area {
        background: var(--color-primary);
        width: 100%;
        border-bottom-right-radius: 0.31rem;
        border-bottom-left-radius: 0.31rem;
        justify-content: center;
        align-items: center;
    }

    .user-area .text-sm-center a {
        gap: 5px !important;
    }

    .user-area .text-sm-center {
        padding: 0px !important;
    }

    .user-area .text-sm-center a {
        justify-content: start !important;
    }

    /*Checkout Page Summary Table for Employees */

    .woocommerce table.shop_table_responsive tr td:first-child:before {
        display: none;
    }

    .woocommerce table.shop_table_responsive tr td,
    .woocommerce-page table.shop_table_responsive tr td {
        text-align: left !important;
    }

    .woocommerce table.shop_table_responsive td.blank-cols {
        display: none;
    }
}

/* Media Query --------*/
@media (max-width: 1200px) {

    .wooCart_page button.updateProductCart_btn.button,
    .checkOutPage_button.btn_cart_btn a {
        width: 100%;
    }

    .wooCart_page .saveShipping_list {
        padding-left: 0 !important;
    }
}

@media (max-width: 991px) {
    .ProductPage_cls .summary.entry-summary {
        margin-left: 2%;
    }

    .woocommerce-tabs.wc-tabs-wrapper {
        width: 100%;
    }

    .woocommerce-MyAccount-content {
        overflow-x: scroll;
    }

    .filterLeft_block {
        width: 100%;
        margin-bottom: 10px;
    }

    .filterBlock_items .woocommerce-widget-layered-nav {
        padding: 20px 15px;
    }

    .main__status_order {
        flex-direction: column;
        gap: 10px;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li.active::after {
        height: 3px;
        bottom: -3px;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li a {
        padding: 10px 5px !important;
        font-size: 14px;
    }
}

@media (max-width: 749px) {

    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product h3 {
        min-height: initial;
    }

    .AllItem_SearchBar {
        margin-bottom: 20px;
    }

    .filterLeft_block {
        margin-bottom: 0;
    }

    .productsRight_block form.woocommerce-ordering {
        max-width: 100%;
        margin: 0 0 10px 0 !important;
    }

    p.woocommerce-result-count {
        font-size: 14px;
    }

    nav.woocommerce-pagination {
        margin: 0 auto 20px;
    }

    .innerForm_item,
    .innerLostPassword {
        grid-template-columns: 1fr;
        grid-gap: 0;
    }

    li.product {
        width: 100% !important;
        margin: 0 0 1.5rem !important;
    }

    li.product a,
    li.product a .list_ProductGrid {
        width: 100% !important;
    }

    .filterLeft_block {
        width: 100%;
    }

    .main_collectionBlock {
        margin: 20px 0 0;
    }

    .productsRight_block .wooCustom__resultCount_Ordering {
        flex-direction: column;
        align-items: start;
        margin: 20px 0;
    }

    .filterBlock_items .woocommerce-widget-layered-nav {
        padding: 15px;
    }

    h2.widgettitle {
        font-size: 16px;
    }

    li.woocommerce-widget-layered-nav-list__item a {
        padding: 10px 15px !important;
    }

    /* .woocommerce table.shop_table_responsive tr td::before, .woocommerce-page table.shop_table_responsive tr td::before {
    content: attr(data-title) ": ";
    font-weight: 700;
    float: unset;
} */
    /* 20-06-2024 -------*/
    .empTotle__value,
    .overall__value {
        width: 100%;
        margin-left: 0;
    }

    .empProduct_details {
        overflow-x: auto;
    }

    h3#order_review_heading {
        font-size: 26px;
        margin: 20px 0;
    }

    .empManager_chechoutHeading h4 {
        font-size: 22px;
        margin: 0 0 20px;
    }

    .empName h4 {
        font-size: 22px;
        margin: 20px 0 10px;
        line-height: normal;
    }

    .title h5 {
        font-size: 14px;
        line-height: 20px;
    }

    .EmpProuductSummery th {
        padding: 8px;
    }

    .value__Item {
        padding: 5px 0;
    }

    .totle_empCart_Heading h4 {
        font-size: 26px;
        margin: 10px 0 0;
    }

    .innerBudget_payment .heading h4 {
        font-size: 23px;
        line-height: 26px;
        margin: 0 0 10px;
    }

    .innerBudget_payment .Budget_radio label {
        padding: 0;
    }

    .innerBudget_payment .Budget_radio {
        padding-bottom: 10px;
    }

    .innerBudget_payment .Budget__checkBox label {
        margin: 0 0 10px;
        padding-left: 26px;
        line-height: normal;
    }

    .innerBudget_payment .Budget__checkBox .custom-check:before {
        top: 2px;
        width: 13px;
        height: 13px;
    }

    .innerBudget_payment p.budgetText {
        margin: 15px 0;
    }

    .EmpBudget_payment__Button button {
        font-size: 14px;
        padding: 8px 15px;
    }
}

.stockMainShop_page .input-group.out-of-stock {
    border: 1px solid var(--color-info);
    color: var(--color-info);
}

.stockMainShop_page .input-group.out-of-stock .input-group-addon {
    background: var(--color-info);
}

span.outofStock_icon {
    color: var(--color-info);
}

td.checkout-product-image img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
    width: 100%;
}

table.employee_manager-info-table input {
    border: 1px solid var(--color-border);
    border-radius: 6px;
    /* z-index: 101; */
    position: relative;
    background: white;
    transition: all 0.4s ease;
    min-height: 36px;
    max-width: 100px;
}

.thmaf-acnt-cus-addr .th-head h3 {
    padding-bottom: 8px;
}

.u-column2.col-2.woocommerce-Address {
    margin-top: 15px;
}

p a {
    word-break: break-all;
}

.woocommerce-account .woocommerce-MyAccount-content {
    float: none;
}

main {
    margin: 25px 0;
}


/** Max Media Query */
@media only screen and (max-width: 1399.98px) {}

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

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

    /* Header quick actions: icons only on smaller screens */
    .header-nav__list .header-nav__button>span,
    .header-nav__list .cartQuantity.header-nav__button {
        font-size: 0;
        gap: 0;
    }

    .header-nav__list .header-nav__button>span {
        display: none;
    }

    .header-nav__list .header-nav__button .fa {
        font-size: 1rem;
        margin: 0;
    }

    .header-nav__list .header-nav__button .cartQuantityCount {
        font-size: 12px;
    }

    .header-nav__list .header-nav__button .fa-angle-down {
        display: none;
    }

    .header-nav__list {
        gap: 0.5rem;
    }

    .mainBlock__footer {
        grid-template-columns: 1fr 1fr;
    }

    .mainCopyRight .copyright_Text {
        order: 3;
    }

    .mainCopyRight .centerText {
        order: 2;
    }

    .copyright_Links {
        order: 1;
        width: 100%;
    }

    .copyright_Links ul.item_navbar-nav {
        justify-content: start;
    }

    .copyright_Links ul.item_navbar-nav li.nav-item:first-child {
        padding-left: 0;
    }

    ul.product_catList {
        max-width: 100%;
    }

    .user-area.managerDropDown_user_area {
        width: 100%;
        margin: 0 auto;
    }
}

@media only screen and (max-width: 767.98px) {
    .ysm-search-widget .search-field[type="search"] {
        min-height: 40px;
    }

    .single_page.page_id_19 h1.pagetitle {
        margin-bottom: 20px;
    }

    table.shop_table td,
    table.shop_table th {
        font-size: 14px;
    }

    .thmaf-my-acnt.th-custom {
        margin-top: 20px;
    }

    table.employee_manager-info-table th,
    table.employee_manager-info-table td {
        font-size: 14px;
        line-height: 30px;
        padding: 10px;
        padding-top: 20px;
    }

    table.employee_manager-info-table th {
        font-weight: bold;
    }

    .woocommerce table.shop_table_responsive tr td::before,
    .woocommerce-page table.shop_table_responsive tr td::before {
        margin-right: 8px;
    }

    .woocommerce table.shop_table_responsive tfoot tr td::before,
    .woocommerce-page table.shop_table_responsive tfoot tr td::before {
        margin-right: 8px;
        display: none;
    }

    .woocommerce table.shop_table_responsive tfoot tr th {
        margin-right: 8px;
        /* 		text-align: right; */
        /* 	display:none; */
        border: none;
        background-color: white !important;
    }

    .woocommerce table.shop_table_responsive tfoot tr td {
        background-color: white !important;
        /* 		text-align: right; */
        border: none;
        font-weight: 400;
    }

    .totle_empCart_value .totle_empCart_Heading {
        margin-bottom: 10px;
    }

    .EmpProuductSummery th {
        font-size: 14px;
    }

    div#customer_details .col-2 {
        margin-top: 20px;
    }

    div#customer_details .col-2 .woocommerce-additional-fields {
        margin-top: 0;
    }

    /* 
div.col h3, 
div.col h2 {
	font-size: 2rem;
} */
    td.product-thumbnail::before {
        display: none !important;
    }

    h2,
    .h2 {
        font-size: 1.5rem;
    }

    .single_page h3 {
        font-size: 22px;
        font-weight: normal;
    }

    .wooCart_page table.shop_table td.product-thumbnail {
        padding-left: 9px !important;
    }

    h1,
    .h1 {
        font-size: 2rem;
    }

    .ProductPage_cls p.price {
        font-size: 20px !important;
    }

    .wooCart_page .cartPage_buttons {
        padding-top: 20px;
        justify-content: space-between;
    }

    .cartTitle {
        margin-bottom: 10px;
    }

    .wooCart_page .cartPage_buttons .btn_cart_btn {
        padding-right: 0;
        padding-left: 0;
    }

    .mainProduct_Title {
        margin-top: 20px;
    }

    .ProductPage_cls .woocommerce-product-gallery {
        order: 1;
    }

    .woocommerce div.product form.cart {
        margin-bottom: 0;
    }

    h1.product_title {
        font-size: 24px;
    }

    .woocommerce-Tabs-panel {
        border: 1px solid #dadada;
        padding: 15px 15px !important;
        border-top: none;
    }

    /* .woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
    width: 100% !important;
}
.woocommerce-product-gallery__image.flex-active-slide {
    max-width: 100% !important;
} */
    .ProductPage_cls .summary.entry-summary {
        margin-left: 0;
    }

    .woocommerce div.product div.images {
        margin-bottom: 0px;
    }

    .ProductPage_cls .summary.entry-summary {
        order: 2;
    }

    .ProductPage_cls .product-add-to-cart-below {
        order: 3;
        width: 100%;
    }

    .ProductPage_cls .woocommerce-tabs {
        order: 4;
        width: 100%;
    }

    .user-area.managerDropDown_user_area {
        max-width: 100%;
        margin: 0 auto;
    }

    .mainCopyRight .centerText {
        width: 100%;
        text-align: center;
    }

    .topHeader_menu {
        padding-right: 0;
    }

    .user-area {
        justify-content: space-around;
        gap: 8px;
    }

    .woocommerce-additional-fields {
        margin-top: 15px;
    }

    .user-area .text-sm-center {
        width: auto;
    }

    .AllItem_SearchBar {
        display: flex;
        flex-direction: row;
        gap: 8px;
        position: relative;
    }

    .Alle_Menus_Button ul.list-unstyled {
        display: none;
    }

    .blockHeader {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .site_logo {
        order: 0;
    }

    .site_logo img.img-fluid {
        max-width: 66%;
        min-width: 130px;
        height: auto;
        object-fit: contain;
    }

    .user-area .text-sm-center a {
        font-size: 12px;
        padding: 10px;
        line-height: 14px;
    }

    .user-area .text-sm-center span {
        color: #fff;
        font-size: 12px;
        border-radius: 16px;
        padding: 3px 7px;
        background: #ff4a48;
        margin-top: 0;
        font-style: normal;
        width: 20px;
        height: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    ul.product_catList {
        margin: 0;
        grid-template-columns: 1fr 1fr;
    }

    
    .mainBlock__footer {
        grid-template-columns: 1fr;
    }

    .copyright_Links ul.item_navbar-nav {
        justify-content: center;
    }

    .copyright_Links ul.item_navbar-nav li.nav-item a.nav-link {
        font-size: 14px;
        line-height: 26px;
    }

    .mainCopyRight p {
        font-size: 14px;
    }

    .wooCart_page .coupon,
    .wooCart_page .cart_referenceCode {
        max-width: 100%;
    }

    .wooCart_page .cartPage_buttons .btn_cart_btn {
        padding-left: 0;
    }

    .wooCart_page table.shop_table tr td h2.basket-supplier-name {
        text-align: start;
    }

    table.shop_table td {
        width: 100% !important;
        max-width: 100% !important;
    }

    .wooCart_page table.shop_table .cartInput_propertys .form-group.item-note label {
        text-align: start;
        width: 100%;
    }

    .wooCart_page .cart-collaterals .cart_totals table {
        width: 100%;
    }

    .woocommerce-page table.cart .product-thumbnail {
        display: block;
    }

    .wooCart_page table.shop_table td.product-remove {
        justify-content: start;
    }

    .wooCart_page .cart-collaterals .cart_totals table {
        width: 100% !important;
        /* margin-left: auto !important; */
    }

    .wooCart_page table.shop_table td.product-name .cartTitle a,
    .wooCart_page table.shop_table .cartSKU {
        text-align: left;
    }
}

/* ==========================================================================
   11) Dashboard / Data Tables
   ========================================================================== */
/* --- Statistics Dashboard --- */

/* Container for the stats cards */
.budget-stats-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 15px;
    margin-bottom: 20px;
}

/* Each individual stat card */
.budget-stat-card {
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 1) 0%,
            rgba(237, 237, 237, 0.3) 100%);
    border: 1px solid rgb(229 231 235);
    border-radius: 8px;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
    padding: 20px;
    text-align: center;
    transition: transform 0.2s;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Make cards a little larger on hover */
.budget-stat-card:hover {
    transform: translateY(-5px);
}

/* Style the heading inside each card */
.budget-stat-card h3 {
    font-size: 16px;
    margin-bottom: 10px;
    color: #333;
}

/* Style the paragraph inside each card */
.budget-stat-card p {
    font-size: 18px;
    font-weight: bold;
    color: #333;
}

/* Responsive layout adjustments */
@media (max-width: 768px) {
    .budget-stats-container {
        grid-template-columns: repeat(2, 1fr);
        /* Always two items per row */
    }
}

@media (max-width: 480px) {
    .budget-stats-container {
        grid-template-columns: repeat(1,
                1fr);
        /* One item per row on smaller screens */
    }

    .header-nav__dropdown {
        right: 0;
    }
}

/* Most bought items table */

.analytics-dashboard {
    margin-bottom: 16px;
}

.most-bought-items-table {
    width: 100%;
    border-collapse: collapse;
}

.most-bought-items-table th,
.most-bought-items-table td {
    padding: 10px;
    text-align: left;
    border-bottom: 1px solid #ddd;
}

.most-bought-items-table img {
    border-radius: 5px;
    min-width: 50px;
}

.most-bought-items-table tr:hover {
    background-color: #f9f9f9;
    cursor: pointer;
}

/* Truncate name after 2 lines */
.most-bought-items-table td:nth-child(2) {
    /*     display: -webkit-box; */
    /*     -webkit-line-clamp: 2;
    -webkit-box-orient: vertical; */
    overflow: hidden;
    text-overflow: ellipsis;
    /*     white-space: normal; */
    /*     word-wrap: break-word; */
}

/* Media query for smaller screens */
@media screen and (max-width: 768px) {

    /* Adjust table layout for mobile */
    .most-bought-items-table th,
    .most-bought-items-table td {
        padding: 6px;
        font-size: 14px;
    }

    .most-bought-items-table td:nth-child(2),
    .most-bought-items-table th:nth-child(2) {
        max-width: 120px;
        /* Further reduce width of the name column on small screens */
    }
}

@media only screen and (max-width: 575.98px) {
    .topHeader_menu .text-left.text-sm-center:first-child a {
        justify-content: flex-start;
        padding: 10px 0;
    }

    .user-area .text-sm-center a {
        justify-content: flex-end;
        padding: 10px 0;
    }

    div#dropdownContent {
        left: 0;
    }

    .myAccountDropdown {
        display: flex;
        justify-content: flex-start;
        align-items: center;
    }

    ul.product_catList {
        margin: 0;
        grid-template-columns: 1fr;
    }
}

/** Min Media Query */
@media (min-width: 48em) {
    .Alle_Menus_Button ul.category-list li .mega-sub {
        background: #f2f2f2;
        padding: 0 30px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        position: absolute;
        height: auto;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        z-index: 1;
        border: 1px solid #dadada;
        border-top: 0;
        border-radius: 0.31rem;
        border-top-right-radius: 0;
        border-top-left-radius: 0;
        width: 100%;
        left: 0;
        top: 100%;
        margin: 0;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

    li.has-sub.sub_Open a.alle_menusOrafol::before {
        position: absolute;
        content: "";
        border: 10px solid #f2f2f2;
        border-top-color: transparent;
        border-left-color: transparent;
        border-right-color: transparent;
        position: absolute;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        bottom: -23px;
        display: block;
    }

    .Alle_Menus_Button ul.category-list li.has-sub.sub_Open .mega-sub {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .Alle_Menus_Button ul.category-list li a:hover {
        color: #000;
        text-decoration: underline;
    }

    .Alle_Menus_Button ul.category-list li.has-sub .mega-sub a {
        font-weight: 600;
        margin-right: 40px;
    }

    .Alle_Menus_Button ul.list-unstyled a.btn.reset i.fa.fa-chevron-down.small-icon {
        font-size: 0.75rem;
        margin-left: 10px;
    }

    .Alle_Menus_Button ul.category-list li.open>a {
        position: relative;
    }

    .Alle_Menus_Button ul.category-list li {
        padding: 20px 12.5px;
        -webkit-box-align: baseline;
        -ms-flex-align: baseline;
        align-items: baseline;
    }

    .Alle_Menus_Button ul.list-unstyled ul.category-list.list-unstyled {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0;
    }

    .AllItem_SearchBar .absolute-container {
        padding-top: 0;
        padding-bottom: 0;
    }

    .AllItem_SearchBar .absolute-container:before {
        top: -11px;
        left: 25px;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}

@media (min-width: 75em) {
    .mainBlock__footer ul.item_navbar-nav li.nav-item {
        padding: 10px 0;
    }
}

@media (min-width: 992px) {
    .woocommerce nav.woocommerce-pagination {
        padding-left: 330px;
    }

    .filterLeft_block {
        width: 25%;
    }

    .productsRight_block {
        width: 75%;
    }

    .productsRight_block,
    .filterLeft_block,
    .ProductPage_cls .summary.entry-summary,
    .ProductPage_cls .woocommerce-product-gallery {
        padding-right: 15px;
        padding-left: 15px;
    }

    .ProductPage_cls .woocommerce-product-gallery,
    .ProductPage_cls .woocommerce-tabs {
        width: 50% !important;
    }

    .ProductPage_cls .summary.entry-summary {
        margin-left: 8.33333%;
        width: 41.667% !important;
    }
}

@media only screen and (min-width: 768px) {
    .employee-info-tab .woocommerce-MyAccount-navigation {
        float: left;
        width: 30%;
    }

    .employee-info-tab .woocommerce-MyAccount-content {
        float: right;
        width: 68%;
    }

    /*Checkout page on mobile devices */

    /* Hide the table header on mobile */
    .empProduct_details thead {
        display: none;
    }
}

/* Datatables */

.dataTables_filter input,
.filter-controls input {
    min-height: 36px;
    width: auto;
    /* Adjust width as needed */
    padding: 10px;
    /* Match padding with other input elements */
    border: 1px solid #ccc;
    /* Match border style */
    border-radius: 6px !important;
    /* Match border radius */
    font-size: 14px;
    /* Match font size */
    /* margin-bottom: 24px; */
}

#DataTables_Table_0_filter,
#DataTables_Table_0_length {
    margin-top: 8px;
    margin-bottom: 8px;
}

#DataTables_Table_0_filter label,
#DataTables_Table_0_length label {
    color: #747474;
}

#DataTables_Table_0_filter input[type="search"] {
    margin-left: 20px;
    margin-right: 8px;
}

.dataTables_wrapper .dt-buttons {
    float: right;
    /* Align buttons to the right */
    margin-bottom: 10px;
    /* Add some space below the buttons */
}

/* Style for the DataTables length dropdown */
.dataTables_length select,
.filter-controls select {
    padding: 10px;
    /* Match padding with other select elements */
    border: 1px solid #ccc;
    /* Match border style */
    border-radius: 6px !important;
    /* Match border radius */
    font-size: 14px;
    /* Match font size */
    min-height: 36px;
}

table.dataTable td.user-name {
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

table.dataTable td.user-name:hover {
    overflow: visible;
    white-space: normal;
}

/* Optional: Style the DataTables pagination */
.dataTables_wrapper .dataTables_paginate .paginate_button {
    padding: 10px 15px;
    /* Adjust padding */
    border: 1px solid #ccc;
    /* Match border style */
    border-radius: 6px !important;
    /* Match border radius */
    margin: 0 2px;
    /* Space between pagination buttons */
    background: #f7f7f7;
    /* Background color */
    color: #333;
    /* Text color */
}

.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: #e7e7e7;
    /* Background color on hover */
}

#employee-filter {
    width: 200px;
    /* Adjust width as needed */
    height: auto;
    /* Allow height to adjust based on selections */
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
}

.custom-dropdown {
    position: relative;
    display: inline-block;
}

#dropdown-button {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
}

.dropdown-content {
    display: none;
    /* Hidden by default */
    position: absolute;
    background-color: #f9f9f9;
    min-width: 300px;
    border: 1px solid #ccc;
    z-index: 1;
    max-height: 500px;
    /* Limit height */
    overflow-y: auto;
    /* Enable scrolling */
    border-radius: 6px;
}

.dropdown-content div {
    display: flex;
    padding: 8px;
    height: 40px;
    border-bottom: 1px solid #ccc;
    cursor: pointer;
}

.dropdown-content div:hover {
    background-color: #f1f1f1;
    /* Highlight on hover */
}

.filter-controls input {
    min-height: 16px !important;
}

.filter-controls label {
    width: 60px;
}

#employee-checkboxes label {
    width: 200px;
}

.filter-controls {
    display: flex;
    /* Use flexbox for layout */
    flex-direction: row;
    /* Stack pairs vertically */
    gap: 8px;
    /* Add space between pairs */
    flex-wrap: wrap;
}

.filter-pair {
    display: flex;
    /* Use flexbox for each label-input pair */
    align-items: center;
    /* Center items vertically */
    gap: 8px;
    /* Space between label and input */
    flex-wrap: wrap;
}

#filter-button {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
}

@media (max-width: 640px) {
    #DataTables_Table_0_filter {
        float: left;
    }

    .dataTables_wrapper .dt-buttons {
        float: left;
        /* Align buttons to the right */
        margin-right: 8px;
        /* Add some space below the buttons */
    }
}

/* ==========================================================================
   12) Plugin Overrides
   ========================================================================== */
/* Overrides of the WPCPQ Pricing Table */

.wpcpq-row.wpcpq-item {
    border-radius: 6px;
    border: 1px solid var(--color-border);
}

/* More specific selector for active state */
.wpcpq-row.wpcpq-item.wpcpq-item-active,
.wpcpq-row.wpcpq-item .wpcpq-item-active {
    border: 1px solid var(--color-primary);
}

.wpcpq-wrap {
    width: 100% !important;
    margin-bottom: 4px;
}

.wpcpq-wrap .wpcpq-row.wpcpq-item {
    border-radius: 6px;
    border: 1px solid var(--color-border);
    margin: 4px;
    min-width: 100px;
    width: calc(25% - 8px);
    padding: 8px;
}

/* More specific selector for active state with !important */
.wpcpq-wrap .wpcpq-row.wpcpq-item.wpcpq-item-active,
.wpcpq-wrap .wpcpq-row.wpcpq-item .wpcpq-item-active {
    border: 1px solid var(--color-primary) !important;
}

/* Order Details Page */
#refresh-order-details-container {
    width: 100%;
    display: flex;
    flex-direction: row-reverse;
}

#refresh-order-details {
    width: 300px;
}

.dashicons {
    font-size: 16px;
}

table.woocommerce-table.woocommerce-table--order-details.shop_table.order_details {
    padding: 1rem;
}

/* Checkout page terms and conditions */

.woocommerce-terms-and-conditions-wrapper h2 {
    font-size: 28px;
}

.woocommerce-terms-and-conditions-wrapper h3 {
    font-size: 20px;
    margin-top: 1rem;
}

/* Hide YITH filters on main shop page (categories-only view) */
body.shop-categories-view .yith-wcan-filters {
    display: none !important;
}

/* Override styles of YITH filter plugin */
.yith-wcan-filters .yith-wcan-filter.label-design .filter-items {
    font-size: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label {
    width: calc(33% - 12px) !important;
    margin-right: 2px !important;
    max-width: 80px !important;
}

/* Filled in by functions.js after lazy-load / AJAX: no selectable options */
.yith-wcan-filters .yith-wcan-filter.mytundh-yith-filter-hidden,
.filterBlock_items .yith-wcan-filter.mytundh-yith-filter-hidden {
    display: none !important;
}

.yith-wcan-filters .yith-wcan-filter {
    padding: 1rem !important;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label {
    padding: 0 !important;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label:hover:not(.active):not(.with-image),
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label.active:not(.with-image):hover,
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label.active:not(.with-image) {
    background-color: var(--color-primary) !important;
    border-width: 0px !important;
    box-shadow: none !important;
    color: #fff !important;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label>a {
    padding: 7px !important;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.checkbox > label {
    display: flex;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item>label>a {
    max-width: 80% !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    line-height: 24px !important;
    margin-left: 4px !important;
}

.yith-wcan-filters .yith-wcan-filter .yith-wcan-dropdown .dropdown-wrapper .search-field-container .search-field {
    padding: 4px !important;
    border-radius: 6px !important;
    border: 1px solid #ccc !important;
    height: 36px !important;
    font-size: 14px !important;
    color: #333 !important;
    background-color: #fff !important;
    box-sizing: border-box !important;
}

.yith-wcan-filters .yith-wcan-filter .yith-wcan-dropdown .dropdown-wrapper .search-field-container::after {
    display: none !important;
}

/* Hide category result count and ordering */
.woocommerce-result-count,
.woocommerce-ordering {
    display: none;
}

.wooCustom__resultCount_Ordering .woocommerce-result-count,
.wooCustom__resultCount_Ordering .woocommerce-ordering {
    display: block;
}

/* ==========================================================================
   13) Front Page Sections
   --------------------------------------------------------------------------
   Front page – single-page B2B layout
   ========================================================================== */

.front_page.fp-single-page {
    padding: 0;
    margin: 0 !important;
}

/* ============================================
   FADE-IN ANIMATION SYSTEM (mockup)
   Intersection Observer triggered
============================================ */
/* Fade-in: visible by default (progressive enhancement when JS fails) */
.fade-in {
    opacity: 1;
    transform: none;
}

body.fade-in-ready .fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition:
        opacity 0.6s ease,
        transform 0.6s ease;
}

body.fade-in-ready .fade-in.visible {
    opacity: 1;
    transform: translateY(0);
}

.fade-in-delay-1 {
    transition-delay: 0.1s;
}

.fade-in-delay-2 {
    transition-delay: 0.2s;
}

.fade-in-delay-3 {
    transition-delay: 0.3s;
}

.fade-in-delay-4 {
    transition-delay: 0.4s;
}

@media (prefers-reduced-motion: reduce) {
    body.fade-in-ready .fade-in {
        opacity: 1;
        transform: none;
        transition: none;
    }

    body.fade-in-ready .fade-in.visible {
        transform: none;
    }

    .fp-hero__slide-inner:hover {
        transform: none;
    }

    .fp-psa-beratung__card:hover {
        transform: none;
    }

    .fp-btn:hover {
        transform: none;
    }

    .problem-card:hover {
        transform: none;
    }

    .pillar-card:hover {
        transform: none;
    }

    .pillar-card:hover .pillar-icon {
        transform: none;
    }

    .module-card:hover {
        transform: none;
    }

    .process-step:hover .step-number {
        transform: none;
    }

    .fp-product-categories .product-card:hover {
        transform: none;
    }
}

/* ============================================
   Hero carousel (promo/offers – editable via Hero Slides CPT)
   ============================================ */
.fp-hero-carousel {
    position: relative;
    width: 100%;
    min-height: calc(80vh - var(--header-height, 170px));
    overflow: hidden;
}

.fp-hero-carousel__inner {
    position: relative;
}

.fp-hero-carousel__inner.slick-initialized .slick-list,
.fp-hero-carousel__inner.slick-initialized .slick-track {
    min-height: calc(80vh - var(--header-height, 170px));
}

.fp-hero-carousel__inner:not(.slick-initialized) .fp-hero-carousel__slide {
    display: block;
}

.fp-hero-carousel__inner:not(.slick-initialized) .fp-hero-carousel__slide:not(:first-child) {
    display: none;
}

.fp-hero-carousel__slide {
    outline: none;
    position: relative;
    min-height: calc(80vh - var(--header-height, 170px));
}

.fp-hero-carousel__slide-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-color: var(--color-text-dark);
}

.fp-hero-carousel__slide-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0.15) 0%,
            rgba(0, 0, 0, 0.55) 100%);
}

.fp-hero-carousel__slide-bg--placeholder {
    background-color: var(--color-background-gray);
}

.fp-hero-carousel__slide-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    min-height: calc(100vh - var(--header-height, 90px));
    padding: 2rem 1.5rem 3rem;
    max-width: 1240px;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
}

@media (min-width: 1280px) {
    .fp-hero-carousel__slide-content {
        padding-left: max(15px, calc((100% - 1240px) / 2));
        padding-right: max(15px, calc((100% - 1240px) / 2));
    }
}

.fp-hero-carousel__slide-title {
    font-size: 3rem;
    font-weight: 600;
    margin: 0 0 0.5rem;
    color: var(--color-text-light);
}

.fp-hero-carousel__slide-caption {
    font-size: 1.25rem;
    opacity: 0.95;
    margin: 0 0 1rem;
    color: var(--color-text-light);
}

.fp-hero-carousel__slide-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.fp-hero-carousel .slick-dots {
    bottom: 1.5rem;
    display: flex !important;
    justify-content: center;
    gap: 0.75rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.fp-hero-carousel .slick-dots li {
    margin: 0;
    width: auto;
}

.fp-hero-carousel .slick-dots li button {
    width: 12px;
    height: 12px;
    padding: 0;
    margin: 0;
    border: 1px solid var(--color-primary);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    font-size: 0;
    cursor: pointer;
}

.fp-hero-carousel .slick-dots li button::before {
    display: none;
}

.fp-hero-carousel .slick-dots li.slick-active button {
    background: var(--color-primary);
    transform: scale(1.15);
}

.fp-hero-carousel .slick-arrow {
    display: none !important;
}

/* ============================================
   Hero value prop ("Arbeitsschutz, der Mitarbeiter bindet")
   Layout: left = text & buttons, right = image (per mockup)
   ============================================ */
.fp-hero-value-prop {
    background: var(--color-footer-bg);
    color: var(--color-text-light);
    padding: 4rem 0;
    position: relative;
    overflow: hidden;
}

.fp-hero-value-prop::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: linear-gradient(135deg,
            transparent 0%,
            rgba(240, 153, 55, 0.08) 100%);
    pointer-events: none;
}

.fp-hero-value-prop__inner {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 3rem;
    align-items: center;
    position: relative;
}

.fp-hero-value-prop__content {
    text-align: left;
}

.fp-hero-value-prop__headline {
    font-size: clamp(1.75rem, 4vw, 3rem);
    line-height: 1.15;
    font-weight: 700;
    color: var(--color-text-light);
    margin: 0 0 1rem;
}

.fp-hero-value-prop__headline span {
    color: var(--color-primary);
    display: block;
}

.fp-hero-value-prop__subline {
    font-size: clamp(1rem, 2vw, 1.25rem);
    color: var(--color-text-light);
    opacity: 0.95;
    margin: 0 0 2rem;
    line-height: 1.7;
}

.fp-hero-value-prop__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.fp-hero-value-prop__image {
    position: relative;
}

.fp-hero-value-prop__image img {
    width: 100%;
    height: auto;
    min-height: 340px;
    object-fit: cover;
    display: block;
}

.fp-btn--outline-white {
    background: transparent;
    border: 2px solid var(--color-text-light);
    color: var(--color-text-light);
}

.fp-btn--outline-white:hover {
    background: var(--color-text-light);
    color: var(--color-footer-bg);
}

@media (max-width: 1024px) {
    .fp-hero-value-prop__inner {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .fp-hero-value-prop__content {
        text-align: center;
    }

    .fp-hero-value-prop__buttons {
        justify-content: center;
    }

    .fp-hero-value-prop__image {
        order: -1;
    }
}

@media (max-width: 768px) {
    .fp-hero-value-prop {
        padding: 2.5rem 0;
    }

    .fp-hero-value-prop__buttons {
        flex-direction: column;
        width: 100%;
        max-width: 280px;
        margin: 0 auto;
    }

    .fp-hero-value-prop__buttons .fp-btn {
        width: 100%;
        text-align: center;
    }
}

/* ============================================
   TRUST BAR (mockup)
============================================ */
.trust-bar {
    background: var(--color-background);
    border-bottom: 1px solid var(--color-border);
    padding: 2.5rem 0;
}

.trust-bar-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 2rem;
}

.trust-item {
    text-align: center;
    flex: 1;
    min-width: 150px;
}

.trust-item strong {
    display: block;
    font-size: 2rem;
    color: var(--color-footer-bg);
    font-weight: 700;
}

.trust-item span {
    color: var(--color-text);
    font-size: 0.9rem;
}

/* ============================================
   PAIN POINTS / PROBLEMS (mockup)
============================================ */
.fp-pain-points.problems {
    background: var(--color-background-light);
}

.fp-pain-points .section-header {
    text-align: center;
    margin-bottom: 3rem;
}

.fp-pain-points .section-header .fp-section__title {
    color: var(--color-footer-bg);
}

.fp-pain-points .section-header p {
    font-size: 1.15rem;
    color: var(--color-text);
    max-width: 700px;
    margin: 1rem auto 0;
}

.problem-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.problem-card {
    background: var(--color-background);
    padding: 2rem;
    border-left: 4px solid var(--color-primary);
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-base);
    position: relative;
    overflow: hidden;
}

.problem-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: rgba(254, 148, 0, 0.03);
    transition: width var(--transition-base);
}

.problem-card:hover {
    box-shadow: var(--shadow-hover);
    transform: translateY(-5px);
}

.problem-card:hover::before {
    width: 100%;
}

.problem-icon {
    width: 48px;
    height: 48px;
    background: var(--color-background-light);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.25rem;
}

.problem-icon svg {
    width: 24px;
    height: 24px;
    fill: var(--color-primary);
}

.problem-card h3 {
    color: var(--color-footer-bg);
    margin-bottom: 0.75rem;
    font-size: 1.1rem;
    position: relative;
    z-index: 1;
}

.problem-card p {
    color: var(--color-text);
    font-size: 0.95rem;
    position: relative;
    z-index: 1;
    margin: 0;
}

/* ============================================
   CORE PILLARS / THREE PILLARS (mockup)
============================================ */
.fp-core-pillars.pillars {
    background: var(--color-background);
}

.fp-core-pillars .section-header {
    text-align: center;
    margin-bottom: 3rem;
}

.fp-core-pillars .section-header .fp-section__title {
    color: var(--color-footer-bg);
}

.fp-core-pillars .section-header p {
    font-size: 1.15rem;
    color: var(--color-text);
    max-width: 700px;
    margin: 1rem auto 0;
}

.pillar-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.pillar-card {
    background: var(--color-background);
    border: 1px solid var(--color-border);
    padding: 2.5rem 2rem;
    text-align: center;
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-base);
    position: relative;
}

.pillar-card:hover {
    box-shadow: var(--shadow-hover);
    transform: translateY(-6px);
    border-color: var(--color-primary);
}

.pillar-icon {
    width: 72px;
    height: 72px;
    background: var(--color-footer-bg);
    border-radius: 50%;
    margin: 0 auto 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all var(--transition-base);
}

.pillar-card:hover .pillar-icon {
    background: var(--color-primary);
    transform: scale(1.1);
}

.pillar-icon svg {
    width: 32px;
    height: 32px;
    fill: var(--color-text-light);
}

.pillar-card h3 {
    color: var(--color-footer-bg);
    margin-bottom: 0.5rem;
    font-size: 1.2rem;
}

.pillar-subtitle {
    color: var(--color-primary);
    font-weight: 600;
    margin-bottom: 1rem;
    font-size: 0.95rem;
}

.pillar-card p {
    color: var(--color-text);
    font-size: 0.95rem;
    margin: 0;
}

@media (max-width: 1024px) {

    .problem-grid,
    .pillar-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .trust-bar-inner {
        flex-direction: column;
    }

    .trust-item {
        min-width: auto;
    }

    .problem-grid,
    .pillar-grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================
   SOCIAL PROOF / RESULTS (mockup)
============================================ */
.fp-social-proof.results {
    background: var(--color-footer-bg);
    color: var(--color-text-light);
    position: relative;
    overflow: hidden;
}

.fp-social-proof.results::before {
    content: "";
    position: absolute;
    top: -50%;
    right: -20%;
    width: 60%;
    height: 200%;
    background: radial-gradient(circle,
            rgba(254, 148, 0, 0.1) 0%,
            transparent 70%);
}

@media (max-width: 768px) {
    .fp-social-proof.results::before {
        display: none;
    }
}

.fp-social-proof .section-header {
    text-align: center;
    margin-bottom: 3rem;
}

.fp-social-proof .section-header .fp-section__title,
.fp-social-proof .section-header p {
    color: var(--color-text-light);
}

.fp-social-proof .section-header p {
    opacity: 0.9;
    font-size: 1.15rem;
    max-width: 700px;
    margin: 1rem auto 0;
}

.result-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3rem;
    text-align: center;
    position: relative;
}

.result-item {
    padding: 2rem;
}

.result-item strong {
    display: block;
    font-size: 4rem;
    color: var(--color-primary);
    margin-bottom: 0.5rem;
    font-weight: 700;
    line-height: 1;
}

.result-item span {
    font-size: 1.1rem;
    opacity: 0.9;
}

/* ============================================
   PRODUCT MODULES (mockup)
============================================ */
.fp-product-modules.modules {
    background: var(--color-background-light);
}

.fp-product-modules .section-header {
    text-align: center;
    margin-bottom: 3rem;
}

.fp-product-modules .section-header .fp-section__title {
    color: var(--color-footer-bg);
}

.fp-product-modules .section-header p {
    font-size: 1.15rem;
    color: var(--color-text);
    max-width: 700px;
    margin: 1rem auto 0;
}

.module-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.module-card {
    background: var(--color-background);
    padding: 2.5rem 2rem;
    border-top: 5px solid var(--color-primary);
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-base);
    display: flex;
    flex-direction: column;
}

.module-card:hover {
    box-shadow: var(--shadow-hover);
    transform: translateY(-6px);
}

.module-card h3 {
    color: var(--color-footer-bg);
    margin-bottom: 0.5rem;
    font-size: 1.25rem;
}

.module-tag {
    display: inline-block;
    background: var(--color-background-light);
    padding: 0.35rem 0.85rem;
    font-size: 0.75rem;
    color: var(--color-text);
    margin-bottom: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.module-card p {
    color: var(--color-text);
    font-size: 0.95rem;
    margin-bottom: 1.25rem;
}

.module-card ul {
    list-style: none;
    margin: 0 0 1.5rem;
    padding: 0;
    flex-grow: 1;
}

.module-card ul li {
    padding: 0.4rem 0;
    color: var(--color-text);
    font-size: 0.9rem;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

.module-card ul li::before {
    content: "✓";
    color: var(--color-primary);
    font-weight: bold;
    flex-shrink: 0;
}

/* ============================================
   PROCESS FLOW (mockup)
============================================ */
.fp-process-flow.process {
    background: var(--color-background-light);
}

.fp-process-flow .section-header {
    text-align: center;
    margin-bottom: 3rem;
}

.fp-process-flow .section-header .fp-section__title {
    color: var(--color-footer-bg);
}

.fp-process-flow .section-header p {
    font-size: 1.15rem;
    color: var(--color-text);
    max-width: 700px;
    margin: 1rem auto 0;
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
    position: relative;
}

.process-grid::before {
    content: "";
    position: absolute;
    top: 25px;
    left: 15%;
    right: 15%;
    height: 2px;
    background: var(--color-border);
    z-index: 0;
}

.process-step {
    text-align: center;
    position: relative;
    z-index: 1;
}

.step-number {
    width: 56px;
    height: 56px;
    background: var(--color-footer-bg);
    color: var(--color-text-light);
    font-size: 1.5rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.25rem;
    transition: all var(--transition-base);
}

.process-step:hover .step-number {
    background: var(--color-primary);
    transform: scale(1.1);
}

.process-step h3 {
    color: var(--color-footer-bg);
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
}

.process-step p {
    color: var(--color-text);
    font-size: 0.9rem;
    margin: 0;
}

/* ============================================
   PRODUCT CATEGORIES (mockup)
============================================ */
.fp-product-categories.products,
.shop-categories-archive.products {
    background: var(--color-background-light);
}

.fp-product-categories .section-header,
.shop-categories-archive .section-header {
    text-align: center;
    margin-bottom: 3rem;
}

.fp-product-categories .section-header .fp-section__title,
.shop-categories-archive .section-header .fp-section__title {
    color: var(--color-footer-bg);
}

.fp-product-categories .section-header p,
.shop-categories-archive .section-header p {
    font-size: 1.15rem;
    color: var(--color-text);
    max-width: 700px;
    margin: 1rem auto 0;
}

.product-category-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.fp-product-categories .product-card,
.shop-categories-archive .product-card {
    background: var(--color-background);
    padding: 2rem 1.5rem;
    text-align: center;
    border: 1px solid var(--color-border);
    transition: all var(--transition-base);
    text-decoration: none;
    color: inherit;
    display: block;
}

.fp-product-categories .product-card:hover,
.shop-categories-archive .product-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-5px);
    border-color: var(--color-primary);
}

.fp-product-categories .product-icon,
.shop-categories-archive .product-icon {
    width: 200px;
    height: 200px;
    background: var(--color-background);
    margin: 0 auto 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all var(--transition-base);
}

.fp-product-categories .product-icon--line,
.shop-categories-archive .product-icon--line {
    background: var(--color-footer-bg);
}

.fp-product-categories .product-icon--image,
.shop-categories-archive .product-icon--image {
    background: var(--color-background);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: var(--border-radius-md);
}

.fp-product-categories .product-icon--image svg,
.shop-categories-archive .product-icon--image svg {
    display: none;
}

.fp-product-categories .product-icon--line svg,
.shop-categories-archive .product-icon--line svg {
    width: 28px;
    height: 28px;
    color: var(--color-text-light);
}

.fp-product-categories .product-icon--line svg path,
.fp-product-categories .product-icon--line svg polyline,
.fp-product-categories .product-icon--line svg line,
.shop-categories-archive .product-icon--line svg path,
.shop-categories-archive .product-icon--line svg polyline,
.shop-categories-archive .product-icon--line svg line {
    stroke: currentColor;
}

.fp-product-categories .product-card:hover .product-icon--line,
.shop-categories-archive .product-card:hover .product-icon--line {
    background: var(--color-primary);
}

.fp-product-categories .product-card h3,
.shop-categories-archive .product-card h3 {
    color: var(--color-footer-bg);
    font-size: 1.05rem;
    margin-bottom: 0.5rem;
}

.fp-product-categories .product-card p,
.shop-categories-archive .product-card p {
    color: var(--color-text);
    font-size: 0.85rem;
    margin: 0;
}

.fp-product-categories__cta {
    text-align: center;
    margin-top: 3rem;
}

.fp-product-categories__panel summary {
    display: none;
}

/* Keep categories expanded on larger screen widths. */
@media (min-width: 769px) {
    .fp-product-categories__panel > .fp-product-categories__panel-content {
        display: block !important;
    }
}

/* Shop page: square tiles, larger icons, rounded corners */
.shop-categories-archive .product-card {
    aspect-ratio: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.5rem 1.25rem;
    border-radius: var(--border-radius-lg);
}

.shop-categories-archive .product-icon {
    width: 200px;
    height: 200px;
    margin-bottom: 1rem;
    flex-shrink: 0;
}

.shop-categories-archive .product-icon--image {
    border-radius: var(--border-radius-md);
}

.shop-categories-archive .product-icon--line svg {
    width: 48px;
    height: 48px;
}

.shop-categories-archive .product-card h3 {
    flex-grow: 0;
}

.shop-categories-archive .product-card p {
    flex-grow: 1;
    display: flex;
    align-items: flex-end;
}

@media (max-width: 1024px) {
    .result-grid {
        grid-template-columns: 1fr;
    }

    .module-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .container-content,
    .product-detail-grid {
        grid-template-columns: 1fr;
    }

    .process-grid::before {
        display: none;
    }

    .process-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .product-category-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Feature deep-dive: image above headline on mobile (like hero value prop) */
    .fp-feature-deep-dive .container-content {
        display: grid;
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .fp-feature-deep-dive .container-image {
        order: -1;
    }

    /* Product groups: single-column layout */
    .fp-product-group-gloves .product-detail-grid,
    .fp-product-group-shoes .product-detail-grid,
    .fp-product-group-clothing .product-detail-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
        align-items: stretch;
    }

    .fp-product-group-gloves .product-detail-text,
    .fp-product-group-shoes .product-detail-text,
    .fp-product-group-clothing .product-detail-text {
        min-width: 0;
    }

    .fp-product-group-gloves .detail-accordion,
    .fp-product-group-shoes .detail-accordion,
    .fp-product-group-clothing .detail-accordion {
        min-width: 0;
    }
}

@media (max-width: 768px) {
    .module-grid {
        grid-template-columns: 1fr;
    }

    .process-grid {
        grid-template-columns: 1fr;
    }

    .product-category-grid {
        grid-template-columns: 1fr;
    }

    .fp-product-categories__panel summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        cursor: pointer;
        font-weight: 600;
        color: var(--color-footer-bg);
        padding: 0.9rem 1rem;
        border: 1px solid var(--color-border);
        background: var(--color-background);
        margin-bottom: 1rem;
    }

    .fp-product-categories__panel summary::after {
        content: "+";
        font-size: 1.2rem;
        line-height: 1;
    }

    .fp-product-categories__panel[open] summary::after {
        content: "-";
    }

    /* Feature deep-dive: reduce image height on small screens */
    .fp-feature-deep-dive .container-image {
        min-height: 240px;
    }

    /* Product groups: tighter spacing on mobile */
    .fp-product-group-gloves .product-detail-grid,
    .fp-product-group-shoes .product-detail-grid,
    .fp-product-group-clothing .product-detail-grid {
        gap: 1.5rem;
    }

    .product-detail {
        padding: 3rem 0;
    }
}

/* ============================================
   CONVERSION CTA (mockup)
============================================ */
.fp-cta-conversion.cta {
    background: var(--color-primary);
    color: var(--color-text-light);
    text-align: center;
    padding: 5rem 2rem;
    position: relative;
    overflow: hidden;
}

.fp-cta-conversion.cta::before {
    content: "";
    position: absolute;
    top: 0;
    left: -50%;
    width: 200%;
    height: 100%;
    background: linear-gradient(90deg,
            transparent 0%,
            rgba(255, 255, 255, 0.1) 50%,
            transparent 100%);
    animation: cta-shimmer 3s infinite;
}

@keyframes cta-shimmer {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(100%);
    }
}

.fp-cta-conversion .cta-inner {
    position: relative;
    z-index: 1;
}

.fp-cta-conversion .cta__title {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    font-weight: 700;
    color: var(--color-text-light);
}

.fp-cta-conversion .cta__text {
    font-size: 1.2rem;
    margin-bottom: 2rem;
    opacity: 0.95;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.fp-cta-conversion .fp-btn--cta {
    background: var(--color-footer-bg);
    font-size: 1.1rem;
    padding: 1rem 2.5rem;
}

.fp-cta-conversion .fp-btn--cta:hover {
    background: #1a4166;
}

@media (prefers-reduced-motion: reduce) {
    .fp-cta-conversion.cta::before {
        animation: none;
        display: none;
    }
}

/* Sections common */
.fp-section {
    padding: 3.5rem 0;
}

/* Ensure anchored scrolls account for sticky header height */
.fp-single-page .fp-section {
    scroll-margin-top: var(--header-height, 130px);
}

.fp-section__title {
    font-size: 1.75rem;
    margin-bottom: 1rem;
    color: var(--color-primary);
}

.fp-btn {
    display: inline-block;
    padding: 0.875rem 1.75rem;
    border-radius: var(--border-radius-md);
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: all var(--transition-base);
    position: relative;
    overflow: hidden;
    cursor: pointer;
    border: none;
}

.fp-btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, 0.2),
            transparent);
    transition: left 0.5s ease;
}

.fp-btn:hover::before {
    left: 100%;
}

.fp-btn:hover {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
}

.fp-btn--primary {
    background: var(--color-primary);
    color: var(--color-text-light);
}

.fp-btn--primary:hover {
    opacity: 1;
    color: var(--color-text-light);
    background: #e07800;
}

.fp-btn--secondary {
    background: var(--color-footer-bg);
    color: var(--color-text-light);
}

.fp-btn--secondary:hover {
    opacity: 1;
    color: var(--color-text-light);
    background: #1a4166;
}

.fp-btn--outline {
    background: transparent;
    border: 2px solid var(--color-footer-bg);
    color: var(--color-footer-bg);
}

.fp-btn--outline:hover {
    opacity: 1;
    background: var(--color-footer-bg);
    color: var(--color-text-light);
}

.fp-btn--teal {
    background: #0891b2;
    color: var(--color-text-light);
}

.fp-btn--teal:hover {
    background: #0b7f9b;
    color: var(--color-text-light);
}

.cta-spaced {
    margin-top: 1.5rem;
}

/* Feature deep-dive / Container section */
.fp-feature-deep-dive.container-section {
    background: var(--color-background);
}

.container-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: center;
}

.container-text h2 {
    font-size: 2.25rem;
    color: var(--color-footer-bg);
    margin-bottom: 1.25rem;
    font-weight: 700;
}

.container-text>p {
    color: var(--color-text);
    margin-bottom: 1.25rem;
    font-size: 1.05rem;
    line-height: 1.7;
}

.container-features {
    list-style: none;
    margin: 2rem 0;
    padding: 0;
}

.container-features li {
    padding: 0.6rem 0;
    color: var(--color-text-dark);
    font-size: 1rem;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.container-features li::before {
    content: "→";
    color: var(--color-primary);
    font-weight: bold;
}

.container-image {
    background: var(--color-background-light);
    /* min-height: 400px; */
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text);
    font-size: 0.9rem;
    border-radius: var(--border-radius-xl);
}

.container-image img {
    width: 100%;
    height: auto;
    min-height: 300px;
    object-fit: cover;
    border-radius: var(--border-radius-xl);
}

.container-image-placeholder {
    opacity: 0.5;
}

/* Product detail sections (Handschuhe, Schuhe, Bekleidung) */
.product-detail {
    padding: clamp(4rem, 7vw, 6rem) 0;
    position: relative;
    overflow: hidden;
}

.product-detail-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4rem;
    align-items: start;
}

.product-detail-text .overline {
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 700;
    margin-bottom: 0.6rem;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.overline-icon {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    flex-shrink: 0;
}

.overline-icon svg {
    width: 16px;
    height: 16px;
    fill: currentColor;
}

.product-detail-text h2 {
    font-size: clamp(1.7rem, 3vw, 2.25rem);
    color: var(--color-footer-bg);
    margin-bottom: 0.85rem;
    font-weight: 700;
}

.product-detail-intro {
    max-width: 64ch;
}

.product-detail-text>p {
    color: var(--color-text);
    font-size: 1.02rem;
    line-height: 1.65;
    margin-bottom: 1.2rem;
}

.proof-note {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 700;
    font-size: 1.05rem;
    padding: 1rem 1.25rem;
    border-radius: var(--border-radius-xl);
    margin: 0.5rem 0 1.5rem;
}

.proof-note-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

.key-list {
    list-style: none;
    margin: 1rem 0 1.75rem;
    padding: 0;
    display: grid;
    gap: 0.75rem;
}

.key-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    color: var(--color-text-dark);
    font-size: 1rem;
    line-height: 1.5;
}

.key-list li::before {
    content: "✓";
    width: 24px;
    height: 24px;
    min-width: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text-light);
    font-size: 0.78rem;
    font-weight: 700;
    border-radius: 999px;
    margin-top: 0.05rem;
}

.detail-accordion {
    display: grid;
    gap: 1rem;
}

.detail-item {
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius-xl);
    background: var(--color-background);
    transition:
        border-color var(--transition-fast),
        box-shadow var(--transition-fast);
    overflow: hidden;
}

.detail-item[open] {
    box-shadow: var(--shadow-md);
}

.detail-item>summary {
    list-style: none;
    cursor: pointer;
    padding: 1.1rem 1.25rem;
    color: var(--color-footer-bg);
    font-weight: 700;
    font-size: 1.02rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.detail-item>summary::-webkit-details-marker {
    display: none;
}

.detail-item>summary::after {
    content: "+";
    font-size: 1.3rem;
    line-height: 1;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    flex-shrink: 0;
}

.detail-item[open]>summary::after {
    content: "−";
}

.detail-body {
    padding: 0 1.25rem 1.25rem;
}

.detail-body p {
    color: var(--color-text);
    font-size: 0.95rem;
    margin-bottom: 0.75rem;
    line-height: 1.55;
}

.woocommerce table.shop_attributes th {
    text-align: left;
    width: 180px !important;
}

.phase-cards {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.5rem;
}

.phase-cards.compact .phase-card {
    padding: 0.7rem 0.9rem;
}

.phase-cards.compact .phase-number {
    width: 28px;
    height: 28px;
    min-width: 28px;
    font-size: 0.78rem;
}

.phase-cards.compact .phase-card h4 {
    font-size: 0.9rem;
}

.phase-cards.compact .phase-card p {
    font-size: 0.82rem;
}

.phase-card {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    padding: 0.85rem 1rem;
    border-left: 3px solid var(--color-border);
    transition: all var(--transition-base);
    border-radius: 0 var(--border-radius-md) var(--border-radius-md) 0;
}

.phase-number {
    width: 30px;
    height: 30px;
    min-width: 30px;
    background: var(--color-footer-bg);
    color: var(--color-text-light);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.82rem;
    border-radius: 8px;
}

.phase-card h4 {
    color: var(--color-footer-bg);
    font-size: 0.95rem;
    margin-bottom: 0.1rem;
}

.phase-card p {
    color: var(--color-text);
    font-size: 0.85rem;
    margin: 0;
}

.mini-list {
    list-style: none;
    display: grid;
    gap: 0.45rem;
    margin: 0.2rem 0 0;
    padding: 0;
}

.mini-list li {
    color: var(--color-text-dark);
    font-size: 0.9rem;
    line-height: 1.45;
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
}

.mini-list li::before {
    content: "•";
    font-weight: 700;
}

.tag-pill-list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin: 0.6rem 0 0;
    padding: 0;
}

.tag-pill-list li {
    border: 1px solid var(--color-border);
    color: var(--color-footer-bg);
    font-size: 0.84rem;
    font-weight: 600;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    background: var(--color-background);
    transition: all var(--transition-fast);
}

.tag-pill-list li:hover {
    background: var(--color-footer-bg);
    color: var(--color-text-light);
    border-color: var(--color-footer-bg);
}

/* Gloves section – orange theme */
.gloves-section {
    background: linear-gradient(168deg, var(--color-background) 0%, #fef7ed 100%);
}

.gloves-section .overline {
    color: var(--color-primary);
}

.gloves-section .overline-icon {
    background: #fef7ed;
    color: var(--color-primary);
}

.gloves-section .proof-note {
    background: linear-gradient(135deg,
            rgba(254, 148, 0, 0.12),
            rgba(254, 148, 0, 0.06));
    color: var(--color-footer-bg);
    border-left: 4px solid var(--color-primary);
}

.gloves-section .proof-note-icon {
    background: var(--color-primary);
    color: var(--color-text-light);
}

.gloves-section .key-list li::before {
    background: var(--color-primary);
}

.gloves-section .detail-item[open] {
    border-color: rgba(254, 148, 0, 0.5);
}

.gloves-section .detail-item>summary::after {
    color: var(--color-primary);
    background: #fef7ed;
}

.gloves-section .phase-card:hover {
    border-left-color: var(--color-primary);
    background: rgba(254, 148, 0, 0.04);
}

.gloves-section .mini-list li::before {
    color: var(--color-primary);
}

/* Shoes section – teal theme */
.shoes-section {
    background: linear-gradient(168deg,
            var(--color-background-light) 0%,
            #ecfeff 100%);
}

.shoes-section .overline {
    color: #0891b2;
}

.shoes-section .overline-icon {
    background: #ecfeff;
    color: #0891b2;
}

.shoes-section .proof-note {
    background: linear-gradient(135deg,
            rgba(8, 145, 178, 0.14),
            rgba(8, 145, 178, 0.06));
    color: #0a5162;
    border-left: 4px solid #0891b2;
}

.shoes-section .proof-note-icon {
    background: #0891b2;
    color: var(--color-text-light);
}

.shoes-section .key-list li::before {
    background: #0891b2;
}

.shoes-section .phase-number {
    background: #0891b2;
}

.shoes-section .phase-card:hover {
    border-left-color: #0891b2;
    background: rgba(8, 145, 178, 0.04);
}

.shoes-section .detail-item[open] {
    border-color: rgba(8, 145, 178, 0.5);
}

.shoes-section .detail-item>summary::after {
    color: #0891b2;
    background: #ecfeff;
}

.shoes-section .mini-list li::before {
    color: #0891b2;
}

.shoes-section .tag-pill-list li:hover {
    background: #0891b2;
    color: var(--color-text-light);
    border-color: #0891b2;
}

/* Clothing section – navy theme */
.clothing-section {
    background: linear-gradient(168deg, var(--color-background) 0%, #eef2f7 100%);
}

.clothing-section .overline {
    color: var(--color-footer-bg);
}

.clothing-section .overline-icon {
    background: #eef2f7;
    color: var(--color-footer-bg);
}

.clothing-section .proof-note {
    background: linear-gradient(135deg,
            rgba(16, 47, 78, 0.08),
            rgba(16, 47, 78, 0.03));
    color: var(--color-footer-bg);
    border-left: 4px solid var(--color-footer-bg);
}

.clothing-section .proof-note-icon {
    background: var(--color-footer-bg);
    color: var(--color-text-light);
}

.clothing-section .key-list li::before {
    background: var(--color-footer-bg);
}

.clothing-section .detail-item[open] {
    border-color: rgba(16, 47, 78, 0.35);
}

.clothing-section .detail-item>summary::after {
    color: var(--color-footer-bg);
    background: #eef2f7;
}

.clothing-section .phase-card:hover {
    border-left-color: var(--color-footer-bg);
    background: rgba(16, 47, 78, 0.03);
}

.clothing-section .mini-list li::before {
    color: var(--color-footer-bg);
}

/* ==========================================================================
   14) About / Contact Pages
   ========================================================================== */
/* Über uns / About section (mockup) */
.fp-about .about-content {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 5rem;
    align-items: center;
}

.fp-about .about-text__title {
    font-size: 2.25rem;
    color: var(--color-footer-bg);
    margin-bottom: 1.25rem;
    font-weight: 700;
}

.fp-about .about-text p {
    color: var(--color-text);
    margin-bottom: 1.25rem;
    font-size: 1.05rem;
    line-height: 1.7;
}

.fp-about .about-text .fp-btn {
    margin-top: 0.5rem;
}

.fp-about .about-stats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.fp-about .stat-box {
    background: var(--color-background-light);
    padding: 2rem 1.5rem;
    text-align: center;
    transition: all var(--transition-base);
}

.fp-about .stat-box:hover {
    background: var(--color-footer-bg);
}

.fp-about .stat-box:hover strong,
.fp-about .stat-box:hover span {
    color: var(--color-text-light);
}

.fp-about .stat-box strong {
    display: block;
    font-size: 2.5rem;
    color: var(--color-footer-bg);
    font-weight: 700;
    transition: color var(--transition-base);
}

.fp-about .stat-box span {
    color: var(--color-text);
    font-size: 0.9rem;
    transition: color var(--transition-base);
}

@media (max-width: 1024px) {
    .fp-about .about-content {
        grid-template-columns: 1fr;
    }
}

/* PSA Beratungskonzept */
.fp-psa-beratung {
    background: var(--color-background-light);
}

.fp-psa-beratung__headline {
    margin-bottom: 0.75rem;
}

.fp-psa-beratung__tagline {
    font-size: 1.125rem;
    max-width: 720px;
    margin-bottom: 1.5rem;
    color: var(--color-text);
}

.fp-psa-beratung__subline {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    color: var(--color-text-dark);
}

.fp-psa-beratung__cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
    margin-bottom: 2rem;
}

.fp-psa-beratung__card {
    background: var(--color-background);
    padding: 1.5rem;
    border-radius: var(--border-radius-lg);
    box-shadow: var(--shadow-sm);
    text-align: center;
    border-left: 4px solid var(--color-primary);
    transition: all var(--transition-base);
    position: relative;
    overflow: hidden;
}

.fp-psa-beratung__card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: rgba(254, 148, 0, 0.03);
    transition: width var(--transition-base);
}

.fp-psa-beratung__card:hover {
    box-shadow: var(--shadow-hover);
    transform: translateY(-5px);
}

.fp-psa-beratung__card:hover::before {
    width: 100%;
}

.fp-psa-beratung__card-value,
.fp-psa-beratung__card-text {
    position: relative;
    z-index: 1;
}

.fp-psa-beratung__card-value {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-primary);
    margin-bottom: 0.5rem;
}

.fp-psa-beratung__card-text {
    font-size: 0.9375rem;
    margin: 0;
    color: var(--color-text);
}

.fp-psa-beratung__cta {
    margin: 0;
}

/* PSA Versorgungskonzept */
.fp-psa-versorgung__tagline {
    font-size: 1.25rem;
    margin-bottom: 0.75rem;
    color: var(--color-text-dark);
}

.fp-psa-versorgung__desc {
    max-width: 720px;
    margin-bottom: 1.5rem;
    color: var(--color-text);
}

/* Who we are */
.fp-who-we-are__placeholder {
    padding: 2rem;
    background: var(--color-background-light);
    border-radius: var(--border-radius-lg);
    color: var(--color-text);
}

/* Unser Ansatz */
.fp-unser-ansatz {
    background: var(--color-background-light);
}

.fp-unser-ansatz__tagline {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--color-text-dark);
    margin: 0;
}

/* Contact */
.fp-contact__intro {
    margin-bottom: 1.5rem;
    color: var(--color-text);
}

/* ============================================
   KONTAKT PAGE (page-kontakt.php)
============================================ */
.contact-page {
    padding: clamp(3rem, 6vw, 5rem) 0;
}

.contact-page__header {
    margin-bottom: 2.5rem;
}

.contact-page__title {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    color: var(--color-footer-bg);
    margin-bottom: 0.75rem;
}

.contact-page__intro {
    font-size: 1.1rem;
    color: var(--color-text);
    max-width: 600px;
    margin: 0 auto;
}

.contact-page__grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 3rem;
    align-items: start;
}

.contact-page__form {
    min-width: 0;
}

.contact-page__form-hint {
    color: var(--color-text);
    font-size: 0.95rem;
    margin-bottom: 1rem;
}

.contact-page__notice {
    padding: 0.75rem 1rem;
    border-radius: var(--border-radius-md);
    font-size: 0.95rem;
    margin-bottom: 1rem;
}

.contact-page__notice--success {
    background: #e6f6ec;
    border: 1px solid #3aa768;
    color: #1f6b41;
}

.contact-page__notice--error {
    background: #ffecec;
    border: 1px solid #e05252;
    color: #8c2323;
}

.contact-page__form-fields {
    display: grid;
    gap: 1rem;
    margin-top: 0.5rem;
}

.contact-page__form-fields .contact-field label {
    display: flex;
    font-weight: 600;
    font-size: 0.9rem;
    margin-bottom: 0.35rem;
}

.contact-page__form-fields .contact-field input,
.contact-page__form-fields .contact-field textarea, 
.contact-page__form-fields .contact-field select {
    width: 100%;
    padding: 0.6rem 0.75rem;
    border-radius: var(--border-radius-md);
    border: 1px solid var(--color-border);
    font-size: 0.95rem;
    font-family: inherit;
}

.contact-page__form-fields .contact-field textarea {
    resize: vertical;
}

/* Registration page */
.register-page {
    padding: clamp(3rem, 6vw, 5rem) 0;
}

.register-page__header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.register-page__title {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    color: var(--color-footer-bg);
    margin-bottom: 0.75rem;
}

.register-page__intro {
    font-size: 1.05rem;
    color: var(--color-text);
    max-width: 640px;
    margin: 0 auto;
}

.register-page__grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 3rem;
    align-items: flex-start;
}

.register-page__info-card {
    background: var(--color-background-light);
    border-radius: var(--border-radius-xl);
    padding: 2rem;
    border: 1px solid var(--color-border);
}

.register-page__info-card h3 {
    font-size: 1.1rem;
    margin-bottom: 0.5rem;
    color: var(--color-footer-bg);
}

.register-page__info-card p {
    margin-bottom: 0.75rem;
    color: var(--color-text);
}

.contact-field--terms .register-terms-label {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.9rem;
}

.contact-field--terms input[type="checkbox"] {
    margin-top: 0.2rem;
    width: 1.2rem;
}

@media (max-width: 768px) {
    .register-page__grid {
        grid-template-columns: 1fr;
    }
}

/* Downloads page */
.downloads-page {
    padding: clamp(3rem, 6vw, 5rem) 0;
}

.downloads-page__header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.downloads-page__title {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    color: var(--color-footer-bg);
    margin-bottom: 0.75rem;
}

.downloads-page__intro {
    font-size: 1.05rem;
    color: var(--color-text);
    max-width: 640px;
    margin: 0 auto;
}

.downloads-section {
    margin-bottom: 2.5rem;
}

.downloads-section__title {
    font-size: 1.2rem;
    margin-bottom: 1rem;
    color: var(--color-footer-bg);
}

.downloads-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
}

.downloads-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.download-card {
    background: var(--color-background-light);
    border-radius: var(--border-radius-lg);
    padding: 1.5rem;
    border: 1px solid var(--color-border);
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.download-card__title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-footer-bg);
    margin: 0;
}

.download-card__meta {
    font-size: 0.9rem;
    color: var(--color-text);
    margin: 0;
}

.download-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0.75rem;
    align-items: center;
    margin: 0;
}

@media (max-width: 992px) {
    .downloads-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .downloads-grid {
        grid-template-columns: 1fr;
    }
}

/* Jobs / Offene Stellen page */
.jobs-page {
    padding: clamp(3rem, 6vw, 5rem) 0;
}

.jobs-page__header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.jobs-page__title {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    color: var(--color-footer-bg);
    margin-bottom: 0.75rem;
}

.jobs-page__intro {
    font-size: 1.05rem;
    color: var(--color-text);
    max-width: 640px;
    margin: 0 auto;
}

.jobs-list {
    display: grid;
    gap: 2rem;
}

.jobs-list__item {
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--color-border);
}

.jobs-list__title {
    font-size: 1.15rem;
    margin-bottom: 0.25rem;
}

.jobs-list__title a {
    color: var(--color-footer-bg);
    text-decoration: none;
}

.jobs-list__title a:hover {
    color: var(--color-primary);
}

.jobs-list__meta {
    font-size: 0.85rem;
    color: var(--color-text);
    margin-bottom: 0.75rem;
}

.jobs-list__excerpt {
    font-size: 0.95rem;
    color: var(--color-text);
    margin-bottom: 0.75rem;
}

.job-single__content {
    font-size: 0.95rem;
    color: var(--color-text);
    max-width: 760px;
    margin: 0 auto 1.5rem;
}

.job-single__footer {
    max-width: 760px;
    margin: 0 auto;
}

.job-single__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

/* Application page */
.application-page {
    padding: clamp(3rem, 6vw, 5rem) 0;
}

.application-page__header {
    text-align: center;
    margin-bottom: 2.5rem;
}

.application-page__title {
    font-size: clamp(1.75rem, 3vw, 2.25rem);
    color: var(--color-footer-bg);
    margin-bottom: 0.75rem;
}

.application-page__intro {
    font-size: 1.05rem;
    color: var(--color-text);
    max-width: 640px;
    margin: 0 auto 0.75rem;
}

.application-page__job-context {
    font-size: 0.95rem;
    color: var(--color-text-dark);
    margin: 0 auto;
}

.application-page__grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 3rem;
    align-items: flex-start;
}

.application-page__info-card {
    background: var(--color-background-light);
    border-radius: var(--border-radius-xl);
    padding: 2rem;
    border: 1px solid var(--color-border);
}

.application-page__info-card h3 {
    font-size: 1.1rem;
    margin-bottom: 0.5rem;
    color: var(--color-footer-bg);
}

.application-page__info-card p,
.application-page__info-card li {
    font-size: 0.95rem;
    color: var(--color-text);
}

.field-hint {
    font-size: 0.8rem;
    color: var(--color-text);
    margin-top: 0.25rem;
}

@media (max-width: 768px) {
    .application-page__grid {
        grid-template-columns: 1fr;
    }
}

.contact-info-card {
    background: var(--color-background-light);
    border-radius: var(--border-radius-xl);
    padding: 2rem;
    border: 1px solid var(--color-border);
}

.contact-info-card__title {
    font-size: 1.1rem;
    color: var(--color-footer-bg);
    margin-bottom: 1.25rem;
}

.contact-info-item {
    margin-bottom: 1rem;
}

.contact-info-item:last-child {
    margin-bottom: 0;
}

.contact-info-item__label {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--color-text);
    margin-bottom: 0.35rem;
}

.contact-info-item address,
.contact-info-item a,
.contact-info-item span {
    font-size: 1rem;
    color: var(--color-text-dark);
    line-height: 1.6;
}

.contact-info-item a:hover {
    color: var(--color-primary);
}

@media (max-width: 1024px) {
    .contact-page__grid {
        grid-template-columns: 1fr;
    }
}

.cart-layout {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}

/* Left: items table */
.cart-layout__items {
    flex: 1 1 60%;
    min-width: 0;
}

/* Right: totals column */
.cart-layout__totals {
    flex: 0 0 320px;
    /* adjust width as desired */
}

/* Mobile: stack columns */
@media (max-width: 768px) {
    .cart-layout {
        flex-direction: column;
    }

    .cart-layout__items,
    .cart-layout__totals {
        flex: 1 1 100%;
    }
}

/* ==========================================================================
   Mobile Filter Sidebar
   ========================================================================== */

/* Toggle button and close button – hidden on desktop */
.filter-mobile-toggle,
.filter-sidebar-close {
    display: none;
}

/* Backdrop overlay – hidden on desktop */
.filter-sidebar-overlay {
    display: none;
}

@media (max-width: 749px) {
    /* Fixed "Filter" pill button at the bottom center */
    .filter-mobile-toggle {
        display: flex;
        align-items: center;
        gap: 8px;
        position: fixed;
        bottom: 20px;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: fit-content;
        background: var(--color-primary);
        color: #fff;
        border: none;
        border-radius: 24px;
        padding: 12px 24px;
        font-size: 15px;
        font-weight: 600;
        font-family: inherit;
        cursor: pointer;
        z-index: 990;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
        white-space: nowrap;
        transition: background 0.2s;
    }

    .filter-mobile-toggle:hover,
    .filter-mobile-toggle:focus {
        background: #e08500;
        outline: none;
    }

    /* Backdrop overlay – always in DOM on mobile, fades in when open */
    .filter-sidebar-overlay {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.5);
        z-index: 1000;
        cursor: pointer;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
    }

    body.filter-sidebar-open .filter-sidebar-overlay {
        opacity: 1;
        pointer-events: auto;
    }

    /* Filter sidebar as a slide-in drawer from the left */
    .filterLeft_block {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 300px !important;
        max-width: 85vw !important;
        height: 100vh !important;
        overflow-y: auto !important;
        background: var(--color-background) !important;
        z-index: 1001 !important;
        transform: translateX(-100%) !important;
        transition: transform 0.3s ease !important;
        margin: 0 !important;
        padding-bottom: 24px !important;
    }

    body.filter-sidebar-open .filterLeft_block {
        transform: translateX(0) !important;
    }

    /* Prevent body scroll when the sidebar is open */
    body.filter-sidebar-open {
        overflow: hidden;
    }

    /* Close button at the top-right of the sidebar */
    .filter-sidebar-close {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        width: 100%;
        padding: 14px 16px;
        background: none;
        border: none;
        cursor: pointer;
        color: var(--color-text-dark);
        box-sizing: border-box;
    }

    .filter-sidebar-close:hover {
        color: var(--color-primary);
    }
}

