:root {
    --main-bg-color: hsl(30, 38%, 92%);
    --paragraph-color: hsl(228, 12%, 48%);
    --perfume-color: hsl(212, 21%, 14%);
    --components-color: hsl(158, 36%, 37%);
    --hover-components-color: hsl(157.1, 36%, 18%);
    --card-bg-color: hsl(0, 0%, 100%);
    --external-link-color: hsl(228, 45%, 44%);
}

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

body {
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: hsl(30, 38%, 92%);
}

main {
    width: 100%;
}

.card {
    min-width: 600px;
    width: 30%;
    margin: 0 auto;
    display: flex;
    background-color: #fff;
    border-radius: 10px;
}

.left {
    width: 50%;
    background-image: url(images/image-product-desktop.jpg);
    background-position: center;
    background-size: cover;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.right {
    width: 50%;
    display: flex;
    flex-direction: column;
    row-gap: 24px;
    padding: 35px 40px;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.item {
    font-size: 16px;
    color: var(--paragraph-color);
    letter-spacing: 4px;
    text-transform: uppercase;
    font-weight: 500;
}

h1 {
    font-size: 38px;
    color: var(--perfume-color);
}

.description {
    width: 85%;
    line-height: 1.5;
    color: var(--paragraph-color);
    font-size: 14px;
}

.prices {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 24px;
}

.new-price {
    font-size: 36px;
    color: var(--components-color);
}

.old-price {
    font-size: 14px;
    text-decoration: line-through;
    color: var(--paragraph-color);
}

button {
    width: 100%;
    padding: 17px 0;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-weight: 700;
    border-radius: 7px;
    background-color: var(--components-color);
    border: none;
    cursor: pointer;
}

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

button img {
    margin-right: 7px;
}

@media only screen and (min-width: 641px) and (max-width:768px){
    .card{max-width: 600px;}
}

@media only screen and (max-width:640px){
    .card{
        min-width: auto;
        width: 90%;
        display: flex;
        flex-direction: column;
        border-radius: 10px;
    }
    .left{
        width: 100%;
        height: 350px;
        background-image: url(images/image-product-mobile.jpg);
        border-radius: 10px 10px 0 0;
    }
    .right{
        width: 100%;
        row-gap: 12px;
        padding: 25px;
        border-radius: 0 0 10px 10px;
    }
    .item{
        font-size: 14px;
    }
    h1 {
        font-size: 32px;
        line-height: 1;
    }
    .description{
        width: 95%;
        margin-top: 10px;
        margin-bottom: 15px;
        line-height: 1,7;
        font-size: 12px;
    }
    button{
        margin: 10px;
    }
}