/* global */

* {
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    box-sizing: border-box;
}

body {
    background: #fff;
    margin: 0;
    padding: 0;
    font-family: brandon-grotesque, sans-serif;
}

input:focus,
textarea:focus,
select:focus {
    outline: none;
}

/* end of global */

@media(min-width: 1366px) {
    .checklist-container {
        text-align: center;
    }
    .checklist-container h3 {
        font-size: 25px;
        font-weight: 400;
        color: #002244;
        margin: 10px 0;
    }
    .checklist-container p {
        font-size: 20px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-section {
        width: 100%;
        margin: 0;
        padding: 100px 10%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
    .reverse-flex {
        flex-direction: row-reverse;
    }
    .flex-text {
        margin: 0 50px 0 0;
    }
    .reverse-text {
        margin: 0 0 0 50px;
    }
    .flex-text h2 {
        font-size: 40px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text h3 {
        font-size: 30px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text p {
        font-size: 20px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-img {
        width: 460px;
    }
    .step-container {
        margin: 50px 0;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 50px;
    }
    .step-item {
        background: #002244;
        border-radius: 10px;
        padding: 50px;
    }
    .step-item div {
        font-size: 25px;
        font-weight: 400;
        color: #002244;
        background: #fff;
        border-radius: 25px;
        padding: 25px;
        height: 50px;
        width: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .step-item h4 {
        font-size: 25px;
        font-weight: 500;
        color: #fff;
        margin: 10px 0;
    }
    .step-item p {
        font-size: 18px;
        font-weight: 400;
        color: #fff;
        margin: 10px 0;
    }
}

@media(max-width: 1366px) and (min-width: 1024px) {
    .checklist-container {
        text-align: center;
    }
    .checklist-container h3 {
        font-size: 25px;
        font-weight: 400;
        color: #002244;
        margin: 10px 0;
    }
    .checklist-container p {
        font-size: 20px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-section {
        width: 100%;
        margin: 0;
        padding: 100px 10%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
    .reverse-flex {
        flex-direction: row-reverse;
    }
    .flex-text {
        margin: 0 50px 0 0;
    }
    .reverse-text {
        margin: 0 0 0 50px;
    }
    .flex-text h2 {
        font-size: 30px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text h3 {
        font-size: 25px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text p {
        font-size: 20px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-img {
        width: 460px;
    }
    .step-container {
        margin: 50px 0;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 50px;
    }
    .step-item {
        background: #002244;
        border-radius: 10px;
        padding: 50px;
    }
    .step-item div {
        font-size: 25px;
        font-weight: 400;
        color: #002244;
        background: #fff;
        border-radius: 25px;
        padding: 25px;
        height: 50px;
        width: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .step-item h4 {
        font-size: 25px;
        font-weight: 500;
        color: #fff;
        margin: 10px 0;
    }
    .step-item p {
        font-size: 18px;
        font-weight: 400;
        color: #fff;
        margin: 10px 0;
    }
}

@media(max-width: 1024px) and (min-width: 769px) {
    .checklist-container {
        text-align: center;
    }
    .checklist-container h3 {
        font-size: 25px;
        font-weight: 400;
        color: #002244;
        margin: 10px 0;
    }
    .checklist-container p {
        font-size: 20px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-section {
        width: 100%;
        margin: 0;
        padding: 100px 5%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
    .reverse-flex {
        flex-direction: row-reverse;
    }
    .flex-text {
        margin: 0 50px 0 0;
    }
    .reverse-text {
        margin: 0 0 0 50px;
    }
    .flex-text h2 {
        font-size: 30px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text h3 {
        font-size: 25px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text p {
        font-size: 20px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-img {
        width: 460px;
    }
    .step-container {
        margin: 50px 0;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 50px;
    }
    .step-item {
        background: #002244;
        border-radius: 10px;
        padding: 25px;
    }
    .step-item div {
        font-size: 25px;
        font-weight: 400;
        color: #002244;
        background: #fff;
        border-radius: 25px;
        padding: 25px;
        height: 50px;
        width: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .step-item h4 {
        font-size: 25px;
        font-weight: 500;
        color: #fff;
        margin: 10px 0;
    }
    .step-item p {
        font-size: 18px;
        font-weight: 400;
        color: #fff;
        margin: 10px 0;
    }
}

@media(max-width: 769px) {
    .checklist-container {
        text-align: center;
    }
    .checklist-container h3 {
        font-size: 22px;
        font-weight: 400;
        color: #002244;
        margin: 10px 0;
    }
    .checklist-container p {
        font-size: 17px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-section {
        width: 100%;
        margin: 0;
        padding: 50px 5%;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }
    .reverse-flex {
        flex-direction: column;
    }
    .flex-text {
        margin: 0 0 0 0;
    }
    .reverse-text {
        margin: 0 0 0 0;
    }
    .flex-text h2 {
        font-size: 25px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text h3 {
        font-size: 20px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-text p {
        font-size: 15px;
        font-weight: 400;
        color: #555555;
        margin: 10px 0;
    }
    .flex-img {
        width: 100%;
    }
    .step-container {
        margin: 50px 0;
        display: grid;
        grid-template-columns: repeat(1, 100%);
        grid-gap: 50px;
    }
    .step-item {
        background: #002244;
        border-radius: 10px;
        padding: 25px;
    }
    .step-item div {
        font-size: 25px;
        font-weight: 400;
        color: #002244;
        background: #fff;
        border-radius: 25px;
        padding: 25px;
        height: 50px;
        width: 50px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .step-item h4 {
        font-size: 25px;
        font-weight: 500;
        color: #fff;
        margin: 10px 0;
    }
    .step-item p {
        font-size: 18px;
        font-weight: 400;
        color: #fff;
        margin: 10px 0;
    }
}
