/* ============================================================
   HAVANA CLUB BARBERSHOP — RESPONSIVE STYLESHEET
   ============================================================ */

/* ============================================================
   LARGE DESKTOP (1400px+)
   ============================================================ */
@media (min-width: 1400px) {
  .container { max-width: 1360px; }
  .hc-hero-title { font-size: 7.5rem; }
}

/* ============================================================
   TABLET LANDSCAPE (1024px - 1199px)
   ============================================================ */
@media (max-width: 1199px) {
  .main-nav a { padding: 0.5rem 0.5rem; font-size: 0.68rem; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .contact-grid { grid-template-columns: 1fr 1fr; }
}

/* ============================================================
   TABLET (768px - 1023px)
   ============================================================ */
@media (max-width: 1023px) {

  /* Nav */
  .main-nav { display: none; }
  .header-cta { display: none; }
  .hamburger { display: flex; }
  .social-sidebar { display: none; }

  /* About */
  .about-split {
    grid-template-columns: 1fr;
    gap: 3rem;
  }
  .about-image-wrap {
    max-width: 480px;
    margin: 0 auto;
  }

  /* Contact */
  .contact-grid { grid-template-columns: 1fr; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }

  /* Mini CTA */
  .mini-cta-inner { flex-direction: column; align-items: flex-start; }

  /* Package grid */
  .packages-grid { grid-template-columns: 1fr 1fr; }

  /* Reviews */
  .reviews-summary { flex-direction: column; text-align: center; }
  .reviews-divider { width: 80px; height: 1px; }
}

/* ============================================================
   MOBILE (max 767px)
   ============================================================ */
@media (max-width: 767px) {

  :root {
    --space-xl: 4rem;
    --space-lg: 2.5rem;
  }

  /* Hero */
  .hc-hero { height: 100svh; min-height: 600px; }
  .hc-hero-word:nth-child(1) { font-size: clamp(6rem, 35vw, 10rem); }
  .hc-hero-word:nth-child(2) { font-size: clamp(4rem, 25vw, 7rem); }
  .hc-hero-word:nth-child(3) { font-size: clamp(5rem, 28vw, 8rem); }
  .hc-hero-word:nth-child(4) { display: none; }
  .hc-hero-word:nth-child(5) { display: none; }
  .hc-hero-inner { padding: 0 1.25rem; }
  .hc-hero-actions { flex-direction: column; align-items: center; }
  .hc-btn-primary,
  .hc-btn-secondary { width: 100%; max-width: 280px; justify-content: center; }

  /* Trust bar */
  .trust-bar-inner { gap: 1.5rem; }
  .trust-item { min-width: 120px; }

  /* About */
  .about-image-frame { display: none; }

  /* Services */
  .services-grid { grid-template-columns: 1fr; }

  /* Packages */
  .packages-grid { grid-template-columns: 1fr; }

  /* Team */
  .team-grid { grid-template-columns: 1fr 1fr; gap: 0.75rem; }

  /* Gallery */
  .gallery-grid { grid-template-columns: 1fr 1fr; gap: 0.5rem; }
  .featured-gallery { aspect-ratio: 4/3; }
  .gallery-filters { gap: 0.35rem; }
  .gallery-filter-btn { padding: 0.4rem 0.9rem; font-size: 0.65rem; }

  /* Reviews */
  .reviews-grid { grid-template-columns: 1fr; }
  .reviews-score-num { font-size: 3rem; }

  /* Products */
  .products-grid { grid-template-columns: 1fr 1fr; gap: 0.75rem; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }

  /* Contact form */
  .contact-form { padding: 1.5rem; }

  /* Floating book */
  .floating-book { bottom: 1rem; right: 1rem; padding: 0.7rem 1.2rem; }

  /* Page header */
  .page-header { padding: 6rem 0 3rem; }

  /* CTA Strip */
  .cta-strip-buttons { flex-direction: column; align-items: center; }

  /* Lightbox */
  .lightbox-prev { left: 0.75rem; }
  .lightbox-next { right: 0.75rem; }
}

/* ============================================================
   VERY SMALL MOBILE (max 380px)
   ============================================================ */
@media (max-width: 380px) {
  .team-grid { grid-template-columns: 1fr; }
  .products-grid { grid-template-columns: 1fr; }
  .gallery-grid { grid-template-columns: 1fr; }
  .trust-bar-inner { gap: 1rem; }
}

/* ============================================================
   REDUCED MOTION
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .hc-hero-bg { animation: none; }
  .hc-hero-word { animation: none; }
  .hc-hero-eyebrow,
  .hc-hero-title,
  .hc-hero-text,
  .hc-hero-actions { opacity: 1; transform: none; }
}

/* ============================================================
   PRINT STYLES
   ============================================================ */
@media print {
  .site-header, .floating-book, .social-sidebar,
  .mobile-nav, .lightbox { display: none !important; }
  body { background: white; color: black; }
  .hc-hero { height: auto; padding: 2rem 0; }
}
