@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Outfit:wght@300;400;500;600&display=swap');

/* ═══════════════════════════════════════════════
   VARIABLES & RESET
═══════════════════════════════════════════════ */
:root {
  --blk:  #0B0B0B;
  --ofw:  #F7F5F2;
  --gld:  #C79A3B;
  --cop:  #B87333;
  --red:  #8C1D18;
  --card: #111111;
  --card2:#0E0E0E;
  --bdr:  rgba(199,154,59,.18);
  --nav-h: 80px;
}
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
html,
body {
  overflow-x: hidden;
  overscroll-behavior-x:none;
}
body { background:var(--blk); color:var(--ofw); font-family:'Outfit',sans-serif; overflow-x:hidden; -webkit-font-smoothing:antialiased; }
a { text-decoration:none; color:inherit; }
img { display:block; max-width:100%; }
button, input, textarea, select { font-family:inherit; }
ul { list-style:none; }

/* ═══════════════════════════════════════════════
   TYPOGRAPHY HELPERS
═══════════════════════════════════════════════ */
.serif { font-family:'Cormorant Garamond',serif; }
.gold  { color:var(--gld); }
.muted { color:rgba(247,245,242,.5); }
.sec-label {
  display:flex; align-items:center; justify-content:center; gap:20px; margin-bottom:20px;
}
.sec-label::before, .sec-label::after {
  content:''; width:56px; height:1px; background:rgba(199,154,59,.38);
}
.sec-label.left { justify-content:flex-start; }
.sec-label.left::before { display:none; }
.sec-label span { font-size:10px; letter-spacing:4px; color:var(--gld); text-transform:uppercase; }
.sec-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(36px,5vw,68px);
  font-weight:400; line-height:1.1;
}
.sec-title.center { text-align:center; }
.sec-title em { color:var(--gld); font-style:italic; }

/* ═══════════════════════════════════════════════
   BUTTONS
═══════════════════════════════════════════════ */
.btn-gold {
  background:transparent; border:1px solid var(--gld); color:var(--gld);
  padding:14px 36px; font-size:12px; font-weight:500; letter-spacing:2.5px;
  text-transform:uppercase; cursor:pointer; transition:all .4s ease;
  position:relative; overflow:hidden; z-index:0; display:inline-block;
}
.btn-gold::before {
  content:''; position:absolute; inset:0; background:var(--gld);
  transform:scaleX(0); transform-origin:left;
  transition:transform .4s cubic-bezier(.16,10,.3,1); z-index:-1;
}
.btn-gold:hover::before { transform:scaleX(1); }
.btn-gold:hover { color:var(--blk); }

.btn-fill {
  background:var(--gld); border:1px solid var(--gld); color:var(--blk);
  padding:14px 36px; font-size:12px; font-weight:600; letter-spacing:2.5px;
  text-transform:uppercase; cursor:pointer; transition:all .3s ease; display:inline-block;
}
.btn-fill:hover { background:transparent; color:var(--gld); }

.btn-red {
  background:var(--red); border:1px solid var(--red); color:var(--ofw);
  padding:14px 36px; font-size:12px; font-weight:600; letter-spacing:2px;
  text-transform:uppercase; cursor:pointer; transition:all .3s ease; display:inline-block;
}
.btn-red:hover { background:transparent; color:var(--red); }

/* ═══════════════════════════════════════════════
   FORM INPUTS
═══════════════════════════════════════════════ */
.form-input {
  background:rgba(247,245,242,.04); border:1px solid rgba(199,154,59,.22);
  color:var(--ofw); padding:16px 20px; font-size:14px; outline:none;
  transition:border-color .3s ease; width:100%;
}
.form-input:focus { border-color:var(--gld); }
.form-input::placeholder { color:rgba(247,245,242,.28); }
select.form-input option { background:#141414; color:var(--ofw); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.form-row.single { grid-template-columns:1fr; }
.form-group { margin-bottom:16px; }
.form-label { font-size:11px; letter-spacing:2px; color:var(--gld); text-transform:uppercase; display:block; margin-bottom:8px; }

/* ═══════════════════════════════════════════════
   NAVBAR
═══════════════════════════════════════════════ */
#navbar {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  padding:0 60px; height:var(--nav-h);
  display:flex; align-items:center; justify-content:space-between;
  background:transparent; transition:all .5s ease;
}
.hero {
  padding-top: var(--nav-h);
  
}
#navbar.scrolled {
  background:rgba(11,11,11,.95);
  backdrop-filter:blur(24px);
  border-bottom:1px solid rgba(199,154,59,.12);
}
#navbar.zoomed {
  background: #0B0B0B !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.nav-logo { display:flex; align-items:center; gap:12px; }

.nav-logo-icon span {
  transform:rotate(-45deg); color:var(--gld);
  font-size:17px; font-family:'Cormorant Garamond',serif;
}
.nav-logo-text h2 {
  font-family:'Cormorant Garamond',serif;
  font-size:17px; font-weight:600; letter-spacing:.5px; white-space:nowrap; color:var(--gld);

}
.nav-logo-text span {
  font-size:9px; letter-spacing:2.5px; color:var(--gld);
  text-transform:uppercase; display:block; margin-top:-2px;
}
.nav-links { display:flex; gap:26px; align-items:center; }
.nav-links a {
  color:rgba(247,245,242,.55); font-size:11px; letter-spacing:1.8px;
  text-transform:uppercase; font-weight:500; transition:color .3s ease;
  position:relative; padding-bottom:2px;
}
.nav-links a:hover, .nav-links a.active { color:var(--gld); }
.nav-links a.active::after {
  content:''; position:absolute; bottom:-4px; left:0; right:0;
  height:1px; background:var(--gld);
}
.hamburger {
  display:none; flex-direction:column; gap:5px;
  cursor:pointer; background:none; border:none;
}
.hamburger span {
  display:block; width:24px; height:1.5px;
  background:var(--ofw); transition:all .3s;
}

