:root{
  --bg:#080706;
  --bg2:#0e0b08;
  --card:#17120d;
  --card2:#20160d;
  --gold:#d6a85c;
  --gold2:#ffdf9a;
  --cream:#fff7e8;
  --text:#f7ead6;
  --muted:#bcae99;
  --line:rgba(214,168,92,.35);
  --shadow:0 20px 70px rgba(0,0,0,.45);
  --header-height:76px;
  --ease-luxe:cubic-bezier(.18,.82,.22,1);
  --ease-menu:cubic-bezier(.16,1,.28,1);
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:radial-gradient(circle at 30% -20%,rgba(214,168,92,.2),transparent 30%),var(--bg);
  color:var(--text);
  font-family:Arial,"Microsoft YaHei","Noto Sans SC",sans-serif;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity:.32;
  background:
    linear-gradient(115deg,transparent 0 36%,rgba(255,223,154,.08) 42%,transparent 49%),
    repeating-linear-gradient(90deg,rgba(255,223,154,.055) 0 1px,transparent 1px 130px);
  transform:translateX(-28%);
  animation:ambientGoldSweep 10s ease-in-out infinite;
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:42;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at 50% 0,rgba(255,223,154,.14),transparent 34%),
    rgba(0,0,0,.58);
  backdrop-filter:blur(0);
  transition:opacity .34s var(--ease-menu), backdrop-filter .34s var(--ease-menu);
}
body>*{
  position:relative;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
#home,#video-spot,#meal-plan,#order,#catering,#styling,#catering-menu,#faq,#referral{scroll-margin-top:96px}

.scroll-progress{
  position:fixed;
  top:0;
  left:0;
  z-index:120;
  width:100%;
  height:5px;
  background:linear-gradient(90deg,#ffdf9a,#d6a85c,#9b6527);
  box-shadow:0 0 26px rgba(255,223,154,.62);
  transform:scaleX(0);
  transform-origin:left center;
  pointer-events:none;
}

.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(5,5,4,.88);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(214,168,92,.18);
  transition:background .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.site-header::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:1px;
  opacity:.5;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,223,154,.76),transparent);
  transform:scaleX(.18);
  transition:transform .45s var(--ease-luxe), opacity .45s var(--ease-luxe);
}
body.is-scrolled .site-header{
  background:rgba(5,5,4,.94);
  border-color:rgba(214,168,92,.32);
  box-shadow:0 18px 45px rgba(0,0,0,.32);
}
body.is-scrolled .site-header::before,
body.nav-open .site-header::before{
  opacity:.9;
  transform:scaleX(.9);
}
.nav-shell{
  max-width:1180px;
  margin:auto;
  height:76px;
  padding:0 18px;
  display:flex;
  align-items:center;
  gap:22px;
  transition:height .28s ease;
}
body.is-scrolled .nav-shell{
  height:64px;
}
.brand-lockup{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
  transition:transform .28s var(--ease-luxe), filter .28s ease;
}
.brand-lockup:hover{
  transform:translateY(-1px);
  filter:drop-shadow(0 0 16px rgba(255,223,154,.2));
}
.brand-lockup img{
  width:54px;
  height:54px;
  object-fit:cover;
  border-radius:50%;
  border:1px solid var(--gold);
  box-shadow:0 0 25px rgba(214,168,92,.22);
  transition:width .28s ease, height .28s ease, box-shadow .28s ease;
}
body.is-scrolled .brand-lockup img{
  width:46px;
  height:46px;
}
.brand-lockup strong{
  display:block;
  font-size:21px;
  color:var(--gold2);
  letter-spacing:2px;
}
.brand-lockup small{
  display:block;
  color:var(--gold);
  font-size:11px;
  letter-spacing:3px;
}
.nav-links{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:22px;
  font-size:15px;
}
.nav-links>*{
  transition:transform .24s var(--ease-luxe), opacity .24s ease, color .22s ease, border-color .22s ease, background .22s ease;
}
.nav-links a{
  position:relative;
  color:#fff;
  opacity:.9;
  padding:26px 0;
  border-bottom:2px solid transparent;
  transition:color .22s ease, opacity .22s ease;
}
.nav-links a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:18px;
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--gold2);
  box-shadow:0 0 16px rgba(255,223,154,.68);
  opacity:0;
  transform:translateX(-50%) scale(.4);
  transition:.22s ease;
}
.nav-links a.active,.nav-links a:hover{color:var(--gold2);border-color:var(--gold)}
.nav-links a.active::after{
  opacity:1;
  transform:translateX(-50%) scale(1);
}
.member-nav{
  border:1px solid rgba(214,168,92,.55);
  color:var(--gold2);
  padding:10px 15px;
  border-radius:999px;
  background:rgba(214,168,92,.08);
  cursor:pointer;
  font-weight:900;
}
.member-nav:hover{
  background:rgba(214,168,92,.18);
  box-shadow:0 0 20px rgba(214,168,92,.12);
  transform:translateY(-1px);
}
.language-switch{
  display:flex;
  align-items:center;
  gap:4px;
  border:1px solid rgba(214,168,92,.45);
  border-radius:999px;
  padding:4px;
  background:rgba(0,0,0,.28);
}
.language-switch button{
  border:0;
  border-radius:999px;
  padding:8px 10px;
  color:var(--gold2);
  background:transparent;
  cursor:pointer;
  font-size:12px;
  font-weight:900;
  letter-spacing:.5px;
}
.language-switch button.active{
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
}
.nav-whatsapp{
  border:1px solid var(--gold);
  color:var(--gold2);
  padding:12px 18px;
  border-radius:999px;
  font-weight:800;
  background:rgba(0,0,0,.35);
  transition:transform .24s var(--ease-luxe), box-shadow .24s ease, background .24s ease;
}
.nav-whatsapp:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(214,168,92,.18);
  background:rgba(214,168,92,.1);
}
.menu-toggle{
  display:none;
  width:48px;
  height:48px;
  place-items:center;
  border:1px solid rgba(255,223,154,.36);
  border-radius:16px;
  color:var(--gold2);
  font-size:26px;
  line-height:1;
  background:linear-gradient(145deg,rgba(255,247,232,.08),rgba(255,247,232,.02));
  box-shadow:0 12px 32px rgba(0,0,0,.32);
  transition:transform .3s var(--ease-menu), border-color .3s ease, background .3s ease, box-shadow .3s ease;
}
.menu-toggle:hover{
  border-color:rgba(255,223,154,.7);
  background:rgba(214,168,92,.12);
}
body.nav-open .menu-toggle{
  transform:rotate(90deg);
  border-color:rgba(255,223,154,.76);
  box-shadow:0 0 0 1px rgba(255,223,154,.12),0 18px 42px rgba(0,0,0,.36);
}

