body.pplw-template-page {
	--page-shell: max(16px, calc((100% - 1330px) / 2));
}

body.pplw-template-page .elementor-element.elementor-widget-pplw_header,
body.pplw-template-page .elementor-element.elementor-widget-pplw_sections,
body.pplw-template-page .elementor-element.elementor-widget-pplw_footer {
	display: contents;
}

body.pplw-template-page .elementor .e-con,
body.pplw-template-page .elementor .elementor-element {
	overflow: visible !important;
}

body.pplw-template-page .hero__visual,
body.pplw-template-page .hero__picture,
body.pplw-template-page .hero__image {
	display: block;
	height: 100%;
	width: 100%;
}

body.pplw-template-page .hero__picture {
	min-height: 100%;
	position: absolute;
	inset: 0;
}

body.pplw-template-page .hero__image {
	min-height: 100%;
	max-width: none;
	object-fit: cover;
	object-position: center center;
	position: absolute;
	inset: 0;
}

body.pplw-template-page .footer__social-icon svg,
body.pplw-template-page .pplw-icon.footer__social-icon svg {
	height: 17px !important;
	width: 17px !important;
}

body.pplw-template-page .footer__main {
	display: grid;
	gap: 24px;
	padding: 40px var(--page-shell) 36px;
}

body.pplw-template-page .footer__bottom-inner {
	padding: 20px var(--page-shell) 24px;
}

body.pplw-template-page .footer__subbottom-inner {
	padding: 16px var(--page-shell) 20px;
}

body.admin-bar.pplw-template-page .header {
	top: 32px;
}

@media (min-width: 960px) {
	body.pplw-template-page .footer__main {
		grid-template-columns: minmax(0, 1.2fr) minmax(220px, 0.8fr) minmax(260px, 0.9fr);
		padding: 32px var(--page-shell);
	}
}

@media (max-width: 782px) {
	body.admin-bar.pplw-template-page .header {
		top: 46px;
	}
	body.pplw-template-page .hero__image {    
		object-position: right center;
	}
	
}
.hero__cta-note {
    color: hsla(0, 0%, 100%, 1);
   
}
.hero__roles{
    color: hsla(0, 0%, 100%, 1);
    }
.pplw-hero__subtitle.hero__subtitle{
	--color-gold:#efbe7d;
}
.hero__inner:before {
     content: "";
    inset: 0;
    pointer-events: none;
    position: absolute; 
	z-index: 1;
    background: linear-gradient(90deg, rgb(57 123 135 / 68%) 0, rgb(7 19 21 / 43%) 35%, rgb(7 19 21 / 7%) 60% 60%, rgb(7 19 21 / 0%) 80%, transparent);
	width: 67%;  
}
@media (min-width: 960px) {
    .hero__inner:before {
	 background: linear-gradient(90deg, rgb(57 123 135 / 68%) 0, rgb(7 19 21 / 43%) 35%, rgb(7 19 21 / 7%) 60% 60%, rgb(7 19 21 / 0%) 80%, transparent);
	
    }
}
@media (max-width: 719px) {
    .hero__inner:before {
     background: linear-gradient(90deg, rgb(57 123 135 / 68%) 0, rgb(7 19 21 / 43%) 35%, rgb(7 19 21 / 36%) 60% 60%, rgb(7 19 21 / 22%) 100%);
	width: 100%; 
    }
}

/* ═══ CSS-переменные для попапа (на шаблоне .pplw не является предком) ════════ */
.pplw-popup {
	--pplw-accent: #1f6865;
	--pplw-accent-strong: #174e4b;
}

/* ═══ CF7 форма в попапе (шаблон лендинга) ═════════════════════════════════ */

.pplw-popup__body br,
.site-popup__body br {
	display: none;
}

.pplw-popup__body .wpcf7 form,
.site-popup__body .wpcf7 form {
	display: grid;
	gap: 12px;
	margin: 0;
}

.pplw-popup__body .wpcf7 p,
.site-popup__body .wpcf7 p {
	margin: 0;
}

.pplw-popup__body .wpcf7 .wpcf7-form-control:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.site-popup__body .wpcf7 .wpcf7-form-control:not([type="checkbox"]):not([type="radio"]):not([type="submit"]) {
	background: rgba(255, 255, 255, 0.78);
	border: 1.5px solid rgba(23, 37, 40, 0.12);
	border-radius: 14px;
	display: block;
	min-height: 50px;
	padding: 12px 15px;
	transition: border-color 0.18s ease;
	width: 100%;
}

.pplw-popup__body .wpcf7 textarea.wpcf7-form-control,
.site-popup__body .wpcf7 textarea.wpcf7-form-control {
  height: 145px;
	resize: vertical;
}

.pplw-popup__body .wpcf7 .wpcf7-form-control:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus,
.site-popup__body .wpcf7 .wpcf7-form-control:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus {
	border-color: #1f6865;
	outline: none;
}

