/* ============================================
   AllCareMedicines - Responsive Stylesheet
   ============================================ */

/* ---- Large Desktop ---- */
@media (max-width: 1400px) {
  .container { max-width: 1200px; }
  .mega-menu { width: 800px; }
}

/* ---- Desktop ---- */
@media (max-width: 1280px) {
  .container { max-width: 1100px; }
  .footer-top { grid-template-columns: 1.8fr 1fr 1fr 1fr 1.3fr; gap: 30px; }
  .mega-menu { width: 700px; grid-template-columns: repeat(3, 1fr); }
  .hero-product-img { width: 230px; height: 230px; }
}

/* ---- Laptop ---- */
@media (max-width: 1100px) {
  .footer-top { grid-template-columns: 1fr 1fr 1fr; }
  .footer-col:nth-child(4), .footer-col:nth-child(5) { grid-column: span 1; }
  .products-grid { grid-template-columns: repeat(3, 1fr); }
  .blogs-grid { grid-template-columns: repeat(2, 1fr); }
  .about-preview-inner { gap: 40px; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }
  .team-grid { grid-template-columns: repeat(3, 1fr); }
  .products-list-grid { grid-template-columns: repeat(2, 1fr); }
  .hero-slide-right { right: 30px; }
  .hero-product-img { width: 200px; height: 200px; }
  .hero-stats { gap: 16px; }
  .nav-link { padding: 16px 12px; }
  .mega-menu { left: 0; transform: translateX(0) translateY(10px); width: 680px; }
  .mega-menu.active { transform: translateX(0) translateY(0); }
}

