/* Pelota Cuadrada — fuentes alojadas en el propio sitio (sin llamadas a terceros) */
@font-face{font-family:"Fraunces";src:url("fonts/fraunces.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url("fonts/fraunces-italic.woff2") format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
@font-face{font-family:"Geist";src:url("fonts/geist.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Geist Mono";src:url("fonts/geist-mono.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

/* ---------- Banner y panel de cookies ---------- */
.ck-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:50;max-width:760px;margin:0 auto;background:#0F1B2D;color:#F5F1E8;border-radius:20px;padding:20px 22px;box-shadow:0 12px 40px -12px rgba(15,27,45,.5);display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;font-family:"Geist",system-ui,sans-serif}
.ck-banner[hidden],.ck-panel[hidden]{display:none}
.ck-banner p{margin:0;flex:1 1 320px;font-size:14px;line-height:21px;color:#D5DAE1}
.ck-banner a{color:#FF8A68}
.ck-acts{display:flex;flex-wrap:wrap;gap:8px}
.ck-btn{font:inherit;font-size:14px;font-weight:600;min-height:44px;padding:0 16px;border-radius:12px;cursor:pointer;border:1px solid #F5F1E8;background:transparent;color:#F5F1E8}
.ck-btn:hover{background:rgba(245,241,232,.08)}
.ck-btn.prim{background:#F2542D;border-color:#F2542D;color:#0F1B2D}
.ck-btn.prim:hover{background:#E4471F}
.ck-btn:focus-visible{outline:none;box-shadow:0 0 0 2px #0F1B2D,0 0 0 4px #5FB8C0}
.ck-panel{position:fixed;inset:0;z-index:60;background:rgba(15,27,45,.55);display:flex;align-items:center;justify-content:center;padding:16px;font-family:"Geist",system-ui,sans-serif}
.ck-box{background:#FFFDF8;color:#0F1B2D;border-radius:20px;max-width:560px;width:100%;max-height:calc(100vh - 32px);overflow:auto;padding:28px}
.ck-box h2{font-family:"Fraunces",Georgia,serif;font-variation-settings:"SOFT" 100,"opsz" 144;font-size:28px;line-height:1.1;margin:0 0 8px}
.ck-box>p{margin:0 0 18px;font-size:15px;line-height:23px;color:#5A6474}
.ck-cat{border-top:1px solid #DDD5C6;padding:16px 0;display:flex;gap:16px;align-items:flex-start;justify-content:space-between}
.ck-cat strong{display:block;font-size:16px;margin-bottom:4px}
.ck-cat span{font-size:14px;line-height:21px;color:#5A6474}
.ck-sw{flex:none;position:relative;width:48px;height:28px}
.ck-sw input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer;z-index:1}
.ck-sw i{position:absolute;inset:0;background:#DDD5C6;border-radius:999px;transition:background .15s}
.ck-sw i:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:7px;background:#FFFDF8;transition:transform .15s}
.ck-sw input:checked+i{background:#1F6F78}
.ck-sw input:checked+i:after{transform:translateX(20px)}
.ck-sw input:disabled+i{background:#5A6474;opacity:.6}
.ck-sw input:focus-visible+i{box-shadow:0 0 0 2px #FFFDF8,0 0 0 4px #1F6F78}
.ck-box .ck-acts{border-top:1px solid #DDD5C6;padding-top:18px;justify-content:flex-end}
.ck-box .ck-btn{border-color:#0F1B2D;color:#0F1B2D}
.ck-box .ck-btn:hover{background:#F5F1E8}
.ck-box .ck-btn.prim{background:#F2542D;border-color:#F2542D}
.ck-x{float:right;background:none;border:0;font-size:26px;line-height:1;cursor:pointer;color:#0F1B2D;width:44px;height:44px;margin:-10px -10px 0 0}
.ck-link{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:none}
.ck-link:hover{color:#F5F1E8}

/* ---------- Páginas legales ---------- */
.lg{margin:0;background:#F5F1E8;color:#0F1B2D;font-family:"Geist",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.lg a{color:#B23312}.lg a:hover{color:#0F1B2D}
.lg-top{border-bottom:1px solid #DDD5C6;background:#F5F1E8}
.lg-top div{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.lg-top img{height:30px;width:auto;display:block}
.lg-top a.back{color:#0F1B2D;text-decoration:none;font-size:15px}
.lg-wrap{max-width:1200px;margin:0 auto;padding:72px 24px 96px;display:flex;flex-wrap:wrap;gap:48px 72px;align-items:flex-start}
.lg-toc{flex:1 1 240px;max-width:300px;position:sticky;top:24px}
.lg-toc p{font-family:"Geist Mono",monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#5A6474;margin:0 0 12px}
.lg-toc ol{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:20px}
.lg-toc a{color:#0F1B2D;text-decoration:none}.lg-toc a:hover{color:#B23312}
.lg-main{flex:999 1 560px;min-width:0;max-width:760px}
.lg-eyebrow{font-family:"Geist Mono",monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#B23312;margin:0 0 12px}
.lg h1{font-family:"Fraunces",Georgia,serif;font-variation-settings:"SOFT" 100,"opsz" 144;font-weight:600;font-size:clamp(38px,5vw,60px);line-height:1.02;letter-spacing:-.02em;margin:0 0 16px}
.lg .upd{font-family:"Geist Mono",monospace;font-size:13px;color:#5A6474;margin:0 0 32px}
.lg .lead{font-size:19px;line-height:30px;color:#5A6474;margin:0 0 40px}
.lg h2{font-family:"Fraunces",Georgia,serif;font-variation-settings:"SOFT" 100,"opsz" 72;font-weight:600;font-size:26px;line-height:1.2;margin:48px 0 14px;padding-top:24px;border-top:1px solid #DDD5C6;scroll-margin-top:24px}
.lg h3{font-size:17px;margin:24px 0 8px}
.lg p,.lg li{font-size:16px;line-height:26px}
.lg ul{padding-left:20px}
.lg li{margin:6px 0}
.lg table{width:100%;border-collapse:collapse;margin:16px 0;font-size:15px;line-height:22px}
.lg .tw{overflow-x:auto}
.lg th,.lg td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid #DDD5C6}
.lg th{font-family:"Geist Mono",monospace;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#5A6474;font-weight:500;background:#FFFDF8}
.lg .box{background:#FFFDF8;border:1px solid #DDD5C6;border-radius:20px;padding:20px 24px;margin:20px 0}
.lg .box p{margin:4px 0}
.lg-foot{background:#060B12;color:#A7B0BE;font-size:14px}
.lg-foot div{max-width:1200px;margin:0 auto;padding:32px 24px;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}
.lg-foot a,.lg-foot .ck-link{color:#A7B0BE;text-decoration:none}.lg-foot a:hover{color:#F5F1E8}
.lg-foot nav{display:flex;flex-wrap:wrap;gap:12px 24px}
@media (max-width:760px){.lg-toc{position:static;max-width:none}.lg-wrap{padding-top:40px}}
