/* ==========================================================================
   ProPM V2 — мобильные переопределения, 390 = 100vw (1px = 0.256411vw).
   Подключается через media="(max-width: 767px)" последним, поэтому
   перебивает home-mob-vw.css.

   Единственный источник правды: правки вносятся прямо сюда.
   ========================================================================== */

/* ==========================================================================
   ProPM V2 — мобильная вёрстка
   Макет: Figma ProPM V2, фрейм 9:17875 (страница 390, состояния первого
   экрана и блока «Чому це важливо» отдельными фреймами).

   Файл подключён через media="(max-width: 767px)" у <link>, поэтому правила
   здесь не обёрнуты в @media: всё, что ниже, применяется только на телефоне.
   Значения проставлены явно, даже когда совпадают с десктопом, — чтобы
   мобильную сетку можно было читать не сверяясь со вторым файлом.

   База макета 390: поля по 15, рабочая ширина 360. Контейнер растягивается,
   поля остаются 15 — между 390 и 767 блоки тянутся, размеры карточек внутри
   слайдеров остаются макетными.
   ========================================================================== */

/* --- База ----------------------------------------------------------------- */

:root {
	--header-h: 13.076924vw;
	--gutter: 2.564103vw;
	--intro-duration: 1500ms;
	--layer-duration: 450ms;
	--card-duration: 400ms;
	--card-ease: cubic-bezier(0.65, 0, 0.35, 1);
	--desc-duration: 250ms;
	--desc-delay: 120ms;
	--why-scroll: 200vh;
	--reveal-shift: 6.153847vw;
	--reveal-shift-sm: 3.076924vw;
}

body {
	/* База макета 390, но телефоны бывают уже (360, 375). Нижняя граница 320,
	   чтобы вместо горизонтальной прокрутки блоки просто ужимались. */
	min-width: 82.051283vw;
	padding-block-start: 13.076924vw;
	padding-block-start: 0;
}

.container {
	width: auto;
	margin-inline: 3.846154vw;
}

/* --- Шапка (нода 9:15288) -------------------------------------------------- */

.site-header {
	min-inline-size: 82.051283vw;
	border-bottom: 0.256411vw solid #8fd9d2;
	filter: drop-shadow(0 1.025642vw 3.846154vw rgba(69, 191, 180, 0.15));
}

.site-header__inner {
	gap: 3.846154vw;
	width: auto;
	margin-inline: 0;
	padding-block: 2.564103vw;
	padding-inline: 3.846154vw;
}

.logo {
	gap: 2.226667vw;
}

.logo__mark {
	width: 6.639744vw;
	height: 7.692308vw;
}

.logo__text {
	font-size: 3.036411vw;
	line-height: 3.188206vw;
	letter-spacing: -0.060718vw;
}

/* Пункты меню и кнопка в мобильную шапку не влезают: в макете там только
   логотип, переключатель языка и бургер. */
.nav,
.site-header__inner .btn--sm {
	display: none;
}

.site-header__sp {
	flex: 1 0 0;
	min-width: 0.256411vw;
	height: 5.128206vw;
}

.lang {
	gap: 0.512821vw;
}

.lang__item {
	padding: 1.282052vw 2.564103vw;
	border-radius: 5.128206vw;
	font-size: 2.820513vw;
	line-height: 1.2;
}

.lang__item.is-active {
	padding-block: 1.282052vw;
	padding-inline: 2.564103vw;
	border-radius: 1.538462vw;
}

/* Бургер: три полосы 30x2 с шагом 6 */
.burger {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	inline-size: 7.692308vw;
	block-size: 3.589744vw;
	padding: 0;
	border: 0;
	background: transparent;
}

.burger__bar,
.burger::before,
.burger::after {
	content: "";
	display: block;
	inline-size: 7.692308vw;
	block-size: 0.512821vw;
	border-radius: 0.512821vw;
	background: #282828;
}

/* --- Мобильное меню (нода 18:18712) ---------------------------------------
   Панель 300 справа во всю высоту экрана, под ней затемнение на всю страницу.
   Открывает и закрывает assets/js/mobile.js: снимает hidden, ставит .is-open
   и запирает прокрутку страницы. */

.mobile-menu {
	position: fixed;
	z-index: 200;
	inset: 0;
	display: block;
}

.mobile-menu[hidden] {
	display: none;
}

/* Пока меню открыто, страница под ним не прокручивается */
html.is-menu-open,
html.is-menu-open body {
	overflow: hidden;
}

.mobile-menu__scrim {
	position: absolute;
	inset: 0;
	background: rgba(22, 23, 27, 0.45);
	opacity: 0;
	transition: opacity 250ms ease;
}

.mobile-menu.is-open .mobile-menu__scrim {
	opacity: 1;
}

.mobile-menu__panel {
	position: absolute;
	inset-block: 0;
	inset-inline-end: 0;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	inline-size: 76.923077vw;
	padding: 3.076924vw 6.153847vw 38.461539vw;
	background: var(--c-white);
	box-shadow: 2.051283vw 0 7.179488vw rgba(0, 0, 0, 0.18);
	overflow: hidden;
	transform: translateX(76.923077vw);
	transition: transform 300ms cubic-bezier(0.22, 0.61, 0.36, 1);
}

.mobile-menu.is-open .mobile-menu__panel {
	transform: none;
}

.mobile-menu__top {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	inline-size: 100%;
	block-size: 6.153847vw; /* по макету ряд выше крестика: 12 + 24 + 14 до линии */
}

