
      :root {
        /* Brand raspberry used across navbar/footer */
        --brand-raspberry: #DE3163;
      }

      /* ================= NAVBAR ================= */
      /* Ensure navbar uses exact raspberry color and no gradients */
      .custom-navbar {
        background-color: var(--brand-raspberry) !important;
        background-image: none !important;
        border: 0 !important;
      }
      .custom-navbar .navbar-brand {
        font-size: 1.6rem;
        font-weight: 700;
        color: #ffffff !important;
        text-transform: uppercase;
        letter-spacing: 1px;
        transition: color 0.3s ease;
      }
      .custom-navbar .navbar-brand:hover {
        color: #ffe4f7 !important;
        text-shadow: 0 0 8px rgba(255, 224, 240, 0.7);
      }
      .custom-navbar .nav-link {
        color: #f8f9fa !important;
        margin: 0 10px;
        font-weight: 500;
        position: relative;
        transition: color 0.3s ease, text-shadow 0.3s ease;
      }
      .custom-navbar .nav-link:hover {
        color: #ffffff !important;
        text-shadow: 0 0 8px rgba(255, 224, 240, 0.9);
      }
      .custom-navbar .nav-link::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: -5px;
        width: 0;
        height: 2px;
        background: #fff;
        transition: all 0.3s ease;
        transform: translateX(-50%);
      }
      .custom-navbar .nav-link:hover::after {
        width: 100%;
      }

      /* ================= FOOTER =================
         We deliberately target multiple popular footer selectors
         and also override Bootstrap bg-* variants to guarantee
         consistency across includes/footer.php.
      */
      footer,
      footer.footer,
      footer.site-footer,
      .footer,
      .site-footer,
      footer.bg-dark,
      .bg-dark.site-footer,
      .bg-dark.footer,
      footer.bg-light,
      .bg-light.site-footer,
      .bg-light.footer {
        background-color: var(--brand-raspberry) !important;
        background-image: none !important;
        color: #ffffff !important;
      }
      footer a,
      .footer a,
      .site-footer a {
        color: #ffffff !important;
        text-decoration: none;
      }
      footer a:hover,
      .footer a:hover,
      .site-footer a:hover {
        color: #ffffff !important;
        text-shadow: 0 0 8px rgba(255, 224, 240, 0.9);
      }

      /* ================= MISC UI ================= */
      /* Back-to-top button */
      #backToTop {
        position: fixed;
        bottom: 30px;
        right: 30px;
        background: var(--brand-raspberry);
        color: white;
        border: none;
        border-radius: 50%;
        width: 45px;
        height: 45px;
        font-size: 20px;
        display: none;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        z-index: 9999;
        transition: opacity 0.3s, transform 0.3s;
      }
      #backToTop:hover {
        background: #b22249; /* a bit darker */
        transform: scale(1.1);
      }

      /* Product image */
      .card-img-top {
        width: 100%;
        height: 200px;
        object-fit: contain;
        background-color: #f8f9fa;
        padding: 10px;
      }
      .clamp-2 {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
      }
    .product-thumb {
  width: 100%;
  height: 240px;           /* adjust height to taste */
  object-fit: contain;     /* show the full image */
  background: #fff;        /* nice backdrop for transparent images */
  padding: 8px;            /* small breathing room */
  border-bottom: 1px solid #eee;
}

@media (min-width: 768px) {
  .product-thumb { height: 220px; }
}
@media (min-width: 1200px) {
  .product-thumb { height: 260px; }
}

    #backToTop {
  position: fixed;
  bottom: 30px;
  right: 30px;
  background: #0d6efd; /* bootstrap primary */
  color: white;
  border: none;
  border-radius: 50%;
  width: 45px;
  height: 45px;
  font-size: 20px;
  display: none; /* hidden by default */
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 9999;
  transition: opacity 0.3s, transform 0.3s;
}

#backToTop:hover {
  background: #0b5ed7; /* darker blue */
  transform: scale(1.1);
}
/* Navbar background */
.custom-navbar {
  background: linear-gradient(90deg, #006d77, #00b4d8); /* teal → cyan */
  padding: 0.8rem 1rem;
}

/* Brand text */
.custom-navbar .navbar-brand {
  font-size: 1.6rem;
  font-weight: 700;
  color: #ffffff !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: color 0.3s ease;
}

.custom-navbar .navbar-brand:hover {
  color: #ffdd57 !important; /* yellow glow on hover */
  text-shadow: 0 0 8px rgba(255, 221, 87, 0.7);
}

/* Nav links */
.custom-navbar .nav-link {
  color: #f8f9fa !important;
  margin: 0 10px;
  font-weight: 500;
  position: relative;
  transition: color 0.3s ease, text-shadow 0.3s ease;
}

/* Neon hover glow */
.custom-navbar .nav-link:hover {
  color: #ffdd57 !important;
  text-shadow: 0 0 8px rgba(255, 221, 87, 0.8);
}

/* Sliding underline effect */
.custom-navbar .nav-link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 0;
  height: 2px;
  background: #ffdd57;
  transition: all 0.3s ease;
  transform: translateX(-50%);
}

