.title-block {
    --block-radius: 60px;
    border-radius: 60px;
    position: relative;
    height: 795px;
    margin-top: 20px;
    margin-bottom: 25px;
}

.title-block .title-block__picture {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    border-radius: var(--block-radius);
    overflow: hidden;
    z-index: -5;
    pointer-events: none;
}

.title-block .title-block__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-width: unset;
}

.title-block .title-block__date-wrapper {
    padding: 11px;
    background-color: #000;
    position: relative;
    width: fit-content;
    border-radius: 24px;
    position: absolute;
    top: 40px;
    right: 40px;
    overflow: hidden;
}

.title-block .title-block__date-inner {
    background-color: #F7824D;
    font-weight: 700;
    font-size: 29px;
    line-height: 120%;
    letter-spacing: 0px;
    text-transform: uppercase;
    color: #fff;
    padding: 17px;
    border-radius: 13px;
    display: flex;
    gap: 10px;
    align-items: center;
}

.title-block .title-block__date-highlight {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    mix-blend-mode: hard-light;
    pointer-events: none;
}

.title-block .title-block__date-highlight-img {
    height: 100%;
    width: 100%;
    object-fit: fill;
    max-width: unset;
}

.title-block .title-block__calendar-icon {
    height: 32px;
    width: 32px;
}

.title-block .title-block__title-wrapper {
    position: absolute;
    font-size: 79px;
    display: flex;
    text-transform: uppercase;
    width: fit-content;
    position: absolute;
    top: 152px;
    left: 133px;
    transform: rotate(-5.93deg);
    z-index: 1;
}

.title-block .title-block__title-svg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: auto;
    height: 100%;
}

.title-block .title-block__title-text {
    margin-top: 2%;
    margin-left: 1.4%;
    letter-spacing: 19%;
    color: transparent;
}

.title-block .title-block__title-text span {
    letter-spacing: 61%;
}

.title-block .title-block__ticket {
    border-radius: 40px;
    overflow: hidden;
    position: absolute;
    width: fit-content;
    display: flex;
    box-shadow: 4px 4px 0px 0px #8A8A8AF2;
    top: 400px;
    left: 97.5px;
    transform: rotate(6.36deg);
    max-height: 280px;
}

.title-block .title-block__ticket-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    display: flex;
}

.title-block .title-block__ticket-bg-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.title-block .title-block__ticket-svg {
    height: 100%;
    width: auto;
}

.title-block .title-block__ticket-text {
    position: absolute;
    top: 10%;
    left: 4%;
    font-size: 60px;
    z-index: 1;
    line-height: 88%;
    color: transparent;
}

.title-block .register-btn {
    position: absolute;
    bottom: -50px;
    left: 90px;
    z-index: 2;
    width: 455px;
    padding: 30px;
    font-size: 28.8px;
    z-index: 5;
}

.title-block .title-block__leaves {
    position: absolute;
    display: flex;
    left: 0;
    overflow: hidden;
    pointer-events: none;
}

.title-block .title-block__leaves.top {
    top: 0;
    height: 395px;
    border-radius: var(--block-radius) 0 0 0;
    z-index: 3;
}

.title-block .title-block__leaves.bottom {
    bottom: 0;
    border-radius: 0 0 0 var(--block-radius);
    height: 332px;
    z-index: 2;
}

.title-block .title-block__leaves-img {
    height: 100%;
    width: auto;
}

.title-block .title-block__texture {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 2;
    mix-blend-mode: color-dodge;
    border-radius: var(--block-radius);
    overflow: hidden;
    display: flex;
    pointer-events: none;
}

.title-block .title-block__texture-img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: left;
}

@media screen and (max-width: 1450px) {
    .header {
        z-index: 8;
    }

    .title-block {
        height: 590px;
        --block-radius: 36px;
    }

    .title-block .title-block__ticket-text {
        font-size: 40px;
    }

    .title-block .title-block__date-inner {
        font-size: 20px;
        padding: 7px 11px;
        border-radius: 8px;
    }

    .title-block .title-block__date-wrapper {
        padding: 8px;
        border-radius: 16px;
        top: 20px;
        right: 20px;
    }

    .title-block .title-block__leaves.top {
        height: 260px;
    }

    .title-block .title-block__leaves.bottom {
        height: 230px;
    }

    .title-block .title-block__title-wrapper {
        font-size: 60px;
        top: 123px;
        left: 77px;
    }

    .title-block .title-block__ticket {
        top: 304px;
        left: 61.5px;
        max-width: 680px;
        width: 88%;
        height: fit-content;
    }
}

@media screen and (max-width: 670px) {
    .title-block {
        margin-top: 0;
        margin-bottom: 40px;
        --block-radius: 0;
        height: 450px;
    }

    .title-block .title-block__date-wrapper {
        z-index: 4;
        left: 20px;
        right: unset;
    }

    .title-block .title-block__date-inner {
        font-size: 14px;
    }

    .title-block__outer {
        padding: 0;
    }

    .header .header__mobile {
        top: 20px;
    }

    .title-block .title-block__title-wrapper {
        top: 100px;
        left: 10px;
        z-index: 4;
        font-size: 44px;
    }

    .title-block .title-block__ticket {
        top: 237px;
        left: -6.5px;
        width: 440px;
        border-radius: 20px;
    }

    .title-block .title-block__leaves.top {
        height: 245px;
    }

    .title-block .title-block__leaves.bottom {
        height: 159px;
        z-index: 1;
    }

    .title-block .register-btn {
        left: 20px;
        font-size: 20px;
        width: calc(100% - 40px);
        padding: 23px;
        bottom: -33px;
    }

    .title-block .title-block__ticket-text {
        font-size: 26px;
    }
}
