.spear-tip-bottom::after,.spear-tip-top::after{content:"";border-left:calc(var(--tip-size) * .5) solid transparent;border-right:calc(var(--tip-size) * .5) solid transparent;left:calc(var(--tip-size) * -.5)}.filter-btn,.item-name,.neon-title{text-transform:uppercase}.modal-info,footer,header{text-align:center}.carta-btn,.modal-content,.pdf-viewer,body.menu-open{overflow:hidden}:root{--bg-color:#0d0d0d;--card-bg:#1a1a1a;--text-color: #FFEB3B;--text-secondary:#aaaaaa;--neon-main:#FFEB3B;--neon-secondary:#FFEB3B;--neon-blue:#FFEB3B;--font-main:"Helvetica Neue",sans-serif;--column-width:8px;--petal-size-large:40px;--petal-size-small:28px;--tip-size:18px}*{margin:0;padding:0;box-sizing:border-box}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-main);padding-bottom:50px;overflow-x:hidden;position:relative;min-height:100vh;background:linear-gradient(135deg,#0a0a0a 0,#1a1a1a 100%)}.columns-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.column-wrapper{position:absolute;opacity:.5;transition:opacity .5s,transform .5s;animation:8s ease-in-out infinite floatColumn}.column-wrapper:hover{opacity:.8}.floating-food{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--fs,clamp(40px,6vw,72px));line-height:1;filter:drop-shadow(0 0 16px rgba(255,235,59,.55)) drop-shadow(0 0 6px rgba(255,235,59,.3));z-index:10;pointer-events:none;user-select:none;animation:9s ease-in-out infinite foodFloat}.column-left-2 .floating-food,.column-right-2 .floating-food{animation-delay:-3s}.column-left-3 .floating-food,.column-right-3 .floating-food{animation-delay:-6s}@keyframes foodFloat{0%,100%{transform:translate(-50%,-50%) translateY(0) rotate(-8deg)}50%{transform:translate(-50%,-50%) translateY(-22px) rotate(8deg)}}.column-left-1{top:35%;left:15%}.column-left-2{top:45%;left:17%}.column-left-3{top:75%;left:18%}.column-right-1{top:35%;right:17%}.column-right-2{top:45%;right:7%}.column-right-3{top:75%;right:13%}.petal-2,.petal-4{right:calc(var(--petal-size-large) * .8)}.column-container{position:relative;width:100%;height:100%}.column{position:absolute;width:var(--column-width);background:linear-gradient(to bottom,rgba(255, 235, 59,.9) 0,rgba(255, 235, 59,.7) 30%,rgba(255, 235, 59,.65) 50%,rgba(255, 235, 59,.7) 70%,rgba(255, 235, 59,.9) 100%);border-radius:calc(var(--column-width)/ 2);left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 12px rgba(255, 235, 59,.5),0 0 25px rgba(255, 235, 59,.3),0 0 35px rgba(255, 235, 59,.2),inset 0 0 12px rgba(255, 235, 59,.7);z-index:10}.spear-tip-bottom,.spear-tip-top{border-left:var(--tip-size) solid transparent;border-right:var(--tip-size) solid transparent;left:50%;transform:translateX(-50%);filter:drop-shadow(0 0 15px rgba(255, 235, 59, 0.7)) drop-shadow(0 0 8px rgba(255, 235, 59, 0.5));z-index:20;width:0;height:0;position:absolute}.spear-tip-top{border-bottom:calc(var(--tip-size) * 2) solid rgba(255, 235, 59,.9);top:calc(var(--tip-size) * -1.5);animation:2s ease-in-out infinite alternate tipGlowTop}.petal-1,.petal-2{top:calc(var(--petal-size-large) * 1)}.spear-tip-top::after{position:absolute;width:0;height:0;border-bottom:calc(var(--tip-size) * 1.6) solid #FFEB3B;top:calc(var(--tip-size) * .6)}.spear-tip-bottom{border-top:calc(var(--tip-size) * 2) solid rgba(255, 235, 59,.9);bottom:calc(var(--tip-size) * -1.5);animation:2s ease-in-out infinite alternate tipGlowBottom}.petal-3,.petal-4{bottom:calc(var(--petal-size-large) * 1)}.petal-1,.petal-3{left:calc(var(--petal-size-large) * .8);clip-path:polygon(0 50%,30% 0,100% 0,70% 50%,100% 100%,30% 100%);width:var(--petal-size-large);height:calc(var(--petal-size-large) * .45)}.spear-tip-bottom::after{position:absolute;width:0;height:0;border-top:calc(var(--tip-size) * 1.6) solid #FFEB3B;bottom:calc(var(--tip-size) * .6)}.petal{position:absolute;z-index:5;background:linear-gradient(45deg,rgba(255, 235, 59,.8) 0,rgba(255, 235, 59,.35) 100%);box-shadow:0 0 10px rgba(255, 235, 59,.4),0 0 15px rgba(255, 235, 59,.2);filter:blur(.3px);animation:5s ease-in-out infinite petalFloat}.petal-1{transform:rotate(45deg);animation-delay:0s}.petal-2{width:var(--petal-size-large);height:calc(var(--petal-size-large) * .45);clip-path:polygon(0 50%,30% 0,100% 0,70% 50%,100% 100%,30% 100%);transform:rotate(-45deg);animation-delay:.5s}.petal-small-1,.petal-small-2{top:calc(var(--petal-size-small) * 2)}.petal-3{transform:rotate(135deg);animation-delay:1s}.petal-small-1,.petal-small-3{left:calc(var(--petal-size-small) * 2.2)}.petal-4{width:var(--petal-size-large);height:calc(var(--petal-size-large) * .45);clip-path:polygon(0 50%,30% 0,100% 0,70% 50%,100% 100%,30% 100%);transform:rotate(-135deg);animation-delay:1.5s}.petal-small-3,.petal-small-4{bottom:calc(var(--petal-size-small) * 2)}.petal-small-2,.petal-small-4{width:var(--petal-size-small);height:calc(var(--petal-size-small) * .45);right:calc(var(--petal-size-small) * 2.2);clip-path:polygon(0 50%,30% 0,100% 0,70% 50%,100% 100%,30% 100%)}.petal-small{position:absolute;z-index:6;background:linear-gradient(45deg,rgba(255, 235, 59,.85) 0,rgba(255, 235, 59,.5) 100%);box-shadow:0 0 6px rgba(255, 235, 59,.3),0 0 12px rgba(255, 235, 59,.15);filter:blur(.2px);animation:4s ease-in-out infinite smallPetalFloat}.petal-small-1{width:var(--petal-size-small);height:calc(var(--petal-size-small) * .45);clip-path:polygon(0 50%,30% 0,100% 0,70% 50%,100% 100%,30% 100%);transform:rotate(45deg);animation-delay:.2s}.petal-small-2{transform:rotate(-45deg);animation-delay:.7s}.petal-small-3{width:var(--petal-size-small);height:calc(var(--petal-size-small) * .45);clip-path:polygon(0 50%,30% 0,100% 0,70% 50%,100% 100%,30% 100%);transform:rotate(135deg);animation-delay:1.2s}.petal-small-4{transform:rotate(-135deg);animation-delay:1.7s}.light-beam-bottom,.light-beam-top{width:calc(var(--tip-size) * 6);height:calc(var(--tip-size) * 4);background:radial-gradient(ellipse at center,rgba(255, 235, 59,.2) 0,rgba(255, 235, 59,.12) 40%,transparent 80%);transform:translateX(-50%);position:absolute;border-radius:50%;left:50%;z-index:1}.light-beam-top{top:calc(var(--tip-size) * -2);animation:3s ease-in-out infinite lightPulseTop}.light-beam-bottom{bottom:calc(var(--tip-size) * -2);animation:3s ease-in-out infinite lightPulseBottom}.center-glow{position:absolute;width:calc(var(--column-width) * 3.5);height:100%;background:radial-gradient(ellipse at center,rgba(255, 235, 59,.1) 0,transparent 70%);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1}.category-nav,.photo-modal{top:0;justify-content:center}header{padding:30px 20px;background:radial-gradient(circle at center,#222 0,transparent 100%);margin-bottom:20px;position:relative;z-index:10}.neon-title{font-size:3rem;font-weight:700;color: #FFEB3B;letter-spacing:4px;text-shadow:0 0 5px #FFEB3B,0 0 10px #FFEB3B,0 0 20px var(--neon-main),0 0 40px var(--neon-main),0 0 80px var(--neon-main);animation:2s infinite alternate flicker}.subtitle{color:var(--text-secondary);margin-top:10px;font-size:1rem;letter-spacing:2px}.logo{width:160px;max-width:40vw;height:auto;margin:10px auto;display:block;filter:drop-shadow(0 0 8px rgba(255, 235, 59, .6))}.category-nav,.menu-item,.photo-modal.active{display:flex}.category-nav{gap:15px;padding:15px 20px;margin-bottom:30px;flex-wrap:wrap;background-color:rgba(13,13,13,.95);backdrop-filter:blur(5px);z-index:100;border-bottom:1px solid #333;transition:.3s}.menu-container,.menu-item{position:relative;z-index:10}.filter-btn{background:0 0;border:1px solid #444;color: #FFEB3B;padding:10px 20px;border-radius:30px;cursor:pointer;font-weight:600;transition:.3s;font-size:.9rem}.filter-btn.active,.filter-btn:hover{background-color:transparent;border-color:var(--neon-main);color: #FFEB3B;box-shadow:0 0 10px var(--neon-main),inset 0 0 10px var(--neon-main);text-shadow:0 0 5px var(--neon-main)}.menu-container{max-width:700px;margin:0 auto;padding:0 20px}.menu-item{background-color:var(--card-bg);border-radius:12px;padding:20px;margin-bottom:15px;justify-content:space-between;align-items:center;transition:transform .2s,box-shadow .3s;cursor:pointer;border-left:4px solid transparent}.menu-item:hover{transform:scale(1.02);box-shadow:0 5px 15px rgba(0,243,255,.1);border-left:4px solid var(--neon-main)}.back-btn:hover,.category-item:hover,.view-photo-btn:hover{border-color:var(--neon-main)}.fade-in{animation:.5s forwards fadeInUp}.item-info{flex:1;padding-right:15px}.item-name{font-size:1.3rem;font-weight:800;margin-bottom:5px;color: #FFEB3B;letter-spacing:.5px;text-shadow:0 0 10px rgba(255, 235, 59,.3)}.back-btn,.view-photo-btn{letter-spacing:1px;text-transform:uppercase;cursor:pointer}.item-desc{font-size:.9rem;color:var(--text-secondary);line-height:1.4}.item-price,.modal-title,.view-photo-btn{color:var(--neon-main)}.item-price-container{display:flex;align-items:center;justify-content:flex-end;gap:10px}.item-price{font-size:1.3rem;font-weight:700;white-space:nowrap;text-shadow:0 0 5px #FFEB3B}.view-photo-btn{background:linear-gradient(135deg,rgba(255, 235, 59,.1) 0,rgba(255, 235, 59,.05) 100%);border:1px solid rgba(255, 235, 59,.3);padding:6px 14px;border-radius:20px;font-weight:600;transition:.3s;font-size:.8rem;white-space:nowrap;text-shadow:0 0 5px rgba(255, 235, 59,.7);box-shadow:0 0 8px rgba(255, 235, 59,.1)}.modal-title,.subcategory-header h2{text-shadow:0 0 10px var(--neon-main);margin-bottom:10px}.view-photo-btn:hover{background:linear-gradient(135deg,rgba(255, 235, 59,.2) 0,rgba(255, 235, 59,.1) 100%);box-shadow:0 0 12px var(--neon-main),inset 0 0 8px rgba(255, 235, 59,.2);transform:scale(1.05)}.photo-modal{display:none;position:fixed;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.9);z-index:1000;align-items:center;animation:.3s fadeIn}.modal-content{position:relative;max-width:90%;max-height:90%;background:var(--card-bg);border-radius:15px;box-shadow:0 0 30px rgba(0,243,255,.3);border:2px solid var(--neon-main);animation:.4s modalAppear}.modal-image{width:100%;height:auto;display:block;max-height:70vh;object-fit:contain}.modal-info{padding:10px}.modal-title{font-size:1.5rem}.modal-desc{color:var(--text-secondary);font-size:1rem;margin-bottom:15px}.modal-price{font-size:1.4rem;color:var(--neon-main);font-weight:700;text-shadow:0 0 8px rgba(255, 235, 59,.8)}.close-modal{position:absolute;top:15px;right:15px;background:rgba(0,0,0,.7);color: #FFEB3B;border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;cursor:pointer;display:flex;justify-content:center;align-items:center;transition:.3s;z-index:1001}.carta-container,footer{z-index:10;position:relative}.close-modal:hover{background:rgba(255,0,0,.8);transform:rotate(90deg)}.subcategory-container{width:100%;background:var(--card-bg);border-radius:12px;padding:25px;margin-top:20px;border:2px solid rgba(255, 235, 59,.1);animation:.5s fadeIn;display:none}.subcategory-header{text-align:center;margin-bottom:25px}.subcategory-header h2{font-size:1.8rem;color:var(--neon-main)}.subcategory-header p{color:var(--text-secondary);font-size:1rem}.category-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.category-item{background:rgba(255, 235, 59,.05);border-radius:10px;padding:20px;transition:.3s;border:1px solid transparent;cursor:pointer}.category-item:hover{transform:translateY(-5px);box-shadow:0 5px 15px rgba(255, 235, 59,.1)}.category-item h3{color:var(--neon-main);margin-bottom:10px;font-size:1.3rem}.category-item p{color:var(--text-secondary);font-size:.9rem;margin-bottom:15px}.category-item .price{color: #FFEB3B;font-weight:700;font-size:1.2rem}.back-btn{background:rgba(255, 235, 59,.1);border:1px solid rgba(255, 235, 59,.3);color: #FFEB3B;padding:10px 20px;border-radius:25px;font-weight:600;transition:.3s;display:block;margin:20px auto 0}.download-btn,.download-link{text-decoration:none;font-weight:700;transition:.3s}.back-btn:hover{background:rgba(255, 235, 59,.2)}footer{margin-top:50px;color:#555;font-size:.8rem}@keyframes flicker{0%,100%,18%,22%,25%,53%,57%{text-shadow:0 0 4px #FFEB3B,0 0 11px #FFEB3B,0 0 19px var(--neon-main),0 0 40px var(--neon-main),0 0 80px var(--neon-main)}20%,24%,55%{text-shadow:none}}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes modalAppear{from{opacity:0;transform:scale(.8) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes tipGlowTop{0%,100%{filter:drop-shadow(0 0 15px rgba(255, 235, 59, 0.7)) drop-shadow(0 0 8px rgba(255, 235, 59, 0.5))}50%{filter:drop-shadow(0 0 25px rgba(255, 235, 59, .8)) drop-shadow(0 0 15px rgba(255, 235, 59, .6))}}@keyframes tipGlowBottom{0%,100%{filter:drop-shadow(0 0 15px rgba(255, 235, 59, 0.7)) drop-shadow(0 0 8px rgba(255, 235, 59, 0.5))}50%{filter:drop-shadow(0 0 25px rgba(255, 235, 59, .8)) drop-shadow(0 0 15px rgba(255, 235, 59, .6))}}@keyframes petalFloat{0%,100%{transform:rotate(45deg) translateY(0) scale(1);opacity:.5}50%{transform:rotate(45deg) translateY(-5px) scale(1.03);opacity:.7}}@keyframes smallPetalFloat{0%,100%{transform:rotate(45deg) translateY(0) scale(1);opacity:.6}50%{transform:rotate(45deg) translateY(-4px) scale(1.02);opacity:.8}}@keyframes lightPulseTop{0%,100%{opacity:.2;transform:translateX(-50%) scale(1)}50%{opacity:.3;transform:translateX(-50%) scale(1.05)}}@keyframes lightPulseBottom{0%,100%{opacity:.2;transform:translateX(-50%) scale(1)}50%{opacity:.3;transform:translateX(-50%) scale(1.05)}}@keyframes floatColumn{0%,100%{transform:translateY(0) rotate(0)}33%{transform:translateY(-5px) rotate(.5deg)}66%{transform:translateY(3px) rotate(-.5deg)}}@keyframes slideInRight{from{right:-100%}to{right:0}}@keyframes slideOutRight{from{right:0}to{right:-100%}}.carta-active .category-nav,.carta-active .menu-container,.hide{display:none}@media (min-width:1200px){:root{--column-width:8px;--petal-size-large:42px;--petal-size-small:30px;--tip-size:18px}.column-wrapper{width:140px;height:120px}.column{height:100px}.category-items{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}.subcategory-header h2{font-size:2rem}}@media (min-width:992px) and (max-width:1199px){:root{--column-width:7px;--petal-size-large:38px;--petal-size-small:26px;--tip-size:16px}.column-wrapper{width:130px;height:110px}.column{height:90px}.category-items{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.subcategory-header h2{font-size:1.8rem}}@media (min-width:768px) and (max-width:991px){:root{--column-width:6px;--petal-size-large:32px;--petal-size-small:22px;--tip-size:14px}.column-wrapper{width:110px;height:95px;opacity:.4}.column{height:80px}.column-left-3,.column-right-3{display:none}.neon-title{font-size:2.5rem}.view-photo-btn{padding:5px 12px;font-size:.75rem}.modal-content{max-width:85%}.modal-title{font-size:1.3rem}.modal-desc{font-size:.9rem}.subcategory-container{padding:20px}.category-items{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px}.category-item{padding:15px}.category-item h3{font-size:1.2rem}.category-item p{font-size:.85rem}.subcategory-header h2{font-size:1.6rem}}@media (min-width:576px) and (max-width:767px){.category-items,.subcategory-header{margin-bottom:20px}:root{--column-width:5px;--petal-size-large:26px;--petal-size-small:18px;--tip-size:12px}.column-wrapper{width:90px;height:80px;opacity:.35}.column{height:65px}.column-left-2,.column-left-3,.column-right-2,.column-right-3{display:none}.column-left-1{left:3%}.column-right-1{right:3%}.neon-title{font-size:2rem}.menu-item{flex-direction:column;align-items:flex-start}.item-price-container{display:flex;justify-content:space-between;width:100%;align-items:center;margin-top:10px}.item-price{margin-top:0}.view-photo-btn{padding:4px 10px;font-size:.7rem;margin-top:8px;align-self:flex-end}.modal-content{max-width:90%;max-height:85%}.modal-price,.modal-title{font-size:1.2rem}.modal-desc{font-size:.85rem}.subcategory-container{padding:15px;border-radius:10px}.subcategory-header h2{font-size:1.4rem;margin-bottom:8px}.back-btn,.subcategory-header p{font-size:.9rem}.category-items{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.category-item{padding:12px;border-radius:8px}.category-item h3{font-size:1.1rem;margin-bottom:8px}.category-item p{font-size:.8rem;margin-bottom:10px}.category-item .price{font-size:1rem}.back-btn{padding:8px 16px}}@media (max-width:575px){.category-items,.subcategory-header{margin-bottom:15px}:root{--column-width:4px;--petal-size-large:22px;--petal-size-small:16px;--tip-size:10px}.column-wrapper{width:75px;height:70px;opacity:.3}.item-info,.item-name{width:100%}.column{height:55px}.column-left-2,.column-left-3,.column-right-1,.column-right-2,.column-right-3{display:none}.column-left-1{left:2%;top:20%}.neon-title{font-size:1.8rem;letter-spacing:2px}.category-nav{gap:8px;padding:0 10px}.filter-btn{padding:8px 15px;font-size:.8rem}.menu-item{padding:15px;flex-direction:column;align-items:flex-start;text-align:left}.item-name{text-align:left;margin-left:0;padding-left:0}.item-price-container{display:flex;justify-content:space-between;width:100%;align-items:center;margin-top:8px}.item-price{margin-top:8px;font-size:1.1rem}.view-photo-btn{padding:4px 8px;font-size:.65rem;margin-top:6px;align-self:flex-end}.modal-content{max-width:95%;max-height:80%;border-radius:10px}.modal-title{font-size:1.1rem;padding:0 10px}.modal-desc{font-size:.8rem;padding:0 10px}.category-item .price,.modal-price{font-size:1.1rem}.close-modal{width:35px;height:35px;font-size:1.2rem;top:10px;right:10px}.subcategory-container{padding:12px;border-radius:8px;margin-top:10px}.subcategory-header h2{font-size:1.3rem;margin-bottom:5px}.subcategory-header p{font-size:.85rem}.category-items{grid-template-columns:1fr;gap:10px}.category-item{padding:15px;border-radius:8px}.category-item h3{font-size:1.1rem;margin-bottom:6px}.category-item p{font-size:.85rem;margin-bottom:8px}.back-btn{padding:8px 14px;font-size:.85rem;margin-top:15px}.pdf-viewer{height:70vh}.carta-container{padding:0;margin-top:10px}.carta-header h2{font-size:1.4rem}.carta-header p{font-size:.9rem}.download-btn{padding:12px 20px;font-size:1rem}}@media (max-width:375px){.view-photo-btn{padding:3px 6px;font-size:.6rem;letter-spacing:.5px}.modal-content{max-width:98%;border-radius:8px}.modal-info{padding:15px}.carta-header,.subcategory-container{padding:10px}.carta-header h2,.subcategory-header h2{font-size:1.2rem}.back-btn,.category-item p,.subcategory-header p{font-size:.8rem}.category-item{padding:12px}.category-item .price,.category-item h3{font-size:1rem}.back-btn{padding:6px 12px}}.carta-btn{background:linear-gradient(135deg,rgba(255, 235, 59,.1) 0,rgba(255, 235, 59,.05) 100%);border:1px solid rgba(255, 235, 59,.5);color: #FFEB3B;position:relative}.carta-btn.active,.carta-btn:hover{border-color: #FFEB3B;color: #FFEB3B;box-shadow:0 0 15px rgba(255, 235, 59,.7),inset 0 0 10px rgba(255, 235, 59,.3);text-shadow:0 0 8px #FFEB3B}.carta-container{max-width:1000px;margin:20px auto;padding:20px;animation:.5s fadeIn}.carta-header{text-align:center;margin-bottom:30px;padding:20px;background:var(--card-bg);border-radius:12px;border:2px solid rgba(255, 235, 59,.7)}.carta-header h2{font-size:2rem;color: #FFEB3B;text-shadow:0 0 10px rgba(255,215,255,.7);margin-bottom:10px}.carta-header p{color:var(--text-secondary);font-size:1.1rem}.pdf-viewer{width:100%;height:75vh;margin:20px 0;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.5);border:2px solid var(--neon-main);background:#222;position:relative}.download-btn,.download-btn:hover{background:linear-gradient(135deg,#FFEB3B 0,#FFEB3B 100%)}.pdf-iframe{width:100%;height:100%;border:none;display:block}.carta-actions{display:flex;justify-content:center;gap:20px;margin-top:30px;flex-wrap:wrap}.download-btn{color:#000;padding:15px 30px;border-radius:50px;font-size:1.1rem;text-transform:uppercase;letter-spacing:1px;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;box-shadow:0 5px 15px rgba(255,215,255,.7)}.download-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(255, 235, 59,.7)}.download-link{color: #FFEB3B;padding:10px 20px;border:1px solid #FFEB3B;border-radius:5px}.download-link:hover{background:rgba(255,215,0,.1)}@media (max-width:992px){.carta-header h2{font-size:1.8rem}}@media (max-width:768px){#backFromCartaBtn,.download-btn{width:100%;max-width:300px}.carta-header{padding:15px}.carta-header h2{font-size:1.6rem}.carta-actions{flex-direction:column;align-items:center}.download-btn{justify-content:center}}.carta-active .columns-container{opacity:.2;filter:blur(2px);transition:.3s}.hamburger-btn{display:none;position:fixed;top:20px;right:20px;background:0 0;border:1px solid #444;color: #FFEB3B;width:50px;height:50px;border-radius:8px;cursor:pointer;z-index:1000;flex-direction:column;justify-content:center;align-items:center;gap:5px;transition:.3s}.nav-mobile-container,.nav-overlay{display:none;position:fixed;top:0;height:100%}.hamburger-btn span{display:block;width:25px;height:3px;background:#FFEB3B;border-radius:2px;transition:.3s}.hamburger-btn.active{background:rgba(255, 235, 59,.1)}.hamburger-btn.active span:first-child{transform:rotate(45deg) translate(6px,6px)}.hamburger-btn.active span:nth-child(2){opacity:0}.hamburger-btn.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.nav-overlay{left:0;width:100%;background:rgba(0,0,0,.9);z-index:999;opacity:0;transition:opacity .3s;pointer-events:none}.nav-overlay.active{opacity:1;pointer-events:auto}.nav-mobile-container{right:-100%;width:80%;max-width:300px;background:var(--card-bg);z-index:1000;flex-direction:column;padding:80px 20px 20px;overflow-y:auto;transition:right .3s;border-left:1px solid #333;box-shadow:-5px 0 15px rgba(0,0,0,.5)}.nav-mobile-container.active{right:0}.nav-mobile-header{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #444}.nav-mobile-header h3{color:var(--neon-main);font-size:1.2rem;text-shadow:0 0 10px var(--neon-main)}.nav-mobile-buttons{display:flex;flex-direction:column;gap:10px}.nav-mobile-buttons .filter-btn{width:100%;text-align:left;padding:15px;border-radius:8px;background:rgba(255, 235, 59,.05);border:1px solid #333;margin:0}.nav-mobile-buttons .filter-btn.active{background:rgba(255, 235, 59,.1);border-color:var(--neon-main);box-shadow:0 0 10px var(--neon-main),inset 0 0 10px rgba(255, 235, 59,.1);position:relative;padding-left:35px}.nav-mobile-buttons .filter-btn.active::before{content:"▶";position:absolute;left:10px;color:var(--neon-main);font-size:.8rem}@media (min-width:768px) and (max-width:991px){.category-nav{flex-wrap:nowrap;overflow-x:auto;padding-bottom:10px;justify-content:flex-start;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#444 transparent}.category-nav::-webkit-scrollbar{height:6px}.category-nav::-webkit-scrollbar-track{background:0 0}.category-nav::-webkit-scrollbar-thumb{background:#444;border-radius:3px}.category-nav::-webkit-scrollbar-thumb:hover{background:#555}.filter-btn{flex-shrink:0;padding:8px 15px;font-size:.85rem}.filter-btn:nth-last-child(-n+3){display:none}}@media (max-width:767px){.hamburger-btn,.nav-mobile-container{display:flex}.category-nav{display:none}.nav-overlay{display:block}.menu-container{margin-top:20px}.columns-container{top:180px}}@media (max-width:575px){.nav-mobile-container{width:85%}.hamburger-btn{top:15px;right:15px;width:45px;height:45px}.nav-mobile-header{margin-bottom:20px;padding-bottom:15px}.nav-mobile-header h3{font-size:1.1rem}.nav-mobile-buttons .filter-btn{padding:12px;font-size:.85rem}}@media (max-width:375px){.nav-mobile-container{width:90%;padding:70px 15px 15px}.hamburger-btn{top:10px;right:10px;width:40px;height:40px}.hamburger-btn span{width:20px;height:2px}.nav-mobile-buttons .filter-btn{padding:10px;font-size:.8rem}}body.menu-open .columns-container{opacity:.3;filter:blur(2px);transition:.3s}

/* ===== BOTÓN DE INGREDIENTES (dentro del modal de foto) ===== */
.ingredients-btn {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: linear-gradient(135deg, rgba(255, 235, 59, 0.12) 0%, rgba(255, 235, 59, 0.06) 100%);
  border: 1px solid rgba(255, 235, 59, 0.35);
  color: #FFEB3B;
  padding: 8px 18px;
  border-radius: 25px;
  font-size: 0.85rem;
  font-weight: 600;
  font-family: 'Helvetica Neue', sans-serif;
  cursor: pointer;
  transition: all 0.3s ease;
  margin: 8px auto 12px;
  text-shadow: 0 0 5px rgba(255, 235, 59, 0.5);
  box-shadow: 0 0 8px rgba(255, 235, 59, 0.08);
  letter-spacing: 0.5px;
  width: fit-content;
  min-width: 130px;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.ingredients-btn i {
  font-size: 0.9rem;
  transition: transform 0.3s ease;
}

.ingredients-btn:hover {
  background: linear-gradient(135deg, rgba(255, 235, 59, 0.22) 0%, rgba(255, 235, 59, 0.12) 100%);
  border-color: #FFEB3B;
  box-shadow: 0 0 14px rgba(255, 235, 59, 0.3), inset 0 0 8px rgba(255, 235, 59, 0.1);
  transform: scale(1.04);
}

.ingredients-btn:hover i {
  transform: rotate(15deg);
}

.ingredients-btn:active {
  transform: scale(0.96);
}

/* ===== MODAL DE INGREDIENTES ===== */
.ingredients-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.88);
  z-index: 2000;
  align-items: center;
  justify-content: center;
  animation: fadeIn 0.25s ease;
  padding: 20px;
}

