@import url('https://fonts.googleapis.com/css?family=Montserrat:400,600,800&display=swap&subset=cyrillic');

* {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
}

:focus {
    outline: none;
}

a:hover {
    text-decoration: none;
}

body {
    position: relative;
    overflow-x: hidden;
}

.parent-section {
    position: relative;
    overflow: hidden;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}
.section-first {
    background: url(./images/home-background.jpg) no-repeat center / cover;
}
.section-activities {
    background: url(./images/activities-background.jpg) no-repeat center / cover;
}
.section-types {
    background: url(./images/types-background.jpg) no-repeat center / cover;
}
.section-gallery {
    background: url(./images/gallery-background.jpg) no-repeat center / cover;
}
.section-quality {
    background: url(./images/quality-background.jpg) no-repeat center / cover;
}
.section-contacts {
    background: url(./images/contacts-background.jpg) no-repeat center / cover;
}

.cirlce-background {
    content: url(./images/circle.png);
    position: absolute;
    max-height: 100%;
    z-index: 1;

    animation-duration: 100s;
    animation-name: circle;
    animation-iteration-count: infinite;

    transition: all 1s ease;
}
.cirlce-background-first {
    top:64px;
    left: -20px;
}
.cirlce-background-activities {
    top:48px;
    right: 20px;
    transform: rotate(-31deg);
}
.cirlce-background-types {
    top:24px;
    left: -12%;
    transform: rotate(-80deg);
}
.cirlce-background-gallery {
    top:48px;
    left: -2%;
}
.cirlce-background-quality {
    top:24px;
    right: 10%;
    transform: rotate(-31deg);
}
.cirlce-background-contacts {
    top: 5%;
    left: 20%;
    transform: rotate(-31deg);
}

@keyframes circle {
    from {
        transform: rotate(0);
    }
    to {
        transform: rotate(360deg);
    }
}

header {
    position: fixed;
    left:0;
    top:0;
    width: 100%;
    display: flex;
    justify-content: center;
    margin:0 auto;
    padding:32px 16px;
    z-index: 200;

    transition: all .4s ease;
}
header > div {
    display: flex;
    justify-content: space-between;
    width: 1500px;
    max-width: 100%;
}
header.scrolled {
    padding:4px 16px;
    background: rgba(50, 50, 42, 0.8);
}
.header-logo {
    height: 80px;
    transition: height .4s;
}
header.scrolled .header-logo {
    height: 64px;
}
header ul {
    list-style: none;
    padding:0;
    margin:0;
}
header nav ul {
    display: flex;
    padding:20px 32px;
}
header nav ul a {
    display: inline-block;
    padding: 0 16px;
    color: #fff;
    text-transform: uppercase;

    transition: color .4s;
}
.body-ru header nav ul a {
    font-size:14px;
}
header nav ul li.active a,
header nav ul a:hover,
header nav ul a:active {
    color:#8D9C70;
}

