/* Variables */
/* Mixins */
/* Helpers */
.no-spacing {
  margin: 0;
  padding: 0;
}

@keyframes flipdown {
  0% {
    opacity: 0;
    transform-origin: top center;
    transform: rotateX(-90deg);
  }
  5% {
    opacity: 1;
  }
  80% {
    transform: rotateX(8deg);
  }
  83% {
    transform: rotateX(6deg);
  }
  92% {
    transform: rotateX(-3deg);
  }
  100% {
    transform-origin: top center;
    transform: rotateX(0deg);
  }
}
.h1, .page__title, .product__base-price, .product__name {
  font-family: "Oswald", sans-serif;
  font-size: 26px;
  font-weight: 500;
  text-transform: uppercase;
}

.h2, .floor-plan .table, .booking-option-title, .product__params-title, .main-nav a {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
}

.h3, .floor-plan .object {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

*, *::before, *::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  padding-top: 200px;
  background: rgb(242.25, 242.25, 242.25);
  font-family: "Lato", sans-serif;
  font-size: 14px;
  line-height: 1.7;
  font-weight: 400;
  color: #333;
}

.container {
  max-width: 700px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Buttons */
.btn-primary {
  background: #333;
  color: #fff;
  border-color: #333;
  border-radius: 4px;
  transition: all 0.3s;
  display: inline-block;
  border-width: 1px;
  border-style: solid;
  padding: 12px;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
}
.btn-primary:hover {
  background: rgb(58.65, 58.65, 58.65);
}
.btn-primary.disabled, .btn-primary[disabled] {
  background: #333333;
  border-color: #333333;
  cursor: not-allowed;
}

.btn-secondary {
  background: #ff6b6b;
  color: #fff;
  border-color: #ff6b6b;
  border-radius: 4px;
  transition: all 0.3s;
  display: inline-block;
  border-width: 1px;
  border-style: solid;
  padding: 12px;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
}
.btn-secondary:hover {
  background: rgb(255, 122.3, 122.3);
}
.btn-secondary.disabled, .btn-secondary[disabled] {
  background: #b5b5b5;
  border-color: #b5b5b5;
  cursor: not-allowed;
}

.btn-quantity {
  background: #333;
  color: #fff;
  border-color: #333;
  border-radius: 4px;
  transition: all 0.3s;
  display: inline-block;
  border-width: 1px;
  border-style: solid;
  padding: 12px;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  vertical-align: top;
  padding: 0;
  width: 30px;
  height: 30px;
  line-height: 26px;
  font-size: 10px;
}
.btn-quantity:hover {
  background: rgb(58.65, 58.65, 58.65);
}
.btn-quantity.disabled, .btn-quantity[disabled] {
  background: #333333;
  border-color: #333333;
  cursor: not-allowed;
}
.btn-quantity--lt {
  background: #fff;
  color: #ff6b6b;
  border-color: #fff;
  border-radius: 4px;
  transition: all 0.3s;
  display: inline-block;
  border-width: 1px;
  border-style: solid;
  padding: 12px;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  padding: 0;
  width: 24px;
  height: 18px;
  line-height: 16px;
  font-size: 10px;
  opacity: 0;
}
.btn-quantity--lt:hover {
  background: white;
}
.btn-quantity--lt.disabled, .btn-quantity--lt[disabled] {
  background: white;
  border-color: white;
  cursor: not-allowed;
}

/* Form elements */
input, select {
  border: 1px solid #333;
  border-radius: 4px;
  padding: 12px;
}
input.error, select.error {
  border-color: #ff6b6b;
}

.checkbox {
  display: block;
  position: relative;
  padding-left: 24px;
  margin-bottom: 12px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.checkbox label {
  cursor: pointer;
}
.checkbox input {
  position: absolute;
  opacity: 0;
  height: 0;
  width: 0;
  cursor: pointer;
}
.checkbox__checkmark {
  position: absolute;
  top: 4px;
  left: 0;
  height: 16px;
  width: 16px;
  border: 1px solid #333;
  border-radius: 4px;
}
.checkbox__checkmark:after {
  content: "";
  position: absolute;
  display: none;
  width: 9px;
  height: 5px;
  border-left: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(-45deg);
  top: 4px;
  left: 3px;
}
.checkbox:hover input ~ .checkbox__checkmark {
  content: none;
}
.checkbox input:checked ~ .checkbox__checkmark:after {
  display: block;
}
.checkbox.checkbox--round .checkbox__checkmark {
  border-radius: 50%;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 24px 0 96px 0;
  background: #333;
  color: #fff;
}
.header__wrapper {
  position: relative;
}

.logo {
  display: inline-block;
  line-height: 1;
}
.logo__title {
  margin: 0 0 12px 0;
  font-size: 48px;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  text-transform: uppercase;
}
.logo__title span {
  font-weight: 700;
}
.logo__subtitle {
  margin: 0;
  font-size: 18px;
  font-weight: 300;
  font-style: italic;
}

.main-nav {
  position: absolute;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  bottom: -96px;
}
.main-nav a {
  color: #ff6b6b;
  text-decoration: none;
  margin-right: 24px;
  text-align: center;
  padding: 12px 24px;
  background: rgb(38.25, 38.25, 38.25);
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.main-nav a.active {
  background: rgb(242.25, 242.25, 242.25);
}

.cart {
  position: absolute;
  width: 300px;
  right: 0;
  top: 12px;
  padding: 12px 18px;
  background: #fff;
  border-radius: 4px;
  color: #ff6b6b;
  font-size: 12px;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
  z-index: 9999;
}
.cart.active .cart__content {
  transform: translate(0, 0);
  max-height: 1000px;
  opacity: 1;
  padding: 18px 0 0 0;
}
.cart__summary {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  text-transform: uppercase;
  cursor: pointer;
}
.cart__icon {
  font-size: 24px;
}
.cart__total-number {
  background: #ff6b6b;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  line-height: 28px;
}
.cart__total-price {
  color: #333;
}
.cart__content {
  position: relative;
  overflow: hidden;
  transition: all 0.25s ease-in-out;
  max-height: 0;
  transform: translate(0, 50%);
  opacity: 0;
  animation: flipdown 0.5s ease both;
  color: #333;
}
.cart__order-summary li {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.cart__order-summary .widget-amount {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: space-between;
  margin: 0 12px 0 0;
}
.cart__order-summary .widget-amount input {
  margin: 0;
  width: 24px;
  height: 24px;
}
.cart__order-summary .widget-amount:hover .btn-quantity--lt {
  opacity: 1;
}
.cart__product {
  width: 170px;
}
.cart__product-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.cart__product-details li {
  display: block;
  margin: 0 0 3px 0;
  font-size: 10px;
  color: #999999;
  text-transform: lowercase;
  font-style: italic;
  line-height: 1.3;
  letter-spacing: 0.5px;
}
.cart__product-details-label {
  position: relative;
  padding: 0 6px 0 0;
  font-weight: 700;
}
.cart__product-details-label::after {
  position: absolute;
  content: ":";
}
.cart__action-buttons {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  font-size: 0;
}
.cart__action-buttons i {
  font-size: 14px;
}
.cart__action-buttons li {
  margin: 0 0 0 12px;
}
.cart__action-buttons a {
  color: #ff6b6b;
}
.cart__action-buttons a:hover {
  color: rgb(255, 122.3, 122.3);
}
.cart__order-price {
  margin: 12px 0 0 0;
  padding: 12px 0;
  list-style-type: none;
  border-top: 1px solid rgb(229.5, 229.5, 229.5);
}
.cart__order-price li {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
}
.cart__order-confirmation {
  border-top: 1px solid rgb(229.5, 229.5, 229.5);
  padding: 12px 0 0 0;
}
.cart__order-confirmation input, .cart__order-confirmation button {
  width: 100%;
  margin-bottom: 6px;
}

.product-list {
  padding: 36px 0;
}

.product {
  margin: 6px 0;
  padding: 72px 48px;
  background: #fff;
  border-bottom: 1px solid rgb(229.5, 229.5, 229.5);
  border-radius: 4px;
}
.product__header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
  cursor: pointer;
}
.product__name {
  position: relative;
}
.product__icon {
  position: absolute;
  color: #ff6b6b;
  right: -60px;
  top: 12px;
  font-size: 18px;
  transition: all 0.3s;
}
.product__base-price {
  font-weight: 300;
}
.product__description {
  color: rgb(76.5, 76.5, 76.5);
}
.product__wrapper {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  transition: all 0.25s ease-in-out;
  max-height: 0;
  transform: translate(0, 50%);
  animation: flipdown 0.5s ease both;
}
.product__params {
  margin: 0 0 36px 0;
  padding: 0;
  list-style-type: none;
}
.product__params-title {
  margin: 24px 0;
}
.product__order {
  width: calc(100% - 400px);
  opacity: 0;
  transition: opacity 200ms;
}
.product__total-price {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
}
.product__images {
  position: relative;
  width: 350px;
  height: 350px;
  opacity: 0;
  transition: opacity 200ms;
}
.product__images.small {
  width: 220px;
  height: 220px;
}
.product__images > img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  height: auto;
  opacity: 0;
  transition: opacity 500ms;
}
.product__images > img.active {
  opacity: 1;
}
.product.active .product__wrapper {
  transform: translate(0, 0);
  max-height: 1000px;
  opacity: 1;
}
.product.active .product__order, .product.active .product__images {
  opacity: 1;
}
.product.active .product__icon {
  transform: rotate(180deg);
}

.widget-amount input {
  width: 30px;
  height: 30px;
  text-align: center;
  margin: 0 6px;
  padding: 0;
}

#pages > * {
  display: none;
}
#pages > .active {
  display: block;
}