.ingredients-modal.active {
  display: flex;
}

.ingredients-modal-content {
  position: relative;
  background: #1a1a1a;
  border-radius: 16px;
  border: 2px solid rgba(255, 235, 59, 0.5);
  box-shadow: 0 0 30px rgba(255, 235, 59, 0.15), 0 10px 40px rgba(0, 0, 0, 0.5);
  width: 100%;
  max-width: 480px;
  max-height: 85vh;
  animation: modalAppear 0.35s ease;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.ingredients-modal-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 22px 24px 16px;
  border-bottom: 1px solid rgba(255, 235, 59, 0.15);
  background: rgba(255, 235, 59, 0.03);
}

.ingredients-modal-header i {
  font-size: 1.4rem;
  color: #FFEB3B;
  text-shadow: 0 0 10px rgba(255, 235, 59, 0.5);
}

.ingredients-modal-header h3 {
  color: #FFEB3B;
  font-size: 1.3rem;
  font-weight: 700;
  font-family: 'Orbitron', sans-serif;
  text-shadow: 0 0 10px rgba(255, 235, 59, 0.4);
  margin: 0;
  line-height: 1.3;
  word-break: break-word;
}

.ingredients-modal-body {
  padding: 20px 24px 24px;
  overflow-y: auto;
  flex: 1;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 235, 59, 0.3) transparent;
}

