.inner-page { background:#090807; }
.inner-page .page { overflow:visible; }
.inner-nav { position:absolute; background:linear-gradient(180deg,rgba(0,0,0,.76),transparent); }
.inner-nav .nav-inner { grid-template-columns:350px 1fr auto; }
.inner-nav .brand img { width:350px; }
.inner-nav .menu { gap:20px; }
.inner-nav .nav-actions { gap:15px; }
.inner-nav .menu a.active::after { width:100%; }
.mobile-toggle { display:none; width:44px; height:44px; border:1px solid var(--line); border-radius:8px; background:rgba(255,255,255,.07); padding:10px; }
.mobile-toggle span { display:block; height:2px; margin:5px 0; background:#fff; }
.page-hero { min-height:580px; display:grid; align-items:end; padding:180px 0 90px; position:relative; isolation:isolate; background-position:center; background-size:cover; }
.page-hero::before { content:""; position:absolute; inset:0; z-index:-1; }
.page-hero-content { max-width:760px; }
.page-hero h1 { margin:10px 0 22px; font-size:clamp(40px,8vw,60px); line-height:.83; }
.page-hero h1 span { color:var(--orange); }
.page-hero p { max-width:610px; color:rgba(255,255,255,.78); font-size:20px; line-height:1.55; }
.crumbs { color:rgba(255,255,255,.62); font-size:14px; text-transform:uppercase; }
.crumbs a { color:var(--orange); }
.inner-section { padding:60px 0; }
.inner-section.cream { color:#18130f; background:#f4e8d8; }
.inner-section.cream p { color:#55483f; }
.display-title { font-size:clamp(48px,5.4vw,40px); line-height:.94; }
.lead { font-size:20px; line-height:1.7; color:rgba(255,255,255,.7); }
.split-story { display:grid; grid-template-columns:.9fr 1.1fr; gap:70px; align-items:center; }
.story-image-large { min-height:610px; border-radius:38px 8px; background:center/cover; box-shadow:var(--shadow); }
.stat-row { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:36px; }
.stat { min-height:138px; padding:24px; border:1px solid rgba(231,71,36,.25); border-radius:16px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:rgba(255,255,255,.48); }
.stat strong { display:block; color:var(--orange); font-size:35px; }
.values-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.value-card { min-height:300px; padding:30px; border:1px solid var(--line); border-radius:24px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; background:rgba(255,255,255,.055); }
.value-card h3 { margin:18px 0 10px; font-size:28px; }
.value-card p { width:100%; margin-left:auto; margin-right:auto; color:rgba(255,255,255,.65); line-height:1.6; text-align:center; }
.value-icon { width:66px; height:66px; border-radius:50%; display:grid; place-items:center; color:#fff; background:var(--orange); box-shadow:0 12px 30px rgba(231,71,36,.26); }
.value-icon svg { width:32px; height:32px; display:block; fill:currentColor; }
.menu-tools { position:sticky; top:0; z-index:12; padding:18px 0; border-bottom:1px solid var(--line); background:rgba(9,8,7,.92); backdrop-filter:blur(18px); }
.filter-row { display:flex; gap:10px; overflow:auto; padding-bottom:2px; }
.filter-btn { flex:0 0 auto; border:1px solid var(--line); border-radius:999px; padding:12px 18px; color:#fff; background:rgba(255,255,255,.05); }
.filter-btn.is-active,.filter-btn:hover { border-color:var(--orange); background:var(--orange); }
.menu-search { display:grid; grid-template-columns:1fr auto; gap:12px; margin:25px 0 0; }
.menu-search input { min-height:58px; border:1px solid var(--line); border-radius:10px; padding:0 20px; color:#fff; background:rgba(255,255,255,.06); outline:0; }
.menu-category { padding:70px 0 10px; }
.menu-category[hidden] { display:none; }
.category-head { display:flex; align-items:center; justify-content:space-between; gap:30px; margin-bottom:28px; }
.category-head h2 { margin:0; font-size:clamp(42px,4vw,56px); }
.category-head p { max-width:650px; color:rgba(255,255,255,.58); line-height:1.5; }
.menu-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.dish-card { overflow:hidden; border:1px solid var(--line); border-radius:22px; background:#15110f; transition:.3s; }
.dish-card:hover { transform:translateY(-7px); border-color:rgba(255,95,46,.5); }
.dish-image { height:285px; display:grid; align-items:end; background:#241a15 center/contain no-repeat; position:relative; }
.dish-image::after { content:""; position:absolute; inset:45% 0 0; background:linear-gradient(transparent,rgba(0,0,0,.5)); }
.dish-body { padding:22px; }
.dish-body h3 { margin-bottom:8px; font-size:20px; letter-spacing: 1px; }
.dish-body p { min-height:68px; display: none; color:rgba(255,255,255,.62); line-height:1.5; }
.dish-meta { display:flex; justify-content:space-between; align-items:center; gap:10px; color:var(--orange); }
.kcal { font-size:22px; color:#ff5f2e; }
.mini-add,
.mini-add.add { width:auto; height:auto; min-width:86px; min-height:42px; border:0; border-radius:8px; padding:10px 16px; display:inline-flex; align-items:center; justify-content:center; color:#fff; background:var(--orange); font-size:16px; line-height:1; font-weight:700; white-space:nowrap; }
.mini-add:hover { background:var(--orange-2); transform:translateY(-2px); }
.offer-hero-card { display:grid; grid-template-columns:1.2fr .8fr; min-height:440px; overflow:hidden; border-radius:30px; background:#17110e; box-shadow:var(--shadow); }
.offer-copy { padding:60px; align-self:center; }
.offer-copy .deal-price { color:var(--orange); font-size:64px; }
.offer-photo { background:center/cover; }
.offer-list { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:24px; }
.deal-card { min-height:440px; display:flex; flex-direction:column; justify-content:flex-end; padding:28px; border-radius:22px; position:relative; overflow:hidden; background-color:#0b0908; background-position:center top; background-size:100% auto; background-repeat:no-repeat; }
.deal-card::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 0 42%,rgba(0,0,0,.3) 54%,rgba(0,0,0,.96) 73%); }
.deal-card>* { position:relative; }
.deal-card strong { color:var(--orange); font-size:38px; }
.booking-wrap { display:grid; grid-template-columns:.8fr 1.2fr; gap:26px; }
.booking-aside { padding:38px; border-radius:24px; background:var(--orange); color:#fff; }
.booking-aside ul { list-style:none; padding:0; display:grid; gap:22px; }
.booking-aside li { padding-bottom:18px; border-bottom:1px solid rgba(255,255,255,.3); }
.booking-aside small { display:block; opacity:.75; margin-bottom:5px; }
.booking-panel { padding:42px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.05); }
.contact-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.contact-card { padding:32px; border:1px solid var(--line); border-radius:22px; background:rgba(255,255,255,.05); }
.contact-card .icon { color:var(--orange); font-size:35px; }
.contact-card .location-icon { width:35px; height:35px; display:inline-flex; align-items:center; justify-content:center; }
.contact-card .location-icon svg { width:31px; height:31px; display:block; fill:currentColor; }
.contact-card p,.contact-card a { color:rgba(255,255,255,.7); line-height:1.6; }
.map-panel { min-height:480px; border-radius:30px; position:relative; overflow:hidden; background:#15110f; box-shadow:var(--shadow); }
.map-panel iframe { width:100%; height:100%; min-height:575px; display:block; border:0; filter:saturate(.7) contrast(1.05); }
.map-details { position:absolute; left:28px; right:28px; bottom:28px; padding:24px; border:1px solid rgba(255,255,255,.18); border-radius:18px; text-align:left; color:#fff; background:rgba(15,12,10,.9); box-shadow:0 16px 38px rgba(0,0,0,.35); backdrop-filter:blur(10px); }
.map-details h2 { margin:8px 0 4px; font-size:34px; }
.map-details p { margin:0 0 18px; }
.inner-section.cream .split-story { grid-template-columns:1fr 1fr; align-items:stretch; gap:70px; }
.inner-section.cream .map-panel,
.inner-section.cream .booking-panel { min-height:575px; }
.inner-section.cream .map-panel { color:#fff; }
.inner-section.cream .map-panel h2,
.inner-section.cream .map-panel p { color:#fff; }
.inner-section.cream .map-panel p { opacity:.82; }
.contact-dot { color:var(--orange); min-width:28px; text-align:center; }
.footer-location-icon { display:inline-flex; align-items:center; justify-content:center; color:#fff; }
.footer-location-icon svg { display:block; fill:currentColor; }
@media(max-width:1080px){.inner-nav .nav-inner{grid-template-columns:200px 1fr auto}.inner-nav .brand img{width:190px}.inner-nav .menu{gap:12px}.menu-grid{grid-template-columns:repeat(2,1fr)}.offer-list{grid-template-columns:repeat(2,1fr)}.split-story,.booking-wrap,.inner-section.cream .split-story{grid-template-columns:1fr}.story-image-large{min-height:440px}}
@media(max-width:920px){.inner-nav .nav-inner{grid-template-columns:1fr auto}.inner-nav .brand img{width:225px}.mobile-toggle{display:block}.inner-nav .menu{display:none;position:absolute;top:78px;left:14px;right:14px;flex-direction:column;padding:18px;border-radius:14px;background:#100d0b;box-shadow:var(--shadow)}.inner-nav .menu.is-open{display:flex}.inner-nav .menu a{padding:12px}.inner-nav .nav-actions>.btn{display:none}.page-hero{min-height:500px}.values-grid,.contact-grid{grid-template-columns:1fr}.offer-hero-card{grid-template-columns:1fr}.offer-photo{min-height:330px;order:-1}}
@media(max-width:640px){.page-hero{min-height:430px;padding:140px 0 60px}.page-hero h1{font-size:55px}.page-hero p{font-size:17px}.inner-section{padding:62px 0}.menu-grid,.offer-list,.stat-row{grid-template-columns:1fr}.dish-image{height:220px}.category-head{display:block}.menu-search{grid-template-columns:1fr}.offer-copy,.booking-panel{padding:28px}.offer-copy .deal-price{font-size:48px}.story-image-large{min-height:330px}}
