/* Fonts */
@font-face {
  font-family: "Cosi Times";
  src: url("./assets/fonts/Cosi Times/CosiTimes-Roman.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Cosi Times";
  src: url("./assets/fonts/Cosi Times/CosiTimes-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: "Cosi Times";
  src: url("./assets/fonts/Cosi Times/CosiTimes-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: "PP Neue Montreal";
  src: url("./assets/fonts/PP Neue Montreal/NeueMontreal-Regular.otf")
    format("opentype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "PP Neue Montreal";
  src: url("./assets/fonts/PP Neue Montreal/NeueMontreal-Medium.otf")
    format("opentype");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "PP Neue Montreal";
  src: url("./assets/fonts/PP Neue Montreal/NeueMontreal-Light.otf")
    format("opentype");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: "PP Eiko";
  src: url("./assets/fonts/PP Eiko/PPEiko-Regular.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "PP Eiko";
  src: url("./assets/fonts/PP Eiko/PPEiko-Medium.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "PP Eiko";
  src: url("./assets/fonts/PP Eiko/PPEiko-Light.otf") format("opentype");
  font-weight: 300;
  font-style: normal;
}

:root {
  --color-bg: #fff;
  --color-text: #0a0a0a;
  --color-primary: #ff7f27; /* Flat Orange */
  --color-secondary: #002b5b; /* Dark Navy Blue */
  --color-accent: #ff7f27;

  /* fonts */
  --font-accent: "Cosi Times";
  --font-sans-serif: "PP Neue Montreal";
  --font-serif: "PP Eiko";
}

::selection {
  background: var(--color-primary);
  color: #fff;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  min-height: 100%;
  background: var(--color-bg);
  font-family: var(--font-sans-serif);
}

.container {
  width: 100%;
  height: 100%;
  /* min-height: 90vh; */
  padding: 2rem;
}

h1 {
  color: var(--color-text);
}

p,
span,
a {
  font-size: 1rem;
  line-height: 120%;
  color: var(--color-text);
}

span {
  font-family: var(--font-serif);
}

a {
  text-decoration: none;
  color: var(--color-text);
}

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

footer {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

footer p,
footer a {
  font-size: 1.25rem;
  text-transform: uppercase;
  font-family: var(--font-accent);
}

footer#light p,
footer#light a {
  color: var(--color-bg);
}

p#address {
  font-family: var(--font-sans-serif);
}

footer a {
  font-family: var(--font-sans-serif);
}

@media (max-width: 900px) {
  footer {
    flex-direction: column;
  }
}

.menu-toggle {
  position: fixed;
  top: 0;
  right: 0;
  padding: 0 1rem;
  z-index: 10000;
  cursor: pointer;
  background-color: var(--color-secondary);
  border-radius: 0 0 0 20px;
}

.menu-toggle .toggle-icon span {
  display: inline-block;
  color: #ffffff;
  font-size: 4rem;
  font-family: var(--font-accent);
  user-select: none;
}

.menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.95);
  backdrop-filter: blur(20px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  z-index: 2;
}

.menu-link {
  position: relative;
  width: 100%;
  text-align: center;
  left: 2rem;
  transition: all 0.3s;
  margin: 0;
}

.menu-link:hover {
  left: -1rem;
  transition: all 0.3s;
}

.menu-link a {
  font-family: var(--font-accent);
  font-size: 5rem;
  text-align: center;
  color: var(--color-bg);
  line-height: 0;
  transition: color 0.3s;
}

.menu-link:hover a {
  color: var(--color-primary);
}

.menu-link span {
  font-family: var(--font-accent);
  font-size: 5rem;
  text-align: center;
  color: var(--color-bg);
  padding: 0 0.5rem;
  opacity: 0;
  transition: all 0.3s;
}

.menu-link:hover span {
  opacity: 1;
  transition: all 0.3s;
}

@media (max-width: 900px) {
  .menu-link a {
    font-size: 3.5rem;
  }
}
