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

:root {
    --primary-color: #498094;
    --secondary-color: #50E3C2;
}

.text-justify {
    text-align: justify;
}

.poppins-thin {
    font-family: "Poppins", sans-serif;
    font-weight: 100;
    font-style: normal;
}

.poppins-extralight {
    font-family: "Poppins", sans-serif;
    font-weight: 200;
    font-style: normal;
}

.poppins-light {
    font-family: "Poppins", sans-serif;
    font-weight: 300;
    font-style: normal;
}

.poppins-regular {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.poppins-medium {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-style: normal;
}

.poppins-semibold {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: normal;
}

.poppins-bold {
    font-family: "Poppins", sans-serif;
    font-weight: 700;
    font-style: normal;
}

.poppins-extrabold {
    font-family: "Poppins", sans-serif;
    font-weight: 800;
    font-style: normal;
}

.poppins-black {
    font-family: "Poppins", sans-serif;
    font-weight: 900;
    font-style: normal;
}

.poppins-thin-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 100;
    font-style: italic;
}

.poppins-extralight-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 200;
    font-style: italic;
}

.poppins-light-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 300;
    font-style: italic;
}

.poppins-regular-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: italic;
}

.poppins-medium-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 500;
    font-style: italic;
}

.poppins-semibold-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
    font-style: italic;
}

.poppins-bold-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 700;
    font-style: italic;
}

.poppins-extrabold-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 800;
    font-style: italic;
}

.poppins-black-italic {
    font-family: "Poppins", sans-serif;
    font-weight: 900;
    font-style: italic;
}

.fullscreen {
    width: 100vw;
    height: 100vh;
}

.threequarterscreen {
    width: 100vw;
    height: 75vh;
}

.halfscreen {
    width: 100vw;
    height: 50vh;
}

.quarterscreen {
    width: 100vw;
    height: 25vh;
}

.bg-light {
    background-color: #F5F5F5 !important;
}

.bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}

.scroll-snap>section>div>h1 {
    font-size: 3rem;
    text-shadow: 2px 2px rgba(0, 0, 0, 0.3);
}

.scroll-snap>section>div>h2 {
    font-size: 3rem;
    text-shadow: 2px 2px rgba(0, 0, 0, 0.3);
}

.scroll-snap>section>div>p {
    font-size: 1.5rem;
    text-shadow: 2px 2px rgba(0, 0, 0, 0.3);
}

header a i {
    font-size: 1.75rem;
}

.menu p {
    font-size: 14pt;
}

.menu-box ul li,
.menu-box ul li a {
    font-size: 4rem !important;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.menu-box ul li:hover,
.menu-box ul li a:hover {
    transition: all 0.3s ease;
    transform: scale(1.1);
    font-weight: 900;
}

/* HOME */
.anim-box {
    opacity: 0;
    transform: translateX(-50px);
    animation: none;
}

.anim-container.visible .anim-box:nth-child(2) {
    animation: fadeInLeft 0.4s 0.1s forwards;
}

.anim-container.visible .anim-box:nth-child(3) {
    animation: fadeInLeft 0.4s 0.2s forwards;
}

.anim-container.visible .anim-box:nth-child(4) {
    animation: fadeInLeft 0.4s 0.4s forwards;
}

@keyframes fadeInLeft {
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
/* FIN HOME */

/* FORMS */
input:not([type="checkbox"]),
select,
textarea {
    height: 60px !important;
    border: 1.72px solid #498094 !important;
    padding-top: 0 !important;
    padding-right: 1rem !important;
    padding-bottom: 0 !important;
    padding-left: 2rem !important;
}

textarea:focus {
    padding-top: 1rem !important;
}

textarea:focus::placeholder {
    color: white !important;
}

input::placeholder {
    color: #999999 !important;
}

textarea::placeholder {
    display: flex;
    align-items: center;
    line-height: 60px;
    color: #999999 !important;
}

select:invalid {
    padding-left: 2rem !important;
    color: #999999 !important;
}
/* FIN FORMS */