.elementor-kit-91{--e-global-color-primary:#2F3A31;--e-global-color-secondary:#B5E1CC;--e-global-color-text:#F6F6F6;--e-global-color-accent:#E7DFC7;--e-global-color-86b4fcd:#00000000;--e-global-color-96e9a00:#FFFFFF;--e-global-typography-primary-font-family:"Quattrocento";--e-global-typography-primary-font-size:5vw;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-primary-word-spacing:0em;--e-global-typography-secondary-font-family:"Great Vibes";--e-global-typography-secondary-font-size:50px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:capitalize;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-secondary-letter-spacing:1px;--e-global-typography-secondary-word-spacing:0em;--e-global-typography-text-font-family:"Quattrocento Sans";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:300;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-text-word-spacing:0em;--e-global-typography-accent-font-family:"Quattrocento Sans";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:400;--e-global-typography-accent-text-transform:capitalize;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-accent-word-spacing:0em;--e-global-typography-0bfb884-font-family:"Quattrocento";--e-global-typography-0bfb884-font-size:3.8vw;--e-global-typography-0bfb884-font-weight:400;--e-global-typography-0bfb884-text-transform:uppercase;--e-global-typography-0bfb884-font-style:normal;--e-global-typography-0bfb884-text-decoration:none;--e-global-typography-0bfb884-line-height:1.2em;--e-global-typography-0bfb884-letter-spacing:-0.02em;--e-global-typography-0bfb884-word-spacing:0px;--e-global-typography-f455da5-font-family:"Quattrocento Sans";--e-global-typography-f455da5-font-size:35px;--e-global-typography-f455da5-font-weight:300;--e-global-typography-f455da5-text-transform:none;--e-global-typography-f455da5-font-style:normal;--e-global-typography-f455da5-text-decoration:none;--e-global-typography-f455da5-line-height:1.5em;--e-global-typography-f455da5-letter-spacing:0px;--e-global-typography-f455da5-word-spacing:0em;background-color:var( --e-global-color-primary );}.elementor-kit-91 e-page-transition{background-color:#FFBC7D;}.elementor-kit-91 a{color:var( --e-global-color-accent );}.elementor-kit-91 a:hover{color:var( --e-global-color-primary );}.elementor-kit-91 h4{color:var( --e-global-color-primary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-91{--e-global-typography-primary-font-size:45px;--e-global-typography-secondary-font-size:32px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:14px;--e-global-typography-0bfb884-font-size:32px;--e-global-typography-f455da5-font-size:24px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-91{--e-global-typography-primary-font-size:40px;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-size:36px;--e-global-typography-text-font-size:18px;--e-global-typography-accent-font-size:18px;--e-global-typography-0bfb884-font-size:36px;--e-global-typography-f455da5-font-size:18px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================================
   HERO WRAPPER (Ken Burns hero image)
   ========================================= */

/* Add class "kb-hero" to the Image widget container in Elementor (Advanced → CSS Classes) */
.kb-hero {
    position: relative;
    overflow: hidden;              /* needed for rounded corners */
    border-radius: 20px;           /* adjust to your preference */
    box-shadow: 0 10px 30px rgba(0,0,0,0.18); /* soft subtle shadow */
}

/* Main hero image */
.kb-hero img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transform-origin: center center;
    border-radius: inherit;        /* ensure smooth corners */
    animation:
        kenburns 28s ease-in-out infinite alternate,
        kb-breathe 14s ease-in-out infinite;
}

/* Soft lighting / gradient overlay */
.kb-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(circle at 10% 0%, rgba(255,255,255,0.22), transparent 55%),
        radial-gradient(circle at 90% 100%, rgba(0,0,0,0.40), transparent 55%);
    mix-blend-mode: soft-light;
    opacity: 0.7;
    animation: kb-glow 20s ease-in-out infinite alternate;
    border-radius: inherit;
}

/* Ken Burns: slow zoom + slight pan */
@keyframes kenburns {
    0%   { transform: scale(1.05) translate(0%, 0%); }
    100% { transform: scale(1.2)  translate(-3%, -2%); }
}

/* Gentle brightness/contrast breathe */
@keyframes kb-breathe {
    0%   { filter: brightness(1)    contrast(1); }
    50%  { filter: brightness(1.05) contrast(1.03); }
    100% { filter: brightness(1)    contrast(1); }
}

/* Overlay glow animation */
@keyframes kb-glow {
    0%   { opacity: 0.55; }
    50%  { opacity: 0.90; }
    100% { opacity: 0.65; }
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    .kb-hero img {
        animation: none;
        transform: scale(1.05); /* gentle static zoom */
        filter: brightness(1) contrast(1);
    }
}