.hero{
  position:relative;
  min-height:680px;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  opacity:.75;
  background:
    linear-gradient(110deg,transparent 0 30%,rgba(255,223,154,.2) 39%,transparent 48%),
    repeating-linear-gradient(90deg,rgba(255,223,154,.07) 0 1px,transparent 1px 160px);
  transform:translateX(-35%);
  mix-blend-mode:screen;
  animation:heroGoldSweep 6.5s ease-in-out infinite;
}
.hero::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:26px;
  z-index:2;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,223,154,.72),transparent);
  box-shadow:0 0 20px rgba(255,223,154,.4);
  transform:scaleX(.35);
  opacity:.72;
  animation:heroGoldLine 4.8s ease-in-out infinite;
}
.hero-media,.hero-overlay{position:absolute;inset:0}
.hero-media picture,
.hero-media img{width:100%;height:100%;display:block}
.hero-media img{
  object-fit:cover;
  object-position:center;
  transform:translate3d(0,var(--hero-lift,0),0) scale(1.04);
  transition:transform .2s linear;
  will-change:transform;
}
.hero-overlay{
  background:
    linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 28%,rgba(0,0,0,.35) 62%,rgba(0,0,0,.55) 100%),
    linear-gradient(0deg,rgba(8,7,6,1),transparent 24%);
}
.hero-inner{
  position:relative;
  z-index:2;
  max-width:1180px;
  margin:auto;
  width:100%;
  padding:95px 18px 110px;
}
.hero-copy{
  max-width:560px;
  animation:heroCopyIn .78s cubic-bezier(.2,.7,.2,1) both;
}
.mini-logo{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--gold);
  font-size:11px;
  letter-spacing:4px;
  margin-bottom:16px;
}
.mini-logo img{width:70px;height:70px;border-radius:50%;border:1px solid rgba(214,168,92,.7)}
.hero h1{
  margin:0;
  font-size:98px;
  line-height:.92;
  font-weight:900;
  letter-spacing:4px;
  color:var(--gold2);
  background:linear-gradient(90deg,#d6a85c 0%,#ffdf9a 32%,#fff7e8 48%,#d6a85c 70%,#8a551e 100%);
  background-size:220% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  text-shadow:0 0 25px rgba(214,168,92,.45), 0 4px 0 #5d3a12;
}
body.is-loaded .hero h1{
  color:transparent;
  animation:titleGoldFlow 5.4s ease-in-out infinite;
}
.hero-en{
  margin:12px 0;
  letter-spacing:16px;
  font-weight:900;
  font-size:26px;
  color:var(--gold);
  animation:softPulse 3.8s ease-in-out infinite;
}
.hero-tags{
  color:var(--gold2);
  font-size:25px;
  font-weight:800;
  letter-spacing:4px;
}
.hero-slogan{
  font-size:35px;
  margin:18px 0 10px;
  font-family:"KaiTi","STKaiti","Microsoft YaHei",serif;
  color:#fff;
}
.hero-sub{color:#e9d5b5;font-size:17px;line-height:1.75}
.hero-sub em{font-style:normal;color:#d8c1a0}
.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:26px}

.btn{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border-radius:999px;
  padding:14px 24px;
  border:1px solid var(--gold);
  cursor:pointer;
  transition:.25s ease;
  font-weight:900;
  overflow:hidden;
  isolation:isolate;
  transform:translateZ(0);
}
.btn::before{
  content:"";
  position:absolute;
  inset:-40% auto -40% -55%;
  width:42%;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);
  transform:skewX(-18deg);
  opacity:0;
  transition:opacity .2s ease;
}
.btn:hover::before{
  opacity:1;
  animation:buttonSheen 1.05s ease forwards;
}
.btn.press-glow,
button.press-glow{
  animation:luxePress .52s var(--ease-luxe);
}
.btn-gold{
  color:#1a1108;
  background:linear-gradient(135deg,#f7d37a,#d6a85c 55%,#9b6527);
  box-shadow:0 10px 26px rgba(214,168,92,.22);
}
.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.08)}
.btn-outline{color:var(--gold2);background:rgba(0,0,0,.25)}
.btn-outline:hover{background:rgba(214,168,92,.12)}
.btn-small{padding:10px 16px;background:linear-gradient(135deg,#f7d37a,#d6a85c);color:#17120d;font-size:13px}
.dynamic-case-btn{
  position:relative;
  overflow:hidden;
  box-shadow:0 12px 34px rgba(214,168,92,.18), inset 0 1px 0 rgba(255,255,255,.16);
}
.dynamic-case-btn::after{
  content:"";
  position:absolute;
  inset:-20% auto -20% -45%;
  width:36%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);
  transform:skewX(-18deg);
  animation:caseButtonSheen 3.8s ease-in-out infinite;
}
.btn-wide{width:100%;border-radius:16px}
.btn.big{font-size:22px;padding:18px 36px}

.section-frame{max-width:1180px;margin:auto;padding:0 18px}
.motion-ready [data-motion]{
  opacity:0;
  transform:translate3d(0,34px,0) scale(.975);
  transition:
    opacity .82s var(--ease-luxe),
    transform .82s var(--ease-luxe),
    filter .82s var(--ease-luxe),
    clip-path .82s var(--ease-luxe);
  transition-delay:var(--motion-delay,0ms);
  filter:blur(10px);
  clip-path:inset(12% 0 0 round 18px);
  will-change:opacity,transform,filter,clip-path;
}
.motion-ready [data-motion].is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:blur(0);
  clip-path:inset(0 0 0 round 0);
}
.motion-ready [data-motion="fade-scale"]{
  transform:perspective(900px) translate3d(0,42px,0) rotateX(7deg) scale(.95);
  transform-origin:center top;
}
.motion-ready [data-motion="fade-scale"].is-visible,
.motion-ready [data-motion="menu-card"].is-visible{
  transform:perspective(900px) translate3d(0,0,0) rotateX(0) scale(1);
}
.motion-ready [data-motion="menu-card"]{
  transform:perspective(900px) translate3d(0,38px,0) rotateX(5deg) scale(.965);
  transform-origin:center top;
}
.dynamic-surface{
  position:relative;
  overflow:hidden;
  transform:translateZ(0);
  transition:border-color .32s ease, box-shadow .32s ease, transform .32s var(--ease-luxe), filter .32s ease;
}
.dynamic-surface::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  opacity:0;
  pointer-events:none;
  background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%),rgba(255,223,154,.18),transparent 36%);
  transition:opacity .25s ease;
}
.dynamic-surface:hover::before{
  opacity:1;
}
.dynamic-surface:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 56px rgba(0,0,0,.42), 0 0 0 1px rgba(255,223,154,.12);
}
.dynamic-surface>*{
  position:relative;
  z-index:1;
}
.video-spot-section{
  padding:38px 0 18px;
  background:linear-gradient(180deg,#050403,#0b0806);
}
.video-spot{
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(260px,1fr);
  gap:22px;
  align-items:stretch;
}
.video-spot-copy,
.video-spot-media{
  position:relative;
  border:1px solid rgba(214,168,92,.35);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,247,232,.08),rgba(255,247,232,.02));
  box-shadow:0 22px 58px rgba(0,0,0,.36);
  overflow:hidden;
}
.video-spot-copy::after,
.video-spot-media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(115deg,transparent 18%,rgba(255,223,154,.16) 46%,transparent 68%);
  transform:translateX(-120%);
  transition:opacity .35s ease;
}
.video-spot-copy:hover::after,
.video-spot-media:hover::after{
  opacity:1;
  animation:caseSheen 1.65s var(--ease-luxe) forwards;
}
.video-spot-copy{
  padding:28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.video-spot-copy span{
  color:var(--gold);
  letter-spacing:3px;
  font-size:12px;
  font-weight:900;
}
.video-spot-copy h2{
  margin:10px 0;
  color:#fff;
  font-size:34px;
}
.video-spot-copy p{
  color:#dcc9a7;
  line-height:1.7;
  margin:0 0 18px;
}
.video-spot-media{
  position:relative;
  min-height:320px;
  background:
    radial-gradient(circle at 70% 20%,rgba(255,223,154,.2),transparent 28%),
    linear-gradient(145deg,#15100c,#050403);
}
.video-spot-media video,
.video-placeholder{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.video-spot-media video{
  object-fit:cover;
  background:#050403;
}
.video-placeholder{
  display:grid;
  place-items:center;
  text-align:center;
  padding:28px;
  color:#fff1d2;
  background:
    linear-gradient(145deg,rgba(8,7,6,.78),rgba(8,7,6,.92)),
    url("../assets/images/brand/hero-banquet.webp") center/cover;
}
.video-placeholder span{
  color:var(--gold);
  letter-spacing:3px;
  font-size:12px;
  font-weight:900;
}
.video-placeholder strong{
  display:block;
  margin:8px 0;
  font-size:26px;
}
.video-placeholder p{
  max-width:360px;
  margin:0;
  color:#d9c7aa;
  line-height:1.65;
}
.service-strip{
  background:#070605;
  border-top:1px solid rgba(214,168,92,.2);
  border-bottom:1px solid rgba(214,168,92,.2);
  padding:22px 0 38px;
}
.service-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.service-card{
  min-height:142px;
  padding:22px 20px;
  border:1px solid var(--line);
  border-radius:12px;
  background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  box-shadow:0 14px 48px rgba(0,0,0,.32);
}
.service-icon{font-size:34px;color:var(--gold2);line-height:1}
.service-card:hover .service-icon{
  animation:softPulse 1.1s ease both;
}
.service-card h3{margin:10px 0 2px;font-size:24px}
.service-en{color:var(--gold);font-weight:900;letter-spacing:1.8px;margin:0 0 8px;font-size:13px}
.service-card p:last-child{color:#d9c7aa;line-height:1.58;margin:0;font-size:14px}

.section{padding:48px 0}
.dark-section{background:linear-gradient(180deg,#070605,#0e0b08)}
.section-title{text-align:center;margin-bottom:30px}
.section-title span,.panel-title span,.feature-card span{
  color:var(--gold);
  letter-spacing:3px;
  font-size:12px;
  font-weight:900;
}
.section-title h2{
  margin:8px 0;
  font-size:44px;
  color:#fff;
}
.section-title p{color:var(--muted)}

.pricing-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:18px;
}
.price-card{
  position:relative;
  min-height:560px;
  display:flex;
  align-items:flex-end;
  background:linear-gradient(160deg,#120e0b,#090806);
  border:1px solid var(--gold);
  border-radius:16px;
  overflow:hidden;
  box-shadow:var(--shadow);
}
.price-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,.18) 28%,rgba(0,0,0,.78) 63%,rgba(0,0,0,.96) 100%),
    radial-gradient(circle at 18% 76%,rgba(214,168,92,.22),transparent 32%);
}
.price-card.featured{grid-column:auto}
.price-image{
  position:absolute;
  inset:0;
  z-index:0;
  height:100%;
  overflow:hidden;
}
.price-image picture,
.price-image img{width:100%;height:100%;display:block}
.price-image img{
  object-fit:cover;
  object-position:center;
  transform:scale(1.03);
  filter:saturate(1.05) contrast(1.03);
  transition:transform .8s var(--ease-luxe), filter .45s ease;
}
.price-card:hover .price-image img{
  transform:scale(1.09);
  filter:saturate(1.12) contrast(1.05) brightness(1.04);
}
.price-body{
  width:100%;
  min-height:560px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:260px 24px 26px;
  position:relative;
  z-index:2;
  background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.22) 42%,rgba(0,0,0,.62) 100%);
}
.price-card.dynamic-surface::before{
  z-index:2;
}
.price-card.dynamic-surface>*{
  z-index:auto;
}
.price-card.dynamic-surface .price-image{
  z-index:0;
}
.price-card.dynamic-surface .price-body{
  z-index:3;
}
.badge{
  width:42px;height:42px;display:grid;place-items:center;
  border-radius:50%;background:var(--gold2);color:#120e0b;
  font-weight:900;font-size:23px;
  position:static;
  margin-bottom:18px;
  box-shadow:0 8px 18px rgba(0,0,0,.35);
}
.price-body h3{font-size:26px;margin:0 0 12px}
.price{color:var(--gold);font-weight:900;font-size:26px}
.price span{font-size:57px;color:var(--gold2)}
.price small{font-size:18px;color:#d8c8aa}
.price.inquiry{font-size:20px;line-height:1.2}
.price.inquiry span{font-size:29px}
.muted{color:var(--gold2)}
.small{color:var(--muted);font-size:14px;line-height:1.6}

.referral-section{
  background:
    radial-gradient(circle at 18% 0,rgba(255,223,154,.16),transparent 34%),
    linear-gradient(180deg,#0e0b08,#070605);
  border-top:1px solid rgba(214,168,92,.18);
  border-bottom:1px solid rgba(214,168,92,.18);
}
.referral-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.referral-grid article{
  border:1px solid rgba(214,168,92,.38);
  border-radius:18px;
  padding:24px;
  background:linear-gradient(145deg,rgba(255,247,232,.08),rgba(255,247,232,.025));
  box-shadow:0 18px 54px rgba(0,0,0,.34);
}
.referral-grid span{
  display:inline-grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:50%;
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
  font-weight:900;
  margin-bottom:14px;
}
.referral-grid h3{
  margin:0 0 10px;
  color:var(--gold2);
  font-size:23px;
}
.referral-grid p{
  margin:0;
  color:#dec9a9;
  line-height:1.75;
}
.referral-note{
  margin-top:18px;
  border:1px solid rgba(214,168,92,.34);
  border-radius:16px;
  padding:15px 18px;
  background:rgba(0,0,0,.28);
  color:#dfc9a8;
  line-height:1.7;
}
.referral-note strong{color:var(--gold2)}
.referral-terms{
  margin:14px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.referral-terms li{
  border:1px solid rgba(214,168,92,.22);
  border-radius:12px;
  padding:12px 14px;
  color:#d8c5a6;
  background:rgba(255,247,232,.045);
  font-size:13px;
  line-height:1.6;
}

.content-grid-section{
  background:
    radial-gradient(circle at 14% 8%,rgba(255,223,154,.16),transparent 28%),
    radial-gradient(circle at 86% 28%,rgba(214,168,92,.1),transparent 34%),
    linear-gradient(180deg,#070605,#0e0b08 48%,#070605);
}
.three-col{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);
  align-items:start;
  gap:16px;
  max-width:1120px;
}
.menu-side{
  display:grid;
  gap:16px;
  align-content:start;
}
.panel{
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(214,168,92,.28);
  box-shadow:0 18px 58px rgba(0,0,0,.34);
}
.light-panel{
  background:
    linear-gradient(145deg,rgba(255,247,232,.09),rgba(255,247,232,.025)),
    #120d08;
  color:var(--cream);
  padding:22px;
}
.order-panel{
  position:sticky;
  top:96px;
  isolation:isolate;
  background:
    radial-gradient(circle at 12% -4%,rgba(255,223,154,.18),transparent 34%),
    radial-gradient(circle at 100% 16%,rgba(214,168,92,.12),transparent 34%),
    linear-gradient(180deg,#15100b,#090806 72%,#050403);
  padding:22px;
  color:#fff;
  border-color:rgba(255,223,154,.46);
  box-shadow:0 24px 72px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,223,154,.14);
}
.order-panel::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:17px;
  background:linear-gradient(135deg,rgba(255,247,232,.075),transparent 34%,rgba(214,168,92,.045));
  pointer-events:none;
  z-index:-1;
}
.panel-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  text-align:left;
  margin-bottom:16px;
}
.order-panel .panel-title{
  display:grid;
  justify-items:center;
  text-align:center;
  margin-bottom:16px;
}
.panel-title h2{margin:0;color:#fff;font-size:26px;line-height:1.1}
.order-panel .panel-title h2{
  font-size:28px;
  letter-spacing:.2px;
  text-shadow:0 0 24px rgba(214,168,92,.16);
}
.order-panel .panel-title span{
  margin-top:7px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(214,168,92,.34);
  border-radius:999px;
  padding:6px 12px;
  background:rgba(0,0,0,.22);
  color:var(--gold2);
  font-size:10px;
}
.day-list,.addon-list{list-style:none;padding:0;margin:0}
.day-list li{
  display:grid;
  grid-template-columns:76px 1fr;
  gap:10px;
  border:1px solid rgba(214,168,92,.16);
  border-radius:13px;
  padding:9px;
  align-items:center;
  background:rgba(255,247,232,.045);
}
.day-list li+li{
  margin-top:8px;
}
.day-list strong{
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
  border-radius:999px;
  padding:6px 8px;
  text-align:center;
  color:#17120d;
  font-size:13px;
  line-height:1.1;
}
.day-list span{font-weight:800;color:#f8ebd4;line-height:1.45}
.note{
  margin:14px 0 0;
  font-size:13px;
  line-height:1.65;
  color:#cdbb9f;
}
.addon-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.addon-list li{
  min-height:72px;
  display:grid;
  align-content:space-between;
  gap:7px;
  border:1px solid rgba(214,168,92,.18);
  border-radius:14px;
  padding:12px;
  background:rgba(255,247,232,.045);
}
.addon-list span{
  color:#fff;
  font-weight:900;
  line-height:1.3;
}
.addon-list em{
  display:block;
  margin-top:3px;
  font-style:normal;
  color:#c9b597;
  font-size:12px;
  font-weight:600;
}
.addon-list b{
  justify-self:start;
  border-radius:999px;
  padding:5px 9px;
  background:rgba(214,168,92,.13);
  color:var(--gold2);
  font-size:11px;
  line-height:1.25;
}

form{display:grid;gap:11px}
.order-panel form{
  border-top:1px solid rgba(214,168,92,.18);
  padding-top:15px;
}
.order-step{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid rgba(214,168,92,.18);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(255,247,232,.055),rgba(0,0,0,.12));
}
.order-step-title{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:30px;
}
.order-step-title span{
  display:inline-grid;
  place-items:center;
  width:26px;
  height:26px;
  border-radius:50%;
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
  font-size:11px;
  font-weight:900;
}
.order-step-title strong{
  color:#fff7e8;
  font-size:14px;
}
.order-step-title small{
  margin-left:auto;
  color:var(--gold);
  font-size:10px;
  font-weight:900;
  letter-spacing:1.6px;
  text-transform:uppercase;
}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
label{display:grid;gap:6px;font-size:13px;color:#f1dab3;font-weight:800}
input,select,textarea{
  width:100%;
  border:1px solid rgba(214,168,92,.35);
  background:#fffaf1;
  color:#20160d;
  border-radius:12px;
  padding:11px 13px;
}
.order-panel label{
  gap:7px;
  color:#ead7b8;
  font-size:12px;
  letter-spacing:.1px;
}
.order-panel input,
.order-panel select,
.order-panel textarea{
  min-height:44px;
  border-radius:14px;
  border-color:rgba(255,223,154,.3);
  background:linear-gradient(180deg,#fff8ec,#f7ead4);
  color:#21160d;
  padding:12px 14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72), 0 10px 22px rgba(0,0,0,.14);
  outline:none;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.order-panel textarea{
  min-height:78px;
  resize:vertical;
}
.order-panel input::placeholder,
.order-panel textarea::placeholder{
  color:#8b7a65;
  opacity:.78;
}
.order-panel input:focus,
.order-panel select:focus,
.order-panel textarea:focus{
  border-color:var(--gold2);
  box-shadow:0 0 0 3px rgba(255,223,154,.15), inset 0 1px 0 rgba(255,255,255,.8);
  transform:translateY(-1px);
}
fieldset{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  border:1px solid rgba(214,168,92,.26);
  border-radius:15px;
  padding:12px;
  background:rgba(0,0,0,.18);
}
fieldset legend{color:var(--gold);font-size:13px;font-weight:900;padding:0 6px}
.order-panel fieldset{
  margin:0;
  border-color:rgba(255,223,154,.24);
  background:linear-gradient(135deg,rgba(255,247,232,.055),rgba(0,0,0,.18));
  padding:13px;
}
.order-panel fieldset legend{
  color:var(--gold2);
  font-size:12px;
  letter-spacing:.7px;
}
fieldset label{
  display:flex;
  align-items:center;
  gap:8px;
  color:#fff;
  border:1px solid rgba(214,168,92,.18);
  border-radius:999px;
  padding:8px 10px;
  background:rgba(255,247,232,.045);
  font-size:12px;
}
.order-panel fieldset label{
  min-height:38px;
  border-color:rgba(214,168,92,.24);
  background:rgba(255,247,232,.055);
  color:#f8ead2;
  font-size:12px;
  font-weight:800;
}
.order-panel fieldset label:has(input:checked){
  border-color:rgba(255,223,154,.72);
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
}
fieldset input{width:auto}
fieldset input{accent-color:var(--gold)}
.order-panel fieldset input[type="checkbox"]{
  width:14px;
  height:14px;
  min-height:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:3px;
  background:transparent;
  box-shadow:none;
  flex:0 0 auto;
  transform:none;
}
.order-preview{
  border:1px solid rgba(214,168,92,.32);
  border-radius:15px;
  background:rgba(0,0,0,.18);
  overflow:hidden;
}
.order-panel .order-preview{
  border-color:rgba(255,223,154,.25);
  background:linear-gradient(180deg,rgba(255,247,232,.055),rgba(0,0,0,.22));
  box-shadow:inset 0 1px 0 rgba(255,223,154,.08);
}
.order-preview-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border-bottom:1px solid rgba(214,168,92,.22);
}
.order-preview-head span{
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:2px;
}
.order-preview-head button{
  border:1px solid rgba(214,168,92,.42);
  border-radius:999px;
  padding:7px 10px;
  color:var(--gold2);
  background:rgba(0,0,0,.18);
  cursor:pointer;
  font-size:12px;
  font-weight:900;
}
.order-preview pre{
  margin:0;
  padding:12px 13px;
  max-height:132px;
  overflow:auto;
  white-space:pre-wrap;
  color:#f4ddba;
  font-family:Arial,"Microsoft YaHei","Noto Sans SC",sans-serif;
  font-size:13px;
  line-height:1.55;
}
.form-message{
  min-height:22px;
  margin:0;
  padding:8px 10px;
  border-radius:12px;
  color:#ffdf9a;
  background:rgba(255,223,154,.08);
  border:1px solid rgba(255,223,154,.18);
  font-size:13px;
  font-weight:800;
  line-height:1.45;
}
.form-message:empty{
  display:none;
}
.form-message.is-error{
  color:#ffd1c7;
  background:rgba(255,91,62,.1);
  border-color:rgba(255,91,62,.32);
}
.order-panel .btn-wide{
  margin-top:2px;
  min-height:50px;
  border-radius:16px;
  font-size:16px;
  box-shadow:0 15px 34px rgba(214,168,92,.28);
}

.bottom-cards{background:#070605}
.triple-feature{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}
.feature-card{
  position:relative;
  min-height:310px;
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--line);
  background:#111;
  box-shadow:var(--shadow);
}
.feature-card>picture,
.feature-card>img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;
}
.feature-card>picture img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.feature-card::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.45),rgba(0,0,0,.25));
}
.feature-card>div{
  position:relative;
  z-index:2;
  padding:26px;
}
.feature-card h2{margin:5px 0 10px;font-size:28px;color:#fff}
.feature-card p,.feature-card li{color:#ecd9b8;line-height:1.65}
.feature-card ul{padding-left:18px;margin:0 0 16px}
.feature-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.btn-soft{
  background:rgba(0,0,0,.34);
  color:#ffdf9a;
  border-color:rgba(255,223,154,.46);
}

.styling-cases-section{
  background:
    radial-gradient(circle at 72% 0,rgba(214,168,92,.12),rgba(214,168,92,0) 34%),
    #070605;
  padding-top:0;
}
.styling-cases-section[hidden]{display:none}
.styling-cases-section .section-frame{
  border:1px solid rgba(214,168,92,.22);
  border-radius:18px;
  padding:22px;
  background:linear-gradient(180deg,rgba(23,18,13,.72),rgba(8,7,5,.94));
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,223,154,.1);
  transform-origin:top center;
}
.styling-cases-section.is-open .section-frame{
  animation:menuUnfold .58s var(--ease-menu) both;
}
.case-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  margin-bottom:18px;
}
.case-header span,
.case-card span{
  display:block;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:2.8px;
}
.case-header h2{
  margin:5px 0 8px;
  color:#fff7e8;
  font-size:32px;
}
.case-header p{
  max-width:720px;
  margin:0;
  color:#e8d5b3;
  line-height:1.65;
}
.case-header button{
  border:1px solid rgba(255,223,154,.38);
  border-radius:999px;
  padding:9px 14px;
  color:#ffdf9a;
  background:rgba(0,0,0,.22);
  cursor:pointer;
  font-weight:900;
  white-space:nowrap;
}
.case-showcase{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:0;
  min-height:460px;
  margin-bottom:16px;
  overflow:hidden;
  border:1px solid rgba(255,223,154,.3);
  border-radius:22px;
  background:
    radial-gradient(circle at 18% 12%,rgba(255,223,154,.15),transparent 32%),
    linear-gradient(135deg,rgba(23,18,13,.86),rgba(0,0,0,.96));
  box-shadow:0 26px 80px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,223,154,.14);
}
.case-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 0,rgba(255,223,154,.12) 42%,transparent 58%);
  transform:translateX(-120%);
  animation:caseSheen 6.8s ease-in-out infinite;
  z-index:2;
}
.case-showcase-media{
  position:relative;
  min-height:460px;
  display:block;
  overflow:hidden;
  border:0;
  padding:0;
  background:#080604;
  cursor:zoom-in;
}
.case-showcase-media img{
  width:100%;
  height:100%;
  min-height:460px;
  object-fit:cover;
  display:block;
  transform:scale(1.02);
  filter:saturate(1.05) contrast(1.02);
  transition:opacity .38s ease, transform .7s ease, filter .45s ease;
}
.case-showcase-media.is-switching img{
  opacity:.2;
  transform:scale(1.08);
}
.case-showcase-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.58)),
    linear-gradient(180deg,transparent 54%,rgba(0,0,0,.64));
  pointer-events:none;
}
.case-showcase-media span{
  position:absolute;
  left:18px;
  bottom:16px;
  z-index:1;
  padding:8px 12px;
  border:1px solid rgba(255,223,154,.32);
  border-radius:999px;
  color:#ffdf9a;
  background:rgba(0,0,0,.44);
  font-size:12px;
  font-weight:900;
  letter-spacing:1.6px;
  backdrop-filter:blur(10px);
}
.case-showcase-copy{
  position:relative;
  z-index:3;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
  padding:34px;
  background:
    radial-gradient(circle at 100% 0,rgba(214,168,92,.18),transparent 34%),
    linear-gradient(180deg,rgba(14,11,8,.72),rgba(0,0,0,.88));
}
.case-showcase-copy span,
.case-lightbox-caption span{
  color:#d6a85c;
  font-size:11px;
  font-weight:900;
  letter-spacing:3px;
}
.case-showcase-copy h3{
  margin:0;
  color:#fff7e8;
  font-size:34px;
  line-height:1.12;
}
.case-showcase-copy p{
  margin:0;
  color:#ead7b8;
  line-height:1.75;
}
.case-showcase-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:8px;
}
.case-showcase-actions button,
.case-showcase-actions a{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:10px 16px;
  font-weight:900;
  text-decoration:none;
}
.case-showcase-actions button{
  border:1px solid rgba(255,223,154,.34);
  color:#ffdf9a;
  background:rgba(0,0,0,.28);
  cursor:pointer;
}
.case-showcase-actions a{
  color:#0e0b08;
  background:linear-gradient(135deg,#ffdf9a,#c48b34);
}
.case-progress{
  width:100%;
  height:4px;
  margin-top:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,223,154,.16);
}
.case-progress span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#ffdf9a,#d6a85c);
  transition:width .25s ease;
}
.case-nav{
  position:absolute;
  top:50%;
  z-index:4;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,223,154,.32);
  border-radius:999px;
  color:#ffdf9a;
  background:rgba(0,0,0,.44);
  box-shadow:0 12px 28px rgba(0,0,0,.3);
  cursor:pointer;
  transform:translateY(-50%);
  font-size:26px;
  line-height:1;
  backdrop-filter:blur(10px);
}
.case-nav:hover{
  color:#0e0b08;
  background:#ffdf9a;
}
.case-nav-prev{left:14px}
.case-nav-next{right:14px}
.case-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.case-card{
  position:relative;
  min-height:260px;
  border:1px solid rgba(214,168,92,.26);
  border-radius:16px;
  overflow:hidden;
  background:#0e0b08;
  box-shadow:0 18px 44px rgba(0,0,0,.32);
  cursor:pointer;
  isolation:isolate;
  transition:border-color .28s ease, box-shadow .28s ease, transform .28s ease;
}
.case-card.case-wide{
  grid-column:span 2;
}
.case-card picture,
.case-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.case-card img{
  object-fit:cover;
  transform:scale(1.02);
  transition:transform .35s ease, filter .35s ease;
}
.case-card:hover img,
.feature-card:hover>picture img{
  transform:scale(1.08);
  filter:saturate(1.08) brightness(1.04);
}
.case-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.84));
}
.case-card div{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:1;
  padding:18px;
}
.case-card h3{
  margin:5px 0 7px;
  color:#fff7e8;
  font-size:22px;
}
.case-card p{
  margin:0;
  color:#ead7b8;
  line-height:1.55;
  font-size:14px;
}
.case-card:hover img{
  transform:scale(1.07);
  filter:saturate(1.06) brightness(1.04);
}
.case-card:hover,
.case-card:focus-visible,
.case-card.is-active{
  border-color:rgba(255,223,154,.78);
  box-shadow:0 22px 56px rgba(0,0,0,.42), 0 0 0 1px rgba(255,223,154,.2);
  transform:translateY(-2px);
}
.case-card.is-active::before{
  content:"";
  position:absolute;
  inset:10px;
  z-index:2;
  border:1px solid rgba(255,223,154,.62);
  border-radius:12px;
  pointer-events:none;
}
.case-cta{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-top:16px;
  padding:16px;
  border:1px solid rgba(255,223,154,.2);
  border-radius:16px;
  background:rgba(255,247,232,.05);
}
.case-cta p{
  margin:0;
  color:#e8d5b3;
  line-height:1.55;
}
.case-lightbox{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  place-items:center;
  padding:28px;
  background:rgba(4,3,2,.92);
  backdrop-filter:blur(16px);
}
.case-lightbox[hidden]{display:none}
.case-lightbox img{
  max-width:min(1120px,92vw);
  max-height:82vh;
  width:auto;
  height:auto;
  object-fit:contain;
  border:1px solid rgba(255,223,154,.32);
  border-radius:22px;
  box-shadow:0 30px 90px rgba(0,0,0,.72);
}
.case-lightbox-close,
.case-lightbox-nav{
  position:fixed;
  z-index:2;
  border:1px solid rgba(255,223,154,.36);
  border-radius:999px;
  color:#ffdf9a;
  background:rgba(0,0,0,.52);
  cursor:pointer;
  backdrop-filter:blur(10px);
}
.case-lightbox-close{
  top:22px;
  right:22px;
  width:46px;
  height:46px;
  font-size:30px;
}
.case-lightbox-nav{
  top:50%;
  width:50px;
  height:50px;
  transform:translateY(-50%);
  font-size:32px;
}
.case-lightbox-prev{left:22px}
.case-lightbox-next{right:22px}
.case-lightbox-caption{
  position:fixed;
  left:50%;
  bottom:22px;
  display:grid;
  gap:4px;
  min-width:min(520px,88vw);
  padding:14px 18px;
  border:1px solid rgba(255,223,154,.26);
  border-radius:18px;
  background:rgba(0,0,0,.58);
  text-align:center;
  transform:translateX(-50%);
  backdrop-filter:blur(12px);
}
.case-lightbox-caption strong{
  color:#fff7e8;
  font-size:20px;
}
body.case-lightbox-open{overflow:hidden}

