

/* Start:/local/templates/alpha_energy/inner-pages.css?179137661623430*/
.is-inner.is-services-page .site-main,
.is-inner.is-contacts-page .site-main {
	width: auto;
	max-width: none;
	margin-inline: 0;
	padding-top: 56px;
	padding-bottom: 0;
	background: #fff;
}

.services-page,
.contacts-page {
	overflow: hidden;
	color: var(--color-text);
	background: #fff;
}

.contacts-page__head h1 {
	margin: clamp(54px, 5.2vw, 80px) 0 clamp(42px, 4.5vw, 68px);
	color: var(--color-navy);
	font-size: clamp(48px, 4.9vw, 70px);
	font-weight: 600;
	line-height: 1.05;
	letter-spacing: 0;
}

.inner-breadcrumbs {
	display: flex;
	padding-top: clamp(44px, 4vw, 70px);
	align-items: center;
	gap: 10px;
	color: #90d6ea;
	font-size: clamp(15px, 1.05vw, 18px);
	font-weight: 500;
}

.inner-breadcrumbs a {
	transition: color .2s ease;
}

.inner-breadcrumbs a:hover {
	color: var(--color-blue);
}

.services-hero,
.contacts-hero {
	display: grid;
	padding: clamp(64px, 7vw, 118px) 0 clamp(70px, 7vw, 112px);
	grid-template-columns: minmax(0, .9fr) minmax(420px, .8fr);
	gap: clamp(52px, 8vw, 150px);
	align-items: end;
	border-bottom: 1px solid rgba(144, 214, 234, .72);
}

.services-hero__label,
.contacts-hero__label,
.contacts-form-copy > p {
	margin: 0 0 24px;
	color: var(--color-blue);
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.services-hero h1,
.contacts-hero h1 {
	margin: 0;
	color: var(--color-navy);
	font-size: clamp(54px, 7.2vw, 118px);
	font-weight: 600;
	line-height: .92;
	letter-spacing: -.045em;
}

.services-hero__lead,
.contacts-hero > p {
	max-width: 720px;
	margin: 0;
	color: var(--color-blue);
	font-size: clamp(25px, 2.35vw, 40px);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -.025em;
}

.services-showcase {
	padding: clamp(78px, 8vw, 138px) 0;
	background: linear-gradient(177deg, #fff 0%, #f3fbff 52%, #e1f6ff 100%);
}

.services-showcase__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border-top: 1px solid rgba(34, 135, 200, .26);
	border-left: 1px solid rgba(34, 135, 200, .26);
}

.service-direction {
	display: grid;
	min-height: 590px;
	grid-template-rows: 310px 1fr;
	border-right: 1px solid rgba(34, 135, 200, .26);
	border-bottom: 1px solid rgba(34, 135, 200, .26);
	background: rgba(255, 255, 255, .46);
	transition: background-color .3s ease, transform .3s ease;
}

.service-direction:hover,
.service-direction.is-active {
	background: #fff;
}

.service-direction__media {
	position: relative;
	overflow: hidden;
	background: #102c5a;
}

.service-direction__media video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: .68;
	filter: saturate(.75);
	transition: opacity .35s ease, filter .35s ease, transform .7s ease;
}

.service-direction:hover video,
.service-direction.is-active video {
	opacity: .92;
	filter: saturate(1);
	transform: scale(1.035);
}

.service-direction__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(14, 40, 84, .08), rgba(14, 40, 84, .68));
}

.service-direction__number {
	position: absolute;
	right: 28px;
	bottom: -18px;
	color: rgba(255, 255, 255, .84);
	font-size: clamp(92px, 9vw, 150px);
	font-weight: 300;
	line-height: .8;
	letter-spacing: -.06em;
}

.service-direction__body {
	display: flex;
	padding: clamp(32px, 3.2vw, 54px);
	flex-direction: column;
	align-items: flex-start;
}

.service-direction h2 {
	max-width: 650px;
	margin: 0 0 24px;
	color: var(--color-navy);
	font-size: clamp(27px, 2.1vw, 36px);
	font-weight: 700;
	line-height: 1.08;
	text-transform: uppercase;
}

.service-direction p {
	max-width: 640px;
	margin: 0 0 36px;
	color: var(--color-muted);
	font-family: var(--font-body);
	font-size: 17px;
	line-height: 1.5;
}

