@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: "woodmart-font";
	src: url("//duolighting.co/wp-content/themes/woodmart/fonts/woodmart-font-1-400.woff2?v=8.3.8") format("woff2");
}

:root {
	--wd-text-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: rgb(18,18,18);
	--wd-text-font-size: 14px;
	--wd-title-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 500;
	--wd-title-color: #242424;
	--wd-entities-title-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 700;
	--wd-entities-title-color: #333333;
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Poppins", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 600;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: #333;
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Montserrat", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 700;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(226,200,0);
	--wd-alternative-color: rgb(18,18,18);
	--btn-default-bgcolor: rgb(226,200,0);
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(0,0,0);
	--btn-accented-bgcolor-hover: rgb(226,200,0);
	--wd-form-brd-width: 2px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: rgb(18,18,18);
	--wd-link-color-hover: rgb(226,200,0);
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: url(https://duolighting.co/wp-content/uploads/2021/08/promo-popup.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(18,18,18);
	background-image: none;
}
html .product-image-summary-wrap .product_title, html .wd-single-title .product_title {
	font-weight: 600;
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1222px;
--wd-form-brd-radius: 35px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 5px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 5px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 8px;
}

@media (min-width: 1222px) {
section.elementor-section.wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}


.wd-page-title {
background-color: #0a0a0a;
}

/* =========================================
   1. BUTTON BASE & PREMIUM STYLING
   ========================================= */
.duo-light-toggle-container { 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    gap: 12px; 
    position: relative; 
    z-index: 10; 
    margin: 0 !important; /* Let Woodmart's wrapper handle main positioning */
    background: #f9f9f9;
    padding: 8px 16px;
    border-radius: 50px;
    border: 1px solid #eee;
    /* Shadow and continuous pulse when in the header */
    box-shadow: 0 4px 10px rgba(0,0,0,0.1); 
    animation: pulse-attention 2s infinite ease-in-out;
}

.duo-switch { position: relative; width: 44px; height: 22px; display: inline-block; }
.duo-switch input { opacity: 0; width: 0; height: 0; }

.duo-slider { 
    position: absolute; 
    cursor: pointer; 
    top: 0; left: 0; right: 0; bottom: 0; 
    background-color: #eee; 
    transition: 0.6s ease-in-out;
    border-radius: 20px; 
}

.duo-slider:before { 
    position: absolute; 
    content: "☀️"; /* Default icon */
    line-height: 16px;
    text-align: center;
    font-size: 10px;
    height: 16px; width: 16px; 
    left: 3px; bottom: 3px; 
    background-color: #fff; 
    transition: 0.6s ease-in-out;
    border-radius: 50%; 
    box-shadow: 0 2px 4px rgba(0,0,0,0.1); 
}

input:checked + .duo-slider { 
    background-color: #1a1a1a; 
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.4); 
}

input:checked + .duo-slider:before { 
    transform: translateX(22px); 
    content: "🌙"; /* Icon when toggled */
}


/* =========================================
   2. IMAGE DISSOLVE EFFECT
   ========================================= */
.product-image-link {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1; 
}

.product-grid-item .product-image-link img {
    position: absolute; 
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    transition: opacity 0.6s ease-in-out !important;
}

.primary-img { z-index: 2; }
.secondary-img { z-index: 1; opacity: 1; }
.duo-fading { opacity: 0 !important; }


/* =========================================
   3. PULSE ANIMATIONS
   ========================================= */
/* Normal Pulse (Top header) */
@keyframes pulse-attention {
    0% { transform: scale(1); box-shadow: 0 4px 10px rgba(0,0,0,0.1); }
    50% { transform: scale(1.03); box-shadow: 0 4px 20px rgba(0,0,0,0.15); }
    100% { transform: scale(1); box-shadow: 0 4px 10px rgba(0,0,0,0.1); }
}

/* Floating Pulse (Includes translate to keep it centered) */
@keyframes pulse-attention-float {
    0% { transform: translate(-50%, 0) scale(1); box-shadow: 0 4px 10px rgba(0,0,0,0.1); }
    50% { transform: translate(-50%, 0) scale(1.03); box-shadow: 0 4px 20px rgba(0,0,0,0.25); }
    100% { transform: translate(-50%, 0) scale(1); box-shadow: 0 4px 10px rgba(0,0,0,0.1); }
}

/* The initial pop-in from the bottom */
@keyframes float-pop {
    0% { transform: translate(-50%, 30px) scale(0.8); opacity: 0; }
    100% { transform: translate(-50%, 0) scale(1); opacity: 1; }
}

/* Optional: Stop pulsing once the user interacts */
.user-interacted .duo-light-toggle-container { animation: none; }


/* =========================================
   4. FLOATING / STICKY STATE
   ========================================= */
.duo-light-toggle-container.is-floating {
    position: fixed !important;
    bottom: 30px !important; 
    left: 50% !important;
    z-index: 99999 !important; 
    /* Triggers the pop-in first, then loops the floating pulse continuously */
    animation: float-pop 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards, 
               pulse-attention-float 2s infinite ease-in-out 0.35s !important;
}

/* Drops an invisible ghost block so the right-side buttons don't snap back left */
@media (min-width: 1025px) {
    body.toggle-floating-active .wd-shop-tools::before {
        content: "" !important;
        display: block !important;
        margin-right: auto !important;
    }
}


/* =========================================
   5. LAYOUT ALIGNMENT (PC & PHONE)
   ========================================= */
.shop-control-bar { 
    display: flex; 
    align-items: center; 
    width: 100%;
}

@media (min-width: 1025px) {
    .wd-shop-tools {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
    }
    .duo-light-toggle-container {
        margin-right: auto !important; 
        margin-left: 0 !important;
        order: -1 !important; 
    }
}

@media (max-width: 1024px) {
    .shop-control-bar-mobile { 
        display: flex;
        justify-content: space-between; 
        align-items: center;
        gap: 10px;
    }
    .duo-light-toggle-container {
        margin-bottom: 0;
        order: 2; 
    }
    .show-sidebar-button { order: 1; }
    .sort-icon-container { order: 3; }
    
    .duo-switch {
        transform: scale(0.85);
    }
}
/* --- 6. Global Background Color Transition (Woodmart Fix) --- */
/* Add the smooth transition to the body AND Woodmart's main wrappers */
body, 
.website-wrapper, 
.main-page-wrapper {
    transition: background-color 0.6s ease-in-out !important; 
}

/* When the toggle is ON, turn all of these layers beige */
body.duo-beige-background,
body.duo-beige-background .website-wrapper,
body.duo-beige-background .main-page-wrapper {
    background-color: #F4F1EA !important; /* Premium Beige */
}