/* ═══════════════════════════════════════════════
   MOBILE MENU
═══════════════════════════════════════════════ */
.mobile-menu {
  display:none; 
  position:fixed; 
  inset:0;
  background:rgba(11,11,11,.98); 
  z-index:999;
  flex-direction:column;
   align-items:center;
  justify-content:center; 
  gap:28px;
}
.mobile-menu.open { display:flex; animation:fadeIn .3s ease; }
.mobile-menu a {
  font-family:'Cormorant Garamond',serif;
  font-size:34px; font-weight:400;
  color:rgba(247,245,242,.65); transition:color .3s;
}
.mobile-menu a:hover { color:var(--gld); }
.mobile-close {
  position:absolute; top:28px; right:28px;
  background:none; border:none; color:var(--ofw);
  font-size:26px; cursor:pointer; line-height:1;
}

/* ═══════════════════════════════════════════════
   TICKER STRIP
═══════════════════════════════════════════════ */
.ticker-strip { background:var(--gld); padding:16px 0; overflow:hidden; }
.ticker-inner {
  display:inline-flex; gap:56px; white-space:nowrap;
  animation:ticker 35s linear infinite;
}
.ticker-inner span {
  color:var(--blk); font-size:11px; letter-spacing:2px;
  font-weight:600; text-transform:uppercase; flex-shrink:0;
}

/* ═══════════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════════ */
.footer { padding:64px 80px 36px; border-top:1px solid rgba(199,154,59,.12); }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:56px; margin-bottom:52px; }
.footer-brand-logo { display:flex; align-items:center; gap:12px; margin-bottom:16px; }
.footer-brand-logo .icon {
  width:32px; height:32px; border:1px solid var(--gld);
  display:flex; align-items:center; justify-content:center;
  transform:rotate(45deg); flex-shrink:0;
}
.footer-brand-logo .icon span {
  transform:rotate(-45deg); color:var(--gld);
  font-size:15px; font-family:'Cormorant Garamond',serif;
}
.footer-brand-logo h3 {
  font-family:'Cormorant Garamond',serif;
  font-size:17px; font-weight:600;
}
.footer-brand p { font-size:13px; color:rgba(247,245,242,.36); line-height:1.85; max-width:270px; }
.footer-socials { display:flex; gap:10px; margin-top:22px; }
.soc {
  width:36px; height:36px;
  border:1px solid rgba(199,154,59,.25);
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; font-size:11px; font-weight:600;
  color:rgba(247,245,242,.4); transition:all .3s;
}
.our-online-partners{
  width:36px; height:36px;
  border:1px solid rgba(199,154,59,.25);
  position:right;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; font-size:11px; font-weight:600;
  color:rgba(247,245,242,.4); transition:all .3s;
}
.soc:hover { border-color:var(--gld); color:var(--gld); }
.footer-col h4 { font-size:10px; letter-spacing:3px; color:var(--gld); text-transform:uppercase; margin-bottom:20px; }
.footer-col ul { display:flex; flex-direction:column; gap:11px; }
.footer-col li { font-size:13px; color:rgba(247,245,242,.4); cursor:pointer; transition:color .3s; }
.footer-col li:hover { color:var(--gld); }
.footer-bottom {
  border-top:1px solid rgba(247,245,242,.07); padding-top:24px;
  display:flex; justify-content:space-between; align-items:center;
}
.footer-bottom p { font-size:12px; color:rgba(247,245,242,.22); }
.footer-bottom span {
  font-family:'Cormorant Garamond',serif;
  font-size:16px; color:rgba(199,154,59,.42); font-style:italic;
}

