/* Diyafa booking: componenti nuovi, non sovrascrive il layout collaudato */
.be-pro-logo{width:54px;height:54px;object-fit:contain;flex:none}
.be-pro-welcome{white-space:pre-line;font-size:16px;color:#52647a;margin:0 0 16px}
.be-pro-header-preview{background:#f9e5bc;border:1px solid #d59d35;color:#6e460e;text-align:center;padding:14px;font-weight:800;letter-spacing:.035em;border-radius:10px}
.be-pro-preview-disabled{opacity:.6;cursor:not-allowed}
.be-pro-footer-contact{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}
.be-pro-footer-contact a{color:inherit;text-decoration:underline}
.be-pro-room .be-pro-gallery{position:relative;width:100%;min-height:215px;overflow:hidden;background:#e5eaf0;touch-action:pan-y}
.be-pro-room .be-pro-gallery img{display:block;width:100%;height:100%;min-height:230px;object-fit:cover}
.be-pro-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#fffdf3ed;color:#162438;border:1px solid #dededf;border-radius:100px;width:36px;height:36px;cursor:pointer;font-size:24px;line-height:1}
.be-pro-gallery-arrow.prev{left:12px}.be-pro-gallery-arrow.next{right:12px}
.be-pro-gallery-count{position:absolute;bottom:12px;right:12px;background:#12253bcc;color:#fff;padding:4px 10px;border-radius:30px;font-size:12px}
.be-pro-room-amenities{margin:14px 0}
.be-pro-room-facts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.be-pro-fact{padding:4px 9px;border:1px solid #dee4eb;border-radius:9px;font-size:12px;color:#344658}
.be-pro-service-list{display:flex;flex-wrap:wrap;gap:9px}
.be-pro-service{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:#35465d}
.be-pro-service-icon{font-size:16px;color:#0f7c8c}
.be-pro-description{border-top:1px solid #dae3e9;margin-top:12px;padding:9px 0}
.be-pro-description summary{cursor:pointer;font-weight:700;color:#1b6277}
.be-pro-description p{white-space:pre-line;font-size:14px;line-height:1.65}
.be-pro-legal{display:inline;line-height:1.65}
.be-pro-legal a{color:#075e82;text-decoration:underline;font-weight:700}
.be-pro-legal-details{display:inline-block;max-width:100%;margin:0 4px}
.be-pro-legal-details summary{cursor:pointer;color:#075e82;font-weight:700;text-decoration:underline}
.be-pro-legal-details p{white-space:pre-line;max-height:180px;overflow:auto;border:1px solid #d0dce4;border-radius:8px;padding:12px;background:#f6f9fc}
.be-consent{position:fixed;bottom:16px;left:16px;z-index:20000;width:min(520px,calc(100vw - 32px));background:#fff;color:#15283e;border:1px solid #aab9c9;border-radius:16px;padding:20px;box-shadow:0 12px 48px #091a3670;font-family:system-ui,sans-serif}
.be-consent h2{margin:0 0 9px;font-size:20px}
.be-consent p{font-size:14px;line-height:1.5;margin:0 0 14px}
.be-consent-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.be-consent-action{background:#fff;border:2px solid #0f7c8c;color:#07536c;border-radius:9px;min-height:45px;font:600 13px system-ui,sans-serif;cursor:pointer;padding:8px}
.be-consent-action:focus-visible,.be-pro-gallery-arrow:focus-visible{outline:3px solid #e6a52b;outline-offset:3px}
.be-consent-options{margin:14px 0;padding:8px;border:1px solid #d9e3ec;border-radius:10px}
.be-consent-option{display:flex;gap:10px;align-items:center;font-size:14px;margin:10px 0}
.be-consent-option input{width:20px;height:20px}
.be-consent-link{color:#075e82;font-size:12px;display:inline-block;margin-top:11px}
.be-consent-reopen{position:fixed;bottom:10px;right:10px;z-index:19999;background:#fff;color:#1a465e;border:1px solid #bccbd7;border-radius:12px;padding:9px;font-size:12px;cursor:pointer}
.be-consent-reopen[hidden]{display:none!important}
@media(max-width:620px){.be-pro-room{grid-template-columns:1fr}.be-pro-room .be-pro-gallery{min-height:200px}.be-pro-room .be-pro-gallery img{height:220px}.be-consent{left:8px;bottom:8px;width:calc(100vw - 16px);padding:16px}.be-consent-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.be-consent-action{font-size:12px;padding:5px}}
.be-pro-calendar:empty{display:none}