/* ============================================
   RESPONSIVE.CSS — Tablet & mobile breakpoints
   ============================================ */

@media (max-width: 1199px) {
  .site-nav .container { padding: 0 32px; }
  .hero-copy { padding: 0 56px 72px; }
  .hero-right { padding: 48px 40px; }
}

@media (max-width: 991px) {
  /* Hero stacks below lg breakpoint */
  .hero-left {
    min-height: 500px;
  }
  .hero-copy {
    padding: 0 32px 48px;
  }
  .hero-right {
    padding: 40px 32px;
  }
  .eyebrow { font-size: 40px; }

  /* Steps - cards stack */
  .steps .col-md-4 {
    margin-bottom: 16px;
  }
  .steps .col-md-4:last-child {
    margin-bottom: 0;
  }
  .step-card { min-height: auto; }

  /* Who can apply */
  .apply-img-col {
    min-height: 280px;
  }
  .apply-content {
    min-height: auto;
  }

  /* Section padding */
  .steps, .remember, .snapshot, .who-can-apply {
    padding: 56px 0;
  }
}

@media (max-width: 767px) {
  .site-nav { height: 70px; }
  .site-nav .container { padding: 0 20px; }
  .nav-logo img { height: 42px; }

  .hero-copy { padding: 0 24px 40px; }
  .eyebrow { font-size: 32px; }
  .hero-title { font-size: 20px; }

  .hero-right { padding: 32px 24px; }
  .form-row .form-group {
    margin-bottom: 16px;
  }

  .section-title { font-size: 32px; }

  .remember-card,
  .apply-content {
    padding: 24px;
  }

  .quote { padding: 32px 0; }
  .quote-inner { padding: 0 36px; }
  .quote blockquote {
    font-size: 16px;
  }
  .quote-mark {
    width: 36px;
  }
  .quote-bg-img {
    width: 220px;
    opacity: 0.3;
  }

  .tab-buttons {
    flex-wrap: wrap;
  }
  .tab-btn {
    flex: 1 1 auto;
  }

  .pill {
    padding: 12px 20px;
    font-size: 12px;
  }
}

@media (max-width: 480px) {
  .form-header h2 { font-size: 26px; }
  .section-title { font-size: 28px; }
  .step-card { padding: 24px 22px; }
  .step-num { font-size: 32px; }
  .tab-panel h3 { font-size: 20px; }
}