/* ═══════════════════════════════════════════════
   SHARED COMPONENTS
═══════════════════════════════════════════════ */
.veg-dot {
  width:12px; height:12px; border:1.5px solid; flex-shrink:0;
  display:inline-flex; align-items:center; justify-content:center;
}
.veg-dot.v { border-color:#3B6D11; }
.veg-dot.n { border-color:var(--red); }
.veg-dot::after { content:''; width:5px; height:5px; border-radius:50%; }
.veg-dot.v::after { background:#3B6D11; }
.veg-dot.n::after { background:var(--red); }

.spice { display:flex; gap:3px; align-items:center; }
.sp { width:6px; height:6px; border-radius:50%; background:rgba(247,245,242,.14); }
.sp.on { background:var(--red); }

.section-divider {
  height:1px; background:linear-gradient(to right,transparent,rgba(199,154,59,.3),transparent);
  margin:0;
}
.scrollbar-hide::-webkit-scrollbar { display:none; }
.scrollbar-hide { -ms-overflow-style:none; scrollbar-width:none; }

.tag-pill {
  display:inline-block; padding:4px 12px;
  font-size:10px; letter-spacing:1.5px;
  text-transform:uppercase; font-weight:500;
}
.tag-gold { background:rgba(199,154,59,.9); color:var(--blk); font-weight:600; }
.tag-veg  { background:rgba(27,80,10,.9);   color:var(--ofw); }
.tag-nonv { background:rgba(140,29,24,.9);   color:var(--ofw); }

/* ═══════════════════════════════════════════════
   ANIMATIONS & REVEAL
═══════════════════════════════════════════════ */
@keyframes fadeUp { from{opacity:0;transform:translateY(32px)} to{opacity:1;transform:translateY(0)} }
@keyframes fadeIn { from{opacity:0} to{opacity:1} }
@keyframes slideL { from{opacity:0;transform:translateX(-32px)} to{opacity:1;transform:translateX(0)} }
@keyframes slideR { from{opacity:0;transform:translateX(32px)} to{opacity:1;transform:translateX(0)} }
@keyframes scaleIn { from{opacity:0;transform:scale(.93)} to{opacity:1;transform:scale(1)} }
@keyframes float { 0%,100%{transform:translateY(0) translateX(-50%)} 50%{transform:translateY(-10px) translateX(-50%)} }
@keyframes ticker { from{transform:translateX(0)} to{transform:translateX(-50%)} }
@keyframes spin { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
@keyframes shimmer {
  0%{background-position:-600px 0} 100%{background-position:600px 0}
}
.reveal   { opacity:0; transform:translateY(28px); transition:opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1); }
.reveal-l { opacity:0; transform:translateX(-28px); transition:opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1); }
.reveal-r { opacity:0; transform:translateX(28px); transition:opacity .8s cubic-bezier(.16,1,.3,1), transform .8s cubic-bezier(.16,1,.3,1); }
.reveal.vis, .reveal-l.vis, .reveal-r.vis { opacity:1; transform:translate(0); }
.delay-1 { transition-delay:.1s; }
.delay-2 { transition-delay:.4s; }
.delay-3 { transition-delay:.16s; }
.delay-4 { transition-delay:.32s; }

/* ═══════════════════════════════════════════════
   INDEX — HERO
═══════════════════════════════════════════════ */
.hero {
  position:relative; min-height:100vh;
  height:auto;
  display:flex; align-items:center; overflow:hidden;
}
.hero-bg {
  position:absolute; inset:0;
  background:radial-gradient(ellipse at 68% 40%,rgba(140,29,24,.28) 0%,transparent 55%),
             radial-gradient(ellipse at 30% 85%,rgba(184,115,51,.18) 0%,transparent 50%),
             linear-gradient(135deg,#0B0B0B 0%,#190d04 50%,#0B0B0B 100%);
}
.hero-img-wrap {
  position:absolute; right:0; top:0; width:52%; height:100%; overflow:hidden;
}
.hero-img-wrap img {
  width:100%; height:110%; object-fit:cover; opacity:1;
  transform:translateY(-5%); transition:transform 20s ease;
}
.hero-img-wrap::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to right,#0B0B0B 0%,rgba(11,11,11,.2) 55%,rgba(11,11,11,.75) 100%);
}
.hero-line-l { position:absolute; left:60px; top:0; bottom:0; width:1px; background:linear-gradient(to bottom,transparent,rgba(199,154,59,.25),transparent); }
.hero-line-r { position:absolute; right:60px; top:0; bottom:0; width:1px; background:linear-gradient(to bottom,transparent,rgba(199,154,59,.14),transparent); }
.hero-content {
  position:relative; padding:0 80px;
  max-width:62%; animation:fadeUp 1.2s ease forwards;
}
.hero-eyebrow {
  display:flex; align-items:center; gap:16px; margin-bottom:36px;
}
.hero-eyebrow .line { width:44px; height:1px; background:var(--gld); }
.hero-eyebrow span { font-size:10px; letter-spacing:4px; color:var(--gld); text-transform:uppercase; }
.hero-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(52px,7.5vw,100px);
  font-weight:300; line-height:1.02; letter-spacing:-1px;
}
.hero-title-accent {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(52px,7.5vw,100px);
  font-weight:600; line-height:1.02; color:var(--gld);
  font-style:italic; letter-spacing:-1px; margin-bottom:36px;
  display:block;
}
.hero-sub {
  font-size:16px; line-height:1.85;
  color:rgba(247,245,242,.58); max-width:460px;
  margin-bottom:52px; font-weight:300;
}
.hero-actions { display:flex; gap:20px; flex-wrap:wrap; }
.hero-scroll {
  position:absolute; bottom:44px; left:50%;
  display:flex; flex-direction:column; align-items:center; gap:8px;
  animation:float 3s ease-in-out infinite;
}
.hero-scroll span { font-size:9px; letter-spacing:3px; color:rgba(247,245,242,.35); text-transform:uppercase; }
.hero-scroll-line { width:1px; height:44px; background:linear-gradient(to bottom,rgba(199,154,59,.55),transparent); }

/* ═══════════════════════════════════════════════
   INDEX — DISHES SECTION
═══════════════════════════════════════════════ */
.dishes-section { padding:128px 80px; }
.dishes-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.dish-card {
  background:var(--card); border:1px solid var(--bdr); overflow:hidden;
  transition:border-color .5s, box-shadow .5s, transform .5s cubic-bezier(.16,1,.3,1);
  cursor:pointer;
}
.dish-card:hover {
  border-color:var(--gld); transform:translateY(-8px);
  box-shadow:0 32px 64px rgba(0,0,0,.55), 0 0 28px rgba(199,154,59,.1);
}
.dish-card-img { position:relative; overflow:hidden; }
.dish-card-img img {
  width:100%; height:600px; object-fit:cover;
  transition:transform .8s cubic-bezier(.16,1,.3,1);
}
.dish-card:hover .dish-card-img img { transform:scale(1.08); }
.dish-card-tags { position:absolute; top:16px; left:16px; right:16px; display:flex; justify-content:space-between; }
.dish-info { padding:24px 24px 28px; }
.dish-name-row { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:8px; }
.dish-name {
  font-family:'Cormorant Garamond',serif;
  font-size:22px; font-weight:500; line-height:1.2;
}
.dish-price {
  font-family:'Cormorant Garamond',serif;
  font-size:22px; color:var(--gld); font-weight:600;
  flex-shrink:0; margin-left:12px;
}
.dish-desc { font-size:13px; color:rgba(247,245,242,.48); line-height:1.75; margin-bottom:14px; }
.dish-meta { display:flex; align-items:center; gap:12px; }
.values-dots{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;

  margin-top:20px;
}

.value-dot{
  width:8px;
  height:8px;

  border-radius:50%;

  background:rgba(199,154,59,.25);

  transition:all .3s ease;
}

.value-d.active{
  width:24px;
  border-radius:999px;
  background:var(--gld);
}
@media (min-width:769px){
  .values-dots{
      display:none;
  }
}

.values-d{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;

  margin-top:20px;
}

.value-d{
  width:8px;
  height:8px;

  border-radius:50%;

  background:rgba(199,154,59,.25);

  transition:all .3s ease;
}

