/* ===================================================================
   HOTEL ASTHA INN — RESPONSIVE OVERRIDES
   Mobile-first breakpoints layered on top of style.css
=================================================================== */

/* Large tablets / small desktops */
@media (max-width: 1199.98px) {
  .section { padding: 84px 0; }
  .welcome-media .badge-years { width: 108px; height: 108px; left: -18px; bottom: -18px; }
}

/* Tablets */
@media (max-width: 991.98px) {
  .section { padding: 70px 0; }
  .section-sm { padding: 50px 0; }

  .navbar-astha { padding: 16px 0; background: rgba(251,246,236,0.98); backdrop-filter: blur(10px); }
  .navbar-astha .nav-link, .brand-mark .brand-text { color: var(--ink-700) !important; }
  .navbar-astha .brand-mark .brand-text { color: var(--maroon-800) !important; }
  .navbar-toggler .bar { background: var(--maroon-800) !important; }
  .navbar-collapse {
    background: var(--white);
    margin-top: 14px;
    border-radius: var(--radius-md);
    padding: 10px 18px;
    box-shadow: var(--shadow-card);
  }
  .navbar-astha .nav-link::after { display: none; }
  .navbar-astha .nav-link { padding: 12px 4px !important; border-bottom: 1px solid var(--cream-200); }
  .nav-cta-group { flex-direction: column; gap: 10px; margin-top: 10px; padding-bottom: 8px; }
  .nav-cta-group .btn-call, .nav-cta-group .btn-gold { text-align: center; width: 100%; }

  .hero-slider .arrow { width: 40px; height: 40px; }
  .hero-slider .arrow.prev { left: 12px; }
  .hero-slider .arrow.next { right: 12px; }
  .hero-cta { flex-direction: column; align-items: center; }

  .welcome-media .badge-years { position: static; margin: 20px auto 0; }

  .room-showcase img { min-height: 260px; }

  .form-card { padding: 30px; }
  .contact-info-card { padding: 30px; margin-bottom: 30px; }

  .owner-card { padding: 34px; }
}

/* Mobile landscape / large phones */
@media (max-width: 767.98px) {
  h1 { font-size: 2.1rem; }
  h2 { font-size: 1.7rem; }
  .section { padding: 56px 0; }

  .hero-slider { height: 92vh; }
  .hero-slide-content p.lead { font-size: 0.95rem; }
  .scroll-cue { display: none; }

  .facility-card, .why-card { padding: 26px 20px; }

  .room-amenity-list { grid-template-columns: 1fr; }

  .gallery-item .g-media { height: 220px; }
  .gallery-filters { justify-content: flex-start; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 6px; }
  .gallery-filters button { flex-shrink: 0; }

  .testimonial-card { padding: 28px 22px; }

  .footer-astha { padding: 56px 0 0; }
  .back-to-top { width: 42px; height: 42px; bottom: 20px; right: 20px; }
  .whatsapp-float { width: 46px; height: 46px; bottom: 20px; left: 20px; font-size: 1.2rem; }

  .page-header { min-height: 38vh; }

  .stat-item { margin-bottom: 24px; }
}

/* Small phones */
@media (max-width: 575.98px) {
  .container { padding-left: 20px; padding-right: 20px; }
  .brand-mark .brand-text { font-size: 1rem; }
  .brand-mark .mark { width: 38px; height: 38px; font-size: 1rem; }

  .hero-indicators { bottom: 18px; }
  .hero-slide-content h1 { font-size: 1.9rem; }

  .form-card { padding: 24px 18px; }
  .contact-info-card { padding: 24px 18px; }
  .owner-card { padding: 26px 20px; }
  .owner-card .quote-mark { font-size: 3rem; top: 8px; left: 18px; }

  .room-card .room-body { padding: 20px; }
}
