/* Fix monospace short description */
.product-short-desc pre,
.product-short-desc code {
    font-family: inherit !important;
    font-size: inherit !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
    white-space: normal !important;
    border: none !important;
}

/* Submenu fix */
#header .main-menu .top-menu > li {
    position: relative !important;
}
#header .main-menu .sub-menu {
    width: auto !important;
    min-width: 160px !important;
    max-width: 250px !important;
    left: 0 !important;
    right: auto !important;
}

/* Submenu width fix */
#_desktop_top_menu .top-menu > li {
    position: relative !important;
}
#_desktop_top_menu .sub-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: 300px !important;
    z-index: 999 !important;
}

/* Submenu popover fix */
#_desktop_top_menu .top-menu > li {
    position: relative !important;
    float: left !important;
}
#_desktop_top_menu .top-menu > li > .popover.sub-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    width: max-content !important;
    min-width: 150px !important;
    max-width: 280px !important;
    transform: none !important;
    margin: 0 !important;
}

/* Submenu width fix v3 */
.js-sub-menu {
    width: auto !important;
    min-width: 150px !important;
    max-width: 250px !important;
    right: auto !important;
    left: 0 !important;
}

/* Submenu width fix v4 - override theme.css */
#_desktop_top_menu .top-menu .sub-menu.js-sub-menu {
    width: auto !important;
    min-width: 160px !important;
    max-width: 280px !important;
}

/* Submenu fix v5 - position relative on li */
#_desktop_top_menu > div > ul > li {
    position: relative !important;
}
#_desktop_top_menu > div > ul > li > .js-sub-menu {
    width: auto !important;
    min-width: 160px !important;
    max-width: 280px !important;
    left: 0 !important;
    right: auto !important;
}

/* Submenu fix v5 - position relative on li */
#_desktop_top_menu > div > ul > li {
    position: relative !important;
}
#_desktop_top_menu > div > ul > li > .js-sub-menu {
    width: auto !important;
    min-width: 160px !important;
    max-width: 280px !important;
    left: 0 !important;
    right: auto !important;
}

/* Submenu fix v5 - position relative on li */
#_desktop_top_menu > div > ul > li {
    position: relative !important;
}
#_desktop_top_menu > div > ul > li > .js-sub-menu {
    width: auto !important;
    min-width: 160px !important;
    max-width: 280px !important;
    left: 0 !important;
    right: auto !important;
}

/* Submenu fix v6 - correct selector */
#_desktop_top_menu ul.top-menu > li {
    position: relative !important;
}
#_desktop_top_menu ul.top-menu > li > .popover.sub-menu {
    width: auto !important;
    min-width: 160px !important;
    max-width: 280px !important;
    left: 0 !important;
    right: auto !important;
    margin-left: 0 !important;
}

/* Contrast fixes for accessibility */
.cart-products-count {
    color: #232323 !important;
}
.product-miniature .product-title a {
    color: #555555 !important;
}
.product-miniature .product-description {
    color: #555555 !important;
}
.search-widget form input[type=text]::placeholder {
    color: #555555 !important;
}

/* Contrast fixes */
.cart-products-count { color: #232323 !important; }
.product-miniature .product-title a { color: #555 !important; }
.product-miniature .product-description { color: #555 !important; }
.all-product-link { color: #555 !important; }
.product-flag.on-sale { background: #c0392b !important; }
#wrapper > .container > section { color: #444 !important; }
.block_newsletter form input[type=submit] { background: #1a8196 !important; }
#footer a { color: #444 !important; }
.block_newsletter .page-content p, .block_newsletter p { color: #555 !important; }

/* Wood header background */
#header {
    background-image: url("/themes/classic/assets/img/dark-wood.webp") !important;
    background-color: #3d2b1f !important;
    background-repeat: repeat !important;
}
#header a,
#header .top-menu a[data-depth="0"],
#header .header-nav .user-info a,
#header .header-nav .blockcart a {
    color: #f0e6d3 !important;
}
#header .header-nav {
    border-bottom: 1px solid #5c3d2a !important;
}

/* Submenu text contrast */
#_desktop_top_menu .top-menu .sub-menu a,
#_desktop_top_menu .top-menu .sub-menu .dropdown-submenu {
    color: #1a0e08 !important;
    font-weight: 700 !important;
}
#_desktop_top_menu .top-menu .sub-menu a:hover {
    color: #24b9d7 !important;
}

/* Logo blend with wood header */
#header .logo,
#header #_desktop_logo img {
    mix-blend-mode: multiply !important;
    filter: invert(1) sepia(0.3) brightness(1.2) !important;
}

/* Logo fix - remove filters */
#header .logo,
#header #_desktop_logo img {
    mix-blend-mode: normal !important;
    filter: none !important;
}