.value-d.active{
  width:24px;
  border-radius:999px;
  background:var(--gld);
}
@media (min-width:769px){
  .values-d{
      display:none;
  }
}
/* ═══════════════════════════════════════════════
   INDEX — STORY STRIP
═══════════════════════════════════════════════ */
.story-strip {
  display:grid; grid-template-columns:1fr 1fr;
  position:relative; overflow:hidden;
}
.story-img { position:relative; height:600px; overflow:hidden; }
.story-img img { width:100%; height:100%; object-fit:cover; }
.story-img::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to right,rgba(11,11,11,.15),rgba(11,11,11,.5));
}
.story-stats {
  position:absolute; bottom:48px; left:48px;
  display:grid; grid-template-columns:1fr 1fr; gap:20px; z-index:2;
}
.stat-box {
  background:rgba(11,11,11,.84); backdrop-filter:blur(12px);
  border:1px solid rgba(199,154,59,.28); padding:20px 22px;
}
.stat-num {
  font-family:'Cormorant Garamond',serif;
  font-size:34px; font-weight:600; color:var(--gld); line-height:1;
}
.stat-label { font-size:10px; color:rgba(247,245,242,.45); letter-spacing:1.5px; text-transform:uppercase; margin-top:6px; }
.story-text {
  padding:88px 80px 88px 68px;
  display:flex; flex-direction:column; justify-content:center;
  background:radial-gradient(ellipse at 80% 50%,rgba(199,154,59,.05) 0%,transparent 60%);
}
.story-quote {
  border-left:2px solid var(--gld);
  padding-left:20px; margin-top:40px;
  font-family:'Cormorant Garamond',serif;
  font-size:19px; font-style:italic;
  color:rgba(247,245,242,.7); line-height:1.6;
}

/* ═══════════════════════════════════════════════
   INDEX — LOCATIONS STRIP
═══════════════════════════════════════════════ */
.locations-section { padding:80px 80px; background:#0a0a0a; }
.locations-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
}
.location-card {
  background:var(--card); border:1px solid var(--bdr);
  padding:40px 36px; display:block;
  transition:border-color .4s, box-shadow .4s, transform .4s;
}
.location-card:hover {
  border-color:var(--gld); transform:translateY(-6px);
  box-shadow:0 24px 56px rgba(0,0,0,.5);
}
.location-card .loc-label {
  font-size:11px; letter-spacing:3px; color:var(--gld);
  text-transform:uppercase; margin-bottom:12px;
}
.location-card .loc-label.muted { color:rgba(247,245,242,.4); }
.location-card h3 {
  font-family:'Cormorant Garamond',serif;
  font-size:28px; font-weight:500; margin-bottom:8px;
}
.location-card p {
  font-size:13px; color:rgba(247,245,242,.4);
  line-height:1.7; margin-bottom:20px;
}
.location-card .loc-link {
  font-size:11px; color:var(--gld);
  letter-spacing:1.5px; text-transform:uppercase;
}
.story-text .btn-gold { margin-bottom:36px; flex-shrink:0; align-self:flex-start; }

/* ═══════════════════════════════════════════════
   INNER PAGE HERO
═══════════════════════════════════════════════ */
.page-hero {
  padding-top:var(--nav-h);
  min-height:400px; display:flex; align-items:flex-end;
  position:relative; overflow:hidden;
}
.page-hero-bg { position:absolute; inset:0; }
.page-hero-bg img { width:100%; height:100%; object-fit:cover; opacity:.48; }
.page-hero-bg::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to top,#0B0B0B 0%,rgba(11,11,11,.45) 100%);
}
.page-hero-content { position:relative; z-index:1; padding:60px 80px; width:100%; }
.breadcrumb {
  display:flex; align-items:center; gap:18px;
  font-size:11px; color:rgba(255, 187, 0, 0.664);
  letter-spacing:1px; text-transform:uppercase; margin-bottom:16px;
}
.breadcrumb a { color:var(--gld); }
.breadcrumb .sep { color:rgba(247,245,242,.2); }
.page-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(44px,6vw,80px);
  font-weight:400; line-height:1.1;
}
.page-title em { color:var(--gld); font-style:italic; }
.page-subtitle {
  font-size:16px; font-weight:300;
  color:rgba(247,245,242,.55); line-height:1.7;
  max-width:560px; margin-top:14px;
}

