/* CABECERA y BOTÓN PRINCIPAL compartidos (fuente única, sacados de la home). Se inyectan en la home y se enlazan (cab.css) en las páginas
   con cabecera simple: legales y 404. No se cargan en la biblioteca, que tiene su propia cabecera. */
.top-simple{--hh:76px;--btn:#1D4ED8;--btn-d:#1E40AF;--ease-out:cubic-bezier(.23,1,.32,1);--gut:clamp(16px,3vw,56px);--max:1280px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 28px;border-radius:999px;border:0;font:600 18px/1 var(--fb);text-decoration:none;white-space:nowrap;cursor:pointer;
  -webkit-tap-highlight-color:transparent;transition:transform 160ms var(--ease-out),background-color 200ms ease,border-color 200ms ease,box-shadow 200ms ease}
.btn:active{transform:scale(.97)}
.btn svg{width:20px;height:20px;flex:none}
.btn-main{background:var(--btn);color:#fff;box-shadow:0 1px 0 rgba(255,255,255,.28) inset,0 12px 26px -12px rgba(29,78,216,.75)}
.btn-main .arr{transition:transform 200ms var(--ease-out)}
@media (hover:hover) and (pointer:fine){
  .btn-main:hover{background:var(--btn-d)}
  .btn-main:hover .arr{transform:translateX(3px)}
}
.top{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.88);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color 200ms ease,box-shadow 250ms ease}
.top.scrolled{border-bottom-color:var(--line)}
.top.compact{box-shadow:0 10px 30px -24px rgba(10,29,58,.45)}
.top-in{max-width:calc(var(--max) + var(--gut) * 2);margin:0 auto;height:var(--hh);padding:0 var(--gut);display:flex;align-items:center;gap:24px;transition:height 250ms var(--ease-out)}
.top.compact .top-in{height:62px}
.logo{display:flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;color:var(--ink);font:600 19px/1 var(--fh);letter-spacing:-.01em;white-space:nowrap}
.logo img{width:38px;height:38px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--btn);transition:width 250ms var(--ease-out),height 250ms var(--ease-out)}
.top.compact .logo img{width:32px;height:32px}
.btn-top{min-height:46px;padding:0 20px;font-size:16px;box-shadow:0 10px 22px -12px rgba(29,78,216,.7)}
.btn-top .tb-s{display:none}
.top-simple .btn-top{margin-left:auto}
@media (max-width:760px){
  .top-in,.top.compact .top-in{height:56px;gap:10px}
  .top.compact .top-in{height:52px}
  .logo{font-size:15px;gap:9px}
  .logo img,.top.compact .logo img{width:28px;height:28px;box-shadow:none}
  .btn-top{min-height:40px;padding:0 15px;font-size:14px;box-shadow:none}
  .btn-top .tb-l{display:none}.btn-top .tb-s{display:inline}
  .btn-top svg{display:none}
}
