/* Волны-разделители ФЦРВ.
   Сами картинки приходят инлайном из waves.php — там собираются цвета.
   Здесь только геометрия и порядок наложения. */

:root {
	/* Высоты пропорциональны ширине экрана, как в макете,
	   но не схлопываются на телефоне и не разрастаются на широких мониторах. */
	--fcrv-wave-h-top:    clamp(44px,  8.3vw, 150px);
	--fcrv-wave-h-bottom: clamp(56px, 11.7vw, 210px);
	--fcrv-wave-h-footer: clamp(52px, 10.7vw, 190px);
	--fcrv-wave-gap: 24px;
}

/* Заливка блока фирменным синим — под волной должен быть он. */
.fcrv-ink {
	background-color: var(--fcrv-wave-ink, #002f9d);
	color: #fff;
}

/* isolation создаёт контекст наложения, не трогая z-index контейнера.
   Без него волна с z-index:-1 уехала бы за фон страницы. */
.fcrv-wave-top,
.fcrv-wave-bottom,
.fcrv-wave-footer {
	position: relative;
	isolation: isolate;
}

.fcrv-wave-top::before,
.fcrv-wave-bottom::after,
.fcrv-wave-footer::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	z-index: -1;              /* выше фона блока, ниже содержимого */
	pointer-events: none;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.fcrv-wave-top::before    { top: 0;    height: var(--fcrv-wave-h-top); }
.fcrv-wave-footer::before { top: 0;    height: var(--fcrv-wave-h-footer); }
.fcrv-wave-bottom::after  { bottom: 0; height: var(--fcrv-wave-h-bottom); }

/* Отступы, чтобы содержимое не заезжало на волну.
   Отдельным классом: у готовых секций свои отступы, ломать их нельзя. */
.fcrv-wave-pad.fcrv-wave-top    { padding-top:    calc(var(--fcrv-wave-h-top)    + var(--fcrv-wave-gap)); }
.fcrv-wave-pad.fcrv-wave-footer { padding-top:    calc(var(--fcrv-wave-h-footer) + var(--fcrv-wave-gap)); }
.fcrv-wave-pad.fcrv-wave-bottom { padding-bottom: calc(var(--fcrv-wave-h-bottom) + var(--fcrv-wave-gap)); }

/* Волна как самостоятельный разделитель: [fcrv_wave] */
.fcrv-wave {
	line-height: 0;
	margin: 0;
}

.fcrv-wave > svg {
	display: block;
	width: 100%;
	height: auto;
}

/* Шорткод внутри виджета Elementor — убираем его собственные поля. */
.elementor-widget-shortcode > .elementor-widget-container > .fcrv-wave { margin: 0; }

/* На узких экранах волна отъедает слишком много высоты у контента,
   поэтому гребни делаем площе. */
@media (max-width: 767px) {
	:root {
		--fcrv-wave-h-top:    clamp(36px, 12vw, 64px);
		--fcrv-wave-h-bottom: clamp(44px, 16vw, 84px);
		--fcrv-wave-h-footer: clamp(40px, 15vw, 78px);
		--fcrv-wave-gap: 16px;
	}
}

/* ------------------- нахлёст блока после волны -------------------
   Блок, идущий сразу за секцией с нижней волной, слегка наезжает на неё —
   так переход читается мягче, чем через пустую полосу.

   Именно поверх, а не под: волна рисуется на слое 3 и по краям закрашивает
   нижние ~25 px своей полосы. Уведи блок под неё — и заголовок пропадёт,
   потому что у этой секции нет верхнего отступа, текст начинается сразу.
   ------------------------------------------------------------------ */

.fcrv-wave-bottom + .e-con {
	position: relative;
	z-index: 4;
	margin-top: -40px !important;   /* отступ секции задаёт Elementor переменной */
}

@media (max-width: 767px) {
	.fcrv-wave-bottom + .e-con { margin-top: -20px !important; }
}


/* Лента в самом конце страницы склеивается с подвалом: у ленты убираем нижнюю
   волну, у подвала — верхнюю. Иначе между двумя синими блоками оставалась
   белая полоса (Структура Центра и другие страницы с финальной лентой). */
main:has(> .fcrv-band:last-child) { padding-bottom: 0 !important; margin-bottom: 0 !important; }
main > .fcrv-band.fcrv-wave-bottom:last-child::after { display: none; }
/* нижний отступ ленты «проваливался» сквозь main и оставлял полосу фона */
main > .fcrv-band:last-child { margin-bottom: 0 !important; }
main > .fcrv-band.fcrv-wave-pad.fcrv-wave-bottom:last-child { padding-bottom: 64px; }
body:has(main > .fcrv-band:last-child) .fcrv-footer { margin-top: 0; }
body:has(main > .fcrv-band:last-child) .fcrv-footer__wave { display: none; }
body:has(main > .fcrv-band:last-child) .fcrv-footer__inner { padding-top: 44px; border-top: 1px solid rgba(255, 255, 255, .12); }

/* То же для страниц Elementor: синяя секция с классом fcrv-to-footer стоит
   последней и переходит прямо в подвал — без нижней волны, без волны подвала
   и без белой полосы между ними (страница «Контакты»). */
.fcrv-to-footer { margin-bottom: 0 !important; }
.fcrv-to-footer.fcrv-wave-bottom::after { display: none; }
.fcrv-to-footer.fcrv-wave-pad.fcrv-wave-bottom { padding-bottom: 64px; }
body:has(.fcrv-to-footer) .fcrv-footer { margin-top: 0; }
body:has(.fcrv-to-footer) .fcrv-footer__wave { display: none; }
body:has(.fcrv-to-footer) .fcrv-footer__inner { padding-top: 44px; border-top: 1px solid rgba(255, 255, 255, .12); }
