*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  /* outline: 1px solid grey; */
}
:root {
  --bg-color-accent: rgb(78, 108, 118);
  --bg-color: rgb(78, 97, 104);
  --bg-color-transp: rgb(78, 97, 104, 0.25);
}
html {
  background-color: var(--bg-color);
  color: white;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
  font-size: 62.5%;
  /* FONTSIZE TRICK-- 1 rem = 10 px here, usually 1 rem = 16px */
  caret-color: transparent;
  overflow-x: hidden;
}
body {
  font-size: 2rem;
  /* font-size: calc(1.5rem + 0.4vw); */
  /* FONTSIZE TRICK-- 1 rem = 10 px here, usually 1 rem = 16px */
  /* FONTSIZE - Adding the 0.4 is for responsivity */
}
li {
  list-style-type: none;
}
a {
  text-decoration: none;
  color: white;
}
/* ---------------------------------------------------- */
#container {
  min-height: 100vh;
  width: 100vw;
  display: flex;
  flex-direction: column;
  justify-content: stretch;
}

header {
  font-family: Verdana, Geneva, Tahoma, sans-serif;
  background-color: black;
  border-bottom: 1px solid black;
  max-width: 100%;
  text-align: center;
  letter-spacing: min(3px, 0.3vw);
  min-height: 15vh;
  flex-grow: 15;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: space-around;
  align-items: center;
}
header h1 {
  font-family: niconne;
}
nav {
  width: 100vw;
}
ul {
  display: flex;
  margin: auto;
  justify-content: space-around;
}
img {
  width: 100%;
  max-width: 90rem;
  height: auto;
  border-radius: 10px;
}
main {
  background-color: var(--bg-color);
  display: flex;
  flex-direction: column;
  flex-grow: 80;
  min-height: 80vh;
  /* Section wont auto-grow with content unless min-height! */
  /* but min-height makes it disapear if content is empty! */
  align-items: center;
  justify-content: center;
  padding: 2.5vh 0;
}
#content {
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 1rem;
  min-height: 75vh;
  width: 90vw;
}
footer {
  background-color: black;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  flex-grow: 5;
  min-height: 5vh;
  text-align: center;
  letter-spacing: min(3px, 0.3vw);
  filter: drop-shadow(0px 0px 4px rgb(grey));
}
i {
  color: white;
}
/*-------------------*/
#about {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  padding: 2rem;
}
#about p {
  margin: 0 clamp(1rem, 4vw, 10rem);
  font-size: calc(2rem + 0.2vw);
}
#about h2 {
  text-align: center;
  margin: 0 clamp(1rem, 5vw, 10rem);
}
/*-------------------*/
#menu {
  display: flex;
  flex-direction: column;
  min-height: 75vh;
  justify-content: stretch;
  padding: 0 1vw;
  gap: 1rem;
}
.menugroup {
  display: flex;
  width: 100%;
  gap: clamp(2rem, 6vw, 18rem);
  padding: 1rem calc(1vw + 0.5rem);
  min-height: 70vh;
}
.meals {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  gap: clamp(4rem, 2vh, 4rem);
}
.divider {
  border-radius: 2.5px;
  border: 1px solid white;
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.foodItem {
  display: flex;
  flex-direction: column;
  gap: clamp(2rem, 1vw, 4rem);
}
span {
  display: flex;
  justify-content: space-between;
}
#menu h2 {
  text-align: center;
  width: min-content;
  align-self: center;
}
/*-------------------*/
#contact {
  display: grid;
  min-height: 75vh;
  max-width: 90vw;
padding: 2rem;
  grid-template-areas:
    "h2"
    "midFlex"
    "socials";
}

#contact h2{
  grid-area: h2;
  justify-content: center;
  align-self: center;
  justify-self: center;
}

#contact img{
  grid-area: img;
  align-self: center;
  justify-self: center;
  max-width: 80rem;
}
#contact span {
  align-self: center;
  justify-self: center;
  text-align: center;
  max-width: 80rem;
  font-size: clamp(1.6rem, 2.5vw, 2.5rem);
  line-height: clamp(.2rem, 3.5vh, 5rem);
}
#span2 {
  display: flex;
  flex-direction: column;
  width: 65%;
  gap: 2rem;
  font-weight: bold;
}
#hoursDiv {
  display: flex;
  flex-direction: column;
}
.hoursP {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
#spanDiv {
  grid-area: span;
  display: flex;
  flex-direction: column;
  gap: 4rem;
}

#midFlex {
  grid-area: midFlex;
 padding: 1rem;
 gap: 2rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
}

#socials{
  grid-area: socials;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1rem, 10vw, 12rem);
  font-size: clamp(1rem, 6vh, 6rem);
}
#contact i{
  padding: 2rem;
}
.socialButtons {
  color: var(--bg-color-accent);
}
.socialButtons:hover{
  filter: brightness(150%);
  transition: scale 0.1s;
  scale: 1.2;
}
/*-------------------*/

/*-------------------*/

/*-------------------*/
.tablinks {
  border-radius: 10px;
  padding: 10px 20px;
  transition: 0.3s;
}
.tablinks:hover {
  background-color: var(--bg-color-transp);
}
.tablinks.active {
  background-color: var(--bg-color-transp);
}
.tabcontent {
  display: none;
  animation: fadeEffect 1s;
}
@keyframes fadeEffect {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*-------------------*/
