/* Дополнения к CSS Wix (шаблоны): то, чего у Wix нет в CSS, но есть в поведении. */

/* Подчёркивания сайта (этап 5g, C1) — как у верхнего меню: толщина 4 px и зазор 8 px до слова (как у меню Wix), наведение —
   цвет наведения меню (--brdh шапки), активный пункт — золотой (--brds), плавно. Меняются только здесь. */
:root { --mga-sub-bar-h: 3px; --mga-ul-h: 4px; --mga-ul-gap: 8px; --mga-ul-hover: rgb(18, 103, 90); --mga-ul-active: rgb(var(--mga-c-a2)); --mga-ul-dur: .45s; --mga-ul-ease: cubic-bezier(.645, .045, .355, 1); }
html body .mga-ul { position: relative !important; display: inline-block !important; }
html body .mga-ul::after { content: ''; position: absolute; left: 0; right: 0; top: calc(100% + var(--mga-ul-gap)); height: var(--mga-ul-h); background: var(--mga-ul-hover); transform: scaleX(0); transform-origin: left center; transition: transform var(--mga-ul-dur) var(--mga-ul-ease), background-color var(--mga-ul-dur) var(--mga-ul-ease); pointer-events: none; }
@media (hover: hover) { html body :is(a, [role="tab"], .mga-ul-host):hover .mga-ul::after, html body .mga-ul:hover::after { transform: scaleX(1); } }
html body .mga-ul.is-active::after { transform: scaleX(1); background: var(--mga-ul-active); }
html.m body .mga-ul::after { --mga-ul-gap: 6px; --mga-ul-h: 3px; }
/* кнопки (C2): единый стиль — один размер подписи; ширина по тексту — site.js fitButtons */
:root { --mga-btn-size: 12px; --mga-btn-size-m: 8px; }
/* значки (решение Виталии, 01.11): прежний набор Wix, один тёмный цвет темы — фильтр #mga-tint (page.mjs) по силуэту значка;
   у душа (ванные) голубая вода — как в оригинале, корпус — тем же тёмным цветом; свои линейные значки — currentColor */
:root { --mga-icon: #1A1A1A; }   /* значки — серо-чёрные (правила цвета 02.11, г) */
html body :is([id$="comp-mjrqm7nd9"], [id$="comp-mjrqm7na8"], [id$="comp-mjrqm7ng4"], [class*="comp-mkjwz239__"], [class*="comp-mkjwz23g__"], [class*="comp-mkjwz23h3__"], [class*="comp-mkjwz23m__"], [class*="comp-mkjwz23n__"], .mga-pd__icon, .mga-loc__cat) :is(img, svg):not(:has([fill="#00B7FF" i])) { filter: url(#mga-tint); }
html body svg:has(> g > [fill="#00B7FF" i]) :is(path, circle, rect, polygon, ellipse):not([fill="#00B7FF" i]):not([fill="none"]) { fill: var(--mga-icon) !important; opacity: .55; }
html.d body a[class*="StylableButton"]:not(.mga-ul-host a) [class*="__label"] { font-size: var(--mga-btn-size) !important; }
html.m body a[class*="StylableButton"]:not(.mga-ul-host a) [class*="__label"] { font-size: var(--mga-btn-size-m) !important; }
/* верхнее меню: цвет букв при наведении — как без наведения; переход полоски — плавный */
html.d #comp-lubs5xjb1 { --txth: var(--txt) !important; --txts: var(--txt) !important; }
html.d #comp-lubs5xjb1 .YFGDkY { transition: border-color var(--mga-ul-dur) var(--mga-ul-ease) !important; }
/* вкладки (подборки, галерея): без своей рамки Wix; цвет букв одинаковый у всех вкладок списка (site.js underlines) */
html body .mga-ul-tab { border-bottom-color: transparent !important; border-bottom-width: 0 !important; }

/* Видео страниц — без кнопок: если браузер не дал запустить (iPhone в режиме энергосбережения), виден кадр-заставка без значка «play».
   Видео в лайтбоксе (открыто посетителем, с controls) — со своими кнопками. */
video:not([controls])::-webkit-media-controls,
video:not([controls])::-webkit-media-controls-start-playback-button,
video:not([controls])::-webkit-media-controls-overlay-play-button,
video:not([controls])::-webkit-media-controls-panel { display: none !important; -webkit-appearance: none; opacity: 0 !important; }
video:not([controls]) { pointer-events: none; }

/* Переключатель языков (решение владельцев; у Wix его не было) — в стиле шапки: те же шрифт, размер и цвет, что у пунктов меню */
.mga-lang-anchor { position: relative; overflow: visible !important; }
html .mga-lang { position: absolute; top: 50%; left: 100%; margin: 0 0 0 26px !important; transform: translateY(calc(-50% - .6px)); z-index: 60; }
.mga-lang--regular { font-family: wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif; }
.mga-lang--semibold { font-family: wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif; }
html .mga-lang--before { left: auto; right: 100%; margin: 0 23px 0 0 !important; transform: translateY(calc(-50% + 8.5px)); }   /* по строке подписей меню объекта */
.mga-lang__btn { display: inline-flex; align-items: center; gap: 6px; padding: 6px 0; border: 0; background: none; color: #fff; font: inherit; font-size: 13px; line-height: 22px; letter-spacing: inherit; cursor: pointer; }
.mga-lang__chev { transition: transform .2s ease; }
.mga-lang.is-open .mga-lang__chev { transform: rotate(180deg); }
/* список (этап 3f): узкий столбик ровно под активным языком — по ширине кнопки (текст пунктов под текстом кнопки), белый на тёмном */
.mga-lang__list { position: absolute; top: calc(100% + 2px); left: -7px; width: calc(100% + 14px); display: none; flex-direction: column; padding: 3px 0; background: rgb(var(--mga-c-p0)); box-shadow: 0 6px 18px rgba(0, 0, 0, .22); }
.mga-lang.is-open .mga-lang__list { display: flex; }
.mga-lang__item { padding: 4px 7px; color: #fff; font-size: 12px; line-height: 18px; letter-spacing: .06em; text-decoration: none; white-space: nowrap; }
.mga-lang__item:hover, .mga-lang__item:focus-visible { background: rgba(255, 255, 255, .12); outline: none; }
/* цвета списка — сильнее правил Wix для ссылок и фонов (этап 3e: пункты были чёрными на прозрачном фоне) */
html body .mga-lang .mga-lang__list { background: rgb(var(--mga-c-p0)) !important; }
html body .mga-lang .mga-lang__item, html body .mga-lang .mga-lang__item:visited { color: #fff !important; opacity: 1 !important; padding: 4px 7px !important; font-size: 12px !important; line-height: 18px !important; letter-spacing: .06em !important; text-align: left !important; }
html body .mga-lang--m .mga-lang__item { font-size: 14px !important; line-height: 20px !important; padding: 5px 7px !important; }
html body .mga-lang .mga-lang__item:hover, html body .mga-lang .mga-lang__item:focus-visible { background: rgba(255, 255, 255, .14) !important; color: #fff !important; }
/* телефон: в меню (светлый фон) — кнопка тёмным текстом, список тот же */
.mga-lang-m { position: relative; margin: 18px 0 0 !important; padding: 0 0 0 10px !important; width: 270px; display: flex;
  font-family: arial, "ｍｓ ｐゴシック", "ms pgothic", 돋움, dotum, helvetica, sans-serif; font-size: 15px; line-height: 24px; }
html .mga-lang--m { position: relative; top: auto; left: auto; margin: 0 !important; transform: none; }
.mga-lang--m .mga-lang__btn { color: rgb(var(--mga-c-t0)); font-size: 15px; line-height: 24px; padding: 2px 0; }
.mga-lang--m .mga-lang__item { font-size: 14px; line-height: 20px; padding: 5px 7px; }
/* телефон, страница объекта: в шапке справа (меню у Wix там нет) */
html .mga-lang--mh { position: absolute; top: 50%; left: auto; right: 14px; margin: 0 !important; transform: translateY(-50%); z-index: 60; font-family: wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif; }
.mga-lang--mh .mga-lang__btn { font-size: 11px; line-height: 18px; letter-spacing: .06em; }
html body .mga-lang--mh .mga-lang__item { font-size: 11px !important; line-height: 16px !important; padding: 3px 7px !important; }
/* меню телефона: у Wix область пунктов обрезана по последнему пункту — строке языков нужно место ниже */
html.m #m_inlineContentParent-MENU_AS_CONTAINER { overflow: visible !important; }

/* Сетка фото объекта на компьютере — ровная сетка на всю ширину (site.js gridLayout; решение владельцев, этап 3d) */
html.d [id="comp-mjsg6d0n"][data-mga-grid] [data-hook="item-container"] { transition: none !important; }

/* Телефон, страница объекта: INTERIOR / EXTERIOR / FINANCIAL — ровная сетка в 2 колонки: подпись, под ней иконка и значение в строку
   (решение владельцев; у Wix пункты разложены с разными отступами) */
html.m .mga-dgrid { display: grid !important; box-sizing: border-box !important; width: 100% !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 16px; row-gap: 18px; padding: 0 20px 24px !important; height: auto !important; }
html.m .mga-dgrid > .mga-dtitle { grid-column: 1 / -1 !important; grid-row: auto !important; margin: 0 !important; left: 0 !important; position: relative !important; }
html.m .mga-dgrid > .mga-ditem { grid-area: auto !important; margin: 0 !important; left: 0 !important; top: 0 !important; position: relative !important; width: auto !important; min-width: 0; height: auto !important; justify-self: stretch !important; align-self: start !important; }
html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] { display: grid !important; grid-template-columns: 24px minmax(0, 1fr) !important; grid-template-rows: auto auto !important; column-gap: 8px; row-gap: 6px; height: auto !important; }
html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] > * { grid-area: auto !important; margin: 0 !important; left: 0 !important; top: 0 !important; position: relative !important; justify-self: start !important; align-self: center !important; }
html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] > :first-child { grid-column: 1 / -1 !important; width: auto !important; }
html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] > :not(:first-child):has(img, svg) { grid-column: 1 !important; grid-row: 2 !important; }
html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] > :not(:first-child):not(:has(img, svg)) { grid-column: 2 !important; grid-row: 2 !important; width: auto !important; min-width: 0; }
html.m .mga-dgrid > .mga-dspacer { display: none !important; }
html.m .mga-ditem > div, html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] { width: 100% !important; max-width: 100% !important; min-width: 0 !important; }
html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] > :not(:first-child):not(:has(img, svg)) * { width: auto !important; max-width: 100% !important; white-space: normal !important; overflow-wrap: normal; word-break: normal; }
html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] > :first-child, html.m .mga-ditem [data-mesh-id$="inlineContent-gridContainer"] > :first-child * { width: 100% !important; max-width: 100% !important; white-space: normal !important; overflow-wrap: normal; word-break: normal; }
/* Телефон, FINANCIAL: подпись «MUNICIPAL TAX» у Wix шириной 280 px — длинные переводы наезжали на соседнюю колонку */
html.m [id="m_comp-mjrs55vd4"] { width: 130px !important; }
/* страницы объектов: у Wix минимум 980 px, но правая колонка и подвал тянутся до ~1194 px — на окнах 768–1199 px
   они были обрезаны краем без прокрутки. Минимум как у остальных страниц (там 1176): узкое окно прокручивается вбок. */
html.d body.mga-prop-page { min-width: 1200px; }   /* класс — при сборке (без :has на всю страницу: Safari пересчитывает его при каждом изменении, п. 25) */

/* Подвал — последний блок страницы (этап 3d): у Wix фон последней секции страницы объекта выходит на 144 px ниже подвала
   (отрицательный отступ сетки), фон страницы — на всю высоту окна. Всё, что ниже конца сайта, не продлевает страницу. */
#SITE_CONTAINER, #m_SITE_CONTAINER { overflow-y: clip; }

/* Каталог: синяя плашка фильтров — подписи без переноса внутри слова на всех языках (этап 3d; «Фильтр/ы», «Зарезервирован/о») */
[id="comp-m357109i"], [id="m_comp-m357109i"] { width: max-content !important; }
[id="comp-m357109i"] *, [id="m_comp-m357109i"] *,
[id$="comp-m357109j2"] [data-testid="label"], [id$="comp-m357109j2"] [data-testid="groupLabel"],
[id$="comp-m35710ak1"] .wixui-dropdown__label, [id$="comp-m35710bl2"] .wixui-dropdown__label, [id$="comp-m35710cd2"] .wixui-dropdown__label { white-space: nowrap !important; overflow-wrap: normal !important; word-break: normal !important; }

/* Шапка (компьютер): «NEW DEVELOPMENT» и «GUIDES» — одной строкой на всех языках (у Wix блок 58 px: «ПУТЕВО/ДИТЕЛИ»; этап 3d) */
.tpl-d [id="comp-mcahk1pl"], .tpl-d [id="comp-mcahj56z"] { width: max-content !important; }
.tpl-d [id="comp-mcahk1pl"] *, .tpl-d [id="comp-mcahj56z"] * { white-space: nowrap !important; }

/* «Аренда» / «Продать» (этап 3d): тёмная шапка, как на остальных страницах (у Wix шапка этих страниц светлая — белое меню не видно),
   надпись «Раздел обновляется…» или карточки объектов (src/lib/pages.mjs soonPage) */
