/* Nutrition Depot Customized CSS Theme */
/* Adapted from master base CSS for a minimalist, retail design */

:root {
  --main: #54cd9a !important; /* Primary green for Nutrition Depot */
  --white: #ffffff !important;
  --black: #000000 !important;
  --yellow: #ffc80c !important;
  --light-gray: #f8f9fa !important;
  --shadow-light: rgba(0, 0, 0, 0.1) !important;
  --shadow-medium: rgba(0, 0, 0, 0.15) !important;
  --border-radius: 12px !important;

  /* Buttons */
  --btn-primary: #54cd9a !important;
  --btn-secondary: #000000 !important;
  --btn-danger: #dc3545 !important;
  --btn-light: #54cd9a !important;
  --btn-cart: #dbebf9 !important;

  /* Button Hover & Focus States */
  --btn-primary-hover: #006400 !important; /* Darker green for hover */
  --btn-outline-primary-hover: #54cd9a !important;
  --btn-primary-focus: rgba(0, 128, 0, 0.5) !important;
  --btn-outline-primary-focus: rgba(0, 128, 0, 0.5) !important;

  --btn-secondary-hover: #333333 !important;
  --btn-outline-secondary-hover: #000000 !important;
  --btn-secondary-focus: rgba(0, 0, 0, 0.5) !important;
  --btn-outline-secondary-focus: rgba(0, 0, 0, 0.5) !important;

  --btn-danger-hover: #c82333 !important;
  --btn-outline-danger-hover: #dc3545 !important;
  --btn-danger-focus: rgba(255, 18, 18, 0.5) !important;
  --btn-outline-danger-focus: rgba(255, 18, 18, 0.5) !important;

  --btn-light-hover: #dbebf9 !important;
  --btn-cart-hover: #dbebf9 !important;

  --btn-disabled: #dcdcdc !important;

  --sidebar-accent: #54cd9a !important;
}

/*  ====== FONTS ======  */
* {
  font-family: 'Poppins', sans-serif !important;
}

a {
  font-family: 'Quicksand', sans-serif !important;
  transition: all 0.3s ease !important;
}

h1,
h1 span,
h1 strong,
h2,
h2 span,
h2 strong,
h3,
h3 span,
h3 strong,
h4,
h5,
h6 {
  font-family: 'Quicksand', sans-serif !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

p,
span,
li,
div {
  font-family: 'Quicksand', sans-serif !important;
  line-height: 1.6 !important;
}

/* ====== GLOBAL LAYOUT IMPROVEMENTS ====== */
body {
  background-color: var(--white) !important;
  color: var(--black) !important;
}

.container {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 20px !important;
}

/* ====== HERO SECTION ENHANCEMENTS ====== */
#hero {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
  padding: 4rem 0 !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden !important;
}

#hero::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(45deg, rgba(0, 128, 0, 0.05) 0%, rgba(255, 200, 12, 0.05) 100%) !important;
  z-index: 1 !important;
}

#hero .container {
  position: relative !important;
  z-index: 2 !important;
}

#hero h2 {
  font-size: 3rem !important;
  font-weight: 700 !important;
  margin-bottom: 1rem !important;
  color: var(--black) !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

#hero p {
  font-size: 1.3rem !important;
  margin-bottom: 2rem !important;
  color: #666 !important;
}

#hero address {
  font-size: 1.1rem !important;
  font-style: normal !important;
  margin-bottom: 2rem !important;
  color: var(--main) !important;
  font-weight: 500 !important;
}

/* ====== TOP BANNER IMPROVEMENTS ====== */
#top-banner {
  background: linear-gradient(90deg, var(--main) 0%, #006400 100%) !important;
  padding: 12px 0 !important;
  box-shadow: 0 2px 4px var(--shadow-light) !important;
}

#top-banner .content {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  font-size: 0.95rem !important;
}

#top-banner a {
  color: var(--white) !important;
  text-decoration: none !important;
  margin-right: 1.5rem !important;
  font-weight: 500 !important;
  transition: opacity 0.3s ease !important;
}

#top-banner a:hover {
  opacity: 0.8 !important;
}

