/* Pinky Custom CSS - Frontend *********/
/* Digital Dahling *********/

/* Livesite code at bottom *********/

/* ### Typography ********************/
/* #### Headings ********************/

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Ek Mukta", sans-serif;
    font-weight: 200;
    line-height: 1.2;
    margin: 0 0 20px;
}
h1.entry-title.mb {
    font-size: 40px !important;
    text-transform: capitalize !important;
    font-weight: 200 !important;
    line-height: 1.2 !important;
    margin: 0 0 20px !important;
    letter-spacing: 0 !important;
    text-align: center !important;
}
.entry-header::after {
    border-bottom: 1px solid #000;
    content: "";
    display: block;
    margin: 0 auto 60px;
    padding-bottom: 30px;
    width: 15%;
}
/********************/

/* ### Header ******************/
.header-wrapper.stuck,
.header-shadow .header-wrapper,
.layout-shadow #wrapper {
    background: #fff;
}
.header .flex-row li.html.custom.html_nav_position_text {
    width: 90%;
    min-width: 90%;
}
/********************/

/* ### Navigation ********************/
.nav > li,
.nav-dark .is-outline,
.dark .nav > li > a,
.dark .nav > li.html,
.dark .nav-vertical li li.menu-item-has-children > a,
.dark .nav-vertical > li > ul li a,
.nav-dropdown.dark > li > a,
.nav-dropdown.dark .nav-column > li > a,
.nav-dark .nav > li > a,
.nav-dark .nav > li > button .header-bottom .nav > li {
    margin: 0 12px;
}

/*********************/

/* ### Footer ******************/

.footer-widgets .dark ul.menu > li + li,
.footer-widgets .dark .widget > ul > li + li {
    border: none !important;
    margin-bottom: 0 !important;
    line-height: 1 !important;
    border-top: 0 !important;
}
.copyright-footer {
    font-size: 14px;
    color: #949494;
}
span.widget-title {
    font-size: 1.2em;
    font-weight: normal;
    letter-spacing: 0;
}
ul.menu > li,
.widget > ul > li {
    font-size: 16px;
}
.flatsome-cookies {
  padding: 5px 10px;
}
.flatsome-cookies__buttons .button.is-outline,
.flatsome-cookies__buttons .secondary.is-link, 
.flatsome-cookies__buttons .secondary.is-underline {
    line-height: 1em;
    min-height: 1em;
}

/*********************/

/* ### Woocommerce ********************/
/* #### Shop Page ********************/

.shop-page-title.product-page-title.dark.page-title.featured-title {
    margin-bottom: 40px;
}

/* #### Products ********************/

ul.product_list_widget li img {
    height: auto;
    object-fit: scale-down;
}
.product-quick-view-container .product-gallery {
    padding: 20px !important;
    margin: auto;
}

/* #### Products / Category etc Archives ********************/

.product-small {
    padding: 5px !important;
}
.product-small .col-inner {
    border: 1px solid #d9d9d9 !important;
}
.product-small.box {
    padding: 0 10px !important;
}

/* #### Cart, Checkout & Payments ********************/

#cart-popup .payment-icons .payment-icon svg {
    height: 15px;
}
.payment-icons .payment-icon {
    padding: 3px;
}
.product-gallery .wishlist-icon {
    display: none;
}

/* #### Sticky add to Cart - bottom ********************/
.sticky-add-to-cart {
    background: #fff;
}
.sticky-add-to-cart p.stock.available-on-backorder {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-right: 1em;
    margin-bottom: 0;
    padding: 5px;
}
.sticky-add-to-cart .wclt_lead_time {
    font-size: 15px;
}

/* #### Woo payment icons on single product  ********************/

.single-product .wc-stripe-product-checkout-container.bottom.active {
    display: none;
}
/* #### Woo Discontinued ********************/

.product_cat-discontinued .price-wrapper,
.product_cat-discontinued .yith-wcwl-add-to-wishlist,
.product_cat-discontinued .social-icons,
.product_cat-discontinued span.wcosm_soldout.onsale,
.product_cat-discontinued .product_meta,
.product_cat-discontinued .out-of-stock-label {
    display: none;
}
.product_cat-discontinued .product-info.summary a.button {
    font-size: 18px;
    line-height: 1.5;
    padding: 10px 5px;
    width: 100%;
}
h4.discontinued-notice {
    background: #dc1d22;
    padding: 10px;
    color: #fff;
    font-size: 25px;
    text-transform: uppercase;
}