/* Logo - black becomes transparent with screen blend */
#header #_desktop_logo img,
#header .logo img {
    mix-blend-mode: screen !important;
    filter: none !important;
}

/* Logo white - invert black to white */
#header #_desktop_logo img,
#header .logo img {
    filter: invert(1) !important;
    mix-blend-mode: normal !important;
}

/* Header background 15% lighter */
#header {
    background-color: #5c4535 !important;
    filter: brightness(1.15);
}
#header #_desktop_logo img,
#header .logo img {
    filter: invert(1) !important;
}

/* Full width carousel */
#index .carousel {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    max-width: 100vw !important;
}

/* Full width carousel fix */
#index #wrapper {
    overflow-x: hidden !important;
}
#index .carousel {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    margin-left: -50vw !important;
    max-width: 100vw !important;
}
#index .carousel .carousel-inner {
    height: 680px !important;
}
#index .carousel .carousel-item img {
    height: 680px !important;
    object-fit: cover !important;
    width: 100% !important;
}

/* Carousel images fill correctly */
#index .carousel .carousel-item img {
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
}

/* Full width advertising block */
#index .advertising-block,
#index .advertising-block a,
#index .advertising-block img {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

/* Mobile carousel full width and proper height */
@media (max-width: 767px) {
    #index .carousel,
    #index .carousel .carousel-inner {
        height: 200px !important;
        width: 100vw !important;
        max-width: 100vw !important;
        left: 0 !important;
        transform: none !important;
        margin: 0 !important;
    }
    #index .carousel .carousel-item img {
        height: 200px !important;
        width: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
    }
}

/* Mobile carousel complete fix */
@media (max-width: 767px) {
    #index .carousel {
        width: 100% !important;
        max-width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        transform: none !important;
        margin: 0 !important;
        position: relative !important;
    }
    #index .carousel .carousel-inner {
        height: auto !important;
        width: 100% !important;
    }
    #index .carousel .carousel-item img {
        height: auto !important;
        width: 100% !important;
        object-fit: contain !important;
    }
}

/* Mobile logo fix */
@media (max-width: 767px) {
    #header #_desktop_logo img,
    #header .logo img {
        filter: invert(1) !important;
    }
}

/* Mobile carousel fix v3 */
@media (max-width: 767px) {
    #index .carousel,
    #index .carousel .carousel-inner,
    #index .carousel .carousel-item {
        height: 220px !important;
        overflow: hidden !important;
    }
    #index .carousel .carousel-item img {
        width: 100% !important;
        height: 220px !important;
        object-fit: cover !important;
        object-position: top center !important;
    }
    #index .carousel {
        width: 100% !important;
        left: 0 !important;
        transform: none !important;
        margin: 0 !important;
    }
}

/* Carousel desktop full width */
@media (min-width: 992px) {
    #index .carousel {
        width: 100vw !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        max-width: 100vw !important;
        margin: 0 !important;
        overflow: hidden !important;
    }
    #index .carousel .carousel-inner,
    #index .carousel .carousel-item {
        height: 680px !important;
    }
    #index .carousel .carousel-item img {
        width: 100% !important;
        height: 680px !important;
        object-fit: cover !important;
    }
}

/* Logo white */
#header #_desktop_logo img,
#header .logo img {
    filter: invert(1) !important;
}