/* ---- Tablet ---- */
@media (max-width: 900px) {
  :root { --header-height: 70px; }

  /* Header */
  .header-topbar .topbar-left { display: none; }
  .header-phone { display: none; }
  .header-main-inner { gap: 14px; }
  .header-nav { display: none; }
  .mobile-toggle { display: flex; }
  .header-action-btn span { display: none; }

  /* Page hero */
  .page-hero { margin-top: calc(var(--header-height) + 44px); padding: 44px 0; }
  .hero-section { margin-top: calc(var(--header-height) + 44px); }

  /* Hero */
  .hero-slide { height: 420px; }
  .hero-slide-content { padding: 0 30px; max-width: 460px; }
  .hero-slide-right { display: none; }
  .hero-stats { gap: 12px; left: 30px; right: 30px; }
  .hero-stat { padding: 10px 14px; }

  /* Trust bar */
  .trust-items { flex-wrap: wrap; gap: 12px; justify-content: center; }
  .trust-divider { display: none; }

  /* Grids */
  .products-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .blogs-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .content-section-inner { grid-template-columns: 1fr; gap: 30px; }
  .about-preview-inner { grid-template-columns: 1fr; gap: 36px; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .products-page-layout { grid-template-columns: 1fr; }
  .sidebar { position: static; display: none; }
  .sidebar.mobile-open { display: block; }
  .products-list-grid { grid-template-columns: repeat(2, 1fr); }
  .product-detail-layout { grid-template-columns: 1fr; }
  .product-gallery { position: static; }
  .blog-detail-layout { grid-template-columns: 1fr; }
  .contact-layout { grid-template-columns: 1fr; }
  .checkout-layout { grid-template-columns: 1fr; }
  .cart-page-layout { grid-template-columns: 1fr; }
  .order-summary { position: static; }
  .policy-layout { grid-template-columns: 1fr; }
  .policy-nav { display: none; }
  .faq-layout { grid-template-columns: 1fr; }

  /* Footer */
  .footer-top { grid-template-columns: 1fr 1fr; gap: 30px; }
  .footer-bottom { flex-direction: column; gap: 10px; text-align: center; }

  /* Newsletter */
  .newsletter-inner { flex-direction: column; text-align: center; }
  .newsletter-form { min-width: unset; width: 100%; max-width: 460px; }

  /* Cart table */
  .cart-table-header { display: none; }
  .cart-table-row { grid-template-columns: 1fr auto; grid-template-rows: auto auto; gap: 10px; }
  .cart-product { grid-column: span 2; }
  .cart-price::before { content: 'Price: '; font-weight: 400; color: var(--text-muted); }
  .cart-subtotal::before { content: 'Total: '; font-weight: 400; color: var(--text-muted); }

  /* Mini cart */
  .mini-cart-panel { width: 100%; right: -100%; }
}

/* ---- Mobile Large ---- */
@media (max-width: 640px) {
  .section { padding: 56px 0; }
  .section-sm { padding: 44px 0; }
  .container { padding: 0 16px; }

  /* Hero */
  .hero-slide { height: 360px; }
  .hero-slide-content { padding: 0 20px; }
  .hero-slide-content h1 { font-size: 1.6rem; }
  .hero-slide-content p { font-size: 0.85rem; }
  .hero-slide-btns { gap: 8px; }
  .hero-stats { display: none; }
  .hero-badge { font-size: 0.72rem; }

  /* Header */
  .header-search { display: none; }
  .search-toggle { display: flex !important; }
  .header-mobile-search { position: absolute; top: 100%; left: 0; right: 0; padding: 12px 16px; background: #fff; border-top: 1px solid var(--border); display: none; box-shadow: var(--shadow); }
  .header-mobile-search.open { display: block; }
  .header-main { padding: 10px 0; }
  .logo-text span { display: none; }
  .logo-text strong { font-size: 1.1rem; }

  /* Products grid */
  .products-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .product-card-body { padding: 12px 14px 16px; }
  .product-name { font-size: 0.82rem; }
  .price-current { font-size: 0.95rem; }
  .add-to-cart-btn { font-size: 0.73rem; padding: 6px 10px; }
  .add-to-cart-btn span { display: none; }

  /* Blogs */
  .blogs-grid { grid-template-columns: 1fr; }

  /* About preview */
  .about-img-float { display: none; }
  .about-img-badge { position: static; display: inline-flex; gap: 10px; align-items: center; border-radius: 50px; padding: 10px 18px; margin-bottom: 16px; }

  /* Section header */
  .section-header { flex-direction: column; align-items: flex-start; gap: 10px; }

  /* Footer */
  .footer-top { grid-template-columns: 1fr; }
  .footer-col:not(.footer-about) { margin-top: 0; }
  .newsletter-form { flex-direction: column; }

  /* Stats */
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  .stat-number { font-size: 2rem; }

  /* Timeline */
  .timeline::before { left: 22px; }
  .timeline-item { grid-template-columns: 44px 1fr; }
  .timeline-item:nth-child(even) .timeline-content:first-child { display: none; }
  .timeline-content:last-child { grid-column: auto !important; }

  /* Team */
  .team-grid { grid-template-columns: repeat(2, 1fr); }

  /* Product detail */
  .product-cta-row { flex-direction: column; }
  .product-cta-row .btn { width: 100%; }

  /* Checkout */
  .form-row { grid-template-columns: 1fr; }

  /* Page hero */
  .page-hero h1 { font-size: 1.7rem; }

  /* FAQ */
  .accordion-header { padding: 14px 16px; }
  .accordion-header h4 { font-size: 0.85rem; }
  .accordion-body { padding: 14px 16px; }

  /* Floating btns */
  .floating-btns { bottom: 20px; right: 16px; }
  .floating-btn { width: 46px; height: 46px; font-size: 1rem; }

  /* Cookie */
  .cookie-bar { flex-direction: column; text-align: center; }

  /* Popup */
  .popup-form { flex-direction: column; }

  /* Policy */
  .policy-content h2 { font-size: 1.2rem; }
}

/* ---- Mobile Small ---- */
@media (max-width: 420px) {
  .products-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .hero-slide { height: 300px; }
  .hero-slide-content h1 { font-size: 1.35rem; }
  .hero-slide-btns .btn:last-child { display: none; }
  .header-actions { gap: 2px; }
  .header-action-btn { padding: 5px 7px; }
  .stat-number { font-size: 1.7rem; }
  .blog-detail-layout { padding: 30px 0; }
  .product-tabs { overflow-x: auto; }
  .product-tab-btn { white-space: nowrap; font-size: 0.82rem; padding: 10px 14px; }
}

/* ---- Print ---- */
@media print {
  .site-header, .site-footer, .floating-btns, .mini-cart-panel, .cookie-bar, .popup-overlay { display: none !important; }
  .page-hero { margin-top: 0; }
  body { font-size: 12px; }
}
