/* === base === */
*{box-sizing:border-box;line-height:1.2}
@font-face{
  font-family:"Inter";
	font-weight: 700;
  src:url("../fonts/6808f299811c1703a1cacc77ced26c5d.eot");
  src:url("../fonts/6808f299811c1703a1cacc77ced26c5d.eot?#iefix") format("embedded-opentype"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.woff2") format("woff2"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.woff") format("woff"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.ttf") format("truetype"),
      url("../fonts/6808f299811c1703a1cacc77ced26c5d.svg#Inter Bold") format("svg");
}
@font-face {
    font-family: 'Inter';
    src: local('Inter Regular'), local('Inter-Regular'),
        url('../fonts/Inter-Regular.woff2') format('woff2'),
        url('../fonts/Inter-Regular.woff') format('woff'),
        url('../fonts/Inter-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
  }
@font-face {
    font-family: 'Inter';
    src: local('Inter Medium'), local('Inter-Medium'),
        url('../fonts/Inter-Medium.woff2') format('woff2'),
        url('../fonts/Inter-Medium.woff') format('woff'),
        url('../fonts/Inter-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
  }
@font-face {
    font-family: 'Suisse Intl';
    src: url('../fonts/subset-SuisseIntl-Regular.eot');
    src: local('Suisse Intl Regular'), local('SuisseIntl-Regular'),
        url('../fonts/subset-SuisseIntl-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/subset-SuisseIntl-Regular.woff2') format('woff2'),
        url('../fonts/subset-SuisseIntl-Regular.woff') format('woff'),
        url('../fonts/subset-SuisseIntl-Regular.ttf') format('truetype'),
        url('../fonts/subset-SuisseIntl-Regular.svg#SuisseIntl-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Suisse Intl';
    src: url('../fonts/subset-SuisseIntl-Bold.eot');
    src: local('Suisse Intl Bold'), local('SuisseIntl-Bold'),
        url('../fonts/subset-SuisseIntl-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/subset-SuisseIntl-Bold.woff2') format('woff2'),
        url('../fonts/subset-SuisseIntl-Bold.woff') format('woff'),
        url('../fonts/subset-SuisseIntl-Bold.ttf') format('truetype'),
        url('../fonts/subset-SuisseIntl-Bold.svg#SuisseIntl-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
html,body{font-family:"Inter",Arial}
body {width:100%}

.container {
	padding: 0 90px;
	position: relative;
	z-index: 2;
}

.header {
	position: absolute;
	top: 40px;
	z-index: 10;
	width: 100%;
}

.header__menu {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: flex-end;
	align-items: flex-end;
	gap: 32px;
}

.header__menu-item {
	color: #FFF;
	font-family: "Suisse Intl";
	font-size: 32px;
	font-style: normal;
	font-weight: 450;
	line-height: 133%;
	text-decoration: none;
}

.header__menu-item.__blue {
	color: #393CF6;
	font-family: "Suisse Intl";
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: 133.33%;
	text-decoration: underline;
}

.intro {
	width: 100vw;
	height: 100vh;
	position: relative;
}

.intro__media {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.intro__media:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.60) 0%, rgba(0, 0, 0, 0.60) 100%);
}

.intro__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	position: relative;
	z-index: 1;
}

.intro .container {
	height: 100%;
}

.intro__box {
	position: relative;
	z-index: 2;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: flex-end;
	align-items: flex-end;
	justify-content: space-between;
	height: 100%;
	padding-bottom: 52px;
}

.intro__title-logo {
	position: absolute;
	top: 61px;
	left: 0;
}

.intro__title-text {
	color: #FFF;
	font-family: "Suisse Intl";
	font-size: 85.333px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.853px;
	max-width: 1285px;
	margin-top: 75px;
}

.intro__info {
	color: #FFF;
	text-align: right;
	font-family: "Suisse Intl";
	font-size: 32px;
	font-style: normal;
	font-weight: 400;
	line-height: 133.3%;
}

.what {
	padding: 142px 0;
}

.what__wrap {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	justify-content: space-between;
	margin-top: 100px;
}

.what__content-top,
.about__box-top,
.programs__top,
.photos__top,
.dirs__top {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	gap: 21px;
}

.what__content-top__title,
.about__box-top__title,
.programs__top__title,
.photos__top__title,
.dirs__top-title {
	color: #000;
	text-align: right;
	font-family: Inter;
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.what__content-text {
	max-width: 955px;
}

.what__content-text p,
.what__content-text ul {
	color: #545454;
	font-family: Inter;
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.what__content-text p {
	margin-bottom: 28px;
}

.what__content-text ul {
	list-style: outside disc;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 28px;
	margin-left: 20px;
}

.what__image {
	max-width: 1177px;
	height: 802px;
}

.what__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.about {
	padding: 142px 0;
	position: relative;
	height: 1385px;
}

.about__image {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}

.about__image:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	background: linear-gradient(0deg, rgba(22, 62, 149, 0.80) 0%, rgba(22, 62, 149, 0.80) 100%);
}

.about__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.about__box {
	max-width: 760px;
	z-index: 2;
	margin-top: 114px;
}

.about__box-top__title {
	color: #fff;
}

.about__box-content {
	
}

.about__box-content h3 {
	color: #FFF;
	font-family: Inter;
	font-size: 56.889px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.569px;
	margin-bottom: 71px;
}

.about__box-content p {
	color: #FFF;
	font-family: Inter;
	font-size: 24.889px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.498px;
}

.about__box-content p:not(:last-of-type) {
	margin-bottom: 25px;
}

.photos {
	padding: 142px 0;
	position: relative;
}

/*
.photos:before {
	content: "";
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2276' height='1142' viewBox='0 0 2276 1142' fill='none'%3E%3Cpath d='M2274.78 1138.32C2274.78 510.194 1765.78 1 1137.89 1M1 1138.32C1 510.194 510.003 1 1137.89 1M1137.89 1C596.522 1 157.658 510.194 157.658 1138.32M1137.89 1C1679.26 1 2118.12 510.194 2118.12 1138.32M1137.89 1C720.122 1 381.455 510.194 381.455 1138.32M1137.89 1C1555.66 1 1894.32 510.194 1894.32 1138.32M1137.89 1C890.69 1 690.295 510.194 690.295 1138.32M1137.89 1C1385.09 1 1585.48 510.194 1585.48 1138.32M1140.13 1V1140.56M2274.78 1140.56L1 1140.56M2131.55 585.33H144.23M1782.42 200.254H493.353' stroke='url(%23paint0_linear_549_140)' stroke-width='1.77778'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_549_140' x1='1137.89' y1='1' x2='1137.89' y2='1140.9' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23C9E8FF'/%3E%3Cstop offset='1' stop-color='white'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E") no-repeat;
	width: 2276px;
	height: 1142px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 0;
}
*/

.photos .container {
	padding-right: 0;
}

.photos .section__heading {
	padding-right: 90px;
}

.photos__slider {
	margin-top: 70px;
}

.photos__slider-slide.swiper-slide {
	max-width: 1156px;
	width: auto;
}

.photos__slider-slide img {
	height: 759px;
}

.photos__slider-buttons {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	margin-top: 47px;
	gap: 35px;
}

.photos__slider-buttons__item {
	cursor: pointer;
}

.photos__slider-buttons__item.swiper-button-disabled {
	opacity: .4;
	cursor: default;
}

.photos__slider-buttons__item:focus {
	outline: none;
}

.dirs {
	padding: 142px 0;
}

.dirs__items {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 36px;
	margin-top: 50px;
}

.dirs__item {
	background: #F5F6F7;
	padding: 71px;
}

.dirs__item-wrap {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	gap: 43px;
}

.dirs__item-content {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 100px;
}

.dirs__item-title {
	color: #3E305A;
	font-family: Inter;
	font-size: 56.889px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.569px;
	min-height: 100px;
}

.dirs__item-text {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 28px;
	color: #3E305A;
	font-family: Inter;
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.dirs__item-text ul {
	list-style: outside disc;
	margin-left: 25px;
}

.dirs__item-sidebar {
	max-width: 870px;
	min-width: 870px;
}

.dirs__item-sidebar__title {
	color: #275341;
	font-family: Inter;
	font-size: 56.889px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.569px;
	margin-bottom: 32px;
}

.dirs__item-sidebar__image,
.dirs__item-sidebar__video {
	width: 100%;
	height: 651px;
}

.dirs__item-sidebar__image img,
.dirs__item-sidebar__video video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.dirs__item-sidebar__qr {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	margin-top: 18px;
	padding-left: 59px;
	justify-content: space-between;
	background: #FFF;
}

.dirs__item-sidebar__qr-title {
	color: #3E305A;
	font-family: Inter;
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.dirs__item-sidebar__info {
	padding: 43px 59px;
	color: #FFF;
	font-family: Inter;
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	background: #0A4B31;
	margin-top: 18px;
}

.dirs__item-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 21px;
	margin-top: 100px;
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.dirs__item-grid__item {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	padding: 71.111px 71.111px 85.333px 71.111px;
	align-items: flex-start;
	gap: 99.556px;
	flex-shrink: 0;
	background: #FFF;
}

.dirs__item-grid__item-title {
	color: #507EA0;
	font-family: Inter;
	font-size: 56.889px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.569px;
}

.dirs__item-grid__item-text {
	color: #507EA0;
	font-family: Inter;
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.dirs__item-grid__item-text ul {
	list-style: outside disc;
	margin-left: 25px;
}

.dirs__item[data-style="one"] .dirs__item-title,
.dirs__item[data-style="one"] .dirs__item-text{
	color: #507EA0;
}

.dirs__item[data-style="one"] .dirs__item-sidebar__qr-title {
	color: #003760;
}

.dirs__item[data-style="one"] .dirs__item-sidebar__info {
	background: #0A4B31;
}

.dirs__item[data-style="two"] .dirs__item-title,
.dirs__item[data-style="two"] .dirs__item-text{
	color: #275341;
}

.dirs__item[data-style="two"] .dirs__item-sidebar__qr-title {
	color: #0A4B31;
}

.dirs__item[data-style="two"] .dirs__item-sidebar__info {
	background: #0A4B31;
}

.dirs__item[data-style="three"] .dirs__item-title,
.dirs__item[data-style="three"] .dirs__item-text{
	color: #3E305A;
}

.dirs__item[data-style="three"] .dirs__item-sidebar__qr-title {
	color: #3E305A;
}

.dirs__item[data-style="three"] .dirs__item-sidebar__info {
	background: #3E305A;
}

.kadr {
	position: relative;
/*	height: 1260px;*/
}

.kadr .container {
	position: absolute;
    left: 0;
    top: 0;
    width: 100%;
}

.kadr__media {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	cursor: pointer;
}

.kadr__image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transition: .3s all;
}

.kadr__video {
	opacity: 0;
	visibility: hidden;
}

.kadr__image img,
.kadr__video video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.kadr__image:before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: url("data:image/svg+xml,%0A%3Csvg width='196' height='196' viewBox='0 0 196 196' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='98' cy='98' r='98' fill='white'/%3E%3Cpath d='M128 98L83 123.981L83 72.0192L128 98Z' fill='%232E363D'/%3E%3C/svg%3E%0A") center no-repeat;
}

.kadr__media.is-showed .kadr__image {
	opacity: 0;
	visibility: hidden;
}

.kadr__media.is-showed .kadr__video {
	opacity: 1;
	visibility: visible;
}

.kadr__top {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	padding-top: 142px;
	gap: 25px;
}

.kadr__top-title {
	color: #FFF;
	text-align: right;
	font-family: "Suisse Intl";
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.contacts {
	padding: 142px 0;
	background: #2E363D;
}

.contacts__top {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	gap: 21px;
}

.contacts__top-title {
	color: #FFF;
	font-family: "Suisse Intl";
	font-size: 28.444px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.contacts__heading {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	justify-content: space-between;
	margin-top: 113px;
}

.contacts__title {
	color: #FFF;
	font-family: "Suisse Intl";
	font-size: 56.889px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	max-width: 760px;
}

.contacts__grid {
	margin-top: 275px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
}

.contacts__grid-item {
	max-width: 640px;
	min-width: 640px;
}

.contacts__grid-item__post {
	color: #FFF;
	font-family: "Suisse Intl";
	font-size: 25px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	opacity: 0.5;
	height: 60px;
}

.contacts__grid-item__name {
	color: #FFF;
	font-family: "Suisse Intl";
	font-size: 32px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-top: 56px;
	margin-bottom: 25px;
}

.contacts__grid-item__info {
	color: #FFF;
	font-family: "Suisse Intl";
	font-size: 25px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.contacts__grid-item__info a {
	text-decoration: underline;
	color: #fff;
}

.footer {
	padding: 248px 0 53px;
}

.footer__wrap {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	justify-content: space-between;
}

.footer__copy {
	color: #000;
	font-family: "Suisse Intl";
	font-size: 25px;
	font-style: normal;
	font-weight: 400;
	line-height: 170.6%;
}

.footer__right {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	gap: 85px;
}

.footer__right-menu {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	gap: 85px;
}

.footer__right-menu__item {
	color: #000;
	font-family: "Suisse Intl";
	font-size: 25px;
	font-style: normal;
	font-weight: 450;
	line-height: 170.6%;
	text-decoration: none;
}

.footer__right-menu__item:last-of-type {
	color: #000;
	font-family: "Suisse Intl";
	font-size: 25px;
	font-style: normal;
	font-weight: 700;
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: none;
	text-decoration-thickness: auto;
	text-underline-offset: auto;
	text-underline-position: from-font;
}

.footer__right-logo {
	padding: 18px;
}

.section__heading {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	justify-content: space-between;
	-ms-align-items: flex-start;
	align-items: flex-start;
}

.section__heading-logo {
	max-width: 110px;
}

.section__heading-logo img {
	max-width: 100%;
}

/* ===== Idle-modal (модалка "Вы все еще здесь") ===== */
:root{
  --idle-bg:#ffffff;--idle-text:#000;--idle-track:#e8efe9;--idle-accent:#DCB95A;--idle-btn:#B8AA96;--idle-btn-text:#8a7a68;
}
.idle-modal{
  position:fixed; inset:0; z-index:9999;

  /* вместо display:none — анимируем прозрачность и клики */
  display:block;
  opacity:0;
  pointer-events:none;
  transition: opacity 240ms ease;
}
.idle-modal.is-open{
  opacity:1;
  pointer-events:auto;
}
.idle-modal__backdrop{
  position:absolute; inset:0; background:rgba(0,0,0,.35);
  opacity:0; transition:opacity 240ms ease;
}
.idle-modal.is-open .idle-modal__backdrop{ opacity:1; }
.idle-modal__card{
  position:absolute; left:50%; top:50%;
  background:var(--idle-bg); padding:70px 32px 70px; text-align:center;
  width: 671px; box-shadow:0 8px 32px rgba(0,0,0,.12);
  opacity:0; transform:translate(-50%,-50%) scale(.9);
  transition:opacity 240ms ease, transform 240ms ease;
}
.idle-modal.is-open .idle-modal__card{
  opacity:1; transform:translate(-50%,-50%) scale(1);
}
.idle-modal__title{
  font-family:"Suisse Intl"; font-size:43px; font-weight:700; color:var(--idle-text);
  margin:0 0 24px 0; line-height:1.2; margin-bottom: 63px;
}
.idle-modal__ring{
  position:relative; width:171px; height:171px; margin:0 auto 64px;
  display:flex; align-items:center; justify-content:center;
}
.idle-modal__ring-circle{
  position:absolute; inset:0; border-radius:50%;
  background:conic-gradient(var(--idle-accent) 0deg, var(--idle-track) 0deg 360deg);
  mask:radial-gradient(circle at center, transparent 30px, black 5px);
  -webkit-mask:radial-gradient(circle at center, transparent 80px, black 5px);
}
.idle-modal__ring-number{
  font-family:"Suisse Intl"; font-size:43px; font-weight:700; color:var(--idle-text);
  z-index:1; position:relative;
}
.idle-modal__btn{
  border: 1px solid var(--idle-btn); color:var(--idle-btn-text);
  padding:22px 0; min-width: 293px; background: none;
  font-family:"Suisse Intl"; font-size:24px; font-weight:700;
  cursor:pointer; transition:opacity 200ms ease;
}
.idle-modal__btn:hover{ opacity:.8; }
.idle-modal__btn:active{ opacity:.6; }

/* ===== Кнопка "Вернуться назад" ===== */
.back-btn{
  position:fixed; bottom:30px; right:30px; z-index:1000;
  background:var(--idle-btn); color:#fff;
  border:none; padding:24px 36px;
  font-family:"Suisse Intl"; font-size:28px; font-weight:500;
  text-decoration:none; cursor:pointer; transition:opacity 200ms ease;
  box-shadow:0 4px 16px rgba(0,0,0,.12);
}
.back-btn:hover{ opacity:.8; }
.back-btn:active{ opacity:.6; }

/* 4K адаптация для тач-панелей 55" */
@media (min-width: 3840px) {
	.container {
		padding: 0 135px;
	}

	.header {
		top: 60px;
	}

	.header__menu {
		gap: 48px;
	}

	.header__menu-item {
		font-size: 48px;
	}

	.intro__title {
		font-size: 128px;
		letter-spacing: -1.28px;
		max-width: 1927px;
		margin-top: 112px;
	}

	.intro__subtitle {
		font-size: 48px;
		line-height: 133.3%;
	}

	.what {
		padding: 213px 0;
	}

	.what__content {
		margin-top: 150px;
	}

	.what__content-title {
		font-size: 42.667px;
		line-height: 150%;
	}

	.what__content-text {
		max-width: 1432px;
	}

	.what__content-text p {
		font-size: 42.667px;
		margin-bottom: 42px;
	}

	.what__content-sidebar {
		gap: 42px;
		margin-left: 30px;
	}

	.what__image {
		max-width: 1765px;
		height: 1203px;
	}

	.about {
		padding: 213px 0;
		height: 2077px;
	}

	.about__box {
		max-width: 1140px;
		margin-top: 171px;
	}

	.about__box-title {
		font-size: 85.333px;
		line-height: 100%;
		letter-spacing: -0.853px;
		margin-bottom: 106px;
	}

	.about__box-content p {
		font-size: 37.333px;
		line-height: normal;
		letter-spacing: -0.747px;
	}

	.about__box-content p:not(:last-of-type) {
		margin-bottom: 37px;
	}

	.photos {
		padding: 213px 0;
	}

	.photos .container {
		padding-right: 0;
	}

	.photos .section__heading {
		padding-right: 135px;
	}

	.photos__slider {
		margin-top: 105px;
	}

	.photos__slider-slide.swiper-slide {
		max-width: 1734px;
	}

	.photos__slider-slide img {
		height: 1138px;
	}

	.photos__slider-nav {
		margin-top: 70px;
		gap: 52px;
	}

	.dirs {
		padding: 213px 0;
	}

	.dirs__grid {
		gap: 54px;
		margin-top: 75px;
	}

	.dirs__item {
		padding: 106px;
	}

	.dirs__item-title {
		font-size: 85.333px;
		line-height: 100%;
		letter-spacing: -0.853px;
		min-height: 150px;
	}

	.dirs__item-text {
		font-size: 42.667px;
		line-height: 150%;
	}

	.dirs__item-text ul {
		margin-left: 37px;
	}

	.dirs__item-sidebar {
		max-width: 1305px;
		min-width: 1305px;
	}

	.dirs__item-sidebar__title {
		font-size: 85.333px;
		line-height: 100%;
		letter-spacing: -0.853px;
		margin-bottom: 48px;
	}

	.dirs__item-sidebar__video {
		height: 976px;
	}

	.dirs__item-sidebar__info {
		margin-top: 27px;
		padding-left: 88px;
	}

	.dirs__item-sidebar__info p {
		font-size: 42.667px;
		line-height: 150%;
	}

	.dirs__item-sidebar__info {
		padding: 64px 88px;
		font-size: 42.667px;
		line-height: 150%;
		margin-top: 27px;
	}

	.dirs__item-content {
		gap: 31px;
		margin-top: 150px;
		padding: 106.667px 106.667px 128px 106.667px;
	}

	.dirs__item-content__title {
		font-size: 85.333px;
		line-height: 100%;
		letter-spacing: -0.853px;
	}

	.dirs__item-content__text {
		font-size: 42.667px;
		line-height: 150%;
	}

	.dirs__item-content__text ul {
		margin-left: 37px;
	}

	.kadr {
		padding: 213px 0;
	}

	.kadr__video {
		height: 1890px;
	}

	.contacts {
		padding: 213px 0;
	}

	.contacts__title {
		font-size: 42.667px;
		line-height: 150%;
	}

	.contacts__content {
		margin-top: 169px;
	}

	.contacts__content-title {
		font-size: 85.333px;
		line-height: 100%;
		max-width: 1140px;
	}

	.contacts__grid {
		margin-top: 412px;
	}

	.contacts__grid-item {
		max-width: 960px;
		min-width: 960px;
	}

	.contacts__grid-item__label {
		font-size: 37px;
		height: 90px;
	}

	.contacts__grid-item__value {
		font-size: 48px;
		margin-top: 84px;
		margin-bottom: 37px;
	}

	.contacts__grid-item__description {
		font-size: 37px;
	}

	.footer {
		padding: 372px 0 79px;
	}

	.footer__text {
		font-size: 37px;
		line-height: 170.6%;
	}

	.footer__menu-item {
		font-size: 37px;
		line-height: 170.6%;
	}
	
	.section__heading-logo {
		max-width: 160px;
	}
}