html {
    scroll-behavior: smooth;
}

body {
    min-width: 320px;
}

.prize-hero {
    min-height: 690px;
}

.prize-title {
    color: #ffd768;
    text-shadow:
        0 2px 0 #7b4b00,
        0 8px 0 rgba(26, 13, 0, .5),
        0 0 34px rgba(255, 202, 68, .75),
        0 0 70px rgba(255, 174, 0, .42);
}

.prize-rotator {
    min-height: 315px;
}

.prize-rotator::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 9%;
    width: min(72vw, 660px);
    height: 120px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: radial-gradient(ellipse at center, rgba(255, 207, 71, .58), rgba(255, 207, 71, .18) 42%, rgba(255, 207, 71, 0) 72%);
    filter: blur(10px);
    opacity: .9;
}

.prize-slide {
    position: absolute;
    left: 50%;
    bottom: 6%;
    width: min(78vw, 540px);
    max-height: 335px;
    object-fit: contain;
    transform: translateX(-50%) translateY(24px) scale(.92);
    opacity: 0;
    filter: drop-shadow(0 28px 34px rgba(0, 0, 0, .58));
    animation: prizeRotate 12s ease-in-out infinite;
}

.prize-slide-two {
    animation-delay: 4s;
}

.prize-slide-three {
    animation-delay: 8s;
}

@keyframes prizeRotate {
    0%,
    12%,
    29% {
        opacity: 1;
        transform: translateX(-50%) translateY(0) scale(1);
    }

    34% {
        opacity: 0;
        transform: translateX(-50%) translateY(-18px) scale(.96);
    }

    100% {
        opacity: 0;
        transform: translateX(-50%) translateY(34px) scale(.9);
    }
}

@media (max-width: 640px) {
    .prize-hero {
        min-height: 650px;
    }

    .prize-rotator {
        min-height: 300px;
    }

    .prize-slide {
        bottom: 8%;
        width: min(108vw, 420px);
        max-height: 305px;
    }
}

.glass {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px);
}

.field {
    width: 100%;
    border-radius: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(0, 31, 105, 0.74);
    padding: .85rem 1rem;
    color: white;
    outline: none;
}

.field:focus {
    border-color: rgba(215, 180, 106, .86);
    box-shadow: 0 0 0 4px rgba(215, 180, 106, .13);
}

.btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #d7b46a, #fff1b8);
    color: #001f69;
    font-weight: 800;
    padding: .85rem 1.25rem;
    transition: transform .18s ease, box-shadow .18s ease;
}

.btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 50px rgba(215, 180, 106, .24);
}

.btn-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, .18);
    color: white;
    font-weight: 700;
    padding: .85rem 1.25rem;
    transition: background .18s ease;
}

.btn-secondary:hover {
    background: rgba(255, 255, 255, .1);
}

.table-premium {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 .7rem;
}

.table-premium tr {
    background: rgba(255, 255, 255, .07);
}

.table-premium td,
.table-premium th {
    padding: .95rem 1rem;
}

.table-premium th {
    color: rgba(255, 255, 255, .55);
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .14em;
}

.table-premium td:first-child,
.table-premium th:first-child {
    border-radius: 1rem 0 0 1rem;
}

.table-premium td:last-child,
.table-premium th:last-child {
    border-radius: 0 1rem 1rem 0;
}
