*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--terracotta: #C0533A;--terracotta-dark: #9E3D27;--cream: #FDF6EC;--cream-dark: #F3E8D4;--olive: #6B7C45;--charcoal: #2C1810;--charcoal-mid: #3D2415;--gold: #C9A84C;--font-display: "Playfair Display", Georgia, serif;--font-body: "Lato", sans-serif}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--charcoal);font-family:var(--font-body);font-weight:400;line-height:1.65;overflow-x:hidden}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");opacity:.028;pointer-events:none;z-index:9999}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:1.25rem 3.5rem;transition:background .4s ease,box-shadow .4s ease}.nav.scrolled{background:#2c1810f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 1px #c9a84c33}.nav-logo{font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:.08em;color:var(--cream);text-decoration:none}.nav-links{display:flex;gap:2.5rem;list-style:none}.nav-links a{font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#fdf6ecbf;text-decoration:none;transition:color .25s}.nav-links a:hover{color:var(--gold)}.hero{position:relative;height:100vh;min-height:680px;background:var(--charcoal);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:0 2rem}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 50% 65%,rgba(192,83,58,.18) 0%,transparent 65%),radial-gradient(ellipse 40% 40% at 25% 20%,rgba(201,168,76,.08) 0%,transparent 60%)}.hero-ornament{display:flex;align-items:center;gap:1rem;margin-bottom:1.75rem;opacity:0;animation:fadeUp .9s .2s ease forwards}.hero-ornament span{display:block;width:48px;height:1px;background:var(--gold);opacity:.6}.hero-ornament em{font-family:var(--font-display);font-style:italic;font-size:.8rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}.hero h1{font-family:var(--font-display);font-size:clamp(5rem,14vw,11rem);font-weight:900;line-height:.9;letter-spacing:-.01em;color:var(--cream);opacity:0;animation:fadeUp 1s .4s ease forwards}.hero h1 em{display:block;font-style:italic;color:var(--terracotta)}.hero-tagline{margin-top:1.75rem;font-family:var(--font-body);font-size:.82rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:#fdf6ec8c;opacity:0;animation:fadeUp 1s .65s ease forwards}.hero-ctas{display:flex;gap:1.25rem;margin-top:3rem;flex-wrap:wrap;justify-content:center;opacity:0;animation:fadeUp 1s .85s ease forwards}.btn-primary{padding:.9rem 2.25rem;background:var(--terracotta);color:var(--cream);font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;border:none;cursor:pointer;transition:background .25s,transform .2s}.btn-primary:hover{background:var(--terracotta-dark);transform:translateY(-2px)}.btn-outline{padding:.9rem 2.25rem;background:transparent;color:var(--cream);font-family:var(--font-body);font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;border:1px solid rgba(253,246,236,.35);cursor:pointer;transition:border-color .25s,color .25s,transform .2s}.btn-outline:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}.hero-scroll{position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;animation:fadeIn 1s 1.5s ease forwards}.hero-scroll span{font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;color:#fdf6ec4d}.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,rgba(253,246,236,.4),transparent);animation:scrollPulse 2s 2s ease-in-out infinite}.section-label{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.section-label:before,.section-label:after{content:"";flex:1;height:1px;background:currentColor;opacity:.2}.section-label span{font-size:.7rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;white-space:nowrap}.menu-section{background:var(--cream);padding:6rem 3.5rem 7rem}.menu-header{text-align:center;max-width:560px;margin:0 auto 4.5rem}.menu-header .section-label{justify-content:center;color:var(--olive)}.menu-header h2{font-family:var(--font-display);font-size:clamp(2.4rem,5vw,3.8rem);font-weight:700;line-height:1.1;color:var(--charcoal);margin-top:.5rem}.menu-header h2 em{font-style:italic;color:var(--terracotta)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2px;max-width:1100px;margin:0 auto}.dish-card{background:var(--cream-dark);padding:2.75rem 2.5rem;position:relative;overflow:hidden;transition:background .3s}.dish-card:hover{background:#ecd9be}.dish-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--terracotta);transform:scaleY(0);transform-origin:bottom;transition:transform .35s ease}.dish-card:hover:before{transform:scaleY(1)}.dish-emoji{font-size:2.75rem;display:block;margin-bottom:1.25rem;line-height:1}.dish-meta{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.dish-name{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--charcoal);line-height:1.2}.dish-price{font-family:var(--font-display);font-size:1.1rem;font-weight:500;color:var(--terracotta);white-space:nowrap}.dish-desc{font-size:.88rem;color:#2c181099;line-height:1.6}.about-section{background:var(--charcoal-mid);padding:7rem 3.5rem;position:relative;overflow:hidden}.about-section:before{content:'"';position:absolute;top:-.15em;left:.05em;font-family:var(--font-display);font-size:28rem;color:#c0533a0f;line-height:1;pointer-events:none;-webkit-user-select:none;user-select:none}.about-inner{max-width:780px;margin:0 auto;position:relative;z-index:1}.about-inner .section-label{color:var(--gold)}.about-inner h2{font-family:var(--font-display);font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:400;font-style:italic;line-height:1.25;color:var(--cream);margin:.75rem 0 2rem}.about-inner h2 strong{font-weight:700;font-style:normal;color:var(--terracotta)}.about-inner p{font-size:1.05rem;color:#fdf6ecb3;line-height:1.85;max-width:640px}.about-inner p+p{margin-top:1.25rem}.about-flourish{display:flex;align-items:center;gap:1.25rem;margin-top:3rem}.about-flourish .line{flex:1;max-width:80px;height:1px;background:#c9a84c59}.about-flourish span{font-family:var(--font-display);font-size:1.6rem;color:var(--gold);opacity:.5}.info-section{background:var(--charcoal);padding:6rem 3.5rem 7rem}.info-inner{max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem}.info-col .section-label{color:var(--terracotta);margin-bottom:2rem}.info-col h3{font-family:var(--font-display);font-size:2rem;font-weight:700;color:var(--cream);margin-bottom:2rem}.hours-list{list-style:none;display:flex;flex-direction:column;gap:.75rem}.hours-list li{display:flex;justify-content:space-between;font-size:.9rem;color:#fdf6eca6;padding-bottom:.75rem;border-bottom:1px solid rgba(253,246,236,.08)}.hours-list li strong{color:var(--cream);font-weight:400}.location-detail{display:flex;flex-direction:column;gap:1.5rem}.location-item{display:flex;flex-direction:column;gap:.25rem}.location-item .label{font-size:.68rem;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--terracotta)}.location-item .value{font-size:.95rem;color:#fdf6ecbf;line-height:1.55}.map-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:2rem;font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);text-decoration:none;transition:opacity .2s}.map-link:hover{opacity:.7}.map-link:after{content:"→";font-style:normal;transition:transform .2s}.map-link:hover:after{transform:translate(4px)}.footer{background:#1a0d08;padding:2.75rem 3.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem}.footer-logo{font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.08em;color:#fdf6ec80}.footer-copy{font-size:.75rem;color:#fdf6ec4d;letter-spacing:.05em}.footer-socials{display:flex;gap:2rem}.footer-socials a{font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#fdf6ec59;text-decoration:none;transition:color .2s}.footer-socials a:hover{color:var(--gold)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scrollPulse{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:.8;transform:scaleY(1.3);transform-origin:top}}.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media (max-width: 768px){.nav{padding:1.25rem 1.5rem}.nav-links{display:none}.menu-section,.about-section,.info-section{padding-left:1.5rem;padding-right:1.5rem}.info-inner{grid-template-columns:1fr;gap:3rem}.footer{flex-direction:column;text-align:center;padding:2rem 1.5rem}.about-section:before{font-size:14rem}}
