* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Nova Flat", system-ui;
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
    background-color: #0B0B0B;
    background-size: cover;
    background-repeat: no-repeat;
}

body::-webkit-scrollbar {
    width: 9px;
}

body::-webkit-scrollbar-track {
    background: #161616;
}

body::-webkit-scrollbar-thumb {
    background: white;
}

a {
    text-decoration: none;
}

/* ================================================================== */
/* ============================= NAVBAR ============================= */
/* ================================================================== */

nav {
    width: 100%;
    height: 8vw;

    position: absolute;
    top: 0;
    left: 0;

    z-index: 100;

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 0 17vw;
}

.nav-left {
    width: 25.7vw;
    height: 4.01vw;

    background: rgba(255, 255, 255, 0.05);
    border-radius: 1vw;
    backdrop-filter: blur(10.4px);
    -webkit-backdrop-filter: blur(10.4px);

    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.nav-left img {
    width: 6.8vw;
    height: auto;

    transform: translateX(-2vw);
    transition: 0.3s;
}

.nav-left img:hover {
    cursor: pointer;
    scale: 1.02;
}

.nav-left-text {
    display: flex;
    flex-direction: column;
}

.nav-left-text h4 {
    font-family: "Rubik Mono One", monospace;
    font-size: 1.2vw;
    font-weight: 400;
    color: #FFFFFF;
}

.nav-left-text p {
    font-family: 'Nova Flat', system-ui;
    font-size: 0.78vw;
    font-weight: 500;
    color: #FFAC15;
}

.nav-right {
    width: 37.6vw;
    height: 4.01vw;

    background: rgba(255, 255, 255, 0.05);
    border-radius: 1vw;
    backdrop-filter: blur(10.4px);
    -webkit-backdrop-filter: blur(10.4px);

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 0 2.5vw;
}

.nav-right ul {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;

    list-style-type: none;
}

.dropdown-toggle .arrow {
    margin-left: 5px;
    font-size: 12px;
}

.dropdown {
    position: relative;
}

.dropdown-menu {
    display: none;
    position: absolute;
    background-color: #333;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
    border-radius: 12px;
    top: 140%;
    left: 0;
    padding: 5px 0;
    transform: translateY(5px);
    opacity: 0;
    transition: transform 0.3s ease-out, opacity 0.3s ease-out;
}

.dropdown-menu.show {
    display: block;
    transform: translateY(0);
    opacity: 1;
}

.dropdown-menu a {
    color: #fff;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
}

.dropdown-menu a:hover {
    background-color: #555;
    border-radius: 0;
}

.nav-right ul li a {
    font-size: 0.78vw;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.5);
}

.nav-right ul li:nth-of-type(1) a {
    color: rgba(255, 255, 255, 1);
}

.nav-right ul li a:hover {
    text-decoration: underline;
}

