/* Aviso de cookies (plugin Proximedia Web). Aceptar y Rechazar con el mismo peso visual (Guía AEPD 2023).
   Color: --pxm-color (color principal de Elementor o el elegido en Ajustes › Proximedia). */
.pxm-ck, .pxm-ck-panel, .pxm-ck-flotante, .pxm-ck-bloqueado{ --pxm-tinta:#1d2124; --pxm-texto:#3d4246; --pxm-linea:#e2e5e7; font-family:inherit; box-sizing:border-box; }
.pxm-ck *, .pxm-ck-panel *{ box-sizing:border-box; }
.pxm-ck[hidden], .pxm-ck-panel[hidden], .pxm-ck-flotante[hidden]{ display:none !important; }
.pxm-ck{ position:fixed; z-index:2147483000; left:16px; right:16px; bottom:16px; display:flex; justify-content:center; pointer-events:none; }
.pxm-ck__caja{ pointer-events:auto; width:100%; max-width:980px; background:#fff; color:var(--pxm-texto); border:1px solid var(--pxm-linea); border-radius:10px;
  box-shadow:0 12px 40px rgba(16,24,28,.22); padding:20px 24px; display:grid; grid-template-columns:1fr auto; gap:6px 24px; align-items:center; font-size:14px; line-height:1.5; text-align:left; }
.pxm-ck__titulo{ grid-column:1; margin:0; font-size:16px; font-weight:700; color:var(--pxm-tinta); }
.pxm-ck__texto{ grid-column:1; margin:0; font-size:14px; color:var(--pxm-texto); }
.pxm-ck__texto a, .pxm-ck-panel a{ color:var(--pxm-tinta); font-weight:700; text-decoration:underline; }
.pxm-ck__caja > .pxm-ck__botones{ grid-column:2; grid-row:1 / span 2; }
.pxm-ck__botones{ display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.pxm-ck .pxm-ck__btn, .pxm-ck-panel .pxm-ck__btn, .pxm-ck-bloqueado .pxm-ck__btn{ display:inline-flex; align-items:center; justify-content:center; text-align:center; min-height:44px; margin:0; padding:10px 18px; border-radius:6px;
  border:2px solid var(--pxm-color); background:var(--pxm-color); color:#fff; font:700 15px/1.2 inherit; text-transform:none; letter-spacing:0; cursor:pointer; white-space:nowrap; box-shadow:none; }
.pxm-ck .pxm-ck__btn:hover, .pxm-ck-panel .pxm-ck__btn:hover{ filter:brightness(.9); }
.pxm-ck .pxm-ck__btn--linea, .pxm-ck-panel .pxm-ck__btn--linea{ background:#fff; color:var(--pxm-tinta); }
.pxm-ck .pxm-ck__btn--linea:hover, .pxm-ck-panel .pxm-ck__btn--linea:hover{ filter:none; background:#f3f4f5; }
.pxm-ck__btn:focus-visible, .pxm-ck-cat__check:focus-visible + .pxm-ck-cat__interruptor, .pxm-ck-panel__cerrar:focus-visible, .pxm-ck-flotante:focus-visible{ outline:3px solid #f0b400; outline-offset:2px; }
@media(max-width:820px){
  .pxm-ck{ left:8px; right:8px; bottom:8px; }
  .pxm-ck__caja{ grid-template-columns:1fr; padding:16px; }
  .pxm-ck__caja > .pxm-ck__botones{ grid-column:1; grid-row:auto; }
  .pxm-ck__botones{ display:grid; grid-template-columns:1fr 1fr; grid-template-areas:"rechazar aceptar" "config config"; }
  .pxm-ck__botones [data-pxm-ck=rechazar]{ grid-area:rechazar; } .pxm-ck__botones [data-pxm-ck=aceptar]{ grid-area:aceptar; }
  .pxm-ck__botones [data-pxm-ck=configurar], .pxm-ck__botones [data-pxm-ck=guardar]{ grid-area:config; }
  .pxm-ck .pxm-ck__btn, .pxm-ck-panel .pxm-ck__btn{ padding-inline:8px; white-space:normal; }
}

.pxm-ck-panel{ position:fixed; inset:0; z-index:2147483001; background:rgba(10,14,18,.55); display:flex; align-items:center; justify-content:center; padding:16px; }
html.pxm-ck-abierto{ overflow:hidden; }
.pxm-ck-panel__caja{ position:relative; width:100%; max-width:640px; max-height:calc(100vh - 32px); overflow:auto; background:#fff; border-radius:10px; padding:28px; box-shadow:0 20px 60px rgba(0,0,0,.3); font-size:14px; line-height:1.5; color:var(--pxm-texto); text-align:left; }
.pxm-ck-panel__titulo{ margin:0 0 6px; font-size:22px; font-weight:700; color:var(--pxm-tinta); }
.pxm-ck-panel__intro{ margin:0 0 16px; }
.pxm-ck-panel .pxm-ck-panel__cerrar{ position:absolute; top:10px; right:12px; width:40px; height:40px; padding:0; border:0; background:none; font-size:28px; line-height:1; color:#6e7679; cursor:pointer; border-radius:50%; }
.pxm-ck-panel__cerrar:hover{ background:#f3f4f5; }
.pxm-ck-panel__lista{ list-style:none; margin:0 0 20px; padding:0; border:1px solid var(--pxm-linea); border-radius:6px; }
.pxm-ck-panel__lista li{ margin:0; padding:0; list-style:none; }
.pxm-ck-panel__lista li + li{ border-top:1px solid var(--pxm-linea); }
.pxm-ck-cat{ display:flex; align-items:center; gap:16px; padding:14px 16px; margin:0; cursor:pointer; position:relative; font-weight:400; }
.pxm-ck-cat__txt{ flex:1; }
.pxm-ck-cat__txt b{ display:block; color:var(--pxm-tinta); font-size:15px; margin-bottom:2px; }
.pxm-ck-cat__siempre{ font-size:12px; font-weight:700; color:#1f7a46; white-space:nowrap; }
.pxm-ck-cat__check{ position:absolute !important; opacity:0; width:1px !important; height:1px !important; }
.pxm-ck-cat__interruptor{ flex:none; width:46px; height:26px; border-radius:999px; background:#c5ccd0; position:relative; transition:.15s; }
.pxm-ck-cat__interruptor::after{ content:""; position:absolute; top:3px; left:3px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.25); transition:.15s; }
.pxm-ck-cat__check:checked + .pxm-ck-cat__interruptor{ background:var(--pxm-color); }
.pxm-ck-cat__check:checked + .pxm-ck-cat__interruptor::after{ left:23px; }
.pxm-ck-panel .pxm-ck__botones{ justify-content:stretch; }
.pxm-ck-panel .pxm-ck__btn{ flex:1 1 30%; }
@media(max-width:820px){ .pxm-ck-panel__caja{ padding:22px 16px; } }
.pxm-ck-panel__pie{ margin:16px 0 0; text-align:center; font-size:13px; }

/* Botón flotante para cambiar de opinión */
.pxm-ck-flotante{ position:fixed; z-index:2147482999; left:14px; bottom:14px; width:42px; height:42px; padding:0; border-radius:50%; border:1px solid var(--pxm-linea); background:#fff; color:var(--pxm-tinta);
  display:flex; align-items:center; justify-content:center; cursor:pointer; box-shadow:0 4px 14px rgba(0,0,0,.18); opacity:.85; }
.pxm-ck-flotante:hover{ opacity:1; }

/* Contenido de terceros bloqueado (mapa, vídeo…) */
.pxm-ck-bloqueado{ width:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:24px; text-align:center; border-radius:6px;
  background:#f3f5f6 repeating-linear-gradient(45deg,transparent 0 14px,rgba(0,0,0,.025) 14px 28px); color:var(--pxm-texto); font-size:14px; line-height:1.5; }
.pxm-ck-bloqueado p{ margin:0; max-width:420px; }
.pxm-ck-bloqueado a{ color:var(--pxm-tinta); font-weight:700; text-decoration:underline; font-size:13px; }