header .right-nav {
    display: flex;
}
header .right-nav .search-block {
    position: relative;
    display: flex;
    margin: 8px 16px;
}
header .right-nav .search-block .search-input {
    padding: 12px 20px;
    width: 48px;
    background: transparent;
    opacity: 0;

    height: 44px;
    border:none;
    color:#82847E;
    font-size: 14px;

    transition: all .8s ease;
}
header .right-nav .search-block .search-input.active {
    background: #242522;
    padding: 12px 44px 12px 20px;
    width: 200px;
    opacity: 1;
}
header .right-nav .search-block .search-input::placeholder { color:#82847E; }
header .right-nav .search-block .search-input::-webkit-input-placeholder { color: 82847E; }
header .right-nav .search-block .search-input::-moz-placeholder { color: 82847E; }
header .right-nav .search-block .search-input:-ms-input-placeholder { color: 82847E; }
header .right-nav .search-block .search-input:-moz-placeholder { color: 82847E; }

header .right-nav .search-block .search-shower {
    position: absolute;
    top:10px;
    right:12px;
    cursor: pointer;
}
.body-ru header .right-nav .search-block .search-shower {
    top:14px;
    height:20px;
}

header .right-nav .languages-switcher {
    display: flex;
    padding: 20px 0;
}
header .right-nav .languages-switcher a {
    display: inline-block;
    padding: 0 8px;
    color: #fff;
    text-transform: uppercase;

    transition: color .4s;
}
.body-ru header .right-nav .languages-switcher a {
    font-size: 14px;
}
header .right-nav .languages-switcher li.active a,
header .right-nav .languages-switcher a:hover,
header .right-nav .languages-switcher a:active {
    color:#8D9C70;
}



footer {
    position: absolute;
    left:0;
    bottom: 0;
    width:100%;
    padding: 16px;
    text-align: center;
    color: #82847E;
}


.social-links {
    position: fixed;
    left:16px;
    bottom: 16px;
    list-style: none;
    padding: 0;
    z-index: 10;
}
.social-links img {
    margin-top:16px;
    opacity: .8;
    transition: opacity .4s;
}
.social-links img:hover {
    opacity: 1;
}


.right-fixed-nav {
    position: fixed;
    right:16px;
    bottom:50%;
    transform: translateY(50%);
    list-style: none;
    padding:0;
    margin: 0;
    z-index: 10;
}
.right-fixed-nav a {
    display: flex;
    justify-content: center;
    align-items: center;
    width:14px;
    height:14px;
    margin: 4px 0;
    cursor: pointer;
}
.right-fixed-nav li.active a {
    margin: 2px 0;
}
.right-fixed-nav a:before {
    content: url(./images/spot.png);

    transition: content .4s;
}
.right-fixed-nav li.active a:before {
    content: url(./images/active-spot.png);
    width: 100%;
    height: 100%;
}

.to-next-block {
    position: absolute;
    right:16px;
    bottom:120px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 300px;
    height: 24px;
    margin-right: -140px;
    transform:rotate(90deg);
    cursor: pointer;
    z-index: 10;
}
.body-sk .to-next-block {
    width: 300px;
    margin-right: -140px;
    bottom: 120px;
}
.body-ru .to-next-block {
    width: 300px;
    margin-right: -140px;
    bottom:140px;
}
.to-next-block p {
    color:#82847E;
}
.to-next-block img {
    width: 85px;
    height: 8px;
    margin-top: -8px;
    margin-left: 16px;

    transition: width .4s;
}
.to-next-block:hover img {
    width:120px;
}



.section {
    position: relative;
    width:900px;
    max-width: 100%;
    z-index: 4;
}
.section h1,
.section h2,
.section h3 {
    position: relative;
    color:#fff;
    font-weight: 800;
    font-size: 40px;
    letter-spacing: 0.035em;
    line-height: 118.9%;
}
.section h1:before,
.section h2:before,
.section h3:before {
    content: '';
    position: absolute;
    top:16px;
    right:calc(100% + 32px);
    height:1px;
    width:100vw;
    background: #82847E;
}
.section .content {
    margin:32px auto;
}
.section .content p {
    margin-bottom: 12px;
    color:#fff;
    font-size: 16px;
    line-height: 1.5em;
    letter-spacing: 0.035em;
    opacity: .8;

    transition: all .4s ease;
}
.section .content p.p-hidden {
    height:0;
    overflow: hidden;
    margin-bottom: 0;
}
.sbutton {
    background: #8D9C70;
    box-shadow: 0px 0px 15px rgba(209, 239, 149, 0.22);
    border-radius: 50px;
    color: #3B3D38;
    padding: 12px 64px;
    border: 0;

    transition: all .4s ease;
}
.sbutton:hover,
.sbutton:active {
    box-shadow: 0px 0px 24px 4px rgba(209, 239, 149, 0.22);
    color: #fff;
    opacity: .7;
}


.activities-list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding:0;
    margin:0;
}
.activities-list li {
    overflow: auto;
    width:50%;
    color:#fff;
    font-size: 16px;
    line-height: 1.5em;
    letter-spacing: 0.035em;
    opacity: .8;
    padding:16px 32px 16px 0;
}
.activities-list li span {
    float:left;
    font-weight: 900;
    font-size: 48px;
    line-height: 146.9%;
    letter-spacing: 0.035em;
    font-feature-settings: 'pnum' on, 'lnum' on;
    color: #8D9C70;
    text-shadow: 0px 0px 15px rgba(209, 239, 149, 0.22);
    width:64px;
}
.activities-list li p {
    font-family: Montserrat;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 146.9%;
    letter-spacing: 0.035em;
    font-feature-settings: 'pnum' on, 'lnum' on;
    color: #FFFFFF;
    margin-top: 8px;
}