.booking-widget {
  transform: opacity 500ms;
}
.booking-widget.loading {
  opacity: 0.25;
}

.booking-wrapper {
  margin: 42px auto;
  padding: 72px 48px;
  background: #fff;
  border-bottom: 1px solid rgb(229.5, 229.5, 229.5);
  border-radius: 4px;
}

.booking-option-title {
  display: block;
  margin: 0 0 24px 0;
}
.booking-option-title > .widget-amount {
  margin: 24px 0 0 0;
}

.page__title {
  margin: 0 0 48px 0;
  text-align: center;
}

.time-picker {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  margin: 0 0 48px 0;
}

.hour-picker {
  position: relative;
  width: 50%;
}
.hour-picker .output {
  position: absolute;
  right: 0;
}

.rangeSlider {
  top: 12px;
  background: rgb(229.5, 229.5, 229.5);
  box-shadow: none;
  height: 12px;
}
.rangeSlider__handle {
  box-shadow: none;
  border: 0;
  transition: transform 100ms;
  transition-timing-function: cubic-bezier(0, 1, 0, 1);
}
.rangeSlider__handle::after {
  display: none;
}
.rangeSlider__handle__horizontal {
  width: 24px;
  height: 24px;
  top: -6px;
  background: #333;
}
.rangeSlider__fill {
  background: #78e08f;
  transition: width 100ms;
  transition-timing-function: cubic-bezier(0, 1, 0, 1);
  box-shadow: none;
}

