.carousel-3d-container{perspective:1200px;width:100%;height:400px;margin:0 auto 5rem;position:relative;overflow:visible;display:flex;align-items:center;justify-content:center;}.carousel-3d-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;display:flex;align-items:center;justify-content:center;}.carousel-3d-item{position:absolute;height:320px;width:auto;max-width:80vw;background:transparent;border-radius:12px;transition:all 0.7s cubic-bezier(0.25,0.8,0.25,1);cursor:pointer;opacity:0;user-select:none;display:flex;justify-content:center;align-items:center;}.carousel-3d-item img{height:100%;width:auto;max-width:100%;border-radius:12px;box-shadow:0 15px 35px rgba(0,0,0,0.6);border:2px solid rgba(212,175,55,0.2);object-fit:contain;transition:transform 0.7s,box-shadow 0.7s,border-color 0.7s;}.carousel-3d-item.active{transform:translate3d(0,0,100px) scale(1.1);opacity:1;z-index:5;}.carousel-3d-item.active img{transform:scale(1.05);border-color:var(--accent-gold);box-shadow:0 25px 60px rgba(212,175,55,0.4);}.carousel-3d-item.prev{transform:translate3d(-180px,0,0) scale(0.8) rotateY(35deg);opacity:0.6;z-index:2;filter:grayscale(40%) blur(1px);}.carousel-3d-item.next{transform:translate3d(180px,0,0) scale(0.8) rotateY(-35deg);opacity:0.6;z-index:2;filter:grayscale(40%) blur(1px);}.carousel-3d-item.hidden-left{transform:translate3d(-300px,0,-100px) scale(0.6) rotateY(45deg);opacity:0;z-index:1;}.carousel-3d-item.hidden-right{transform:translate3d(300px,0,-100px) scale(0.6) rotateY(-45deg);opacity:0;z-index:1;}.carousel-3d-dots{position:absolute;bottom:-70px;left:50%;transform:translateX(-50%);display:flex;gap:0px;z-index:10;}.carousel-3d-dot{width:44px;height:44px;padding:0;margin:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;}.carousel-3d-dot::after{content:'';width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,0.6);transition:all 0.3s;}.carousel-3d-dot.active::after{background:var(--accent-gold);transform:scale(1.4);box-shadow:0 0 10px var(--accent-gold);}@media (max-width:768px){.carousel-3d-container{height:300px;}.carousel-3d-item{width:auto;height:auto;}.carousel-3d-item img{max-height:280px;}.carousel-3d-item.prev{transform:translate3d(-100px,0,0) scale(0.7) rotateY(25deg);opacity:0.4;}.carousel-3d-item.next{transform:translate3d(100px,0,0) scale(0.7) rotateY(-25deg);opacity:0.4;}.carousel-3d-item.hidden-left{transform:translate3d(-150px,0,-50px) scale(0.6) rotateY(45deg);}.carousel-3d-item.hidden-right{transform:translate3d(150px,0,-50px) scale(0.6) rotateY(-45deg);}}@media (max-width:480px){.carousel-3d-container{perspective:800px;}.carousel-3d-item.prev,.carousel-3d-item.next,.carousel-3d-item.hidden-left,.carousel-3d-item.hidden-right{display:none;}.carousel-3d-item.active{transform:translate3d(0,0,0) scale(1.05);}}.menu-category{margin-bottom:6rem;}.menu-category-title{font-size:2.2rem;color:var(--text-main);margin-bottom:3.5rem;text-align:center;font-style:italic;position:relative;display:inline-block;left:50%;transform:translateX(-50%);}.menu-category-title::after{content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:40px;height:2px;background:var(--accent-gold);transition:width 0.4s ease;}.menu-category:hover .menu-category-title::after{width:100px;}.menu-grid{display:flex;flex-wrap:wrap;gap:2.5rem 4rem;max-width:1100px;margin:0 auto;}.line-item{display:flex;flex-direction:column;padding:1.2rem 1.5rem;border-radius:8px;transition:all 0.4s;position:relative;border:1px solid transparent;flex:1 1 350px;}.line-item::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px;background:var(--bg-card);opacity:0;z-index:-1;transition:opacity 0.4s ease;}.line-item:hover{transform:translateY(-3px) translateX(5px);border-color:var(--border-highlight);}.line-item:hover::before{opacity:1;}.item-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:0.5rem;}.item-title{font-family:var(--font-heading);font-size:1.3rem;color:var(--text-main);font-weight:500;letter-spacing:0.5px;}.item-dots{flex-grow:1;border-bottom:2px dotted var(--border-color);margin:0 1rem;position:relative;top:-4px;opacity:0.6;}.item-price{font-family:var(--font-body);font-size:1.25rem;font-weight:600;color:var(--accent-gold-hover);min-width:80px;}.item-desc{font-size:1rem;color:var(--text-muted);line-height:1.5;font-weight:300;margin-top:0.4rem;}