.nav-right ul li button {
    width: 10.9vw;
    height: 2.6vw;

    border-radius: 0.55vw;
    background: linear-gradient(to bottom right, #FF5900, #FFD325);
    outline: none;
    border: none;

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2vw;

    font-size: 0.78vw;
    font-weight: 500;
    color: #FFFFFF;

    transition: 0.3s;
}

.nav-right ul li button img {
    width: 1vw;
    height: auto;
}

.nav-right ul li button:hover {
    cursor: pointer;
    scale: 0.98;
}

.ham {
    display: none;
}

/* ================================================================== */
/* ================================ ASIDE =========================== */
/* ================================================================== */

aside {
    width: 100vw;
    height: 100vh;

    background: #FFFFFF;

    transform: translate(100%);
    z-index: 1000;

    position: fixed;
    right: 0;
    top: 0;

    display: none;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;

    padding: 8vw 10vw;

    transition: 0.5s;
}

.aside-top {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.aside-top img {
    width: 18vw;
    height: auto;
}

.aside-top svg {
    width: 5vw;
    height: auto;
}

.aside-menu ul {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-direction: column;
    list-style-type: none;
    gap: 8vw;
}

.aside-menu ul li a {
    font-size: 6vw;
    font-weight: 150;
    color: #000000;
}

.aside-menu ul li button {
    width: 70vw;
    height: 20vw;

    background: linear-gradient(to bottom right, #FF5900, #FFD325);
    border-radius: 2vw;
    border: none;
    outline: none;

    display: flex;
    justify-content: center;
    align-items: center;

    font-size: 5vw;
    font-weight: 400;
    color: #FFFFFF;

    gap: 5vw;

    position: relative;
}

.aside-bottom {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 6vw;
}

.aside-socials {
    width: 50%;

    display: flex;
    justify-content: space-between;
    align-items: center;
}

.aside-socials img {
    width: 8vw;
    height: auto;
}

.aside-button button {
    width: 90vw;
    height: 15vw;

    background: #1867CF;
    border-radius: 2vw;
    border: none;
    outline: none;

    display: flex;
    justify-content: center;
    align-items: center;

    gap: 5vw;

    padding: 0 2vw;
}

.aside-button img {
    width: 5.5vw;
    height: auto;
}

.aside-button p {
    font-size: 5vw;
    font-weight: 150;
    color: #FFFFFF;
}

/* ================================================================== */
/* ============================= HEADER ============================= */
/* ================================================================== */

.header {
    width: 100%;
    height: auto;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    position: relative;

    padding: 10vw 17vw 5vw 17vw;
}

.header-container {
    width: 100%;
    height: 26vw;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    
    position: relative;
}

.header-image img {
    width: 77.7vw;
    height: auto;
}

.header-resp {
    display: none;
}

.header-buttons {
    position: absolute;

    width: 24.2vw;
    height: 4.01vw;

    background: rgba(13, 13, 13, 0.8);
    border-radius: 1vw;
    backdrop-filter: blur(10.4px);
    -webkit-backdrop-filter: blur(10.4px);

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1vw;
    
    bottom: -3%;
    left: 50%;

    transform: translate(-50%, -50%);
}

.header-buttons button {
    width: 10.9vw;
    height: 2.6vw;

    border-radius: 0.625vw;

    outline: none;
    border: none;

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1vw;

    font-size: 0.8vw;
    font-weight: 500;
    color: #FFFFFF;

    transition: 0.3s;
}

.header-buttons button img {
    width: 0.95vw;
    height: auto;
}

.header-buttons button:nth-of-type(1) {
    background: #1867CF;
}

.header-buttons button:nth-of-type(2) {
    background: linear-gradient(to bottom right, #FF5900, #FFD325);
}

.header-buttons button:hover {
    cursor: pointer;
    scale: 0.98;
}

/* ================================================================== */
/* ============================== DATES ============================= */
/* ================================================================== */

.dates {
    width: 100%;
    height: auto;

    scroll-margin-top: 200px;

    padding: 0 17vw;
}

.dates-headline {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.dates-headline h2 {
    font-family: "Rubik Mono One", monospace;
    font-size: 2vw;
    font-weight: 400;
    color: #FFFFFF;
}

.dates-headline p {
    font-size: 0.8vw;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.5);
}

.dates-tiles {
    margin-top: 2vw;
    width: 100%;
    height: auto;

    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    gap: 1.25vw;
}

.dates-tile {
    width: 15.5vw;
    height: 19.9vw;

    border-radius: 1vw;

    position: relative;
    
    border: 2px solid rgba(255, 255, 255, 0.07);

    display: flex;
    justify-content: space-between;
    flex-direction: column;

    padding: 1vw 0 1vw 0;
}

.dates-tile:nth-of-type(1) {
    border: 2px solid #FF9A0D;
}

.dates-tile-background {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.dates-tile-background img {
    width: 100%;
    height: 100%;
    border-radius: 1vw;
}

.dates-tile:nth-of-type(1) .dates-tile-background img {
    border: 5px solid rgba(255, 154, 13, 0.15);
}

.dates-tile-text {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
}

.dates-tile-text h3 {
    font-family: "Rubik Mono One", monospace;
    font-size: 1.35vw;
    font-weight: 500;
    color: #FFFFFF;
}

.dates-tile-text h5 {
    font-size: 1.1vw;
    font-weight: 400;
    color: #FFFFFF;
}

.dates-tile-button {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

.dates-tile-button button {
    width: 13.4vw;
    height: 2.6vw;

    border-radius: 0.625vw;
    border: none;
    outline: none;

    background: linear-gradient(to bottom right, #FF5900, #FFD325);

    font-size: 0.85vw;
    font-weight: 400;
    color: #FFFFFF;

    transition: 0.3s;
}

.dates-tile-button button:hover {
    cursor: pointer;
    scale: 0.98;
}

/* ================================================================== */
/* ============================== FILMS ============================= */
/* ================================================================== */

.films {
    width: 100%;
    height: auto;

    padding: 7vw 17vw;
}

.films-headline {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.films-headline h2 {
    font-family: "Rubik Mono One", monospace;
    font-size: 2vw;
    font-weight: 400;
    color: #FFFFFF;
}

.films-headline p {
    font-size: 0.8vw;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.5);
}

.swiper-container-wrapper {
    position: relative;
    margin-top: 2vw;
    width: 100%;
}

.swiper {
    width: 100%; 
    height: 100%;
}

.swiper-slide {
    width: 20.6vw;
    height: 12.5vw !important;

    border-radius: 0.625vw !important;
    position: relative;
    overflow: hidden;
}

.swiper-slide .slide-link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #444;
    border-radius: 0.625vw !important;
    overflow: hidden;
}

.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0.625vw !important;
    transition: transform 0.3s ease;
}

.swiper-slide .slide-link:hover img {
    transform: scale(1.05);
}

.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 4vw;
    height: 4vw;
    background-color: rgba(0, 0, 0, 0.6); 
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.play-button:hover {
    background-color: rgba(0, 0, 0, 0.8);
}

.play-button::after {
    content: '';
    width: 0;
    height: 0;
    border-top: 1.1vw solid transparent;
    border-bottom: 1.1vw solid transparent;
    border-left: 1.8vw solid #FFFFFF;
    margin-left: 0.5vw;
}

.swiper-slide .slide-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0);
    transition: background-color 0.3s ease;
    border-radius: 0.625vw !important;
    z-index: 1;
}

.swiper-slide .slide-link:hover::before {
    background-color: rgba(0, 0, 0, 0.3);
}

.play-button {
    z-index: 2;
}

.swiper-button-prev,
.swiper-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF !important;
}

.swiper-button-prev::after,
.swiper-button-next::after {
    font-size: 2vw !important;
}

.swiper-button-prev {
    transform: translateX(-2vw) !important;
    left: -2vw !important;
}

.swiper-button-next {
    transform: translateX(2vw) !important;
    right: -2vw !important;
}

/* ================================================================== */
/* ============================== FOOTER ============================ */
/* ================================================================== */

footer {
    width: 100%;
    height: auto;

    padding: 2vw 17vw;
}

.footer-container {
    width: 100%;
    height: auto;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 1vw;
    backdrop-filter: blur(10.4px);
    -webkit-backdrop-filter: blur(10.4px);

    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 2vw 3vw;
}

.footer-left {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1.5vw;
}

.footer-left img {
    width: 6.8vw;
    height: auto;
}

.footer-left-text {
    display: flex;
    flex-direction: column;
}

.footer-left-text h2 {
    font-family: "Rubik Mono One", monospace;
    font-size: 2vw;
    font-weight: 500;
    color: #FFFFFF;
}

.footer-left-text p {
    font-size: 0.8vw;
    font-weight: 400;
    color: #6F6F6F;
}

.footer-right {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1vw;
}

.footer-right img {
    opacity: 0.7;

    transition: 0.3s;
}

.footer-right img:nth-of-type(1) {
    width: 1.6vw;
    height: auto;
}

.footer-right img:nth-of-type(2) {
    width: 1.3vw;
    height: auto;
}

.footer-right img:nth-of-type(3) {
    width: 1.7vw;
    height: auto;
}

.footer-right img:hover {
    opacity: 1;
    cursor: pointer;
}

.footer-copyright {
    width: 100%;
    height: auto;
    margin-top: 2vw;
    text-align: center;

    font-size: 0.8vw;
    font-weight: 400;
    color: #AFAEAF;
}

.madeby {
    width: 100%;
    height: 3.5vw;

    background: #000000;

    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.madeby p {
    font-size: 0.8vw;
    font-weight: 400;
    color: #C7C7C7;
}

.madeby p span {
    text-decoration: underline;
}

/* ================================================================== */
/* ============================== SHOP ============================== */
/* ================================================================== */

.shop {
    width: 100%;
    height: auto;

    padding: 11vw 17vw 5vw 17vw;
}

.shop-headline {
    width: 100%;
    height: auto;
}

.shop-headline h2 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 2vw;
    font-weight: 400;
    color: #FFFFFF;
}

.shop-sections {
    width: 100%;
    height: auto;

    display: flex;
    flex-direction: column;
    gap: 6vw;
}

.shop-section:nth-of-type(1) {
    margin-top: 3vw;
}

.shop-section-name {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 2vw;
}

.shop-section-name h4 {
    width: 13vw;
    font-size: 1.1vw;
    font-weight: 400;
    color: #FFFFFF;
}

.shop-section-line {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 0.2vw;
}

.shop-section-tiles {
    margin-top: 2vw;
    width: 100%;
    height: auto;
    display: grid;
    justify-items: flex-start;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    gap: 0.5vw;
}

.shop-section-tile {
    width: 16vw;
    height: 22vw;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-direction: column;
    position: relative;
    border-radius: 0.5vw;
    padding: 1vw 0;
}

.shop-section-tile img {
    width: 25vw;
    max-width: 25vw;
    height: auto;
    flex-shrink: 0;
    margin-bottom: 1vw;
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
}

.shop-section-tile-text {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-direction: column;
    width: 100%;
}

.shop-section-tile h3 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1vw;
    font-weight: 400;
    color: #FFFFFF;
    text-align: center;
}

.shop-section-tile button {
    margin-top: 0.5vw;
    width: 100%;
    height: 2.65vw;
    border: none;
    outline: none;
    background: #FF9D00;
    border-radius: 0.625vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.80vw;
    font-weight: 400;
    color: #FFFFFF;
    text-transform: uppercase;
    padding: 0 1.2vw;
    transition: 0.3s;
}

.shop-section-button-line {
    font-size: 0.80vw;
    color: rgba(255, 255, 255, 0.5);
    margin: 0 0.5vw;
}

.shop-section-tile button span {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 0.80vw;
    font-weight: 400;
    color: #FFFFFF;
    letter-spacing: -0.5px;
}

.shop-section-tile button:hover {
    cursor: pointer;
    scale: 0.98;
}

.shop-section-tile-discount {
    width: 12vw;
    height: 2vw;

    transform: translate(-50%, -50%);

    border: 1px solid #FF3F3F;
    border-radius: 1.5vw;

    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2vw;

    position: absolute;
    bottom: -13%;
    left: 50%;

    padding: 0 1.1vw;
}

.shop-section-tile-discount p {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 0.75vw;
    font-weight: 400;
    color: #FF3F3F;
}

.shop-section-tile-discount svg {
    width: 1vw;
    height: auto;
}

/* ================================================================== */
/* ============================== SLOT ============================== */
/* ================================================================== */

.slot {
    width: 100%;
    height: auto;

    display: flex;
    justify-content: space-between;
    align-items: flex-start;

    padding: 11vw 17vw 5vw 17vw;
}

.slot-left {
    display: flex;
    flex-direction: column;
}

.slot-left-headline {
    display: flex;
    flex-direction: column;
}

.slot-left-headline h2 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 2vw;
    font-weight: 400;
    color: #FFFFFF;
}

