:root{
  --black:#070604;
  --dark:#100a06;
  --dark2:#1a1109;
  --cream:#f7ecd8;
  --cream2:#fff8ec;
  --gold:#c9943d;
  --gold2:#f0d18a;
  --brown:#33200f;
  --text:#fff8ec;
  --muted:#d8c7ab;
  --line:rgba(240,209,138,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--text);font-family:Inter,Arial,sans-serif}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:Cinzel,serif}
.skip-link{position:absolute;left:-999px;top:8px;background:#fff;color:#000;padding:10px;z-index:99}
.skip-link:focus{left:8px}
.hero{
  min-height:100svh;
  background:
    radial-gradient(circle at 78% 42%,rgba(201,148,61,.23),transparent 28%),
    linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.58),rgba(0,0,0,.86)),
    url("assets/hero.jpg") center/cover;
  padding:0 5% 90px;
  position:relative;
}
.navbar{
  height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px;
  position:relative;z-index:10;
}
.brand img{width:140px;filter:drop-shadow(0 12px 18px rgba(0,0,0,.55))}
.nav-links{display:flex;gap:28px;text-transform:uppercase;font-size:.88rem;font-weight:900;letter-spacing:.4px}
.nav-links a{padding:10px 0;border-bottom:2px solid transparent}
.nav-links a:hover{color:var(--gold2);border-color:var(--gold)}
.nav-call{
  padding:14px 22px;border-radius:9px;background:linear-gradient(180deg,var(--gold2),var(--gold));color:#1a1007;font-weight:900;
  box-shadow:0 16px 40px rgba(0,0,0,.35)
}
.menu-toggle,.mobile-menu{display:none}
.hero-inner{display:grid;grid-template-columns:1.05fr .85fr;align-items:center;gap:44px;min-height:calc(100svh - 240px);position:relative;z-index:2}
.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:4px;color:var(--gold2);font-weight:900;font-size:.85rem;margin:0 0 14px}
.hero h1{font-size:clamp(3.2rem,6.2vw,6.5rem);line-height:.95;margin:0 0 22px;color:var(--cream)}
.hero-text{max-width:660px;font-size:1.17rem;line-height:1.8;color:#eee0c8;margin:0}
.hero-actions,.center-actions,.contact-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--gold);border-radius:9px;
  padding:15px 24px;font-weight:900;text-transform:uppercase;letter-spacing:.3px;transition:.22s
}
.btn:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(201,148,61,.25)}
.btn.primary{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#1b1007}
.btn.secondary,.btn.ghost{background:rgba(0,0,0,.28);color:var(--gold2)}
.hero-card{
  align-self:center;background:rgba(16,10,6,.76);border:1px solid rgba(240,209,138,.36);border-radius:30px;
  padding:14px;box-shadow:0 30px 85px rgba(0,0,0,.48);backdrop-filter:blur(10px)
}
.hero-card img{height:430px;width:100%;object-fit:cover;border-radius:24px}
.hero-card div{padding:18px 10px 6px}
.hero-card span{color:var(--gold2);text-transform:uppercase;font-weight:900;letter-spacing:2px;font-size:.76rem}
.hero-card strong{display:block;font-family:Cinzel,serif;font-size:1.75rem;margin-top:5px}
.quick-info{
  position:absolute;left:5%;right:5%;bottom:-54px;z-index:3;
  display:grid;grid-template-columns:repeat(4,1fr);background:rgba(20,12,7,.96);border:1px solid rgba(240,209,138,.35);
  border-radius:18px;overflow:hidden;box-shadow:0 26px 70px rgba(0,0,0,.38)
}
.quick-info article{display:flex;gap:16px;padding:23px 24px;border-right:1px solid rgba(255,255,255,.08)}
.quick-info article:last-child{border-right:none}
.quick-info span{font-size:1.9rem}
.quick-info strong{color:var(--gold2);display:block;margin-bottom:5px}
.quick-info p{margin:0;color:#eadbc1;line-height:1.5;font-size:.93rem}

section{padding:100px 5%}
.intro{padding-top:155px;background:var(--cream);color:var(--brown);display:grid;grid-template-columns:.95fr 1.05fr;gap:55px;align-items:center}
.intro-media img,.gallery-grid img,.dish-card img{border-radius:24px}
.intro-media img{box-shadow:0 26px 70px rgba(51,32,15,.23)}
.intro h2,.specialites h2,.carte h2,.ambiance h2,.contact h2{font-size:clamp(2.2rem,4.2vw,4.2rem);line-height:1.04;margin:0 0 18px}
.intro p{font-size:1.06rem;line-height:1.85}
.intro-points{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.intro-points span{background:#fff8ea;border:1px solid #ddc59a;border-radius:999px;padding:10px 14px;font-weight:800;color:#6e4a14}

.section-center{text-align:center;max-width:760px;margin:0 auto 38px}
.section-center p:not(.section-kicker){color:var(--muted);line-height:1.7}
.specialites{background:#100a06}
.dish-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.dish-card{
  background:linear-gradient(180deg,#20150b,#120c07);border:1px solid rgba(240,209,138,.26);border-radius:24px;overflow:hidden;
  box-shadow:0 18px 45px rgba(0,0,0,.22);transition:.22s
}
.dish-card:hover{transform:translateY(-4px)}
.dish-card.featured{grid-column:span 2;grid-row:span 2}
.dish-card img{height:230px;width:100%;object-fit:cover;border-radius:0}
.dish-card.featured img{height:540px}
.dish-body{padding:20px}
.dish-body small{color:var(--gold2);font-weight:900;text-transform:uppercase;letter-spacing:2px}
.dish-body h3{font-size:1.35rem;margin:8px 0}
.dish-card.featured h3{font-size:2rem}
.dish-body p{color:#dcccb1;line-height:1.6;margin:0 0 10px}
.dish-body b{color:var(--gold2)}
.center-actions{justify-content:center}

.carte{background:linear-gradient(180deg,#fff7e8,#f3e2c5);color:var(--brown)}
.carte .section-kicker{color:#9d6b1e}
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.menu-card{background:#fffaf0;border:1px solid #dac292;border-radius:22px;padding:26px;box-shadow:0 18px 44px rgba(51,32,15,.10)}
.menu-card h3{font-size:1.35rem;margin:0 0 16px;color:#3b230f}
.menu-card ul{list-style:none;margin:0;padding:0}
.menu-card li{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px dashed rgba(70,40,14,.25)}
.menu-card li:last-child{border-bottom:0}
.menu-card b{color:#8a5b15;white-space:nowrap}

.ambiance{background:#080604}
.section-split{display:grid;grid-template-columns:1fr .7fr;gap:40px;align-items:end;margin-bottom:30px}
.section-split p:last-child{color:var(--muted);line-height:1.75}
.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:20px}
.gallery-grid img{height:420px;width:100%;object-fit:cover;border:1px solid rgba(240,209,138,.28);box-shadow:0 22px 60px rgba(0,0,0,.28)}
.gallery-grid .wide{grid-row:span 1}

.contact{
  display:grid;grid-template-columns:.92fr 1.08fr;gap:30px;align-items:stretch;
  background:
    linear-gradient(90deg,rgba(0,0,0,.91),rgba(0,0,0,.74)),
    url("assets/coin-bar.jpg") center/cover;
}
.contact-card,.map-card{background:rgba(15,10,6,.88);border:1px solid rgba(240,209,138,.34);border-radius:26px;padding:34px;backdrop-filter:blur(8px)}
.contact-card p{color:#eadbc1;line-height:1.8}
.contact-list{display:grid;gap:13px;margin-top:26px;font-weight:800}
.contact-list a{color:var(--gold2);font-size:1.2rem}
.map-card{padding:12px;min-height:420px}
.map-card iframe{width:100%;height:100%;border:0;border-radius:18px;filter:saturate(.85)}

footer{display:flex;align-items:center;justify-content:center;gap:22px;padding:30px 5%;border-top:1px solid rgba(240,209,138,.2);background:#060504;color:var(--muted);text-align:center}
footer img{width:105px}

@media(max-width:1150px){
  .nav-links{gap:18px;font-size:.8rem}
  .hero-inner,.intro,.contact,.section-split{grid-template-columns:1fr}
  .quick-info{position:relative;left:auto;right:auto;bottom:auto;margin-top:30px;grid-template-columns:repeat(2,1fr)}
  .intro{padding-top:100px}
  .dish-grid,.menu-grid{grid-template-columns:repeat(2,1fr)}
  .dish-card.featured{grid-column:span 2}
  .gallery-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .hero{padding:0 5% 50px}
  .navbar{height:92px}
  .brand img{width:104px}
  .nav-links,.nav-call{display:none}
  .menu-toggle{display:grid;gap:5px;background:rgba(0,0,0,.25);border:1px solid var(--line);border-radius:10px;padding:12px}
  .menu-toggle span{display:block;width:25px;height:2px;background:var(--gold2)}
  .mobile-menu{display:none;position:absolute;top:92px;left:5%;right:5%;z-index:20;background:#120c07;border:1px solid var(--line);border-radius:18px;padding:14px}
  .menu-open .mobile-menu{display:grid}
  .mobile-menu a{padding:14px;text-transform:uppercase;font-weight:900;border-bottom:1px solid rgba(255,255,255,.07)}
  .mobile-menu a:last-child{border-bottom:0}
  .hero-inner{min-height:auto;padding-top:26px}
  .hero h1{font-size:2.75rem}
  .hero-card img{height:290px}
  .quick-info,.dish-grid,.menu-grid,.gallery-grid{grid-template-columns:1fr}
  .quick-info article{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .quick-info article:last-child{border-bottom:0}
  .dish-card.featured{grid-column:span 1}
  .dish-card.featured img,.dish-card img{height:250px}
  section{padding:72px 5%}
  .intro{padding-top:72px}
  .contact-card,.map-card{padding:22px}
  footer{flex-direction:column}
}
