:root {
  --primary-color         : #d2c62f;
  --primary-lighter-color : #ded67b;
  --gray                  : #c1c1c1;
  --border-radius-lg      : 30px;
  --square-sm             : 20px;
  --square-lg             : 40px;
}

/*****
  Modals.
*****/
.ShowModal {
  position   : absolute;
  right      : 20px;
  top        : 50%;
  transform  : translateY(-50%);
  cursor     : pointer;
  transition : color 300ms;
}
  .ShowModal:hover {
    color : var(--primary-color);
  }

.MenuModal {
  position      : absolute;
  top           : 1rem;
  left          : 0;
  width         : 100%;
  border-radius : var(--border-radius-lg);
  box-shadow    : -6px -2px 19px 1px rgba(0,0,0,0.3);
  z-index       : -1;
  opacity       : 0;
  transition    : 300ms;
}

  .MenuModal.show {
    z-index : 99;
    opacity : 1;
    top     : 0;
  }

  .MenuModal .Header {
    background              : black;
    border-top-right-radius : var(--border-radius-lg);
    border-top-left-radius  : var(--border-radius-lg);
    font-weight             : bold;
    padding                 : 5px 10px;
	  color: white;
  }

    .MenuModal .Header .CloseButton {
      position : absolute;
      right    : var(--square-sm);
      top      : 7px;
      color    : black;
      width    : var(--square-sm);
      height   : var(--square-sm);
      cursor   : pointer;
	    color    : white;
    }

  .MenuModal .Content, .MenuModal .Footer {
    background : white;
  }

  .MenuModal .Content {
    padding    : 20px 10% 10px;
  }

  .MenuModal .Footer {
    border-bottom-right-radius : var(--border-radius-lg);
    border-bottom-left-radius  : var(--border-radius-lg);
    padding  				           : 0px 10% 20px;
  }

    .MenuModal .Footer img {
      height : var(--border-radius-lg);
      width  : var(--border-radius-lg);
    }


/*****
  Product quantity selector.
*****/


  .QuantityWrapper [data-qty-action],.simple-product.single-product .related.products .QuantityWrapper [data-qty-action]  {
    background : none;
    color      : #000000;
    width      : var(--square-lg);
    height     : var(--square-lg);
    padding    : 0;
    font-size  : 2rem;
    margin     : 0;
    transition : background 300ms;
  }

    .single-product .QuantityWrapper [data-qty-action]{
      width      : 48px;
      height     : 48px;
    }

    .QuantityWrapper [data-qty-action]:hover {
      color      : white;
      background : black !important;
    }

    .QuantityWrapper [data-qty-action]:focus {
      outline      : none;
      border-width : 2px;
    }

  .QuantityWrapper .Qty,.simple-product .related.products .QuantityWrapper .Qty  {
    color         : black !important;
    box-shadow    : none;
    border        : 1px solid var(--primary-color) !important;
    border-radius : 9999px;
    height        : var(--square-lg) !important;
    width         : var(--square-lg) !important;
    min-width	    : unset !important;
    padding       : 0 !important;
    margin        : 0 10px !important;
    transition    : background 100ms;
  }

  .single-product .QuantityWrapper .Qty {
	  height        : 48px !important;
    width         : 48px !important;
	}


  .Summary .QuantityWrapper .Qty,
  .Summary .QuantityWrapper [data-qty-action] {
    color         : black !important;
  }

  .Summary .QuantityWrapper [data-qty-action]:hover {
    background    : black !important;
    color         : white !important;
  }

.woocommerce-cart-form .QuantityWrapper {
  justify-content : flex-end !important;
}

.single-product .related.products form.cart {
  flex-direction  : column;
}


/*****
  Related products' caracteristics.
*****/
.TypeOfFood {
  position        : absolute;
  right           : 0;
  z-index         : 1;
  top             : var(--border-radius-lg);
  padding         : 10px 0;
  display         : flex;
  flex-direction  : column;
  align-items     : flex-end;
  text-align      : right;
  font-size       : .9em;
}
  .TypeOfFood .FoodTypeTag {
    background    : var(--primary-color);
    box-shadow    : 7px 6px 7px -5px #0000004f;
    line-height   : 1rem;
    margin-bottom : 7px;
    padding       : 7px;
    border-bottom : 1px solid var(--primary-lighter-color);
    border-left   : 1px solid var(--primary-lighter-color);
  }


