/* CASA ROCIO / 12 · Páginas legales y aviso de privacidad */
.footer-legal .footer-book-notice { display:inline-flex; flex-direction:row; gap:10px; flex-basis:auto; align-items:center; padding:0; text-decoration:none; }
.footer-book-notice img { display:block; width:120px; max-width:100%; height:auto; flex-shrink:0; }
.footer-book-notice span { font-size:12px; line-height:1.5; max-width:135px; }
.footer-book-notice:focus-visible { outline:3px solid #173c70; outline-offset:5px; }
.privacy-banner { position:fixed; z-index:90; bottom:18px; left:24px; right:24px; margin:auto; max-width:1060px; padding:22px 26px; display:flex; align-items:center; gap:28px; background:#faf6effa; color:var(--coffee); border:1px solid #88624240; border-radius:16px; box-shadow:0 12px 55px #35281f30; }
.privacy-banner strong { font:22px/1.25 Georgia,serif; }
.privacy-banner p { font-size:13px; line-height:1.65; margin:8px 0 0; }
.privacy-banner a { text-decoration:underline; text-underline-offset:3px; }
.privacy-actions { display:flex; gap:12px; flex-shrink:0; align-items:center; }
.privacy-actions button { min-height:44px; padding:10px 16px; font-size:13px; border-radius:30px; }
.privacy-settings { border:1px solid #88624280; }
.privacy-dialog { width:min(620px,calc(100% - 24px)); max-height:calc(100dvh - 32px); height:auto; margin:auto; padding:34px; background:var(--cream); color:var(--coffee); border:1px solid #88624240; border-radius:20px; }
.privacy-dialog h2 { font-size:42px; margin-bottom:20px; }
.privacy-dialog .eyebrow { margin-top:32px; }
.privacy-dialog p { font-size:14px; color:var(--muted); }
.privacy-close { display:block; margin-left:auto; min-height:44px; text-decoration:underline; }
.privacy-category { padding:18px 0; border-block:1px solid #88624230; }
.privacy-category span { float:right; font-size:12px; color:var(--copper); }
.privacy-category p { margin-bottom:0; }
.privacy-done { display:block; margin-top:22px; width:100%; }
.privacy-forget { display:block; margin-top:14px; padding:10px 0; color:inherit; text-decoration:underline; text-underline-offset:3px; }
.visual-editing .privacy-banner { display:none; }
.legal-page .page-intro { padding-bottom:50px; }
.legal-page .page-intro h1 { font-size:clamp(42px,6vw,76px); }
.legal-content { width:min(900px,86%); margin:0 auto; padding:60px 0 90px; }
.legal-content section { margin-bottom:38px; }
.legal-content h2 { font:30px/1.3 Georgia,serif; margin:0 0 15px; }
.legal-content p, .legal-content li { color:var(--muted); line-height:1.9; }
.legal-content a { text-decoration:underline; text-underline-offset:4px; }
.legal-pending { border-left:3px solid var(--copper); background:var(--sand); padding:20px 24px; margin-bottom:40px; }
.legal-pending strong { display:block; margin-bottom:8px; }
.legal-content table { border-collapse:collapse; width:100%; font-size:13px; }
.legal-content td, .legal-content th { text-align:left; padding:16px 10px; border-bottom:1px solid #88624230; overflow-wrap:anywhere; vertical-align:top; }
.legal-content th { background:var(--sand); }
.legal-content code { font-size:12px; overflow-wrap:anywhere; }
.legal-index { display:block; padding:24px; margin-bottom:42px; border:1px solid #88624230; border-radius:16px; background:var(--sand); }
.legal-index strong { font:24px/1.4 Georgia,serif; }
.legal-index ol { columns:2; column-gap:32px; padding-left:22px; margin:16px 0 0; }
.legal-index li { break-inside:avoid; padding:5px 0; font-size:14px; }
.legal-content section { scroll-margin-top:130px; }
@media(max-width:600px) { .legal-index ol { columns:1; } }
@media(max-width:700px) {
  .privacy-banner { left:12px; right:12px; bottom:12px; padding:18px; display:block; max-height:50dvh; overflow:auto; }
  .privacy-banner strong { font-size:19px; }
  .privacy-actions { margin-top:14px; justify-content:space-between; }
  .privacy-dialog { padding:24px; }
  .privacy-dialog h2 { font-size:34px; }
  .privacy-category span { float:none; display:block; margin-top:6px; }
  .legal-content { width:88%; }
  .legal-content table { font-size:12px; }
}