.ingredients-modal-body::-webkit-scrollbar {
  width: 5px;
}

.ingredients-modal-body::-webkit-scrollbar-track {
  background: transparent;
}

.ingredients-modal-body::-webkit-scrollbar-thumb {
  background: rgba(255, 235, 59, 0.3);
  border-radius: 3px;
}

.ingredients-modal-body ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 16px;
}

.ingredients-modal-body li {
  color: #e0e0e0;
  font-size: 0.95rem;
  font-family: 'Helvetica Neue', sans-serif;
  padding: 10px 14px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  gap: 10px;
  transition: all 0.25s ease;
  line-height: 1.4;
}

.ingredients-modal-body li::before {
  content: "•";
  color: #FFEB3B;
  font-size: 1.4rem;
  font-weight: bold;
  flex-shrink: 0;
  line-height: 1;
  text-shadow: 0 0 6px rgba(255, 235, 59, 0.6);
}

.ingredients-modal-body li:hover {
  background: rgba(255, 235, 59, 0.08);
  border-color: rgba(255, 235, 59, 0.2);
  transform: translateX(4px);
}

.ingredients-close-modal {
  position: absolute;
  top: 14px;
  right: 14px;
  background: rgba(0, 0, 0, 0.6);
  color: #FFEB3B;
  border: 1px solid rgba(255, 235, 59, 0.2);
  width: 34px;
  height: 34px;
  border-radius: 50%;
  font-size: 1.3rem;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
  z-index: 2001;
  line-height: 1;
}

