*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: inherit; }

html {
  font-size: 62.5%;
  box-sizing: border-box; }
  @media only screen and (min-width: 118.75em) {
    html {
      font-size: 80%; } }
  @media only screen and (min-width: 100em) {
    html {
      font-size: 70%; } }
  @media only screen and (max-width: 87.5em) {
    html {
      font-size: 60%; } }
  @media only screen and (max-width: 81.25em) {
    html {
      font-size: 50%; } }
  @media only screen and (max-width: 62.5em) {
    html {
      font-size: 40%; } }

body {
  font-family: "Nunito", sans-serif;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.6; }

.container {
  display: grid;
  grid-template-rows: 100vh repeat(10, min-content);
  grid-template-columns: [full-start] minmax(10rem, 1fr) [center-start] repeat(12, [col-start] minmax(min-content, 14rem) [col-end]) [center-end] minmax(10rem, 1fr) [full-end]; }
  @media only screen and (max-width: 68.75em) {
    .container {
      grid-template-rows: 90vh repeat(10, min-content); } }
  @media only screen and (max-width: 62.5em) {
    .container {
      grid-template-rows: 80vh repeat(10, min-content); } }
  @media only screen and (max-width: 37.5em) {
    .container {
      grid-template-rows: 70vh repeat(10, min-content); } }

.title-light {
  font-weight: 300;
  font-size: 4rem;
  margin-top: 2rem; }

.title-bold {
  font-weight: 700;
  font-size: 3rem;
  text-transform: uppercase; }

.nav {
  padding: 0 3rem;
  transition: all 0.3s cubic-bezier(0.17, 0.67, 0.9, 0.28); }
  .nav__list {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    align-items: center;
    transition: all .2s; }
    @media only screen and (max-width: 56.25em) {
      .nav__list {
        width: 100vw;
        height: 100vh;
        background-color: #050505;
        display: flex;
        flex-direction: column;
        padding: 10rem;
        position: absolute;
        left: -900%;
        transition: all .2s;
        top: 2%; } }
  .nav__item {
    list-style: none; }
    @media only screen and (max-width: 56.25em) {
      .nav__item {
        padding: 3rem;
        font-size: 3rem; } }
  .nav__link {
    text-decoration: none;
    color: #fff; }
    .nav__link:hover {
      border-bottom: 1px solid #fff;
      padding-bottom: 1rem;
      color: #f0ab0c; }
  .nav__btn {
    outline: none;
    border: none;
    background-color: #fff;
    color: #000;
    padding: 2rem 6rem;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.4);
    border-radius: 3rem;
    font-weight: 700; }
    @media only screen and (max-width: 75em) {
      .nav__btn {
        padding: 2rem 4rem; } }
    @media only screen and (max-width: 56.25em) {
      .nav__btn {
        margin-top: 2rem; } }
    .nav__btn a:link,
    .nav__btn a:visited {
      outline: none;
      text-decoration: none;
      color: #000; }
    .nav__btn:hover {
      background-color: #d5a83e;
      color: #fff; }

.checkbox-menu {
  font-size: 4rem;
  float: right;
  cursor: pointer;
  display: none;
  position: absolute;
  right: 7%;
  top: 12%;
  transition: all .2s; }
  .checkbox-menu:hover {
    transform: rotate(180deg); }
  @media only screen and (max-width: 56.25em) {
    .checkbox-menu {
      display: block; } }

.checkbox {
  display: none; }

.checkbox:checked ~ .nav__list {
  left: 0; }

.nav__link:active__list {
  display: none; }

.checkbox-menu__times {
  top: 4%;
  right: 14%; }

#logo {
  animation: fill 2s ease-in  forwards 3s; }

#logo path:nth-child(1) {
  stroke-dasharray: 96.65px;
  stroke-dashoffset: 96.65px;
  animation: outline 2s ease-in forwards; }

#logo path:nth-child(2) {
  stroke-dasharray: 70.19px;
  stroke-dashoffset: 70.19px;
  animation: outline 2s ease-in forwards 0.2s; }

#logo path:nth-child(3) {
  stroke-dasharray: 51.41px;
  stroke-dashoffset: 51.41px;
  animation: outline 2s ease-in forwards 0.4s; }

#logo path:nth-child(4) {
  stroke-dasharray: 98.62px;
  stroke-dashoffset: 98.62px;
  animation: outline 2s ease-in forwards 0.6s; }

#logo path:nth-child(5) {
  stroke-dasharray: 70.19px;
  stroke-dashoffset: 70.19px;
  animation: outline 2s ease-in forwards 0.8s; }

