/* Lead CTA on single post — scoped to .attorna-child-single-lead */

.attorna-child-single-lead {
	margin-bottom: 2.5rem;
	padding: 0;
}

.attorna-child-single-lead-inner {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
	gap: 1.75rem 2rem;
	align-items: end;
	padding: 2rem 2rem 0 2.25rem;
	border-radius: 20px;
	overflow: hidden;
	background: linear-gradient(
		135deg,
		#3a5f68 0%,
		#4a7a85 28%,
		#5b8c97 55%,
		#7aa8b2 88%,
		#8eb8c2 100%
	);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
}

.attorna-child-single-lead-content {
	padding-bottom: 2rem;
	min-width: 0;
}

/* Не h1–h6: имя секции задаётся через aria-labelledby на <section> */
.attorna-child-single-lead-title {
	margin: 0 0 1.25rem;
	font-size: 1.35rem;
	line-height: 1.35;
	font-weight: 700;
	color: #fff;
	letter-spacing: 0.01em;
}

.attorna-child-single-lead-media {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	min-height: 0;
}

.attorna-child-single-lead-bubble {
	position: absolute;
	top: 0.5rem;
	right: 12%;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50% 50% 50% 12px;
	background: rgba(255, 255, 255, 0.22);
	backdrop-filter: blur(6px);
	color: #fff;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.attorna-child-single-lead-bubble-icon {
	display: block;
	opacity: 0.95;
}

.attorna-child-single-lead-photo {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	max-height: 320px;
	object-fit: contain;
	object-position: bottom center;
	border-radius: 16px 16px 0 0;
}

/* CF7 inside section */

.attorna-child-single-lead-form-wrap .wpcf7 {
	margin: 0;
	color: #fff;
}

.attorna-child-single-lead-form-wrap .wpcf7-form {
	display: block;
	margin: 0;
}

/* CF7 Smart Grid: cf7sg + Bootstrap .container/.row часто сбивают gap — явные отступы */

.attorna-child-single-lead-form-wrap .cf7sg-container .post_form_lead.container,
.attorna-child-single-lead-form-wrap .cf7-smart-grid .post_form_lead.container,
.attorna-child-single-lead-form-wrap .post_form_lead.container,
.attorna-child-single-lead-form-wrap .container.post_form_lead {
	width: 100% !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	/* Отступы только через margin у .row — иначе дублируется с gap */
	gap: 0 !important;
}

/* Заголовок уже в .attorna-child-single-lead-title */
.attorna-child-single-lead-form-wrap .post_form_lead .title_form {
	display: none !important;
}

