/* The product landing page has its own stylesheet and responsive components. */
@media (max-width: 1100px) {
  .module-detail { grid-template-columns: minmax(0, 1fr); }
  .module-gallery { grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)); }
  .module-gallery figure { min-width: 0; }
}
@media (max-width: 680px) {
  html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
  .container { width: calc(100% - 32px); }
  .hero { padding-block: 32px; }
  .hero h1 { font-size: clamp(30px, 8.2vw, 38px); line-height: 1.35; }
  .hero-lead { font-size: 15px; line-height: 1.85; }
  .hero-actions { gap: 12px; }
  .hero-actions .button { min-height: 48px; font-size: 15px; }
  .section { padding-block: 40px; }
  .section-head h2 { font-size: 26px; line-height: 1.5; }
  .section-head p, .feature-copy p, .module-card p, .module-detail-copy p { font-size: 15px; line-height: 1.85; }
  .module-card h3 { font-size: 20px; line-height: 1.5; }
  .module-gallery { grid-template-columns: minmax(0, 1fr); }
  .module-detail { padding-inline: 14px; }
  .faq summary { min-height: 48px; font-size: 16px; line-height: 1.6; }
  .faq details p { font-size: 14px; line-height: 1.85; }
}