.ingredients-close-modal:hover {
  background: rgba(255, 60, 60, 0.8);
  transform: rotate(90deg);
  border-color: transparent;
}

/* ===== RESPONSIVE: Ajustes del modal de ingredientes ===== */

/* Tablets verticales y pantallas medianas (576px - 767px) */
@media (max-width: 767px) {
  .ingredients-btn {
    font-size: 0.8rem;
    padding: 7px 15px;
    min-width: 115px;
  }

  .ingredients-btn i {
    font-size: 0.85rem;
  }

  .ingredients-modal-content {
    max-width: 92%;
    max-height: 80vh;
    border-radius: 14px;
  }

  .ingredients-modal-header {
    padding: 18px 20px 14px;
  }

  .ingredients-modal-header i {
    font-size: 1.2rem;
  }

  .ingredients-modal-header h3 {
    font-size: 1.15rem;
  }

  .ingredients-modal-body {
    padding: 16px 20px 20px;
  }

  .ingredients-modal-body ul {
    grid-template-columns: 1fr 1fr;
    gap: 8px 12px;
  }

  .ingredients-modal-body li {
    font-size: 0.88rem;
    padding: 8px 12px;
  }
}

/* Móviles grandes (480px - 575px) */
@media (max-width: 575px) {
  .ingredients-btn {
    font-size: 0.75rem;
    padding: 6px 12px;
    min-width: 100px;
    gap: 5px;
    margin: 6px auto 10px;
  }

  .ingredients-btn i {
    font-size: 0.8rem;
  }

  .ingredients-modal-content {
    max-width: 95%;
    max-height: 75vh;
    border-radius: 12px;
  }

  .ingredients-modal-header {
    padding: 16px 16px 12px;
    gap: 10px;
  }

  .ingredients-modal-header i {
    font-size: 1.1rem;
  }

  .ingredients-modal-header h3 {
    font-size: 1.05rem;
  }

  .ingredients-modal-body {
    padding: 14px 16px 18px;
  }

  .ingredients-modal-body ul {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .ingredients-modal-body li {
    font-size: 0.85rem;
    padding: 8px 12px;
    border-radius: 8px;
  }

  .ingredients-close-modal {
    width: 30px;
    height: 30px;
    font-size: 1.1rem;
    top: 12px;
    right: 12px;
  }
}

/* Móviles pequeños (375px - 479px) */
@media (max-width: 479px) {
  .ingredients-btn {
    font-size: 0.72rem;
    padding: 5px 10px;
    min-width: 90px;
    gap: 4px;
    border-radius: 20px;
    margin: 5px auto 8px;
  }

  .ingredients-btn i {
    font-size: 0.75rem;
  }

  .ingredients-modal {
    padding: 12px;
  }

  .ingredients-modal-content {
    max-width: 98%;
    max-height: 72vh;
    border-radius: 10px;
    border-width: 1.5px;
  }

  .ingredients-modal-header {
    padding: 14px 14px 10px;
    gap: 8px;
  }

  .ingredients-modal-header i {
    font-size: 1rem;
  }

  .ingredients-modal-header h3 {
    font-size: 0.95rem;
  }

  .ingredients-modal-body {
    padding: 12px 14px 16px;
  }

  .ingredients-modal-body ul {
    gap: 6px;
  }

  .ingredients-modal-body li {
    font-size: 0.82rem;
    padding: 7px 10px;
    border-radius: 7px;
    gap: 8px;
  }

  .ingredients-modal-body li::before {
    font-size: 1.2rem;
  }

  .ingredients-close-modal {
    width: 28px;
    height: 28px;
    font-size: 1rem;
    top: 10px;
    right: 10px;
  }
}

/* Móviles muy pequeños (290px - 374px) */
@media (max-width: 374px) {
  .ingredients-btn {
    font-size: 0.68rem;
    padding: 4px 8px;
    min-width: 78px;
    gap: 3px;
    border-radius: 18px;
    margin: 4px auto 6px;
    letter-spacing: 0;
  }

  .ingredients-btn i {
    font-size: 0.7rem;
  }

  .ingredients-modal {
    padding: 8px;
  }

  .ingredients-modal-content {
    max-width: 99%;
    max-height: 70vh;
    border-radius: 8px;
    border-width: 1px;
  }

  .ingredients-modal-header {
    padding: 12px 12px 8px;
    gap: 6px;
  }

  .ingredients-modal-header i {
    font-size: 0.9rem;
  }

  .ingredients-modal-header h3 {
    font-size: 0.85rem;
  }

  .ingredients-modal-body {
    padding: 10px 12px 14px;
  }

  .ingredients-modal-body ul {
    gap: 5px;
  }

  .ingredients-modal-body li {
    font-size: 0.78rem;
    padding: 6px 8px;
    border-radius: 6px;
    gap: 6px;
  }

  .ingredients-modal-body li::before {
    font-size: 1rem;
  }

  .ingredients-close-modal {
    width: 24px;
    height: 24px;
    font-size: 0.9rem;
    top: 8px;
    right: 8px;
  }
}

/* Pantallas muy grandes (1200px+) */
@media (min-width: 1200px) {
  .ingredients-btn {
    font-size: 0.9rem;
    padding: 10px 22px;
    min-width: 140px;
  }

  .ingredients-modal-content {
    max-width: 520px;
  }

  .ingredients-modal-header h3 {
    font-size: 1.4rem;
  }

  .ingredients-modal-body ul {
    grid-template-columns: 1fr 1fr;
    gap: 12px 20px;
  }

  .ingredients-modal-body li {
    font-size: 1rem;
    padding: 12px 16px;
  }
}

/* ===== BANNER HAMBURGUESAS ===== */
.hamburguesas-banner {
  display: flex;
  align-items: center;
  background: linear-gradient(135deg, rgba(255, 235, 59, 0.08) 0%, rgba(255, 235, 59, 0.02) 100%);
  border: 1px solid rgba(255, 235, 59, 0.2);
  border-radius: 16px;
  padding: 18px 24px;
  margin: 24px 0 60px 0;
  position: relative;
  overflow: visible;
  min-height: 70px;
}

.banner-text {
  font-family: 'Helvetica Neue', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: #FFEB3B;
  text-shadow: 0 0 10px rgba(255, 235, 59, 0.4);
  flex: 1;
  line-height: 1.3;
  position: relative;
  z-index: 2;
  padding-right: 180px;
}

.banner-papas {
  position: absolute;
  right: -10px;
  top: 50%;
  width: 160px;
  height: auto;
  transform: translateY(-50%) rotate(15deg);
  filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.5));
  z-index: 1;
  pointer-events: none;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.hamburguesas-banner:hover .banner-papas {
  transform: translateY(-50%) rotate(10deg) scale(1.15) translateX(12px);
}

