/* Estilos del banner de cookies y de la casilla de consentimiento.
   Van en archivo aparte porque index.html usa CSS inline y no carga site.css:
   asi el banner se ve igual en las 17 paginas. */

/* ============ CONSENTIMIENTO EN EL FORMULARIO ============ */
.sub-form{flex-wrap:wrap}
.sub-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px;text-align:left;flex:0 0 100%;width:100%;order:3;padding:0 6px}
.sub-consent input[type=checkbox]{margin-top:3px;width:17px;height:17px;flex-shrink:0;accent-color:var(--orange);cursor:pointer}
.sub-consent label{font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.7);cursor:pointer;flex:1}
.sub-consent label a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.section.cream .sub-consent label,.section.white .sub-consent label{color:var(--gray)}
.section.cream .sub-consent label a,.section.white .sub-consent label a{color:var(--orange-dark)}

/* ============ BANNER DE COOKIES ============ */
.vc-ck{position:fixed;left:0;right:0;bottom:0;z-index:9999;background:var(--navy);color:#fff;padding:22px var(--pad);box-shadow:0 -8px 40px rgba(0,0,0,.3);transform:translateY(110%);transition:transform .45s var(--ease)}
.vc-ck.on{transform:translateY(0)}
.vc-ck-in{max-width:1320px;margin:0 auto;display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.vc-ck-tx{flex:1;min-width:280px}
.vc-ck-tx h4{font-size:16px;font-weight:800;margin-bottom:6px}
.vc-ck-tx p{font-size:14px;line-height:1.55;color:rgba(255,255,255,.72);margin:0}
.vc-ck-tx a{color:#fff;text-decoration:underline}
.vc-ck-bt{display:flex;gap:10px;flex-wrap:wrap}
.vc-ck-bt button{font-family:var(--font);font-size:14px;font-weight:700;padding:12px 24px;border-radius:100px;border:none;cursor:pointer;transition:transform .25s var(--ease),background .25s}
.vc-ck-bt button:hover{transform:translateY(-2px)}
.vc-ck-ok{background:var(--orange);color:#fff}.vc-ck-ok:hover{background:var(--orange-lite)}
.vc-ck-no{background:rgba(255,255,255,.14);color:#fff}.vc-ck-no:hover{background:rgba(255,255,255,.24)}
.vc-ck-cf{background:transparent;color:rgba(255,255,255,.75);text-decoration:underline;padding:12px 8px!important}
.vc-ck-cf:hover{color:#fff}
.vc-md{position:fixed;inset:0;z-index:10000;background:rgba(13,27,42,.72);display:none;align-items:center;justify-content:center;padding:24px}
.vc-md.on{display:flex}
.vc-md-in{background:#fff;border-radius:20px;max-width:600px;width:100%;max-height:86vh;overflow-y:auto;padding:36px}
.vc-md-in h3{font-size:23px;font-weight:900;color:var(--navy);margin-bottom:10px;letter-spacing:-.02em}
.vc-md-in>p{font-size:15px;line-height:1.6;color:var(--gray);margin-bottom:24px}
.vc-op{border:1px solid var(--cream-dk);border-radius:14px;padding:20px;margin-bottom:14px}
.vc-op-h{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:7px}
.vc-op-h strong{font-size:16px;color:var(--navy)}
.vc-op p{font-size:14px;line-height:1.55;color:var(--gray);margin:0}
.vc-op .fijo{font-size:12.5px;font-weight:700;color:var(--gray);background:var(--cream);padding:5px 12px;border-radius:100px;white-space:nowrap}
.vc-sw{position:relative;width:46px;height:26px;flex-shrink:0}
.vc-sw input{opacity:0;width:0;height:0}
.vc-sw span{position:absolute;inset:0;background:#CBD5E1;border-radius:100px;cursor:pointer;transition:background .25s}
.vc-sw span::before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .25s var(--ease)}
.vc-sw input:checked+span{background:var(--orange)}
.vc-sw input:checked+span::before{transform:translateX(20px)}
.vc-md-bt{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.vc-md-bt button{font-family:var(--font);font-size:14px;font-weight:700;padding:13px 26px;border-radius:100px;border:none;cursor:pointer;transition:background .25s,transform .25s var(--ease)}
.vc-md-bt button:hover{transform:translateY(-2px)}
.vc-md-sv{background:var(--navy);color:#fff}.vc-md-sv:hover{background:var(--navy-mid)}
.vc-md-al{background:var(--orange);color:#fff}.vc-md-al:hover{background:var(--orange-lite)}
.vc-md-nn{background:var(--cream);color:var(--navy)}.vc-md-nn:hover{background:var(--cream-dk)}
@media(max-width:760px){.vc-ck-in{flex-direction:column;align-items:stretch;gap:18px}.vc-ck-bt button{flex:1}}
