.top-bar {
    background-color: var(--color-primary-hover);
}
.top-bar .top-info {
    list-style: none;
    padding:10px 0;
    margin: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #FFF;
}
.top-bar .top-info li , .top-bar .top-info li a{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    color: #FFF;
    font-size:14px;
}

.top-bar .top-info li.mobile {
    display:none;
}
.main-header {
    background-color: var(--color-dark-background);
    position: relative;
    z-index: 10;
}
.main-header .header-inner {
    padding: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.main-header .header-inner .header-nav ul{
    list-style: none;
    display: flex;
    margin: 0;
    padding:0;
}
.main-menu li {
    color: var(--color-grey-text);
    font-weight: 200;
    font-size: 14px;
}
.main-menu li.current-menu-item  {
    font-weight: 300;
}
.main-menu li a {
    color: var(--color-grey-text);
    display: inline-flex;
    gap:10px;
    align-items: center;
}
.main-menu li a[href="/sale/"] {
    font-weight: 600;
    color: var(--color-primary);
}
.main-menu li:not(:last-child)::after {
    content: '|';
    color: #666;
    margin-left: 15px;
    margin-right: 15px;
}

.main-menu li a {
    text-decoration: none;
    color: #d0d0d0;
    transition: color 0.3s ease;
}
.main-menu li svg {
    width: 16px;
    height:16px;
}
.main-menu li.active > a,
.main-menu li a:hover {
    color: var(--color-primary); /* match the green highlight */
}
.header-separator {
    border-bottom:1px solid var(--color-separator);
    display: block;
    width: 100%;
}
.search-cart-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    width:80px;
}
.search-cart-wrap .search-trigger{
    cursor: pointer;
    width: 22px;
    height:22px;
}
.cart-trigger {
    width: 19px;
    height:19px;
    cursor: pointer;
}
.search-cart-wrap .cart-wrap {
    position: relative;
    display: flex;
    align-items: center;
    gap:2px;
}
.search-cart-wrap .cart-wrap .header-cart-total {
    background-color: var(--color-primary-hover);
    color: #FFF;
    font-size: 11px;
    width: 20px;
    height:20px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.header-inner.bottom .main-menu li:not(:last-child)::after {
    display: none;
}
.header-inner.bottom .main-menu {
    display: flex;
    justify-content: space-around;
    width: 100%;

}
.header-inner.bottom  .header-nav {
    width: 100%;
    padding: 0 100px;
}
.header-inner.bottom .main-menu li img {
    height: 60px;
    width: auto;
}
.header-inner.bottom .main-menu li {
    font-weight: 400;
    font-size: 16px;
    padding: 15px 0;
}
.main-header .header-inner.bottom {
    padding-top:0;
    padding-bottom:0;
}
.main-header .header-inner.bottom .sub-menu {
    position: absolute;
    top: 100%;
    background: var(--color-darker-background);
    width: 100vw;
    left: 0;
    padding-left: calc((100vw - 1440px) / 2);
    padding-right: calc((100vw - 1440px) / 2);
    z-index: 10;
    flex-wrap: wrap;
}
.header-inner.bottom .sub-menu li {
    width:calc(100% / 5);
    position: relative;
    transition: all 0.3s ease;
    padding:0;
}
.header-inner.bottom .sub-menu li:hover, .header-inner.bottom .sub-menu li.active {
    background-color: var(--color-primary);
}
.header-inner.bottom .sub-menu li:hover a , .header-inner.bottom .sub-menu li.active a {
    color: #FFF;
}
.header-inner.bottom .sub-menu li a{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:20px;
    padding: 48px 25px;
}
.header-inner.bottom .sub-menu li a span{
    font-size: 16px;
    font-weight: 500;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
}
.header-inner.bottom .sub-menu li a:after {
    content: '';
    height: 100px;
    right: 0;
    width: 1px;
    background: #FFF;
    display: block;
    position: absolute;
}
.main-header .header-inner.bottom .header-nav .sub-menu {
    display:none;
}
.main-header .header-inner.bottom .main-menu li:hover .sub-menu {
    display:flex;
}
.search-wrap {
    position: absolute;
    top:100%;
    width: 100%;
    height:100vh;
    background-color: rgba(0, 0, 0, 0.4);
    left:0;
    display: none;
    border-top:1px solid var(--color-separator);
}
.search-wrap .search{
    background-color: var(--color-darker-background);
    width: 100%;
    display: flex;
    justify-content: center;
    padding:15px 0;
}
.search-wrap .search .search-input-wrap {
    width:100%;
    position: relative;
}
.search-wrap .search .search-input-wrap img {
    position: absolute;
    right: 15px;
    cursor: pointer;
    width: 30px;
    height: 30px;
    padding: 5px;
    top: -4px;
}
.search-wrap .search .close-search {
    position: absolute;
    right: 45px;
    top: 19px;
    cursor: pointer;
    z-index: 2;
}
.search-wrap .search input {
    color: var(--color-grey-text);
    padding: 0;
    border: none;
    font-size: 18px;
    border-bottom: 2px solid var(--color-separator);
    background-color: transparent;
    width: 100%;
}
.main-header .header-inner .logo {
    display: flex;
    align-items: center;
    gap:30px;
}
.main-header .header-inner .logo .mobile-menu-trigger {
    width:50px;
    height:50px;
    cursor: pointer;
}
.main-header .header-inner:not(.bottom) .search-cart-wrap {
    width:auto;
}
.main-header .header-inner:not(.bottom) .search-cart-wrap .search-trigger {
    cursor: pointer;
    width: 45px;
    height: 45px;
    padding: 10px;
    border-left: 1px solid var(--color-separator);
    border-right: 1px solid var(--color-separator);
}
.main-header .header-inner:not(.bottom) .search-cart-wrap .cart-wrap {
    padding-right: 15px;
}
.main-header .header-inner:not(.bottom) .search-cart-wrap .cart-trigger {
    width: 22px;
    height: 22px;
}
.main-header .header-inner:not(.bottom) .search-cart-wrap .cart-wrap span{
    position: absolute;
    top: -12px;
    right: -4px;
}

.mobile-menu-wrap {
    position: fixed;
    top: 0;
    bottom: 0;
    left: -99999rem;
    right: 99999rem;
    transition: opacity 0.25s ease-in, left 0s 0.25s, right 0s 0.25s;
    z-index: 100000;
}
.mobile-menu-wrap.active {
    display: block;
    left: 0;
    opacity: 1;
    right: 0;
    transition: opacity 0.25s ease-out;
}
.mobile-menu-wrap .drawer-overlay {
    display:none;
    background-color: rgba(0, 0, 0, 0.4);
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
}
.mobile-menu-wrap.active .drawer-overlay {
    display: block;
    opacity: 1;
    cursor: pointer;
}
.mobile-menu-wrap .mobile-menu{
    width: 100%;
    max-width: 90%;

    background: var(--color-dark-background);
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    right: auto;
    left: 0;
    transition: transform 0.3s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.25s cubic-bezier(0.77, 0.2, 0.05, 1), -webkit-transform 0.3s cubic-bezier(0.77, 0.2, 0.05, 1)
}
.mobile-menu-wrap.active .mobile-menu{
    opacity: 1;
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}
.mobile-menu-wrap .mobile-menu-close {
    position: absolute;
    right: -30px;
    top: calc(50% - 47px);
    width: 30px;
    height: 94px;
    border-radius: 0 30px 30px 0;
    padding: 0 !important;
    background: var(--color-dark-background);
    display: flex;
    align-items: center;
    justify-content: center;
}
.mobile-menu-content {
    overflow-y: scroll;
    max-height: 100vh;
    padding:25px;
}
.mobile-menu .top-contacts  {
    padding-bottom:20px;
    margin-bottom:50px;
    border-bottom: 1px solid var(--color-separator);
    display: flex;
    flex-direction: column;
    gap:15px;
}
.mobile-menu .top-contacts .top-header {
    display: flex;
    align-items: center;
    gap:10px;
    color: var(--color-grey-text);
    font-size:14px;
}
.mobile-menu .mobile-menu-content .main-menu{
    list-style: none;
    padding: 0;
    margin:0;
}
.mobile-menu .main-menu li::after {
    display: none;
}
.mobile-menu .main-menu li {
    width:100%;
    padding:20px 0;
    border-bottom:1px solid var(--color-separator);
    color: #FFF;
    font-weight: 400;
    font-size: 16px;
}
.mobile-menu .main-menu li a {
    color: #FFF;
}
.mobile-menu .main-menu .sub-menu {
    margin:0;
    padding:0;
    list-style: none;
    border-top:1px solid var(--color-separator);
    margin-top:20px;
}
.mobile-menu .main-menu .sub-menu li img {
    width: 120px;
}
.mobile-menu .main-menu > li {
    position: relative;
}
.mobile-menu .main-menu > li > a {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.mobile-menu .sub-toggle {
    position: absolute;
    right: 0;
    padding: 20px 15px;
    border-left: 1px solid var(--color-separator);
    display: flex;
    align-items: center;
    transition: all 0.2s ease
}
.mobile-menu .has-children.show .sub-toggle svg {
    transform: rotate(180deg);
}
.mobile-menu .has-children.show {
    border-bottom:none;
}
.mobile-menu .main-menu .sub-menu li a {
    gap:20px;
}

.mobile-menu .has-children .sub-menu {
    display:none;
}
.mobile-menu .has-children.show .sub-menu {
    display:block;
}
.mobile-menu  .header-nav {
    margin-top:50px;
}
.mobile-menu  .header-nav li a {
    color: var(--color-grey-text);
}
.mobile-menu  .header-nav li:nth-last-child(1), .mobile-menu  .header-nav li:nth-last-child(2){
    display:none;
}
.main-header .header-inner .logo a img {
    height: 61px;
    width:200px;
}
@media(max-width:1600px) {
    .search-wrap .search .close-search {
        right: 15px;
    }
    .search-wrap .search .search-input-wrap {
        padding-right:60px;
    }
    .search-wrap .search .search-input-wrap img {
        right: 60px;
    }
}
@media(max-width:1400px) {
    .header-inner.bottom .header-nav {
        padding:0;
    }
}
@media(max-width:1200px) {

    .main-header .header-inner .logo a img {
        height:41px;
        width: auto;
    }
    .top-bar .top-info li {
        display:none;
    }
    .top-bar .top-info li.mobile {
        display:flex;
    }
    .top-bar .top-info {
        justify-content: center;
        gap:30px;
    }
}

@media(max-width:375px) {
    .mobile-menu .main-menu .sub-menu li img {
        width: 90px;
    }
    .main-header .header-inner .logo .mobile-menu-trigger {
        width: 40px;
        height: 40px;
    }
    .main-header .header-inner .logo {
        gap:10px;
    }
    .top-bar .top-info {
        justify-content: space-between;
        gap:0px;
    }
    .top-bar .top-info li , .top-bar .top-info li a{
        font-size: 13px;
    }
}
/* ===== Off-canvas mini cart drawer ===== */
.cart-drawer {
    position: fixed;
    top: 0;
    right: 0;
    height: 100dvh;
    width: min(92vw, 460px);
    background: #fff;
    box-shadow: -8px 0 24px rgba(0,0,0,.18);
    transform: translateX(100%);
    transition: transform .35s ease-in-out;
    z-index: 10020;
    display: flex;
    flex-direction: column;
}
.cart-drawer.is-open {
    transform: translateX(0);
}
.cart-drawer__inner {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    height: 100%;
    padding: 9px 24px 32px;
}
.cart-drawer__inner .attachment-woocommerce_thumbnail {
    border-radius: 10px;
    margin: auto !important;
    height: 230px;
    object-fit: cover;
}
.cart-drawer__close {
    position: absolute;
    top: 10px;
    left: 15px;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    color: #333;
    outline:none!important;
}
.cart-title {
    text-align: center;
    padding-top: 15px;
    padding-bottom:15px;
}
.cart-drawer__inner .product-title {
    border-top: 1px solid #E0E0E0;
    margin-top:20px;
    padding-top:20px;
    font-size: 20px;
    color: var(--color-text);
    display: block;
    font-weight: 500;
}
.cart-drawer__inner .product_featured-specifications .specifications {
    column-gap: 0;
}
body .cart-drawer__inner .product_featured-specifications .specifications p{
    font-size: 12px;
    padding-top:0;
}
body.cart-drawer__inner .product_featured-specifications .specifications img {
    height: 45px;
}
.cart-drawer__inner .product-totals {
    display: flex;
    justify-content: space-between;
    margin-bottom:15px;
}
.cart-drawer__inner .mini_cart_item {
    margin-bottom:40px;
}
.cart-drawer__inner .woocommerce-mini-cart__buttons {
    padding-bottom:20px;
}
.cart-drawer__inner .woocommerce-mini-cart__buttons a:not(.checkout)::before {
    content: '';
    width: 7px;
    height: 12px;
    display: block;
    background-image: url(/wp-content/themes/weltausholz/assets/images/black-chevron-left.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.cart-drawer__inner .woocommerce-mini-cart__buttons a:not(.checkout) {
    font-weight: 500;
    color: #333333;
    display: flex
;
    justify-content: center;
    gap: 10px;
    align-items: center;
}
.cart-drawer__inner .woocommerce-mini-cart__buttons a:not(.checkout):hover {
    color:var(--color-primary-hover);
}
.cart-drawer__inner .woocommerce-mini-cart__buttons a.checkout {
    width: 221px;
    margin: auto;
    border-radius: 10px;
    font-weight: 600;
    padding: 15px 0;
    color: #F5F5F5;
    background: var(--color-primary);
    transition: all 0.2s ease;
    display: flex
;
    justify-content: center;
    margin-top: 15px;
}
.cart-drawer__inner .woocommerce-mini-cart__buttons a.checkout:hover {
    background: var(--color-primary-hover);

}
.cart-drawer__inner .mini-cart-totals-wrap {
    position: sticky;
    bottom: -32px;
    background: #fff;
    z-index: 1;
    padding-top: 0px;
}
.cart-drawer__inner .woocommerce-mini-cart__total {
    border-top: 1px solid #E0E0E0;
    border-bottom: 1px solid #E0E0E0;
    padding-bottom: 20px;
    padding-top: 20px;
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}
.woocommerce-mini-cart__total strong,.woocommerce-mini-cart__total span {
    font-weight: 500;
}

.product_featured-specifications {
    display: flex;
    column-gap: 10px;
    justify-content: space-between;
    border-top: 1px solid #E0E0E0;
    padding-top: 20px;
    margin-top: 20px;
    padding-bottom: 20px;
}

.product_featured-specifications .specifications {
    display: flex;
    align-items: center;
    column-gap: 5px;
}

.product_featured-specifications .specifications img {
    height: 55px;
    width: auto;
}

 .product_featured-specifications .specifications p {
    font-size: 16px;
    font-weight: 500;
    min-width: 20px;
    margin: 0;
    line-break: anywhere;
}
.cart-drawer__inner .remove-option{
    display:none;
}
.cart-drawer__inner .remove_from_cart_button {
    position: static;
    font-size: 14px;
    font-weight: normal;
    height: auto;
    width: fit-content;
    width: -moz-fit-content;
    display: flex;
    line-height: 1.3;
    justify-content: center;
    align-items: center;
    margin: auto;
    margin-top: 20px;
    color: var(--color-grey-text) !important;
    border-radius: 10px;
    border: 2px solid #DDDDDD;
    padding: 15px 10px;
    gap: 20px;
    background: transparent !important;
}
.cart-drawer__inner .remove_from_cart_button img {
    width: 12px;
    height: 12px;
}
.cart-drawer__inner .option {
    border-top: 1px solid #E0E0E0;
    padding-top: 20px;
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    gap:15px;
    font-size: 12px;
}
.cart-drawer__inner .option p {
    margin:0;
}
.cart-drawer__inner .option span {
    font-weight: 600;
}
.cart-drawer__inner .product-base-price {
    color: var(--color-primary);
    font-weight: 600;
    font-size: 12px;
    display: flex;
    justify-content: space-between;
}
.cart-drawer__inner .product-base-price p {
    margin:0;
}
.cart-drawer__inner .product-totals p {
    margin:0;
    color: var(--color-grey-text);
    font-weight: 500;
    font-size: 12px;
}
.cart-drawer__inner .product-title .sku {
    font-size: 16px;
    color: var(--color-grey-text);
    display: block;

}
.cart-drawer-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.4);
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease-in-out;
    z-index: 10010;
}
.cart-drawer-overlay.is-visible {
    opacity: 1;
    pointer-events: auto;
}

/* Prevent body scroll when drawer open */
body.cart-drawer-open {
    overflow: hidden;
}

/* Optional adjustments for Woo mini cart inside drawer */
.cart-drawer .widget_shopping_cart {
    height: 100%;
}
.cart-drawer .woocommerce-mini-cart {
    margin: 0;
    padding: 0;
    list-style: none;
}