/* Верхний регистр заголовков, как в старой теме Astra. */
.nest-coworking .elementor-element-98d5698 .elementor-heading-title,
.nest-coworking .elementor-element-a2d6bca .elementor-heading-title,
.nest-coworking .elementor-element-5edeee9 .elementor-heading-title,
.nest-coworking .elementor-element-f9de913 .elementor-heading-title,
.nest-coworking .elementor-element-62e35ef .elementor-heading-title {
	text-transform: uppercase;
}

/* Галерея (замена Pro-виджета Gallery). */
.elementor-element-19b7564 .elementor-gallery__container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

.elementor-element-19b7564 .e-gallery-item {
	display: block;
	position: relative;
	overflow: hidden;
	aspect-ratio: 3 / 2;
}

.elementor-element-19b7564 .e-gallery-image {
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.elementor-element-19b7564 .elementor-gallery-item__overlay {
	position: absolute;
	inset: 0;
	background-color: transparent;
	transition: background-color var(--overlay-transition-duration, 800ms);
}

.elementor-element-19b7564 .e-gallery-item:hover .elementor-gallery-item__overlay {
	background-color: rgba(0, 0, 0, 0.5);
}

@media (max-width: 1024px) {
	.elementor-element-19b7564 .elementor-gallery__container {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	.elementor-element-19b7564 .elementor-gallery__container {
		grid-template-columns: 1fr;
	}
}

/* Центрирование контента слайдов (в Pro это задавалось неявно). */
.elementor-slides .swiper-slide-inner {
	align-items: center;
	justify-content: center;
}

/* Кнопки прайс-таблиц: убираем подчёркивание, которое добавляет тема. */
.elementor-price-table__button,
.elementor-price-table__button:hover,
.elementor-price-table__button:focus {
	text-decoration: none !important;
}

/* Формы главных страниц — под старую Elementor Pro форму. */
.nest-home-form .wpforms-field {
	padding: 0 0 15px;
}

.nest-home-form .wpforms-field-label {
	color: #373a3c;
	display: block;
	font-size: 15px;
	font-weight: 400;
	margin-bottom: 5px;
}

.nest-home-form .wpforms-field input,
.nest-home-form .wpforms-field textarea {
	background: #ffffff;
	border: 1px solid #818a91;
	border-radius: 2px;
	box-shadow: none;
	color: #373a3c;
	font-size: 15px;
	padding: 11.25px;
	width: 100%;
}

.nest-home-form .wpforms-field textarea {
	min-height: 100px;
}

.nest-home-form .wpforms-submit {
	background: #818a91;
	border: 0;
	border-radius: 0;
	color: #ffffff;
	font-size: 14px;
	font-weight: 400;
	padding: 17px 40px;
	text-transform: uppercase;
}

.nest-home-form .wpforms-submit:hover,
.nest-home-form .wpforms-submit:focus {
	background: #6b747c;
	color: #ffffff;
}

.nest-home-form .wpforms-required-label {
	color: #d80a20;
}

/* Стили WPForms внутри бывших Elementor-форм. */
.nest-wpforms .wpforms-container {
	margin: 0;
}

.nest-wpforms .wpforms-field {
	padding: 0 0 18px;
}

.nest-wpforms .wpforms-field input,
.nest-wpforms .wpforms-field textarea {
	background: #ffffff;
	border: 1px solid #d5d8dc;
	border-radius: 0;
	box-shadow: none;
	color: #3c4e5f;
	font-size: 16px;
	line-height: 1.4;
	padding: 13px 16px;
	width: 100%;
}

.nest-wpforms .wpforms-field input::placeholder,
.nest-wpforms .wpforms-field textarea::placeholder {
	color: #9aa3ab;
	opacity: 1;
}

.nest-wpforms .wpforms-field textarea {
	min-height: 110px;
	resize: vertical;
}

.nest-wpforms .wpforms-submit-container {
	padding: 0;
}

.nest-wpforms .wpforms-submit {
	background-color: #d80a20;
	border: 3px solid #d80a20;
	border-radius: 0;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	padding: 17px 40px;
	text-transform: uppercase;
}

.nest-wpforms .wpforms-submit:hover,
.nest-wpforms .wpforms-submit:focus {
	background-color: #910412;
	border-color: #910412;
	color: #ffffff;
}

.nest-wpforms .wpforms-required-label {
	color: #d80a20;
}

.nest-wpforms .wpforms-error {
	color: #d80a20;
}

.nest-wpforms .wpforms-confirmation-container-full {
	background: #ffffff;
	border: 0;
	color: #3c4e5f;
}

/* Формы главных страниц: точные стили под старую Elementor Pro форму. */
#wpforms-form-2043 .wpforms-field,
#wpforms-form-2045 .wpforms-field,
#wpforms-form-2047 .wpforms-field {
	padding: 0 0 15px;
}

#wpforms-form-2043 .wpforms-field-label,
#wpforms-form-2045 .wpforms-field-label,
#wpforms-form-2047 .wpforms-field-label {
	color: #373a3c;
	display: block;
	font-size: 15px;
	font-weight: 400;
	margin-bottom: 5px;
}

