/* latin-ext */
/* @font-face {
    font-family: 'Katibeh';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../fonts/Katibeh-Regular.woff2) format('woff2');
    unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
} */
/* latin */
/* @font-face {
    font-family: 'Katibeh';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url(../fonts/Katibeh-RegularND.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
} */

@font-face {
    font-family: 'Katibeh';
    src: url('../fonts/Katibeh-Regular.woff2') format('woff2'),
        url('../fonts/Katibeh-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
	--black: #000000;
    --not-black: #2A2726;
	--white: #FFFFFF;
    --purple: #A499BC;
    --purple-dark: #81748D;
    --purple-light: #CBBDE8;
    --green: #CBCFC0;
    --green-dark: #92B0A2;
    --green-light: #A0EAC7;
    --ecru: #EDDCCD;
    --orange: #F1B782;
    --orange-dark: #E1926D;
    --orange-light: #FDD29A;
    --grey: #707070;
}

*, ::before, ::after {
	box-sizing: border-box;
}

body, h1, h2, h3, ul {
    margin: 0;
}

body {
    line-height: 0;
    overflow-x: hidden;
}

a,
a:hover, a:active, a:focus {
	color: initial;
	text-decoration: none;
}

strong {
    font-weight: 500;
}

.container-fluid {
    max-width: 100%;
}

.container {
    display: flex;
    flex-wrap: wrap;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 15px;
    position: relative;
}

.img-fluid {
    height: auto;
    max-width: 100%;
}

.col-1 {
    width: 100%;
    max-width: 100%;
}

.col-2 {
    width: 50%;
    max-width: 50%;
}

.col-4 {
    width: 25%;
    max-width: 25%;
}

.col-2.col--wider {
    width: 55%;
    max-width: 55%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.col-2.col--wider ~ .col-2 {
    width: 45%;
    max-width: 45%;
    padding-left: 60px;
}

.paragraph--small {
    font-size: 30px;
    line-height: 1;
    opacity: .3;
}

.button {
    font-size: 50px;
    text-transform: uppercase;
    line-height: 1.4;
    display: inline-flex;
    height: 72px;
    padding: 0 56px;
    border: 1px solid transparent;
    border-radius: 36px;
    background-color: var(--white);
    transition: border-color .2s, background-color .2s;
}

.button:hover, .button:active, .button:focus {
    border-color: var(--black);
    background-color: transparent;
}

.w-80 {
    width: 80%;
}

.nav {
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 30px 0;
    background-color: var(--purple-dark);
}

.nav__container {
    justify-content: space-between;
}

.nav__list {
    display: flex;
    list-style: none;
    padding-left: 0;
}

.nav__link {
    color: var(--orange-light);
    font: 400 45px/1 'Katibeh', cursive;
    text-transform: uppercase;
    transition: color .2s;
}

.nav__link:hover, .nav__link:active, .nav__link:focus {
    color: var(--white);
}

.nav__item:not(:last-of-type) .nav__link {
    margin-right: 122px;
}

.nav__socials {
    display: flex;
    align-items: center;
}

.nav__social {
    transition: filter .2s;
}

.nav__social:hover, .nav__social:active, .nav__social:focus {
    filter: brightness(200%);
}

.nav__social:not(:first-of-type) {
    margin-left: 25px;
}

.nav__langs {
    display: flex;
    align-items: center;
}

.nav__lang {
    color: var(--orange-light);
    font: 400 45px/.5 'Katibeh', cursive;
    text-transform: uppercase;
    transition: color .2s;
}

.nav__lang:hover, .nav__lang:active, .nav__lang:focus {
    color: var(--white);
}

.nav__lang:not(:last-of-type) {
    margin-right: 10px;
    padding-right: 10px;
    border-right: 3px solid var(--orange-light);
}

.section {
    font: 400 35px/45px 'Katibeh', cursive;
    padding: 100px 0 80px 0;
}

.section__header {
    display: block;
}

.section__title {
    font-size: 120px;
    line-height: 80px;
    text-transform: uppercase;
    margin-bottom: 80px;
}

.section__title strong {
    color: var(--black);
    font-size: 100px;
    display: block;
}

.section--2 .container::before, .section--3 .container::before, .section--4 .container::before, .spotify::before, .spotify::after, .section--6 .container::before, .footer::before {
    content: '';
    position: absolute;
    z-index: 1;
}

.section--1 {
    display: flex;
    padding: 0 60px 100px 60px;
    background-color: var(--purple-dark);
}

.section--1__wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 60%;
    max-width: 60%;
}

.section--1__content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.section--1__logo {
    width: 660px;
}

.section--1__paragraph {
    font-size: 45px;
    text-align: center;
    margin: 78px 0 0 0;
}

.section--1__paragraph strong {
    color: var(--ecru);
    display: inline-flex;
    align-items: center;
}

.section--1__paragraph small {
    font-size: 12px;
    line-height: 1;
    text-align: left;
    display: inline-flex;
    width: 60px;
    margin-left: 10px;
}

.section--1__wrapper ~ .col-2 {
    display: flex;
    align-items: center;
    width: 40%;
    max-width: 40%;
}

.section--2 {
    background-color: var(--ecru);
}

.section--2 .container::before {
    top: -158px;
    left: 34%;
    height: 109px;
    width: 165px;
    background: url(../images/section--2-eye.svg) center no-repeat;
}

.section--2 .section__header {
    color: var(--purple);
}

.artist {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 88px;
    cursor: zoom-in;
}

.artist__img {
    border: 1px solid;
    border-top-left-radius: 50%;
    border-top-right-radius: 50%;
}

.artist__name {
    font-size: 50px;
    text-align: center;
    text-transform: uppercase;
}

.popup {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: none;
    justify-content: center;
    align-items: center;
    cursor: initial;
    z-index: 10;
}

.popup--active {
    display: flex;
}

.popup__content {
    display: flex;
    align-items: center;
    width: 1150px;
    padding: 45px;
    background-color: var(--white);
    border: 1px solid var(--grey);
    position: relative;
    z-index: 1;
}

.popup__left {
    min-width: 340px;
    text-align: center;
}

.popup__socials {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}

.popup__social {
    line-height: 0;
    margin: 0 11px;
    transform: filter .2s;
}

.popup__social:hover {
    filter: contrast(0);
}

.popup__right {
    text-align: center;
    padding: 0 60px 0 95px;
}

.popup__name {
    font-size: 60px;
    margin: 0 0 40px 0;
}

.popup__paragraph {
    font-size: 25px;
    text-align: left;
    line-height: 1.3;
    margin: 0;
}

.popup__button {
    font-size: 40px;
    height: 57px;
    margin-top: 30px;
    padding: 0 30px;
    background-color: var(--green);
    border-color: var(--black);
}

.popup__close {
    position: absolute;
    top: 30px;
    right: 30px;
    display: block;
    height: 33px;
    width: 33px;
    padding: 0;
    border: none;
    background: url(/assets/images/popup-close.svg) center no-repeat;
    cursor: pointer;
    transition: transform .2s;
}

.popup__close:hover {
    transform: rotate(90deg);
}

.popup__background {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.section--3 {
    background-color: var(--green);
}

.section--3 .container::before {
    top: -180px;
    left: 75%;
    height: 175px;
    width: 239px;
    background: url(../images/section--3-eye.gif) center no-repeat;
}

.section--3 .section__title {
    color: var(--ecru);
}

.section--4 {
    background-color: var(--orange);
}

.section--4 .container::before {
    top: -173px;
    left: 26%;
    height: 232px;
    width: 172px;
    background: url(../images/section--4-stars.gif) center no-repeat;
}

.ticket-section {
    display: flex;
    align-items: center;
    margin-bottom: 73px;
}

.ticket-section--regular {
    flex-direction: row-reverse;
	opacity: 0.4;
}
.ticket-section--last {
	opacity: 0.4;
}

.ticket-section--early {
	opacity: 0.4;
}

.ticket-section--early .ticket-section__title {
    color: var(--green-dark);
}

.ticket-section--regular .ticket-section__title {
    color: var(--purple);
    text-align: right;
}

.ticket-section--last .ticket-section__title {
    color: var(--orange-dark);
}

.ticket-section__title {
    font-size: 150px;
    line-height: 80px;
    text-transform: uppercase;
    width: 621px;
}
.ticket-section__title2 {
    font-size: 100px;
    line-height: 150px;
    text-transform: uppercase;
    width: 1221px;
	position: absolute;
	top: 175px
	
}

.ticket {
    color: var(--not-black);
    display: flex;
    align-items: center;
    width: 1320px;
    margin-left: 80px;
    padding: 100px 0 100px 90px;
    border: 1px solid;
    border-radius: 257px;
	
}

.ticket-section--early .ticket {
    background-color: var(--green-dark);
}

.ticket-section--regular .ticket {
    justify-content: flex-end;
    margin: 0 80px 0 -420px;
    padding: 100px 90px 100px 0;
    background-color: var(--purple);
}

.ticket-section--last .ticket {
    background-color: var(--orange-dark);
}

.ticket__left, .ticket__right {
    padding: 0 40px;
}

.ticket__left {
    width: 630px;
    border-right: 1px solid var(--grey);
}

.ticket__name, .ticket__price {
    font-size: 70px;
    line-height: 90px;
    text-transform: uppercase;
    margin: 0;
}

.ticket__desc {
    font-size: 30px;
    line-height: 1.2;
    margin-bottom: 0;
}

.ticket-section--last .ticket__desc {
    margin-bottom: 30px;
}

.ticket__right {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.ticket__currency {
    font-size: 30px;
    line-height: 1;
}

.ticket__button {
    color: var(--not-black);
    white-space: nowrap;
    margin: 30px 0;
    padding: 0 35px;
}

.section--5 {
    padding: 100px 0 185px 0;
    background-color: var(--green);
}

.spotify {
    margin-top: -80px;
    position: relative;
}

.spotify::before {
    top: -265px;
    left: 0;
    height: 265px;
    width: 312px;
    background: url(../images/spotify-splash-1.gif) center no-repeat;
}

.spotify::after {
    top: -153px;
    right: 0;
    height: 153px;
    width: 165px;
    background: url(../images/spotify-splash-2.gif) center no-repeat;
}

.spotify__iframe {
    width: 100%;
    height: 100%;
    border: none;
}

.video {
    height: 100vh;
    width: 100%;
    border: 0;
    line-height: 0;
}

.section--6 {
    padding-top: 105px;
    background-color: var(--purple);
}

.section--6 .container::before {
    top: -15px;
    right: -300px;
    height: 797px;
    width: 563px;
    background: url(../images/section--6-castle.svg) center no-repeat;
}

.section--6 .section__title {
    color: var(--purple-light);
}

.map {
    height: 513px;
    width: 100%;
    border: 0;
}

.section--7 {
    padding: 120px 0 160px 0;
    background-color: var(--purple-dark);
}

.contact {
    justify-content: center;
}

.contact__col {
    padding: 0 125px;
}

.contact__title {
    font-size: 100px;
    text-transform: uppercase;
}

.contact__list {
    list-style: none;
    margin-top: 65px;
    padding-left: 0;
}

.contact__item {
    margin: 15px 0;
    padding-left: 43px;
    position: relative;
}

.contact__item::before {
    content: '';
    position: absolute;
    top: 15px;
    left: 0;
    height: 12px;
    width: 12px;
    border: 1px solid;
    border-radius: 50px;
    background-color: var(--purple);
}

.contact__link {
    color: var(--purple-light);
    font-size: 50px;
    text-transform: uppercase;
    transition: color .2s;
}

.contact__link:hover, .contact__link:active, .contact__link:focus {
    color: var(--white);
}

.footer {
    color: var(--purple-dark);
    font: 400 20px/1 'Katibeh', cursive;
    background-color: var(--green-light);
    display: flex;
    justify-content: center;
    padding: 65px 0 45px 0;
    position: relative;
}

.footer::before {
    bottom: 10px;
    right: 200px;
    height: 295px;
    width: 310px;
    background: url(../images/footer-hands.svg) center no-repeat;
}

@media (max-width: 1850px) {

    .section--1__paragraph {
        font-size: 38px;
    }

    .ticket {
        padding-left: 50px;
    }
    
    .ticket-section--regular .ticket {
        padding-right: 50px;
    }

    .ticket-section__title {
        font-size: 100px;
    }
}

@media (max-width: 1800px) {

    .ticket {
        margin-left: 0;
    }
    
    .ticket-section--regular .ticket {
        margin-left: -200px;
        margin-right: 0;
    }

    .ticket-section__title {
        width: 450px;
    }
}

@media (max-width: 1600px) {

    .container {
        max-width: 1400px;
    }

    .nav__item:not(:last-of-type) .nav__link {
        margin-right: 80px;
    }

    .section__title, .ticket-section__title {
        font-size: 90px;
    }

    .section__title strong {
        font-size: 75px;
    }

    .section--1__paragraph {
        font-size: 32px;
    }

    .ticket-section__title {
        width: 400px;
    }

    .ticket-section--regular .ticket {
        margin-left: -350px;
    }
}

@media (max-width: 1400px) {

    .col-4 {
        width: calc(100% / 3);
        max-width: calc(100% / 3);
    }

    .button {
        font-size: 35px;
        height: 50px;
    }

    .nav__item:not(:last-of-type) .nav__link {
        margin-right: 50px;
    }

    .nav__link {
        font-size: 40px;
    }

    .section--1__paragraph {
        font-size: 26px;
        margin-top: 30px;
    }

    .ticket-section {
        flex-direction: column;
        width: 100%;
    }

    .ticket {
        justify-content: center;
        width: 100%;
        padding: 60px 0;
    }

    .ticket-section__title {
        text-align: center;
        width: auto;
        margin-bottom: 30px;
    }

    .ticket-section--regular .ticket {
        justify-content: center;
        margin: auto;
        padding: 60px 0;
    }

    .contact__title {
        font-size: 75px;
    }

    .footer::before {
        right: 30px;
    }
}

@media (max-width: 1200px) {

    .col-2, .col-2.col--wider, .col-2.col--wider ~ .col-2, .w-80 {
        width: 100%;
        max-width: 100%;
    }

    .col-2.col--wider ~ .col-2 {
        padding-left: 0;
    }

    .nav__item:not(:last-of-type) .nav__link {
        margin-right: 30px;
    }

    .section__title {
        margin-bottom: 40px;
    }

    .section--1 {
        flex-direction: column;
    }

    .section--1__wrapper {
        justify-content: center;
        padding: 0;
    }

    .section--1 .col-2 {
        text-align: center;
    }

    .section--1__paragraph {
        font-size: 40px;
        margin: 30px 0;
    }

    .artist {
        padding: 0 15px;
    }

    .artist__name {
        font-size: 35px;
    }

    .popup {
        width: calc(100% - 60px);
    }

    .ticket-section__title {
        font-size: 60px;
    }

    .ticket__left {
        width: 500px;
    }

    .ticket__name, .ticket__price {
        font-size: 50px;
        line-height: 1;
    }

    .ticket__desc {
        font-size: 24px;
    }

    .spotify {
        margin-top: 250px;
    }

    .section--6 .container::before {
        display: none;
    }

    .section--7 {
        padding: 80px 0 120px 0;
    }

    .contact__col {
        padding: 0 30px;
    }

    .contact__title {
        font-size: 50px;
    }

    .contact__link {
        font-size: 35px;
    }

    .contact__list {
        margin-top: 30px;
    }

    .footer::before {
        bottom: 5px;
        right: 15px;
        width: 250px;
        background-size: 100%;
    }
}

@media (max-width: 900px) {

    .nav__container {
        align-items: flex-end;
    }

    .nav__item:not(:last-of-type) .nav__link {
        margin-right: 25px;
    }

    .nav__link {
        font-size: 30px;
    }

    .nav__social-img {
        height: 20px;
    }

    .section--1__paragraph {
        font-size: 32px;
    }

    .section__title {
        font-size: 60px;
        line-height: 1;
    }

    .section__title strong {
        font-size: 50px;
    }

    .section--2 .container::before, .section--3 .container::before, .section--4 .container::before {
        left: unset;
        right: 0;
    }

    .artist {
        margin-bottom: 50px;
    }

    .artist__name {
        font-size: 30px;
    }

    .popup__left {
        width: 250px;
        min-width: unset;
    }

    .popup__right {
        padding: 0 0 0 45px;
    }

    .ticket, .ticket-section--regular .ticket {
        padding: 30px 0;
    }

    .ticket__left {
        padding-right: 20px;
    }

    .ticket__right {
        padding-left: 20px;
    }

    .ticket__name, .ticket__price {
        font-size: 40px;
    }

    .ticket__desc {
        font-size: 20px;
    }

    .ticket__button {
        margin: 20px 0;
    }

    .footer {
        padding-top: 100px;
    }

    .footer::before {
        bottom: 40px;
    }
}

@media (max-width: 700px) {

    .col-4 {
        width: 50%;
        max-width: 50%;
    }

    .button {
        font-size: 30px;
        height: 40px;
    }

    .paragraph {
        font-size: 24px;
        line-height: 1.2;
    }

    .paragraph--small {
        font-size: 20px;
        margin: 0;
    }

    .nav {
        padding: 10px 0 0 0;
    }

    .nav__list {
        width: 100%;
        justify-content: center;
    }

    .nav__socials {
        justify-content: center;
        width: 100%;
        margin: 15px 0;
    }

    .section--1 {
        padding: 0 30px;
    }
    
    .section--1__paragraph {
        font-size: 24px;
    }

    .popup__name {
        font-size: 40px;
        margin-bottom: 20px;
    }

    .popup__paragraph {
        font-size: 18px;
        line-height: 1.2;
    }

    .ticket, .ticket-section--regular .ticket {
        padding: 20px 0;
        border-radius: 50px;
    }
    
    .ticket__left, .ticket__right {
        padding: 0 15px;
    }

    .ticket__name, .ticket__price {
        font-size: 30px;
    }

    .ticket__button {
        margin-top: 50px;
        padding: 0 15px;
    }

    .section--5 {
        padding: 60px 0 100px 0;
    }
}

@media (max-width: 600px) {

    .popup {
        flex-direction: column;
        width: calc(100% - 30px);
        padding: 30px;
    }

    .popup__right {
        margin-top: 20px;
        padding-left: 0;
    }
}

@media (max-width: 500px) {

    .nav__item:not(:last-of-type) .nav__link {
        margin-right: 10px;
    }

    .nav__link {
        font-size: 18px;
        white-space: nowrap;
    }

    .section .container::before {
        display: none;
    }

    .section--1 {
        padding: 0 15px 30px 15px;
    }

    .section--1__paragraph {
        font-size: 16px;
        line-height: 2;
    }

    .section__title {
        font-size: 40px;
    }

    .section__title strong {
        font-size: 30px;
    }

    .artist__name {
        font-size: 24px;
        line-height: 1;
    }

    .ticket-section__title {
        font-size: 40px;
    }

    .ticket__left, .ticket__right {
        padding: 0 10px;
    }

    .ticket__name, .ticket__price {
        font-size: 24px;
    }
    
    .ticket__currency {
        font-size: 20px;
    }

    .ticket__button {
        font-size: 24px;
        height: 32px;
        margin: 30px 0 50px 0;
    }

    .spotify::before {
        width: 300px;
        background-size: 100%;
    }

    .video {
        height: 50vh;
    }

    .contact__col {
        width: 250px;
    }

    .contact__title {
        font-size: 35px;
    }

    .contact__list {
        margin-top: 0;
    }

    .contact__item {
        margin: 0;
    }

    .contact__link {
        font-size: 25px;
    }
}