#logo path:nth-child(6) {
  stroke-dasharray: 62.89px;
  stroke-dashoffset: 62.89px;
  animation: outline 2s ease-in forwards 1s; }

#logo path:nth-child(7) {
  stroke-dasharray: 51.32px;
  stroke-dashoffset: 51.32px;
  animation: outline 2s ease-in forwards 1.2s; }

#logo path:nth-child(8) {
  stroke-dasharray: 70.67px;
  stroke-dashoffset: 70.67px;
  animation: outline 2s ease-in forwards 1.4s; }

#logo path:nth-child(9) {
  stroke-dasharray: 63.56px;
  stroke-dashoffset: 63.56px;
  animation: outline 2s ease-in forwards 1.6s; }

#logo path:nth-child(10) {
  stroke-dasharray: 40.31px;
  stroke-dashoffset: 40.31px;
  animation: outline 2s ease-in forwards 1.8s; }

#logo path:nth-child(11) {
  stroke-dasharray: 70.67px;
  stroke-dashoffset: 70.67px;
  animation: outline 2s ease-in forwards 2s; }

#logo path:nth-child(12) {
  stroke-dasharray: 63.90px;
  stroke-dashoffset: 63.90px;
  animation: outline 2s ease-in forwards 2.2s; }

#logo path:nth-child(13) {
  stroke-dasharray: 51.32px;
  stroke-dashoffset: 51.32px;
  animation: outline 2s ease-in forwards 2.4s; }

@keyframes outline {
  to {
    stroke-dashoffset: 0; } }

