@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url("assets/fonts/font-1.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url("assets/fonts/font-2.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:600;font-display:swap;src:url("assets/fonts/font-3.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/font-4.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url("assets/fonts/font-5.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url("assets/fonts/font-6.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:300;font-display:swap;src:url("assets/fonts/font-7.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/font-8.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url("assets/fonts/font-9.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url("assets/fonts/font-10.ttf") format("truetype")}

:root{
  --background:#0a0a0a;
  --foreground:#f5f5f5;
  --card:#0f0f0f;
  --secondary:#1a1a1a;
  --muted:#8c8c8c;
  --primary:#a88a5e;
  --accent:#8f533c;
  --border:#242424;
  --body:"Montserrat",Arial,sans-serif;
  --display:"Cormorant Garamond",Georgia,serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--background);color:var(--foreground);font-family:var(--body);font-weight:300;overflow-x:hidden}
button,a,input{font:inherit}
button{border:0;background:none;color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

.site-nav{position:fixed;inset:0 0 auto;z-index:50;transition:background .5s,border-color .5s,backdrop-filter .5s}
.site-nav.scrolled{background:rgba(10,10,10,.9);border-bottom:1px solid var(--border);backdrop-filter:blur(14px)}
.nav-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px 24px}
.logo-button img{height:40px;width:auto;object-fit:contain}
.desktop-links{display:none;align-items:center;gap:32px}
.desktop-links button{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);transition:color .3s}
.desktop-links button:hover{color:var(--primary)}
.menu-button{width:32px;height:32px;display:grid;place-content:center;gap:5px}
.menu-button span{display:block;width:23px;height:1px;background:var(--foreground)}

.mobile-menu{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:40px;background:rgba(10,10,10,.96);backdrop-filter:blur(22px);opacity:0;pointer-events:none;transition:opacity .28s}
.mobile-menu.open{opacity:1;pointer-events:auto}
.mobile-menu button:not(.close-menu){font-family:var(--display);font-size:34px;font-style:italic;color:var(--foreground)}
.close-menu{position:absolute;right:24px;top:22px;width:32px;height:32px}
.close-menu:before,.close-menu:after{content:"";position:absolute;left:6px;top:15px;width:22px;height:1px;background:var(--foreground)}
.close-menu:before{transform:rotate(45deg)}.close-menu:after{transform:rotate(-45deg)}

.hero{position:relative;height:100vh;min-height:680px;overflow:hidden}
.hero-media{position:absolute;inset:0;display:flex}
.hero-panel{position:relative;height:100%;overflow:hidden}
.hero-left{display:none;width:50%}
.hero-right{width:100%}
.hero-panel img{width:100%;height:100%;object-fit:cover;animation:slowZoom 8s ease-out both}
.hero-left:after,.hero-right:after{content:"";position:absolute;inset:0}
.hero-left:after{background:linear-gradient(90deg,rgba(10,10,10,.4),rgba(10,10,10,.8))}
.hero-right:after{background:linear-gradient(270deg,rgba(10,10,10,.3),rgba(10,10,10,.72))}
.hero-divider{display:none;position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(143,83,60,.35)}
.hero-content{position:relative;z-index:2;height:100%;max-width:1024px;display:flex;flex-direction:column;justify-content:center;padding:0 24px}
.eyebrow{margin:0 0 24px;color:var(--primary);font-size:11px;letter-spacing:.3em;text-transform:uppercase;font-weight:400}
.eyebrow.accent{color:var(--accent);margin-bottom:16px}
.hero h1,.section-title{margin:0;font-family:var(--display);font-style:italic;font-weight:400;line-height:1.1;color:var(--foreground)}
.hero h1{font-size:46px;margin-bottom:24px;max-width:900px}
.hero h1 span,.section-title span{color:var(--primary)}
.hero-copy{max-width:580px;margin:0 0 38px;color:#9f9d9d;font-size:16px;line-height:1.75}
.hero-note{max-width:580px;margin:0 0 32px;color:#fff;font-family:var(--display);font-size:21px;font-style:italic;line-height:1.6}
.outline-link,.signup-form button{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:max-content;border:1px solid rgba(168,138,94,.65);color:var(--primary);padding:14px 31px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:400;transition:background .45s,color .45s,transform .3s}
.outline-link:hover,.signup-form button:hover{background:var(--primary);color:#0a0a0a}
.outline-link:hover span{transform:translateX(4px)}
.outline-link span{transition:transform .3s}
.scroll-cue{position:absolute;z-index:2;left:50%;bottom:32px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--muted);animation:bob 2s ease-in-out infinite}
.scroll-cue span:first-child{font-size:10px;letter-spacing:.3em;text-transform:uppercase}
.cue-arrow{width:10px;height:10px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}

.section{position:relative;padding:96px 0;overflow:hidden}
.container{max-width:1280px;margin:0 auto;padding:0 24px}
.narrow-container{position:relative;max-width:896px;margin:0 auto;padding:0 24px}
.section-title{font-size:45px;margin-bottom:64px}
.side-line{position:absolute;top:0;bottom:0;width:1px;background:rgba(143,83,60,.25)}
.side-line.left{left:32px}.side-line.right{right:32px}
.center-line{position:absolute;top:0;bottom:0;left:50%;width:1px;background:rgba(143,83,60,.12)}

.story-grid{display:grid;grid-template-columns:1fr;gap:48px}
.portrait-wrap{position:relative}
.portrait{aspect-ratio:3/4;overflow:hidden}
.portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .7s}
.portrait:hover img{filter:grayscale(0)}
.portrait-frame{position:absolute;right:-16px;bottom:72px;width:96px;height:96px;border:1px solid rgba(168,138,94,.35)}
.quote{margin:32px 0 0;color:var(--muted);font-family:var(--display);font-style:italic;font-size:21px;line-height:1.5}
.text-block{margin-bottom:48px}
.text-block h3{margin:0 0 16px;color:var(--primary);font-family:var(--display);font-size:28px;font-style:italic;font-weight:400}
.text-block p{margin:0;color:var(--muted);font-size:16px;line-height:1.75}

.restaurants{background:rgba(26,26,26,.32)}
.restaurant-grid{display:grid;grid-template-columns:1fr;gap:24px}
.restaurant-card{border:1px solid rgba(36,36,36,.55);background:rgba(15,15,15,.58);overflow:hidden;transition:border-color .45s,transform .45s}
.restaurant-card:hover{transform:translateY(-3px)}
.restaurant-card.dark:hover{border-color:rgba(168,138,94,.55)}
.restaurant-card.copper{border-color:rgba(143,83,60,.35)}
.restaurant-card.copper:hover{border-color:rgba(143,83,60,.8)}
.restaurant-card.ethereal{border-color:rgba(36,36,36,.4)}
.restaurant-card.ethereal:hover{border-color:rgba(140,140,140,.5)}
.card-image{position:relative;aspect-ratio:3/2;overflow:hidden}
.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--background),rgba(10,10,10,.18),transparent)}
.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s,filter .7s}
.restaurant-card:hover img{transform:scale(1.05);filter:saturate(1.25)}
.card-body{padding:24px}
.card-body p{margin:0 0 12px;color:var(--accent);font-size:10px;letter-spacing:.25em;text-transform:uppercase;font-weight:400}
.card-body h3{margin:0 0 16px;font-family:var(--display);font-size:30px;font-style:italic;font-weight:400;transition:color .3s}
.restaurant-card:hover h3{color:var(--primary)}
.card-body span{display:block;color:var(--muted);font-size:14px;line-height:1.7}

