nav.site-nav,
nav[data-solid]{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:36px 64px;
  transition:padding .5s,background .5s;
}

nav.site-nav.solid,
nav[data-solid].solid{
  background:rgba(249,246,240,.92);
  backdrop-filter:blur(20px);
  padding:20px 64px;
  border-bottom:1px solid rgba(26,23,20,.08);
}

nav.site-nav .logo,
nav[data-solid] .logo{
  display:flex;
  align-items:center;
  text-decoration:none;
  min-height:auto;
  padding:0;
  border:0;
}

nav.site-nav .logo img,
nav[data-solid] .logo img{
  height:48px;
  width:auto;
  display:block;
}

.nav-center{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  display:flex;
  gap:40px;
  list-style:none;
  margin:0;
  padding:0;
}

.nav-center a{
  display:inline;
  font-family:'Jost',sans-serif;
  font-size:11px;
  letter-spacing:3px;
  line-height:normal;
  text-transform:uppercase;
  color:#1A1714;
  text-decoration:none;
  font-weight:700;
  min-height:auto;
  padding:0;
  border:0;
  opacity:1;
  transition:opacity .3s;
}

.nav-center a:hover{opacity:1}

.nav-right{
  display:block;
  font-family:'Jost',sans-serif;
  font-size:11px;
  letter-spacing:3px;
  line-height:normal;
  text-transform:uppercase;
  color:#1A1714;
  text-decoration:none;
  font-weight:400;
  min-height:auto;
  padding:0 0 2px;
  border:0;
  border-bottom:1px solid #1A1714;
  transition:opacity .3s;
}

.nav-right:hover{opacity:.5}

.nav-burger{
  display:none;
  background:transparent;
  border:0;
  padding:8px;
  width:44px;
  height:44px;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  cursor:pointer;
  margin-left:14px;
  z-index:101;
  position:relative;
}

.nav-burger span{
  display:block;
  width:22px;
  height:1.5px;
  background:#1A1714;
  transition:transform .35s ease,opacity .25s ease;
  transform-origin:center;
}

.nav-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.nav-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

.mobile-menu{
  position:fixed;
  inset:0;
  z-index:99;
  background:rgba(249,246,240,.98);
  backdrop-filter:blur(20px);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  transition:opacity .4s ease;
}

.mobile-menu[data-open="true"]{
  opacity:1;
  pointer-events:auto;
}

.mobile-menu[hidden]{display:none}

.mobile-menu-inner{
  width:100%;
  max-width:480px;
  padding:0 32px;
  display:flex;
  flex-direction:column;
  gap:6px;
}

.mm-link{
  display:block;
  font-family:'Playfair Display',serif;
  font-size:32px;
  font-weight:300;
  line-height:1.4;
  letter-spacing:-.5px;
  color:#1A1714;
  text-decoration:none;
  padding:8px 0;
  border-bottom:1px solid rgba(26,23,20,.06);
  transition:padding-left .3s ease,color .3s ease;
}

.mm-link:hover,
.mm-link:active{
  padding-left:8px;
  color:#5C4F3D;
}

.mm-divider{height:24px}

.mm-contact{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:8px;
}

.mm-contact-line{
  font-family:'Jost',sans-serif;
  font-size:14px;
  letter-spacing:.5px;
  color:rgba(26,23,20,.78);
  text-decoration:none;
}

.mm-muted{
  color:rgba(26,23,20,.62);
  font-size:13px;
}

body[data-menu-open="true"]{overflow:hidden}

body.has-fixed-nav{padding-top:88px}

footer{
  font-size:16px;
  font-weight:300;
  line-height:1.72;
}

@media(max-width:1024px){
  nav.site-nav,
  nav[data-solid]{
    padding:24px 40px;
  }

  nav.site-nav.solid,
  nav[data-solid].solid{
    padding:20px 40px;
  }
}

@media(max-width:900px){
  nav.site-nav,
  nav[data-solid]{
    padding:24px;
  }

  nav.site-nav.solid,
  nav[data-solid].solid{
    padding:16px 24px;
  }

  .nav-center{display:none}
  .nav-burger{display:flex}
  .nav-right{display:none}
  .nav-burger,
  .mm-link{min-height:44px}

  body.has-fixed-nav{padding-top:80px}
}
