@import url(reset.css);

html,
body {
  font-size: 16px;
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
  background-color: #99a4c7;
}

.container {
  width: 80%;
  margin: 2rem auto;
  box-shadow: 1px 2px 8px 0px #000000;
  border-radius: 0.5rem;
  padding: 3rem;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  background-color: #fff;
}

.header {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.link__logo {
  text-decoration: none;
  color: #000;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
}

.logo {
  width: 80px;
  height: 80px;
  padding: 1rem;
  cursor: pointer;
}

.title__h1 {
  font-family: "Inspiration", cursive;
  font-size: 4rem;
  font-weight: 600;
  text-shadow: #8a9eb1 1px 1px 2px;
  letter-spacing: 0.25rem;
  word-spacing: 0.25rem;
  /* color: #fff; */
  margin: 0.5rem 0;
}

.title__h3 {
  font-size: 1.5rem;
  margin: 0.5rem 0;
}

.link__logo {
  text-decoration: none;
  color: #000;
}

.nav__list {
  display: flex;
  justify-content: space-around;
}

.nav__link {
  text-decoration: none;
  font-weight: bold;
  color: #000;
}

.nav__link:hover {
  color: #99a4c7;
}

.nav__item {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.main,
.main__product,
.main__panier {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.title__h2 {
  margin: 3rem 0;
  text-align: center;
  font-size: 2rem;
  margin: 0.5rem 0;
}

.cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

.card__picture {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 0.5rem;
  display: block;
  margin: 0 auto;
}

.card {
  border: 1px solid rgb(211, 198, 198);
  /* box-shadow: 1px 2px 8px 0px #000000; */

  border-radius: 0.5rem;
  position: relative;
}

.card__legend {
  height: auto;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #99a4c7;
  /* padding: 1rem 0; */
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
  border-radius: 0 0 0.5rem 0.5rem;
  opacity: 0.8;
}

.card__link {
  background-color: #000;
  color: #fff;
  text-decoration: none;
  padding: 0.75rem 1rem;
  border-radius: 0.25rem;
}

.footer {
  margin-top: 200px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.copyright {
  font-size: 1.5rem;
  color: #000;
  text-align: center;
  font-weight: 500;
}

.product {
  display: flex;
}

.picture__product {
  width: 30%;
  border-radius: 0.5rem;
}

.product__details {
  width: 70%;
  padding-left: 4rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.title__product {
  font-size: 2rem;
}

.product__price {
  font-size: 1.5rem;
}

.price__total {
  margin-top: 50px;
  font-size: 1.5rem;
  font-weight: bold;
  color: red;
  align-content: center;
}

.montant__total {
  margin-top: 50px;
  font-size: 1.5rem;
  font-weight: bold;
  color: #000;
  align-content: center;
  padding: none;
}

.title__product__h2 {
  font-size: 3rem;
  text-align: center;
}

.add__panier {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1rem;
}

.quantity {
  padding: 0.5rem;
  border: 1px solid grey;
  border-radius: 0.25rem;
}

.button__panier {
  padding: 0.5rem;
  border: none;
  background-color: #99a4c7;
  border-radius: 0.25rem;
  color: #fff;
  text-decoration: none;
}

.content__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}

.item__panier {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  width: 60%;
  /* box-shadow: 1px 2px 8px 0px #000000;
  border-radius: 0.5rem;
  padding: 0.5rem; */
}

.picture__panier {
  width: 100px;
  height: 100px;
  object-fit: contain;
  border-radius: 0.5rem;
}

.content__panier {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.icone__delete__item {
  text-decoration: none;
  color: #000;
}

.quantity__order {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.icone__plus,
.icone__minus {
  border-radius: 50%;
  background-color: #000;
  color: #fff;
  padding: 0.25rem;
  font-size: 0.75rem;
  cursor: pointer;
}

.montant__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 60%;
}

.text__montant,
.price__montant__total,
.price__total {
  font-weight: bold;
}

.nbProducts {
  border-radius: 50%;
  padding: 0.25rem 0.5rem;
  background-color: rgb(52, 180, 52);
  color: #fff;
  font-weight: bold;
  font-size: 0.75rem;
}

.table__order {
  width: 70%;
  margin: 0 auto;
}

td {
  vertical-align: middle;
  padding-top: 1rem;
}

/* Responsive */
@media screen and (max-width: 768px) {
  td {
    padding-top: 0.5rem;
    width: 15%;
  }
}

@media screen and (max-width: 425px) {
  td {
    padding-top: 0.25rem;
    width: 15%;
  }
}

.block__action__cart {
  width: 70%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
}

.button__delete__cart,
.button__validate__cart {
  text-decoration: none;
  background-color: #000;
  padding: 0.5rem;
  color: #fff;
  border-radius: 0.25rem;
}

.modal {
  background-color: #d2d2d2;
  width: 600px;
  height: 200px;
  box-shadow: 1px 1px 9px -1px #000000;
  border-radius: 0.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  position: fixed;
  left: calc(50% - (600px / 2));
  top: -400px;
  transition: all 0.25s ease-out;
  z-index: 1000;
}

.modal__title {
  padding: 1rem;
  font-size: 1.5rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.25rem;
}

.user__select {
  user-select: none;
}

.modalIn {
  animation: 0.5s linear forwards modalIn;
}

.button__remove {
  padding: 0.5rem;
  border-radius: 0.25rem;
  background-color: #99a4c7;
  color: #fff;
  border: none;
  font-weight: bold;
  cursor: pointer;
}

@keyframes modalIn {
  0% {
    opacity: 0;
    transform: translateY(0);
  }

  100% {
    opacity: 1;
    transform: translateY(calc(100vh - (200px / 2)));
  }
}

/* Responsive */
@media screen and (max-width: 1024px) {
  .container {
    width: 90%;
  }

  .cards {
    grid-template-columns: repeat(2, 1fr);
  }

  .product {
    flex-direction: column;
  }

  .picture__product {
    width: 100%;
  }

  .product__details {
    width: 100%;
    padding-left: 0;
  }

  .title__product {
    font-size: 1.5rem;
  }

  .product__price {
    font-size: 1rem;
  }

  .add__panier {
    flex-direction: column;
    gap: 1rem;
  }

  .quantity {
    width: 50%;
  }

  .button__panier {
    width: 50%;
  }

  .content__item {
    width: 100%;
  }

  .item__panier {
    width: 100%;
  }

  .picture__panier {
    width: 50px;
    height: 50px;
  }

  .content__panier {
    flex-direction: column;
    gap: 1rem;
  }

  .quantity__order {
    flex-direction: column;
    gap: 1rem;
  }

  .montant__total {
    width: 100%;
  }

  .table__order {
    width: 100%;
  }

  .block__action__cart {
    width: 100%;
    justify-content: center;
  }

  .button__delete__cart,
  .button__validate__cart {
    width: 50%;
  }

  .modal {
    width: 400px;
    height: 150px;
  }

  .modal__title {
    font-size: 1rem;
  }
}

@media screen and (max-width: 768px) {
  .cards {
    grid-template-columns: 1fr;
  }
  .container {
    width: 95%;
    padding: 0.5rem;
  }

  .title__h1 {
    font-size: 2rem;
  }

  .picture__product {
    width: 100%;
  }

  .product__details {
    width: 100%;
    padding-left: 0;
  }

  .title__product {
    font-size: 1.5rem;
  }

  .product__price {
    font-size: 1rem;
  }

  .add__panier {
    flex-direction: column;
    gap: 1rem;
  }

  .quantity {
    width: 50%;
  }

  .button__panier {
    width: 50%;
  }

  .content__item {
    width: 100%;
  }

  .item__panier {
    width: 100%;
  }

  .picture__panier {
    width: 50px;
    height: 50px;
  }

  .content__panier {
    flex-direction: column;
    gap: 1rem;
  }

  .quantity__order {
    flex-direction: column;
    gap: 1rem;
  }

  .montant__total {
    width: 100%;
  }

  .table__order {
    width: 100%;
  }

  .block__action__cart {
    width: 100%;
    justify-content: center;
  }

  .button__delete__cart,
  .button__validate__cart {
    width: 50%;
  }

  .modal {
    width: 400px;
    height: 150px;
  }

  .modal__title {
    font-size: 1rem;
  }
}

@media screen and (max-width: 425px) {
  .container {
    width: 95%;
    padding: 0.5rem;
  }

  .title__h1 {
    font-size: 1rem;
  }

  .title__h3 {
    font-size: 1.25rem;
  }

  .title__h2 {
    font-size: 1.5rem;
  }

  .title__product {
    font-size: 1.25rem;
  }

  .product__price {
    font-size: 1rem;
  }

  .price__total {
    font-size: 1rem;
  }

  .montant__total {
    font-size: 1rem;
  }

  .title__product__h2 {
    font-size: 2rem;
  }

  .button__panier {
    padding: 0.25rem;
  }

  .quantity {
    padding: 0.25rem;
  }

  .button__delete__cart,
  .button__validate__cart {
    padding: 0.25rem;
  }

  .modal {
    width: 300px;
    height: 100px;
  }

  .modal__title {
    font-size: 1rem;
  }
}
