/* ═══════════════════════════════
   TOKENS — warm candlelight theme
═══════════════════════════════ */
:root {
  --bg:          #130F09;
  --bg2:         #1C1610;
  --bg3:         #241C12;
  --surface:     #2C2216;
  --amber:       #D4933A;
  --amber-light: #F0BF72;
  --amber-pale:  rgba(212,147,58,0.12);
  --terra:       #C4562A;
  --cream:       #F5EFE3;
  --cream2:      #EDE5D4;
  --muted:       #9A8B74;
  --border:      rgba(212,147,58,0.15);
  --border2:     rgba(212,147,58,0.28);
  --radius:      16px;
  --ease:        cubic-bezier(0.4,0,0.2,1);
}

*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body { font-family:'Outfit',sans-serif; background:var(--bg); color:var(--cream); overflow-x:hidden; line-height:1.65; }
img { display:block; max-width:100%; }
a { color:inherit; text-decoration:none; }
button { font-family:'Outfit',sans-serif; cursor:pointer; }

/* TYPE */
.overline { font-size:11px; letter-spacing:3px; text-transform:uppercase; color:var(--amber); font-weight:500; }
em { font-style:italic; color:var(--amber); }

/* NAV */
.nav { position:fixed; top:0; left:0; right:0; z-index:100; display:flex; align-items:center; justify-content:space-between; padding:0 20px; height:64px; transition:background 0.3s var(--ease),border-bottom 0.3s; }
.nav.scrolled { background:rgba(19,15,9,0.95); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border-bottom:1px solid var(--border); }
.nav-logo { display:flex; align-items:center; gap:10px; }
.nav-logo-mark { width:36px; height:36px; border-radius:50%; border:1.5px solid var(--amber); display:flex; align-items:center; justify-content:center; font-family:'Playfair Display',serif; font-size:16px; color:var(--amber); font-weight:700; flex-shrink:0; }
.nav-logo-text { font-family:'Playfair Display',serif; font-size:17px; font-weight:600; color:var(--cream); }
.nav-logo-text span { color:var(--amber); }
.nav-desktop { display:none; align-items:center; gap:28px; list-style:none; }
.nav-desktop a { font-size:13px; color:var(--muted); font-weight:500; transition:color 0.2s; }
.nav-desktop a:hover { color:var(--cream); }
.nav-cta-link { background:var(--amber) !important; color:var(--bg) !important; padding:9px 20px !important; border-radius:8px !important; font-weight:600 !important; transition:background 0.2s,transform 0.2s !important; }
.nav-cta-link:hover { background:var(--amber-light) !important; transform:translateY(-1px); }
.nav-burger { display:flex; flex-direction:column; gap:5px; padding:8px; background:none; border:none; }
.nav-burger span { display:block; width:22px; height:1.5px; background:var(--cream); transition:transform 0.3s,opacity 0.3s; }

/* MOBILE MENU */
.mobile-menu { display:none; position:fixed; inset:0; background:rgba(19,15,9,0.98); backdrop-filter:blur(20px); z-index:99; flex-direction:column; align-items:center; justify-content:center; gap:8px; }
.mobile-menu.open { display:flex; }
.mobile-menu a { font-family:'Playfair Display',serif; font-size:32px; font-weight:600; color:var(--cream); padding:12px 24px; transition:color 0.2s; }
.mobile-menu a:hover { color:var(--amber); }
.mobile-menu .mm-cta { margin-top:16px; background:var(--amber); color:var(--bg) !important; padding:16px 40px !important; border-radius:10px; font-size:18px !important; font-weight:700 !important; }
.mm-close { position:absolute; top:20px; right:20px; background:none; border:none; color:var(--muted); font-size:28px; padding:8px; }

