*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.hidden {
    display: none !important;
}

.container {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.background {
    position: relative;
    width: 100%;
    max-width: 550px;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 550px;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}
.logo {
    position: absolute;
    top: 5%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 250px;
    object-fit: cover;
}
.logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.text {
    position: absolute;
    top: 15%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 200px;
}
.text img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.years12 {
    position: absolute;
    top: 25%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 150px;
    object-fit: cover;
}
.years12 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* When modal is open, hide content behind it (keep logo visible) */
body.modal-open .text,
body.modal-open .years12,
body.modal-open .years-grid {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* Grid for year items: 3 items per row */
.years-grid {
    position: absolute;
    top: 62%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 520px;
    padding: 0 12px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.years-grid .year {
    width: 100%;
    position: relative;
}

.years-grid .year img {
    width: 100%;
    height: auto;
    display: block;
}

.year-btn {
    position: absolute;
    left: 50%;
    bottom: -5px;
    transform: translateX(-50%);
    width: 60%;
    height: auto;
    pointer-events: auto;
    cursor: pointer;
}

/* Modal popup */
.modal {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-content,
.modal .supprice,
.modal .text-win,
.modal .imageyear,
.modal .button-win {
    position: absolute;
}

.modal .supprice {
    top: 0%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 550px;
}

.modal .supprice img,
.modal .text-win img,
.modal .imageyear img,
.modal .button-win img {
    width: 100%;
    height: auto;
    display: block;
}

.modal .text-win {
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 500px;
}

.modal .imageyear {
    top: 35%;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
    max-width: 220px;
}

.modal .button-win {
    top: 59%;
    left: 50%;
    transform: translateX(-50%);
    width: 55%;
    max-width: 200px;
    cursor: pointer;
}

/* Mobile fine-tuning for popout layout */
@media (max-width: 480px) {
    .modal .supprice {
        top: 0;
        width: 100%;
        max-width: 420px;
    }

    .modal .text-win {
        top: 12%;
        width: 90%;
        max-width: 360px;
    }

    .modal .imageyear {
        top: 30%;
        width: 65%;
        max-width: 240px;
    }

    .modal .button-win {
        top: 63%;
        width: 60%;
        max-width: 220px;
    }
}

*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

.container {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative;
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.background {
    position: relative;
    width: 100%;
    max-width: 550px;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 550px;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}
.logo {
    position: absolute;
    top: 5%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 250px;
    object-fit: cover;
}
.logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.text {
    position: absolute;
    top: 15%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 400px;
    object-fit: cover;
}
.text img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.years12 {
    position: absolute;
    top: 25%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 150px;
    object-fit: cover;
}
.years12 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