@media (min-width: 600px) {
  .hamburguesas-banner {
    padding: 20px 32px;
    margin: 28px 0 80px 0;
    min-height: 80px;
  }
  .banner-text {
    font-size: 1.3rem;
    padding-right: 220px;
  }
  .banner-papas {
    width: 200px;
    right: -15px;
  }
}

@media (min-width: 992px) {
  .hamburguesas-banner {
    padding: 24px 40px;
    margin: 32px 0 100px 0;
  }
  .banner-text {
    font-size: 1.5rem;
    padding-right: 280px;
  }
  .banner-papas {
    width: 250px;
    right: -20px;
  }
}

@media (max-width: 599px) {
  .hamburguesas-banner {
    padding: 16px 18px;
    margin: 18px 0 50px 0;
    min-height: 64px;
  }
  .banner-text {
    font-size: 1rem;
    padding-right: 130px;
  }
  .banner-papas {
    width: 120px;
    right: -6px;
  }
}

@media (max-width: 379px) {
  .hamburguesas-banner {
    padding: 12px 12px;
    margin: 14px 0 46px 0;
    min-height: 56px;
  }
  .banner-text {
    font-size: 0.82rem;
    padding-right: 85px;
  }
  .banner-papas {
    width: 80px;
    right: -2px;
  }
}