/* STICKY CTA */
.sticky-cta { position:fixed; bottom:0; left:0; right:0; z-index:98; padding:12px 16px; padding-bottom:max(12px,env(safe-area-inset-bottom)); background:linear-gradient(to top,var(--bg) 60%,transparent); display:flex; gap:10px; }
.sticky-cta a { flex:1; display:flex; align-items:center; justify-content:center; gap:6px; padding:14px 12px; border-radius:12px; font-size:14px; font-weight:600; transition:transform 0.15s,background 0.2s; }
.sticky-cta a:active { transform:scale(0.97); }
.sticky-cta .s-primary { background:var(--amber); color:var(--bg); }
.sticky-cta .s-secondary { background:var(--surface); color:var(--cream); border:1px solid var(--border2); }

/* HERO */
.hero { position:relative; min-height:100svh; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; }
.hero-bg { position:absolute; inset:0; }
.hero-bg img { width:100%; height:100%; object-fit:cover; object-position:center 30%; }
.hero-overlay { position:absolute; inset:0; background:linear-gradient(to bottom,rgba(19,15,9,0.3) 0%,rgba(19,15,9,0.15) 30%,rgba(19,15,9,0.7) 65%,rgba(19,15,9,0.97) 100%); }
.hero-content { position:relative; z-index:2; padding:0 20px 120px; max-width:720px; }
.hero-tag { display:inline-flex; align-items:center; gap:8px; background:rgba(212,147,58,0.15); border:1px solid var(--border2); border-radius:20px; padding:6px 14px; margin-bottom:20px; font-size:11px; letter-spacing:2px; text-transform:uppercase; color:var(--amber); font-weight:500; }
.hero-tag-dot { width:5px; height:5px; border-radius:50%; background:var(--amber); animation:pulse 2s ease-in-out infinite; }
.hero-h1 { font-family:'Playfair Display',serif; font-size:clamp(40px,9vw,80px); font-weight:700; line-height:1.05; color:var(--cream); margin-bottom:18px; }
.hero-h1 em { font-style:italic; color:var(--amber); }
.hero-sub { font-size:clamp(15px,3.5vw,17px); color:var(--cream2); opacity:0.8; max-width:520px; margin-bottom:32px; line-height:1.7; }
.hero-pills { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:32px; }
.hero-pill { padding:6px 14px; background:rgba(245,239,227,0.08); border:1px solid rgba(245,239,227,0.15); border-radius:20px; font-size:12px; color:var(--cream2); }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.btn-amber { display:inline-flex; align-items:center; gap:8px; background:var(--amber); color:var(--bg); padding:15px 28px; border-radius:10px; font-size:15px; font-weight:600; border:none; transition:background 0.2s,transform 0.2s,box-shadow 0.2s; }
.btn-amber:hover { background:var(--amber-light); transform:translateY(-2px); box-shadow:0 12px 28px rgba(212,147,58,0.3); }
.btn-ghost { display:inline-flex; align-items:center; gap:8px; background:transparent; color:var(--cream); padding:15px 28px; border-radius:10px; font-size:15px; font-weight:500; border:1.5px solid rgba(245,239,227,0.2); transition:border-color 0.2s,background 0.2s; }
.btn-ghost:hover { border-color:rgba(245,239,227,0.45); background:rgba(245,239,227,0.05); }

