/* ========= General ========= */
body{
  background-color:#f8f9fa;
  font-family:'Segoe UI', sans-serif;
}

/* ========= Carousel — big & responsive ========= */
#juniorCarousel .carousel-inner{
  aspect-ratio: 4 / 3;   /* phones: a bit taller */
  min-height: 260px;
}
@media (min-width: 768px){
  #juniorCarousel .carousel-inner{
    aspect-ratio: 16 / 10;
    min-height: 440px;
  }
}
@media (min-width: 1200px){
  #juniorCarousel .carousel-inner{
    aspect-ratio: 16 / 9;
    min-height: 560px;
  }
}
#juniorCarousel .carousel-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-top-left-radius:.375rem;
  border-top-right-radius:.375rem;
}

/* ========= Feature list (1 → 2 → 3 columns) ========= */
.feature-list{
  display:grid;
  grid-template-columns: 1fr;
  gap:.5rem .75rem;
  margin:0;
  padding:0;
}
@media (min-width:576px){ .feature-list{ grid-template-columns: repeat(2, 1fr); } }
@media (min-width:1200px){ .feature-list{ grid-template-columns: repeat(3, 1fr); } }
.feature-list li{
  list-style:none;
  display:flex;
  align-items:center;
  gap:.6rem;
  padding:.5rem .6rem;
  border-radius:.6rem;
  background:#fff;
  border:1px solid #e9ecef;
  box-shadow:0 1px 0 rgba(0,0,0,.02);
  color:#212529;
}
.feature-list i{
  font-size:1.1rem;
  color:#198754;
}

/* ========= Price under features ========= */
.price-display{ gap:1rem; }
.card-body .price-display{ justify-content:flex-start; }
.price-display .old-price{
  color:#6c757d;
  text-decoration:line-through;
  font-size:clamp(1rem, 2.4vw, 1.2rem);
}
.price-display .new-price{
  color:#198754;
  font-weight:800;
  font-size:clamp(2rem, 5vw, 2.8rem);
  line-height:1;
}
.price-display .rupees{
  color:#6c757d;
  font-size:clamp(.95rem, 2.2vw, 1.05rem);
}

/* ========= Notes ========= */
.price-note{
  border:1px solid rgba(25,135,84,.25);
  background:#eefaf3;
}

/* ========= Calendar ========= */
.calendar-card{ border:1px solid #e9ecef; }
.calendar-card .card-body{ padding:1rem 1rem 1.25rem; }
.calendar-header{ font-weight:600; margin-bottom:.5rem; }

.calendar{ width:100%; }
.calendar-grid{
  display:grid;
  grid-template-columns:repeat(7, 1fr);
  gap:.25rem;
}
.calendar-grid--labels{
  color:#6c757d;
  font-size:clamp(.8rem, 1.8vw, .95rem);
  margin-bottom:.25rem;
}
.calendar-cell{
  background:#fff;
  border:1px solid #e9ecef;
  border-radius:.375rem;
  padding:.35rem;
  min-height:clamp(44px, 7vw, 60px);
  display:flex;
  align-items:center;
  justify-content:center;
}
.calendar-cell.muted{ background:#f8f9fa; }
.calendar-cell.today{
  outline:2px solid rgba(25,135,84,.4);
  font-weight:700;
}

/* ========= Footer ========= */
#footer p{ margin-bottom:.25rem; }

/* Carousel indicators */
.carousel-indicators [data-bs-target]{
  width:.6rem;
  height:.6rem;
  border-radius:50%;
}
/* ==== WhatsApp Button ==== */
.btn-whatsapp {
  background: #25D366;
  color: #fff;
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  font-weight: 700;
  padding: .8rem 1rem;
  border-radius: .8rem;
  box-shadow: 0 10px 24px rgba(37, 211, 102, .28);
  text-decoration: none;
}
.btn-whatsapp:hover {
  color: #fff;
  filter: brightness(.95);
}