/* Mobile carousel fix - force image display */
@media (max-width: 991px) {
    #index .carousel .carousel-inner {
        height: auto !important;
        overflow: visible !important;
    }
    #index .carousel .carousel-item.active {
        display: block !important;
        height: auto !important;
    }
    #index .carousel .carousel-item img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        min-height: 150px !important;
        max-height: 400px !important;
        object-fit: contain !important;
    }
    #index .carousel .carousel-item .caption {
        position: static !important;
        background: rgba(0,0,0,0.5) !important;
        padding: 5px 10px !important;
        left: 0 !important;
        max-width: 100% !important;
    }
}

/* Homeslider mobile fix */
@media (max-width: 991px) {
    .homeslider-container {
        width: 100% !important;
        left: 0 !important;
        transform: none !important;
        overflow: hidden !important;
    }
    .homeslider-container .rslides {
        width: 100% !important;
    }
    .homeslider-container .rslides li img {
        width: 100% !important;
        height: auto !important;
        display: block !important;
    }
}

/* Homeslider rslides fix */
@media (max-width: 991px) {
    .rslides_tabs,
    .rslides {
        position: relative !important;
        overflow: hidden !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    .rslides li {
        display: none !important;
        width: 100% !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
    }
    .rslides li.rslides_here,
    .rslides li:first-child {
        display: block !important;
        position: relative !important;
    }
    .rslides li img {
        display: block !important;
        width: 100% !important;
        height: auto !important;
    }
}

/* Mobile carousel height fix */
@media (max-width: 991px) {
    .carousel .carousel-inner {
        height: auto !important;
    }
    .carousel .carousel-item {
        height: auto !important;
    }
    .carousel .carousel-item img {
        width: 100% !important;
        height: auto !important;
    }
}

/* Fix carousel height override */
@media (max-width: 991px) {
    .carousel .carousel-inner {
        height: auto !important;
    }
    .carousel .carousel-item {
        height: auto !important;
    }
    .carousel .carousel-item img {
        width: 100% !important;
        height: auto !important;
        max-height: 300px !important;
        object-fit: contain !important;
    }
}

/* Carousel desktop full width v2 */
@media (min-width: 992px) {
    #index .carousel {
        position: relative !important;
        left: 50% !important;
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: -50vw !important;
        transform: none !important;
        overflow: hidden !important;
    }
    #index .carousel .carousel-inner,
    #index .carousel .carousel-item {
        height: 680px !important;
    }
    #index .carousel .carousel-item img {
        width: 100% !important;
        height: 680px !important;
        object-fit: cover !important;
    }
}

/* Footer wood background */
#footer {
    background-color: #8B6347 !important;
    background-image: url("/themes/classic/assets/img/dark-wood.webp") !important;
    color: #f5e6d3 !important;
}
#footer a, #footer .footer-container li a {
    color: #f5e6d3 !important;
}
#footer a:hover, #footer .footer-container li a:hover {
    color: #fff !important;
}
#footer h3, #footer h4, #footer .h3, #footer .h4 {
    color: #fff !important;
}

/* Footer wood texture */
#footer {
    background-color: #8B6347 !important;
    background-image: url("/themes/classic/assets/img/dark-wood.webp") !important;
    color: #f5e6d3 !important;
}
#footer a, #footer .footer-container li a {
    color: #f5e6d3 !important;
}
#footer a:hover, #footer .footer-container li a:hover {
    color: #fff !important;
}
#footer h3, #footer h4, #footer .h3, #footer .h4,
#footer .block-contact .block-contact-title,
#footer .blockcms-title {
    color: #fff !important;
}
#footer .block_newsletter {
    background: rgba(0,0,0,0.2) !important;
}

/* Footer text contrast */
#footer, #footer p, #footer span, #footer div,
#footer .block_newsletter #block-newsletter-label,
#footer .block_newsletter form .row .col-xs-12:last-of-type p {
    color: #fff !important;
}
#footer .block_newsletter {
    background: transparent !important;
}

/* Body red wood background */
body, #wrapper {
    background-color: #6B2D0F !important;
    background-image: url("/themes/classic/assets/img/wood-pattern.webp") !important;
}