#wpforms-form-2043 .wpforms-field input,
#wpforms-form-2043 .wpforms-field textarea,
#wpforms-form-2045 .wpforms-field input,
#wpforms-form-2045 .wpforms-field textarea,
#wpforms-form-2047 .wpforms-field input,
#wpforms-form-2047 .wpforms-field textarea {
	background: #ffffff !important;
	border: 1px solid #818a91 !important;
	border-radius: 2px !important;
	box-shadow: none !important;
	color: #373a3c !important;
	font-size: 15px !important;
	padding: 11.25px !important;
	width: 100%;
}

#wpforms-form-2043 .wpforms-field textarea,
#wpforms-form-2045 .wpforms-field textarea,
#wpforms-form-2047 .wpforms-field textarea {
	min-height: 100px;
}

#wpforms-form-2043 .wpforms-submit,
#wpforms-form-2045 .wpforms-submit,
#wpforms-form-2047 .wpforms-submit {
	background: #818a91 !important;
	border: 0 !important;
	border-radius: 0 !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	padding: 17px 40px !important;
	text-transform: uppercase;
}

#wpforms-form-2043 .wpforms-submit:hover,
#wpforms-form-2045 .wpforms-submit:hover,
#wpforms-form-2047 .wpforms-submit:hover {
	background: #6b747c !important;
}

/* Cookie Notice: кнопка политики — вторичная (контурная), не красная. */
#cookie-notice #cn-more-info {
	background: transparent !important;
	border: 1px solid rgba(255, 255, 255, 0.7) !important;
	color: #ffffff !important;
}
#cookie-notice #cn-more-info:hover {
	background: rgba(255, 255, 255, 0.12) !important;
}

/* Типографика как на live-сайте (Astra 3.6.0 / старые значения). */
.elementor-widget-heading h1.elementor-heading-title {
	line-height: 1.2 !important;
}
.elementor-widget-heading h2.elementor-heading-title,
.elementor-widget-heading h3.elementor-heading-title {
	line-height: 1.4 !important;
}
.elementor-element-993c171 .elementor-icon-list-text {
	line-height: 1.7em !important;
}
.elementor-element-5b56b8c .elementor-heading-title {
	line-height: 1.4 !important;
	text-transform: uppercase !important;
}

/* Кнопка «Надіслати» на главных — как в оригинале: full-width, bold. */
#wpforms-form-2043 .wpforms-submit,
#wpforms-form-2045 .wpforms-submit,
#wpforms-form-2047 .wpforms-submit {
	display: block !important;
	width: 100% !important;
	font-weight: 700 !important;
}

/* Форма обратной связи: геометрия как на live (356.6px). */
#wpforms-form-2043 .wpforms-field,
#wpforms-form-2045 .wpforms-field,
#wpforms-form-2047 .wpforms-field {
	padding-bottom: 10px !important;
}

