/* ==========================================================================
   Метод Ульяновой — фирменный стиль (брендбук, сентябрь 2026)
   Цвета: тёмно-синий #0B2E5B · бордовый #42021A · розово-медный #D9B08F · молочный #F8F3E6
   Шрифты: PT Serif Bold — заголовки; Cormorant Garamond SemiBold — тексты;
           Montserrat Medium — навигация, подписи; Marck Script — слоган.
   ========================================================================== */

:root {
	--navy: #0B2E5B;
	--navy-900: #071C3A;
	--navy-700: #123B72;
	--blue: #1F5BFF;
	--burgundy: #42021A;
	--burgundy-600: #5A0A27;
	--copper: #D9B08F;
	--copper-300: #F0D9C3;
	--copper-600: #B8845F;
	--milk: #F8F3E6;
	--on-dark: #ffd4d1;
	--sand: #E8D9C6;
	--ink: #0B2E5B;
	--radius: 22px;
	--radius-sm: 14px;
	--shadow: 0 18px 50px -22px rgba(7, 28, 58, .55);
	--f-head: 'PT Serif', Georgia, 'Times New Roman', serif;
	--f-text: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
	--f-ui: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--f-script: 'Marck Script', 'Segoe Script', cursive;
	--copper-gradient: linear-gradient(135deg, #F3D3B6 0%, #D9B08F 45%, #B8845F 100%);
}

/* ---------- База ---------- */
html {
	/* раньше всё масштабировалось от ширины окна (1.25vw): на больших экранах интерфейс разрастался.
	   Теперь масштаб ограничен 14–17 px, на телефоне — прежний. */
	font-size: clamp(14px, 1.25vw, 17px) !important;
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}
@media (max-width: 767px) {
	html { font-size: 5.3667vw !important; }
}
body {
	background: var(--milk) !important;
	color: var(--navy);
	font-family: var(--f-text);
	font-weight: 600;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
::selection { background: var(--copper); color: var(--navy-900); }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--copper); outline-offset: 3px; border-radius: 4px; }

/* ---------- Типографика Elementor ---------- */
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor,
.elementor-widget-text-editor p {
	font-family: var(--f-text);
}
.elementor-widget-heading h1.elementor-heading-title,
.elementor-widget-heading h2.elementor-heading-title {
	font-family: var(--f-head) !important;
	font-weight: 700 !important;
	letter-spacing: -.01em;
	line-height: 1.15 !important;
	text-wrap: balance;
}
.elementor-widget-heading h3.elementor-heading-title,
.elementor-widget-heading h4.elementor-heading-title {
	font-family: var(--f-head);
	font-weight: 700;
	line-height: 1.25;
	text-wrap: balance;
}
.elementor-widget-heading p.elementor-heading-title,
.elementor-widget-heading div.elementor-heading-title,
.elementor-widget-text-editor {
	font-weight: 600;
	line-height: 1.5;
}
.elementor-widget-container strong, .elementor-widget-container b { font-weight: 700; }

/* ---------- Кнопки ---------- */
.elementor-button,
.jet-form-builder__submit,
.jet-form-builder__action-button,
.jet-form-builder button[type="submit"],
.uly-btn {
	font-family: var(--f-ui) !important;
	font-weight: 600 !important;
	font-size: .82rem !important;
	letter-spacing: .06em;
	text-transform: uppercase;
	line-height: 1.2 !important;
	color: var(--on-dark) !important;
	background: var(--burgundy) !important;
	background-image: none !important;
	border: 1.5px solid var(--copper) !important;
	border-radius: 999px !important;
	padding: 1.05em 2em !important;
	box-shadow: 0 10px 26px -12px rgba(66, 2, 26, .9), inset 0 1px 0 rgba(255, 255, 255, .12);
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
	cursor: pointer;
}
.elementor-button .elementor-button-text { font-family: inherit !important; font-weight: inherit !important; }
.elementor-button:hover,
.jet-form-builder__submit:hover,
.jet-form-builder button[type="submit"]:hover,
.uly-btn:hover {
	background: var(--copper) !important;
	color: var(--navy-900) !important;
	transform: translateY(-2px);
	box-shadow: 0 16px 30px -14px rgba(217, 176, 143, .8);
}
.elementor-button:active, .uly-btn:active { transform: translateY(0); }

