@import url("https://fonts.googleapis.com/css2?family=DM+Sans:opsz@9..40&family=Forum&display=swap");

/* ROOT */
:root {
  /* COLORS */
  --L-GOLD: hsla(38, 61%, 73%, 0.77);
  --GOLD: hsl(38, 61%, 73%);
  --GREY: hsla(30, 3%, 34% 1);
  --SILVER: hsla(0, 0%, 65%, 1);
  --SM0KY-BLACK-1: hsla(40, 12%, 5%, 1);
  --SM0KY-BLACK-2: hsla(30, 8%, 5%, 1);
  --SM0KY-BLACK-3: hsla(0, 3%, 7%, 1);
  --WHITE: hsl(0, 0%, 100%);
  --EERIE-BLACK: hsla(180, 2%, 8%, 1);

  /* CIRCLE SIZES */
  --CIRCLE-NORMAL: 100px;
  --CIRCLE-L-NORMAL: 110px;

  /* FONT SIZE */
  --FS-S: 1.25rem;
  --FS-M: 1.35rem;
  --FS-DeskM: 1.7rem;
  --FS-MM: 2.1rem;
  --FS-L: 2.4rem;
  --FS-XL: 2.8rem;
  --FS-M-XL: 3.4rem;
  --FS-XXL: 3.9rem;

  /* FONT FAMILY*/
  --FF-FORUM: "Forum", cursive;
  --FF-DM_S: "DM Sans", sans-serif;

  /*  PADDING */
  --RES-PAD: 1.2rem 2.9rem;
  /*  --RES-PAD: 1.3rem 2.7vw; */

  /* GOLDEN BORDER */
  --G-BORDER: 2px solid var(--GOLD);
  --G-BORDER-SLIM: 1px inset var(--GOLD);
  --W-BORDER-SLIM: 2px solid var(--WHITE);

  /* HR */
  --HR: #cccccc64;
}

