/* ============================================================
   MRC — адаптив
   ============================================================ */

@media (max-width: 1180px) {
  .hdr__in { gap: 24px; }
  .nav ul { gap: 20px; }
  .hero__in { gap: 40px; }
  .foot__grid { grid-template-columns: 1fr 1fr; gap: 36px; }
}

@media (max-width: 1000px) {
  .hdr__tel { display: none; }
}

/* ---------- Планшет ---------- */
@media (max-width: 900px) {
  :root { --pad: 24px; }

  .nav {
    position: fixed; left: 0; right: 0; top: var(--hdr-h); bottom: 0;
    background: var(--white); border-top: 1px solid var(--line);
    padding: 24px var(--pad); margin-left: 0;
    transform: translateY(-8px); opacity: 0; pointer-events: none;
    transition: opacity .18s, transform .18s; overflow-y: auto;
  }
  .nav.is-open { opacity: 1; transform: none; pointer-events: auto; }
  .nav ul { flex-direction: column; gap: 0; }
  .nav a { padding: 18px 0; font-size: 1.125rem; border-bottom: 1px solid var(--line); }
  .nav a::after { display: none; }
  .nav a.is-active { border-bottom-color: var(--ink); border-bottom-width: 3px; }

  .hdr__side { margin-left: auto; }
  .burger { display: flex; }

  .hero__in { grid-template-columns: 1fr; gap: 36px; }
  .hero .frame { aspect-ratio: 3 / 2; }

  .facts { grid-template-columns: 1fr 1fr; }
  .facts div { border-left: 0; padding-left: 0; border-top: 1px solid var(--line); }
  .facts div:nth-child(-n+2) { border-top: 0; }
  .facts div:nth-child(2n) { padding-left: 24px; border-left: 1px solid var(--line); }

  .g-3, .g-4 { grid-template-columns: 1fr 1fr; }
  .cards { grid-template-columns: 1fr 1fr; gap: 20px; }
  .steps { grid-template-columns: 1fr 1fr; }
  .pd { grid-template-columns: 1fr; gap: 36px; padding: 32px 0; }
  .contacts-grid { grid-template-columns: 1fr; gap: 44px; }
  .mark-bg { display: none; }
}

/* ---------- Телефон ---------- */
@media (max-width: 620px) {
  :root { --pad: 18px; }

  body { font-size: 15px; }

  /* На узком экране длинные слова заголовка не помещаются в одну строку */
  .hero h1 { font-size: clamp(1.75rem, 8.4vw, 2.5rem); }

  .brand__txt i { display: none; }
  .sec-head { flex-direction: column; align-items: flex-start; gap: 16px; }

  .facts { grid-template-columns: 1fr; }
  .facts div {
    padding: 20px 0 20px 16px;
    border-left: 0 !important; border-top: 1px solid var(--line);
  }
  .facts div:first-child { border-top: 0; }
  .facts div::before { left: 0 !important; }

  .g-2, .g-3, .g-4 { grid-template-columns: 1fr; }
  .cards { grid-template-columns: 1fr; }
  .steps { grid-template-columns: 1fr; }
  .form__row { grid-template-columns: 1fr; }
  .foot__grid { grid-template-columns: 1fr; }
  .foot__bar { flex-direction: column; gap: 10px; }

  .box { padding: 28px 22px; }
  .btns .btn { width: 100%; }
  .float { right: 12px; bottom: 12px; }
  .float a { width: 44px; height: 44px; }
  .pd__thumbs { grid-template-columns: repeat(3, 1fr); }
  .ct-phone { font-size: 1.1875rem; }
  .frame--mark { padding: 7px; }
  .frame--mark::before, .frame--mark::after { width: 18px; height: 18px; }
}