@keyframes fill {
  from {
    fill: transparent; }
  to {
    fill: #fff; } }

.header {
  position: relative;
  grid-column: 1/-1;
  color: #fff; }
  .header__img {
    background-image: url(../img/header-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 100vh;
    height: 100rem;
    z-index: 80; }
  .header__top {
    display: flex;
    padding: 3rem 5rem;
    align-items: center;
    background-color: #050505;
    position: fixed;
    height: 10rem;
    width: 100vw;
    z-index: 1000;
    box-shadow: 0 4px 10px rgba(5, 5, 5, 0.2); }
    @media only screen and (max-width: 81.25em) {
      .header__top {
        padding: 3rem 3rem; } }
  .header__logo {
    color: #fff;
    padding-right: 17rem;
    font-weight: 700;
    font-size: 2.5rem;
    display: block ruby;
    padding-left: 2rem; }
    @media only screen and (max-width: 56.25em) {
      .header__logo {
        position: absolute; } }
  .header__item {
    position: relative;
    top: 27%; }
    @media only screen and (max-width: 81.25em) {
      .header__item {
        top: 50%; } }
    @media only screen and (max-width: 81.25em) {
      .header__item {
        top: 46%; } }
    @media only screen and (max-width: 68.75em) {
      .header__item {
        top: 30%; } }
    @media only screen and (max-width: 37.5em) {
      .header__item {
        top: 23%; } }
    @media only screen and (max-width: 31.25em) {
      .header__item {
        top: 20%; } }
  .header__detail {
    display: inline-block;
    position: absolute;
    left: 7%;
    top: 50%;
    margin-left: 5rem;
    z-index: 90; }
    @media only screen and (max-width: 62.5em) {
      .header__detail {
        top: 20%; } }
    @media only screen and (max-width: 50em) {
      .header__detail {
        top: 16%; } }
    @media only screen and (max-width: 37.5em) {
      .header__detail {
        top: 8%; } }
  .header__text {
    font-size: 7rem;
    font-weight: 400; }
    @media only screen and (max-width: 62.5em) {
      .header__text {
        font-size: 8rem; } }
    @media only screen and (max-width: 37.5em) {
      .header__text {
        font-size: 9rem; } }
    @media only screen and (max-width: 31.25em) {
      .header__text {
        font-size: 8rem; } }
    @media only screen and (max-width: 25em) {
      .header__text {
        font-size: 5rem; } }
  .header__title {
    font-size: 7rem; }
    @media only screen and (max-width: 62.5em) {
      .header__title {
        font-size: 8rem; } }
    @media only screen and (max-width: 31.25em) {
      .header__title {
        font-size: 8rem; } }
    @media only screen and (max-width: 25em) {
      .header__title {
        font-size: 7rem; } }
    .header__title span {
      display: block; }
  .header__menu {
    display: flex;
    align-items: center;
    padding-top: 6rem;
    font-size: 2rem; }
    @media only screen and (max-width: 50em) {
      .header__menu {
        padding-top: 2.5rem; } }
    @media only screen and (max-width: 37.5em) {
      .header__menu {
        padding-top: .4em; } }
    .header__menu--line {
      width: 4rem;
      height: 2px;
      background-color: #fff;
      margin-right: 2rem; }
    .header__menu--check a:link,
    .header__menu--check a:visited {
      text-decoration: none;
      color: #fff; }
  .header__line {
    margin-bottom: 2rem;
    padding-left: 3rem;
    display: inline-block;
    position: absolute;
    top: 50%;
    margin-top: 8rem; }
    @media only screen and (max-width: 62.5em) {
      .header__line {
        top: 30%; } }
    @media only screen and (max-width: 50em) {
      .header__line {
        top: 25%; } }
    @media only screen and (max-width: 37.5em) {
      .header__line {
        top: 20%;
        padding-left: 1.4rem; } }
    @media only screen and (max-width: 31.25em) {
      .header__line {
        top: 14%;
        padding-left: 1rem; } }
    @media only screen and (max-width: 25em) {
      .header__line {
        top: 10%; } }
    .header__line--item {
      margin-bottom: 2rem;
      background-color: transparent;
      border: none;
      padding-right: 1rem;
      font-size: 2.7rem; }
      .header__line--item a:link,
      .header__line--item a:visited {
        text-decoration: none;
        color: #fff; }

.story {
  background-color: #F5F5F5;
  grid-column: 1/-1;
  padding-bottom: 5rem; }
  .story__photo {
    position: relative;
    top: -2%;
    width: 100%; }
  .story__feature {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    position: relative;
    top: -12%;
    grid-gap: 4rem; }
    @media only screen and (max-width: 81.25em) {
      .story__feature {
        margin: 0 2rem;
        top: -15%; } }
    @media only screen and (max-width: 62.5em) {
      .story__feature {
        top: -10%; } }
    @media only screen and (max-width: 43.75em) {
      .story__feature {
        top: -9%; } }
    .story__feature-item {
      background-color: #fff;
      padding: 3rem 4rem;
      border-top-left-radius: 2rem;
      border-top-right-radius: 2rem;
      text-align: center;
      padding-top: 6rem;
      box-shadow: 0 2px 6px rgba(105, 105, 105, 0.15); }
    .story__feature-image {
      margin-bottom: 1rem; }
    .story__feature--title {
      padding-bottom: 1rem; }

.discover {
  display: grid;
  grid-template-columns: repeat(8, 1fr); }
  .discover__image {
    height: 66rem;
    grid-column: 2/6;
    background-size: cover;
    z-index: 99; }
    @media only screen and (max-width: 43.75em) {
      .discover__image {
        height: 60rem;
        grid-column: 2/5; } }
    @media only screen and (max-width: 31.25em) {
      .discover__image {
        grid-column: 1/5;
        width: 60rem; } }
    @media only screen and (max-width: 320px) {
      .discover__image {
        width: 48rem; } }
  .discover__detail {
    grid-column: 6/9;
    background-color: #fff;
    z-index: 100;
    padding: 2rem 5rem;
    margin: 7rem;
    margin-left: -20rem;
    margin-bottom: 10rem;
    border-radius: 2rem;
    font-size: 1.4rem;
    box-shadow: 0 2px 6px rgba(105, 105, 105, 0.15); }
    @media only screen and (max-width: 43.75em) {
      .discover__detail {
        grid-column: 5/8;
        margin-top: 30rem;
        margin-right: -7rem; } }
    @media only screen and (max-width: 25em) {
      .discover__detail {
        margin-right: -4rem; } }
  .discover__title {
    font-weight: 200;
    font-size: 4rem; }
  .discover__subtitle {
    font-size: 4rem;
    margin-top: -2rem; }
  .discover__title-text {
    padding-bottom: 3rem;
    text-transform: uppercase; }
  .discover__text:not(:last-child) {
    padding-bottom: 3rem; }
  .discover__founder {
    font-weight: 700; }
  .discover__author {
    font-size: 4rem; }
  .discover__wave-bg {
    background-image: url(../img/wave.svg);
    background-size: cover;
    transform: rotate(180deg);
    width: 100%;
    height: 3rem;
    position: relative;
    bottom: -6%; }
    @media only screen and (max-width: 37.5em) {
      .discover__wave-bg {
        bottom: 0; } }

.food__title, .food__subtitle {
  text-align: center;
  font-size: 4rem; }

.food {
  grid-column: 1/-1;
  margin-top: 10rem;
  margin-bottom: 10rem; }
  .food__title {
    font-weight: 300; }
  .food__icon {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    margin: 5rem 30rem;
    grid-column-gap: 2rem;
    background-color: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
    border-radius: 1rem;
    border-top-left-radius: 1rem;
    border-bottom-left-radius: 1rem; }
    @media only screen and (max-width: 56.25em) {
      .food__icon {
        margin: 5rem 14rem; } }
    @media only screen and (min-width: 50em) {
      .food__icon {
        margin: 5rem 10rem; } }
    @media only screen and (max-width: 37.5em) {
      .food__icon {
        margin: 5rem 8rem; } }
    @media only screen and (max-width: 37.5em) {
      .food__icon {
        margin: 5rem 8rem; } }
    @media only screen and (max-width: 31.25em) {
      .food__icon {
        margin: 5rem 6rem; } }
    @media only screen and (max-width: 25em) {
      .food__icon {
        margin: 5rem 1.6rem; } }
    .food__icon-menu {
      background-color: #fff;
      outline: none;
      border: none;
      cursor: pointer;
      padding: 2rem;
      border-top-left-radius: 1rem;
      border-bottom-left-radius: 1rem; }
    .food__icon-menu1 {
      background-color: #000; }
    .food__icon-menu5 {
      border-top-right-radius: 1rem;
      border-bottom-right-radius: 1rem; }
    .food__icon-img {
      margin-bottom: 1rem; }
      @media only screen and (max-width: 31.25em) {
        .food__icon-img {
          height: 6rem; } }
      @media only screen and (max-width: 25em) {
        .food__icon-img {
          height: 4rem; } }
    .food__icon-text1 {
      color: #fff; }
    .food__icon-text {
      color: #000; }
  .food__menu {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    grid-row-gap: 3rem;
    margin: 4rem 9rem;
    padding: 2rem;
    align-items: center; }
    .food__menu--item {
      padding: 2rem 3rem;
      text-align: center; }
    .food__menu--price {
      background-color: #000;
      height: 4rem;
      width: 4rem;
      border-radius: 50%;
      position: absolute;
      z-index: 100;
      margin-left: 20rem;
      margin-top: -2rem;
      transition: all .2s; }
      @media only screen and (max-width: 68.75em) {
        .food__menu--price {
          margin-left: 23rem; } }
      @media only screen and (max-width: 56.25em) {
        .food__menu--price {
          margin-left: 25rem; } }
      @media only screen and (max-width: 50em) {
        .food__menu--price {
          margin-left: 22rem; } }
      @media only screen and (max-width: 43.75em) {
        .food__menu--price {
          margin-left: 26rem; } }
      @media only screen and (max-width: 37.5em) {
        .food__menu--price {
          margin-left: 22rem; } }
      @media only screen and (max-width: 33.75em) {
        .food__menu--price {
          margin-left: 35rem; } }
      @media only screen and (max-width: 31.25em) {
        .food__menu--price {
          margin-left: 28rem; } }
      @media only screen and (max-width: 25em) {
        .food__menu--price {
          margin-left: 26rem; } }
      .food__menu--price p {
        color: #fff;
        text-align: center;
        position: relative;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
      .food__menu--price:hover {
        transform: scale(1.5) rotate(360deg); }
    .food__menu--img {
      margin-bottom: 1rem; }
    .food__menu--title {
      padding-bottom: 1rem;
      font-weight: 700;
      text-transform: uppercase;
      font-size: 1.5rem; }
    .food__menu--btn {
      outline: none;
      background-color: transparent;
      border: 1px solid #000;
      padding: 1rem 4rem;
      margin-top: 2rem;
      border-radius: 2rem;
      cursor: pointer; }
      .food__menu--btn:hover {
        background-color: #000;
        color: #fff;
        border: none; }
    .food__menu-cta {
      outline: none;
      border: none;
      background-color: #000;
      color: #fff;
      padding: 2rem 8rem;
      border-radius: 5rem;
      cursor: pointer;
      position: relative;
      top: 0;
      left: 50%;
      transform: translate(-50%, -50%);
      margin-top: 10rem; }
  .food__wave-bg {
    background-image: url(../img/wave-white.svg);
    width: 100%;
    height: 4rem;
    position: relative;
    bottom: -3rem;
    transform: rotate(180deg); }

.menu {
  grid-column: 1/-1;
  background-image: url(../img/menu-bg.png);
  background-size: cover;
  background-position: center;
  padding-bottom: 10rem;
  z-index: 100; }
  @media only screen and (max-width: 68.75em) {
    .menu {
      padding-top: 10rem; } }
  .menu__item {
    display: grid;
    grid-template-columns: repeat(8, 1fr); }
    .menu__item:not(:last-child) {
      margin-bottom: 10rem; }
    .menu__item--image {
      grid-column: 2/5;
      width: 100%;
      height: 100%; }
      @media only screen and (min-width: 50em) {
        .menu__item--image {
          height: 70%; } }
      @media only screen and (max-width: 37.5em) {
        .menu__item--image {
          grid-column: 2/7;
          height: 50rem; } }
      @media only screen and (max-width: 25em) {
        .menu__item--image {
          grid-column: 1/7; } }
    .menu__item--image2 {
      grid-column: 4/8;
      grid-row: 1/2; }
      @media only screen and (max-width: 37.5em) {
        .menu__item--image2 {
          grid-column: 3/8; } }
      @media only screen and (max-width: 25em) {
        .menu__item--image2 {
          grid-column: 3/9; } }
  .menu__detail {
    grid-column: 5/8;
    background-color: #fff;
    padding: 4rem;
    margin: 5rem 0;
    margin-left: -5rem; }
    @media only screen and (max-width: 37.5em) {
      .menu__detail {
        grid-column: 2/8;
        margin: -33rem 0;
        margin-left: 10rem;
        margin-bottom: 8rem; } }
    @media only screen and (max-width: 25em) {
      .menu__detail {
        grid-column: 1/8;
        margin-left: 3rem; } }
    .menu__detail--item {
      display: flex;
      align-items: center;
      padding-top: 1rem; }
    .menu__detail--title {
      font-weight: 400; }
    .menu__detail--subtitle {
      font-size: 3rem;
      text-transform: uppercase; }
    .menu__detail--name {
      padding-right: 3rem; }
    .menu__detail--line {
      height: 2px;
      width: 17rem;
      background-color: #eeeeee; }
    .menu__detail--money {
      padding-left: 2rem;
      font-weight: 700; }
    .menu__detail--text {
      padding-top: 2rem; }
  .menu__detail-2 {
    grid-column: 2/5;
    grid-row: 1/2;
    margin-left: 0;
    margin-right: -5rem;
    margin: 5rem 0; }
    @media only screen and (max-width: 37.5em) {
      .menu__detail-2 {
        grid-column: 2/8;
        margin-left: -2rem;
        margin-right: 9rem;
        grid-row: none;
        margin-top: -35rem; } }
    @media only screen and (max-width: 25em) {
      .menu__detail-2 {
        margin-right: 2rem; } }

.testimonial {
  grid-column: 1/-1;
  margin-top: -1rem;
  z-index: 10; }
  .testimonial__img {
    height: 100%;
    width: 100%; }
    @media only screen and (max-width: 31.25em) {
      .testimonial__img {
        height: 40rem; } }
  .testimonial__detail--right {
    background-color: #292929;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 3rem 8rem;
    font-size: 2rem;
    font-weight: 700; }
  .testimonial__icon {
    margin-bottom: 5rem; }
  .testimonial__name {
    font-weight: 400; }
  .testimonial p {
    text-align: center;
    padding-bottom: 4rem; }

.glide__bullets {
  left: 25%; }

@media only screen and (max-width: 37.5em) {
  .glide__arrow--left {
    left: 1rem; } }

@media only screen and (max-width: 37.5em) {
  .glide__arrow--right {
    right: 1rem; } }

@media only screen and (max-width: 37.5em) {
  .gride__arrow {
    padding: 5px 6px; } }

.testiominal__item {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(50rem, 1fr)); }

.recipe {
  grid-column: 1/-1;
  text-align: center;
  background-color: #F5F5F5;
  padding-bottom: 5rem; }
  .recipe__wave {
    width: 100%;
    position: relative;
    top: -.6%;
    z-index: 100; }
  .recipe__gallery {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    grid-template-rows: repeat(15, 5vw);
    grid-gap: 3rem;
    margin: 4rem 8rem; }
    @media only screen and (max-width: 31.25em) {
      .recipe__gallery {
        margin: 4rem 5rem; } }
    @media only screen and (max-width: 25em) {
      .recipe__gallery {
        margin: 4rem 3rem;
        grid-gap: 2rem; } }
  .recipe__wave--down {
    top: 4%;
    transform: rotate(180deg); }

.gallery__img {
  display: block;
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition: all .2s; }
  .gallery__img:hover {
    transform: scale(1.2);
    border: 4px solid #000;
    padding: .5rem; }

.gallery__item--1 {
  grid-row: 1/4;
  grid-column: 1/3; }

.gallery__item--2 {
  grid-row: 4/7;
  grid-column: 1/3; }

.gallery__item--3 {
  grid-row: 7/12;
  grid-column: 1/3; }

.gallery__item--4 {
  grid-row: 12/15;
  grid-column: 1/3; }

.gallery__item--5 {
  grid-row: 1/4;
  grid-column: 3/5; }

.gallery__item--6 {
  grid-row: 4/9;
  grid-column: 3/5; }

.gallery__item--7 {
  grid-row: 9/12;
  grid-column: 3/5; }

.gallery__item--8 {
  grid-row: 12/15;
  grid-column: 3/5; }

.gallery__item--9 {
  grid-row: 1/7;
  grid-column: 5/7; }

.gallery__item--10 {
  grid-row: 7/12;
  grid-column: 5/7; }

.gallery__item--11 {
  grid-row: 12/15;
  grid-column: 5/7; }

.gallery__item--12 {
  grid-row: 1/4;
  grid-column: 7/9; }

.gallery__item--13 {
  grid-row: 4/7;
  grid-column: 7/9; }

.gallery__item--14 {
  grid-row: 7/10;
  grid-column: 7/9; }

.gallery__item--15 {
  grid-row: 10/15;
  grid-column: 7/9; }

.btn {
  outline: none;
  border: none;
  padding: 2rem 5rem;
  background-color: #000;
  color: #fff;
  border-radius: 3rem; }

.chef {
  grid-column: 1/-1;
  margin: 8rem 4rem;
  margin-bottom: 2rem; }
  @media only screen and (max-width: 37.5em) {
    .chef {
      height: 150rem; } }
  .chef__titles {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center; }
  .chef__detail {
    margin-top: 50rem;
    display: flex;
    justify-content: center;
    height: 20rem; }
    @media only screen and (max-width: 87.5em) {
      .chef__detail {
        margin-top: 36rem; } }
    @media only screen and (max-width: 37.5em) {
      .chef__detail {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(40rem, 1fr)); } }
  .chef__card {
    background: #F5F5F5;
    padding: 0 6rem; }
    @media only screen and (max-width: 43.75em) {
      .chef__card {
        padding: 0 4rem; } }
    @media only screen and (max-width: 37.5em) {
      .chef__card {
        padding: 0 14rem; } }
  .chef__item {
    display: grid;
    justify-self: center;
    padding: 4rem 6rem;
    transition: all 2s; }
    @media only screen and (max-width: 50em) {
      .chef__item {
        padding: 4rem 3rem; } }
    @media only screen and (max-width: 43.75em) {
      .chef__item {
        padding: 4rem 2rem; } }
    @media only screen and (max-width: 37.5em) {
      .chef__item {
        margin: -10rem; } }
    .chef__item:hover .hover__detail {
      opacity: 1;
      visibility: visible;
      transform: translateY(-8rem); }
    .chef__item--bg {
      background-color: #F5F5F5;
      height: 35rem;
      width: 40rem;
      z-index: 99; }
    .chef__item--photo {
      height: 40rem;
      z-index: 100; }
      @media only screen and (max-width: 87.5em) {
        .chef__item--photo {
          height: 30rem; } }
      @media only screen and (max-width: 43.75em) {
        .chef__item--photo {
          height: 25rem; } }
    .chef__item--names {
      background-color: #F5F5F5;
      text-align: center;
      padding: 2rem 0;
      position: relative;
      top: -400%;
      border-bottom-right-radius: 1rem;
      border-bottom-left-radius: 1rem; }
      @media only screen and (max-width: 87.5em) {
        .chef__item--names {
          top: -300%; } }
      @media only screen and (max-width: 81.25em) {
        .chef__item--names {
          top: -320%; } }
      @media only screen and (max-width: 43.75em) {
        .chef__item--names {
          top: -257%; } }
    .chef__item--name {
      font-weight: 700;
      font-size: 2rem;
      text-transform: uppercase;
      padding-bottom: .5rem; }

.hover__detail {
  background-color: #292929;
  color: #fff;
  padding: 2rem 0;
  text-align: center;
  border-bottom-right-radius: 1rem;
  border-bottom-left-radius: 1rem;
  position: relative;
  top: -260%;
  z-index: 300;
  visibility: hidden;
  opacity: 0;
  transform: translateY(8rem); }
  @media only screen and (max-width: 87.5em) {
    .hover__detail {
      top: -200%; } }
  .hover__detail--names {
    padding-bottom: 2rem; }
  .hover__detail--line {
    width: 50%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.3);
    margin: auto; }

.social {
  padding-top: 2rem;
  display: flex;
  justify-content: center;
  margin: 1rem; }
  .social__icon {
    padding: 1rem;
    position: relative;
    top: 50%;
    left: 50% !important;
    transform: translate(-50%, -50%); }
  .social__item:hover {
    background-color: #fff;
    color: #000;
    height: 4rem;
    width: 4rem;
    border-radius: 50%; }

.chef__card {
  position: relative;
  top: -100%;
  margin: auto;
  z-index: 100; }

.accomplishment {
  grid-column: 1/-1;
  background-image: url(../img/accomplishment-bg.svg);
  background-size: cover;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
  grid-gap: 5rem;
  justify-items: center;
  color: #fff;
  padding: 4rem;
  padding-top: 6rem;
  align-items: center; }
  @media only screen and (max-width: 25em) {
    .accomplishment {
      grid-gap: 8rem;
      background-color: #292929;
      background-image: none; } }
  .accomplishment__icon {
    height: 7rem; }
  .accomplishment__number {
    font-size: 2rem; }

.reserve {
  grid-column: 1/-1;
  margin: 8rem 0; }
  .reserve__titles {
    text-align: center;
    margin-bottom: 6rem; }
  .reserve__detail {
    display: flex; }
  .reserve__img {
    height: 80rem;
    z-index: 99; }
    @media only screen and (max-width: 87.5em) {
      .reserve__img {
        height: 70rem; } }
    @media only screen and (max-width: 75em) {
      .reserve__img {
        height: 65rem; } }
    @media only screen and (max-width: 50em) {
      .reserve__img {
        height: 60rem; } }
    @media only screen and (max-width: 31.25em) {
      .reserve__img {
        width: 100%; } }
  .reserve__item {
    background: #f5f5f5;
    padding: 5rem;
    height: 70rem;
    width: 55rem;
    z-index: 100;
    margin-left: -7rem;
    margin-top: 6rem; }
    @media only screen and (max-width: 68.75em) {
      .reserve__item {
        height: 73rem; } }
    @media only screen and (max-width: 43.75em) {
      .reserve__item {
        margin-left: -37rem;
        margin-top: 16rem; } }
    @media only screen and (max-width: 37.5em) {
      .reserve__item {
        font-size: 2rem;
        margin-left: -60rem;
        height: 84rem;
        width: 60rem; } }
    @media only screen and (max-width: 31.25em) {
      .reserve__item {
        margin-left: -67rem; } }
    @media only screen and (max-width: 25em) {
      .reserve__item {
        margin-left: -60rem;
        padding: 6rem; } }
  .reserve__content {
    display: flex; }
  .reserve__input-form {
    display: flex;
    flex-direction: column;
    margin: 0 1rem; }
  .reserve__ocassion {
    display: flex;
    flex-direction: column;
    outline: none;
    border: none;
    margin-bottom: 3rem;
    width: 42rem;
    margin-left: 1rem; }
  .reserve__message {
    display: flex;
    flex-direction: column;
    margin-left: 1rem; }

input {
  outline: none;
  border: none;
  margin-bottom: 3rem;
  padding: 1rem; }

label {
  margin-bottom: 1rem; }

#name,
#email,
#phone,
#time,
#date {
  height: 3rem;
  width: 20rem; }
  @media only screen and (max-width: 37.5em) {
    #name,
    #email,
    #phone,
    #time,
    #date {
      height: 5rem;
      width: 25rem; } }

#table {
  outline: none;
  border: none;
  width: 20rem;
  height: 3rem; }
  @media only screen and (max-width: 37.5em) {
    #table {
      height: 5rem;
      width: 25rem; } }

#message {
  border: none;
  outline: none;
  padding: 1rem; }

#button {
  background: #000;
  color: #fff;
  padding: 2rem 5rem;
  margin-top: 3rem;
  border-radius: 3rem;
  transition: all .2s;
  outline: none; }
  @media only screen and (max-width: 25em) {
    #button {
      margin: 3rem 16rem; } }
  #button:hover {
    transform: scale(1.06); }
  #button:active {
    transform: translateY(1rem); }