.types-list {
    list-style: none;
    padding:0;
    margin:0;
}
.types-list li {
    display: block;
    overflow: auto;
    color:#fff;
    font-size: 16px;
    line-height: 1.5em;
    letter-spacing: 0.035em;
    opacity: .8;
    padding:16px 32px 16px 0;
}
.types-list li:before {
    content: url(./images/list-marker.png);
    display: block;
    margin: 16px 24px 16px 0;
    float:left;
}


.contacts-list {
    display: flex;
    list-style: none;
    padding:0;
    margin:48px -16px;
    justify-content: space-between;
}
.contacts-list li {
    display: flex;
    align-items: center;
    width: 33%;
}
.contacts-list li p {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 8px;
}
.contacts-list li p a {
    display: block;
    color:#fff;
}


.gallery-view {
    position: relative;
    overflow: hidden;
    margin: 16px -8px;
    width:900px;
}
.gallery-view .gallery-track {
    display: flex;

    transition: all .4s ease;
}
.gallery-view .gallery-item {
    position: relative;
    width: 229px;
    height: 200px;
    margin:8px;
    border: 6px solid rgba(130, 132, 126, 0.21);
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.35);
    border-radius: 5px;
    filter: grayscale(1);

    transition: all .4s ease;
}
.gallery-view .gallery-item.active {
    transform: scale(1.1);
    filter: none;
}
.gallery-view .gallery-item img {
    width: 100%;
    height:100%;
    object-fit: cover;
    cursor: pointer;
}
.gallery-nav {
    display: flex;
    align-items: center;
}
.gallery-nav button {
    padding: 0;
    margin: 0;
    border: none;
    background: transparent;
    display: block;
    float: left;

    transition: opacity .4s;
}
.gallery-nav button.disabled {
    opacity: .64;
}
.gallery-nav button img {
    margin-left: -12px;
    cursor: pointer;
}
.gallery-nav button.disabled img {
    cursor: default;
}
.gallery-progressbar {
    position: relative;
    border: 1px solid rgba(130, 132, 126, 0.2);
    width: calc(100% - 148px);
    height: 4px;
    float: left;
    margin-left: 16px;
    overflow: hidden;
}
.gallery-progressscroll {
    position: absolute;
    left:0;
    top:0;
    width: 144px;
    height: 100%;
    background: #8D9C70;

    transition: all .4s ease;
}


