*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--ember: #c8834a;--ember-light: #e0a070;--ember-dark: #a06030;--charcoal: #111009;--charcoal-mid: #1a1814;--charcoal-card: #221f1a;--charcoal-border:#2e2a22;--cream: #f0ece4;--cream-dim: rgba(240,236,228,.65);--cream-faint: rgba(240,236,228,.25);--font-display: "Playfair Display", Georgia, serif;--font-body: "Montserrat", sans-serif;--radius: 12px;--transition: .3s ease;--max-width: 1200px}html{scroll-behavior:smooth}body{background:var(--charcoal);color:var(--cream);font-family:var(--font-body);font-size:16px;line-height:1.7;overflow-x:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}.section-eyebrow{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--ember);margin-bottom:16px}.section-eyebrow.light{color:var(--ember-light)}.section-title{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3.5rem);font-weight:700;line-height:1.1;color:var(--charcoal);margin-bottom:24px}.section-title.light{color:var(--cream)}.btn-primary{display:inline-block;background:var(--ember);color:var(--charcoal);font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding:16px 36px;border:none;border-radius:4px;cursor:pointer;transition:background var(--transition),transform var(--transition)}.btn-primary:hover{background:var(--ember-light);transform:translateY(-2px)}.btn-secondary{display:inline-block;background:transparent;color:var(--cream);font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;padding:15px 36px;border:1px solid rgba(240,236,228,.4);border-radius:4px;cursor:pointer;transition:border-color var(--transition),color var(--transition)}.btn-secondary:hover{border-color:var(--cream);color:var(--cream)}.btn-outline-sm{display:inline-block;font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:10px 20px;border:1px solid var(--ember);color:var(--ember);border-radius:4px;transition:background var(--transition),color var(--transition)}.btn-outline-sm:hover{background:var(--ember);color:var(--charcoal)}#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:transparent;transition:background .4s ease,box-shadow .4s ease}#navbar.scrolled{background:#111009f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--charcoal-border)}.nav-container{max-width:var(--max-width);margin:0 auto;padding:0 24px;height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-brand{display:flex;flex-direction:column;align-items:flex-end;line-height:1;flex-shrink:0}.brand-name{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--cream);letter-spacing:.1em}.brand-sub{font-family:var(--font-body);font-size:8px;font-weight:600;letter-spacing:.35em;color:var(--ember);text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:32px}.nav-links a{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--cream-dim);transition:color var(--transition)}.nav-links a:hover{color:var(--cream)}.nav-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.lang-switcher{display:flex;background:#ffffff0f;border:1px solid var(--charcoal-border);border-radius:20px;padding:3px;gap:2px}.lang-btn{background:transparent;border:none;color:var(--cream-dim);font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:.05em;padding:5px 10px;border-radius:16px;cursor:pointer;transition:all var(--transition)}.lang-btn.active,.lang-btn:hover{background:var(--ember);color:var(--charcoal)}.nav-reserve-btn{background:var(--ember);color:var(--charcoal);font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;transition:background var(--transition)}.nav-reserve-btn:hover{background:var(--ember-light)}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.hamburger span{display:block;width:22px;height:2px;background:var(--cream);border-radius:2px;transition:all var(--transition)}.hero{position:relative;height:100vh;min-height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;inset:0}.hero-bg img{object-position:center center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#1110094d,#11100980,#111009d9)}.hero-content{position:relative;z-index:2;text-align:center;padding:0 24px;max-width:800px}.hero-eyebrow{font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.4em;text-transform:uppercase;color:var(--ember);margin-bottom:20px}.hero-title{font-family:var(--font-display);font-size:clamp(4rem,12vw,9rem);font-weight:700;color:var(--cream);letter-spacing:.08em;line-height:1;margin-bottom:24px}.hero-subtitle{font-family:var(--font-display);font-size:clamp(1rem,2.5vw,1.4rem);font-style:italic;color:var(--cream-dim);margin-bottom:48px;line-height:1.6}.hero-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.hero-scroll{position:absolute;bottom:32px;left:50%;transform:translate(-50%);z-index:2}.hero-scroll span{display:block;width:1px;height:60px;background:linear-gradient(to bottom,var(--ember),transparent);margin:0 auto;animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.2)}}.nosotros{background:var(--cream);padding:100px 0}.nosotros-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.nosotros-text .section-title{color:var(--charcoal)}.nosotros-body{font-family:var(--font-body);font-size:15px;color:#4a3a2e;line-height:1.8;margin-bottom:20px}.nosotros-values{display:flex;gap:32px;margin-top:40px;flex-wrap:wrap}.value-item{display:flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#60463b}.value-icon{font-size:20px}.nosotros-image{border-radius:var(--radius);overflow:hidden;height:520px;box-shadow:0 32px 80px #00000040}.destacados{background:var(--charcoal-mid);padding:100px 0}.platos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:56px}.plato-card{background:var(--charcoal-card);border:1px solid var(--charcoal-border);border-radius:var(--radius);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition)}.plato-card:hover{transform:translateY(-8px);box-shadow:0 24px 60px #0006}.plato-img{height:260px;overflow:hidden}.plato-img img{transition:transform .6s ease}.plato-card:hover .plato-img img{transform:scale(1.05)}.plato-info{padding:28px}.plato-info h3{font-family:var(--font-display);font-size:1.4rem;font-weight:600;color:var(--cream);margin-bottom:12px}.plato-info p{font-family:var(--font-body);font-size:13px;color:var(--cream-dim);line-height:1.7}.carta-section{background:var(--cream);padding:100px 0}.carta-inner{text-align:center;max-width:640px;margin:0 auto}.carta-inner .section-title{color:var(--charcoal)}.carta-desc{font-family:var(--font-body);font-size:15px;color:#5a4a3e;line-height:1.8;margin-bottom:40px}.carta-btn{font-size:13px;padding:18px 48px}.reservas-section{background:var(--charcoal-mid);padding:100px 0}.reservas-desc{font-family:var(--font-body);font-size:15px;color:var(--cream-dim);text-align:center;margin-bottom:48px}.covermanager-wrapper{background:var(--charcoal-card);border:1px solid var(--charcoal-border);border-radius:var(--radius);overflow:hidden;padding:32px}.cm-lang{display:none}.cm-lang.active{display:block}.localizacion-section{background:var(--cream);padding:100px 0}.localizacion-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.localizacion-info .section-title{color:var(--charcoal)}.loc-item{display:flex;gap:16px;margin-bottom:28px;align-items:flex-start}.loc-icon{font-size:20px;flex-shrink:0;margin-top:2px}.loc-item strong{display:block;font-family:var(--font-body);font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--ember-dark);margin-bottom:4px}.loc-item p{font-family:var(--font-body);font-size:14px;color:#4a3a2e;line-height:1.6}.localizacion-mapa{border-radius:var(--radius);overflow:hidden;height:400px;box-shadow:0 16px 48px #00000026}.contacto-section{background:var(--charcoal-mid);padding:100px 0}.contacto-inner{max-width:680px;margin:0 auto}.contacto-form{margin-top:48px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-group{margin-bottom:20px}.form-group label{display:block;font-family:var(--font-body);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--cream-dim);margin-bottom:8px}.form-group input,.form-group textarea{width:100%;background:var(--charcoal-card);border:1px solid var(--charcoal-border);border-radius:6px;padding:14px 16px;font-family:var(--font-body);font-size:14px;color:var(--cream);outline:none;transition:border-color var(--transition)}.form-group input::placeholder,.form-group textarea::placeholder{color:#f0ece440}.form-group input:focus,.form-group textarea:focus{border-color:var(--ember)}.form-group textarea{resize:vertical;min-height:140px}.form-success{display:none;color:var(--ember-light);font-family:var(--font-body);font-size:14px;margin-top:16px;text-align:center}.form-success.visible{display:block}.footer{background:var(--charcoal);border-top:1px solid var(--charcoal-border);padding:72px 0 32px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:56px}.footer-name{font-family:var(--font-display);font-size:28px;font-weight:700;color:var(--cream);letter-spacing:.1em;margin-bottom:4px}.footer-tagline{font-family:var(--font-body);font-size:9px;font-weight:700;letter-spacing:.35em;color:var(--ember);text-transform:uppercase;margin-bottom:16px}.footer-desc{font-family:var(--font-body);font-size:13px;color:var(--cream-dim);line-height:1.7}.footer-links h4,.footer-contact h4,.footer-social h4{font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--ember);margin-bottom:20px}.footer-links{display:flex;flex-direction:column;gap:12px}.footer-links a{font-family:var(--font-body);font-size:13px;color:var(--cream-dim);transition:color var(--transition)}.footer-links a:hover{color:var(--cream)}.footer-contact p{font-family:var(--font-body);font-size:13px;color:var(--cream-dim);margin-bottom:8px;line-height:1.5}.social-links{display:flex;gap:16px;margin-bottom:24px}.social-link{width:40px;height:40px;border:1px solid var(--charcoal-border);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--cream-dim);transition:all var(--transition)}.social-link svg{width:18px;height:18px}.social-link:hover{border-color:var(--ember);color:var(--ember)}.footer-bottom{border-top:1px solid var(--charcoal-border);padding-top:28px;text-align:center}.footer-bottom p{font-family:var(--font-body);font-size:11px;color:#f0ece44d;letter-spacing:.05em}@media (max-width: 1024px){.nosotros-grid{grid-template-columns:1fr;gap:48px}.nosotros-image{height:360px}.platos-grid{grid-template-columns:1fr 1fr}.localizacion-grid{grid-template-columns:1fr;gap:48px}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}}@media (max-width: 768px){.nav-links{display:none}.nav-links.open{display:flex;flex-direction:column;position:fixed;top:72px;left:0;right:0;background:#111009fa;padding:24px;gap:20px;border-top:1px solid var(--charcoal-border)}.nav-links.open a{font-size:14px}.hamburger{display:flex}.nav-reserve-btn{display:none}.hero-title{font-size:clamp(3rem,15vw,5rem)}.hero-actions{flex-direction:column;align-items:center}.platos-grid,.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:32px}.nosotros,.destacados,.carta-section,.reservas-section,.localizacion-section,.contacto-section{padding:72px 0}}@media (max-width: 480px){.hero-title{font-size:3rem}.hero-subtitle{font-size:.95rem}.section-title{font-size:2rem}.covermanager-wrapper{padding:16px}}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}.fade-in.visible{opacity:1;transform:translateY(0)}