/* ##### Woo Discontinued on archive page  ********************/

.product_cat-discontinued .badge-container {
    margin: 30px 0 0 20px;
}
.product_cat-discontinued .badge-inner.new-bubble,
.product_cat-superseded .badge-inner.new-bubble {
    padding: 10px 15px;
}
.product_cat-discontinued a.quick-view.quick-view-added,
.product_cat-superseded a.quick-view.quick-view-added,
.product_cat-discontinued .cart-icon,
.product_cat-superseded .cart-icon,
.product_cat-superseded .badge-container{
    display: none;
}
/* #### Woo Superseded on archive page ********************/

.product_cat-superseded .category {
    font-weight: bold;
    font-size: 20px;
    color: #000;
    text-align: center;
}
.product_cat-superseded .category {
    font-weight: bold;
    font-size: 20px;
    color: #000;
    text-align: center;
    background: #dc1d22;
    padding: 10px !important;
    border-radius: 100px;
    opacity: 100;
}
.product-info.summary.entry-summary.col.col-fit.product-summary a.button {
    line-height: 1.2;
    padding-top: 5px;
    padding-bottom: 5px;
}
.related.related-products-wrapper.product-section .category {
    background: none;
    font-size: 12px;
}

/**************/
@media screen and (min-width: 850px) {
    .large-9 {
        max-width: 65%;
        -ms-flex-preferred-size: 60%;
        flex-basis: 65%;
    }
    .large-3 {
        max-width: 35%;
        -ms-flex-preferred-size: 35%;
        flex-basis: 35%;
    }
}

/* ##### Woo Out of Stock ********************/

.box-image .out-of-stock-label {
    color: #333;
    font-weight: bold;
    text-transform: uppercase;
    position: absolute;
    top: 0%;
    font-size: 14px;
    left: 0;
    right: 0;
    background: #fff;
    padding: 2px 0;
    background: rgb(255 255 255);
    text-align: center;
    opacity: 0.9;
}

/* #### Woo Backorders ********************/

/* ##### Woo Backorder notice ********************/

p.stock.available-on-backorder {
    font-size: 18px;
    font-weight: normal;
}

/* ##### Woo backorder notifications ********************/

p.stock.available-on-backorder, 
#digitaldahling_custom_checkout_field, 
.woocommerce-terms-and-conditions-wrapper.mb-half {
    padding: 10px;
    margin: 5px 0;
    background: #FDEFF0;
    border: 2px dashed #cd1d22;
    font-size: 18px;
    font-weight: normal;
}
p.stock.available-on-backorder {
    margin-bottom: 20px;
}
/* ###### Cart page - Woo backorder notifications ********************/

td.product-name p.backorder_notification {
    background: #FDEFF0;
    border: 2px dashed #cd1d22;
    padding: 0px 5px;
}
/* ###### Single product page - Woo backorder notifications ********************/

.wclt_lead_time {
    text-transform: capitalize;
    display: block;
    padding-top: 10px;
}
.stock.available-on-backorder .lead-time-separator {
    display: none;
}
backorder {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-right: 1em;
    margin-bottom: 0;
}

/* #### Woo Images ********************/

/* ##### Woo centre product image - single page */

.product-thumbnails img, .product-gallery-slider img {
    max-width: 100% !important;
    width: auto !important;
    display: flex;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
}


/*  LIVESITE CODE ******************/
#livesite_engage_button .ls-action-T,
#livesite_action_buttons .ls-action-T,
#livesite_active_engage .ls-main-action-T,
#livesite_engage_button .ls-action-T,
#livesite_action_buttons .ls-action-T:hove,
#livesite_active_engage .ls-main-action-T:hover, 
.layout.code-login .v-application .secondary  {
    background-color: #B0171C !important;
}
.layout.code-login .v-application .secondary {
    border-color: #D6181F !important;
}


/* ====== CLS FIXES BELOW — DO NOT MOVE ABOVE ====== */
/* =====================================================
   ROLLERCO — CLS FIXES (Desktop) — PLACEHOLDER AT BOTTOM
   Header height: 70px
   Archive/PDP image ratio: 1:1 (no cropping; object-fit: contain)
   ===================================================== */

