@font-face {
    font-family: 'Catamaran';
    src: url('../fontawesome/webfonts/catamaran/Catamaran-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Catamaran';
    src: url('../fontawesome/webfonts/catamaran/Catamaran-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

* {
    box-sizing: unset !important;
}

html {
    scroll-behavior: smooth;
    margin: 0 !important;
    header {
        display: none;
    }
    body {
        background-color: transparent !important;
        margin: 0;
        .site-footer {
            display: none;
        }
        .landing-page {
            width: 100%;
            display: flex;
            justify-content: center;
            #mensagem-customizada-vidi {
                text-align: center;
                h1{
                    font-family: 'Catamaran', sans-serif !important;
                    font-size: 50px;
                    font-weight: 700;
                    line-height: 1;
                    color: #DA5864;
                    margin: 0!important;
                    text-align: center;
                    margin-bottom: 10px!important;
                }
                strong{
                    font-family: 'Catamaran', sans-serif !important;
                    font-size: 25px;
                    line-height: 1.3;
                    margin: 0;
                    color: #575756;
                }
                p {
                    font-family: 'Catamaran', sans-serif !important;
                    font-size: 25px;
                    line-height: 1.3;
                    margin: 20px 0;
                    color: #575756;
                    text-align: center;
                    margin: 5px;
                }
                a {
                    text-decoration: none;
                    color: #DA5864;
                    font-weight: 700;
                    font-size: 35px;
                }
            }
            > section {
                width: 100%;
                display: flex;
                flex-direction: column;
                position: relative;
                .background-container {
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    justify-content: center;
                    position: relative;
                    padding: 55px 0 0;
                    background-image: url('../img/landing-page/lp-bg.png');
                    background-position: top;
                    background-size: contain;
                    background-repeat: no-repeat;
                    .header-container {
                        max-width: 1090px;
                        width: calc(100% - 110px);
                        display: flex;
                        flex-direction: column;
                        justify-content: center;
                        align-items: center;
                        padding: 0 55px;
                        @media (max-width: 767px) {
                            width: calc(100% - 40px);
                            padding: 0 20px;
                        }
                        > div {
                            width: 100%;
                            display: flex;
                            justify-content: flex-start;
                            > img {
                                width: 300px;
                            }
                        }
                        > h1 {
                            width: calc(100% - 260px);
                            font-family: 'Catamaran', sans-serif!important;
                            font-size: 50px;
                            font-weight: 700;
                            text-align: center;
                            color: #ffffff;
                            margin: 0;
                            @media (max-width: 980px) {
                                width: 100%;
                            }
                            @media (max-width: 550px) {
                                font-size: 35px;
                            }
                        }
                        > h2 {
                            width: calc(100% - 260px);
                            font-family: 'Catamaran', sans-serif!important;
                            font-size: 50px;
                            font-weight: 700;
                            text-align: center;
                            color: #ffffff;
                            margin-bottom: 12px;
                            @media (max-width: 980px) {
                                width: 100%;
                            }
                            @media (max-width: 550px) {
                                font-size: 35px;
                                line-height: 1;
                                margin: 20px 0 0 0;
                            }
                        }
                        > p {
                            width: calc(100% - 260px);
                            font-family: 'Catamaran', sans-serif!important;
                            font-size: 55px;
                            font-weight: 400;
                            text-align: center;
                            color: #ffffff;
                            line-height: 1.4;
                            margin: 0;
                            @media (max-width: 980px) {
                                width: 100%;
                                font-size: 45px;
                            }
                            @media (max-width: 767px) {
                                line-height: 1.2;
                            }
                            @media (max-width: 550px) {
                                font-size: 35px;
                            }
                        }
                        > a {
                            width: 460px;
                            display: flex;
                            justify-content: center;
                            border: none;
                            padding: 25px;
                            border-radius: 50px;
                            background-color: #ffffff;
                            margin-top: 30px;
                            cursor: pointer;
                            box-shadow: -3px 3px 13px 7px #181a1b3d;
                            text-decoration: none;
                            @media (max-width: 767px) {
                                width: 350px;
                                padding: 20px;
                            }
                            @media (max-width: 550px) {
                                width: 280px;
                                padding: 5px;
                            }                            
                            > span {
                                font-family: 'Catamaran', sans-serif!important;
                                font-size: 40px;
                                font-weight: 700;
                                background-image: linear-gradient(90deg, #594898, #e7424c);
                                background-clip: text;
                                -webkit-background-clip: text;
                                color: transparent;
                                line-height: 1.7;
                                -webkit-text-fill-color: transparent;
                                @media (max-width: 767px) {
                                    font-size: 30px;
                                }
                                @media (max-width: 550px) {
                                    font-size: 25px;
                                }
                            }
                        }
                    }
                    .content-container {
                        max-width: 1090px;
                        width: calc(100% - 110px);
                        background-color: #f5f5f5;
                        margin-top: 50px;
                        padding: 55px;
                        border-radius: 80px 80px 0 0;
                        box-shadow: -3px 3px 13px 7px #181a1b3d;
                        z-index: 1;
                        @media (max-width: 767px) {
                            width: calc(100% - 40px);
                            padding: 55px 20px 0;
                        }
                        @media (max-width: 550px) {
                            padding: 30px 20px 0;
                           border-radius: 40px 40px 0 0;
                        }
                        > h1 {
                            font-family: 'Catamaran', sans-serif!important;
                            font-size: 55px;
                            font-weight: 700;
                            line-height: 1;
                            margin: 0 0 30px 0;
                            color: #575756;
                            @media (max-width: 980px) {
                                font-size: 40px;
                            }
                            @media (max-width: 550px) {
                                font-size: 30px;
                            }
                        }
                        > p {
                            font-family: 'Catamaran', sans-serif!important;
                            font-size: 29px;
                            font-weight: 400;
                            line-height: 1;
                            margin: 0;
                            color: #575756;
                            @media (max-width: 550px) {
                                font-size: 22px;
                            }
                        }
                        > strong {
                            font-family: 'Catamaran', sans-serif!important;
                            font-size: 24px;
                            font-weight: 700;
                            color: #575756;
                            @media (max-width: 550px) {
                                font-size: 22px;
                            }
                        }
                        > div {
                            width: 100%;
                            display: flex;
                            align-items: flex-start;
                            justify-content: flex-start;
                            gap: 10px;
                            margin-bottom: 25px;
                            > img {
                                width: 35px;
                                @media (max-width: 550px) {
                                    width: 25px;
                                }
                            }
                            > div {
                                display: flex;
                                flex-direction: column;
                                gap: 5px;
                                > h1 {
                                    font-family: 'Catamaran', sans-serif!important;
                                    font-size: 28px;
                                    font-weight: 700;
                                    line-height: 1.3;
                                    margin: 0;
                                    color: #575756;
                                    @media (max-width: 767px) {
                                        font-size: 25px;
                                    }
                                    @media (max-width: 550px) {
                                        font-size: 20px;
                                    }
                                }
                                > p {
                                    font-family: 'Catamaran', sans-serif!important;
                                    font-size: 25px;
                                    font-weight: 400;
                                    margin: 0;
                                    color: #575756;
                                    @media (max-width: 767px) {
                                        font-size: 20px;
                                    }
                                    @media (max-width: 550px) {
                                        font-size: 18px;
                                        line-height: 1;
                                    }
                                }
                            }
                        }
                        > .first {
                                margin-top: 30px;
                            }
                    }
                    &::before {
                        content: '';
                        position: absolute;
                        inset: 0;
                        background-image: url('../img/landing-page/lp-semi-logo.png');
                        background-size: 1100px;
                        background-repeat: no-repeat;
                        background-position: top;
                        background-position-y: 325px;
                        mix-blend-mode: overlay;
                        pointer-events: none;
                    }
                    &::after {
                        content: '';
                        position: absolute;
                        inset: 0;
                        background-image: linear-gradient(90deg, #594898, #e7424c);
                        mix-blend-mode: overlay;
                        pointer-events: none;
                    }
                }
                .background-divisor {
                    width: 100%;
                    height: 25px;
                    background-image: linear-gradient(90deg, #e7424c, #594898);
                    box-shadow: -3px 3px 13px 7px #181a1b3d;
                }
                .form-background {
                    width: 100%;
                    display: flex;
                    justify-content: center;
                    background-color: #f5f5f5;
                    .form-container {
                        max-width: 1090px;
                        width: calc(100% - 110px);
                        display: flex;
                        flex-direction: column;
                        gap: 50px;
                        padding: 55px;
                        @media (max-width: 767px) {
                            width: calc(100% - 40px);
                            padding: 20px;
                        }
                        @media (max-width: 550px) {
                            gap: 30px;
                        }
                        > h1 {
                            font-family: 'Catamaran', sans-serif !important;
                            font-size: 50px;
                            font-weight: 700;
                            line-height: 1;
                            color: #DA5864;
                            margin: 0;
                            @media (max-width: 980px) {
                                font-size: 30px;
                            }
                            @media (max-width: 767px) {
                                text-align: center;
                            }
                            @media (max-width: 550px) {
                                font-size: 25px;
                                line-height: 1;
                            }
                        }
                        .form-content {
                            > div {
                                display: flex;
                                background-color: #F0F0F0;
                                padding: 30px 60px;
                                border-radius: 40px;
                                box-shadow: -3px 3px 13px 7px #181a1b3d;
                                @media (max-width: 767px) {
                                    padding: 30px;
                                }
                                > .screen-reader-response {
                                    display: none;
                                }
                                > form {
                                    width: 100%;
                                    display: flex;
                                    flex-direction: column;
                                    gap: 20px;
                                    > .hidden-fields-container {
                                        display: none;
                                    }
                                    > .input-container {
                                        width: 100%;
                                        display: flex;
                                        gap: 20px;
                                        @media (max-width: 767px) {
                                            flex-direction: column;
                                        }
                                    }
                                    p {
                                        width: 100%;
                                        margin: 0;
                                        > label {
                                            display: flex;
                                            flex-direction: column;
                                            gap: 10px;
                                            font-family: 'Catamaran', sans-serif!important;
                                            font-weight: 400;
                                            font-size: 20px;
                                            line-height: 1;
                                            color: #575756;
                                            @media (max-width: 550px) {
                                                font-size: 16px;
                                            }
                                            > span {
                                                display: flex;
                                                flex-direction: column;
                                                gap: 5px;
                                                > input {
                                                    width: 100%;
                                                    height: 40px;
                                                    border: none;
                                                    border-radius: 50px;
                                                    padding: 5px 20px;
                                                    font-family: 'Catamaran', sans-serif!important;
                                                    font-size: 20px;
                                                    box-sizing: border-box!important;
                                                    @media (max-width: 550px) {
                                                        font-size: 16px;
                                                    }
                                                }
                                                > span {
                                                    color: #dc3232;
                                                }
                                            }
                                        }
                                    }
                                    > p:has(> input) {
                                        display: flex;
                                        justify-content: center;
                                        margin-top: 0px;
                                        @media (max-width: 550px) {
                                            margin-top: 0px;
                                        }
                                        > input {
                                            width: 375px;
                                            height: 85px;
                                            border: none;
                                            background-image: linear-gradient(90deg, #594898, #e7424c);
                                            font-family: 'Catamaran', sans-serif!important;
                                            font-size: 35px;
                                            font-weight: 700;
                                            color: #ffffff;
                                            border-radius: 50px;
                                            cursor: pointer;
                                            @media (max-width: 767px) {
                                                width: 320px;
                                                height: 70px;
                                                font-size: 30px;
                                            }
                                            @media (max-width: 550px) {
                                                width: 250px;
                                                height: 50px;
                                                font-size: 20px;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        .meet-container {
                            display: flex;
                            flex-direction: column;
                            justify-content: center;
                            align-items: center;
                            > img {
                                width: 160px;
                                margin: 0 0 25px 0;
                            }
                            > p {
                                max-width: 700px;
                                width: 100%;
                                font-family: 'Catamaran', sans-serif!important;
                                font-size: 25px;
                                font-weight: 400;
                                text-align: center;
                                margin: 0 0 25px 0;
                                color: #575756;
                                @media (max-width: 550px) {
                                    font-size: 20px;
                                    line-height: 1;
                                }
                            }
                            > a {
                                font-family: 'Catamaran', sans-serif!important;
                                font-size: 30px;
                                font-weight: 700;
                                text-align: center;
                                text-decoration: none;
                                color: #575756;
                                margin-top: -20px;
                                @media (max-width: 550px) {
                                    font-size: 25px;
                                    margin-top: -30px;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
