* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    overflow-x: hidden;
    width: 100%;
    scroll-behavior: smooth;
}

:root{
    --white: white;
    --black: #101010;
}

@font-face {
    font-family: 'odd';
    src: url(FONTS/oddlini-bold.ttf);
}

@font-face {
    font-family: 'gal';
    src: url(FONTS/Galderglynn\ Titling\ Lt.otf);
}

@font-face {
    font-family: 'pet';
    src: url(FONTS/Peter-Test-Regular-BF641a6402db1bd.otf);
}

@font-face {
    font-family: 'hank';
    src: url(FONTS/hanken-design-co-hk-requisite-medium.otf);
}

.landing {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.bar {
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 1;
    height: 50px;
}

.bar h1 {
    border: 1px solid black;
    background-color: white;
    font-family: 'odd';
}

.lo img{
    width: auto;
    height: 50px;
}

.navbar {
    border: 1px solid black;
    display: flex;
    align-items: center;
    background-color: white;
    height: 50px;
    z-index: 1;
}

.wordbar a,
.schedule a,
.tickets a,
.lang a {
    text-decoration: none;
    margin: 10px;
    font-family: 'odd';
    color: black;
    font-size: 12px;
}

.bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    object-fit: cover;
}

.titim{
    display: flex;
    justify-content: center;
}

.titim img {
    position: absolute;
    z-index: 1;
    height: 80%;
    width: 80%;
    margin-top: 85px;
}

.down-arrow img {
    position: absolute;
    bottom: 0px;
    left: 0px;
    z-index: 1;
    height: 50px;
    border: 1px;
    border-style: solid;
}

.fest {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    max-width: 100vw;
}

.imtit {
    width: 100%;
    border: 1px solid black;
    display: flex;
}

.tim-bar {
    height: 381px;
    width: 85%;
}

.tim-bar h1 {
    font-family: 'odd';
    font-weight: 100;
    font-size: 190px;
    padding-right: 100px;
    line-height: 165px;
    display: inline-block;
    padding-top: 50px;
}

.immy {
    overflow: hidden;
    height: 356px;
    width: 503px;
}

.immy img {
    transform: translateY(-70px);
    max-width: 100%;
    height: auto;
    border: 1px;
    border-style: solid;
    border-bottom: none;
    border-right: none;
}

.credits {
    display: flex;
    border: 1px solid black;
    justify-content: space-between;
    height: 40px;
    align-items: center;
    border-bottom: none;
    border-right: none;
}

.credits p {
    padding-left: 5px;
    padding-right: 5px;
    align-items: center;
    font-size: auto;
    justify-content: center;
    font-family: 'gal';
}

.log-text {
    display: flex;
    flex-direction: column;
    padding-top: 75px;
    width: 100%;
    padding-left: 45px;
    padding-right: 45px;
    justify-content: center;
}

.log-text h1 {
    font-family: 'odd';
    font-size: 50px;
    text-align: center;
    color: black;
    font-weight: 100;
}

.log-text p {
    font-family: 'hank';
    font-size: 20px;
    color: black;
    text-align: justify;
    padding-top: 50px;
}

.announ {
    margin-top: 400px;
}

.announ h2 {
    font-family: 'odd';
    font-size: 110px;
    padding-left: 15px;
}

.marq {
    width: 100%;
    height: 30px;
    overflow: hidden;
    font-size: 18px;
    font-family: 'odd';
    border: 1px solid;
    padding-block: 7px;
    display: flex;
    text-decoration: none;
    color: inherit; 
    white-space: nowrap;
    position: relative;
}

.marq ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 1em;
    animation: scroll 30s linear infinite;
}

@keyframes scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}

.marq:hover {
    background-color: black;
}

.marq:hover ul {
    animation-play-state: paused;
    color: white;
}


.show{
    width: 100%;
    height: 100vh;
    position: relative;
}

.bgg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 95%;
    z-index: -1;
    object-fit: cover;
    border: 1px;
    border-style: solid;
    border-top: none;
}

.crew{
    width: 100%;
    min-height: 100vh;
}

.tx{
    display: flex;
    justify-content: space-between;
    padding-left: 15px;
    padding-right: 15px;
    padding-top: 150px;
    font-family: 'pet';
    font-size: 80px;
}

.mainy{
    width: 100%;
    height: 850px;
    border: 1px;
    border-style: solid;
    border-left: none;
    display: flex;
}

.lefty{
    height: 850px;
    width: 75%;
    
}

.righty{
    height: 850px;
    width: 25%;
}