/*****
  WC Cart.
*****/
.CartAlert {
  padding    : 20px !important;
  text-align : center;
}
  .CartAlert.danger {
    background       : transparent !important;
    background-size  : 141.42px 141.42px !important;
   /* background-image : linear-gradient( 135deg,
      rgb(255, 0, 0, .2) 25%,
      #ffffff 25%,
      #ffffff 50%,
      rgb(255, 0, 0, .2) 50%,
      rgb(255, 0, 0, .2) 75%,
      #ffffff 75%,
      #ffffff 100%
    ) !important;*/
  }
  .CartAlert.success {
    background       : transparent !important;
    background-size  : 141.42px 141.42px !important;
    background-image : linear-gradient( 135deg,
      rgb(210, 198, 47, .2) 25%,
      #ffffff 25%,
      #ffffff 50%,
      rgb(210, 198, 47, .2) 50%,
      rgb(210, 198, 47, .2) 75%,
      #ffffff 75%,
      #ffffff 100%
    ) !important;
  }
  .CartAlert h4 {
    margin : 0 0 10px 0 !important;
  }
  .CartAlert .amount {
    font-weight : bold !important;
  }

input#coupon_code::placeholder {
  color : var(--gray);
  font-size: 1.2rem;
}

.AddMoreDishes {
  margin         : -1rem 0 1rem 0;
  display        : flex;
  justify-content: flex-end;
}
  .AddMoreDishes a {
    display    : flex;
    align-items: center;
    margin-left: auto;
    transition : 300ms color, 300ms fill;
  }
    .AddMoreDishes a:hover {
      text-decoration: none;
      color          : var(--primary-color);
      fill           : var(--primary-color);
    }

/*****
  Helpers
*****/
.center-x-y {
  display         : flex;
  justify-content : center;
  align-items     : center;
}

.center-x {
  display         : flex;
  justify-content : center;
}

.center-y {
  display         : flex;
  align-items     : center;
}

.justify-end {
  justify-content : flex-end;
}

.bg-white {
  background      : white !important;
}

.text-primary {
  color           : var(--primary-color) !important;
}

.bold {
  font-weight     : bold !important;
}


/*****
  Paycomet
*****/
#ifr-paytpv-container-acount, #paytpv_iframe {
  width      : 100% !important;
  min-height : 500px;
}
#storingStep.box, #storingStepUser.box {
  border-radius : 0 !important;
  padding       : 1rem !important;
}


/*****
  Fixes for styles.css
*****/
.woocommerce-content .woocommerce-message.alert_success {
  background : rgba( 255, 255, 255, .3 ) !important ;
}


.menu-simple .box-dia .dia,
.menu-doble .box-menu .title {
  border-top-right-radius : var(--border-radius-lg);
  border-top-left-radius  : var(--border-radius-lg);
}

.menu-simple .box-dia,
.menu-doble .box-menu {
  overflow : unset;
}

.menu-doble .plato:last-of-type,
.menu-simple .box-dia .plato:last-of-type {
  border-bottom : none;
}

@media only screen and ( max-width: 767px ) {
  .menu-simple .box-dia,
  .menu-doble .box-menu {
    width: 100%;
  }

  .sections_group {
    clear: none;
  }
}

.cart .woocommerce .woocommerce-cart-form {
  flex-wrap : wrap;
}

@media only screen and ( max-width: 959px ) {
  .cart .woocommerce .list-cart {
    width : 100% !important;
  }

  .cart .woocommerce .cart-collaterals {
    width        : 100% !important;
    padding-left : 0 !important;
    padding-top  : 30px;
  }
}





.woocommerce-ResetPassword.lost_reset_password p {
  padding: 0;
}
