@font-face {
	font-family: 'Inter-Medium';
	src: url('/fonts/Inter/static/Inter-Medium.ttf');
}
@font-face {
	font-family: 'Inter-Bold';
	src: url('/fonts/Inter/static/Inter-Bold.ttf');
}
@font-face {
	font-family: 'Inter-Black';
	src: url('/fonts/Inter/static/Inter-Black.ttf');
}
@font-face {
	font-family: 'Inter-Light';
	src: url('/fonts/Inter/static/Inter-Light.ttf');
}

* {
    padding: 0;
    margin: 0;
    font-family: 'Inter-Medium';
    box-sizing: border-box;
}

.wrapper {
    margin: 30px auto 0 auto;
    overflow: hidden;
}

.section {
    max-width: 1200px;
    margin: 0 auto;
}

.nav {
    width: 900px;
}

.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.h1 {
    font-size: 35px;
    line-height: 45px;
}

/* Лого */

.logo {
    display: block;
    width: 190px;
    text-decoration: none;
}

.logo-pic {
    display: block;
    width: 100%;
}

/* Лого, конец */


/* Меню */

.nav-list {
    display: flex;
    justify-content: space-between;
    list-style-type: none;
}

.nav-list-link {
    font-family: 'Inter-Bold';
    font-size: 14px;
    line-height: 20px;
    color: #000;
    text-decoration: none;
    padding: 5px 0;
    border-bottom: 3px solid transparent;
    transition: color .2s, border-color .2s;
}

.nav-list-link:hover {
    color: #4EC7B4;
    transition: color .2s, border-color .2s;
    border-color: #4EC7B4;
}

.nav-list-link:active {
    color: #4EC7B4
}

.nav-list-link.active {
    color: #4EC7B4;
    border-color: #4EC7B4;
}

/* Меню, конец */

/* Верхняя секция */

.top-section {
    padding: 60px 0 30px 0;
}

.top-month {
    padding: 40px 0;
}

.top-month-text {
    font-size: 28px;
    line-height: 34px;
    font-family: "Inter-Light";
    color: #E4003B
}

/* Верхняя секция, конец */

/* Слайдер */

.top-slider {
    position: relative;
    width: 100%;
    height: 1000px;
    margin: 40px auto;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 20%;
}

.slider-block {
    min-width: 405px;
    padding: 20px;
    position: absolute;
    bottom: 60px;
    left: 220px;
    background-color: #fff;
}

.slider-block-title {
    font-size: 36px;
    line-height: 46px;
    padding-bottom: 15px;
    font-family: 'Inter-Bold';
}

.slider-block-button {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    height: 49px;
    width: 218px;
    text-align: left;
    padding: 0 0 0 20px;
    background-color: #4EC7B4;
    color: #fff;
    font-size: 14px;
    line-height: 14px;
    border: 0!important;
    outline: 0!important;
    background-image: url('/images/icons/right_arrow.svg');
    background-repeat: no-repeat;
    background-position: 90% 53%;
    background-size: 16px;
    cursor: pointer;
}

/* Слайдер, конец */

/* Карта курорта */

.r-card {
    display: block;
    width: 100%;
    margin: 40px auto;
}

/* Карта курорта, конец */

/* Секция данных о программах */

.text-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 100px;
}

.text-content-left {
    width: calc(100% - 180px);
}

.text-content-right {
    width: 400px;
}

.text-content-item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 20px;
}

.content-programm-text {
    width: 205px;
}

.content-programm-info {
    width: calc(100% - 205px);
}

.content-programm-title {
    font-family: "Inter-Bold";
    font-size: 18px;
    line-height: 24px;
    padding-bottom: 5px;
}

.content-programm-subtitle {
    font-family: "Inter-Bold";
    font-size: 18px;
    line-height: 24px;
    padding: 2px 0;
}

.content-programm-p {
    font-family: "Inter-Light";
    font-size: 16px;
    line-height: 24px;
    padding: 2px 0;
}

.content-programm-d {
    display: flex;
    flex-wrap: wrap;
}

.content-programm-d:not(.small-margin) {
    padding: 5px 0;
}

.small-margin {
    padding: 1px 0;
}

.one-element {
    justify-content: flex-end;
}

.content-programm-d-ins {
    font-family: "Inter-Light";
    font-size: 16px;
    line-height: 20px;
}

