:root{
    --Green-500: hsl(158, 36%, 37%);
    --Green-700: hsl(158, 42%, 18%);
    --Black: hsl(212, 21%, 14%);
    --Grey: hsl(228, 12%, 48%);
    --Cream: hsl(30, 38%, 92%);
    --White: hsl(0, 0%, 100%);
}

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

body{
    height: 100vh;
    font-size: 16px;
    display: flex;
    align-items: center;
    font-size: 14px;
    background-color: var(--Cream);
}

article{
    margin: 100px auto;
    background-color: var(--White);
    width: 90%;
    max-width: 700px;
    border-radius: 10px;
    height: auto;
}

.font1{
    font-family: "Montserrat", sans-serif;
}

.font2{
    font-family: "Fraunces", serif;
    font-weight: 700;
}

#main-img{
    width: 100%;
    height: 30%;
    border-radius: 15px 15px 0px 0px;
}

section{
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 2.5vh;
}

#product{
    font-weight: 500;
    font-stretch: expanded;
    font-size:calc(0.8rem + 0.8vw);
    color: var(--Grey);
    letter-spacing: 5px;
}

#title{
    font-size: calc(1.8rem + 1vw);
    line-height: 1;
}

#description{
    color: var(--Grey);
    font-weight: 500;
    font-size: calc(0.7rem + 1vw);
}

div{
    display: flex;
    gap: 1.8rem;
    align-items: center;
}

#sale{
    color: var(--Green-500);
    font-size: calc(2.5em + 1vw);
}

#price{
    color: var(--Grey);
    font-weight: 500;
    font-size: calc(0.8rem + 1vw);
    text-decoration: line-through;
}



button{
    background-color: var(--Green-500);
    color: var(--White);
    height: 60px;
    border-radius: 10px;
    font-weight: 700;
    font-size: calc(0.8rem + 1vw);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    transition: 0.3s ease-in-out;
}

button > img{
    width: 25px;
    height: 25px;
}

button:hover{
    background-color: var(--Green-700);
}

@media (min-width: 500px){
    #main-img{
        height: 100%;
        width: 100%;
        border-radius: 15px 0px 0px 15px;
    }

    article{
        display: flex;
        height: 550px;
    }

    section{
        justify-content: center;
        width: 50%;
        gap: 18px;
    }

    #product{
        font-size: 18px;
        letter-spacing: 7px;
    }
    
    #title{
        font-size: 40px;
    }
    
    #description{
        font-size: 18px;
    }
    
    #sale{
        font-size: 43px;
    }
    
    #price{
        font-size: 18px;
    }

    button{
        font-size: 16px;
        gap: 1rem;
    }
    
    button > img{
        width: 19px;
        height: 19px;
    }
}



