/* ==========================================================
   THEME RESPONSIVE
   All media queries consolidated
   ========================================================== */

/* -------------------------------------------------------
   Tablet landscape (max-width: 1024px)
   ------------------------------------------------------- */
@media (max-width: 1024px) {
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .grid-3 { grid-template-columns: repeat(2, 1fr); }
  .stats-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: var(--space-2xl); }
  .footer-grid > :first-child { grid-column: 1 / -1; }
  .hero { padding: 6rem 0 4.5rem; }
  .section { padding: var(--space-4xl) 0; }
  .guides-grid { grid-template-columns: repeat(2, 1fr); }
  .industries-grid { grid-template-columns: repeat(3, 1fr); }
  .page-hero { padding: 7rem 0 4.5rem; }
  .claim-layout { grid-template-columns: 1fr 320px; gap: var(--space-2xl); }

  /* Calculator responsive */
  .calculator-results { grid-template-columns: repeat(3, 1fr); gap: var(--space-md); }
}


/* -------------------------------------------------------
   Tablet portrait / Mobile (max-width: 768px)
   ------------------------------------------------------- */
@media (max-width: 768px) {
  :root { --header-height: 64px; }

  .nav {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 999;
    background: rgba(255,255,255,.98);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-lg);
  }
  .nav.nav-open { display: flex; }
  .nav .nav-link { font-size: 1.25rem; padding: var(--space-md) var(--space-xl); }
  .nav .nav-link::after { display: none; }
  .nav .nav-cta { font-size: 1.125rem; padding: .875rem 2.5rem; margin-top: var(--space-md); margin-left: 0; }
  .nav-toggle { display: flex; }

  .container, .container-narrow { padding: 0 var(--space-lg); }
  .section { padding: var(--space-3xl) 0; }

  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
  .steps-grid { grid-template-columns: 1fr; }
  .stats-grid { grid-template-columns: 1fr; gap: var(--space-md); }
  .stat-card::after { display: none; }
  .stat-number { font-size: 2.5rem; -webkit-text-fill-color: unset; }
  .requirements-grid { grid-template-columns: 1fr; }
  .industries-grid { grid-template-columns: repeat(2, 1fr); }
  .guides-grid { grid-template-columns: 1fr; }
  .glossary-grid { grid-template-columns: 1fr; }
  .news-item { flex-direction: column; gap: var(--space-sm); }
  .criteria-editorial {
    grid-template-columns: 1fr;
    border-radius: 0;
    box-shadow: none;
    border: none;
  }
  .criteria-item,
  .criteria-item:nth-child(2),
  .criteria-item:nth-child(3) {
    background: transparent;
    padding: var(--space-xl) 0;
    border-bottom: 1px solid var(--color-border-light);
  }
  .criteria-item:last-child { border-bottom: none; }
  .industries-layout { grid-template-columns: 1fr; gap: var(--space-xl); }
  .industries-grid-pills { grid-template-columns: repeat(2, 1fr); }
  .news-date { width: auto; }

  .hero { padding: 5rem 0 3.5rem; }
  .hero-headline { font-size: clamp(2.25rem, 7vw, 3.25rem); }
  .hero-ctas { flex-direction: column; align-items: stretch; }
  .hero-ctas .btn { text-align: center; justify-content: center; }
  .hero-float { display: none; }
  .page-hero { padding: 5rem 0 3.5rem; }

  .footer-grid { grid-template-columns: 1fr; gap: var(--space-2xl); }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  .trust-bar-inner { gap: var(--space-lg); }
  .trust-divider { display: none; }

  .faq-question { font-size: var(--font-size-base); padding: var(--space-lg) 0; }
  .faq-answer p { padding-right: 0; }

  .btn-large { padding: .9375rem 2rem; font-size: var(--font-size-base); }

  .process-step { padding-left: 60px; }
  .process-step .step-number { width: 44px; height: 44px; font-size: var(--font-size-base); }
  .process-step:not(:last-child)::after { left: 21px; top: calc(var(--space-2xl) + 44px + 8px); }

  .legal-content h2 { margin-top: var(--space-2xl); }
  .legal-contact { padding: var(--space-lg); }

  .claim-hero { padding: 4rem 0 2.5rem; }
  .claim-layout { grid-template-columns: 1fr; gap: var(--space-2xl); }
  .claim-sidebar { position: static; order: -1; }
  .claim-form-card { padding: var(--space-xl) var(--space-lg) var(--space-lg); }
  .form-row { grid-template-columns: 1fr; gap: var(--space-md); }
  .form-radio-group { flex-direction: column; gap: var(--space-sm); }
  .form-consent { padding: var(--space-md); }

  /* Calculator responsive */
  .calculator-widget { padding: var(--space-xl); }
  .calculator-results { grid-template-columns: 1fr; gap: var(--space-md); }

  /* Form wizard responsive */
  .form-progress-label { display: none; }
  .form-progress-dot { width: 32px; height: 32px; font-size: var(--font-size-xs); }

  /* Testimonial responsive */
  .testimonial-card { padding: var(--space-xl); }
  .testimonial-card::before { font-size: 3rem; }

  /* Dark mode toggle responsive */
  .dark-mode-toggle { width: 40px; height: 40px; }
}


/* -------------------------------------------------------
   Small mobile (max-width: 480px)
   ------------------------------------------------------- */
@media (max-width: 480px) {
  .stats-grid { grid-template-columns: 1fr; gap: var(--space-sm); }
  .stat-card { padding: var(--space-lg) var(--space-sm); }
  .hero { padding: 3.5rem 0 2.5rem; }
  .hero-headline { font-size: clamp(2rem, 7vw, 2.75rem); }
  .claim-form-card { padding: var(--space-lg) var(--space-md) var(--space-md); }

  /* Calculator small mobile */
  .calculator-input { font-size: var(--font-size-lg); }
  .calculator-result-value { font-size: 1.5rem; }

  /* Industries 1-col on very small */
  .industries-grid { grid-template-columns: 1fr; }
}