/* STATS */
.stats-bar { background:var(--bg2); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:28px 20px; }
.stats-inner { max-width:1100px; margin:0 auto; display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.stat-item { text-align:center; }
.stat-num { font-family:'Playfair Display',serif; font-size:34px; font-weight:700; color:var(--amber); line-height:1; }
.stat-label { font-size:12px; color:var(--muted); margin-top:4px; }

/* SECTION */
.section { padding:72px 20px; }
.section-inner { max-width:1100px; margin:0 auto; }
.section-header { margin-bottom:48px; }
.section-header.center { text-align:center; }
.section-h2 { font-family:'Playfair Display',serif; font-size:clamp(30px,6vw,52px); font-weight:700; color:var(--cream); line-height:1.1; margin-top:10px; }
.section-sub { font-size:15px; color:var(--muted); max-width:520px; margin-top:12px; line-height:1.75; }
.section-header.center .section-sub { margin:12px auto 0; }
.gold-bar { width:36px; height:2.5px; background:var(--amber); border-radius:2px; margin-top:14px; }
.gold-bar.center { margin:14px auto 0; }

/* ABOUT */
.about { background:var(--bg2); }
.about-grid { display:flex; flex-direction:column; gap:40px; }
.about-photo { position:relative; border-radius:20px; overflow:hidden; aspect-ratio:4/3; }
.about-photo img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s var(--ease); }
.about-photo:hover img { transform:scale(1.04); }
.about-badge { position:absolute; bottom:16px; right:16px; background:var(--bg2); border:1px solid var(--border2); border-radius:12px; padding:14px 18px; text-align:center; backdrop-filter:blur(12px); }
.about-badge .n { font-family:'Playfair Display',serif; font-size:32px; font-weight:700; color:var(--amber); line-height:1; }
.about-badge .l { font-size:11px; color:var(--muted); margin-top:3px; }
.about-features { display:flex; flex-direction:column; gap:14px; }
.feat { display:flex; gap:14px; align-items:flex-start; padding:16px 18px; background:var(--bg3); border:1px solid var(--border); border-radius:12px; transition:border-color 0.25s,transform 0.25s; }
.feat:hover { border-color:var(--border2); transform:translateX(4px); }
.feat-icon { width:38px; height:38px; background:var(--amber-pale); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.feat h4 { font-size:14px; font-weight:600; color:var(--cream); margin-bottom:2px; }
.feat p { font-size:12px; color:var(--muted); line-height:1.5; }

/* CUISINES */
.cuisines { background:var(--bg); }
.cuisine-tabs { display:flex; gap:6px; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; padding-bottom:4px; margin-bottom:40px; }
.cuisine-tabs::-webkit-scrollbar { display:none; }
.c-tab { flex-shrink:0; padding:11px 22px; border-radius:10px; font-size:14px; font-weight:500; color:var(--muted); background:var(--bg3); border:1px solid var(--border); transition:all 0.25s; }
.c-tab.active { background:var(--amber); color:var(--bg); border-color:var(--amber); font-weight:600; }
.c-tab:hover:not(.active) { color:var(--cream); }
.cuisine-panel { display:none; }
.cuisine-panel.active { display:block; }
.cuisine-layout { display:flex; flex-direction:column; gap:32px; }
.cuisine-img { border-radius:18px; overflow:hidden; aspect-ratio:16/9; position:relative; }
.cuisine-img img { width:100%; height:100%; object-fit:cover; }
.cuisine-chip { position:absolute; top:14px; left:14px; padding:5px 12px; border-radius:16px; font-size:11px; font-weight:600; letter-spacing:1px; text-transform:uppercase; backdrop-filter:blur(10px); }
.chip-indian { background:rgba(196,86,42,0.25); color:#E8906A; border:1px solid rgba(196,86,42,0.35); }
.chip-italian { background:rgba(140,184,88,0.2); color:#9ED06A; border:1px solid rgba(140,184,88,0.3); }
.chip-american { background:rgba(212,147,58,0.2); color:var(--amber-light); border:1px solid var(--border2); }
.cuisine-info .section-h2 { font-size:clamp(26px,5vw,42px); margin-top:0; }
.cuisine-info p { font-size:14px; color:var(--muted); line-height:1.8; margin-bottom:20px; }
.dish-chips { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:28px; }
.dish-chip { padding:7px 14px; background:var(--bg3); border:1px solid var(--border); border-radius:8px; font-size:12px; color:var(--cream2); transition:border-color 0.2s; }
.dish-chip:hover { border-color:var(--amber); }

/* SERVICES */
.services { background:var(--bg2); }
.services-grid { display:grid; grid-template-columns:1fr; gap:16px; }
.svc-card { background:var(--bg3); border:1px solid var(--border); border-radius:var(--radius); padding:28px 24px; position:relative; overflow:hidden; transition:border-color 0.25s,transform 0.25s,box-shadow 0.25s; }
.svc-card::after { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,transparent,var(--amber),transparent); transform:scaleX(0); transition:transform 0.3s; }
.svc-card:hover::after { transform:scaleX(1); }
.svc-card:hover { border-color:var(--border2); transform:translateY(-3px); box-shadow:0 16px 40px rgba(0,0,0,0.35); }
.svc-icon { width:48px; height:48px; background:var(--amber-pale); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:22px; margin-bottom:16px; }
.svc-card h3 { font-family:'Playfair Display',serif; font-size:20px; font-weight:600; color:var(--cream); margin-bottom:8px; }
.svc-card p { font-size:13px; color:var(--muted); line-height:1.7; margin-bottom:16px; }
.svc-link { font-size:13px; color:var(--amber); font-weight:500; display:inline-flex; align-items:center; gap:6px; transition:gap 0.2s; }
.svc-link:hover { gap:10px; }

/* GALLERY */
.gallery { background:var(--bg); }
.gallery-grid { columns:2; column-gap:10px; }
.gallery-item { break-inside:avoid; margin-bottom:10px; border-radius:12px; overflow:hidden; cursor:pointer; position:relative; }
.gallery-item img { width:100%; display:block; transition:transform 0.45s var(--ease); }
.gallery-item:hover img { transform:scale(1.06); }
.gallery-item-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(19,15,9,0.7) 0%,transparent 60%); opacity:0; transition:opacity 0.3s; display:flex; align-items:flex-end; padding:14px; }
.gallery-item:hover .gallery-item-overlay { opacity:1; }
.gallery-item-label { font-size:11px; color:var(--cream); font-weight:500; }

