:root {
    --bg-brand: #4B4846;
}

* {
    box-sizing: border-box;
}

html {
    background-color: var(--bg-brand);
}

@media (min-width: 820px) {
    html:before {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        inset: 0;
        opacity: .2;
        background-size: cover;
        background-position: 50% 50%;
        background-image: url(/img/bg.jpg);
        mix-blend-mode: luminosity;
    }
}

body {
    padding: 0;
    margin: 0;
    overflow: hidden;
}

@media (max-width: 819px) {
    body {
        overflow: auto;
    }
}

.hotels-container {
    margin: 0 auto;
}

@media (min-width: 820px) {
    .hotels-container {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}

@media (max-width: 1500px) {
    .hotels-container {
        max-width: 85%;
    }
}

.hotel-item {
    position: relative;
    width: 100%;
    padding: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 50px;
}

@media (min-width: 820px) {
    .hotel-item {
        height: 100vh;
        width: 45%;
        margin-bottom: 0;
    }
}

.hotel-item .hotel-image:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    opacity: .8;
    background-color: var(--bg-brand);
    z-index: 1;
    mix-blend-mode: multiply;
}

.hotel-item div {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    z-index: 2;
    position: relative;
}

.g-icon {
    position: absolute;
    top: 25px;
    left: 50%;
    width: 100%;
    height: calc(100% - 50px);
    transform: translateX(-50%);
    object-fit: contain;
    display: block;
}

img.hotel-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
    pointer-events: none;
}

@media (max-width: 920px) {
    img.hotel-logo {
        max-width: 70%;
    }
}

svg.button-icon {
    bottom: 0;
    position: absolute;
    right: 0;
    transform: translate(80%, -90px);
    z-index: 2;
}

@media (max-width: 1024px) {
    svg.button-icon {
        display: none;
    }
}

img.top-title {
    margin-left: auto;
    margin-bottom: 15px;
}

img.view-hotel {
    position: absolute;
    bottom: 30px;
    right: 50px;
    z-index: 2;
}

a.full-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
}

.hotel-image:hover {
    transform: scale(1.015);
}

.hotel-image {
    transition: all 300ms ease;
}

@media (max-width: 600px) {
    img.hotel-item-bg {
        height: 300px;
    }
}