@import "_gr-normalize.css";
@import "_gr-fonts.css";
@import "_gr-grid.css";
@import "_gr-icons.css";
@import "_gr-btn.css";
@import "_gr-form.css";
@import "_gr-popup.css";


/*------------------------------------------- GENERAL*/
.getresto-mode {
  min-height: 100vh;
  font: 15px/1.2 "Inter-Regular", sans-serif;
  font-weight: normal !important; 
  font-style: normal !important; 
  color: #191D25;
  -webkit-text-size-adjust: 100%;
  background: #ffffff;
}

.getresto-mode h1, .getresto-mode .h1 {
  font-size: 16px;
  font-family: "Inter-Bold", sans-serif;
}
.getresto-mode h2, .getresto-mode .h2 {
  font-size: 28px;
  font-family: "Favorit-Bold", sans-serif;
}
.getresto-mode h3, .getresto-mode .h3 {
  font-size: 22px;
  font-family: "Favorit-Bold", sans-serif;  
}
/* .getresto-mode h4, .getresto-mode .h4 {
  font-size: 20px;
  font-family: "Favorit-Bold", sans-serif;
} */
.getresto-mode h1:first-letter, .getresto-mode .h1:first-letter,
.getresto-mode h2:first-letter, .getresto-mode .h2:first-letter,
.getresto-mode h3:first-letter, .getresto-mode .h3:first-letter,
.getresto-mode h4:first-letter, .getresto-mode .h4:first-letter {
  text-transform: uppercase;
}

.getresto-mode .txt-black {
  color: #191D25;
}
.getresto-mode .txt-grey {
  color: #555B66;
}
.getresto-mode .txt-orange {
  color: #FF7E14;
}

.getresto-mode .txt-xs {
  font-size: 11px;
}
.getresto-mode .txt-sm {
  font-size: 13px;
}
.getresto-mode .txt-md {
  font-size: 16px;
}
.getresto-mode .txt-lg {
  font-size: 20px;
}

.getresto-mode .txt-uppercase {
  text-transform: uppercase;
}



.gr-menu-heading-note {
  font-size: 13px;
  font-family: "Inter-Bold", sans-serif;
  color: #3F0231;
}
.gr-link {
  font-size: 15px;
  font-family: "Inter-Medium", sans-serif;
  color: #3F0231;
  text-decoration: none;
  position: relative;
}
.gr-link.has-icon {
  padding-left: 40px;
}
.gr-link.has-icon:before {
  content: "+";
  font-size: 20px;
  line-height: 1;
  position: absolute;
  top: -2px;
  left: 6px;
}


