/* =========================================================================
   VET CARNIVAL — Responsive Overrides
   ========================================================================= */

/* ---- Large tablets / small laptops ---- */
@media (max-width: 1200px){
  .cat-grid{grid-template-columns:repeat(3,1fr)}
  .product-grid{grid-template-columns:repeat(3,1fr)}
  .why-grid{grid-template-columns:repeat(3,1fr)}
  .care-grid{grid-template-columns:repeat(2,1fr)}
}

/* ---- Tablets ---- */
@media (max-width: 1024px){
  .nav-desktop,.header-cta .btn:not(.hamburger){display:none}
  .hamburger{display:grid;place-items:center}
  .brand img{height:48px}
  .brand-text{font-size:1rem}
  .hero-grid{grid-template-columns:1fr;gap:40px}
  .hero-visual{max-width:520px;margin:0 auto}
  .float-badge.b1{left:2%}.float-badge.b2{right:2%}.float-badge.b3{right:-2%}
  .about-split{grid-template-columns:1fr;gap:40px}
  .about-visual{max-width:520px;margin:0 auto}
  .brochure-cta{grid-template-columns:1fr;text-align:center}
  .brochure-cta p{margin-left:auto;margin-right:auto}
  .cat-grid{grid-template-columns:repeat(2,1fr)}
  .product-grid{grid-template-columns:repeat(2,1fr)}
  .animal-grid{grid-template-columns:repeat(3,1fr)}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .solution-grid{grid-template-columns:repeat(2,1fr)}
  .contact-cards{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:repeat(2,1fr);gap:32px}
  .pd-hero{grid-template-columns:1fr;gap:24px}
  .pd-image{max-width:520px;margin:0 auto;width:100%}
  .products-hero-deco{display:none}
  .catalog-search{max-width:100%}
}

/* ---- Mobile ---- */
@media (max-width: 640px){
  .container{padding:0 18px}
  .section{padding:56px 0}
  .brand img{height:42px}
  .brand-text{font-size:.95rem}
  .brand-text small{font-size:.55rem;letter-spacing:.18em}
  .announce-bar{font-size:.72rem;gap:12px;padding:8px 12px}
  .announce-bar .sep{display:none}
  .cat-grid,.product-grid,.why-grid,.solution-grid,.contact-cards,.care-grid{grid-template-columns:1fr}
  .animal-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr;gap:32px}
  .footer-bottom{flex-direction:column;text-align:center;gap:12px}
  .hero-copy p.lead{font-size:1rem}
  .hero-ctas{flex-direction:column;align-items:stretch}
  .hero-ctas .btn{justify-content:center}
  .trust-points{grid-template-columns:1fr}
  .float-badge{display:none}
  .form-row{grid-template-columns:1fr}
  .contact-form{padding:22px}
  .brochure-cta{padding:32px 22px}
  .whatsapp-fab{width:54px;height:54px;bottom:calc(20px + env(safe-area-inset-bottom));right:16px}
  .whatsapp-fab svg{width:26px;height:26px}
  .whatsapp-fab::after{display:none}
  .scroll-top{bottom:calc(84px + env(safe-area-inset-bottom));right:18px}
  .pd-tabs .pd-tab-strip{display:none}
  .pd-tab-content{display:none}
  .pd-accordion{display:block}
  .pd-meta{grid-template-columns:1fr}
  .testi-card{padding:22px}
  .cat-card{padding:22px 20px}
  .care-card .thumb{aspect-ratio:16/9}

  /* Product cards mobile polish */
  .product-grid{gap:16px}
  .product-card{border-radius:var(--radius)}
  .product-image{aspect-ratio:1/1;padding:12px}
  .product-body{padding:14px 16px}
  .product-foot{padding:12px 16px}
  .product-foot .btn{font-size:.8rem;padding:10px 14px}

  /* Catalog chips scroll on mobile */
  .catalog-chips{
    flex-wrap:nowrap;overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;padding-bottom:4px;
  }
  .catalog-chips::-webkit-scrollbar{display:none}
  .chip{flex-shrink:0;font-size:.8rem;padding:7px 14px}

  /* PD enquiry CTA */
  .pd-enquiry-cta{padding:24px 18px}
  .pd-enquiry-btns{flex-direction:column;align-items:stretch}
  .pd-enquiry-btns .btn{justify-content:center}
}

/* ---- Show accordion only on mobile ---- */
.pd-accordion{display:none}
@media (max-width:640px){
  .pd-accordion{display:block}
  .pd-tabs > .pd-tab-content{display:none !important}
  .pd-tab-strip{display:none}
}

/* ---- Small phones ---- */
@media (max-width: 380px){
  .brand-text{display:none}
  h1{font-size:1.8rem}
  .btn{padding:12px 20px;font-size:.88rem}
  .section-head{margin-bottom:32px}
}

/* ---- Two-column product grid for medium mobile ---- */
@media (min-width: 430px) and (max-width: 640px){
  .product-grid{grid-template-columns:repeat(2,1fr)}
}