/* 1) Header/sticky header: fixed height from first paint */
.site-header,
header.site-header,
.elementor-location-header,
header#masthead { height: 70px; min-height: 70px; }
.site-header.is-sticky,
header.site-header.is-sticky { height: 70px; min-height: 70px; }

/* 2) Stef's Outer Area method to deal with Woo images sizing (CLS-safe version) */
.product-small.box .box-image {
    min-height: 190px !important;   /* adjust this height to fit your tallest archive image */
    max-height: 190px !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* PDP gallery thumbnails */
.product-thumbnails img,
.product-gallery-slider img {
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
}

/****************************************************************/
/* === Archive image outers — uniform heights (Flatsome-safe) === */
/* Scope: shop, category, brand, tag archives */

.archive .products .product .box-image,
.tax-product_cat .product-small.box .box-image,
.tax-product_tag .product-small.box .box-image,
.post-type-archive-product .product-small.box .box-image,
.tax-brand .product-small.box .box-image {
  /* default (mobile) */
  height: 190px !important;
  min-height: 190px !important;
  padding-top: 0 !important;           /* defeat padding-ratio tricks */
  display: flex !important;            /* ensure centring works */
  align-items: center !important;
  justify-content: center !important;
  position: relative;
  overflow: hidden;                 /* prevents overlays from increasing the box */
}

/* Some Flatsome templates add a pseudo element for aspect ratio — kill it */
.archive .products .product .box-image:before,
.product-small.box .box-image:before {
  content: none !important;
  display: none !important;
}

/* Inner wrappers (anchors/divs) should fill the fixed-height box and flex-center contents */
.archive .products .product .box-image > a,
.archive .products .product .box-image > div,
.product-small.box .box-image > a,
.product-small.box .box-image > div {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  width: 100%;
}


/* Keep images natural size, centred inside fixed-height box */
.product-small.box .box-image img {
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain;
    margin: 0 auto;
    aspect-ratio: 1 / 1;
}

/****************************************************************/

/* Reserve wrapper if theme uses one */
.woocommerce ul.products li.product .product-thumbnail,
.woocommerce ul.products li.product .product-loop__thumbnail,
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail {
  aspect-ratio: 1 / 1;
}

/* 3) PDP gallery: reserve main image area so it can't jump */
.woocommerce div.product .woocommerce-product-gallery,
.woocommerce div.product .woocommerce-product-gallery__wrapper,
.woocommerce div.product .woocommerce-product-gallery__image,
.woocommerce-product-gallery .flex-viewport { aspect-ratio: 1 / 1; }
.woocommerce div.product .woocommerce-product-gallery__image img {
  width: 100%; height: auto; object-fit: contain; display: block;
}

/* 4) Action rows in cards (Quick View / Wishlist / buttons): reserve vertical space */
.woocommerce ul.products li.product .yith-wcqv-button,
.woocommerce ul.products li.product a.yith-wcqv-button,
.woocommerce ul.products li.product button.yith-wcqv-button,
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist,
.woocommerce ul.products li.product .button.add_to_cart_button {
  display: inline-block;
  min-height: 40px;       /* adjust if theme uses different line-height */
  line-height: 40px;
  vertical-align: top;
}

/* 5) Badges/price/title: stable heights */
.woocommerce ul.products li.product .onsale,
.woocommerce ul.products li.product .badge,
.woocommerce ul.products li.product .stock { display: inline-block; min-height: 24px; }
.woocommerce ul.products li.product .price { min-height: 22px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 48px; display: block; }

/* 6) Neutralise risky overrides from older CSS (width:auto !important etc.) */
.box-image img,
.product-thumbnails img,
.product-gallery-slider img {
  width: 100% !important;
  height: auto !important;
}
/* .product-small.box .box-image { min-height: 0 !important; } /* aspect-ratio handles height */ 

/* 7) Sticky add-to-cart bar: float so it won't push layout when it appears */
.sticky-add-to-cart {
  position: fixed; left: 0; right: 0; bottom: 0;
  background: #fff; z-index: 10000;
}



/* Tablet */
@media (min-width: 768px) {
  }
}

/* Desktop (3–4 columns) — tweak as needed */
@media (min-width: 1025px) {
  }
}