.slot-left-headline h5 {
    font-size: 0.8vw;
    font-weight: 400;
    color: #FFFFFF;
}

.slot-left-form {
    width: 30vw;
    margin-top: 1vw;
    display: flex;
    flex-direction: column;
}

.slot-left-form h5 {
    font-size: 0.8vw;
    font-weight: 400;
    color: #FFFFFF;
}

.slot-left-form input {
    margin-top: 0.6vw;
    width: 100%;
    padding: 1vw 1.2vw;
    background-color: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 0.625vw;
    font-family: 'Nova Flat', sans-serif;
    font-size: 1vw;
    color: #FFFFFF;
    outline: none;
}

.slot-left-form input::placeholder {
    color: rgba(255, 255, 255, 0.25);
}

.slot-left-form button {
    margin-top: 1vw;

    width: 11.9vw;
    height: 2.65vw;

    outline: none;
    border: none;
    background: #FF9D00;
    border-radius: 0.625vw;

    font-size: 0.85vw;
    font-weight: 400;
    color: #FFFFFF;

    transition: 0.3s;
}

.slot-left-form button:hover {
    cursor: pointer;
    scale: 0.98;
}

.reservation-info {
    margin-top: 2vw;
    display: flex;
    flex-direction: column;
    gap: 1vw;
}

