/* ----------------------------------------------------
   Imports: Raleway & FontAwesome 6
   ---------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@300;400;500;600;700;800&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css');

/* Set Raleway as default font across the site, but exclude FontAwesome and Material Icons */
body, html, .top-menu a, .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, p, span, a, li, input, button, div:not(.fa):not(.fab):not(.fas):not(.far):not(.material-icons) {
  font-family: 'Raleway', sans-serif !important;
}

/* Ensure FontAwesome and Material Icons preserve their exact font-families */
i.fa-brands, .fa-brands, .fab {
  font-family: 'Font Awesome 6 Brands' !important;
}
i.fa-solid, i.fa-regular, .fa-solid, .fa-regular, .fas, .far, .fa {
  font-family: 'Font Awesome 6 Free' !important;
}
i.fa-solid, .fa-solid, .fas {
  font-weight: 900 !important;
}
i.fa-regular, .fa-regular, .far {
  font-weight: 400 !important;
}
.material-icons, i.material-icons, span.material-icons {
  font-family: 'Material Icons' !important;
}
#header .header-nav #menu-icon .material-icons {
  line-height: 30px;
  font-size: 30px;
  color: white;
}
/* ----------------------------------------------------
   Line 1: Top Navigation Bar
   ---------------------------------------------------- */
/* Force the header navigation container height to be exactly 65px on desktop screens to match design mockup */
@media (min-width: 992px) {
  #header .header-nav {
    max-height: 65px !important;
    height: 65px !important;
  }
}

.top-header-wrapper {
  background-color: #ffffff;
  border-bottom: 1px solid #f0f0f0;
  padding: 0;
  height: 65px;
}

.top-header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  position: relative;
  flex-wrap: nowrap !important;
}

.top-header-left {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  height: 100% !important;
  flex-wrap: nowrap !important;
}

/* Legacy top nav links classes replaced by wrapper but kept for compatibility */
.top-nav-links {
  display: flex !important;
  align-items: center !important;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
  gap: 12px;
  flex-wrap: nowrap !important;
  height: 100% !important;
}

.top-nav-links li {
  display: flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.top-nav-links a {
  color: #4b2267 !important;
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.5px;
  transition: color 0.2s ease;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
}

.top-nav-links a:hover {
  color: #c9933b !important;
}

.top-nav-phone {
  color: #4b2267 !important;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.5px;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.top-nav-phone a {
  color: #4b2267 !important;
  text-decoration: none;
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  line-height: 1 !important;
}

.top-nav-social {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 8px;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

.top-nav-social .social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  background-color: #4b2267;
  color: #ffffff !important;
  border-radius: 50%;
  font-size: 12px;
  transition: all 0.25s ease;
}

.top-nav-social .social-icon:hover {
  background-color: #f8e8c9;
  color: #4b2267 !important;
  transform: scale(1.1);
}

/* Beige Slanted Block on Right side */
.top-header-right {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding-left: 45px;
  padding-right: 25px;
  gap: 30px;
  flex-wrap: nowrap !important;
}

.top-header-right::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: -9999px; /* Extends to the right edge of viewport */
  background-color: #f8e8c9;
  z-index: 1;
  clip-path: polygon(25px 0, 100% 0, 100% 100%, 0 100%);
  transition: background-color 0.2s ease;
}

/* Ensure contents sit on top of pseudo-background */
.top-header-right > * {
  position: relative;
  z-index: 2;
}

/* Account info & Cart styling inside the slanted block */
#_desktop_user_info, #_desktop_cart {
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
}

#_desktop_user_info .user-info,
#_desktop_cart .blockcart,
#_desktop_cart .blockcart .header {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#header .header-nav #_desktop_user_info .user-info,
#header .header-nav #_desktop_cart .blockcart,
#header .header-nav #_desktop_cart .blockcart.active,
#header .header-nav #_desktop_cart .cart-preview.active {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: 100% !important;
  width: auto !important;
  min-height: 0 !important;
}

#header .header-nav #_desktop_cart .blockcart .header {
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

#_desktop_user_info a,
#_desktop_cart a,
#_desktop_cart .header a {
  color: #4b2267 !important;
  text-decoration: none !important;
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  height: 100% !important;
}

#_desktop_user_info i,
#_desktop_cart i {
  font-size: 24px !important;
  color: #4b2267 !important;
  margin-bottom: 2px;
  height: auto;
  width: auto;
  font-style: normal;
}

/* Cart badge count spacing and inline alignment */
.cart-text-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.cart-products-count {
  font-size: 10px !important;
}

/* ----------------------------------------------------
   Line 2: Violet Header & Navigation
   ---------------------------------------------------- */
.header-top {
  background-color: #4b2267 !important;
  padding: 15px 0 !important;
  border-bottom: none!important;
  position: relative !important;
}

@media (min-width: 992px) {
  #header {
    display: contents !important;
  }
  .header-top {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15) !important;
  }
}


.header-top-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Logo Enlarge and Column Width overrides to allow the logo to grow */
.header-top-container > .row.align-items-center {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
}

#_desktop_logo {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

.header-menu-wrapper {
  flex: 1 !important;
  max-width: none !important;
}

#_desktop_logo img.logo {
  max-height: 72px !important; /* Reduced from 65px to prevent overlap on standard screens */
  width: auto !important;
  transition: transform 0.3s ease;
}

#_desktop_logo img.logo:hover {
  transform: scale(1.03);
}

@media (max-width: 1280px) {
  #_desktop_logo img.logo {
    max-height: 48px !important;
  }
  .header-top .top-menu[data-depth="0"] {
    gap: 8px !important;
  }
  .header-top .top-menu > li > a {
    font-size: 11px !important;
    padding: 5px 8px !important;
  }
}

@media (max-width: 1199px) {
  #_desktop_logo img.logo {
    max-height: 44px !important;
  }
  .header-top .top-menu[data-depth="0"] {
    gap: 6px !important;
  }
  .header-top .top-menu > li > a {
    font-size: 10.5px !important;
    padding: 4px 6px !important;
  }
}

@media (max-width: 991px) {
  #_desktop_logo img.logo {
    max-height: 60px !important;
  }
}

/* Align and space out top menu items */
.header-menu-wrapper {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.header-top .top-menu[data-depth="0"] {
  margin: 0 !important;
  display: flex;
  align-items: center;
  gap: 5px; /* Reduced from 15px */
}

.header-top .top-menu > li > a {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 12px !important; /* Reduced from 13px */
  text-transform: uppercase !important;
  letter-spacing: 0.8px;
  padding: 6px 10px !important; /* Reduced from 8px 12px */
  border-radius: 4px;
  transition: all 0.2s ease;
}

.header-top .top-menu > li > a:hover {
  color: #f8e8c9 !important;
  background-color: rgba(255, 255, 255, 0.08);
}

/* Position submenu dropdown exactly below header bar and enable flexible wrapping */
.header-top .top-menu .sub-menu {
  top: 100% !important;
  margin-top: 15px !important; /* Offset by the 15px bottom padding of .header-top to align perfectly flush with bottom of header */
  background-color: #725486;
}

.header-top .top-menu .sub-menu ul[data-depth="1"] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 20px !important;
  padding: 15px 20px !important;
  margin: 0 !important;
}

.header-top .top-menu .sub-menu ul[data-depth="1"] > li {
  float: none !important;
  margin: 0 !important;
}

/* Completely remove/hide the search widget */
#search_widget {
  display: none !important;
}

/* Responsive adjustments to prevent wrapping of the top navigation bar */
@media (max-width: 1199px) {
  .top-nav-links {
    gap: 8px !important;
  }
  .top-nav-links a {
    font-size: 10px !important;
  }
  .top-nav-phone {
    font-size: 11px !important;
  }
  .top-header-left {
    gap: 10px !important;
  }
  .top-header-right {
    gap: 15px !important;
    padding-left: 30px !important;
    padding-right: 15px !important;
  }
}

@media (max-width: 991px) {
  .top-header-wrapper {
    height: auto;
  }
  .top-nav-links {
    gap: 5px !important;
  }
  .top-nav-links a {
    font-size: 9px !important;
  }
  .top-nav-phone {
    font-size: 9px !important;
  }
  .top-header-left {
    gap: 8px !important;
  }
  .top-header-right {
    gap: 10px !important;
    padding-left: 20px !important;
    padding-right: 10px !important;
  }
  .top-nav-social .social-icon {
    width: 22px !important;
    height: 22px !important;
    font-size: 10px !important;
  }
}

/* Custom Global Container Max Width */
@media (min-width: 1200px) {
  .container {
    width: 100% !important;
    max-width: 1280px !important;
  }
}

/* ----------------------------------------------------
   Header Custom Widgets
   ---------------------------------------------------- */
/* Header top navigation links managed by ps_linklist (displayNav1) */
.top-nav-links-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
}

.top-nav-links-wrapper .links {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
}

.top-nav-links-wrapper .links .row {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  flex-wrap: nowrap !important;
}

.top-nav-links-wrapper .links .wrapper {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
}

.top-nav-links-wrapper .links .wrapper p.h3,
.top-nav-links-wrapper .links .wrapper .title {
  display: none !important; /* Hide block title */
}

.top-nav-links-wrapper .links .wrapper ul {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  gap: 40px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-wrap: nowrap !important;
}

