@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200..800&display=swap');

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

:root {
    /* Font and Texts Formats */
    --TXT-ALIGN: center;

    /* Displays */
    --DISPLAY: flex;
    --ALIGN-IT: center;
    --JUST-CONT: space-between;
    --TXT-WRAP: wrap;

    /* Positions */
    --POSITION: relative;
    --TRANSLATE: translate(-50%, -50%);
}

img { display: block; }

figcaption {
    position: absolute;
    left: -10000px;
}

html { 
    scroll-behavior: smooth;
    scroll-margin: 8rem;
}

body {
    width: 100%;
    display: var(--DISPLAY);
    flex-direction: column;
    font-family: "Manrope", sans-serif;
}

.header {
    height: 100vh;
    background-image: radial-gradient(rgba(0, 0, 255, 0.867), rgba(12, 12, 240, 0.644)), url('./assets/images/pexels-led-supermarket-179772-577514.jpg');
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.header__bordered {
    width: 95%;
    position: fixed;
    left: 50%;
    top: 15px;
    transform: translateX(-50%);
    background-color: rgba(245, 245, 245, 0.745);
    border-radius: 50px;

    display: var(--DISPLAY);
    justify-content: var(--JUST-CONT);
    align-items: var(--ALIGN-IT);
    padding: 5px 8px;
    z-index: 1;
}

figure img {
    width: 75px;
    height: 45px;
    border-radius: 50px;
    padding: 6px;
    background-color: rgba(12, 12, 240, 0.644);
    margin-right: 8px;
}

figure {
    display: flex;
    align-items: center;
}

.header__text_logo {
    font-weight: 500;
    letter-spacing: 1px;
    font-size: 18px;
    font-weight: 600;
}

.header__hamburger {
    width: 30px;
    height: 50px;
    margin-right: 1rem;
    position: var(--POSITION);
}

.menu {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: var(--TRANSLATE);
    transition: all .5s ease-out;
}

.close {
    display: none;
}

.closeBtn {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: var(--TRANSLATE);
    display: block;
}

nav {
    display: none;
}

.header__nav {
    display: block;
    height: 240px;
    width: 96%;
    position: fixed;
    left: 50%;
    top: 70px;
    transform: translateX(-50%);
    background-color:rgba(245, 245, 245, 0.912);
    border-radius: 20px;
    padding: 2rem 1.7rem;
    
    transition: all 1s ease-out;
}

.header__nav ul {
    list-style: none;
}

.header__nav ul li {
    display: block;
    margin-bottom: 1.5rem;
}

.header__bordered_button {
    text-decoration: none;
    width: 150px;
    color: #fff;
    background-color: #577590;
    border: none;
    border-radius: 30px;
    padding: 10px 15px;
    margin-left: -10px;
    font-size: 1.1rem;
}

.header__nav a {
    text-decoration: none;
    color: #000;
    font-size: 1rem;
}

.header__info {
    width: 90%;
    position: absolute;
    top: 60%;
    left: 50%;
    transform: var(--TRANSLATE);
    text-align: var(--TXT-ALIGN);
}

.header__h2 {
    color: orange;
    white-space: var(--TXT-WRAP);
    font-size: 2rem;
    margin-bottom: 1.5rem;
    font-family: "Manrope", sans-serif;
}

.header__p {
    font-size: 1rem;
    margin-bottom: 2rem;
    color: #fff;
    font-family: "Manrope", sans-serif;
}

.header__button {
    width: 140px;
    padding: 1rem .5rem;
    border: 2px solid #fff;
    border-radius: 40px;
    background: transparent;  
}

.header__button a,
.header__button a:focus,
.header__button a:active,
.header__button a:visited {
    text-decoration: none;
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    outline: none;
}

.main {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    font-family: "Manrope", sans-serif;
}

.main__about {
    padding: 2rem 1rem;
}

.main__h2_about {
    font-size: 1.5rem;
    font-weight: 900;
    margin-bottom: 1rem;
}

.main__about p {
    font-size: 1rem;
    margin-bottom: 1rem;
}

.main__about img {
    margin: 1rem auto;
    width: 85%;
    height: 200px;
}

.main__buzz {
    padding: 1rem 1.5rem;
}

.main__buzz_container {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    flex-wrap: wrap;
}

.main__buzz_container section {
    max-width: 400px;
}

.focus {
    width: 300px;
    margin-bottom: 2rem;
}

.main__buzz_h2 {
    font-size: 2rem;
    margin-bottom: 2.5rem;
}

.buzz_pic {
    width: 100%;
    height: 500px;
    border-radius: 20px;
    margin-bottom: 1rem;
}

.main__buzz h3 {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 1rem;
}

.main__buzz p {
    font-size: 1rem;
    margin-bottom: 1.5rem;
}

.main__buzz button,
.main__aside button {
    width: 70px;
    background-color: #577590;
    padding: .5rem;
    border: none;
    border-radius: 30px;
}

.main__aside button {
    width: 140px;
    padding: 1rem;
}

.main__buzz a,
.main__aside a {
    text-decoration: none;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 2rem;
    outline: none;
}

.main__mentorship,
.main__tech {
    margin-bottom: 3rem;
}

.main__bootcamp {
    margin-bottom: 3rem;
}

.main__faqs,
.main__action,
.main__reason,
.main__contact {
    width: 100%;
    background-color: rgba(255, 252, 223, 0.932);
    padding: 2rem 1rem;
}

.main__action {
    margin-bottom: 4rem;
}

.span {
    display: none;
}

.arrow__up {
    display: block;
    width: 55px;
    height: 55px;
    border-radius: 50%;
    background-color: rgba(12, 12, 240, 0.644);
    position: fixed;
    right: 1rem;
    bottom: 1rem;
}

.arrow__up img {
    width: 35px;
    height: 55px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.main__faqs_h2 {
    font-size: 2rem;
    text-align: var(--ALIGN-IT);
    margin-bottom: 2rem;
}

.faqs {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem;
}

.question,
.main__welcome {
    min-width: 200px;
    background-color: #fff;
    border-radius: 40px;
    margin: 0 auto;
    padding: 2rem;
}

.flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem;
}

.flex img {
    width: 30px;
}

.question p {
    font-size: 1.3rem;
}
.flex p {
    margin-bottom: 1rem;
}

.hide {
    display: none;
    font-size: 1rem;
}

.unhide {
    display: block;
    font-style: italic;
}

.rotate {
    transform: rotate(180deg);
}

.main__welcome {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.main__welcome h2 {
    font-size: 2rem;
    margin-bottom: 1rem;
}

.main__welcome p {
    font-size: 1rem;
}

.main__testimonials {
    margin-top: 5rem;
    text-align: var(--ALIGN-IT);
    margin-bottom: 3rem;
}

.testimonial__h3 {
    font-size: 2rem;
    font-weight: 900;
    margin-bottom: 2.5rem;
}

.container,
.main__team,
.container_reason,
.action_pics,
.partners {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    flex-wrap: wrap;
}

.testimonial {
    max-width: 400px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    font-size: 1.2rem;
    padding: 1rem;
}

.testimonial img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
}

.name {
    font-weight: 900;
}

.action_h3 {
    font-size: 2rem;
    text-align: var(--ALIGN-IT);
    margin-top: 3rem;
    margin-bottom: 2.5rem;
}

.action_img,
.reason {
    max-width: 400px;
    min-height: 250px;
    border-radius: 30px;
    margin-bottom: 1.2rem;
}

.action_img {
    max-width: 98%;
}

.main__more_info {
    margin-top: 2rem;
    text-align: var(--ALIGN-IT);
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 2rem;
    margin-bottom: 5rem;
}

.main_info_h3,
.reason_h3 {
    font-size: 2rem;
    color: #577590;
}

.main__more_info article {
    margin-bottom: 2rem;
}

.main__more_info p {
    font-size: 1.3rem;
    font-weight: 700;
}

.main__aside {
    min-height: 200px;
    background-color: rgba(255, 149, 0, 0.976);
    text-align: var(--ALIGN-IT);
    padding: 2rem 1rem;
    margin-bottom: 4rem;
}

.main__aside p,
.main__reason p {
    font-size: 1rem;
    margin-bottom: 2rem;
}

.main__reason {
    text-align: var(--ALIGN-IT);
    margin-bottom: 3rem;
}

.reason_h3 {
    color: #000;
    font-weight: 500;
    margin-bottom: 2rem;
}

.reason h3 {
    font-weight: 700;
    margin-bottom: .5rem;
    font-size: 1.3rem;
}

.reason p {
    line-height: 1.5;
}

.reason {
    background-color: #fff;
    padding: 2rem 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 0;
    margin-bottom: 15px;
}

.container_reason {
    gap: 0;
}

.reason img {
    border-radius: 50%;
    margin-bottom: 1rem;
}

.main__social_medias {
    text-align: var(--ALIGN-IT);
    padding: 1rem 3rem;
    margin-bottom: 3rem;
}

.social_medias_h3 {
    font-size: 2.3rem;
    margin-bottom: 3rem;
    font-weight: 500;
}

.social_medias {
    display: flex;
    justify-content: space-between;
    align-items: center;
    place-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}
 
.social_medias a,
.social_medias a:hover,
.social_medias a:focus,
.social_medias a:active,
.social_medias a:visited {
    text-decoration: none;
    width: 65px;
    height: 65px;
    border-radius: 50%;
    border: 2px solid #333;
    display: grid;
    place-content: center;
    background-color: #000;
    border: none;
    outline: none;
}

.fa {
    font-size: 35px;
    color: #fff;
}

.social_medias a:first-child {
    background-color: #1778f2;
}

.social_medias a:nth-child(2) {
    background-color: #1da1f2;
}

.social_medias a:nth-child(3) {
    background-color: #f00075;
}

.main__partners {
    padding: 2rem 1.2rem;
    text-align: var(--ALIGN-IT);
    margin-bottom: 2.5rem;
}

.partners_h3 {
    font-size: 2rem;
    margin-bottom: 2.5rem;
    font-weight: 500;
}

.partners img {
    width: 98%;
    height: 200px;
    border-radius: 30px;
    margin-bottom: 1rem;
}

.main__contact {
    text-align: var(--ALIGN-IT);
    padding: 4rem 1rem;
}

.contact_h3 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 3rem;
}