.reservation-info p {
    font-size: 0.8vw;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1.5;
}

.slot-right {
    width: 17.9vw;
    height: 23.6vw;
    border-radius: 0.625vw;
    position: relative;
}

.slot-right-text {
    position: absolute;
    text-align: center;
    top: 13%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.slot-right-text h3 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1.6vw;
    font-weight: 400;
    color: #FFFFFF;
}

.slot-right-text h5 {
    font-size: 1.1vw;
    font-weight: 400;
    color: #FFFFFF;
}

.slot-right img {
    width: 100%;
    height: 100%;
    border-radius: 0.625vw;
}

/* ================================================================== */
/* ============================ PAYMENTS ============================ */
/* ================================================================== */

.payments {
    width: 100%;
    height: auto;

    display: flex;
    justify-content: space-between;
    align-items: flex-start;

    padding: 11vw 17vw 3vw 17vw;
}

.payments-left {
    width: 30vw;
    height: auto;

    display: flex;
    flex-direction: column;
}

.payments-left-offer {
    width: 100%;
    height: 8.4vw;

    background: rgba(255, 255, 255, 0.05);
    border-radius: 1vw;

    display: flex;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;

    padding: 0 3vw 0 1.5vw;
}

.payments-left-offer img {
    width: 12vw;
    max-width: 12vw;
    height: auto;
    transform: translateX(-2vw);
    flex-shrink: 0;
}