/* ═══════════════════════════════════════════════
   MENU PAGE
═══════════════════════════════════════════════ */
.menu-section { padding:80px 80px 100px; }
.menu-cta,
.cta-buttons {
  display:flex; justify-content:center; align-items:center;
  gap:24px; flex-wrap:wrap; margin-top:56px; text-align:center;
}
.menu-cta .btn-fill,
.menu-cta .btn-gold,
.cta-buttons .btn-fill,
.cta-buttons .btn-gold {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:48px; padding:14px 36px; font-weight:600;
  line-height:1; box-sizing:border-box;
}
.menu-tabs {
  display:flex; gap:32px; border-bottom:1px solid rgba(247,245,242,.1);
  margin-bottom:48px; overflow-x:auto;
}
.menu-tabs::-webkit-scrollbar { display:none; }
.menu-tab-btn {
  background:transparent; border:none;
  color:rgba(247,245,242,.35); font-size:12px; font-weight:500;
  letter-spacing:2px; text-transform:uppercase; padding:14px 0;
  cursor:pointer; border-bottom:1.5px solid transparent;
  transition:all .3s ease; white-space:nowrap; flex-shrink:0;
}
.menu-tab-btn.act, .menu-tab-btn:hover { color:var(--gld); border-bottom-color:var(--gld); }
.menu-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:1px; background:rgba(199,154,59,.08);
}
.menu-item {
  background:var(--blk); padding:28px 32px;
  display:flex; justify-content:space-between; align-items:flex-start;
  transition:background .3s ease; cursor:pointer;
}
.menu-item:hover { background:#141414; }
.menu-item-left { flex:1; }
.menu-item-header { display:flex; align-items:center; gap:10px; margin-bottom:8px; }
.menu-item-name { font-family:'Cormorant Garamond',serif; font-size:21px; font-weight:500; }
.menu-item-desc { font-size:13px; color:rgba(247,245,242,.4); line-height:1.65; padding-left:22px; }
.menu-item-meta { padding-left:22px; margin-top:10px; }
.menu-item-price {
  font-family:'Cormorant Garamond',serif;
  font-size:22px; color:var(--gld); font-weight:500;
  margin-left:28px; flex-shrink:0;
}
.menu-tab-content { display:none; }
.menu-tab-content.active { display:block; animation:fadeIn .4s ease; }
.menu-note {
  margin-top:40px; padding:24px 32px;
  border:1px solid rgba(199,154,59,.18);
  background:rgba(199,154,59,.04);
  font-size:13px; color:rgba(247,245,242,.5); line-height:1.8;
}
.menu-note strong { color:var(--gld); }

/* ═══════════════════════════════════════════════
   STORY PAGE
═══════════════════════════════════════════════ */
.story-section { padding:80px 80px 100px; }
.story-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; margin-bottom:80px; }
.story-intro-img { position:relative; height:500px; overflow:hidden; }
.story-intro-img img { width:100%; height:100%; object-fit:cover; }
.story-intro-img::before {
  content:''; position:absolute; top:16px; left:16px; right:-16px; bottom:-16px;
  border:1px solid rgba(199,154,59,.3); z-index:-1;
}
.story-intro-text p { font-size:15px; line-height:1.9; color:rgba(247,245,242,.6); font-weight:300; margin-bottom:24px; }
.values-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(199,154,59,.1); margin:80px 0; }
.value-card { background:var(--blk); padding:48px 36px; transition:background .3s; }
.value-card:hover { background:#111111; }
.value-icon {
  width:52px; height:52px; border:1px solid rgba(199,154,59,.3);
  display:flex; align-items:center; justify-content:center;
  font-size:22px; margin-bottom:24px;
}
.value-title { font-family:'Cormorant Garamond',serif; font-size:24px; font-weight:500; margin-bottom:12px; }
.value-desc { font-size:13px; color:rgba(247,245,242,.45); line-height:1.8; }
.timeline { padding:80px 0; }
.timeline-item { display:grid; grid-template-columns:1fr 80px 1fr; gap:0; align-items:center; margin-bottom:0; }
.timeline-item-left { text-align:right; padding:40px 40px 40px 0; }
.timeline-item-right { padding:40px 0 40px 40px; }
.timeline-center { display:flex; flex-direction:column; align-items:center; }
.timeline-dot { width:14px; height:14px; background:var(--gld); border:3px solid var(--blk); box-shadow:0 0 0 1px var(--gld); border-radius:50%; flex-shrink:0; }
.timeline-line { flex:1; width:1px; background:rgba(199,154,59,.25); min-height:60px; }
.timeline-year { font-family:'Cormorant Garamond',serif; font-size:28px; color:var(--gld); font-weight:500; margin-bottom:8px; }
.timeline-text { font-size:14px; color:rgba(247,245,242,.5); line-height:1.75; }

/* ═══════════════════════════════════════════════
   EXPERIENCE / GALLERY PAGE
═══════════════════════════════════════════════ */
.gallery-section { padding:80px 80px 100px; }
.gallery-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-template-rows:repeat(3,260px);
  gap:10px;
}
.gal-item { overflow:hidden; position:relative; cursor:pointer; }
.gal-item img { width:100%; height:100%; object-fit:cover; transition:transform .8s cubic-bezier(.16,1,.3,1); }
.gal-item:hover img { transform:scale(1.08); }
.gal-overlay {
  position:absolute; inset:0;
  background:rgba(199,154,59,.12);
  opacity:0; transition:opacity .4s ease;
  display:flex; align-items:center; justify-content:center;
}
.gal-item:hover .gal-overlay { opacity:1; }
.gal-plus {
  width:44px; height:44px; border:1.5px solid rgba(247,245,242,.85);
  background:rgba(0,0,0,.35); display:flex; align-items:center;
  justify-content:center; font-size:22px; color:var(--ofw);
}
.gal-item.wide  { grid-column:span 2; }
.gal-item.tall  { grid-row:span 2; }

/* Lightbox */
#lightbox {
  display:none; position:fixed; inset:0; z-index:2000;
  background:rgba(0,0,0,.94); align-items:center; justify-content:center;
  padding:40px;
}
#lightbox.open { display:flex; animation:fadeIn .3s ease; }
#lightbox img { max-width:90vw; max-height:85vh; object-fit:contain; }
#lightbox-close {
  position:fixed; top:20px; right:24px;
  background:none; border:none; color:var(--ofw);
  font-size:30px; cursor:pointer; opacity:.7; transition:opacity .3s;
}
#lightbox-close:hover { opacity:1; }

