@import url("https://fonts.googleapis.com/css?family=Fira+Sans:400,500,700&display=swap");
:root {
  --mainColor: #222222;
  --altColor: rgb(255, 236, 151);
  --white: #fff;
  --black: #000;
  --yellowTrans: rgba(252, 241, 210, 0.3);
  --mainGrey: rgb(238, 238, 238);
  --accentColor: rgb(245, 98, 13);
  --lightGrey:rgb(250, 250, 250);
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Fira Sans', sans-serif;
  background: var(--white);
  color: var(--black);
}

nav{
  position:fixed;
  top:0;
  z-index: 1000;
  width: 100%;
  background: var(--mainGrey);
  transition: .3s top ease-in-out;
}

#popup{
  position: fixed;
  background: var(--altColor);
  font-size: 1.2em;
  border-radius: 10px;
  padding: 1rem;
  z-index: 15;
  top:-100px;
  left:50%;
  transform: translateX(-50%);
  transition: .75s all ease-in-out;
}

section{
  min-height:100vh;
  background:var(--white);
}

.spacer{
  height:2em;
  width: 100vw;
  background: var(--lightGrey);
}

/* nav links */
.navbar-toggler {
  outline: none !important;
}
.toggler-icon {
  font-size: 2.5rem;
  color: var(--mainColor);
}
.nav-link {
  color: var(--mainColor);
  font-size: 1.5rem;
  transition: all 0.5s ease-in-out;
}
.nav-link:hover {
  color: var(--black);
}
/* end of nav links */
/* info icons */
.cart-info__icon {
  color: var(--black);
  cursor: pointer;
}

#clear_cart:hover{
    color:var(--white)!important;
    border:1px solid var(--white)!important;
    background: rgb(204, 50, 50)!important;
}

#buy_cart:hover{
  color:var(--white)!important;
  border:1px solid var(--white)!important;
  background: rgb(52, 151, 77)!important;
}

.cart-info {
  border: 0.1rem solid var(--black);
  color: var(--black);
  border-radius: 0.25rem;
  padding: 0.4rem 0.6rem;
  cursor: pointer;
}



tbody>.border-bottom{
  border-bottom: 1.5px solid var(--accentColor)!important;
}

.cart-info:hover {
  background: var(--mainColor);
  border-color: var(--mainColor);
  color: var(--white);
}
.cart-info:hover .cart-info__icon {
  color: var(--white);
}

/* end of info icons */
/* bannière */

.max-height {
  min-height: calc(100vh - 76px);
  background: linear-gradient(var(--yellowTrans), var(--yellowTrans)),
    url("../img/header.jpg") center/cover fixed no-repeat;
  position: relative;
}
.banniere {
  color: var(--black);
  margin-top: -4rem;
}
/* bannière */
/* panier  */
.cart {
  position: fixed;
  min-height: 10rem;
  background: var(--white);
  width: 28rem;
  top: 15%;
  right: -100%;
  transition: all 0.3s ease-in-out;
  background: rgba(255, 255, 255, 0.7);
  padding: 2rem 1.5rem;
  overflow: hidden;
  border-top-left-radius: 15px;
  border-bottom-left-radius: 15px;
  z-index:11;
}
.show-cart {
  right:0;
}

#hide-cart{
  position: absolute;
  font-size: 2rem;
  left:5px;
  top:50%;
  transform: translateY(-50%);
  cursor: pointer;
}

.cart-item {
  transition: all 2s ease-in-out;
}

.table-responsive{
  max-height: 60vh;
}

/* articles du panier */
.cart-item-remove {
  color: var(--mainColor);
  transition: all 1s ease-in-out;
}
.cart-item-remove:hover {
  transform: scale(1.1);
  color: var(--black);
}
#cart-item-price {
  font-size: 0.8rem;
}



section>.container>.row>h1{
  width: 100%;
}

/* ARTICLES */

.articles>.card,
.articles>.card>.img-container{
  border-radius: 15px;
}

#pizzas-container .articles{
  max-height: 25vh !important;
}

#pates-container .articles,
#desserts-container .articles{
  max-height: 23vh !important;
}

#boissons-container .articles{
  max-height: 28vh !important;
}


.card{
  height:100%;
}

.img-container {
  height:100%;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.store-img {
  height:100%;
  object-fit: cover;
  transition: all 1s ease-in-out;
}
.img-container:hover .store-img {
  transform: scale(1.05);
}

.description-item{
  position: absolute;
  top:0;
  left:0;
  z-index: 10;
  opacity: 0;
  text-align: center;
  height: 100%;
  width: 100%;
  background:rgba(255, 255, 255, 0.75);
  color:black;
  transition: all 1s ease-in-out;
}

.description-item span{
  position: absolute;
  top:50%;
  left:0;
  transform: translateY(-50%);
  font-size: 1.3em;
  font-weight: 500;
}

.img-container:hover .description-item {
  opacity: 1;
}

.spans{
  position: absolute;
  display: flex;
  justify-content: space-around;
  transition: all 1s ease-in-out;
  transform: translateY(130%);
  bottom:.2rem;
  z-index: 11;
}

.fa-shopping-cart{
  font-size: 0.9em;
}

/* A PROPOS */


#about>.container{
  min-height: 85vh;
}

.p-about{
  margin-bottom: 60%;
}

.logo-container{
  position: relative;
  object-fit: contain;
}
.logo-container img{
  position: absolute;
  top:50%;
  transform: translateY(-50%);
  width: 100%;
}


/* PIZZAS  */
.spans .addItemIcon {
  position: relative;
  bottom: 0;
  min-width: 90px;
  padding: .1rem .6rem;
  background: var(--altColor);
  border-radius: 5px;
  transition: all .6s ease-in-out;
}

/* AUTRES ARTICLES */
.img-container>.addItemIcon {
  position: absolute;
  left: 50%;
  bottom: 0.2rem;
  margin: 0 auto;
  min-width: 5rem;
  padding: 0 .8rem;
  background: var(--altColor);
  border-radius: 10px;
  transition: all .6s ease-in-out;
  transform: translate(-50%, 130%);
  z-index: 11;
}

.img-container:hover .spans,
.img-container:hover .addItemIcon {
  transform: translateY(0);
}

.img-container:hover>.addItemIcon {
  transform: translateX(-50%);
}
.addItemIcon:hover {
  color: var(--white);
  background: var(--accentColor);
}
/*FIN ARTICLES */

.show {
  display: block;
}

/* CONTACT */
#horaires{
  border-radius: 20px;
  background: var(--white);
}

#contact>.container{
  position: relative;
}

#contact>.container:after{
  content:'';
  position: absolute;
  top:50%;
  left:50%;
  transform: translate(-50%, -50%);
  width: 0px;
  height: 80%;
  border:1px solid var(--accentColor);
}





/* ============================================ MEDIA QUERIES */


@media screen and (max-width: 991px) {
  html{
    font-size: 0.85rem;
  }

  .cart-info {
    position: fixed;
    top:5rem;
    right:20px;
    border: 0.1rem solid var(--black);
    color: var(--black);
    border-radius: 25px;
    padding: 0.4rem 0.6rem;
  }

  .cart-info__icon{
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  html{
    font-size: 0.6rem;
  }
  #contact>.container:after{
    display:none;
  }
}