form {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

input {
    width: 100%;
    background-color: #fff;
    border-radius: 40px;
    padding: 1rem 2rem;
    margin-bottom: 1rem;
    color: #00000060;
    font-size: 1.3rem;
    border: 1px solid rgba(217, 215, 191, 0.603);
}

input:focus {
    outline: none;
    border: none;
}

#message {
    padding-bottom: 4rem;
    margin-bottom: 2rem;
}

form button {
    width: 98%;
    margin-left: 4px;
    color: #fff;
    font-size: 1.3rem;
    text-align: var(--ALIGN-IT);
    padding: 1rem 0;
    border: none;
    background-color: #577590df;
    border-radius: 40px;
    margin-bottom: 6rem;
}

.contact_h3 {
    font-size: 2rem;
    text-align: var(--ALIGN-IT);
}

.main__reach {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.main__reach article {
    width: 98%;
    border-radius: 30px;
    background-color: #fff;
    margin-bottom: 1rem;
    padding: 2rem;
    text-align: left;
}

.main__reach article h4 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.main__reach article a,
.main__reach article address,
.main__reach article p,
.main__reach article a:visited {
    text-decoration: none;
    color: #000;
    font-size: 1rem;
}

.footer {
    text-align: var(--ALIGN-IT);
    padding: 4rem 1rem;
    background-color: #000;
    color: #fff;
}

.footer ul {
    list-style: none;
    margin-bottom: 2.5rem;
}

.footer li {
    display: inline-block;
    font-size: 1.5rem;
    margin-right: 1rem;
    padding-bottom: 1.5rem;
}

.footer li a,
.footer li a:visited {
    text-decoration: none;
    color: #fff;
}

.socials {
    display: flex;
    justify-content: space-between;
    align-items: center;
    place-content: center;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin-bottom: 5rem;
}

.socials a {
    text-decoration: none;
    width: 65px;
    height: 65px;
    border-radius: 50%;
    border: 2px solid #333;
    display: grid;
    place-content: center;
    background-color: #fff;
    border: none;
    outline: none;
}

.socials i {
    color: #000;
    font-size: 30px;
}


.copyright {
    font-size: 1rem;
    margin-bottom: 2rem;
}

@media screen and (min-width: 620px) {
    .header__bordered {
        padding: 6px 8px;
    }

    .header__text_logo {
        font-size: 20px;
    }

    .header__h2 {
        font-size: 2.5rem;
    }
    
    .header__p {
        font-size: 1.3rem;
    }
    
    .header__button {
        width: 160px;
        padding: 1rem .5rem;
    }

    .main__h2_about {
        font-size: 2rem;
    }
    
    .main__about p {
        font-size: 1.2rem;
    }
    
    .main__about img {
        margin: 1rem auto;
        width: 400px;
        max-height: 600px;
    }

    .main__buzz_h2 {
        font-size: 2.5rem;
        margin-bottom: 2.5rem;
    }
    
    .buzz_pic {
        width: 100%;
        height: 500px;
        border-radius: 20px;
        margin-bottom: 1rem;
    }

    .main__buzz h3 {
        font-size: 1.5rem;
    }
    
    .main__buzz p {
        font-size: 1.2rem;
    }
    
    .main__buzz button,
    .main__aside button {
        width: 90px;
        padding: .7rem;
    }

    .main__buzz button a {
        font-size: 1.3rem;
    }
    
    .main__aside button {
        width: 200px;
    }

    .main__buzz a,
    .main__aside a {
        font-size: 1.5rem;
    }

    .arrow__up {
        display: block;
        width: 65px;
        height: 65px;
    }
    
    .arrow__up img {
        width: 45px;
        height: 65px;
    }

    .main__faqs {
        padding: 1rem;
    }

    .main__faqs_h2 {
        font-size: 2.2rem;
        margin-top: 1.5rem;
    }

    .main__welcome h2 {
        text-align: var(--ALIGN-IT);
    }

    .main__welcome p {
        font-size: 1.3rem;
    }

    .question p {
        font-size: 1.5rem;
    }

    .hide {
        font-size: 1rem;
    }

    .testimonial__h3 {
        font-size: 2rem;
    }

    .testimonial {
        font-size: 1.2rem;
    }
    
    .testimonial img {
        width: 120px;
        height: 120px;
    }

    .action_h3 {
        font-size: 2.3rem;
    }
    
    .main_info_h3,
    .reason_h3 {
        font-size: 2.5rem;
    }

    .main__more_info p {
        font-size: 1.5rem;
    }

    .main__aside p,
    .main__reason p {
        font-size: 1.3rem;
    }

    .reason h3 {
        font-size: 1.5rem;
    }

    .social_medias_h3 {
        font-size: 2.5rem;
    }

    .social_medias a,
    .social_medias a:hover,
    .social_medias a:focus,
    .social_medias a:active,
    .social_medias a:visited {
        width: 85px;
        height: 85px;
    }

    .fa {
        font-size: 60px;
    }
    
    .partners_h3 {
        font-size: 2.4rem;
    }
    
    .partners img {
        width: 98%;
        height: 350px;
    }
    
    .contact_h3 {
        font-size: 2.8rem;
    }

    .main__contact {
        padding: 3.5rem 5rem;
    }

    input {
        padding: 1.5rem 2.5rem;
        font-size: 1.5rem;
    }
    
    form button {
        font-size: 1.7rem;
    }
    
    .contact_h3 {
        font-size: 2.5rem;
    }

    .main__reach article h4 {
        font-size: 1.7rem;
    }
    
    .main__reach article a,
    .main__reach article address,
    .main__reach article p,
    .main__reach article a:visited {
        font-size: 1.3rem;
    }
    
    .footer li {
        font-size: 2rem;
        margin-right: 2rem;
    }

    .socials a {
        width: 75px;
        height: 75px;
    }
    
    .socials i {
        font-size: 45px;
    }
    
    
    .copyright {
        font-size: 1.3rem;
    }
}

@media screen and (min-width: 860px) {
    .header {
        background-position: top;
    }

    .header__info {
        width: 70%;
    }

    .header__hamburger {
        display: none;
    }

    nav {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-flow: row nowrap;
        text-align: right;
        gap: 1rem;
    }

    nav ul {
        display: flex;
        margin-right: 2rem;
    }

    nav ul li {
        display: inline-block;
        font-size: 1.3rem;
        margin-left: 1rem;
    }

    nav ul li a {
        text-decoration: none;
        color: #000;
    }

    nav ul li:hover a {
        color: rgb(60, 52, 52);
        cursor: pointer;
    }

    .main__buzz_container section {
        margin-bottom: 7rem;
    }

    .action_img {
        max-width: 300px;
        margin-bottom: 3rem;
    }

    .partners img {
        max-width: 400px;
        max-height: 350px;
    }
}

@media screen and (min-width: 1100px) {
    .header__bordered {
        padding: 4px;
    }

    .header__logo img {
        height: 70px;
        padding: 10px;
    }

    .header__logo p {
        font-size: 2rem;
    }

    .header__info {
        width: 70%;
    }

    .header__h2 {
        font-size: 4rem;
        margin-bottom: 1.8rem;
    }
    
    .header__p {
        font-size: 1.8rem;
    }

    nav ul li a {
        font-size: 1.7rem;
    }
    
    .header__button {
        width: 190px;
    }

    .main {
        padding: 1rem 4rem;
    }

    .main__about img {
        width: 50%;
        height: 600px;
    }

    figure img {
        width: 150px;
        height: 85px;
        padding: 15px;
        margin-right: 15px;
    }
    
    .header__text_logo {
        font-size: 2.3rem;
    }

    .main__buzz_container section {
        margin-bottom: 7rem;
    }

    nav ul li {
        font-size: 2.2rem;
        margin-right: 1rem;
    }

    .header__bordered_button {
        width: 150px;
        padding: 1.5rem;
        font-size: 1.2rem;
        border-radius: 40px;
    }

    .action_img {
        max-width: 400px;
        margin-bottom: 3rem;
    }

    .partners img {
        max-width: 500px;
        max-height: 350px;
    }
}


