@import url('fonts.css');
@import url('null.css');

body{
    font-family: 'Source Sans Pro', sans-serif;
}

[class*='__container']{
    max-width: 1054px;
    margin: 0 auto;
    padding-inline: 15px;
}

/*-------------------*/

.page{   
}
[class*='page__']{
    padding-block: 64px;
}

@media(max-width:767.98px){
    [class*='page__']{
        padding-block: 32px;
    }
}

/*-------------------*/

/*Components*/
.button {
    border-radius: 4px;
    background-color: #D8AE5E;
    text-transform: uppercase;
    padding: 8px 16px;
    transition: background-color 0.3s;
}

@media (any-hover: hover){
    .button:hover{
        background-color: #9a7c43;
    }
}

.header__block {
    text-align: center;
}
.header__block::after{
    content: "";
    width: 120px;
    height: 1px;
    background-color: #D8AE5E;
    margin-top: 32px;
}
.header-block__title {
    font-family: 'Bodoni 72';
    text-transform: uppercase;
    font-size: 64px;
}
.header-block__title:not(:last-child){
    margin-bottom: 8px;
}
.header-block__text {
    text-transform: uppercase;
    line-height: 1.2;
    letter-spacing: 0.8px;
}
@media(max-width: 767.98px){
    .header-block__title{
        font-size: 46px;
    }

    .header-block__text{
        font-size: 14px;
    }
}
@media(max-width: 479.98px){
    .header-block__title{
        font-size: 36px;
    }
}
/*-----------*/

.wrapper{
    min-height: 100%;
}



.hero {
    position: relative;
    color: #fff;
}
.hero::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    z-index: 2;
    opacity: 0.6;
}
.hero__container {
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 2;
    align-items: center;
    row-gap: 15.533981svh;

    padding-block: 7.76699svh; /* 64/824 */
}
.hero__header {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 3.883495svh;
}
.hero__logo {
}
.hero__logo:not(:last-child){
}
.hero__menu {
}
.menu {
}
.menu__list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; /* обовязково*/
    column-gap: 16px;
    row-gap: 5px;
}
.menu__item {
}
.menu__link {
}
@media (any-hover: hover){
    .menu__link:hover{
        text-decoration: underline;
    }
}
.hero__content {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 2.427184svh;
}
.hero__title {
    font-family: 'Bodoni 72', serif;
    font-size: 96px;
}
.hero__label {
    letter-spacing: 3.6px;
    font-size: 24px;
    text-transform: uppercase;
}
.hero__button {
}
.hero__image {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 767.98px){
    .hero__title{
        font-size: 66px;
    }
    .menu__link{
        font-size: 20px;
    }
}

/*------------------*/

.about {
    padding-inline: 64px;
}
.about__container {
}
.about__header {
    margin-bottom: 32px;
}
.about__content {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
}
.about__text {
    letter-spacing: 1px;
    line-height: 1.5;
    font-size: 20px;
}
.about__text p:not(:last-child){
    margin-bottom: 10px;
}
.about__text:not(:last-child){
    margin-bottom: 32px;
}
.about__button {
}

@media(max-width: 767.98px){
    .about__text{
        font-size: 16px;
    }
}

.activities {
    background-color: #F4F4F4;
}
.activities__container {
    display: flex;
    flex-direction: column;
    gap: 64px;
    align-items: center;

}
.activities__header {

}
.activities__items {
    max-width: 930px;
    margin: 0 auto;
    align-self: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 128px;
    row-gap: 96px;
}

.activities__item {
    flex: 0 1 auto;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;

}
.item-activities__image {

}
.item-activities__icon {
    /*flex-grow: 1;*/

}
.item-activities__image:not(:last-child){
    margin-bottom: 16px;
}

.item-activities__label {
    letter-spacing: 1px;
    font-size: 20px;
}
.activities__link {
    padding-bottom: 8px;
    border-bottom: 1px solid #D8AE5E;
    transition: all 0.3s;
}
@media(any-hover: hover){
    .activities__link:hover {
        border-bottom: 1px solid #000;
    }
}

@media (max-width: 991.98px){
    .activities__items{
        row-gap: 50px;
        column-gap: 80px;
    }
}
@media (max-width: 767.98px){
    .activities__items{
        row-gap: 30px;
        column-gap: 30px;
    }
}
@media (max-width: 430px){
    .activities__items{
       justify-content: flex-start;
       row-gap: 15px;
       column-gap: 20px;
    }
    .activities__item{
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        column-gap: 20px;
        flex: 1 1 100%;
    }
    .item-activities__image{
        flex: 0 0 80px;
    }
}

/*--------------------------------*/


.amenities {
}
.amenities__container {
}
.amenities__header {
}

.amenities__header:not(:last-child) {
    margin-bottom: 64px;
}
.amenities__sections {
}

.amenities__section:not(:last-child) {
    margin-bottom: 74px;
}
.amenities__section {
}
.section-amenities {
}
.section-amenities__title {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 3.6px;
    font-size: 24px;
}
.section-amenities__title:not(:last-child){
    margin-bottom: 32px;
}
.amenities__section__items {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    justify-content: center;
}
.section-amenities__item {
    border-radius: 4px;
    overflow: hidden;
    flex-basis: 291px;
}
.section-amenities__item:nth-child(6n + 3),
.section-amenities__item:nth-child(6n + 4){
    flex-basis: 408px;
}
.section-amenities__item:nth-child(6n + 3) .section-amenities__link,
.section-amenities__item:nth-child(6n + 4) .section-amenities__link{
    aspect-ratio: 408 / 286;
}

@media (any-hover: hover) {
    .section-amenities__item:hover .section-amenities__image{
        transform: scale(1.05);
    }
}

.section-amenities__link {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 20px;
    aspect-ratio: 291/286;
}
.section-amenities__link::after {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    content: '';
    background-color: #000;
    opacity: 0.2;
}
.section-amenities__lable{
    position: relative;
    z-index: 2;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 4.2px;
    font-size: 28px;
    line-height: 1.2;
}
.section-amenities__image {
    position: absolute;
    top: 0;
    left: 0;
    transition: all 0.5s;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 767.98px) {
    .amenities__sections:not(:last-child){
        margin-bottom: 34px;
    }
    .amenities__section:not(:last-child){
        margin-bottom: 34px;
    }
}

/*--------------------------*/

.contacts {
    background-color: #F4F4F4;
}
.contacts__container {
    display: flex;
    flex-direction: column;
    gap: 64px;
}
.contacts__header {
}
.contacts__items {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
}
.contacts__item {
}
.contacts__link {
    letter-spacing: 0.8px;
    display: flex;
    gap: 10px;
    align-items: center;
}
.contacts__link--phone {
}
.contacts__link--mail {
}
.contacts__link--map {
}
.contact__social {
}

@media (max-width: 767.98px) {
    .contacts__header{
        margin-bottom: 32px;
    }
    .contacts__items{
        gap: 15px;
    }
}

/*------------------*/

.social {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 32px;
    row-gap: 16px;
}
.social__item {
}