/* Privacy, preferences and external content. All assets and fonts are local. */
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px;padding:24px 0;border-top:1px solid #687566;color:#eceee5;font-size:13px;line-height:1.6}
.footer-legal a{text-decoration:underline;text-underline-offset:4px}
.footer-legal [data-cookie-state]{margin-left:auto;font-size:12px;color:#c0cbbb}
.footer-legal+.footer-bottom{margin-top:0}
.cookie-banner,.cookie-dialog{background:var(--paper,#f8f5f0);color:var(--ink,#302c2a);border:1px solid var(--line,#cfc5bb);box-shadow:0 10px 45px #201a1833}
.cookie-banner{position:fixed;bottom:20px;left:20px;z-index:30;width:min(760px,calc(100vw - 40px));max-height:calc(100dvh - 40px);overflow:auto;padding:26px 32px}
.cookie-banner h2,.cookie-dialog h2{font:400 30px/1.15 'Italiana',Georgia,serif;padding-right:35px;margin:0 0 14px}
.cookie-banner p,.cookie-dialog p{font-size:13px;line-height:1.65;margin:10px 0}
.cookie-banner a,.cookie-dialog a,.legal-content a,.booking-privacy a{text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.cookie-actions button,.external-placeholder button,.legal-preferences-button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:12px 16px;border:1px solid #5a5747;background:transparent;color:#302c2a;cursor:pointer;font:500 13px/1.4 'DM Sans',Arial,sans-serif}
.cookie-actions button{flex:1 1 160px}
.cookie-actions button:hover,.external-placeholder button:hover,.legal-preferences-button:hover{background:#e8e7da}
.cookie-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;min-width:44px;min-height:44px;border:0;background:transparent;color:inherit;font:30px/1 Arial,sans-serif;cursor:pointer}
.cookie-dialog{width:min(650px,calc(100vw - 28px));max-height:calc(100dvh - 32px);padding:32px;border-radius:0;overflow:auto}
.cookie-dialog::backdrop{background:#17201880}
.cookie-option{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 0;border-top:1px solid #cfc5bb;cursor:pointer}
.cookie-option strong{font-size:16px;font-weight:500}
.cookie-option p{margin:5px 0 0;color:#514b45}
.cookie-option input{flex:0 0 24px;width:24px;height:24px;accent-color:#465a42;cursor:pointer}
.cookie-option>span{font-size:12px;white-space:nowrap}
.privacy-status{position:fixed;bottom:20px;left:20px;max-width:calc(100vw - 40px);padding:12px 18px;z-index:32;background:#fff;color:#302c2a;border:1px solid #cfc5bb;font-size:13px;box-shadow:0 4px 20px #0002}
.cookie-banner[hidden],.privacy-status[hidden],.external-placeholder[hidden],.external-frame[hidden],[data-revoke-service][hidden]{display:none!important}
.cookie-banner-visible .whatsapp-sticky{visibility:hidden}
.external-embed{position:relative;background:#eeece2;color:#302c2a;border:1px solid #d2d0c1;min-height:330px}
.external-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;height:100%;padding:28px;gap:16px}
.external-placeholder svg{width:42px;height:42px;flex-shrink:0;color:#53634c}
.external-placeholder h3{font:400 32px/1.15 'Italiana',Georgia,serif;margin:0}
.external-placeholder p{max-width:530px;font-size:14px;line-height:1.65}
.external-placeholder a{font-size:13px;text-decoration:underline;text-underline-offset:3px}
.external-frame{width:100%;height:100%}
.external-revoke{display:block;margin:16px 0 0;padding:5px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;font:13px/1.4 'DM Sans',Arial,sans-serif;cursor:pointer}
.booking-privacy{margin:22px 0 10px;padding:18px;border:1px solid #d8d2c7;font-size:13px;line-height:1.75;color:#514b45}
.booking-privacy p,.booking-security-privacy{font-size:13px;line-height:1.7}
.booking-security-privacy{margin:14px 0}
.booking-security-privacy a{text-decoration:underline;text-underline-offset:3px}
.legal-intro{padding:70px 7% 45px;border-bottom:1px solid var(--line)}
.legal-intro h1{font-size:clamp(46px,6vw,76px);line-height:1.05;margin:20px 0}
.legal-intro>p{max-width:740px;color:var(--muted)}
.legal-layout{max-width:1000px;margin:auto;padding:55px 7% 90px}
.legal-index{display:flex;flex-wrap:wrap;gap:12px 24px;padding-bottom:35px;border-bottom:1px solid var(--line);font-size:13px}
.legal-index a{text-decoration:underline;text-underline-offset:4px}
.legal-content section{padding-top:42px;scroll-margin-top:30px}
.legal-content h2{font-size:32px;line-height:1.25;margin-bottom:18px}
.legal-content h3{font-size:17px;font-weight:500;margin:24px 0 8px}
.legal-content p{margin:12px 0;font-size:15px;line-height:1.85}
.legal-content li{font-size:15px;line-height:1.8;margin:8px 0}
.legal-content ul{padding-left:20px}
.legal-card{padding:24px;background:#eeece2;border-left:3px solid #53634c}
.legal-content address{font-style:normal;line-height:1.9}
.legal-table-wrap{overflow-x:auto;margin:20px 0}
.legal-content table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.65}
.legal-content th,.legal-content td{border-bottom:1px solid var(--line);padding:15px 12px;text-align:left;vertical-align:top}
.legal-content th{background:#eeece2;font-weight:500}
.legal-content code{font-size:12px;overflow-wrap:anywhere}
.legal-content .legal-update{font-size:13px;color:var(--muted);margin-top:40px}
@media(max-width:700px){.cookie-banner{bottom:10px;left:10px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:22px 20px}.cookie-banner h2{font-size:26px}.cookie-actions{gap:8px}.cookie-actions button{flex:1 1 100%;min-height:42px;padding:10px}.cookie-dialog{padding:26px 20px}.cookie-option{gap:18px}.footer-legal{gap:14px 20px}.footer-legal [data-cookie-state]{width:100%;margin-left:0}.external-embed{min-height:370px;aspect-ratio:auto}.external-placeholder{padding:24px 20px}.external-frame{min-height:370px}.external-frame iframe{min-height:370px}.legal-intro{padding:50px 7% 35px}.legal-layout{padding-top:35px}.legal-content h2{font-size:29px}.privacy-status{left:10px;bottom:10px;max-width:calc(100vw - 20px)}.legal-card{padding:20px}.legal-content th,.legal-content td{padding:12px 8px}}
@media(prefers-reduced-motion:reduce){.cookie-banner,.cookie-dialog,.external-placeholder{scroll-behavior:auto}}
