/* dubai-id mobile only v4 — do not restyle desktop header */
html { -webkit-text-size-adjust: 100%; }

img, svg, video, iframe { max-width: 100%; height: auto; }
.hdr__logo img {
  max-width: none !important;
  width: auto !important;
  height: 46px !important;
}

input, select, textarea {
  font-size: 16px !important;
  max-width: 100%;
  box-sizing: border-box;
}

.hdr__lang {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  font-family: var(--font-head);
  font-weight: 700;
  font-size: .78rem;
  letter-spacing: .04em;
}
.hdr__lang a { color: var(--navy); text-decoration: none; opacity: .45; }
.hdr__lang a:hover, .hdr__lang a.is-active { opacity: 1; color: var(--green-dark); text-decoration: none; }
.hdr__lang--mobile { display: none !important; }

/* Desktop: original Astro header. Only tuck language next to messengers. */
@media (min-width: 1041px) {
  .hdr {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 24px !important;
    min-height: 76px !important;
  }
  .hdr__nav {
    display: flex !important;
    gap: 26px !important;
    margin-left: auto !important;
  }
  .hdr__contacts, .hdr__phone, .hdr__social {
    display: flex !important;
  }
  .hdr__contacts {
    align-items: center !important;
    gap: 16px !important;
  }
  .hdr__phone {
    flex-direction: column !important;
    text-align: right !important;
  }
  .hdr__phone-note { display: block !important; }
  .hdr__burger { display: none !important; }
  .hdr__lang { margin-left: 0; }
  .site-header { overflow: visible; }
}

@media (max-width: 1040px) {
  html, body { overflow-x: hidden; }
  .hdr { gap: 10px; min-height: 64px; }
  .hdr__nav, .hdr__contacts { display: none !important; }
  .hdr__burger {
    display: flex !important;
    margin-left: 4px;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
  }
  .hdr__lang { margin-left: auto; }
  .hdr__lang--mobile { display: flex !important; margin: 12px 0 4px; }
  .hdr__logo img { height: 40px !important; }
}

@media (max-width: 767px) {
  .container { padding-inline: 16px; }
  h1 { font-size: clamp(1.55rem, 8vw, 2.35rem) !important; }
  h2 { font-size: clamp(1.3rem, 6vw, 1.85rem) !important; }
  .btn { max-width: 100%; }
  .req, .req__info, .req__form, form.card { max-width: 100%; width: 100%; box-sizing: border-box; }
  input, select, textarea { width: 100%; }
  .ft { grid-template-columns: 1fr !important; gap: 28px !important; padding: 40px 16px !important; }
  .ft__logo { max-width: min(220px, 70vw); height: auto; }
  .ft__bottom .container { flex-direction: column; align-items: flex-start; gap: 10px; }
  .float-wa { right: 14px; bottom: calc(14px + env(safe-area-inset-bottom, 0px)); }
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr !important; }
}
