/* =========================================================================
   VeriTrust — Mobile polish (loaded last)
   The base CSS is already responsive; this refines small screens.
   ========================================================================= */

@media (max-width: 760px) {
  :root { --nav-h: 64px; }

  /* --- Navigation: keep logo + language + menu; CTA lives in the menu --- */
  .nav .wrap { gap: 12px; }
  .nav-right { gap: 8px; }
  .nav-right > .btn-primary { display: none; }     /* present in the burger menu */
  .nav-burger { width: 46px; height: 46px; }
  .lang-toggle { padding: 9px 12px; }

  .mobile-menu { padding-top: 12px; }
  .mobile-menu a { padding: 18px 4px; }

  /* --- Section rhythm --- */
  .section-pad { padding-block: clamp(52px, 12vw, 84px); }
  .layer-head { margin-bottom: 34px; }
  .layer-head p, .section-head p { font-size: var(--fs-base); }
  .layer-head .kicker { font-size: 0.66rem; }

  /* --- Video hero panels --- */
  .vp-glass { padding: 24px 20px; max-width: 100%; }
  .vp-glass h2 { font-size: var(--fs-lg); }
  .vp-glass p { font-size: var(--fs-sm); }
  .vp-step { top: -14px; }
  .vpanel-intro { top: 80px; bottom: auto; }
  .vpanel-intro h1 { font-size: clamp(2rem, 9.5vw, 2.7rem); }
  .vpanel-intro p { font-size: var(--fs-base); }
  .vh-badge { font-size: 0.72rem; padding: 7px 13px 7px 10px; }
  .vpanel-final h2 { font-size: var(--fs-2xl); }
  .vh-chip { padding: 9px 14px; font-size: var(--fs-micro); }
  .vh-cta .btn { flex: 1 1 auto; justify-content: center; }

  /* --- Cards & dashboards --- */
  .cap-card { padding: 26px 22px 22px; }
  .findash, .dash { border-radius: var(--r-md); }
  .fd-body { padding: 14px; }
  .bento .b-card { padding: 22px 20px; }

  /* --- Trust ledger --- */
  .ledger { padding: 22px; }
  .block-row .bk-hash { font-size: 0.66rem; }

  /* --- AI chat --- */
  .ai-bubble { max-width: 94%; }

  /* --- Pilot / CTA band --- */
  .pilot-card { padding: 30px 22px; border-radius: var(--r-xl); }
  .pilot-card .big30 { font-size: clamp(2.8rem, 14vw, 3.6rem); }
  .cta-band { padding: 30px 22px; border-radius: var(--r-xl); }
  .cta-actions .btn, .hero-cta .btn, .vh-cta .btn { min-height: 48px; }

  /* --- FAQ touch targets --- */
  .faq button { padding: 17px 18px; font-size: var(--fs-sm); gap: 12px; }
  .faq.open .fq-body { max-height: 640px; }
  .faq .fq-body p { padding: 0 18px 18px; }

  /* --- Stats --- */
  .stat-cell { padding: 24px 14px; }

  /* --- Buttons easier to tap --- */
  .btn { min-height: 46px; }

  /* --- Footer --- */
  .foot-bottom { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 480px) {
  .layer-head h2, .section-head h2 { font-size: 1.72rem; }
  .cta-left h2, .vpanel-final h2 { font-size: 1.7rem; }
  .vpanel-intro h1 { font-size: 1.95rem; }
  .hero-cta, .vh-cta, .cta-actions { width: 100%; }
  .hero-cta .btn, .cta-actions .btn { width: 100%; }
  .partner-chips .pc { width: 100%; justify-content: flex-start; }
  .logos { gap: 14px 24px; }
}

/* Coarse-pointer (touch) devices: disable heavy hover transforms so taps feel right */
@media (hover: none) {
  .card:hover, .bento .b-card:hover, .cap-card:hover, .gate-feat:hover,
  .module:hover, .feat:hover, .role-card:hover { transform: none; }
}
