/* ==========================================================================
   TrulyCertify — Responsive Breakpoints
   ========================================================================== */

/* Tablet ====================================================== */
@media (max-width: 1024px) {
  .container, .container-wide { padding: 0 1.5rem; }

  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .grid-3 { grid-template-columns: repeat(2, 1fr); }

  .stats-band { grid-template-columns: repeat(2, 1fr); gap: 2rem 1rem; }

  .verify-details { grid-template-columns: 1fr; gap: 0.75rem; }
}

/* Mobile ====================================================== */
@media (max-width: 700px) {
  .container, .container-wide, .container-narrow { padding: 0 1.1rem; }

  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; gap: 1rem; }

  .form-row { grid-template-columns: 1fr; }

  .hero-grid { grid-template-columns: 1fr; gap: 2rem; }
  .hero-trust-row { gap: 1.25rem 1.5rem; }
  .hero-trust-item .num { font-size: 1.35rem; }

  .hero-cert-card { padding: 1.5rem; inset: 1rem; }
  .cert-card-rows { grid-template-columns: 1fr; gap: 0.6rem; }
  .cert-card-value { font-size: 1.25rem; }

  .countries-section { grid-template-columns: repeat(2, 1fr); }

  .verify-box { padding: 1.75rem 1.25rem; }
  .verify-input-row { flex-direction: column; }
  .verify-input-row .btn { width: 100%; }

  .section-heading { margin-bottom: 2rem; }

  .btn-row { width: 100%; }
  .btn-row .btn { flex: 1 1 100%; min-width: 0; }

  .cta-band { padding: 2rem 1.25rem; border-radius: 14px; }

  .stats-band { padding: 1.75rem 1rem; }

  .two-col { gap: 2rem; }
}

/* Small mobile ================================================ */
@media (max-width: 420px) {
  body { font-size: 15px; }

  .btn { padding: 0.75rem 1.25rem; font-size: 0.9rem; }
  .btn-large { padding: 0.9rem 1.5rem; font-size: 0.95rem; }

  .countries-section { grid-template-columns: 1fr; }
  .hero-trust-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }

  .stats-band { grid-template-columns: 1fr; }

  .chatbot-toggle { width: 50px; height: 50px; bottom: 16px; right: 16px; }
}

/* Print ======================================================= */
@media print {
  .site-header, .site-footer, .chatbot-toggle, .chatbot-window, .popup-overlay,
  .btn, .skip-link { display: none !important; }
  body { color: #000; background: #fff; font-size: 11pt; }
  a { color: #000; text-decoration: underline; }
  .container, .container-wide { max-width: 100%; padding: 0; }
}