.press-list{border-top:1px solid rgba(36,36,36,.6)}
.press-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 0;border-bottom:1px solid rgba(36,36,36,.6);transition:border-color .3s}
.press-row:hover{border-color:rgba(168,138,94,.45)}
.press-row strong{display:block;font-family:var(--display);font-size:24px;font-style:italic;font-weight:400;transition:color .3s}
.press-row small{display:block;margin-top:4px;color:var(--muted);font-size:14px;line-height:1.5}
.press-row b{color:var(--muted);font-size:20px;font-weight:300;transition:color .3s,transform .3s}
.press-row:hover strong,.press-row:hover b{color:var(--primary)}
.press-row:hover b{transform:translate(4px,-4px)}

.inner-circle{background:rgba(143,83,60,.1)}
.inner-glow{position:absolute;inset:0;background:linear-gradient(180deg,var(--background),rgba(143,83,60,.05),var(--background));pointer-events:none}
.form-container{position:relative;max-width:768px;margin:0 auto;padding:0 24px;text-align:center}
.form-copy{max-width:576px;margin:0 auto 48px;color:var(--muted);font-size:16px;line-height:1.75}
.signup-form{max-width:448px;margin:0 auto;display:grid;gap:24px}
.signup-form input{width:100%;border:0;border-bottom:1px solid rgba(36,36,36,.8);background:transparent;color:var(--foreground);padding:12px 4px;font-size:16px;font-weight:300;outline:none;transition:border-color .3s}
.signup-form input::placeholder{color:rgba(140,140,140,.55)}
.signup-form input:focus{border-color:var(--primary)}
.signup-form button{width:100%;background:transparent}
.thanks{padding:32px 0}
.thanks p{margin:0 0 12px;color:var(--primary);font-family:var(--display);font-size:34px;font-style:italic}
.thanks span{color:var(--muted)}