/* ---------- Формы ---------- */
.jet-form-builder__field,
.jet-form-builder input[type="text"],
.jet-form-builder input[type="tel"],
.jet-form-builder input[type="email"],
.jet-form-builder textarea,
.jet-form-builder select {
	font-family: var(--f-ui) !important;
	font-weight: 500 !important;
	font-size: .9rem !important;
	color: var(--on-dark) !important;
	background: rgba(255, 255, 255, .07) !important;
	border: 1.5px solid rgba(217, 176, 143, .55) !important;
	border-radius: 999px !important;
	padding: 1.05em 1.5em !important;
	transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.jet-form-builder__field:focus,
.jet-form-builder input:focus,
.jet-form-builder textarea:focus {
	border-color: var(--copper) !important;
	background: rgba(255, 255, 255, .12) !important;
	box-shadow: 0 0 0 4px rgba(217, 176, 143, .22) !important;
	outline: none;
}
.jet-form-builder ::placeholder { color: rgba(248, 243, 233, .62) !important; opacity: 1; }
.jet-form-builder .jet-form-builder__field-error,
.jet-form-builder__field-error { font-family: var(--f-ui); font-size: .72rem; color: #FFB3B3; }
.jet-form-builder__message { font-family: var(--f-ui); font-size: .85rem; border-radius: 14px; }

/* ---------- Карточки и блоки ---------- */
.elementor-widget-image-box .elementor-image-box-img img,
.elementor-widget-image img { border-radius: var(--radius-sm); }
.elementor-widget-image-box .elementor-image-box-title {
	font-family: var(--f-head); font-weight: 700; line-height: 1.25;
}
.elementor-widget-divider .elementor-divider-separator { border-color: rgba(217, 176, 143, .55) !important; }

/* ---------- Аккордеон FAQ ---------- */
.e-n-accordion-item, .elementor-accordion .elementor-accordion-item {
	border: 1px solid rgba(217, 176, 143, .35) !important;
	border-radius: var(--radius-sm) !important;
	margin-bottom: .7rem;
	background: rgba(255, 255, 255, .04);
	overflow: hidden;
}
.e-n-accordion-item-title, .elementor-tab-title {
	font-family: var(--f-head) !important; font-weight: 700 !important;
}

/* ==========================================================================
   Шапка
   ========================================================================== */
header.elementor-location-header {
	position: sticky;
	top: 0;
	z-index: 1000;
}
.uly-sc, .uly-sc > .elementor-widget-container { width: 100%; max-width: 100%; }
.elementor-location-header .e-con, .elementor-location-footer .e-con { --padding-top: 0; --padding-right: 0; --padding-bottom: 0; --padding-left: 0; }

.uly-wrap { width: min(1280px, 100vw - 2.5rem); max-width: none; margin-inline: auto; box-sizing: border-box; }
.uly-header .uly-logo, .uly-footer .uly-logo { height: 3.3rem !important; width: auto !important; max-width: none !important; }
.uly-footer .uly-brand--footer .uly-logo { height: 5rem !important; }

.uly-topbar {
	background: var(--navy-900);
	color: var(--copper);
	font-family: var(--f-ui);
	font-weight: 500;
	font-size: .66rem;
	letter-spacing: .14em;
	text-transform: uppercase;
	border-bottom: 1px solid rgba(217, 176, 143, .22);
}
.uly-topbar__in { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .55rem 0; }
.uly-topbar__slogan { font-family: var(--f-script); font-size: 1.15rem; letter-spacing: 0; text-transform: none; color: var(--copper-300); }
.uly-star {
	display: inline-block; width: .9em; height: .9em; margin-right: .7em; vertical-align: -.12em;
	background: url('img/star.svg') center / contain no-repeat;
}

.uly-header {
	background: rgba(11, 46, 91, .94);
	-webkit-backdrop-filter: saturate(1.4) blur(14px);
	backdrop-filter: saturate(1.4) blur(14px);
	border-bottom: 1px solid rgba(217, 176, 143, .35);
	transition: box-shadow .25s ease, background-color .25s ease;
}
.uly-header.is-scrolled { box-shadow: 0 14px 40px -18px rgba(0, 0, 0, .7); background: rgba(7, 28, 58, .96); }
.uly-header__in { display: flex; align-items: center; gap: 2rem; padding: .7rem 0; }

.uly-brand { display: inline-flex; align-items: center; gap: .85rem; text-decoration: none; color: var(--on-dark); flex: none; }
.uly-logo { display: block; width: auto; height: 3.4rem; object-fit: contain; filter: drop-shadow(0 6px 12px rgba(0, 0, 0, .35)); }
.uly-brand__text { display: flex; flex-direction: column; line-height: 1; }
.uly-brand__text b {
	font-family: var(--f-head); font-weight: 700; font-size: 1.3rem; letter-spacing: .02em; text-transform: uppercase; white-space: nowrap;
	background: var(--copper-gradient); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.uly-brand__text i {
	font-style: normal; font-family: var(--f-ui); font-weight: 500; font-size: .6rem; letter-spacing: .34em;
	text-transform: uppercase; color: var(--on-dark); margin-top: .45rem; opacity: .9;
}

.uly-nav { margin-left: auto; flex: 1 1 auto; min-width: 0; }
.uly-nav__list { list-style: none; display: flex; justify-content: flex-end; flex-wrap: nowrap; gap: .1rem; margin: 0; padding: 0; }
.uly-nav__list a {
	display: block; padding: .65rem .7rem; text-decoration: none; position: relative; white-space: nowrap;
	font-family: var(--f-ui); font-weight: 500; font-size: .7rem; letter-spacing: .09em; text-transform: uppercase; color: var(--on-dark);
	transition: color .2s ease;
}
.uly-nav__list a::after {
	content: ''; position: absolute; left: .85rem; right: .85rem; bottom: .3rem; height: 2px; border-radius: 2px;
	background: var(--copper); transform: scaleX(0); transform-origin: left; transition: transform .25s ease;
}
.uly-nav__list a:hover, .uly-nav__list .is-current a { color: var(--copper); }
.uly-nav__list a:hover::after, .uly-nav__list .is-current a::after { transform: scaleX(1); }

.uly-actions { display: flex; align-items: center; gap: 1.1rem; flex: none; }
.uly-header .uly-nav + .uly-actions { margin-left: 0; }
.uly-phone { font-family: var(--f-ui); font-weight: 600; font-size: .82rem; letter-spacing: .02em; color: var(--on-dark); text-decoration: none; white-space: nowrap; }
.uly-phone:hover { color: var(--copper); }
.uly-header .uly-btn { padding: .85em 1.5em !important; font-size: .68rem !important; white-space: nowrap; text-decoration: none; display: inline-block; }
.uly-header__in > .uly-actions:only-of-type { margin-left: auto; }

.uly-burger { display: none; width: 2.9rem; height: 2.9rem; padding: 0; background: transparent; border: 1.5px solid rgba(217, 176, 143, .6); border-radius: 50%; cursor: pointer; position: relative; }
.uly-burger span { position: absolute; left: 50%; width: 1.15rem; height: 2px; background: var(--copper); border-radius: 2px; transform: translateX(-50%); transition: transform .25s ease, opacity .2s ease, top .25s ease; }
.uly-burger span:nth-child(1) { top: 1.05rem; }
.uly-burger span:nth-child(2) { top: 1.4rem; }
.uly-burger span:nth-child(3) { top: 1.75rem; }
.is-open .uly-burger span:nth-child(1) { top: 1.4rem; transform: translateX(-50%) rotate(45deg); }
.is-open .uly-burger span:nth-child(2) { opacity: 0; }
.is-open .uly-burger span:nth-child(3) { top: 1.4rem; transform: translateX(-50%) rotate(-45deg); }

@media (max-width: 1480px) {
	.uly-phone { display: none; }
}
@media (max-width: 1100px) {
	.uly-header__in { gap: 1rem; }
	.uly-nav__list a { padding: .65rem .6rem; font-size: .64rem; }
}
@media (max-width: 980px) {
	.uly-burger { display: block; }
	.uly-nav {
		position: absolute; left: 0; right: 0; top: 100%; margin: 0;
		background: var(--navy-900); border-bottom: 1px solid rgba(217, 176, 143, .35);
		max-height: 0; overflow: hidden; transition: max-height .35s ease;
	}
	.is-open .uly-nav { max-height: 80vh; box-shadow: 0 30px 50px -20px rgba(0, 0, 0, .7); }
	.uly-nav__list { flex-direction: column; padding: .6rem 1.25rem 1.3rem; gap: 0; }
	.uly-nav__list a { padding: 1.05rem .2rem; font-size: .8rem; border-bottom: 1px solid rgba(217, 176, 143, .18); }
	.uly-nav__list a::after { display: none; }
	.uly-actions { margin-left: auto; }
	.uly-topbar__lic { display: none; }
	.uly-topbar__in { justify-content: center; }
}
@media (max-width: 767px) {
	html { scroll-padding-top: 5rem; }
	.uly-header .uly-btn { display: none; }
	.uly-logo { height: 3rem; }
	.uly-brand__text b { font-size: 1.1rem; }
	.uly-brand__text i { font-size: .5rem; letter-spacing: .28em; }
	.uly-wrap { width: calc(100% - 2rem); }
}
html.uly-menu-open { overflow: hidden; }

/* ==========================================================================
   Подвал
   ========================================================================== */
footer.elementor-location-footer { background: var(--navy-900); }
.uly-footer {
	position: relative; color: var(--on-dark); padding: 4.5rem 0 1.6rem; overflow: hidden;
	background:
		linear-gradient(180deg, rgba(7, 28, 58, 0) 0, var(--navy-900) 70%),
		url('img/pattern.svg') center top / 180px 120px repeat,
		var(--navy-900);
	border-top: 1px solid rgba(217, 176, 143, .45);
}
.uly-footer::before {
	content: ''; position: absolute; right: -8rem; top: -6rem; width: 30rem; height: 30rem; pointer-events: none;
	background: linear-gradient(135deg, transparent 0 46%, rgba(18, 59, 114, .75) 46% 62%, transparent 62% 66%, rgba(217, 176, 143, .5) 66% 67%, transparent 67%);
	transform: rotate(0deg); opacity: .9;
}
.uly-footer__grid { position: relative; display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.4fr; gap: 3rem; }
.uly-footer__grid.is-landing { grid-template-columns: 1.5fr 1.2fr; }
.uly-brand--footer .uly-logo { height: 5.2rem; }
.uly-brand--footer .uly-brand__text b { font-size: 1.7rem; }
.uly-script { font-family: var(--f-script); font-size: 2rem; line-height: 1.1; color: var(--copper); margin: 1.1rem 0 .4rem; }
.uly-footer__lead { max-width: 24rem; margin: 0; font-size: 1.18rem; color: var(--copper-300); }
.uly-footer h4 {
	font-family: var(--f-ui); font-weight: 600; font-size: .7rem; letter-spacing: .2em; text-transform: uppercase;
	color: var(--copper); margin: 0 0 1.2rem; padding-bottom: .8rem; position: relative;
}
.uly-footer h4::after { content: ''; position: absolute; left: 0; bottom: 0; width: 2.4rem; height: 2px; background: var(--copper-gradient); border-radius: 2px; }
.uly-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: .65rem; }
.uly-footer__list a, .uly-footer__list span { color: var(--on-dark); text-decoration: none; font-size: 1.2rem; line-height: 1.35; transition: color .2s ease; }
.uly-footer__list a:hover { color: var(--copper); }
.uly-footer__list small { display: block; font-family: var(--f-ui); font-weight: 500; font-size: .62rem; letter-spacing: .1em; text-transform: uppercase; color: rgba(217, 176, 143, .8); margin-top: .2rem; }
.uly-footer__bottom {
	position: relative; margin-top: 3.2rem; padding-top: 1.4rem; border-top: 1px solid rgba(217, 176, 143, .25);
	display: flex; flex-wrap: wrap; gap: .6rem 2rem; justify-content: space-between;
	font-family: var(--f-ui); font-weight: 500; font-size: .66rem; letter-spacing: .03em; color: rgba(248, 243, 233, .7);
}
.uly-footer__bottom a { color: var(--copper); text-decoration: none; }
.uly-footer__bottom a:hover { text-decoration: underline; }
@media (max-width: 980px) {
	.uly-footer__grid { grid-template-columns: 1fr 1fr; gap: 2.4rem; }
	.uly-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 767px) {
	.uly-footer { padding-top: 3rem; }
	.uly-footer__grid, .uly-footer__grid.is-landing { grid-template-columns: 1fr; }
	.uly-footer__list a, .uly-footer__list span { font-size: 1.05rem; }
}

/* ---------- Прочее ---------- */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ==========================================================================
   Современные блоки: первый экран, карточки, разделители
   ========================================================================== */

/* Первый экран страницы: тёмно-синий фон, фирменные диагональные полосы и звезда */
[data-elementor-type="wp-page"] > .e-con:first-child {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	padding-block: clamp(3rem, 6vw, 6rem) !important;
	background:
		radial-gradient(1200px 520px at 80% -10%, rgba(18, 59, 114, .55), transparent 60%),
		radial-gradient(900px 480px at 0% 110%, rgba(66, 2, 26, .55), transparent 60%),
		linear-gradient(180deg, var(--navy-700) 0%, var(--navy) 55%, var(--navy-900) 100%) !important;
}
[data-elementor-type="wp-page"] > .e-con:first-child::before,
[data-elementor-type="wp-page"] > .e-con:first-child::after {
	content: ''; position: absolute; pointer-events: none; z-index: -1;
}
/* диагональные полосы (элемент 5 брендбука) */
[data-elementor-type="wp-page"] > .e-con:first-child::before {
	right: -6%; top: -30%; width: 46%; height: 170%;
	transform: rotate(24deg);
	background:
		linear-gradient(90deg, transparent 0 14%, rgba(18, 59, 114, .95) 14% 38%, transparent 38% 44%, rgba(18, 59, 114, .9) 44% 62%, transparent 62% 66%, rgba(217, 176, 143, .7) 66% 66.6%, transparent 66.6%);
	opacity: .75;
}
[data-elementor-type="wp-page"] > .e-con:first-child::after {
	left: 4%; bottom: 1.5rem; width: 3.2rem; height: 3.2rem; opacity: .85;
	background: url('img/star.svg') center / contain no-repeat;
}
[data-elementor-type="wp-page"] > .e-con:first-child h1.elementor-heading-title {
	font-size: clamp(2.1rem, 3.1vw, 3.1rem) !important;
	color: var(--on-dark) !important;
	text-wrap: balance;
	text-shadow: 0 4px 30px rgba(0, 0, 0, .35);
}
[data-elementor-type="wp-page"] > .e-con:first-child h1.elementor-heading-title + * { margin-top: .5rem; }

/* Карточки: контейнеры с картинкой/иконкой и текстом */
.e-con.e-child:has(> .elementor-widget-image-box),
.e-con.e-child:has(> .elementor-widget-image):has(> .elementor-widget-heading) {
	background: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .03)) !important;
	border: 1px solid rgba(217, 176, 143, .38) !important;
	border-radius: var(--radius) !important;
	box-shadow: var(--shadow);
	padding: clamp(1.1rem, 1.8vw, 1.8rem) !important;
	backdrop-filter: blur(4px);
	transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.e-con.e-child:has(> .elementor-widget-image-box):hover,
.e-con.e-child:has(> .elementor-widget-image):has(> .elementor-widget-heading):hover {
	transform: translateY(-4px);
	border-color: var(--copper) !important;
	box-shadow: 0 28px 60px -24px rgba(0, 0, 0, .7), 0 0 0 1px rgba(217, 176, 143, .35);
}
.elementor-widget-image-box { text-align: center; }
.elementor-widget-image-box .elementor-image-box-img { margin-bottom: 1rem !important; }
.elementor-widget-image-box .elementor-image-box-img img {
	width: 4.2rem; height: 4.2rem; object-fit: contain; border-radius: 0;
	filter: drop-shadow(0 8px 14px rgba(0, 0, 0, .35));
}
.elementor-widget-image-box .elementor-image-box-description { color: var(--copper-300); }

/* Разделители: медная линия со звездой */
.elementor-widget-divider .elementor-divider { position: relative; padding-block: 1.2rem !important; }
.elementor-widget-divider .elementor-divider-separator { border-top-width: 1px !important; margin: 0 auto !important; opacity: .7; }
.elementor-widget-divider .elementor-divider::after {
	content: ''; position: absolute; left: 50%; top: 50%; width: 1.1rem; height: 1.1rem; transform: translate(-50%, -50%);
	background: url('img/star.svg') center / contain no-repeat; filter: drop-shadow(0 0 8px rgba(217, 176, 143, .8));
	outline: 0.7rem solid var(--navy); border-radius: 50%;
}

/* Списки в карточках */
.elementor-widget-text-editor ul, .elementor-widget-heading ul { padding-left: 1.2em; }
.elementor-widget-text-editor li::marker, .elementor-widget-heading li::marker { color: var(--copper); }
.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-widget-text-editor li { font-size: 1.08rem; }
.elementor-widget-heading .elementor-heading-title { text-wrap: pretty; }

/* Ссылка согласия на обработку данных */
.elementor-widget-heading a, .elementor-widget-text-editor a { text-underline-offset: .2em; }

/* Шапка: воздух между логотипом и меню */
.uly-brand { margin-right: 1.5rem; }
.uly-nav__list { padding-left: 1rem; }

/* Слоган бренда под главным заголовком первого экрана */
[data-elementor-type="wp-page"] > .e-con:first-child h1.elementor-heading-title:first-of-type::after {
	content: 'Больше, чем уроки!';
	display: block; margin-top: .9rem;
	font-family: var(--f-script); font-weight: 400; font-size: clamp(1.6rem, 2.2vw, 2.2rem); line-height: 1.1;
	color: var(--copper); text-shadow: none;
}
.elementor-button { white-space: normal; text-align: center; }

/* Подвал: диагональная полоса не должна перекрывать тексты */
.uly-footer::before { right: -12rem; top: auto; bottom: -14rem; width: 26rem; height: 26rem; opacity: .35; z-index: 0; }
.uly-footer__grid, .uly-footer__bottom { z-index: 1; }

/* Подчёркивание заголовков из старых настроек виджетов не нужно */
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-text-editor { text-decoration: none !important; }
.elementor-widget-text-editor a { text-decoration: underline !important; }
.elementor-widget-heading .elementor-heading-title a { text-decoration: none !important; }

/* Мобильная шапка и заголовки */
.elementor-widget-heading .elementor-heading-title { overflow-wrap: break-word; hyphens: none; -webkit-hyphens: none; }
@media (max-width: 767px) {
	.uly-header__in { gap: .6rem; padding: .55rem 0; }
	.uly-brand { margin-right: 0; gap: .55rem; min-width: 0; }
	.uly-header .uly-logo { height: 2.6rem !important; }
	.uly-brand__text b { font-size: .92rem; letter-spacing: .01em; }
	.uly-brand__text i { font-size: .42rem; letter-spacing: .24em; margin-top: .3rem; }
	.uly-actions { margin-left: auto; }
	.uly-burger { width: 2.5rem; height: 2.5rem; }
	.uly-burger span { width: 1rem; }
	.uly-burger span:nth-child(1) { top: .9rem; } .uly-burger span:nth-child(2) { top: 1.2rem; } .uly-burger span:nth-child(3) { top: 1.5rem; }
	.is-open .uly-burger span:nth-child(1), .is-open .uly-burger span:nth-child(3) { top: 1.2rem; }
	[data-elementor-type="wp-page"] > .e-con:first-child h1.elementor-heading-title { font-size: clamp(1.45rem, 6.2vw, 2rem) !important; }
	[data-elementor-type="wp-page"] > .e-con:first-child::before { right: -40%; width: 90%; opacity: .5; }
}

/* Поля форм: белые «таблетки» читаются и на тёмном, и на молочном фоне */
.jet-form-builder__field,
.jet-form-builder input[type="text"],
.jet-form-builder input[type="tel"],
.jet-form-builder input[type="email"],
.jet-form-builder textarea,
.jet-form-builder select {
	color: var(--navy-900) !important;
	background: #ffd4d1 !important;
	border: 1.5px solid rgba(217, 176, 143, .9) !important;
	box-shadow: 0 8px 22px -14px rgba(7, 28, 58, .6);
}
.jet-form-builder__field:focus, .jet-form-builder input:focus, .jet-form-builder textarea:focus {
	background: #ffd4d1 !important;
	border-color: var(--burgundy) !important;
	box-shadow: 0 0 0 4px rgba(217, 176, 143, .35) !important;
}
.jet-form-builder ::placeholder { color: rgba(11, 46, 91, .55) !important; }

/* Первый экран тёмный на любой странице — тексты в нём светлые */
[data-elementor-type="wp-page"] > .e-con:first-child .elementor-heading-title,
[data-elementor-type="wp-page"] > .e-con:first-child .elementor-widget-text-editor { color: var(--on-dark) !important; }
[data-elementor-type="wp-page"] > .e-con:first-child h2.elementor-heading-title,
[data-elementor-type="wp-page"] > .e-con:first-child h3.elementor-heading-title { color: var(--copper-300) !important; }

.uly-nav__list a { letter-spacing: .07em; }
@media (max-width: 1280px) { .uly-nav__list a { padding: .65rem .5rem; font-size: .62rem; } }

/* ==========================================================================
   Единообразие и адаптивность (правки по замечаниям)
   ========================================================================== */

/* Страница никогда не шире экрана; блоки могут сжиматься */
html, body { max-width: 100%; overflow-x: clip; }
.e-con, .e-con-inner, .elementor-widget, .elementor-widget-container { min-width: 0; }
img, video, iframe { max-width: 100%; }

/* --- Шапка: ничего не налезает друг на друга --- */
.uly-header__in { flex-wrap: nowrap; }
.uly-brand { position: relative; z-index: 2; }
.uly-brand__text b { font-size: clamp(1rem, 1.75vw, 1.3rem); }
.uly-nav { overflow: hidden; }
.uly-nav__list { justify-content: flex-end; }
.uly-nav__list a { font-size: clamp(.56rem, .8vw, .7rem); padding-inline: clamp(.4rem, .75vw, .85rem); }
@media (max-width: 1360px) { .uly-actions .uly-btn { display: none; } }   /* кнопка есть на первом экране */

/* --- Кнопки: один размер, один вид, шрифт сжимается, а не переносится --- */
.elementor-button, .uly-btn {
	display: inline-flex !important; align-items: center; justify-content: center;
	min-height: 3.1em; box-sizing: border-box; max-width: 100%;
	white-space: nowrap !important;
	font-size: clamp(.58rem, 1.15vw, .8rem) !important;
	letter-spacing: .05em; padding: .9em 1.5em !important; text-align: center;
}
.elementor-button .elementor-button-content-wrapper { justify-content: center; max-width: 100%; }
.elementor-button .elementor-button-text { overflow: hidden; text-overflow: clip; }
@media (max-width: 767px) { .elementor-button { font-size: clamp(.55rem, 3.3vw, .75rem) !important; } }

/* Кнопки в карточках: на всю ширину карточки, одинаково, с отступом между ними */
.e-con.e-child:has(> .elementor-widget-button) > .elementor-widget-button { width: 100%; }
.e-con.e-child:has(> .elementor-widget-button) > .elementor-widget-button .elementor-button { width: 100%; }
.e-con.e-child > .elementor-widget-button + .elementor-widget-button { margin-top: .8rem; }
.e-con.e-child > .elementor-widget:not(.elementor-widget-button) + .elementor-widget-button { margin-top: auto; }
.e-con.e-child > .elementor-widget:not(.elementor-widget-button) + .elementor-widget-button { padding-top: 1rem; }

/* Текст в карточках: без «рваных» подчёркиваний */
.e-con.e-child .elementor-widget-text-editor, .e-con.e-child .elementor-heading-title { text-decoration: none !important; text-shadow: none !important; }

/* --- Карусель видео: стрелки под лентой, листается и свайпом --- */
.jet-listing-grid__slider { position: relative; padding-bottom: 4.8rem; }
.jet-listing-grid__slider .slick-list { touch-action: pan-y; }
.jet-listing-grid__slider-icon {
	position: absolute !important; top: auto !important; bottom: 0 !important; transform: none !important;
	width: 3.3rem !important; height: 3.3rem !important; padding: 0 !important; margin: 0 !important;
	display: flex !important; align-items: center; justify-content: center;
	border-radius: 50% !important; cursor: pointer; z-index: 5;
	background: var(--navy-900) !important; border: 1.5px solid var(--copper) !important; color: var(--copper) !important;
	box-shadow: 0 10px 24px -12px rgba(0, 0, 0, .8);
	transition: background-color .2s ease, transform .2s ease;
}
.jet-listing-grid__slider-icon svg { width: 1.2rem !important; height: 1.2rem !important; }
.jet-listing-grid__slider-icon svg path, .jet-listing-grid__slider-icon svg * { stroke: var(--copper); fill: none; }
.jet-listing-grid__slider-icon:hover { background: var(--burgundy) !important; }
.jet-listing-grid__slider-icon.prev-arrow { left: calc(50% - 3.9rem) !important; right: auto !important; }
.jet-listing-grid__slider-icon.next-arrow { left: calc(50% + .6rem) !important; right: auto !important; }

/* --- Подвал: тексты сжимаются под ширину экрана --- */
.uly-footer { overflow-x: clip; }
.uly-brand--footer .uly-brand__text b { font-size: clamp(1.05rem, 4.8vw, 1.7rem); }
.uly-script { font-size: clamp(1.5rem, 6vw, 2rem); }
.uly-footer__lead { font-size: clamp(1rem, 3.9vw, 1.18rem); }
.uly-footer__list a, .uly-footer__list span { overflow-wrap: anywhere; }
@media (max-width: 767px) {
	.uly-footer__grid, .uly-footer__grid.is-landing { grid-template-columns: minmax(0, 1fr); }
	.uly-footer__bottom { flex-direction: column; }
	.uly-brand--footer { gap: .6rem; }
	.uly-brand--footer .uly-logo { height: 3.6rem !important; }
}

/* --- Заголовки и текст: уменьшаются, если не влезают --- */
.elementor-widget-heading h2.elementor-heading-title { font-size: clamp(1.35rem, 3.4vw, 2.4rem); }
.elementor-widget-heading h3.elementor-heading-title { font-size: clamp(1.1rem, 2.2vw, 1.6rem); }
@media (max-width: 767px) {
	.elementor-widget-heading h2.elementor-heading-title { font-size: clamp(1.15rem, 6vw, 1.6rem); }
	.elementor-widget-heading h3.elementor-heading-title { font-size: clamp(1rem, 5vw, 1.35rem); }
}

/* Заголовки карточек не вылезают за рамку */
.e-con.e-child .elementor-widget-heading h3.elementor-heading-title,
.e-con.e-child .elementor-widget-heading h4.elementor-heading-title {
	font-size: clamp(.95rem, 1.55vw, 1.3rem); overflow-wrap: break-word; hyphens: none;
}
.e-con.e-child .elementor-heading-title, .e-con.e-child .elementor-heading-title * { text-decoration: none !important; }
@media (max-width: 767px) {
	.e-con.e-child .elementor-widget-heading h3.elementor-heading-title { font-size: clamp(1rem, 5vw, 1.3rem); }
}

/* Стрелка «вперёд» зеркальна стрелке «назад»; заголовки карточек читаемее */
.jet-listing-grid__slider-icon.next-arrow svg { transform: rotate(180deg); }
.e-con.e-child .elementor-widget-heading h3.elementor-heading-title,
.e-con.e-child .elementor-widget-heading h4.elementor-heading-title { font-size: clamp(1.05rem, 1.8vw, 1.5rem); }
@media (max-width: 767px) {
	.e-con.e-child .elementor-widget-heading h3.elementor-heading-title { font-size: clamp(1.15rem, 5.6vw, 1.45rem); }
}

/* Все кнопки внутри карточек — одной ширины и одного вида */
.e-con.e-child .elementor-widget-button { width: 100%; }
.e-con.e-child .elementor-widget-button .elementor-button-wrapper { width: 100%; }
.e-con.e-child .elementor-widget-button .elementor-button { width: 100%; }

/* Стрелки карусели — под лентой видео (на любом устройстве) */
.jet-listing .slick-slider, .jet-listing-grid__items.slick-slider { margin-bottom: 5rem !important; }
.jet-listing-grid__slider-icon { bottom: -4.6rem !important; }

/* Планшеты: чуть крупнее базовый шрифт, чтобы мелкий текст читался */
@media (min-width: 768px) and (max-width: 1100px) { html { font-size: 15.5px !important; } }

/* Отступ между подряд идущими кнопками и читаемый минимальный размер текста в карточках */
.elementor-widget-button + .elementor-widget-button { margin-top: .8rem; }
.e-con.e-child .elementor-widget-text-editor,
.e-con.e-child .elementor-widget-text-editor p,
.e-con.e-child .elementor-widget-text-editor li,
.e-con.e-child .elementor-widget-heading p.elementor-heading-title,
.e-con.e-child .elementor-widget-heading div.elementor-heading-title { font-size: 1rem !important; line-height: 1.45 !important; }

.e-con .elementor-widget-button + .elementor-widget-button { margin-top: .8rem !important; }
.e-con.e-child .elementor-widget-heading :is(h4, h5, h6, p, div, span).elementor-heading-title:not(.uly-keep) { font-size: 1rem !important; line-height: 1.45 !important; }
.e-con.e-child .elementor-widget-heading :is(h4).elementor-heading-title { font-size: clamp(1.05rem, 1.8vw, 1.5rem) !important; line-height: 1.25 !important; }

/* ==========================================================================
   Правки: шапка, компактный подвал, размер текста на кнопках
   ========================================================================== */

/* Шапка: шире рамка, телефон только на очень широких экранах, кнопка прячется на узких */
.uly-wrap { width: min(1360px, 100vw - 2.5rem); }
.uly-phone { display: none; }
@media (min-width: 1700px) { .uly-phone { display: inline-block; } }
@media (max-width: 1360px) { .uly-header .uly-actions .uly-btn { display: none !important; } }
@media (max-width: 767px)  { .uly-header .uly-btn { display: none !important; } }
.uly-header .uly-btn { padding: .85em 1.4em !important; font-size: clamp(.6rem, .8vw, .7rem) !important; min-height: 0; }
.uly-nav { overflow: visible; }

/* Шапка на телефоне */
@media (max-width: 767px) {
	.uly-topbar__in { padding: .4rem 0; }
	.uly-topbar__slogan { font-size: 1rem; }
	.uly-header__in { padding: .5rem 0; gap: .5rem; }
	.uly-brand { flex: 1 1 auto; min-width: 0; }
	.uly-brand__text { min-width: 0; }
	.uly-brand__text b { font-size: clamp(.8rem, 4.4vw, 1.05rem); white-space: nowrap; }
	.uly-actions { flex: none; margin-left: 0; }
}

/* Кнопки: текст целиком */
.elementor-button, .uly-btn { letter-spacing: .04em; padding-inline: .9em !important; }
.elementor-button { font-size: clamp(.54rem, 1vw, .74rem) !important; }
@media (max-width: 767px) { .elementor-button { font-size: clamp(.5rem, 3.1vw, .7rem) !important; } }

/* ---------- Подвал компактнее ---------- */
.uly-footer { padding: 2.2rem 0 1rem; }
.uly-footer::before { display: none; }
.uly-footer__grid { gap: 1.6rem 2.4rem; grid-template-columns: 1.3fr .8fr .8fr 1.3fr; }
.uly-brand--footer .uly-logo { height: 3.6rem !important; }
.uly-brand--footer .uly-brand__text b { font-size: clamp(1rem, 4.2vw, 1.35rem); }
.uly-script { font-size: clamp(1.25rem, 5vw, 1.6rem); margin: .6rem 0 .2rem; }
.uly-footer__lead { font-size: clamp(.9rem, 3.4vw, 1.02rem); line-height: 1.3; max-width: 22rem; }
.uly-footer h4 { margin: 0 0 .7rem; padding-bottom: .5rem; font-size: .62rem; }
.uly-footer__list { gap: .3rem; }
.uly-footer__list a, .uly-footer__list span { font-size: 1.02rem; line-height: 1.25; overflow-wrap: break-word; hyphens: none; }
.uly-footer__list small { font-size: .55rem; margin-top: 0; }
.uly-footer__bottom { margin-top: 1.4rem; padding-top: .8rem; gap: .3rem 1.4rem; font-size: .6rem; }
@media (max-width: 980px) { .uly-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 767px) {
	.uly-footer { padding-top: 1.6rem; }
	.uly-footer__grid, .uly-footer__grid.is-landing { grid-template-columns: 1fr 1fr; gap: 1.1rem 1rem; }
	.uly-footer__brand, .uly-footer__contacts { grid-column: 1 / -1; }
	.uly-footer__lead { display: none; }
	.uly-footer__list a, .uly-footer__list span { font-size: .88rem; }
	.uly-footer__bottom { margin-top: 1rem; font-size: .55rem; }
}

/* Мобильное меню закрыто, пока не нажат гамбургер */
@media (max-width: 980px) {
	.uly-nav { overflow: hidden; background: var(--navy-900); }
	.uly-header:not(.is-open) .uly-nav { max-height: 0 !important; visibility: hidden; }
	.uly-header.is-open .uly-nav { visibility: visible; }
}

/* Ряды карточек: сетка — все колонки строго одной ширины; высоту выравнивает brand.js */
.e-con.uly-cards { display: grid !important; gap: 2em; align-items: stretch; width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.e-con.uly-cards-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.e-con.uly-cards-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.e-con.uly-cards > .e-con { width: 100% !important; max-width: none; min-width: 0; align-self: stretch; box-sizing: border-box; }
@media (max-width: 1024px) { .e-con.uly-cards-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px)  { .e-con.uly-cards, .e-con.uly-cards-2, .e-con.uly-cards-4 { grid-template-columns: minmax(0, 1fr); } }
.e-con.uly-cards > :not(.e-con) { display: flex; flex-direction: column; min-width: 0; width: 100%; align-self: stretch; }
.e-con.uly-cards > :not(.e-con) > .e-con { flex: 1 1 auto; width: 100% !important; max-width: none; }


/* ==========================================================================
   Типографика: без переносов слов, ровные строки, составные слова не рвутся
   ========================================================================== */
html, body, .elementor, .elementor * { hyphens: none !important; -webkit-hyphens: none !important; }
.elementor-widget-heading .elementor-heading-title,
.elementor-widget-image-box .elementor-image-box-title { text-wrap: balance; overflow-wrap: break-word; word-break: normal; }
.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-widget-text-editor li,
.elementor-widget-image-box .elementor-image-box-description,
.elementor-widget-heading p.elementor-heading-title { text-wrap: pretty; overflow-wrap: break-word; word-break: normal; }
.nb { white-space: nowrap; }
.uly-footer__list a, .uly-footer__list span { text-wrap: pretty; }

/* Карточки способов оплаты: все одинаковые, подсвечиваются при наведении */
.e-con.uly-pay { display: flex !important; flex-direction: row; flex-wrap: nowrap; gap: 1.4rem; align-items: stretch; }
.e-con.uly-pay > .e-con {
	flex: 1 1 0 !important; width: auto !important; max-width: none; min-width: 0; align-self: stretch;
	box-sizing: border-box; text-align: center; align-items: center;
	background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03)) !important;
	border: 1px solid rgba(217,176,143,.38) !important; border-radius: var(--radius) !important;
	padding: clamp(1.1rem, 1.8vw, 1.8rem) !important; box-shadow: var(--shadow); backdrop-filter: blur(4px);
	transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease, background-color .3s ease;
}
.e-con.uly-pay > .e-con:hover, .e-con.uly-pay > .e-con:focus-within {
	transform: translateY(-5px); border-color: var(--copper) !important;
	background: linear-gradient(180deg, rgba(217,176,143,.20), rgba(217,176,143,.07)) !important;
	box-shadow: 0 28px 60px -24px rgba(0,0,0,.7), 0 0 0 1px rgba(217,176,143,.5);
}
@media (max-width: 767px) { .e-con.uly-pay { flex-direction: column; } .e-con.uly-pay > .e-con { flex: 0 0 auto !important; width: 100% !important; } }