/* ====== LOGO BANNER ====== */
#logo-banner {
  padding: 2rem 0 !important;
  text-align: center !important;
  background: var(--white) !important;
  box-shadow: 0 2px 8px var(--shadow-light) !important;
}

#logo-banner img {
  max-width: 250px !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

#logo-banner img:hover {
  transform: scale(1.05) !important;
}

/* ====== NAVIGATION IMPROVEMENTS ====== */
#routers {
  padding: 1.5rem 0 !important;
  text-align: center !important;
  background: linear-gradient(135deg, #e9ecef 0%, #f8f9fa 100%) !important;
  font-weight: 600 !important;
  border-bottom: 1px solid rgba(0, 128, 0, 0.1) !important;
}

#routers a {
  margin: 0 1rem !important;
  color: var(--main) !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
  padding: 0.5rem 1rem !important;
  border-radius: 25px !important;
}

#routers a:hover {
  background-color: var(--main) !important;
  color: var(--white) !important;
  transform: translateY(-2px) !important;
}

/* ====== CATEGORIES SECTION IMPROVEMENTS ====== */
#categories {
  padding: 4rem 0 !important;
  background: var(--white) !important;
}

#categories h3 {
  text-align: center !important;
  margin-bottom: 3rem !important;
  font-size: 2.5rem !important;
  font-weight: 700 !important;
  color: var(--black) !important;
  position: relative !important;
}

#categories h3::after {
  content: '' !important;
  position: absolute !important;
  bottom: -10px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 80px !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--main) 0%, var(--yellow) 100%) !important;
  border-radius: 2px !important;
}

.category {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)) !important;
  gap: 2.5rem !important;
  justify-content: center !important;
}

.category-item {
  background: var(--white) !important;
  border-radius: var(--border-radius) !important;
  padding: 2rem !important;
  text-align: center !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
  transition: all 0.3s ease !important;
  border: 1px solid rgba(0, 128, 0, 0.1) !important;
  overflow: hidden !important;
  position: relative !important;
}

.category-item::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--main) 0%, var(--yellow) 100%) !important;
}

.category-item:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 8px 25px var(--shadow-medium) !important;
}

.category-item img {
  width: 100% !important;
  height: 250px !important;
  object-fit: cover !important;
  border-radius: calc(var(--border-radius) - 4px) !important;
  margin-bottom: 1.5rem !important;
  transition: transform 0.3s ease !important;
}

.category-item:hover img {
  transform: scale(1.05) !important;
}

.category-item h4 {
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  margin-bottom: 1rem !important;
  color: var(--main) !important;
}

.category-item p {
  font-size: 1rem !important;
  line-height: 1.6 !important;
  color: #666 !important;
}

/* ====== INBODY SCALE SECTION ====== */
#inbody-scale {
  padding: 4rem 0 !important;
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
}

#inbody-scale .content {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 3rem !important;
  align-items: center !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}

#inbody-scale .inbody-image img {
  width: 100% !important;
  max-width: 400px !important;
  height: auto !important;
  border-radius: var(--border-radius) !important;
  box-shadow: 0 8px 25px var(--shadow-medium) !important;
  transition: transform 0.3s ease !important;
}

#inbody-scale .inbody-image img:hover {
  transform: scale(1.02) !important;
}

#inbody-scale .inbody-text h3 {
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  margin-bottom: 1.5rem !important;
  color: var(--main) !important;
}

#inbody-scale .inbody-text p {
  font-size: 1.1rem !important;
  margin-bottom: 2rem !important;
  color: #666 !important;
  line-height: 1.7 !important;
}

#inbody-scale .inbody-text ul {
  list-style: none !important;
  padding: 0 !important;
  background: var(--white) !important;
  border-radius: var(--border-radius) !important;
  padding: 2rem !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
}

#inbody-scale .inbody-text ul li {
  margin: 1rem 0 !important;
  padding: 0.8rem 1rem !important;
  background: linear-gradient(90deg, rgba(0, 128, 0, 0.05) 0%, rgba(255, 200, 12, 0.05) 100%) !important;
  border-radius: 8px !important;
  border-left: 4px solid var(--main) !important;
  font-weight: 600 !important;
  color: var(--black) !important;
  transition: all 0.3s ease !important;
}