/* GENERAL STYLING */
*,
*::after,
*::before {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

html {
  font-size: 66.5%;
  scroll-behavior: smooth;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* ----custom scroll bar */
::-webkit-scrollbar {
  width: 7px;
}
z ::-webkit-scrollbar-track {
  background: var(--EERIE-BLACK);
}

::-webkit-scrollbar-thumb {
  background: var(--GOLD);
}

body {
  font-size: var(--FS-S);
  font-family: var(--FF-DM_S);
  color: var(--WHITE);
  background: var(--EERIE-BLACK);
}

img,
ion-icon,
textarea,
button,
input {
  display: block;
}

li {
  list-style: none;
}

a {
  text-decoration: none;
  color: inherit;
  /* display: block; */
}

button {
  background: none;
  border: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
}

input {
  background: none;
  border: none;
  outline: none;
}

.hide {
  opacity: 0;
}

/* PRELOADER */
.preloader {
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background: var(--GOLD);
  overflow: hidden;
  position: fixed;
  z-index: 10;
  height: 100vh;
  width: 100%;
  transition: 500ms ease;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.preloader > * {
  transition: 250ms ease;
}

.preloader.loaded > * {
  opacity: 0;
}

.preloader.loaded {
  transition-delay: 250ms;
  transform: translateY(110%);
}

.preloader-circle {
  width: var(--CIRCLE-L-NORMAL);
  height: var(--CIRCLE-L-NORMAL);
  border-radius: 50%;
  background-color: var(--GOLD);
  border: var(--WHITE) solid 2px;
  border-top: var(--SM0KY-BLACK-1) solid 2px;
  animation: rollingCircle 0.7s linear infinite;
}

.preloader-text {
  font-size: calc(2rem + 3vw);
  color: transparent;
  -webkit-text-stroke: 0.5px var(--EERIE-BLACK); /*Although the text-color is invisible, this property carves out the texts-from its invisibility */
  letter-spacing: 15px;
  text-transform: uppercase;
  font-family: var(--FF-DM_S);
  -webkit-text-fill-color: transparent;
  background-clip: text;
  -webkit-background-clip: text;
  animation: fadingText 2s ease infinite;
  background-size: 500%;
}

/* HERO PAGE------------------------------------------------------------ */
.landingPage {
  position: relative;
  /* top: -1000px; */
}

.heroPage {
  overflow: hidden;
  position: relative;
  height: 100vh;
  width: 100%;
}

.hero-home-page {
  position: relative;
  width: 100%;
  top: 0;
  left: 0;
}

.hero-home-page-page {
  position: absolute;
  width: 100%;
}

.heroPage-Img {
  /* position: absolute; */
  /* top: 0;
  left: 0; */
  width: 100%;
  height: 100vh;
  transition: animation 300ms ease;
  overflow: hidden;
}

.heroPage-Img img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transform: scale(1.15);
  animation: smooth 7s linear infinite;
}

.heroPage-Texts {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  padding: 2rem;
  text-align: center;
  gap: 1.3rem;
  overflow: hidden;
  transition: animation 300ms ease;
}

.heroTexts--heading {
  text-transform: uppercase;
  letter-spacing: 5px;
  color: var(--GOLD);
  font-size: var(--FS-S);
}

.heroTexts--heading::after {
  content: url("../images/separator.svg");
  display: block;
  width: 120px;
  margin-block-start: 15px;
  margin-inline: auto;
}

.heroTexts--heading-anim::after {
  animation: text 7s linear infinite;
}

.heroTexts-btn {
  margin-inline: auto;
}

.btnAnim {
  position: relative;
  width: 20rem;
  height: 50px;
  /* padding: var(--RES-PAD); */
  padding: 1.2rem 0.7rem;
  text-transform: uppercase;
  font-family: inherit;
  letter-spacing: 2px;
  border: var(--G-BORDER);
  color: var(--GOLD);
  font-size: var(--FS-S);
  overflow: hidden;
}

.btnAnim::after {
  position: absolute;
  content: "See Menu";
  left: 0;
  bottom: 10rem;
  border-bottom-left-radius: 70%;
  border-bottom-right-radius: 70%;
  color: var(--SM0KY-BLACK-2);
  background: var(--GOLD);
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: bottom 600ms ease;
  font-size: inherit;
  letter-spacing: inherit;
  font-family: inherit;
}

.btnAnim:is(:hover, :focus-visible)::after {
  /* bottom: 0; */
}

.btnA::after {
  bottom: 0;
}
/* left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); */

.heroTexts--cursiveTexts {
  font-family: var(--FF-FORUM);
  text-transform: capitalize;
  letter-spacing: 3px;
  padding-top: 2.5rem;
  font-size: var(--FS-MM);
}

.heroTexts--normTexts {
  letter-spacing: 1px;
}

.heroTexts--cursiveTexts-FS {
  font-size: var(--FS-L);
}

.text-anim {
  animation: text 7s linear infinite;
}
/* --------------------------------------------------------------------------- */

/* NAV BAR LINKS */
/* nav bar links heading */
.navBar-links {
  position: fixed;
  background-color: var(--SM0KY-BLACK-1);
  padding: 2rem 1.5rem;
  z-index: 2;
  width: 100%;
  height: 100vh;
  left: -1000px;
  transition: left 500ms ease-in-out;
}

.slidingNav {
  left: 0px;
}

.navBar-links_heading {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.navBar-links_heading--close-btn {
  align-self: flex-end;
  cursor: pointer;
}

.navBar-links_heading--close-btn ion-icon {
  border: var(--W-BORDER-SLIM);
  border-radius: 50%;
  padding: 0.32rem;
  font-size: var(--FS-MM);
}

.navBar-links_heading--logoImg {
  align-self: center;
}

/*NAV BAR LINKS*/
.navbar-link-item--ul {
  text-transform: uppercase;
  padding: 3rem 0.5rem;
  font-size: var(--FS-S);
}

.navbar-link-item::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  border: 1px solid var(--HR);
  margin-block: 7px;
}

.navbar-link-item--active a {
  color: var(--GOLD);
}

.navbar-link-item:not(:first-child) a {
  transition: color 0.3s ease;
}

.navbar-link-item:not(:first-child) a:hover,
.navbar-link-item:not(:first-child) a:focus {
  color: var(--GOLD);
}

/* ----------------------------NAVBAR FOOTING--------------------- */
.navBar-links_footing {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 2rem;
}

.navBar-links_footing_square {
  width: 15px;
  height: 15px;
  border: var(--G-BORDER-SLIM);
  transform: rotate(50deg);
  color: var(--GOLD);
}

.navBar-links_footing_heading {
  font-family: var(--FF-FORUM);
  font-size: var(--FS-MM);
}

.navBar-links_footing_texts {
  line-height: 2;
  font-size: var(--FS-M);
  color: var(--SILVER);
}

.navBar-links_footing_booking--phone {
  font-size: var(--FS-M) !important;
}

/* --------------------HOVER UNDERLINE---------------- */
.hover-underline {
  position: relative;
  max-width: max-content;
  letter-spacing: 2px;
}

.hover-underline::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
  border-block: 1px solid var(--GOLD);
  transform: scaleX(0.2);
  opacity: 0;
  transition: 600ms ease;
}

.hover-underline:is(:hover, :focus-visible)::after {
  transform: scaleX(1);
  opacity: 1;
}

/* LANDING PAGE TOP BAR */
.landingPage-topBar {
  position: relative;
  top: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}

.landingPage-topBar::after {
  content: "";
  position: absolute;
  height: 0.074rem;
  width: 100%;
  bottom: 0;
  background: var(--SILVER);
}

.navbar-link-square {
  width: 7px;
  height: 7px;
  align-self: center;
}

.landingPage-topBar--addressTime,
.landingPage-topBar--phoneMail {
  display: flex;
  gap: 2.5rem;
  padding: 1.5rem 2rem;
}

.topbar-icons-texts {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
}

.topbar-hr {
  position: absolute;
  width: 100%;
  top: 3rem;
  border: 1px solid var(--HR);
}

/* DESKTOP ARROW HEADS */
.landingPageArrHead {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: space-between;
  padding: 0 1.2rem;
}

.desktopArrHead {
  width: 20px;
  height: 20px;
  border: var(--G-BORDER-SLIM);
  transform: rotate(50deg);
  display: grid;
  place-content: center;
  padding: 1rem;
  color: var(--GOLD);
  transition: background 600ms ease;
}

.desktopArrHead span {
  transform: rotate(-50deg);
}

.desktopArrHead:hover,
.desktopArrHead:focus,
.desktopArrHead:active {
  background: var(--L-GOLD);
  color: var(--SM0KY-BLACK-1);
}

/* LANDING PAGE NAV BAR */
.landingPage-navBar {
  position: absolute;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 1rem 3vw;
}

.navbar-ul-links {
  display: flex;
  gap: 2rem;
  text-transform: uppercase;
  max-width: max-content;
}

.navbar-ul-links_list--active {
  position: relative;
}

.navbar-ul-links_list--active::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  margin-block-end: -1.5rem;
  border-block: 1px solid var(--GOLD);
}

