@import "./font.css";
@import './spacing.css';
@import "./_bootstrap.css";

:root {
    /* Color */
    /* TODO: Add color */
    /* Font Family */
    --font-primary: "Inter";
    --font-form: "Gill Sans";
}

.wrapper {
    height: 100vh;
    background: url('../img/bg.webp');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center bottom;
    position: relative;
    overflow: hidden;
}

section {
    overflow-x: hidden;
}

.wrapper main {
    will-change: transform;
}

#hero,
#section-2,
#form {
    height: 100%;
    overflow: hidden;
}

.hero-container {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

.hero-bg {
    width: 100%;
    height: 100%;
    position: absolute;
    overflow: hidden;
    top: 0;
    left: 0;
}

.hero-bg img {
    width: 100%;
}

.hero-content {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    position: absolute;
    bottom: 0;
    gap: 1.75rem;
    width: 100%;
    height: 30%;
}

.hero-content .logos {
    display: flex;
    overflow-y: hidden;
    gap: 1.75rem;
}

@media screen and (max-width: 992px) {
    .hero-bg--mobile {
        position: relative;
        height: auto;
        justify-content: center;
        width: 100%;
        overflow: hidden;
    }

    .hero-bg--mobile img {
        width: 90%;
    }

    .hero-content {
        position: relative;
        height: auto;
        bottom: unset;
    }
}

.promo-text {
    overflow: hidden;
}

.section-2-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    height: 100%;
    width: 100%;
}

.section-2-content {
    width: 100%;
    height: 100%;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.section-2-content .left,
.right {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.75rem;
    height: 100%;
    padding-left: 1.75rem;
    padding-right: 1.75rem;
}

.section-2-content .left {
    width: 60%;
}

.section-2-content .right {
    width: 40%;
}

.section-2-content .reward {
    width: 100%;
}

.section-2-content .reward h2 {
    display: flex;
    justify-content: center;
    filter: drop-shadow(5px 5px 44px #00C0F3);
    border: 4px solid rgb(0, 192, 243);
    border-radius: 999px;
    box-shadow: rgba(0, 192, 243, 0.16) 0px 10px 36px 0px, rgba(0, 192, 243, 0.06) 0px 0px 0px 1px;
}

.section-2-content .reward .reward-text {
    gap: 1.75rem;
}

.pulse {
    animation: pulse-animation 2s infinite;
}

@media screen and (max-width: 992px) {

    .section-2-content .left,
    .section-2-content .right {
        width: 100%;
    }

    .section-2-content {
        flex-direction: column;
    }

    .section-2-content .right .title {
        text-align: center;
    }

}

@keyframes pulse-animation {
    0% {
        box-shadow: 0 0 0 0px rgba(204, 51, 88, 0.3);
    }

    100% {
        box-shadow: 0 0 0 20px rgba(204, 51, 88, 0);
    }
}

/* RESET ================================================================== */

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    font-style: italic;
    background-repeat: no-repeat;
    background-size: cover;
    shape-margin: 1rem;
}

/* ALPINE ================================================================= */
[x-cloak] {
    display: none !important;
}

/* STYLE UTILS ============================================================ */
.inset-0 {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

/* COMPONENTS ============================================================= */
.btn--reset {
    background: transparent;
    border: none;
    padding: 0;
}

.btn--primary {
    background-color: #CC3358;
    color: white;
    text-decoration: none;
}

.btn--primary:hover {
    background-color: #7a1c34;
    color: white;
}

.btn--pill {
    border: none;
    border-radius: 999px;
    display: flex;
    align-items: center;
}

.htp {
    border: 4px solid rgb(0, 192, 243);
    border-radius: 24px;
    box-shadow: rgba(0, 192, 243, 0.16) 0px 10px 36px 0px, rgba(0, 192, 243, 0.06) 0px 0px 0px 1px;
}

.htp .cta-modal {
    color: white;
    text-decoration: underline;
}

/* FORM =================================================================== */
#form {
    --font-inside-form: var(--font-form, var(--font-primary)), system-ui, sans-serif;
}

.form__row {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.form__row--tnc {
    flex-direction: row;
}

.form__row--upload {
    gap: 0;
}

.form__input {
    border: none;
    border-radius: 4px;
    padding: 8px 12px;
    background: #f8fafc;
    font-family: var(--font-inside-form);
}

.form__label,
.form__label *,
.form__input::placeholder,
.form__label--upload-placeholder>span {
    font-family: var(--font-inside-form);
    color: #94a3b8;
}

.form__label .text-danger {
    color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity));
}

.form__label--upload-placeholder {
    margin-top: 12px;
    border: 2px dashed #d7d7d7;
    border-radius: 0.5rem;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.form__label--upload-placeholder .img-preview figure {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: center;
    margin-block: 1rem;
}

.form__label--upload-placeholder .img-preview figure img {
    max-width: 60%;
}

.form__content .card-form {
    max-width: 860px;
}

.card-form__content .logos {
    justify-content: center;
}

/* MODAL ================================================================== */
.modal__content {
    max-width: 600px;
    max-height: 80svh;
    overflow: auto;
}

.modal__close {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.bg-footer {
    background-color: #C14DEE;
}