#wpforms-form-2043 .wpforms-field-label,
#wpforms-form-2045 .wpforms-field-label,
#wpforms-form-2047 .wpforms-field-label {
	margin-bottom: 0 !important;
}

#wpforms-form-2043 .wpforms-field textarea,
#wpforms-form-2045 .wpforms-field textarea,
#wpforms-form-2047 .wpforms-field textarea {
	box-sizing: border-box !important;
	height: 96px !important;
	min-height: 96px !important;
	padding: 5px !important;
}

#wpforms-form-2043 .wpforms-field-hp,
#wpforms-form-2045 .wpforms-field-hp,
#wpforms-form-2047 .wpforms-field-hp {
	display: none !important;
}

#wpforms-form-2043 .wpforms-submit-container,
#wpforms-form-2045 .wpforms-submit-container,
#wpforms-form-2047 .wpforms-submit-container {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 10px !important;
}

/* Скрытый reCAPTCHA-контейнер WPForms добавлял 30px перед кнопкой. */
#wpforms-form-2043 .wpforms-recaptcha-container,
#wpforms-form-2045 .wpforms-recaptcha-container,
#wpforms-form-2047 .wpforms-recaptcha-container {
	padding: 0 !important;
	margin: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	line-height: 0 !important;
}

/* ── Поп-ап «Залишити заявку»: компактная карточка 460px ── */
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1357),
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1355),
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1360) {
	width: 460px !important;
	max-width: 92vw !important;
	height: auto !important;
	max-height: 90vh !important;
	overflow: visible !important;
}
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1357) #sgpb-popup-dialog-main-div,
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1355) #sgpb-popup-dialog-main-div,
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1360) #sgpb-popup-dialog-main-div {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	border-radius: 12px !important;
	box-shadow: 0 24px 70px rgba(0, 0, 0, 0.35) !important;
	overflow: hidden !important;
}
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1357) #sgpb-popup-dialog-main-div > div,
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1355) #sgpb-popup-dialog-main-div > div,
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1360) #sgpb-popup-dialog-main-div > div {
	height: auto !important;
	overflow: visible !important;
}

#sg-popup-content-wrapper-1357,
#sg-popup-content-wrapper-1355,
#sg-popup-content-wrapper-1360 {
	box-sizing: border-box !important;
	width: 100% !important;
	padding: 30px 32px 22px !important;
}

#sg-popup-content-wrapper-1357 .nest-popup-head h2,
#sg-popup-content-wrapper-1355 .nest-popup-head h2,
#sg-popup-content-wrapper-1360 .nest-popup-head h2 {
	margin: 0 0 4px !important;
	color: #3c4e5f !important;
	font-size: 24px !important;
	line-height: 1.2 !important;
	font-weight: 700 !important;
}
#sg-popup-content-wrapper-1357 .nest-popup-head p,
#sg-popup-content-wrapper-1355 .nest-popup-head p,
#sg-popup-content-wrapper-1360 .nest-popup-head p {
	margin: 0 0 22px !important;
	color: #7a828a !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