/* Первый экран: заголовок ровными строками */
[data-elementor-type="wp-page"] > .e-con:first-child h1.elementor-heading-title { text-wrap: balance; max-width: 22ch; margin-inline: auto; }
@media (min-width: 768px) { [data-elementor-type="wp-page"] > .e-con:first-child h1.elementor-heading-title { max-width: 26ch; } }

/* Телефон и планшет: названия не сдвигаются и не режутся */
@media (max-width: 1024px) {
	.elementor-widget-heading .elementor-heading-title, .elementor-widget-image-box .elementor-image-box-title { overflow-wrap: break-word; }
	.e-con.e-child .elementor-widget-heading h3.elementor-heading-title { font-size: clamp(1.05rem, 2.6vw, 1.4rem); }
}
@media (max-width: 767px) {
	.elementor-widget-image-box .elementor-image-box-title { font-size: clamp(1rem, 5vw, 1.3rem); }
	.elementor-widget-text-editor, .elementor-widget-text-editor p, .elementor-widget-text-editor li { font-size: clamp(.95rem, 4.2vw, 1.1rem); }
}

/* Заголовок первого экрана: после «с» — новая строка, название школы не рвётся (на компьютере) */
[data-elementor-type="wp-page"] > .e-con:first-child h1.elementor-heading-title { max-width: 36ch; }
@media (min-width: 768px) { .uly-keep { white-space: nowrap; } }

