/* Revolution InfoSec — responsive overrides (mobile & tablet)
   Attribute selectors match the runtime's serialised inline styles (spaces after colons/commas). */
@media (max-width: 860px) {
  img { max-width: 100%; height: auto; }
  /* Collapse multi-column grids to a single column (carousel excluded) */
  [style*="grid-template-columns"]:not([style*="64px 1fr 64px"]):not([style*="repeat(4, 1fr)"]) { grid-template-columns: 1fr !important; }
  /* 4-up stat/pillar rows read better as 2x2 */
  [style*="repeat(4, 1fr)"] { grid-template-columns: 1fr 1fr !important; }
  /* Containers: tighter side padding */
  [style*="max-width: 1280px"], [style*="max-width: 1080px"], [style*="max-width: 960px"], [style*="max-width: 840px"] {
    padding-left: 20px !important; padding-right: 20px !important;
  }
  /* Type scale */
  h1 { font-size: 34px !important; line-height: 1.15 !important; }
  h2 { font-size: 25px !important; }
  /* Let flex rows (buttons, chips, footer) wrap */
  [style*="display: flex"] { flex-wrap: wrap; }
  [style*="white-space: nowrap"] { white-space: normal !important; }
  /* Testimonial carousel: slimmer arrow gutters */
  [style*="64px 1fr 64px"] { grid-template-columns: 40px 1fr 40px !important; gap: 10px !important; }
  /* Section padding */
  [style*="padding: 104px 32px"] { padding-top: 56px !important; }
  [style*="padding: 88px 32px"], [style*="padding: 80px 32px"], [style*="padding: 72px 32px"] { padding-top: 48px !important; padding-bottom: 48px !important; }
}