.flatpickr-day.disabled {
  color: #cccccc;
}

.floor-plan {
  position: relative;
  width: 320px;
  height: 320px;
  border: 12px solid #333;
  margin: 48px auto;
  background: linear-gradient(to right, #e9dfc4 0%, #e9dfc4 1%, #ede3c8 2%, #ede3c8 24%, #ebddc3 25%, #e9dfc4 48%, #ebddc3 49%, #e6d8bd 52%, #e6d8bd 53%, #e9dbc0 54%, #e6d8bd 55%, #e6d8bd 56%, #e9dbc0 57%, #e6d8bd 58%, #e6d8bd 73%, #e9dbc0 74%, #e9dbc0 98%, #ebddc3 100%);
  background-size: 36px;
  background-repeat: repeat;
}
.floor-plan > * {
  position: absolute;
  text-align: center;
  vertical-align: center;
}
.floor-plan .object {
  background: #f7f1e3;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.2);
}
.floor-plan .entry {
  bottom: -24px;
  left: 50%;
  width: 100px;
  height: 18px;
  line-height: 17px;
  transform: translate(-50%, -50%);
  box-shadow: none;
  background: #ede3c8;
  border: 1px solid #333;
  border-width: 0 6px 0 6px;
}
.floor-plan .bar {
  left: 0;
  bottom: 50px;
  width: 100px;
  height: 50px;
  line-height: 50px;
}
.floor-plan .table {
  width: 70px;
  height: 70px;
  line-height: 70px;
  transform: rotate(45deg);
  transform-origin: 50% 50%;
  cursor: pointer;
}
.floor-plan .table--round {
  border-radius: 50%;
}
.floor-plan .table--round::after {
  border-radius: 50%;
}
.floor-plan .table.booked {
  cursor: not-allowed;
  color: #999999;
}
.floor-plan .table.booked::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #333;
  opacity: 0.4;
}
.floor-plan .selected {
  border: 2px solid #FF6347; /* Change this to the color of your choice */
  background-color: rgba(18, 151, 22, 0.1); /* Optional: Light background color */
}
.floor-plan [data-table="1"] {
  left: 40px;
  top: 40px;
}
.floor-plan [data-table="2"] {
  right: 25px;
  top: 25px;
  width: 100px;
  height: 100px;
  line-height: 100px;
}
.floor-plan [data-table="3"] {
  right: 40px;
  top: 180px;
}