.top-nav-links-wrapper .links .wrapper ul li {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.top-nav-links-wrapper .links .wrapper ul li a {
  color: #4b2267 !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  letter-spacing: 0.5px !important;
  transition: color 0.2s ease !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
  line-height: 1 !important;
}

.top-nav-links-wrapper .links .wrapper ul li a:hover {
  color: #c9933b !important;
}

/* Header Social Media Follow Icons (ps_socialfollow) */
.top-nav-social .block-social {
  padding: 0 !important;
  margin: 0 !important;
  width: auto !important;
  float: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.top-nav-social .block-social ul {
  display: flex !important;
  gap: 15px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
}

.top-nav-social .block-social ul li {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
}

.top-nav-social .block-social ul li a.social-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  width: 28px !important;
  height: 28px !important;
  transition: all 0.2s ease !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-indent: 0 !important;
  overflow: visible !important;
  white-space: normal !important;
}

.top-nav-social .block-social ul li a.social-icon:hover {
  background-color: #c9933b !important;
  color: #ffffff !important;
}

.top-nav-social .block-social ul li a.social-icon i {
  font-size: 14px !important;
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
}

.top-nav-social .block-social ul li a.social-icon:hover i {
  color: #ffffff !important;
}

/* ----------------------------------------------------
   Footer Redesign
   ---------------------------------------------------- */



.footer-container {
  background: transparent !important;
  padding: 0 !important;
}

.footer-top-violet {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  padding: 50px 0 !important;
  font-family: 'Raleway', sans-serif !important;
}

/* Left Footer Columns (ps_linklist displayFooter) */
.footer-links-left .links {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.footer-links-left .links .row {
  display: flex !important;
  flex-direction: row !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-links-left .links .wrapper {
  flex: 0 0 50% !important;
  max-width: 50% !important;
  margin: 0 !important;
  padding: 0 15px !important;
}

.footer-links-left .links .wrapper p.h3,
.footer-links-left .links .wrapper .title {
  display: none !important; /* Hide list title block */
}

.footer-links-left .links .wrapper ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-links-left .links .wrapper ul li {
  margin-bottom: 15px !important;
}

.footer-links-left .links .wrapper ul li:last-child {
  margin-bottom: 0 !important;
}

.footer-links-left .links .wrapper ul li a {
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  white-space: nowrap !important;
}

.footer-links-left .links .wrapper ul li a:hover {
  color: #f8e8c9 !important;
}

/* Right Footer Columns (Categories Grid v4) */
.footer-links-right {
  display: flex !important;
}

.text-evin
{
  margin-top:10px !important;
font-size:10px !important;
 text-align: center;

}

.footer-links-right .row {
  display: flex !important;
  flex-direction: row !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-links-right .col-4 {
  flex: 0 0 33.33333% !important;
  max-width: 33.33333% !important;
  margin: 0 !important;
  padding: 0 8px !important;
}

/* General Footer Link List (Categories) */
.footer-link-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-link-list li {
  margin-bottom: 15px !important;
}

.footer-link-list li:last-child {
  margin-bottom: 0 !important;
}

.footer-link-list li a {
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  white-space: normal !important;
  line-height: 1.3 !important;
  display: inline-block !important;
}

.footer-link-list li a:hover {
  color: #f8e8c9 !important;
}

.footer-logo-center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer-logo-center .footer-logo {
  max-height: 140px !important;
  width: auto !important;
  transition: transform 0.3s ease !important;
}

.footer-logo-center .footer-logo:hover {
  transform: scale(1.05) !important;
}

/* Second Line: Beige Footer Bar Left-Aligned */
.footer-bottom-beige {
  background-color: #f8e8c9 !important;
  color: #000000 !important;
  padding: 20px 0 !important;
  font-family: 'Raleway', sans-serif !important;
  border-top: 1px solid rgba(75, 34, 103, 0.1) !important;
  text-align: center!important;
}

.footer-bottom-content {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  gap: 40px !important;
}

.footer-copyright {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #000000 !important;
  margin-right: 40px !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

.footer-copyright a {
  color: #000000 !important;
  text-decoration: none !important;
  font-weight: 700 !important;
}

.footer-copyright a:hover {
  text-decoration: underline !important;
}

.footer-copyright .text-danger {
  color: #d90429 !important;
  font-weight: 800 !important;
}

/* Legal links styling from ps_linklist */
.footer-legal-links {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

.footer-legal-links .links {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: flex-start !important;
}

.footer-legal-links .links .row {
  display: flex !important;
  flex-direction: row !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-legal-links .links .wrapper {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-legal-links .links .wrapper p.h3,
.footer-legal-links .links .wrapper .title {
  display: none !important;
}

.footer-legal-links .links .wrapper ul {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 40px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.footer-legal-links .links .wrapper ul li {
  margin: 0 !important;
  padding: 0 !important;
  display: inline-block !important;
}

.footer-legal-links .links .wrapper ul li a {
  color: #000000 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  letter-spacing: 0.5px !important;
  transition: color 0.2s ease !important;
  white-space: nowrap !important;
}

.footer-legal-links .links .wrapper ul li a:hover {
  color: #c9933b !important;
}

/* Mobile responsive styles */
@media (max-width: 767px) {
  .footer-top-violet {
    padding: 30px 0 !important;
  }
  .footer-links-left,
  .footer-links-right {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin: 20px 0 !important;
  }
  .footer-links-left .links .wrapper,
  .footer-links-right .col-4 {
    padding: 0 10px !important;
  }
  .footer-logo-center {
    margin: 20px 0 !important;
    order: -1;
  }
  .footer-links-left .links .wrapper ul,
  .footer-link-list {
    text-align: center !important;
  }
  .footer-links-left .links .wrapper ul li,
  .footer-link-list li {
    margin-bottom: 12px !important;
  }
  .footer-bottom-beige {
    padding: 15px 0 !important;
  }
  .footer-bottom-beige .row {
    flex-direction: column !important;
    gap: 15px !important;
  }
  .footer-copyright {
    text-align: center !important;
    width: 100% !important;
    margin-right: 0 !important;
  }
  .footer-legal-links {
    text-align: center !important;
    width: 100% !important;
    justify-content: center !important;
  }
  .footer-legal-links .links {
    justify-content: center !important;
    gap: 15px !important;
  }
  .footer-legal-links .links .wrapper ul {
    justify-content: center !important;
    gap: 15px !important;
    flex-wrap: wrap !important;
  }
}

/* ====================================================
   HOMEPAGE SECTION STYLES (Sections 1 to 8)
   ==================================================== */

/* --- Global Background Reset & Index Top Fixes --- */
body, html, #page, #wrapper, #main, .page-home, #content, #header, #footer {
  background-color: #ffffff !important;
  background: #ffffff !important;
}

#index #wrapper, #index #content-wrapper, #index #content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

#index .breadcrumb {
  display: none !important;
}

/* --- Section 1: Hero Banner --- */
.home-section-1 {
  min-height: 520px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 80px 0;
  width: 100vw !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.hero-content {
  max-width: 800px;
  margin: 0 auto;
  color: #ffffff;
  z-index: 2;
  text-align: center;
}

.hero-title-h1 {
  font-family: 'Raleway', sans-serif !important;
  font-size: 46px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 25px !important;
  line-height: 1.2;
}

.hero-hours-frame {
  border: 2px solid #ffffff;
  padding: 15px 30px;
  display: inline-block;
  margin-bottom: 35px;
  background-color: rgba(75, 34, 103, 0.25);
}

.hero-hours-text {
  font-family: 'Raleway', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #ffffff !important;
  margin: 0 !important;
  line-height: 1.6 !important;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.hero-btn-selection {
  background-color: #ffffff !important;
  color: #4b2267 !important;
  border: 2px solid #ffffff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  padding: 12px 30px !important;
  letter-spacing: 1px;
  border-radius: 0 !important;
  transition: all 0.25s ease !important;
  text-transform: uppercase;
  display: inline-block;
}

.hero-btn-selection:hover {
  background-color: transparent !important;
  color: #ffffff !important;
}

/* --- Section 2: Reassurance Banner --- */
.home-section-2 {
  background-color: transparent !important;
  padding: 0 !important;
  border: none !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  position: relative;
  z-index: 10;
}

.reassurance-wrapper {
  background-color: #f8e8c9 !important;
  padding: 11px 30px !important;
  border-radius: 12px !important;
  margin-top: -65px !important; /* Overlaps Section 1 halfway */
  box-shadow: 0 10px 30px rgba(75, 34, 103, 0.08) !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
  width: 100%;
}

.reassurance-item {
  flex: 1;
  min-width: 180px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.reassurance-icon {
  max-height: 55px !important;
  height: 55px !important;
  width: auto !important;
  margin-bottom: 12px !important;
  object-fit: contain !important;
}

.reassurance-title {
  font-family: 'Raleway', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  margin: 0 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.reassurance-sub {
  font-size: 10px !important;
  font-weight: 500 !important;
  opacity: 0.8;
}

/* --- Section 3: Vignoble & Histoire --- */
.home-section-3 {
  padding: 100px 0 30px 0;
  background-color: #ffffff !important;
  width: 100vw !important;
  position: relative;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  overflow: hidden;
}

.section-3-container {
  max-width: 1140px !important;
  margin: 0 auto;
  position: relative;
}

.section-3-left-col {
  display: flex;
  align-items: stretch;
  padding: 0 !important;
}

.section-3-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.section-3-right-col {
  background-image: url('../img/homepage/BackgorundSection3.jpg');
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  padding: 50px 60px !important;
  position: relative;
}

/* Stretches the background to the right edge of viewport */
.section-3-right-col::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: -9999px;
  background-image: inherit;
  background-size: cover;
  background-position: center;
  z-index: -1;
}

.section-3-content {
  max-width: 500px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  width: 100%;
}

.section-title-purple {
  font-family: 'Raleway', sans-serif !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  color: #4b2267 !important;
  letter-spacing: 1px;
  margin-bottom: 20px !important;
  text-transform: uppercase;
}

.section-desc-grey {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #555555 !important;
  line-height: 1.7 !important;
  margin-bottom: 25px !important;
}

.sec3-btn-wrapper {
  margin-top: auto;
}

.sec3-btn-contacter {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border: 2px solid #4b2267 !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  padding: 12px 30px !important;
  letter-spacing: 1px;
  border-radius: 0 !important;
  transition: all 0.25s ease !important;
  text-transform: uppercase;
  display: inline-block;
}

.sec3-btn-contacter:hover {
  background-color: #f8e8c9 !important;
  color: #4b2267 !important;
  border-color: #f8e8c9 !important;
}

/* Logo positioned exactly at the boundary */
.section-3-logo-wrapper {
  position: absolute;
  left: 41.66667%;
  top: 0;
  transform: translate(-50%, -50%);
  z-index: 10;
  pointer-events: none;
}

.section-3-logo {
  width: 105px !important;
  height: 105px !important;
  object-fit: contain;
}

@media (max-width: 991px) {
  .section-3-logo-wrapper {
    display: none;
  }
  .section-3-right-col {
    padding: 40px 30px !important;
  }
}

/* --- Section 4: Visual Banner --- */
.home-section-4 {
  width: 100vw !important;
  position: relative;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

.home-section-4 img {
  width: 100% !important;
  height: auto !important;
}

/* --- Section 5: Selection Produits --- */
.home-section-5 {
  padding: 50px 0;
  background-color: #ffffff;
}

.section-title-selection {
  font-family: 'Raleway', sans-serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #4b2267 !important;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 40px !important;
}

.home-section-5 .featured-products .products-section-title {
  display: none !important;
}

.home-section-5 .products {
  justify-content: center;
}

.home-section-5 .products .product {
  flex: 0 0 33.33333% !important;
  max-width: 33.33333% !important;
}

@media (max-width: 767px) {
  .home-section-5 .products .product {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

.home-section-5 .product-miniature {
  margin-bottom: 30px;
}

.home-section-5 .thumbnail-container {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
}

.home-section-5 .thumbnail-top {
  position: relative;
  background: transparent !important;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  overflow: hidden;
  min-height: 270px;
}

.home-section-5 .thumbnail-top::before {
  content: "";
  position: absolute;
  width: 180px;
  height: 180px;
  background-color: #f8e8c9;
  border-radius: 50%;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: transform 0.3s ease;
}

.home-section-5 .product-miniature:hover .thumbnail-top::before {
  transform: translate(-50%, -50%) scale(1.05);
}

.home-section-5 .product-thumbnail {
  position: relative;
  z-index: 2;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
  display: block;
  height: 100% !important; /* Prevent bottom cropping from default theme heights */
}

.home-section-5 .product-thumbnail img {
  max-height: 250px;
  width: auto;
  object-fit: contain;
  margin: 0 auto;
}

.home-section-5 .product-description {
  text-align: center;
  padding: 0 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.home-section-5 .product-title {
  margin: 10px 0 5px 0 !important;
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.home-section-5 .product-title a {
  font-family: 'Raleway', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  color: #000000 !important; /* Solid black */
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.5px;
  line-height: 1.4 !important;
}

.home-section-5 .product-title a:hover {
  color: #c9933b !important;
}

.product-wine-type {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  color: #666666 !important; /* Grey color */
  font-weight: 500 !important;
  margin-bottom: 8px !important;
}

.home-section-5 .product-price-and-shipping {
  margin-bottom: 10px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.home-section-5 .product-price-and-shipping .price {
  color: #4b2267 !important; /* Brand purple */
  font-size: 18px !important;
  font-weight: 700 !important;
}

.home-section-5 .product-price-and-shipping .regular-price {
  color: #666666 !important;
  text-decoration: line-through !important;
  text-decoration-color: #cc0000 !important; /* Red strikethrough */
  font-size: 14px !important;
  font-weight: 500 !important;
}

.home-section-5 .product-price-and-shipping .discount-percentage,
.home-section-5 .product-price-and-shipping .discount-amount {
  background-color: #cc0000 !important; /* Red box */
  color: #ffffff !important; /* White text */
  padding: 2px 6px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  border-radius: 0 !important;
}

.home-section-5 .highlighted-informations {
  display: none !important;
}

/* Actions block centered below the price */
.product-miniature-hover-actions {
  position: static !important;
  transform: none !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 15px !important;
  margin-top: auto !important; /* Push buttons to the bottom of the card */
  padding-top: 10px; /* Ensure minimum gap from price */
  margin-bottom: 10px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.add-to-cart-btn-mini,
.wishlist-button-add,
.wishlist-button {
  background-color: #4b2267 !important; /* Purple background */
  color: #ffffff !important; /* White icon */
  border: none !important;
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1) !important;
  transition: all 0.25s ease !important;
  padding: 0 !important;
  cursor: pointer !important;
}

.add-to-cart-btn-mini:hover,
.wishlist-button-add:hover,
.wishlist-button:hover {
  background-color: #c9933b !important; /* Gold on hover */
  color: #ffffff !important;
}

.add-to-cart-btn-mini i,
.wishlist-button-add i,
.wishlist-button i,
.wishlist-button-add i.material-icons,
.wishlist-button i.material-icons {
  color: #ffffff !important; /* White icons */
  font-size: 18px !important;
  line-height: 1 !important;
}

.add-to-cart-btn-mini:hover i,
.wishlist-button-add:hover i,
.wishlist-button:hover i,
.wishlist-button-add:hover i.material-icons,
.wishlist-button:hover i.material-icons {
  color: #ffffff !important;
}

.wishlist-button-add {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.product-description .wishlist-button, 
.product-description .wishlist-button-add {
  display: none !important;
}

.product-miniature-hover-actions .wishlist-button,
.product-miniature-hover-actions .wishlist-button-add {
  display: inline-flex !important;
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* --- Section 6: Valeurs (Citation) --- */
.home-section-6 {
  min-height: 340px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 80px 0;
  position: relative;
  text-align: center;

}

.container-valeurs {
  z-index: 2;
  position: relative;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.valeurs-content {
  max-width: 800px;
  color: #ffffff;
  text-align: center !important;
}

.section-title-white-valeurs {
  font-family: 'Raleway', sans-serif !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  margin-bottom: 25px !important;
  text-align: center !important;
}

.valeurs-desc {
  font-family: 'Raleway', sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #ffffff !important;
  line-height: 1.8 !important;
  margin: 0 !important;
  text-align: center !important;
}

/* --- Section 7: Blog columns --- */
.home-section-7 {
  margin-top:80px;
  padding: 60px 0 !important;
  background-color: #fff3e3 !important; /* Beige background */
  width: 100vw !important;
  position: relative;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.home-section-7 .agenda-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  max-width: 1140px;
  margin: 0 auto 30px auto;
  padding: 0 15px;
}

.home-section-7 .agenda-title {
  color: #4b2267 !important;
  font-weight: 800 !important;
  font-size: 26px !important;
  text-transform: uppercase;
  margin: 0 !important;
  letter-spacing: 1px;
}

.home-section-7 .agenda-arrow {
  color: #4b2267 !important;
  font-size: 24px !important;
  font-weight: bold;
  transition: transform 0.2s ease;
  display: inline-flex;
  align-items: center;
}

.home-section-7 .agenda-arrow:hover {
  transform: translateX(4px);
  color: #c9933b !important;
}

.agenda-card {
  position: relative;
  width: 100%;
  margin-bottom: 50px; /* Space for the overlapping block */
}

.agenda-card-img-wrapper {
  width: 100%;
  overflow: hidden;
  border-radius: 0 !important;
}

.agenda-card-img {
  width: 100%;
  aspect-ratio: 325 / 314;
  object-fit: cover;
}

.agenda-card-body {
  position: relative;
  width: 90%;
  margin: -60px auto 0 auto; /* Overlaps the image */
  background-color: #ffffff !important;
  border-radius: 12px; /* Rounded corners */
  padding: 15px 20px !important;
  box-shadow: 0 10px 25px rgba(75, 34, 103, 0.05);
  z-index: 10;
  min-height: 125px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.agenda-card-title {
  margin: 0 0 8px 0 !important;
}

.agenda-card-title a {
  font-family: 'Raleway', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  color: #4b2267 !important; /* Brand purple */
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.5px;
  line-height: 1.3 !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.agenda-card-title a:hover {
  color: #c9933b !important;
}

.agenda-card-excerpt {
  font-family: 'Raleway', sans-serif !important;
  font-size: 12px !important;
  color: #666666 !important;
  line-height: 1.5 !important;
  margin-bottom: 10px !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.agenda-card-readmore {
  font-family: 'Raleway', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #666666 !important;
  text-transform: none !important;
  text-decoration: underline !important; /* Underlined lowercase */
  letter-spacing: 0;
  display: inline-block;
}

.agenda-card-readmore:hover {
  color: #4b2267 !important;
}

.degustation-separator {
  border-top: 2px solid #4b2267 !important;
  margin: 40px 0 20px 0 !important;
  opacity: 0.8 !important;
}

.degustation-section-row {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  padding: 0 15px;
}

.degustation-logo-col {
  flex: 0 0 100px !important;
  max-width: 100px !important;
  display: flex;
  justify-content: center;
  align-items: center;
}

.degustation-vigne-logo {
  max-width: 80px !important;
  height: auto !important;
}

.degustation-text-col {
  flex: 1 !important;
}

.degustation-row-title {
  margin: 0 0 8px 0 !important;
}

.degustation-row-title a {
  font-family: 'Raleway', sans-serif !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #4b2267 !important;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 0.5px;
}

.degustation-row-title a:hover {
  color: #c9933b !important;
}

.degustation-row-excerpt {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  color: #666666 !important;
  line-height: 1.6 !important;
  margin-bottom: 8px !important;
}

.degustation-btn-col {
  flex: 0 0 auto !important;
  padding-left: 20px;
}

.btn-degustations-purple {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border: none !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  padding: 14px 28px !important;
  letter-spacing: 1px;
  border-radius: 0 !important;
  transition: all 0.25s ease !important;
  text-transform: uppercase;
  white-space: nowrap !important;
}

.btn-degustations-purple:hover {
  background-color: #c9933b !important;
  color: #ffffff !important;
}

/* --- Section 8: Retrouver (Contact & Info) --- */
.home-section-8 {
  padding: 60px 0;
  background-color: #ffffff !important;
  width: 100vw !important;
  position: relative;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.section-8-container {
  max-width: 1140px !important;
  margin: 0 auto;
}

.section-8-left-col {
  display: flex;
  align-items: stretch;
  padding: 0 !important;
}

.section-8-img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

.section-8-right-col {
  background-color: #ffffff;
  display: flex;
  align-items: center;
  padding: 30px 60px !important;
}

.section-8-content {
  max-width: 500px;
  width: 100%;
}

.section-title-nous-retrouver {
  font-family: 'Raleway', sans-serif !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  color: #4b2267 !important;
  letter-spacing: 1px;
  margin-bottom: 30px !important;
  text-transform: uppercase;
}

.section-desc-retrouver {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #555555 !important;
  line-height: 1.7 !important;
  margin-bottom: 25px !important;
}

.contact-subtitle {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #4b2267 !important;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  margin-bottom: 4px;
  margin-top: 10px;
}

.contact-value-text {
  font-family: 'Raleway', sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: #000000 !important;
  line-height: 1.2 !important;
  margin-bottom: 10px;
}

.contact-value-text a {
  color: #000000 !important;
  text-decoration: none !important;
}

.contact-value-text a:hover {
  color: #c9933b !important;
}

.section-8-social-follow .block-social {
  padding: 0 !important;
  margin: 0 !important;
}
.section-8-social-follow.mt-5 {
  margin-top: 25px;
}
.section-8-social-follow .block-social ul {
  display: flex !important;
  gap: 15px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.section-8-social-follow .block-social ul li {
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  background: transparent !important;
  background-color: transparent !important;
}

.section-8-social-follow .block-social ul li a.social-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  transition: all 0.25s ease !important;
  text-indent: 0 !important;
  overflow: visible !important;
  text-decoration: none !important;
}

.section-8-social-follow .block-social ul li a.social-icon:hover {
  background-color: #c9933b !important;
  color: #ffffff !important;
  transform: scale(1.1);
}

.section-8-social-follow .block-social ul li a.social-icon i {
  font-size: 14px !important;
  color: #ffffff !important;
}

/* --- Responsive Adaptations --- */
@media (max-width: 767px) {
  .hero-title-h1 {
    font-size: 30px !important;
  }
  .hero-hours-frame {
    padding: 10px 20px;
  }
  .hero-hours-text {
    font-size: 13px !important;
  }
  .section-title-white-valeurs {
    font-size: 24px !important;
  }
  .valeurs-desc {
    font-size: 14px !important;
  }
  .section-3-left-col, .section-8-left-col {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    min-height: 250px;
  }
  .section-3-right-col, .section-8-right-col {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    padding: 35px 20px !important;
  }
}


/* ----------------------------------------------------
   Listing produits
   ---------------------------------------------------- */
#subcategories,.block-category-inner , footer .block-social{
 display:none!important;
}
/* General page & wrapper backgrounds */
body#category {
  background-color: #ffffff !important;
}

#wrapper {
  background-color: #ffffff !important;
}

/* Category header adjustments */
#js-product-list-header {
  margin-bottom: 1px !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}

.block-category {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: auto !important;
  margin-bottom: 0 !important;
}

/* Category Title H1 */
#js-product-list-header h1.h1 {
  font-family: 'Raleway', sans-serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #4b2267 !important; /* Brand Purple */
  text-align: center !important;
  margin-top: 10px !important;
  margin-bottom: 30px !important;
  letter-spacing: 1.5px !important;
  position: relative !important;
  display: inline-block !important;
  width: 100% !important;
}

#js-product-list-header h1.h1::after {
  content: "" !important;
  position: absolute !important;
  bottom: -10px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 60px !important;
  height: 3px !important;
  background-color: #c9933b !important; /* Gold line below title */
}

/* Premium Breadcrumbs */
.breadcrumb {
  background: transparent !important;
  padding: 20px 0 10px 0 !important;
  margin-bottom: 15px !important;
  font-size: 12px !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  border-bottom: none !important;
}

.breadcrumb ol {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
}

.breadcrumb li {
  display: inline-flex !important;
  align-items: center !important;
  color: #777777 !important;
}

.breadcrumb li a {
  color: #777777 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  font-weight: 500 !important;
}

.breadcrumb li a:hover {
  color: #c9933b !important; /* Gold on hover */
}

/* Breadcrumb separator */
.breadcrumb li:not(:last-child)::after {
  content: "|" !important;
  margin: 0 10px !important;
  color: #777777 !important;
}

/* Active item */
.breadcrumb li:last-child {
  color: #4b2267 !important; /* Purple for current category */
  font-weight: 700 !important;
}

/* Category Cover Banner & Title styling */
body#category #wrapper {
  padding-top: 0 !important;
}

.category-cover-banner {
  position: relative;
  height: 200px;
  background-color: #4b2267;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.category-cover-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.2) !important; /* Flat dark overlay for text contrast */
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.category-banner-titles {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.category-banner-titles .parent-category-title {
  color: #ffffff !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 42px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  margin: 0 0 5px 0 !important;
  line-height: 1.2 !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

.category-banner-titles .current-category-title {
  color: #ffffff !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 4px !important;
  margin: 0 !important;
  line-height: 1.2 !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

/* Hide default category title and image in product list header */
body#category #wrapper #content-wrapper #main #js-product-list-header h1.h1,
body#category #wrapper #content-wrapper #main #js-product-list-header .h1,
body#category #wrapper #content-wrapper #main #js-product-list-header .block-category h1,
body#category #wrapper #content-wrapper #main #js-product-list-header .block-category .h1,
h1#js-product-list-header,
.h2#js-product-list-header,
#js-product-list-header h1,
#js-product-list-header .h1,
#js-product-list-header h2,
#js-product-list-header .h2,
#js-product-list-header h3,
#js-product-list-header .h3,
.block-category h1,
.block-category .h1,
.block-category .block-category-inner {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.block-category.card {
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  background: transparent !important;
  margin-bottom: 20px !important;
}

/* Adjustments on responsive screens */
@media (max-width: 768px) {
  .category-cover-banner {
    height: 180px;
  }
  .category-banner-titles .parent-category-title {
    font-size: 28px !important;
  }
  .category-banner-titles .current-category-title {
    font-size: 14px !important;
    letter-spacing: 2px !important;
  }
}


/* Left Column Sidebar Styling */
#left-column .block-categories,
#left-column #left-column #search_filters_brands,
#left-column #search_filters_suppliers {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important; /* Soft beige/grey border */
  border-radius: 8px !important;
  padding: 22px !important;
  margin-bottom: 25px !important;
  box-shadow: 0 4px 12px rgba(75, 34, 103, 0.03) !important; /* Subtle purple-tinted shadow */
}

 #search_filters_brands, #search_filters_suppliers , #giftcard_block {
  display:none!important;
}

/* Subcategories Menu */
#left-column .block-categories .category-top-menu {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#left-column .block-categories .category-top-menu > li > a {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #4b2267 !important; /* Brand purple */
  text-transform: uppercase !important;
  text-decoration: none !important;
  display: block !important;
  margin-bottom: 12px !important;
  border-bottom: 2px solid #f8e8c9 !important; /* Beige line */
  padding-bottom: 8px !important;
  letter-spacing: 0.5px !important;
}

#left-column .category-sub-menu {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#left-column .category-sub-menu li {
  margin-bottom: 8px !important;
}

#left-column .category-sub-menu li a {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #444444 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  display: block !important;
  padding: 4px 0 !important;
}

#left-column .category-sub-menu li a:hover {
  color: #c9933b !important; /* Gold on hover */
  padding-left: 6px !important; /* Subtle movement */
}

/* If subcategory is active */
#left-column .category-sub-menu li a.active,
#left-column .category-sub-menu li a:focus {
  color: #4b2267 !important;
  font-weight: 700 !important;
}

#left-column section[data-type="extras"] {
display: none !important;
}

/* Search Filters / Facets */
#search_filters_wrapper #search_filters {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 8px !important;
  padding: 22px !important;
  box-shadow: 0 4px 12px rgba(75, 34, 103, 0.03) !important;
  margin-bottom: 25px !important;
}

#search_filters_wrapper #search_filters > p,
#search_filters_wrapper #search_filters > .h6 {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid #4b2267 !important;
  padding-bottom: 10px !important;
  margin-bottom: 20px !important;
  letter-spacing: 0.5px !important;
  display: block !important;
}

#search_filters_wrapper .facet {
  margin-bottom: 25px !important;
  border: none !important;
  padding: 0 !important;
}

#search_filters_wrapper .facet .facet-title {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #444444 !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
  border: none !important;
  padding-bottom: 0 !important;
  letter-spacing: 0.5px !important;
}

#search_filters_wrapper .facet ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#search_filters_wrapper .facet ul li {
  margin-bottom: 10px !important;
  padding: 0 !important;
  border: none !important;
}

#search_filters_wrapper .facet-label {
  display: block !important;
  position: relative !important;
  padding-left: 26px !important;
  min-height: 18px !important;
  line-height: 18px !important;
  cursor: pointer !important;
  margin: 0 !important;
  text-transform: none !important;
  border: none !important;
  text-decoration: none !important;
}

#search_filters_wrapper .facet-label:hover {
  color: #c9933b !important;
}

#search_filters_wrapper .facet-label a {
  display: block !important;
  line-height: 18px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #555555 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  text-transform: none !important;
  transition: color 0.2s ease !important;
}

#search_filters_wrapper .facet-label:hover a {
  color: #c9933b !important;
}

/* Hide native checkbox/radio inside the custom wrappers */
#search_filters_wrapper .custom-checkbox input[type="checkbox"],
#search_filters_wrapper .custom-radio input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  z-index: -1;
}

/* Custom Checkbox span */
#search_filters_wrapper .custom-checkbox {
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

#search_filters_wrapper .custom-checkbox > span {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 16px !important;
  height: 16px !important;
  border: 1px solid #4b2267 !important;
  border-radius: 3px !important;
  background-color: #ffffff !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
}

#search_filters_wrapper .custom-checkbox input[type="checkbox"]:checked + span {
  background-color: #4b2267 !important;
  border-color: #4b2267 !important;
}

#search_filters_wrapper .custom-checkbox span i.checkbox-checked {
  color: #ffffff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  display: none !important;
  font-weight: 900 !important;
}

