:root{--primary-bg:#0c0f0d;--secondary-bg:#151a17;--tertiary-bg:#1f2622;--text-main:#f2efe9;--text-muted:#b5b1a7;--accent-gold:#cfaa6c;--accent-gold-hover:#e0bc7f;--accent-red:#5c1f1f;--font-heading:"Playfair Display", serif;--font-body:"Lora", serif;--transition-smooth:all .4s cubic-bezier(.25, .46, .45, .94)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--primary-bg);color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:500;line-height:1.2}p{margin-bottom:1.5rem}a{color:var(--text-main);transition:var(--transition-smooth);text-decoration:none}a:hover,.text-gold{color:var(--accent-gold)}.text-center{text-align:center}.text-muted{color:var(--text-muted)}.section-title{text-transform:uppercase;letter-spacing:2px;margin-bottom:1rem;font-size:2.5rem}@media (width>=768px){.section-title{font-size:3.5rem}}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem}.section{padding:6rem 0}.btn{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:1.5px;cursor:pointer;transition:var(--transition-smooth);border:none;border:1px solid var(--accent-gold);background:0 0;outline:none;padding:1rem 2rem;font-size:1rem;display:inline-block}.btn-primary{background-color:var(--accent-gold);color:var(--primary-bg)}.btn-primary:hover{background-color:var(--accent-gold-hover);transform:translateY(-2px);box-shadow:0 0 20px #cfaa6c4d}.btn-outline{color:var(--accent-gold)}.btn-outline:hover{background-color:var(--accent-gold);color:var(--primary-bg)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:1s forwards fadeIn}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.hero-gradient{background:linear-gradient(#0c0f0d33,#0c0f0de6),url(https://images.unsplash.com/photo-1595856417757-0ae90ce022dc?q=80&w=2000&auto=format&fit=crop) 50%/cover no-repeat}.navbar{z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0f0dcc;border-bottom:1px solid #ffffff0d;width:100%;padding:1.5rem 0;transition:all .3s;position:fixed;top:0}.nav-container{justify-content:space-between;align-items:center;display:flex}.nav-brand{font-family:var(--font-heading);color:var(--text-main);text-transform:uppercase;letter-spacing:2px;font-size:1.5rem}.nav-links{gap:2rem;display:none}@media (width>=768px){.nav-links{align-items:center;display:flex}}.nav-link{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1px;font-size:.9rem}.grid-2{grid-template-columns:1fr;gap:4rem;display:grid}@media (width>=992px){.grid-2{grid-template-columns:1fr 1fr;align-items:center}}.img-frame{padding:1rem;position:relative}.img-frame:before{content:"";border:1px solid var(--accent-gold);z-index:0;position:absolute;inset:0 2rem 2rem 0}.img-frame img{z-index:1;width:100%;height:auto;margin-top:2rem;margin-left:2rem;transition:transform .5s;position:relative;box-shadow:0 20px 40px #00000080}.img-frame img:hover{transform:scale(1.02)}.reservation-card{background:var(--secondary-bg);border:1px solid #cfaa6c33;border-radius:4px;padding:3rem}.form-group{margin-bottom:1.5rem}.form-label{font-family:var(--font-heading);color:var(--text-muted);margin-bottom:.5rem;display:block}.form-control{background:var(--tertiary-bg);width:100%;color:var(--text-main);font-family:var(--font-body);transition:var(--transition-smooth);border:1px solid #0000;padding:1rem}.form-control:focus{border-color:var(--accent-gold);outline:none}.divider{justify-content:center;align-items:center;margin:3rem 0;display:flex}.divider:before,.divider:after{content:"";background:var(--accent-gold);opacity:.5;width:50px;height:1px}.divider-icon{color:var(--accent-gold);margin:0 1rem}footer{background:var(--tertiary-bg);text-align:center;padding:4rem 0 2rem}.mobile-menu-btn{color:var(--text-main);cursor:pointer;background:0 0;border:none;display:block}@media (width>=768px){.mobile-menu-btn{display:none}}.mobile-menu{background:var(--secondary-bg);border-bottom:1px solid #ffffff0d;flex-direction:column;gap:1.5rem;width:100%;padding:2rem;animation:.3s forwards slideDown;display:flex;position:absolute;top:100%;left:0;box-shadow:0 10px 30px #00000080}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