.pplw-popup__body .wpcf7 .wpcf7-not-valid:not([type="submit"]),
.site-popup__body .wpcf7 .wpcf7-not-valid:not([type="submit"]) {
	border-color: #b83232 !important;
}

.pplw-popup__body .wpcf7 .wpcf7-not-valid-tip,
.site-popup__body .wpcf7 .wpcf7-not-valid-tip {
	color: #b83232;
	display: block;
	font-size: 0.8rem;
	font-weight: 600;
	margin-top: 4px;
}

.pplw-popup__body .wpcf7 .wpcf7-response-output,
.site-popup__body .wpcf7 .wpcf7-response-output {
	border: none !important;
	border-radius: 14px;
	font-size: 0.88rem;
	font-weight: 600;
	margin: 4px 0 0 !important;
	padding: 12px 16px !important;
}

.pplw-popup__body .wpcf7 form.sent .wpcf7-response-output,
.site-popup__body .wpcf7 form.sent .wpcf7-response-output {
	background: rgba(200, 230, 215, 0.75);
	color: #1a5c40;
	display: block;
}

.pplw-popup__body .wpcf7 form.invalid .wpcf7-response-output,
.pplw-popup__body .wpcf7 form.failed .wpcf7-response-output,
.pplw-popup__body .wpcf7 form.spam .wpcf7-response-output,
.site-popup__body .wpcf7 form.invalid .wpcf7-response-output,
.site-popup__body .wpcf7 form.failed .wpcf7-response-output,
.site-popup__body .wpcf7 form.spam .wpcf7-response-output {
	background: rgba(250, 228, 225, 0.9);
	color: #8b2117;
	display: block;
}

.pplw-popup__body .wpcf7 [type="submit"],
.pplw-popup__body .wpcf7 input[type="submit"],
.pplw-popup__body .wpcf7 .wpcf7-submit,
.site-popup__body .wpcf7 [type="submit"],
.site-popup__body .wpcf7 input[type="submit"],
.site-popup__body .wpcf7 .wpcf7-submit {
	align-items: center !important;
	background: linear-gradient(135deg, #1f6865, #2d847f) !important;
	border: 1px solid transparent !important;
	border-radius: 999px !important;
	box-shadow: 0 18px 34px rgba(31, 104, 101, 0.18) !important;
	color: #fff !important;
	cursor: pointer !important;
	display: inline-flex !important;
	font-family: inherit !important;
	font-size: 0.98rem !important;
	font-weight: 700 !important;
	gap: 10px !important;
	justify-content: center !important;
	min-height: 54px !important;
	padding: 0 24px !important;
	text-align: center !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
	white-space: nowrap !important;
	width: 100% !important;
}

.pplw-popup__body .wpcf7 [type="submit"]:hover,
.pplw-popup__body .wpcf7 [type="submit"]:focus-visible,
.pplw-popup__body .wpcf7 input[type="submit"]:hover,
.pplw-popup__body .wpcf7 input[type="submit"]:focus-visible,
.pplw-popup__body .wpcf7 .wpcf7-submit:hover,
.pplw-popup__body .wpcf7 .wpcf7-submit:focus-visible,
.site-popup__body .wpcf7 [type="submit"]:hover,
.site-popup__body .wpcf7 [type="submit"]:focus-visible,
.site-popup__body .wpcf7 input[type="submit"]:hover,
.site-popup__body .wpcf7 input[type="submit"]:focus-visible,
.site-popup__body .wpcf7 .wpcf7-submit:hover,
.site-popup__body .wpcf7 .wpcf7-submit:focus-visible {
	background: linear-gradient(135deg, #184c4b, #256560) !important;
	transform: translateY(-1px);
}

.pplw-popup__direct-action {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 8px;
}
.pplw-popup__success[hidden],
.site-popup__success[hidden] {
	display: none !important;
}

/* --- блок успеха после отправки формы --- */
.pplw-popup__success,
.site-popup__success {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 12px;
	justify-content: center;
	padding: 36px 16px;
	text-align: center;
}

.pplw-popup__success-icon {
	background: linear-gradient(135deg, var(--pplw-accent, #1f6865), #2d847f);
	border-radius: 50%;
	flex-shrink: 0;
	height: 64px;
	position: relative;
	width: 64px;
}

.pplw-popup__success-icon::after {
	border-bottom: 3px solid #fff;
	border-left: 3px solid #fff;
	content: '';
	display: block;
	height: 14px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -60%) rotate(-45deg);
	width: 26px;
}

.pplw-popup__success-title {
	color: inherit;
	font-size: 1.1rem;
	font-weight: 600;
	line-height: 1.4;
	margin: 0;
}

.pplw-popup__success-subtext {
	color: rgba(0, 0, 0, 0.65);
	font-size: 0.95rem;
	line-height: 1.5;
	margin: 0;
}

.pplw-popup__countdown {
	color: rgba(0, 0, 0, 0.45);
	font-size: 0.85rem;
	margin: 0;
}

[hidden] {
	display: none !important;
}