@media (max-width: 290px) {
  .hamburguesas-banner {
    padding: 10px 8px;
    margin: 12px 0 42px 0;
    min-height: 48px;
  }
  .banner-text {
    font-size: 0.7rem;
    padding-right: 68px;
    line-height: 1.2;
  }
  .banner-papas {
    width: 64px;
    right: 0;
    transform: translateY(-50%) rotate(12deg);
  }
}

/* ===== BANNER HAMBURGUESAS: ancho completo en grilla móvil ===== */
@media (max-width: 767px) {
  .category-group-items .hamburguesas-banner {
    grid-column: 1 / -1;
    width: 100%;
  }
}

@media (max-width: 480px) {
  .category-group-header h2 {
    font-size: 1.3rem !important;
    line-height: 1.2;
  }
}

/* ===== CARDS DE PRODUCTO CON IMAGEN ===== */
.menu-item {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  padding: 0;
  overflow: hidden;
  text-align: left;
  border-left: 0;
  cursor: pointer;
}

.menu-item:hover {
  transform: scale(1.02);
  box-shadow: 0 5px 15px rgba(0, 243, 255, 0.1);
  border-left: 0;
}

.menu-item-image {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  overflow: hidden;
  background: #000;
  flex-shrink: 0;
}

.menu-item-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.menu-item-image img.burger-fit,
.menu-item-image img.img-fit {
  object-fit: contain;
  object-position: center;
  padding: 12px;
  background: #111;
}