/* LIGHTBOX */
.lightbox { display:none; position:fixed; inset:0; z-index:200; background:rgba(0,0,0,0.92); align-items:center; justify-content:center; padding:20px; }
.lightbox.open { display:flex; }
.lightbox img { max-width:100%; max-height:90vh; border-radius:12px; object-fit:contain; }
.lb-close { position:absolute; top:16px; right:16px; width:44px; height:44px; background:rgba(255,255,255,0.1); border:none; border-radius:50%; color:white; font-size:22px; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background 0.2s; }
.lb-close:hover { background:rgba(255,255,255,0.2); }
.lb-nav { position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; background:rgba(255,255,255,0.1); border:none; border-radius:50%; color:white; font-size:20px; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:background 0.2s; }
.lb-nav:hover { background:rgba(255,255,255,0.2); }
.lb-prev { left:16px; }
.lb-next { right:16px; }

/* PACKAGES */
.packages { background:var(--bg2); }
.pkg-scroller { display:flex; gap:16px; overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none; padding-bottom:4px; scroll-snap-type:x mandatory; }
.pkg-scroller::-webkit-scrollbar { display:none; }
.pkg-card { flex-shrink:0; width:min(82vw,280px); scroll-snap-align:start; background:var(--bg3); border:1px solid var(--border); border-radius:var(--radius); padding:28px 22px; text-align:center; position:relative; transition:border-color 0.25s,transform 0.25s; }
.pkg-card.featured { border-color:var(--amber); background:linear-gradient(160deg,rgba(212,147,58,0.12),rgba(212,147,58,0.04)); }
.pkg-badge { position:absolute; top:-11px; left:50%; transform:translateX(-50%); background:var(--amber); color:var(--bg); font-size:10px; font-weight:700; letter-spacing:1px; text-transform:uppercase; padding:4px 14px; border-radius:20px; white-space:nowrap; }
.pkg-tier { font-size:10px; letter-spacing:2px; text-transform:uppercase; color:var(--amber); margin-bottom:10px; }
.pkg-price { font-family:'Playfair Display',serif; font-size:44px; font-weight:700; color:var(--cream); line-height:1; }
.pkg-price sub { font-size:14px; font-weight:400; color:var(--muted); font-family:'Outfit',sans-serif; }
.pkg-per { font-size:11px; color:var(--muted); margin:4px 0 16px; }
.pkg-divider { height:1px; background:var(--border); margin:16px 0; }
.pkg-items { list-style:none; text-align:left; }
.pkg-items li { font-size:12px; color:var(--muted); padding:5px 0; display:flex; gap:8px; align-items:flex-start; }
.pkg-items li::before { content:'✓'; color:var(--amber); font-size:11px; flex-shrink:0; margin-top:1px; }
.pkg-btn { display:block; width:100%; margin-top:20px; padding:12px; border-radius:10px; font-size:13px; font-weight:600; cursor:pointer; text-align:center; transition:all 0.2s; border:1.5px solid var(--border2); color:var(--amber); background:transparent; }
.pkg-btn:hover { background:var(--amber-pale); border-color:var(--amber); }
.pkg-card.featured .pkg-btn { background:var(--amber); border-color:var(--amber); color:var(--bg); }
.pkg-card.featured .pkg-btn:hover { background:var(--amber-light); }