.payments-left-offer h1 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1.5vw;
    font-weight: 400;
    color: #FFFFFF;
    flex-shrink: 0;
}

.payments-left-include {
    margin-top: 1.5vw;
    width: 100%;
    height: auto;

    background: rgba(255, 255, 255, 0.05);
    border-radius: 1vw;

    padding: 1.5vw 2.5vw;
}

.payments-left-include p {
    margin-top: 10px;
    color: rgb(224, 224, 224);
}

.payments-left-include h3 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1vw;
    font-weight: 400;
    color: #FFFFFF;
}

.payments-left-include ul {
    height: 9vw;
    max-height: 9vw;
    overflow-y: auto;
    margin-top: 0.7vw;
    margin-left: 0.6vw;
}

.payments-left-include ul::-webkit-scrollbar {
    width: 4px;
}
  
.payments-left-include ul::-webkit-scrollbar-track {
    background: #161616;
}

.payments-left-include ul::-webkit-scrollbar-thumb {
    background: white;
}

.payments-left-include ul li {
    font-size: 0.8vw;
    font-weight: 400;
    color: #909090;
}

.payments-left-code {
    margin-top: 1.5vw;
    width: 100%;
    display: flex;
    flex-direction: column;
}

.payments-left-code h3 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1vw;
    font-weight: 400;
    color: #FFFFFF;
}