.content-programm-d-ins:first-child {
    width: 130px;
}
.content-programm-d-ins:last-child {
    width: calc(100% - 130px);
}

.content-programm-d-ins-p {
    position: relative;
    padding-left: 25px;
}

.content-programm-d-ins-p:before {
    position: absolute;
    left: 10px;
    top: 10px;
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 100%;
    background-color: #000;
}

.content-programm-d-title {
    font-family: "Inter-Bold";
}

.content-organisators-item {
    padding-top: 30px;
}

.content-programm-link {
    color: #50C7B4;
    text-decoration: underline;
}

.main-pic {
    margin-top: 100px;
    margin-right: 0;
    margin-left: auto;
    width: 285px;
    height: 200px;
    background-image: url('/images/image21.jpg');
    background-repeat: no-repeat;
    background-size: contain;
}

.page-content {
    padding: 30px 0;
}

/* Секция данных о программах, конец */

/* Блок вверх */

.to-top {
    position: relative;
    min-height: 180px;
    background-color: #EDEDED;
}

.arrow-top {
    width: 58px;
    height: 53px;
    position: absolute;
    bottom: 40px;
    left: 0;
    right: 0;
    margin: auto;
    background-color: #50C7B4;
    background-image: url('/images/icons/arrow_up.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: 28px;
    cursor: pointer;
}

/* Блок вверх, конец */

/* Зеленый низ */

.green-bottom {
    background-color: #50C7B4;
}

.green-bottom-section {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 100px;
}

.green-smart {
    display: block;
    width: 180px;
}

/* Зеленый низ, конец */

/* Таблица */

.page-table {
    padding: 50px 0;
}

.table {
    margin: 0 auto;
    width: 100%;
    border-collapse: collapse;
}

.thead-td {
    text-align: center;
    font-family: 'Inter-Bold';
    font-size: 14px;
    line-height: 20px;
}

.table tbody {
    border: 1px solid #D9D9D9;
}

.table td {
    border: 1px solid #D9D9D9;
    font-size: 16px;
    padding: 7px 10px;
}

.table .thead-td {
    border: 0;
}

.empty-td {
    height: 25px;
}

.colored-td {
    color: #E8395E
}

.bold-td {
    font-family: 'Inter-Bold';
}

.day-td {
    width: 85px;
    font-family: 'Inter-Black';
}

.time-td {
    width: 195px;
    text-align: center;
}

.name-td {
    width: 195px;
}

.hall-td {
    width: 180px;
    text-align: center;
}

/* Таблица, конец */

/* Футер */

.footer {
    min-height: 120px;
    background-color: #000;
    padding: 35px 0;
    overflow: hidden;
}

.footer-block-fullsize {
    width: 100%;
    padding-bottom: 15px;
}

.footer-blocks {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.footer-block {
    width: calc(100% - 20px);
}

.footer-title {
    font-size: 22px;
    line-height: 26px;
    color: #fff;
    font-family: 'Inter-Bold';
}

.manager-name {
    padding: 5px 0;
    font-size: 16px;
    line-height: 22px;
    color: #fff;
    font-family: 'Inter-Light';
}

.manager-title {
    padding: 5px 0 12px 0;
    font-size: 18px;
    line-height: 24px;
    color: #fff;
    font-family: 'Inter-Bold';
}

.manager-contacts {
    padding: 5px 0;
    font-size: 16px;
    line-height: 22px;
    color: #fff;
    font-family: 'Inter-Light';
}

.manager-link {
    padding: 5px 0;
    font-size: 16px;
    line-height: 22px;
    color: #45AE9F
}

/* Футер, конец */

/* Меню */

.menu-area {
	display: none;
}
.menu-area-w {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    z-index: 5;
}
.menu-icon {
    display: inline-block;
    vertical-align: middle;
    width: 32px;
    height: 24px;
    cursor: pointer;
    position: relative;
    transform: rotate(0deg);
    transition: .5s ease-in-out;
}
.menu-icon span {
    display: block;
    position: absolute;
    height: 5px;
    width: 100%;
    background: #000;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: .25s ease-in-out;
}
.menu-icon span:nth-child(1) {
   top: 0;
}
.menu-icon span:nth-child(2),
.menu-icon span:nth-child(3) {
   top: 12px;
}
.menu-icon span:nth-child(4) {
   top: 24px;
}
.menu-icon.open span:nth-child(1) {
   top: 18px;
   width: 0;
   left: 50%;
}
.menu-icon.open span:nth-child(2) {
   transform: rotate(45deg);
}
.menu-icon.open span:nth-child(3) {
   transform: rotate(-45deg);
}
.menu-icon.open span:nth-child(4) {
   top: 18px;
   width: 0;
   left: 50%;
}
.menu-icon.open span:nth-child(2) {
    transform: rotate(45deg);
}
.menu-icon.open span:nth-child(3) {
    transform: rotate(-45deg);
}
.menu-icon.open span:nth-child(4) {
    top: 18px;
    width: 0;
    left: 50%;
}

/* Меню, конец */

.pool-info {
        font-family: "Inter-Light";
    font-size: 16px;
    line-height: 20px;
}

@media only screen and (max-width: 1250px) {

    .top-slider {
        margin: 0 auto 40px auto;
    }

    .menu-area {
        position: absolute;
        display: block;
        z-index: 5;
    }

    .logo {
        margin-left: auto;
        margin-right: auto;
    }
    .nav {
        position: fixed;
        left: -20px;
        top: -20px;
        padding: 40px;
        background-color: #fff;
        width: calc(100% + 40px);
        height: calc(100% + 40px);
        z-index: 4;
        display: block;
        display: none;
        opacity: 0;
    }
    .nav-list {
        max-width: 360px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        padding: 100px 0;
    }
    .nav-list-link {
        font-size: 18px;
        line-height: 30px;
        border-bottom: 0!important
    }
    .nav-list-item {
        display: block;
        width: 100%;
        margin-bottom: 30px;
    }
    .header {
        position: relative;
        margin-bottom: 50px;
    }

    .section {
        padding: 0 20px;
    }

    .text-content-left {
        width: 100%;
    }
    .text-content-right {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
    }

    .content-programm-title {
        width: 205px;
    }
    .content-organisators-item {
        width: calc(100% - 205px);
    }
    .content-programm-title + .content-organisators-item {
        padding-top: 0
    }

    .text-content {
        padding-bottom: 100px;
    }
    .footer-blocks {
        flex-wrap: wrap;
    }
    .footer-block {
        width: 100%;
        padding-bottom: 30px;
    }

    .footer-block:last-child {
        padding-bottom: 0;
    }

    .top-slider {
        height: 440px;
    }

    .slider-block-button {
        display: none;
    }

    .slider-block-title {
        padding-bottom: 0;
        font-size: 32px;
        line-height: 42px;
    }
    .slider-block {
        display: inline-flex;
        min-width: auto;
        left: 20px;
    }

    .page-table {
        margin-top: 30px;
        padding-top: 0;
        overflow: scroll;
        transform: rotateX(180deg);
        overflow-x: auto;
    }
    .table {
        width: 1200px;
        transform: rotateX(180deg);
    }
    .page-table {
        margin-bottom: 80px;
    }
}

@media only screen and (max-width: 680px) {

    .top-slider {
        height: 230px;
    }
    .slider-block-title {
        font-size: 18px;
        line-height: 24px;
    }
    .slider-block {
        left: 12px;
        bottom: 20px;
        padding: 15px;
    }
    .logo {
        width: 210px;
    }

    .section {
        padding: 0 15px;
    }
    .h1 {
        font-size: 25px;
        line-height: 35px;
    }
    .top-month-text {
        font-size: 22px;
        line-height: 30px;
    }
    .top-month {
        padding: 20px 0 30px 0;
    }
    .content-programm-text {
        width: 100%;
    }
    .content-programm-title {
        width: 100%;
        font-family: "Inter-Bold";
        font-size: 18px;
        line-height: 24px;
        padding-bottom: 20px;
    }
    .content-programm-info {
        width: 100%;
    }
    .text-content-item {
        flex-wrap: wrap;
    }
    .content-programm-info .content-programm-title {
        padding-bottom: 0
    }
    .text-content-item {
        padding-bottom: 40px;
    }
    .content-organisators-item {
        width: 100%;
    }
    .text-content {
        padding-bottom: 30px;
    }
    .content-programm-d-ins:first-child {
        width: 100%;
        padding-bottom: 5px;
        padding-top: 10px;
    }
    .content-programm-d-ins:last-child {
        width: 100%;
    }
    .content-programm-d-ins-p {
        padding-top: 0!important;
        padding-bottom: 2px !important;
    }
}

.scroll-locked {
	position: fixed;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}