@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&display=swap');

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

.container {
    width: 100vw;
    height: 100vh;

    header {
        width: 100%;
        height: 50%;

        .banner {
            width: 100%;
            height: 50px;
            background-color: #E1F2F0;
            display: flex;
            justify-content: center;
            align-items: center;

            img {
                height: 50px;
                margin-right: 10px;
                object-fit: contain;
            }

            .titleWrapper {
                font-family: 'Josefin Sans';
                display: flex;
                flex-direction: column;
                justify-content: center;

                h2 {
                    font-size: 24pt;
                    font-weight: 200;
                }

                h3 {
                    margin-top: -5px;
                    font-size: 12pt;
                    font-weight: 300;
                }
            }
        }

        main {
            width: 100%;
            height: calc(100% - 50px);
            background-image: url(../images/background.jpg);
            background-size: cover;
            background-position: center top;

            .mainContent {
                z-index: 1;
                position: absolute;
                top: 100px;
                left: 50%;
                transform: translateX(-50%);
                width: 50%;
                height: 50%;
                padding: 20px 50px;
                box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.35);
                background-color: #fff;
                display: flex;
                flex-direction: column;
                align-items: center;

                h1 {
                    font-size: 4rem;
                    font-weight: 400;
                    font-style: italic;
                }

                h2 {
                    margin-top: -5px;
                    margin-bottom: 10px;
                    font-size: 1.5rem;
                    font-weight: 200;
                    font-style: italic;
                    color: #22B575;
                }

                .divider {
                    width: 20%;
                    height: 2px;
                    margin-bottom: 10px;
                    background-color: #22B575;
                }

                .questionWrapper {
                    width: 100%;
                    height: calc(100% - 120px); //The height of the text area
                    display: flex;

                    section {
                        width: 50%;
                        padding: 30px;

                        h3 {
                            margin-bottom: 10px;
                            font-family: 'Josefin Sans';
                            font-size: 1.3rem;
                        }

                        p {
                            color: #9FA5AA;
                        }
                    }

                    .cardWrapper {
                        width: 50%;
                        height: 100%;
                        display: flex;
                        flex-direction: column;
                        justify-content: space-between;
                        align-items: end;

                        .card {
                            width: 80%;
                            height: 45%;
                            box-shadow: 0px 0px 10px 1px rgba(0, 0, 0, 0.35);

                            img {
                                width: 100%;
                                max-height: 50%;
                                object-fit: contain;
                            }

                            .buttonContainer {
                                width: 100%;
                                height: 50%;
                                display: flex;
                                justify-content: center;
                                align-items: center;

                                a {
                                    width: 80%;
                                    height: 50px;
                                    margin: 0 auto;
                                    padding: 10px;
                                    background-color: #22B575;
                                    text-decoration: none;
                                    text-align: center;
                                    line-height: 30px;
                                    color: white;
                                    font-family: 'Josefin Sans';
                                }
                            }
                        }
                    }
                }
            }

            .wireframeShadow {
                position: absolute;
                top: 130px;
                left: 50%;
                transform: translateX(-50%);
                width: calc(50% - 60px);
                height: 50%;
                border: 2px solid #22B575;
            }
        }
    }

    .callToAction {
        width: 100%;
        height: 50%;
        padding-top: 130px;
        background-color: #D8EEEB;
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        align-items: center;
        font-family: 'Josefin Sans';

        h2 {
            font-size: 2.5rem;
            font-weight: 200;
        }

        .divider {
            width: 20%;
            height: 2px;
            background-color: #22B575;
        }

        .buttonContainer {
            width: 50%;
            display: flex;
            justify-content: space-between;

            a {
                width: 45%;
                height: 50px;
                margin: 0 auto;
                padding: 10px;
                background-color: #22B575;
                text-decoration: none;
                text-align: center;
                line-height: 30px;
                color: white;
            }
        }

        p {
            color: #BFCED3;
        }
    }
}

@media (max-width: 768px) {
    .container {
        header {
            main {
                .mainContent {
                    top: 70px;
                    width: 90%;
                    padding: 10px;

                    h1 {
                        font-size: 2rem;
                    }

                    h2 {
                        font-size: 1rem;
                    }

                    .questionWrapper {
                        height: auto;
                        flex-direction: column;
                        justify-content: center;
                        flex-grow: 1;

                        section {
                            width: 100%;
                            padding: 0;
                            text-align: center;
                        }

                        .cardWrapper {
                            display: none;
                        }
                    }
                }

                .wireframeShadow {
                    top: 90px;
                    width: calc(90% - 40px);
                }
            }
        }

        .callToAction {
            padding-top: 90px;

            h2 {
                font-size: 1.5rem;
                text-align: center;
            }

            .divider {
                width: 50%;
            }

            .buttonContainer {
                width: 90%;

                a {
                    height: auto;
                    line-height: 1;
                }
            }
        }
    }
}