/* Mobile overrides for inline-styled v4 landing components.
   Targets the most common large multi-col grids, big paddings, and big type.
   Loaded from each public index.html. Cabinet pages skip this. */

@media (max-width: 720px) {
  /* Body/wrap can grow to viewport */
  .landing-wrap, .page-wrap { box-shadow: none; }

  /* Multi-col macro grids → single column */
  [style*="grid-template-columns: repeat(3, 1fr)"],
  [style*="grid-template-columns: repeat(4, 1fr)"],
  [style*="grid-template-columns: 1fr 1.1fr"],
  [style*="grid-template-columns: 1fr 1.3fr 1fr"],
  [style*="grid-template-columns: 0.9fr 1.1fr"],
  [style*="grid-template-columns: 0.85fr 1fr"],
  [style*="grid-template-columns: 0.8fr 1.2fr"],
  [style*="grid-template-columns: 1.5fr 1fr"],
  [style*="grid-template-columns: 1.15fr 1fr"],
  [style*="grid-template-columns: 1fr 1fr"],
  [style*="grid-template-columns: 220px 1fr"],
  [style*="grid-template-columns: 240px 1fr"] {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  /* Side-paddings on section containers */
  [style*="padding: 88px 56px"],
  [style*="padding: 92px 56px"],
  [style*="padding: 76px 56px"],
  [style*="padding: 80px 56px"],
  [style*="padding: 72px 56px"],
  [style*="padding: 64px 56px"],
  [style*="padding: 56px 56px"],
  [style*="padding: 48px 56px"],
  [style*="padding: 44px 56px"],
  [style*="padding: 64px 56px 32px"],
  [style*="padding: 76px 56px 92px"],
  [style*="padding: 64px 56px 80px"],
  [style*="padding: 48px 56px 64px"],
  [style*="padding: 64px 56px 48px"],
  [style*="padding: 80px 56px 96px"],
  [style*="padding: 84px 56px"],
  [style*="padding: 92px 56px 96px"] {
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-top: 40px !important;
    padding-bottom: 48px !important;
  }

  /* Nav/header use less side padding */
  [style*="padding: 14px 56px"] {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Big display type → readable on phone */
  h1[style*="font-size: 60px"],
  h1[style*="font-size: 56px"]            { font-size: 34px !important; line-height: 1.06 !important; }
  h2[style*="font-size: 40px"]            { font-size: 26px !important; line-height: 1.14 !important; }
  h2[style*="font-size: 32px"]            { font-size: 22px !important; }
  h3[style*="font-size: 22px"],
  h3[style*="font-size: 21px"]            { font-size: 18px !important; }
  [style*="font-size: 21px"]              { font-size: 17px !important; }

  /* Hero text deck */
  p[style*="font-size: 17px"]             { font-size: 15.5px !important; }

  /* Drop sticky right-side landing nav on phone */
  [data-lv-stickynav] { display: none !important; }

  /* Article TOC sidebar (sample article / privacy / terms) collapses */
  aside[style*="position: sticky"] { position: static !important; max-height: none !important; }
}