@keyframes heroCopyIn{
  from{
    opacity:0;
    transform:translate3d(0,28px,0);
    filter:blur(8px);
  }
  to{
    opacity:1;
    transform:translate3d(0,0,0);
    filter:blur(0);
  }
}

@keyframes ambientGoldSweep{
  0%,36%{transform:translateX(-32%);opacity:.18}
  54%{transform:translateX(18%);opacity:.34}
  100%{transform:translateX(48%);opacity:.16}
}

@keyframes heroGoldSweep{
  0%,36%{transform:translateX(-38%);opacity:.32}
  55%{transform:translateX(18%);opacity:.78}
  100%{transform:translateX(52%);opacity:.28}
}

@keyframes heroGoldLine{
  0%,100%{transform:scaleX(.35);opacity:.45}
  50%{transform:scaleX(.92);opacity:.9}
}

@keyframes titleGoldFlow{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}

@keyframes softPulse{
  0%,100%{filter:drop-shadow(0 0 0 rgba(255,223,154,0));opacity:.92}
  50%{filter:drop-shadow(0 0 16px rgba(255,223,154,.34));opacity:1}
}

@keyframes buttonSheen{
  from{left:-55%}
  to{left:120%}
}

@keyframes caseSheen{
  0%,42%{transform:translateX(-120%)}
  58%,100%{transform:translateX(120%)}
}

