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

:root {
    --discount: hsl(158, 36%, 37%);
    --button-color: hsl(158, 42%, 18%);
    --product-name: hsl(212, 21%, 14%);
    --product-description: hsl(228, 12%, 48%);
    --background: hsl(30, 38%, 92%);
    --product-container: hsl(0, 0%, 100%);
}

/* ======== vertical_align ======== */
body {
    background-color: var(--background);
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100dvh;
    padding-top: 20px;
    padding-bottom: 20px;
}

/* ======== vertical_align ======== */
main {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 10px;
}

/* ======== perfume-container ======== */
.main-container {
    background-color: var(--product-container);
    border-radius: 15px;
    max-width: 95%;
}

/* ======== image-container ========*/
.image-mobile-styling {
    display: flex;
    flex-direction: column;
}

.image-mobile-styling img {
    border-radius: 15px 15px 0 0;
    height: auto;
}

/* ======== text-position ======= */
.text-container {
    padding: 25px;
}

/* ======== category ======= */
h1 {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 0.8rem;
    letter-spacing: 0.3rem;
    color: var(--product-description);
    margin-bottom: 15px;
}

/* ======== product-name ======= */
h2 {
    font-family: "Fraunces", serif;
    font-size: 2.3rem;
    margin-bottom: 15px;
}

/* ======== product-info ======= */
p {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    color: var(--product-description);
    font-size: 1rem;
}

p.product-description {
    line-height: 1.6rem;
}
/* ======== product-price ======= */
.pricing-row {
    display: flex;
    flex-direction: row;
    margin-bottom: 20px;
}
.cost {
    margin-top: 20px;
    margin-bottom: 5px;
    display: flex;
    flex-direction: column;
    vertical-align: middle;
}

p.old-price {
    text-decoration: line-through;
    font-size: 1rem;
}

h3 {
    font-family: "Fraunces", serif;
    font-size: 2.3rem;
    color: var(--discount);
}

/* ======== add-to-cart-button ======= */
.cart-button-position {
    display: flex;
    justify-content: center;
}

.cart-button-styling {
    font-family:"Montserrat", sans-serif;
    font-weight: 600;
    text-decoration: none;
    color: var(--product-container);
    background-color: var(--discount);
    border-radius: 10px;
    width: 320px;
    max-width: 100%;
    padding: 20px 30px 20px 30px;
    margin-bottom: 10px;
    display: flex;
    justify-content: center;
    gap: 10px;
}

/* ======== button interaction ======== */
*:focus {
  outline: none;
}

a:focus-visible {
    border: 5px solid var(--button-color);
}

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


@media screen and (min-width: 1024px) {
.main-container {
    display: flex;
    flex-direction: row;
    margin: 0;
    max-width: 800px;
    max-height: 600px;
    height: 100%;
    width: 100%;
}

.image-mobile-styling {
    display: flex;
    flex-grow: 1;
    flex-basis: 50%;
}

.image-mobile-styling img {
   border-radius: 15px 0 0 15px;
   height: 100%;
   width: 100%;
   object-fit: cover;
}

.text-container {
    display: flex;
    flex-direction: column;
    flex-basis: 50%;
    padding: 40px;
}

/* ======== category ======= */
h1 {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 1.1rem;
    letter-spacing: 0.3rem;
    color: var(--product-description);
    margin-bottom: 20px;
}

/* ======== product-name ======= */
h2 {
    font-family: "Fraunces", serif;
    font-size: 2.8rem;
    margin-bottom: 30px;
}

/* ======== product-info ======= */
p {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    color: var(--product-description);
    font-size: 1.2rem;
}

p.product-description {
    line-height: 1.8rem;
    margin-bottom: 5px;
}
/* ======== product-price ======= */
.pricing-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;
}

h3 {
    font-size: 2.4rem;
}
}