#search_filters_wrapper .custom-checkbox input[type="checkbox"]:checked + span i.checkbox-checked {
  display: inline-block !important;
}

#search_filters_wrapper .custom-checkbox > span:hover {
  border-color: #c9933b !important;
}

/* Sorting bar styling */
.products-selection {
  background-color: #fff3e3 !important; /* Warm beige background */
  border: 1px solid #f8e8c9 !important;
  border-radius: 8px !important;
  padding: 15px 20px !important;
  margin-bottom: 30px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.products-selection .total-products {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #4b2267 !important; /* Purple text */
  margin: 0 !important;
  padding: 0 !important;
}

.products-selection .sort-by-row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  gap: 12px !important;
}

.products-selection .sort-by {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #444444 !important;
  margin: 0 !important;
  white-space: nowrap !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

/* Dropdown Sort Selection */
.products-sort-order {
  margin: 0 !important;
  padding: 0 !important;
}

.products-sort-order .select-title {
  background-color: #ffffff !important;
  border: 1px solid #4b2267 !important; /* Purple border */
  border-radius: 20px !important;
  color: #4b2267 !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  padding: 8px 22px !important;
  text-transform: uppercase !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-width: 200px !important;
  outline: none !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

.products-sort-order .select-title:hover {
  background-color: #4b2267 !important;
  color: #ffffff !important;
}

.products-sort-order .select-title i {
  font-size: 20px !important;
  margin-left: 8px !important;
  transition: transform 0.25s ease !important;
}

/* Dropdown menu options */
.products-sort-order .dropdown-menu {
  border: 1px solid #f8e8c9 !important;
  border-radius: 8px !important;
  box-shadow: 0 6px 18px rgba(75, 34, 103, 0.08) !important;
  padding: 8px 0 !important;
  margin-top: 5px !important;
}

.products-sort-order .select-list {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #444444 !important;
  padding: 10px 20px !important;
  text-transform: uppercase !important;
  display: block !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  letter-spacing: 0.5px !important;
}

.products-sort-order .select-list:hover {
  background-color: #fff3e3 !important;
  color: #c9933b !important; /* Gold on hover */
}

.products-sort-order .select-list.current {
  background-color: #4b2267 !important;
  color: #ffffff !important;
}

/* Premium Pagination */
.pagination {
  background-color: #ffffff !important;
  border-top: 1px solid #f2e6d6 !important;
  padding: 25px 0 !important;
  margin-top: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.pagination > div:first-child {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #777777 !important;
}

.pagination .page-list {
  display: flex !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 8px !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

.pagination .page-list li {
  margin: 0 !important;
}

.pagination .page-list li a,
.pagination .page-list li span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  background-color: #ffffff !important;
  border: 1px solid #4b2267 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}

.pagination .page-list li a:hover {
  background-color: #c9933b !important; /* Gold on hover */
  border-color: #c9933b !important;
  color: #ffffff !important;
}

/* Current page */
.pagination .page-list li.current a,
.pagination .page-list li.current span {
  background-color: #4b2267 !important; /* Purple active page */
  border-color: #4b2267 !important;
  color: #ffffff !important;
  cursor: default !important;
}

/* Spacer dots */
.pagination .page-list li span.spacer {
  border: none !important;
  background: transparent !important;
  color: #777777 !important;
}

/* Next / Prev buttons */
.pagination .page-list li a.next,
.pagination .page-list li a.previous {
  width: auto !important;
  padding: 0 20px !important;
  border-radius: 20px !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  gap: 6px !important;
  letter-spacing: 0.5px !important;
}

.pagination .page-list li a.next i,
.pagination .page-list li a.previous i {
  font-size: 16px !important;
}

/* ----------------------------------------------------
   Fiche Produit (Product Page) Redesign
   ---------------------------------------------------- */
body#product {
  background-color: #ffffff !important;
}

/* Product Title */
.page-product h1[itemprop="name"] {
  font-family: 'Raleway', sans-serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #000000 !important; /* Premium Black */
  letter-spacing: 0.5px !important;
  margin-bottom: 15px !important;
  line-height: 1.3 !important;
}

/* Product Price */
.product-prices .current-price-value {
  color: #4b2267 !important; /* Brand Purple */
  font-size: 28px !important;
  font-weight: 700 !important;
}

.product-prices .tax-shipping-delivery-label {
  color: #777777 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}

/* Quantity input focus ring */
#quantity_wanted:focus,
.bootstrap-touchspin input:focus {
  border-color: #4b2267 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(75, 34, 103, 0.15) !important;
}

/* Gallery Container Card */
.images-container {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important; /* Elegant light beige border */
  border-radius: 8px !important;
  padding: 24px !important;
  box-shadow: 0 4px 15px rgba(75, 34, 103, 0.02) !important;
  position: relative !important;
  margin-bottom: 30px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.images-container .product-cover {
  margin-bottom: 20px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 450px !important;
  background: transparent !important;
}

.images-container .product-cover img {
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

.images-container .js-qv-mask.mask {
  width: 100% !important;
  margin-top: 15px !important;
}

.product-images {
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

.product-images > li.thumb-container {
  margin: 0 !important;
}

.product-images > li.thumb-container .thumb {
  border: 1px solid #f2e6d6 !important;
  border-radius: 4px !important;
  padding: 4px !important;
  background-color: #ffffff !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  width: 80px !important;
  height: 80px !important;
  object-fit: contain !important;
}

.product-images > li.thumb-container .thumb.selected,
.product-images > li.thumb-container .thumb:hover {
  border: 2px solid #4b2267 !important; /* Purple active border */
  box-shadow: 0 2px 8px rgba(75, 34, 103, 0.1) !important;
}

/* Absolute Position Product Flags on Gallery Box */
.product-container .product-flags {
  position: absolute !important;
  top: 15px !important;
  left: 15px !important;
  z-index: 10 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

.product-container .product-flags li.product-flag {
  background-color: #c9933b !important; /* Brand Gold for badges */
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  padding: 5px 12px !important;
  border-radius: 4px !important;
  letter-spacing: 0.8px !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
}

/* Buying Actions Card */
.product-actions {
  background-color: #fff9f2 !important; /* Very soft warm beige background */
  border: 1px solid #f2e6d6 !important;
  border-radius: 8px !important;
  padding: 25px !important;
  margin-bottom: 25px !important;
  box-shadow: 0 4px 12px rgba(75, 34, 103, 0.02) !important;
}

/* Flex layout to align Qty input, Add to Cart button and Heart icon side-by-side */
.product-quantity {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 15px !important;
  margin-top: 15px !important;
  margin-bottom: 15px !important;
}

.product-quantity > .qty {
  margin: 0 !important;
  float: none !important;
}

.product-quantity > .add {
  margin: 0 !important;
  float: none !important;
}

/* Ensure Add to Cart button is high-end */
.product-quantity .add-to-cart {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  padding: 10px 25px !important;
  height: 44px !important;
  border-radius: 4px !important;
  border: none !important;
  transition: all 0.25s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.product-quantity .add-to-cart:hover {
  background-color: #c9933b !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(201, 147, 59, 0.2) !important;
}

/* Wishlist Button styling consistency on product page */
.product-quantity .wishlist-button,
.product-quantity .wishlist-button-add {
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.product-quantity .wishlist-button-add,
.product-quantity .wishlist-button button {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 50% !important;
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  padding: 0 !important;
}

.product-quantity .wishlist-button-add:hover,
.product-quantity .wishlist-button button:hover {
  background-color: #c9933b !important;
  color: #ffffff !important;
  transform: scale(1.05) !important;
}

.product-quantity .wishlist-button-add i,
.product-quantity .wishlist-button button i {
  color: #ffffff !important;
  font-size: 20px !important;
}

/* Social Sharing on Product Page */
.product-social-sharing {
  margin-top: 20px !important;
  display: flex !important;
  align-items: center !important;
  gap: 15px !important;
}

.product-social-sharing span.label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #777777 !important;
  letter-spacing: 0.5px !important;
}

.product-social-sharing ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  gap: 10px !important;
}

.product-social-sharing ul li {
  margin: 0 !important;
  padding: 0 !important;
}

.product-social-sharing ul li a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #777777 !important;
  transition: all 0.2s ease !important;
  font-size: 16px !important;
  text-decoration: none !important;
}

.product-social-sharing ul li a:hover {
  color: #4b2267 !important;
  transform: translateY(-2px);
}

/* Out of Stock Mail Alerts Form */
.js-mailalert {
  margin: 25px 0 !important;
  background-color: #fffaf5 !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 8px !important;
  padding: 20px !important;
  box-shadow: 0 4px 10px rgba(75, 34, 103, 0.01) !important;
}

.js-mailalert span.control-label {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  margin-bottom: 12px !important;
  display: block !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.js-mailalert-input {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.js-mailalert input[type="email"] {
  width: 100% !important;
  height: 42px !important;
  border: 1px solid #e9dcc9 !important;
  border-radius: 4px !important;
  padding: 10px 15px !important;
  font-size: 14px !important;
  outline: none !important;
  background-color: #ffffff !important;
  transition: all 0.25s ease !important;
}

.js-mailalert input[type="email"]:focus {
  border-color: #4b2267 !important;
  box-shadow: 0 0 0 3px rgba(75, 34, 103, 0.1) !important;
}

.js-mailalert button[type="submit"] {
  width: 100% !important;
  height: 42px !important;
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 4px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  font-size: 12px !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
}

.js-mailalert button[type="submit"]:hover {
  background-color: #c9933b !important;
  color: #ffffff !important;
  box-shadow: 0 4px 10px rgba(201, 147, 59, 0.2) !important;
}

/* Reassurance Block Card styling */
.blockreassurance_product {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 8px !important;
  padding: 20px 25px !important;
  margin: 30px 0 !important;
  box-shadow: 0 4px 12px rgba(75, 34, 103, 0.02) !important;
}

.blockreassurance_product > div {
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  grid-template-rows: auto auto !important;
  gap: 2px 15px !important;
  padding: 15px 0 !important;
  border-bottom: 1px solid #f9f0e6 !important;
  align-items: center !important;
}

.blockreassurance_product > div:last-child {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

.blockreassurance_product > div:first-child {
  padding-top: 0 !important;
}

.blockreassurance_product .item-product {
  grid-column: 1 !important;
  grid-row: 1 / span 2 !important;
  align-self: center !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.blockreassurance_product .item-product img {
  width: 32px !important;
  height: 32px !important;
  object-fit: contain !important;
}

.blockreassurance_product .block-title {
  grid-column: 2 !important;
  grid-row: 1 !important;
  font-family: 'Raleway', sans-serif !important;
  font-weight: 700 !important;
  color: #4b2267 !important; /* Brand Purple */
  font-size: 14px !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

.blockreassurance_product p {
  grid-column: 2 !important;
  grid-row: 2 !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 12px !important;
  color: #777777 !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

/* Tabs Container Card styling */
.tabs {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 8px !important;
  padding: 25px !important;
  margin-top: 30px !important;
  box-shadow: 0 4px 15px rgba(75, 34, 103, 0.03) !important;
}

.tabs .nav-tabs {
  border-bottom: 1px solid #f2e6d6 !important;
  margin-bottom: 25px !important;
  display: flex !important;
  gap: 10px !important;
}

.tabs .nav-tabs .nav-link {
  font-family: 'Raleway', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #777777 !important;
  text-transform: uppercase !important;
  padding: 10px 15px !important;
  border: none !important;
  background: transparent !important;
  transition: all 0.25s ease !important;
  position: relative !important;
  border-bottom: 3px solid transparent !important;
}

.tabs .nav-tabs .nav-link:hover {
  color: #c9933b !important; /* Gold on hover */
  border-bottom: 3px solid #c9933b !important;
}

.tabs .nav-tabs .nav-link.active {
  color: #4b2267 !important; /* Brand Purple active tab */
  border-bottom: 3px solid #4b2267 !important;
  font-weight: 700 !important;
}

.tabs .tab-content {
  padding: 5px 0 !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #444444 !important;
}

.tabs .tab-content .product-description {
  color: #444444 !important;
}

/* Product features Data Sheet / Table */
.product-features > dl.data-sheet {
  background: #ffffff !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 8px !important;
  padding: 15px !important;
  margin-top: 20px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 8px 0 !important;
}

.product-features > dl.data-sheet dt.name,
.product-features > dl.data-sheet dd.value {
  padding: 10px 15px !important;
  margin: 0 !important;
  border-radius: 4px !important;
  background-color: transparent !important; /* Clear defaults */
  font-size: 14px !important;
  display: flex !important;
  align-items: center !important;
  min-height: auto !important;
  flex: 1 0 45% !important;
}

.product-features > dl.data-sheet dt.name {
  font-weight: 700 !important;
  color: #4b2267 !important; /* Purple label */
  text-transform: uppercase !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
}

.product-features > dl.data-sheet dd.value {
  color: #444444 !important;
  font-weight: 500 !important;
}

/* Zebra striping for features */
.product-features > dl.data-sheet dt.name:nth-of-type(even),
.product-features > dl.data-sheet dd.value:nth-of-type(even) {
  background-color: #fffaf5 !important; /* Soft warm beige striping */
}

/* Custom CSS overrides for general theme links to replace default blue */
a {
  color: #4b2267 !important;
}

a:hover, a:focus {
  color: #c9933b !important;
  text-decoration: none !important;
}

.product-miniature .highlighted-informations .quick-view:hover {
  color: #c9933b !important;
}

/* General Primary buttons overrides (fixes blue everywhere) */
.btn-primary {
  background-color: #4b2267 !important; /* Brand Purple */
  color: #ffffff !important;
  border: none !important;
  transition: all 0.25s ease !important;
  border-radius: 4px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
  background-color: #c9933b !important; /* Gold on hover */
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 4px 12px rgba(201, 147, 59, 0.2) !important;
}

/* Cart Confirmation Modal styling */
#blockcart-modal .product-name {
  color: #4b2267 !important;
  font-weight: 700 !important;
}

/* Product variants dropdowns & inputs styling */
.product-variants .control-label {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #333333 !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
  letter-spacing: 0.5px !important;
}

.product-variants .form-control-select {
  border: 1px solid #4b2267 !important; /* Purple border */
  border-radius: 20px !important;
  color: #4b2267 !important;
  font-weight: 700 !important;
  padding: 8px 15px !important;
  outline: none !important;
}

.product-variants .input-color:checked + span,
.product-variants .input-radio:checked + span {
  border: 2px solid #4b2267 !important; /* Purple border on active variant */
  outline: none !important;
}

/* Bottom Recommendations Layout & Dividers */
.featured-products,
.product-accessories {
  border-top: 1px solid #f2e6d6 !important;
  margin-top: 50px !important;
  padding-top: 40px !important;
  margin-bottom: 50px !important;
}

/* Premium Headings for Bottom Sections */
.products-section-title,
.featured-products > h2, 
.featured-products > h3, 
.featured-products > .h5, 
.product-accessories > .h5,
.product-accessories > h3 {
  font-family: 'Raleway', sans-serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #4b2267 !important; /* Brand Purple */
  text-align: center !important;
  margin-top: 10px !important;
  margin-bottom: 45px !important;
  letter-spacing: 1.5px !important;
  position: relative !important;
  display: block !important;
  width: 100% !important;
  line-height: 1.4 !important;
}

.products-section-title::after,
.featured-products > h2::after,
.featured-products > h3::after,
.featured-products > .h5::after,
.product-accessories > .h5::after,
.product-accessories > h3::after {
  content: "" !important;
  position: absolute !important;
  bottom: -15px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 50px !important;
  height: 3px !important;
  background-color: #c9933b !important; /* Gold line below title */
}

/* Global Product Miniature styling for listings and bottom grids */
.featured-products .products,
.product-accessories .products,
#js-product-list .products,
.home-section-5 .products {
  display: flex !important;
  flex-wrap: wrap !important;
}

.featured-products .products .product,
.product-accessories .products .product,
#js-product-list .products .product,
.home-section-5 .products .product {
  display: flex !important;
  flex-direction: column !important;
}

.featured-products .product-miniature,
.product-accessories .product-miniature,
#js-product-list .product-miniature,
.home-section-5 .product-miniature {
  margin-bottom: 30px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important; /* Stretch card to column height */
}

.featured-products .thumbnail-container,
.product-accessories .thumbnail-container,
#js-product-list .thumbnail-container,
.home-section-5 .thumbnail-container {
  flex: 1 1 auto !important; /* Stretch inner container */
  display: flex !important;
  flex-direction: column !important;
}

/* Add borders and spacing specific to listings and related products */
.featured-products .thumbnail-container,
.product-accessories .thumbnail-container,
#js-product-list .thumbnail-container {
  border: 1px solid #f2e6d6 !important; /* Subtle border */
  border-radius: 8px !important;
  background-color: #ffffff !important;
  padding: 20px !important;
  box-shadow: 0 4px 12px rgba(75, 34, 103, 0.02) !important;
  transition: all 0.3s ease !important;
  align-items: center !important;
  position: relative !important;
}

.featured-products .thumbnail-container:hover,
.product-accessories .thumbnail-container:hover,
#js-product-list .thumbnail-container:hover {
  border-color: #c9933b !important; /* Gold border on hover */
  box-shadow: 0 8px 24px rgba(75, 34, 103, 0.06) !important;
  transform: translateY(-4px) !important;
}

/* Miniature Top Image block styling with beautiful beige background circle */
.featured-products .thumbnail-top,
.product-accessories .thumbnail-top,
#js-product-list .thumbnail-top {
  position: relative !important;
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 15px !important;
  overflow: hidden !important;
  min-height: 240px !important;
  width: 100% !important;
}

.featured-products .thumbnail-top::before,
.product-accessories .thumbnail-top::before,
#js-product-list .thumbnail-top::before {
  content: "" !important;
  position: absolute !important;
  width: 140px !important;
  height: 140px !important;
  background-color: #fff9f2 !important; /* Soft beige circle */
  border-radius: 50% !important;
  z-index: 1 !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  transition: transform 0.3s ease !important;
}

.featured-products .product-miniature:hover .thumbnail-top::before,
.product-accessories .product-miniature:hover .thumbnail-top::before,
#js-product-list .product-miniature:hover .thumbnail-top::before {
  transform: translate(-50%, -50%) scale(1.08) !important;
}

.featured-products .product-thumbnail,
.product-accessories .product-thumbnail,
#js-product-list .product-thumbnail {
  position: relative !important;
  z-index: 2 !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
  display: block !important;
  height: 100% !important; /* Prevent bottom cropping from default theme heights */
}

.featured-products .product-thumbnail img,
.product-accessories .product-thumbnail img,
#js-product-list .product-thumbnail img {
  max-height: 220px !important;
  width: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

/* Product Info text blocks inside miniatures */
.featured-products .product-description,
.product-accessories .product-description,
#js-product-list .product-description,
.home-section-5 .product-description {
  text-align: center !important;
  padding: 0 10px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
  flex: 1 1 auto !important; /* Stretch description area to push buttons down */
}

.featured-products .product-title,
.product-accessories .product-title,
#js-product-list .product-title {
  margin: 10px 0 5px 0 !important;
  min-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.featured-products .product-title a,
.product-accessories .product-title a,
#js-product-list .product-title a {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #000000 !important; /* Solid black */
  text-transform: uppercase !important;
  text-decoration: none !important;
  letter-spacing: 0.5px !important;
  line-height: 1.4 !important;
  text-align: center !important;
}

.featured-products .product-title a:hover,
.product-accessories .product-title a:hover,
#js-product-list .product-title a:hover {
  color: #c9933b !important;
}

.featured-products .product-price-and-shipping,
.product-accessories .product-price-and-shipping,
#js-product-list .product-price-and-shipping {
  margin-bottom: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.featured-products .product-price-and-shipping .price,
.product-accessories .product-price-and-shipping .price,
#js-product-list .product-price-and-shipping .price {
  color: #4b2267 !important; /* Brand purple */
  font-size: 16px !important;
  font-weight: 700 !important;
  font-family: 'Raleway', sans-serif !important;
}

.featured-products .product-price-and-shipping .regular-price,
.product-accessories .product-price-and-shipping .regular-price,
#js-product-list .product-price-and-shipping .regular-price {
  color: #777777 !important;
  text-decoration: line-through !important;
  font-size: 13px !important;
}

.featured-products .highlighted-informations,
.product-accessories .highlighted-informations,
#js-product-list .highlighted-informations {
  display: none !important; /* Hide default hover box */
}

/* ----------------------------------------------------
    PrestaShop Blog (EverPsBlog) Redesign
   ---------------------------------------------------- */

/* Outer card layout override on blog pages */
body.page-everblog #content.page-content.card.card-block {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* --- Blog Headers & Heroes --- */
body#module-everpsblog-blog .everpsblog-blog-header,
body#module-everpsblog-category .everpsblog-category-header,
body#module-everpsblog-tag .everpsblog-blog-header,
body#module-everpsblog-author .everpsblog-blog-header {
  background-color: #fff9f2 !important; /* Premium light warm beige */
  background-image: none !important;
  border: none !important;
  border-bottom: 1px solid #f2e6d6 !important;
  box-shadow: none !important;
  padding: 30px 0 !important;
  margin-top: 0 !important;
  margin-bottom: 35px !important;
}