.booking-options {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  margin: 48px auto;
}

/* Top Buttons */
.top-buttons {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

@media (min-width: 640px) {
  .top-buttons {
    grid-template-columns: 1fr 1fr;
  }
}
.button {
  margin: 40px 0px 0px 0px;
  width: 100%;
  height: 125px;
  position: relative;
}

.button-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
}

.text {
  color: white;
  font-size: 1.25rem;
  font-weight: bold;
}

.texttable {
  color: white;
  font-size: 1.25rem;
  font-weight: bold;
}

/* Initially, the extra-text is hidden */
.overlay .extra-text {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  bottom: -15px; /* Place below the original text */
  color: white;
  font-size: 0.8rem;
  font-weight: bold;
  transition: opacity 0.2s ease-in-out, visibility 0s 0.3s; /* Transition on opacity */
}

/* Initially, the "ORDER ONLINE" text stays in place */
/* On hover, move the "ORDER ONLINE" text up and reveal the extra-text */
.button:hover .overlay .text {
  transform: translateY(-20px); /* Move the text up */
}

.button:hover .overlay .extra-text {
  opacity: 1; /* Make the extra text visible */
  visibility: visible;
  bottom: 15px; /* Move it up to its final position */
  transition: opacity 0.1s ease-in-out, visibility 0s 0s, bottom 0.3s ease-in-out; /* Transition the position */
}

/* Opening Hours */
.opening-hours {
  width: 100%;
  height: 125px;
  background-color: #f56565; /* red */
  color: white;
  text-align: center;
  padding: 16px;
  margin: 10px 0px 40px 0px;
}

.opening-hours h2 {
  font-size: 1.125rem;
  font-weight: bold;
}

.opening-hours p {
  font-size: 1rem;
}

/* Carousel Flickity */
.main-carousel {
  box-sizing: border-box;
  margin-bottom: 40px;
  background: #EEE;
}

