  @import url('https ://fonts.googleapis.com/css2?family=Poppins :wght@300;400;500;600;700;800&display=swap'); 
:root {
  --primary :#23A390;
  --secondary : #F92943;
  --accent : #FFD43B;
  --dark : #111827;
  --light : #ffffff;
  --gray : #6b7280;
  --bg : #f8f9fc;
  --radius : 15px;
  --transition : .35s ease;
  --shadow :0 15px 40px rgba(0, 0, 0, .08);
}
* {
  margin :0;
  padding :0;
  box-sizing :border-box;
}
html {
  scroll-behavior :smooth;
}
body {
  font-family :'Poppins', sans-serif;
  background :var(--bg);
  color :#222;
  overflow-x :hidden;
}
a {
  text-decoration :none;
  transition :var(--transition);
}
img {
  max-width :100%;
  display :block;
}
ul {
  list-style :none;
  margin :0;
  padding :0;
}
section {
  position :relative;
  padding :90px 0;
}
.section-title {
  margin-bottom :60px;
}
.section-title .sub-title {
  color :var(--primary);
  font-weight :600;
  letter-spacing :2px;
  text-transform :uppercase;
}
.section-title h2 {
  font-size :42px;
  font-weight :700;
  margin-top :10px;
  color :var(--dark);
}
.section-title p {
  color :var(--gray);
  margin-top :15px;
}
.btn {
  border-radius :50px;
  padding :13px 32px;
  font-weight :600;
  transition :var(--transition);
}
.btn-primary {
  background :linear-gradient(90deg, #23A390, #08a34d);
  border :none;
}
  .btn-primary:hover {
  transform :translateY(-4px);
  box-shadow :0 15px 30px rgba(0, 0, 0, .18);
}
.btn-danger {
  background :linear-gradient(90deg, #ff416c, #ff4b2b);
  border :none;
}
  .btn-danger:hover {
  transform :translateY(-4px);
}
.btn-outline-light {
  border :2px solid #fff;
  color :#fff;
}
  .btn-outline-light:hover {
  background :#fff;
  color :#111;
}
#preloader {
  position :fixed;
  inset :0;
  background :#fff;
  display :flex;
  justify-content :center;
  align-items :center;
  z-index :99999;
}
.loader {
  width :70px;
  height :70px;
  border :6px solid #eee;
  border-top :6px solid var(--primary);
  border-radius :50%;
  animation :spin 1s linear infinite;
}
@keyframes spin {
  100%{transform :rotate(360deg);
}
}.top-header {
  background :#111827;
  color :#fff;
  font-size :14px;
  padding :10px 0;
}
.header-left {
  display :flex;
  gap :10px;
  align-items :center;
}
.offer-text {
  color :var(--accent);
  font-weight :600;
}
.header-right {
  display :flex;
  justify-content :flex-end;
  gap :15px;
}
.header-right a {
  color :#fff;
}
  .header-right a:hover {
  color :var(--accent);
}
.main-header {
  position :sticky;
  top :0;
  z-index :999;
  background :rgba(255, 255, 255, .92);
  backdrop-filter :blur(14px);
  box-shadow :0 5px 25px rgba(0, 0, 0, .05);
}
.navbar {
  padding :5px 0;
}
.navbar-brand img {
  height :60px;
}
.nav-link {
  color :#222;
  font-weight :500;
     margin: 0 4px;
    font-size: 14px;
}
  .nav-link:hover {
  color :var(--secondary);
}
.nav-link.active {
  color :var(--secondary);
}
.navbar-toggler {
  border: none;
  padding: 0;
  font-size: 24px; /* Adjust icon size */
  color: var(--dark); /* Default color */
  transition: var(--transition);
}
.navbar-toggler:focus {
  box-shadow: none; /* Remove focus outline */
}
.navbar-toggler.active {
  color: var(--secondary); /* Active color */
  transform: rotate(90deg); /* Rotate on active */
}

.navbar-brand .logo-text {
  font-size: 28px; /* Adjust as needed */
  font-weight: 700;
  color: var(--primary); /* Or a color that stands out */
  display: flex;
  align-items: center;
  gap: 8px;
}

.offcanvas-header .logo-text-mobile {
  font-size: 24px;
  font-weight: 700;
  color: var(--light); /* White text on primary background */
  display: flex;
  align-items: center;
  gap: 8px;
}

.footer-logo-text {
  font-size: 28px;
  font-weight: 700;
  color: var(--light); /* White text on dark background */
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px; /* To match original img margin */
}


.hero {
  position :relative;
  overflow :hidden;
}
.hero-item {
  position :relative;
  min-height :90vh;
  display :flex;
  align-items :center;
}
.hero-bg {
  position :absolute;
  inset :0;
  width :100%;
  height :100%;
  object-fit :cover;
}
  .hero-item::before {
 content: "";
    position: absolute;
    inset: 0;
    background: rgb(0 0 0 / 27%);
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
}
.hero-content {
  position :relative;
  z-index :2;
  max-width :650px;
  color :#fff;
}
.hero-content h1 {
  font-size :68px;
  line-height :1.1;
  font-weight :800;
  margin :20px 0;
}
.hero-content p {
  font-size :18px;
  line-height :32px;
}
.hero-buttons {
  margin-top :40px;
  display :flex;
  gap :20px;
}
.hero-tag {
  display :inline-block;
  padding :8px 20px;
  border-radius :50px;
  background :rgba(255, 255, 255, .15);
  backdrop-filter :blur(10px);
  color :#fff;
  font-size :14px;
  font-weight :600;
  letter-spacing :2px;
  text-transform :uppercase;
}
.hero-slider .owl-nav {
  position :absolute;
  top :50%;
  left :0;
  width :100%;
  transform :translateY(-50%);
}
.hero-slider .owl-prev, .hero-slider .owl-next {
  position :absolute;
  width :55px;
  height :55px;
  border-radius :50%;
  background :rgba(255, 255, 255, .15)!important;
  color :#fff!important;
  backdrop-filter :blur(12px);
  transition :.3s;
}
.hero-slider .owl-prev {
  left :40px;
}
.hero-slider .owl-next {
  right :40px;
}
  .hero-slider .owl-prev:hover, .hero-slider .owl-next:hover {
  background :var(--primary)!important;
}
.hero-slider .owl-dots {
  position :absolute;
  bottom :35px;
  width :100%;
}
.hero-slider .owl-dot span {
  width :12px;
  height :12px;
  background :#fff!important;
  opacity :.5;
}
.hero-slider .owl-dot.active span {
  background :var(--secondary)!important;
  width: 35px; /* Keep for active dot */
  border-radius: 30px; /* Keep for active dot */
  opacity: 1; /* Keep for active dot */
}
.offcanvas-header {
  background :var(--primary);
  color :#fff;
  display: flex; /* Ensure flexbox for alignment */
  justify-content: space-between; /* Space between logo and close button */
  align-items: center;
  padding: 15px 20px; /* Adjust padding */
}
.offcanvas-header .btn-close {
  filter :invert(1);
  opacity: 1; /* Ensure close button is visible */
}
.offcanvas-header .navbar-brand {
  margin-right: 0; /* Remove default brand margin */
}
.mobile-menu {
  padding :0;
  margin :0;
}
.mobile-menu li a {
  display :block;
  padding :12px 20px;
  color :#333;
  font-weight :500;
  border-bottom :1px solid #eee;
}
.mobile-menu li a:hover, .mobile-menu li a.active {
  background: var(--secondary);
  color: #fff;
}
.search-panel {
  margin-top :-70px;
  position :relative;
  z-index :99;
}
.search-wrapper {
  background :#fff;
  padding :35px;
  border-radius :20px;
  box-shadow :0 20px 60px rgba(0, 0, 0, .08);
}
.search-wrapper input, .search-wrapper select {
  height :58px;
  border-radius :12px;
  border :1px solid #ddd;
}
.search-wrapper .btn {
  height :58px;
  border-radius :12px;
}
.search-wrapper textarea.form-control {
  height: auto; /* Allow textarea to expand */
  min-height: 120px; /* Minimum height for textarea */
  padding-top: 15px; /* Adjust padding for textarea */
}
.statistics {
  background :#fff;
}
.stat-card {
  background :#fff;
  border-radius :18px;
  padding :35px;
  text-align :center;
  box-shadow :0 10px 40px rgba(0, 0, 0, .06);
  transition :.35s;
}
  .stat-card:hover {
  transform :translateY(-10px);
}
.stat-card i {
  font-size :45px;
  color :var(--secondary);
  margin-bottom :20px;
}
.stat-card h2 {
  font-size :42px;
  font-weight :700;
  margin-bottom :10px;
}
.stat-card p {
  color :#777;
  margin :0;
}
.quick-services {
  background :#f7f9fc;
}
.service-box {
  background :#fff;
  padding :25px 15px;
  text-align :center;
  border-radius :18px;
  transition :.35s;
  cursor :pointer;
  box-shadow :0 8px 25px rgba(0, 0, 0, .05);
}
  .service-box:hover {
  background :linear-gradient(135deg, var(--primary), #08a34d);
  color :#fff;
  transform :translateY(-8px);
}
.service-box i {
  font-size :34px;
  margin-bottom :15px;
  color :var(--secondary);
}
  .service-box:hover i {
  color :#fff;
}
.service-box h6 {
  font-weight :600;
  margin :0;
}
.scroll-down {
  position :absolute;
  bottom :35px;
  left :50%;
  transform :translateX(-50%);
  z-index :10;
}
.scroll-down a {
  width :48px;
  height :48px;
  display :flex;
  justify-content :center;
  align-items :center;
  border-radius :50%;
  background :#fff;
  color :var(--primary);
  animation :bounce 2s infinite;
}
@keyframes bounce {
  0%, 100%{transform :translateY(0);
}
50% {
  transform :translateY(10px);
}
}.floating-buttons {
  position :fixed;
  right :25px;
  bottom :30px;
  z-index :999;
  display :flex;
  flex-direction :column;
  gap :15px;
}
.floating-buttons a {
  width :58px;
  height :58px;
  display :flex;
  justify-content :center;
  align-items :center;
  border-radius :50%;
  color :#fff;
  font-size :22px;
  box-shadow :0 15px 40px rgba(0, 0, 0, .25);
  transition :.35s;
}
.floating-buttons .whatsapp {
  background :#25D366;
}
.floating-buttons .call {
  background :#ff4b2b;
}
  .floating-buttons a:hover {
  transform :scale(1.1);
}
.glass {
  background :rgba(255, 255, 255, .15);
  backdrop-filter :blur(15px);
  border :1px solid rgba(255, 255, 255, .2);
  border-radius :20px;
}
.hover-up {
  transition :.35s;
}
  .hover-up:hover {
  transform :translateY(-10px);
  box-shadow :0 20px 40px rgba(0, 0, 0, .12);
}
.img-zoom {
  overflow :hidden;
  border-radius :18px;
}
.img-zoom img {
  transition :.6s;
}
  .img-zoom:hover img {
  transform :scale(1.12);
}
.featured-categories {
  background :#ffffff;
}
.category-card {
  position :relative;
  overflow :hidden;
  border-radius :20px;
  cursor :pointer;
  box-shadow :0 15px 35px rgba(0, 0, 0, .08);
  transition :.4s;
}
.category-card img {
  width :100%;
  height :320px;
  object-fit :cover;
  transition :.6s;
}
  .category-card:hover {
  transform :translateY(-10px);
  box-shadow :0 25px 50px rgba(0, 0, 0, .15);
}
  .category-card:hover img {
  transform :scale(1.15);
}
.category-overlay {
  position :absolute;
  inset :0;
  background :linear-gradient(to top, rgba(0, 0, 0, .85), rgba(0, 0, 0, .15));
  display :flex;
  flex-direction :column;
  justify-content :flex-end;
  padding :30px;
  color :#fff;
}
.category-overlay h4 {
  font-size :28px;
  font-weight :700;
}
.category-overlay p {
  opacity :.85;
}
.category-overlay a {
  display :inline-block;
  margin-top :15px;
  color :#fff;
  font-weight :600;
}
  .category-overlay a:hover {
  color :var(--accent);
}
.brands-section {
  background :#f8f9fc;
}
.brand-box {
  background :#fff;
  height :140px;
  border-radius :18px;
  display :flex;
  justify-content :center;
  align-items :center;
  box-shadow :0 12px 30px rgba(0, 0, 0, .06);
  transition :.35s;
}
.brand-box img {
  max-height: 100px;
    max-width: 100%;
  transition :.4s;
  /* filter :grayscale(100%); */
}
  .brand-box:hover {
  transform :translateY(-8px);
}
  .brand-box:hover img {
  filter :none;
  transform :scale(1.08);
}
.featured-stores {
  background :#ffffff;
}
.store-card {
  overflow :hidden;
  border-radius :20px;
  background :#fff;
  box-shadow :0 15px 40px rgba(0, 0, 0, .08);
  transition :.35s;
}
  .store-card:hover {
  transform :translateY(-10px);
}
.store-card img {
  width :100%;
  height :280px;
  object-fit :cover;
  transition :.5s;
}
  .store-card:hover img {
  transform :scale(1.1);
}
.store-info {
  padding :25px;
}
.store-info h4 {
  margin :15px 0 8px;
  font-size :24px;
  font-weight :700;
}
.store-footer {
  display :flex;
  justify-content :space-between;
  align-items :center;
  margin-top :20px;
}
.store-footer span {
  color :#ffc107;
  font-size :18px;
}
.store-footer a {
  color :var(--primary);
  font-weight :600;
}
.featured-products {
  background :#f6f8fb;
}
.product-card {
  background :#fff;
  border-radius :20px;
  overflow :hidden;
  box-shadow :0 15px 40px rgba(0, 0, 0, .07);
  transition :.35s;
}
  .product-card:hover {
  transform :translateY(-8px);
}
.product-image {
  position :relative;
  overflow :hidden;
}
.product-image img {
  width :100%;
  height :300px;
  object-fit :cover;
  transition :.5s;
}
  .product-card:hover img {
  transform :scale(1.1);
}
.sale-badge {
  position :absolute;
  top :20px;
  left :20px;
  background :var(--secondary);
  color :#fff;
  padding :6px 14px;
  border-radius :30px;
  font-size :13px;
  font-weight :600;
}
.product-icons {
  position :absolute;
  top :20px;
  right :-60px;
  display :flex;
  flex-direction :column;
  gap :10px;
  transition :.4s;
}
  .product-card:hover .product-icons {
  right :20px;
}
.product-icons a {
  width :42px;
  height :42px;
  background :#fff;
  border-radius :50%;
  display :flex;
  justify-content :center;
  align-items :center;
  color :#222;
  box-shadow :0 10px 20px rgba(0, 0, 0, .1);
}
  .product-icons a:hover {
  background :var(--primary);
  color :#fff;
}
.product-info {
  padding :25px;
}
.product-info small {
  color :var(--secondary);
  font-weight :600;
}
.product-info h5 {
  margin :10px 0;
  font-size :22px;
  font-weight :700;
}
.price {
  display :flex;
  gap :15px;
  align-items :center;
  margin :20px 0;
}
.new-price {
  color :var(--primary);
  font-size :24px;
  font-weight :700;
}
.old-price {
  color :#888;
  text-decoration :line-through;
}
.today-offers {
  background :#ffffff;
}
.offer-box {
  position :relative;
  overflow :hidden;
  border-radius :20px;
}
.offer-box img {
  width :100%;
  height :420px;
  filter: brightness(0.6);
  object-fit :cover;
  transition :.6s;
}
  .offer-box:hover img {
  transform :scale(1.12);
}
.offer-content {
  position :absolute;
  left :35px;
  bottom :35px;
  color :#fff;
}
.offer-content span {
  display :inline-block;
  background :#23A390;
  padding :8px 18px;
  border-radius :30px;
  margin-bottom :15px;
  font-size :13px;
  font-weight :600;
}
.offer-content h3 {
  font-size :36px;
  font-weight :700;
  margin-bottom :20px;
}
.offer-content a {
  display :inline-block;
  color :#fff;
  border :2px solid #fff;
  padding :12px 28px;
  border-radius :40px;
  transition :.35s;
}
  .offer-content a:hover {
  background :#fff;
  color :#111;
}
.food-court {
  background :#f8f9fc;
}
.restaurant-card {
  background :#fff;
  border-radius :20px;
  overflow :hidden;
  text-align :center;
  box-shadow :0 15px 35px rgba(0, 0, 0, .08);
  transition :.35s;
}
  .restaurant-card:hover {
  transform :translateY(-10px);
}
.restaurant-card img {
  width :100%;
  height :260px;
  object-fit :cover;
  transition :.5s;
}
  .restaurant-card:hover img {
  transform :scale(1.08);
}
.restaurant-card h5 {
  margin-top :20px;
  font-size :24px;
  font-weight :700;
}
.restaurant-card p {
  color :#777;
  margin-bottom :10px;
}
.rating {
  color :#FFC107;
  font-size :18px;
  padding-bottom :20px;
}
.entertainment {
  background :#fff;
}
.ent-card {
  position :relative;
  overflow :hidden;
  border-radius :20px;
}
.ent-card img {
  width :100%;
  height :420px;
  object-fit :cover;
}
  .ent-card::before {
  content :'';
  position :absolute;
  inset :0;
  background :linear-gradient(to top, rgba(0, 0, 0, .9), rgba(0, 0, 0, .2));
}
.ent-info {
  position :absolute;
  left :35px;
  bottom :35px;
  z-index :2;
  color :#fff;
}
.ent-info h4 {
  font-size :34px;
  margin-bottom :15px;
  font-weight :700;
}
.ent-info p {
  margin-bottom :20px;
}
.events-section {
  background :#f6f8fb;
}
.event-card {
  background :#fff;
  border-radius :20px;
  overflow :hidden;
  box-shadow :0 15px 40px rgba(0, 0, 0, .08);
  transition :.35s;
}
  .event-card:hover {
  transform :translateY(-10px);
}
.event-card img {
  width :100%;
  height :250px;
  object-fit :cover;
}
.event-body {
  padding :25px;
}
.event-date {
  display :inline-block;
  background :var(--primary);
  color :#fff;
  padding :8px 18px;
  border-radius :30px;
  margin-bottom :15px;
  font-size :14px;
  font-weight :600;
}
.event-body h4 {
  font-size :24px;
  margin-bottom :15px;
  font-weight :700;
}
.gallery-section {
  background :#fff;
}
.gallery-img {
  border-radius :20px;
  transition :.5s;
  cursor :pointer;
  width :100%;
  height :100%;
  object-fit :cover;
}
  .gallery-img:hover {
  transform :scale(1.05);
  box-shadow :0 20px 45px rgba(0, 0, 0, .2);
}
.testimonial-section {
  background :#f8f9fc;
}
.testimonial-card {
  background :#fff;
  padding :40px;
  border-radius :20px;
  text-align :center;
  box-shadow :0 15px 40px rgba(0, 0, 0, .08);
}
.testimonial-card img {
  width :90px !important;
  height :90px;
  border-radius :50%;
  margin :auto;
  object-fit :cover;
  margin-bottom :20px;
}
.testimonial-card h5 {
  font-size :22px;
  font-weight :700;
}
.stars {
  color :#FFC107;
  margin :15px 0;
}
.testimonial-card p {
  color :#666;
  line-height :30px;
}
.newsletter-section {
  background :linear-gradient(135deg, var(--primary), #08a34d);
  padding :80px 0;
}
.newsletter-box {
  background :rgba(255, 255, 255, .12);
  backdrop-filter :blur(12px);
  border-radius :25px;
  padding :50px;
  color :#fff;
}
.newsletter-box h2 {
  font-size :42px;
  margin-bottom :15px;
}
.newsletter-box input {
  height :60px;
  border-radius :50px 0 0 50px;
  border :none;
}
.newsletter-box button {
  border-radius :0 50px 50px 0;
  padding :0 35px;
}
.contact-section {
  background :#fff;
}
.contact-section h2 {
  font-size :40px;
  margin-bottom :30px;
}
.contact-section p {
  font-size :17px;
  color :#555;
  line-height :34px;
}
.contact-section iframe {
  border-radius :20px;
  box-shadow :0 15px 40px rgba(0, 0, 0, .08);
}
.footer {
  background :#111827;
  color :#ddd;
  padding :90px 0 25px;
}
.footer-logo {
  height :70px;
  margin-bottom :20px;
}
.footer h5 {
  color :#fff;
  margin-bottom :25px;
  font-weight :700;
}
.footer ul li {
  margin-bottom :12px;
}
.footer ul li a {
  color :#bbb;
  transition :.3s;
}
  .footer ul li a:hover {
  color :#fff;
  padding-left :8px;
}
.social-links {
  display :flex;
  gap :15px;
  margin-top :20px;
}
.social-links a {
  width :45px;
  height :45px;
  border-radius :50%;
  display :flex;
  justify-content :center;
  align-items :center;
  background :#1f2937;
  color :#fff;
  transition :.35s;
}
  .social-links a:hover {
  background :var(--secondary);
  transform :translateY(-5px);
}
.footer hr {
  border-color :rgba(255, 255, 255, .08);
  margin :45px 0 25px;
}
.footer .text-center {
  color :#aaa;
  font-size :15px;
}
.shadow-lg-custom {
  box-shadow :0 25px 60px rgba(0, 0, 0, .12);
}
.rounded-20 {
  border-radius :20px;
}
.text-gradient {
  background :linear-gradient(90deg, var(--primary), var(--secondary));-webkit-background-clip :text;-webkit-text-fill-color :transparent;
}
.bg-gradient-primary {
  background :linear-gradient(135deg, var(--primary), #08a34d);
}
.transition {
  transition :.35s;
}
[data-aos] {
  overflow :hidden;
}
  ::-webkit-scrollbar {
  width :10px;
}
  ::-webkit-scrollbar-track {
  background :#f1f1f1;
}
  ::-webkit-scrollbar-thumb {
  background :linear-gradient(180deg, var(--primary), var(--secondary));
  border-radius :50px;
}
  ::-webkit-scrollbar-thumb:hover {
  background :var(--primary);
}
.scroll-progress {
  position :fixed;
  top :0;
  left :0;
  width :0%;
  height :4px;
  background :linear-gradient(90deg, #23A390, #08a34d, #F92943);
  z-index :999999;
}
.main-header.sticky {
  animation :stickyTop .4s;
  background :#ffffff;
  box-shadow :0 10px 35px rgba(0, 0, 0, .08);
}
@keyframes stickyTop {
  from{transform :translateY(-100%);
}
to {
  transform :translateY(0);
}
}.back-top {
  position :fixed;
  right :25px;
  bottom :110px;
  width :55px;
  height :55px;
  background :linear-gradient(135deg, var(--primary), #08a34d);
  border-radius :50%;
  display :flex;
  justify-content :center;
  align-items :center;
  color :#fff;
  opacity :0;
  visibility :hidden;
  transition :.35s;
  z-index :999;
}
.back-top.show {
  opacity :1;
  visibility :visible;
}
  .back-top:hover {
  transform :translateY(-6px);
}
.mega-menu {
  position :absolute;
  width :100%;
  left :0;
  top :100%;
  background :#fff;
  padding :40px;
  border-radius :0 0 20px 20px;
  box-shadow :0 20px 60px rgba(0, 0, 0, .08);
  display :none;
}
  .nav-item:hover .mega-menu {
  display :block;
}
.fade-up {
  animation :fadeUp .8s ease;
}
@keyframes fadeUp {
  from{transform :translateY(40px);
  opacity :0;
}
to {
  transform :translateY(0);
  opacity :1;
}
}.zoom-in {
  animation :zoomIn .6s;
}
@keyframes zoomIn {
  from{transform :scale(.8);
  opacity :0;
}
to {
  transform :scale(1);
  opacity :1;
}
}.rotate {
  transition :.5s;
}
  .rotate:hover {
  transform :rotate(8deg);
}
.float {
  animation :floating 3s infinite ease-in-out;
}
@keyframes floating {
  0%{transform :translateY(0);
}
50% {
  transform :translateY(-15px);
}
100% {
  transform :translateY(0);
}
}.card-hover {
  transition :.35s;
}
  .card-hover:hover {
  transform :translateY(-12px);
  box-shadow :0 30px 70px rgba(0, 0, 0, .12);
}
  .glow:hover {
  box-shadow :0 0 30px rgba(106, 17, 203, .35);
}
.overlay-dark {
  position :relative;
}
  .overlay-dark::before {
  content :"";
  position :absolute;
  inset :0;
  background :rgba(0, 0, 0, .45);
}
.badge-sale {
  background :#F92943;
}
.badge-new {
  background :#00C853;
}
.badge-hot {
  background :#FF6D00;
}
.form-control, .form-select {
  border-radius :12px;
  border :1px solid #ddd;
  box-shadow :none;
}
  .form-control:focus, .form-select:focus {
  border-color :var(--primary);
  box-shadow :0 0 0 .2rem rgba(106, 17, 203, .15);
}
.table {
  border-radius :15px;
  overflow :hidden;
}
.dark-mode {
  background :#0f172a;
  color :#fff;
}
.dark-mode .navbar {
  background :#111827;
}
.dark-mode .section-title h2 {
  color :#fff;
}
.dark-mode .stat-card,

.dark-mode .category-card, .dark-mode .store-card, .dark-mode .product-card {
  background :#1e293b;
  color :#fff;
}
.text-shadow {
  text-shadow :0 4px 15px rgba(0, 0, 0, .25);
}
.fw-700 {
  font-weight :700;
}
.radius-30 {
  border-radius :30px;
}
.radius-50 {
  border-radius :50px;
}
.bg-light-blue {
  background :#eef4ff;
}
.bg-gradient-dark {
  background :linear-gradient(135deg, #111827, #1f2937);
}
@media print {
  header, footer, .floating-buttons, .back-top{display :none;
}
}img {
  image-rendering :auto;
}
