/* Контакты: карта (ct-karta.tpl) - теперь живая карта Яндекса, встроенная
   iframe'ом (.ct-karta__frame, адрес - сниппет kMapEmbed). Условная схема
   (улицы/квартал прямоугольниками) ниже в этом файле не выброшена -
   она остаётся запасным вариантом на случай пустого поля "geo" (чанк
   решает, что показать, модификатором notempty/isempty). Ссылка под
   картой (.ct-karta__link) и метка схемы ведут на Яндекс.Карты внешней
   ссылкой (сниппет kMapLink) по тем же координатам или по адресу, если
   geo пусто.

   Позиции элементов схемы - в процентах от .ct-karta__map (не в px):
   карта секции тянется по ширине .wrap (1328 на 1440, 350 на 390), а
   проценты считаны от тех же чисел, что и в дампе (1328x440 десктоп,
   350x270 телефон), поэтому при ровно этих ширинах совпадают до px.
   Макет: секция "Карта" (u183Mv/M50W6q десктоп, W8Muft/mpN6m телефон)
   страницы "Контакты". */

.ct-karta {
  background: var(--white);
  padding: 0 0 80px;   /* дамп u183Mv: padding [0,56,80,56], бока - .wrap */
}

.ct-karta__map {
  position: relative;
  width: 100%;
  height: 440px;   /* дамп M50W6q */
  background: #E7E3DA;   /* дамп: свой цвет схемы, не токен темы */
  border-radius: 8px;   /* дамп cornerRadius 8 - не совпадает ни с одним токеном */
  overflow: hidden;   /* тот же радиус у живой карты: iframe обрезается коробкой */
}

/* Живая карта: коробка та же, что была у схемы (ct-karta__map не меняет
   размер) - iframe просто заполняет её целиком. border:0 вместо атрибута
   frameborder - тот же результат без устаревшего HTML-атрибута. */
.ct-karta__frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Ссылка под картой - запасной путь на телефоне, где в iframe неудобно
   тянуть карту пальцем: маленькая строка, не часть макета, поэтому без
   привязки к дампу. */
.ct-karta__link {
  display: inline-block;
  margin-top: 16px;
  font-family: var(--font-body);
  font-size: 13px;
  line-height: 16px;
  color: var(--magenta-text);
}

.ct-karta__street {
  position: absolute;
  background: var(--white);
}

.ct-karta__street--h1 { left: 0; width: 100%; top: 27.2727%; height: 5.9091%; }
.ct-karta__street--h2 { left: 0; width: 100%; top: 68.1818%; height: 4.0909%; }
.ct-karta__street--v1 { top: 0; height: 100%; left: 24.0964%; width: 1.6566%; }
.ct-karta__street--v2 { top: 0; height: 100%; left: 67.7711%; width: 2.2590%; }

.ct-karta__block {
  position: absolute;
  background: #DED9CE;   /* дамп: свой цвет "квартала" */
}

.ct-karta__block--1 { left: 27.1084%; top: 33.1818%; width: 39.1566%; height: 35%; }
.ct-karta__block--2 { left: 72.2892%; top: 33.1818%; width: 27.7108%; height: 35%; }

.ct-karta__pin {
  position: absolute;
  left: 45.1807%;
  top: 40.9091%;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 16px;
  background: var(--magenta);
  border-radius: 6px;
  text-decoration: none;
  white-space: nowrap;
}

.ct-karta__pin-ico {
  flex: none;
  width: 17px;
  height: 17px;
  fill: var(--white);
}

.ct-karta__pin-label {
  margin: 0;
  font-family: var(--font-body);
  font-weight: 700;
  font-size: 14px;
  line-height: 17px;   /* 14 x 1.21 */
  color: var(--white);
}

.ct-karta__pin-label--m { display: none; }

@media (max-width: 860px) {
  .ct-karta { padding: 0 0 40px; }   /* дамп W8Muft: padding [0,20,40,20] */

  .ct-karta__map { height: 270px; }   /* дамп mpN6m */

  .ct-karta__block--2 { display: none; }   /* на телефоне квартал один */
  .ct-karta__block--1 { left: 36%; top: 35.5556%; width: 31.1429%; height: 33.3333%; }

  .ct-karta__street--h1 { top: 28.8889%; height: 6.6667%; }
  .ct-karta__street--h2 { top: 68.8889%; height: 4.4444%; }
  .ct-karta__street--v1 { left: 27.4286%; width: 4.2857%; }
  .ct-karta__street--v2 { left: 71.4286%; width: 5.7143%; }

  .ct-karta__pin {
    left: 34.2857%;
    top: 41.4815%;
    gap: 7px;
    padding: 9px 12px;
    border-radius: 5px;
  }

  .ct-karta__pin-ico { width: 14px; height: 14px; }

  .ct-karta__pin-label { font-size: 12px; line-height: 15px; }   /* 12 x 1.21 = 14,52 -> 15, как в дампе */

  .ct-karta__pin-label--d { display: none; }
  .ct-karta__pin-label--m { display: inline; }
}