.e-con.uly-pay > .e-con { justify-content: center; }
@media (min-width: 981px) { .uly-footer__grid { grid-template-columns: 1.15fr 1fr 1.1fr 1.3fr; } }
.uly-footer__list a, .uly-footer__list span { font-size: clamp(.9rem, 1.15vw, 1.02rem); overflow-wrap: break-word; word-break: normal; }
@media (max-width: 767px) { .uly-footer__list a, .uly-footer__list span { font-size: .95rem; } }
@media (max-width: 560px) { .uly-footer__grid, .uly-footer__grid.is-landing { grid-template-columns: minmax(0, 1fr); } }


/* Описания в блоках «Почему выбирают нас» — крупнее */
.elementor-widget-image-box .elementor-image-box-description { font-size: clamp(1.02rem, 1.35vw, 1.2rem) !important; line-height: 1.5 !important; }
.elementor-widget-image-box .elementor-image-box-title { font-size: clamp(1.1rem, 1.6vw, 1.45rem) !important; }

/* Заголовки и описания блоков с иконками — фирменные шрифты (в виджетах остался старый Ubuntu) */
.elementor-image-box-title, .elementor-icon-box-title, .elementor-widget .elementor-heading-title[style*="Ubuntu"] { font-family: var(--f-head) !important; font-weight: 700 !important; }
.elementor-image-box-description, .elementor-icon-box-description { font-family: var(--f-text) !important; font-weight: 600 !important; }

