@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

/* Remove spin buttons from number inputs */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}


body {
    background-color: var(--light-gray-bg);
}



/* Reset default styles */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* CSS Variables - Logo Color Scheme Based */
:root {
  /* Primary Colors from Logo */
  --primary-blue: #1e3a8a;           /* Royal Blue from logo */
  --primary-blue-light: #2563eb;     /* Lighter shade of blue */
  --primary-blue-dark: #1e3a8a;      /* Darker shade of blue */
  --primary-blue-hover: #3b82f6;     /* Hover state blue */
  
  /* Secondary Colors */
  --secondary-black: #0E0E0E;        /* Black from logo */
  --secondary-cream: #f5f5dc;        /* Off-white/Cream background */
  --white-color: #ffffff;            /* Pure white */
  
  /* Background Colors */
  --background-color: #FFF;          /* Main background */
  --background-light: #f8f9fa;       /* Light gray background */
  --background-cream: #fffef9;       /* Subtle cream tone */
  
  /* Text Colors */
  --default-color: #0E0E0E;          /* Default text */
  --text-gray: #555555;              /* Gray text */
  --text-light: #6c757d;             /* Light gray text */
  
  /* Brand Colors */
  --logo-color: #1e3a8a;             /* Main logo color */
  --accent-color: #2563eb;           /* Accent highlights */
  
  /* Border & Shadow */
  --border-color: #1e3a8a;           /* Border color */
  --shadow-color: rgba(30, 58, 138, 0.15); /* Shadow with blue tint */
  
  /* Button Colors */
  --btn-primary-bg: #1e3a8a;
  --btn-primary-hover: #1e40af;
  --btn-secondary-bg: #0E0E0E;
  --btn-secondary-hover: #374151;
}

/* Smooth scroll */
:root {
  scroll-behavior: smooth;
}

/* Body styling */
body {
  color: var(--default-color);
  background-color: var(--background-color);
  font-family: 'Inter', sans-serif;
  text-decoration: none;
  outline: none;
  line-height: 1.6;
}

/* Utility Classes */
.text-color {
  color: var(--logo-color);
}

.bg-color {
  background-color: #1c202a;
}

.text-primary-blue {
  color: var(--primary-blue);
}

.bg-primary-blue {
  background-color: var(--primary-blue);
}

/* Links */
a {
  color: var(--primary-blue);
  text-decoration: none;
  transition: color 0.3s ease;
}

a:hover {
  color: var(--primary-blue-hover);
}

/* Contact Link Hover */
.contact-link {
  transition: color 0.3s ease, transform 0.2s ease;
  cursor: pointer;
  color: var(--default-color);
}

.contact-link:hover {
  color: var(--primary-blue) !important;
  transform: translateY(-2px);
}

/* Social Icons */
.social-icon {
  transition: all 0.3s ease;
  cursor: pointer;
  color: var(--primary-blue);
}

.social-icon:hover {
  color: var(--primary-blue-hover) !important;
  transform: scale(1.1);
}

/* Brand Container */
.brand-container {
  width: 100%;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--background-cream);
}

/* Dropdown Menu */
.dropdown-menu {
  right: -200px;
  background: var(--white-color) !important;
  border: 1px solid var(--primary-blue);
  box-shadow: 0 4px 12px var(--shadow-color);
}

.dropdown-item {
  color: var(--default-color);
  transition: all 0.3s ease;
}

.dropdown-item:hover {
  background-color: var(--primary-blue);
  color: var(--white-color);
}

/* Brand Color Class */
.bhagva {
  color: var(--primary-blue);
  transition: all 0.5s ease;
}

.bhagva:hover {
  color: var(--primary-blue-hover);
}

/* Images */
.brand-img {
  width: 100%;
  object-fit: cover;
  /*border: 2px solid var(--primary-blue);*/
}

.abt-img {
  width: 100%;
  height: 600px;
  border-radius: 20px;
  border: 2px solid var(--primary-blue);
  box-shadow: 0 8px 16px var(--shadow-color);
  transition: transform 0.3s ease;
}

.abt-img:hover {
  transform: scale(1.02);
}

.category-img {
  object-fit: cover;
  border: 2px solid var(--primary-blue-light);
  transition: all 0.3s ease;
}

.category-img:hover {
  border-color: var(--primary-blue);
  box-shadow: 0 6px 12px var(--shadow-color);
}

.brand-container2 {
  width: 100%;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Testimonial Card */
.testimonial-card {
  background-color: var(--white-color);
  border-radius: 25px;
  border: 2px solid var(--primary-blue);
  padding: 20px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 8px var(--shadow-color);
}

.testimonial-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 16px var(--shadow-color);
  border-color: var(--primary-blue-hover);
}

.image-circle img {
  width: 100px;
  height: 100px;
  object-fit: contain;
  border-radius: 100%;
  border: 3px solid var(--primary-blue);
  padding: 5px;
}

/* Rating Stars */
.rating {
  color: #ffd700;
  font-size: 20px;
}