body#module-everpsblog-blog .everpsblog-blog-header__inner,
body#module-everpsblog-category .everpsblog-category-hero,
body#module-everpsblog-tag .everpsblog-blog-header__inner,
body#module-everpsblog-author .everpsblog-blog-header__inner {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

body#module-everpsblog-category .everpsblog-category-hero-overlay {
  min-height: auto !important;
  padding: 10px 0 !important;
  gap: 0 !important;
}

body#module-everpsblog-post .everpsblog-post-header {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-top: 40px !important;
  margin-bottom: 30px !important;
}

body#module-everpsblog-post .everpsblog-post-hero {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 20px 0 !important;
  margin: 0 !important;
}

/* Category Page H1 Title */
#module-everpsblog-blog h1.everpsblog-blog-header__title,
#module-everpsblog-category h1.everpsblog-category-title,
#module-everpsblog-tag h1.everpsblog-blog-header__title,
#module-everpsblog-author h1.everpsblog-blog-header__title,
#module-everpsblog-post h1.everpsblog-post-title {
  font-family: 'Raleway', sans-serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #4b2267 !important; /* Brand Purple */
  text-align: center !important;
  letter-spacing: 1.5px !important;
  position: relative !important;
  display: block !important;
  margin: 0 auto 25px auto !important;
  width: fit-content !important;
}