/* PROCESS */
.process { background:var(--bg); }
.process-steps { display:flex; flex-direction:column; gap:0; }
.process-step { display:flex; gap:20px; padding:20px 0; border-bottom:1px solid var(--border); align-items:flex-start; }
.process-step:last-child { border-bottom:none; }
.process-num { width:48px; height:48px; border-radius:50%; background:var(--bg3); border:1.5px solid var(--border2); display:flex; align-items:center; justify-content:center; font-family:'Playfair Display',serif; font-size:18px; font-weight:700; color:var(--amber); flex-shrink:0; transition:background 0.25s,border-color 0.25s; }
.process-step:hover .process-num { background:var(--amber-pale); border-color:var(--amber); }
.process-text h4 { font-family:'Playfair Display',serif; font-size:17px; font-weight:600; color:var(--cream); margin-bottom:4px; }
.process-text p { font-size:13px; color:var(--muted); line-height:1.6; }

/* REGION */
.region { background:var(--bg2); }
.region-card { background:var(--bg3); border:1px solid var(--border); border-radius:20px; padding:32px 24px; text-align:center; margin-bottom:28px; position:relative; overflow:hidden; }
.region-card::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse 60% 50% at 50% 50%,rgba(212,147,58,0.07) 0%,transparent 70%); pointer-events:none; }
.region-card h3 { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; color:var(--cream); margin:12px 0 6px; }
.region-card p { font-size:13px; color:var(--muted); }
.region-icon { font-size:56px; }
.city-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; justify-content:center; }
.city-tag { padding:7px 14px; background:var(--bg3); border:1px solid var(--border); border-radius:8px; font-size:12px; color:var(--cream2); transition:border-color 0.2s,color 0.2s; }
.city-tag:hover { border-color:var(--amber); color:var(--amber); }
.city-tag.main { border-color:var(--border2); color:var(--amber); background:var(--amber-pale); }

/* FAQ */
.faq { background:var(--bg); }
.faq-list { max-width:720px; margin:0 auto; }
.faq-item { border:1px solid var(--border); border-radius:12px; margin-bottom:10px; overflow:hidden; transition:border-color 0.2s; }
.faq-item:hover { border-color:var(--border2); }
.faq-item.open { border-color:var(--border2); }
.faq-q { padding:18px 20px; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; font-size:14px; font-weight:500; color:var(--cream); background:var(--bg3); user-select:none; min-height:56px; }
.faq-icon { width:26px; height:26px; border-radius:50%; border:1px solid var(--border2); display:flex; align-items:center; justify-content:center; color:var(--amber); font-size:18px; flex-shrink:0; transition:transform 0.3s,background 0.2s; }
.faq-item.open .faq-icon { transform:rotate(45deg); background:var(--amber-pale); }
.faq-a { max-height:0; overflow:hidden; transition:max-height 0.4s ease,padding 0.3s; font-size:13px; color:var(--muted); line-height:1.8; background:var(--bg2); padding:0 20px; }
.faq-item.open .faq-a { max-height:300px; padding:16px 20px 20px; }

