/* Halko · cabecera y pie comunes (portada y páginas públicas) */
/* Cabecera */
.hcab{position:sticky;top:0;z-index:1100;background:rgba(11,17,27,.86);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.hcab .w{display:flex;align-items:center;gap:14px;height:68px}
.marca{display:flex;align-items:center;gap:10px;font:700 1.35rem "Space Grotesk",sans-serif;color:var(--tx);text-decoration:none;margin-right:auto}
.menu{display:flex;align-items:center;gap:4px}
.menu>a,.dbtn{color:var(--tx2);text-decoration:none;font:500 .93rem Inter,sans-serif;padding:9px 12px;border-radius:10px;background:none;border:0;cursor:pointer}
.menu>a:hover,.dbtn:hover,.dbtn[aria-expanded=true]{color:var(--tx);background:var(--card)}
.desp{position:relative}
.dpanel{position:absolute;left:50%;top:calc(100% + 10px);transform:translateX(-50%) translateY(6px);width:min(720px,92vw);background:var(--bg2);border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 24px 60px rgba(0,0,0,.5);opacity:0;visibility:hidden;transition:.18s}
.desp.on .dpanel{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.dgrid{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.dgrid a{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;color:var(--tx);text-decoration:none;font-size:.93rem}
.dgrid a:hover{background:var(--card)}.dgrid i{font-style:normal;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--card);border:1px solid var(--line);flex:none}
.dtodo{display:block;margin-top:8px;padding:10px 12px;border-top:1px solid var(--line);color:var(--acc);text-decoration:none;font-weight:600}
.hamb{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:var(--card);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.hamb span{display:block;width:18px;height:2px;background:var(--tx);border-radius:2px;transition:.2s}
.hamb[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamb[aria-expanded=true] span:nth-child(2){opacity:0}.hamb[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.solo-movil{display:none}
@media(max-width:960px){
 .hamb{display:flex}.oculto-movil{display:none}.hcab .btn.p{padding:10px 14px}
 .menu{position:fixed;inset:68px 0 auto 0;max-height:calc(100vh - 68px);overflow:auto;flex-direction:column;align-items:stretch;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 16px 22px;gap:2px;transform:translateY(-8px);opacity:0;visibility:hidden;transition:.2s}
 .menu.on{opacity:1;visibility:visible;transform:none}
 .menu>a,.dbtn{font-size:1.05rem;padding:13px 12px;text-align:left;width:100%}
 .solo-movil{display:block}
 .dpanel{position:static;transform:none;width:auto;box-shadow:none;border:0;padding:4px 0 8px;display:none;opacity:1;visibility:visible}
 .desp.on .dpanel{display:block;transform:none}.dgrid{grid-template-columns:1fr}
}

.btn.ghost{background:transparent}
/* Pie */
.mpie{border-top:1px solid var(--line);background:#090e17;padding:56px 0 26px;font-size:.92rem}
.mpie-top{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:32px}
.mpie h3{font:600 .8rem Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--tx3);margin:6px 0 14px}
.mpie a{display:block;color:var(--tx2);text-decoration:none;padding:4px 0}.mpie a:hover{color:var(--acc)}
.mpie .marca{display:flex;margin-bottom:12px}.mpie-marca p{color:var(--tx2);max-width:300px}.paises{font-size:.85rem}
.mpie-bajo{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line);color:var(--tx3);font-size:.84rem}
@media(max-width:900px){.mpie-top{grid-template-columns:1fr 1fr}.mpie-marca{grid-column:1/-1}}

.saltar{position:absolute;left:-999px;top:8px;background:var(--acc);color:#1a1200;padding:8px 14px;border-radius:8px;z-index:2000}.saltar:focus{left:12px}
.hcab .btn{white-space:nowrap}
@media(max-width:960px){.hcab .oculto-movil{display:none}}
/* Iconos de línea */
.ic{width:22px;height:22px;flex:none;vertical-align:middle}.ic-sm{width:16px;height:16px}.ic-eb{width:16px;height:16px;margin-right:2px;vertical-align:-3px}
.dgrid i{color:var(--acc)}.dgrid i .ic{width:19px;height:19px}
/* Aparición suave al bajar */
.r{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.r.vis{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.r{opacity:1;transform:none;transition:none}}