#inbody-scale .inbody-text ul li:hover {
  background: linear-gradient(90deg, rgba(0, 128, 0, 0.1) 0%, rgba(255, 200, 12, 0.1) 100%) !important;
  transform: translateX(5px) !important;
}

/* ====== FEATURED PRODUCTS IMPROVEMENTS ====== */
#featured-products {
  padding: 4rem 0 !important;
  background: var(--white) !important;
}

#featured-products h3 {
  text-align: center !important;
  margin-bottom: 3rem !important;
  font-size: 2.5rem !important;
  font-weight: 700 !important;
  color: var(--black) !important;
  position: relative !important;
}

#featured-products h3::after {
  content: '' !important;
  position: absolute !important;
  bottom: -10px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 80px !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--main) 0%, var(--yellow) 100%) !important;
  border-radius: 2px !important;
}

.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 2rem !important;
  justify-content: center !important;
}

.product {
  background: var(--white) !important;
  border-radius: var(--border-radius) !important;
  padding: 2rem !important;
  text-align: center !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
  transition: all 0.3s ease !important;
  border: 1px solid rgba(0, 128, 0, 0.1) !important;
  position: relative !important;
  overflow: hidden !important;
}

.product::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--main) 0%, var(--yellow) 100%) !important;
}

.product:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 8px 25px var(--shadow-medium) !important;
}

.product img {
  width: 100% !important;
  max-width: 200px !important;
  height: 200px !important;
  object-fit: cover !important;
  border-radius: calc(var(--border-radius) - 4px) !important;
  margin-bottom: 1.5rem !important;
  transition: transform 0.3s ease !important;
}

.product:hover img {
  transform: scale(1.05) !important;
}

.product h4 {
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  margin-bottom: 1rem !important;
  color: var(--black) !important;
  line-height: 1.3 !important;
}

.product p.price {
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  margin-bottom: 1.5rem !important;
  color: var(--main) !important;
  background: linear-gradient(90deg, rgba(0, 128, 0, 0.1) 0%, rgba(255, 200, 12, 0.1) 100%) !important;
  padding: 0.8rem !important;
  border-radius: 8px !important;
  border: 2px solid rgba(0, 128, 0, 0.2) !important;
}

/* ====== SOCIAL CENTER IMPROVEMENTS ====== */
#social-center {
  padding: 3rem 0 !important;
  text-align: center !important;
  background: linear-gradient(135deg, #f1f3f4 0%, #e8eaed 100%) !important;
}

#social-center a {
  margin: 0 1rem !important;
  text-decoration: none !important;
  color: var(--main) !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  padding: 1rem 2rem !important;
  border-radius: 25px !important;
  background: var(--white) !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
  transition: all 0.3s ease !important;
  display: inline-block !important;
}

#social-center a:hover {
  background: var(--main) !important;
  color: var(--white) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 20px var(--shadow-medium) !important;
}

/* Social icons container - layout update */
#social-center .social-icons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  margin-top: 1.5rem;
}

/* Social icon links */
.social-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: var(--white);
  color: var(--main);
  font-size: 2rem;
  box-shadow: 0 4px 15px var(--shadow-light);
  transition: background 0.3s, color 0.3s, transform 0.2s;
  border: 2px solid var(--main);
  text-decoration: none;
  position: relative;
}

.social-icon:hover,
.social-icon:focus {
  background: var(--main);
  color: var(--white);
  transform: translateY(-3px) scale(1.08);
  outline: none;
}

/* Hide text for screen readers only */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  border: 0;
}

/* ====== CONTACT SECTION IMPROVEMENTS ====== */
#contact {
  padding: 4rem 0 !important;
  background: var(--white) !important;
}

#contact h3 {
  text-align: center !important;
  font-size: 2.5rem !important;
  font-weight: 700 !important;
  margin-bottom: 3rem !important;
  color: var(--black) !important;
  position: relative !important;
}

#contact h3::after {
  content: '' !important;
  position: absolute !important;
  bottom: -10px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 80px !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--main) 0%, var(--yellow) 100%) !important;
  border-radius: 2px !important;
}