body.mga-soon-page :is(#SITE_HEADER, #m_SITE_HEADER, [id="comp-lzzla5c3"], [id="m_comp-lzzla5c3"]) [data-testid="colorUnderlay"] { background: rgb(var(--mga-c-p0)) !important; opacity: 1 !important; }
body.mga-soon-page :is(#SITE_HEADER, #m_SITE_HEADER) { background: rgb(var(--mga-c-p0)) !important; }
.mga-soon { grid-area: 1 / 1 / 2 / 2; justify-self: stretch; align-self: start; box-sizing: border-box; width: 100%; max-width: 1240px; margin: 0 auto !important; padding: 72px 24px 96px !important;
  display: flex; flex-direction: column; align-items: center; text-align: center; color: rgb(var(--mga-c-p0)); }
.mga-soon__line { display: block; width: 1px; height: 72px; background: rgb(var(--mga-c-a2)) !important; margin-bottom: 32px !important; }
.mga-soon__eyebrow { margin: 0 0 18px !important; font: 12px/1.4 wfont_23c8a5_1a322a5cad884a0680eaff71ee394052, wf_1a322a5cad884a0680eaff71e, orig_inter_medium, sans-serif; letter-spacing: .2em; text-transform: uppercase; }
.mga-soon__title { margin: 0 0 40px !important; max-width: 760px; font: 500 40px/1.25 wfont_71969c_1003ae486d154446b7b30255d2d63e14, wf_1003ae486d154446b7b30255d, orig_cormorant_garamond_medium, serif; overflow-wrap: normal; hyphens: manual; }
.mga-soon__btn { display: inline-flex; align-items: center; gap: 14px !important; padding: 15px 28px !important; border: 1px solid rgb(var(--mga-c-a2)) !important; color: rgb(var(--mga-c-p0)); text-decoration: none;
  font: 11px/1.4 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif; letter-spacing: .15em; transition: background .2s, color .2s; }
.mga-soon__btn:hover { background: rgb(var(--mga-c-p0)) !important; color: #fff !important; }
.mga-soon__grid { margin-top: 24px !important; width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px !important; text-align: start; }
@media (max-width: 1099px) { .mga-soon__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
html.m .mga-soon__grid, .mga-soon__grid:only-child { grid-template-columns: 1fr; }
html.m .mga-soon { padding: 48px 16px 64px !important; }
html.m .mga-soon__title { font-size: 28px; }
.mga-card { display: flex; flex-direction: column; background: #fff !important; color: rgb(var(--mga-c-p0)); text-decoration: none; box-shadow: 0 1px 4px rgba(0, 0, 0, .08); }
.mga-card__ph { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: #eee; }
.mga-card__ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mga-card__strip { display: flex; justify-content: space-between; padding: 6px 16px !important; background: rgb(var(--mga-c-p0)) !important; color: #fff; font: 10px/1.4 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.mga-card__body { display: flex; flex-direction: column; gap: 12px !important; padding: 18px 16px 24px !important; }
.mga-card__top { display: flex; justify-content: space-between; gap: 12px !important; align-items: baseline; }
.mga-card__city { color: rgb(var(--mga-c-a2)); font: 10px/1.4 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.mga-card__price { white-space: nowrap; color: rgb(var(--mga-c-a2)); font: 20px/1.2 wfont_71969c_1003ae486d154446b7b30255d2d63e14, wf_1003ae486d154446b7b30255d, orig_cormorant_garamond_medium, serif; }
.mga-card__title { font: 19px/1.3 wfont_71969c_1003ae486d154446b7b30255d2d63e14, wf_1003ae486d154446b7b30255d, orig_cormorant_garamond_medium, serif; }
.mga-card__status { font: italic 16px/1.3 wfont_71969c_1003ae486d154446b7b30255d2d63e14, wf_1003ae486d154446b7b30255d, orig_cormorant_garamond_medium, serif; }

/* Команда (главная, «Контакты»): должность полностью, без многоточия (этап 3d; у Wix — 2 строки и «…») */
:is([id$="comp-mdp22r7l"], [id$="comp-mdag7043"]) [data-hook="item-description"] { -webkit-line-clamp: unset !important; line-clamp: unset !important; overflow: visible !important; text-overflow: clip !important; display: block !important; }
:is([id$="comp-mdp22r7l"], [id$="comp-mdag7043"]) .info-element-text { padding-left: 12px !important; padding-right: 12px !important; }

/* «Мы видим то, чего нет в объявлениях» (главная): пункты карточки полностью, без «…» (этап 3d; длинные переводы не помещались в 7 строк) */
[id$="comp-mk67mgf7"] [data-hook="item-description"] { -webkit-line-clamp: unset !important; line-clamp: unset !important; overflow: visible !important; text-overflow: clip !important; }

/* Телефон, карточки агентов на странице объекта: полоска — перед «ТЕЛ./WHATSAPP», как у второй карточки (Vitaliia);
   у Wix в первой карточке она лежит поверх фото (отступ сверху 192 px) — этап 3d, решение владельцев */
html.m [data-mesh-id="m_comp-mjsne5kqinlineContent-gridContainer"] > [id="m_comp-mjsne5oc8"] { grid-area: 4 / 1 / 5 / 2 !important; margin: 0 0 3px 0 !important; left: 12px !important; align-self: start !important; }
html.m [data-mesh-id="m_comp-mjsne5kqinlineContent-gridContainer"] > [id="m_comp-mjsne5ob9"] { margin-top: 22px !important; }

/* Телефон, страница объекта: таблица «Расстояния до важных объектов» не заходит на карту (у Wix блок заканчивается на 95 px ниже
   своего края — отрицательный отступ — и длинные таблицы/«ПОСМОТРЕТЬ КАРТУ» оказывались под картой; этап 3d) */
html.m [data-mesh-id="m_comp-mjsaa93ninlineContent-gridContainer"] { margin-bottom: 16px !important; }
html.m [data-mesh-id="m_comp-mjsaa94w2inlineContent-wedge-4"] { height: 0 !important; }   /* «ПОСМОТРЕТЬ КАРТУ» — сразу под таблицей, без пустоты */

/* Телефон, объект: «ВАННЫЕ КОМНАТЫ» (99 px у Wix) упиралась в соседнюю «ПЛОЩАДЬ ЗАСТРОЙКИ» — подпись в пределах своей колонки */
html.m #m_comp-mjrqm7na2 { width: 80px !important; }
/* Телефон, объект: «VIEW MAP» у Wix лежит под картой (не виден); у нас — тоже не показываем: карта сразу под таблицей */
html.m [id="m_comp-mjsaa94x2"] { display: none !important; }
/* Телефон, объект: синяя карточка «Talk to Us» — логотип не в 110 px от верха (этап 3d: меньше пустоты) */
html.m [data-mesh-id="m_comp-mjsne5kainlineContent-gridContainer"] > [id="m_comp-mjsne5nd2"] { margin-top: 48px !important; }
/* Телефон, объект: под синим подвалом у Wix 33 px прозрачного отступа (серая полоса) — без него */
html.m [data-mesh-id="m_comp-mkk1tvieinlineContent-gridContainer"] > [id="m_comp-mjssp862"] { margin-bottom: 0 !important; }

/* Слова через дефис — неразрывно (src/lib/page.mjs noBreakCompounds; этап 3d) */
html .mga-nb, html.m .mga-nb.mga-nb.mga-nb.mga-nb.mga-nb { white-space: nowrap !important; }   /* сильнее правил сетки деталей телефона */
/* Телефон, объект: «Оснащение и удобства» — длинный свободный текст, на всю ширину сетки (без переноса посреди слова; этап 3d) */
html.m .mga-dgrid > .mga-ditem:has([id="m_comp-mjrs55va7"]) { grid-column: 1 / -1 !important; }

/* Каталог (компьютер): подзаголовок «Real estate on Costa Blanca» у Wix белым по светлому фону (виден только поисковикам) —
   так и оставляем только для поисковиков и экранного диктора, без «невидимого текста» на экране (этап 3d) */
html.d [id="comp-mk34hrr8"] { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; white-space: nowrap !important; }
/* Телефон, объект: статус («Зарезервировано», «Zarezerwowany») — у Wix блок 69 px; одной строкой (этап 3d) */
html.m [id="m_comp-mjrroyiq1"] { width: max-content !important; }

/* Телефон, главная: «Путеводители по Коста-Бланке» — текст целиком (у Wix блок-слайд 201 px обрезал длинные переводы: «…спросу на»)
   и строки курсива не наезжают друг на друга (межстрочный 14 px при шрифте 18 px) — этап 3d: блок-слайд по высоте текста, колонка не уходит под следующую */
html.m #m_comp-mcd6jjn5 { height: auto !important; min-height: 201px; }
html.m #m_comp-mcd6jjn5 [data-testid="slidesWrapper"], html.m #m_comp-mcd6jjnb { position: relative !important; height: auto !important; overflow: visible !important; }
html.m [data-mesh-id="m_comp-mcd2huh1inlineContent-gridContainer"] { margin-bottom: 0 !important; }
html.m [id="m_comp-mcd6jzuz"] p, html.m [id="m_comp-mcd6jzuz"] p * { line-height: 1.3 !important; }
/* Слайд-шоу Wix с одним слайдом («Путеводители», «Multilingualism», «Talk to us»): точки-переключатели вели на несуществующие
   слайды и на телефоне закрывали последнюю строку («Connectez-vous avec nous») — не показываем (этап 3d) */
:is([id$="comp-mcd6jjn5"], [id$="comp-mdaqwkms"], [id$="comp-mjsn08111"]) nav { display: none !important; }
/* Телефон, главная: название избранного объекта («Панорамная вилла на побережье») — переносом по словам, не за край экрана (этап 3d) */
html.m #m_comp-mk6ti9wk, html.m #m_comp-mk6ti9wk * { white-space: normal !important; }
html.m #m_comp-mk6ti9wk { width: 194px !important; } html.m #m_comp-mk6ti9wk h4 { text-align: center !important; }   /* блок стоит в 63 px от края: при 280 px выходил за экран; 194 px — по центру, в две строки */
html.m #m_comp-mk6ti9wk h4 { line-height: 1.15em !important; }
/* Телефон, каталог: статусы в строку не помещаются на русском/польском («Продано» за краем) — перенос на вторую строку (этап 3d) */
html.m [id="m_comp-m357109j2"] { width: calc(100% - 16px) !important; }
html.m [id="m_comp-m357109j2"] [role="radiogroup"], html.m [id="m_comp-m357109j2"] [role="radiogroup"] > div { flex-wrap: wrap !important; row-gap: 8px; }

/* Компьютер, объект: колонки OVERVIEW / INTERIOR / EXTERIOR — высота по содержимому (у Wix минимум 867 / 760 px: при коротком описании
   или без блока FINANCIAL оставалось 200–380 px пустоты; этап 3d) */
html.d :is([data-mesh-id="comp-mjrqm7n7inlineContent-gridContainer"], [data-mesh-id="comp-mjrs55u32inlineContent-gridContainer"], [data-mesh-id="comp-mjrs55urinlineContent-gridContainer"]) { min-height: 0 !important; }
html.m .mga-dgrid > .mga-ditem:has([id="m_comp-mjrs55v61"]) { grid-column: 1 / -1 !important; }   /* длинное значение парковки — на всю ширину */

/* ---------- Этап 3e ---------- */
/* Полоска-индикатор (site.js indicators): одна полоса едет под пункт, на который навели; свои полоски пунктов Wix — не показываем */
html.d .mga-ind-off { opacity: 0 !important; visibility: hidden !important; }
html.d .mga-ind { transition: translate .45s cubic-bezier(.645, .045, .355, 1), width .45s cubic-bezier(.645, .045, .355, 1) !important; }

/* Телефон: вкладки галереи объекта (ALL PHOTOS & VIDEOS / VIDEOS / FLOOR PLAN / OUTSIDE AREA) — все видны, в две строки по центру
   (у Wix строка шире экрана и прокручивается: часть вкладок обрезана слева или справа) */
html.m .wixui-tabs__menu-container [role="tablist"] { flex-wrap: wrap !important; justify-content: flex-start !important; overflow: visible !important; row-gap: 2px; }   /* этап 5e-2: по левому краю */
html.m .wixui-tabs__menu-container { height: auto !important; }
html.m .wixui-tabs__scroll-button { display: none !important; }

/* Телефон, карточки «Talk to Us» на странице объекта: линии тонкие (1 px, золото сайта), выровнены по тексту, с воздухом от текста.
   Под «ПРОФЕССИОНАЛЫ В НЕДВИЖИМОСТИ» — одна линия (у Wix две толстые 4 px, вплотную к тексту и от края карточки);
   в карточках агентов — между должностью и телефоном, всегда видна. На компьютере этих линий нет (как у Wix). */
html.m [id="m_comp-mjsne5nh2"] { display: none !important; }
html.m :is([id="m_comp-mjsne5ni9"], [id="m_comp-mjsne5oc8"], [id="m_comp-mjsne5ot8"]) { opacity: 1 !important; visibility: visible !important; width: 56px !important; height: 1px !important; overflow: hidden !important; transition: none !important; }
html.m :is([id="m_comp-mjsne5ni9"], [id="m_comp-mjsne5oc8"], [id="m_comp-mjsne5ot8"]) > * { display: none !important; }
html.m :is([id="m_comp-mjsne5ni9"], [id="m_comp-mjsne5oc8"], [id="m_comp-mjsne5ot8"]) { border: 0 !important; background: rgb(var(--mga-c-a2)) !important; }
html.m [id="m_comp-mjsne5ni9"] { translate: 28px 16px; }
html.m [data-mesh-id="m_comp-mjsne5kqinlineContent-gridContainer"] > [id="m_comp-mjsne5oc8"] { left: 27px !important; }   /* сильнее правила этапа 3d */
html.m [id="m_comp-mjsne5ot8"] { left: 26px !important; }

/* Телефон, каталог (Buy): подзаголовок и вертикальная линия первого экрана — как на компьютере (src/lib/pages.mjs bindBuy) */
html.m .mga-hero-sub { margin: 10px 0 0 !important; text-align: center; color: #fff; font: 23px/1.2 wfont_56b966_7a22d3e931c74cdcb0d161e0f2a70c91, wf_7a22d3e931c74cdcb0d161e0f, orig_cormorant_garamond_italic, serif; text-shadow: rgba(0, 0, 0, .4) 0 4px 5px; }
html.m .mga-hero-line { display: block; width: 1px; height: 110px; margin: 30px auto 0 !important; background: rgba(var(--mga-c-b0),.68) !important; }

/* «Connect with us» / «Свяжитесь с нами» — ссылка (src/lib/bind.mjs ctaLast): к форме заявки на странице объекта, с главной — «Контакты» */
html .mga-cta { color: inherit !important; text-decoration: underline !important; text-underline-offset: 3px; cursor: pointer; }
/* цель прокрутки: форма — не под закреплённой шапкой */
[id="comp-mjsne5mg"] { scroll-margin-top: 150px; } [id="m_comp-mjsne5mg"] { scroll-margin-top: 80px; }

/* Телефон, объект: над «Interested in this Property? / Ответ вы получите через 10 минут» — 83 px пустоты (слайд «Путеводители»
   фиксированной высоты 154 px и отступ 52 px под текстом у Wix) — слайд по высоте текста, отступ меньше (этап 3e) */
html.m #m_comp-mjsn08111 { height: auto !important; min-height: 0 !important; }
html.m #m_comp-mjsn08111 [data-testid="slidesWrapper"], html.m #m_comp-mjsn08184 { position: relative !important; height: auto !important; overflow: visible !important; }
html.m [data-mesh-id="m_comp-mjsn08184inlineContent-gridContainer"] > [id="m_comp-mjsn081b"] { margin-bottom: 14px !important; }

/* «Свяжитесь с нами» под текстом (главная: путеводители, команда; объект): отступ от текста выше — как между абзацами (этап 3f) */
html p.mga-cta-p { margin-top: .9em !important; }

/* Отзывы Google (этап 3f): под блоком «Google Reviews / 5-Star Review» — ссылка «Все отзывы в Google →» на карточку агентства */
.mga-allrev-host, html [id="comp-mmaov49t1"], html [id="m_comp-mmaov49t1"] { overflow: visible !important; z-index: 2; }
html .mga-allrev { position: absolute; z-index: 3; left: 0; right: 0; top: calc(100% + 6px); text-align: center; font: 13px/18px wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif;
  letter-spacing: .02em; color: rgb(var(--mga-c-p0)) !important; text-decoration: underline !important; text-underline-offset: 3px; text-decoration-color: rgba(var(--mga-c-p0),.35) !important; white-space: nowrap; }
html .mga-allrev:hover { text-decoration-color: currentColor !important; }
html.m .mga-allrev { top: calc(100% + 2px); font-size: 12px; }
html.m [id="m_comp-mmap0rap"] { margin-top: 26px !important; }   /* телефон: место под ссылкой (лента отзывов ниже) */

/* «Мы видим то, чего нет в объявлениях»: заголовок по центру свободной части (site.js centerSide) — строки тоже по центру;
   лента карточек едет непрерывно, карточка у края окна ленты обрезана — край плавно растворяется, текст не «прилипает» к краю */
/* п. 13 (02.11): заголовок — как на Wix (слева, без центровки); site.js centerSide на компьютере его не двигает */

/* «Команда [MGA]» (site.js teamTitle): слово перед логотипом — в одну строку */
html:not([lang^="en"]) [id$="comp-mdaqoxbc"] { overflow: visible !important; }
html:not([lang^="en"]) [id$="comp-mdaqoxbc"] :is(p, h1, h2, h3, h4, h5, h6) { white-space: nowrap !important; }

/* Объект, блок OVERVIEW (этап 3f): плашки ОБЗОР / ВИДЕО / СМОТРЕТЬ ГАЛЕРЕЮ в один ряд — как кнопка галереи Wix
   (рамка #988225, фон почти прозрачный, иконка 20 px, подпись Inter SemiBold с разрядкой); одна высота, ширина — по подписи */
/* блок под карточкой агента — как у Wix (01.11): подпись OVERVIEW, под ней VIDEO / VIEW GALLERY 187 × 45, промежуток 24 px */
:root { --mga-ov-ink: rgb(var(--mga-c-p2)); --mga-ov-btn-ink: rgb(82, 82, 82); --mga-ov-border: rgb(var(--mga-c-a1)); --mga-ov-hover: rgba(var(--mga-c-a1),.08);
  --mga-ov-cap-size: 10px; --mga-ov-btn-size: 12px; --mga-ov-icon: 20px; --mga-ov-w: 187px; --mga-ov-h: 45px; --mga-ov-gap: 24px; }
html .mga-ovcap-host { width: auto !important; height: auto !important; }
html body .mga-ovcap { margin: 0 !important; padding: 0 0 0 6px !important; font: var(--mga-ov-cap-size)/21px wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif !important; letter-spacing: .15em; color: var(--mga-ov-ink) !important; text-transform: uppercase; white-space: nowrap; }
html .mga-ovrow-host { width: auto !important; height: var(--mga-ov-h) !important; }
.mga-ovrow { display: flex; gap: var(--mga-ov-gap); height: 100%; }
html body .mga-plaque { border: 1px solid var(--mga-ov-border) !important; }
.mga-plaque { flex: 0 0 auto; min-width: var(--mga-ov-w); display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: var(--mga-ov-h); padding: 0 24px; box-sizing: border-box;
  color: var(--mga-ov-btn-ink) !important; text-decoration: none !important; background: transparent; transition: background-color .2s ease; }
.mga-plaque:hover { background: var(--mga-ov-hover); }
.mga-plaque__icon { display: inline-flex; width: var(--mga-ov-icon); height: var(--mga-ov-icon); }
.mga-plaque__icon svg { width: var(--mga-ov-icon); height: var(--mga-ov-icon); }
.mga-plaque__icon svg path { fill: var(--mga-ov-btn-ink); }
.mga-plaque__label { font: var(--mga-ov-btn-size)/1 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif; letter-spacing: .15em; text-transform: uppercase; white-space: nowrap; }
.mga-ov--m { margin-top: 22px; }
.mga-ov--m .mga-ovcap { margin-bottom: 4px !important; padding-left: 0 !important; font-size: 8px !important; }
.mga-ovrow--m { height: auto; gap: 10px; }
.mga-ovrow--m .mga-plaque { flex: 1 1 auto; min-width: 0; height: 36px; padding: 0 8px; gap: 6px; }   /* ширина — по подписи: «СМОТРЕТЬ ГАЛЕРЕЮ» в одну строку (02.11) */
.mga-ovrow--m .mga-plaque__icon, .mga-ovrow--m .mga-plaque__icon svg { width: 15px; height: 15px; }
.mga-ovrow--m .mga-plaque__label { font-size: 9px; line-height: 1; letter-spacing: .1em; white-space: nowrap; }

/* Вкладка «VIDEOS» объекта (этап 3f): браузер не дал звук — кнопка «🔇 Включить звук» в углу видео (site.js playSound).
   Правила галереи Wix для кнопок (размер, скругление, позиция стрелок) сброшены */
html body .mga-sound { all: unset !important; box-sizing: border-box !important; position: absolute !important; right: 10px !important; bottom: 10px !important; left: auto !important; top: auto !important;
  z-index: 5 !important; display: inline-block !important; width: auto !important; height: auto !important; min-width: 0 !important; transform: none !important; margin: 0 !important;
  padding: 7px 12px !important; border-radius: 3px !important; background: rgba(var(--mga-c-p0),.86) !important; color: #fff !important; opacity: 1 !important; box-shadow: none !important;
  font: 12px/16px wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif !important; letter-spacing: .03em !important; white-space: nowrap !important; cursor: pointer !important; pointer-events: auto !important; }
html body .mga-sound[hidden] { display: none !important; }
html.m body .mga-sound { right: 6px !important; bottom: 6px !important; padding: 5px 8px !important; font-size: 10px !important; line-height: 13px !important; }

/* Переключатель языков на тонированной тёмно-синей плашке (этап 3f, срочная правка): на светлой / прозрачной шапке
   (страницы объектов, «Аренда», «Продать», меню телефона) кнопка и список всегда читаемы — белый текст на тёмном.
   Текст пунктов — под текстом кнопки (оба с отступом 7 px), список — во всю ширину кнопки, сразу под ней. */
/* переключатель языка (этап 5g, C10): без плашки — тонкий глобус и код цветом шапки; список — светлый, тонкая рамка, лёгкая тень */
html body .mga-lang .mga-lang__btn { background: none !important; color: inherit !important; padding: 2px 0 !important; gap: 6px; }
html body .mga-lang .mga-lang__list { top: calc(100% + 8px) !important; left: -12px !important; width: auto !important; min-width: 72px !important; padding: 6px 0 !important; background: #fff !important; border: 1px solid rgba(var(--mga-c-p0),.14); box-shadow: 0 6px 18px rgba(var(--mga-c-p6),.10) !important; }
html body .mga-lang .mga-lang__item, html body .mga-lang .mga-lang__item:visited { color: rgb(var(--mga-c-p0)) !important; padding: 6px 16px !important; }
html body .mga-lang .mga-lang__item:hover, html body .mga-lang .mga-lang__item:focus-visible { background: rgba(var(--mga-c-p0),.06) !important; color: rgb(var(--mga-c-p0)) !important; }
html body .mga-lang--m .mga-lang__btn { padding: 3px 0 !important; }
.mga-lang__globe { flex: 0 0 auto; }
/* Меню телефона на «Аренда» / «Продать»: у шаблона Wix фон меню тёмно-синий, пункты тёмные — не читались (этап 3f). Фон — как на остальных страницах */
html.m #m_MENU_AS_CONTAINER [data-testid="colorUnderlay"] { background-color: rgb(var(--mga-c-b0)) !important; }

/* Новые блоки из админки (этап 5, src/lib/blocks.mjs): «Текст», «Фото и текст», «Широкое фото» — шрифты и цвета сайта,
   оформление фиксированное. Встают своей секцией в сетку страницы (компьютер и телефон). */
html body .mga-blk { position: relative !important; width: 100% !important; justify-self: stretch !important; box-sizing: border-box !important; background: #fff !important; color: rgb(var(--mga-c-p0)) !important; }
html body .mga-blk__in { max-width: 1180px !important; margin: 0 auto !important; padding: 96px 60px !important; box-sizing: border-box !important; }
html body .mga-blk__eyebrow { margin: 0 0 14px !important; font: 12px/1.4 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif !important; letter-spacing: .2em !important; text-transform: uppercase !important; color: #525252 !important; }
html body .mga-blk__title { margin: 0 !important; font: 46px/1.12 wfont_56b966_1259f15a41e643598eb8618515cb564f, wf_1259f15a41e643598eb861851, orig_cormorant_garamond_medium, serif !important; font-weight: 400 !important; color: rgb(var(--mga-c-p0)) !important; }
html body .mga-blk__line { display: block !important; width: 56px !important; height: 1px !important; margin: 26px 0 !important; background: rgb(var(--mga-c-a2)) !important; }
html body .mga-blk__text { font: 16px/1.75 wfont_23c8a5_0892591a57564631839e4b86bf1a1c75, wf_0892591a57564631839e4b86b, orig_inter_light, sans-serif !important; color: #3d3d3d !important; max-width: 720px !important; }
html body .mga-blk__text p { margin: 0 0 1em !important; }
html body .mga-blk__text a { color: inherit !important; text-decoration: underline !important; text-underline-offset: 3px !important; }
html body .mga-blk__btn { display: inline-flex !important; align-items: center !important; gap: 14px !important; margin-top: 26px !important; padding: 15px 30px !important; border: 1px solid rgb(var(--mga-c-a1)) !important; color: rgb(var(--mga-c-t1)) !important; text-decoration: none !important; font: 12px/1 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif !important; letter-spacing: .15em !important; text-transform: uppercase !important; transition: background .2s ease !important; }
html body .mga-blk__btn:hover { background: rgba(var(--mga-c-a1),.08) !important; }
html body .mga-blk__btn--light { color: #fff !important; border-color: rgba(255, 255, 255, .7) !important; }
html body .mga-blk--text { text-align: center !important; }
html body .mga-blk--text .mga-blk__line { margin: 26px auto !important; }
html body .mga-blk--text .mga-blk__text { margin: 0 auto !important; }
html body .mga-blk--dark { background: rgb(var(--mga-c-p0)) !important; }
html body .mga-blk--dark .mga-blk__title, html body .mga-blk--dark .mga-blk__text { color: #fff !important; }
html body .mga-blk--dark .mga-blk__eyebrow { color: rgba(255, 255, 255, .7) !important; }
html body .mga-blk--split .mga-blk__in { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 72px !important; align-items: center !important; }
html body .mga-blk--right .mga-blk__ph { order: 2 !important; }
html body .mga-blk__ph img { display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 4 / 3 !important; object-fit: cover !important; }
html body .mga-blk--banner { min-height: 560px !important; display: flex !important; align-items: center !important; color: #fff !important; background: rgb(var(--mga-c-p0)) !important; overflow: hidden !important; text-align: center !important; }
html body .mga-blk--banner .mga-blk__bg, html body .mga-blk--banner .mga-blk__bg img { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; object-fit: cover !important; }
html body .mga-blk--banner .mga-blk__bg::after { content: '' !important; position: absolute !important; inset: 0 !important; background: rgba(var(--mga-c-p6),.38) !important; }
html body .mga-blk--banner .mga-blk__in { position: relative !important; width: 100% !important; }
html body .mga-blk--banner .mga-blk__title { color: #fff !important; font-size: 56px !important; text-shadow: rgba(0, 0, 0, .4) 0 4px 5px !important; }
html body .mga-blk__sub { margin: 16px 0 0 !important; font: italic 26px/1.3 wfont_56b966_7a22d3e931c74cdcb0d161e0f2a70c91, wf_7a22d3e931c74cdcb0d161e0f, orig_cormorant_garamond_italic, serif !important; color: #fff !important; }

/* телефон: страница 320 px */
html.m body .mga-blk__in { padding: 48px 20px !important; }
html.m body .mga-blk__title { font-size: 28px !important; }
html.m body .mga-blk__text { font-size: 12px !important; line-height: 1.7 !important; }
html.m body .mga-blk__eyebrow { font-size: 9px !important; }
html.m body .mga-blk__btn { padding: 11px 18px !important; font-size: 9px !important; margin-top: 18px !important; }
html.m body .mga-blk--split .mga-blk__in { grid-template-columns: 1fr !important; gap: 24px !important; }
html.m body .mga-blk--right .mga-blk__ph { order: 0 !important; }
html.m body .mga-blk--banner { min-height: 300px !important; }
html.m body .mga-blk--banner .mga-blk__title { font-size: 30px !important; }
html.m body .mga-blk__sub { font-size: 16px !important; }

/* ---------- Закреплённая шапка (этап 5b): site.js stickyHeader ----------
   Тон стекла и цвет текста — из «Оформления» (design.css: --mga-c-p0 основной, --mga-c-b0 фон); без него — исходные цвета. */
:root { --mga-hdr-dark: var(--mga-c-p0, 0, 35, 73); --mga-hdr-light: var(--mga-c-b0, 242, 242, 240); --mga-hdr-ink: var(--mga-c-p0, 0, 35, 73); --mga-hdr-text: var(--mga-c-p0, 0, 35, 73); }   /* текст шапки на светлом — как на Wix (п. 13: правила цвета — только для названных блоков) */
html body .mga-fix { position: fixed !important; left: 0 !important; right: 0 !important; width: 100% !important; margin: 0 !important; z-index: 900 !important; transform: none !important; }
html body .mga-fix--nav { z-index: 899 !important; }
/* стекло — отдельным слоем под содержимым шапки: размытие на самой шапке сделало бы её «рамкой» для меню телефона и списка языков */
.mga-fix::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: 0;
  background-color: rgba(var(--mga-hdr-dark), .78); -webkit-backdrop-filter: blur(24px) saturate(1.4); backdrop-filter: blur(24px) saturate(1.4);
  transition: opacity .35s ease, background-color .35s ease; }
.mga-fix.mga-on-light::before { background-color: rgba(var(--mga-hdr-light), .78); }
.mga-fix--nav.mga-on-light::before { background-color: rgba(var(--mga-hdr-light), .92); }
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .mga-fix::before { background-color: rgba(var(--mga-hdr-dark), .94); }
  .mga-fix.mga-on-light::before { background-color: rgba(var(--mga-hdr-light), .95); }
}
html body .mga-fix.mga-glass::before { opacity: 1; }
/* свой фон и рамки шапки Wix (синяя полоса, белая строка разделов с серой рамкой) при стекле не видны — без краёв плашки */
.mga-fix [id^="bgLayers_"], .mga-fix [id^="m_bgLayers_"] { transition: opacity .35s ease; }
html body .mga-fix.mga-glass [id^="bgLayers_"], html body .mga-fix.mga-glass [id^="m_bgLayers_"] { opacity: 0 !important; }
/* меню телефона лежит внутри шапки Wix: его фон, цвета и подписи — свои, правила шапки их не касаются */
html body .mga-fix [id$="MENU_AS_CONTAINER"] [id*="bgLayers_"] { opacity: 1 !important; }
/* светлое стекло: текст, логотип и значки — основным цветом (тёмно-синим); выбор языка — своя тёмная плашка, как везде */
.mga-fix--main :is(p, span, a, h1, h2, h3, h4, h5, h6, li, button, svg, path, polygon, rect, circle, ellipse, g, .i2Blxa):not(.mga-lang__list, .mga-lang__list *, [id$="MENU_AS_CONTAINER"] *) { transition: color .35s ease, fill .35s ease, stroke .35s ease, background-color .35s ease; }
html body .mga-fix--main.mga-on-light :is(p, span, a, h1, h2, h3, h4, h5, h6, li, button):not(.mga-lang__list, .mga-lang__list *, [id$="MENU_AS_CONTAINER"] *) { color: rgb(var(--mga-hdr-text)) !important; }
html body .mga-fix--main.mga-on-light .wixui-vector-image:not([id$="MENU_AS_CONTAINER"] *) svg :is(path, polygon, rect, circle, ellipse):not([fill="none"]) { fill: rgb(var(--mga-hdr-ink)) !important; }
html body .mga-fix--main.mga-on-light .i2Blxa { background-color: rgb(var(--mga-hdr-ink)) !important; }
/* строка разделов объекта: полоска под разделом на экране едет плавно (и на телефоне) */
html .mga-spy { transition: translate .45s cubic-bezier(.645, .045, .355, 1), width .45s cubic-bezier(.645, .045, .355, 1) !important; }
/* вверху страницы шапка прозрачная поверх видео/фото (как было): у подписей и логотипа — мягкая тёмная тень, чтобы светлые
   кадры (море, блики) не «съедали» белый текст; плашки нет */
html body .mga-fix--main:not(.mga-glass) :is(p, span, a, h1, h2, h3, h4, h5, h6, li):not(.mga-lang, .mga-lang *, [id$="MENU_AS_CONTAINER"] *) { text-shadow: 0 0 10px rgba(var(--mga-c-p6),.6), 0 0 3px rgba(var(--mga-c-p6),.55); }
html body .mga-fix--main:not(.mga-glass) .wixui-vector-image:not([id$="MENU_AS_CONTAINER"] *) svg, html body .mga-fix--main:not(.mga-glass) .i2Blxa { filter: drop-shadow(0 0 6px rgba(var(--mga-c-p6),.55)); }
/* … и мягкое затемнение сверху без краёв (только над видео/фото и только пока шапка прозрачная) */
.mga-fix--main::after { content: ""; position: absolute; left: 0; right: 0; top: 0; height: calc(100% + 70px); z-index: -2; pointer-events: none; opacity: 0;
  background: linear-gradient(to bottom, rgba(var(--mga-hdr-dark), .6), rgba(var(--mga-hdr-dark), .36) 55%, rgba(var(--mga-hdr-dark), 0)); transition: opacity .35s ease; }
html body .mga-fix--main.mga-over-media:not(.mga-glass)::after { opacity: 1; }

/* ---------- Этап 5e-2 ---------- */
/* «Property Details» объекта — своя сетка (src/lib/details.mjs): разделы друг под другом, пункты — 3 колонки на широком экране,
   2 на ноутбуке / планшете, 1 на телефоне; длинные значения переносятся в своей ячейке; значение крупно, подробность мелко */
html .mga-pd-host { height: auto !important; min-height: 0 !important; }
html .mga-pd-host > .Ak0vpt { display: block !important; height: auto !important; min-height: 0 !important; }
html .mga-pd-host > [id^="bgLayers"], html .mga-pd-host > [id^="m_bgLayers"] { display: none; }
html body .mga-pd { box-sizing: border-box; width: 100%; padding: 28px 20px 40px !important; color: rgb(var(--mga-c-p0)); }   /* раздел Wix — от 30 px: текст с 50 px (--mga-col) */
html body .mga-pd { background: #fff !important; }   /* у раздела Wix фон — тёмная полоса «PROPERTY DETAILS» */
.mga-pd__sec + .mga-pd__sec { margin-top: 44px; }
html body .mga-pd__title { margin: 0 0 26px; padding: 0; font: 400 25px/1.3 wfont_56b966_1259f15a41e643598eb8618515cb564f, wf_1259f15a41e643598eb861851, serif; letter-spacing: -.25px; color: rgb(var(--mga-c-p4)); }
.mga-pd__title > span { display: inline-block; padding-bottom: 10px; border-bottom: 2px solid rgb(var(--mga-c-a1)); }   /* подчёркивание — по длине заголовка */
.mga-pd__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 40px; row-gap: 26px; max-width: 1240px; }
@media (max-width: 1279px) { html.d .mga-pd__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1280px) { html.d .mga-pd__item--row { grid-column-start: 1; } }
html.m body .mga-pd { padding: 22px 20px 30px !important; }
html.m .mga-pd__grid { grid-template-columns: minmax(0, 1fr); row-gap: 20px; }
html.m .mga-pd__sec + .mga-pd__sec { margin-top: 34px; }
html.m body .mga-pd__title { font-size: 22px; margin-bottom: 20px; }
.mga-pd__item { min-width: 0; }
.mga-pd__label { margin: 0 0 7px; font: 400 10px/14px wfont_23c8a5_1a322a5cad884a0680eaff71ee394052, wf_1a322a5cad884a0680eaff71e, sans-serif; letter-spacing: 1px; color: rgb(134, 134, 133); text-transform: uppercase; }
.mga-pd__body { display: grid; grid-template-columns: 22px minmax(0, 1fr); column-gap: 12px; align-items: start; }
.mga-pd__icon { display: flex; width: 22px; height: 22px; color: var(--mga-icon); }
.mga-pd__icon img { width: 22px; height: 22px; object-fit: contain; }
.mga-pd__icon svg { width: 22px; height: 22px; }
.mga-pd__text { min-width: 0; padding-top: 1px; }
.mga-pd__value { font: 400 17px/1.3 "palatino linotype", serif; letter-spacing: .03em; color: rgb(var(--mga-c-p0)); overflow-wrap: break-word; }
.mga-pd__detail { margin-top: 5px; font: 400 13px/1.45 "palatino linotype", serif; color: rgb(95, 104, 117); overflow-wrap: break-word; }

/* Строка разделов объекта (НАЗАД · ОБЗОР · ПОДРОБНОСТИ · ФОТО И ВИДЕО · РАСПОЛОЖЕНИЕ) — своя разметка (src/lib/property.mjs):
   все пункты одним шрифтом, размером и разрядкой, в одну строку; не помещается — строка прокручивается, шрифт не уменьшается.
   Левый край — по общей колонке страницы (--mga-col: 50 px компьютер, 20 px телефон). */
html.d { --mga-col: 50px; }
html.m { --mga-col: 20px; }
html .mga-sub-host > .Ak0vpt, html .mga-sub-host { display: block !important; }
html .mga-sub-host > .Ak0vpt { height: 100% !important; }
.mga-sub { display: flex; align-items: stretch; height: 100%; min-height: 48px; box-sizing: border-box; width: 100%; background: #fff; border-bottom: 1px solid rgba(var(--mga-c-p0),.08);
  font: 400 10px/1 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif; letter-spacing: 1.5px; text-transform: uppercase; }
html.m .mga-sub { min-height: 26px; font-size: 8px; letter-spacing: 1.2px; }   /* 01.11 (В2): высота как у мобильного Wix — 26 (≈ 32 px на экране) */
html body .mga-sub a { text-decoration: none !important; white-space: nowrap; }
/* BACK (01.11, Б1/В2) — как у Wix: ячейка 10vw, тонкая стрелка Wix (контур 0,45 px) в поле 30×30 с 34,7 px, подпись через 8 px;
   еле видная серая черта по правому краю ячейки (Wix: 2 px rgb(228, 228, 226)); телефон — стрелка 16×16 с 13 px, черта 1 px */
:root { --mga-sub-divider: rgb(228, 228, 226); --mga-sub-ink: rgb(var(--mga-c-p2)); }
html body .mga-sub__back { flex: 0 0 10vw; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: flex-start; gap: 8px; padding: 0 0 0 34.7px !important; margin: 0 !important; color: var(--mga-sub-ink) !important; border-right: 2px solid var(--mga-sub-divider); }
html.m body .mga-sub__back { flex: 0 0 auto; gap: 8px; padding: 0 11px 0 13px !important; border-right: 1px solid var(--mga-sub-divider); }
.mga-sub__back svg { width: 30px; height: 30px; flex: 0 0 auto; transform: rotate(180deg); }
html.m .mga-sub__back svg { width: 16px; height: 16px; }
html body .mga-sub__list { position: relative; flex: 1 1 auto; min-width: 0; display: flex; align-items: center; gap: 41px; margin: 0 !important; padding: 0 var(--mga-col) 0 37px !important; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; }
html.m body .mga-sub__list { gap: 22px; padding-left: 7.5px !important; }
/* этап 5g (A2): затухание краёв прокручиваемой строки — отдельными слоями без нажатий, а не mask-image: в iOS Safari маска
   на прокручиваемой строке внутри закреплённой шапки «съедает» нажатия на пункты разделов */
html.m .mga-sub { position: relative; }
html.m .mga-sub::after { content: ''; position: absolute; top: 0; right: 0; bottom: 1px; width: 18px; background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff); pointer-events: none; z-index: 2; }
.mga-sub__a, .mga-sub__back { touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
/* фон закреплённой шапки не перехватывает нажатия (прозрачные слои Wix над соседней строкой разделов) */
html .mga-fix > [id^="bgLayers"], html .mga-fix > [id^="m_bgLayers"], html .mga-fix [data-testid="colorUnderlay"] { pointer-events: none !important; }
.mga-sub__list::-webkit-scrollbar { display: none; }
.mga-sub__a { position: relative; display: inline-flex; align-items: center; height: 100%; color: var(--mga-sub-ink) !important; }   /* цвет букв один для всех пунктов (C1) */
html body .mga-sub__bar { position: absolute !important; left: 0 !important; top: auto !important; bottom: 0 !important; height: var(--mga-sub-bar-h) !important; width: 0; margin: 0 !important; background: var(--mga-ul-active) !important; transition: translate var(--mga-ul-dur) var(--mga-ul-ease), width var(--mga-ul-dur) var(--mga-ul-ease); pointer-events: none; }

/* «Расположение» объекта — своя разметка (src/lib/location.mjs): адрес (публичное место), «VIEW MAP» читаемого размера,
   KEY DISTANCES — строки одной сетки: значок категории, подпись и название, значок способа (машина / пешком) в одной колонке,
   время и расстояние — в своих колонках. Переносы — по словам и с балансом строк, одно выравнивание (по левому краю). */
html .mga-loc-host { display: block !important; height: auto !important; min-height: 0 !important; }
html body .mga-loc { box-sizing: border-box; margin: 0 0 0 var(--mga-col); width: calc(50vw - 45px - var(--mga-col) - 48px); padding: 0 0 8px; color: rgb(var(--mga-c-p0)); }   /* карта Wix — от 50vw − 45 px */
html.m body .mga-loc { width: calc(100% - 2 * var(--mga-col)); }
.mga-loc__head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
html body .mga-loc__label { margin: 0; font: 400 12px/16.8px wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, sans-serif; letter-spacing: 1.2px; color: rgb(80, 80, 80); text-transform: uppercase; white-space: nowrap; }
html body .mga-loc__map { display: inline-flex; align-items: center; gap: 6px; font: 400 12px/16.8px wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, sans-serif; letter-spacing: 1.2px; color: rgb(var(--mga-c-p0)) !important; text-decoration: underline !important; text-underline-offset: 3px; white-space: nowrap; }
.mga-loc__map svg { width: 16px; height: 16px; color: rgb(var(--mga-c-a1)); }
html body .mga-loc__addr { margin: 14px 0 22px; font: 400 21px/1.35 "palatino linotype", serif; color: rgb(var(--mga-c-p0)); text-align: left; text-wrap: balance; }
html body .mga-loc__line { margin: 0 0 24px; border: 0; border-top: 1px solid rgba(var(--mga-c-p0),.14); height: 0; }
.mga-loc__head--kd { margin-bottom: 20px; }
html.m .mga-loc__dl { display: none; }   /* телефон: заголовок колонки не помещается рядом с подписью — единицы есть в значениях */
html.m body .mga-loc__head--kd .mga-loc__label { white-space: normal; text-wrap: balance; }
html body .mga-loc__dl { font: 400 10px/14px wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, sans-serif; letter-spacing: 1.2px; color: rgb(80, 80, 80); white-space: nowrap; }
.mga-loc__rows { display: grid; grid-template-columns: 30px minmax(0, 1fr) 20px max-content max-content; column-gap: 14px; row-gap: 22px; align-items: center; }
.mga-loc__row { display: contents; }
.mga-loc__cat { display: flex; width: 30px; height: 30px; color: var(--mga-icon); }
.mga-loc__cat svg { width: 30px; height: 30px; }
.mga-loc__name { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.mga-loc__small { font: 400 9px/12px wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, sans-serif; letter-spacing: 1.5px; color: rgb(134, 134, 133); text-transform: uppercase; }
.mga-loc__nm { font: 400 18px/1.25 "palatino linotype", serif; color: rgb(var(--mga-c-p4)); text-wrap: balance; }
.mga-loc__mode { display: flex; justify-content: center; width: 20px; height: 20px; color: var(--mga-icon); }
.mga-loc__mode-i { width: 20px; height: 20px; }
.mga-loc__min, .mga-loc__km { font: 400 16px/1.3 "palatino linotype", serif; color: rgb(var(--mga-c-p0)); white-space: nowrap; text-align: right; }
.mga-loc__km { min-width: 64px; }
html.m .mga-loc__addr { font-size: 17px; margin: 10px 0 16px; }
html.m .mga-loc__rows { grid-template-columns: 24px minmax(0, 1fr) 16px max-content max-content; column-gap: 8px; row-gap: 16px; }
html.m .mga-loc__cat, html.m .mga-loc__cat svg { width: 24px; height: 24px; }
html.m .mga-loc__mode, html.m .mga-loc__mode-i { width: 16px; height: 16px; }
html.m .mga-loc__nm { font-size: 14px; }
html.m .mga-loc__min, html.m .mga-loc__km { font-size: 12px; }
html.m .mga-loc__km { min-width: 44px; }
html.m body .mga-loc__label, html.m body .mga-loc__map { font-size: 10px; letter-spacing: 1px; }

/* Общая колонка (этап 5e-2, п. 15): подписи «PRICE» и «DESCRIPTION» с описанием у Wix — на 3–4 px правее остальных блоков */
html.d [id="comp-mjrqm7n84"], html.d [id="comp-mjrqm7n9"], html.d [id="comp-mjsau8lb"] { translate: -3px 0; }
html.d [id="comp-mjrroyjb1"] { translate: -4px 0; }

/* Переносы по всему сайту (этап 5e-2, п. 10): заголовки и короткие подписи — сбалансированными строками (не «длинная + одно слово»),
   абзацы — без одинокого слова в последней строке. Браузеры без поддержки — как раньше. */
html body h1, html body h2, html body h3, html body h4, html body h5, html body h6, html body .wixui-button__label { text-wrap: balance; }
html body p, html body li { text-wrap: pretty; }
/* телефон: «COSTA BLANCA AREA GUIDES» (главная) и «Filters» (каталог) у Wix на 3 px правее своей колонки */
html.m [id="m_comp-mcd6jzuz"], html.m [id="m_comp-m357109i"] { translate: -3px 0; }
/* команда (этап 5g, C6): своя сетка — 5 карточек ровно по ширине блока, без полосок; телефон — лента со свайпом */
html body .mga-team-host { height: auto !important; min-height: 0 !important; }
.mga-team { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 17px; width: 100%; }
.mga-team__c { margin: 0; display: flex; flex-direction: column; }
.mga-team__c img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block; background: rgb(var(--mga-c-p4)); }
.mga-team__c figcaption { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 26px 8px 24px; text-align: center; }
.mga-team__n { font: 400 18px/22px "palatino linotype", serif; color: rgb(var(--mga-c-b0)); }
.mga-team__r { font: 400 12px/15px wfont_23c8a5_0892591a57564631839e4b86bf1a1c75, wf_0892591a57564631839e4b86b, orig_inter_light, sans-serif; color: rgba(var(--mga-c-b0), .86); }
html.m .mga-team { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 0 16px; }
html.m .mga-team::-webkit-scrollbar { display: none; }
html.m .mga-team__c { flex: 0 0 62%; scroll-snap-align: center; }
html.m .mga-team__n { font-size: 14px; line-height: 17px; }
html.m .mga-team__r { font-size: 10px; line-height: 12px; }
@media (max-width: 1100px) { html.d .mga-team { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* «Расположение» (этап 5g, C5): воздух под синей полосой и под «Расстояния…», подпись и название не слипаются, шапка столбца —
   ни у одного (была только у «км») */
html body .mga-loc { padding-top: 28px !important; }
html body .mga-loc__head--kd { margin-bottom: 26px !important; }
html body .mga-loc__dl { display: none !important; }
html body .mga-loc__small { display: block; margin-bottom: 3px !important; }

/* Подборки на главной (этап 5g, C11): 1:1 по замерам Wix при 1920 (px ÷ 19,2 = vw), масштаб от ширины окна */
:root { --mga-col-side: 8.958vw; --mga-col-gap: .4167vw; }
html body .mga-col-host { height: auto !important; min-height: 0 !important; }
html body .mga-col-host > [data-testid="inline-content"] { display: block !important; height: auto !important; }
html body .mga-col { position: relative; box-sizing: border-box; width: 100%; padding: 1.51vw 0 5.2vw; color: rgb(var(--mga-c-b0)); text-align: center; }
html body .mga-col__eyebrow { margin: 0 !important; font: 400 .729vw/.729vw wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif !important; letter-spacing: .2em; text-transform: uppercase; color: rgb(var(--mga-c-b0)) !important; }
html body .mga-col__title { margin: .52vw 0 0 !important; font: 500 2.083vw/2.083vw wfont_71969c_1003ae486d154446b7b30255d2d63e14, wf_1003ae486d154446b7b30255d, orig_cormorant_garamond_medium, serif !important; letter-spacing: .02em; text-transform: uppercase; color: rgb(var(--mga-c-b0)) !important; }
html body .mga-col__vline { display: block; width: 1px; height: 4.79vw; margin: 1.667vw auto 0; background: rgb(var(--mga-c-a2)); }
html body .mga-col__tabs { display: flex; justify-content: center; gap: 1.5625vw; margin: 1.72vw auto 0; padding: 0 var(--mga-col-side); }
html body .mga-col__tab { padding: 0 0 .7vw; border: 0; background: none; cursor: pointer; font: 400 .729vw/.729vw wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: rgb(var(--mga-c-b0)); white-space: nowrap; }
html body .mga-col__panel { position: relative; margin-top: .656vw; }
html body .mga-col__panel[hidden] { display: none; }
html body .mga-col__track { display: flex; gap: var(--mga-col-gap); overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0 var(--mga-col-side); padding: 0 var(--mga-col-side); scrollbar-width: none; scroll-behavior: smooth; overscroll-behavior-x: contain; }
html body .mga-col__track::-webkit-scrollbar { display: none; }
html body .mga-col__card { position: relative; flex: 0 0 calc((100vw - 2 * var(--mga-col-side) - 3 * var(--mga-col-gap)) / 4); aspect-ratio: 388 / 560; overflow: hidden; scroll-snap-align: start; color: #fff; text-decoration: none; }
html body .mga-col__card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.22, 1, .36, 1); }
html body .mga-col__card:hover img { transform: scale(1.04); }
html body .mga-col__shade { position: absolute; inset: auto 0 0; height: 45%; background: linear-gradient(to top, rgba(var(--mga-c-p6),.72), rgba(var(--mga-c-p6),0)); }
html body .mga-col__txt { position: absolute; left: 6%; right: 6%; bottom: 0; top: 0; }
html body .mga-col__name { position: absolute; left: 0; right: 0; bottom: 4.06vw; font: 500 1.458vw/1.458vw wfont_71969c_1003ae486d154446b7b30255d2d63e14, wf_1003ae486d154446b7b30255d, orig_cormorant_garamond_medium, serif; text-wrap: balance; }
html body .mga-col__specs { position: absolute; left: 0; right: 0; bottom: 2.73vw; font: 400 .677vw/.677vw wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
html body .mga-col__price { position: absolute; left: 0; right: 0; bottom: 1.406vw; font: 400 .729vw/.729vw wfont_23c8a5_bfdf700093d54e959dae6ed4781255a7, wf_bfdf700093d54e959dae6ed47, orig_inter_regular, sans-serif; letter-spacing: .06em; }
html body .mga-col__arr { position: absolute; top: 50%; width: 2.6vw; height: 2.6vw; min-width: 36px; min-height: 36px; margin-top: -1.3vw; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .9); color: rgb(var(--mga-c-p0)); cursor: pointer; display: flex; align-items: center; justify-content: center; }
html body .mga-col__arr svg { width: 55%; height: 55%; }
html body .mga-col__arr--prev { left: calc(var(--mga-col-side) - 1.3vw); }
html body .mga-col__arr--next { right: calc(var(--mga-col-side) - 1.3vw); }
html body .mga-col__arr[disabled] { opacity: 0; pointer-events: none; }
html body .mga-col__more { margin: max(100px, 5.2vw) 0 0 !important; }   /* как у Wix: ≈100 px от карточек (C2) */
html body .mga-col__btn { display: inline-flex; align-items: center; gap: 14px; padding: 16px 28px; border: 1px solid rgb(var(--mga-c-a2)); color: rgb(var(--mga-c-b0)) !important; text-decoration: none; font: 500 12px/1.2 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif; letter-spacing: .14em; text-transform: uppercase; }
html body .mga-col__btn svg { width: 34px; height: 12px; }
/* планшет — 2 в ряд; телефон (окно 320) — 1 + свайп, вкладки прокручиваются вбок */
@media (max-width: 1099px) { html.d body .mga-col__card { flex-basis: calc((100vw - 2 * var(--mga-col-side) - var(--mga-col-gap)) / 2); } html.d body .mga-col { --mga-col-side: 5vw; } }
html.m body .mga-col { --mga-col-side: 16px; --mga-col-gap: 8px; padding: 28px 0 40px; }
html.m body .mga-col__eyebrow { font-size: 10px !important; line-height: 10px !important; }
html.m body .mga-col__title { margin-top: 10px !important; padding: 0 20px; font-size: 22px !important; line-height: 26px !important; }
html.m body .mga-col__vline { height: 44px; margin-top: 18px; }
html.m body .mga-col__tabs { justify-content: flex-start; gap: 18px; margin-top: 20px; overflow-x: auto; scrollbar-width: none; padding: 0 16px; }
html.m body .mga-col__tabs::-webkit-scrollbar { display: none; }
html.m body .mga-col__tab { font-size: 10px; line-height: 10px; padding-bottom: 12px; flex: 0 0 auto; }
html.m body .mga-col__panel { margin-top: 12px; }
html.m body .mga-col__card { flex-basis: calc(100% - 48px); scroll-snap-align: center; }
html.m body .mga-col__name { font-size: 22px; line-height: 24px; bottom: 58px; }
html.m body .mga-col__specs { font-size: 9px; line-height: 9px; bottom: 38px; }
html.m body .mga-col__price { font-size: 11px; line-height: 11px; bottom: 18px; }
html.m body .mga-col__arr { display: none; }
html.m body .mga-col__more { margin-top: 48px !important; }

/* «We see what listings don't show» (этап 5g, C14): лента до правого края окна и под обрез, без затемнения; стрелка — у правого края
   внизу, не поверх текста карточек */
html body [id$="comp-mk67mgf7"] .gallery-horizontal-scroll { -webkit-mask-image: none !important; mask-image: none !important; }
/* стрелка ленты — как на Wix (посередине карточек), п. 13 */

/* кнопка «Путеводители» — дальше от текста, как у Wix (этап 5g, C2) */
html body [id="comp-mcd3jou8"], html body [id="m_comp-mcd3jou8"] { margin-top: 16px !important; }
/* телефон, страница объекта (01.11, A1): кнопка ☰ и меню общей шапки — в синей полосе с логотипом, место — как на мобильных страницах Wix */
html.m .mga-mh { overflow: visible !important; }
html.m body .mga-mh__tog { position: absolute !important; left: 8px !important; top: 50% !important; margin: 0 !important; translate: 0 -50%; grid-area: auto !important; }
html.m body .mga-mh__menu { position: fixed !important; top: 0 !important; margin: 0 !important; grid-area: auto !important; }
/* телефон (01.11, A3): ленты фото Wix листаются пальцем по одному кадру, как у Wix (у ленты «доводка» есть, у кадров не было точки привязки —
   лента возвращалась к первому кадру или улетала на несколько) */
html.m body .gallery-horizontal-scroll [data-hook="item-container"] { scroll-snap-align: center !important; scroll-snap-stop: always; }   /* у Wix: .gallery-item-container { scroll-snap-align: none !important } */
/* телефон, шапка объекта (01.11, В1): полоса чуть тоньше (Wix 21 + логотип 21 + 21 = 63 -> 53), логотип по центру; язык — маленький
   белый тонкий глобус и код мельче, в правом углу полосы (как значок аккаунта), без тёмной заливки */
:root { --mga-mh-pad: 16px; --mga-mh-ink: rgb(255, 255, 255); --mga-mh-lang-size: 9px; --mga-mh-globe: 13px; }
html.m [data-mesh-id=m_comp-mjrq8r6sinlineContent-gridContainer] > [id="m_comp-mjrq8r6v2"] { margin-top: var(--mga-mh-pad) !important; margin-bottom: var(--mga-mh-pad) !important; }
html.m body .mga-lang--mh { right: 10px; }
html.m body .mga-lang--mh .mga-lang__btn { color: var(--mga-mh-ink) !important; font-size: var(--mga-mh-lang-size) !important; line-height: 14px !important; gap: 4px !important; letter-spacing: .08em; }
html.m body .mga-lang--mh .mga-lang__btn * { color: var(--mga-mh-ink) !important; fill: none !important; }
html.m body .mga-lang--mh .mga-lang__globe { width: var(--mga-mh-globe); height: var(--mga-mh-globe); stroke: var(--mga-mh-ink) !important; }
/* рука «листайте» на телефоне (01.11, Б2) — над большим фото справа внизу, как у компьютерной версии Wix; нажатия проходят к фото */
:root { --mga-hand-w: 44px; --mga-hand-gap: 10px; }
html.m .mga-hand-host { position: relative !important; }
html.m body .mga-hand { position: absolute; right: var(--mga-hand-gap); top: calc(var(--mga-mgal-h) - var(--mga-hand-gap) - 19px); bottom: auto; width: var(--mga-hand-w); height: auto; z-index: 50;   /* светлая версия (anim-light.webp) — фильтр Wix «faded» уже в кадрах */ pointer-events: none; }
html.d .mga-hand { display: none; }
/* заголовок объекта (01.11, Б3): переносы как у Wix — обычный перенос, без выравнивания строк по длине */
html body [data-mga-wrap] :is(h1, h2, h3, h4, h5, h6, p, span) { text-wrap: wrap !important; }
/* телефон (01.11, В3): большое фото объекта чуть выше (Wix 220,5 -> 244), миниатюры под ним — как есть */
:root { --mga-mgal-h: 244px; --mga-mgal-add: 23.5px; }
html.m body #m_comp-mjrr3io6 { height: calc(315px + var(--mga-mgal-add)) !important; }
html.m body #m_comp-mjrr3io6 :is(#m_pro-gallery-container-comp-mjrr3io6, #m_gallery-horizontal-scroll-comp-mjrr3io6) { height: var(--mga-mgal-h) !important; }
html.m body #m_comp-mjrr3io6 #m_gallery-horizontal-scroll-comp-mjrr3io6 :is([data-hook="item-container"], [data-hook="item-wrapper"], .gallery-item-content, img.gallery-item, video) { height: var(--mga-mgal-h) !important; }
html.m body #m_comp-mjrr3io6 #m_gallery-horizontal-scroll-comp-mjrr3io6 img.gallery-item { object-fit: cover !important; }
/* телефон (01.11, В5): цифры «спальни / ванные / площадь» — по центру значка по высоте (были на 2–3 px экрана выше, как у Wix) */
:root { --mga-spec-dy: 2px; }
html.m body :is(#m_comp-mjrqm7ne6, #m_comp-mjrqm7nc, #m_comp-mjrqm7ni) { translate: 0 var(--mga-spec-dy); }
/* «Расположение» (02.11, блок 2; законы 2 и 11). Ссылки VIEW MAP и DISTANCE — как у Wix (comp-mjsaa94x2 / comp-mjsaa9546): 9 px,
   разрядка 0,15em, подчёркнуты, #324158; у VIEW MAP голубой значок Wix. Справочное (адрес, минуты, км) — размером значений карточек
   каталога (16 / 12 px). Значки категорий меньше и левее; способ поездки — рядом с минутами и км, отделены от названия местом. */
:root { --mga-loc-link: rgb(50, 65, 88); --mga-loc-pin: rgb(61, 155, 233); --mga-loc-link-size: 9px; --mga-loc-ref: 16px; --mga-loc-ref-m: 12px; --mga-loc-num: 14px; --mga-loc-num-m: 11px;
  --mga-loc-cat: 24px; --mga-loc-cat-m: 20px; --mga-loc-kd-gap: 46px; }
html body .mga-loc__map, html body .mga-loc__dl { display: inline-flex !important; align-items: center; gap: 4px; font: 400 var(--mga-loc-link-size)/1.4 wfont_23c8a5_cddf33dc0d8a405093497b5718d6a053, wf_cddf33dc0d8a405093497b571, orig_inter_semi_bold, sans-serif !important; letter-spacing: .15em !important; color: var(--mga-loc-link) !important; text-decoration: underline !important; text-underline-offset: 2px; text-transform: uppercase; white-space: nowrap; }
html body .mga-loc__map svg { width: 20px; height: 20px; color: var(--mga-loc-pin); text-decoration: none; }
html.m body .mga-loc__map, html.m body .mga-loc__dl { font-size: var(--mga-loc-link-size) !important; letter-spacing: .15em !important; }
html body .mga-loc__addr { font-size: var(--mga-loc-ref); }
html.m body .mga-loc__addr { font-size: var(--mga-loc-ref-m); }
html body .mga-loc__line { margin-bottom: var(--mga-loc-kd-gap); }
html body .mga-loc__rows { grid-template-columns: var(--mga-loc-cat) minmax(0, 1fr) auto max-content max-content; column-gap: 10px; }
html body .mga-loc__cat, html body .mga-loc__cat svg { width: var(--mga-loc-cat); height: var(--mga-loc-cat); }
html body .mga-loc__mode { margin-left: 28px; }
html body :is(.mga-loc__min, .mga-loc__km) { font-size: var(--mga-loc-num); }   /* «чуть мельче» названия */
html.m body .mga-loc__rows { grid-template-columns: var(--mga-loc-cat-m) minmax(0, 1fr) auto max-content max-content; column-gap: 6px; }
html.m body .mga-loc__cat, html.m body .mga-loc__cat svg { width: var(--mga-loc-cat-m); height: var(--mga-loc-cat-m); }
html.m body .mga-loc__mode { margin-left: 12px; }
html.m body :is(.mga-loc__min, .mga-loc__km) { font-size: var(--mga-loc-num-m); }
/* шапка телефона на светлом «стекле» при прокрутке: глобус и код — цветом шапки (белые там не видны) */
html.m body .mga-on-light .mga-lang--mh .mga-lang__btn, html.m body .mga-on-light .mga-lang--mh .mga-lang__btn * { color: rgb(var(--mga-hdr-text)) !important; }
html.m body .mga-on-light .mga-lang--mh .mga-lang__globe { stroke: rgb(var(--mga-hdr-ink)) !important; }
/* галерея «Фото и видео», телефон (02.11, блок 3): вкладки в одну строку с прокруткой вбок и лёгким затуханием у правого края */
:root { --mga-tabs-fade: 28px; }
html.m body #m_comp-mjse74nf .TabsList2027980309__tabsList { flex-wrap: nowrap !important; overflow-x: auto !important; overflow-y: hidden; scrollbar-width: none; -webkit-overflow-scrolling: touch; white-space: nowrap; }
html.m body #m_comp-mjse74nf .TabsList2027980309__tabsList::-webkit-scrollbar { display: none; }
html.m body #m_comp-mjse74nf .TabsList2027980309__tabsList > * { flex: 0 0 auto !important; }
html.m body #m_comp-mjse74nf .TabsList2027980309__root { position: relative; }
html.m body #m_comp-mjse74nf .TabsList2027980309__root::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; width: var(--mga-tabs-fade); background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff); pointer-events: none; z-index: 2; }
/* Property Details (02.11, блок 4): раскладка Wix — ИНТЕРЬЕР и ЭКСТЕРЬЕР рядом, ФИНАНСЫ под Интерьером; пункт — как Property Details
   в Dunara Resort Universal: значок (колонка 28 px, промежуток 16), название Inter 500 15 px разрядка .15 px #111, ниже 5 px —
   строки Inter Light 14/20,3 разрядка .28 px #2B2B2B, каждая деталь с новой строки; ряды пунктов — 44 px. Колонок пунктов — --mga-pd-cols. */
:root { --mga-pd-cols: 2; --mga-pd-ink: rgb(17, 17, 17); --mga-pd-text: rgb(43, 43, 43); --mga-pd-note: rgb(110, 103, 94); --mga-pd-row: 40px; --mga-pd-colgap: 40px; --mga-pd-secgap: 72px; }
html body .mga-pd--v2 { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: var(--mga-pd-secgap); row-gap: 56px; align-items: start; }
html body .mga-pd--v2 .mga-pd__sec--interior { grid-column: 1; grid-row: 1; }
html body .mga-pd--v2 .mga-pd__sec--exterior { grid-column: 2; grid-row: 1 / span 2; }
html body .mga-pd--v2 .mga-pd__sec--financial { grid-column: 1; grid-row: 2; }
html body .mga-pd--v2 .mga-pd__sec { margin: 0 !important; }
html body .mga-pd--v2 .mga-pd__grid { display: grid !important; grid-template-columns: repeat(var(--mga-pd-cols), minmax(0, 1fr)) !important; gap: var(--mga-pd-row) var(--mga-pd-colgap) !important; }
html body .mga-pd--v2 .mga-pd__more { display: contents; }
html body .mga-pd--v2 .mga-pd__more[hidden] { display: none; }
html body .mga-pd--v2 .mga-pd__item { display: grid; grid-template-columns: 28px minmax(0, 1fr); column-gap: 16px; align-items: start; min-width: 0; }
html body .mga-pd--v2 .mga-pd__icon { width: 22px; height: 22px; margin-top: 0; }
html body .mga-pd--v2 .mga-pd__label { margin: 0 0 5px !important; font: 500 15px/1.25 "MGA Inter", Inter, sans-serif !important; letter-spacing: .15px !important; color: var(--mga-pd-ink) !important; text-transform: none !important; }
html body .mga-pd--v2 .mga-pd__line { font: 300 14px/20.3px "MGA Inter", Inter, sans-serif; letter-spacing: .28px; color: var(--mga-pd-text); overflow-wrap: break-word; }
html body .mga-pd--v2 .mga-pd__cam { margin-left: 6px; vertical-align: -1px; color: var(--mga-pd-note); }
html body .mga-pd--v2 .mga-pd__all { margin: 28px 0 0 44px; padding: 0; border: 0; background: none; cursor: pointer; font: 500 11px/1.4 "MGA Inter", Inter, sans-serif; letter-spacing: .18em; text-transform: uppercase; color: var(--mga-pd-ink); text-decoration: underline; text-underline-offset: 4px; }
@media (min-width: 1700px) { :root { --mga-pd-cols: 3; } }
html.m body .mga-pd--v2 { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
html.m body .mga-pd--v2 .mga-pd__sec { grid-column: 1 !important; grid-row: auto !important; }
html.m body .mga-pd--v2 .mga-pd__grid { grid-template-columns: minmax(0, 1fr) !important; gap: 24px !important; }
html.m body .mga-pd--v2 .mga-pd__all { margin-left: 44px; }
/* карточка агента (02.11, блок 4) — по Dunara Resort Universal «Contact the Agent»: рамка-линия, подпись Inter 500 9,5 px .18em,
   фото 220 × 275, роль IvyMode курсив 17 px, имя Kudryashev прописными, сообщение и темы; справа от Property Details, едет при прокрутке */
:root { --mga-agent-w: 410px; --mga-agent-gap: clamp(40px, 5vw, 80px); --mga-agent-top: 150px; --mga-pdw-side: 26px; }   /* как в Dunara (замер 02.11): карточка 410, промежуток 72 при 1440 / 80 при 1920, поля страницы 56 (у раздела Wix — 30 + 26) */
html body .mga-pdw { display: grid; grid-template-columns: minmax(0, 1fr) var(--mga-agent-w); column-gap: var(--mga-agent-gap); align-items: start; }
html.d body .mga-pdw { margin: 0 var(--mga-pdw-side); }
html.m body .mga-pdw { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
html body .mga-agent { position: sticky; top: var(--mga-agent-top); box-sizing: border-box; padding: 26px 26px 28px; border: 1px solid var(--d-line); background: var(--d-bg); text-align: center; font-family: var(--d-font-text); color: var(--d-text); }
html.m body .mga-agent { position: static; }
html body .mga-agent p { margin: 0; }
html body .mga-agent__kicker { margin-bottom: 16px !important; font: 500 9.5px/1.3 var(--d-font-text); letter-spacing: .18em; text-transform: uppercase; color: var(--d-label); }
html body .mga-agent__ph { width: 220px; height: 275px; margin: 0 auto; overflow: hidden; }
html body .mga-agent__ph img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; }   /* как в Dunara */
html body .mga-agent__role { margin-top: 24px !important; font: italic 300 17px/1 var(--d-font-kicker); color: var(--d-text); }
html body .mga-agent__name { margin-top: 12px !important; font: 400 24px/1.05 var(--d-font-head); letter-spacing: .015em; text-transform: uppercase; color: var(--d-text); }
html body .mga-agent__links { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 16px; margin-top: 16px !important; font: 400 13px/1.4 var(--d-font-text); }
html body .mga-agent__links a { color: var(--d-text) !important; text-decoration: underline; text-underline-offset: 3px; }
html body .mga-agent__speaks { margin-top: 8px !important; font: 400 11.5px/1.5 var(--d-font-text); color: var(--d-label); }
html body .mga-agent__form { margin-top: 20px; display: grid; gap: 10px; text-align: left; }
html body .mga-agent__form textarea, html body .mga-agent__form input[type="text"] { box-sizing: border-box; width: 100%; padding: 11px 12px; border: 1px solid var(--d-line); border-radius: 0; background: var(--d-bg); font: 300 13px/1.45 var(--d-font-text); letter-spacing: .02em; color: var(--d-text-2); resize: vertical; }
html body .mga-agent__form :is(textarea, input):focus { outline: 1px solid var(--d-text); outline-offset: -1px; }
html body .mga-agent__chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
html body .mga-agent__chip { padding: 5px 11px; border: 1px solid var(--d-chip); border-radius: var(--d-pill); background: var(--d-bg); font: 400 11px/1.3 var(--d-font-text); color: var(--d-text); cursor: pointer; }
html body .mga-agent__chip[aria-pressed="true"] { border-color: var(--d-pill-bg); background: var(--d-pill-bg); color: var(--d-on-dark); }
html body .mga-agent__hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
html body .mga-agent__send { justify-self: center; margin-top: 6px; }
html body .mga-agent__status { min-height: 1.4em; font: 400 11.5px/1.5 var(--d-font-text); color: var(--d-label); text-align: center; }
html body .mga-agent__status.is-err { color: var(--d-error); }
/* телефон: полоска внизу экрана «WhatsApp · Позвонить · Написать» (на странице объекта — вместо полоски Wix) */
html body .mga-agentbar { display: none; }
html.m body .mga-agentbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 90; display: grid; grid-template-columns: repeat(3, 1fr); background: var(--mga-agentbar-bg, rgb(var(--mga-c-p0))); padding-bottom: env(safe-area-inset-bottom); }
html.m body .mga-agentbar a { display: flex; align-items: center; justify-content: center; height: 44px; font: 500 10px/1 "MGA Inter", Inter, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #fff !important; text-decoration: none; }
html.m body .mga-agentbar a + a { border-left: 1px solid rgba(255, 255, 255, .22); }
html.m body.mga-has-agentbar #m_QUICK_ACTION_BAR { display: none !important; }   /* своя полоска агента вместо значков Wix */
html.m body.mga-has-agentbar { padding-bottom: 44px; }
/* главная, первый экран (02.11, 7.1): BUY · SELL · RENT — как у Wix: выбранный (BUY) — золото, наведение — тоже золото (не бирюза меню);
   отступ «EXPLORE PROPERTIES» от низа экрана — переменные */
:root { --mga-hero-bottom: 56px; --mga-hero-bottom-m: 40px; --mga-hero-line-gap: 28px; }
html body .mga-ul-hero .mga-ul { --mga-ul-hover: var(--mga-ul-active); }
html body .mga-ul-hero, html body .mga-ul-hero * { color: rgb(242, 242, 240) !important; -webkit-text-fill-color: rgb(242, 242, 240); }
/* главная «We See What Listings Don't Show» (02.11, 7.2): тонкая светлая полоса под заголовком и над блоком — щель между колонками
   Wix, сквозь неё был виден светлый фон секции; фон секции — тот же тёмно-синий */
html body :is(#comp-mk64pd94, #m_comp-mk64pd94), html body :is(#bgLayers_comp-mk64pd94, #m_bgLayers_comp-mk64pd94) [data-testid="colorUnderlay"] { background-color: rgb(var(--mga-c-p2)) !important; }
/* главная, слайд объекта (02.11, 7.3): «VIEW LISTING» — не обрезается, стрелка как у Wix (телефон 12 px, компьютер 30 px), без раздувания */
html body :is(#comp-mk6ti9wl5, #m_comp-mk6ti9wl5) a { overflow: visible !important; }
html body :is(#comp-mk6ti9wl5, #m_comp-mk6ti9wl5) [class*="__label"] { white-space: nowrap !important; overflow: visible !important; text-overflow: clip !important; }
html.m body #m_comp-mk6ti9wl5 { width: auto !important; min-width: 101px; }
html.m body #m_comp-mk6ti9wl5 [class*="__icon"], html.m body #m_comp-mk6ti9wl5 [class*="__icon"] svg { width: 12px !important; height: 12px !important; flex: 0 0 12px; }
html.d body #comp-mk6ti9wl5 [class*="__icon"], html.d body #comp-mk6ti9wl5 [class*="__icon"] svg { width: 30px !important; height: 30px !important; flex: 0 0 30px; }
/* главная «Lifestyle Search» (02.11, 7.4; закон 9 — эталон блока «PRIME LOCATIONS / Our Local Expertise», размеры при 1440 → vw):
   надзаголовок 12 px разрядка 1,8; заголовок Cormorant 48 px −0,03em, не прописными; название в карточке — как «Benidorm-Finestrat»
   30 / 37 px; вкладки — светлые (без системного синего iOS), наведение и выбор — золото; карточки ~7 % меньше */
:root { --mga-ref-eyebrow: .833vw; --mga-ref-eyebrow-ls: .15em; --mga-ref-title: 3.333vw; --mga-ref-title-ls: -.03em; --mga-ref-caption: 2.083vw; --mga-ref-caption-lh: 1.233;
  --mga-ref-eyebrow-m: 7px; --mga-ref-title-m: 22px; --mga-ref-caption-m: 18px; }
html body .mga-col { --mga-col-side: 12vw; }
html body .mga-col__eyebrow { font-size: var(--mga-ref-eyebrow) !important; line-height: 1.4 !important; letter-spacing: var(--mga-ref-eyebrow-ls) !important; }
html body .mga-col__title { font-weight: 400 !important; font-size: var(--mga-ref-title) !important; line-height: 1 !important; letter-spacing: var(--mga-ref-title-ls) !important; text-transform: none !important; }
html body .mga-col__name { font-weight: 400 !important; font-family: wfont_56b966_1259f15a41e643598eb8618515cb564f, wfont_71969c_1003ae486d154446b7b30255d2d63e14, serif !important; font-size: var(--mga-ref-caption) !important; line-height: var(--mga-ref-caption-lh) !important; bottom: 4.6vw !important; }
html body .mga-col__tab, html body .mga-col__tab * { color: rgb(242, 242, 240) !important; -webkit-text-fill-color: rgb(242, 242, 240); }
html body .mga-col__tab .mga-ul { --mga-ul-hover: var(--mga-ul-active); }
html.m body .mga-col { --mga-col-side: 16px; }
html.m body .mga-col__eyebrow { font-size: var(--mga-ref-eyebrow-m) !important; }
html.m body .mga-col__title { font-size: var(--mga-ref-title-m) !important; line-height: 1.1 !important; }
html.m body .mga-col__name { font-size: var(--mga-ref-caption-m) !important; line-height: 22px !important; bottom: 58px !important; }
html.m body .mga-col__card { flex-basis: calc(100% - 64px) !important; }
/* главная «VIEW ALL PROPERTIES» (02.11, 7.5) — как кнопка Wix comp-mcc08tof: компьютер 271 × 52, подпись 12 px 400 разрядка .15em,
   телефон 179 × 35, подпись 8 px (решение — «как на Wix»), стрелка маленькая и тонкая */
html body .mga-col__btn { box-sizing: border-box; justify-content: center; min-width: 271px; height: 52px; padding: 0 22px !important; gap: 10px !important; font-weight: 400 !important; letter-spacing: .15em !important; }
html body .mga-col__btn svg { width: 22px !important; height: 8px !important; }
html body .mga-col__btn svg path { stroke-width: 1.2; }
html.m body .mga-col__btn { min-width: 179px; height: 35px; padding: 0 12px !important; font-size: 8px !important; gap: 8px !important; }
html.m body .mga-col__btn svg { width: 16px !important; height: 6px !important; }
/* главная «Arrive on the WATERFRONT» (02.11, 7.7) — как у Wix: «EXPLORE MORE» 10 px разрядка .15em на месте Wix (не общий размер кнопок C2) */
html.d body #comp-mcde7u0a [class*="__label"] { font-size: 10px !important; letter-spacing: .15em !important; }
/* Property Details v3 (02.11, Закон референса): 1 в 1 Property Details из Dunara Resort Universal (замер Playwright 1440 / 390,
   incoming/references/dunara-property-details_*.png): заголовок — IvyMode курсив 300 24/26,4 #141414, ниже 12 px Kudryashev 48/45
   разрядка -.04em прописные #1A1A1A (без жёлтого), до колонок 40 px; колонки 3 × 1fr, промежуток 48 (ширина 846 при 250 на колонку),
   между пунктами 36; пункт — значок 26 px в колонке 28, промежуток 16; название Inter 500 15 #111 разрядка .01em, ниже 5;
   строки Inter 300 14/1,45 .02em #2B2B2B; фото — подчёркнуто 1 px со сдвигом 3, камера 13 px #6E675E через 6 px;
   метка — Inter 500 7,5 px .12em прописные, высота 12, поля 0 4, рамка .5 px. Телефон (<760): колонки друг под другом, промежуток 32. */
:root { --mga-pd3-w: none; --mga-pd3-colgap: 48px; --mga-pd3-rowgap: 32px; --mga-pd3-gap: 36px; }
html body .mga-pd--v3 { display: block; padding: 28px 0 40px !important; background: var(--d-bg) !important; color: var(--d-text-2); }
html body .mga-pd--v3 .mga-pd__head { margin: 0 0 40px; }
html body .mga-pd--v3 .mga-pd__kicker { margin: 0 0 12px !important; font: italic 300 24px/1.1 var(--d-font-kicker) !important; color: var(--d-ink) !important; letter-spacing: normal !important; text-transform: none !important; }
html body .mga-pd--v3 .mga-pd__h { margin: 0 !important; padding: 0 2px; font: 400 48px/.9375 var(--d-font-head) !important; letter-spacing: -.04em !important; text-transform: uppercase !important; color: var(--d-text) !important; }
html body .mga-pd--v3 .mga-pd__cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--mga-pd3-rowgap) var(--mga-pd3-colgap); max-width: var(--mga-pd3-w); align-items: start; }
html body .mga-pd--v3 .mga-pd__col { min-width: 0; }
html body .mga-pd--v3 .mga-pd__ct { margin: 0 0 24px !important; padding: 0 0 11px !important; border-bottom: 1px solid var(--d-line); font: 500 10px/1.3 var(--d-font-text) !important; letter-spacing: .18em !important; text-transform: uppercase !important; color: var(--d-text) !important; }
html body .mga-pd--v3 .mga-pd__list, html body .mga-pd--v3 .mga-pd__more:not([hidden]) { display: flex; flex-direction: column; gap: var(--mga-pd3-gap); }
html body .mga-pd--v3 .mga-pd__more[hidden] { display: none; }
html body .mga-pd--v3 .mga-pd__item { display: grid; grid-template-columns: 28px minmax(0, 1fr); column-gap: 16px; align-items: start; min-width: 0; }
html body .mga-pd--v3 .mga-pd__icon { display: flex; align-items: center; justify-content: center; width: 28px; height: 22px; color: var(--d-text); overflow: visible; }
html body .mga-pd--v3 .mga-pd__icon :is(img, svg) { flex: none; width: 26px; height: 26px; object-fit: contain; }
html body .mga-pd--v3 .mga-pd__text { min-width: 0; padding: 0; }
html body .mga-pd--v3 .mga-pd__label { margin: 0 0 5px !important; font: 500 15px/normal var(--d-font-text) !important; letter-spacing: .01em !important; color: var(--d-sub) !important; text-transform: none !important; }
html body .mga-pd--v3 .mga-pd__line { display: block; margin: 0 !important; font: 300 14px/1.45 var(--d-font-text) !important; letter-spacing: .02em !important; color: var(--d-text-2) !important; overflow-wrap: break-word; }
html body .mga-pd--v3 .mga-pd__pic { display: flex; width: fit-content; max-width: 100%; align-items: center; gap: 6px; padding: 0; border: 0; background: none; cursor: pointer; text-align: left; color: var(--d-sub) !important; }
html body .mga-pd--v3 .mga-pd__pic > span { text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
html body .mga-pd--v3 .mga-pd__cam { flex: none; margin: 0; color: var(--d-label); }
html body .mga-pd--v3 .mga-pd__note { display: inline-block; margin-left: 7px; padding: 0 4px; font: 500 7.5px/12px var(--d-font-text); letter-spacing: .12em; text-transform: uppercase; vertical-align: 2px; color: var(--d-muted-2); border: .5px solid #DDD7CC; }
html body .mga-pd--v3 .mga-pd__note--not_included { color: var(--d-text); border-color: var(--d-text); }
html body .mga-pd--v3 .mga-pd__all { display: inline-block; margin: 28px 0 0 44px; padding: 0; border: 0; background: none; cursor: pointer; font: 400 14px/1.45 var(--d-font-text); letter-spacing: .02em; text-transform: none; color: var(--d-sub); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
@media (max-width: 760px) { html body .mga-pd--v3 .mga-pd__cols { grid-template-columns: minmax(0, 1fr); } }
html.m body .mga-pd--v3 { padding: 28px 20px 40px !important; }
html.m body .mga-pd--v3 .mga-pd__cols { grid-template-columns: minmax(0, 1fr); }
/* просмотр фото пункта (как photoView в Dunara): затемнение, фото по центру, подпись */
html body .mga-pv { position: fixed; inset: 0; z-index: 2147482000; display: flex; align-items: center; justify-content: center; padding: 40px; background: rgba(10, 20, 30, .55); backdrop-filter: blur(3px); }
html body .mga-pv[hidden] { display: none; }
html body .mga-pv__f { margin: 0; max-width: min(1200px, 100%); max-height: 100%; display: flex; flex-direction: column; align-items: center; gap: 12px; }
html body .mga-pv__f img { max-width: 100%; max-height: calc(100vh - 140px); object-fit: contain; background: var(--d-bg); }
html body .mga-pv__f figcaption { font: 300 14px/1.45 var(--d-font-text); letter-spacing: .02em; color: var(--d-on-dark); }
html body .mga-pv__x { position: absolute; top: 20px; right: 20px; width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(247, 245, 241, .5); background: none; color: var(--d-on-dark); font: 300 24px/1 var(--d-font-text); cursor: pointer; }
html.m body .mga-pv { padding: 16px; }
html body .mga-pd--v3 .mga-pd__pic .mga-pd__note { margin-left: 1px; }   /* метка за камерой: 6 px (gap) + 1 = 7, как в Dunara */
/* телефон: дерево Wix свёрстано на 320 px и растянуто до ширины экрана (390 -> ×1,22); блок — в масштабе 320/390, чтобы на экране
   размеры были как в Dunara на 390 (поля 20, колонка 350, шрифты 24 / 48 / 15 / 14) */
html.m body .mga-pd--v3 { zoom: calc(320 / 390); }
/* переменные тёплого белого и текста Dunara (для новых блоков и названных Виталией; п. 13 — блоки Wix как на Wix) */
:root { --mga-warm: #F7F5F1; --mga-ink: #2B2B2B; --mga-ink-label: #6E675E; }

/* меню шапки: над видео — светлое, как на Wix; на светлой шапке при прокрутке — --mga-hdr-text (#2B2B2B), см. «.mga-on-light» */
/* выбор языка в шапке компьютера (02.11, п. 1г): цвет — как у пунктов меню (светлый на тёмной шапке); на светлой шапке — --mga-hdr-text */
html body .tpl-d .mga-lang:not(.mga-lang--m):not(.mga-lang--mh) { color: rgb(242, 242, 240); }
html body .tpl-d .mga-lang:not(.mga-lang--m):not(.mga-lang--mh) .mga-lang__globe { stroke: currentColor; }
html body .mga-fix--main.mga-on-light .mga-lang:not(.mga-lang--m) { color: rgb(var(--mga-hdr-text)); }
/* первый экран главной (02.11, п. 1а): тонкая вертикальная линия как у Douglas Elliman — 1 px, rgb(160, 166, 178), прорисовка сверху 0,7 с */
:root { --mga-hero-vline: rgb(160, 166, 178); }
html body .mga-hero-vline { position: absolute; z-index: 2; width: 1px; margin-left: -.5px; background: var(--mga-hero-vline); transform: scaleY(0); transform-origin: center top; pointer-events: none; }
html body .mga-hero-vline.is-drawn { transform: scaleY(1); transition: transform .7s ease-out; }
html.m body .mga-hero-vline { width: calc(1px * 320 / 390); }
@media (prefers-reduced-motion: reduce) { html body .mga-hero-vline { transform: none; transition: none; } }
/* BUY · SELL · RENT (02.11, п. 1б): одно золотое подчёркивание, как в меню — при наведении на SELL / RENT черта у BUY уходит */
@media (hover: hover) { html body [id$="comp-mc81r285"]:has(.mga-ul-hero:hover) .mga-ul-hero:not(:hover) .mga-ul.is-active::after { transform: scaleX(0); } }
/* меню телефона как у Douglas Elliman (02.11, п. 1д; замер elliman.com 390×844; px — экранные, zoom ставит site.js deMenu) */
:root { --mga-drw-bg: rgb(244, 244, 242); --mga-drw-bg2: rgb(231, 233, 236); --mga-drw-ov: rgb(16, 11, 40); --mga-drw-line: rgb(207, 210, 216); --mga-drw-ink: #2B2B2B; }
html body .mga-drw { position: fixed; inset: 0; z-index: 2147482500; }
html body .mga-drw[hidden] { display: none; }
html body .mga-drw__ov { position: fixed; inset: 0; background: var(--mga-drw-ov); opacity: 0; }
html body .mga-drw__p { position: fixed; top: 0; left: 0; bottom: 0; width: calc(100% - 48px); max-width: 560px; display: flex; flex-direction: column; background: var(--mga-drw-bg); color: var(--mga-drw-ink); transform: translateX(-100%); }
html body .mga-drw[data-state="open"] .mga-drw__ov { animation: mga-drw-fade .3s forwards; }
html body .mga-drw[data-state="open"] .mga-drw__p { animation: mga-drw-in .7s backwards; transform: none; }
html body .mga-drw[data-state="closed"] .mga-drw__ov { animation: mga-drw-fadeout .3s forwards; }
html body .mga-drw[data-state="closed"] .mga-drw__p { animation: mga-drw-out .7s forwards; transform: none; }
@keyframes mga-drw-fade { from { opacity: 0; } to { opacity: .25; } }
@keyframes mga-drw-fadeout { from { opacity: .25; } to { opacity: 0; } }
@keyframes mga-drw-in { from { transform: translateX(-100%); } to { transform: translateX(0); } }
@keyframes mga-drw-out { from { transform: translateX(0); } to { transform: translateX(-100%); } }
@keyframes mga-drw-list { from { opacity: 0; } to { opacity: 1; } }
html body .mga-drw__hd { position: relative; display: flex; align-items: center; height: 72px; padding: 0 12px; flex: none; }
html body .mga-drw__hd::before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: var(--mga-drw-line); opacity: .5; }
html body .mga-drw__x { display: flex; padding: 0; margin: 0; border: 0; background: none; color: #141414; cursor: pointer; }
html body .mga-drw__logo { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: block; color: #141414; }
html body .mga-drw__logo svg { display: block; width: 150px; height: auto; }
html body .mga-drw__logo svg :is(path, polygon, rect, circle) { fill: #141414 !important; }
html body .mga-drw__c { height: calc(100% - 72px); display: flex; }
html body .mga-drw__lists, html body .mga-drw__set { width: 100%; height: 100%; display: flex; flex-direction: column; animation: mga-drw-list .3s; }
html body .mga-drw__lists[hidden], html body .mga-drw__set[hidden] { display: none; }
html body .mga-drw ul { list-style: none; margin: 0; }
html body .mga-drw__l1 { padding: 16px 0; }
html body .mga-drw__l2 { position: relative; flex-grow: 1; min-height: 0; padding: 16px 0; background: var(--mga-drw-bg2); }
html body .mga-drw__it { box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; width: 100%; height: 56px; padding: 0 8px; border: 0; background: none; color: var(--mga-drw-ink) !important; text-decoration: none !important; cursor: pointer; font: 400 14px/20px "MGA Inter", Inter, system-ui, sans-serif; letter-spacing: 1.4px; text-transform: uppercase; text-align: left; }
html body .mga-drw__it > * { margin: 0 8px; }
html body .mga-drw__it i { display: flex; font-style: normal; }
html body .mga-drw__l2 .mga-drw__it, html body .mga-drw__langs .mga-drw__it { height: 52px; }
html body .mga-drw__back { box-sizing: border-box; position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 52px; padding: 0 32px; border: 0; background: none; color: var(--mga-drw-ink); cursor: pointer; font: 400 14px/20px "MGA Inter", Inter, system-ui, sans-serif; letter-spacing: 1.4px; text-transform: uppercase; }
html body .mga-drw__back i { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); display: flex; }
html body .mga-drw__back::before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: var(--mga-drw-line); opacity: .5; }
html body .mga-drw__langs { padding: 24px 0; }
html body .mga-drw__langs [aria-current="true"] span { text-decoration: underline; text-underline-offset: 4px; }
/* ☰ — тонкие линии вместо значка Wix */
html.m body .mga-de-burger > :not(.mga-de-burger__i) { opacity: 0 !important; }
html.m body .mga-de-burger { position: relative; }
html.m body .mga-de-burger__i { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: flex; color: rgb(242, 242, 240); zoom: calc(320 / 390); pointer-events: none; }
html.m body .mga-on-light .mga-de-burger__i { color: rgb(var(--mga-hdr-text)); }
/* глобус справа вверху шапки телефона (п. 1г) */
html.m body .mga-mglobe { position: absolute; right: 16px; z-index: 5; display: flex; padding: 0; border: 0; background: none; color: rgb(242, 242, 240); transform: translateY(-50%); cursor: pointer; }
html.m body .mga-on-light .mga-mglobe { color: rgb(var(--mga-hdr-text)); }
@media (prefers-reduced-motion: reduce) { html body .mga-drw__p, html body .mga-drw__ov { animation-duration: .01s !important; } }
/* п. 1б: на телефоне линии Wix под BUY · SELL · RENT тоже выключены — подчёркивание одно (наше, как в меню) */
html.m body :is([id="m_comp-mk486uzd"], [id="m_comp-mk48ys3z"], [id="m_comp-mk492cmq1"]) { opacity: 0 !important; visibility: hidden !important; }
/* п. 13: «We see what listings don't show.» — перенос как на Wix («…listings / don't show.»), без выравнивания строк */
html body [id$="comp-mk64ucds"] :is(h1, h2, h3, h4, h5, h6) { text-wrap: wrap !important; }
/* п. 14 (02.11): «Lifestyle Search» — 1 в 1 по эталону блока «PRIME LOCATIONS / Our Local Expertise» (замер, px не vw):
   компьютер — надзаголовок 12 / 16,8, разрядка 1,8 px; заголовок Cormorant 48 / 48, −1,44 px; до заголовка 25; карточки 335 × 446,
   промежуток 10, лента до правого края экрана; название — как «Benidorm-Finestrat» 30 / 37 белым, низ подписи — 39 px от низа фото;
   мягкое затемнение снизу как у эталона (181°, прозрачный → чёрный). Телефон — 8,5 / 26,8, карточки 277 × 370, затемнение .09 → .37 */
:root { --mga-life-card-w: 335px; --mga-life-card-h: 446px; --mga-life-gap: 10px; --mga-life-pad: 20px; }
html.d body .mga-col { padding: 22px 0 80px; }
html.d body .mga-col__eyebrow { font-size: 12px !important; line-height: 16.8px !important; letter-spacing: 1.8px !important; }
html.d body .mga-col__title { margin-top: 8px !important; font-size: 48px !important; line-height: 48px !important; letter-spacing: -1.44px !important; }
html.d body .mga-col__vline { height: 69px; margin-top: 24px; }
html.d body .mga-col__tabs { gap: 30px; margin-top: 24px; }
html.d body .mga-col__tab { font-size: 12px; line-height: 12px; letter-spacing: 1.8px; padding-bottom: 10px; }
html.d body .mga-col__panel { margin-top: 24px; }
html body .mga-col__track { gap: var(--mga-life-gap); padding: 0 0 0 var(--mga-life-pad); scroll-padding: 0 var(--mga-life-pad); }
html body .mga-col__card { flex: 0 0 var(--mga-life-card-w) !important; width: var(--mga-life-card-w); height: var(--mga-life-card-h); aspect-ratio: auto; }
html body .mga-col__shade { height: 100%; background: linear-gradient(181deg, rgba(0, 0, 0, .01), rgba(0, 0, 0, .55)); }
html body .mga-col__txt { left: 16px; right: 16px; top: auto; bottom: 39px; display: flex; flex-direction: column; align-items: center; gap: 8px; }
html body .mga-col__txt > span { position: static !important; }
html body .mga-col__name { font-size: 30px !important; line-height: 37px !important; color: #fff; }
html body .mga-col__specs { font-size: 11px; line-height: 14px; letter-spacing: .14em; color: rgba(255, 255, 255, .92); }
html body .mga-col__price { font-size: 13px; line-height: 16px; letter-spacing: .06em; color: #fff; }
html body .mga-col__arr--prev { left: 28px; } html body .mga-col__arr--next { right: 28px; }
html.m body .mga-col { --mga-life-card-w: 277px; --mga-life-card-h: 370px; --mga-life-gap: 7px; --mga-life-pad: 16px; zoom: calc(320 / 390); }
html.m body .mga-col__eyebrow { font-size: 8.5px !important; line-height: 11.9px !important; letter-spacing: 1.05px !important; }
html.m body .mga-col__title { margin-top: 9px !important; font-size: 26.8px !important; line-height: 30px !important; letter-spacing: -.66px !important; }
html.m body .mga-col__vline { height: 54px; margin-top: 20px; }
html.m body .mga-col__shade { background: linear-gradient(181deg, rgba(26, 26, 26, .09), rgba(26, 26, 26, .55)); }
html.m body .mga-col__txt { bottom: 28px; gap: 6px; }
html.m body .mga-col__name { font-size: 22px !important; line-height: 27px !important; }
html.m body .mga-col__specs { font-size: 10px; } html.m body .mga-col__price { font-size: 12px; }
html.m body .mga-col__card { flex: 0 0 var(--mga-life-card-w) !important; }
html.d body .mga-col { padding-top: 93px; }   /* верх до надзаголовка — как у PRIME LOCATIONS (93 px) */
html.m body .mga-col { padding-top: 48px; }   /* телефон — 48 px на экране, как у эталона */
/* п. 16 (02.11): фото команды — кадр задаётся photo.crop (team.json): верх головы на одном уровне с Натальей, голова того же размера */
.mga-team__ph { position: relative; display: block; width: 100%; aspect-ratio: 3 / 4; overflow: hidden; background: rgb(var(--mga-c-p4)); }
.mga-team__ph img { position: absolute; max-width: none; height: auto !important; aspect-ratio: auto !important; object-fit: fill !important; }

/* 02.11, п. 20: подвал Wix — наша сноска по центру (шрифт и размер мелкого текста Wix); согласие в форме Wix у объекта */
html body .mga-foot-note p { text-align: center; }
html body .mga-foot-note a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }
html body .mga-wix-consent { grid-column: 1 / -1; margin: 4px 0 18px; }
html body .mga-wix-consent .mga-consent { display: flex; gap: 10px; align-items: flex-start; font: 400 13px/1.45 var(--wix-font-Body, Inter, sans-serif); color: #2B2B2B; }
html body .mga-wix-consent .mga-consent input { width: 18px; height: 18px; margin: 1px 0 0; flex: none; accent-color: #1b2a5c; }
html.m body.mga-has-qab:not(.mga-has-agentbar) #m_SITE_FOOTER { margin-bottom: 47px; }   /* значки Wix «телефон / почта» внизу не закрывают строку © подвала */
html.d body .mga-foot-note { width: calc(100vw - 2 * 61px) !important; max-width: none !important; }   /* сноска по центру экрана, поля как у логотипа Wix */

/* п. 23 (02.11): подписи команды — 1 в 1 как у агентов Dunara (dfooter.css .dc-agent__*: 17 / 22 / 12,5 / 10,5 px, отступы 25 / 15 / 14 / 22),
   светлым на синем Wix; телефон (окно 320 px растянуто до 390) — те же размеры на экране: / 1.21875 */
html body .mga-team__c .mga-team__cap { display: flex; flex-direction: column; align-items: center; gap: 0; padding: 0 6px; text-align: center; }
html body .mga-team__role { margin-top: 25px; font: italic 300 17px/1 var(--d-font-kicker); color: #fff; }
html body .mga-team__name { margin-top: 15px; font: 400 22px/1.16 var(--d-font-head); letter-spacing: .015em; text-transform: uppercase; color: #fff; }
html body .mga-team__lead { margin-top: 14px; max-width: 230px; font: 300 12.5px/1.5 var(--d-font-text); color: rgba(255, 255, 255, .86); }
html body .mga-team__msg { display: inline-block; margin-top: 22px; font: 600 10.5px/1.3 var(--d-font-text); letter-spacing: .1em; text-transform: uppercase; color: #fff !important; text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 5px; }
html.m body .mga-team__c { flex: 0 0 84%; }
html.m body .mga-team__role { margin-top: 20.5px; font-size: 13.95px; }
html.m body .mga-team__name { margin-top: 12.3px; font-size: 18.05px; }
html.m body .mga-team__lead { margin-top: 11.5px; max-width: 200px; font-size: 10.26px; }
html.m body .mga-team__msg { margin-top: 18px; font-size: 8.62px; }
html.d body .mga-team { padding-bottom: 19px; }   /* п. 23: синий воздух под «MESSAGE …» = отступ сверху блока (73 px) */
html.m body .mga-team { padding-bottom: 7px; }    /* телефон: 48 px до края блока */
html body .mga-team__lead { text-wrap: balance; }
html body .mga-wix-consent { margin: 0 0 16px; }
html.m body .mga-wix-consent .mga-consent { font-size: 10.7px; }   /* 13 px на экране */
/* п. 23-исправление (эталон 02.png, 1920): фото → курсив 27, курсив → ИМЯ 16, имя двумя строками (шаг 24), → описание 22 (шаг 18,75), → ссылка 36; без подчёркиваний */
html body .mga-team__role { margin-top: 24px; }
html body .mga-team__name { margin-top: 15px; line-height: 24px; letter-spacing: .02em; }
html body .mga-team__lead { margin-top: 17px; max-width: 250px; line-height: 19px; }
html body .mga-team__msg { margin-top: 30px; text-decoration: none !important; letter-spacing: .1em; }
html.m body .mga-team__role { margin-top: 19.7px; }
html.m body .mga-team__name { margin-top: 12.3px; line-height: 19.7px; }
html.m body .mga-team__lead { margin-top: 13.9px; line-height: 15.6px; }
html.m body .mga-team__msg { margin-top: 24.6px; }
/* п. 21.5: воздух под «VIEW ALL PROPERTIES» как у Wix (замер шаблона: 157 px компьютер, 65 px телефон от низа кнопки до конца блока) */
html.d body .mga-col { padding-bottom: 157px; }
html.m body .mga-col { padding-bottom: 78px; }
/* п. 21.2: «We See» на телефоне — касание стрелки перехватывал слой карточки (gallery-item-hover) — стрелка поверх карточек */
html body [id$="comp-mk67mgf7"] [data-hook^="nav-arrow"] { z-index: 30 !important; pointer-events: auto !important; }
/* п. 25б: страховка — если скрипт сайта за 3 с не запустил анимации появления, блоки всё равно проявляются (не «белый экран») */
html.mga-reveal body :not([data-motion-enter="done"]) { animation-play-state: running !important; }
