@media (max-width: 1100px) {
  .sv-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sv-catalog-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sv-hero { min-height: 40rem; }
  .sv-quality, .sv-product-detail { gap: 2rem; }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .sv-header__inner { flex-wrap: wrap; gap: 1rem; padding-block: 1rem; }
  .sv-navigation { order: 3; flex-basis: 100%; }
  .sv-navigation__panel { justify-content: center; }
  .sv-navigation__links { flex-wrap: wrap; justify-content: center; }
}

@media (max-width: 900px) {
  .sv-hero { display: flex; flex-direction: column; min-height: 0; }
  .sv-hero__inner { order: 1; padding-block: 3rem 1.5rem; }
  .sv-hero__photo { position: static; order: 2; height: 25rem; object-fit: cover; object-position: right center; }
  .sv-hero__copy { width: 100%; }
  .sv-hero h1 { font-size: clamp(2.8rem, 7.5vw, 4.7rem); }
  .sv-hero__description { max-width: 37rem; }
  .sv-family-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sv-process__steps { gap: 1.5rem; }
}

@media (max-width: 767px) {
  .sv-shell {
    width: min(100% - 2rem, var(--sv-content));
  }

  .sv-header__inner {
    min-height: 4.5rem;
    flex-wrap: wrap;
    gap: .75rem;
  }

  .sv-brand__name {
    font-size: .93rem;
    letter-spacing: .18em;
  }

  .sv-brand__descriptor {
    font-size: .56rem;
    letter-spacing: .16em;
  }

  .sv-navigation {
    position: static;
    flex: 0;
    gap: .6rem;
  }

  .sv-mobile-toggle {
    display: inline-flex;
    align-items: center;
  }

  .sv-navigation__panel {
    position: fixed;
    z-index: 30;
    inset: 7.5rem 0 0;
    display: grid;
    align-content: start;
    gap: 1.75rem;
    overflow-y: auto;
    padding: 1.5rem max(1rem, calc((100vw - var(--sv-content)) / 2));
    border-top: 1px solid var(--sv-border);
    background: var(--sv-surface);
    box-shadow: var(--sv-shadow);
  }

  .sv-navigation__panel[hidden] {
    display: none;
  }

  .sv-navigation__links {
    display: grid;
    gap: 0;
    border-top: 1px solid var(--sv-border);
  }

  .sv-navigation__links li {
    border-bottom: 1px solid var(--sv-border);
  }

  .sv-navigation__links a {
    display: block;
    padding: 1rem 0;
    font-size: 1.05rem;
  }

  .sv-header__actions {
    display: grid;
    flex-basis: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
  }

  .sv-whatsapp-action,
  .sv-inquiry-action {
    width: 100%;
    min-width: 0;
    padding-inline: .5rem;
    font-size: .72rem;
    white-space: nowrap;
  }

  .sv-footer__inner,
  .sv-footer__links {
    align-items: flex-start;
  }

  .sv-footer__inner {
    flex-direction: column;
    justify-content: center;
    gap: 1.25rem;
    padding-block: 1.5rem;
  }

  .sv-footer__links {
    flex-wrap: wrap;
  }

  .sv-section { padding-block: 3rem; }
  .sv-section-heading { flex-direction: column; align-items: start; gap: 1rem; }
  .sv-hero .sv-eyebrow { margin-bottom: 1.25rem; font-size: .6rem; }
  .sv-hero__description { margin-block: 1.5rem; }
  .sv-hero .sv-whatsapp-action { width: auto; white-space: normal; }
  .sv-hero__photo { height: 21rem; }
  .sv-trust-signals { gap: .75rem 1rem; }
  .sv-quality, .sv-product-detail, .sv-product-information, .sv-document-grid { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .sv-product-detail__visual { max-width: 30rem; width: 100%; margin-inline: auto; }
  .sv-process__steps { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .sv-quality img { max-height: 22rem; }
  .sv-product-inquiry .sv-whatsapp-action { width: auto; padding: .8rem 1.2rem; font-size: .9rem; }
}

@media (max-width: 540px) {
  .sv-product-grid, .sv-family-grid, .sv-catalog-controls { grid-template-columns: minmax(0, 1fr); }
  .sv-hero h1 { font-size: clamp(2.45rem, 10vw, 3.3rem); }
  .sv-hero .sv-actions > a { width: 100%; }
  .sv-hero__photo { height: 18rem; }
  .sv-hero__photo { object-position: 74% center; }
  .sv-catalog-controls { padding: 1rem; }
  .sv-product-card__image { max-height: 23rem; }
  .sv-document { padding: 1.25rem; }
}