#contact .address {
  margin-bottom: 2rem !important;
  font-weight: 600 !important;
  font-size: 1.1rem !important;
  color: var(--main) !important;
}

#contact .hours {
  margin-bottom: 2rem !important;
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
  padding: 2rem !important;
  border-radius: var(--border-radius) !important;
  border-left: 4px solid var(--main) !important;
}

#contact .holiday-list {
  margin-bottom: 3rem !important;
  background: var(--white) !important;
  padding: 2rem !important;
  border-radius: var(--border-radius) !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
}

#contact form {
  max-width: 600px !important;
  margin: 0 auto !important;
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
  padding: 3rem !important;
  border-radius: var(--border-radius) !important;
  box-shadow: 0 8px 25px var(--shadow-medium) !important;
}

#contact input,
#contact textarea {
  width: 100% !important;
  padding: 1rem !important;
  border: 2px solid rgba(0, 128, 0, 0.2) !important;
  border-radius: 8px !important;
  font-size: 1rem !important;
  transition: all 0.3s ease !important;
  background: var(--white) !important;
}

#contact input:focus,
#contact textarea:focus {
  border-color: var(--main) !important;
  box-shadow: 0 0 0 3px rgba(0, 128, 0, 0.1) !important;
  outline: none !important;
}

#contact button {
  padding: 1rem 3rem !important;
  background: linear-gradient(90deg, var(--main) 0%, #006400 100%) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 25px !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
}

#contact button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px var(--shadow-medium) !important;
}

/* ====== MAP IMPROVEMENTS ====== */
#map {
  box-shadow: 0 4px 15px var(--shadow-light) !important;
  border-radius: var(--border-radius) !important;
  overflow: hidden !important;
  margin: 2rem 0 !important;
}

#map iframe {
  width: 100% !important;
  height: 400px !important;
  border: none !important;
  transition: opacity 0.3s ease !important;
}

#map iframe:hover {
  opacity: 0.9 !important;
}

/* HEADER */
#main-header {
  background-color: var(--main) !important;
  box-shadow: 0 2px 8px var(--shadow-light) !important;
}

#main-header a,
#main-header div {
  color: var(--white) !important;
}

#main-header .navbar-dropdown a,
#main-header .navbar-dropdown div {
  color: var(--black) !important;
}

#main-header .dropdown-tab:hover,
#main-header .selected-tab,
#main-header .selected-tab .right-arrow-img,
#main-header .category-header {
  color: var(--main) !important;
}

#main-header .category-header:hover {
  border-bottom: 1px solid var(--main) !important;
  color: var(--main) !important;
}

#main-header img,
#main-header .burger-menu {
  filter: invert(0%) !important;
}

#main-header img#close-button-img,
#main-header #header-sidebar img,
#categories-content img,
img#header-logo {
  filter: invert(0%) !important;
}

#main-header #wishlist-counter,
#main-header #cart-counter {
  color: var(--black) !important;
  border: 1px solid var(--main) !important;
  background-color: var(--yellow) !important;
}

.language-option-active {
  background-color: var(--main) !important;
}

#main-header .search-input {
  border: 1px solid var(--main);
}

@media only screen and (min-width: 1200px) {
  #header-logo {
    max-width: 155px;
    height: 46px;
  }
}

/* FOOTER */
#main-footer {
  background: linear-gradient(90deg, var(--main) 0%, #006400 100%) !important;
  padding: 2rem 0 !important;
  box-shadow: 0 -2px 8px var(--shadow-light) !important;
}

#main-footer a,
#main-footer div {
  color: var(--white) !important;
}

/* PROFILE */
.sidebar-tab.active-tab {
  background-color: var(--main) !important;
  color: var(--white) !important;
}

