/* Widget prenotazioni */
html.sdb-lock{overflow:hidden}
.sdb{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(5,9,11,.74);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:"Inter Tight",system-ui,-apple-system,"Segoe UI",sans-serif;animation:sdb-in .25s ease}
@keyframes sdb-in{from{opacity:0}to{opacity:1}}
.sdb *{box-sizing:border-box}
.sdb-card{width:min(640px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:#f3f3f3;color:#111;border-radius:26px;box-shadow:0 30px 90px rgba(0,0,0,.45);animation:sdb-up .35s cubic-bezier(.16,1,.3,1)}
@keyframes sdb-up{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
.sdb-h{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:26px 28px 18px;border-bottom:1px solid #dedede}
.sdb-h h2{margin:0 0 12px;font:700 1.15rem/1.3 "Bricolage Grotesque","Inter Tight",system-ui,sans-serif;letter-spacing:-.01em;color:#111}
.sdb-bars{display:flex;gap:6px}.sdb-bars i{display:block;width:28px;height:4px;border-radius:4px;background:#dcdcde}.sdb-bars i.done{background:#111}.sdb-bars i.cur{background:#111;opacity:.55}
.sdb-x{border:0;background:none;color:#555;font-size:1.7rem;line-height:1;cursor:pointer;padding:0 4px;border-radius:8px}.sdb-x:hover{color:#000}
.sdb-b{padding:22px 28px 28px}
.sdb-cal{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.sdb-cal strong{font:700 1rem "Bricolage Grotesque","Inter Tight",sans-serif}
.sdb-nav{border:0;background:none;font-size:1.4rem;line-height:1;width:34px;height:34px;border-radius:50%;cursor:pointer;color:#111}.sdb-nav:hover:not(:disabled){background:#e6e6e6}.sdb-nav:disabled{opacity:.25;cursor:default}
.sdb-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.sdb-dow{font:500 .7rem ui-monospace,Menlo,monospace;color:#777;text-align:center;padding:6px 0;text-transform:uppercase;letter-spacing:.04em}
.sdb-d{aspect-ratio:1/.95;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;font-weight:700;font-size:.9rem;color:#c3c3c6;border:1px solid transparent;background:none}
.sdb-d small{font:700 .66rem ui-monospace,Menlo,monospace;margin-top:3px;color:#111}
.sdb-d.ok{background:#fff;border-color:#dcdcde;color:#111;cursor:pointer;transition:transform .15s,border-color .15s}.sdb-d.ok:hover{border-color:#111;transform:translateY(-2px)}
.sdb-d.full{background:#ebebec;color:#a0a0a5;font-weight:500}.sdb-d.full small{color:#a0a0a5}
.sdb-leg{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:.82rem;color:#666}.sdb-leg span{display:inline-flex;align-items:center;gap:7px}.sdb-leg i{width:12px;height:12px;border-radius:3px;border:1px solid #cfcfd2;background:#fff}.sdb-leg i.f{background:#ebebec}.sdb-leg i.n{background:#dcdcde;border-color:#dcdcde}
.sdb-sec{font:500 .72rem ui-monospace,Menlo,monospace;color:#777;letter-spacing:.14em;text-transform:uppercase;margin:6px 0 12px}
.sdb-slots{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.sdb-s{min-width:76px;padding:12px 10px;border-radius:12px;border:1px solid #dcdcde;background:#fff;text-align:center;font:700 .95rem "Inter Tight",sans-serif;color:#111;cursor:pointer;transition:transform .15s,border-color .15s}
.sdb-s small{display:block;font:700 .66rem ui-monospace,Menlo,monospace;color:#777;margin-top:4px}
.sdb-s:hover:not(:disabled){border-color:#111;transform:translateY(-2px)}.sdb-s.on{background:#111;color:#fff;border-color:#111}.sdb-s.on small{color:#bbb}.sdb-s:disabled{background:#ebebec;color:#a0a0a5;cursor:default}
.sdb-link{border:0;background:none;color:#555;font:inherit;font-size:.9rem;cursor:pointer;padding:6px 0}.sdb-link:hover{color:#000}
.sdb-when{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dcdcde;border-radius:14px;padding:14px 16px;font-weight:700;font-size:.95rem;margin-bottom:20px}
.sdb-f{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sdb-f .wf{grid-column:1/-1}
.sdb label{display:block;font:700 .7rem "Inter Tight",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#666}
.sdb input[type=text],.sdb input[type=email],.sdb input[type=tel],.sdb select,.sdb textarea{display:block;width:100%;margin-top:8px;padding:13px 14px;border:1px solid #dcdcde;border-radius:12px;background:#fff;color:#111;font:400 1rem "Inter Tight",sans-serif;text-transform:none;letter-spacing:0}
.sdb textarea{min-height:92px;resize:vertical}.sdb input:focus,.sdb select:focus,.sdb textarea:focus{outline:2px solid #111;outline-offset:1px}
.sdb .fe{color:#b42318;font-size:.8rem;margin-top:6px;text-transform:none;letter-spacing:0;font-weight:400}
.sdb-chk{display:flex!important;gap:10px;align-items:flex-start;text-transform:none!important;letter-spacing:0!important;font-weight:400!important;font-size:.85rem!important;color:#555!important;line-height:1.45}.sdb-chk input{margin-top:3px;width:18px;height:18px;accent-color:#111;flex:none}.sdb-chk a{color:#111}
.sdb-ft{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:22px}
.sdb-btn{border:0;border-radius:100px;background:#111;color:#fff;padding:15px 30px;font:700 1rem "Inter Tight",sans-serif;cursor:pointer;transition:transform .2s}.sdb-btn:hover:not(:disabled){transform:scale(1.03)}.sdb-btn:disabled{opacity:.5;cursor:default}
.sdb-err{background:#fde8e8;color:#b42318;border-radius:12px;padding:11px 14px;margin-bottom:16px;font-size:.9rem}
.sdb-demo{background:#fff6d6;color:#6b5200;border-radius:12px;padding:9px 14px;margin-bottom:16px;font-size:.82rem}
.sdb-ok{text-align:center;padding:18px 4px 6px}.sdb-ok .ic{width:64px;height:64px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;margin:0 auto 18px;font-size:1.8rem}
.sdb-ok h3{margin:0 0 8px;font:700 1.5rem "Bricolage Grotesque","Inter Tight",sans-serif;color:#111}.sdb-ok p{color:#555;margin:0 0 6px}.sdb-ok .ref{display:inline-block;background:#fff;border:1px solid #dcdcde;border-radius:12px;padding:12px 18px;margin:16px 0;font-weight:700}
.sdb-load{padding:40px;text-align:center;color:#888}
button.btn{font:inherit;background:none;cursor:pointer}
.m__book{display:inline-block;margin-top:2px;font-size:.9rem;letter-spacing:.08em;color:#fff;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:3px}
@media (max-width:560px){.sdb-h,.sdb-b{padding-left:18px;padding-right:18px}.sdb-f{grid-template-columns:1fr}.sdb-ft{flex-direction:column-reverse;align-items:stretch}.sdb-btn{width:100%}.sdb-card{border-radius:22px}}
@media (prefers-reduced-motion:reduce){.sdb,.sdb-card{animation:none}}

.sdb form,.sdb form.sdb-b{display:block;gap:0;width:auto}
.sdb input[type=checkbox]{width:18px;height:18px;margin:3px 0 0;border:0;padding:0;border-radius:0;background:none}
.sdb-f{grid-template-columns:repeat(2,minmax(0,1fr))}.sdb-f>div{min-width:0}.sdb-chk span{min-width:0}.sdb input,.sdb select,.sdb textarea{max-width:100%}
@media (max-width:560px){.sdb-f{grid-template-columns:minmax(0,1fr)}}
