/* =============================================
   TABLET — max-width: 1024px
   ============================================= */
@media (max-width: 1024px) {
  .container { padding: 0 32px; }
  .nav__cta { display: none; }
  .nav { height: 100px; }
  .nav__logo-img { height: 84px; }

  /* Hero */
  .hero__inner { padding-top: 100px; gap: 36px; }
  .hero__visual { margin-top: -100px; }
  .hero__img-card > img { height: 50vh; min-height: 360px; }

  /* Recovery */
  .recovery__inner { gap: 40px; }
  .recovery__image img { height: 360px; }

  /* Focus */
  .focus__cards { gap: 20px; }

  /* Location */
  .location__inner { gap: 40px; }

  /* Contact */
  .contact-page__inner { gap: 40px; }

  /* Profile */
  .profile__inner { grid-template-columns: 280px 1fr; gap: 40px; }

  /* Examples */
  .examples__row-block { column-gap: 48px; }
  .examples__settlement-label { font-size: 1.4rem; }

  /* Why */
  .why__inner { gap: 48px; }
}

/* =============================================
   SMALL TABLET — max-width: 768px
   ============================================= */
@media (max-width: 768px) {
  .container { padding: 0 24px; }

  /* Nav */
  .nav__links { display: none; }
  .nav__hamburger { display: flex; }
  .nav__mobile { padding: 20px 24px 28px; }

  /* Hero */
  .hero__inner { grid-template-columns: 1fr; padding-top: 90px; padding-bottom: 40px; gap: 0; }
  .hero__content { padding: 40px 0 32px; }
  .hero__visual { margin-top: 0; }
  .hero__img-card > img { height: 360px; max-height: 360px; }
  .fee-badge { padding: 0 24px 24px; }
  .fee-badge__label { font-size: 1.1rem; }

  /* Why */
  .why__inner { grid-template-columns: 1fr; gap: 40px; }
  .why__header .section__subtitle { text-align: left; }

  /* Examples */
  .examples__row-block { grid-template-columns: 1fr; gap: 20px; }
  .examples__cols { grid-template-columns: 1fr; gap: 24px; }
  .examples__divider { display: none; }
  .examples__settlement-label { font-size: 1.6rem; margin-bottom: 8px; }
  .examples__main-title { font-size: 2.2rem; }

  /* Recovery */
  .recovery__inner { grid-template-columns: 1fr; gap: 36px; }
  .recovery__image img { height: 320px; }
  .recovery__text { text-align: left; }
  .recovery__btn { display: block; text-align: center; width: 100%; }

  /* Critical */
  .critical__inner { flex-direction: column; align-items: flex-start; gap: 24px; }
  .critical__btn { width: 100%; text-align: center; }

  /* Focus */
  .focus__cards { grid-template-columns: repeat(2, 1fr); gap: 16px; }

  /* Footer */
  .footer__bottom { flex-direction: column; align-items: center; gap: 16px; text-align: center; }
  .footer__links { flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 8px; }

  /* Footer disclaimer */
  .footer-disclaimer__text { padding: 0 24px; }

  /* Location */
  .location__inner { grid-template-columns: 1fr; gap: 36px; }

  /* Contact */
  .contact-page__inner { grid-template-columns: 1fr; gap: 40px; }
  .contact-page__img-col { position: static; order: -1; }
  .contact-page__img { height: 280px; object-position: center 20%; border-radius: 12px; }

  /* Profile */
  .profile__inner { grid-template-columns: 1fr; gap: 36px; }
  .profile__photo-col { position: static; max-width: 380px; }

  /* Team */
  .team__grid { justify-content: center; }
  .team__card { width: 100%; max-width: 380px; }

  /* Legal pages */
  .legal__content { max-width: 100%; }
  .legal__heading { font-size: 1.2rem; }
  .legal__list li { font-size: 0.92rem; }
}