/* ==========================================================================
   Правки: миссия, карточки курсов, первый экран «Английский для детей», логотип
   ========================================================================== */

/* Тексты в карточках курсов — крупнее */
.e-con.e-child .elementor-widget-text-editor, .e-con.e-child .elementor-widget-text-editor * {
	font-size: clamp(1rem, 1.25vw, 1.15rem) !important; line-height: 1.5 !important;
}
.e-con.e-child .elementor-widget-heading :is(p, div).elementor-heading-title { font-size: clamp(1rem, 1.25vw, 1.15rem) !important; line-height: 1.5 !important; }
.e-con.e-child .elementor-widget-text-editor strong { font-size: inherit !important; }

/* «Наша миссия»: ровный крупный текст по центру */
.uly-mission { width: 100%; max-width: 54rem; margin-inline: auto !important; }
.uly-mission .elementor-heading-title { font-size: clamp(1.15rem, 1.7vw, 1.5rem) !important; line-height: 1.55 !important; text-align: center; text-wrap: pretty; }

/* Первый экран «Английский язык для детей» */
.uly-eyebrow, .uly-eyebrow .elementor-heading-title {
	font-size: clamp(.8rem, 1.1vw, 1rem) !important; letter-spacing: .16em; text-transform: uppercase; white-space: normal;
	color: var(--copper) !important; max-width: none !important; width: auto !important; text-align: center; text-wrap: balance;
}
.uly-phone-big { text-align: center; }
.uly-phone-big .elementor-heading-title {
	display: inline-block; font-family: var(--f-head) !important; font-weight: 700 !important;
	font-size: clamp(1.15rem, 2vw, 1.8rem) !important; letter-spacing: .02em;
	color: var(--navy-900) !important; background: var(--copper-gradient); border-radius: 999px;
	padding: .55em 1.5em; box-shadow: 0 14px 30px -14px rgba(217, 176, 143, .75);
}

