*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
a{
    text-decoration: none;
    color: inherit;
}
ul, ol, li{
    list-style: none;
}


:root{
    --text-font: 'Barlow', sans-serif;
    --title-font: 'Fraunces', serif;
    --red: #fe7867;
    --yellow: #fad400;
    --gray: #a7abae;
    --white: #ffffff;
    --graphic-text: #25564b;
    --photography-text: #19536b;
    --footer-bg: #458c7e;
    --background: #FFFBF8;
}

body{
    font-family: var(--text-font);
    background-color: var(--background);
}

header{
    height: 80vh;
    background-image: url(./images/mobile/image-header.jpg);
    background-position: bottom;
    background-size: cover;
    color: var(--white);
    padding: 32px 16px;
    display: grid;
    place-items: start center;
}

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

header .logo {
    font-size: 1.5rem;
    font-weight: 700;
}

header h1{
    font-family: var(--title-font);
    font-size: 2.5rem;
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: .5rem;
    text-align: center;
}

.info img{
    width: 100%;
}

.description{
    display: grid;
    padding: 80px 0px;
    place-items: center;
    height: 500px;
}

.description__title{
    font-family: var(--title-font);
    font-size: 2rem;
    font-weight: 900;
    text-align: center;
    width: 300px;
}

.description__text{
    font-size: 1.2rem;
    font-weight: 600;
    color: var(--gray);
    text-align: center;
    line-height: 2rem;
    padding: 0px 12px;
}

.description__link{
    position: relative;
    font-family: var(--title-font);
    font-weight: 900;
    font-size: 1.2rem;
    text-transform: uppercase;
}

.line{
    position: absolute;
    height: 8px;
    width: 110%;
    left: -5%;
    bottom: 1%;
    z-index: -1;
    opacity: .5;
    border-radius: 10px;
}

.line-yellow{
    background-color: var(--yellow);
}

.line-red{
    background-color: var(--red);
}

.container{
    background-color: tomato;
    height: 600px;
    background-size: cover;
}

.container.graphic{
    background-image: url(./images/mobile/image-graphic-design.jpg);
}
.container.photography{
    background-image: url(./images/mobile/image-photography.jpg);
}

.container.graphic *{
    color: var(--graphic-text);
}

.container.photography *{
    color: var(--photography-text);
}

.container .description{
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: end;
    gap: 16px;
}

.testimonials{
    display: grid;
    place-items: center;
}
.testimonials-title{
    font-family: var(--title-font);
    font-size: 1.1rem;
    letter-spacing: .2rem;
    color: var(--gray);
    padding: 32px 0;
}

.client{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px;
    height: 400px;
    text-align: center;
}

.client__avatar{
    width: 76px;
    height: 76px;
    border-radius: 50%;
    background-position: center;
    background-size: cover;
}

.client__avatar.client1{
    background-image: url(./images/image-emily.jpg);
}

.client__avatar.client2{
    background-image: url(./images/image-thomas.jpg);
}

.client__avatar.client3{
    background-image: url(./images/image-jennie.jpg);
}

.client__text{
    font-size: 1.2rem;
    font-weight: 600;
    opacity: .7;
    line-height: 2rem;
    padding: 0px 12px;
}

.client__name{
    font-family: var(--title-font);
    font-size: 1.2rem;
    font-weight: 900;
}

.client__job{
    color: var(--gray);
    font-weight: 600;
    padding: 12px;
}

.images{
    display: grid;
    grid-template-columns: 1fr 1fr;   
}

.images img{
    width: 100%;
}


footer{
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    height: 400px;
    background-color: #90D4C5;
    color: var(--footer-bg);

}

footer h2{
    font-size: 2.2rem;
    font-weight: 900;
}

footer nav ul{
    display: flex;
    justify-content: space-evenly;
    width: 100vw;
    font-weight: 600;
}

footer>ul{
    display: flex;
    justify-content: center;
    gap: 32px;
}