/* ====== BUTTONS ====== */
.button-primary {
  color: var(--white) !important;
  background: linear-gradient(90deg, var(--btn-primary) 0%, #006400 100%) !important;
  border: 1px solid var(--btn-primary) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.button-outline-primary {
  color: var(--btn-primary) !important;
  background-color: var(--white) !important;
  border: 2px solid var(--btn-primary) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.button-secondary {
  color: var(--white) !important;
  background-color: var(--btn-secondary) !important;
  border: 1px solid var(--btn-secondary) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.button-outline-secondary {
  color: var(--btn-secondary) !important;
  background-color: var(--white) !important;
  border: 1px solid var(--btn-secondary) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.button-danger {
  color: var(--white) !important;
  background-color: var(--btn-danger) !important;
  border-color: var(--btn-danger) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.button-outline-danger {
  color: var(--btn-danger) !important;
  background-color: var(--white) !important;
  border-color: var(--btn-danger) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.button-cart {
  color: var(--main) !important;
  background-color: var(--white) !important;
  border: 2px solid var(--btn-cart) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.button-light {
  color: var(--btn-light) !important;
  background-color: var(--white) !important;
  border: 2px solid var(--btn-cart) !important;
  border-radius: 25px !important;
  padding: 0.8rem 2rem !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}

.fixed-cart-button {
  background-color: var(--btn-primary) !important;
  border-radius: 50px !important;
  box-shadow: 0 4px 15px var(--shadow-medium) !important;
}

.subcategory-card {
  background-color: var(--btn-primary) !important;
  border-radius: var(--border-radius) !important;
  box-shadow: 0 4px 15px var(--shadow-light) !important;
}

.subcategory-card-title {
  color: var(--white) !important;
}

/* Pagination arrow color */
.button-light img {
  filter: brightness(0) saturate(100%) invert(0%) sepia(50%) saturate(100%) hue-rotate(216deg) brightness(95%)
    contrast(50%) !important;
}

/* ====== BUTTONS EFFECTS ====== */
.button-primary:hover,
.button-primary:active {
  color: var(--white) !important;
  background: linear-gradient(90deg, var(--btn-primary-hover) 0%, #004d00 100%) !important;
  border-color: var(--btn-primary-hover) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px var(--shadow-medium) !important;
}

.button-outline-primary:hover,
.button-outline-primary:active {
  color: var(--white) !important;
  background: linear-gradient(90deg, var(--btn-outline-primary-hover) 0%, #006400 100%) !important;
  border-color: var(--btn-outline-primary-hover) !important;
  transform: translateY(-2px) !important;
}

.button-secondary:hover,
.button-secondary:active {
  color: var(--white) !important;
  background-color: var(--btn-secondary-hover) !important;
  border-color: var(--btn-secondary-hover) !important;
  transform: translateY(-2px) !important;
}

.button-outline-secondary:hover,
.button-outline-secondary:active {
  color: var(--white) !important;
  background-color: var(--btn-outline-secondary-hover) !important;
  border-color: var(--btn-outline-secondary-hover) !important;
  transform: translateY(-2px) !important;
}

.button-danger:hover,
.button-danger:active {
  color: var(--white) !important;
  background-color: var(--btn-danger-hover) !important;
  border-color: var(--btn-danger-hover) !important;
  transform: translateY(-2px) !important;
}

.button-outline-danger:hover,
.button-outline-danger:active {
  color: var(--white) !important;
  background-color: var(--btn-outline-danger-hover) !important;
  border-color: var(--btn-outline-danger-hover) !important;
  transform: translateY(-2px) !important;
}

.button-cart:hover {
  color: var(--main) !important;
  background-color: var(--btn-cart-hover) !important;
  border-color: var(--btn-cart-hover) !important;
  transform: translateY(-2px) !important;
}

.button-light:hover,
.button-light:active {
  color: var(--main) !important;
  background-color: var(--btn-cart-hover) !important;
  border-color: var(--btn-cart-hover) !important;
  transform: translateY(-2px) !important;
}

.button-light-active,
.button-light-active:hover {
  color: var(--white) !important;
  background-color: var(--btn-light) !important;
  border-color: var(--btn-light) !important;
}

.fixed-cart-button:hover,
.fixed-cart-button:active {
  background-color: var(--btn-primary-hover) !important;
  transform: scale(1.05) !important;
}

.button-primary:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--btn-primary-focus) !important;
}

.button-outline-primary:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--btn-outline-primary-focus) !important;
}

.button-secondary:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--btn-secondary-focus) !important;
}

.button-outline-secondary:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--btn-outline-secondary-focus) !important;
}

.button-danger:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--btn-danger-focus) !important;
}

