/* Heavy Upgrade · pie de página legal, aviso y configurador de cookies (compartido por todas las páginas) */
.footer{padding-bottom:0}
.footer-legal{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 28px;margin-top:22px;padding-block:20px calc(22px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}
.footer-legal nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.footer-legal a,.footer-legal button{font:500 13px/1.4 var(--body);color:var(--muted);background:none;border:0;padding:0;cursor:pointer;transition:color .25s}
.footer-legal a:hover,.footer-legal button:hover{color:var(--green)}
.footer-legal p{font-size:12px;color:var(--muted)}
.footer-in>p{display:none}

/* Aviso de cookies: tarjeta abajo a la izquierda, sin tapar el botón de WhatsApp */
.ck-bar{position:fixed;left:clamp(12px,3vw,24px);bottom:calc(clamp(12px,3vw,24px) + env(safe-area-inset-bottom,0px));z-index:250;width:min(440px,calc(100% - 96px));padding:20px;border-radius:20px;background:#171b22;border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 60px -20px rgba(0,0,0,.85);transform:translateY(16px);opacity:0;transition:opacity .45s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1)}
.ck-bar.on{opacity:1;transform:none}
.ck-bar b{display:block;font:700 1.02rem/1.3 var(--display);letter-spacing:-.01em;margin-bottom:6px}
.ck-bar p{font-size:13.5px;line-height:1.55;color:var(--soft)}
.ck-bar p a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.ck-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.ck-btn{appearance:none;cursor:pointer;height:40px;padding:0 16px;border-radius:999px;font:600 13px/1 var(--body);border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:var(--fg);transition:background .2s,border-color .2s,color .2s}
.ck-btn:hover{border-color:var(--green)}
.ck-btn.pri{background:var(--green);border-color:var(--green);color:var(--ink)}
.ck-btn.link{border-color:transparent;background:none;padding:0 6px;color:var(--soft);text-decoration:underline;text-underline-offset:3px}
@media (max-width:600px){.ck-bar{width:auto;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));padding:14px 14px 12px;border-radius:16px}.ck-bar b{font-size:.92rem;margin-bottom:4px}.ck-bar p{font-size:12.5px;line-height:1.5}.ck-acts{flex-wrap:nowrap;gap:6px;margin-top:10px}.ck-btn{height:36px;padding:0 12px;font-size:12px;white-space:nowrap}.ck-btn.link{padding:0 4px}body:has(.ck-bar.on) .wa{bottom:calc(196px + env(safe-area-inset-bottom,0px))}}

/* Configurador */
.ck-modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:16px;background:rgba(5,7,10,.7);opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s}
.ck-modal.on{opacity:1;visibility:visible;transition:opacity .3s}
.ck-panel{width:min(560px,100%);max-height:calc(100svh - 32px);overflow:auto;border-radius:24px;background:#171b22;border:1px solid rgba(255,255,255,.14);padding:clamp(20px,3vw,30px);box-shadow:0 40px 80px -30px rgba(0,0,0,.9)}
.ck-panel h2{font:800 1.5rem/1.15 var(--display);letter-spacing:-.025em}
.ck-panel>p{margin-top:8px;font-size:14px;color:var(--soft)}
.ck-cat{display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}
.ck-cat:first-of-type{margin-top:12px;border-top:1px solid var(--line)}
.ck-cat b{font:600 15px/1.3 var(--body)}
.ck-cat small{grid-column:1;font-size:13px;line-height:1.5;color:var(--muted)}
.ck-cat .sw{grid-row:1/3;grid-column:2}
.sw{position:relative;width:48px;height:28px;flex:none}
.sw input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.sw i{position:absolute;inset:0;border-radius:999px;background:#2a303a;transition:background .25s;pointer-events:none}
.sw i::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#f4f7f6;transition:transform .3s cubic-bezier(.16,1,.3,1)}
.sw input:checked+i{background:var(--green)}
.sw input:checked+i::after{transform:translateX(20px)}
.sw input:disabled{cursor:not-allowed}
.sw input:disabled+i{opacity:.6}
.sw input:focus-visible+i{outline:2px solid var(--green);outline-offset:3px}
.ck-panel .ck-acts{margin-top:20px;justify-content:flex-end}
.ck-fixed{font:600 12px/1 var(--body);color:var(--green);grid-row:1/3;grid-column:2}

/* Otro en el formulario */
.pick-other{margin-top:12px}
.pick-other[hidden]{display:none}

/* Selector de idioma */
.lang-sw{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;border:1px solid var(--line-hi);margin-left:auto;margin-right:4px}
.lang-sw a{display:grid;place-items:center;min-width:34px;height:30px;padding:0 8px;border-radius:999px;font:600 12px/1 var(--body);letter-spacing:.06em;color:var(--muted);transition:color .2s,background .2s}
.lang-sw a:hover{color:var(--fg)}
.lang-sw a[aria-current="true"]{background:rgba(255,255,255,.1);color:var(--fg)}
.nav-bar>.lang-sw{order:0}
@media (max-width:860px){.lang-sw{margin-right:8px}.lang-sw a{min-width:30px;height:28px;padding:0 6px;font-size:11px}}

/* Correos en contacto */
.info-row b a{color:inherit;overflow-wrap:anywhere}
.info-row b a:hover{color:var(--green)}
@media (max-width:600px){.info-row b{font-size:.9rem}.info-row b a{overflow-wrap:normal}}
.footer-legal p a{font-size:12px}