/* Крестик 20x20 из двух линий — отдельная картинка не нужна */
.mobile-menu__close {
	position: relative;
	inline-size: 5.128206vw;
	block-size: 5.128206vw;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.mobile-menu__close::before,
.mobile-menu__close::after {
	content: "";
	position: absolute;
	inset-block-start: 2.307693vw;
	inset-inline-start: 0;
	inline-size: 5.128206vw;
	block-size: 0.512821vw;
	border-radius: 0.512821vw;
	background: #282828;
}

.mobile-menu__close::before {
	transform: rotate(45deg);
}

.mobile-menu__close::after {
	transform: rotate(-45deg);
}

.mobile-menu__rule {
	block-size: 0.256411vw;
	margin: 3.589744vw 0;
	border: 0;
	background: #45bfb4;
}

.mobile-menu__nav {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.mobile-menu__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-block: 3.076924vw;
	font-family: var(--f-serif);
	font-size: 3.333334vw;
	line-height: 1.2;
	color: var(--c-text);
	white-space: nowrap;
}

/* Разделители только между пунктами, без крайних */
.mobile-menu__item + .mobile-menu__item {
	border-block-start: 0.256411vw solid rgba(69, 191, 180, 0.3);
}

/* Стрелка — глиф Handjet, повёрнутый вправо, как в макете */
.mobile-menu__arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	inline-size: 5.641026vw;
	block-size: 3.076924vw;
	font-family: var(--f-pixel);
	font-size: 5.384616vw;
	line-height: 1;
	letter-spacing: -0.269231vw;
	color: var(--c-text);
	transform: rotate(-90deg);
}

/* Кнопка и переключатель языка прижаты к низу панели */
.mobile-menu__btn {
	inline-size: 100%;
	margin-block-start: auto;
	padding: 3.589744vw 6.153847vw;
	border-radius: 21.367436vw;
	background: var(--c-coral);
	font-family: var(--f-serif);
	font-size: 3.846154vw;
	line-height: 1.2;
	color: var(--c-white);
}

.mobile-menu__lang {
	gap: 0.512821vw;
	margin-block-start: 4.102565vw;
}

@media (prefers-reduced-motion: reduce) {
	.mobile-menu__scrim,
	.mobile-menu__panel {
		transition-duration: 1ms;
	}
}

/* --- Первый экран (нода 9:16343) ------------------------------------------ */

/* Узор 390x572 из img/hero-mob; десктопный комплект 1920x1080 не показываем. */
.hero__art--desktop {
	display: none;
}

.hero__art--mobile {
	display: block;
	inset-block-start: -13.076924vw;
	aspect-ratio: 390 / 572;
}

.hero__body {
	padding-block: 5.128206vw 4.102565vw;
	padding-inline: 0;
}

html.has-intro .hero__body {
	padding-bottom: 4.102565vw;
}

html.has-intro.is-revealed .hero__body {
	padding-bottom: 4.102565vw;
}

.hero__title {
	margin: 0 0 4.102565vw;
	font-size: 8.974359vw;
	line-height: 1;
	letter-spacing: -0.089744vw;
}

.hero__title span {
	letter-spacing: -0.089744vw;
}

.hero__desc {
	max-width: none;
	margin: 0 0 4.102565vw;
	font-size: 4.102565vw;
	line-height: 1.2;
}

.hero-cta {
	flex-direction: column;
	gap: 2.051283vw;
}

.hero-cta .btn {
	inline-size: 100%;
	padding: 4.102565vw 12.820513vw;
	border-radius: 21.367436vw;
	font-size: 3.846154vw;
	line-height: 1.2;
}

/* --- Карточки первого экрана: аккордеон (нода 9:16352) ---------------------
   На десктопе карточки раскрываются по наведению, здесь — по нажатию.
   Класс is-open ставит assets/js/mobile.js, is-accordion — признак того,
   что скрипт взял блок на себя. */

.cards {
	padding-bottom: 4.102565vw;
}

.cards__grid {
	flex-direction: column;
	gap: 2.051283vw;
	margin-inline: 0;
}

.card {
	flex: 0 0 auto;
	block-size: 25.641026vw;
	padding-inline: 0;
	transition: block-size var(--card-duration) var(--card-ease);
}

/* Без скрипта открыта та же карточка, что раскрыта на десктопе */
.cards__grid:not(.is-accordion) .card--wide,
.card.is-open {
	block-size: 107.692308vw;
}

.cards__grid:hover .card--wide,
.cards__grid .card:hover {
	flex-basis: auto;
}

.card__inner {
	border-radius: 2.564103vw;
	background: #efefeb;
}

.card__content {
	/* В макете 320 при карточке 360 — то есть по 20 с каждой стороны.
	   Держим отступами, чтобы на узких экранах текст не срезало. */
	inset: 10.256411vw 5.128206vw auto 5.128206vw;
	inline-size: auto;
}

.card.is-open .card__content,
.cards__grid:not(.is-accordion) .card--wide .card__content {
	inset-block-start: 88.205129vw;
}

.card__title {
	font-size: 4.358975vw;
	line-height: 1.2;
}

.card.is-open .card__title,
.cards__grid:not(.is-accordion) .card--wide .card__title {
	font-size: 4.102565vw;
}

.card__desc {
	inline-size: auto;
	margin: 1.282052vw 0 0;
	font-size: 3.333334vw;
	line-height: 1.2;
	white-space: normal;
}

.cards__grid:hover .card--wide .card__desc {
	opacity: 1;
}

.cards__grid .card:not(.is-open) .card__desc {
	opacity: 0;
}

.cards__grid.is-accordion .card.is-open .card__desc {
	opacity: 1;
}

/* Затемнение снизу у раскрытой карточки: 160px от отметки 260 */
.card.is-open .card__overlay::after,
.cards__grid:not(.is-accordion) .card--wide .card__overlay::after {
	content: "";
	position: absolute;
	inset-block-start: 66.666667vw;
	inset-inline: 0;
	block-size: 41.025642vw;
	background-image: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(7, 7, 7, 0.46) 45%, rgba(8, 8, 8, 0.96) 100%);
}