.carousel-cell {
  width: 100%;
  height: 225px;
  border-radius: 5px;
  background: rgb(214, 218, 214);
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  margin: 40px 0px;
}

.carousel-cell img {
  width: 128px;
  height: 200px;
  margin: 8px;
}

.carousel-cell h3 {
  font-size: 1.125rem;
  font-weight: bold;
  margin: 8px;
}

.carousel-cell p {
  padding: auto;
  color: #4e535b; /* dark gray */
  margin: 8px;
}

.carousel-cell p:last-child {
  color: #718096; /* lighter gray */
}

/* Gallery */
.gallery {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 10px;
}

@media (min-width: 640px) {
  .gallery {
    grid-template-columns: repeat(3, 1fr);
  }
}
.gallery-item {
  position: relative;
}

.gallery-img {
  width: 100%;
  height: 250px;
  -o-object-fit: cover;
     object-fit: cover;
}

.heart {
  position: absolute;
  top: 10px;
  right: 10px;
  font-size: 24px;
  color: transparent;
  transition: color 0.3s ease;
}

.gallery-img.liked + .heart {
  color: rgb(238, 7, 49); /* Make the heart red when liked */
}

/* Instagram Link */
.instagram-link {
  text-align: left;
  margin: 15px 0px 15px 0px;
}

.instagram-link a {
  color: #e53e3e; /* red */
  text-decoration: none;
  font-size: 1.125rem;
}

/* Default like heart icon */

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zYXNzL3BhcnRpYWxzL19zZXR0aW5ncy5zY3NzIiwic3R5bGUuY3NzIiwiLi4vLi4vc3JjL3Nhc3MvcGFydGlhbHMvX3R5cG9ncmFwaHkuc2NzcyIsIi4uLy4uL3NyYy9zYXNzL3BhcnRpYWxzL19nbG9iYWwuc2NzcyIsIi4uLy4uL3NyYy9zYXNzL3BhcnRpYWxzL19lbGVtZW50cy5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvcGFydGlhbHMvX2hlYWRlci5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvcGFydGlhbHMvX2NhcnQuc2NzcyIsIi4uLy4uL3NyYy9zYXNzL3BhcnRpYWxzL19wcm9kdWN0LnNjc3MiLCIuLi8uLi9zcmMvc2Fzcy9wYXJ0aWFscy9fYm9va2luZy5zY3NzIiwiLi4vLi4vc3JjL3Nhc3MvcGFydGlhbHMvX2hvbWUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFBO0FBc0JBLFdBQUE7QUF5REEsWUFBQTtBQUVBO0VBQ0UsU0FBQTtFQUNBLFVBQUE7QUM3RUY7O0FEZ0ZBO0VBQ0U7SUFDRSxVQUFBO0lBQ0EsNEJBQUE7SUFDQSwwQkFBQTtFQzdFRjtFRGdGQTtJQUNFLFVBQUE7RUM5RUY7RURpRkE7SUFDRSx3QkFBQTtFQy9FRjtFRGtGQTtJQUNFLHdCQUFBO0VDaEZGO0VEbUZBO0lBQ0UseUJBQUE7RUNqRkY7RURvRkE7SUFDRSw0QkFBQTtJQUNBLHdCQUFBO0VDbEZGO0FBQ0Y7QUM5QkE7RUFDSSxpQ0ZRVTtFRVBWLGVBQUE7RUFDQSxnQkZXWTtFRVZaLHlCQUFBO0FEZ0NKOztBQzdCQTtFQUNFLGVBQUE7RUFDQSxnQkZNVTtFRUxWLHlCQUFBO0FEZ0NGOztBQzdCQTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0FEZ0NGOztBRWhEQTtFQUNFLHNCQUFBO0FGbURGOztBRWhEQTtFQUNFLFNBQUE7RUFDQSxrQkFBQTtFQUNBLHVDQUFBO0VBQ0EsK0JIRVU7RUdEVixlQUFBO0VBQ0EsZ0JBQUE7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 */