/* Body red wood v2 */
body, #wrapper {
    background-color: #7B1E00 !important;
    background-image: url("/themes/classic/assets/img/purty-wood.webp") !important;
}

/* Body text contrast */
#wrapper h1, #wrapper h2, #wrapper h3, #wrapper h4,
#wrapper .products-section-title,
#wrapper .all-product-link {
    color: #fff !important;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.8) !important;
}

/* Product cards beige background */
.product-miniature .thumbnail-container,
.product-miniature .product-description,
.product-miniature .highlighted-informations,
.featured-products, #products,
.products-section-title {
    background-color: #f5ebe0 !important;
}
.product-miniature .product {
    background-color: #f5ebe0 !important;
}

/* Product text contrast */
.product-miniature .product-title a,
.product-miniature .product-price-and-shipping {
    color: #3d1f00 !important;
    font-weight: 600 !important;
}
.products-section-title,
.all-product-link {
    color: #fff !important;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.8) !important;
}

/* All section titles and links contrast */
#index h2, #index h3, #index h4,
.products-section-title,
.all-product-link,
#index .all-product-link a,
#index a.all-product-link {
    color: #fff !important;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.9) !important;
}

/* All text black */
#index h2, #index h3, #index h4,
.products-section-title,
.all-product-link,
#index .all-product-link a,
#index a.all-product-link {
    color: #000 !important;
    text-shadow: none !important;
}

/* Section titles black */
.featured-products .products-section-title,
.new-products .products-section-title,
.best-sales .products-section-title,
#index .products-section-title,
#index h2.products-section-title {
    color: #000 !important;
    text-shadow: none !important;
}

/* Custom text block light background */
#custom-text,
.page-content.page-cms,
#index #custom-text {
    background-color: #fdf0ed !important;
    border-radius: 4px !important;
}

/* Custom text align left */
#custom-text,
#custom-text p,
#custom-text h2 {
    text-align: left !important;
}

/* Custom text wood light background */
#custom-text,
#index #custom-text {
    background-color: #f5e6d3 !important;
    background-image: url("/themes/classic/assets/img/dark-wood.webp") !important;
}

/* Custom text wood light background */
#custom-text,
#index #custom-text {
    background-color: #f5e6d3 !important;
    background-image: url("/themes/classic/assets/img/dark-wood.webp") !important;
}

/* Body lighter red wood */
body, #wrapper {
    background-color: #C0522A !important;
    background-image: url("/themes/classic/assets/img/purty-wood.webp") !important;
}

/* Premium design - clean cream wrapper */
body {
    background-color: #3d1a00 !important;
    background-image: url("/themes/classic/assets/img/dark-wood.webp") !important;
}
#wrapper {
    background-color: #faf6f0 !important;
    background-image: none !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    box-shadow: 0 0 40px rgba(0,0,0,0.5) !important;
}

/* Lighter wood sides + carousel fix */
body {
    background-color: #8B5A2B !important;
    background-image: url("/themes/classic/assets/img/dark-wood.webp") !important;
}
#wrapper {
    max-width: 1200px !important;
    margin: 0 auto !important;
    box-shadow: 0 0 30px rgba(0,0,0,0.4) !important;
    overflow: visible !important;
}
#index .carousel {
    max-width: 1200px !important;
    transform: none !important;
    left: 0 !important;
    width: 100% !important;
}

/* Revert wrapper, restore carousel and red wood */
body {
    background-color: #7B1E00 !important;
    background-image: url("/themes/classic/assets/img/purty-wood.webp") !important;
}
#wrapper {
    max-width: none !important;
    margin: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    background-image: none !important;
    overflow: visible !important;
}
@media (min-width: 992px) {
    #index .carousel {
        position: relative !important;
        left: 50% !important;
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: -50vw !important;
        transform: none !important;
        overflow: hidden !important;
    }
}

/* Body rustic brick */
body {
    background-color: #c8a882 !important;
    background-image: url("/themes/classic/assets/img/brick-wall.webp") !important;
}