.navbar-ul-links_list--hover::after {
  height: 5px;
  margin-block-end: -1.5rem;
}

.landingPage-navBar--menuBar_findTableBtn {
  background-color: var(--GOLD);
  color: var(--EERIE-BLACK);
  font-weight: 700;
}

.landingPage-navBar--menuBar {
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-wrap: wrap;
}

/* MENU BAR DESIGN */
.landingPage-navBar--menuBar_openMenu {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}

.line {
  width: 30px;
  height: 2px;
  background-color: var(--WHITE);
  transform-origin: left;
  animation: menuBar 400ms ease-in-out alternate infinite;
}

.line-2 {
  animation-delay: 150ms;
}

.line-3 {
  animation-delay: 350ms;
}

/*  HERO PAGE ROTATING SQUARE */
.hero-page-rotatingSquare {
  position: absolute;
  top: 80vh;
  right: 0;
  margin-inline: 3rem;
  /* margin-block-end: 3rem; */
  background-color: var(--GOLD);
  padding: 0.85rem 1rem;
}

.hero-page-rotatingSquare--section {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.hero-page-rotatingSquare--sect_text {
  color: var(--EERIE-BLACK);
  font-size: 0.8rem;
  letter-spacing: 3px;
}

.hero-page-rotatingSquare--sect_img {
  width: 2.5rem;
  height: auto;
}

.hero-page-rotatingSquare--sect_img img {
  width: 100%;
  height: auto;
}

.hero-page-rotatingSquare::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  border: 1px solid var(--GOLD);
  animation: rollingSquare 8s linear infinite;
}

/* MAIN STYLING */
main {
  width: 100%;
}

/* FIXED ARROW BUTTON */
.fixed-arrow-btn {
  position: fixed;
  background: var(--GOLD);
  color: var(--EERIE-BLACK);
  bottom: 0;
  right: 0;
  margin-inline: 3rem;
  margin-block-end: 3rem;
  transition: all 600ms ease;
  font-size: 3.5rem;
  border-radius: 50%;
  padding: 0.5rem;
  border: 2px solid var(--EERIE-BLACK);
  z-index: 100;
}

.fixed-arrow-btn ion-icon {
  transition: transform 800ms linear;
}

.fixed-arrow-btn ion-icon:is(:hover, :focus, :active) {
  transform: translateY(-5px);
}

.fixed-arrow-btn:is(:hover, :focus-visible, :active) {
  background: var(--EERIE-BLACK);
  border: 2px solid var(--GOLD);
  color: var(--GOLD);
}

.hideFixed {
  opacity: 0;
}

/* SERVICE STYLING */
.service {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: 100%;
  padding: 5rem 2rem;
  z-index: 1;
  background: var(--SM0KY-BLACK-1);
}

.service-subTexts {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-bottom: 5rem;
}

.service-subTexts-texts {
  font-size: var(--FS-M);
  line-height: 1.8;
  padding: 2.5rem 0;
  letter-spacing: 1px;
}

.service--container {
  width: 90%;
  display: grid;
  grid-template-rows: repeat(3, 1fr);
  gap: 7rem;
}

.service--container_card_img {
  position: relative;
  width: 100%;
  height: auto;
  margin-bottom: 3rem;
  overflow: hidden;
  border-radius: 20px;
  border: solid var(--GOLD) 4px;
}

.service--container_card_img img {
  width: 100%;
  height: 100%;
  transition: transform 800ms ease;
}

.service--container_card_img:hover img {
  transform: scale(1.12);
}

.service--container_card_img::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(
    to bottom right,
    rgba(255, 255, 255, 0.5),
    transparent
  );
  height: 100%;
  width: 100%;
  left: -1000px;
  transform: skewX(-40deg);
  z-index: 1;
}

