@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500;1,600;1,700&family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap');

@font-face{font-family:"Times Sans Serif Custom";src:url("fonts/TIMESS__.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
:root{
  --primary:#E6D296;
  --surface:#050505;
  --black:#000;
  --white:#fff;
  --display-font:"Times Sans Serif Custom","Cormorant Garamond",serif;
  --ease:cubic-bezier(.25,.1,.25,1);
  --ease-out:cubic-bezier(.19,1,.22,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{width:100%;height:100%;overflow:hidden;background:#000;color:#fff;font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}
button,a{font:inherit;color:inherit}button{border:0;background:transparent;cursor:pointer}a{text-decoration:none}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}
.app-shell{height:100dvh;width:100%;position:relative;overflow:hidden;background:#000;color:#fff}.page{position:absolute;inset:0;height:100%;width:100%;background:#000;opacity:0;transform:scale(1.02);pointer-events:none;transition:opacity .8s var(--ease),transform .8s var(--ease);overflow:hidden}.page.is-active{opacity:1;transform:scale(1);pointer-events:auto;z-index:5}.page.leaving{opacity:0;transform:scale(.98)}
.logo{color:#fff}.logo-svg{width:100%;height:auto;display:block}.icon{display:block;width:100%;height:100%}
.home-layout{height:100%;width:100%;display:flex;flex-direction:row;overflow:hidden;background:#000}.hero-pane{position:relative;width:70%;height:100%;overflow:hidden;flex-shrink:0}.hero-bg,.hero-bg>div{position:absolute;inset:0}.hero-bg{background-size:cover;background-position:center}.hero-hover-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;z-index:0}.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(0,0,0,.4),transparent 48%,rgba(0,0,0,.6))}.home-header{position:absolute;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:40px}.header-left{display:flex;align-items:center;gap:40px}.logo-header{width:82px;opacity:1}.desktop-nav{display:flex;align-items:center;gap:32px;padding-top:2px}.nav-link{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#fff;font-weight:400;transition:color .3s ease}.nav-link:hover{color:rgba(255,255,255,.7)}.book-btn{border:1px solid rgba(197,160,89,.75);background:rgba(197,160,89,.14);box-shadow:0 18px 45px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,255,255,.06);backdrop-filter:blur(10px);padding:15px 34px;color:#f5dfb0;font-size:11px;letter-spacing:.34em;text-transform:uppercase;font-weight:700;transition:background .45s ease,color .45s ease,border-color .45s ease,box-shadow .45s ease,transform .45s ease;white-space:nowrap}.book-btn:hover{background:var(--primary);color:#000;border-color:var(--primary);box-shadow:0 22px 55px rgba(197,160,89,.22),0 18px 45px rgba(0,0,0,.5);transform:translateY(-1px)}.hero-copy{position:absolute;left:48px;right:48px;top:160px;bottom:190px;z-index:10;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;animation:heroIn 1.5s var(--ease-out) both}.hero-copy h1,.hero-copy h2{font-family:var(--display-font);font-style:normal;font-weight:300;line-height:.8;letter-spacing:-.03em}.hero-copy h1{font-size:68px;color:#E6D296;line-height:.95;text-shadow:0 2px 10px rgba(0,0,0,.55),0 8px 24px rgba(0,0,0,.38);margin:0}.hero-copy h2{font-size:62px;color:var(--primary);margin-top:6px;text-shadow:0 25px 50px rgba(0,0,0,.45);opacity:.9;line-height:.95}.hero-copy p{font-size:15px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.82);margin:0;font-weight:500;text-shadow:0 2px 10px rgba(0,0,0,.45);max-width:560px}.instagram-wrap{position:absolute;right:40px;bottom:40px;z-index:20}.instagram-box{width:44px;height:44px;background:#5b1526;display:flex;align-items:center;justify-content:center;box-shadow:0 25px 50px rgba(0,0,0,.55);transition:background .3s ease}.instagram-box:hover{background:#721a30}.instagram-svg{width:20px;height:20px;color:#fff;display:block}
.tiles-pane{width:30%;height:100%;display:flex;flex-direction:column;flex-shrink:0}.nav-tile{position:relative;flex:1;overflow:hidden;cursor:pointer;border-top:1px solid rgba(255,255,255,.05)}.nav-tile:first-child{border-top:0}.tile-video-wrap,.tile-image{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 5s ease}.tile-video{width:100%;height:100%;object-fit:cover;pointer-events:none;display:block}.nav-tile:hover .tile-video-wrap,.nav-tile:hover .tile-image{transform:scale(1.05)}.tile-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8),rgba(0,0,0,.2),transparent);transition:background .7s ease;z-index:2}.nav-tile:hover .tile-overlay{background:linear-gradient(to top,rgba(0,0,0,.6),rgba(0,0,0,.15),transparent)}.tile-content{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:32px}.tile-line{display:flex;align-items:center;justify-content:flex-end;gap:12px;transform:translateY(4px);transition:transform .7s ease}.nav-tile:hover .tile-line{transform:translateY(0)}.tile-line span:first-child{font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:#fff;font-weight:400}.tile-icon{width:32px;height:32px;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.2);backdrop-filter:blur(4px);transition:border-color .3s ease}.nav-tile:hover .tile-icon{border-color:rgba(255,255,255,.4)}.tile-icon svg{width:14px;height:14px;color:rgba(255,255,255,.9)}.mobile-only{display:none}.desktop-only{display:block}
 .back-btn{box-shadow:0 14px 35px rgba(0,0,0,.45);border:1px solid rgba(197,160,89,.55);background:rgba(197,160,89,.12);color:#f5dfb0;position:fixed;top:32px;left:32px;z-index:50;color:#f5dfb0;display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;background:rgba(0,0,0,.68);backdrop-filter:blur(14px);padding:12px 20px;border:1px solid rgba(197,160,89,.72);box-shadow:0 18px 45px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.05);transition:color .3s ease,background .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s ease}.back-btn:hover{color:#000;background:var(--primary);border-color:var(--primary);box-shadow:0 20px 52px rgba(197,160,89,.18),0 18px 45px rgba(0,0,0,.55);transform:translateY(-1px)}
.about-layout{height:100%;width:100%;display:flex;flex-direction:row;background:#000}.about-visual{position:relative;width:60%;height:100%;overflow:hidden;flex-shrink:0}.about-visual-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.1)}.page.is-active .about-visual-bg{animation:visualScale 2s ease-out forwards}.about-visual-overlay{position:absolute;inset:0;background:linear-gradient(to top,#000,rgba(0,0,0,.2),transparent)}.about-visual-title{position:absolute;left:80px;bottom:80px;z-index:2;max-width:576px}.about-visual-title h1{font-family:var(--display-font);font-style:normal;font-size:128px;font-weight:400;line-height:.8;letter-spacing:-.04em}.about-visual-title span{color:var(--primary);font-style:normal;font-weight:300;opacity:.9}.about-scroll{flex:1;height:100%;overflow-y:auto;background:#050505}.about-content{max-width:672px;margin:0 auto;padding:192px 64px;display:flex;flex-direction:column;gap:96px}.content-block{display:flex;flex-direction:column;gap:40px}.eyebrow{display:block;font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.4em;color:rgba(197,160,89,.6);font-weight:700}.content-block h2{font-family:var(--display-font);font-size:48px;font-weight:400;line-height:1.08;color:#fff}.content-block h2 em{font-style:italic}.content-block p{font-size:18px;font-weight:300;line-height:1.7;color:rgba(255,255,255,.5)}.experience-frame{aspect-ratio:16/9;width:100%;overflow:hidden;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}.experience-frame img{width:100%;height:100%;object-fit:cover;opacity:.4;display:block;transition:opacity 1s ease}.experience-frame:hover img{opacity:.6}.values-grid{display:grid;grid-template-columns:1fr;gap:48px}.value-item{display:flex;gap:32px}.value-item>span{font-family:var(--display-font);font-style:italic;font-size:24px;color:rgba(197,160,89,.4);padding-top:4px}.value-item h3{font-size:14px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.9);font-weight:700;margin-bottom:12px;transition:color .3s ease}.value-item:hover h3{color:var(--primary)}.value-item p{font-size:14px;line-height:1.65;color:rgba(255,255,255,.4)}
.page-menu{min-height:100%;height:100%;overflow-y:auto;background:#0a0a0a;display:flex;align-items:center;justify-content:center;padding:0;position:absolute}.menu-glow{position:absolute;width:40%;height:40%;border-radius:999px;background:rgba(197,160,89,.1);filter:blur(100px);opacity:.2;pointer-events:none}.menu-glow-a{top:10%;left:-5%}.menu-glow-b{right:-5%;bottom:10%}.menu-back{background:rgba(0,0,0,.68);border-color:rgba(197,160,89,.72)}.menu-inner{position:relative;z-index:1;max-width:1152px;width:100%;padding:0 96px;display:grid;grid-template-columns:1fr 1fr;gap:128px;align-items:center}.menu-copy{display:flex;flex-direction:column;gap:40px}.menu-copy h1{font-family:var(--display-font);font-style:normal;font-size:96px;font-weight:400;line-height:.9;color:#fff}.menu-copy h1 span{color:rgba(197,160,89,.9);font-weight:300;display:inline-block;transform:translateX(16px)}.menu-copy p{max-width:448px;color:#a8a29e;font-size:20px;line-height:1.62;font-weight:400;opacity:.8}.qr-wrap{display:flex;flex-direction:column;align-items:flex-end}.qr-wrap>div{position:relative}.qr-ring{position:absolute;inset:auto;border:1px solid rgba(255,255,255,.05);border-radius:999px;transform:scale(1.1);transition:transform 1s ease}.qr-wrap:hover .qr-ring{transform:scale(1)}.qr-card{position:relative;background:#121212;padding:64px;border:1px solid rgba(255,255,255,.1);box-shadow:0 35px 70px rgba(0,0,0,.55);transition:border-color .7s ease}.qr-card:hover{border-color:rgba(197,160,89,.3)}.qr-corners{position:relative}.qr-icon{width:192px;height:192px;color:var(--primary);opacity:.9;transition:opacity .3s ease}.qr-card:hover .qr-icon{opacity:1}.corner{position:absolute;width:32px;height:32px}.corner-tl{top:-16px;left:-16px;border-top:1px solid rgba(197,160,89,.4);border-left:1px solid rgba(197,160,89,.4)}.corner-br{right:-16px;bottom:-16px;border-right:1px solid rgba(197,160,89,.4);border-bottom:1px solid rgba(197,160,89,.4)}.qr-card p{margin-top:48px;text-align:center;font-size:10px;text-transform:uppercase;letter-spacing:.4em;color:rgba(255,255,255,.5);font-weight:700}
.restaurant-layout{height:100%;width:100%;display:flex;flex-direction:row;background:#000}.map-pane{position:relative;width:60%;height:100%;overflow:hidden;order:1;flex-shrink:0}.map-pane iframe{display:block;filter:grayscale(1) invert(1) opacity(.5) contrast(1.25)}.restaurant-info{position:relative;z-index:1;order:2;flex:1;height:100%;display:flex;flex-direction:column;justify-content:center;background:#050505;padding:64px 96px}.restaurant-back{position:absolute;top:48px;left:48px;background:rgba(0,0,0,.68);border:1px solid rgba(197,160,89,.72);padding:12px 20px;backdrop-filter:blur(14px)}.restaurant-content{max-width:448px;width:100%;display:flex;flex-direction:column;gap:48px}.restaurant-content h1{font-family:var(--display-font);font-style:normal;font-size:96px;font-weight:400;line-height:.9;color:#fff}.restaurant-content h1 span{color:var(--primary)}.info-row{display:flex;align-items:flex-start;gap:20px}.info-icon{width:40px;height:40px;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-icon svg{width:16px;height:16px;color:var(--primary)}.info-row h4{font-size:10px;text-transform:uppercase;letter-spacing:.3em;color:rgba(255,255,255,.3);font-weight:700;margin-bottom:4px}.info-row p{color:rgba(255,255,255,.8);font-size:16px;line-height:1.55}.restaurant-note{padding-top:40px;border-top:1px solid rgba(255,255,255,.05)}.restaurant-note p{font-size:13px;line-height:1.65;color:rgba(255,255,255,.4);font-weight:400}.restaurant-logo{position:absolute;right:48px;bottom:48px;width:48px;color:#fff;opacity:.04}.restaurant-logo .logo-svg{opacity:1}
.observe-fade{opacity:0;transform:translateY(20px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}.observe-fade.in-view,.page.is-active .menu-copy,.page.is-active .qr-wrap,.page.is-active .restaurant-content{opacity:1;transform:translateY(0)}
@keyframes heroIn{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes visualScale{from{transform:scale(1.1)}to{transform:scale(1)}}
@media (max-width:1023px){.about-visual-title h1{font-size:96px}.menu-inner{gap:64px;padding:0 56px}.menu-copy h1,.restaurant-content h1{font-size:80px}.qr-card{padding:48px}.qr-icon{width:160px;height:160px}.restaurant-info{padding:56px}}
@media (max-width:767px){html,body{overflow:hidden}.home-layout{flex-direction:column}.hero-pane{width:100%;height:60%;}.tiles-pane{width:100%;height:40%;flex-direction:column}.home-header{padding:24px}.logo-header{width:60px}.desktop-nav{display:none}.book-btn{font-size:9px;letter-spacing:.2em;padding:11px 18px}.hero-copy{left:24px;right:24px;bottom:40px}.hero-copy h1{font-size:68px;color:#E6D296;line-height:.95;text-shadow:0 2px 10px rgba(0,0,0,.55), 0 8px 24px rgba(0,0,0,.38)}.hero-copy .hero-subtitle{position:relative;align-self:flex-start;margin:0 0 120px 0;max-width:560px;left:auto;right:auto;bottom:auto;top:auto}.instagram-wrap{display:none}.desktop-only{display:none}.mobile-only{display:block}.tile-overlay{background:linear-gradient(to top,#000,rgba(0,0,0,.4),transparent)}.tile-content{padding:24px}.tile-line span:first-child{font-size:10px}.about-layout{flex-direction:column;height:100%;overflow-y:auto}.page-about{overflow-y:auto}.about-visual{width:100%;height:50vh}.about-scroll{height:auto;min-height:60vh;overflow:visible}.about-visual-title{left:48px;bottom:48px}.about-visual-title h1{font-size:72px}.about-content{padding:64px 32px;gap:96px}.content-block h2{font-size:40px}.content-block p{font-size:16px} .back-btn{box-shadow:0 14px 35px rgba(0,0,0,.45);border:1px solid rgba(197,160,89,.55);background:rgba(197,160,89,.12);color:#f5dfb0;top:32px;left:32px;padding:10px 16px;font-size:10px}.page-menu{justify-content:flex-start;padding:96px 0;overflow-y:auto}.menu-inner{grid-template-columns:1fr;gap:64px;padding:0 32px}.menu-copy h1{font-size:72px}.menu-copy p{font-size:18px}.qr-wrap{align-items:center}.qr-card{padding:48px}.qr-icon{width:128px;height:128px}.restaurant-layout{flex-direction:column}.map-pane{order:2;width:100%;height:80vh}.restaurant-info{order:1;height:auto;min-height:auto;padding:128px 32px 48px}.restaurant-back{position:fixed;top:32px;left:32px;background:rgba(0,0,0,.82);backdrop-filter:blur(10px);padding:10px 16px;border-radius:2px}.restaurant-content h1{font-size:72px}.restaurant-logo{display:none}}


@keyframes heroInCentered{from{opacity:0;transform:translateY(calc(-50% + 40px))}to{opacity:1;transform:translateY(-50%)}}
@media (max-width:767px){.hero-copy{left:24px;right:24px;top:50%;transform:translateY(-50%)}.hero-copy h1{font-size:42px}}

@media (max-width:767px){.hero-copy{top:28%}}

/* Final hero positioning: container-based, not viewport-based */
.hero-copy{
  position:absolute;
  left:48px;
  right:48px;
  top:160px;
  bottom:190px;
  z-index:10;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-start;
  transform:none;
}
.hero-copy h1{
  color:#E6D296;
  margin:0;
}
.hero-copy .hero-subtitle{position:relative;align-self:flex-start;margin:0 0 120px 0;max-width:560px;left:auto;right:auto;bottom:auto;top:auto}
@media (max-width:767px){
  .hero-copy{
    left:24px;
    right:24px;
    top:96px;
    bottom:56px;
    transform:none;
  }
  .hero-copy h1{
    font-size:42px;
  }
  .hero-copy .hero-subtitle{position:relative;align-self:flex-start;margin:0 0 120px 0;max-width:560px;left:auto;right:auto;bottom:auto;top:auto}
}

.hero-copy .hero-subtitle{position:relative !important;align-self:flex-start !important;margin:0 0 120px 0 !important;left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;max-width:560px !important;}
@media (max-width:767px){.hero-copy .hero-subtitle{margin:0 0 60px 0 !important;max-width:none !important;}}

/* Stable hero layout fix: subtitle no longer moves on resize/hover/video repaint */
.hero-copy{
  position:absolute !important;
  left:48px !important;
  right:48px !important;
  top:140px !important;
  bottom:250px !important;
  z-index:10 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  align-items:flex-start !important;
  transform:none !important;
  animation:none !important;
}

.hero-copy h1{
  color:#E6D296 !important;
  margin:0 !important;
  transform:none !important;
}

.hero-copy .hero-subtitle,
.hero-subtitle{
  position:static !important;
  display:block !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
  margin:0 !important;
  max-width:560px !important;
  align-self:flex-start !important;
}

@media (max-width:767px){
  .hero-copy{
    left:24px !important;
    right:24px !important;
    top:96px !important;
    bottom:110px !important;
  }
  .hero-copy h1{
    font-size:42px !important;
  }
  .hero-copy .hero-subtitle,
  .hero-subtitle{
    max-width:none !important;
    font-size:10px !important;
    line-height:1.55 !important;
    letter-spacing:.2em !important;
  }
}


/* === FINAL FIX: HERO TEXT STAYS INSIDE THE HERO DIV === */
.hero-pane .hero-copy{
  position:absolute !important;
  left:48px !important;
  right:48px !important;
  top:120px !important;
  bottom:170px !important;
  z-index:30 !important;
  display:block !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
  pointer-events:none !important;
}

.hero-pane .hero-copy h1{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  margin:0 !important;
  padding:0 !important;
  font-size:68px !important;
  line-height:.95 !important;
  color:#E6D296 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.55),0 8px 24px rgba(0,0,0,.38) !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
}

.hero-pane .hero-copy .hero-subtitle{
  position:absolute !important;
  left:0 !important;
  top:255px !important;
  right:auto !important;
  bottom:auto !important;
  margin:0 !important;
  padding:0 !important;
  max-width:560px !important;
  font-size:15px !important;
  line-height:1.45 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:rgba(255,255,255,.82) !important;
  font-weight:500 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.45) !important;
  transform:none !important;
  animation:none !important;
  transition:none !important;
}

@media (max-width:767px){
  .hero-pane .hero-copy{
    left:24px !important;
    right:24px !important;
    top:78px !important;
    bottom:48px !important;
  }

  .hero-pane .hero-copy h1{
    font-size:42px !important;
    line-height:.98 !important;
  }

  .hero-pane .hero-copy .hero-subtitle{
    top:190px !important;
    max-width:none !important;
    font-size:10px !important;
    line-height:1.55 !important;
    letter-spacing:.2em !important;
  }
}