#ocassion {
  border: none;
  outline: none;
  height: 4.4rem;
  padding: 1rem; }
  @media only screen and (max-width: 37.5em) {
    #ocassion {
      height: 5.4rem;
      width: 53rem; } }

.blog {
  grid-column: 1/-1;
  background-image: url(../img/blog-bg.svg);
  background-size: cover;
  z-index: 99;
  padding-bottom: 30rem; }
  @media only screen and (max-width: 81.25em) {
    .blog {
      padding-bottom: 40rem; } }
  .blog__titles {
    text-align: center;
    padding-top: 8rem; }
  .blog__detail {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    grid-gap: 4rem;
    padding: 3rem; }
  .blog__item {
    background-color: #fff;
    box-shadow: 0 2px 6px rgba(235, 235, 235, 0.5); }
    .blog__item-photo {
      width: 100%; }
    .blog__item-date {
      display: flex; }
    .blog__item-clock {
      margin-right: 2rem; }

.blog__post {
  padding: 2rem; }
  .blog__post--title {
    padding: 1rem 0; }
  .blog__post--button {
    padding: 2rem 0; }
  .blog__post--cta {
    outline: none;
    border: none;
    background-color: transparent;
    font-weight: 700;
    text-transform: uppercase;
    padding-left: 2rem; }
    .blog__post--cta a:link,
    .blog__post--cta a:visited {
      text-decoration: none;
      color: #000;
      outline: none; }