.custom-navbar .nav-link:hover::after {
  width: 100%;
}
/* Footer Links with Neon Hover */
footer .footer-links a {
  color: #f8f9fa !important;  /* default white */
  position: relative;
  display: inline-block;
  transition: color 0.3s ease, text-shadow 0.3s ease;
}

/* Glow + underline hover */
footer .footer-links a:hover {
  color: #ffdd57 !important; /* yellow on hover */
  text-shadow: 0 0 8px rgba(255, 221, 87, 0.8);
}

footer .footer-links a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -3px;
  width: 0;
  height: 2px;
  background: #ffdd57;
  transition: all 0.3s ease;
  transform: translateX(-50%);
}

footer .footer-links a:hover::after {
  width: 100%;
}

    body { background:#f6f8fb; }
    .card { border:0; border-radius:1rem; box-shadow:0 10px 25px rgba(0,0,0,.06) }
    .card-header { background:#fff; border-bottom:0; border-radius:1rem 1rem 0 0 }
    .timeline {
      display:flex; align-items:center; gap:12px; flex-wrap:wrap;
    }
    .step {
      display:flex; align-items:center; gap:8px;
    }
    .dot {
      width:12px; height:12px; border-radius:50%;
      background:#e0e0e0;
    }
    .dot.active { background:#0d6efd; }
    .dot.cancelled { background:#dc3545; }
    .label { font-size:.9rem; color:#6c757d; }
    .label.active { color:#0d6efd; font-weight:600; }
    .label.cancelled { color:#dc3545; font-weight:600; }
    .order-meta { color:#6c757d; font-size:.9rem; }
    .sticky-actions { position:sticky; top:0; z-index:5; background:#f6f8fb; padding:.5rem 0; }
     /* Navbar background */
    .custom-navbar {
      background: linear-gradient(90deg, #006d77, #00b4d8);
      /* teal → cyan */
      padding: 0.8rem 1rem;
    }

    /* Brand text */
    .custom-navbar .navbar-brand {
      font-size: 1.6rem;
      font-weight: 700;
      color: #ffffff !important;
      text-transform: uppercase;
      letter-spacing: 1px;
      transition: color 0.3s ease;
    }

    .custom-navbar .navbar-brand:hover {
      color: #ffdd57 !important;
      /* yellow glow on hover */
      text-shadow: 0 0 8px rgba(255, 221, 87, 0.7);
    }

    /* Nav links */
    .custom-navbar .nav-link {
      color: #f8f9fa !important;
      margin: 0 10px;
      font-weight: 500;
      position: relative;
      transition: color 0.3s ease, text-shadow 0.3s ease;
    }

    /* Neon hover glow */
    .custom-navbar .nav-link:hover {
      color: #ffdd57 !important;
      text-shadow: 0 0 8px rgba(255, 221, 87, 0.8);
    }

    /* Sliding underline effect */
    .custom-navbar .nav-link::after {
      content: "";
      position: absolute;
      left: 50%;
      bottom: -5px;
      width: 0;
      height: 2px;
      background: #ffdd57;
      transition: all 0.3s ease;
      transform: translateX(-50%);
    }

    .custom-navbar .nav-link:hover::after {
      width: 100%;
    }

    /* Footer Links with Neon Hover */
    footer .footer-links a {
      color: #f8f9fa !important;
      /* default white */
      position: relative;
      display: inline-block;
      transition: color 0.3s ease, text-shadow 0.3s ease;
    }

    /* Glow + underline hover */
    footer .footer-links a:hover {
      color: #ffdd57 !important;
      /* yellow on hover */
      text-shadow: 0 0 8px rgba(255, 221, 87, 0.8);
    }

    footer .footer-links a::after {
      content: "";
      position: absolute;
      left: 50%;
      bottom: -3px;
      width: 0;
      height: 2px;
      background: #ffdd57;
      transition: all 0.3s ease;
      transform: translateX(-50%);
    }

    footer .footer-links a:hover::after {
      width: 100%;
    }
    .fast-badge {
    display:inline-flex; align-items:center; gap:.4rem;
    background: #ffdd57; color:#333; 
    border-radius: 999px; padding: .35rem .8rem; font-weight:600;
  }
  .fast-badge .dot { width:8px; height:8px; border-radius:50%; background:#e11d48; animation: pulse 1.4s infinite; }
  @keyframes pulse { 0% { transform:scale(1); } 50% { transform:scale(1.4);} 100% { transform:scale(1);} }

  .carousel-item .card { border:0; box-shadow: 0 8px 20px rgba(0,0,0,.08); border-radius:1rem; }
  .carousel-control-prev-icon, .carousel-control-next-icon { filter: invert(1) grayscale(100%); }
  .clamp-2 { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