.service-direction a,
.services-cta a,
.alpha-feedback button {
	display: inline-flex;
	margin-top: auto;
	align-items: center;
	gap: 28px;
	color: #005d92;
	font-size: 18px;
	font-weight: 700;
	transition: color .2s ease, gap .2s ease;
}

.service-direction a:hover,
.services-cta a:hover {
	gap: 38px;
	color: var(--color-cyan);
}

.services-cta {
	--cta-shift-x: 0px;
	--cta-shift-y: 0px;
	position: relative;
	min-height: clamp(610px, 52vw, 820px);
	padding: clamp(86px, 8vw, 138px) 0;
	overflow: hidden;
	background: #0d2c61;
	color: #fff;
	isolation: isolate;
}

.services-cta::before {
	position: absolute;
	z-index: -1;
	inset: 0;
	background:
		radial-gradient(circle at 76% 42%, rgba(0, 202, 235, .26), transparent 27%),
		linear-gradient(90deg, rgba(8, 35, 82, .97) 0%, rgba(17, 59, 112, .9) 52%, rgba(10, 43, 90, .62) 100%);
	content: "";
}

.services-cta__media {
	position: absolute;
	z-index: -2;
	inset: 0 0 0 47%;
	overflow: hidden;
	clip-path: polygon(24% 0, 100% 0, 100% 100%, 0 100%);
}

.services-cta__media img {
	width: calc(100% + 60px);
	height: calc(100% + 60px);
	margin: -30px;
	object-fit: cover;
	opacity: .62;
	filter: saturate(.76) contrast(1.08);
	transform: translate3d(var(--cta-shift-x), var(--cta-shift-y), 0) scale(1.06);
	transition: transform .2s ease-out;
}

.services-cta__word {
	position: absolute;
	right: -1vw;
	bottom: -4.5vw;
	color: rgba(255, 255, 255, .055);
	font-size: clamp(130px, 18vw, 350px);
	font-weight: 700;
	line-height: .8;
	letter-spacing: -.07em;
	pointer-events: none;
	white-space: nowrap;
}

.services-cta__inner {
	position: relative;
	z-index: 2;
	display: grid;
	min-height: clamp(430px, 36vw, 560px);
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(48px, 8vw, 150px);
	align-items: center;
}

.services-cta__content > p {
	margin: 0;
	color: #90d6ea;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.services-cta__content {
	max-width: 900px;
}

.services-cta__content > p {
	margin-bottom: 30px;
}

.services-cta h2 {
	margin: 0 0 clamp(42px, 5vw, 72px);
	font-size: clamp(48px, 5.2vw, 88px);
	font-weight: 600;
	line-height: .96;
	letter-spacing: -.045em;
}

.services-cta h2 em {
	display: block;
	color: #8eeaff;
	font-style: normal;
	font-weight: 400;
}

.services-cta__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.services-cta__tags span {
	padding: 9px 16px;
	border: 1px solid rgba(255, 255, 255, .34);
	border-radius: 30px;
	background: rgba(255, 255, 255, .06);
	font-size: 14px;
	font-weight: 600;
	backdrop-filter: blur(12px);
}

.services-cta .services-cta__action {
	min-width: 230px;
	margin: 0;
	padding: 20px 0 14px;
	border: 1px solid rgba(255, 255, 255, .66);
	border-width: 0 0 1px;
	align-items: center;
	justify-content: space-between;
	gap: 36px;
	background: transparent;
	color: #fff;
	font-size: 18px;
	line-height: 1.06;
	text-transform: uppercase;
	transition: border-color .3s ease, color .3s ease, gap .3s ease;
}

.services-cta .services-cta__action:hover {
	gap: 48px;
	border-color: #8eeaff;
	color: #8eeaff;
}

.services-cta__action .arrow-icon {
	transition: transform .3s ease;
}

.services-cta__action:hover .arrow-icon {
	transform: translate(5px, -5px);
}

.contacts-office-section {
	padding-bottom: clamp(82px, 8vw, 142px);
}

.contacts-details {
	display: grid;
	margin-bottom: clamp(86px, 9vw, 150px);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-left: 1px solid rgba(34, 135, 200, .3);
}