/* ═══════════════════════════════════════════════
   CATERING PAGE
═══════════════════════════════════════════════ */
.catering-section { padding:80px 80px 100px; }
.catering-intro {
  display:grid; grid-template-columns:1fr 1fr; gap:80px;
  align-items:center; margin-bottom:80px;
}
.catering-intro-img { position:relative; height:480px; overflow:hidden; }
.catering-intro-img img { width:100%; height:100%; object-fit:cover; }
.catering-intro-img::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to bottom,transparent,rgba(11,11,11,.4));
}
.catering-services-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-bottom:80px; }
.catering-card {
  background:var(--card); border:1px solid var(--bdr);
  padding:44px 40px; position:relative; overflow:hidden;
  transition:border-color .4s, box-shadow .4s, transform .4s;
  cursor:pointer;
}
.catering-card:hover {
  border-color:var(--gld);
  box-shadow:0 24px 56px rgba(0,0,0,.4), 0 0 24px rgba(199,154,59,.08);
  transform:translateY(-4px);
}
.catering-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(to right,transparent,var(--gld),transparent);
  opacity:0; transition:opacity .4s;
}
.catering-card:hover::before { opacity:1; }
.catering-card-icon {
  width:56px; height:56px; border:1px solid rgba(199,154,59,.3);
  display:flex; align-items:center; justify-content:center;
  font-size:24px; margin-bottom:24px;
}
.catering-card-title { font-family:'Cormorant Garamond',serif; font-size:26px; font-weight:500; margin-bottom:12px; }
.catering-card-desc { font-size:14px; color:rgba(247,245,242,.5); line-height:1.8; margin-bottom:20px; }
.catering-card-tags { display:flex; flex-wrap:wrap; gap:8px; }
.catering-tag {
  padding:4px 14px; border:1px solid rgba(199,154,59,.25);
  font-size:11px; letter-spacing:1px; text-transform:uppercase;
  color:rgba(247,245,242,.5);
}
.process-section { padding:80px 0; border-top:1px solid rgba(199,154,59,.12); border-bottom:1px solid rgba(199,154,59,.12); margin-bottom:80px; }
.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; background:rgba(199,154,59,.06); }
.process-step { padding:52px 36px; border-right:1px solid rgba(199,154,59,.12); text-align:center; transition:background .3s; }
.process-step:last-child { border-right:none; }
.process-step:hover { background:rgba(199,154,59,.05); }
.process-num {
  font-family:'Cormorant Garamond',serif; font-size:56px; font-weight:300;
  color:rgba(199,154,59,.2); line-height:1; margin-bottom:16px;
}
.process-title { font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:500; margin-bottom:10px; }
.process-desc { font-size:13px; color:rgba(247,245,242,.45); line-height:1.75; }
.packages-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-bottom:80px; }
.pkg-card {
  background:var(--card2); border:1px solid var(--bdr); padding:44px 36px;
  position:relative; transition:border-color .4s;
}
.pkg-card.featured { border-color:var(--gld); background:rgba(199,154,59,.04); }
.pkg-featured-badge {
  position:absolute; top:-1px; left:50%; transform:translateX(-50%);
  background:var(--gld); color:var(--blk); font-size:9px;
  letter-spacing:2px; text-transform:uppercase; font-weight:700;
  padding:5px 20px; white-space:nowrap;
}
.pkg-name { font-family:'Cormorant Garamond',serif; font-size:26px; font-weight:500; margin-bottom:6px; }
.pkg-guests { font-size:11px; letter-spacing:2px; color:rgba(247,245,242,.4); text-transform:uppercase; margin-bottom:24px; }
.pkg-price-row { display:flex; align-items:baseline; gap:4px; margin-bottom:28px; }
.pkg-price {
  font-family:'Cormorant Garamond',serif;
  font-size:40px; font-weight:600; color:var(--gld);
}
.pkg-per { font-size:13px; color:rgba(247,245,242,.4); }
.pkg-features { display:flex; flex-direction:column; gap:10px; margin-bottom:32px; }
.pkg-feature { display:flex; align-items:center; gap:10px; font-size:13px; color:rgba(247,245,242,.55); }
.pkg-feature::before { content:'✓'; color:var(--gld); font-size:12px; flex-shrink:0; }
.catering-cta {
  background:radial-gradient(ellipse at 50% 50%,rgba(199,154,59,.07) 0%,transparent 70%);
  border:1px solid rgba(199,154,59,.18);
  padding:72px 80px; text-align:center;
}

/* ═══════════════════════════════════════════════
   TESTIMONIALS PAGE
═══════════════════════════════════════════════ */
.reviews-section { padding:80px 80px 100px; }
.reviews-featured { max-width:760px; margin:0 auto 72px; text-align:center; }
.reviews-quote-icon {
  font-family:'Cormorant Garamond',serif;
  font-size:80px; color:rgba(199,154,59,.25); line-height:.9; margin-bottom:24px;
}
.reviews-featured-text {
  font-family:'Cormorant Garamond',serif;
  font-size:24px; font-weight:300; line-height:1.75;
  color:rgba(247,245,242,.85); font-style:italic; min-height:120px;
}
.reviews-author { margin-top:32px; display:flex; flex-direction:column; align-items:center; gap:8px; }
.reviews-author img { width:52px; height:52px; border-radius:50%; object-fit:cover; border:1.5px solid rgba(199,154,59,.4); margin-top:8px; }
.reviews-author-name { font-family:'Cormorant Garamond',serif; font-size:19px; font-weight:500; }
.reviews-author-role { font-size:11px; color:rgba(247,245,242,.38); letter-spacing:1.5px; }
.stars { display:flex; gap:4px; }
.star { color:var(--gld); font-size:14px; }
.reviews-dots { display:flex; justify-content:center; gap:10px; margin-top:32px; }
.rev-dot { border:none; cursor:pointer; height:2.5px; transition:all .4s ease; }
.rev-dot.act { width:32px; background:var(--gld); }
.rev-dot:not(.act) { width:8px; background:rgba(199,154,59,.28); }
.reviews-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.review-card {
  background:rgba(247,245,242,.03); border:1px solid var(--bdr);
  padding:40px; backdrop-filter:blur(10px);
  transition:border-color .4s, background .4s;
}
.review-card:hover { border-color:rgba(199,154,59,.38); background:rgba(247,245,242,.05); }
.review-card-header { display:flex; align-items:center; gap:16px; margin-bottom:20px; }
.reviewer-img { width:48px; height:48px; border-radius:50%; object-fit:cover; border:1px solid rgba(199,154,59,.3); flex-shrink:0; }
.reviewer-name { font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:500; }
.reviewer-role { font-size:11px; color:rgba(247,245,242,.38); letter-spacing:1px; margin-top:2px; }
.review-text { font-size:14px; color:rgba(247,245,242,.55); line-height:1.85; font-style:italic; }
.review-card-footer { margin-top:20px; display:flex; justify-content:space-between; align-items:center; }
.review-platform { font-size:11px; letter-spacing:1.5px; text-transform:uppercase; color:rgba(247,245,242,.28); }

/* ═══════════════════════════════════════════════
   RESERVATION PAGE
═══════════════════════════════════════════════ */
.reserve-section { padding:80px 80px 100px; }
.reserve-grid { display:grid; grid-template-columns:1fr 1fr; gap:88px; }
.reserve-info h2 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(34px,4vw,52px); font-weight:400; line-height:1.25; margin-bottom:28px;
}
.reserve-info-p { font-size:15px; color:rgba(247,245,242,.52); line-height:1.92; margin-bottom:44px; font-weight:300; }
.info-list { display:flex; flex-direction:column; gap:22px; }
.info-item { display:flex; gap:16px; align-items:flex-start; }
.info-icon {
  width:44px; height:44px; border:1px solid rgba(199,154,59,.28);
  display:flex; align-items:center; justify-content:center;
  font-size:18px; flex-shrink:0;
}
.info-label { font-size:10px; letter-spacing:2px; color:var(--gld); text-transform:uppercase; margin-bottom:5px; }
.info-val { font-size:13px; color:rgba(247,245,242,.55); line-height:1.7; white-space:pre-line; }
.reserve-note {
  margin-top:16px; font-size:11px;
  color:rgba(247,245,242,.28); text-align:center; line-height:1.7;
}