/* Description */
.description {
  font-size: 16px;
  color: var(--text-gray);
  line-height: 1.6;
}

/* Navigation Buttons */
#prevBtn,
#nextBtn {
  font-size: 32px;
  transition: all 0.3s ease;
  border: none;
  background-color: transparent;
  color: var(--primary-blue);
}

#prevBtn:hover,
#nextBtn:hover {
  color: var(--primary-blue-hover);
  transform: scale(1.1);
}

/* Bootstrap Override */
.bg-success {
  background-color: var(--primary-blue) !important;
}

.text-success {
  color: var(--primary-blue) !important;
}

.btn-primary {
  background-color: var(--primary-blue);
  border-color: var(--primary-blue);
  color: var(--white-color);
}

.btn-primary:hover {
  background-color: var(--primary-blue-hover);
  border-color: var(--primary-blue-hover);
}

/* Blog Card */
.blog-card {
  border: 2px solid var(--primary-blue);
  border-radius: 10px;
  padding: 15px;
  background-color: var(--white-color);
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px var(--shadow-color);
}

.blog-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 16px var(--shadow-color);
  border-color: var(--primary-blue-hover);
}

.blog-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid var(--primary-blue-light);
}

.blog-card button {
  margin-top: 10px;
  background-color: var(--primary-blue);
  color: var(--white-color);
  border: none;
  padding: 10px 20px;
  border-radius: 5px;
  transition: all 0.3s ease;
}

.blog-card button:hover {
  background-color: var(--primary-blue-hover);
  transform: scale(1.05);
}

/* Footer */
.footer-logo {
  width: 10%;
  filter: drop-shadow(2px 4px 6px rgba(30, 58, 138, 0.3));
}

.lgnbtn {
  color: var(--white-color);
  background: var(--primary-blue);
  border: none;
  padding: 10px 25px;
  border-radius: 5px;
  transition: all 0.3s ease;
}

.lgnbtn:hover {
  background: var(--primary-blue-hover);
  transform: translateY(-2px);
  box-shadow: 0 4px 8px var(--shadow-color);
}

/* WhatsApp Float Button */
@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}

.whatapp-img {
  position: fixed;
  width: 100px;
  bottom: 20px;
  right: 0px;
  z-index: 1000;
  cursor: pointer;
  padding: 10px 15px;
  animation: float 2s ease-in-out infinite;
  filter: drop-shadow(0 4px 8px rgba(30, 58, 138, 0.3));
}

/* Blog Banner */
.blog-banner {
  height: 400px;
  background-image: url('../imges/blogs.svg');
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  background-size: contain;
  border: 2px solid var(--primary-blue-light);
}

.blogs-images {
  object-fit: cover;
  width: 100%;
  height: 400px;
  border-radius: 20px;
  border: 2px solid var(--primary-blue);
  box-shadow: 0 8px 16px var(--shadow-color);
}

/* Card Hover */
.card {
  cursor: pointer;
  border: 1px solid var(--primary-blue-light);
  transition: all 0.3s ease;
  overflow: hidden;
}

.card:hover {
  border-color: var(--primary-blue);
  box-shadow: 0 6px 12px var(--shadow-color);
  transform: translateY(-5px);
}
/* Navbar */
.navbar {
  background-color: var(--white-color);
  /* box-shadow: 0 2px 8px var(--shadow-color); */
}

.navbar-nav li:hover > ul.dropdown-menu {
  display: block;
}

.dropdown-submenu {
  position: relative;
}

.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
}

.navbar-nav .nav-link {
  transition: all 0.3s ease;
  font-weight: 600;
  color: var(--default-color);
  position: relative;
}

.navbar-nav .nav-link:hover {
  color: var(--primary-blue);
}

.navbar-nav .nav-link::after {
  content: '';
  position: absolute;
  width: 0;
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: var(--primary-blue);
  transition: width 0.3s ease;
}

.navbar-nav .nav-link:hover::after {
  width: 100%;
}

/* Modal */
.modal {
  display: none;
  position: fixed;
  z-index: 11111;
  padding-top: 10px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(81 82 84 / 90%);
}

.modal-content {
  position: relative;
  background-color: var(--white-color);
  margin: auto;
  padding: 0;
  width: 90%;
  max-width: 1200px;
  border: 3px solid var(--primary-blue);
  border-radius: 10px;
}

.close {
  color: var(--white-color);
  position: absolute;
  top: 10px;
  right: 25px;
  font-size: 35px;
  font-weight: bold;
  z-index: 1;
  background-color: var(--primary-blue);
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}

.close:hover,
.close:focus {
  background-color: var(--primary-blue-hover);
  transform: rotate(90deg);
  cursor: pointer;
}

/* Slider Navigation */
.prev,
.next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  padding: 16px;
  margin-top: -50px;
  color: var(--white-color);
  background-color: var(--primary-blue);
  font-weight: bold;
  font-size: 20px;
  transition: all 0.3s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
  -webkit-user-select: none;
}

.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

.prev:hover,
.next:hover {
  background-color: var(--primary-blue-hover);
}

