@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@600;700&display=swap');

.poppins-semibold {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.poppins-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
}


@font-face {
    font-family: "Gilroy Bold";
    src: url("../fonts/gilroy-bold.ttf") format("truetype");
}
@font-face {
    font-family: "Gilroy Medium";
    src: url("../fonts/gilroy-medium.ttf") format("truetype");
}
@font-face {
    font-family: "Gilroy Semibold";
    src: url("../fonts/gilroy-semibold.ttf") format("truetype");
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    background: #0A0A0A;
    color: white;
    font-family: "Gilroy Semibold";
}
.box {
    position: relative;
    z-index: 1;
}
.header__background {
    max-width: 1184px;
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: -1;
}

.header-panel {
    width: 100%;
    height: 84px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #1A1A1A;
    color: #fbfbfb;
    padding: 0px 30px;
    position: relative;
}
.header-panel__wrapper {
    max-width: 1440px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header-panel__title {
    display: flex;
    align-items: center;
}
.header-panel__title_wrapper {
    display: flex;
    align-items: center;
}
.header-panel__title h2 {
    font-size: 22px;
    font-weight: 700;
}
.header-panel__title span {
    width: 2px;
    height: 18px;
    background: #c7c7c7;
    margin-right: 7px;
    margin-left: 9px;
}
.header-panel__title p {
    color: #C7C7C7;
    font-size: 17px;
}

.header-panel__burger-menu-mobile {
    display: none;
}

.header-panel__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative;
}
.header-panel__whatsapp, .header-panel__booking {
    padding: 11px 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}
.header-panel__language-icon {
    margin-left: 3px;
    cursor: pointer;
}
.header-panel__language-icon svg rect {
    fill: #3A3A3A;
    transition: .3s;
}
.header-panel__language-icon:hover rect {
    fill: #585858;
}
.header-panel__language-select {
    width: 205px;
    padding: 8px;
    background: #3a3a3a;
    display: flex;
    flex-direction: column;
    border: 1px solid #535353;
    border-radius: 10px;
    position: absolute;
    right: 0px;
    top: 48px;
    z-index: 5;
    display: none;  
}
.header-panel__language-select-active {
    display: flex;
}

.header-panel__language {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 6px;
    border-radius: 6px;
    transition: .3s;
    cursor: pointer;
    font-size: 18px;
    color: white;
    font-weight: 600;
}
.header-panel__language-active {
    background: #585858;
}

@media screen and (max-width: 503px) {
    .header-panel__language-select {
        top: 150px;
        left: 50%;
        transform: translateX(-50%);
    }
}

@media screen and (max-width: 980px) {
    .header-panel__title h2 {
        font-size: 20px;
    }
    .header-panel__title p {
        font-size: 15px;
    }
    .header-panel__title span {
        height: 16px;
    }
    .header-panel__wrapper {
        flex-direction: column;
        align-items: center;
    }
    .header-panel__title {
        margin-top: 10px;
        margin-bottom: 5px;
    }
    .header-panel__actions {
        justify-content: center;
    }
    
}
@media screen and (max-width: 503px) {
    .header-panel {
        /* height: 100px; */
        z-index: 2;
    }
    .header-panel__wrapper {
        flex-direction: row;
    }
    .header-panel__title {
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
    }
    .header-panel__actions {
        width: 100%;
        height: 0px;
        transition: .3s;
        opacity: 0;
        flex-direction: column;
        gap: 5px;
        position: absolute;
        right: 0px;
        top: -85px;
        z-index: -1;
    }
    .header-panel__actions-active {
        height: 150px;
        position: absolute;
        right: 0px;
        top: 85px;
        width: 100%;
        background: #1A1A1A;
        padding: 8px;
        opacity: 1;
    }
    .header-panel__language-icon {
        display: flex;
        justify-content: center;
    }
    .header-panel__actions div {
        width: 90%;
        border-radius: 5px;
    }
    .header-panel__whatsapp:hover, .header-panel__booking:hover {
        background: #585858;
    }
    .header-panel__actions p {
        font-size: 12px;
    }
    .header-panel__title h2 {
        text-align: center;
    }
    .header-panel__title span:nth-child(1) {
        display: none;
    }
    .header-panel__burger-menu-mobile {
        display: block;
    }
}

