/* Consentimiento FisioPro — componente global, sin reglas por página. */
.fppcip-consent[hidden],.fppcip-consent-dialog-backdrop[hidden],.fppcip-map-gate[hidden],.maparea iframe[hidden]{display:none}
.fppcip-consent{position:fixed;left:0;right:0;bottom:0;z-index:99999;background:#fff;color:#183F55;border-top:1px solid #CFE0E8;box-shadow:0 -5px 34px rgba(6,53,78,.16);font:400 16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}
.fppcip-consent-body{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 24px}
.fppcip-consent-copy{max-width:800px}
.fppcip-consent-copy strong{font-size:18px;display:block;color:#063D59;margin-bottom:4px}
.fppcip-consent-copy p{font-size:15.5px;line-height:1.55;margin:0;color:#31556A}
.fppcip-consent a,.fppcip-consent-dialog a{color:#056A98;text-underline-offset:3px}
.fppcip-consent-actions{display:flex;flex:0 0 auto;align-items:center;gap:8px;flex-wrap:wrap;max-width:365px}
.fppcip-consent button,.fppcip-consent-dialog button,.fppcip-cookie-settings,.fppcip-map-open{font-family:inherit;font-size:15px;font-weight:650;line-height:1.3;border-radius:5px;cursor:pointer;min-height:44px;padding:10px 14px}
.fppcip-consent-reject{color:#063D59;background:white;border:1px solid #64879A}
.fppcip-consent-accept,.fppcip-consent-save,.fppcip-map-open{background:#056A98;border:1px solid #056A98;color:#fff}
.fppcip-consent-configure{color:#056A98;border:1px solid transparent;background:transparent;text-decoration:underline;text-underline-offset:3px}
.fppcip-cookie-settings{border:0;background:none;color:#E6F1F4;padding:0;min-height:24px;font-size:15px;text-align:left;text-decoration:underline;text-underline-offset:4px}
.fppcip-consent-dialog-backdrop{position:fixed;inset:0;z-index:100000;background:rgba(5,30,43,.65);display:grid;place-items:center;padding:18px;overflow:auto}
.fppcip-consent-dialog{width:min(100%,580px);max-height:min(90vh,740px);overflow-y:auto;background:white;color:#183F55;border-radius:9px;box-shadow:0 16px 60px rgba(3,30,50,.25);padding:25px;outline:none;font:400 16px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}
.fppcip-consent-dialog-open{overflow:hidden}
.fppcip-consent-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.fppcip-consent-dialog h2{font-size:28px;line-height:1.2;margin:0 0 8px;color:#063D59;letter-spacing:-.025em}
.fppcip-consent-dialog-head .fppcip-consent-close{font-size:26px;line-height:1;width:44px;flex:none;background:transparent;border:1px solid #CFE0E8;padding:5px}
.fppcip-consent-dialog>p{font-size:16px;margin:0 0 15px}
.fppcip-consent-category{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #CFE0E8;padding:15px 0;cursor:pointer}
.fppcip-consent-category strong{font-size:17px;color:#063D59;display:block}
.fppcip-consent-category p,.fppcip-category-description{display:block;font-size:15px;line-height:1.45;color:#496979;margin:4px 0 0}
.fppcip-consent-category input{width:23px;height:23px;flex:0 0 23px;accent-color:#056A98}
.fppcip-consent-essential{font-size:13px;font-weight:650;color:#31556A;white-space:nowrap}
.fppcip-consent-dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:10px}
.fppcip-consent-note{margin-top:18px;font-size:14px;color:#496979}
.fppcip-consent button:focus-visible,.fppcip-consent-dialog button:focus-visible,.fppcip-consent-dialog input:focus-visible,.fppcip-cookie-settings:focus-visible,.fppcip-map-open:focus-visible{outline:3px solid #C23A9C;outline-offset:3px}
/* Google Maps is inert until visitor chooses to show it. */
.maparea .fppcip-map-gate{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px 370px 20px 25px;background:#EAF5F9;color:#183F55}
.maparea .fppcip-map-gate[hidden]{display:none}
.fppcip-map-gate-inner{max-width:550px}
.fppcip-map-gate strong{font-size:21px;color:#063D59;display:block}
.fppcip-map-gate p{font-size:16px;line-height:1.5;margin:10px auto 15px}
.fppcip-map-open{background:#056A98;color:#fff;border:1px solid #056A98}
@media(max-width:920px){.fppcip-consent-body{display:block}.fppcip-consent-actions{max-width:none;margin-top:12px}.maparea .fppcip-map-gate{padding-right:320px}}
@media(max-width:820px){.maparea .fppcip-map-gate{position:relative;inset:auto;min-height:250px;width:100%;padding:22px 20px;border-radius:5px}.fppcip-map-gate p{font-size:16px}.fppcip-consent-body{padding:15px 18px}}
@media(max-width:480px){.fppcip-consent{max-height:76vh;overflow:auto}.fppcip-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.fppcip-consent-configure{grid-column:1/-1}.fppcip-consent-dialog{padding:18px;max-height:90vh}.fppcip-consent-dialog h2{font-size:24px}.fppcip-consent-dialog-actions{display:grid;grid-template-columns:1fr 1fr}.fppcip-consent-dialog-actions button{padding:10px 8px}}
@media(prefers-reduced-motion:reduce){.fppcip-consent,.fppcip-consent-dialog-backdrop{scroll-behavior:auto}}