/* Softer hero on small screens */
@media (max-width: 767px) {
    .kb-hero {
        border-radius: 14px;
        box-shadow: 0 6px 18px rgba(0,0,0,0.16);
    }
}



/* =========================================
   STICKY HEADER
   ========================================= */

.kbs-header {
    position: sticky;
    top: 0;
    background-color: rgba(47, 58, 49, 1);   /* #2F3A31 solid at top */
    transition: background-color 0.35s ease, backdrop-filter 0.35s ease;
    backdrop-filter: none;
    z-index: 1000;
}

/* When scrolled: header becomes transparent/glassy */
.kbs-header.kbs-header--transparent {
    background-color: rgba(47, 58, 49, 0.15); /* transparent #2F3A31 */
    backdrop-filter: blur(12px);              /* subtle glass effect */
}



/* =========================================
   SINGLE PRODUCT PAGE – LIGHT TEXT
   ========================================= */

/* Product title */
body.single-fluent-products .fct-product-title h1 {
    color: #E7DFC7 !important;
}

/* Stock status text ("In Stock") */
body.single-fluent-products .fct-product-stock,
body.single-fluent-products .fct-product-stock .fct-stock-status {
    color: #E7DFC7 !important;
}

/* Short excerpt under the title */
body.single-fluent-products .fct-product-excerpt p {
    color: #E7DFC7 !important;
}

/* Price range ($x – $y) */
body.single-fluent-products .fct-product-prices,
body.single-fluent-products .fct-product-prices span,
body.single-fluent-products .fct-product-prices .fct-min-price,
body.single-fluent-products .fct-product-prices .fct-max-price,
body.single-fluent-products .fct-product-prices .fct-price-separator {
    color: #E7DFC7 !important;
}

/* Variant titles (e.g., Forest Green, Red) */
body.single-fluent-products .fct-product-variant-title {
    color: #E7DFC7 !important;
}

/* Per-variant prices + compare prices */
body.single-fluent-products .fct-product-item-price,
body.single-fluent-products .fct-product-item-price span,
body.single-fluent-products .fct-product-item-price .fct-compare-price,
body.single-fluent-products .fct-product-item-price .fct-compare-price del {
    color: #E7DFC7 !important;
}

/* Quantity label and input text */
body.single-fluent-products .fct-product-quantity-container .quantity-title,
body.single-fluent-products .fct-product-quantity-container .fct-quantity-input {
    color: #E7DFC7 !important;
}

/* Long description paragraph under the product section */
body.single-fluent-products .page-content > p {
    color: #E7DFC7 !important;
}

/* Add 5% margin top and bottom to the single product section */
body.single-fluent-products .fct-single-product-page {
    margin-top: 5% !important;
    margin-bottom: 5% !important;
}



/* =========================================
   SINGLE PRODUCT PAGE – PRIMARY BUTTONS
   (Buy Now + Add To Cart)
   ========================================= */

/* Base style for primary product buttons on main product page */
body.single-fluent-products .fct-product-buttons-wrap .fluent-cart-direct-checkout-button,
body.single-fluent-products .fct-product-buttons-wrap .fluent-cart-add-to-cart-button,
body.single-fluent-products .fluent-cart-add-to-cart-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding-block: 12px;
    padding-inline: 28px;

    border-radius: 8px;
    border: 1px solid #E7DFC7 !important;

    background-color: #E7DFC7 !important;   /* light accent so it stands out on dark page */
    color: #2F3A31 !important;              /* dark text */
    text-decoration: none;
    font-family: inherit;
    font-size: 16px;
    font-weight: 400;
    cursor: pointer;

    transition: all 0.25s ease;
}

/* Hover state – subtle invert */
body.single-fluent-products .fct-product-buttons-wrap .fluent-cart-direct-checkout-button:hover,
body.single-fluent-products .fct-product-buttons-wrap .fluent-cart-add-to-cart-button:hover,
body.single-fluent-products .fluent-cart-add-to-cart-button:hover {
    background-color: #FFFFFF !important;
    border-color: #E7DFC7 !important;
    color: #2F3A31 !important;
}

/* Ensure Add To Cart text is dark and readable */
body.single-fluent-products .fluent-cart-add-to-cart-button .text {
    color: #2F3A31 !important;
}

/* Spinner inside main page buttons – match text color */
body.single-fluent-products .fluent-cart-add-to-cart-button .fluent-cart-loader svg,
body.single-fluent-products .fct-product-buttons-wrap .fluent-cart-direct-checkout-button svg {
    color: #2F3A31 !important;
    fill: currentColor !important;
}