/* Новый логотип на странице «Английский язык» — на тёмном круге с медной рамкой */
.uly-emblem img {
	width: clamp(9rem, 14vw, 13rem) !important; height: clamp(9rem, 14vw, 13rem) !important; object-fit: contain;
	border-radius: 50% !important; padding: 1rem; background: radial-gradient(circle at 30% 25%, var(--navy-700), var(--navy-900));
	border: 3px solid var(--copper); box-shadow: 0 18px 40px -16px rgba(7, 28, 58, .8);
}

.e-con.e-child .elementor-widget.uly-mission .elementor-heading-title,
.elementor .uly-mission.elementor-widget-heading p.elementor-heading-title { font-size: clamp(1.2rem, 1.8vw, 1.55rem) !important; line-height: 1.55 !important; text-align: center; }

.e-con.e-child .elementor-widget.uly-mission .elementor-heading-title,
.elementor .uly-mission.elementor-widget-heading p.elementor-heading-title { font-size: clamp(1.4rem, 2.1vw, 1.8rem) !important; line-height: 1.5 !important; }
[data-elementor-type="wp-page"] > .e-con:first-child .elementor-widget.uly-phone-big .elementor-heading-title { color: var(--navy-900) !important; text-shadow: none; }
.uly-emblem { display: flex; justify-content: center; }
.uly-emblem .elementor-widget-container { width: auto !important; flex: none; }
.uly-emblem img { aspect-ratio: 1 / 1; min-width: clamp(9rem, 14vw, 13rem); max-width: none !important; }
.uly-emblem { margin-bottom: 1.5rem !important; }
.uly-emblem + .elementor-widget, .uly-emblem ~ .elementor-widget-heading { position: relative; z-index: 1; }
@media (max-width: 767px) { .uly-emblem img { width: 8rem !important; height: 8rem !important; min-width: 0; } .uly-emblem { margin-bottom: 1.8rem !important; } }
.elementor-widget.uly-emblem, .elementor-widget.uly-emblem .elementor-widget-container {
	width: auto !important; height: auto !important; min-height: 0 !important; max-width: none !important;
	border: 0 !important; background: none !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important;
}
@media (max-width: 767px) { .elementor-widget.uly-emblem { margin-inline: auto !important; } }
.e-con:has(> .uly-emblem) {
	width: auto !important; min-height: 0 !important; height: auto !important; border: 0 !important;
	background: none !important; border-radius: 0 !important; box-shadow: none !important; align-items: center;
}
.e-con:has(> .uly-emblem) { margin-bottom: 1.5rem !important; padding-bottom: 0 !important; }
@media (max-width: 767px) { .e-con:has(> .uly-emblem) { margin-bottom: 3.2rem !important; } }
@media (max-width: 767px) { .elementor-widget.uly-emblem { transform: translateY(-5.2rem); } .e-con:has(> .uly-emblem) { margin-bottom: 0 !important; } }