.payments-left-code-tiles {
    margin-top: 0.8vw;
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 2vw;
}

.payments-left-code-tiles input {
    width: 14.2vw;
    height: 2.65vw;
    padding: 0 1.2vw;
    background-color: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 0.625vw;
    font-family: 'Nova Flat', sans-serif;
    font-size: 0.8vw;
    color: #FFFFFF;
    outline: none;
}

.payments-left-code-tiles input::placeholder {
    color: rgba(255, 255, 255, 0.25);
}

.payments-left-code-tiles button {
    width: 14.2vw;
    height: 2.65vw;

    outline: none;
    border: none;
    background: #FF9D00;
    border-radius: 0.625vw;

    font-size: 0.85vw;
    font-weight: 400;
    color: #FFFFFF;

    transition: 0.3s;
}

.payments-left-code-tiles button:hover {
    cursor: pointer;
    scale: 0.98;
}

.payments-left-code-info {
    background-color: rgba(255, 96, 96, 0.075);
    border: rgb(255, 89, 89) 1px solid;

    padding: 15px 20px;
    color: white;
    border-radius: 10px;
    margin-top: 20px;
}

.payments-right {
    width: 32vw;
    height: auto;

    display: flex;
    flex-direction: column;
}

.payments-right-forms {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5vw;
}

.payments-right-form {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.checkbox-label a {
    color: white !important;
    text-decoration: underline;
}

.payments-right-form h2 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1vw;
    font-weight: 400;
    color: #FFFFFF;
}

.payments-right-form input {
    margin-top: 0.6vw;
    width: 100%;
    height: 2.65vw;
    padding: 0 1.2vw;
    background-color: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 0.625vw;
    font-family: 'Nova Flat', sans-serif;
    font-size: 0.8vw;
    color: #FFFFFF;
    outline: none;
}

.payments-right-form input::placeholder {
    color: rgba(255, 255, 255, 0.25);
}

.payments-right-methods {
    margin-top: 1.5vw;

    width: 100%;
    display: flex;
    flex-direction: column;
}

.payments-right-methods h2 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1vw;
    font-weight: 400;
    color: #FFFFFF;
}

.payments-right-methods-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1vw;
}

.payments-right-method {
    margin-top: 0.6vw;
    width: 16vw;
    height: 3.4vw;

    background: rgba(255, 255, 255, 0.05);
    border-radius: 0.625vw;

    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 1vw;

    padding: 0 2vw;

    transition: 0.3s;
}

.payments-right-method svg {
    width: 1.5vw;
    height: auto;
    filter: brightness(0) saturate(100%) invert(60%) sepia(13%) saturate(15%) hue-rotate(1deg) brightness(93%) contrast(87%);
    opacity: 0.5;
}

.payments-right-method-line {
    width: 1.8vw;
    border: 1px solid #909090;
    rotate: 90deg;
    opacity: 0.5;
}

.payments-right-method p {
    font-size: 0.85vw;
    font-weight: 400;
    color: #909090;
    opacity: 0.5;
}

.payments-right-method:hover {
    cursor: pointer;
    scale: 0.98;
}

.terms-checkbox-container {
    display: flex;
    align-items: flex-start;
    gap: 1vw;
    margin-top: 1.5vw;
}

