/* बेसिक बॉडी स्टाइल */
body {
    margin: 0;
    font-family: Arial, sans-serif;
    background-color: #f4f4f4; /* पेज को हल्का ग्रे बैकग्राउंड दिया */
}

/* कंटेनर ताकि कंटेंट सेंटर में रहे */
.container {
    width: 90%;
    max-width: 1200px; /* चौड़ाई बढ़ाई ताकि ज्यादा कार्ड्स आ सकें */
    margin: 0 auto;
}

/* ==== 1. हेडर की स्टाइलिंग (जैसा पहले था) ==== */
.main-header {
  /*  background: #ffffff; */
    border-bottom: 2px solid #e0e0e0;
    padding: 10px 0;

    /* --- यह सबसे महत्वपूर्ण है: हेडर फ्रीज --- */
    position: sticky;
    top: 0;
    z-index: 1000; /* यह सुनिश्चित करता है कि हेडर कार्ड्स के ऊपर रहे */
    /* ------------------------------------- */
}

/* लेआउट: लोगो लेफ्ट, नेव राइट */
.main-header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo {
    font-size: 24px;
    font-weight: bold;
}
.logo a {
    text-decoration: none;
    color: #333;
}



/* ==== 2. आपका प्रोडक्ट कंटेनर (.box-container) ==== */
/* इसे रेस्पॉन्सिव बनाने के लिए (मोबाइल, टैब, पीसी) */
.box-container {
    display: flex;
    flex-wrap: wrap;         /* जब जगह न हो तो कार्ड्स को अगली लाइन में भेजें */
    justify-content: center; /* कार्ड्स को हमेशा पेज के सेंटर में रखें */
    gap: 10px;               /* कार्ड्स के बीच थोड़ा गैप (आपका .card margin भी काम करेगा) */
    padding: 20px 0;
}  
/* From Uiverse.io by Smit-Prajapati */ 
.card {
  --accent-color: #ffd426;
  position: relative;
  width: 240px;
  background: white;
  border-radius: 1rem;
  padding: 0.3rem;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 50px 30px -20px;
  transition: all 0.5s ease-in-out;
  margin: 20px;
}

.card .image-container {
  position: relative;
  width: 100%;
  height: 130px;
  border-radius: 0.7rem;
  border-top-right-radius: 4rem;
  margin-bottom: 1rem;
}

.card .image-container img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: inherit;
}

.card .image-container .svg {
  height: 100%;
  width: 100%;
  border-radius: inherit;
}

.card .image-container .price {
  position: absolute;
  right: 0.7rem;
  bottom: -1rem;
  background: white;
  color: #ff2626;
  font-weight: 900;
  font-size: 0.9rem;
  padding: 0.5rem;
  border-radius: 1rem 1rem 2rem 2rem;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 0px 15px 0px;
}

.card .favorite {
  position: absolute;
  width: 19px;
  height: 19px;
  top: 5px;
  right: 5px;
  cursor: pointer;
}

.card .favorite input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.card .favorite input:checked ~ svg {
  animation: bouncing 0.5s;
  fill: rgb(255, 95, 95);
  filter: drop-shadow(0px 3px 1px rgba(53, 53, 53, 0.14));
}

.card .favorite svg {
  fill: #a8a8a8;
}

.card .content {
  padding: 0px 0.8rem;
  margin-bottom: 1rem;
}

.card .content .brand {
  font-weight: 900;
  color: #000000;
}

.card .content .product-name {
  font-weight: 700;
  color: #666666;
  font-size: 0.7rem;
  margin-bottom: 1rem;
}

.card .content .color-size-container {
  display: flex;
  justify-content: space-between;
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: 700;
  color: #a8a8a8;
  gap: 2rem;
  margin-bottom: 1.5rem;
}

.card .content .color-size-container > * {
  flex: 1;
}

.card .content .color-size-container .colors .colors-container {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.3rem;
  font-size: 0.5rem;
  margin-top: 0.2rem;
}

.card .content .color-size-container .colors .colors-container .color {
  height: 14px;
  position: relative;
}

.card .content .color-size-container .colors .colors-container .color:hover .color-name {
  display: block;
}

.card .content .color-size-container .colors .colors-container .color a {
  display: inline-block;
  height: 100%;
  aspect-ratio: 1;
  border: 3px solid black;
  border-radius: 50%;
}

.card .content .color-size-container .colors .colors-container .color .color-name {
  display: none;
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 99;
  background: black;
  padding: 0.2rem 1rem;
  border-radius: 1rem;
  text-align: center;
}