.airback {
    position: fixed;
    left:0;
    top:0;
    width:100vw;
    height:100vh;
    background: rgba(0, 0, 0, 0.7);
    z-index: 1000;

    opacity: 0;
    visibility: hidden;
    transition: all .4s ease;
}
.airback.active {
    opacity: 1;
    visibility: visible;
}
.aircontent {
    position: absolute;
    left:0;
    top:0;
    width:100vw;
    height:100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.aircontent > img {
    max-width:100%;
    max-height:100%;
    object-fit: contain;
}
.airback > button {
    position: fixed;
    right:8px;
    top:8px;
    background: transparent;
    border:none;
    z-index: 1001;
    cursor: pointer;
}

.airgallery {
    position: relative;
    width: 100vw;
    height: 100vh;
}
.airgallery .gallery-track {
    display: flex;
    width: 100vw;

    transition: all .4s ease;
}
.airgallery .gallery-item {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100vw;
    height: 100vh;
    padding: 64px;
}
.airgallery .gallery-item img {
    max-width: 100%;
    max-height:100%;
    object-fit: contain;
}
.airgallery-prev,
.airgallery-next {
    position: absolute;
    top:50%;
    padding: 0;
    margin: 0;
	margin-top:-35px;
    border: none;
    background: transparent;
    display: block;
    z-index: 4;

    transition: opacity .4s;
}
.airgallery-prev {
    left: 8px;
}
.airgallery-next {
    right: 8px;
}
.airgallery-prev.disabled,
.airgallery-next.disabled {
    opacity: .4;
}
.airgallery-prev img,
.airgallery-next img {
    cursor: pointer;
}

.mobile-header,
header .burguer {
    display: none;
}

@media (max-width: 900px){
    header {
        align-items: center;
        height: auto;
        padding: 8px;
    }

    header nav,
    header .right-nav,
    .social-links,
    .right-fixed-nav,
    .to-next-block {
        display: none;
    }

    header .burguer {
        display: block;
        background: transparent;
        border: none;

        transition: opacity .4s;
    }
    header .burguer.opened {
        opacity: 0;
    }

    header .header-logo {
        height: 44px;
    }


    .mobile-header {
        position: fixed;
        right:-320px;
        top:0;
        width:320px;
        max-width: 100%;
        height: 100vh;
        overflow: auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: space-around;
        background: rgba(0, 0, 0, 0.7);
        box-shadow: none;
        text-align: center;
        z-index: 202;

        transition: all .4s ease;
    }
    .mobile-header.opened {
        right:0;
        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.49);
    }
    .mobile-header > div {
        width: 100%;
    }
    .mobile-header ul {
        list-style: none;
        padding:0;
        margin:0;
    }
    .mobile-header nav {
        text-align: center;
        width: 100%;
        margin-top: 16px;
    }
    .mobile-header nav ul a {
        display: inline-block;
        padding: 12px 8px;
        color: #fff;
        text-transform: uppercase;
    
        transition: color .4s;
    }
    .mobile-header nav ul li.active a,
    .mobile-header nav ul a:hover,
    .mobile-header nav ul a:active {
        color:#8D9C70;
    }
    
    .mobile-right-nav {
        display: flex;
    }
    .mobile-search-block {
        position: relative;
        display: inline-block;
        margin: 8px 16px;
    }
    .mobile-search-block .search-input {
        padding: 12px 20px;
        width: 48px;
        background: transparent;
        opacity: 0;
    
        height: 44px;
        border:none;
        color:#82847E;
        font-size: 14px;
    
        transition: all .8s ease;
    }
    .mobile-search-block .search-input.active {
        background: #242522;
        padding: 12px 44px 12px 20px;
        width: 200px;
        opacity: 1;
    }
    .mobile-search-block .search-input::placeholder { color:#82847E; }
    .mobile-search-block .search-input::-webkit-input-placeholder { color: 82847E; }
    .mobile-search-block .search-input::-moz-placeholder { color: 82847E; }
    .mobile-search-block .search-input:-ms-input-placeholder { color: 82847E; }
    .mobile-search-block .search-input:-moz-placeholder { color: 82847E; }
    
    .mobile-search-block .search-shower {
        position: absolute;
        top:10px;
        right:12px;
        cursor: pointer;
    }
    
    .mobile-languages-switcher {
        display: flex;
        justify-content: center;
        padding: 20px 0;
        width:100%;
    }
    .mobile-languages-switcher a {
        display: inline-block;
        padding: 0 8px;
        color: #fff;
        text-transform: uppercase;
    
        transition: color .4s;
    }
    .mobile-languages-switcher li.active a,
    .mobile-languages-switcher a:hover,
    .mobile-languages-switcher a:active {
        color:#8D9C70;
    }
    
    .mobile-social-links {
        display: flex;
        justify-content: center;
        list-style: none;
        padding: 0;
        z-index: 10;
        width:100%;
    }
    .mobile-social-links img {
        margin: 24px 10px 0 10px;
    }

    .mobile-times {
        position: absolute;
        right:8px;
        top:8px;
        background: transparent;
        border: none;
    }

    .section {
        max-width: calc(100% - 64px);
    }

    .section h1,
    .section h2,
    .section h3 {
        font-size: 24px;
    }

    .section .content p {
        font-size: 13px;
        margin:8px 0;
    }

    .types-list li {
        font-size: 12px;
    }

    .activities-list li {
        width:100%;
    }

    .activities-list li p {
        margin-top: 16px !important;
    }

    .contacts-list li p a {
        font-size: 13px;
        width: 100%;
    }
	
	.airgallery-prev {
		left: 2px;
	}
	.airgallery-next {
		right: 2px;
	}
}

@media (max-width: 480px){
    .contacts-list {
        flex-wrap: wrap;
    }
    .contacts-list li {
        width:100%;
        justify-content: normal;
    }
}

/* width */
::-webkit-scrollbar {
    width: 1px;
  }
  
  /* Track */
  ::-webkit-scrollbar-track {
    background: #f1f1f1;
  }
  
  /* Handle */
  ::-webkit-scrollbar-thumb {
    background: #888;
  }
  
  /* Handle on hover */
  ::-webkit-scrollbar-thumb:hover {
    background: #555;
  }