/* Мессенджеры в подвале */
.uly-messengers { display: flex; gap: .5rem; margin-top: .45rem; }
.uly-footer .uly-messengers a.uly-msg {
	font-family: var(--f-ui); font-weight: 600; font-size: .62rem !important; letter-spacing: .1em; text-transform: uppercase;
	padding: .45em 1em; border: 1px solid var(--copper); border-radius: 999px; color: var(--copper); text-decoration: none; line-height: 1.2;
}
.uly-footer .uly-messengers a.uly-msg:hover { background: var(--copper); color: var(--navy-900); }

/* Карусель видео: стрелки ближе, меньше пустоты */
.jet-listing .slick-slider, .jet-listing-grid__items.slick-slider { margin-bottom: 3.6rem !important; }
.jet-listing-grid__slider-icon { bottom: -3.4rem !important; }
.jet-listing-grid__slider { padding-bottom: 3.4rem; }


/* Поля всех форм — кремовые #F8F3E6 (белого фона в фирменном стиле нет) */
.jet-form-builder .jet-form-builder__field, .jet-form-builder input, .jet-form-builder textarea, .jet-form-builder select,
.elementor-field-group .elementor-field, .elementor-form .elementor-field-textual, input.wpcf7-form-control, input[type="text"], input[type="tel"], input[type="email"], textarea, select {
	background: #ffd4d1 !important; background-color: #ffd4d1 !important; color: var(--navy-900) !important;
}
input:-webkit-autofill, input:-webkit-autofill:focus { -webkit-box-shadow: 0 0 0 1000px #ffd4d1 inset !important; -webkit-text-fill-color: #0B2E5B !important; }

.jet-form-builder ::placeholder, input::placeholder, textarea::placeholder { color: rgba(7, 28, 58, .72) !important; opacity: 1; }

/* Иконки в фирменном розово-медном (#D9B08F) вместо разноцветных */
.elementor img[src*="icons8-"] {
	filter: brightness(0) saturate(100%) invert(74%) sepia(21%) saturate(640%) hue-rotate(338deg) brightness(95%) contrast(92%);
}

/* Кнопка отправки формы не выходит за экран на телефоне */
.jet-form-builder__submit, .jet-form-builder__action-button, .jet-form-builder .jet-form-builder__submit-wrap { max-width: 100% !important; box-sizing: border-box; }
.jet-form-builder__submit-wrap, .jet-form-builder .wp-block-jet-forms-submit-field { max-width: 100%; }
@media (max-width: 767px) {
	.jet-form-builder__submit, .jet-form-builder__action-button {
		width: 100% !important; white-space: normal !important; padding: .95em 1em !important;
		font-size: clamp(.62rem, 3.4vw, .8rem) !important; letter-spacing: .04em !important; text-align: center;
	}
}

/* ---------- Вход в личный кабинет ---------- */
.uly-login { font-family: var(--f-ui); font-weight: 600; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--copper); text-decoration: none; white-space: nowrap; padding: .55rem 1.1rem; border: 1px solid var(--copper); border-radius: 999px; transition: background .2s, color .2s; }
.uly-login:hover { background: var(--copper); color: var(--navy-900, #0B2E5B); }
@media (max-width: 767px) { .uly-login { padding: .45rem .8rem; font-size: .66rem; } }
.uly-header .uly-actions .uly-login { color: var(--copper) !important; font-size: .72rem !important; }
.uly-header .uly-actions .uly-login:hover { color: #0B2E5B !important; }
@media (max-width: 767px) {
	.uly-header .uly-actions .uly-login { padding: .35rem .7rem; font-size: .6rem !important; }
	.uly-header .uly-brand__text { display: none; }
}
