/* ============================================================
   VISHAKA MK — RESPONSIVE STYLES
   Mobile-first overrides and breakpoint management
   ============================================================ */

/* ── 1440px — Wide desktop ─────────────────────────────────── */
@media (max-width: 1440px) {
  .hero__grid {
    gap: var(--space-7);
  }
}

/* ── 1200px — Standard desktop ─────────────────────────────── */
@media (max-width: 1200px) {
  .product-grid--4 {
    grid-template-columns: repeat(3, 1fr);
  }

  .footer__grid {
    grid-template-columns: 2fr 1fr 1fr;
    row-gap: var(--space-7);
  }

  .footer__brand {
    grid-column: 1 / -1;
    max-width: 480px;
  }
}

/* ── 992px — Tablet landscape ─────────────────────────────── */
@media (max-width: 992px) {
  /* Navigation — hide links, show hamburger */
  .nav__links {
    display: none;
  }

  .nav__menu-btn {
    display: flex;
  }

  .btn--nav {
    display: none;
  }

  /* Hero */
  .hero__grid {
    grid-template-columns: 1fr;
    text-align: center;
    padding-top: calc(var(--space-9) + var(--nav-height));
    padding-bottom: var(--space-9);
    gap: var(--space-8);
  }

  .hero__text {
    align-items: center;
    order: 2;
  }

  .hero__tagline {
    text-align: center;
  }

  .hero__ctas {
    justify-content: center;
  }

  .hero__image {
    order: 1;
    justify-content: center;
  }

  .hero__portrait-wrap {
    max-width: 380px;
    aspect-ratio: 4/5;
  }

  .hero__portrait-frame {
    inset: -0.75rem 0.75rem 0.75rem -0.75rem;
  }

  /* Grids */
  .service-grid {
    grid-template-columns: 1fr;
    gap: var(--space-4);
  }

  .product-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .product-grid--4 {
    grid-template-columns: repeat(2, 1fr);
  }

  .article-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Split section */
  .split-section {
    grid-template-columns: 1fr;
    gap: var(--space-7);
  }

  .split-section--reverse .split-image {
    order: -1;
  }

  .split-image__accent {
    display: none;
  }

  .split-image__frame {
    aspect-ratio: 4/3;
  }

  /* GPS Path */
  .gps-path {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-6);
  }

  .gps-path::before {
    display: none;
  }

  .gps-path__step {
    flex-direction: row;
    text-align: left;
    align-items: flex-start;
    gap: var(--space-4);
  }

  .gps-path__step-icon {
    margin-bottom: 0;
    flex-shrink: 0;
  }

  /* Program cards */
  .program-card {
    grid-template-columns: minmax(0, 1fr);
  }

  .program-card__image,
  .program-card__body {
    min-width: 0;
  }

  .program-card--reverse {
    direction: ltr;
  }

  /* Values grid */
  .values-grid {
    grid-template-columns: 1fr;
  }

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

  /* Footer */
  .footer__grid {
    grid-template-columns: 1fr 1fr;
  }

  .footer__brand {
    grid-column: 1 / -1;
  }

  /* Product page */
  .product-layout {
    grid-template-columns: 1fr !important;
  }

  .product-sticky {
    position: static;
    top: unset;
  }
}

/* ── 768px — Tablet portrait ───────────────────────────────── */
@media (max-width: 768px) {
  /* Typography scale down */
  :root {
    --section-py: clamp(3rem, 6vw, 5rem);
    --section-py-lg: clamp(4rem, 8vw, 7rem);
  }

  /* Trust strip */
  .trust-strip__item {
    font-size: var(--text-base);
  }

  /* Philosophy */
  .philosophy__quote {
    text-align: left;
  }

  .philosophy__body {
    text-align: left;
    margin-inline: 0;
  }

  /* Final CTA */
  .final-cta__title {
    text-align: left;
  }

  .final-cta__subtitle {
    text-align: left;
  }

  .final-cta__ctas {
    justify-content: flex-start;
  }

  /* Products */
  .product-grid {
    grid-template-columns: 1fr;
  }

  .product-grid--4 {
    grid-template-columns: repeat(2, 1fr);
  }

  /* Articles */
  .article-grid {
    grid-template-columns: 1fr;
  }

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

  /* Footer */
  .footer__grid {
    grid-template-columns: 1fr;
  }

  .footer__newsletter-form {
    flex-direction: column;
  }

  .footer__newsletter-input {
    border-right: 1px solid rgba(255,255,255,0.12);
  }

  .footer__newsletter-btn {
    align-self: flex-start;
  }

  /* Cart drawer */
  .cart-drawer {
    width: 100vw;
  }

  /* Pain grid */
  .pain-grid {
    grid-template-columns: 1fr;
  }

  /* Testimonial grid → single column */
  .testimonial-grid {
    grid-template-columns: 1fr !important;
  }

  /* Trust items hide dots on small screens */
  .trust-strip__dot {
    display: none;
  }

  .trust-strip__inner {
    gap: var(--space-4);
  }

  /* Page hero */
  .page-hero__title {
    max-width: 100%;
  }

  /* Section header */
  .section-header {
    margin-bottom: var(--space-7);
  }
}

/* ── 600px — Small mobile ──────────────────────────────────── */
@media (max-width: 600px) {
  .info-strip-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ── 480px — Mobile ────────────────────────────────────────── */
@media (max-width: 480px) {
  :root {
    --nav-height: 64px;
  }

  /* Hero title: centered */
  .hero__title {
    text-align: center !important;
  }

  /* Hero ctas stack */
  .hero__ctas {
    flex-direction: column;
    align-items: center;
  }

  .hero__ctas .btn {
    width: 100%;
    justify-content: center;
  }

  /* Product grid */
  .product-grid--4 {
    grid-template-columns: 1fr;
  }

  /* Final CTA buttons stack */
  .final-cta__ctas {
    flex-direction: column;
    width: 100%;
  }

  .final-cta__ctas .btn {
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  /* Cart item */
  .cart-item {
    grid-template-columns: 64px 1fr;
  }

  .cart-item__image {
    width: 64px;
    height: 64px;
  }

  /* Notification */
  .notification {
    left: var(--space-4);
    right: var(--space-4);
    bottom: var(--space-4);
    max-width: none;
  }

  /* Product gallery thumbs */
  .product-gallery__thumbs {
    grid-template-columns: repeat(4, 1fr);
  }

  /* Nav brand */
  .nav__brand-name {
    font-size: var(--text-lg);
  }

  /* Accordion trigger text */
  .accordion-trigger__text {
    font-size: var(--text-lg);
  }

  /* Breadcrumb */
  .breadcrumb {
    flex-wrap: wrap;
  }

  /* Filter bar scroll */
  .filter-bar {
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: var(--space-2);
    scrollbar-width: none;
  }

  .filter-bar::-webkit-scrollbar {
    display: none;
  }

  /* Footer nav cols */
  .footer__bottom {
    flex-direction: column;
  }
}

/* ── Hover: only apply hover-only effects on non-touch ─────── */
@media (hover: none) {
  .product-card:hover,
  .service-card:hover,
  .article-card:hover,
  .pain-card:hover {
    transform: none;
    box-shadow: none;
  }

  .service-card:hover::before {
    transform: scaleX(0);
  }

  .split-image:hover .split-image__frame img,
  .product-card:hover .product-card__image img,
  .article-card:hover .article-card__image img,
  .program-card:hover .program-card__image img {
    transform: none;
  }
}