.service--container_card_img:is(:hover, :focus-visible)::before {
  animation: shine 600ms ease;
}

.service--container_card_text {
  display: flex;
  flex-direction: column;
  width: 100%;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.service--container_card_textA {
  font-family: var(--FF-FORUM);
  font-size: 2rem;
}

.service--container_card_textB {
  color: var(--GOLD);
}

.service-img-shapes {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  height: 100%;
  width: 100%;
  flex-direction: column;
  justify-content: space-between;
  z-index: -1;
  overflow: hidden;
}

.service-img-shapes-img-1 {
  align-self: flex-end;
}

.service-img-shapes-img img {
  animation: smoothScale 9s linear infinite;
}

/*--------------------------ABOUT US------------------------ */
.about-us {
  position: relative;
  background: var(--SM0KY-BLACK-3);
  width: 100%;
  padding: 7rem 2rem;
  padding-bottom: 15rem;
  display: grid;
  gap: 3rem;
  overflow: hidden;
  z-index: 1;
}

.about-us-texts {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.about-us-texts-bookings_heading {
  letter-spacing: 2px;
  margin-bottom: 0.7rem;
}

.about-us-texts-bookings_phone {
  font-size: var(--FS-MM);
  letter-spacing: 2px;
  color: var(--GOLD);
}

.about-us-texts-bookings_btn {
  margin-top: 2rem;
  margin-inline: auto;
}

/* --------------ABOUT US IMAGES------------------- */
.about-us-imgs {
  position: relative;
  width: 100%;
  height: 400px;
  margin-top: 5rem;
}

.about-us-imgs-1 {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin-inline-start: 1rem;
}

.about-us-imgs_img {
  position: absolute;
}

.about-us-imgs-2 {
  bottom: -50px;
  background: url(/assets/images/img-pattern.svg);
  background-repeat: repeat;
  width: 150px;
  height: 220px;
  display: grid;
  place-content: center;
  margin-left: 1rem;
}

.about-us-imgs-2 img {
  width: 180px;
  height: auto;
}

.about-us-imgs-3 {
  top: -50px;
  right: 0;
  /* margin-inline-end: 1rem; */
}

.about-us-imgs-3 img {
  width: 130px;
  height: auto;
  padding: 0.45rem;
}

.about-us-imgs-3::before {
  content: url("/assets/images/badge-2-bg.png");
  position: absolute;
  animation: rollingSquare 7s linear infinite;
  top: -3px;
  transform: translateX(50%);
  /* top: -3px;
  animation: rollingImg 7s linear infinite;
  transform: translateX(50%); */
}

.about-us-imgs-4 {
  width: 100%;
  bottom: 0;
  z-index: -1;
  margin-block-end: 20rem;
  margin-inline-start: 3rem;
}

.about-us-imgs-4 img {
  width: 200px;
  height: auto;
  animation: smoothScale 9s linear infinite;
}

/************************SPECIAL DISH***********************/
.special-dish {
  position: relative;
  background: var(--SM0KY-BLACK-1);
  width: 100%;
  display: flex;
  flex-direction: column;
}

.special-dish_img {
  height: 100%;
  width: 100%;
}

.special-dish_img img {
  width: 100%;
  height: 350px;
  object-fit: cover;
}

.special-dish_texts {
  padding: 5rem 2rem;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.special-dish_texts--badgeHeading {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
  justify-content: center;
}

.special-dish_texts--badge {
  width: 30px;
  height: 50px;
}

.special-dish_texts--badge img {
  width: 100%;
  height: auto;
}

.special-dish_texts--texts {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.special-dish_texts_price--price {
  display: flex;
  gap: 2rem;
  justify-content: center;
  align-items: center;
}

.line-thru_text {
  text-decoration: line-through;
}

.special-dish_texts_price--price > :first-child {
  font-size: 1.5rem;
  color: var(--SILVER);
}

.menus-container_item--texts__heading-price,
.special-dish_texts_price--price > :last-child {
  color: var(--GOLD);
  font-size: var(--FS-MM);
  font-family: var(--FF-FORUM);
}

/***********************SPECIAL DISH************************ */
.menus {
  background: var(--SM0KY-BLACK-3);
  padding: 7rem 0;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 6.5rem;
}

.menus-headings {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.menus-container_item {
  display: flex;
  gap: 2rem;
  padding: 3rem 0;
}

.menus-container {
  width: 80%;
}

.menus-container li {
  margin-top: 0.7rem;
}

.menus-container_item--img {
  width: 100px;
  height: 100px;
  border-radius: 20px;
  overflow: hidden;
  flex-shrink: 0;
  align-self: flex-start;
  transition: background-color 1s ease;
}

.menus-container_item--img img {
  width: 100%;
  height: 100%;
  transition: all 1s ease;
}

.menu-hover {
  background-color: var(--GOLD);
}

.menu-hover2 {
  transform: scale(1.15);
  opacity: 0.87;
}

.menus-container_item--texts__heading-heading {
  font-size: var(--FS-DeskM);
  font-family: var(--FF-FORUM);
}

.menus-container_item--texts__heading-price {
  margin-top: 1.5rem;
}

.menus-container_item--texts__headingBtn {
  display: inline-block;
  background: var(--GOLD);
  color: var(--SM0KY-BLACK-3);
  padding: 0.24rem 0.45rem;
  text-transform: uppercase;
  font-family: var(--FF-FORUM);
  border: inset 1px var(--GOLD);
  border-radius: 3px;
  margin-top: 0.45rem;
}

.menus-container_item--texts__texts {
  color: var(--SILVER);
  margin-block-start: 1.3rem;
}

.menus-container_item--texts__heading-heading {
  transition: color 800ms ease;
}

.menus-container_item--texts__heading-heading:hover {
  color: var(--GOLD);
}

.menus-btn {
  padding: 0 2rem;
}

.menus-btn--texts {
  text-align: center;
  font-size: var(--FS-M);
}

.menus-btn--texts > span {
  color: var(--GOLD);
}

.menus-img-shapes-img img {
  animation: smoothScale 9s linear infinite;
  object-fit: contain;
  width: 500px;
  height: auto;
}

.menus-img-shapes-img-1 {
  align-self: flex-end;
}

/*************************TESTIMONIAL************************/
.testimonial {
  padding: 7rem 0;
  background: var(--SM0KY-BLACK-1);
  background-image: url("/assets/images/testimonial-bg.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.testimonial span {
  display: block;
}

.testimonial-quote {
  font-size: var(--FS-XL);
  line-height: 1.5;
  font-family: var(--FF-FORUM);
  text-align: center;
  width: 80%;
}

.testimonial-quote > span {
  font-size: 5rem;
}

.testimonial-squares {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.3rem;
  margin-top: 3rem;
}

.testimonial-squares > span {
  width: 1rem;
  height: 1rem;
  border: var(--G-BORDER);
  animation: rollingSquare 5s infinite;
}

.testimonial-avatar {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-top: 3rem;
  gap: 1.5rem;
}

.testimonial-avatar-img {
  width: 100px;
  height: auto;
  border-radius: 50%;
  object-fit: contain;
  border: var(--G-BORDER);
}

.testimonial-avatar__caption {
  letter-spacing: 2px;
  font-style: italic;
  color: var(--GOLD);
}

/***********************RESERVATIONS************************/
.reservation {
  background: var(--SM0KY-BLACK-3);
}

.reservation-form__heading {
  text-align: center;
  padding: 2rem;
  padding-top: 5rem;
}

.reservation-heading__subtexts {
  margin-top: 1.5rem;
}

.reservation-form__form {
  padding: 2rem;
  padding-bottom: 5rem;
}

.input-field {
  border: solid 2px var(--SILVER);
  width: 100%;
  padding: 1.7rem;
  font-size: var(--FS-M);
  color: inherit;
  height: 5rem;
  outline: none;
  letter-spacing: 2px;
  background: var(--SM0KY-BLACK-1);
  transition: border 800ms ease;
}

.input-field::placeholder {
  color: inherit;
}

.input-field:is(:active, :focus) {
  border: 2px solid var(--GOLD);
}

.reservation-form__form--options select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  background: var(--SM0KY-BLACK-1);
  color: inherit;
  padding-inline-start: 3.5rem;
}

.footer__form-texts--form-email,
.reservation-form__form--options {
  position: relative;
}

.footer__form-texts--form-email ion-icon,
.reservation-form__form--options ion-icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin-top: 0.1rem;
  font-size: 1.6rem;
  margin-inline-end: 1.7rem;
  margin-inline-start: 1.7rem;
}

.left-icon {
  left: 0;
}

.right-icon {
  right: 0;
}

input,
.reservation-form__form--textarea,
.reservation-form__form--options {
  margin-top: 2rem;
}

/* For WebKit-based browsers (e.g., Chrome, Safari) */
#reservation-date::-webkit-calendar-picker-indicator {
  filter: invert(100%);
}

/* For Firefox */
#reservation-date[type="date"]::-moz-calendar-picker-indicator {
  filter: invert(100%);
}

/* For Edge */
#reservation-date[type="date"]::-ms-calendar-picker-indicator {
  filter: invert(100%);
}

.textArea {
  height: 15rem;
  resize: none;
}

.reservation-form__form--btn {
  width: 100%;
  margin-top: 2rem;
  background: var(--GOLD);
  color: var(--SM0KY-BLACK-3);
}

/* Reservation Contact */
.reservation-form__contact {
  background-image: url("/assets/images/form-pattern.png");
  background-repeat: repeat;
  background-position: center;
  padding: 5rem 0;
  display: flex;
  height: 100%;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-align: center;
  gap: 2.2rem;
}

.reservation-form__contact--location--heading,
.reservation-form__contact--subheading {
  font-size: var(--FS-DeskM);
  letter-spacing: 1px;
}

.reservation-form__contact--heading {
  font-size: var(--FS-MM);
}

.reservation-form__contact--location {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}

.reservation-form__contact--locationTexts {
  letter-spacing: 1px;
  width: 70%;
}

.reservation-form__contact--location--texts {
  color: var(--SILVER);
  font-size: var(--FS-M);
  margin-top: 1rem;
  line-height: 1.7;
}

/****************************OUR STRENGTH***********************/
.strength {
  padding: 10rem 2.5rem;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.strength--heading {
  padding-bottom: 3rem;
  text-align: center;
}

.strength--container {
  /* padding: 0 3rem; */
  display: grid;
  gap: 40px;
}

.strength--container__card {
  background: var(--SM0KY-BLACK-3);
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3.5rem 2rem;
  gap: 2.5rem;
  margin-top: 3rem;
}

.strength--container__card-img img {
  width: 100%;
  height: auto;
  transition: 500ms ease;
}

.strength--container__card-texts {
  text-align: center;
}

.strength--container__card-texts_heading {
  font-family: var(--FF-FORUM);
  text-transform: capitalize;
  letter-spacing: 2px;
  padding-bottom: 1.5rem;
}

.strength--container__card-texts_texts {
  color: var(--SILVER);
}

.strength-bg {
  background: var(--SM0KY-BLACK-1);
}

.rollImage {
  transform: scale(-1) rotate(180deg);
}

@media (min-width: 501px) {
  .updates-card {
    width: 90%;
  }
}

.updates {
  padding: 7rem 0;
  background: var(--SM0KY-BLACK-1);
}

.updates-heading {
  text-align: center;
  margin-bottom: 3rem;
}

.updates-container {
  display: grid;
  margin-bottom: 3.5rem;
  width: 90%;
  margin: auto;
  margin-bottom: 10rem;
}

.updates-card {
  position: relative;
  height: 450px;
  width: 85%;
  margin: auto;
  overflow: hidden;
  z-index: 1;
  margin-top: 5rem;
}

.updates-card_img {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  border: none;
  border-radius: 0;
}

.updates-card_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.updates-card_date {
  position: absolute;
  top: 0;
  background: var(--SM0KY-BLACK-1);
  padding: 0.7rem;
  color: var(--GOLD);
  display: inline;
  font-size: var(--FS-M);
  margin: 2rem;
}

.updates-card_texts {
  position: absolute;
  bottom: 0;
  text-align: center;
  margin-block: 30px;
  margin-inline: auto;
  /* background: #0000006f; */
  padding: 0 2rem;
  width: 100%;
}

.updates-card_texts--heading {
  color: var(--GOLD);
  letter-spacing: 0.35rem;
  display: inline;
  text-transform: uppercase;
}

.updates-card_texts--texts {
  font-family: var(--FF-FORUM);
  letter-spacing: 0.23rem;
  margin-top: 0.7rem;
}

/********************FOOTER**********************/
.footer {
  padding: 7rem 0;
  margin-top: 5rem;
  background-image: url("/assets/images/footer-bg.jpg");
  background-repeat: repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}

.footer__hot-links,
.footer__links {
  display: flex;
  flex-direction: column;
  font-size: var(--FS-M);
  padding: 3rem;
  text-transform: uppercase;
  color: var(--SILVER);
  text-align: center;
}

.footer__links {
  display: none;
}

.footer__hot-links > :not(:last-child),
.footer__links > :not(:last-child) {
  margin-bottom: 5rem;
}

.footer__links,
.footer__hot-links,
.footer__form {
  width: 100%;
}

.footer__form {
  position: relative;
  padding: 8rem 2rem;
  background: var(--SM0KY-BLACK-3);
  background-image: url(/assets/images/footer-form-bg.png);
  margin: 5rem 0;
}

.footer__form::after,
.footer__form::before {
  content: "";
  width: 12px;
  height: 100%;
  background-image: url(/assets/images/footer-form-pattern.svg);
  background-repeat: repeat;
  position: absolute;
  top: 0;
}

.footer__form::before {
  left: 0;
}

.footer__form::after {
  right: 0;
}

.footer__form-texts {
  text-align: center;
  /* padding: 0 3rem; */
}

.footer__form-texts--img {
  display: grid;
  place-content: center;
}

.footer__form-texts--img img {
  width: auto;
  height: auto;
}

.footer__form-texts--texts {
  margin-top: 3rem;
  line-height: 2.3;
  font-size: var(--FS-M);
}

.footer__form-texts--form-heading {
  line-height: 2;
}

.footer__form-texts--form-heading h2 {
  font-weight: 100;
}

.footer__form-texts--texts,
.footer__form-texts--form-subTexts span {
  color: var(--SILVER);
}

.footer__form-texts--form-btnEmail {
  padding: 0 3rem;
}

.footer__form-texts--form-email input {
  padding-left: 3.7rem;
}

.footer__form-texts--texts .hover__color-change {
  transition: color 800ms;
}

.footer__form-texts--texts .hover__color-change:hover {
  color: var(--GOLD);
}

.credits {
  text-align: center;
  font-size: var(--FS-DeskM);
  margin-top: 7rem;
  line-height: 1.5;
  padding: 0 2rem;
}

.credits a {
  text-decoration: underline;
  color: var(--GOLD);
}

/* ANIMATIONS */
/* ROLLING CIRCLE ANIMATION */
@keyframes rollingCircle {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(1turn);
  }
}

/* ROLLING SQUARE */
@keyframes rollingSquare {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(1turn);
  }
}