#module-everpsblog-blog h1.everpsblog-blog-header__title::after,
#module-everpsblog-category h1.everpsblog-category-title::after,
#module-everpsblog-tag h1.everpsblog-blog-header__title::after,
#module-everpsblog-author h1.everpsblog-blog-header__title::after,
#module-everpsblog-post h1.everpsblog-post-title::after {
  content: "" !important;
  position: absolute !important;
  bottom: -12px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 60px !important;
  height: 3px !important;
  background-color: #c9933b !important; /* Gold line below title */
}

/* Search bar styling (Hidden) */
.everpsblog-search-toolbar {
  display: none !important;
}

.everpsblog-subcategories.d-flex {
  gap: 20px !important;
}

/* Category Description Styling */
#module-everpsblog-category .categorycontent {
  margin: 20px auto 40px auto !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 15px !important;
  color: #555555 !important;
  text-align: center !important;
  max-width: 800px !important;
  line-height: 1.6 !important;
}

/* Subcategories Pill Buttons */
.everpsblog-subcategories .everpsblog-top-category-btn,
.everpsblog-subcategories .everpsblog-subcategory-btn {
  background-color: #fff9f2 !important;
  color: #4b2267 !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 20px !important;
  padding: 15px 64px !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
}

#module-everpsblog-category .everpsblog-subcategories {
  margin-top: 15px;
}



