/* Visual direction: warm paper for Wi-Fi/menu, ink and pumpkin for Halloween.
   Motion: staged hero entrance, section reveals, clear hover transitions. */
html:has(body.qr-page){scroll-behavior:auto;overflow-x:clip}
.qr-page{overflow-x:clip;--qr-ink:#25231d;--qr-paper:#faf6ec;--qr-accent:#994321;background:var(--qr-paper);color:var(--qr-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.qr-page *{box-sizing:border-box}.qr-page a{color:inherit}.qr-page :focus-visible{outline:3px solid #b85d2a;outline-offset:5px}.qr-page [hidden]{display:none!important}
.qr-skip{position:fixed;top:-100px;left:16px;background:#fff;color:#171717!important;padding:12px;z-index:9999}.qr-skip:focus{top:12px}
.qr-nav{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 5%;min-height:98px;position:relative;z-index:2}
.qr-brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:750;font-size:17px;line-height:1.2}.qr-brand-mark{display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;width:43px;height:43px;font-family:Georgia,serif;font-size:30px;font-style:italic}.qr-brand small{display:block;text-transform:uppercase;font-size:9px;letter-spacing:1.7px;font-weight:500;margin-top:5px}.qr-back{font-size:13px;text-decoration:none;display:flex;gap:20px;align-items:center}.qr-back span{font-size:23px}
.qr-eyebrow{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:2px}.qr-button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:52px;padding:15px 24px;border-radius:3px;background:var(--qr-ink);color:var(--qr-paper)!important;text-decoration:none;font-size:14px;font-weight:650;transition:transform .2s,background .2s}.qr-button:hover{transform:translateY(-3px);background:#513629}
.qr-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;max-width:1440px;margin:auto;padding:30px 5%;border-top:1px solid #25231d26;font-size:11px}.qr-footer-brand{font-weight:750;text-decoration:none}.qr-footer nav{display:flex;flex-wrap:wrap;gap:20px}.qr-footer nav a{text-underline-offset:4px}.qr-empty{padding:70px 20px;text-align:center}.qr-empty>span{display:block;color:var(--qr-accent);font-size:60px;line-height:1;margin-bottom:25px}.qr-empty h3{font:normal 32px Georgia,serif}.qr-empty p{color:#635b51;max-width:420px;margin:15px auto}.qr-empty a{font-size:14px;text-underline-offset:5px}
.wifi-main{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:calc(100svh - 195px);padding:20px 5% 65px;gap:10px}.wifi-copy{position:relative;z-index:1}.wifi-copy h1{font:normal clamp(44px,5.4vw,82px)/1.05 Georgia,serif;letter-spacing:-3px;margin:28px 0}.wifi-copy h1 em{color:var(--qr-accent)}.wifi-lead{font-size:17px;max-width:360px;line-height:1.7;margin-bottom:3px}.wifi-punchline{font-size:17px;font-weight:650}.wifi-reveal{display:flex;gap:13px;align-items:flex-start;max-width:355px;border-top:1px solid #25231d2e;margin-top:30px;padding-top:20px}.wifi-reveal>span{color:var(--qr-accent);font-size:23px}.wifi-reveal p{font-size:13px;line-height:1.7;margin:0 0 25px}.wifi-small{font-size:11px;color:#655d50;margin:15px 0 0}.wifi-figure{margin:0;transform:rotate(-3deg);animation:qr-enter .8s both}.wifi-figure img{width:100%;height:auto;mix-blend-mode:multiply}.wifi-figure figcaption{font-size:10px;text-transform:uppercase;letter-spacing:2px;text-align:center;margin-top:-10px}.wifi-copy>*{animation:qr-enter .7s both}.wifi-copy h1{animation-delay:.1s}.wifi-copy .wifi-lead{animation-delay:.2s}
.menu-main{max-width:1200px;padding:0 5% 70px;margin:auto}.menu-hero{padding:65px 0 70px;position:relative;border-bottom:1px solid #25231d33}.menu-hero h1{font:normal clamp(54px,7vw,94px)/1.02 Georgia,serif;letter-spacing:-4px;margin:22px 0}.menu-hero h1 em{color:var(--qr-accent)}.menu-hero>p:last-of-type{font-size:15px;color:#5a5146}.menu-doodle{position:absolute;right:0;top:75px;font-size:170px;line-height:1;color:#b5552a;transform:rotate(12deg)}.menu-section-label{display:flex;justify-content:space-between;align-items:center;padding:35px 0 25px}.menu-section-label h2{font-size:13px;text-transform:uppercase;letter-spacing:1.5px;margin:0}.menu-section-label>span{font-size:12px;color:#655d50}.menu-all{display:inline-block;margin-bottom:25px;font-size:13px}.menu-event{display:grid;grid-template-columns:1fr 1.3fr;gap:50px;border-top:1px solid #25231d29;padding:40px 0}.menu-event>header h3{font:normal 31px/1.15 Georgia,serif;margin:15px 0 20px}.menu-event>header>a{font-size:12px;text-underline-offset:5px}.menu-files{display:grid;gap:24px}.menu-file{border-left:2px solid #b5552a;padding-left:24px}.menu-file h4{font-size:17px;font-weight:700;margin:0 0 8px}.menu-file p{font-size:13px;line-height:1.7}.menu-file .qr-button{width:100%}.menu-file .qr-button>span{font-size:11px;font-weight:400}.menu-preview{display:block;margin:18px 0;text-decoration:none}.menu-preview img{width:100%;max-height:400px;object-fit:contain;object-position:left;background:#fff}.menu-preview>span{display:block;font-size:11px;margin-top:7px}.menu-note{margin-top:45px;font-size:12px;color:#655d50;border-top:1px solid #25231d29;padding-top:24px}
@keyframes qr-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){.qr-nav{padding:20px 6%;min-height:84px}.qr-back{font-size:11px;gap:8px}.qr-brand{font-size:15px}.qr-brand-mark{width:36px;height:36px;font-size:25px}.qr-footer{padding:25px 6%;gap:15px}.qr-footer>span{display:none}.wifi-main{padding:20px 6% 50px;grid-template-columns:1fr}.wifi-copy{order:2}.wifi-figure{max-width:300px;margin:0 auto 25px;order:1}.wifi-figure figcaption{font-size:8px}.wifi-copy h1{letter-spacing:-2px;margin:15px 0 20px}.wifi-copy>.qr-eyebrow{font-size:10px}.wifi-main .wifi-copy h1{font-size:47px}.wifi-lead,.wifi-punchline{font-size:15px}.menu-main{padding:0 6% 40px}.menu-hero{padding:40px 0}.menu-hero h1{font-size:53px;letter-spacing:-2px}.menu-doodle{font-size:70px;right:0;top:26px}.menu-hero>.qr-eyebrow{max-width:200px;font-size:10px}.menu-event{grid-template-columns:1fr;gap:25px}.menu-event>header h3{font-size:28px}.menu-file{padding-left:17px}.menu-section-label h2{font-size:11px}}
@media(prefers-reduced-motion:reduce){.qr-page *, .qr-page *::before,.qr-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Menu eventi: tipografia e colori della Pro Loco, navigazione condivisa. */
.menu-site-page{--qr-ink:#0f172a;--qr-paper:#f8fafc;--qr-accent:#084ec2;background:#f8fafc}
.menu-site-page .menu-hero h1{font-family:inherit;font-weight:800;letter-spacing:-3px;font-size:clamp(48px,6vw,82px)}
.menu-site-page .menu-hero h1 em{font-style:normal;color:#084ec2}
.menu-site-page .menu-hero>.qr-eyebrow{color:#084ec2}
.menu-site-page .menu-doodle{color:#ffc83c}
.menu-site-page .menu-file{border-color:#0d6efd}
.menu-site-page .qr-button{background:#0b5ed7;color:#fff!important}
.menu-site-page .qr-button:hover{background:#084ec2}
.menu-site-page .slx-footer{color:var(--ink)}
@media(max-width:700px){.menu-site-page .menu-hero h1{font-size:clamp(35px,10.8vw,44px);letter-spacing:-1.4px}}