header {
    max-width: 1286px;
    width: 100%;
    margin: 0px auto;
    margin-top: 36px;
}
.header__wrapper {
    width: 100%;
    padding: 0px 20px;
}
.header__geo-data {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
    font-size: 18px;
    color: rgba(255, 255, 255, 0.56);
}
.header__headline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 30px;

}
.header__headline h1 {
    font-family: "Poppins", sans-serif;
    font-weight: 700;
    font-size: 79px;
    line-height: 115%;
    color: #fbfbfb;
}
.header__date {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    font-size: 64px;
    color: #000;
    background: #FF9700;
    border-radius: 18px;
}
.header__date img {
    width: 100%;
}
.header__date p {
    position: absolute; 
    top: 50%; 
    left: 50%;
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 1250px) {
    .header__date {
        width: 100%;
        height: 200px;
        overflow: hidden;
        margin-top: 36px;
    }
    .header__headline br {
        display: none;
    }
    .header__headline h1 {
        width: 100%;
        text-align: justify;
        font-size: 100px;
        /* font-size: calc( (100vw - 480px)/(1250 - 480) * (100 - 50) + 50px); */
    }
    .header__headline h1 img {
        height: 72px;
        float: right;
        margin-top: 20px;
    }

}
@media screen and (max-width: 986px) {
    .header__headline h1 {
        font-size: 80px;
    }
    .header__headline h1 img {
        height: 58px;
        margin-top: 15px;
    }
}
@media screen and (max-width: 794px) {
    .header__headline h1 {
        font-size: 60px;
    }
    .header__headline h1 img {
        height: 45px;
    }  
}
@media screen and (max-width: 608px) {
    .header__headline h1 {
        font-size: 40px;
    }
    .header__headline h1 img {
        height: 29px;
    }    
    .header__date {
        height: 130px;
    }
    .header__date p {
        font-size: 50px;
    }
    .header__geo-data {
        font-size: 14px;
    }
    .header__date img {
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 452px) {
    .header__headline h1 {
        font-size: 35px;
    }
    .header__headline h1 img {
        height: 25px;
        margin-top: 7px;
    }   
    .header__date {
        height: 120px;
    }
    .header__date p {
        font-size: 50px;
    }
    .header__date img {
        width: auto;
        height: 100%;
    }
}
@media screen and (max-width: 370px) {
    .header__geo-data {
        font-size: 12px;
    }
    .header__geo-data svg {
        width: 14px;
    }
    .header__headline h1 {
        font-size: 25px;
    }
    .header__headline h1 img {
        height: 18px;
        margin-top: 9px;
    }   
    .header__date {
        height: 100px;
    }
}

.party-info {
    display: flex;
    justify-content: space-between;
    gap: 42px;
    margin-top: 90px;
}
.party-info__image {
    max-width: 328px;
    width: 100%;
    height: 430px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}
.party-info__background-image {
    position: absolute;
    width: 101%;
    height: 101%; /* или нужная высота */
    background-image: url('../media/Poster.png');
    background-size: 143%;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    border-radius: 20px;
}
.party-info__post__filter-image {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.46);
    backdrop-filter: blur(39.4px);
    z-index: 1;
}
.party-info__background-post {
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
}
.party-info__post {
    height: 100%;
    z-index: 1;
}