.newsletter {
  grid-column: 1/-1;
  background-image: url(../img/accomplishment-bg.svg);
  background-size: cover;
  color: #fff;
  padding: 6rem;
  width: 80%;
  margin: auto;
  z-index: 100;
  margin-top: -15rem;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3); }
  @media only screen and (max-width: 81.25em) {
    .newsletter {
      padding-right: 3rem;
      position: relative;
      top: -70%; } }
  @media only screen and (max-width: 43.75em) {
    .newsletter {
      width: 100%; } }
  @media only screen and (max-width: 31.25em) {
    .newsletter {
      top: -40%; } }
  .newsletter__detail {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
    grid-gap: 5rem;
    align-items: center; }
    @media only screen and (max-width: 31.25em) {
      .newsletter__detail {
        grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr)); } }
  .newsletter__title {
    font-size: 6rem;
    line-height: 1;
    padding-bottom: 3rem; }
  .newsletter__text {
    font-size: 1.8rem; }
  .newsletter__signup {
    padding-top: 5rem; }
    .newsletter__signup input {
      outline: none;
      border: none;
      width: 65%;
      height: 5rem;
      border-radius: 4px; }
      @media only screen and (max-width: 81.25em) {
        .newsletter__signup input {
          width: 60%; } }
      @media only screen and (max-width: 50em) {
        .newsletter__signup input {
          width: 90%;
          height: 6rem; } }
  .newsletter__cta {
    outline: none;
    border: none;
    background-color: #fff;
    color: #000;
    padding: 1.5rem 3rem;
    margin-left: 2rem;
    font-size: 1.6rem;
    text-transform: uppercase;
    border-radius: 4px; }
    @media only screen and (max-width: 50em) {
      .newsletter__cta {
        margin-left: none; } }
    .newsletter__cta a:link,
    .newsletter__cta a:visited {
      text-decoration: none;
      outline: none;
      color: #000; }

.footer {
  grid-column: 1/-1;
  background-image: url(../img/background-black.svg);
  background-size: cover;
  color: #fff;
  padding: 6rem;
  padding-top: 28rem;
  z-index: 99;
  margin-top: -22rem;
  width: 99%; }
  @media only screen and (max-width: 68.75em) {
    .footer {
      padding-top: 22rem; } }
  .footer__detail {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
    grid-gap: 4rem; }
    @media only screen and (max-width: 62.5em) {
      .footer__detail {
        grid-template-columns: repeat(auto-fit, minmax(40rem, 1fr));
        grid-gap: 8rem; } }
  .footer__dev--title {
    font-size: 3rem;
    text-transform: uppercase;
    font-weight: 700;
    padding-bottom: 3rem; }
  .footer__social {
    padding-top: 4rem;
    display: flex; }
    .footer__social--icon {
      margin-left: 2rem;
      height: 4rem;
      width: 4rem;
      border-radius: 50%; }
    .footer__social--facebook {
      background-color: #3B5999; }
    .footer__social--twitter {
      background-color: #55ACEE; }
    .footer__social--instagram {
      background-color: #E4405F; }
    .footer__social--linkedin {
      background-color: #0077B5; }
  .footer__title {
    font-size: 1.8rem;
    text-transform: uppercase;
    font-weight: 700;
    padding-bottom: 3rem;
    padding-top: 1rem; }
  .footer__hours {
    display: flex;
    align-items: center; }
  .footer__line {
    height: 1px;
    width: 7rem;
    background-color: #fff;
    margin: 0 2rem; }
  .footer__contact {
    display: flex;
    align-items: first baseline; }
    .footer__contact--icon {
      padding-right: 2rem; }
    .footer__contact--text-location {
      padding-top: 3rem;
      padding-bottom: 2rem; }
    .footer__contact--text a:link,
    .footer__contact--text a:visited {
      text-decoration: none;
      color: #fff; }
  .footer__bottom--line {
    height: 1px;
    background-color: rgba(255, 255, 255, 0.4);
    width: 100%;
    margin-top: 4rem; }
  .footer__copyright {
    text-align: center;
    padding-top: 2rem; }
    .footer__copyright a:link,
    .footer__copyright a:visited {
      color: #fff;
      text-decoration: none; }

.fab {
  display: flex;
  justify-content: center;
  padding-top: 1.2rem;
  position: relative;
  left: 30%; }
