main {
    display: flex;
    flex-direction: column;
    margin-top: 64px;
}

.first-row {
    display: flex;
    flex-direction: row;
    margin-bottom: 100px;    
}

.titles {
    margin: 0 auto;
    width: 75%;
}

.titles .title {
    font-size: 46px;
    font-weight: 700;
    font-family: "Nunito", sans-serif;
    color: rgb(65, 65, 65);
    color: rgb(61, 61, 61);
    margin-bottom: 16px;
    text-align: center;
}

.titles .description {
    font-size: 22px;
    font-weight: 500;
    font-family: "Nunito", sans-serif;
    color: rgb(0, 0, 0);
    text-align: center;
    /*text-align: justify;*/
}

.s-row {
    display: flex;
    flex-direction: row;
    margin-bottom: 64px;
}

.section {
    width: 75%;
    margin: 0 auto;
    background-color: white;
    padding: 64px;
    border-radius: 64px;
    border: #ded5ff 4px solid;
}

.section .title {
    font-size: 36px;
    font-family: "Nunito", sans-serif;
    font-weight: 700;
    margin-bottom: 8px;
}

.section .description {
    font-size: 22px;
    font-family: "Nunito", sans-serif;
    font-weight: 500;
}

/* ------------- EPILOGUE SECTION ----------- */

.divider-fr {
    background-color: rgb(192, 163, 240);
    height: 2px;
    width: 75%;
    margin: 0 auto;
}

.epilogue {
    display: flex;
    flex-direction: column;
    padding: 10px 0 40px 0;
    width: 60%;
    margin: 0 auto;
}

.epilogue .e-text {
    text-align: center;
    font-style: italic;
    font-weight: 400;
    font-size: 24px;
    font-family: "Nunito", sans-serif;
    margin-bottom: 32px;
}

.epilogue .e-readmore {
    margin: 0 auto;
    width: fit-content;
    padding: 14px 44px;
    border-radius: 16px;
    background-color: rgb(125, 70, 226);
    color: white;
    font-weight: 600;
    font-size: 20px;
    text-decoration: none;
    transition: background-color 0.1s ease-in;
}

.epilogue .e-readmore:hover {
    background-color: rgb(99, 50, 189);
}

.e-divider {
    margin: 0 auto;    
    margin-bottom: 40px;        
    height: 2px;
    width: 45%;
    background-color: rgb(210, 198, 226);

}

.disclaimer {
    width: 40%;
    background-color: rgb(236, 219, 255);
    border: 2px dashed rgb(128, 53, 224);
    padding: 32px 64px;
    margin: 0 auto;
    margin-bottom: 32px;
    font-family: "Nunito", sans-serif;
    font-size: 24px;
    text-align: center;
    color: rgb(31, 31, 31);
}

/* ------------ MOBILE ---------- */ 

@media (max-width: 767px) or (pointer: coarse){
    html, body {
        margin: 0;
        padding: 0;
        width: 100%;
        height: 100%;
        overflow-x: hidden!important;
    }

    main {
        margin-top: 32px;
    }

    .titles {
        width: 80%;
    }

    .titles .title {
        font-size: 34px;
        font-weight: 800;
    }

    .titles .description {
        font-size: 20px;
        font-weight: 400;
    }

    .s-row {
        display: flex;
        flex-direction: column;
        margin-bottom: 32px;
        gap: 48px;
    }

    .section {
        margin: 0;
        margin: 0 auto;
        padding: 32px 32px;
        border-radius: 32px;
    }

    .section .title {
        font-size: 25px;
        font-family: "Nunito", sans-serif;
        font-weight: 700;
        margin-bottom: 20px;
        text-align: center;
    }

    .section .description {
        font-size: 18px;
        font-family: "Nunito", sans-serif;
        font-weight: 400;
    }

    /* ------- EPILOGUE SECTION ------- */

    .divider-fr {
        width: 60%;
    }

    .epilogue {
        padding-top: 48px;
        width: 85%;
    }

    .epilogue .e-text{
        font-size: 22px;
    }

    .epilogue .e-readmore {
        justify-content: center;
        margin: 0 auto;
        padding: 16px;
    }

    .disclaimer {
        width: 80%;
        padding: 4px;
        font-size: 21px;
        margin: 0 auto;
        justify-content: center;
        text-align: center;        
        margin-bottom: 32px;
        background-color: rgb(236, 219, 255);
    }
}


@media (orientation: landscape) and (pointer: coarse) {
    .epilogue {
        padding-top: 32px ;
    }

    .divider-fr {
        width: 70%;
    }

    .disclaimer {
        text-align: center;
    }
}

@media (orientation: portrait) and (pointer: coarse) {
    .epilogue {
        padding-top: 48px;
    }
}