:root {
  --primary-orange: #fd7e14;
  --accent-orange: #e36414;
  --dark-text: #212529;
  --light-bg: #f8f9fa;
  --footer-bg: #1b1e21;
}

body {
  font-family: 'Raleway', sans-serif;
  background-color: var(--light-bg);
  color: var(--dark-text);
  scroll-behavior: smooth;
}

/* NAVBAR */
.navbar {
  background-color: #fff !important;
}
.navbar .nav-link {
  color: var(--dark-text);
  transition: color 0.3s ease;
}
.navbar .nav-link:hover {
  color: var(--primary-orange);
}
.brand-orange {
  color: var(--primary-orange) !important;
}
.animated-navbar {
  animation: slideDown 1s ease-in-out;
}
@keyframes slideDown {
  from { transform: translateY(-50px); opacity: 0; }
  to   { transform: translateY(0); opacity: 1; }
}

/* SLIDER */
.slider {
      position: relative;
      width: 100vw;
      max-width: 100vw;
      height: 400px;
      margin: 0 auto;
      overflow: hidden;
      background: #eee;
    }
    .slide {
      display: none;
      position: absolute;
      width: 100vw;
      height: 100%;
      left: 0;
      top: 0;
      justify-content: center;
      align-items: flex-end;
      opacity: 0;
      transition: opacity 0.8s;
      z-index: 1;
    }
    .slide.active {
      display: flex;
      opacity: 1;
      z-index: 2;
      animation: fadeIn 0.8s;
    }
    @keyframes fadeIn {
      from { opacity: 0;}
      to   { opacity: 1;}
    }
    .slide img {
      width: 100vw;
      height: 100%;
      object-fit: fill;
      object-position: center;
      display: block;
      position: absolute;
      left: 0; top: 0;
      z-index: 0;
      pointer-events: none;
      user-select: none;
    }
    /* --- ENHANCED SLIDE TEXT --- */
    .slide-text {
      position: relative;
      margin-bottom: 38px;
      min-width: 320px;
      max-width: 420px;
      width: 80vw;
      background: rgba(32,32,32,0.54);
      box-shadow: 0 8px 32px rgba(0,0,0,0.20);
      backdrop-filter: blur(3.5px);
      border-radius: 1.45rem;
      padding: 1.2rem 1.8rem 1.2rem 1.5rem;
      color: #fafafa;
      font-size: 1.3rem;
      font-weight: 600;
      letter-spacing: 0.01em;
      text-shadow: 0 2px 10px #0008;
      text-align: left;
      opacity: 0;
      transform: translateY(30px) scale(0.96);
      animation: popFadeIn 0.8s 0.18s cubic-bezier(.51,.62,.74,.58) forwards;
      /* The animation will run only on .slide.active .slide-text */
    }
    /* Target only active text for animation */
    .slide.active .slide-text {
      animation: popFadeIn 0.8s 0.18s cubic-bezier(.51,.62,.74,.58) forwards;
    }
    @keyframes popFadeIn {
      from {
        opacity: 0;
        transform: translateY(35px) scale(0.93);
        box-shadow: 0 4px 12px rgba(0,0,0,0.13);
      }
      65% {
        opacity: 1;
        transform: translateY(-8px) scale(1.04);
        box-shadow: 0 12px 38px rgba(67,233,123,0.19);
      }
      to {
        opacity: 1;
        transform: translateY(0) scale(1);
        box-shadow: 0 8px 32px rgba(0,0,0,0.20);
      }
    }
    /* Emphasize keywords */
    .slide-text .highlight {
      color: #43e97b;
      background: linear-gradient(90deg,#43e97b,#38b2f7 90%);
      background-clip: text;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      font-weight: 800;
      letter-spacing: 0.01em;
    }
    /* Responsive box/text for mobile */
    @media (max-width: 600px) {
      .slider { height: 200px; }
      .slide-text {
        min-width: 0; max-width: 98vw; width: 96vw;
        font-size: 1.03rem;
        padding: 0.7rem 1rem;
        margin-bottom: 18px;
      }
      .slider-btn { width: 29px; height: 29px; font-size: 0.96rem;}
      .slide, .slide img { width: 100vw; }
    }
    /* Slider nav/dots, unchanged */
    .slider-btn {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: rgba(50,50,50,0.58);
      border: none;
      color: #fff;
      width: 38px;
      height: 38px;
      font-size: 1.3rem;
      border-radius: 50%;
      cursor: pointer;
      z-index: 10;
      transition: background 0.2s;
      user-select: none;
    }
    .slider-btn:hover {
      background: #43e97b;
      color: #232323;
    }
    .slider-btn.prev { left: 14px; }
    .slider-btn.next { right: 14px; }
    .slider-dots {
      position: absolute;
      width: 100%;
      bottom: 10px;
      left: 0;
      text-align: center;
    }
    .slider-dot {
      display: inline-block;
      width: 11px; height: 11px;
      margin: 0 4px;
      background: #fff;
      border-radius: 50%;
      border: 2px solid #43e97b;
      opacity: 0.5;
      cursor: pointer;
      transition: opacity 0.18s;
    }
    .slider-dot.active {
      opacity: 1;
      background: #43e97b;
    }

/* FOOTER */
.footer {
  background-color: var(--footer-bg);
}
.footer-link {
  color: #d4d4d4;
  text-decoration: none;
  display: block;
  margin-bottom: 0.4rem;
}
.footer-link:hover {
  color: var(--primary-orange);
}
.animated-footer {
  animation: fadeUp 1.2s ease;
}
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(40px); }
  to   { opacity: 1; transform: translateY(0); }
}


