/* Global responsive refinements */
@media (max-width: 720px) {
  .section { padding-block: clamp(3rem, 12vw, 5rem); }
  .hero__cta .btn, .cta-band .btn { flex: 1 1 100%; }
  .panels .panel { min-height: 52vh; }
  .grid-2, .grid-3, .grid-4 { gap: 1.25rem; }
  .h-lg, .sec-head h2 { letter-spacing: 0; }
}
@media (max-width: 420px) {
  .brand__name { font-size: 1.15rem; }
  .brand img { width: 40px; height: 40px; }
}

/* Utility for reduced motion */
@media (prefers-reduced-motion: reduce) {
  .kenburns, .marquee__track, .loader__mark::after, .scroll-cue i::after { animation: none !important; }
  [data-reveal] { opacity: 1 !important; transform: none !important; }
  .img-reveal::after { display: none; }
  .line-mask > span { transform: none !important; }
}