/* page heading */
.gr-page-heading {
  height: 65px;
  width: 100%;
  padding: 20px 50px;
  display: flex;
  align-items: center;
  position: relative;
}
.gr-page-heading.grey {
  border-bottom: 1px solid #d4d4d4;
  background-color: #fafafa;
}
.gr-page-heading .gr-icon-back-arrow,
.gr-page-heading .gr-icon-cart,
.gr-page-heading .gr-icon-reply {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.gr-page-heading .gr-icon-back-arrow {  
  left: 0;  
}
.gr-page-heading .gr-icon-reply {
  right: 5px;
}
.gr-page-heading .gr-icon-cart {
  right: 10px;
}

.gr-cart-amount {
  position: absolute;
  top: -3px;
  right: -10px;
  min-width: 24px;
  height: 24px;
  font-size: 12px;
  line-height: 24px;
  color: #ffffff;
  border-radius: 50%;
  background: #3F0231;
}


.gr-product-price-holder {
  position: relative;
}
.gr-product-price {
  font-size: 15px;
  color: #3F0231;
  margin-right: 10px;
  white-space: nowrap;
}
.gr-product-price-crossed {
  font-size: 12px;
  text-decoration: line-through;
  color: #b9b9b9;
}

/*------------------------------------------- MENU PAGE*/
/* menu nav */
.gr-menu-sticky-bar {  
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 160px;
  padding: 15px 0;
  text-align: center;
  border-bottom: 1px solid #d4d4d4;
  background-color: #fafafa;
  margin-bottom: 20px;
  z-index: 1;
}
.gr-menu-sticky-bar .gr-page-heading {
  height: 87px;
}
.gr-menu-nav {
  display: flex;
  align-items: center;
  padding: 10px 0 10px 15px;
  overflow-x: auto;
  position: relative;
  z-index: 1;
}
.gr-menu-nav-item {
  padding: 5px 15px;
  color: #191D25;
  text-decoration: none;
  text-transform: capitalize;
  font-size: 15px;
  font-weight: 500;
  font-family: "Inter-Medium", sans-serif;
  margin-right: 12px;
  white-space: nowrap;
}
.gr-menu-nav-item.active {
  color: #ffffff;
  background: #3F0231;
  border-radius: 30px;
}

/* menu products list*/
.gr-menu-content {
  padding: 210px 0 100px;
}
.gr-menu-content h3, .gr-menu-content .h3 {
  color: #3F0231;
}
.gr-menu-product {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  border-bottom: 1px solid #dedede;
  padding: 0 0 20px;
  margin-bottom: 15px;
}
.gr-menu-product a:not(.btn) {
  color: #191D25;
  text-decoration: none;
}
.gr-menu-product-inner {
  width: calc(100% - 90px);
  padding-right: 10px;
}
.gr-menu-product-list {
  list-style: none;
  margin-bottom: 40px;
}
.gr-menu-product-name {
  font-size: 16px;
  font-family: "Inter-Medium", sans-serif;
  margin-bottom: 5px;
}
.gr-menu-product-dscr {
  font-size: 14px;
  color: #555B66;
  margin-bottom: 10px;
}
.gr-menu-product-photo {
  width: 90px;
  height: 90px;
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
  border-radius: 4px;
  background: url("../images/gallery.svg") no-repeat #cccccc 50% 50%  / 20px auto;
}
.gr-menu-product-photo .gr-img {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.gr-menu-product-photo-number {
  position: absolute;
  top: 0;
  left: 0;
  padding: 4px 8px;
  font-size: 14px;  
  color: #ffffff;
  background: #FF7E14;
  border-radius: 4px 0px 0px 0px;
}

/* menu floating cart*/
.gr-floating-cart {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 75px;
  padding: 15px 80px;
  font-size: 18px;
  font-family: "Inter-Bold", sans-serif;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  background: #3F0231;
  z-index: 1;
}
.gr-floating-cart .gr-btn-price {
  font-size: 15px;
  margin-top: 4px;
}

/*------------------------------------------- PRODUCT DETAILS PAGE*/
.gr-product-dt-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.gr-product-dt-content {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1 0 auto;
}
.gr-product-dt-photo {
  width: 100%;
  height: 200px;
  margin-bottom: 20px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}
.gr-product-dt-dscr {
  color: #555B66;
  margin-bottom: 10px;
}
.gr-product-dt-bottom {
  text-align: center;
  padding: 20px 0 30px;
}
.gr-product-dt-bottom .gr-btn-primary {
  margin-bottom: 15px;
}

.gr-quantity-controls-holder {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 40px;
}
.gr-quantity-controls-field {
  width: 60px;
  padding: 0 5px;
  font: 22px/1.2 "Inter-Regular", sans-serif;
  color: #191D25;
  text-align: center;
  border: none;
}
.gr-quantity-control {
  width: 58px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #191D25;
  text-decoration: none;
  border-radius: 50%;
  border: 1px solid #E9E9E9;
}
.gr-quantity-control.disabled {
  opacity: 0.7;
  color: #a9a9a9;
  pointer-events: none;
}

.gr-accordeon-heading {
  position: relative;
  font-size: 20px;
  padding: 12px 0;
  border-bottom: 1px solid #e9e9e9;
}
.gr-accordeon-heading:after {
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  top: 19px;
  right: 10px;
  background: url("../images/chevron.svg") no-repeat 50% 50% / contain;
}
.gr-accordeon-content {
  display: none;
}
.gr-accordeon-content:after {
  content: "";
  display: block;
  width: calc(100% + 30px);
  height: 30px;
  margin: -1px -15px 0;
  border-top: 1px solid #E9E9E9;
  border-bottom: 1px solid #E9E9E9;
  background: #F2F2F2;
}
.gr-accordeon-item {
  margin-bottom: 20px;
}
.gr-accordeon-item.active .gr-accordeon-heading:after {
  transform: rotate(180deg);
}
.gr-accordeon-item.active .gr-accordeon-content {
  display: block;
}
.gr-accordeon-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
  border-bottom: 1px solid #e9e9e9;
}
.gr-accordeon-inner .gr-product-price {
  color: #555B66;
  margin: 0 0 0 15px;
}


/*------------------------------------------- PRODUCT NUTRITIONS PAGE*/
.gr-fake-popup {
  width: 100%;
  min-height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  overflow-y: auto;
}
.gr-fake-popup:after {
  content: "";
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  pointer-events: none;
}
.gr-fake-popup-box {
  min-height: 100vh;
  margin-top: 260px;
  padding: 50px 30px;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  background: #ffffff;
  position: relative;
  z-index: 1;
}
.gr-nutrition-item {
  display: flex;
  justify-content: space-between;
  padding: 10px 5px;
  border-bottom: 1px solid #e9e9e9;
}
.gr-nutrition-item:last-child {
  border-bottom: none;
}
.gr-nutrition-item span {
  width: 50%;
}


/*------------------------------------------- CART PAGE*/
.gr-cart-map {
  height: 200px;
  width: 100%;
}
.gr-cart-map #map {
  height: 100%;
}
.gr-cart-page .gr-page-heading {
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
}
.gr-cart-content {
  padding: 20px 0;
  box-shadow: -2px -2px 4px rgba(0, 0, 0, 0.16);
  background: #ffffff;
}
.gr-cart-address {
  color: #555B66;
  padding-bottom: 30px;
  margin-bottom: 10px;
  border-bottom: 1px solid #e9e9e9;
}
.gr-cart-time {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-bottom: 1px solid #e9e9e9;
}
.gr-cart-order-list {
  margin-bottom: 20px;
}
.gr-cart-order-item {
  display: flex;
  justify-content: space-between;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #e9e9e9;
}
.gr-cart-order-item:last-child {
  border-bottom: none;
}
.gr-cart-order-item .gr-product-price {
  color: #555B66;
  margin: 0;
}
.gr-cart-order-tl {
  display: block;
  font-size: 16px;
  color: #191D25;
  margin-bottom: 5px;
  position: relative;
}
.gr-cart-order-tl span {
  margin-right: 8px;
}
.gr-cart-order-tl:after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url("../images/edit.svg") no-repeat 100% 0 / 16px auto;
}
.gr-cart-order-quantity {
  font-size: 16px;
  color: #3F0231;
  padding: 0 25px 0 10px;
}
.gr-cart-order-dt {
  display: none;
}
.gr-cart-order-dt.active {
  display: block;
}
.gr-cart-order-dt-col {
  width: 48%;
}
.gr-cart-order-link {
  font-size: 13px;
  color: #940172;
}
.gr-cart-payment-method {
  display: block;
  height: 75px;
  padding: 10px 30px 10px 10px;
  color: #191D25;
  border-radius: 4px;
  background: #F8F7F7;
  position: relative;
  margin-bottom: 10px;
}
.gr-cart-payment-method:after {
  content: "";
  width: 15px;
  height: 15px;
  background: url("../images/arrow.svg") no-repeat center center / contain;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  transform: rotate(180deg);
  right: 10px;
}
.gr-cart-payment-method-tl {
  font-size: 11px;
  text-transform: uppercase;
  color: #90949C;
  margin-bottom: 15px;
}
.gr-cart-payment-method .txt-md {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/*------------------------------------------- PREPARING PAGE*/
.gr-preparing-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: #ffffff;
  background: url("../images/wave.png") #410941 no-repeat 50% 50% / 100% auto;
}
.gr-preparing-page-content {
  text-align: center;
}
.gr-preparing-page .gr-icon-back-arrow {
  background-image: url("../images/arrow-white.svg");
}
.gr-preparing-page-content .gr-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.gr-preparing-tl {
  font-size: 32px;
  font-family: "Favorit-Bold", sans-serif;
  margin-bottom: 20px;
}
.gr-preparing-time {
  font-size: 52px;
}
.gr-preparing-loader {
  padding: 20px 30px;
  font-size: 13px;
  color: #FF7E14;
}