.menu-item-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 16px 20px 20px;
}

.item-info {
  flex: 1;
  padding-right: 0;
  width: 100%;
}

.item-name {
  width: 100%;
  font-size: 1.25rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
  word-break: break-word;
  margin-left: 0;
  padding-left: 0;
  text-align: left;
}

.item-desc {
  overflow-wrap: anywhere;
  word-break: break-word;
  margin-top: 6px;
}

.item-price-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 10px;
  margin-top: 12px;
}

.item-price {
  flex-shrink: 0;
  white-space: nowrap;
  font-size: 1.25rem;
  margin-top: 0;
}

.view-photo-btn {
  flex-shrink: 0;
  white-space: nowrap;
  margin-top: 0;
  align-self: center;
}

@media (max-width: 575px) {
  .menu-item {
    padding: 0;
  }
  .menu-item-body {
    padding: 14px 16px 16px;
  }
  .item-price-container {
    margin-top: 10px;
  }
  .item-price {
    font-size: 1.15rem;
  }
  .view-photo-btn {
    padding: 6px 12px;
    font-size: 0.75rem;
  }
}

@media (max-width: 375px) {
  .menu-item-body {
    padding: 12px 12px 14px;
  }
  .item-name {
    font-size: 1.1rem;
  }
  .item-price {
    font-size: 1.1rem;
  }
}

/* ===== BOTONES DE CATEGORÍA: TARJETAS CUADRADAS CON IMAGEN ===== */
.category-nav .filter-btn {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  width: 150px;
  height: 150px;
  flex-shrink: 0;
  padding: 0;
  border-radius: 14px;
  overflow: hidden;
  background-color: #1a1a1a;
  color: #fff;
  font-weight: 600;
  font-size: 0.8rem;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.55);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.category-nav .filter-btn .filter-btn-img {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.category-nav .filter-btn .filter-btn-label {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  padding: 6px 4px;
  text-align: center;
  white-space: normal;
  font-size: 0.85rem;
  font-weight: 900;
  letter-spacing: 0.3px;
  color: #fff;
  background: rgba(0, 0, 0, 0.78);
  border-top: 1px solid rgba(255, 235, 59, 0.25);
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.9);
}

.category-nav .filter-btn.active,
.category-nav .filter-btn:hover {
  border-color: var(--neon-main);
  box-shadow: 0 0 16px var(--neon-main), 0 4px 14px rgba(0, 0, 0, 0.55);
  transform: translateY(-3px);
}