@keyframes caseButtonSheen{
  0%,48%{left:-45%}
  70%,100%{left:118%}
}

@keyframes menuUnfold{
  0%{
    opacity:0;
    transform:perspective(900px) translate3d(0,24px,0) rotateX(-7deg) scale(.965);
    filter:blur(12px);
    clip-path:inset(0 0 18% round 22px);
  }
  58%{
    opacity:1;
    filter:blur(0);
  }
  100%{
    opacity:1;
    transform:perspective(900px) translate3d(0,0,0) rotateX(0) scale(1);
    filter:blur(0);
    clip-path:inset(0 0 0 round 0);
  }
}

@keyframes navPanelOpen{
  from{
    opacity:0;
    transform:translate3d(0,-12px,0) scale(.98);
    filter:blur(10px);
  }
  to{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
    filter:blur(0);
  }
}

@keyframes navItemIn{
  from{
    opacity:0;
    transform:translate3d(18px,-4px,0);
  }
  to{
    opacity:1;
    transform:translate3d(0,0,0);
  }
}

@keyframes luxePress{
  0%{transform:translateY(0) scale(1);filter:brightness(1)}
  42%{transform:translateY(1px) scale(.985);filter:brightness(1.14)}
  100%{transform:translateY(0) scale(1);filter:brightness(1)}
}

