/* BioMascota 2026 first-party privacy controls. Same weights for accept/reject. */
.bm-cookie-banner,.bm-cookie-dialog,.bm-privacy-page{font-family:inherit}
.bm-cookie-banner[hidden],.bm-cookie-dialog[hidden],.bm-cookie-dialog-backdrop[hidden]{display:none!important}
.bm-cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:15000;background:#fff;color:#183a45;border-top:2px solid #b9dfd3;box-shadow:0 -12px 42px rgba(7,49,52,.18)}
.bm-cookie-banner-inner{max-width:1280px;margin:auto;padding:20px 25px;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,285px);gap:35px;align-items:center}
.bm-cookie-eyebrow{font-weight:850;font-size:11px;color:#0b7965;letter-spacing:.10em;margin-bottom:6px}
.bm-cookie-copy h2{color:#0c3746;font-size:clamp(19px,2.1vw,25px);letter-spacing:-.03em;line-height:1.16;margin:0 0 7px}
.bm-cookie-copy p{color:#46626c;line-height:1.55;font-size:13px;margin:0}
.bm-cookie-copy a,.bm-privacy-page a{color:#007565;text-decoration:underline;text-underline-offset:2px}
.bm-cookie-actions{display:grid;gap:8px}
.bm-cookie-button{display:inline-flex;justify-content:center;align-items:center;min-height:43px;padding:10px 14px;font-weight:780;font-size:13px;border-radius:10px;border:1px solid #218a77;cursor:pointer;text-align:center;transition:background .14s ease,color .14s}
.bm-cookie-button:focus-visible,.bm-cookie-close:focus-visible,.bm-privacy-erase:focus-visible{outline:3px solid #269f81;outline-offset:2px}
.bm-cookie-button.bm-cookie-primary{background:#097968;color:#fff}
.bm-cookie-button.bm-cookie-secondary{background:#fff;color:#075f51}
.bm-cookie-button:hover{filter:brightness(.95)}
.bm-cookie-button:disabled{opacity:.6;cursor:wait}
.bm-cookie-dialog-backdrop{position:fixed;inset:0;background:rgba(5,28,36,.52);z-index:15001}
.bm-cookie-dialog{position:fixed;z-index:15002;top:50%;left:50%;transform:translate(-50%,-50%);width:min(94vw,650px);max-height:90dvh;overflow:auto;padding:26px;background:#fff;color:#163845;border-radius:20px;box-shadow:0 24px 90px rgba(5,34,38,.25)}
.bm-cookie-dialog-head{display:flex;align-items:flex-start;gap:15px;justify-content:space-between}
.bm-cookie-dialog-head h2{color:#063d46;font-size:27px;line-height:1.12;margin:0}
.bm-cookie-close{font-size:29px;line-height:1;border:0;background:transparent;color:#4a636b;cursor:pointer;padding:4px 8px}
.bm-cookie-dialog-intro{color:#526d75;font-size:14px;line-height:1.6;margin:10px 0 20px}
.bm-cookie-purpose{padding:14px 0;border-top:1px solid #dcebe5;display:flex;justify-content:space-between;align-items:center;gap:22px}
.bm-cookie-purpose strong{display:block;color:#183f46;font-size:15px}
.bm-cookie-purpose small{display:block;color:#61777e;font-size:12px;line-height:1.55;margin-top:3px}
.bm-cookie-purpose input[type=checkbox]{width:21px;height:21px;accent-color:#087a68;flex:none;cursor:pointer}
.bm-cookie-always{color:#147363;font-weight:780;font-size:12px;white-space:nowrap}
.bm-cookie-form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.bm-cookie-feedback{min-height:1.5em;color:#9c3830;font-size:13px;margin-top:10px}
.bm-privacy-page{color:#183f4b;padding:20px max(20px,calc((100vw - 1250px)/2)) 75px;background:#fff}
.bm-privacy-breadcrumb{font-size:13px;margin:8px 0 25px;color:#697e85}
.bm-privacy-hero{padding:clamp(32px,4vw,62px);border-radius:24px;background:linear-gradient(110deg,#07354b 0%,#077c68 100%);color:#fff}
.bm-privacy-overline{font-size:12px;font-weight:850;letter-spacing:.10em;color:#aef3df}
.bm-privacy-hero h1{font-size:clamp(32px,5vw,53px);letter-spacing:-.05em;line-height:1.06;max-width:900px;margin:13px 0;color:#fff}
.bm-privacy-hero p{font-size:clamp(16px,1.9vw,20px);line-height:1.6;max-width:780px;color:#e8f9f5;margin:0}
.bm-privacy-columns{display:grid;grid-template-columns:minmax(165px,235px) minmax(0,1fr);gap:45px;margin-top:42px}
.bm-privacy-toc{display:flex;flex-direction:column;gap:15px;align-self:start;position:sticky;top:30px}
.bm-privacy-toc a{text-decoration:none;font-size:14px;color:#31656b}
.bm-privacy-toc a:hover{text-decoration:underline}
.bm-privacy-section{padding:0 0 32px;margin:0 0 30px;border-bottom:1px solid #e1ece9;scroll-margin-top:30px}
.bm-privacy-section h2{font-size:clamp(25px,3vw,33px);line-height:1.2;letter-spacing:-.035em;color:#103e4a;margin:0 0 15px}
.bm-privacy-section p{font-size:15px;line-height:1.8;color:#435f68;margin:0 0 16px}
.bm-privacy-settings-form{border:1px solid #cfe4db;border-radius:16px;padding:18px;margin-top:20px}
.bm-privacy-setting{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid #dfebe7}
.bm-privacy-setting:last-of-type{margin-bottom:20px}
.bm-privacy-setting strong{color:#153f4c;font-size:16px}
.bm-privacy-setting p{margin:5px 0 0;font-size:13px;line-height:1.5}
.bm-privacy-setting input[type=checkbox]{accent-color:#05856b;width:21px;height:21px;flex:none}
.bm-privacy-setting>span{font-size:12px;color:#086957;font-weight:700;white-space:nowrap}
.bm-privacy-delete-form{margin-top:22px;padding:20px;background:#f9fbfa;border:1px solid #e3ebe6;border-radius:13px}
.bm-privacy-erase{cursor:pointer;border:1px solid #9b564f;color:#8b352f;background:#fff;border-radius:10px;font-weight:750;padding:12px 17px}
.bm-privacy-delete-form p{margin:10px 0 0;font-size:13px}
.bm-privacy-table-wrap{overflow:auto}
.bm-privacy-table-wrap table{width:100%;border-collapse:collapse;min-width:550px;font-size:14px}
.bm-privacy-table-wrap th,.bm-privacy-table-wrap td{padding:13px 12px;border:1px solid #dfece7;text-align:left;vertical-align:top;line-height:1.45}
.bm-privacy-table-wrap th{background:#edf7f2}
.bm-privacy-success{padding:12px 15px;border-radius:10px;background:#e5f7ed;border:1px solid #a7d9bd;color:#166448;margin:20px 0}
@media(max-width:800px){
 .bm-cookie-banner-inner{grid-template-columns:1fr;padding:16px 18px;gap:13px;max-height:55dvh;overflow:auto}
 .bm-cookie-actions{grid-template-columns:1fr 1fr}.bm-cookie-actions button:first-child{grid-column:1/-1}
 .bm-cookie-dialog{padding:20px 17px}
 .bm-privacy-columns{grid-template-columns:1fr;gap:12px}
 .bm-privacy-toc{position:static;flex-direction:row;flex-wrap:wrap;gap:9px}
 .bm-privacy-toc a{font-size:12px;border:1px solid #cee4da;border-radius:20px;padding:7px 10px}
 .bm-privacy-page{padding:15px 16px 60px}
}


/* Consentimiento rápido: popup clásico, visible a visitantes sin elección.
   El modal de finalidades y la política existente se mantienen sin cambios. */
.bm-cookie-banner{
 left:auto;
 right:22px;
 bottom:22px;
 width:min(425px,calc(100vw - 44px));
 max-height:min(82dvh,570px);
 overflow-y:auto;
 border:1px solid #d2e6dd;
 border-top:3px solid #07806c;
 border-radius:17px;
 box-shadow:0 16px 60px rgba(5,45,56,.22),0 2px 10px rgba(4,35,44,.08);
}
.bm-cookie-banner .bm-cookie-banner-inner{
 display:block;
 padding:21px 22px 18px;
 max-width:none;
 max-height:none;
 overflow:visible;
}
.bm-cookie-banner .bm-cookie-copy h2{
 font-size:clamp(20px,2vw,23px);
 font-weight:850;
 letter-spacing:-.025em;
 margin:6px 0 10px;
}
.bm-cookie-banner .bm-cookie-copy p{
 color:#4f6770;
 font-size:13px;
 line-height:1.62;
}
.bm-cookie-banner .bm-cookie-actions{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:10px;
 margin-top:17px;
}
.bm-cookie-banner .bm-cookie-actions .bm-cookie-button{
 min-height:43px;
 padding:9px 10px;
 font-size:13px;
}
.bm-cookie-banner .bm-cookie-compact-footer{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:10px;
 margin-top:13px;
 flex-wrap:wrap;
}
.bm-cookie-configure{
 border:0;
 background:transparent;
 color:#076d5d;
 font-size:13px;
 font-weight:800;
 padding:4px 0;
 cursor:pointer;
 text-decoration:underline;
 text-underline-offset:3px;
}
.bm-cookie-banner .bm-cookie-compact-footer a{
 font-size:12px;
 font-weight:650;
 text-decoration:underline;
 text-underline-offset:3px;
 color:#547076;
}
.bm-cookie-banner .bm-cookie-fineprint{
 display:block;
 margin-top:12px;
 line-height:1.45;
 font-size:11px;
 color:#6e8187;
}
.bm-cookie-configure:focus-visible{
 outline:3px solid #269f81;
 outline-offset:3px;
}
@media(max-width:600px){
 .bm-cookie-banner{
  left:12px;
  right:12px;
  bottom:12px;
  width:calc(100vw - 24px);
  max-height:65dvh;
 }
 .bm-cookie-banner .bm-cookie-banner-inner{
  padding:15px 16px 14px;
  max-height:none;
 }
 .bm-cookie-banner .bm-cookie-copy h2{font-size:20px;margin:4px 0 6px}
 .bm-cookie-banner .bm-cookie-copy p{font-size:12px}
 .bm-cookie-banner .bm-cookie-actions{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:11px;
 }
 .bm-cookie-banner .bm-cookie-compact-footer{margin-top:8px}
 .bm-cookie-banner .bm-cookie-fineprint{margin-top:7px}
}

.bm-cookie-banner .bm-cookie-feedback{color:#9e3434;font-size:12px;line-height:1.45;margin:10px 0 0}
.bm-cookie-banner .bm-cookie-feedback[hidden]{display:none!important}
