/* Consentimiento de cookies (autónomo: funciona en la web nueva y en las páginas antiguas con Tailwind). */
.fmw-cc,.fmw-cc-panel{--cc-ink:#1d1d1b;--cc-paper:#fff;--cc-mute:#5f5f5a;--cc-line:#e6e3da;--cc-oria:#E8CC34;--cc-itsasoa:#2AB5B8;
  --cc-ease:cubic-bezier(.16,1,.3,1);font-family:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--cc-ink);line-height:1.5}
.fmw-cc *,.fmw-cc-panel *{box-sizing:border-box}
.fmw-cc[hidden]{display:none}

/* Primera capa */
.fmw-cc{position:fixed;left:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:1000;width:min(440px,calc(100vw - 32px))}
.fmw-cc-banner{background:var(--cc-paper);border:2px solid var(--cc-ink);border-radius:24px;padding:22px 22px 18px;box-shadow:0 30px 60px -24px rgba(0,0,0,.45);
  transform:translateY(calc(100% + 40px));opacity:0;transition:transform .7s var(--cc-ease),opacity .5s var(--cc-ease)}
.fmw-cc.is-open .fmw-cc-banner{transform:none;opacity:1}
.fmw-cc-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.fmw-cc-icon{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--cc-oria);flex:none}
.fmw-cc-icon svg{width:22px;height:22px}
.fmw-cc.is-open .fmw-cc-icon{animation:cc-wobble 1.2s var(--cc-ease) .4s both}
@keyframes cc-wobble{0%{transform:rotate(-40deg) scale(.4)}60%{transform:rotate(12deg) scale(1.08)}100%{transform:none}}
.fmw-cc h2{margin:0;font-size:18px;font-weight:800}
.fmw-cc p{margin:0 0 16px;font-size:14px;color:var(--cc-mute)}
.fmw-cc p a,.fmw-cc-panel a{color:var(--cc-ink);font-weight:700}
.fmw-cc-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fmw-cc-actions .fmw-cc-link{grid-column:1/-1}
.fmw-cc-btn{font:inherit;font-weight:800;font-size:14px;padding:11px 14px;border-radius:24px;border:2px solid var(--cc-ink);background:#157a7c;border-color:#157a7c;color:#fff;cursor:pointer;
  transition:transform .4s var(--cc-ease),box-shadow .4s var(--cc-ease)}
.fmw-cc-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px -10px rgba(0,0,0,.5)}
.fmw-cc-btn.ghost{background:var(--cc-paper);color:var(--cc-ink)}
.fmw-cc-link{font:inherit;font-weight:700;font-size:14px;background:none;border:0;padding:6px;cursor:pointer;color:var(--cc-ink);text-decoration:underline;text-decoration-color:var(--cc-oria);text-decoration-thickness:3px;text-underline-offset:4px}
.fmw-cc button:focus-visible,.fmw-cc-panel button:focus-visible,.fmw-cc-panel input:focus-visible+span{outline:3px solid var(--cc-itsasoa);outline-offset:3px}

/* Segunda capa (panel) */
.fmw-cc-panel{border:0;padding:0;border-radius:24px;width:min(640px,calc(100vw - 24px));max-height:min(86vh,820px);background:var(--cc-paper);box-shadow:0 40px 80px -30px rgba(0,0,0,.5)}
.fmw-cc-panel[open]{animation:cc-pop .55s var(--cc-ease) both}
.fmw-cc-panel::backdrop{background:rgba(250,247,238,.75);backdrop-filter:blur(4px);animation:cc-fade .4s ease both}
@keyframes cc-pop{from{opacity:0;transform:translateY(24px) scale(.97)}}
@keyframes cc-fade{from{opacity:0}}
.fmw-cc-panel-in{padding:26px 28px 22px}
.fmw-cc-panel header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px}
.fmw-cc-panel h2{margin:0;font-size:22px;font-weight:800}
.fmw-cc-close{border:0;background:none;cursor:pointer;padding:6px;border-radius:50%;color:var(--cc-ink)}
.fmw-cc-close svg{width:22px;height:22px;display:block}
.fmw-cc-intro{font-size:14px;color:var(--cc-mute);margin:0 0 14px}
.fmw-cc-cat{border-top:1.5px solid var(--cc-line);padding:16px 0}
.fmw-cc-cat-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.fmw-cc-cat h3{margin:0;font-size:16px;font-weight:800}
.fmw-cc-cat p{margin:6px 0 0;font-size:14px;color:var(--cc-mute)}
.fmw-cc-always{font-size:12px;font-weight:800;color:#157a7c;background:#DDF3F3;padding:4px 10px;border-radius:24px;white-space:nowrap}
.fmw-cc-cat details{margin-top:8px;font-size:13px}
.fmw-cc-cat summary{cursor:pointer;font-weight:700}
.fmw-cc-cat ul{margin:8px 0 0;padding-left:18px;color:var(--cc-mute)}
.fmw-cc-cat li{margin-bottom:6px}
.fmw-cc-cat li b{color:var(--cc-ink)}
.fmw-cc-switch{position:relative;display:inline-block;width:50px;height:28px;flex:none;cursor:pointer}
.fmw-cc-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.fmw-cc-switch span{position:absolute;inset:0;border-radius:24px;background:#cfccc2;transition:background .3s}
.fmw-cc-switch span::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.25);transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.fmw-cc-switch input:checked+span{background:var(--cc-itsasoa)}
.fmw-cc-switch input:checked+span::after{transform:translateX(22px)}
.fmw-cc-panel footer{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;border-top:1.5px solid var(--cc-line);padding-top:16px}

/* Contenido bloqueado hasta dar permiso (vídeos) */
.consent-embed{position:relative;width:100%;height:100%;background:#DDF3F3;color:#1d1d1b;display:grid;place-items:center;text-align:center}
.consent-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.consent-embed-ph{padding:24px;display:grid;gap:14px;justify-items:center;max-width:280px;font-family:"Manrope",system-ui,sans-serif}
.consent-embed-ph svg{width:52px;height:52px;color:#157a7c}
.consent-embed-ph p{margin:0;font-size:14px;line-height:1.5}
.consent-embed-ph button{font:inherit;font-weight:800;font-size:14px;padding:11px 16px;border-radius:24px;border:2px solid #E8CC34;background:#E8CC34;color:#1d1d1b;cursor:pointer}
.consent-embed-ph a{color:#1d1d1b;font-size:13px;font-weight:700}

@media (max-width:600px){
  .fmw-cc{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));width:auto}
  .fmw-cc-panel-in{padding:22px 18px 18px}
  .fmw-cc-panel footer .fmw-cc-btn{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){
  .fmw-cc-banner,.fmw-cc-panel[open],.fmw-cc-panel::backdrop,.fmw-cc-icon,.fmw-cc-switch span::after{animation:none!important;transition:none!important}
}
/* Las páginas antiguas aplican su tipografía de titulares a h2/h3: se fija la del componente. */
.fmw-cc h2,.fmw-cc-panel h2,.fmw-cc-panel h3{font-family:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif!important;letter-spacing:0;text-transform:none;color:var(--cc-ink)}