@media(prefers-reduced-motion:reduce){
  body::before,
  .hero::before,
  .hero::after{
    animation:none;
  }
  body.is-loaded .hero h1,
  .hero-en{
    animation:none;
  }
  .hero-copy{
    animation:none;
  }
  .hero-media img{
    transform:none!important;
  }
  .motion-ready [data-motion]{
    opacity:1;
    transform:none;
    filter:none;
    transition:none;
    clip-path:none;
  }
  .dynamic-surface,
  .dynamic-surface:hover{
    transform:none;
    transition:none;
  }
  .dynamic-surface::before{
    display:none;
  }
  .btn:hover::before{
    animation:none;
  }
  .case-showcase::before{
    animation:none;
  }
  .menu-builder-wrap.is-open,
  .styling-cases-section.is-open .section-frame,
  .btn.press-glow,
  button.press-glow{
    animation:none;
  }
  .dynamic-case-btn::after{
    animation:none;
    display:none;
  }
  .case-showcase-media img,
  .case-card,
  .case-card img{
    transition:none;
  }
}

.catering-menu-section{
  background:
    radial-gradient(circle at 15% 0,rgba(214,168,92,.12),rgba(214,168,92,0) 34%),
    #090806;
}
.catering-menu-teaser{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:20px;
  align-items:center;
  min-height:190px;
  border:1px solid rgba(255,223,154,.34);
  border-radius:18px;
  padding:28px;
  overflow:hidden;
  background:
    linear-gradient(110deg,rgba(0,0,0,.72),rgba(23,18,13,.72)),
    radial-gradient(circle at 80% 0,rgba(255,223,154,.18),transparent 32%);
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,223,154,.12);
}
.catering-menu-teaser::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(255,223,154,.07),transparent 35%),
    url("../assets/images/event/catering-event.jpg") center/cover;
  opacity:.22;
  filter:saturate(.9);
}
.catering-menu-teaser::after{
  content:"";
  position:absolute;
  inset:auto 22px 0 22px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,223,154,.75),transparent);
}
.teaser-copy,
.teaser-points,
.catering-menu-teaser .btn{
  position:relative;
  z-index:1;
}
.teaser-copy span,
.menu-builder-head span{
  display:block;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:3px;
}
.teaser-copy h2{
  margin:8px 0 10px;
  color:#fff7e8;
  font-size:34px;
}
.teaser-copy p{
  max-width:680px;
  margin:0;
  color:#e7d3af;
  line-height:1.7;
}
.teaser-points{
  display:grid;
  gap:8px;
  min-width:150px;
}
.teaser-points span{
  border:1px solid rgba(255,223,154,.28);
  border-radius:999px;
  padding:8px 12px;
  color:#ffdf9a;
  background:rgba(0,0,0,.28);
  font-size:12px;
  font-weight:900;
  text-align:center;
}
.menu-builder-wrap{
  margin-top:18px;
  opacity:0;
  transform:perspective(900px) translateY(18px) rotateX(5deg) scale(.985);
  transform-origin:top center;
  transition:opacity .34s var(--ease-luxe), transform .34s var(--ease-luxe);
}
.menu-builder-wrap.is-open{
  opacity:1;
  transform:perspective(900px) translateY(0) rotateX(0) scale(1);
  animation:menuUnfold .58s var(--ease-menu) both;
}
.menu-builder-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  border:1px solid rgba(255,223,154,.22);
  border-radius:16px;
  padding:16px 18px;
  margin-bottom:14px;
  background:rgba(255,247,232,.045);
}
.menu-builder-head h3{
  margin:4px 0;
  color:#fff7e8;
  font-size:24px;
}
.menu-builder-head p{
  margin:0;
  color:#d8c5a6;
}
.menu-builder-head button{
  border:1px solid rgba(255,223,154,.38);
  border-radius:999px;
  padding:9px 13px;
  color:#ffdf9a;
  background:rgba(0,0,0,.18);
  cursor:pointer;
  font-weight:900;
  white-space:nowrap;
}
.combo-presets{
  display:grid;
  gap:12px;
  margin-bottom:14px;
  padding:14px;
  border:1px solid rgba(214,168,92,.24);
  border-radius:16px;
  background:rgba(255,247,232,.045);
}
.combo-presets-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.combo-presets-head span{
  color:var(--gold);
  font-size:10px;
  font-weight:900;
  letter-spacing:2.4px;
}
.combo-presets-head strong{
  color:#fff7e8;
  font-size:16px;
}
.combo-preset-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.combo-preset-card{
  min-height:118px;
  display:grid;
  gap:7px;
  text-align:left;
  border:1px solid rgba(214,168,92,.28);
  border-radius:15px;
  padding:14px;
  color:#ead7b8;
  background:linear-gradient(145deg,rgba(255,247,232,.07),rgba(0,0,0,.2));
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.combo-preset-card span{
  color:var(--gold);
  font-size:10px;
  font-weight:900;
  letter-spacing:1.8px;
}
.combo-preset-card strong{
  color:#fff7e8;
  font-size:17px;
}
.combo-preset-card small{
  color:#cdb895;
  line-height:1.45;
}
.combo-preset-card:hover,
.combo-preset-card.is-active{
  transform:translateY(-2px);
  border-color:rgba(255,223,154,.68);
  background:linear-gradient(145deg,rgba(255,223,154,.16),rgba(0,0,0,.18));
}
.menu-builder{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  align-items:start;
}
.calculator-panel{
  width:100%;
  max-width:860px;
  margin:4px auto 0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  border:1px solid rgba(255,223,154,.36);
  border-radius:18px;
  padding:20px;
  background:
    radial-gradient(circle at 0 0,rgba(255,223,154,.1),rgba(255,223,154,0) 35%),
    linear-gradient(180deg,#17120d,#090806);
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,223,154,.12);
}
.calculator-panel .calc-head,
.calculator-panel .estimate-box,
.calculator-panel .selected-menu-summary,
.calculator-panel .calc-note{
  grid-column:1/-1;
}
.calculator-panel .btn-wide{
  align-self:end;
}
.calc-head span{
  display:block;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:2.4px;
}
.calc-head h3{
  margin:4px 0 0;
  color:#fff7e8;
  font-size:26px;
}
.calculator-panel input,
.calculator-panel select{
  min-height:44px;
  border:1px solid rgba(255,223,154,.3);
  border-radius:14px;
  padding:11px 13px;
  background:#fff7e8;
  color:#17120d;
  outline:none;
}
.estimate-box{
  border:1px solid rgba(255,223,154,.28);
  border-radius:16px;
  padding:16px;
  background:rgba(255,247,232,.07);
}
.estimate-box small{
  display:block;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:2px;
}
.estimate-box strong{
  display:block;
  margin-top:4px;
  color:var(--gold2);
  font-size:36px;
  line-height:1;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}
.estimate-box p{
  margin:8px 0 0;
  color:#ead7b8;
  line-height:1.45;
  font-size:13px;
}
.selected-menu-summary{
  max-height:180px;
  overflow:auto;
  border:1px solid rgba(214,168,92,.22);
  border-radius:14px;
  padding:12px;
  background:rgba(0,0,0,.2);
  color:#fff7e8;
  font-size:13px;
  line-height:1.65;
}
.selected-menu-summary b{color:var(--gold2)}
.selected-menu-summary p{margin:0 0 7px}
.selected-menu-summary p:last-child{margin-bottom:0}
.calc-note{
  margin:0;
  color:#bcae99;
  font-size:12px;
  line-height:1.65;
}
.catering-menu-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.menu-category{
  border:1px solid rgba(214,168,92,.28);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(23,18,13,.86),rgba(11,9,7,.92));
  overflow:hidden;
  box-shadow:0 16px 48px rgba(0,0,0,.28);
}
.menu-category-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:16px 16px 12px;
  border-bottom:1px solid rgba(214,168,92,.18);
}
.menu-category-head h3{
  margin:0;
  color:#fff;
  font-size:20px;
}
.menu-category-head span{
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:1.8px;
}
.menu-category-head b{
  flex:0 0 auto;
  border:1px solid rgba(255,223,154,.35);
  border-radius:999px;
  padding:6px 9px;
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
  font-size:12px;
  font-weight:900;
  font-variant-numeric:tabular-nums;
}
.menu-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding:14px;
}
.menu-option{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  border:1px solid rgba(214,168,92,.18);
  border-radius:999px;
  padding:8px 10px;
  color:#f5e6cc;
  background:rgba(255,247,232,.045);
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
.menu-option input{
  width:14px;
  height:14px;
  margin:0;
  accent-color:var(--gold);
  flex:0 0 auto;
}
.menu-option:has(input:checked){
  border-color:rgba(255,223,154,.72);
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
}
.faq-section{background:#0a0806;padding-top:20px}
.faq-title{
  text-align:center;
  color:var(--gold2);
  letter-spacing:2px;
  margin-bottom:14px;
}
.faq-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:12px;
}
details{
  border:1px solid rgba(214,168,92,.35);
  border-radius:10px;
  background:#12100d;
  min-height:78px;
  padding:14px;
}
summary{cursor:pointer;color:#fff;font-weight:800;list-style:none}
summary span{display:block;color:var(--gold);margin-bottom:6px}
details p{color:var(--muted);font-size:13px;line-height:1.55}

.final-cta{
  background:linear-gradient(90deg,#080706,#1b1209,#080706);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  overflow:hidden;
}
.cta-inner{
  display:grid;
  grid-template-columns:1fr auto 220px;
  gap:28px;
  min-height:160px;
  align-items:center;
}
.footer-brand{display:flex;align-items:center;gap:18px}
.footer-brand img{width:92px;height:92px;border-radius:50%;border:1px solid var(--gold)}
.footer-brand h2{font-size:33px;margin:0;color:var(--gold2)}
.footer-brand p{font-size:25px;margin:7px 0;color:#fff;font-family:"KaiTi",serif}
.footer-brand small{color:var(--gold);letter-spacing:2px}
.cta-food{
  width:220px;height:120px;object-fit:cover;border-radius:20px;
  border:1px solid rgba(214,168,92,.3);
  overflow:hidden;
}
.cta-food img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.site-footer{
  padding:20px 18px 70px;
  color:var(--muted);
  display:flex;
  justify-content:center;
  gap:24px;
  flex-wrap:wrap;
  font-size:13px;
  background:#050403;
}
.member-modal{
  position:fixed;
  inset:0;
  z-index:90;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
}
.member-modal.open{display:flex}
.member-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(8px);
}
.member-dialog{
  position:relative;
  width:min(100%,860px);
  max-height:min(92vh,820px);
  overflow:auto;
  border:1px solid rgba(214,168,92,.52);
  border-radius:22px;
  background:
    radial-gradient(circle at 20% 0,rgba(214,168,92,.18),transparent 32%),
    linear-gradient(180deg,#17120d,#070605);
  box-shadow:0 30px 100px rgba(0,0,0,.7);
}
.member-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:2;
  width:38px;
  height:38px;
  border:1px solid rgba(214,168,92,.45);
  border-radius:50%;
  color:var(--gold2);
  background:rgba(0,0,0,.34);
  cursor:pointer;
  font-size:24px;
  line-height:1;
}
.member-panel{padding:34px}
.member-intro{max-width:620px;margin-bottom:20px}
.member-intro span,.member-dashboard-head span{
  color:var(--gold);
  font-size:12px;
  font-weight:900;
  letter-spacing:3px;
}
.member-intro h2,.member-dashboard-head h2{
  margin:7px 0;
  color:var(--gold2);
  font-size:34px;
}
.member-intro p,.member-dashboard-head p{
  color:#dac8ad;
  line-height:1.7;
}
.member-tabs{
  display:flex;
  gap:10px;
  margin:18px 0;
}
.member-tabs button{
  border:1px solid rgba(214,168,92,.36);
  border-radius:999px;
  padding:10px 16px;
  color:var(--gold2);
  background:rgba(255,247,232,.06);
  cursor:pointer;
  font-weight:900;
}
.member-tabs button.active{
  color:#17120d;
  background:linear-gradient(135deg,#f7d37a,#d6a85c);
}
.member-form{
  display:none;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.member-form.active{display:grid}
.member-form .btn{grid-column:1/-1}
.member-message{
  min-height:24px;
  margin:14px 0 0;
  color:var(--gold2);
  font-weight:800;
}
.member-dashboard-head{
  display:flex;
  gap:18px;
  align-items:flex-start;
  justify-content:space-between;
  margin-bottom:20px;
}
.member-benefits{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-bottom:22px;
}
.member-benefits article{
  border:1px solid rgba(214,168,92,.3);
  border-radius:14px;
  padding:16px;
  background:rgba(255,247,232,.06);
}
.member-benefits b,.member-benefits span{display:block}
.member-benefits b{color:var(--gold2);font-size:18px}
.member-benefits span{color:#d8c5a6;font-size:13px;margin-top:4px}
.member-overview-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:0 0 20px;
}
.member-tier-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(214,168,92,.34);
  border-radius:16px;
  padding:18px;
  background:
    radial-gradient(circle at 16% 0,rgba(255,223,154,.16),transparent 38%),
    linear-gradient(135deg,rgba(255,247,232,.08),rgba(0,0,0,.22));
}
.member-tier-card::after{
  content:"";
  position:absolute;
  inset:auto 14px 12px auto;
  width:64px;
  height:64px;
  border-radius:50%;
  border:1px solid rgba(255,223,154,.14);
  box-shadow:0 0 36px rgba(214,168,92,.1);
}
.member-tier-card span{
  display:block;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:3px;
}
.member-tier-card strong{
  display:block;
  margin-top:9px;
  color:var(--gold2);
  font-size:22px;
  line-height:1.15;
}
.member-tier-card p{
  margin:9px 0 0;
  color:#d8c5a6;
  font-size:13px;
  line-height:1.55;
}
.member-profile-form{
  border:1px solid rgba(214,168,92,.3);
  border-radius:18px;
  padding:18px;
  margin-bottom:20px;
  background:rgba(0,0,0,.2);
}
.member-profile-form .member-records-head{
  border-top:0;
  padding-top:0;
  margin-bottom:14px;
}
.member-profile-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.member-profile-wide{grid-column:1/-1}
.member-referral-panel{
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:18px;
  align-items:center;
  border:1px solid rgba(214,168,92,.36);
  border-radius:18px;
  padding:18px;
  margin-bottom:20px;
  background:
    radial-gradient(circle at 5% 0,rgba(255,223,154,.14),transparent 36%),
    rgba(0,0,0,.24);
}
.member-referral-panel span{
  display:block;
  color:var(--gold);
  font-size:11px;
  font-weight:900;
  letter-spacing:3px;
  margin-bottom:6px;
}
.member-referral-panel strong{
  display:inline-flex;
  color:var(--gold2);
  font-size:30px;
  letter-spacing:2px;
  line-height:1.15;
}
.member-referral-panel p{
  color:#d8c5a6;
  line-height:1.7;
  margin:10px 0 0;
}
.member-referral-panel small{
  display:block;
  margin-top:10px;
  max-width:100%;
  color:#bcae99;
  font-size:12px;
  line-height:1.45;
  word-break:break-all;
}
.member-referral-qr{
  display:grid;
  justify-items:center;
  gap:8px;
  min-width:126px;
}
.member-referral-qr div{
  display:grid;
  grid-template-columns:repeat(7,10px);
  gap:4px;
  padding:12px;
  border:1px solid rgba(214,168,92,.4);
  border-radius:16px;
  background:#fff7e8;
  box-shadow:inset 0 0 0 5px rgba(214,168,92,.08),0 14px 35px rgba(0,0,0,.22);
}
.member-referral-qr i{
  width:10px;
  height:10px;
  border-radius:3px;
  background:rgba(23,18,13,.12);
}
.member-referral-qr i.active{background:#17120d}
.member-referral-qr span{
  margin:0;
  color:#d8c5a6;
  font-size:10px;
  letter-spacing:1.2px;
  text-align:center;
}
.member-referral-actions{
  display:grid;
  gap:10px;
  min-width:180px;
}
.member-referral-actions .btn{
  width:100%;
  padding:12px 16px;
}
.member-rewards-head{margin-top:4px}
.member-records-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid rgba(214,168,92,.22);
  padding-top:18px;
}
.member-records-head h3{
  margin:0;
  color:#fff;
}
.member-records-head button{
  border:1px solid rgba(214,168,92,.36);
  border-radius:999px;
  padding:8px 12px;
  color:var(--gold2);
  background:transparent;
  cursor:pointer;
}
.member-records{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.member-record{
  border:1px solid rgba(214,168,92,.28);
  border-radius:14px;
  padding:14px;
  background:rgba(0,0,0,.24);
}
.member-record strong{
  display:block;
  color:var(--gold2);
  margin-bottom:6px;
}
.member-record p{
  margin:3px 0;
  color:#d8c5a6;
  font-size:13px;
}
.member-empty{
  border:1px dashed rgba(214,168,92,.32);
  border-radius:14px;
  padding:18px;
  color:#d8c5a6;
  text-align:center;
}
.admin-dialog{width:min(100%,1040px)}
.admin-dashboard{display:block}
.admin-login{display:grid;gap:14px}
.admin-auto-translate{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid rgba(214,168,92,.26);
  border-radius:16px;
  padding:14px 16px;
  margin-top:14px;
  background:linear-gradient(135deg,rgba(214,168,92,.13),rgba(255,247,232,.045));
}
.admin-auto-translate strong{
  display:block;
  color:var(--gold2);
  margin-bottom:4px;
}
.admin-auto-translate p{
  margin:0;
  color:#d8c5a6;
  line-height:1.5;
  font-size:13px;
}
.admin-auto-translate button{
  border:1px solid rgba(214,168,92,.55);
  border-radius:999px;
  padding:10px 14px;
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
  cursor:pointer;
  font-weight:900;
  white-space:nowrap;
}
.admin-nav{
  position:sticky;
  top:0;
  z-index:3;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:16px 0 4px;
  padding:10px;
  border:1px solid rgba(214,168,92,.24);
  border-radius:16px;
  background:rgba(8,7,5,.92);
  backdrop-filter:blur(10px);
}
.admin-nav button{
  border:1px solid rgba(214,168,92,.35);
  border-radius:999px;
  padding:9px 13px;
  color:var(--gold2);
  background:rgba(255,247,232,.04);
  cursor:pointer;
  font-weight:900;
}
.admin-nav button.active{
  color:#17120d;
  border-color:transparent;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
}
.admin-section[hidden]{display:none}
.admin-section{
  border:1px solid rgba(214,168,92,.3);
  border-radius:18px;
  padding:18px;
  margin-top:18px;
  background:rgba(0,0,0,.2);
}
.admin-section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:14px;
}
.admin-section-head h3{
  margin:0 0 5px;
  color:var(--gold2);
  font-size:22px;
}
.admin-section-head p{
  margin:0;
  color:#d8c5a6;
  line-height:1.6;
}
.admin-section-head button,
.admin-row button{
  border:1px solid rgba(214,168,92,.42);
  border-radius:999px;
  padding:9px 12px;
  color:var(--gold2);
  background:rgba(255,247,232,.06);
  cursor:pointer;
  font-weight:900;
  white-space:nowrap;
}
.admin-toolbar{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.admin-note-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-bottom:12px;
}
.admin-rows{
  display:grid;
  gap:12px;
}
.admin-site-rows{
  display:grid;
  gap:10px;
  max-height:520px;
  overflow:auto;
  padding-right:4px;
}
.admin-site-row{
  display:grid;
  grid-template-columns:minmax(160px,.7fr) minmax(0,1fr) minmax(0,1fr);
  gap:10px;
  align-items:end;
  border:1px solid rgba(214,168,92,.22);
  border-radius:14px;
  padding:12px;
  background:rgba(255,247,232,.045);
}
.admin-site-row.is-tall{
  align-items:start;
}
.admin-site-label strong,
.admin-site-label small{
  display:block;
}
.admin-site-label strong{
  color:var(--gold2);
  line-height:1.35;
}
.admin-site-label small{
  color:#a99473;
  font-size:11px;
  margin-top:4px;
  word-break:break-all;
}
.admin-site-row label{
  color:#f4ddba;
}
.admin-site-row input,
.admin-site-row textarea{
  width:100%;
  margin-top:6px;
  background:#fffaf1;
}
.admin-row{
  display:grid;
  grid-template-columns:repeat(4,1fr) auto;
  gap:10px;
  align-items:end;
  border:1px solid rgba(214,168,92,.22);
  border-radius:14px;
  padding:12px;
  background:rgba(255,247,232,.045);
}
.admin-row.two-line{
  grid-template-columns:repeat(4,1fr) auto;
}
.admin-row label,
.admin-note-grid label{
  color:#f4ddba;
}
.admin-row input,
.admin-row textarea,
.admin-note-grid textarea,
.admin-note-grid input{
  background:#fffaf1;
}
.admin-catering-row{
  display:grid;
  grid-template-columns:1fr 1fr 1fr 140px auto;
  gap:10px;
  align-items:end;
  border:1px solid rgba(214,168,92,.22);
  border-radius:14px;
  padding:12px;
  background:rgba(255,247,232,.045);
}
.admin-case-row{
  display:grid;
  grid-template-columns:1fr 1fr 1.4fr 1fr auto;
  gap:10px;
  align-items:end;
  border:1px solid rgba(214,168,92,.22);
  border-radius:14px;
  padding:12px;
  background:rgba(255,247,232,.045);
}
.admin-catering-head{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#d8c5a6;
}
.admin-catering-head strong{
  color:var(--gold2);
}
.admin-catering-row label,
.admin-case-row label{
  color:#f4ddba;
}
.admin-catering-row input,
.admin-catering-row textarea,
.admin-case-row input,
.admin-case-row textarea{
  background:#fffaf1;
}
.admin-catering-items{
  grid-column:1/5;
}
.admin-case-row .admin-catering-items{
  grid-column:1/5;
}
.admin-conversion{
  border:1px solid rgba(214,168,92,.24);
  border-radius:14px;
  padding:14px;
  background:rgba(255,247,232,.045);
  display:flex;
  justify-content:space-between;
  gap:14px;
}
.admin-conversion strong{
  display:block;
  color:var(--gold2);
  margin-bottom:6px;
}
.admin-conversion p{
  margin:3px 0;
  color:#d8c5a6;
  font-size:13px;
}
.admin-conversion small{
  color:#9f8c6d;
  word-break:break-all;
  text-align:right;
}
.admin-actions{
  display:flex;
  gap:12px;
  justify-content:flex-end;
  flex-wrap:wrap;
  border-top:1px solid rgba(214,168,92,.22);
  padding-top:18px;
  margin-top:18px;
}
.admin-inquiries{
  gap:10px;
}
.admin-inquiry{
  border:1px solid rgba(214,168,92,.24);
  border-radius:14px;
  padding:14px;
  background:rgba(255,247,232,.045);
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:start;
}
.admin-inquiry strong{
  display:block;
  color:var(--gold2);
  margin-bottom:6px;
}
.admin-inquiry p{
  margin:3px 0;
  color:#d8c5a6;
  font-size:13px;
  line-height:1.5;
}
.admin-inquiry-actions{
  display:grid;
  gap:8px;
  min-width:170px;
}
.admin-inquiry-actions select{
  padding:9px 10px;
}
.admin-inquiry-actions a{
  text-align:center;
  border:1px solid rgba(214,168,92,.42);
  border-radius:999px;
  padding:9px 12px;
  color:#17120d;
  background:linear-gradient(135deg,#ffdf9a,#d6a85c);
  font-size:13px;
  font-weight:900;
}
.admin-members{
  gap:12px;
}
.admin-member-card{
  border:1px solid rgba(214,168,92,.24);
  border-radius:14px;
  padding:14px;
  background:rgba(255,247,232,.045);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);
  gap:14px;
  align-items:start;
}
.admin-member-card strong{
  display:block;
  color:var(--gold2);
  margin-bottom:6px;
}
.admin-member-card p{
  margin:3px 0;
  color:#d8c5a6;
  font-size:13px;
  line-height:1.5;
}
.admin-reward-list{
  display:grid;
  gap:8px;
}
.admin-reward-list>span{
  border:1px dashed rgba(214,168,92,.24);
  border-radius:12px;
  padding:12px;
  color:#d8c5a6;
  font-size:13px;
}
.admin-reward-line{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  border:1px solid rgba(214,168,92,.2);
  border-radius:12px;
  padding:10px;
  background:rgba(0,0,0,.2);
}
.admin-reward-line b,
.admin-reward-line span{
  display:block;
}
.admin-reward-line b{
  color:var(--gold2);
  font-size:13px;
}
.admin-reward-line span{
  color:#d8c5a6;
  font-size:12px;
  margin-top:3px;
}
.admin-reward-line select{
  min-width:118px;
  padding:8px 10px;
}
.admin-reward-list label{
  display:grid;
  gap:6px;
  color:var(--gold);
  font-size:12px;
  font-weight:900;
}
.admin-reward-list select,
.admin-reward-list textarea{
  border:1px solid rgba(214,168,92,.28);
  border-radius:12px;
  padding:10px 12px;
  color:#17120d;
  background:#fff7e8;
  font-weight:800;
}
.admin-reward-list textarea{
  min-height:82px;
  resize:vertical;
}
.back-top{
  position:fixed;right:18px;bottom:18px;
  width:45px;height:45px;border-radius:50%;
  border:0;background:var(--gold);color:#1a1108;
  font-size:21px;font-weight:900;cursor:pointer;display:none;
  z-index:70;
}
.mobile-wa{
  display:none;
  position:fixed;left:12px;right:12px;bottom:12px;
  z-index:60;text-align:center;
  background:linear-gradient(135deg,#f7d37a,#d6a85c);
  color:#17120d;
  border-radius:999px;
  padding:14px;
  font-weight:900;
  box-shadow:0 10px 35px rgba(0,0,0,.5);
  transition:opacity .22s ease, transform .22s ease;
}
body.order-form-visible .mobile-wa{
  opacity:0;
  pointer-events:none;
  transform:translateY(86px);
}
body.order-form-visible .back-top{
  opacity:0;
  pointer-events:none;
  transform:translateY(24px);
}

@media(max-width:980px){
  body{padding-bottom:86px}
  body.nav-open{
    overflow:hidden;
  }
  body.nav-open::after{
    opacity:1;
    pointer-events:auto;
    backdrop-filter:blur(10px);
  }
  .nav-shell{height:auto;min-height:72px;flex-wrap:wrap}
  body.is-scrolled .nav-shell{height:auto;min-height:64px}
  .menu-toggle{display:grid;margin-left:auto}
  .nav-links{
    display:flex;
    order:5;width:100%;margin:0;
    flex-direction:column;align-items:flex-start;
    gap:0;
    max-height:0;
    padding:0 16px;
    overflow:hidden;
    opacity:0;
    pointer-events:none;
    transform:translate3d(0,-10px,0) scale(.985);
    border:1px solid rgba(255,223,154,0);
    border-radius:18px;
    background:
      radial-gradient(circle at 10% 0,rgba(255,223,154,.16),transparent 36%),
      linear-gradient(160deg,rgba(23,18,13,.96),rgba(4,3,2,.98));
    box-shadow:none;
    backdrop-filter:blur(18px);
    transition:
      max-height .52s var(--ease-menu),
      opacity .34s ease,
      transform .42s var(--ease-menu),
      padding .42s var(--ease-menu),
      border-color .34s ease,
      box-shadow .34s ease;
  }
  .nav-links.open{
    max-height:560px;
    padding:10px 16px 14px;
    opacity:1;
    pointer-events:auto;
    transform:translate3d(0,0,0) scale(1);
    border-color:rgba(255,223,154,.22);
    box-shadow:0 24px 70px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,223,154,.1);
    animation:navPanelOpen .42s var(--ease-menu) both;
  }
  .nav-links>*{
    opacity:0;
    transform:translate3d(18px,-4px,0);
  }
  .nav-links.open>*{
    animation:navItemIn .36s var(--ease-menu) both;
  }
  .nav-links.open>*:nth-child(1){animation-delay:.04s}
  .nav-links.open>*:nth-child(2){animation-delay:.08s}
  .nav-links.open>*:nth-child(3){animation-delay:.12s}
  .nav-links.open>*:nth-child(4){animation-delay:.16s}
  .nav-links.open>*:nth-child(5){animation-delay:.20s}
  .nav-links.open>*:nth-child(6){animation-delay:.24s}
  .nav-links.open>*:nth-child(7){animation-delay:.28s}
  .nav-links a{padding:13px 0;width:100%}
  .member-nav{width:100%;text-align:left;margin:8px 0 12px}
  .language-switch{order:4;margin-left:0}
  .nav-whatsapp{display:none}
  .hero{min-height:620px}
  .hero h1{font-size:64px}
  .hero-en{font-size:20px;letter-spacing:10px}
  .hero-tags{font-size:20px}
  .hero-slogan{font-size:27px}
  .service-strip{padding:16px 0 28px}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .service-card{
    min-height:132px;
    padding:16px;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.28);
  }
  .service-icon{font-size:27px}
  .service-card h3{font-size:22px;margin:8px 0 1px}
  .service-en{font-size:11px;letter-spacing:1.5px;margin-bottom:6px}
  .service-card p:last-child{
    font-size:12.5px;
    line-height:1.45;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .pricing-grid,.three-col,.triple-feature,.video-spot,.menu-builder,.catering-menu-grid,.faq-grid,.referral-grid,.referral-terms{grid-template-columns:1fr}
  .case-showcase{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .case-showcase-media,
  .case-showcase-media img{
    min-height:360px;
  }
  .case-showcase-copy{
    padding:24px;
  }
  .case-nav{
    top:180px;
  }
  .case-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .case-card.case-wide{grid-column:span 2}
  .combo-preset-grid{grid-template-columns:1fr}
  .combo-presets-head{display:grid}
  .case-header,.case-cta{display:grid}
  .case-header button,.case-cta .btn{width:100%}
  .three-col{max-width:720px}
  .catering-menu-teaser{
    grid-template-columns:1fr;
    align-items:start;
  }
  .teaser-points{
    grid-template-columns:repeat(3,minmax(0,1fr));
    min-width:0;
  }
  .catering-menu-teaser .btn{
    width:100%;
  }
  .menu-builder-head{
    display:grid;
  }
  .order-panel{
    position:static;
    max-width:640px;
    margin:0 auto;
  }
  .calculator-panel{
    position:static;
    max-width:640px;
    margin:0 auto;
    grid-template-columns:1fr;
  }
  .price-card{min-height:560px}
  .price-image{height:100%}
  .price-body{min-height:560px;padding-top:250px}
  .form-grid{grid-template-columns:1fr}
  .cta-inner{grid-template-columns:1fr;text-align:center;padding:28px 18px}
  .footer-brand{justify-content:center;flex-direction:column}
  .cta-food{margin:auto}
  .mobile-wa{display:block}
  .back-top{bottom:78px}
}
@media(max-width:560px){
  .brand-lockup strong{font-size:17px}
  .brand-lockup small{letter-spacing:1.8px}
  .brand-lockup img{width:46px;height:46px}
  .hero-inner{padding:70px 18px 88px}
  .hero h1{font-size:50px}
  .hero-en{font-size:16px;letter-spacing:6px}
  .hero-actions .btn{width:100%}
  .video-spot-copy{padding:22px}
  .video-spot-copy h2{font-size:27px}
  .video-spot-media{min-height:260px}
  .styling-cases-section .section-frame{padding:16px}
  .case-header h2{font-size:25px}
  .case-showcase{
    border-radius:16px;
    margin-bottom:12px;
  }
  .case-showcase-media,
  .case-showcase-media img{
    min-height:278px;
  }
  .case-showcase-copy{
    padding:18px;
  }
  .case-showcase-copy h3{
    font-size:24px;
  }
  .case-showcase-copy p{
    font-size:14px;
    line-height:1.6;
  }
  .case-showcase-actions{
    display:grid;
  }
  .case-nav{
    top:139px;
    width:38px;
    height:38px;
  }
  .case-nav-prev{left:10px}
  .case-nav-next{right:10px}
  .case-gallery{grid-template-columns:1fr}
  .case-card,.case-card.case-wide{grid-column:auto;min-height:240px}
  .case-card h3{font-size:20px}
  .price-card{min-height:520px}
  .price-card .price-body{
    min-height:520px;
    padding:225px 20px 24px;
  }
  .case-lightbox{
    padding:14px;
  }
  .case-lightbox-close{
    top:14px;
    right:14px;
  }
  .case-lightbox-nav{
    width:42px;
    height:42px;
  }
  .case-lightbox-prev{left:10px}
  .case-lightbox-next{right:10px}
  .case-lightbox-caption{
    bottom:14px;
    padding:11px 14px;
  }
  .order-step{padding:11px}
  .order-step-title small{display:none}
  .light-panel,.order-panel{padding:20px}
  .panel-title,.order-panel .panel-title{display:block;text-align:left}
  .order-panel{
    border-radius:20px;
    padding:18px;
  }
  .order-panel .panel-title{
    text-align:center;
    margin-bottom:13px;
  }
  .order-panel .panel-title h2{font-size:24px}
  .order-panel .panel-title span{
    margin-top:8px;
    padding:5px 10px;
    font-size:9px;
    letter-spacing:2px;
  }
  .order-panel form{
    gap:10px;
    padding-top:13px;
  }
  .order-panel label{
    font-size:11.5px;
    gap:6px;
  }
  .order-panel input,
  .order-panel select,
  .order-panel textarea{
    min-height:42px;
    border-radius:13px;
    padding:11px 13px;
    font-size:14px;
  }
  .order-panel fieldset{
    gap:7px;
    padding:12px;
  }
  .order-panel fieldset label{
    min-height:36px;
    padding:8px 9px;
  }
  .order-preview pre{
    max-height:118px;
    font-size:12.5px;
  }
  .order-panel .btn-wide{
    min-height:48px;
    font-size:15px;
  }
  .addon-list,fieldset{grid-template-columns:1fr}
  .day-list li{grid-template-columns:72px 1fr}
  .service-card{padding:15px 14px;min-height:124px}
  .service-icon{font-size:25px}
  .service-card h3{font-size:20px}
  .service-card p:last-child{font-size:12px}
  .feature-actions .btn{width:100%}
  .menu-options{grid-template-columns:1fr}
  .menu-category-head{display:grid}
  .menu-category-head b{justify-self:start}
  .catering-menu-teaser{
    min-height:auto;
    padding:22px;
  }
  .teaser-copy h2{font-size:25px}
  .teaser-points{
    grid-template-columns:1fr;
  }
  .member-panel{padding:24px 18px}
  .member-form,.member-benefits,.member-overview-grid,.member-profile-grid{grid-template-columns:1fr}
  .member-profile-wide{grid-column:auto}
  .member-referral-panel{grid-template-columns:1fr}
  .member-referral-qr{justify-items:start}
  .member-referral-actions{min-width:0}
  .member-dashboard-head{display:grid}
  .member-records-head{align-items:flex-start;flex-direction:column}
  .admin-section-head{display:grid}
  .admin-auto-translate{
    align-items:flex-start;
    flex-direction:column;
  }
  .admin-auto-translate button{width:100%}
  .admin-nav{position:static}
  .admin-nav button{flex:1 1 130px}
  .admin-note-grid,.admin-row,.admin-row.two-line{grid-template-columns:1fr}
  .admin-site-rows{max-height:none}
  .admin-site-row{grid-template-columns:1fr}
  .admin-catering-row{grid-template-columns:1fr}
  .admin-case-row{grid-template-columns:1fr}
  .admin-catering-items{grid-column:auto}
  .admin-case-row .admin-catering-items{grid-column:auto}
  .admin-conversion{display:grid}
  .admin-conversion small{text-align:left}
  .admin-toolbar{justify-content:flex-start}
  .admin-inquiry{grid-template-columns:1fr}
  .admin-inquiry-actions{min-width:0}
  .admin-member-card{grid-template-columns:1fr}
  .admin-reward-line{grid-template-columns:1fr}
  .admin-reward-line select{width:100%}
  .admin-actions .btn{width:100%}
}