/* FADING TEXT ANIMATION */
@keyframes fadingText {
  0% {
    background-image: linear-gradient(
      90deg,
      rgb(0, 0, 0),
      rgba(0, 0, 0, 0.774),
      rgba(0, 0, 0, 0.574)
    );
  }

  50% {
    background-image: linear-gradient(
      90deg,
      rgba(0, 0, 0, 0.026),
      rgb(0, 0, 0),
      rgba(0, 0, 0, 0.082)
    );
  }

  100% {
    background-image: linear-gradient(
      90deg,
      rgb(0, 0, 0),
      rgba(0, 0, 0, 0),
      rgba(0, 0, 0, 0)
    );
  }
}

/* HERO PAGE TEXT ANIMATION */
@keyframes text {
  0% {
    transform: translateY(20px);
  }

  100% {
    transform: translateY(0px);
  }
}

/* HERO PAGE IMAGE ANIMATION */
@keyframes smooth {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.15);
  }

  /* scale(-1)is so cool! */
}

/*SERVICE SHAPE IMAGES STYLING*/
@keyframes smoothScale {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.5);
  }
}

/* MENU BAR ANIMATION */
@keyframes menuBar {
  0% {
    transform: scaleX(1);
  }

  100% {
    transform: scaleX(0.5);
  }
}