.smoly, .smolyy{
    height: 50px;
    width: 100%;
    border: 1px;
    border-style: solid;
    border-bottom: none;
    border-top: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.smolyy{
    border: 1px;
    border-style: solid;
    border-bottom: none;
}

.smoly h1,
.smolyy h1{
    font-family: 'gal';
    font-size: 15px;
    padding-left: 15px;
    padding-right: 15px;
}

.smuly{
    height: 50px;
    width: 100%;
    border: 1px;
    border-style: solid;
    border-bottom: none;
    border-top: none;
    border-left: none;
    border-right: none;
    display: flex;
    align-items: center;
}

.smuly h1{
    font-family: 'gal';
    font-size: 15px;
    padding-left: 15px;
    padding-right: 15px;
}

.namer{
    height: 100px;
    width: 100%;
    border: 1px;
    border-style: solid;
    border-bottom: none;
    display: flex;
    align-items: center;
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease;
}

.namer:active, .namer.active {
    background: black;
    color: white;
}

.namer h1{
    font-family: 'gal';
    font-size: 100px;
    padding-left: 15px;
    padding-right: 15px;
}

.namer:hover{
    background-color: black;
    color: white;
}

.quoter{
    width: 100%;
    height: 100px;
    border: 1px;
    border-style: solid;
    border-bottom: none;
    border-left: none;
    border-right: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.quoter h1{
    font-family: 'gal';
    font-size: 20px;
    text-align: center;
}

.photo{
    width: 100%;
    height: 500px;
    border: 1px;
    border-style: solid;
    border-bottom: none;
    border-left: none;
    border-right: none;
    background-size: cover;
    background-position: center;
    transition: opacity 0.s ease-in-out;
}

.photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0s ease-in-out;
}

.posi{
    width:100%;
    height: 101px;
    border: 1px;
    border-style: solid;
    border-left: none;
    border-right: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.posi h1{
    font-family: 'gal';
    font-size: 20px;
    text-align: center;
}

.soci{
    width:100%;
    height: 98px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.soci img{
    width: 70px;
    height: 70px;
}

.marqq {
    width: 100%;
    height: 30px;
    overflow: hidden;
    font-size: 18px;
    font-family: 'odd';
    border: 1px solid;
    border-top: none;
    padding-block: 7px;
    display: flex;
    text-decoration: none;
    color: inherit; 
    white-space: nowrap;
    position: relative;
}

.marqq ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    gap: 1em;
    animation: scroll 40s linear infinite;
}

@keyframes scroll {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}

.marqq:hover {
    background-color: black;
}

.marqq:hover ul {
    animation-play-state: paused;
    color: white;
}

.line{
    width: 100%;
    height: 1px;
    background-color: black;
}

.artex{
    width: 100%;
    min-height: 100vh;
    margin-top: 200px;
}

.artex h1{
    font-family: 'pet';
    font-size: 100px;
    padding-left: 15px;
}

.artex h2{
    font-family: 'pet';
    font-size: 30px;
    text-align: right;
}

.boo{
    margin-top: 22px;
    width: 480px;
    height: 500px;
}

.boo img {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    height: auto;
    border: 1px;
    border-style: solid;
}

.finfle{
    display: flex;
    align-items: center;
}

.finfle h4{
    margin-top: 21px;
    margin-left: 25px;
    font-family: 'hank';
}

.boxx{
    width: 50px;
    height: 50px;
    background-color: #101010;
    margin-top: 20px;
    margin-left: -1px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.adang h1{
    color: black;
    font-size: 25px;
    padding-top: 35px;
    font-family: 'odd';
    margin-left: -15px;
}

.boxx h2{
    color: white;
    font-size: 45px;
    font-family: 'odd';
    padding-right: 12px;
    padding-top: 7px;
    margin-left: 14px;
}

.gal{
    width: 100%;
    display: flex;
    justify-content: space-evenly;
}

.darker{
    width: 100%;
    min-height: 100vh;
    background-color: #101010;
    margin-top: 90px;
}

.bigaah{
    width: 100%;
    height: 600px;
    background-color: #101010;
    margin-top: 200px;
    display: flex;
    align-items: center;
    margin-top: 0;
}

.bigaah h1{
    font-family: 'gal';
    color: white;
    font-size: 113px;
    line-height: 90%;
    padding-left: 15px;
}

.imr {
    position: relative;
    width: 100%;
}

.imr img {
    width: 100%;
    display: block;
}

.imr h1 {
    position: absolute;
    bottom: 10px;
    font-family: 'gal';
    color: white;
    font-size: 15px;
    padding-left: 15px;
}

.par{
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-wrap: wrap;
    margin-top: 200px;
}

.lpr{
    width: 55%;
    height: auto;
}

.rpr{
    width: 45%;
    height: auto;
}

.lpr h1,
.rpr h1{
    font-family: 'hank';
    padding-left: 15px;
    color: white;
}

.lpr h2{
    font-family: 'hank';
    padding-left: 15px;
    color: white;
    font-size: 150px;
    margin-top: 337px;
    line-height: 90%;
}

.rpr p{
    font-family: 'hank';
    padding-right: 15px;
    padding-left: 15px;
    padding-top: 40px;
    color: white;   
    font-size: 15px;
}

.gfo{
    margin-top: 150px;
    font-family: 'hank';
    text-align: center;
    font-size: 50px;
    color: white;
    padding-bottom: 40px;
}

.gfo a{
    text-decoration: none;
    color: white;
    border: 1px solid white;
    padding: 20px;
    transition: background 0.3s ease, color 0.3s ease;
}

.gfo a:hover{
    background-color: white;
    color: black;
}

.contact{
    margin-top: 50px;
    width: 100%;
    height: auto;
}

.bye{
    width: 100%;
    height: 65vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-evenly;
}

.bye h1{
    font-family: 'odd';
    text-align: center;
    font-size: 70px;
}

.samugavalai img{
    width: 50px;
    height: 50px;
    border: 1px;
    border-style: solid;
    border-color: #101010;
}


.byme{
    width: 100%;
    height: 40px;
    display: flex;
}

.findi{
    width: 33.3%;
    border: 1px solid black;
    border-right: none;
    display: flex;
    justify-content: center;
    align-items: center;
}

.findi h1,a{
    text-decoration: none;
    color: #101010;
    font-size: 20px;
    font-family: 'pet';
}


@media screen and (max-width: 768px) {

    .landing {
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
    }
    
    .bar {
        display: flex;
        position: relative;
        justify-content: center;
        z-index: 1;
        height: 50px;
    }
    
    .bar h1 {
        border: 1px solid black;
        background-color: white;
        font-family: 'odd';
    }
    
    .lo{
        display: none;
        
    }
    
    .navbar {
        border: 1px solid black;
        display: flex;
        align-items: center;
        background-color: white;
        justify-content: center;
        height: 50px;
        z-index: 1;
    }
    
    .wordbar a,
    .schedule a,
    .tickets a,
    .lang a {
        text-decoration: none;
        margin: 10px;
        font-family: 'odd';
        color: black;
        font-size: 12px;
    }

    .titim img {
        position: absolute;
        z-index: 1;
        height: auto;
        width: 90%;
        margin-top: 320px;

    }
    
    .bg-video {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: -1;
        object-fit: cover;
    }

    .fest {
        width: 100%;
        display: flex;
        flex-direction: column;
        margin: 0;
        padding: 0;
        max-width: 100vw;
    }
    
    .imtit {
        width: 100%;
        border: 1px solid black;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    
    .tim-bar {
        height: 275px;
        width: 100%;
    }
    
    .tim-bar h1 {
        font-family: 'odd';
        font-size: 120px;
        line-height: 100px;
        padding-top: 50px;
        margin-left: 10px;
        margin-right: auto;
    }
    
    .immy {
        overflow: hidden;
        height: 356px;
        width: 503px;
    }
    
    .immy img {
        transform: translateY(-70px);
        max-width: 100%;
        height: auto;
        border: 1px;
        border-style: solid;
        border-bottom: none;
        border-right: none;
        border-left: none;
    }
    
    .credits {
        display: flex;
        border: 1px solid black;
        justify-content: space-between;
        height: 40px;
        align-items: center;
        border-bottom: none;
        border-right: none;
    }
    
    .credits p {
        padding-left: 5px;
        padding-right: 5px;
        align-items: center;
        font-size: auto;
        justify-content: center;
        font-family: 'gal';
    }

    .log-text {
        display: flex;
        flex-direction: column;
        padding-top: 75px;
        width: 100%;
        padding-left: 25px;
        padding-right: 25px;
        justify-content: center;
    }
    
    .log-text h1 {
        font-family: 'odd';
        font-size: 50px;
        text-align: center;
        color: black;
        font-weight: 100;
    }
    
    .log-text p {
        font-family: 'hank';
        font-size: 20px;
        color: black;
        text-align: justify;
        padding-top: 50px;
    }

    .announ {
        margin-top: 150px;
    }
    
    .announ h2 {
        font-family: 'odd';
        font-size: 34px;
        padding-left: 5px;
        padding-right: 5px;
    }

    .show{
        width: 100%;
        height: 50vh;
        position: relative;
    }
    
    .bgg-video {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 95%;
        z-index: -1;
        object-fit: cover;
        border: 1px;
        border-style: solid;
        border-top: none;
    }
    
    .crew{
        width: 100%;
        min-height: 100vh;
    }
    
    .tx{
        display: flex;
        justify-content: space-between;
        padding-left: 15px;
        padding-right: 15px;
        padding-top: 75px;
        font-family: 'pet';
        font-size: 30px;
    }
    
    .mainy {
        flex-direction: column;
        height: auto;
    }

    .lefty {
        width: 100%;
        height: auto;
    }

    .righty {
        display: none;
        width: 100%;
        height: 80vh;
        position: fixed;
        bottom: 0;
        left: 0;
        background: white;
        z-index: 1000;
        overflow-y: auto;
    }

    .righty.active {
        display: block;
    }

    .namer h1{
        font-family: 'gal';
        font-size: 30px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .artex{
        width: 100%;
        min-height: 100vh;
        margin-top: 200px;
    }
    
    .artex h1{
        font-family: 'pet';
        font-size: 50px;
        padding-left: 15px;
    }
    
    .artex h2{
        font-family: 'pet';
        font-size: 30px;
        text-align: right;
    }
    
    .gal{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 400px;
        gap: 5em;
    }

    .boo{
        margin-top: 22px;
        width: 100vi;
        height: 500px;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
    }
    
    .boo img {
        display: flex;
        flex-direction: column;
        max-width: 100%;
        height: auto;
        border: 1px;
        border-style: solid;
    }

    .adang{
        display: flex;
        flex-direction: column;
    }
    
    .finfle{
        display: flex;
        align-items: center;
    }
    
    .finfle h4{
        margin-top: 21px;
        font-family: 'hank';
        margin-left: 5px;
    }
    
    .boxx{
        width: 30px;
        height: 30px;
        background-color: #101010;
        margin-top: 20px;
        margin-left: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-decoration: none;
    }
    
    .adang h1{
        color: black;
        font-size: 25px;
        padding-top: 35px;
        font-family: 'odd';
        text-align: center;
    }
    
    .boxx h2{
        color: white;
        font-size: 25px;
        font-family: 'odd';
        padding-right: 17px;
        padding-top: 4px;
        margin-left: 14px;
    }
    
    .gal{
        width: 100%;
        display: flex;
        justify-content: space-evenly;
    }
    
    .darker{
        width: 100%;
        min-height: 100vh;
        background-color: #101010;
        margin-top: 90px;
    }
    
    .bigaah{
        width: 100%;
        height: 300px;
        background-color: #101010;
        margin-top: 200px;
        display: flex;
        align-items: center;
        margin-top: 0;
    }
    
    .bigaah h1{
        font-family: 'gal';
        color: white;
        font-size: 29px;
        line-height: 90%;
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .imr {
        position: relative;
        width: 100%;
    }
    
    .imr img {
        width: 100%;
        display: block;
    }
    
    .imr h1 {
        position: absolute;
        bottom: 10px;
        font-family: 'gal';
        color: white;
        font-size: 8px;
        padding-left: 15px;
    }
    
    .par{
        width: 100%;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
        margin-top: 100px;
    }
    
    .lpr{
        width: 100%;
        height: auto;
    }
    
    .rpr{
        margin-top: 45px;
        width: 100%;
        height: auto;
        margin-bottom: 50px;
    }
    
    .lpr h1,
    .rpr h1{
        font-family: 'hank';
        font-size: 15px;
        text-align: left;
        color: white;
    }
    
    .lpr h2{
        font-family: 'hank';
        color: white;
        font-size: 65px;
        margin-top: 40px;
        line-height: 90%;
    }
    
    .rpr p{
        font-family: 'hank';
        padding-right: 15px;
        padding-left: 15px;
        padding-top: 40px;
        color: white;   
        font-size: 15px;
        text-align: justify;
    }

    .gfo{
        margin-top: 50px;
        font-family: 'hank';
        text-align: center;
        font-size: 15px;
        color: white;
        padding-bottom: 40px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    
    .gfo a{
        margin-top: 50px;
        text-decoration: none;
        color: white;
        border: 1px solid white;
        width: 200px;
        transition: background 0.3s ease, color 0.3s ease;
    }
    
    .contact{
        margin-top: 30px;
        width: 100%;
        height: auto;
    }
    
    .bye{
        width: 100%;
        height: 45vh;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-evenly;
    }
    
    .bye h1{
        font-family: 'odd';
        text-align: center;
        font-size: 35px;
    }
    
    .samugavalai img{
        width: 50px;
        height: 50px;
        border: 1px;
        border-style: solid;
        border-color: #101010;
    }
    
    .byme{
        width: 100%;
        height: 40px;
        display: flex;
    }
    
    .findi{
        width: 33.3%;
        border: 1px solid black;
        border-right: none;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    
    .findi h1,a{
        text-decoration: none;
        color: #101010;
        font-size: 10px;
        font-family: 'pet';
    }
}