.everpsblog-subcategories .everpsblog-top-category-btn:hover,
.everpsblog-subcategories .everpsblog-subcategory-btn:hover,
body #wrapper .everpsblog-subcategories a.everpsblog-top-category-btn:hover,
body #wrapper .everpsblog-subcategories a.everpsblog-subcategory-btn:hover {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border-color: #4b2267 !important;
}

/* Active Category Button */
.everpsblog-subcategories .everpsblog-top-category-btn.active,
.everpsblog-subcategories .everpsblog-subcategory-btn.active,
body #wrapper .everpsblog-subcategories a.everpsblog-top-category-btn.active,
body #wrapper .everpsblog-subcategories a.everpsblog-subcategory-btn.active {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border-color: #4b2267 !important;
}

/* Active Category Button on Hover */
body #wrapper .everpsblog-subcategories a.everpsblog-top-category-btn.active:hover,
body #wrapper .everpsblog-subcategories a.everpsblog-subcategory-btn.active:hover {
  background-color: #fff9f2 !important;
  color: #4b2267 !important;
  border-color: #f2e6d6 !important;
}

/* Global Flex Column Utility */
.flex-column {
  flex-direction: column !important;
}

/* --- Blog Listing Cards --- */
#module-everpsblog-blog .everpsblog-listing-card,
#module-everpsblog-category .everpsblog-listing-card,
#module-everpsblog-tag .everpsblog-listing-card,
#module-everpsblog-author .everpsblog-listing-card {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important; /* Elegant light beige border */
  border-radius: 12px !important;
  box-shadow: 0 4px 15px rgba(75, 34, 103, 0.02) !important;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  margin-bottom: 30px !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

#module-everpsblog-blog .everpsblog-listing-card .card-body,
#module-everpsblog-category .everpsblog-listing-card .card-body,
#module-everpsblog-tag .everpsblog-listing-card .card-body,
#module-everpsblog-author .everpsblog-listing-card .card-body {
  display: flex !important;
  flex-direction: column !important;
  padding: 24px !important;
}

/* Listing card Date Styling */
#module-everpsblog-blog .everpsblog-listing-card .card-body p.text-muted,
#module-everpsblog-category .everpsblog-listing-card .card-body p.text-muted,
#module-everpsblog-tag .everpsblog-listing-card .card-body p.text-muted,
#module-everpsblog-author .everpsblog-listing-card .card-body p.text-muted {
  font-family: 'Raleway', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #c9933b !important; /* Gold */
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
}

#module-everpsblog-blog .everpsblog-listing-card:hover,
#module-everpsblog-category .everpsblog-listing-card:hover,
#module-everpsblog-tag .everpsblog-listing-card:hover,
#module-everpsblog-author .everpsblog-listing-card:hover {
  border-color: #c9933b !important; /* Gold border on hover */
  box-shadow: 0 8px 24px rgba(75, 34, 103, 0.05) !important;
  transform: translateY(-4px) !important;
}

#module-everpsblog-blog .everpsblog-listing-card:hover .btn-blog-primary,
#module-everpsblog-category .everpsblog-listing-card:hover .btn-blog-primary {
  background-color: #c9933b !important;
  color: #ffffff !important;
}

/* Image zoom transition */
.everpsblog-image-wrapper {
  background-color: #fcf9f5 !important;
}

.everpsblog-image-wrapper img {
  transition: transform 0.4s ease !important;
}

#module-everpsblog-blog .everpsblog-listing-card:hover .everpsblog-image-wrapper img,
#module-everpsblog-category .everpsblog-listing-card:hover .everpsblog-image-wrapper img,
#module-everpsblog-tag .everpsblog-listing-card:hover .everpsblog-image-wrapper img,
#module-everpsblog-author .everpsblog-listing-card:hover .everpsblog-image-wrapper img {
  transform: scale(1.05) !important;
}

/* Card titles */
h2.everpsblog.article-content.h2 {
  margin-bottom: 12px !important;
}

h2.everpsblog.article-content.h2 a {
  font-family: 'Raleway', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: #4b2267 !important;
  letter-spacing: 0.5px !important;
  transition: color 0.2s ease !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
}

h2.everpsblog.article-content.h2 a:hover {
  color: #c9933b !important; /* Gold on hover */
}

/* Excerpt text */
.everpsblogcontent.rte {
  font-family: 'Raleway', sans-serif !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  color: #666666 !important;
  margin-bottom: 20px !important;
}

/* Read more button */
.btn.btn-blog-primary {
  background-color: #4b2267 !important; /* Brand Purple */
  color: #ffffff !important;
  border: none !important;
  border-radius: 25px !important;
  padding: 10px 20px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  transition: all 0.3s ease !important;
  display: block !important;
  text-align: center !important;
  box-shadow: none !important;
}

.btn.btn-blog-primary:hover {
  background-color: #c9933b !important; /* Gold on hover */
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(201, 147, 59, 0.2) !important;
}

/* --- Blog Detail Page --- */

/* Social Sharing Icons styling */
.social-sharing-hero ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  gap: 12px !important;
}

.social-sharing-hero ul li a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #fff9f2 !important;
  color: #4b2267 !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  letter-spacing: 0.5px !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 2px 8px rgba(75, 34, 103, 0.02) !important;
}

.social-sharing-hero ul li a:hover {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border-color: #4b2267 !important;
  transform: translateY(-2px) !important;
}

/* Post meta-data box (Author & Date) */
.everpsblog-post-intro {
  border-top: 1px solid #f2e6d6 !important;
  border-bottom: 1px solid #f2e6d6 !important;
  padding: 15px 0 !important;
  margin-top: 25px !important;
  margin-bottom: 30px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 10px 30px !important;
  background: transparent !important;
}

.everpsblog-post-intro p {
  margin: 0 !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 12px !important;
  color: #777777 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
}

.everpsblog-post-intro p strong {
  font-weight: 700 !important;
  color: #4b2267 !important;
}

.everpsblog-post-intro p a,
.everpsblog-post-intro p span {
  font-weight: 600 !important;
  color: #333333 !important;
}

/* Post content container card */
#module-everpsblog-post .card {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 15px rgba(75, 34, 103, 0.02) !important;
  overflow: hidden !important;
  margin-bottom: 40px !important;
}

.card-body.postcontent {
  padding: 40px !important;
  font-family: 'Raleway', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: #333333 !important;
}

.card-body.postcontent p {
  margin-bottom: 20px !important;
}

.card-body.postcontent h2,
.card-body.postcontent h3 {
  font-family: 'Raleway', sans-serif !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  margin-top: 35px !important;
  margin-bottom: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.card-body.postcontent h2 {
  font-size: 20px !important;
}

.card-body.postcontent h3 {
  font-size: 17px !important;
}

/* --- Blog Detail Page Redesign --- */
body.page-everblog-post #content.page-content.card.card-block {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.everpsblog-post-img-col .everpsblog-post-featured-image {
  border-radius: 12px !important;
  border: 1px solid #f2e6d6 !important;
  overflow: hidden !important;
  box-shadow: 0 4px 15px rgba(75, 34, 103, 0.02) !important;
}

.everpsblog-post-img-col .everpsblog-post-featured-image img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  display: block !important;
}

.everpsblog-top-tag-link {
  font-family: 'Raleway', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #c9933b !important; /* Gold */
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  text-decoration: none !important;
  display: inline-block !important;
}

.everpsblog-top-tag-link:hover {
  color: #4b2267 !important; /* Purple on hover */
  text-decoration: none !important;
}

.everpsblog-post-title-detail {
  font-family: 'Raleway', sans-serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: #4b2267 !important; /* Purple */
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  line-height: 1.3 !important;
  margin-top: 5px !important;
  text-align: left !important;
}

.everpsblog-post-date-pill {
  display: inline-block !important;
  background-color: #fff9f2 !important; /* Light beige */
  border: 1px solid #f2e6d6 !important;
  color: #c9933b !important; /* Gold */
  font-family: 'Raleway', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  padding: 4px 14px !important;
  border-radius: 20px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.everpsblog-post-body-content.rte {
  font-family: 'Raleway', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
  color: #555555 !important;
  text-align: left !important;
}

.everpsblog-post-body-content.rte p {
  margin-bottom: 20px !important;
}

.everpsblog-post-body-content.rte h2,
.everpsblog-post-body-content.rte h3 {
  font-family: 'Raleway', sans-serif !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  margin-top: 30px !important;
  margin-bottom: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.everpsblog-post-body-content.rte h2 {
  font-size: 18px !important;
}

.everpsblog-post-body-content.rte h3 {
  font-size: 16px !important;
}

/* AI Summary Banner, Comment Form, and Author Box complete removals */
.ai-summary-banner,
.comment-form,
#leaveComment,
.comments,
span#leaveComment,
#commentsTitle,
.everpsblog-post-author-box {
  display: none !important;
}

/* Tags & Author box */
.post-tags .badge,
.taggedIn a {
  background-color: #fff9f2 !important; /* Soft warm beige */
  color: #4b2267 !important; /* Brand purple */
  font-family: 'Raleway', sans-serif !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  display: inline-block !important;
  border: 1px solid #f2e6d6 !important;
}

.post-tags .badge:hover,
.taggedIn a:hover {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  border-color: #4b2267 !important;
}

.everpsblog-post-author-box {
  background-color: #ffffff !important;
  border: 1px solid #f2e6d6 !important;
  border-radius: 12px !important;
  padding: 25px !important;
  margin-top: 30px !important;
  display: flex !important;
  align-items: center !important;
  gap: 25px !important;
  box-shadow: 0 4px 15px rgba(75, 34, 103, 0.02) !important;
}

.everpsblog-post-author-box .card {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  margin: 0 !important;
}

.everpsblog-post-author-box__image-link img {
  border-radius: 50% !important;
  border: 2px solid #f2e6d6 !important;
}

/* --- Premium Collapsible Category Description --- */
.category-description-wrapper {
  position: relative !important;
  margin: 0 auto 0px auto !important;
  max-width: 800px !important;
  text-align: center !important;
}

.category-description-content {
  font-family: 'Raleway', sans-serif !important;
  font-size: 14px !important;
  line-height: 1.8 !important;
  color: #666666 !important;
  transition: max-height 0.4s ease-in-out !important;
  overflow: hidden !important;
  text-align: justify !important;
}

.category-description-content p:last-child {
  margin-bottom: 0 !important;
}

/* Collapsed state */
.category-description-wrapper.is-collapsed .category-description-content {
  max-height: 75px !important; /* Roughly 3 lines of text */
  position: relative !important;
}

/* Gradient fade overlay when collapsed */
.category-description-wrapper.is-collapsed::after {
  content: '' !important;
  position: absolute !important;
  bottom: 35px !important; /* Position just above the button */
  left: 0 !important;
  width: 100% !important;
  height: 40px !important;
  background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1)) !important;
  pointer-events: none !important;
  transition: opacity 0.3s ease !important;
}

