
:root{
  --bg:#070707;
  --bg2:#111;
  --gold:#e2a500;
  --gold2:#ffca45;
  --red:#b6201c;
  --cream:#f5e6c8;
  --text:#f4efe7;
  --muted:#bdb3a3;
  --green:#25d366;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Montserrat",Arial,sans-serif;overflow-x:hidden}
h1,h2,h3,h4,.btn,.navbar-brand span{font-family:"Bebas Neue",Arial,sans-serif;letter-spacing:.03em}
section,header{scroll-margin-top:84px}
a{text-decoration:none}

.modern-nav{background:rgba(5,5,5,.28);backdrop-filter:blur(14px);transition:.3s;border-bottom:1px solid rgba(255,255,255,.04)}
.modern-nav.scrolled{background:rgba(5,5,5,.94);box-shadow:0 10px 30px rgba(0,0,0,.28)}
.nav-logo{width:54px;height:54px;object-fit:contain}
.navbar-brand span{color:var(--cream);font-size:1.25rem}
.nav-link{color:#ddd!important;text-transform:uppercase;font-size:.82rem;font-weight:600;letter-spacing:.08em;margin:0 .25rem}
.nav-link:hover{color:var(--gold2)!important}

.btn{border-radius:999px;padding:.8rem 1.35rem;text-transform:uppercase;transition:.25s}
.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#160f00;border:0;font-weight:700;box-shadow:0 12px 30px rgba(226,165,0,.22)}
.btn-gold:hover{color:#160f00;transform:translateY(-2px);box-shadow:0 16px 36px rgba(226,165,0,.32)}
.btn-ghost{color:var(--cream);border:1px solid rgba(245,230,200,.4);background:rgba(255,255,255,.03)}
.btn-ghost:hover{color:#fff;background:rgba(255,255,255,.08)}

.hero-modern{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(circle at 72% 30%,rgba(226,165,0,.16),transparent 28%),radial-gradient(circle at 8% 88%,rgba(182,32,28,.18),transparent 28%),linear-gradient(120deg,#050505,#0d0d0d)}
.hero-noise{position:absolute;inset:0;opacity:.13;background-image:repeating-linear-gradient(45deg,transparent 0 7px,rgba(255,255,255,.03) 7px 8px)}
.hero-orb{position:absolute;border-radius:50%;filter:blur(30px);opacity:.35}
.hero-orb-1{width:420px;height:420px;background:#7f1c14;right:-120px;top:120px}
.hero-orb-2{width:360px;height:360px;background:#aa7600;left:-120px;bottom:-60px}
.hero-title{font-size:clamp(4rem,8vw,7.6rem);line-height:.92;color:var(--cream);text-shadow:0 5px 0 rgba(133,25,18,.55)}
.hero-copy{font-size:1.14rem;color:var(--muted);max-width:650px}
.eyebrow{color:var(--gold2);text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700}
.hero-trust{display:flex;flex-wrap:wrap;gap:1rem;color:#ddd;font-size:.9rem}
.hero-trust i{color:var(--gold2);margin-right:.35rem}
.logo-stage{width:min(580px,95%);margin:auto;position:relative;display:grid;place-items:center}
.hero-logo{width:100%;position:relative;z-index:3;filter:drop-shadow(0 32px 34px rgba(0,0,0,.55))}
.logo-ring{position:absolute;width:76%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,202,69,.32);animation:spin 18s linear infinite}
.logo-ring-2{width:92%;border-style:dashed;animation-duration:28s;animation-direction:reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.scroll-indicator{position:absolute;left:50%;bottom:24px;width:28px;height:48px;border:1px solid rgba(255,255,255,.35);border-radius:20px;transform:translateX(-50%)}
.scroll-indicator span{width:4px;height:8px;border-radius:4px;background:var(--gold2);position:absolute;left:50%;top:9px;transform:translateX(-50%);animation:scrollDot 1.5s infinite}
@keyframes scrollDot{0%{opacity:0;transform:translate(-50%,0)}50%{opacity:1}100%{opacity:0;transform:translate(-50%,18px)}}

.section-pad{padding:110px 0}
.dark-section{background:linear-gradient(180deg,#0a0a0a,#111)}
.section-head{max-width:760px;margin-inline:auto}
.section-head h2,.event-section h2,.faq-section h2,.club-card h2,.contact-panel h2{font-size:clamp(3rem,6vw,5.5rem);line-height:.95;color:var(--cream)}
.section-head p,.event-section p,.faq-section p,.club-card p,.contact-panel p{color:var(--muted)}

.food-card{height:100%;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));border-radius:24px;overflow:hidden;transition:.35s;box-shadow:0 20px 45px rgba(0,0,0,.22)}
.food-card:hover{transform:translateY(-10px);border-color:rgba(255,202,69,.35)}
.food-card-visual{height:180px;display:grid;place-items:center;font-size:4rem;color:#1a1100;position:relative;overflow:hidden}
.food-card-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 25%,rgba(255,255,255,.45),transparent 25%)}
.food-1{background:linear-gradient(135deg,#e8b037,#a63b16)}
.food-2{background:linear-gradient(135deg,#d07025,#7d1a14)}
.food-3{background:linear-gradient(135deg,#f1bd51,#8e4612)}
.food-4{background:linear-gradient(135deg,#c6221f,#e4a400)}
.food-card-body{padding:1.5rem}
.food-tag{display:inline-block;color:var(--gold2);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.food-card h3{font-size:2.2rem;margin:.5rem 0;color:#fff}
.food-card p{color:var(--muted)}

.opening-section{position:relative;background:linear-gradient(100deg,#0b0b0b,#231008);overflow:hidden}
.opening-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 35%,rgba(182,32,28,.28),transparent 30%),radial-gradient(circle at 80% 20%,rgba(226,165,0,.25),transparent 30%)}
.opening-title{font-size:clamp(4rem,8vw,7rem);color:var(--gold2);line-height:.9}
.opening-copy{color:var(--muted);font-size:1.1rem}
.countdown{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.countdown div{min-width:90px;padding:1rem;border:1px solid rgba(255,202,69,.22);background:rgba(255,255,255,.035);border-radius:18px;text-align:center}
.countdown strong{display:block;font-family:"Bebas Neue";font-size:2.5rem;color:var(--cream)}
.countdown span{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.opening-dates{display:flex;gap:1rem}
.opening-dates div{width:140px;border-radius:20px;padding:1rem;background:linear-gradient(145deg,rgba(226,165,0,.18),rgba(182,32,28,.13));text-align:center;border:1px solid rgba(255,202,69,.2)}
.opening-dates span,.opening-dates small{display:block;text-transform:uppercase;letter-spacing:.1em}
.opening-dates strong{display:block;font-size:4rem;line-height:.9;color:var(--gold2);font-family:"Bebas Neue"}
.opening-poster{max-height:720px;border-radius:26px;box-shadow:0 35px 70px rgba(0,0,0,.52);border:1px solid rgba(255,202,69,.3)}

.gallery-section{background:#080808}
.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.dish-card{min-height:340px;grid-column:span 4;border-radius:26px;overflow:hidden;position:relative;background-size:cover;background-position:center;box-shadow:0 24px 55px rgba(0,0,0,.35);transition:.35s}
.dish-card:nth-child(1),.dish-card:nth-child(4){grid-column:span 5}
.dish-card:nth-child(2),.dish-card:nth-child(5){grid-column:span 4}
.dish-card:nth-child(3),.dish-card:nth-child(6){grid-column:span 3}
.dish-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.82) 100%)}
.dish-card:hover{transform:translateY(-8px) scale(1.01)}
.dish-content{position:absolute;left:0;right:0;bottom:0;padding:1.5rem;z-index:2}
.dish-content span{color:var(--gold2);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}
.dish-content h3{font-size:2.6rem;margin:.25rem 0;color:#fff}
.dish-content p{color:#e1d8ca;margin:0}
.dish-birria{background-image:url("http://pincheguapo.com/assets/img/tacosbirria.png")}
.dish-quesabirria{background-image:url("http://pincheguapo.com/assets/img/quesabirrias.png")}
.dish-pozole{background-image:url("http://pincheguapo.com/assets/img/pozole.png")}
.dish-huarache{background-image:url("http://pincheguapo.com/assets/img/huarachecostilla.png")}
.dish-consome{background-image:url("http://pincheguapo.com/assets/img/consomebirria.png")}
.dish-more{background-image:url("http://pincheguapo.com/assets/img/masproductos.png")}

.event-section{background:linear-gradient(180deg,#111,#090909)}
.event-benefits{display:grid;gap:.9rem;margin-top:1.7rem}
.event-benefits div{display:flex;align-items:center;gap:.7rem;color:#ddd}
.event-benefits i{color:var(--gold2)}
.glass-form{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px);padding:clamp(1.4rem,4vw,2.4rem);border-radius:26px;box-shadow:0 25px 60px rgba(0,0,0,.25)}
.form-control,.form-select{background:#151515;border:1px solid rgba(255,255,255,.11);color:#fff;min-height:50px;border-radius:14px}
.form-control:focus,.form-select:focus{background:#151515;color:#fff;border-color:var(--gold2);box-shadow:0 0 0 .25rem rgba(255,202,69,.1)}
.form-select option{background:#151515;color:white}
.form-label{font-size:.86rem;color:#e8dfd1}

.club-section{background:linear-gradient(120deg,#0b0b0b,#16110a)}
.club-card{background:linear-gradient(135deg,#e4aa16,#b6201c);border-radius:34px;padding:clamp(2rem,6vw,4.5rem);box-shadow:0 35px 75px rgba(0,0,0,.35);position:relative;overflow:hidden}
.club-card:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;border:80px solid rgba(255,255,255,.08);right:-120px;top:-140px}
.club-card>*{position:relative;z-index:2}
.club-badge{display:inline-block;padding:.45rem .8rem;border-radius:999px;background:rgba(0,0,0,.2);text-transform:uppercase;font-size:.72rem;letter-spacing:.12em}
.club-card h2{color:#fff}
.club-card p,.club-card li{color:rgba(255,255,255,.88)}
.club-card ul{padding-left:1.2rem}
.club-form{background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.18);padding:1.4rem;border-radius:22px}
.btn-dark-premium{background:#0c0c0c;color:#fff;border:0}

.faq-section{background:#111}
.custom-accordion .accordion-item{background:transparent;border-color:rgba(255,255,255,.08)}
.custom-accordion .accordion-button{background:transparent;color:#fff;font-family:"Montserrat";font-weight:600;box-shadow:none}
.custom-accordion .accordion-button:not(.collapsed){color:var(--gold2)}
.custom-accordion .accordion-body{color:var(--muted)}

.contact-map-section{background:#0a0a0a}
.contact-map-row{display:flex;align-items:stretch}
.contact-panel{min-height:560px;display:flex;align-items:center;background:radial-gradient(circle at 15% 20%,rgba(255,202,69,.12),transparent 35%),linear-gradient(135deg,#741411 0%,#a91d19 45%,#c22922 100%)}
.contact-inner{width:100%;max-width:720px;padding:clamp(40px,7vw,90px)}
.contact-inner h2{margin-top:12px;margin-bottom:22px}
.contact-address{margin-bottom:28px;color:rgba(255,255,255,.84)!important;font-size:1.05rem;line-height:1.7}
.contact-address i{margin-right:8px;color:#ffd15c}
.contact-list{display:grid;gap:14px}
.contact-list a{display:flex;align-items:center;gap:16px;padding:14px 16px;color:#fff;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(0,0,0,.14);transition:.25s}
.contact-list a:hover{color:#fff;transform:translateX(6px);background:rgba(0,0,0,.28);border-color:rgba(255,209,92,.48)}
.contact-icon{flex:0 0 auto;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:#1b1000;background:linear-gradient(135deg,#ffd15c,#d99500);font-size:1.25rem}
.contact-data{display:flex;flex-direction:column}
.contact-data small{color:rgba(255,255,255,.67);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}
.contact-data strong{color:#fff;font-size:1.06rem}
.map-column{min-height:560px;display:flex;position:relative;overflow:hidden}
.map-column::before{content:"";position:absolute;z-index:2;top:0;bottom:0;left:0;width:70px;pointer-events:none;background:linear-gradient(90deg,rgba(169,29,25,.75),transparent)}
.map-frame{width:100%;height:auto;min-height:560px;flex:1;display:block;border:0;filter:saturate(.9) contrast(1.03)}

.floating-whatsapp{position:fixed;right:20px;bottom:20px;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:2rem;z-index:1000;box-shadow:0 16px 34px rgba(0,0,0,.4)}

.site-footer{padding:70px 0 25px;background:#050505}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem}
.footer-logo{width:110px;margin-bottom:1rem}
.site-footer p,.site-footer a{color:var(--muted);display:block;margin-bottom:.45rem}
.site-footer h4{color:var(--cream);font-size:1.4rem}
.footer-bottom{margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.08);color:#8e877d;font-size:.85rem}

.reveal{opacity:0;transform:translateY(35px);transition:opacity .75s ease,transform .75s ease}
.reveal.visible{opacity:1;transform:none}
.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}.delay-3{transition-delay:.32s}

@media(max-width:991.98px){
  .modern-nav .navbar-collapse{background:#0a0a0a;padding:1rem;border-radius:16px;margin-top:.7rem}
  .hero-modern{padding-top:96px}
  .hero-title{text-align:center}
  .hero-copy{text-align:center;margin-inline:auto}
  .hero-trust,.hero-modern .d-flex{justify-content:center}
  .gallery-grid{grid-template-columns:1fr 1fr}
  .dish-card,.dish-card:nth-child(n){grid-column:span 1}
  .footer-grid{grid-template-columns:1fr 1fr}
  .contact-map-row{display:block}
  .contact-panel,.map-column{min-height:auto}
  .contact-inner{max-width:none;padding:60px 24px}
  .map-frame{height:430px;min-height:430px}
  .map-column::before{top:0;right:0;bottom:auto;left:0;width:100%;height:55px;background:linear-gradient(180deg,rgba(169,29,25,.75),transparent)}
}

@media(max-width:575.98px){
  .section-pad{padding:78px 0}
  .hero-title{font-size:3.8rem}
  .hero-trust{flex-direction:column;align-items:center}
  .countdown div{min-width:calc(50% - .4rem)}
  .opening-dates div{width:50%}
  .gallery-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .contact-inner{padding:48px 20px}
  .map-frame{height:360px;min-height:360px}
}


/* Formularios: texto blanco y mejor contraste */
.form-control,
.form-select,
textarea,
input {
  color: #ffffff !important;
}

.form-control::placeholder,
textarea::placeholder,
input::placeholder {
  color: rgba(255,255,255,.64) !important;
  opacity: 1;
}

.form-label,
.form-check-label,
legend.form-label {
  color: #ffffff !important;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  filter: invert(1);
  cursor: pointer;
}

select option {
  color: #ffffff;
  background: #151515;
}

/* Cancelación de suscripción */
.unsubscribe-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 15% 20%, rgba(226,165,0,.18), transparent 28%),
    radial-gradient(circle at 85% 80%, rgba(182,32,28,.22), transparent 30%),
    #080808;
}

.unsubscribe-card {
  max-width: 760px;
  padding: clamp(28px, 6vw, 56px);
  border: 1px solid rgba(255,202,69,.25);
  border-radius: 28px;
  background: rgba(16,16,16,.96);
  box-shadow: 0 30px 70px rgba(0,0,0,.4);
}

.unsubscribe-logo {
  width: 145px;
  height: 145px;
  object-fit: contain;
}

.unsubscribe-card h1 {
  color: var(--cream);
  font-size: clamp(3rem, 8vw, 5rem);
}

.unsubscribe-card p {
  color: var(--muted);
}

.reason-list {
  display: grid;
  gap: 10px;
}

.reason-list label {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 13px 14px;
  color: #ffffff;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 12px;
  background: rgba(255,255,255,.025);
  cursor: pointer;
}

.reason-list input {
  margin-top: 5px;
}

.link-gold {
  color: var(--gold2);
}

/* Administración */
.admin-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 12% 10%, rgba(226,165,0,.12), transparent 25%),
    #090909;
}

.admin-header {
  padding: 24px 0;
  background: rgba(5,5,5,.96);
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.admin-logo {
  width: 78px;
  height: 78px;
  object-fit: contain;
}

.admin-header h1 {
  color: var(--cream);
  font-size: clamp(2rem, 5vw, 3.5rem);
}

.admin-card {
  padding: clamp(20px, 4vw, 34px);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 22px;
  background: rgba(20,20,20,.96);
  box-shadow: 0 20px 50px rgba(0,0,0,.25);
}

.admin-card h2 {
  color: var(--cream);
  font-size: 2.3rem;
}

.admin-login {
  max-width: 520px;
}

.admin-table {
  --bs-table-bg: transparent;
  --bs-table-color: #ffffff;
  --bs-table-border-color: rgba(255,255,255,.1);
  margin-bottom: 0;
}

.admin-table thead th {
  color: var(--gold2);
  white-space: nowrap;
}

.admin-table tbody td {
  color: #ffffff;
  vertical-align: middle;
}

.admin-table tbody tr:hover {
  background: rgba(255,255,255,.035);
}

/* Carta y pedidos por WhatsApp */
.order-section {
  background:
    radial-gradient(circle at 85% 15%, rgba(226,165,0,.09), transparent 28%),
    #0b0b0b;
}

.menu-poster-card,
.order-panel {
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 24px;
  background: rgba(18,18,18,.96);
  box-shadow: 0 24px 60px rgba(0,0,0,.28);
}

.menu-poster-card { padding: 14px; position: sticky; top: 95px; }
.menu-poster-img { width: 100%; height: auto; display: block; border-radius: 16px; }
.order-panel { padding: clamp(18px, 3vw, 30px); }
.order-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 18px; }
.order-toolbar h3, .product-category h4 { color: var(--cream); }
.order-toolbar p { color: rgba(255,255,255,.65); }

.cart-summary-button {
  border: 1px solid rgba(226,165,0,.45);
  background: rgba(226,165,0,.1);
  color: #fff;
  border-radius: 16px;
  min-width: 112px;
  padding: 12px 14px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 8px;
}
.cart-summary-button strong {
  background: var(--gold2);
  color: #111;
  min-width: 24px;
  height: 24px;
  border-radius: 999px;
  display: inline-grid;
  place-items: center;
  font-size: .8rem;
}

.product-list { display: grid; gap: 12px; }
.product-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 15px;
  background: rgba(255,255,255,.025);
}
.product-info strong { color: #fff; display: block; }
.product-info small { color: rgba(255,255,255,.55); display: block; margin-top: 2px; }
.product-price { color: var(--gold2); font-weight: 800; white-space: nowrap; }
.product-qty-control {
  display: inline-grid;
  grid-template-columns: 36px 42px 36px;
  align-items: center;
  border: 1px solid rgba(226,165,0,.35);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(226,165,0,.07);
}
.product-qty-btn {
  border: 0;
  width: 36px;
  height: 36px;
  background: transparent;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1;
}
.product-qty-btn:hover:not(:disabled), .product-qty-btn:focus-visible { background: rgba(226,165,0,.17); color: var(--gold2); }
.product-qty-btn:disabled { opacity: .28; cursor: not-allowed; }
.product-qty-value {
  min-width: 42px;
  text-align: center;
  color: #fff;
  font-weight: 800;
  border-left: 1px solid rgba(226,165,0,.22);
  border-right: 1px solid rgba(226,165,0,.22);
}
.product-row.has-selection { border-color: rgba(226,165,0,.38); background: rgba(226,165,0,.055); }
.product-row.has-selection .product-qty-value { color: var(--gold2); }

.cart-canvas { --bs-offcanvas-width: min(460px, 100vw); background: #111; color: #fff; }
.cart-canvas .offcanvas-header { border-bottom: 1px solid rgba(255,255,255,.08); }
.cart-canvas .offcanvas-title { color: var(--cream); }
.cart-items { overflow-y: auto; }
.cart-empty { color: rgba(255,255,255,.58); text-align: center; padding: 48px 15px; }
.cart-item {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.cart-item-name { color: #fff; font-weight: 700; }
.cart-item-meta { color: rgba(255,255,255,.55); font-size: .88rem; }
.cart-item-controls { display: flex; align-items: center; gap: 8px; margin-top: 9px; }
.cart-qty-btn, .cart-remove-btn {
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  color: #fff;
  border-radius: 9px;
  min-width: 32px;
  height: 32px;
}
.cart-remove-btn { color: #ff8076; }
.cart-total-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 0 8px;
  border-top: 1px solid rgba(255,255,255,.12);
  font-size: 1.1rem;
}
.cart-total-row strong { color: var(--gold2); font-size: 1.45rem; }

@media (max-width: 767.98px) {
  .order-toolbar { align-items: stretch; flex-direction: column; }
  .cart-summary-button { width: 100%; grid-template-columns: auto 1fr auto; }
  .product-row { grid-template-columns: minmax(0,1fr) auto; }
  .product-qty-control { grid-column: 1 / -1; width: 100%; grid-template-columns: 44px 1fr 44px; }
  .product-qty-btn { width: 44px; height: 40px; }
  .menu-poster-card { position: static; }
}

/* Carta de productos: categorías compactas en acordeón */
.menu-category-accordion {
  --bs-accordion-bg: transparent;
  --bs-accordion-border-color: rgba(255,255,255,.09);
  --bs-accordion-btn-focus-box-shadow: none;
  --bs-accordion-active-bg: rgba(255,202,69,.08);
}
.menu-category-accordion .accordion-item {
  background: rgba(255,255,255,.025);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 12px;
}
.menu-category-accordion .accordion-button {
  background: rgba(255,255,255,.025);
  color: var(--cream);
  font-family: var(--font-display);
  font-size: clamp(1.05rem, 2vw, 1.3rem);
  font-weight: 800;
  letter-spacing: .02em;
  padding: 18px 20px;
  box-shadow: none;
}
.menu-category-accordion .accordion-button:not(.collapsed) {
  color: var(--gold2);
  background: rgba(255,202,69,.075);
  border-bottom: 1px solid rgba(255,202,69,.12);
}
.menu-category-accordion .accordion-button::after {
  filter: invert(88%) sepia(55%) saturate(1270%) hue-rotate(336deg) brightness(103%);
}
.menu-category-accordion .accordion-body {
  padding: 16px;
}
.menu-category-accordion .accordion-button i {
  color: var(--gold2);
}
@media (max-width: 575.98px) {
  .menu-category-accordion .accordion-button { padding: 15px 16px; }
  .menu-category-accordion .accordion-body { padding: 12px; }
}