/* ═══════════════════════════════════════════════
   BRANCHES PAGE
═══════════════════════════════════════════════ */
.branches-section { padding:80px 80px 100px; }
.main-branch {
  display:grid; grid-template-columns:1.2fr 1fr; gap:0; margin-bottom:60px;
  border:1px solid var(--bdr); overflow:hidden;
}
.main-branch-img { position:relative; height:500px; overflow:hidden; }
.main-branch-img img { width:100%; height:100%; object-fit:cover; transition:transform 12s ease; }
.main-branch-img:hover img { transform:scale(1.05); }
.main-branch-img::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to right,transparent,rgba(11,11,11,.3));
}
.main-branch-info {
  background:var(--card); padding:56px 52px;
  display:flex; flex-direction:column; justify-content:center;
}
.branch-badge {
  display:inline-block; padding:5px 16px; margin-bottom:20px;
  font-size:9px; letter-spacing:3px; text-transform:uppercase;
  font-weight:700;
}
.badge-main { background:var(--gld); color:var(--blk); }
.badge-branch { background:rgba(199,154,59,.15); border:1px solid rgba(199,154,59,.35); color:var(--gld); }
.branch-name { font-family:'Cormorant Garamond',serif; font-size:clamp(28px,3vw,42px); font-weight:400; margin-bottom:8px; }
.branch-city { font-size:13px; letter-spacing:2px; color:rgba(247,245,242,.4); text-transform:uppercase; margin-bottom:28px; }
.branch-details { display:flex; flex-direction:column; gap:18px; margin-bottom:32px; }
.branch-detail { display:flex; gap:14px; align-items:flex-start; }
.branch-detail-icon { font-size:16px; margin-top:2px; flex-shrink:0; opacity:.7; }
.branch-detail-label { font-size:10px; letter-spacing:1.5px; color:var(--gld); text-transform:uppercase; margin-bottom:4px; }
.branch-detail-val { font-size:13px; color:rgba(247,245,242,.55); line-height:1.6; white-space:pre-line; }
.branch-features { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:28px; }
.branch-feature-tag {
  padding:5px 14px; border:1px solid rgba(199,154,59,.2);
  font-size:11px; color:rgba(247,245,242,.45); letter-spacing:.5px;
}
.sub-branches { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.sub-branch {
  background:var(--card); border:1px solid var(--bdr);
  overflow:hidden; transition:border-color .4s, box-shadow .4s;
}
.sub-branch:hover { border-color:rgba(199,154,59,.4); box-shadow:0 20px 50px rgba(0,0,0,.35); }
.sub-branch-img { position:relative; height:220px; overflow:hidden; }
.sub-branch-img img { width:100%; height:100%; object-fit:cover; transition:transform .8s; }
.sub-branch:hover .sub-branch-img img { transform:scale(1.06); }
.sub-branch-img::after { content:''; position:absolute; inset:0; background:rgba(11,11,11,.3); }
.sub-branch-info { padding:36px 36px 40px; }
.branches-map-note {
  margin-top:56px; padding:32px; border:1px solid rgba(199,154,59,.15);
  background:rgba(199,154,59,.03); display:flex; align-items:center; gap:24px;
}
.branches-map-note span { font-size:32px; }
.branches-map-note p { font-size:14px; color:rgba(247,245,242,.5); line-height:1.8; }
.branches-map-note strong { color:var(--gld); }

/* ═══════════════════════════════════════════════
   RESPONSIVE
═══════════════════════════════════════════════ */
@media (max-width:1024px) {
  .dishes-grid { grid-template-columns:repeat(2,1fr); }
  .packages-grid { grid-template-columns:1fr 1fr; }
  .nav-links { display: none; }
  .hamburger { display: flex; }
}
@media (max-width:1024px) {
  .nav-links, .nav-cta.desktop { display:none; }
  .hamburger { display:flex; }
  .hero-content { max-width:90%; padding:0 40px; }
  .story-strip, .story-intro-grid, .catering-intro, .reserve-grid, .main-branch { grid-template-columns:1fr; }
  .story-img { height:400px; }
  .story-text { padding:56px 40px; }
  .locations-section { padding:64px 40px; }
  .locations-grid { grid-template-columns:1fr; }
  .main-branch-img { height:300px; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:36px; }
  .gallery-grid { grid-template-columns:repeat(2,1fr); grid-template-rows:auto; }
  .gal-item.wide { grid-column:span 1; }
  .catering-services-grid { grid-template-columns:1fr; }
  .process-grid { grid-template-columns:1fr 1fr; }
  .process-step { border-bottom:1px solid rgba(199,154,59,.12); }
  .timeline-item { grid-template-columns:1fr; }
  .timeline-item-left { text-align:left; padding:20px 0 0; }
  .timeline-center { display:none; }
  .values-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
  :root { --nav-h:68px; }
  #navbar { padding:0 20px; }
  .hero-content { padding:0 24px; max-width:100%; }
  .hero-line-l, .hero-line-r { display:none; }
  .dishes-section, .story-section, .menu-section, .gallery-section,
  .catering-section, .reviews-section, .reserve-section, .branches-section,
  .locations-section { padding:60px 24px 80px; }
  .story-text { padding:48px 24px; }
  .story-quote { margin-top:24px; font-size:17px; }
  .dishes-grid, .reviews-grid, .sub-branches, .packages-grid,
  .catering-services-grid, .values-grid { grid-template-columns:1fr; }
  .page-hero-content { padding:48px 24px; }
  .footer { padding:48px 24px 28px; }
  .footer-grid { grid-template-columns:1fr; gap:28px; }
  .catering-cta { padding:48px 24px; }
  .process-grid { grid-template-columns:1fr; }
  .sub-branches { grid-template-columns:1fr; }
  .menu-grid { grid-template-columns:1fr; }
  .story-stats { grid-template-columns:1fr 1fr; bottom:24px; left:24px; }
  .form-row { grid-template-columns:1fr; }
  .hero-actions { flex-direction:column; align-items:flex-start; }
}



/* ═══════════════════════════════════════════════
   SCROLL TO TOP BUTTON
═══════════════════════════════════════════════ */
#scroll-top-btn {
  position: fixed;
  bottom: 40px;
  right: 40px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  
  /* Semi-transparent dark background with clear glass-blur overlay */
  background: rgba(11, 11, 11, 0.6);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  
  /* Minimalist thin border matching your theme */
  border: 1px solid var(--gld);
  color: var(--gld);
  
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  z-index: 999;
  
  /* Invisible by default at the top of the page */
  opacity: 0;
  visibility: hidden;
  transform: translateY(15px);
  transition: opacity 0.4s ease, transform 0.4s ease, visibility 0.4s, background 0.3s, color 0.3s;
}

