@media (max-device-width: 480px), (max-width: 950px) {

    body {
      -webkit-text-size-adjust: 100%;
      overflow: initial;
      
      --padding-lr: 20px;
      --text-baskerville: 22px;
      --text-baskerville-big: 32px;
      --line-height-baskerville-big: 36px;
    }
  
    .desctop-only{
      display: none !important;
    }
  
    header, footer{
      padding: 10px var(--padding-lr);
    }
  
    .mobile-only{
      display: inline-block;
    }
    
    .tigid-preloader__logo{
      width: 120px !important;
    }
    .margin-top-90{
      margin-top: 50px;
    }
    .margin-top-150 {
      margin-top: 70px;
    }
  
    .home {
      height: calc(var(--vh, 1vh) * 100);
    }
  
    .main.white>header .logo, header .logo{
      content: url(../img/NM_LOGO_EMBLEM.svg);
      width: 40px;
    }
  
    .menu-page header .logo{
      content: url('../img/NM_LOGO_FULL.svg');
      width: 70px;
    }
    
  
    .hidden-gallery{
      width: 100%;
      position: fixed;
      top: 0px;
      left: 0px;
      overflow-y: scroll;
      height: 100%;
      box-sizing: border-box;
      padding: 0px 20px;
      z-index: 1000;
      background-color: var(--color-bg);
    }
    .hidden-gallery::-webkit-scrollbar{
      width: 0px;
      height: 0px;
    }
  
    .hidden-project-image, .hidden-project-image video, .hidden-project-image img{
      width: 100%;
      height: auto;
    }
  
    .hidden-project-image{
      margin-top: 20px;
      font-size: 0px;
      line-height: 0px;
      letter-spacing: 0px;
    }
  
    .close-hidden-gallery{
      width: 100%;
      height: 90px;
      background-image: url(../img/CLOSE-black.svg);
      background-size: 10px;
      background-position: center;
      background-repeat: no-repeat;
      display: block;
    }
  
    .menu-blocks{
      grid-row-gap: 50px;
      margin-top: 70px !important;
    }
  
    .home-text-blocks, .menu-blocks {
      grid-template-columns: 100%;
      padding: 0px;
      --text-baskerville: 32px;
    }
    .home-text-block.big-block, .menu-block.big-block{
      grid-column: 1/2;
      padding: 0px 0px;
    }
    .home-text-block, .menu-block {
      padding: 0px 20px;
    }
    .home-text-block>div, .menu-block>div{
      margin-bottom: 50px;
    }
    .home-text-block>h3, .menu-block>h3{
      margin-bottom: 15px;
    }
  
    main {
      overflow: hidden;
    }
  
    footer{
      padding: 40px var(--padding-lr) 24px;
      margin-top: 100px;
    }
  
    footer .right-side{
      text-align: left;
    }
  
    footer .top-text{
      grid-template-columns: 100%;
      text-align: left;
      grid-row-gap: 30px;
      margin-bottom: 45px;
    }
  
    footer .bottom-text{
      flex-direction: column-reverse;
      text-align: left;
    }
  
    footer .bottom-text a {
      margin-left: 0px;
      margin-right: 20px;
    }
    
    footer .bottom-text .right-side{
      height: 60px;
      justify-content: center;
    }
  
    header .menu {
      font-size: 0px;
    }
  
    .main:not(.white) header .menu, .close-menu{
      font-size: 0px;
    }
    .openReservation header {
      background-color: var(--color-bg);
    }
  
    .reservation-form {
      align-items: flex-start;
      overflow-y: scroll;
      padding: 85px 20px 40px;
      background-color: var(--color-bg);
      height: 100%;
    }
  
    .reservation2{
      font-size: 0px;
    }
    .reservation2::after{
      content: 'book';
      font-size: var(--text-uppercase);
    }
  
    .home-image {
      padding: 63px 0px 0px;
      height: 100%;
    }
    .home-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
  
    .main:not(.white) .reservation, .menu-page .reservation{
      font-size: 0px;
      display: flex;
      justify-content: flex-end;
    }
  
    .main:not(.white) .reservation::after, .menu-page .reservation::after {
      content: '';
      background-image: url('../img/BOOK_01.svg');
      width: 13px;
      height: 18px;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      display: inline-block;
    }
    .reservation:hover{
      opacity: 1 !important;
    }
  
    .main:not(.white).openReservation .reservation::after{
      background-image: url('../img/BOOK_02.svg');
    }
  
    section:not(.home) {
      padding: 70px var(--padding-lr) 0px;
    }
  
    .about-block .image-w-border{
      width: 200px;
      margin-bottom: 45px;
    }
  
    h2.small-title {
      margin-bottom: 20px;
    }
  
    p{
      font-size: var(--text-normal);
      line-height: 24px;
      width: calc(100% - 10px);
    }
  
    .full-width-image{
      margin-top: 70px;
    }
    .about-block .button{
      margin-top: 40px;
    }
  
    .restaurant-menu{
      margin-top: 70px;
    }
    .restaurant-menu-grid{
      grid-template-columns: 100%;
      grid-row-gap: 70px;
    }
  
    .restaurant-menu-grid>div:nth-child(2n)::before, .restaurant-menu-grid>div:nth-child(n + 3)::after{
      display: none;
    }
  
    .restaurant-menu-grid>div{
      padding: 0px 20px;
    }
  
    .menu-page{
      height: 100%;
    }
  
    .menu-page .restaurant-menu-grid{
      display: flex;
      align-items: center;
      justify-content: center;
      overflow-y: scroll;
    }
  
    .menu-page .restaurant-menu-grid>div:last-child{
      display: none;
    }
  
    .text-page{
      padding-top: 110px !important;
    }
    .text-page .full-width-image{
      margin-bottom: 50px;
    }
    .text-page .image-w-border{
      width: 200px;
      margin-bottom: 50px;
    }
    .image-gallery img{
      height: auto;
      width: 100%;
    }
    .image-gallery>div{
      height: initial !important;
      width: 100% !important;
    }
  
    .big-title{
      margin-bottom: 20px;
    }
  
    .team-page .image-w-border{
      width: 250px;
      margin-bottom: 50px;
    }
    .team-page .image-w-border:not(:first-child){
      margin-top: 70px;
    }
  
    .photo-gallery{
      grid-template-columns: 100%;
      /* padding-top: 110px !important; */
      grid-row-gap: 24px;
    }
  
    .photo-gallery>a:nth-child(3n + 1){
      grid-column: 1/2;
    }
  
    .gallery-item{
      pointer-events: none;
      height: initial !important;
      min-height: initial !important;
    }
  
    .request, .thank-you-book-form {
      width: 100%;
      padding: 24px 20px;
      margin-top: 70px;
    }
  
    .request-inputs input, .request-inputs select{
      width: 100% !important;
    }
  
    .request .title{
      margin-bottom: 24px;
    }
  
    .lang.mobile-only{
      display: block;
      text-transform: uppercase;
      margin-top: 15px;
    }
  
    .menu-page .menu {
      font-size: 22px;
      line-height: 36px;
    }
    .newsletter{
      margin-left: 0px;
      width: 100%;
      height: initial;
    }
    .right-side>p{
      text-align: right;
      transform: translateX(10px);
    }
  
    header .right-side>.reservation {
      transform: none;
    }
  
    .image-gallery{
      padding: 0px 20px;
      width: 100vw;
      margin-top: 70px !important;
      box-sizing: border-box;
    }
    .gallery-numbers {
      margin-top: 20px;
    }
  
    .reservation-form>div{
      min-width: 100%;
      max-width: 100%;
    }
  
  
    .photos-grid{
      grid-template-columns: 100%;
      padding: 0px 0px;
    }
    .photos-grid .full-width-image.big-photo{
      grid-column: 1/2;
    }
    .photos-grid .full-width-image{
      padding: 0px 0px;
      pointer-events: none;
      margin-bottom: 25px !important;
    }
  
  
    .menu-block>.full-width-image {
      height: initial
    }
    .home-text-block .full-width-image {
      max-height: initial;
    }
  
    .partners {
      margin-top: 10px;
      flex-wrap: wrap;
    }
    
    .partners a {
      margin: 10px 20px;
    }
    
    .partners img {
      max-width: calc(50vw - 60px);
    }
  
    .popup-out {
      overflow-y: scroll;
      display: block;
      padding-top: 30px;
    }
  
    .popup-out .item .title {
      height: 80px;
    }
  
    .popup-out .item .text {
      padding: 0px 10px;
    }
  
    .winter {
      width: 100%;
      height: calc(100% - 63px);
      top: 63px;
      left: 0px;
    }
  
    .big-text p{
      font-size: 20px !important;
      line-height: 24px !important;
      padding: 0px 30px;
    }
  
    .winter-text-block {
      margin-bottom: 20px;
    }
  
    .winter .small-title, .winter .button {
      margin-bottom: 30px;
    }
  
    .winter .big-text {
      margin-bottom: 40px;
    }
  
  }
  
  @media (max-device-height: 570px), (max-height: 570px) {
    .menu-page .menu {
        font-size: 22px;
        line-height: 40px;
    }
  }