/* GLOBAL STYLES */
:root{
    --font-primary: 'Poppins', sans-serif;
    --font-secondary: 'Open Sans', sans-serif;
    --color-primary: hsl(257, 40%, 49%);
    --color-secondary: hsl(300, 69%, 71%);
    --color-white: hsl(0, 0%, 100%);
    --font-size-base: 0.95rem;
    --font-size-title: 1.7rem;
}

.body{
    font-family: var(--font-secondary);
    font-weight: 400;
    font-size: var(--font-size-base);
    min-height: 100vh;
    background: var(--color-primary) url("../../src/images/bg-mobile.svg") top no-repeat;
    padding: 30px;
    display: grid;
    grid-template-rows: minmax(80px, auto) 1fr minmax(80px, auto);
}


/* HEADER */
.header img{
    width: 150px;
}


/* MAIN */
.main{
    display: grid;
    align-items: center;
    justify-items: center;
}

.main-info{
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.main-info h1, p{
    color: var(--color-white);
    text-align: center;
}

.main-title{
    font-family: var(--font-primary);
    font-size: var(--font-size-title);
    font-weight: 600;
}

.main-title span{
    display: block;
}

.main-paragraph{
    font-family: var(--font-primary);
    line-height: 1.6;
    padding: 8px;
}

.main-btn{
    background-color: var(--color-white);
    color: var(--color-primary);
    font-size: var(--font-size-base);
    align-self: center;
    border: none;
    border-radius: 1.5rem;
    padding: 0.8rem 5rem;
    transition: 0.3s ease-in-out;
    box-shadow: 0 8px 15px hsla(0, 0%, 0%, 0.1);
    cursor: pointer;
}

/* Respeitar preferência de reduzir movimento */
@media (prefers-reduced-motion: reduce){
    .main-btn{
        transition: none;
        transform: none;
  }
}

.main-btn:hover{
    background-color: var(--color-secondary);
    color: var(--color-white);
    transform: scale(1.02);
    box-shadow: 0 18px 30px hsla(0, 0%, 0%, 0.34);
}


/* FOOTER */
.footer{
    margin: auto 0;
}

.footer-icons{
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    color: var(--color-white);
    font-size: 1.5rem;
}

.footer-icons i{
    transition: 0.3s ease-in-out;
}

.footer-icons i:hover{
    color: var(--color-secondary);
    transform: scale(1.1);
    cursor: pointer;
}

/* RESPONSIVE STYLES */
@media (min-width: 375px){
    .body{
        background: var(--color-primary) url("../../src/images/bg-desktop.svg") center/cover no-repeat;
        margin: 0 2rem;
    }   
}

@media (min-width: 992px){
    :root{
        --font-size-base: 1rem;
        --font-size-title: 2.2rem;
    }

    .header img{
        width: 250px;
    }

    .main{
        display: flex;
        justify-content: center;
        gap: 3rem;
    }
    
    .responsive-img-mockups{
        width: 50%;
    }

    .main-info{
        align-items: flex-start;
        width: 39%;
    }

    .main-info h1, p{
        text-align: left;
    }

    .main-title span{
        text-align: left;
    }

    .main-paragraph{
        padding: 0;
    }

    .main-btn{
        align-self: flex-start;
    }

    .footer-icons{
        justify-content: flex-end;
        padding: 0 1rem;
    }

}