:root{
  --bg:#f5f0e8; --paper:#fffdf9; --ink:#1d1b18; --muted:#716a62;
  --line:#e5dbcf; --wine:#762d29; --wine2:#5f221f; --chip:#efe6db; --soft:#f3ede4;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.wrap{max-width:820px;margin:0 auto;min-height:100vh;background:var(--paper)}
.header{position:sticky;top:0;z-index:30;background:rgba(255,253,249,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:10px 14px}
.brandrow{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand b{font-family:Georgia,"Times New Roman",serif;font-size:29px}.brand small{display:block;margin-top:4px;color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.actions{display:flex;gap:7px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-weight:760;font-size:13px;padding:9px 13px}.btn.primary{background:var(--wine);border-color:var(--wine);color:#fff}.btn.primary:hover{background:var(--wine2)}.btn.compact{padding:7px 12px;font-size:12px}
.hero{margin:14px;border-radius:24px;overflow:hidden;position:relative;background:#2a2723;min-height:310px}.hero img{width:100%;height:330px;object-fit:cover;object-position:center 47%;display:block;filter:brightness(.68) contrast(1.03)}.herocopy{position:absolute;left:20px;right:20px;bottom:20px;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.25)}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:42px;line-height:1.04;margin:0 0 8px}.hero p{margin:0;max-width:590px;line-height:1.5;font-size:15px}
.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 14px 12px}.quick.quick-four{grid-template-columns:repeat(4,1fr)}.quick a{background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px 7px;text-align:center;text-decoration:none;color:var(--ink);font-weight:760;font-size:13px}
.panel{margin:12px 14px;padding:20px;border:1px solid var(--line);border-radius:22px;background:#fff}.panel h2,section h2{font-family:Georgia,"Times New Roman",serif}.panel h2{font-size:29px;margin:0 0 9px}.panel p{color:var(--muted);line-height:1.55;margin:0 0 13px}.dark{background:#211e1b;color:#fff;border-color:#211e1b}.dark p{color:#e8dfd5}
.contacts .address{display:flex;flex-direction:column;gap:2px}.keep-together{white-space:nowrap}.contact-actions{display:flex;gap:8px;flex-wrap:nowrap}.contact-actions .btn{flex:1;min-width:0;padding-left:8px;padding-right:8px;white-space:nowrap}
.menu-header{padding:7px 12px 6px}.menu-header .brandrow{min-height:34px}.menu-brand{display:flex;align-items:baseline;gap:9px}.menu-header .brand b{font-size:25px}.menu-header .brand small{display:inline;margin:0;font-size:9px;letter-spacing:.16em}
.catbar{display:flex;gap:6px;overflow:auto;padding-top:6px;scrollbar-width:none;scroll-padding-inline:10px}.catbar::-webkit-scrollbar{display:none}.catbar a{white-space:nowrap;background:var(--chip);color:var(--ink);text-decoration:none;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:740;transition:.18s ease}.catbar a.active{background:var(--wine);color:#fff}
section{padding:22px 16px 2px;scroll-margin-top:90px} section h2{font-size:28px;line-height:1.05;margin:0 0 5px}.sectionnote{margin:0 0 11px;color:var(--muted);font-size:13px;line-height:1.45}.subhead{font-family:Georgia,"Times New Roman",serif;font-size:21px;margin:24px 0 4px;padding-bottom:7px;border-bottom:1px solid var(--line)}
.item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:14px 0;border-top:1px solid var(--line)}.item.first,.subhead+.item{border-top:0}.item h3{font-size:17px;line-height:1.24;margin:0 0 5px}.item p{font-size:13.5px;color:var(--muted);line-height:1.46;margin:0}.price{font-size:17px;font-weight:850;white-space:nowrap}.meta{font-size:12px!important;color:#8b8177!important;margin-top:5px!important}.wine .item h3{margin-bottom:4px}.wine .producer{font-weight:700;color:#514a43}.wine .item p{max-width:610px;font-size:13px}
.wine-accordions{display:grid;gap:7px;margin-top:13px}.winegroup{border:1px solid var(--line);border-radius:15px;background:#fff;overflow:hidden}.winegroup summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:11px 14px;font-family:Georgia,"Times New Roman",serif;font-size:19px;font-weight:700}.winegroup summary::-webkit-details-marker{display:none}.winegroup summary small{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--muted);font-size:11px;font-weight:650;letter-spacing:.02em}.winegroup summary:after{content:'+';font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:17px;font-weight:600;color:var(--wine);margin-left:3px}.winegroup[open] summary:after{content:'–'}.winegroup[open] summary{border-bottom:1px solid var(--line)}.wineitems{padding:0 14px 2px}.wineitems .item:first-child{border-top:0}
.housewine{margin:12px 0 0;padding:15px;background:var(--soft);border-radius:18px}.housewine h3{margin:0 0 5px;font-size:18px}.housewine p{margin:0;color:var(--muted);font-size:13px}.houseprices{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:11px}.houseprices div{background:#fff;border:1px solid var(--line);border-radius:13px;padding:9px 6px;text-align:center}.houseprices b{display:block;font-size:16px}.houseprices span{font-size:11px;color:var(--muted)}
.note{margin:18px 14px 8px;padding:14px;background:var(--soft);border-radius:16px;color:#635c54;font-size:12px;line-height:1.5}.footer{padding:24px 14px 34px;text-align:center;color:var(--muted);font-size:12px}
@media(max-width:620px){.quick.quick-four{grid-template-columns:repeat(2,1fr)}.contact-actions .btn{font-size:11.5px}.panel.dark{padding-left:18px;padding-right:18px}}
@media(max-width:520px){.hero{min-height:275px}.hero img{height:285px}.hero h1{font-size:36px}.houseprices{grid-template-columns:repeat(2,1fr)}section{padding-left:14px;padding-right:14px}.item h3{font-size:16.5px}.price{font-size:16.5px}.menu-header .brand b{font-size:24px}.catbar a{font-size:11.5px;padding:6px 9px}.winegroup summary{font-size:18px;padding:10px 12px}.contact-actions{gap:6px}.contact-actions .btn{font-size:11px;padding:8px 5px}}
@media(max-width:390px){.contact-actions{display:grid;grid-template-columns:1fr 1fr 1.25fr}.contact-actions .btn{font-size:10.5px}.contacts .address{font-size:14px}}


/* Disponibilità dinamica */
.item.is-unavailable{opacity:.52}
.item.is-unavailable .price{opacity:.78}
.availability-badge{display:inline-flex;align-items:center;margin-left:8px;vertical-align:2px;padding:3px 7px;border-radius:999px;background:#eee7df;color:#6b625a;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:9px;font-weight:800;line-height:1;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
@media(max-width:520px){.availability-badge{display:table;margin:5px 0 0;font-size:8.5px}}

.variant{margin-top:6px!important;color:#514a43!important;font-size:12.5px!important}
.review-cta{text-align:center;padding-top:22px;padding-bottom:22px}
.review-cta h2{font-size:27px}
.review-cta p{margin-bottom:14px}
.review-cta .btn{min-width:min(100%,280px)}
.contacts .contact-actions{max-width:390px}
@media(max-width:520px){.review-cta h2{font-size:25px}.review-cta .btn{width:100%}}
