:root {
  --colorLink- : rgba(0,0,0,.7);
  --colorLinkHover-: rgba(0,0,0,.6);
  --backgroudTopBar-: #f8f9fa;
  --colorTopBar-: #495057;
  --borderGrid-: #dee2e6;
  --boxShadow-: rgba(0,0,0,0.1);
  --backgroungFooterService-: #f8f9fa;
  --backgroungFooterMenu-: #dee2e6;
  --backgroungFooterCopyright-: #343a40;
  --ColorFooterCopyright-: #dee2e6;
  --colorLinkNavbar-: #343a40;
  --backgroundCard-: #fff;
}

.topbar-link, 
.topbar-link:hover, 
.navbar-cart-product-link:hover, 
.navbar-icon-link:hover {
  text-decoration: none;
}

body {
  position: relative;
  min-height: 100vh;
}

.titleFooter{
  margin-bottom: 0.2rem;
  font-size: 1.2rem;
}

a {
  color: var(--colorLink-);
}

a:hover {
  color: var(--colorLinkHover-);
}

 /* Top bar */
.top-bar {
  color: var(--colorTopBar-);
  background: var(--backgroudTopBar-);
  padding: 1rem;
  font-weight: 300;
}

/* Nav bar */
@media (min-width: 992px) {
  .navbar:not(.navbar-cart) > div {
    margin-right: 88px;
  }
}

.navbar-cart-product {
  border-bottom: 1px solid #495057;
  padding-bottom: 0.5em;
  margin-bottom: 0.5em;
}

.navbar-cart-total {
  text-align: right;
  font-size: 1.3em;
  padding: .5em 0;
}

.nav-item .nav-link {
  text-transform: uppercase;
  font-size: .9em;
  font-weight: 300;
}

.navbar-brand {
  font-weight: 700;
}

.navbar-icon-link {
  color: var(--colorLinkNavbar-);
  margin: 0 .5em;
}

.navbar-cart-product-link {
  color: var(--colorLinkNavbar-);
  font-weight: bold;
}

/* misc */
  .dropdown-menu {
    box-shadow: 2px 2px 2px var(--boxShadow-),-1px -1px 2px var(--boxShadow-);
    border-radius: 0;
    border: none;
  }

.breadcrumb {
  background: transparent;
  text-transform: uppercase;
  font-size: .7em;
}

.text-sm {
  font-size: 0.78rem
}

.input-items {
  min-width: 40px;
}

/* produits */
.products-grid {
  border-top: 1px solid var(--borderGrid-);
  border-bottom: 1px solid var(--borderGrid-);
  margin-bottom: 2em;
  overflow: hidden;
  padding: 2em;
}

.product {
  text-align: center;
  background-color: var(--backgroundCard-);
}

.product-image figure, .product-image figure img {
  width: 100%;
  height: 100%;
}

.product-image figure{
  object-fit: cover;
}

.product {
  transition: all .6s
}

.product:hover {
  z-index: 1;
  box-shadow: 2px 2px 2px var(--boxShadow-),-1px -1px 2px var(--boxShadow-);
  transform: scale(1.1);
}

/* Cart */
.block-body {
  padding: 1.2rem 1.5rem;
}

.cart-item-img {
  max-width: 100px;
  margin-right: 1em;
}

.cart-header {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-weight: bold;
  padding: 1.2rem 2rem;
  background: #f8f9fa;
}

.order-summary-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #eee;
}

.button-panier {
  font-weight: bold;
}

/* Grille */
.item img {
  object-fit: cover;
  position: absolute;
  height: 100%;
}

.card {
  margin-bottom: 2rem;
}

/* Footer */
.main-footer{
 position: sticky;
 top: 100vh;
 right: 0;
 left: 0;
}

#footer-services {
  background-color: var(--backgroungFooterService-);
}

#footer-menu {
  background-color: var(--backgroungFooterMenu-);
}

#footer-copyright {
  background-color: var(--backgroungFooterCopyright-);
  color: var(--ColorFooterCopyright-);
}

.payment-icon {
  width: 2rem;
}

.service-column {
  display: flex;
  margin-bottom: .2rem;
}

.service-column i {
  font-size: 3em;
  width: 4rem;
  border-right: 1px solid #ccc;
  padding-right: 1rem;
  margin-right: 1rem;
}