/* =============================================
   MOBILE — max-width: 480px
   ============================================= */
@media (max-width: 480px) {
  .container { padding: 0 20px; }
  .section { padding: 60px 0; }

  /* Nav */
  .nav { height: 80px; }
  .nav__logo-img { height: 64px; }
  .nav__mobile { padding: 16px 20px 24px; }

  /* Hero */
  .hero__inner { padding-top: 80px; padding-bottom: 32px; }
  .hero__content { padding: 32px 0 24px; }
  .hero__title { font-size: 2.2rem; }
  .hero__subtitle { font-size: 0.92rem; }
  .hero__btn { width: 100%; text-align: center; }
  .hero__img-card > img { height: 240px; min-height: 240px; }
  .fee-badge { padding: 0 16px 18px; }
  .fee-badge__label { font-size: 0.95rem; }
  .fee-badge__title { font-size: 0.9rem; }

  /* Why */
  .why { padding: 60px 0; }
  .why__card { gap: 16px; }
  .why__card-icon { width: 48px; height: 48px; }

  /* Examples */
  .examples__main-title { font-size: 1.9rem; }
  .examples__settlement-label { font-size: 1.3rem; }
  .examples__key { font-size: 0.88rem; }
  .examples__val { font-size: 0.88rem; }
  .examples__badge--ours { font-size: 0.9rem; width: 130px; }

  /* Recovery */
  .recovery__image img { height: 220px; }
  .recovery__title { font-size: 1.4rem; }
  .recovery__text { font-size: 1rem; }
  .recovery__btn { display: block; width: 100%; text-align: center; }

  /* Critical */
  .critical { padding: 48px 0; }
  .critical__title { font-size: 1.6rem; }
  .critical__text { font-size: 0.95rem; }
  .critical__btn { width: 100%; text-align: center; padding: 14px 20px; }

  /* Focus */
  .focus__cards { grid-template-columns: 1fr; max-width: 100%; margin: 0; }
  .focus__card { padding: 28px 22px; }
  .focus__main-title { font-size: 2rem; }

  /* Footer */
  .footer { padding: 24px 0; }
  .footer__bottom { flex-direction: column; align-items: center; gap: 12px; text-align: center; }
  .footer__links { flex-direction: row; flex-wrap: wrap; justify-content: center; gap: 6px; }
  .footer__link { font-size: 0.78rem; }
  .footer__copy { font-size: 0.75rem; }
  .footer-disclaimer__text { padding: 0 20px; font-size: 0.78rem; }

  /* Page hero */
  .page-hero { padding: 48px 0 40px; }
  .page-hero__title { font-size: 1.9rem; }

  /* Team */
  .team__card { width: 100%; max-width: 100%; }

  /* Location */
  .location__state { font-size: 1.8rem; }
  .location__btn { width: 100%; text-align: center; }

  /* Contact */
  .contact-page__img { height: 220px; }
  .contact-card__title { font-size: 1.3rem; }
  .contact-form__submit { padding: 14px; font-size: 0.95rem; }
  .contact-page__hero-phone { font-size: 0.9rem; }

  /* Profile */
  .profile__photo-col { max-width: 100%; }
  .profile__inner { gap: 28px; }

  /* Legal */
  .legal__intro { font-size: 0.92rem; margin-bottom: 32px; }
  .legal__block { margin-bottom: 28px; padding-bottom: 28px; }
  .legal__heading { font-size: 1.1rem; }
  .legal__list li { font-size: 0.88rem; }
}

/* =============================================
   VERY SMALL — max-width: 360px
   ============================================= */
@media (max-width: 360px) {
  .hero__title { font-size: 1.9rem; }
  .section__title { font-size: 1.5rem; }
  .critical__title { font-size: 1.4rem; }
  .page-hero__title { font-size: 1.6rem; }
  .examples__main-title { font-size: 1.7rem; }
  .why__header .section__title { font-size: 2rem; }
}