/* Global body reset (foundation lacked it; browser default 8px margin) */
body { margin: 0; }

/* Mobile stacking fixes 2026-07-18: collapse multi-column card grids to one per row on phones.
   Targets only the specific column patterns used by testimonial/stat/step/economics sections. */
@media (max-width: 760px) {
  [style*="grid-template-columns:1fr 1fr"],
  [style*="grid-template-columns:repeat(3,1fr)"] {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Guard: no horizontal page scroll on phones (was pushing the hamburger off-screen) */
@media (max-width: 760px) {
  html, body { overflow-x: hidden; }
  img, video, iframe { max-width: 100%; }
}

/* Opt-in first on phones: form column above the deliverables list (free-bundle, free-reach-guide) */
@media (max-width: 760px) {
  .lh-optin-grid > :first-child { order: 2; }
  .lh-optin-grid > :last-child { order: 1; }
}

/* grs-training: VSL section is viewport-centered (flex) which leaves a large gap above the video on phones */
@media (max-width: 760px) {
  [style*="flex:1 1 auto;display:flex;align-items:center;padding:40px 0 64px"] {
    align-items: flex-start !important;
    padding-top: 16px !important;
  }
}

/* Case-study WHO/RESULTS card: when the 2-col card stacks, drop the column divider and tighten the seam */
@media (max-width: 760px) {
  .lh-2col[style*="gap:0"] > div:first-child {
    border-right: none !important;
    border-bottom: 1px solid var(--lh-line);
    padding-bottom: 18px !important;
  }
  .lh-2col[style*="gap:0"] > div:last-child { padding-top: 18px !important; }
}

/* Standard small nav on phones, every page (was missing on product + case studies) */
@media (max-width: 520px) {
  header nav { padding: 12px 16px !important; gap: 14px !important; }
  .lh-wordmark { font-size: 13px !important; letter-spacing: .1em !important; }
  .lh-nav-cta a { padding: 13px 18px !important; font-size: 13px !important; }
}

/* Grid items may not shrink below content without this */
@media (max-width: 760px) {
  [style*="grid-template-columns:1fr 1fr"] > *,
  [style*="grid-template-columns:repeat(3,1fr)"] > * {
    min-width: 0;
  }
}

/* Comparison tables, 2026-07-18 canvas update: table on desktop, stacked row cards on phones */
.lh-cmp-m { display: none; }
@media (max-width: 760px) {
  .lh-cmp-d { display: none !important; }
  .lh-cmp-m { display: flex; flex-direction: column; gap: 14px; }
}

/* Heading highlight marks: always the heading's own font (Archivo), weight and spacing included */
h1 mark, h2 mark, h3 mark {
  font-family: inherit !important;
  font-weight: inherit !important;
  letter-spacing: inherit !important;
}

/* Launch kill-switch: elements hidden until reveal (remove attribute or this rule to restore) */
[data-lh-hidden] { display: none !important; }

/* Resources dropdown: compact single-column like the Services menu (res-menu compact).
   NOTE: added while the free-training feature card is hidden; at training reveal, remove this
   block together with the [data-lh-hidden] kill-switch to restore the designed 2-col menu. */
header nav .lh-res-menu {
  width: 340px;
  display: block;
  padding: 8px;
  gap: 0;
}
header nav .lh-res-menu a {
  position: relative;
  padding: 11px 34px 11px 13px;
  border-radius: 10px;
}
header nav .lh-res-menu a:hover { background: rgba(255,255,255,.06); }
header nav .lh-res-menu a::after {
  content: "\2192";
  position: absolute; right: 14px; top: 50%;
  transform: translateY(-50%) translateX(-5px);
  font-family: var(--lh-font-display);
  font-size: 15px; color: var(--lh-accent);
  opacity: 0; transition: opacity .14s ease, transform .14s ease;
}
header nav .lh-res-menu a:hover::after { opacity: 1; transform: translateY(-50%) translateX(0); }


/* Launch Offer states (offer.js flips at Aug 5 2026 11:00 UTC) */
[data-lh-post] { display: none !important; }
.lh-post-offer [data-lh-offer] { display: none !important; }
.lh-post-offer span[data-lh-post] { display: inline-block !important; }
.lh-post-offer label[data-lh-post] { display: flex !important; }
.lh-post-offer div[data-lh-post] { display: block !important; }
.lh-post-offer div[data-lh-post][data-lh-flex] { display: flex !important; }
