/* ============================================================
   GODREJ VARANYA — RESPONSIVE RULES
   Loaded after style.css. Breakpoints tuned for 1440 / 1024 / 768 / 480 / 375.
   ============================================================ */

.mobile-only{display:none;}
.desktop-only{display:flex;}

/* ---------- 1024px — tablet & small laptop ---------- */
@media (max-width:1024px){
  .wrap{padding:0 22px;}
  .about-grid{gap:36px;}
  .why-grid{grid-template-columns:repeat(2,1fr);}
  .dev-grid{grid-template-columns:1fr;gap:30px;}
  .dev-grid .dev-mark{max-width:220px;margin:0 auto;}
  .amenity-grid{grid-template-columns:repeat(2,1fr);}
  .usp-premium-row{grid-template-columns:repeat(3,1fr);row-gap:26px;}
  .usp-premium-item{border-right:none;}
  .location-premium-grid{gap:40px;}
}

/* ---------- 960px — nav collapses ---------- */
@media (max-width:960px){
  nav.main-nav{display:none;}
  .desktop-only{display:none;}
  .mobile-only{display:flex;}
  .header-inner{height:64px;}
  .logo{font-size:15px;}

  .hero{min-height:auto;padding-top:90px;}
  .hero-grid{grid-template-columns:1fr;padding-bottom:36px;}
  /* Enquiry form stacks full-width below the CTA row on mobile instead
     of being hidden — it stays a glass card per the mobile hero spec. */
  .hero .gv-form-card{margin-top:36px;}

  .location-premium-grid{grid-template-columns:1fr;}
  .tab-panel{padding:28px 22px;}

  body{padding-bottom:74px;}
  .mobile-bar{display:flex;}
}

/* ---------- 900px ---------- */
@media (max-width:900px){
  .about-grid{grid-template-columns:1fr;gap:30px;}
  .about-grid img{height:320px;}
  .why-grid{grid-template-columns:1fr;}
  .price-grid{grid-template-columns:1fr;}
  .plan-grid{grid-template-columns:1fr;}
  .visit-grid{grid-template-columns:1fr;}
  .visit-grid img{min-height:220px;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px;}
}

/* ---------- 768px — tablet portrait ---------- */
@media (max-width:768px){
  .section{padding:64px 0;}
  .section.tight{padding:48px 0;}

  /* Amenities: 2-column compact grid, all cards keep the same aspect ratio */
  .amenity-grid{grid-template-columns:repeat(2,1fr);gap:14px;}

  .location-stats{grid-template-columns:1fr 1fr;}
  .tabs-premium{max-width:100%;overflow-x:auto;}
}

/* ---------- 480px — mobile ---------- */
@media (max-width:480px){
  .wrap{padding:0 18px;}
  .hero{padding-top:80px;padding-bottom:28px;}
  .hero h1{font-size:clamp(32px,10vw,42px);}
  .hero .sub{font-size:16.5px;}
  .hero-usp-line{font-size:12.5px;gap:8px;}
  .hero-price{padding:14px 18px;margin:18px 0 4px;}
  .hero-price-value{font-size:clamp(26px,8vw,32px);}
  .badge{font-size:11px;padding:7px 12px;}
  .hero-cta-row{flex-direction:column;}
  .hero-cta-row .btn{width:100%;}
  .hero .gv-form-card{padding:28px 24px 24px;}

  .usp-premium-row{grid-template-columns:1fr 1fr;}

  .price-card{padding:28px 24px;}
  .price-card h3{font-size:26px;}

  .modal{padding:30px 22px;max-width:none;width:100%;}
  .visit-grid .gv-form-card{padding:32px 24px;}

  .gallery-grid{grid-template-columns:1fr;grid-auto-rows:220px;}
  .gallery-item.tall{grid-row:span 1;}

  .location-stats{grid-template-columns:1fr;}

  .tabs-premium{gap:6px;}
  .tab-btn-premium{padding:10px 16px;font-size:12px;}

  .final-cta .row{flex-direction:column;}
  .final-cta .row .btn{width:100%;}

  .footer-top{flex-direction:column;}
  .footer-links{gap:16px 22px;}
}

/* ---------- 375px — small mobile ---------- */
@media (max-width:375px){
  .lead-quick{flex-direction:column;}
  .mobile-bar a,.mobile-bar button{font-size:10.5px;}
}

/* ---------- Legal pages responsive ---------- */
@media (max-width:768px){
  .legal-hero{padding:130px 0 44px;}
  .legal-body{padding:44px 0 60px;}
}
