@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;700;800;900&display=swap');

/* Vorrei Menu - Base Premium */
body { font-family: "DM Sans", sans-serif; background-color: #f6eddf; color: #25171a; padding: 14px; font-size: 1rem; }
.vm-logo { max-width: 180px; max-height: 140px; border-radius: 12px; }
h1#pageTitle { font-size: 2.45rem; text-align: center; margin-bottom: 24px; color: #681a25; text-transform: uppercase; letter-spacing: 1.2px; }
.prodotti { display: none; padding: 15px; }
#menu .categoria, .categoria, #menu.vm-nav-mode .vm-nav-node-btn { background-color: #681a25; color: #fff8eb; padding: 17px 20px; border-radius: 18px; cursor: pointer; text-transform: uppercase; font-weight: 900; text-align: center; margin-bottom: 10px; font-size: 1.02rem; letter-spacing: .8px; border: 0; box-shadow: 0 5px 14px rgba(74,22,30,.16); transition: background-color .3s ease; }
#menu .categoria:hover, .categoria:hover, #menu.vm-nav-mode .vm-nav-node-btn:hover { background-color: #d23b2d; color: #fff8eb; }
.vm-nav-title { color: #681a25; font-weight: 900; letter-spacing: .8px; }
.vm-nav-back-btn { color: #681a25; border-color: #681a25; border-radius: 18px; }
.card { background-color: #fffaf1; border: 1px solid rgba(104,26,37,.10); border-radius: 20px; margin-bottom: 18px; box-shadow: 0 8px 24px rgba(74,22,30,.14); transition: box-shadow .3s ease; }
.card:hover { box-shadow: 0 14px 34px rgba(74,22,30,.22); }
.card-img-container img { width: 100%; height: 220px; object-fit: cover; cursor: pointer; }
.card-body { padding: 18px; }
.card-title { font-weight: 900; font-size: 1.28rem; color: #681a25; }
.card-text { color: #352326; font-size: 1rem; line-height: 1.55; }
.prezzoscheda { color: #681a25; font-size: 1.05rem; font-weight: 800; }
.btn { border-radius: 14px; padding: 10px 16px; font-size: 1rem; transition: all .3s ease; }
.btn-outline-primary { border-color: #681a25; color: #681a25; }
.btn-outline-primary:hover { background-color: #681a25; color: #fff; }
.btn-outline-danger { border-color: #a82e25; color: #a82e25; }
.btn-outline-danger:hover { background-color: #a82e25; color: #fff; }
.btn-success { background-color: #2f7045; color: #fff; }
.btn-success:hover { background-color: #245937; }
.btn-danger { background-color: #d23b2d; color: #fff; }
.btn-danger:hover { background-color: #a82e25; }
.cart-container { background-color: #fffaf1; }
.cart-toggle-btn { background-color: #d23b2d; color: #fff; width: 60px; height: 60px; border-radius: 18px; font-size: 25px; }
.modal-content { background-color: #fffaf1; color: #25171a; border-radius: 18px; }
#vmMenuFooterZone .vm-footer-card { background-color: #fffaf1 !important; }
#vmMenuFooterZone .vm-locale-name { color: #681a25 !important; font-size: 1.2rem !important; }
#vmMenuFooterZone .vm-locale-address, #vmMenuFooterZone .vm-footer-meta-row, #vmMenuFooterZone .vm-footer-brand-line, #vmMenuFooterZone .vm-brand-link { color: #352326 !important; font-size: 1rem !important; }
#vmMenuFooterZone .vm-footer-pill--soft, #vmMenuFooterZone .vm-footer-text-link { color: #352326 !important; font-size: .82rem !important; }
#vmMenuFooterZone .vm-footer-pill--soft { background-color: #f6eddf !important; border-color: #681a25 !important; border-radius: 12px !important; }