#scroll-top-btn svg {
  width: 18px;
  height: 18px;
  transition: transform 0.3s ease;
}

/* State changes triggered via JavaScript scroll window position */
#scroll-top-btn.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Premium inversion on hover */
#scroll-top-btn:hover {
  background: var(--gld);
  color: var(--blk);
}

#scroll-top-btn:hover svg {
  transform: translateY(-2px); /* Interactive nudge animation */
}

/* Mobile viewport layout padding adjustments */
@media (max-width: 768px) {
  #scroll-top-btn {
    bottom: 24px;
    right: 24px;
    width: 42px;
    height: 42px;
  }
  #scroll-top-btn svg {
    width: 16px;
    height: 16px;
  }
}
.logo-img{
  height:60px;
  width:auto;
  max-width:220px;
  object-fit:contain;
  display:block;
}

@media (max-width:768px){
  .logo-img{
    height:48px;
    max-width:180px;
  }
}

.nav-logo-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
}

/* =====================================
   MOBILE OPTIMIZATION
===================================== */
@media (max-width:768px){

  /* Navbar */
  #navbar{
    padding:0 16px;
    height:70px;
  }

  .nav-links,
  .nav-cta.desktop{
    display:none;
  }

  .hamburger{
    display:flex;
  }

  .logo-img{
    height:52px;
    max-width:180px;
  }

  /* Common section padding */
  .hero-content,
  .story-text,
  .dishes-section,
  .locations-section,
  .footer{
    padding-left:20px;
    padding-right:20px;
  }

  /* Hero */
  .hero{
    min-height:auto;
    padding-top:70px;
  }

  .hero-img-wrap{
    width:50%;
    opacity:.35;
  }

  .hero-content{
    max-width:100%;
    padding:40px 20px;
    text-align:left;
  }

  .hero-title,
  .hero-title-accent{
    font-size:48px;
  }

  .hero-sub{
    font-size:14px;
    line-height:1.7;
    margin:24px auto;
  }

  .hero-actions{
    justify-content:center;
  }

  .hero-scroll{
    display:none;
  }

  /* Dishes Horizontal Scroll */
  .dishes-grid{
    display:flex;
    overflow-x:auto;
    gap:16px;

    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    padding-top:12px;
    scrollbar-width:none;
    padding-bottom:12px;
  }

  .dishes-grid::-webkit-scrollbar{
    display:none;
  }

  .dish-card{
    flex:0 0 280px;
    min-width:280px;
    scroll-snap-align:start;
  }

  .dish-card-img img{
    height:280px;
    object-fit:cover;
  }

  .dish-info{
    padding:20px;
  }

  /* Story */
  .story-strip{
    grid-template-columns:1fr;
  }

  .story-img{
    height:400px;
  }

  .story-text{
    padding:40px 20px;
  }

  .story-stats{
    left:12px;
    right:12px;
    bottom:12px;
    gap:10px;
  }

  .stat-box{
    padding:12px;
  }

  .stat-num{
    font-size:22px;
  }

  /* Locations */
  .locations-grid{
    grid-template-columns:1fr;
  }

  .location-card{
    padding:24px;
  }

  /* Footer */
  .footer{
    padding:50px 20px 30px;
  }

  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:24px;
  }

  .footer-brand{
    grid-column:1 / -1;
  }

  .footer-bottom{
    flex-direction:column;
    text-align:center;
    gap:10px;
  }

  /* Buttons */
  .btn-fill,
  .btn-gold{
    min-height:48px;
    padding:14px 24px;
  }

  /* Scroll To Top */
  #scroll-top-btn{
    right:16px;
    bottom:16px;
    width:40px;
    height:40px;
  }

  #scroll-top-btn svg{
    width:16px;
    height:16px;
  }


/* =====================================
   LOCATIONS SECTION
===================================== */

.z .sec-title,
.locations-section .sec-title{
  text-align:center;
}

.locations-grid{
  display:flex;
  overflow-x:auto;
  gap:16px;

  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  
  padding:20px 20px;
  scrollbar-width:none;
}

.locations-grid::-webkit-scrollbar{
  display:none;
}

.location-card{
  flex:0 0 calc(100% - 40px);
  min-width:calc(100% - 40px);

  scroll-snap-align:center;
}

/* =====================================
   FOOTER
===================================== */

.footer{
  text-align:center;
}

.footer-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
  text-align:center;
}

.footer-brand{
  grid-column:1/-1;
  margin-bottom:20px;
}

.footer-brand-logo{
  justify-content:center;
}

.footer-brand p{
  max-width:100%;
  margin:auto;
}

.footer-socials{
  justify-content:center;
}

.footer-col ul{
  align-items:center;
}

.footer-col h4{
  margin-bottom:14px;
}

.footer-bottom{
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:12px;
}
}