/* C17 mobile pass (klara, Nov 3 2026). Small, safe CSS only: tap targets and small text. No copy, no layout changes. */
@media (max-width: 1024px) {
  /* tabs: 35-40px -> 44px */
  .alx .tabs button, #alx-tab-detect, #alx-tab-seal, .r10-tabs button { min-height: 44px; }
  /* "Show all N steps" / "See the comparison" / "Learn more" / "How SourceSeal works"-type text links */
  .mh-more, .tl-more, .tc-more a, .r10-more a, a.r10-more, .db-more a, .al-cta-link a { min-height: 44px; display: inline-flex; align-items: center; }
  .tl-foot--links .tl-more { display: inline-flex; }
  .al-more a, .ail-trust-team__more { display: inline-flex; align-items: center; min-height: 44px; }
  /* burger squeezed to 36px wide at 360 on inner pages */
  .al-header .al-burger { min-width: 44px; flex: none; }
  /* footer column links at 768 were 30px tall */
  .al-footer .al-footer__grid a { min-height: 44px; display: flex; align-items: center; }
  /* logo link */
  .al-header .al-logo { min-height: 44px; }
  /* footer bottom row */
  .al-footer .al-footer__bottom a { padding: 14px 4px !important; margin: -14px -4px; }   /* style.css L502 keeps it inline !important; padding grows the hit area to 44px without moving the line */
  /* blog hub, post, 404 */
  .al-post__back a, .al-post__cats a, .al-postcard__more { display: inline-flex; align-items: center; min-height: 44px; }
  .al-postcard__title a { display: inline-block; padding-block: 9px; }
  /* form checkboxes bigger (C19p: unused selectors removed) */
  form input[type=checkbox], .al-form .consent input[type=checkbox] { width: 22px; height: 22px; flex: none; }
  /* small helper text in forms: 13px -> 14px */
  form .help, .al-form .help, p.note { font-size: 14px; }
}

/* C17b: source links inside tiles wrap, never overflow (all widths) */
.tc-src, .tc-sub { overflow-wrap: anywhere; }
.tc-src a.tc-srclink, .tc-sub a.tc-srclink { color: inherit; text-decoration: underline; text-underline-offset: 2px; }

/* C17b/C17c (Dor): API & Pricing (9) + Security platforms (38) lens cards as a compact row of 3 at <=768px. Desktop unchanged. */
@media (max-width: 768px) {
  body:is(.page-id-9,.page-id-38) .alx-lens .lens-row { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
  body:is(.page-id-9,.page-id-38) .alx-lens .lens-row > li { min-width: 0; }
  body:is(.page-id-9,.page-id-38) .alx-lens .lcard { margin: 0; }
  body:is(.page-id-9,.page-id-38) .alx-lens .lcard img { width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; }
  body:is(.page-id-9,.page-id-38) .alx-lens .lcard figcaption { font-size: 11px; line-height: 1.3; flex-wrap: wrap; gap: 2px; padding: 6px; overflow-wrap: anywhere; }
}
@media (max-width: 768px) {
  body:is(.page-id-9,.page-id-38) .alx-lens .lcard figcaption { display: block; }
  body:is(.page-id-9,.page-id-38) .alx-lens .lcard figcaption b { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  body:is(.page-id-9,.page-id-38) .alx-lens .lcard figcaption .tagf { display: block; }
}

/* C17b: /about-us/ "What we build" = 3 cards (Known Fake DB dropped). Keep 3 columns down to 641px instead of 2+1; 1 column on phones (style.css L183). */
@media (min-width: 641px) and (max-width: 960px) {
  body.page-id-8 .al-cards.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
}

/* C17b: at 360 the 44px burger ran 2px off the edge; tighter header gap on small phones */
@media (max-width: 400px) { .al-header .al-header__in { gap: 12px; } }

/* C17c: home input tiles: "Surveillance" (69px at 11.5px) ran out of its label box at 390 (66px) and 360 (58px).
   mobile-home.css L69-70 set the size/padding with !important, so these match it. Slightly smaller + tighter padding; no mid-word breaks, never clipped. */
@media (max-width: 420px) {
  body.al-home-m .db-attack .db-tlabel { font-size: 10.5px !important; overflow-wrap: normal; }
}
@media (max-width: 380px) {
  body.al-home-m .db-attack .db-grid { gap: 6px !important; }
  body.al-home-m .db-attack .db-tile { padding: 6px 4px 8px !important; }
  body.al-home-m .db-attack .db-tlabel { font-size: 10px !important; }
}
/* 320px phones: the word can't fit at a readable size; hyphenate (Safari/Chrome mobile), break as a last resort. Still never clipped. */
@media (max-width: 340px) {
  body.al-home-m .db-attack .db-tlabel { hyphens: auto; -webkit-hyphens: auto; overflow-wrap: anywhere; }
}