#sg-popup-content-wrapper-1357 .wpforms-field,
#sg-popup-content-wrapper-1355 .wpforms-field,
#sg-popup-content-wrapper-1360 .wpforms-field {
	padding: 0 0 14px !important;
}
#sg-popup-content-wrapper-1357 .wpforms-field-label,
#sg-popup-content-wrapper-1355 .wpforms-field-label,
#sg-popup-content-wrapper-1360 .wpforms-field-label {
	display: block !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	clip: auto !important;
	overflow: visible !important;
	margin: 0 0 6px !important;
	color: #3c4e5f !important;
	font-size: 13px !important;
	font-weight: 600 !important;
}
#sg-popup-content-wrapper-1357 .wpforms-field input,
#sg-popup-content-wrapper-1355 .wpforms-field input,
#sg-popup-content-wrapper-1360 .wpforms-field input {
	width: 100% !important;
	height: 48px !important;
	padding: 0 14px !important;
	border: 1px solid #d5d8dc !important;
	border-radius: 3px !important;
	background: #fafafa !important;
	color: #373a3c !important;
	font-size: 15px !important;
}
#sg-popup-content-wrapper-1357 .wpforms-field input::placeholder,
#sg-popup-content-wrapper-1355 .wpforms-field input::placeholder,
#sg-popup-content-wrapper-1360 .wpforms-field input::placeholder {
	color: #9aa3ab !important;
	opacity: 1;
}
#sg-popup-content-wrapper-1357 .wpforms-field input:focus,
#sg-popup-content-wrapper-1355 .wpforms-field input:focus,
#sg-popup-content-wrapper-1360 .wpforms-field input:focus {
	border-color: #d80a20 !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(216, 10, 32, 0.08) !important;
	outline: none !important;
}
#sg-popup-content-wrapper-1357 .wpforms-submit,
#sg-popup-content-wrapper-1355 .wpforms-submit,
#sg-popup-content-wrapper-1360 .wpforms-submit {
	display: block !important;
	width: 100% !important;
	height: 48px !important;
	margin-top: 4px !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 3px !important;
	background: #d80a20 !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.4px !important;
	text-transform: uppercase !important;
}
#sg-popup-content-wrapper-1357 .wpforms-submit:hover,
#sg-popup-content-wrapper-1355 .wpforms-submit:hover,
#sg-popup-content-wrapper-1360 .wpforms-submit:hover {
	background: #b0091b !important;
}
#sg-popup-content-wrapper-1357 .wpforms-recaptcha-container,
#sg-popup-content-wrapper-1355 .wpforms-recaptcha-container,
#sg-popup-content-wrapper-1360 .wpforms-recaptcha-container,
#sg-popup-content-wrapper-1357 .wpforms-submit-container,
#sg-popup-content-wrapper-1355 .wpforms-submit-container,
#sg-popup-content-wrapper-1360 .wpforms-submit-container {
	padding: 0 !important;
	margin: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	line-height: 0 !important;
}
#sg-popup-content-wrapper-1357 .wpforms-submit-container,
#sg-popup-content-wrapper-1355 .wpforms-submit-container,
#sg-popup-content-wrapper-1360 .wpforms-submit-container {
	height: auto !important;
}
#sg-popup-content-wrapper-1357 .nest-popup-recaptcha,
#sg-popup-content-wrapper-1355 .nest-popup-recaptcha,
#sg-popup-content-wrapper-1360 .nest-popup-recaptcha {
	margin: 14px 0 0 !important;
	color: #8a9299 !important;
	font-size: 11px !important;
	line-height: 1.5 !important;
	text-align: center !important;
}
#sg-popup-content-wrapper-1357 .nest-popup-recaptcha a,
#sg-popup-content-wrapper-1355 .nest-popup-recaptcha a,
#sg-popup-content-wrapper-1360 .nest-popup-recaptcha a {
	color: #d80a20 !important;
	text-decoration: none !important;
}

/* Крестик — сверху справа */
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1357) .sgpb-popup-close-button-1,
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1355) .sgpb-popup-close-button-1,
.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1360) .sgpb-popup-close-button-1 {
	top: 10px !important;
	right: 12px !important;
	bottom: auto !important;
	left: auto !important;
	width: 24px !important;
	height: 24px !important;
}

@media (max-width: 600px) {
	.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1357),
	.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1355),
	.sgpb-popup-dialog-main-div-theme-wrapper-1:has(#sg-popup-content-wrapper-1360) {
		width: 92vw !important;
	}
	#sg-popup-content-wrapper-1357,
	#sg-popup-content-wrapper-1355,
	#sg-popup-content-wrapper-1360 {
		padding: 22px !important;
	}
}

/* Keep the reCAPTCHA v3 badge above page content such as photo galleries and maps. */
.grecaptcha-badge {
	z-index: 2147483647 !important;
}

/* On short viewports the cookie banner can cover the slider arrows. Lift the arrows while the banner is visible. */
@media (max-height: 700px) {
	body.cookies-not-set .elementor-swiper-button {
		margin-top: -120px !important;
	}
}