.attorna-child-single-lead-form-wrap .post_form_lead > .row {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.attorna-child-single-lead-form-wrap .post_form_lead > .row:not(:last-child) {
	/* между двумя инпутами, перед чекбоксом, перед кнопкой */
	margin-bottom: 1.125rem !important;
}

.attorna-child-single-lead-form-wrap .post_form_lead .row .wpcf7-form-control-wrap {
	width: 100%;
}

.attorna-child-single-lead-form-wrap .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.attorna-child-single-lead-form-wrap input.wpcf7-text,
.attorna-child-single-lead-form-wrap input.wpcf7-tel,
.attorna-child-single-lead-form-wrap input.wpcf7-email {
	width: 100%;
	box-sizing: border-box;
	padding: 0.75rem 1rem;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	background: #fff;
	color: #1a1a1a;
	font-size: 0.95rem;
	line-height: 1.4;
}

.attorna-child-single-lead-form-wrap input.wpcf7-text::placeholder,
.attorna-child-single-lead-form-wrap input.wpcf7-tel::placeholder,
.attorna-child-single-lead-form-wrap input.wpcf7-email::placeholder {
	color: #6b6b6b;
	opacity: 1;
}

.attorna-child-single-lead-form-wrap input.wpcf7-text:focus,
.attorna-child-single-lead-form-wrap input.wpcf7-tel:focus,
.attorna-child-single-lead-form-wrap input.wpcf7-email:focus {
	outline: 2px solid rgba(255, 255, 255, 0.65);
	outline-offset: 2px;
}

.attorna-child-single-lead-form-wrap .wpcf7-acceptance,
.attorna-child-single-lead-form-wrap .wpcf7-acceptance label {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: 0.8rem;
	line-height: 1.45;
	color: #fff;
	cursor: pointer;
}

.attorna-child-single-lead-form-wrap .wpcf7-acceptance input[type="checkbox"] {
	margin-top: 0.2rem;
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	accent-color: #3a5f68;
}

.attorna-child-single-lead-form-wrap .wpcf7-acceptance a {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.attorna-child-single-lead-form-wrap .wpcf7-acceptance a:hover,
.attorna-child-single-lead-form-wrap .wpcf7-acceptance a:focus {
	opacity: 0.92;
}

/* Перебиваем .attorna-body input[type="submit"] из style.css */
.attorna-body .attorna-child-single-lead-form-wrap input[type="submit"].wpcf7-submit {
	width: 100%;
	margin-top: 0;
	padding: 0.9rem 1.25rem;
	border: none;
	border-radius: 10px;
	background-color: #fff !important;
	background-image: none !important;
	color: #1a1a1a !important;
	font-size: 1rem;
	font-weight: 700;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.attorna-body .attorna-child-single-lead-form-wrap input[type="submit"].wpcf7-submit:hover,
.attorna-body .attorna-child-single-lead-form-wrap input[type="submit"].wpcf7-submit:focus {
	background-color: #f0f4f5 !important;
	color: #111 !important;
}

.attorna-child-single-lead-form-wrap .wpcf7-not-valid-tip {
	color: #ffdede;
	font-size: 0.8rem;
	margin-top: 0.25rem;
}

.attorna-child-single-lead-form-wrap .wpcf7-response-output {
	margin: 0.75rem 0 0;
	padding: 0.65rem 0.85rem;
	border-radius: 8px;
	font-size: 0.85rem;
	border-width: 1px;
}

.attorna-child-single-lead-form-wrap .wpcf7-mail-sent-ok {
	background: rgba(255, 255, 255, 0.2);
	border-color: rgba(255, 255, 255, 0.35);
	color: #fff;
}

.attorna-child-single-lead-form-wrap .wpcf7-validation-errors,
.attorna-child-single-lead-form-wrap .wpcf7-acceptance-missing {
	background: rgba(0, 0, 0, 0.15);
	border-color: rgba(255, 200, 200, 0.5);
	color: #fff;
}

.attorna-child-single-lead-form-wrap .ajax-loader {
	filter: brightness(0) invert(1);
}

.single span.cf7sg-popup {
	bottom: -2.2em !important;
}

.attorna-child-single-lead-form-wrap span.cf7sg-popup {
	color: #000 !important;
	font-size: 0.82rem;
	line-height: 1.35;
}

.single .wpcf7-not-valid-tip {
	color: #fff !important;
	margin-bottom: 0 !important;
}
.single .cf7-smart-grid.has-grid .wpcf7 .ajax-loader {
	margin: -10px 0 0 10px;
	position: absolute;
	top: 50%;
}

.single .wpcf7 form .wpcf7-response-output {
	display: block !important;
	border: none !important;
	padding: 5px !important;
	margin: 0px !important;
}

.single .wpcf7 form.invalid .cf7sg-response-output,
.wpcf7 form.unaccepted .cf7sg-response-output {
	border-radius: 10px !important;
}
.single .wpcf7 form.sent .cf7sg-response-output {
	border-radius: 10px !important;
}

/* Tablet / mobile: карточка только у формы; фото отдельно под градиентом */

@media screen and (max-width: 991px) {
	.attorna-child-single-lead-inner {
		grid-template-columns: 1fr;
		align-items: start;
		gap: 1rem;
		padding: 0;
		border-radius: 0;
		overflow: visible;
		background: none;
		box-shadow: none;
	}

	.attorna-child-single-lead-content {
		order: 1;
		width: 100%;
		min-width: 0;
		padding: 1.75rem 1.5rem 2rem;
		border-radius: 20px;
		overflow: hidden;
		background: linear-gradient(
			135deg,
			#3a5f68 0%,
			#4a7a85 28%,
			#5b8c97 55%,
			#7aa8b2 88%,
			#8eb8c2 100%
		);
		box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
	}

	/* Телефон / узкий экран: только форма, без фото */
	.attorna-child-single-lead-media {
		display: none !important;
	}
}

@media screen and (max-width: 479px) {
	.attorna-child-single-lead-title {
		font-size: 1.15rem;
	}

	.attorna-child-single-lead-content {
		padding: 1.5rem 1.25rem 1.75rem;
		border-radius: 16px;
	}
}

@media(max-width: 767px) {
	.attorna-single-social-share {
		padding-bottom: 10px !important;
	}
}