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

body {
    background-color: white;
    font-family: 'Open Sans', sans-serif;
    color: hsl(192, 100%, 9%);
    display: flex;
    justify-content: center;
    text-align: center;
    min-height: 100vh;
}

h1, h2, h3, h4 {
    font-family: 'Poppins', sans-serif;
}

a {
    color: inherit;
    text-decoration: none;
}

.wrapper {
    background-color: white;
    max-width: 375px;
}

nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 25px 7%;
}

nav .logo {
    width: 30%;
}

.btn {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.try_btn_small {
    border: 1px solid hsl(322, 100%, 66%);
    border-radius: 20px;
    color: hsl(322, 100%, 66%);
    font-size: 65%;
    padding: 4px 0;
    width: 80px;
}

.try_btn_small:hover {
    background-color: hsl(322, 100%, 66%);
    color: white;
    font-weight: 600;
}

.introduction {
    padding: 90px 8%;
    background: url(../images/bg-section-top-mobile-1.svg) no-repeat bottom;
}

.introduction h1 {
    font-size: 155%;
}

.introduction p {
    color: hsl(192, 100%, 20%);
    font-size: 90%;
    font-weight: 600;
    line-height: 1.5;
    margin: 20px auto;
}

.get_started_btn {
    background-color: hsl(322, 100%, 66%);
    border-radius: 30px;
    box-shadow: 3px 5px 10px -7px hsl(192, 100%, 9%);
    color: white;
    font-size: 75%;
    font-weight: 600;
    padding: 12px 0;
    width: 210px;
    margin: 45px auto;
}

.get_started_btn:hover {
    box-shadow: 3px 5px 15px -6px hsl(192, 100%, 9%);
    color: hsl(192, 100%, 9%);
    font-weight: 800;
}

.mockup_illustration {
    width: 95%;
    margin: 55px auto;
}



.achievement {
    margin: 60px 0 35px;
}

.achievement img {
    position: relative;
    right: 19%;
    top: 5px;
}

.communities {
    margin-bottom: 90px;
}

.communities img {
    width: 10%;
}

.messages img {
    width: 8%;
}

.communities h2 {
    font-family: 'Open Sans', sans-serif;
    font-size: 380%;
}

.messages h2 {
    font-family: 'Open Sans', sans-serif;
    font-size: 340%;
}

.achievement p {
    color: darkgray;
    font-size: 95%;
    font-weight: 400;
    margin: 0;
}

.features img {
    width: 85%;
}

.features h4 {
    font-size: 125%;
    margin: 75px 0 15px;
}

.features p {
    color: hsl(192, 100%, 20%);
    font-size: 85%;
    font-weight: 600;
    line-height: 1.5;
}


.grow_together {
    background-color: hsl(207, 100%, 98%);
    padding: 80px 8% 55px;
}

.flowing_conversations {
    background: url(../images/bg-section-bottom-mobile-1.svg) no-repeat top, url(../images/bg-section-top-mobile-2.svg) no-repeat bottom;
    padding: 190px 8% 220px;
}



.your_users  {
    background-color: hsl(207, 100%, 98%);
    padding: 20px 8% 120px;
}


#CTA {
    background: url(../images/bg-section-bottom-mobile-2.svg) no-repeat top, url(../images/bg-footer-top-mobile.svg) no-repeat bottom;
    padding: 170px 8% 260px;
}

#CTA h3 {
    font-size: 155%;
}

#CTA .get_started_btn {
    margin-top: 40px;
}

footer {
    background-color: hsl(192, 100%, 9%);
    color: hsl(207, 100%, 98%);
    text-align: left;
    padding: 45px 8%;
}

footer h5 {
    font-size: 125%;
}

footer p {
    font-size: 90%;
    line-height: 1.65;
}

.newsletter {
    padding: 15px 0;
}

.newsletter p {
    margin: 20px auto;
}

.newsletter form {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: space-between;
}

.newsletter input {
    color: hsl(192, 100%, 20%);
    border: solid 1px white;
    border-radius: 6px;
    font-size: 18px;
    margin: 10px 0;
    outline: none;
    padding: 13px 3%;
    width: 100%;
}

.newsletter button {
    color: white;
    background-color: hsl(322, 100%, 66%);
    border: none;
    border-radius: 5px;
    font-family: 'Open Sans', sans-serif;
    font-size: 100%;
    font-weight: 600;
    margin: 5px 0 0 50%;
    outline: none;
    padding: 12px 0;
    width: 50%;
}

.newsletter button:hover {
    box-shadow: 0px 2px 8px 1px hsl(322, 100%, 46%);
    font-weight: 700;
}

footer .contact_information {
    margin-top: 90px;
}

footer .logo {
    width: 63%;
}