.card .content .color-size-container .colors .colors-container .color:first-child a {
  border-color: #ffd426;
}

.card .content .color-size-container .colors .colors-container .color:nth-child(2) a {
  background: #144076;
}

.card .content .color-size-container .colors .colors-container .color:nth-child(3) a {
  border-color: #00b9ff;
}

.card .content .color-size-container .colors .colors-container .color:nth-child(4) a {
  border-color: #ff6ba1;
}

.card .content .color-size-container .colors .colors-container .active {
  border-color: black;
}

.card .content .color-size-container .sizes .size-container {
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.2rem;
}

.card .content .color-size-container .sizes .size-container .size {
  height: 14px;
}

.card .content .color-size-container .sizes .size-container .size .size-radio {
  cursor: pointer;
}

.card .content .color-size-container .sizes .size-container .size .size-radio input {
  display: none;
}

.card .content .color-size-container .sizes .size-container .size .size-radio input:checked ~ .name {
  background: var(--accent-color);
  border-radius: 2rem 2rem 1.5rem 1.5rem;
  color: white;
}

.card .content .color-size-container .sizes .size-container .size .size-radio .name {
  display: grid;
  place-content: center;
  height: 100%;
  aspect-ratio: 1.2/1;
  text-decoration: none;
  color: #484848;
  font-size: 0.5rem;
  text-align: center;
}

.card .content .rating {
  color: #a8a8a8;
  font-size: 0.6rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.card .content .rating svg {
  height: 12px;
}

.card .button-container {
  display: flex;
  gap: 0.3rem;
}

.card .button-container .button {
  border-radius: 1.4rem 1.4rem 0.7rem 0.7rem;
  border: none;
  padding: 0.5rem 0;
  background: #267dff;
  color: white;
  font-weight: 900;
  cursor: pointer;
}

.card .button-container .button:hover {
  background: orangered;
}

.card .button-container .buy-button {
  flex: auto;
}

.card .button-container .cart-button {
  display: grid;
  place-content: center;
  width: 50px;
}

.card .button-container .cart-button svg {
  width: 15px;
  fill: white;
}

.card:hover {
  transform: scale(1.2);
}

@keyframes bouncing {
  from, to {
    transform: scale(1, 1);
  }

  25% {
    transform: scale(1.5, 2.1);
  }

  50% {
    transform: scale(2.1, 1.5);
  }

  75% {
    transform: scale(1.5, 2.05);
  }
}

/* Container holds all banners and stacks them vertically */
.banner-container{
display:flex;
flex-direction:column; /* stack banners vertically */
gap:16px; /* space between banners */
width:100%;
max-width:1400px; /* optional page max width */
margin:0 auto; /* center on larger screens */
}


/* Each banner scales to full width of container and keeps an aspect ratio */
.banner{
width:100%;
position:relative;
overflow:hidden;
border-radius:12px;
box-shadow:0 6px 18px rgba(0,0,0,0.08);
background:#f2f2f2;
}


/* Use aspect-ratio so height adapts to width responsively */
.banner.aspect-16-5{ aspect-ratio: 16 / 5; }
.banner.aspect-4-1 { aspect-ratio: 4 / 1; }
.banner.aspect-3-1 { aspect-ratio: 3 / 1; }


/* If you use an <img> inside the banner, make it cover the area */
.banner img{
width:100%;
height:100%;
object-fit:cover; /* crop to fill while keeping aspect */
display:block;
}


/* Overlay content inside the banner (title, CTA) */
.banner .overlay{
position:absolute;
left:16px;
top:50%;
transform:translateY(-50%);
color:white;
text-shadow:0 4px 12px rgba(0,0,0,0.45);
max-width:60%;
}
.banner h2{font-size:clamp(18px, 3.2vw, 32px); margin-bottom:8px}
.banner p{font-size:clamp(12px, 1.8vw, 16px); opacity:0.95}
.btn{
display:inline-block;margin-top:12px;padding:10px 16px;border-radius:8px;background:rgba(0,0,0,0.7);color:#fff;text-decoration:none;font-weight:600
}


/* small-screen tweaks */
@media (max-width:480px){
.banner .overlay{left:12px; max-width:80%}
.banner-container{gap:12px}
}


/* utility: show how to add more banners via JS demo button */
.controls{max-width:1200px;margin:8px auto 28px;padding:0 12px;display:flex;gap:8px;align-items:center}
.controls button{padding:8px 12px;border-radius:8px;border:1px solid #ddd;background:#fff;cursor:pointer}