.numbertext {
  color: var(--white-color);
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
  background-color: var(--primary-blue);
  border-radius: 5px;
}

.caption-container {
  text-align: center;
  background-color: var(--primary-blue);
  padding: 2px 16px;
  color: var(--white-color);
}

.demo {
  opacity: 0.6;
  border: 2px solid var(--primary-blue-light);
  transition: all 0.3s ease;
}

.active,
.demo:hover {
  opacity: 1;
  border-color: var(--primary-blue);
}

img.hover-shadow {
  transition: all 0.3s ease;
}

.hover-shadow:hover {
  box-shadow: 0 4px 8px var(--shadow-color), 0 6px 20px var(--shadow-color);
}

/* Product Images */
.buy_img {
  width: 100%;
  object-fit: cover;
  border: 2px solid var(--primary-blue-light);
  border-radius: 10px;
}

.open-slider {
  width: 100% !important;
  height: 100vh !important;
  object-fit: contain;
  background: var(--secondary-black);
}

.pro_details {
  padding-left: 50px;
}

.p-mrp {
  color: var(--primary-blue);
  font-weight: 600;
  font-size: 1.2rem;
}

/* Contact Form */
.contactPageForm input,
.contactPageForm select,
.contactPageForm textarea {
  width: 100%;
  border: 2px solid var(--primary-blue);
  outline: none;
  padding: 15px 10px;
  color: var(--default-color) !important;
  background-color: transparent;
  border-radius: 5px;
  transition: all 0.3s ease;
}

.contactPageForm input:focus,
.contactPageForm select:focus,
.contactPageForm textarea:focus {
  border-color: var(--primary-blue-hover);
  box-shadow: 0 0 8px var(--shadow-color);
}

.contactPageForm select {
  padding: 17px 10px;
}

.contactPageForm button {
  display: block;
  width: 100%;
  padding: 15px 10px;
  border: none;
  background: var(--primary-blue);
  color: var(--white-color);
  border-radius: 5px;
  font-weight: 600;
  transition: all 0.3s ease;
  cursor: pointer;
}

.contactPageForm button:hover {
  background: var(--primary-blue-hover);
  transform: translateY(-2px);
  box-shadow: 0 4px 8px var(--shadow-color);
}

.contactPageForm textarea {
  padding: 10px;
  min-height: 120px;
  resize: vertical;
}

/* Heera Button */
.heera button {
  padding: 10px 30px;
  border: none;
  background: var(--primary-blue);
  color: var(--white-color);
  transition: all 0.3s ease;
  border-radius: 5px;
  font-weight: 600;
  cursor: pointer;
}

.heera button:hover {
  background: var(--primary-blue-hover);
  transform: scale(1.05);
  box-shadow: 0 4px 8px var(--shadow-color);
}

/* Accordion */
.accordion-button {
  background-color: var(--white-color) !important;
  color: var(--primary-blue) !important;
  border: 1px solid var(--primary-blue) !important;
  font-weight: 600;
}

.accordion-button:not(.collapsed) {
  background-color: var(--primary-blue) !important;
  color: var(--white-color) !important;
}

.accordion-button:focus {
  box-shadow: 0 0 0 0.25rem var(--shadow-color);
}

.accordion-body {
  background-color: var(--white-color) !important;
  border: 1px solid var(--primary-blue-light);
  border-top: none;
}

/* Placeholder Styling */
::placeholder {
  color: var(--text-light) !important;
  opacity: 1;
}

::-webkit-input-placeholder {
  color: var(--text-light) !important;
}

::-moz-placeholder {
  color: var(--text-light) !important;
}

:-ms-input-placeholder {
  color: var(--text-light) !important;
}

/* Responsive Design */
@media only screen and (max-width: 600px) {
  .brand-container {
    padding: 20px 0;
  }

  .brand-container2 {
    padding: 15px 0;
  }

  .abt-img {
    height: 400px;
  }

  .footer-logo {
    width: 20%;
  }

  .pro_details {
    padding-left: 15px;
  }
}

@media (max-width: 576px) {
  .blog-banners {
    padding-top: 20px !important;
  }

  .testimonial-card {
    margin: 10px 0;
  }

  .navbar-nav .nav-link {
    padding: 10px 15px;
  }
}

/* Additional Utility Classes */
.border-primary {
  border-color: var(--primary-blue) !important;
}

.text-primary {
  color: var(--primary-blue) !important;
}

.bg-primary {
  background-color: var(--primary-blue) !important;
}

/* Section Styling */
section {
  padding: 60px 0;
}

section h2 {
  color: var(--primary-blue);
  font-weight: 700;
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 15px;
}

/*section h2::after {*/
/*  content: '';*/
/*  position: absolute;*/
/*  width: 80px;*/
/*  height: 3px;*/
/*  background-color: var(--primary-blue);*/
/*  bottom: 0;*/
/*  left: 50%;*/
/*  transform: translateX(-50%);*/
/*}*/

/* Loading Animation */
.spinner {
  border: 4px solid var(--background-light);
  border-top: 4px solid var(--primary-blue);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