.contact_information p {
    margin-top: 15px;
}

table p:hover {
    color: hsl(322, 100%, 66%);
    font-weight: 600;
}

.contact_information table {
    margin: 25px 0 40px;
}

.contact_information .icon {
    margin: 18px 15px 0 0;
}

.contact_information .SM_icons {
    font-size: 170%;
    margin-right: 15px;
}

.contact_information .SM_icons:hover {
    color: hsl(322, 100%, 66%);
    font-size: 180%;
}



.attribution {
    background-color: hsl(322, 100%, 66%);
    color: white;
    font-size: 11px;
    padding-top: 20px;
    padding-bottom: 20px;
}

.attribution a {
    color: hsl(322, 100%, 86%);
    font-weight: 700;
}

.attribution strong {
    color: hsl(192, 100%, 9%);
}


@media (min-width:960px) {

    body  {
        display: block;
    }


    .wrapper {
        max-width: 1440px;
    }

   

    nav {
        padding: 70px 5%;
    }
    
    nav .logo {
        width: 18%;
    }
    
    .try_btn_small {
        font-size: 90%;
        font-weight: 600;
        padding: 7px 0;
        width: 120px;
    }
    
    .try_btn_small:hover {
        font-weight: 700;
    }

    .introduction {
        padding: 120px 11%;
        background: url(../images/bg-section-top-desktop-1.svg) no-repeat bottom;
    }
    
    .introduction h1 {
        font-size: 280%;
    }
    
    .introduction p {
        font-size: 110%;
        margin: 20px 23%;
    }
    
    .get_started_btn {
        border-radius: 50px;
        font-size: 110%;
        padding: 21px 0;
        width: 360px;
        margin: 45px auto;
    }

    .get_started_btn:hover {
        font-weight: 700;
    }
    
    .mockup_illustration {
        width: 90%;
    }

    .achievement {
        font-family: 'Open Sans', sans-serif;
        margin: 25px 12% 40px;
        display: flex;
        align-items: baseline;
        justify-content: space-between;
    }
    
    .achievement img {
        right: 38%;
    }
    
    .communities img {
        width: 20%;
    }
    
    .messages img {
        width: 14%;
    }
    
    .communities h2 {
        font-size: 550%;
    }
    
    .messages h2 {
        font-size: 550%;
    }
    
    .achievement p {
        font-size: 140%;
        margin: 10px auto;
    }

    .features {
        display: flex;
        text-align: left;
    }

    .features img {
        width: 45%;
    }
    
    .features_text {
        margin: 50px 10% 0 0;
    }

    .features h4 {
        font-size: 250%;
        margin-bottom: 20px;
    }

    .features p {
        color: hsl(192, 100%, 25%);
        font-size: 90%;
    }

        
    .grow_together {
        padding: 60px 10% 35px;
        flex-direction: row-reverse;
    }
    
    /* Flowing Conversations */
    
    .flowing_conversations {
        background: url(../images/bg-section-bottom-desktop-1.svg) no-repeat top, url(../images/bg-section-top-desktop-2.svg) no-repeat bottom;
        padding: 280px 10% 250px;
    }

    .flowing_conversations .features_text {
        margin: 50px 0 0 10%;
    }
    
    /* Your Users */
    
    .your_users  {
        padding: 30px 10% 20px;
        flex-direction: row-reverse;
    }

    #CTA {
        background: url(../images/bg-section-bottom-desktop-2.svg) no-repeat top, url(../images/bg-footer-top-desktop.svg) no-repeat bottom;
        padding-top: 270px;
    }
    
    #CTA h3 {
        font-size: 250%;
    }

    footer {
        display: flex;
        flex-direction: row-reverse;
        padding: 100px 8%;
    }
    
    footer p {
        font-size: 82%;
    }

    .newsletter {
        padding: 0;
        width: 50%;
    }
    
    .newsletter p {
        margin-right: 36%;
    }
    
    .newsletter form {
        flex-direction: row;
        justify-content: space-between;
    }
    
    .newsletter input {
        margin: 15px 0;
        padding: 10px 3%;
        width: 60%;
    }
    
    .newsletter button {
        font-size: 95%;
        margin: 0 3% 0;
        width: 30%;
    }
    
    footer .contact_information {
        margin-top: 0;
    }
    
    footer .logo {
        width: 30%;
    }
    
    .contact_information p {
        margin: 15px 55% 0 0;
    }
    
    .contact_information table {
        margin: 10px 0 55px;
    }

    .contact_information .P_E {
        margin-right: 0;
    }
    
    .contact_information .SM_icons {
        font-size: 220%;
        margin-right: 17px;
    }
    
    .contact_information .SM_icons:hover {
        font-size: 230%;
    }

}
