/* Pagine delle vie di Napoli (QR sui tavoli). Stesso linguaggio della home: blu, legno, crema. */
:root{--blu:#1d3f9e;--blu2:#122a6b;--legno:#c99a5b;--crema:#faf7f1;--ink:#1c1c1c;--grigio:#666}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--crema);line-height:1.55}
img,svg{display:block}
a{color:var(--blu)}
a:focus-visible{outline:3px solid var(--blu);outline-offset:3px;box-shadow:0 0 0 6px #fff}
.w{max-width:760px;margin:0 auto;padding:0 20px}
nav{position:sticky;top:0;z-index:9;background:#fff;border-bottom:1px solid #e8e2d6}
nav .w{max-width:1080px;display:flex;align-items:center;justify-content:space-between;gap:10px;height:64px}
nav img{height:34px}
nav .r{display:flex;align-items:center;gap:6px}
nav .r a{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;text-decoration:none;color:var(--ink);font-size:14px;letter-spacing:.04em;text-transform:uppercase}
nav .r .cta{background:var(--blu);color:#fff;border-radius:999px;font-weight:600}
.logo{display:inline-flex;align-items:center;min-height:44px}
.vhero{color:#fff;background:var(--blu2)}
.vhero>img{width:100%;aspect-ratio:16/9;max-height:340px;object-fit:cover;background:var(--blu2)}
.vhero .w{padding-top:30px;padding-bottom:40px}
.vhero p{margin:0 0 10px;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.vhero h1{margin:0;font-size:clamp(36px,9vw,60px);line-height:1.08;font-weight:700;letter-spacing:-.01em}
main{padding:36px 0 8px}
.testo{margin:0;padding-left:20px;border-left:4px solid var(--legno);font-size:19px;line-height:1.65}
.azioni{display:grid;gap:12px;margin:34px 0 0}
.btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:12px 22px;border-radius:999px;font-weight:600;font-size:17px;text-decoration:none;background:#fff;color:var(--blu);border:2px solid var(--blu)}
.btn.pri{background:var(--blu);color:#fff}
.btn svg{width:22px;height:22px;flex:none}
@media(min-width:640px){.azioni{grid-template-columns:1fr 1fr}.azioni .pri{grid-column:1/-1}}
h2{font-size:22px;margin:0 0 12px;color:var(--blu2)}
.altre{margin-top:52px}
.altre ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.altre a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid #d9d0be;border-radius:999px;background:#fff;text-decoration:none;color:var(--blu2);font-size:16px}
.altre a:hover{border-color:var(--blu)}
.dove{margin:52px 0 0;padding:26px 0 40px;border-top:1px solid #e8e2d6;display:grid;gap:14px;font-size:17px}
.dove b{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--grigio);margin-bottom:2px}
.orari{border-collapse:collapse;width:100%;font-size:16px}
.orari td{padding:6px 0;border-bottom:1px solid #eee}
.orari td:last-child{text-align:right}
.orari .off{color:#b3392f}
.dove a.ind{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600}
.dove a.ind svg{width:20px;height:20px}
footer{background:var(--blu2);color:#c9d3f0;padding:30px 0;font-size:14px}
footer .w{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 14px}
footer a{color:#fff;display:inline-block;padding:12px 0}
.foto{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:34px 0 0}
.foto img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;background:#e8e2d6}