/*------------------------------------------- PAYMENT PAGE*/
.gr-payment-page .gr-page-heading {
  border-bottom: 1px solid #d4d4d4;
  background-color: #fafafa;
}
.gr-credit-card {
  height: 50px;
  padding: 10px 15px;
  font-size: 16px;
  color: #191D25;
  border-radius: 4px;
  background-color: #f7f7f7;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  text-decoration: none;
}
.gr-credit-card.selected {
  background-image: url("../images/check-green.svg");
  background-repeat: no-repeat;
  background-position: 95% 50%;
}
.gr-credit-card-logo {
  margin-right: 10px;
}




/*------------------------------------------- DELIVERY DETAILS PAGE*/
.gr-delivery-dt-page,
.gr-choice-page,
.gr-new-address-page,
.gr-add-address-page,
.gr-name-address-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.gr-delivery-dt-page .gr-page-heading {
  border-bottom: 1px solid #d4d4d4;
  background-color: #fafafa;
}
.gr-delivery-dt-content {
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1 0 auto;
}
.gr-delivery-dt-inner {
  margin-top: -1px;
  margin-bottom: 30px;
  border-top: 1px solid #d4d4d4;
  border-bottom: 1px solid #d4d4d4;
  background: #ffffff;
}
.gr-delivery-dt-item {
  display: flex;  
  align-items: center;
  position: relative;
  padding: 18px 0 18px 40px;
  font-size: 16px;
  border-bottom: 1px solid #d4d4d4;
}
.gr-delivery-dt-item .gr-icon {
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
}
.gr-delivery-dt-item:last-child {
  border-bottom: none;
}
.gr-delivery-dt-item .gr-radiobox {
  width: 100%;
}
.gr-delivery-dt-item .gr-radiobox input[type=radio] + label {
  display: flex;
  justify-content: space-between;
}
.gr-delivery-dt-map {
  height: 450px;
  margin-bottom: -70px;
}
.gr-delivery-dt-map #map {
  height: 100%;
}
.gr-fee-note {
  position: absolute;
  top: 16px;
  right: 25px;
  padding: 4px 8px;
  font-size: 12px;
  color: #ffffff;
  border-radius: 4px;
  background: #FF7E14;
}