.contact-detail-card {
	display: flex;
	min-height: 270px;
	padding: clamp(34px, 3.5vw, 58px);
	flex-direction: column;
	border-right: 1px solid rgba(34, 135, 200, .3);
	color: var(--color-navy);
	transition: background-color .25s ease, color .25s ease;
}

.contact-detail-card:hover {
	background: var(--color-navy);
	color: #fff;
}

.contact-detail-card > span {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-bottom: auto;
	color: var(--color-blue);
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
}

.contact-detail-card > span b {
	color: #90d6ea;
	font-size: 30px;
	font-weight: 300;
}

.contact-detail-card:hover > span,
.contact-detail-card:hover small {
	color: #90d6ea;
}

.contact-detail-card strong {
	display: block;
	margin-top: 54px;
	font-size: clamp(23px, 2vw, 34px);
	font-weight: 600;
	line-height: 1.12;
}

.contact-detail-card small {
	display: block;
	margin-top: 14px;
	color: var(--color-muted);
	font-size: 15px;
	font-weight: 500;
}

.contacts-city-tabs {
	display: flex;
	max-width: 1588px;
	margin-bottom: clamp(34px, 3.2vw, 52px);
	margin-inline: auto;
	border-bottom: 1px solid rgba(144, 214, 234, .58);
	gap: 20px;
}

.contacts-city-tab {
	min-width: 248px;
	padding: 12px 28px;
	border: 0;
	border-bottom: 1.5px solid transparent;
	background: transparent;
	color: #90d6ea;
	cursor: pointer;
	font: 600 24.5px/1.12 var(--font-primary);
	letter-spacing: -.01em;
	transition: color .2s ease, border-color .2s ease;
}

.contacts-city-tab.is-active,
.contacts-city-tab:hover {
	border-color: #2287c8;
	color: #2287c8;
}

.contacts-office {
	display: grid;
	max-width: 1588px;
	margin-inline: auto;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	align-items: stretch;
}

.contacts-office[hidden] {
	display: none;
}

.contacts-office-card,
.contacts-office-photo {
	min-height: 400px;
}

.contacts-office-card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 38px;
	padding: clamp(32px, 2.1vw, 40px);
}

.contacts-office-card--address,
.contacts-office-card--requisites {
	background: #1d4383;
	color: #fff;
}

.contacts-office-card--requisites {
	position: relative;
	overflow: hidden;
}

.contacts-office-card--requisites::before {
	position: absolute;
	z-index: 0;
	inset: 0;
	background: #1d4383;
	content: "";
}

.contacts-office-card--requisites > * {
	position: relative;
	z-index: 1;
}

.contacts-office-card--requisites > div {
	transform: translateX(10px);
}