/* Плюс у свёрнутой карточки: 14x14, линии 2px */
.cards__grid .card:not(.is-open) .card__inner::after {
	content: "";
	position: absolute;
	inset-block-start: 10.769231vw;
	inset-inline-end: 5.128206vw;
	inline-size: 3.589744vw;
	block-size: 3.589744vw;
	background-image:
		linear-gradient(#fff, #fff),
		linear-gradient(#fff, #fff);
	background-size: 3.589744vw 0.512821vw, 0.512821vw 3.589744vw;
	background-position: center center;
	background-repeat: no-repeat;
}

.cards__grid:not(.is-accordion) .card--wide .card__inner::after {
	content: none;
}

/* --- «Чому це важливо» (нода 9:16528) --------------------------------------
   Механика та же, что на десктопе: карточка «Рішення» поднимается по мере
   прокрутки. Ход карточки задан здесь, assets/js/why-sticky.js читает его
   из --why-travel и пересчитывает ключевые кадры в этой пропорции. */

.why {
	--why-travel: 92.307693vw;

	block-size: 100vh;
}

.why__inner {
	margin-inline: 3.846154vw;
}

.why__title {
	position: static;
	padding-block-start: 15.384616vw;
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
}

/* Сцена по макету: полоса вкладок 37 + область карточек 360. Карточку
   «Рішення» не обрезаем здесь — она приезжает из-за нижней кромки экрана,
   и за обрезку отвечает .why__sticky высотой в окно. */
.why__stack {
	position: relative;
	inset-block-start: auto;
	inset-inline-start: 0;
	inline-size: auto;
	block-size: 101.794872vw;
	margin-block-start: 17.179488vw; /* 16 между заголовком и распоркой 35 + 16 */
	overflow: visible;
}

.why-card-wrap {
	inset-block-start: 9.48718vw; /* под полосой вкладок */
	block-size: 92.307693vw;
}

.why-card-wrap--light {
	transform: translateY(var(--why-y2, 92.307693vw));
}

.why-card {
	padding: 5.128206vw;
	border-radius: 2.564103vw;
}

.why-card--dark {
	display: flex;
	flex-direction: column;
	gap: 7.692308vw;
	padding: 5.128206vw 5.128206vw 10.256411vw;
	border-start-start-radius: 0;
}

.why-card--light {
	block-size: 92.307693vw;
	padding: 6.153847vw 5.128206vw;
	border-radius: 2.564103vw;
}

.why-card__tab {
	position: absolute;
	inset-block-start: -9.48718vw;
	padding: 2.307693vw 5.641026vw;
	border-start-start-radius: 1.538462vw;
	border-start-end-radius: 1.538462vw;
	font-size: 4.102565vw;
	line-height: 1.2;
}

.why-card-wrap--light .why-card__tab {
	margin-inline-start: 41.410257vw;
}

.why-card__number {
	font-size: 18.461539vw;
	line-height: 1;
	letter-spacing: -0.923077vw;
}

.why-card__lead {
	inline-size: auto;
	margin: 0;
	font-size: 4.102565vw;
	line-height: 1.2;
}

.why-card--light .why-card__lead {
	inline-size: auto;
	margin: 0 0 4.102565vw;
	font-size: 3.846154vw;
}

.why-list {
	gap: 2.564103vw;
}

.why-list__item {
	align-items: flex-start;
	gap: 2.564103vw;
}

.why-list__bullet {
	flex: 0 0 12.820513vw;
	block-size: 1.282052vw;
	margin-block-start: 1.794872vw;
}

.why-card--light .why-list__bullet {
	flex-basis: 4.615385vw;
}

.why-list__text {
	font-size: 3.333334vw;
	line-height: 1.2;
	white-space: normal;
}

.why-card--light .why-list__text {
	font-size: 3.589744vw;
}

.why-card__logo {
	gap: 2.820513vw;
	margin-block-start: 4.102565vw;
	block-size: 17.948718vw;
}

.why-card__logo-mark {
	inline-size: auto;
	block-size: 16.666667vw;
	margin-inline-start: 0;
}

.why-card__logo-text {
	font-size: 5.384616vw;
	line-height: 3.960513vw;
	padding-block-end: 1.538462vw;
}

/* Декор карточек нарисован под ширину 1140 — на 360 он только мешает */
.why-card__decor {
	display: none;
}

/* --- «Ініціаторка програми» (нода 9:15306) -------------------------------- */

.initiator {
	padding-block: 7.692308vw 25.641026vw;
}

.initiator__inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 3.846154vw;
	block-size: auto;
}

.initiator__col {
	position: static;
	display: contents;
}

.initiator__title {
	position: static;
	order: 1;
	inline-size: auto;
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
	text-align: center;
}

.initiator__title span {
	display: inline;
}

.initiator__photo {
	position: relative;
	order: 2;
	inset: auto;
	inline-size: 100%;
	block-size: 109.74359vw;
	border-radius: 2.051283vw;
}

.initiator__person {
	inset-block-end: 3.333334vw;
	inset-inline: 3.076924vw;
	padding: 2.051283vw 4.102565vw;
	border-radius: 1.538462vw;
}

.initiator__name {
	font-size: 4.102565vw;
	line-height: 1.2;
}

.initiator__role {
	margin: 1.282052vw 0 0;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.initiator__support {
	position: static;
	order: 3;
	font-size: 5.128206vw;
	line-height: 1;
	letter-spacing: -0.051283vw;
	text-align: center;
	white-space: normal;
}

.initiator__logos {
	position: static;
	order: 4;
	justify-content: center;
	gap: 1.794872vw;
	inline-size: 100%;
}

.logo-tile {
	inline-size: 38.461539vw;
	block-size: 17.948718vw;
	border-radius: 2.051283vw;
	background: #f9f9f8;
}

/* Сдвиг и масштаб из макета посчитаны для плитки 210x129 — на 150x70 они
   вылезают за края. Здесь логотип вписывается целиком. */
.logo-tile__img {
	inset: 2.564103vw;
	inline-size: auto;
	block-size: auto;
}

.logo-tile__img img {
	inset: 2.564103vw;
	inline-size: auto;
	block-size: auto;
}

/* --- Общие части секций --------------------------------------------------- */

.team .container,
.pilots .container,
.denmark .container {
	display: flex;
	flex-direction: column;
}

.team .container {
	gap: 2.564103vw;
}

.pilots .container,
.denmark .container {
	gap: 4.102565vw;
}

/* В макете стрелки стоят под карточками, а не под заголовком. Голова секции
   становится прозрачной для раскладки, дальше порядок решает order. */
.section-head {
	display: contents;
}

/* Дорожка слайдера идёт от кромки до кромки экрана, чтобы уезжающий слайд
   не обрезался посреди поля, а уходил за край. Поля внутри дорожки задают
   slidesOffsetBefore/After в настройках слайдера: первый слайд встаёт на 15
   и совпадает с текстом, последний останавливается за 15 до правого края.

   margin-inline задан явно: у самого Swiper в .swiper стоит
   margin-left/right: auto, и «авто» во флекс-колонке съедает свободное место,
   сдвигая дорожку вбок. Ширину тоже считаем сами — во флекс-колонке одних
   отрицательных полей не хватит, чтобы выйти за край. */
.team__slider,
.denmark__slider,
.news__slider {
	margin-inline: -3.846154vw;
	inline-size: calc(100% + 7.692308vw);
}

.team__slider,
.pilots__slider,
.denmark__slider {
	order: 2;
	/* Во флекс-колонке элемент по умолчанию не ужимается уже содержимого,
	   а внутри слайдера лежат все слайды подряд — без этого блок растягивает
	   страницу по их суммарной ширине. */
	min-inline-size: 0;
	margin-block-start: 0;
}

/* Дорожка выходит за обе кромки, поля внутри задаёт slidesOffset по 15 */
.pilots__slider {
	margin-inline: -3.846154vw;
	inline-size: calc(100% + 7.692308vw);
}

.slider-nav {
	order: 3;
}

.section-title {
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
}

.section-subtitle {
	margin: 0;
	font-size: 3.333334vw;
	line-height: 1.2;
}

/* Стрелки: 40x40 вместо 60x60 */
.slider-nav {
	gap: 2.051283vw;
	margin-block-start: 0;
}

.slider-nav__btn {
	inline-size: 10.256411vw;
	block-size: 10.256411vw;
	border-radius: 17.948718vw;
}

.slider-nav__btn .icon--arrow {
	inline-size: 3.076924vw;
	block-size: 2.051283vw;
}

/* --- «Основна команда» (нода 9:15318) ------------------------------------- */

.team {
	padding-block: 0 25.641026vw;
}

.team__slider .swiper-slide {
	inline-size: 71.794872vw;
}

.person-card {
	block-size: 89.23077vw;
	border-radius: 1.595385vw;
}

.person-card__img {
	inset-block-start: -4.871795vw; /* фото 386 в карточке 348 */
	block-size: 98.974359vw;
	border-radius: 1.595385vw;
}

.person-card__body {
	inset-block-end: 3.076924vw;
	inset-inline: 3.205129vw;
	padding: 2.051283vw 2.564103vw;
	border-radius: 1.538462vw;
}

.person-card__name {
	font-size: 4.102565vw;
	line-height: 1.2;
}

.person-card__role {
	margin: 0.769231vw 0 0;
	font-size: 3.333334vw;
	line-height: 1.2;
}

/* --- Чипы и теги ---------------------------------------------------------- */

.chip {
	align-self: flex-start;
	padding: 1.282052vw 5.128206vw;
	border-radius: 2.051283vw;
	font-size: 3.076924vw;
	line-height: 1.2;
}

.tag-list {
	gap: 1.282052vw;
}

.tag {
	padding: 1.794872vw 3.846154vw;
	border-radius: 2.051283vw;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.tag--active,
.tag.is-active {
	padding: 1.794872vw 3.846154vw;
	border-width: 0.256411vw;
}

/* --- «Що ми змінюємо в бібліотеках» (нода 9:15337) ------------------------ */

.about {
	padding-block: 0 25.641026vw;
}

.about__inner {
	display: flex;
	flex-direction: column;
	gap: 3.846154vw;
	block-size: auto;
}

/* Панель с глифами в мобильном макете не участвует */
.about__art {
	display: none;
}

.about__body {
	position: static;
	display: contents;
}

/* Сдвиг чипа на -3px — история десктопного макета, на мобилке не нужен. */
.about__body > .chip {
	margin-block-start: 0;
}

.about__title {
	margin: 0;
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
	white-space: normal;
}

.about__body .tag-list {
	margin-block-start: 0;
}

.about__text {
	position: relative;
	inline-size: auto;
	block-size: auto;      /* по содержимому: текст бывает длиннее макетного */
	margin-block-start: 0;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.about__text p + p {
	margin-block-start: 3.846154vw;
}

/* Фото уезжает под текст и становится широким */
.about__photo {
	position: static;
	order: 1;
	inline-size: 100%;
	block-size: 63.076924vw;
	border-radius: 1.538462vw;
}

.about__btn {
	order: 2;
	gap: 1.794872vw;
	inline-size: 100%;
	margin-block-start: 1.282052vw;
	padding: 3.589744vw 6.153847vw;
	border-radius: 17.482565vw;
	font-size: 4.102565vw;
	line-height: 1.2;
}

.about__btn-pdf {
	inset-block-start: -5.384616vw;
	inset-inline-start: auto;
	inset-inline-end: 4.28718vw;
	inline-size: 6.993077vw;
	block-size: 8.08077vw;
}

/* --- «Опори програми» (нода 9:15362) -------------------------------------- */

.pillars {
	padding-block: 0 25.641026vw;
}

.pillars__title {
	margin: 0 0 4.102565vw;
	margin-inline-start: 0;
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
	white-space: normal;
}

.pillars__grid {
	display: flex;
	flex-direction: column;
	gap: 2.564103vw;
}

/* Иконка слева, заголовок и текст — второй колонкой. В разметке они лежат
   тремя соседями, поэтому раскладываем сеткой, а не флексом: иначе текст
   встал бы третьей колонкой рядом с заголовком. */
.pillar {
	display: grid;
	grid-template-columns: 5.641026vw 1fr;
	column-gap: 5.128206vw;
	align-items: start;
	inline-size: auto;
	block-size: auto;
	padding: 5.128206vw;
	border-radius: 2.564103vw;
}

.pillar__icon {
	grid-column: 1;
	grid-row: 1 / span 2;
	inline-size: 7.179488vw;
	block-size: 7.179488vw;
	width: 7.179488vw !important;
	margin-block-start: 1.282052vw;
	height: 7.179488vw;
}

.pillar__title {
	grid-column: 2;
	grid-row: 1;
	margin: 0;
	margin-left: 0;
	font-size: 4.102565vw;
	line-height: 1.2;
}

.pillar__text {
	grid-column: 2;
	grid-row: 2;
	margin: 1.538462vw 0 0;
	margin-left: 0;
	font-size: 3.333334vw;
	line-height: 1.2;
}

/* --- «Як це працює» (нода 9:15537) ---------------------------------------- */

.how {
	block-size: auto;
	padding-block: 17.948718vw;
}

.how__title {
	padding-inline: 3.846154vw; /* заголовок вне .container, поле задаём здесь */
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
	text-align: start;
}

.stages {
	flex-direction: column;
	gap: 3.846154vw;      /* шаг 113 при высоте этапа 98 */
	margin: 3.846154vw 0 0;
}

.stage {
	inline-size: auto;
	padding-block-end: 1.538462vw;
}

.stage__bar {
	block-size: 0.512821vw;
	border-radius: 28.205129vw;
	background: rgba(255, 255, 255, 0.6);
}

.stage__card {
	display: flex;
	align-items: center;
	gap: 5.128206vw;
	block-size: auto;
	margin-block-start: 2.564103vw;
	padding: 4.102565vw 5.128206vw;
	border-radius: 2.564103vw;
}

.stage__num {
	flex-shrink: 0;
	font-size: 12.307693vw;
	line-height: 1;
	letter-spacing: -0.615385vw;
}

.stage__text {
	inline-size: auto;
	margin: 0;
	font-size: 3.846154vw;
	line-height: 1.2;
}

/* Полоса-декор внизу нарисована под 1920 */
.how__decor {
	display: none;
}

/* --- «Пілотні громади» (нода 9:15569) ------------------------------------- */

.pilots {
	padding-block: 10.256411vw 25.641026vw;
}

.pilots__title {
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
}

/* Слайд равен контейнеру: дорожка шире его на 30 за счёт выноса */
.pilots__slide {
	inline-size: calc(100% - 7.692308vw);
}

.pilot {
	gap: 0;
}

.pilot__media {
	block-size: 55.897436vw;
	border-radius: 1.538462vw 1.538462vw 0 0;
}

.pilot__img {
	block-size: 55.897436vw;
}

.pilot__status {
	inset-block-start: 2.564103vw;
	inset-inline-start: 2.564103vw;
	gap: 1.538462vw;
	padding: 1.538462vw;
	border-radius: 1.025642vw;
	font-size: 3.076924vw;
	line-height: 1.2;
}

.pilot__dot {
	inline-size: 1.282052vw;
	block-size: 1.282052vw;
}

/* На телефоне наведения нет — стрелки галереи показываем всегда */
.pilot__nav {
	inset-block-start: 47.179488vw;
	inset-inline-start: 2.564103vw;
	inset-inline-end: auto;
	gap: 1.846154vw;
	opacity: 1;
}

.pilot__nav-btn {
	inline-size: 6.153847vw;
	block-size: 6.153847vw;
	border-width: 0.146411vw;
	border-radius: 10.256411vw;
}

.pilot__nav-btn .icon--arrow {
	inline-size: 2.564103vw;
	block-size: 1.794872vw;
}

.pilot__body {
	gap: 7.692308vw;
	padding: 4.102565vw;
	border-radius: 0 0 1.538462vw 1.538462vw;
}

.pilot__group {
	gap: 1.025642vw;
}

.pilot__head {
	flex-direction: column;
	align-items: flex-start;
	gap: 0.512821vw;
	white-space: normal;
}

.pilot__name {
	font-size: 4.102565vw;
	line-height: 1.2;
}

.pilot__region {
	font-size: 4.102565vw;
	line-height: 1.2;
}

.pilot__text {
	-webkit-line-clamp: 6;
	block-size: 24.615385vw;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.pilot__link {
	font-size: 3.333334vw;
	line-height: 1.2;
}

/* --- «Стати партнером»: форма (нода 9:15617) ------------------------------ */

.partner {
	display: flex;
	flex-direction: column;
	block-size: auto;
}

/* Светлая панель с текстом и тёмная с формой встают друг под друга */
.partner__art {
	position: static;
	inline-size: auto;
	margin-inline: 1.282052vw; /* в макете светлый блок шире тёмного: 380 против 360 */
	padding-block: 10.256411vw 51.282052vw;
	padding-inline: 3.846154vw;
	border: 0.256411vw solid rgba(12, 65, 135, 0.4);
	border-radius: 2.051283vw;
	background: #f2f8ff;
	box-shadow: 0 1.025642vw 12.820513vw rgba(61, 64, 70, 0.15);
}

.partner__art-img {
	display: none;
}
.partner__art-img-mob {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}

.partner__lead {
	inline-size: auto;
	margin: 0;
	font-size: 5.128206vw;
	line-height: 1.2;
	z-index: 10;
	position: relative;
}

.partner__note {
	inline-size: auto;
	margin: 3.589744vw 0 0;
	font-size: 5.128206vw;
	line-height: 1.2;
}

.partner__panel {
	position: static;
	inline-size: auto;
	block-size: auto;
	margin-inline: 3.846154vw;
	padding: 8.717949vw 3.846154vw 12.820513vw;
	border-radius: 0 0 2.051283vw 2.051283vw;
	background: #181818;
}

.partner__title {
	margin: 0 0 3.589744vw;
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
	text-align: center;
	white-space: normal;
}

.partner-form {
	gap: 2.564103vw;
	inline-size: auto;
}

.field {
	block-size: 10.256411vw;
	border: 0.256411vw solid #8d64aa;
	border-radius: 2.051283vw;
}

.field__input {
	padding-inline: 3.076924vw;
	font-size: 3.076924vw;
	line-height: 1.2;
}

.field__input::placeholder {
	opacity: 0.6;
}

.field--phone .field__prefix {
	gap: 0.769231vw;
	inline-size: 12.820513vw;
	padding-inline: 2.564103vw;
	border-start-start-radius: 2.051283vw;
	border-end-start-radius: 2.051283vw;
	background: rgba(0, 0, 0, 0.1);
	font-size: 3.076924vw;
}

.field__flag {
	inline-size: 3.076924vw;
	block-size: 2.051283vw;
}

.field--phone .field__input {
	padding-inline-start: 2.051283vw;
}

.field__chevron {
	inset-inline-end: 3.076924vw;
	inline-size: 3.333334vw;
	block-size: 3.333334vw;
}

.field__error {
	inset-inline-start: 3.076924vw;
	font-size: 2.820513vw;
}

.partner-form__submit {
	block-size: 11.794872vw;
	border-radius: 13.669744vw;
	font-size: 3.84vw;
}

.form-status {
	font-size: 3.333334vw;
}

/* --- «Навчання в Данії» (нода 9:16064) ------------------------------------ */

.denmark {
	padding-block: 25.641026vw;
}

.denmark__head {
	display: contents;
}

.denmark__title {
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
	white-space: normal;
}

.denmark__lead {
	position: static;
	inline-size: auto;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.denmark__lead p + p {
	margin-block-start: 3.846154vw;
}

.denmark__head .slider-nav {
	position: static;
}

.denmark__slide {
	gap: 1.025642vw;
	inline-size: 71.794872vw;
}

.denmark__img {
	block-size: 45.641026vw;
	border-radius: 1.538462vw;
}

.denmark__caption {
	padding: 1.282052vw 2.564103vw;
	border-radius: 1.538462vw;
	font-size: 3.076924vw;
	line-height: 1.2;
}

/* --- «Партнери» (нода 9:16085) -------------------------------------------- */

.partners {
	padding-block: 0 25.641026vw;
}

.partners__inner {
	flex-direction: column;
	gap: 4.102565vw;
}

.partners__col {
	display: contents;
}

.partners__title {
	inline-size: 100%;
	margin-block-end: 0;
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
}

.partners__btn {
	order: 3;
	inline-size: 100%;
	padding: 2.564103vw 10.512821vw;
	border-radius: 17.482565vw;
	font-size: 3.846154vw;
	line-height: 1.2;
}

.partners__rows {
	order: 2;
	inline-size: 100%;
}

.partners__row {
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 1.282052vw;
	block-size: auto;
	padding-block: 2.564103vw;
	border-block-end: 0.256411vw solid #e3e3df;
}

.partners__label {
	inline-size: auto;
	font-size: 4.102565vw;
	line-height: 1.2;
}

.partners__logos {
	flex-wrap: wrap;
	gap: 1.282052vw;
}

.partner-tile {
	inline-size: 29.166667vw;
	block-size: 13.257693vw;
	border-radius: 1.364359vw;
}

/* --- «Новини проєкту» (нода 9:16143) -------------------------------------- */

.news {
	padding-block: 0 25.641026vw;
}

/* Декор 697x738 нарисован под правый край 1920 */
.news__decor {
	display: none;
}

.news__title {
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
}

/* Фильтры не переносятся, а уезжают вбок: в макете они в одну строку */
.news__filters {
	flex-wrap: nowrap;
	gap: 1.282052vw;
	margin-block-start: 4.102565vw;
	overflow-x: auto;
	scrollbar-width: none;
}

.news__filters::-webkit-scrollbar {
	display: none;
}

.news__filters .tag {
	padding: 1.282052vw 2.051283vw;
	border-radius: 1.538462vw;
	font-size: 3.076924vw;
}

.news__filters .tag.is-active {
	padding: 1.282052vw 2.051283vw;
	border-width: 0.256411vw;
}

.news__slider {
	margin-block-start: 4.102565vw;
}

/* Фильтры прокручиваются вбок по тому же принципу, что и слайдеры: сама
   лента идёт от кромки до кромки, а поля по 15 держит внутренний padding.
   Так первый тег стоит на 15 вместе с заголовком, последний не упирается
   в кромку, а уезжающие уходят за край, а не обрезаются посреди поля. */
.news__filters {
	margin-inline: -3.846154vw;
	padding-inline: 3.846154vw;
}

/* Подписи у слайдов галереи на странице проєкта тянутся во всю ширину слайда */
.denmark--bare .denmark__slide {
	gap: 1.282052vw;
}

.news-card {
	inline-size: 71.794872vw;
	border-radius: 1.595385vw;
}

.news-card__media {
	block-size: 43.076924vw;
}

.news-card__tag {
	inset-block-start: 3.076924vw;
	inset-inline-start: 3.076924vw;
	gap: 1.282052vw;
	padding: 1.025642vw 2.051283vw;
	border-radius: 0.95718vw;
	background: rgba(246, 151, 133, 0.9);
	font-size: 2.564103vw;
	line-height: 1.2;
}

.news-card__tag::before {
	inline-size: 0.769231vw;
	block-size: 0.769231vw;
}

.news-card__body {
	gap: 5.128206vw;
	padding: 2.564103vw;
}

.news-card__title {
	font-size: 4.102565vw;
	line-height: 1.2;
}

.news-card__text {
	margin: 0.769231vw 0 0;
	block-size: 33.333334vw;
	overflow: hidden;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.news-card__foot {
	padding-block-start: 0;
}

.news-card__link {
	font-size: 3.333334vw;
	line-height: 1.2;
}

.news-card__date {
	gap: 0.512821vw;
	font-size: 2.564103vw;
	line-height: 1.2;
}

.news-card__date .icon--calendar {
	inline-size: 2.820513vw;
	block-size: 3.076924vw;
}

/* --- Подвал (нода 9:16228) ------------------------------------------------ */

.site-footer-cta {
	padding-block: 10.256411vw 7.692308vw;
}

/* Сетка, а не колонка: всё идёт в одну полосу, и только «контакти» и
   «соціальні мережі» встают рядом — как в макете (нода 1:931). */
.site-footer-cta__inner {
	display: grid;
	grid-template-columns: 53.846154vw 1fr;
	/* Базовый шаг 10 — столько между логотипом и описанием. Остальные
	   промежутки в макете по 52 и добираются отступами сверху. */
	gap: 2.564103vw 6.153847vw;
	align-items: start;
}

.site-footer-cta__logo,
.site-footer-cta__heading,
.site-footer-cta__cta .btn,
.site-footer-cta__rule,
.site-footer-cta__about {
	grid-column: 1 / -1;
}

.site-footer-cta__contacts {
	grid-column: 1;
}

.site-footer-cta__socials {
	grid-column: 2;
}

.site-footer-cta__contacts,
.site-footer-cta__socials {
	margin-block-start: 10.769231vw;  /* 10 + 42 = 52 от описания */
}

.site-footer-cta__cta {
	display: contents;
}

.site-footer-cta__heading {
	margin: 0;
	font-size: 9.23077vw;
	line-height: 1;
}

.site-footer-cta__cta .btn {
	margin-block-start: 1.538462vw;   /* 10 + 6 = 16 от заголовка */
	inline-size: 100%;
	block-size: 10.256411vw;
	padding: 2.564103vw 10.512821vw;
	border-radius: 17.482565vw;
	font-size: 3.846154vw;
	line-height: 1.2;
}

.site-footer-cta__rule {
	margin: 10.769231vw 0 0;          /* 10 + 42 = 52 от кнопки */
	background: rgba(255, 255, 255, 0.5);
}

/* Логотип подвала в мобильном макете стоит под линией, вместе с описанием.
   grid-row снимаем: на десктопе он прибит к первой строке и перебивал order. */
.site-footer-cta__logo {
	grid-row: auto;
	gap: 2.564103vw;
	margin-block-start: 10.769231vw;  /* 10 + 42 = 52 от линии */
	order: 1;
}

.site-footer-cta__mark svg {
	inline-size: 7.128206vw;
	block-size: 8.205129vw;
}

.site-footer-cta__logo-text {
	font-size: 3.23077vw;
	line-height: 3.410257vw;
}

.site-footer-cta__about {
	order: 2;
	inline-size: auto;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.site-footer-cta__contacts,
.site-footer-cta__socials {
	order: 3;
}

.site-footer-cta__label {
	margin: 0 0 2.051283vw;
	font-size: 3.589744vw;
	line-height: 1.2;
	opacity: 0.6;
}

.site-footer-cta__contacts p,
.site-footer-cta__socials li {
	font-size: 3.333334vw;
	line-height: 1.2;
}

.site-footer-cta__phone {
	margin: 0 0 1.282052vw;
}

.site-footer-cta__socials ul {
	gap: 1.282052vw;
}

/* --- Страница проєкта (нода 1:844) -----------------------------------------
   Колонка 360 с полями 15, шаг между блоками 20. Между кадром «до/після»,
   галереей и текстом в макете стоят пустые фреймы по 90 — воспроизводим их
   отступами, лишних элементов в разметке не держим. */

.project {
	padding-block: 5.128206vw 0;
}

.project__inner {
	flex-direction: column;
	align-items: stretch;
}

.project__col {
	gap: 5.128206vw;
	inline-size: auto;
}

.project__title {
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
}

/* Плашки встают в столбик */
.project__meta {
	flex-direction: column;
	align-items: flex-start;
	gap: 2.051283vw;
}

.project-pill {
	gap: 1.794872vw;
	padding: 2.051283vw 3.589744vw;
	border-radius: 1.851795vw;
	font-size: 3.333334vw;
	line-height: 1.2;
}

.project-pill--region {
	padding-block: 1.794872vw;   /* рамка съедает по пикселю */
}

.project-pill .icon--location {
	inline-size: 3.846154vw;
	block-size: 3.589744vw;
}

.project-pill__dot {
	inline-size: 2.051283vw;
	block-size: 2.051283vw;
}

.project__text {
	inline-size: auto;
	font-size: 3.846154vw;
	line-height: 1.2;
}

/* --- «До / після» на телефоне (нода 1:874) --------------------------------
   Кадр квадратный, поэтому снимки видно целиком, без обрезки по высоте. */

.before-after {
	inline-size: 100%;
	block-size: auto;
	aspect-ratio: 1 / 1;
	border-radius: 3.076924vw;
	margin-block-start: 5.128206vw;
}

.before-after__layer {
	inline-size: 100%;
	block-size: 100%;
}


.before-after__img {
	inline-size: 100%;
	block-size: 100%;
	max-inline-size: 100%;
}

.before-after__label {
	inset-block-start: 3.076924vw;
	gap: 1.794872vw;
	padding: 1.538462vw 3.076924vw 1.538462vw 2.564103vw;
	box-shadow: 0 0.402821vw 2.014616vw rgba(0, 0, 0, 0.1);
	font-size: 2.820513vw;
	line-height: 1.2;
	letter-spacing: 0.056411vw;
}

.before-after__label--before {
	inset-inline-start: 3.076924vw;
	font-size: 2.820513vw;
	letter-spacing: 0.056411vw;
}

/* На узком экране подпись «ПІСЛЯ» держим у правого края, а не по координате */
.before-after__label--after {
	inset-inline-start: auto;
	inset-inline-end: 3.076924vw;
	font-size: 2.820513vw;
	letter-spacing: 0.056411vw;
}

.before-after__dot {
	inline-size: 1.538462vw;
	block-size: 1.794872vw;
	border-radius: 50%;
}

.before-after__divider {
	inline-size: 0.769231vw;
	margin-inline-start: -0.384616vw;
}

.before-after__handle {
	inset-block-start: 40vw;
	inline-size: 12.307693vw;
	block-size: 12.307693vw;
	margin-inline-start: -6.153847vw;
}

.before-after__handle .icon--drag {
	inline-size: 12.307693vw;
	block-size: 12.307693vw;
}

.before-after__hint {
	inset-block-start: 56.410257vw;
	padding: 1.794872vw 3.589744vw;
	font-size: 2.820513vw;
	line-height: 1.2;
}

/* --- Галерея на странице проєкта -------------------------------------------
   Разметка и размеры — те же, что у «Навчання в Данії» на телефоне: слайд 280,
   фото 178, стрелки под слайдами. Здесь только отступы блока. */

.denmark--bare {
	padding-block: 0;
	margin-block-start: 33.333334vw;   /* два шага по 20 и пустой фрейм 90 из макета */
}

.denmark--bare .denmark__head {
	display: contents;
}

/* У этой галереи шаг и подпись чуть крупнее, чем у датской (нода 1:891) */
.denmark--bare .container {
	gap: 2.564103vw;
}

.denmark--bare .denmark__slide {
	gap: 1.282052vw;
}

.denmark--bare .denmark__caption {
	justify-content: center;
	block-size: 7.948718vw;
	padding: 1.282052vw;
	border-radius: 1.171283vw;
}

.denmark--bare .denmark__img {
	border-radius: 1.171283vw;
}

/* --- Описание и возврат (ноды 1:910, 1:913) ------------------------------- */

.project-text {
	padding-block: 0;
	margin-block-start: 33.333334vw;   /* так же: 20 + 90 + 20 */
}

.project-text__lead {
	font-size: 5.641026vw;
	line-height: 1;
	letter-spacing: -0.056411vw;
}

.project-text__body {
	margin-block-start: 3.076924vw;
	font-size: 3.846154vw;
	line-height: 1.2;
}

/* Заголовки из редактора на телефоне мельче: та же пара, что и у лида,
   45 на десктопе против 22 здесь. Между парами 40 вместо 110. */
.project__text h2,
.project-text__body h2 {
	font-size: 5.641026vw;
	letter-spacing: -0.056411vw;
}

.project__text h3,
.project-text__body h3 {
	font-size: 4.615385vw;
	letter-spacing: -0.046154vw;
}

.project__text h4,
.project-text__body h4 {
	font-size: 4.102565vw;
	letter-spacing: -0.041026vw;
}

.project__text h2,
.project-text__body h2,
.project__text h3,
.project-text__body h3,
.project__text h4,
.project-text__body h4 {
	margin: 10.256411vw 0 3.076924vw;
}

.project-text__back {
	gap: 1.794872vw;
	margin-block-start: 5.128206vw;
	block-size: auto;
	padding: 3.846154vw 6.153847vw;
	border-radius: 17.482565vw;
	font-size: 3.846154vw;
	line-height: 1.2;
}

.project-text__arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	inline-size: 5.897436vw;
	block-size: 3.076924vw;
	font-size: 5.128206vw;
	letter-spacing: -0.256411vw;
}

/* Подвал идёт сразу за контентом: нижнее поле даёт сама страница */
.site-main--project {
	padding-block-end: 10.256411vw;
}

.site-main--project + .site-footer-cta {
	margin-block-start: 0;
}

/* --- Страница «Дякуємо» на телефоне ----------------------------------------
   Макета под 390 нет, поэтому по правилам системы: поля 15, сообщение 22
   (та же пара, что 45 на десктопе), шаг между сообщением и кнопкой 40,
   до подвала 100 — как отступ снизу у остальных секций. */

.thanks {
	padding-block: 15.384616vw 0;
}

.thanks__inner {
	gap: 10.256411vw;
}

.thanks__message {
	font-size: 5.641026vw;
	line-height: 1;
	letter-spacing: -0.056411vw;
}

.site-main--thanks {
	padding-block-end: 25.641026vw;
}

.site-main--thanks + .site-footer-cta {
	margin-block-start: 0;
}

/* --- Попап с формой -------------------------------------------------------
   Отдельного мобильного макета нет: собран по правилам сайта — панель во всю
   ширину с полями 15px, кегли как в секции «Стати партнером» на мобилке. */

.popup {
	padding: 5.128206vw 3.846154vw;
}

.popup__panel {
	inline-size: 100%;
	padding: 8.717949vw 3.846154vw 10.256411vw;
	border-radius: 2.051283vw;
	background: #181818;
}

.popup__title {
	font-size: 8.205129vw;
	line-height: 1;
	letter-spacing: -0.082052vw;
}

.popup__text {
	inline-size: auto;
	margin-block-start: 2.564103vw;
	font-size: 3.589744vw;
}

.popup__form {
	margin-block-start: 5.128206vw;
}

.popup .field {
	border: 0.256411vw solid #8d64aa;      /* на мобилке рамка уже есть, дублируем явно */
}

.popup__close {
	inset-block-start: 1.538462vw;
	inset-inline-end: 1.538462vw;
	inline-size: 10.256411vw;
	block-size: 10.256411vw;
}

.popup__close span {
	inset-block-start: 2.051283vw;
	inset-inline-start: 4.871795vw;
	inline-size: 0.512821vw;
	block-size: 6.153847vw;
}

/* --- Текстовые страницы --------------------------------------------------- */

.site-main--text {
	padding-block: calc(var(--header-h) + 10.256411vw) 15.384616vw;   /* 40 и 60 */
}

.text-page .entry-header,
.text-page .entry-content {
	max-inline-size: none;
}

.text-page .entry-title {
	margin: 0 0 5.128206vw;                   /* 20 */
	font-size: 8.205129vw;                    /* 32 */
	line-height: 1;
	letter-spacing: -0.082052vw;
}

.text-page .entry-content {
	font-family: var(--f-serif);
	font-size: 3.589744vw;                    /* 14 */
	line-height: 1.45;
	color: var(--c-text);
}

.text-page .entry-content a {
	color: var(--c-ink);
	text-decoration: underline;
	text-underline-offset: 0.15em;
	word-break: break-word;
}

.text-page .entry-content strong {
	font-family: var(--f-grotesk);
	font-weight: 700;
	color: var(--c-ink);
}

.text-page .entry-content h2 {
	margin: 7.692308vw 0 3.076924vw;          /* 30 и 12 */
	font-family: var(--f-grotesk);
	font-weight: 700;
	font-size: 4.615385vw;                    /* 18 */
	line-height: 1.2;
	color: var(--c-ink);
}

.text-page .entry-content h2:first-child {
	margin-block-start: 0;
}

.text-page .entry-title {
	font-family: var(--f-serif);
	font-weight: 400;
	color: var(--c-ink);
}

.text-page .entry-content p {
	margin: 0 0 3.076924vw;
}

.text-page .entry-content ul {
	margin: 0 0 3.076924vw;
	padding: 0;
	list-style: none;
}

.text-page .entry-content li {
	position: relative;
	padding-inline-start: 4.102565vw;         /* 16 */
	margin-block-end: 1.538462vw;             /* 6 */
}

.text-page .entry-content li::before {
	content: "•";
	position: absolute;
	inset-inline-start: 0;
	color: var(--c-purple);
}

/* Ссылка на политику: на телефоне во всю ширину, под контактами */
/* Остальные блоки расставлены через order, поэтому строке политики нужен
   свой номер — иначе она встаёт выше логотипа и контактов. */
.site-footer-cta__rule--legal {
	order: 4;
	margin: 7.692308vw 0 5.128206vw;   /* 30 и 20 */
}

.site-footer-cta__legal {
	order: 5;
	grid-column: 1 / -1;
	margin: 0;
	/* Полный набор свойств, а не только размер: home-vw.css на телефоне
	   не подключается, наследовать оформление неоткуда. */
	font-family: var(--f-serif);
	font-size: 3.589744vw;             /* 14 */
	line-height: 1.2;
	color: rgba(255, 255, 255, 0.7);
}

.site-footer-cta__legal a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}