.button-outline-danger:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--btn-outline-danger-focus) !important;
}

.button-cart:focus {
  box-shadow: 0 0 0 0.2rem var(--btn-outline-secondary-focus) !important;
}

.button-light:focus,
.button-light-active:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem var(--btn-primary-focus) !important;
}

.button:disabled,
.button:disabled:hover {
  color: var(--black) !important;
  background-color: var(--btn-disabled) !important;
  border-color: var(--btn-disabled) !important;
}

/* ====== RESPONSIVE DESIGN IMPROVEMENTS ====== */
@media (max-width: 768px) {
  #hero h2 {
    font-size: 2.2rem !important;
  }
  
  #categories h3,
  #featured-products h3,
  #contact h3 {
    font-size: 2rem !important;
  }
  
  .category {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
  
  .products {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  
  #inbody-scale .content {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
  }
  
  #top-banner .content {
    flex-direction: column !important;
    gap: 1rem !important;
  }
  
  #social-center a {
    display: block !important;
    margin: 0.5rem 0 !important;
  }
}

/* ====== LOADERS ====== */
.loader--primary {
  border-color: var(--white) var(--main) var(--main) !important;
}

.loader--light {
  border-color: var(--main) var(--white) var(--white) !important;
}

.loader--danger {
  border-color: var(--btn-danger) var(--white) var(--white) !important;
}

/* ====== INPUTS ====== */
.custom-input-container:hover .custom-input-label,
.custom-select-container:hover .custom-select-label,
.custom-text-area-container:hover .custom-text-area-label {
  color: var(--main) !important;
}

.custom-input-container:hover .custom-input-border,
.custom-select-container:hover .custom-select-border,
.custom-text-area-container:hover .custom-text-area-border {
  border-color: var(--main) !important;
}

.custom-input-label--focus,
.custom-select-label--focus,
.custom-text-area-label--focus {
  color: var(--main) !important;
}

.custom-input-border--focus,
.custom-select-border--focus,
.custom-text-area-border--focus {
  border-color: var(--main) !important;
}

.custom-control-input:checked ~ .custom-control-label::before {
  background-color: var(--main) !important;
  border-color: var(--main) !important;
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: var(--main) !important;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0,128,0,0.25) !important;
}

.custom-checkbox-container input:checked ~ .custom-checkbox-checkmark {
  background-color: var(--main) !important;
}

.dropdown-selected {
  color: var(--white) !important;
  background-color: var(--main) !important;
}

/* ====== SLIDER ====== */
.slider-image-wrapper--active {
  border-color: var(--main) !important;
}

/* ====== CATALOG ====== */
#catalog-mobile-search {
  background-color: var(--main) !important;
}

/* ====== MOBILE FOOTER ====== */
.active-footer-button {
  background-color: var(--main) !important;
  color: var(--white) !important;
}

/* ======= BOOKING ======= */
.selected-service-item,
.selected-provider-item {
  border: 1px solid var(--main) !important;
}

.selected-service-checkbox,
.selected-provider-checkbox {
  background-color: var(--main) !important;
}

.class-event { border-color: var(--main) !important; color: var(--main) !important; }
.class-event:hover, .class-selected { border-color: var(--main) !important; color: var(--white) !important; background-color: var(--main) !important; }
.booking-complete-header { background-color: var(--main) !important; color: var(--white) !important; }
/* ======= END OF BOOKING ======= */

/* ======= CONTENT PAGES ======= /
.bee-row-content p {
font-weight: unset;
color: unset;
}
/ ======= END OF CONTENT PAGES ======= */

/* ======= MESSAGE BANNER ======= */
#banner-root {
background-color: var(--white) !important;
}

#banner-text {
color: var(--black) !important;
}
/* ======= END OF MESSAGE BANNER ======= */

/* ======= TOP BANNER ======= */
.top-banner {
background-color: #555555 !important;
}

.top-banner a,
.top-banner div {
color: var(--white) !important;
}

.top-banner img {
filter: invert(0) !important;
}
/* ======= END OF TOP BANNER ======= */