/* PRODUCT.HTML */
body {
  font-family: 'Raleway', sans-serif;
  background-color: #fefefe;
}
#cart-count, #wishlist-count {
  top: 3px !important; /* move badge slightly down */
}
.wishlist-btn i {
  font-size: 1.25rem;
}

/* Product Card */
.product-card {
  border-radius: 15px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  background-color: #fff;
}

.product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08);
}

.product-img {
  height: 220px;
  object-fit: cover;
  transition: transform 0.4s ease;
  border-bottom: 1px solid #eee;
}

.product-card:hover .product-img {
  transform: scale(1.05);
}
/* Floating buttons for mobile */
.floating-btn {
  position: fixed;
  bottom: 80px;
  right: 20px;
  z-index: 1050;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.floating-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background-color: #ffffff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  position: relative;
}

.floating-btn a .badge {
  position: absolute;
  top: -4px;
  right: -4px;
  font-size: 0.75rem;
  padding: 4px 6px;
}



/* Wishlist */
.wishlist-btn {
  background-color: rgba(255, 255, 255, 0.85);
  border: none;
  border-radius: 50%;
  padding: 8px 10px;
  font-size: 18px;
  color: #e74c3c;
  transition: background 0.3s ease, transform 0.2s;
}

.wishlist-btn:hover {
  background-color: #ffe2e6;
  transform: scale(1.1);
}

.product-title {
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #333;
}

.product-price {
  font-size: 14px;
}

/* Add to Cart */
.btn-cart {
  background-color: #5c6bc0;
  color: #fff;
  transition: background 0.3s ease, transform 0.3s ease;
  font-weight: 500;
  border-radius: 8px;
}

.btn-cart:hover {
  background-color: #3f51b5;
  transform: translateY(-2px) scale(1.02);
}

/* Responsive Fix */
@media (max-width: 768px) {
  .col-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
a{
    text-decoration: none;
}

/* wishlist and cart button */
@keyframes pop {
  0% { transform: scale(1); }
  50% { transform: scale(1.3); }
  100% { transform: scale(1); }
}

.badge-pop {
  animation: pop 0.3s ease-in-out;
}


/* PRODUCT-INFO.HTML */
.fade-in {
  animation: fadeIn 1s ease-in-out;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

.carousel-inner img {
  height: 350px;
  object-fit: cover;
  border-radius: 10px;
}