.party-info__content {
    flex: 1;
}
.party-info__rules {
    display: flex;
    gap: 12px;
    font-weight: 500;
    font-size: 18px;
}
.party-info__rules > div {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 8px;
    font-family: "Gilroy Medium";
    font-weight: 500;
    font-size: 18px;
}
.party-info__age {
    padding: 6px 8px;
    background: #313131;
}
.party-info__dresscode {
    padding: 8px 10px;
    background: #202020;
}
.party-info__schedule {
    margin-top: 50px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.party-info__schedule h2 {
    font-family: "Gilroy Semibold";
    font-weight: 600;
    font-size: 22px;
}
.party-info__time-list {
    display: flex;
    justify-content: space-between;
    gap: 36px;
    margin-top: 24px;
}
.party-info__time-item {
    /* width: calc(50% - 18px); */
    display: flex;
    flex-direction: column;
    background: #313131;
    border-radius: 22px;
    flex: 1;
    padding: 24px;
}
.time-item__time {
    width: 100%;
    display: flex;
    justify-content: space-between;

}
.time-item__time p {
    font-family: "Gilroy Semibold";
    font-weight: 600;
    font-size: 18px;
}
.party-info__time-item-text {
    margin-top: 32px;
    min-height: 60px;
}
.party-info__time-item__dividing-line {
    width: 100%;
    height: 1px;
    background-color: #7c7c7c;
}
.party-info__time-to-tikets {
    margin-top: 15px;
    display: flex;
    justify-content: space-between;
    cursor: pointer;
}
.party-info__schedule button {
    border-radius: 16px 18px;
    padding: 16px;
    width: 178px;
    background: #ff9700;
    font-family: "Gilroy Semibold";
    font-weight: 600;
    font-size: 18px;
    color: #0a0a0a;
    border: 0px;
    outline: 0px;
    margin-top: 37px;
}

@media screen and (max-width: 1228px) {
    .party-info__time-list {
        flex-direction: column;
    }
    .party-info__image {}
}
@media screen and (max-width: 900px) {
    .party-info {
        flex-direction: column;
    }
    .party-info__image {
        max-width: 420px;
        height: 542px;
        margin: 0 auto;
    }
    .party-info__post {
        height: 100%;
    }
}
@media screen and (max-width: 442px) {
   .party-info__image {
        max-width: 420px;
        height: 115vw;
        margin: 0 auto;
    } 
    .party-info__rules {
        flex-direction: column;
    }
    .party-info__dresscode svg {
        width: 50px;
    }

}


.list-reservation-block {
    max-width: 1286px;
    width: 100%;
    margin: 0px auto;
    padding: 0px 20px;
    margin-top: 112px;
}
.list-reservation-block__headline {
    width: 100%;
    display: flex;
    justify-content: space-between;
    font-family: "Gilroy Semibold";
    font-weight: 600;
    font-size: 24px;
    color: #fff;
}
.list-reservation-block__headline button {
    min-width: 173px;
    height: 53px;
    padding: 16px;
    background: #ff9700;
    font-family: "Gilroy Semibold";
    font-weight: 600;
    font-size: 18px;
    color: #0a0a0a;
    border: 0px solid black;
    outline: 0px;
    border-radius: 8px;
}
.list-reservation-block__headline button svg {
    margin-left: 6px;
}
.list-reservation {
    width: 100%;
    margin-top: 40px;
    list-style-type: none;
    font-family: "Gilroy Semibold";
    font-weight: 600;
    font-size: 20px;
    color: #fff;
}
.list-reservation li {
    display: flex;
    justify-content: space-between;
    width: 100%;
    border-bottom: 1px solid  #2d2d2d;
    padding: 22px 26px;
}
.list-reservation li p:nth-child(1) {width: 31.86%;}
.list-reservation li p:nth-child(2) {width: 49.52%;}
.list-reservation li p:nth-child(3) {width: 18.62%;}
.list-reservation li p:nth-child(1) {
    display: flex;
    align-items: center;
    gap: 15px;
}
.list-reservation li p {
    padding: 0px 5px 0px 0px;
}

.list-reservation__names {
    font-weight: 600;
    font-size: 18px;
    line-height: 164%;
    color: #b3b3b3;
}
@media screen and (max-width: 770px) {
    .list-reservation-block__headline {
        display: flex;
        align-items: center;
    }
    .list-reservation-block__headline h2 {
        font-size: 22px;
    }
    .list-reservation {
        font-size: 16px;
    }
    .list-reservation__names {
        font-size: 14px;
    }
    .list-reservation li p:nth-child(1) svg {
        min-width: 12px;
        max-width: 12px;
    }
}
@media screen and (max-width: 550px) {
    .list-reservation-block__headline {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 50px;
    }
    .list-reservation-block__headline h2 {
        font-size: 22px;
    }
    .list-reservation {
        font-size: 14px;
    }
    .list-reservation__names {
        font-size: 12px;
    }
    .list-reservation li p:nth-child(1) svg {
        width: 10px;
        height: 10px;
    }
    .list-reservation li {
        padding: 22px 14px;
    }
    .list-reservation li p {
        font-size: 10px;
    }
}


.banner {
    width: 100%;
    display: flex;
    justify-content: space-between;
    max-width: 1286px;
    width: 100%;
    margin: 0px auto;
    padding: 0px 20px;
    margin-top: 138px;
    font-family: "Gilroy Semibold";
}
.banner h2{
    font-family: "Gilroy Bold";
    font-weight: 700;
    font-size: 30px;
    margin-bottom: 40px;
}
.banner p {
    font-weight: 600;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.banner__image {
    width: 589px;
}
.banner__image img {
    width: 100%;
}
.banner__welcome-drink {
    margin-top: 55px;
}
.banner_gradient {
    margin-top: 29px;
}
@media screen and (max-width: 1130px) {
    .banner {
        flex-direction: column-reverse;
        gap: 20px;
        margin-top: 90px;
    }
    .banner__image {
        width: 100%;
    }
    .banner_gradient {
        width: 100%;
    }
}
@media screen and (max-width: 500px) {
    .banner h2 {
        font-size: 20px;
    }
    .banner p {
        font-size: 14px;
    }

}

footer {
    width: 100%;
    height: 172px;
    display: flex;
    flex-direction: column;
    gap: 31px;
    padding: 32px 110px;
    background: #1a1a1a;
    margin-top: 120px;
}
footer h2 {
    font-weight: 700;
    font-size: 30px;
}
footer ul {
    list-style-type: none;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    font-weight: 500;
    font-size: 18px;
    color: rgba(255, 255, 255, 0.56);
}
footer li {
    display: flex;
    align-items: center;
    gap: 6px;
}
@media screen and (max-width: 735px) {
    footer {
        margin-top: 100px;
        padding: 30px 20px;
    }
    footer h2 {
        font-weight: 700;
        font-size: 20px;
    }
    footer ul {
        font-size: 14px;
    
    }
    footer svg {
        width: 20px;
    }
}



.booking {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100vw;
    min-height: 100vh;
    backdrop-filter: blur(56.29999923706055px);
    background: rgba(22, 22, 22, 0.47);
    z-index: 6;
    display: none;
    justify-content: center;
    align-items: center;
    padding: 20px;
    overflow-y: scroll;
}
.booking-active {
    display: flex;
}
.booking__box {
    width: 642px;
    background: #1a1a1a;
    border: 1px solid #484848;
    border-radius: 26px;
}
.booking__box__headline {
    width: 100%;
    height: 92px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px;
    border-bottom: 1px solid #676767;
    font-family: "Poppins", sans-serif;
}
.booking__arrow, .booking__close {
    width: 44px;
    height: 44px;
    background: #434343;
    border-radius: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.booking__wrapper {
    width: 100%;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.booking__wrapper > div {
    background: #434343;
    border: 1px solid #515151;
    border-radius: 12px;
}
.booking__data {
    width: 100%;
    padding: 16px;
    display: flex;
    justify-content: space-between;
}
.booking__data > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}
.booking__data > div h3 {
    font-family: "Gilroy Medium";
    font-weight: 500;
    font-size: 18px;
}
.booking__data > div p {
    font-weight: 500;
    font-size: 16px;
    color: #cfcfcf;
}
.booking__count-human-block {
    padding: 28px 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 20px;
}
.booking__count-human-block h3 {
    font-weight: 600;
    font-size: 22px;
    color: #b3b3b3;
}
.booking__count-human-block__counter {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}
.booking__counter__check-count {
    border: 1px solid #7d7d7d;
    border-radius: 6px;
    padding: 7px 14px;
}
.booling__counter__arrow {
    width: 36px;
    height: 36px;
    background: #686868;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    transition: .3s;
}
.booling__counter__arrow svg path {
    transition: .3s;

}
.booling__counter__arrow:hover {
    background: #585858;
}
.booling__counter__arrow:hover svg path {
    fill: #9D9D9D;
}
.booking__rate-block {
    padding: 24px;
}
.booking__rate-block h2 {
    font-weight: 600;
    font-size: 20px;
    color: #b3b3b3;
}
.booking__rate__list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-top: 22px;
}
.booking__rate__list li {
    width: 100%;
    display: flex;
    flex-direction: column;
    background: #2c2c2c;
    border-radius: 8px;
    padding: 21px 18px 18px 18px;
}
.booking__choise-rate {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.booking__choise-rate__name {
    display: flex;
    gap: 9px;
    font-family: "Gilroy Semibold";
    font-weight: 600;
    font-size: 20px;
}
.booking__choise-rate__price {
    font-weight: 600;
    font-size: 18px;
}
@media screen and (max-width: 580px){
    .booking__data {
        /* gap: 20px; */
        flex-direction: column;
    }
    .booking__data div {
        padding-bottom: 10px;
        margin-top: 10px;
        border-bottom: 2px solid #676767;
    }
    .booking__data div:nth-last-child(1) {
        border-bottom: 0px solid #676767;
    }
}
@media screen and (max-width: 545px){
    .booking__box__headline h2 {
        font-size: 16px;
    }
}
@media screen and (max-width: 415px){
    .booking__box__headline h2 {
        font-size: 14px;
    }
    .booking__arrow, .booking__close {
        width: 25px;
        height: 25px;
        border-radius: 5px;
    }
    .booking__arrow svg, .booking__close svg {
        width: 15px;
        height: 15px;
    }
    .booking__data > div h3 {
        font-size: 14px;
    }
    .booking__data > div p {
        font-size: 12px;
    }
    .booking__count-human-block h3 {
        font-size: 14px;
    }
    .booling__counter__arrow {
        width: 25px;
        height: 25px;
    }
    .booling__counter__arrow svg {
        width: 8px;
        height: 8px;
    }
    .booking__counter__check-count {
        font-size: 12px;
        padding: 4px 9px;
    }
    .booking__rate-block h2 {
        font-size: 14px;
    }
    .booking__choise-rate__name svg {
        width: 14px;
        height: 14px;
    }
    .booking__choise-rate__name p {
        font-size: 12px;
    }
    .booking__choise-rate__price {
        font-size: 12px;
    }

}