.site-footer{position:relative;border-top:1px solid rgba(36,36,36,.5);padding:48px 0}
.footer-inner{position:relative;max-width:1280px;margin:0 auto;padding:0 24px;display:flex;flex-direction:column;gap:28px;align-items:flex-start;justify-content:space-between}
.address{display:flex;flex-direction:column;gap:4px}
.address p{margin:0;font-family:var(--display);font-size:20px;font-style:italic;color:var(--muted)}
.address span,.address a{color:rgba(140,140,140,.68);font-size:12px}
.address a:hover,.footer-links a:hover,.top-button:hover{color:var(--primary)}
.footer-links{display:flex;flex-direction:column;gap:12px}
.footer-links a{color:rgba(168,138,94,.76);font-size:11px;letter-spacing:.2em;text-transform:uppercase;transition:color .3s}
.top-button{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:10px;letter-spacing:.2em;text-transform:uppercase;transition:color .3s}
.top-button span{transition:transform .3s}
.top-button:hover span{transform:translateY(-4px)}
.copyright{margin:32px 0 0;text-align:center;color:rgba(140,140,140,.45);font-size:11px}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.delay-4{transition-delay:.4s}

@keyframes slowZoom{from{transform:scale(1.1)}to{transform:scale(1)}}
@keyframes bob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,8px)}}

@media (min-width:768px){
  .nav-inner{padding:20px 24px}
  .desktop-links{display:flex}
  .menu-button{display:none}
  .hero-left{display:block}
  .hero-right{width:50%}
  .hero-divider{display:block}
  .hero-content{padding:0 64px}
  .hero h1{font-size:64px}
  .hero-copy{font-size:18px}
  .hero-note{font-size:24px}
  .section{padding:144px 0}
  .container{padding:0 64px}
  .narrow-container{padding:0 64px}
  .form-container{padding:0 64px}
  .section-title{font-size:58px}
  .side-line.left{left:64px}.side-line.right{right:64px}
  .restaurant-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .card-body{padding:32px}
  .footer-inner{padding:0 64px;flex-direction:row;align-items:flex-start}
  .footer-links{position:absolute;left:50%;transform:translateX(-50%);align-items:center}
}

@media (min-width:1024px){
  .nav-inner{padding-left:24px;padding-right:24px}
  .hero-content{padding:0 96px}
  .hero h1{font-size:76px}
  .section-title{font-size:68px}
  .story-grid{grid-template-columns:5fr 7fr;gap:80px}
  .portrait-wrap{position:sticky;top:128px;height:max-content}
  .restaurant-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:520px){
  .hero{min-height:640px}
  .hero h1{font-size:40px}
  .outline-link{width:100%;padding-left:18px;padding-right:18px}
  .section-title{font-size:39px}
  .press-row{align-items:flex-start}
  .press-row strong{font-size:22px}
}