/* Expanded state: hide gradient */
.category-description-wrapper.is-expanded::after {
  opacity: 0 !important;
}

/* Premium Lire + Button */
.category-description-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: transparent !important;
  border: none !important;
  color: #4b2267 !important; /* Brand Purple */
  font-family: 'Raleway', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  cursor: pointer !important;
  margin-top: 15px !important;
  transition: all 0.25s ease !important;
  padding: 6px 16px !important;
  border-radius: 20px !important;
  border: 1px solid #4b2267 !important;
  outline: none !important;
}

.category-description-toggle:hover {
  background-color: #4b2267 !important;
  color: #ffffff !important;
  box-shadow: 0 4px 10px rgba(75, 34, 103, 0.15) !important;
}

.category-description-toggle i {
  font-size: 16px !important;
  transition: transform 0.3s ease !important;
  vertical-align: middle !important;
}

.category-description-wrapper.is-expanded .category-description-toggle i {
  transform: rotate(180deg) !important;
}

.category-description-toggle .toggle-symbol {
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-left: 3px !important;
  vertical-align: middle !important;
  display: inline-block !important;
  line-height: 1 !important;
}

/* Active category highlighting in sidebar category tree (resolving specificity) */
#left-column .category-sub-menu li a.active-category,
#left-column .block-categories .category-top-menu > li > a.active-category {
  color: #4b2267 !important; /* Brand Purple */
  font-weight: 700 !important;
}

/* Ensure sharing icons align on the same vertical line */
.social-sharing li {
  vertical-align: middle !important;
}

/* Instagram icon styling in social sharing block */
.social-sharing li.instagram.icon-gray-custom {
  background-image: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #ffffff !important;
  border-radius: 50% !important;
  width: 2.5rem !important;
  height: 2.5rem !important;
  margin-left: 0.5rem !important;
  cursor: pointer !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03) !important;
  transition: all 0.2s ease !important;
  vertical-align: middle !important;
}

.social-sharing li.instagram.icon-gray-custom a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
}

.social-sharing li.instagram.icon-gray-custom svg {
  transition: all 0.2s ease !important;
}

.social-sharing li.instagram.icon-gray-custom svg path {
  fill: #7a7a7a !important; /* Matches the grey of the Facebook icon */
  transition: fill 0.2s ease !important;
}

.social-sharing li.instagram.icon-gray-custom:hover {
  transform: translateY(-2px) !important;
}

.social-sharing li.instagram.icon-gray-custom:hover svg path {
  fill: #4b2267 !important; /* Brand Purple on hover */
}


/* Panier*/
.blockreassurance_product
{
display:none;
}



/* ----------------------------------------------------
   Mobile Header & Mobile Menu Redesign (Premium)
   ---------------------------------------------------- */

/* Mobile Header Redesign */
@media (max-width: 991px) {
  #header .header-nav {
    max-height: none !important;
    height: auto !important;
    padding: 0 !important;
    border-bottom: none !important;
  }
}

.mobile-header-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 12px 16px !important;
  background-color: #4b2267 !important; /* Violet background */
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
  box-sizing: border-box !important;
}

.mobile-header-left {
  flex: 0 0 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.mobile-header-left #menu-icon {
  margin: 0 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
}

.mobile-header-left #menu-icon i {
  font-size: 28px !important;
  color: #ffffff !important; /* White hamburger menu */
  font-weight: bold !important;
}

.mobile-header-center {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

#_mobile_logo {
  flex: 1 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

#_mobile_logo img.logo,
#_mobile_logo img {
  max-height: 62px !important;
  width: auto !important;
  display: block !important;
  margin: 0 auto !important;
}

.mobile-header-right {
  flex: 0 0 80px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 16px !important;
}

/* Normalize user info and cart blocks on mobile to align them perfectly and remove grey background boxes */
.mobile-header-right #_mobile_user_info,
.mobile-header-right #_mobile_cart {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  background-color: transparent !important;
}

.mobile-header-right #_mobile_user_info .user-info,
.mobile-header-right #_mobile_cart .blockcart,
.mobile-header-right #_mobile_cart .header {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
  width: auto !important;
  min-height: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.mobile-header-right #_mobile_user_info a,
.mobile-header-right #_mobile_cart a {
  color: #ffffff !important; /* White icons */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

.mobile-header-right #_mobile_user_info i,
.mobile-header-right #_mobile_cart i {
  font-size: 22px !important;
  color: #ffffff !important; /* White icons */
}

/* Hide desktop text in mobile header right items */
.mobile-header-right .user-info span,
.mobile-header-right .cart-text-wrapper span:not(.cart-products-count) {
  display: none !important;
}

/* Cart notification badge on mobile header (Gold/Beige background) */
.mobile-header-right #_mobile_cart .blockcart {
  position: relative !important;
}

.mobile-header-right #_mobile_cart .cart-products-count {
  position: absolute !important;
  top: -8px !important;
  right: -10px !important;
  background-color: #f8e8c9 !important; /* Beige/Gold background */
  color: #4b2267 !important; /* Purple text */
  font-size: 10px !important;
  font-weight: 700 !important;
  border-radius: 50% !important;
  width: 16px !important;
  height: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border: 1.5px solid #4b2267 !important; /* Matches header background color */
  box-sizing: content-box !important;
}

/* Mobile Menu Overlay Styling */
#mobile_top_menu_wrapper {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background-color: #ffffff !important;
  z-index: 999999 !important;
  overflow-y: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  animation: slideInMenu 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

@keyframes slideInMenu {
  from {
    transform: translateY(30px) !important;
    opacity: 0 !important;
  }
  to {
    transform: translateY(0) !important;
    opacity: 1 !important;
  }
}

/* Close button style */
.close-mobile-menu {
  position: absolute !important;
  top: 15px !important;
  right: 15px !important;
  background: none !important;
  border: none !important;
  color: #ffffff !important; /* White color to stand out on Section B's purple background */
  font-size: 32px !important;
  cursor: pointer !important;
  z-index: 1000000 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.2s ease !important;
}

.close-mobile-menu:hover {
  transform: scale(1.1) !important;
}

/* Section B: Violet background, Main menu categories stacked, no submenus */
.menu-mobile-sec-b {
  background-color: #4b2267 !important;
  padding: 50px 0 15px 0 !important; /* Extra top padding to clear close button space */
  width: 100% !important;
  box-sizing: border-box !important;
}

.menu-mobile-sec-b #_mobile_top_menu {
  width: 100% !important;
}

.menu-mobile-sec-b ul.top-menu {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

.menu-mobile-sec-b ul.top-menu > li {
  width: 100% !important;
  border-bottom: 1.5px solid rgba(255, 255, 255, 0.08) !important;
}

.menu-mobile-sec-b ul.top-menu > li:last-child {
  border-bottom: none !important;
}

.menu-mobile-sec-b ul.top-menu > li > a {
  display: block !important;
  padding: 16px 25px !important;
  color: #ffffff !important;
  font-family: 'Raleway', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease !important;
}

.menu-mobile-sec-b ul.top-menu > li > a:hover {
  background-color: rgba(255, 255, 255, 0.05) !important;
  color: #f8e8c9 !important;
}

/* Force hiding of all submenus and toggles in Section B */
.menu-mobile-sec-b .sub-menu,
.menu-mobile-sec-b .collapse,
.menu-mobile-sec-b .collapse-icons,
.menu-mobile-sec-b .popover {
  display: none !important;
}

/* Section C: White background, purple links, secondary links */
.menu-mobile-sec-c {
  background-color: #ffffff !important;
  padding: 20px 0 40px 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Prevent collapse behavior in Section C link lists */
.menu-mobile-sec-c .collapse {
  display: block !important;
  height: auto !important;
  visibility: visible !important;
}

/* Hide collapsible list titles in Section C */
.menu-mobile-sec-c .title.hidden-md-up,
.menu-mobile-sec-c .links .h3 {
  display: none !important;
}

.menu-mobile-sec-c ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

.menu-mobile-sec-c ul li {
  width: 100% !important;
}

.menu-mobile-sec-c ul li a {
  display: block !important;
  padding: 13px 25px !important;
  color: #4b2267 !important;
  font-family: 'Raleway', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease, color 0.2s ease !important;
  border-bottom: 1px solid #f9f9f9 !important;
}

.menu-mobile-sec-c ul li a:hover {
  color: #725486 !important;
  background-color: #fbfbfb !important;
}

.menu-mobile-sec-c ul li:last-child a {
  border-bottom: none !important;
}

/* Style the bottom currency/language selectors if they render */
.menu-mobile-sec-c .js-top-menu-bottom {
  margin-top: 25px !important;
  padding: 0 25px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 15px !important;
  border-top: 1px solid #eeeeee !important;
  padding-top: 20px !important;
}

.menu-mobile-sec-c .js-top-menu-bottom #_mobile_contact_link {
  display: block !important;
}

.menu-mobile-sec-c .js-top-menu-bottom #_mobile_contact_link a {
  color: #4b2267 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}

/* Mobile Menu Social Icons */
.menu-mobile-socials {
  padding: 15px 25px !important;
  box-sizing: border-box !important;
}

.menu-mobile-socials .block-social {
  padding: 0 !important;
  margin: 0 !important;
  display: block !important;
}

.menu-mobile-socials .block-social ul {
  display: flex !important;
  flex-direction: row !important;
  gap: 15px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.menu-mobile-socials .block-social ul li {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

.menu-mobile-socials .block-social ul li a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: #4b2267 !important; /* Brand Purple */
  color: #ffffff !important; /* White icon */
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  border-bottom: none !important;
  box-sizing: border-box !important;
  transition: background-color 0.2s ease, transform 0.2s ease !important;
  text-indent: 0 !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.menu-mobile-socials .block-social ul li a:hover {
  background-color: #f8e8c9 !important; /* Gold on hover */
  color: #4b2267 !important;
  transform: scale(1.05);
}

.menu-mobile-socials .block-social ul li a i {
  font-size: 16px !important;
  color: #ffffff !important;
  margin: 0 !important;
  padding: 0 !important;
}

.menu-mobile-socials .block-social ul li a:hover i {
  color: #4b2267 !important;
}

/* --- Correctif Overflow horizontal global --- */
body {
  overflow-x: hidden !important;
}

@media (min-width: 992px) {
  body {
    overflow-x: visible !important;
  }
}

.top-header-wrapper {
  overflow: hidden !important;
}

/* --- Correctif Alignements et Styles du Tunnel de Commande --- */
body#checkout #footer {
  padding: 0 !important;
  background: transparent !important;
}

@media (min-width: 992px) {
  body#checkout #header .header-nav {
    max-height: 65px !important;
    height: 65px !important;
    padding: 0 !important;
  }
}

/* Align blog posts cards to the right */
#everpsblog-posts {
  justify-content: flex-end !important;
}

/* Reset image wrapper min-height to prevent it from squishing the card body when cards have equal heights */
#everpsblog-posts .everpsblog-listing-card .everpsblog-image-wrapper {
  min-height: unset !important;
}