/* CONTACT */
.contact { background:var(--bg2); }
.contact-layout { display:flex; flex-direction:column; gap:40px; }
.contact-details h2 { font-family:'Playfair Display',serif; font-size:clamp(28px,6vw,48px); font-weight:700; color:var(--cream); line-height:1.15; margin-top:10px; }
.contact-details p { font-size:14px; color:var(--muted); margin:16px 0 28px; line-height:1.75; }
.cd-item { display:flex; gap:12px; margin-bottom:16px; align-items:flex-start; }
.cd-icon { width:40px; height:40px; background:var(--amber-pale); border:1px solid var(--border2); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:17px; flex-shrink:0; }
.cd-text .lbl { font-size:10px; color:var(--muted); letter-spacing:1.5px; text-transform:uppercase; margin-bottom:2px; }
.cd-text .val { font-size:14px; color:var(--cream); font-weight:500; }
.cd-text a { color:var(--amber); }
.form-wrap { background:var(--bg3); border:1px solid var(--border); border-radius:20px; padding:28px 20px; }
.form-wrap h3 { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; color:var(--cream); margin-bottom:6px; }
.form-wrap>p { font-size:13px; color:var(--muted); margin-bottom:24px; }
.form-row { display:grid; grid-template-columns:1fr; gap:14px; }
.form-group { margin-bottom:14px; }
.form-group label { display:block; font-size:11px; color:var(--muted); letter-spacing:0.5px; font-weight:500; margin-bottom:6px; text-transform:uppercase; }
.form-group input,.form-group select,.form-group textarea { width:100%; background:var(--bg2); border:1px solid var(--border); border-radius:10px; padding:13px 15px; color:var(--cream); font-size:14px; font-family:'Outfit',sans-serif; transition:border-color 0.2s,box-shadow 0.2s; outline:none; appearance:none; -webkit-appearance:none; min-height:48px; }
.form-group select { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239A8B74' stroke-width='1.5' stroke-linecap='round' fill='none'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 14px center; padding-right:36px; }
.form-group select option { background:var(--bg2); }
.form-group textarea { resize:vertical; min-height:90px; }
.form-group input:focus,.form-group select:focus,.form-group textarea:focus { border-color:var(--amber); box-shadow:0 0 0 3px rgba(212,147,58,0.1); }
.form-group input::placeholder,.form-group textarea::placeholder { color:var(--muted); opacity:0.6; }
.form-submit { width:100%; padding:15px; background:var(--amber); color:var(--bg); border:none; border-radius:10px; font-size:15px; font-weight:700; cursor:pointer; transition:background 0.2s,transform 0.15s; margin-top:8px; min-height:52px; }
.form-submit:hover { background:var(--amber-light); transform:translateY(-1px); }
.form-submit:active { transform:scale(0.98); }
.form-note { text-align:center; font-size:11px; color:var(--muted); margin-top:12px; line-height:1.6; }
.form-success { display:none; text-align:center; padding:40px 16px; }
.form-success .s-icon { font-size:52px; margin-bottom:16px; }
.form-success h4 { font-family:'Playfair Display',serif; font-size:24px; font-weight:700; color:var(--cream); margin-bottom:8px; }
.form-success p { font-size:14px; color:var(--muted); }

/* FOOTER */
footer { background:var(--bg); border-top:1px solid var(--border); padding:48px 20px 100px; }
.footer-inner { max-width:1100px; margin:0 auto; }
.footer-brand { margin-bottom:32px; }
.footer-brand p { font-size:13px; color:var(--muted); line-height:1.7; max-width:280px; margin-top:12px; }
.footer-addr { font-size:12px; color:var(--muted); margin-top:12px; line-height:1.8; }
.footer-addr a { color:var(--amber); }
.footer-cols { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-bottom:36px; }
.footer-col h4 { font-size:10px; letter-spacing:2px; text-transform:uppercase; color:var(--amber); margin-bottom:14px; font-weight:600; }
.footer-col ul { list-style:none; }
.footer-col ul li { margin-bottom:8px; }
.footer-col ul li a { font-size:13px; color:var(--muted); transition:color 0.2s; }
.footer-col ul li a:hover { color:var(--cream); }
.footer-bottom { border-top:1px solid var(--border); padding-top:20px; display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; }
.footer-bottom p { font-size:11px; color:var(--muted); }
.footer-kw { font-size:9px; color:rgba(154,139,116,0.3); margin-top:10px; line-height:2; }

/* ANIMATIONS */
@keyframes pulse { 0%,100%{box-shadow:0 0 0 0 rgba(212,147,58,0.4);}50%{box-shadow:0 0 0 6px rgba(212,147,58,0);} }
.reveal { opacity:0; transform:translateY(28px); transition:opacity 0.65s ease,transform 0.65s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-d1{transition-delay:0.1s;} .reveal-d2{transition-delay:0.2s;} .reveal-d3{transition-delay:0.3s;} .reveal-d4{transition-delay:0.4s;}

/* TABLET+ */
@media(min-width:640px){
  .stats-inner{grid-template-columns:repeat(4,1fr);}
  .services-grid{grid-template-columns:repeat(2,1fr);}
  .gallery-grid{columns:3;column-gap:12px;}
  .gallery-item{margin-bottom:12px;}
  .form-row{grid-template-columns:1fr 1fr;}
  .footer-cols{grid-template-columns:repeat(3,1fr);}
  .sticky-cta{display:none;}
  footer{padding-bottom:48px;}
}

/* DESKTOP */
@media(min-width:1024px){
  .nav{padding:0 48px;height:72px;}
  .nav-burger{display:none;}
  .nav-desktop{display:flex;}
  .hero-content{padding:0 48px 100px;}
  .section{padding:96px 48px;}
  .about-grid{flex-direction:row;gap:80px;align-items:center;}
  .about-photo{flex:0 0 44%;aspect-ratio:4/5;}
  .cuisine-layout{flex-direction:row;gap:60px;align-items:center;}
  .cuisine-img{flex:0 0 46%;aspect-ratio:4/3;}
  .services-grid{grid-template-columns:repeat(3,1fr);}
  .gallery-grid{columns:4;column-gap:14px;}
  .gallery-item{margin-bottom:14px;}
  .pkg-scroller{overflow-x:visible;flex-wrap:wrap;}
  .pkg-card{width:auto;flex:1 1 200px;}
  .process-steps{flex-direction:row;gap:0;align-items:flex-start;position:relative;}
  .process-steps::before{content:'';position:absolute;top:24px;left:calc(48px / 2);right:calc(48px / 2);height:1px;background:var(--border);}
  .process-step{flex-direction:column;align-items:center;text-align:center;flex:1;border-bottom:none;padding:0 16px;}
  .process-num{margin-bottom:16px;position:relative;z-index:1;background:var(--bg);}
  .contact-layout{flex-direction:row;gap:72px;align-items:flex-start;}
  .contact-details{flex:0 0 340px;}
  .form-wrap{flex:1;padding:36px;}
  .footer-inner{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;align-items:start;}
  .footer-brand{margin-bottom:0;}
  .footer-cols{display:contents;gap:0;}
  .footer-bottom{grid-column:1/-1;}
  .footer-kw{grid-column:1/-1;}
  .sticky-cta{display:none;}
  footer{padding-bottom:48px;}
}