.custom-checkbox {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.checkbox-label {
    position: relative;
    padding-left: 2.5vw;
    font-size: 0.8vw;
    font-weight: 400;
    color: #909090;
    cursor: pointer;
    user-select: none;
    text-align: left;
    line-height: 1.3;
}

.checkbox-label:nth-of-type(1) {
    transform: translateY(10px);
}

.checkbox-label::before {
    content: '';
    position: absolute;
    left: 0;
    top: -4.5px;
    width: 1.5vw;
    height: 1.5vw;
    background-color: #2D2D2D;
    border-radius: 0.25vw;
}

.checkbox-label::after {
    content: '\2713';
    position: absolute;
    left: 0.30vw;
    top: -0.06vw;
    font-size: 1.2vw;
    color: #FFFFFF;
    opacity: 0;
}

.custom-checkbox:checked + .checkbox-label::before {
    background: #FF7308;
}

.custom-checkbox:checked + .checkbox-label::after {
    opacity: 1;
}

.payments-right-summary {
    width: 100%;
    margin-top: 3.4vw;
    display: flex;
    flex-direction: column;
}

.payments-right-summary-top {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.payments-right-summary-top p {
    font-size: 0.8vw;
    font-weight: 400;
    color: #FFFFFF;
}

.payments-right-summary-top h4 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 0.8vw;
    font-weight: 400;
    color: #FFFFFF;
}

.payments-right-summary button {
    margin-top: 0.8vw;
    width: 100%;
    height: 2.65vw;

    border-radius: 0.625vw;
    background: #FF9D00;
    outline: none;
    border: none;

    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2vw;

    font-size: 0.85vw;
    font-weight: 400;
    color: #FFFFFF;

    transition: 0.3s;
}

.payments-right-summary button span {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 0.85vw;
    font-weight: 400;
    color: #FFFFFF;
}

.payments-right-summary button:hover {
    cursor: pointer;
    scale: 0.98;
}

.payments-right-summary h5 {
    margin-top: 0.5vw;
    font-size: 0.75vw;
    font-weight: 400;
    color: #909090;
}

/* ================================================================== */
/* ============================== RULES ============================= */
/* ================================================================== */

.rules {
    width: 100%;
    height: auto;

    padding: 11vw 17vw 3vw 17vw;
}

.rules-headline {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.rules-headline h2 {
    font-family: 'Rubik Mono One', system-ui;
    font-size: 2vw;
    font-weight: 400;
    color: #FFFFFF;
}

.rules-buttons {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 2.4vw;
}

.rules-buttons p {
    font-size: 0.8vw;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.5);
}

.rules-buttons p:nth-of-type(1) {
    color: rgba(255, 255, 255, 1);
}

.rules-buttons p:hover {
    cursor: pointer;
    text-decoration: underline;
}

.rules-container {
    margin-top: 2vw;
    width: 100%;
    height: auto;
}

.rules-tile:not(.rules-tile:nth-of-type(1)) {
    display: none;
}

.rules-tile h3 {
    margin-top: 2vw;
    font-family: 'Rubik Mono One', system-ui;
    font-size: 1.05vw;
    font-weight: 400;
    color: #FFFFFF;
}

.rules-tile p {
    margin-top: 1vw;
    line-height: 140%;
    letter-spacing: 0.05vw;
    font-size: 0.75vw;
    font-weight: 400;
    color: #858585;
}

.rules-tile h5 {
    letter-spacing: 0.05vw;
    font-size: 0.75vw;
    font-weight: 400;
    color: #858585;
}

.rules-tile h5:nth-of-type(1) {
    margin-top: 2vw;
}

.rules-tile h5:nth-of-type(2) {
    margin-bottom: 2vw;
}

.rules-container span {
    display: flex;
    flex-direction: column;
    font-size: 0.75vw;
    font-weight: 400;
    color: #858585;
}