/* Reorder Header Links menu: move last item (custom link) to the second position */
.top-nav-links-wrapper .links .wrapper ul li:first-child {
  order: 1 !important;
}
.top-nav-links-wrapper .links .wrapper ul li:last-child {
  order: 2 !important;
}
.top-nav-links-wrapper .links .wrapper ul li:not(:first-child):not(:last-child) {
  order: 3 !important;
}

/* ==========================================================================
   Header Responsiveness Overrides (992px to 1280px)
   ========================================================================== */

/* Explicitly define utility responsive hidden classes for absolute safety */
@media (max-width: 991px) {
  .hidden-md-down {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .hidden-lg-up {
    display: none !important;
  }
}

@media (min-width: 992px) and (max-width: 1280px) {
  /* Increase header content containers width to maximize breathing room */
  .top-header-inner,
  .header-top-container {
    width: 100% !important;
    max-width: 1240px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  /* --- FIRST LINE (Navigation bar) --- */

  /* Spacing between left elements in top nav */
  .top-header-left {
    gap: 12px !important;
  }

  /* Spacing and font-size of top menu links */
  .top-nav-links-wrapper .links .wrapper ul {
    gap: 15px !important; /* Reduced from 40px */
  }

  .top-nav-links-wrapper .links .wrapper ul li a {
    font-size: 10px !important;
  }

  /* Phone number size */
  .top-nav-phone {
    font-size: 10px !important;
  }

  /* Social icons spacing and size */
  .top-nav-social {
    gap: 6px !important;
  }

  .top-nav-social .social-icon {
    width: 22px !important;
    height: 22px !important;
    font-size: 10px !important;
  }

  /* Beige slanted block right side */
  .top-header-right {
    gap: 15px !important; /* Reduced from 30px */
    padding-left: 30px !important; /* Reduced from 45px */
    padding-right: 15px !important; /* Reduced from 25px */
  }

  .top-header-right::before {
    clip-path: polygon(15px 0, 100% 0, 100% 100%, 0 100%) !important; /* Slant matches reduced padding-left */
  }

  /* Icons and text in the beige block */
  #_desktop_user_info i, 
  #_desktop_cart i {
    font-size: 18px !important; /* Reduced from 24px */
  }

  #_desktop_user_info a,
  #_desktop_cart a,
  #_desktop_cart .header a {
    font-size: 10px !important; /* Reduced from 11px */
  }

  /* --- SECOND LINE (Logo and Main Menu) --- */

  /* Logo size reduction */
  #_desktop_logo img.logo {
    max-height:58px !important; /* Reduced from 52px */
  }

  /* Menu block elements gaps and size */
  .header-top .top-menu[data-depth="0"] {
    gap: 0px !important; /* Reduced from 10px */
  }

  .header-top .top-menu > li > a {
    font-size: 11px !important; /* Reduced from 12px */
    padding: 5px 8px !important; /* Reduced from 6px 10px */
  }
}

/* Adjustments for screens 992px to 1100px (tighter width) to ensure absolutely NO overlap */
@media (min-width: 992px) and (max-width: 1140px) {
  .top-nav-links-wrapper .links .wrapper ul {
    gap: 4px !important;
  }
  
  .top-header-left {
    gap: 8px !important;
  }
  
  .header-top .top-menu[data-depth="0"] {
    gap: 4px !important;
  }

  .header-top .top-menu > li > a {
    font-size: 10px !important;
    padding: 4px 5px !important;
  }

  #_desktop_logo img.logo {
    max-height: 51px !important;
  }
}

/* Hide top header inner bar completely on mobile and tablet screens to collapse the white bar */
@media (max-width: 991px) {
  .top-header-inner {
    display: none !important;
  }
  .top-header-wrapper {
    border-bottom: none !important;
  }
  .header-top {
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
  }
  .header-top-container {
    display: none !important;
  }
  
  /* Responsive Degustation Row */
  .degustation-section-row {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 20px !important;
  }
  .degustation-logo-col {
    flex: 0 0 auto !important;
    max-width: none !important;
    margin-bottom: 5px !important;
  }
  .degustation-text-col {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
    margin-bottom: 10px !important;
  }
  .degustation-btn-col {
    padding-left: 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }
  .btn-degustations-purple {
    white-space: normal !important;
    word-break: break-word !important;
  }
}

/* Custom Premium Search Feature */

/* Main menu search toggle link */
.header-top .top-menu li.menu-item-search {
  margin-left: auto !important; /* Push it to the right if needed, but let it sit naturally next to items */
}
.header-top .top-menu li.menu-item-search a.search-toggle-link {
  color: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 100% !important;
  padding: 5px 12px !important;
  font-size: 16px !important; /* Slightly larger than text links for visibility */
  transition: color 0.2s ease, background-color 0.2s ease !important;
}
.header-top .top-menu li.menu-item-search a.search-toggle-link:hover {
  color: #f8e8c9 !important; /* Signature beige */
  background-color: rgba(255, 255, 255, 0.08) !important;
  text-decoration: none !important;
}
.header-top .top-menu li.menu-item-search a.search-toggle-link i {
  font-size: 20px !important;
}

/* Slide-down search container */
#search_widget.dropdown-search-bar {
  display: block !important; /* Override the display: none !important */
  position: absolute !important;
  top: 100% !important;
  right: 15px !important;
  width: 480px !important;
  max-width: calc(100vw - 30px) !important;
  background: #ffffff !important;
  border: 1px solid #eae2d5 !important; /* Light beige/gray border */
  border-radius: 4px !important;
  box-shadow: 0 10px 30px rgba(75, 34, 103, 0.15) !important; /* Shadow with a tint of brand purple */
  padding: 12px 16px !important;
  z-index: 99999 !important;
  overflow: visible !important;
  
  /* Slide & Fade Animation */
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-10px) !important;
  pointer-events: none !important;
  transition: opacity 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), 
              transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), 
              visibility 0.3s !important;
}

#search_widget.dropdown-search-bar.custom-search-bar-open {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(8px) !important; /* Slightly offset downwards */
  pointer-events: auto !important;
}

/* Search input group wrapper */
#search_widget.dropdown-search-bar .search-input-group {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
}

#search_widget.dropdown-search-bar .search-input-group input[type=text] {
  width: 100% !important;
  height: 44px !important;
  padding: 10px 40px 10px 42px !important; /* space for search icon and clear icon */
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #2b2b2b !important;
  background-color: #faf8f5 !important; /* Soft premium warm background */
  border: 1px solid #eae2d5 !important;
  border-radius: 4px !important;
  outline: none !important;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease !important;
}

#search_widget.dropdown-search-bar .search-input-group input[type=text]:focus {
  background-color: #ffffff !important;
  border-color: #4b2267 !important; /* Brand purple */
  box-shadow: 0 0 0 3px rgba(75, 34, 103, 0.1) !important;
}

/* Icons inside search bar */
#search_widget.dropdown-search-bar .search-btn-icon {
  position: absolute !important;
  left: 5px !important;
  color: #8c7f73 !important;
  pointer-events: none !important;
  font-size: 20px !important;
  top: 5px;
}

#search_widget.dropdown-search-bar .clear-btn-icon {
  position: absolute !important;
  right: 14px !important;
  color: #8c7f73 !important;
  cursor: pointer !important;
  font-size: 18px !important;
  transition: color 0.2s ease !important;
}

#search_widget.dropdown-search-bar .clear-btn-icon:hover {
  color: #4b2267 !important;
}

/* Autocomplete container */
#search_widget.dropdown-search-bar .ui-autocomplete {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-height: 380px !important;
  overflow-y: auto !important;
  background: #ffffff !important;
  border: 1px solid #eae2d5 !important;
  border-top: none !important;
  border-bottom-left-radius: 4px !important;
  border-bottom-right-radius: 4px !important;
  box-shadow: 0 8px 24px rgba(75, 34, 103, 0.12) !important;
  padding: 8px 0 !important;
  margin-top: 5px !important;
  list-style: none !important;
  z-index: 100000 !important;
}

/* Autocomplete list items */
#search_widget.dropdown-search-bar .ui-autocomplete li.autocomplete-product-item {
  display: block !important;
  width: 100% !important;
  border-bottom: 1px solid #f7f4f0 !important;
}

#search_widget.dropdown-search-bar .ui-autocomplete li.autocomplete-product-item:last-child {
  border-bottom: none !important;
}

#search_widget.dropdown-search-bar .ui-autocomplete li.autocomplete-product-item a.autocomplete-product-link {
  display: flex !important;
  align-items: center !important;
  padding: 10px 16px !important;
  text-decoration: none !important;
  color: inherit !important;
  transition: background-color 0.2s ease !important;
}

#search_widget.dropdown-search-bar .ui-autocomplete li.autocomplete-product-item a.autocomplete-product-link:hover {
  background-color: #faf6f0 !important; /* Soft warm hover highlight */
}

/* Thumbnail container and image */
#search_widget.dropdown-search-bar .ui-autocomplete .autocomplete-img-container {
  flex: 0 0 50px !important;
  width: 50px !important;
  height: 50px !important;
  margin-right: 14px !important;
  border: 1px solid #eae2d5 !important;
  border-radius: 3px !important;
  background: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

#search_widget.dropdown-search-bar .ui-autocomplete .autocomplete-product-image {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
}

/* Product text details */
#search_widget.dropdown-search-bar .ui-autocomplete .autocomplete-info-container {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-width: 0 !important; /* Prevent text overflow issues */
}

#search_widget.dropdown-search-bar .ui-autocomplete .autocomplete-product-name {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #4b2267 !important; /* Brand purple */
  line-height: 1.4 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

#search_widget.dropdown-search-bar .ui-autocomplete .autocomplete-product-price {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #8c7f73 !important; /* Beige/brown brand accent */
  margin-top: 4px !important;
}

/* Hide desktop toggle and search widget on mobile */
@media (max-width: 991px) {
  .header-top .top-menu li.menu-item-search {
    display: none !important;
  }
  #search_widget.dropdown-search-bar {
    display: none !important;
  }
}

/* Product Page Description & Details Columns */
.product-info-columns {
  border-top: none !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.product-info-columns .product-info-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #4b2267 !important; /* Brand purple */
  text-transform: uppercase !important;
  border-bottom: 2px solid #f8e8c9 !important; /* Brand beige underline */
  padding-bottom: 8px !important;
  margin-bottom: 20px !important;
  letter-spacing: 0.5px !important;
}

.product-info-columns .product-description-content,
.product-info-columns .product-details-content {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #4a4a4a !important;
}

.product-info-columns .product-details-col #product-details {
  display: block !important;
  opacity: 1 !important;
  padding: 0 !important;
}

/* Specific tables/lists inside product details formatting */
.product-info-columns .product-details-col .product-manufacturer,
.product-info-columns .product-details-col .product-reference,
.product-info-columns .product-details-col .product-quantities,
.product-info-columns .product-details-col .product-condition {
  margin-bottom: 12px !important;
  font-size: 14px !important;
}

.product-info-columns .product-details-col label.label {
  font-weight: 600 !important;
  color: #2b2b2b !important;
  margin-right: 5px !important;
  min-width: 120px !important;
  display: inline-block !important;
}

.product-info-columns .product-features {
  margin-top: 20px !important;
}

.product-info-columns .product-features .h6 {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  margin-bottom: 10px !important;
  text-transform: uppercase !important;
}

.product-info-columns .data-sheet {
  display: grid !important;
  grid-template-columns: 140px 1fr !important;
  gap: 8px 15px !important;
  margin: 0 !important;
}

.product-info-columns .data-sheet dt.name {
  font-weight: 600 !important;
  color: #4a4a4a !important;
  margin: 0 !important;
  padding: 4px 0 !important;
  border-bottom: 1px solid #f5f0e8 !important;
}

.product-info-columns .data-sheet dd.value {
  color: #2b2b2b !important;
  margin: 0 !important;
  padding: 4px 0 !important;
  border-bottom: 1px solid #f5f0e8 !important;
}

/* Attachments & Extra Sections */
.product-attachments-section,
.product-extra-section {
  border-top: 1px solid #eae2d5 !important;
  margin-top: 25px !important;
  padding-top: 25px !important;
}

.product-attachments-section .product-info-title,
.product-extra-section .product-info-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #4b2267 !important;
  text-transform: uppercase !important;
  border-bottom: 2px solid #f8e8c9 !important;
  padding-bottom: 8px !important;
  margin-bottom: 20px !important;
}