.filter-btn[data-category="all"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="all"] .filter-btn-img {
  background-image: url('../assets/navbar/todos_productos_amici.jpg');
}

.filter-btn[data-category="Pizzas"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="Pizzas"] .filter-btn-img {
  background-image: url('../assets/navbar/pizzas.jpg');
}

.filter-btn[data-category="Hamburguesas"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="Hamburguesas"] .filter-btn-img {
  background-image: url('../assets/navbar/hamurguesas.jpg');
}

.filter-btn[data-category="Sandwiches"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="Sandwiches"] .filter-btn-img {
  background-image: url('../assets/navbar/sandwiches.jpg');
}

.filter-btn[data-category="Empanadas"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="Empanadas"] .filter-btn-img {
  background-image: url('../assets/navbar/empanadas.jpg');
}

.filter-btn[data-category="Papas"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="Papas"] .filter-btn-img {
  background-image: url('../assets/navbar/papas.jpg');
}

.filter-btn[data-category="Tortilla"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="Tortilla"] .filter-btn-img {
  background-image: url('../assets/navbar/tortilla.jpg');
}

.filter-btn[data-category="Helados"] .filter-btn-img,
.nav-mobile-buttons .filter-btn[data-category="Helados"] .filter-btn-img {
  background-image: url('../assets/navbar/helados.jpg');
}

.category-nav .filter-btn[data-category="all"] .filter-btn-img {
  background-size: contain;
  background-position: center;
  background-color: #1a1a1a;
}

.category-nav .filter-btn:nth-last-child(-n+3) {
  display: flex;
}

@media (min-width: 768px) and (max-width: 991px) {
  .category-nav .filter-btn {
    width: 135px;
    height: 135px;
  }
}

@media (max-width: 991px) {
  .category-nav {
    gap: 12px;
    padding: 12px 14px;
  }
}

@media (max-width: 767px) {
  .hamburger-btn,
  .nav-mobile-container,
  .nav-overlay {
    display: none;
  }

  .category-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    padding: 12px;
    margin-bottom: 20px;
  }

  .category-nav .filter-btn {
    flex: 0 0 calc(50% - 6px);
    width: calc(50% - 6px);
    height: auto;
    aspect-ratio: 1 / 1;
  }

  .menu-container {
    margin-top: 10px;
  }

  .category-group-items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .category-group-items .menu-item {
    margin-bottom: 0;
  }
}

/* ===== MENÚ MÓVIL (drawer): fichas con miniatura + texto ===== */
.nav-mobile-buttons .filter-btn {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  width: 100%;
  height: 68px;
  padding: 8px 12px;
  border-radius: 10px;
  background: rgba(255, 235, 59, 0.05);
  border: 1px solid #333;
  overflow: hidden;
  position: relative;
}

.nav-mobile-buttons .filter-btn .filter-btn-img {
  position: static;
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  border-radius: 8px;
}

.nav-mobile-buttons .filter-btn .filter-btn-label {
  position: static;
  flex: 1;
  width: auto;
  padding: 0;
  text-align: left;
  white-space: normal;
  font-size: 0.85rem;
  color: var(--text-color);
  background: none;
  border-top: none;
  text-shadow: none;
}

.nav-mobile-buttons .filter-btn.active::before {
  left: auto;
  right: 14px;
}

/* ===== HERO SLIDER NEÓN ===== */
.hero-slider {
  position: relative;
  width: min(92%, 1100px);
  height: clamp(180px, 26vw, 320px);
  margin: 0 auto 24px;
  border-radius: 18px;
  overflow: hidden;
  border: 2px solid rgba(255, 235, 59, 0.55);
  box-shadow: 0 0 18px rgba(255, 235, 59, 0.5), 0 0 45px rgba(255, 235, 59, 0.3), 0 0 90px rgba(255, 235, 59, 0.15), 0 10px 30px rgba(0, 0, 0, 0.6);
  animation: heroGlowPulse 3s ease-in-out infinite;
  z-index: 5;
}

.hero-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.1s ease;
}

.hero-slide.active {
  opacity: 1;
}

.hero-slider-glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 235, 59, 0.12) 0%, transparent 40%, transparent 60%, rgba(255, 235, 59, 0.12) 100%);
  box-shadow: inset 0 0 30px rgba(255, 235, 59, 0.35), inset 0 0 80px rgba(0, 0, 0, 0.5);
  z-index: 1;
}

.hero-slider-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 12px;
  background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.65) 100%);
}

.hero-slider-title {
  font-family: 'Orbitron', sans-serif;
  font-weight: 900;
  font-size: clamp(1rem, 3vw, 1.6rem);
  letter-spacing: 3px;
  color: #fff;
  text-shadow: 0 0 8px #FFEB3B, 0 0 20px #FFEB3B, 0 0 40px rgba(255, 235, 59, 0.9);
  animation: heroTitleFlicker 2.5s infinite alternate;
}

.hero-slider-subtitle {
  font-size: clamp(0.75rem, 2vw, 1rem);
  letter-spacing: 2px;
  color: #FFEB3B;
  text-shadow: 0 0 6px rgba(255, 235, 59, 0.8);
}

.hero-slider-dots {
  position: absolute;
  top: 10px;
  right: 14px;
  z-index: 3;
  display: flex;
  gap: 7px;
}

.hero-slider-dots .dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
  border: 1px solid rgba(255, 235, 59, 0.7);
  cursor: pointer;
  transition: all 0.3s ease;
}

.hero-slider-dots .dot.active {
  background: #FFEB3B;
  box-shadow: 0 0 8px #FFEB3B, 0 0 16px rgba(255, 235, 59, 0.8);
  transform: scale(1.25);
}

@keyframes heroGlowPulse {
  0%, 100% {
    box-shadow: 0 0 18px rgba(255, 235, 59, 0.5), 0 0 45px rgba(255, 235, 59, 0.3), 0 0 90px rgba(255, 235, 59, 0.15), 0 10px 30px rgba(0, 0, 0, 0.6);
  }
  50% {
    box-shadow: 0 0 28px rgba(255, 235, 59, 0.75), 0 0 70px rgba(255, 235, 59, 0.45), 0 0 120px rgba(255, 235, 59, 0.25), 0 10px 30px rgba(0, 0, 0, 0.6);
  }
}

@keyframes heroTitleFlicker {
  0% { opacity: 1; }
  50% { opacity: 0.85; }
  100% { opacity: 1; }
}
