
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;900&family=Crimson+Pro:ital,wght@0,400;0,600;1,400&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--fire:#E8612A;--dark:#C2401A;--bg:#1A1310;--bg2:#16100C;--bg3:#221A15;--text:#F0EAD6;--muted:#9C8C7A;--dim:#6B5C4E;--border:rgba(200,160,100,.12)}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Crimson Pro',Georgia,serif}
a{color:inherit;text-decoration:none}

/* NAV */
nav{position:sticky;top:0;z-index:99;background:rgba(14,9,5,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);padding:0 clamp(14px,5vw,60px)}
.nav-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:68px}
.nav-logo{display:flex;align-items:center;gap:8px;cursor:pointer}
.nav-logo img{height:80px;width:auto;filter:drop-shadow(0 0 8px rgba(232,97,42,.5))}
.nav-logo span{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:900}
.nav-logo em{color:var(--fire);font-style:normal}
.nav-links{display:flex;gap:22px}
.nav-links a{font-size:.85rem;letter-spacing:.07em;text-transform:uppercase;color:#C4A882;transition:color .2s}
.nav-links a:hover{color:var(--fire)}
.nav-right{display:flex;align-items:center;gap:10px}
.lang-btn{background:rgba(232,97,42,.1);border:1px solid rgba(232,97,42,.3);color:var(--fire);padding:6px 12px;border-radius:20px;font-size:.78rem;cursor:pointer;font-family:'Crimson Pro',serif;transition:all .2s}
.lang-btn:hover{background:rgba(232,97,42,.22)}
.nav-tel{background:linear-gradient(135deg,#C2401A,#E8612A);color:#fff;padding:8px 15px;border-radius:4px;font-size:.84rem;font-weight:600;letter-spacing:.04em;transition:opacity .2s}
.nav-tel:hover{opacity:.85}
@media(max-width:640px){.nav-links{display:none}}

/* MODAL */
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes scaleIn{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
.modal-ov{position:fixed;inset:0;z-index:300;background:rgba(8,4,2,.93);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}
.modal-box{background:#1E1610;border:1px solid rgba(232,97,42,.35);border-radius:18px;padding:48px 40px;text-align:center;max-width:400px;width:90%;position:relative;animation:scaleIn .28s ease}
.modal-bar{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#C2401A,#E8612A,#C2401A);border-radius:18px 18px 0 0}
.modal-title{font-family:'Playfair Display',serif;font-size:1.5rem;color:var(--text);margin-bottom:6px;font-weight:700}
.modal-sub{color:var(--dim);font-size:.86rem;margin-bottom:34px;font-style:italic}
.modal-btns{display:flex;gap:14px;justify-content:center}
.modal-btn{flex:1;padding:16px 18px;border-radius:10px;font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s}
.modal-btn-fr{background:linear-gradient(135deg,#C2401A,#E8612A);border:none;color:#fff}
.modal-btn-fr:hover{opacity:.85;transform:translateY(-2px)}
.modal-btn-en{background:transparent;border:2px solid rgba(232,97,42,.55);color:var(--fire)}
.modal-btn-en:hover{background:rgba(232,97,42,.1);transform:translateY(-2px)}
.modal-close{margin-top:18px;background:none;border:none;color:var(--dim);font-size:.78rem;cursor:pointer;display:block;width:100%}
.hidden{display:none!important}

/* HERO */
@keyframes heroIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero{min-height:100vh;position:relative;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(.55) saturate(1.1)}
.hero-ov{position:absolute;inset:0;background:linear-gradient(135deg,rgba(8,4,2,.8) 30%,rgba(194,64,26,.08) 100%)}
.hero-c{position:relative;max-width:1100px;margin:0 auto;padding:80px clamp(16px,5vw,64px) 0;animation:heroIn 1s ease both}
.hero-tag{color:var(--fire);font-size:.78rem;letter-spacing:.25em;text-transform:uppercase;margin-bottom:14px}
.hero-h1{font-family:'Playfair Display',serif;font-size:clamp(2.4rem,7vw,5rem);font-weight:900;line-height:1.08;color:var(--fire);margin-bottom:8px}
.hero-sub{font-family:'Playfair Display',serif;font-size:clamp(1.1rem,3vw,1.9rem);font-weight:600;color:#C4A882;margin-bottom:36px}
.btn{display:inline-block;background:linear-gradient(135deg,#C2401A,#E8612A);color:#fff;font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;padding:14px 32px;border-radius:4px;letter-spacing:.05em;cursor:pointer;border:none;transition:opacity .2s,transform .2s}
.btn:hover{opacity:.86;transform:translateY(-2px)}
.btn-outline{display:inline-block;background:transparent;border:2px solid var(--fire);color:var(--fire);font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;padding:12px 30px;border-radius:4px;cursor:pointer;transition:all .2s}
.btn-outline:hover{background:rgba(232,97,42,.1);transform:translateY(-2px)}

/* SECTIONS */
section{padding:68px clamp(14px,5vw,60px)}
.inner{max-width:960px;margin:0 auto}
.wide{max-width:1100px;margin:0 auto}
.stag{color:var(--fire);font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:6px}
.stitle{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,4vw,2.5rem);font-weight:700}
.div{width:52px;height:3px;background:linear-gradient(90deg,#C2401A,#E8612A);margin:10px 0 28px;border-radius:2px}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:12px}
.lang-toggle{display:flex;gap:8px}
.ltbtn{padding:7px 14px;border-radius:20px;border:1px solid rgba(232,97,42,.3);background:transparent;color:var(--muted);font-family:'Crimson Pro',serif;font-size:.8rem;cursor:pointer;transition:all .2s}
.ltbtn.active{background:linear-gradient(135deg,#C2401A,#E8612A);border-color:transparent;color:#fff;font-weight:600}

/* MENU */
#menu{background:var(--bg2)}
.lang-placeholder{text-align:center;padding:60px 0}
.lang-placeholder p{color:#7A6A5A;font-size:1rem;margin-bottom:28px;line-height:1.8}
.lang-placeholder em{font-size:.88rem}
.lang-placeholder-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.msec{background:#1E1610;border:1px solid var(--border);border-radius:10px;overflow:hidden}
.msec-title{background:linear-gradient(135deg,#C2401A,#E8612A);color:#fff;font-family:'Playfair Display',serif;font-size:.92rem;font-weight:700;padding:11px 16px;letter-spacing:.06em}
.mrow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.055)}
.mrow:last-child{border-bottom:none}
.mnom{font-size:.88rem;color:var(--text);line-height:1.4}
.mprix{background:linear-gradient(135deg,#C2401A,#E8612A);color:#fff;font-family:'Playfair Display',serif;font-weight:700;font-size:.8rem;padding:3px 9px;border-radius:3px;white-space:nowrap;flex-shrink:0}
.menu-note{text-align:center;color:var(--dim);font-size:.75rem;margin-top:14px;font-style:italic}

/* AVIS */
#avis{background:var(--bg)}
.rating-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.big-stars{display:flex;gap:3px}
.rating-txt{color:#C4A882;font-size:.92rem}
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.card{background:var(--bg3);border:1px solid rgba(200,160,100,.1);border-radius:12px;padding:18px;transition:transform .2s,border-color .2s}
.card:hover{transform:translateY(-3px);border-color:rgba(232,97,42,.28)}
.card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}
.card-left{display:flex;align-items:center;gap:10px}
.avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,#C2401A,#E8612A);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-weight:700;color:#fff;font-size:.8rem;flex-shrink:0}
.card-name{font-family:'Playfair Display',serif;font-weight:600;color:var(--text);font-size:.92rem}
.card-badge{color:var(--fire);font-size:.68rem;margin-bottom:2px}
.card-meta{display:flex;align-items:center;gap:5px;margin-top:2px}
.card-date{color:var(--dim);font-size:.7rem}
.card-text{color:#B0A090;font-size:.87rem;line-height:1.65;font-style:italic}

/* GALERIE */
#galerie{background:var(--bg2)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.gi{overflow:hidden;border-radius:8px}
.gi img{width:100%;height:100%;object-fit:cover;transition:transform .4s;display:block}
.gi:hover img{transform:scale(1.06)}
.gi-big{grid-row:span 2;height:310px}
.gi-sm{height:148px}
@media(max-width:640px){.gallery{grid-template-columns:1fr 1fr}.gi-big{height:200px}.gi-sm{height:120px}}

/* FOOTER */
footer{background:#0E0906;border-top:1px solid var(--border);padding:52px clamp(14px,5vw,60px) 26px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;max-width:1100px;margin:0 auto 36px}
.footer-logo{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.footer-logo img{height:80px;width:auto;filter:drop-shadow(0 0 8px rgba(232,97,42,.35))}
.footer-logo span{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:900}
.footer-logo em{color:var(--fire);font-style:normal}
.footer-desc{color:#5A4A3A;font-size:.87rem;line-height:1.7;max-width:250px}
.fh{font-family:'Playfair Display',serif;color:var(--fire);font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px}
.hour{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.hday{color:var(--muted);font-size:.83rem}
.htime{color:#C4A882;font-size:.83rem;font-weight:600}
.hnote{color:#7A6A5A;font-size:.75rem;margin-top:10px;font-style:italic;line-height:1.6}
.faddr{display:flex;align-items:flex-start;gap:7px;color:var(--muted);font-size:.83rem;margin-bottom:14px;line-height:1.65;transition:color .2s}
.faddr:hover{color:var(--fire)}
.fmap{color:var(--fire);font-size:.75rem}
.ftel{display:flex;align-items:center;gap:7px;color:#C4A882;font-size:1rem;font-weight:600;transition:color .2s}
.ftel:hover{color:var(--fire)}
.fbot{border-top:1px solid rgba(200,160,100,.07);padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;max-width:1100px;margin:0 auto}
.fbot p{color:#3A2E26;font-size:.75rem}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr}}