.gr-datepicker {
  height: 50px;
  padding: 10px 15px 10px 5px;
  font-size: 18px;
  color: #191D25;
  border-radius: 4px;
  background-color: #f7f7f7;
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.gr-datepicker:after {
  content: "";
  width: 15px;
  height: 15px;
  background: url("../images/arrow.svg") no-repeat center center / contain;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  transform: rotate(-90deg);
  right: 10px;
}
.gr-datepicker.active:after {
  transform: rotate(90deg);
}
.gr-datepicker .gr-icon {
  margin-right: 15px;
}
.gr-warning-tooltip {
  font-size: 15px;
  color: #ffffff;
  padding: 5px 15px;
  background: #191D25;
  border-radius: 4px;
  max-width: 200px;
  position: absolute;
  top: 100%;
  left: 30px;
  z-index: 1;
}
.gr-warning-tooltip:before {
  content: "";
  position: absolute;
  top: -10px;
  left: 40px;
  border: 5px solid transparent;
  border-bottom: 5px solid #191D25;
}
.gr-warning-tooltip a {
  color: #ffffff;
  text-decoration: underline;
}



/*------------------------------------------- DELIVERY & PICKUP tabs PAGE*/
.gr-choice-page .gr-delivery-dt-content {
  background-color: #fafafa;
}
.gr-tab-heading {
  display: flex;
  align-items: center;
  width: calc(100% + 100px);
  margin: 30px -50px -2px;
}
.gr-tab-heading-tl {
  width: 50%;
  padding: 10px 5px;
  font-size: 18px;
  font-family: "Favorit-Bold", sans-serif;
  color: #555B66;
  text-align: center;
}
.gr-tab-heading-tl.active {
  color: #3F0231;
  border-bottom: 2px solid #3F0231;
}
.gr-tab-content {
  display: none;
}
.gr-tab-content.active {
  display: block;
}