html,
body {
    min-height: 100vh;
    min-width: 100vw;
    background-color: #000;
}

/* For best practice, move CSS below to an external CSS file. */
@keyframes fadeinall {
    0% {
        opacity: 1;
    }
    97% {
        opacity: 0;
    }
    98% {
        opacity: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        -webkit-transform: translateY(-100%);
        transform: translateY(-100%);
        z-index: -1;
    }
}
#fadein {
    opacity: 1;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    background-color: #ffffff;
    z-index: 999;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation: fadeinall 1s normal both;
    animation: fadeinall 1s normal both;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

main {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5rem;
    padding: 1rem;
}

.section-wrapper {
    width: 100%;
    padding: 1.5rem;
    background-color: rgb(255 255 255 / 0.9);
    border-radius: 0.375rem;
    max-width: 640px;
    box-shadow:
        0 10px 15px -3px #78716c,
        0 4px 6px -4px #78716c;
}

.inner-section {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.model-img {
    object-fit: cover;
}

.active {
    background-color: rgb(176, 25, 179);
    color: rgb(255 255 255) !important;
}

.section-nav {
    display: flex;
    justify-content: flex-end;
    gap: 1.25rem;
    margin-top: 1.25rem;
}

.under-text-wrapper {
    max-width: 24rem;
    margin-top: 1.25rem;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 640px) {
    .inner-section {
        width: 80%;
    }
}
