@media(max-width:1200px) {
  .about, .location, .hours, .products { padding:100px 60px; gap:60px; }
  .services, .gallery, .why, .testimonials, .instagram, .cta-section,
  .staff, .pricing, .portfolio, .events, .loyalty, .contact-section,
  .services-pricing, .products-pricing, .policy-section,
  .services-overview { padding:100px 60px; }
  footer { padding:70px 60px 36px; }
  nav { padding:0 40px; }
  .services-grid { grid-template-columns:repeat(3,1fr); }
  .products-grid { grid-template-columns:repeat(3,1fr); }
  .staff-grid { grid-template-columns:repeat(2,1fr); }
  .portfolio-grid { grid-template-columns:repeat(3,1fr); }
}
@media(max-width:1024px) {
  .about, .location, .hours, .products { grid-template-columns:1fr; }
  .services-grid { grid-template-columns:repeat(2,1fr); }
  .products-grid { grid-template-columns:repeat(2,1fr); }
  .why-grid { grid-template-columns:repeat(2,1fr); }
  .services-overview-grid { grid-template-columns:repeat(2,1fr) !important; }
  .footer-top { grid-template-columns:1fr 1fr; gap:40px; }
  .gallery-masonry { columns:3; }
  .instagram-grid { grid-template-columns:repeat(3,1fr); }
  .testimonials-track .testimonial-card { flex:0 0 calc(50% - 12px); }
  .staff-grid { grid-template-columns:repeat(2,1fr); }
  .portfolio-grid { grid-template-columns:repeat(2,1fr); }
  .events-grid { grid-template-columns:1fr; }
  .loyalty-inner { grid-template-columns:1fr; gap:40px; }
  .loyalty-tiers { grid-template-columns:repeat(3,1fr); }
}
@media(max-width:768px) {
  nav:not(.bottom-nav) { padding: 0 24px; height: 72px; background: transparent !important; backdrop-filter: none !important; }
  .nav-cta { display: none; }
  .about, .location, .hours, .products { padding:80px 24px; gap:40px; }
  .services, .gallery, .why, .testimonials, .instagram, .cta-section,
  .staff, .pricing, .portfolio, .events, .loyalty, .contact-section,
  .services-pricing, .products-pricing, .policy-section,
  .services-overview { padding:80px 24px; }
  footer { padding:60px 24px 30px; }
  .services-grid { grid-template-columns:1fr; }
  .products-grid { grid-template-columns:1fr; }
  .why-grid { grid-template-columns:1fr; }
  .services-overview-grid { grid-template-columns:1fr !important; }
  .gallery-masonry { columns:2; }
  .instagram-grid { grid-template-columns:repeat(2,1fr); }
  .testimonials-track .testimonial-card { flex:0 0 100%; }
  .footer-top { grid-template-columns:1fr; gap:36px; }
  .staff-grid { grid-template-columns:1fr; }
  .portfolio-grid { grid-template-columns:1fr; }
  .portfolio-item.wide { grid-column:span 1; }
  .portfolio-item.tall { grid-row:span 1; }
  .events-grid { grid-template-columns:1fr; }
  .events { padding-bottom:120px; }
  .loyalty-inner { grid-template-columns:1fr; gap:32px; }
  .loyalty-tiers { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; gap:8px; text-align:center; }
  .bm-panel { padding:36px 24px; }
  .bm-row { grid-template-columns:1fr; }
  .bm-service-grid { grid-template-columns:1fr; }
  .bm-times { grid-template-columns:repeat(3,1fr); }
  body { cursor:auto; padding-bottom:96px; }
  #cursor { display:none; }
  .bottom-nav.visible { display: flex; }
  .book-float { bottom: 80px; right: 16px; }
  .book-float-btn { width: 50px; height: 50px; font-size: 20px; }
  .book-float-btn::before { display: none; }
  .event-popup { width: 90vw; }
  .event-popup-body { padding: 24px; }
  .event-popup-actions { flex-direction: column; }
  .nav-overlay-inner { padding: 90px 24px 40px; }
  .nav-overlay-links a { font-size: clamp(26px, 7vw, 40px); padding: 16px 0; }
}
@media(max-width:640px) {
  .pricing-tabs { gap: 6px; margin-bottom: 32px; }
  .pt-btn { padding: 10px 16px; font-size: 9px; letter-spacing: 1.5px; }
  .pricing-row { padding: 16px 14px; }
  .pricing-row-left { gap: 12px; }
  .pricing-row-meta { gap: 12px; }
  .pricing-row-name { font-size: 14px; }
  .pricing-row-price { font-size: 19px; min-width: 58px; }
  .pcf-filters { gap: 8px; margin-bottom: 40px; }
  .ppt-btn { padding: 11px 16px; font-size: 9px; letter-spacing: 1.5px; }
  .pricing-actions .btn-primary { width: 100%; }
  .pricing-total { padding: 20px 16px; }
  .pricing-total-val { font-size: 30px; }
  .pricing-header { margin-bottom: 48px; }
  .policy-grid { gap: 16px; }
}