.contacts-office-card--address h2,
.contacts-office-card--requisites h2 {
	margin: 0 0 15px;
	color: #90d6ea;
	font-size: clamp(28px, 2.5vw, 40px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -.01em;
	text-transform: uppercase;
}

.contacts-office-card--address div,
.contacts-office-card--requisites div,
.contacts-office-card--requisites p {
	max-width: 680px;
	color: #fff;
	font-size: clamp(18px, 1.45vw, 24.5px);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
}

.contacts-office-photo {
	overflow: hidden;
	background: #1d4383;
}

.contacts-office-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.contacts-office-card--light {
	align-items: flex-start;
	background: #cbecfb;
	color: #1d4383;
}

.contacts-contact-line,
.contacts-hotline {
	display: grid;
	gap: 10px;
}

.contacts-contact-line a,
.contacts-contact-phone,
.contacts-hotline a {
	color: #1d4383;
	font-size: clamp(28px, 2.5vw, 40px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -.01em;
	text-transform: uppercase;
	text-decoration-thickness: 1px;
	text-underline-offset: 5px;
}

.contacts-hotline span {
	max-width: 430px;
	color: #00a9cf;
	font-size: clamp(17px, 1.45vw, 24.5px);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.01em;
}

.contacts-action {
	display: inline-flex;
	width: min(350px, 100%);
	max-width: 100%;
	min-height: 56px;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	margin-top: 22px;
	padding: 10px 30px;
	border: 0;
	background: #00a9cf;
	color: #fff;
	cursor: pointer;
	font: 600 clamp(20px, 1.65vw, 28px)/1.28 var(--font-primary);
	letter-spacing: -.01em;
	text-transform: uppercase;
	transition: background-color .2s ease, color .2s ease;
}

@media (min-width: 1181px) {
	.contacts-office {
		isolation: isolate;
		grid-template-columns: 42.2% 15.6% 42.2%;
		grid-template-rows: 400px clamp(430px, 31vw, 494px) 400px;
	}

	.contacts-office-card,
	.contacts-office-photo {
		min-height: 400px;
	}

	.contacts-office-card--address {
		z-index: 2;
		grid-column: 1 / 3;
		grid-row: 1;
	}

	.contacts-office-photo {
		z-index: 3;
		grid-column: 2 / 4;
		grid-row: 1;
		clip-path: polygon(27% 0, 100% 0, 100% 100%, 0 100%);
	}

	.contacts-office-card--light {
		z-index: 2;
		grid-column: 1 / 3;
		grid-row: 3;
	}

	.contacts-office-card--requisites {
		z-index: 3;
		grid-column: 2 / 4;
		grid-row: 3;
		align-items: flex-end;
		background: transparent;
	}

	.contacts-office-map {
		grid-column: 1 / 4;
		grid-row: 2;
	}

	.contacts-office-card--requisites::before {
		clip-path: polygon(27% 0, 100% 0, 100% 100%, 0 100%);
	}

	.contacts-office-card--address .contacts-office-card__body,
	.contacts-office-card--light > *,
	.contacts-office-card--requisites > div {
		width: min(100%, 678px);
	}

	.contacts-office-card--address .contacts-office-card__body + .contacts-office-card__body {
		margin-top: 0;
	}

	.contacts-office-card--requisites > div {
		width: min(100%, 420px);
		margin-right: clamp(46px, 7.9vw, 154px);
	}
}

.contacts-action:hover {
	background: #90d6ea;
	color: #1d4383;
}

.contacts-action .arrow-icon {
	flex: 0 0 34px;
}

.contacts-modal[hidden] {
	display: none;
}

body.is-contact-modal-open {
	overflow: hidden;
}

.contacts-modal {
	position: fixed;
	z-index: 400;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 24px;
}

.contacts-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(7, 25, 56, .62);
	backdrop-filter: blur(8px);
}

.contacts-modal__panel {
	position: relative;
	z-index: 1;
	width: min(760px, 100%);
	max-height: min(720px, calc(100vh - 48px));
	overflow: auto;
	padding: clamp(34px, 4vw, 58px);
	background: #fff;
	color: #1d4383;
	box-shadow: 0 24px 80px rgba(8, 30, 64, .24);
}

.contacts-modal__panel h2 {
	margin: 0 54px 26px 0;
	color: #2287c8;
	font-size: clamp(32px, 3vw, 48px);
	font-weight: 600;
	line-height: 1.05;
}

.contacts-modal__content {
	color: #1d4383;
	font-size: clamp(18px, 1.5vw, 23px);
	font-weight: 600;
	line-height: 1.28;
}

.contacts-modal__close {
	position: absolute;
	top: 22px;
	right: 22px;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(34, 135, 200, .35);
	border-radius: 50%;
	background: #fff;
	color: #1d4383;
	cursor: pointer;
	font: 400 34px/1 var(--font-primary);
}

.contacts-workspace {
	position: relative;
	min-height: clamp(760px, 59.0105vw, 1133px);
	padding: 0;
	overflow: hidden;
	background: #153f65 url("/upload/contacts-form-bg.png") center center / cover no-repeat;
	isolation: isolate;
}

.contacts-workspace__grid {
	position: absolute;
	inset: 0;
}

.contacts-form-copy h2 {
	position: absolute;
	z-index: 1;
	top: 0;
	left: clamp(42px, 8.02vw, 154px);
	width: min(81vw, 1555px);
	margin: 0;
	color: #fff;
	font-size: clamp(118px, 13.021vw, 250px);
	font-weight: 500;
	line-height: .876;
	letter-spacing: -.02em;
}

.contacts-form-copy > p,
.contacts-form-copy > div {
	display: none !important;
}

.contacts-form-shell {
	position: absolute;
	z-index: 2;
	top: 38.7%;
	left: 50.36%;
	width: min(40.884vw, 785px);
	min-height: min(33.125vw, 636px);
	padding: clamp(42px, 3.646vw, 70px) clamp(32px, 2.708vw, 52px);
	background: rgba(17, 44, 90, .35);
	-webkit-backdrop-filter: blur(23.5px);
	backdrop-filter: blur(23.5px);
}

.alpha-feedback form {
	display: grid;
	gap: clamp(27px, 2.604vw, 50px);
}

.alpha-feedback label:not(.alpha-feedback__consent) {
	display: block;
	color: rgba(215, 236, 250, .95);
	font-size: clamp(17px, 1.276vw, 24.5px);
	font-weight: 600;
}

.alpha-feedback input[type="text"],
.alpha-feedback input[type="email"],
.alpha-feedback input[type="tel"],
.alpha-feedback textarea {
	width: 100%;
	height: clamp(32px, 1.927vw, 37px);
	padding: 0 0 9px;
	border: 0;
	border-bottom: 1px solid #90d6ea;
	border-radius: 0;
	outline: 0;
	background: transparent;
	color: #fff;
	font: 600 clamp(17px, 1.276vw, 24.5px)/1.12 var(--font-primary);
	letter-spacing: -.01em;
	transition: border-color .2s ease, color .2s ease;
}

.alpha-feedback input::placeholder,
.alpha-feedback textarea::placeholder {
	color: rgba(215, 236, 250, .95);
	opacity: 1;
}

.alpha-feedback textarea {
	min-height: clamp(32px, 1.927vw, 37px);
	resize: none;
	overflow: hidden;
}

.alpha-feedback input:focus,
.alpha-feedback textarea:focus {
	border-color: #fff;
}

.alpha-feedback__consent {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	color: #cbecfb;
	font: 500 clamp(12px, .938vw, 18px)/1.1 var(--font-body);
	cursor: pointer;
}

.alpha-feedback__consent input {
	flex: 0 0 clamp(26px, 1.875vw, 36px);
	width: clamp(26px, 1.875vw, 36px);
	height: clamp(26px, 1.875vw, 36px);
	margin: 0;
	border: .75px solid #cbecfb;
	border-radius: 4px;
	accent-color: #1d4383;
}

.alpha-feedback__consent a {
	color: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.alpha-feedback button {
	display: inline-flex;
	width: min(282px, 100%);
	min-height: clamp(52px, 3.021vw, 58px);
	margin: 0;
	padding: 11px 30px;
	border: 0;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	background: #cbecfb;
	color: #1d4383;
	cursor: pointer;
	font: 600 clamp(20px, 1.458vw, 28px)/1.28 var(--font-primary);
	letter-spacing: -.01em;
	text-transform: uppercase;
	transition: background-color .2s ease, color .2s ease;
}

.alpha-feedback button:hover {
	background: #fff;
	color: #1d4383;
}

.alpha-feedback__message {
	margin-bottom: 24px;
	padding: 16px 20px;
	border-left: 4px solid #90d6ea;
	background: rgba(255, 255, 255, .92);
	font-weight: 600;
}

.alpha-feedback__message--error {
	border-color: #c63838;
	color: #8d1f1f;
}

.alpha-feedback__message--success {
	border-color: var(--color-cyan);
	color: var(--color-navy);
}

.contacts-map {
	height: clamp(430px, 48vw, 720px);
	background: #dfeef5;
}

.contacts-office-map {
	grid-column: 1 / -1;
	height: clamp(430px, 31vw, 494px);
}

.contacts-map__canvas {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: #d4eaf7;
}

.contacts-map__canvas > iframe {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.contacts-map__error {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
	padding: 32px;
	color: #1d4383;
	font-weight: 600;
	text-align: center;
}

.contacts-hero__aside {
	display: grid;
	gap: 34px;
}

.contacts-hero__aside > p {
	max-width: 720px;
	margin: 0;
	color: var(--color-blue);
	font-size: clamp(25px, 2.35vw, 40px);
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: -.025em;
}

.contacts-hero__aside a {
	display: inline-flex;
	width: max-content;
	align-items: center;
	gap: 18px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(34, 135, 200, .42);
	color: #005d92;
	font-size: 18px;
	font-weight: 700;
	transition: gap .2s ease, color .2s ease;
}

.contacts-hero__aside a:hover {
	gap: 28px;
	color: var(--color-cyan);
}

@media (max-width: 1080px) {
	.services-hero,
	.contacts-hero,
	.contacts-workspace__grid {
		grid-template-columns: 1fr;
	}

	.contacts-workspace {
		min-height: 1050px;
	}

	.contacts-form-copy h2 {
		top: 18px;
		left: clamp(32px, 6vw, 64px);
		width: calc(100% - 64px);
		font-size: clamp(112px, 17vw, 184px);
	}

	.contacts-form-shell {
		top: 390px;
		right: clamp(28px, 6vw, 64px);
		left: auto;
		width: min(690px, calc(100% - 56px));
		min-height: 0;
	}

	.services-hero__lead,
	.contacts-hero > p {
		max-width: 900px;
	}

	.services-cta__inner {
		grid-template-columns: 1fr;
	}

	.services-cta__inner {
		min-height: auto;
	}

	.services-cta__action {
		justify-self: end;
	}

	.contacts-city-tabs {
		overflow-x: auto;
	}

	.contacts-city-tab {
		min-width: max-content;
	}

	.contacts-details {
		grid-template-columns: 1fr;
		border-bottom: 1px solid rgba(34, 135, 200, .3);
	}

	.contact-detail-card {
		min-height: 220px;
		border-bottom: 0;
	}
}

@media (max-width: 1180px) {
	.is-inner.is-services-page .site-main,
	.is-inner.is-contacts-page .site-main {
		padding-top: 68px;
	}

	.inner-breadcrumbs {
		padding-top: 28px;
	}

	.services-hero,
	.contacts-hero {
		padding: 48px 0 62px;
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.services-hero h1,
	.contacts-hero h1 {
		font-size: clamp(50px, 17vw, 72px);
	}

	.services-hero__lead,
	.contacts-hero > p {
		font-size: 25px;
	}

	.services-showcase {
		padding: 62px 0 76px;
	}

	.services-showcase__grid {
		grid-template-columns: 1fr;
	}

	.service-direction {
		min-height: 0;
		grid-template-rows: 58vw 1fr;
	}

	.service-direction__body {
		padding: 28px 22px 34px;
	}

	.service-direction p {
		font-size: 16px;
	}

	.services-cta {
		min-height: 0;
		padding: 72px 0;
	}

	.services-cta__media {
		inset: 0;
		clip-path: none;
	}

	.services-cta::before {
		background: linear-gradient(180deg, rgba(8, 35, 82, .94), rgba(8, 35, 82, .78));
	}

	.services-cta__inner {
		gap: 46px;
	}

	.services-cta h2 {
		font-size: clamp(46px, 13vw, 66px);
	}

	.services-cta .services-cta__action {
		width: 100%;
		min-width: 0;
		justify-self: start;
		padding: 18px 0 12px;
	}

	.contacts-page__head h1 {
		margin: 42px 0 34px;
	}

	.contacts-office-section {
		padding-bottom: 76px;
	}

	.contacts-city-tabs {
		margin-bottom: 26px;
		gap: 8px;
	}

	.contacts-city-tab {
		padding: 10px 16px;
		font-size: 19px;
	}

	.contacts-office {
		grid-template-columns: 1fr;
	}

	.contacts-office-card,
	.contacts-office-photo {
		min-height: 280px;
	}

	.contacts-office-card {
		padding: 30px 22px;
		gap: 30px;
	}

	.contacts-contact-line a,
	.contacts-contact-phone,
	.contacts-hotline a {
		font-size: 27px;
	}

	.contacts-action {
		width: 100%;
		min-width: 0;
		gap: 18px;
		padding-inline: 20px;
	}

	.contacts-details {
		margin-bottom: 76px;
	}

	.contact-detail-card {
		min-height: 196px;
		padding: 28px 22px;
	}

	.contact-detail-card strong {
		margin-top: 42px;
	}

	.contacts-workspace {
		min-height: 850px;
		padding: 0;
	}

	.contacts-workspace__grid {
		inset: 0;
	}

	.contacts-form-copy h2 {
		top: 28px;
		left: 20px;
		width: calc(100% - 40px);
		font-size: clamp(64px, 20vw, 88px);
		line-height: .9;
	}

	.contacts-form-shell {
		top: 235px;
		right: 16px;
		left: 16px;
		width: auto;
		padding: 36px 20px;
	}

	.alpha-feedback form {
		gap: 28px;
	}

	.alpha-feedback input[type="text"],
	.alpha-feedback input[type="email"],
	.alpha-feedback input[type="tel"],
	.alpha-feedback textarea {
		height: 35px;
		min-height: 35px;
		font-size: 18px;
	}

	.alpha-feedback button {
		width: min(282px, 100%);
		justify-content: space-between;
	}

	.alpha-feedback__consent {
		gap: 14px;
		font-size: 13px;
	}

	.alpha-feedback__consent input {
		flex-basis: 26px;
		width: 26px;
		height: 26px;
	}

	.contacts-map {
		height: 440px;
	}
}

/* Let form content determine the section height, including validation messages. */
.contacts-page .contacts-workspace { min-height: 0; padding: 0 0 clamp(64px, 6vw, 116px); overflow: visible; }
.contacts-page .contacts-workspace__grid { position: relative; inset: auto; padding-top: clamp(320px, 23vw, 442px); }
.contacts-page .contacts-form-shell { position: relative; inset: auto; margin-left: 50.36%; width: min(40.884vw, 785px); min-height: 0; }
.contacts-page .alpha-feedback form { gap: clamp(24px, 2.1vw, 40px); }
.contacts-page .alpha-feedback input, .contacts-page .alpha-feedback textarea { font-size: clamp(17px, 1.276vw, 24.5px); }
.contacts-page .alpha-feedback__consent { font-size: clamp(13px, .938vw, 18px); line-height: 1.4; }
.contacts-office-card--requisites .alpha-socials { margin-top: 30px; }
@media (max-width: 767px) {
 .contacts-page .contacts-workspace__grid { padding-top: 235px; }
 .contacts-page .contacts-form-shell { margin: 0 16px; width: auto; padding: 36px 20px; }
 .contacts-office-card--requisites > div { transform: none; }
}

/* End */


/* Start:/local/templates/alpha_energy/general-contract.css?17912686426050*/
.contract-page { background: #fff; color: #1d4383; font-family: var(--font-primary, 'Manrope', sans-serif); }
.contract-container { width: min(82.5%, 1584px); margin-inline: auto; }
.contract-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; padding-top: 64px; margin-bottom: 76px; color: #90d6ea; font-size: clamp(16px, 1.146vw, 22px); font-weight: 500; }
.contract-breadcrumbs a { color: inherit; }
.contract-breadcrumbs > span:last-child { color: #2287c8; }
.contract-page h1, .contract-benefits > h2 { margin: 0; font-size: clamp(36px, 3.646vw, 70px); line-height: 1.05; font-weight: 700; letter-spacing: -.025em; }
.contract-overview { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto; gap: 0 20px; }
.contract-intro { padding: 36px 70px 100px 0; min-height: clamp(300px, 21.875vw, 420px); }
.contract-intro p { max-width: 670px; margin: 0 0 40px; color: #2287c8; font-size: clamp(22px, 1.667vw, 32px); font-weight: 600; line-height: 1.15; letter-spacing: -.01em; }
.contract-cta { display: inline-flex; align-items: center; justify-content: space-between; gap: 40px; max-width: 100%; padding: 11px 30px; background: #cbecfb; color: #1d4383; font-size: clamp(20px, 1.458vw, 28px); font-weight: 600; line-height: 1.28; text-decoration: none; text-transform: uppercase; }
.contract-cta svg { flex: 0 0 auto; width: clamp(24px, 1.823vw, 35px); }
.contract-cta:hover { background: #90d6ea; }
.contract-photo { width: 100%; height: 100%; min-height: 0; aspect-ratio: 781 / 420; object-fit: cover; grid-column: 1; grid-row: 2; }
.contract-categories { grid-column: 2; grid-row: 1 / 3; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: minmax(300px, 1fr); }
.contract-category { display: flex; flex-direction: column; justify-content: flex-end; padding: 30px; border-bottom: 1px solid #2287c8; color: #1d4383; text-decoration: none; }
.contract-category:nth-child(odd) { border-right: 1px solid #2287c8; }
.contract-category h2 { max-width: 322px; margin: 0 0 18px; font-size: clamp(24px, 1.875vw, 36px); line-height: 1.1; font-weight: 600; letter-spacing: -.015em; }
.contract-category:nth-child(even) h2 { max-width: 294px; }
.contract-category span { color: #2287c8; text-decoration: underline; text-underline-offset: 4px; font-size: clamp(18px, 1.276vw, 24.5px); font-weight: 600; }
.contract-category:not(.contract-category--unavailable):hover { background: #f1faff; }
.contract-category--unavailable span { color: #a5b1b8; cursor: default; }
.contract-page a:focus-visible { outline: 3px solid #2287c8; outline-offset: 4px; }
.contract-benefits__track:focus { outline: none; }
.contract-benefits:has(.contract-benefits__track:focus-visible) > h2 { text-decoration: underline; text-decoration-color: #90d6ea; text-decoration-thickness: 2px; text-underline-offset: 8px; }
.contract-benefits { padding-block: clamp(80px, 9.375vw, 180px); }
.contract-benefits > h2 { margin-bottom: 22px; }
.contract-benefits__track { display: flex; width: calc(100% + (100vw - min(82.5vw, 1584px)) / 2); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.contract-benefits__track::-webkit-scrollbar { display: none; }
.contract-benefits__track.is-dragging { cursor: grabbing; user-select: none; scroll-snap-type: none; }
@media (any-pointer: fine) {
 .contract-benefits__track { cursor: grab; scroll-snap-type: none; }
}
.contract-benefit { flex: 0 0 calc(100% / 3); min-width: 0; min-height: min(30.573vw, 587px); padding: clamp(40px, 5.417vw, 104px) clamp(24px, 2.188vw, 42px); border-left: 1px dotted #d9eaf4; scroll-snap-align: start; }
.contract-benefit img { display: block; width: auto; height: clamp(65px, 4.948vw, 95px); margin-bottom: 32px; }
.contract-benefit:last-child { scroll-snap-align: end; }
.contract-benefit h3 { margin: 0; font-size: clamp(28px, 2.083vw, 40px); font-weight: 600; line-height: 1.1; letter-spacing: -.015em; text-transform: uppercase; }
.contract-benefit p { margin: 32px 0 0; font-size: clamp(20px, 1.276vw, 24.5px); line-height: 1.12; font-weight: 600; color: #2287c8; }
.contract-request { background-image: url('/local/templates/alpha_energy/assets/images/contacts/contact-form-bg.png'); scroll-margin-top: 100px; }
@media (max-width: 1100px) {
 .contract-container { width: 90%; }
 .contract-breadcrumbs { margin-bottom: 48px; padding-top: 32px; }
 .contract-intro { padding-right: 24px; padding-bottom: 50px; }
 .contract-category { padding: 24px 18px; }
 .contract-benefits__track { width: calc(100% + 5vw); }
 .contract-benefit { flex-basis: 45%; }
}
@media (max-width: 700px) {
 .contract-page h1, .contract-benefits > h2 { font-size: clamp(32px, 8.5vw, 48px); }
 .contract-overview { display: flex; flex-direction: column; }
 .contract-intro { min-height: 0; padding: 28px 0 40px; }
 .contract-intro p { font-size: 22px; }
 .contract-cta { gap: 20px; padding-inline: 20px; }
 .contract-photo { height: auto; }
 .contract-categories { grid-auto-rows: minmax(220px, auto); margin-top: 24px; }
 .contract-category { padding: 24px 12px; }
 .contract-category h2 { font-size: clamp(20px, 5.3vw, 28px); overflow-wrap: anywhere; }
 .contract-category span { font-size: 16px; }
 .contract-benefit { flex-basis: 85%; padding-block: 36px; }
 .contract-benefits { padding-block: 72px; }
 .contract-request { min-height: 0; padding: 32px 5%; }
 .contract-request .contacts-workspace__grid { position: relative; display: flex; flex-direction: column; gap: 40px; }
 .contract-request .contacts-form-copy h2 { position: static; width: auto; font-size: clamp(62px, 15vw, 104px); }
 .contract-request .contacts-form-shell { position: static; width: 100%; min-height: 0; padding: 32px 24px; }
}
@media (max-width: 480px) {
 .contract-cta { font-size: 18px; gap: 16px; padding-inline: 16px; }
 .contract-categories { grid-template-columns: 1fr; grid-auto-rows: minmax(160px, auto); }
 .contract-category { padding: 28px 0; }
 .contract-category:nth-child(odd) { border-right: 0; }
 .contract-category h2 { font-size: 26px; overflow-wrap: normal; }
}

/* End */
/* /local/templates/alpha_energy/inner-pages.css?179137661623430 */
/* /local/templates/alpha_energy/general-contract.css?17912686426050 */