/* Force quantity input text to black on the main single-product page */
body.single-fluent-products .fct-product-quantity-container .fct-quantity-input {
    color: #000000 !important;      /* text color */
    caret-color: #000000 !important; /* cursor caret */
}

/* Optional: placeholder text too */
body.single-fluent-products .fct-product-quantity-container .fct-quantity-input::placeholder {
    color: #000000 !important;
    opacity: 0.7;
}



/* =========================================
   PRODUCT CARDS – "VIEW OPTIONS" BUTTONS
   (Shop grid, related products, etc.)
   ========================================= */

.fct-product-view-button.fct-single-product-card-view-button {
    background-color: #2F3A31 !important;
    border-color: #2F3A31 !important;
    color: #FFFFFF !important;          /* text + loader icon */
    padding: 12px 20px !important;
    border-radius: 6px !important;
    font-weight: 600 !important;
}

/* Hover state */
.fct-product-view-button.fct-single-product-card-view-button:hover {
    background-color: #3F4D42 !important;
    border-color: #3F4D42 !important;
    color: #FFFFFF !important;
}

/* Loader spinner inside card buttons → white */
.fct-product-view-button.fct-single-product-card-view-button .fluent-cart-loader svg {
    color: #FFFFFF !important;
    fill: currentColor !important;
}



/* =========================================
   FLUENTCART PRODUCT MODAL – DARK TEXT
   ========================================= */

/* Title */
body.single-fluent-products .fct-product-modal-body .fct-product-title h1 {
    color: #2F3A31 !important;
}

/* Stock status ("In Stock") */
body.single-fluent-products .fct-product-modal-body .fct-product-stock,
body.single-fluent-products .fct-product-modal-body .fct-product-stock .fct-stock-status {
    color: #2F3A31 !important;
}

/* Short excerpt */
body.single-fluent-products .fct-product-modal-body .fct-product-excerpt p {
    color: #2F3A31 !important;
}

/* Price range */
body.single-fluent-products .fct-product-modal-body .fct-product-prices,
body.single-fluent-products .fct-product-modal-body .fct-product-prices span,
body.single-fluent-products .fct-product-modal-body .fct-product-prices .fct-min-price,
body.single-fluent-products .fct-product-modal-body .fct-product-prices .fct-max-price,
body.single-fluent-products .fct-product-modal-body .fct-product-prices .fct-price-separator {
    color: #2F3A31 !important;
}

/* Variant titles in modal (White, Peach, etc.) */
body.single-fluent-products .fct-product-modal-body .fct-product-variant-title {
    color: #2F3A31 !important;
}

/* Variant item prices + compare prices */
body.single-fluent-products .fct-product-modal-body .fct-product-item-price,
body.single-fluent-products .fct-product-modal-body .fct-product-item-price span,
body.single-fluent-products .fct-product-modal-body .fct-product-item-price .fct-compare-price,
body.single-fluent-products .fct-product-modal-body .fct-product-item-price .fct-compare-price del {
    color: #2F3A31 !important;
}

/* Quantity label + input text in modal */
body.single-fluent-products .fct-product-modal-body .fct-product-quantity-container .quantity-title,
body.single-fluent-products .fct-product-modal-body .fct-product-quantity-container .fct-quantity-input {
    color: #2F3A31 !important;
}



/* =========================================
   MODAL BUTTONS – HERO STYLE + VISIBLE TEXT
   ========================================= */

/* Buy Now + Add To Cart in modal */
body.single-fluent-products .fct-product-modal-body .fct-product-buttons-wrap .fluent-cart-direct-checkout-button,
body.single-fluent-products .fct-product-modal-body .fct-product-buttons-wrap .fluent-cart-add-to-cart-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    background-color: #2F3A31 !important;
    border-color: #2F3A31 !important;
    color: #FFFFFF !important;

    padding-block: 12px;
    padding-inline: 28px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 400;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.25s ease;
}

/* Explicitly force the text spans to white in modal */
body.single-fluent-products .fct-product-modal-body .fluent-cart-add-to-cart-button .text,
body.single-fluent-products .fct-product-modal-body .fluent-cart-direct-checkout-button .fct-button-text {
    color: #FFFFFF !important;
}

/* Hover in modal */
body.single-fluent-products .fct-product-modal-body .fct-product-buttons-wrap .fluent-cart-direct-checkout-button:hover,
body.single-fluent-products .fct-product-modal-body .fct-product-buttons-wrap .fluent-cart-add-to-cart-button:hover {
    background-color: #3D4C43 !important;
    border-color: #3D4C43 !important;
    color: #FFFFFF !important;
}

/* Spinner in modal buttons → white */
body.single-fluent-products .fct-product-modal-body .fct-product-buttons-wrap .fluent-cart-loader svg {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
}/* End custom CSS */