/* IMAGE SHINING EFFECT */
@keyframes shine {
  0% {
    left: -1000px;
  }

  100% {
    left: 100%;
  }
}

@keyframes imgRoll {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* SPECIAL DISH */
@keyframes badge {
  0% {
    transform: translateY(0px);
  }
  25% {
    transform: translateY(5px);
  }
  50% {
    transform: translateY(10px);
  }
  75% {
    transform: translateY(15px);
  }

  100% {
    transform: translateY(0px);
  }
}

/* MEDIA QUERIES */
/* MAX WIDTH */
/* <=851*/
@media screen and (max-width: 850px) {
  .landingPage-navBar--menuBar_findTableBtn {
    display: none;
  }

  .landingPageArrHead {
    display: none;
  }
}

/* <=1000 */
@media screen and (max-width: 1000px) {
  .landingPage-topBar--addressTime {
    display: none;
  }

  .landingPage-topBar--phoneMail {
    margin: auto;
  }
}

/* <=500 */
@media (max-width: 500px) {
  .landingPage-topBar {
    display: none;
  }
}

/* <=600 */
@media screen and (max-height: 600px) {
  .navBar-links_footing,
  .hero-page-rotatingSquare {
    opacity: 0;
  }
}

/* <=900 */
@media (max-width: 900px) {
  .navbar-ul-links {
    display: none;
  }
}

/* >900 */
@media (min-width: 900px) {
  .landingPage-navBar--menuBar_openMenu {
    display: none;
  }
}

/* MIN WIDTH */
/* >550 */
@media (min-width: 551px) {
  /* FOOOTER */
  .footer__form-texts--form-btnEmail {
    width: 85%;
    margin: auto;
    display: grid;
    grid-template-columns: 2fr 1fr;
  }
  .footer-icon {
    top: 63% !important;
  }

  .footer__form-texts--form-btnEmail input,
  .footer__form-texts--form-btnEmail button {
    height: 6rem;
  }

  .footer__hot-links {
    flex-direction: row;
    justify-content: space-around;
    flex-wrap: wrap;
    width: 90%;
    margin: auto;
  }

  .footer__hot-links li {
    margin-left: 1.8rem;
  }

  /* MENU */
  .menus-container {
    position: relative;
    width: 70%;
  }

  .menuBtn-Name {
    display: flex;
    align-items: center;
    gap: 1.5rem;
  }

  .menus-container_item--texts__heading {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.9rem;
  }

  .menus-container_item--texts__heading-heading {
    white-space: nowrap;
  }

  .menus-container_item--texts_border {
    display: block;
    border-bottom: 0.01rem solid rgba(192, 192, 192, 0.227);
    border-top: 0.01rem solid rgba(192, 192, 192, 0.227);
    height: 5px;
    width: 100%;
  }

  .menus-container_item--texts__heading-price {
    margin-top: 0rem;
  }

  .menus-container_item--texts__headingBtn {
    margin-top: 0rem;
  }
}

/* > 767 */
@media screen and (min-width: 768px) {
  /* nav */
  .navBar-links {
    width: 30%;
  }

  /* service */
  .service-subTexts-textsW {
    width: 70%;
  }

  .strength--container {
    grid-template-columns: 1fr 1fr;
  }

  .service-subTexts {
    margin-bottom: 1rem;
  }

  .service--container {
    width: 80%;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(3, 100%);
    gap: 7rem;
  }

  .service--container_card-2 {
    align-self: center;
  }

  .service-subTexts-texts {
    font-size: var(--FS-DeskM);
  }

  /* Hero Texts */
  .heroTexts--normTexts {
    letter-spacing: 2px;
    font-size: var(--FS-M);
  }

  .heroTexts--heading {
    font-size: var(--FS-S);
  }

  .heroTexts--cursiveTexts {
    font-size: var(--FS-XL);
  }

  /* About Us */
  .about-us {
    grid-template-columns: 1fr 1fr;
    padding: 7rem 5rem;
  }

  .about-us-imgs {
    margin-top: 0;
    height: 100%;
  }

  .about-us-texts {
    width: 80%;
  }

  .about-us-imgs-2 {
    width: 150px;
    margin-left: -5rem;
    height: 400px;
  }

  .about-us-imgs-2 img {
    width: auto;
    height: auto;
  }

  .about-us-texts-texts {
    font-size: 1.7rem;
  }

  /* SPECIAL DISH */
  .special-dish {
    flex-direction: row;
    align-items: center;
    gap: 8rem;
  }

  .special-dish_img img {
    height: 100%;
  }

  .special-dish_texts {
    position: relative;
  }
  .special-dish_texts {
    align-items: flex-start;
  }

  .special-dish_texts--badgeHeading {
    flex-direction: row;
  }

  .special-dish_texts--texts {
    text-align: left;
    align-items: flex-start;
  }

  .special-dish_texts--badge {
    width: 30px;
    height: 50px;
    position: absolute;
    left: 0;
    margin-left: -3rem;
  }

  .special-dish_texts--badge img {
    width: 100%;
    height: auto;
    animation: badge 2s linear infinite;
  }

  /* UPDATES */
  .updates-container {
    grid-template-columns: 1fr 1fr;
  }

  .update-grid-wrap {
    grid-column: 1/2;
  }
}

/* >600 */
@media screen and (min-width: 601px) {
  .reservation-form__form--nameTel,
  .reservation__form--options {
    display: grid;
    gap: 2rem;
  }
  .reservation__form--options {
    grid-template-columns: repeat(3, 1fr);
  }

  .reservation-form__form--nameTel {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* >950*/
/* RESERVATION FORM */
@media screen and (min-width: 951px) {
  .reservation {
    display: grid;
    grid-template-columns: 2fr 1fr;
  }

  .reservation-form {
    padding: 0 3rem;
  }
}

/* >1055 */
/* UPDATES */
@media (min-width: 1056px) {
  .updates-container {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .update-grid-wrap {
    grid-column: auto;
  }
}

/* LARGEST SCREEN */
@media screen and (min-width: 1100px) {
  /* MENU */
  .menus-container {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 90%;
  }

  .menus-container::before {
    content: "";
    position: absolute;
    top: 0;
    width: 0.21rem;
    background: rgba(192, 192, 192, 0.227);
    height: 100%;
    left: 50%;
  }

  .menuBtn-Name {
    display: flex;
    align-items: center;
    gap: 1.5rem;
  }

  .menus-container_item--texts__heading {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.9rem;
  }

  /* .menus-container_item--texts__heading-heading{
    white-space: nowrap;
  } */

  .menus-container_item--texts_border {
    display: block;
    border-bottom: 0.01rem solid rgba(192, 192, 192, 0.227);
    border-top: 0.01rem solid rgba(192, 192, 192, 0.227);
    height: 5px;
    width: 100%;
  }

  .menus-container_item--texts__heading-price {
    margin-top: 0rem;
  }

  .menus-container_item--texts__headingBtn {
    margin-top: 0rem;
  }

  .menus-container_item {
    padding: 2.5rem 4rem;
  }
}

/* OUR STRENGTH */
/* >991 */
@media (min-width: 992px) {
  .strength--container {
    grid-template-columns: repeat(3, 1fr);
  }

  .grid-wrap {
    grid-column: 1/4;
    width: 100%;
  }
}

/* >951 */
@media (min-width: 950px) {
  /* FOOTER */
  .footer__links {
    display: block;
  }

  .footerContainer {
    display: grid;
    grid-template-columns: 25% 50% 25%;
    align-items: center;
    width: 90%;
    margin: auto;
  }

  .footer__hot-links {
    flex-direction: column;
    justify-content: center;
    width: 100%;
  }
}

/* >1199 */
@media (min-width: 1200px) {
  .strength--container {
    grid-template-columns: repeat(4, 1fr);
  }

  .grid-wrap {
    grid-column: auto;
    width: 100%;
    margin-inline: auto;
  }
}
