/* Superficies y texto del menú se definen juntos en todas las páginas. */
:root{--aqp-menu-bg:#fff;--aqp-menu-ink:#202c3a;--aqp-menu-line:#cbd5e1;--aqp-menu-hover:#e7f0fa;--aqp-menu-accent:#124f83}
html[data-theme="dark"]{--aqp-menu-bg:#172231;--aqp-menu-ink:#f1f5fa;--aqp-menu-line:#536477;--aqp-menu-hover:#263b50;--aqp-menu-accent:#b9dfff}
html body .aqp-mainnav,html body #menug,html body #menug .navbar-collapse{background:var(--aqp-menu-bg)!important;color:var(--aqp-menu-ink)!important;border-color:var(--aqp-menu-line)!important}
html body #menug .navbar-nav>li>a,html body #menug .navbar-collapse.in a,html body #menug .navbar-collapse.collapsing a{color:var(--aqp-menu-ink)!important;min-height:44px;overflow-wrap:anywhere;white-space:normal}
html body #menug .navbar-nav>li>a:hover,html body #menug .navbar-nav>li>a:focus,html body #menug .navbar-nav>li.active>a{background:var(--aqp-menu-hover)!important;color:var(--aqp-menu-accent)!important}
html body #menug .navbar-toggle{background:var(--aqp-menu-bg)!important;color:var(--aqp-menu-ink)!important;border:1px solid var(--aqp-menu-line)!important;min-height:44px;min-width:92px;border-radius:10px;padding:10px 12px}
html body #menug .navbar-toggle:hover,html body #menug .navbar-toggle:focus{background:var(--aqp-menu-hover)!important}
.aqp-menu-label{font:600 14px/22px Arial,sans-serif;vertical-align:middle;margin-right:10px}
.aqp-menu-bars{display:inline-grid;gap:4px;vertical-align:middle}
html body #menug .navbar-toggle .icon-bar{background:var(--aqp-menu-ink)!important;margin:0;width:22px;height:2px}
html body #menug a:focus-visible,html body #menug button:focus-visible,.aqp-header-social a:focus-visible{outline:3px solid var(--aqp-menu-accent);outline-offset:2px}
.aqp-header-social{display:flex;align-items:center;gap:8px;list-style:none;margin:0;padding:0;flex:0 0 auto}
.aqp-header-social li{display:block;margin:0;padding:0}
html body .navbarlogo .aqp-header-social a{display:grid;place-items:center;width:44px;height:44px;padding:10px;border-radius:12px;background:var(--aqp-menu-hover);color:var(--aqp-menu-accent);border:1px solid var(--aqp-menu-line)}
.aqp-header-social svg{display:block;width:22px;height:22px;fill:currentColor}
.navbarlogo .container-fluid{gap:12px}.navbarlogo .navbar-header{min-width:0}
html body .topbar .nav,html body .topbar .nav-dd-box{background:var(--aqp-menu-bg);color:var(--aqp-menu-ink)}
html body .topbar .nav a:not(.btn),html body .topbar .nav-dd-btn,html body .topbar .nav-toggle{color:var(--aqp-menu-ink)!important}
html body .topbar .nav a:not(.btn):hover,html body .topbar .nav a.on{background:var(--aqp-menu-hover);color:var(--aqp-menu-accent)!important}
html body .topbar .nav-toggle{background:var(--aqp-menu-bg);border-color:var(--aqp-menu-line);min-height:44px}
.aqp-community{min-width:0}.aqp-community h1{font-size:clamp(25px,4vw,38px);line-height:1.18;text-wrap:balance}
.aqp-community>p,.aqp-community>nav,.aqp-community>section{overflow-wrap:anywhere}
.aqp-community .btn{white-space:normal;max-width:100%;min-height:44px;margin-bottom:6px}
@media(max-width:767px){
 html body .navbarlogo .container-fluid{padding:10px 12px;min-height:68px!important}
 html body .navbarlogo .navbar-brand .brand-logos img{max-width:min(210px,55vw)!important;width:auto!important;height:auto!important;max-height:52px!important}
 html body #menug .navbar-collapse.in,html body #menug .navbar-collapse.collapsing{margin:0;padding:6px 0;max-height:65vh;max-height:65dvh;overflow-y:auto;overflow-x:hidden;box-shadow:0 8px 18px rgba(0,0,0,.12)}
 html body #menug .navbar-nav{width:100%;margin:0!important;padding:0;border:0;border-radius:0;box-shadow:none;background:var(--aqp-menu-bg)!important}
 html body #menug .navbar-collapse .navbar-nav>li>a{display:flex;align-items:center;padding:12px 14px!important;min-height:46px;border-bottom:1px solid var(--aqp-menu-line)}
 .aqp-community .nv-head{gap:8px;flex-wrap:wrap}.aqp-community .nv-head h3{font-size:24px}
 html body .topbar .nav a,html body .topbar .nav-dd-btn{min-height:44px;white-space:normal;overflow-wrap:anywhere}
 .aqp-community>p>.btn{display:flex;justify-content:center;width:100%}
 input,select,textarea{font-size:16px}
}

/* ---------------------------------------------------------------
   Menú público en pantallas medianas y celular. site-design.css deja el
   menú siempre desplegado y esconde el botón; aquí vuelve a plegarse en
   todas las páginas (no solo en las de "diseño público"), con el
   buscador a la vista y los enlaces en columna, grandes para el pulgar.
   --------------------------------------------------------------- */
html body .topbar .nav-toggle{display:none;align-items:center;gap:8px;min-height:40px;padding:6px 12px;border-radius:10px;border:1px solid var(--aqp-menu-line);background:var(--aqp-menu-bg);color:var(--aqp-menu-ink);font:600 13px/1 system-ui,sans-serif;cursor:pointer}
html body .topbar .nav-toggle:before{content:none!important}
.nav-toggle-ico{display:inline-block;width:18px;height:2px;background:currentColor;position:relative;border-radius:2px}
.nav-toggle-ico::before,.nav-toggle-ico::after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor;border-radius:2px}
.nav-toggle-ico::before{top:-6px}.nav-toggle-ico::after{top:6px}
html body .topbar .nav-buscar{margin-left:auto}
@media (max-width:1150px){
 html body .aqp-unified-header,html body .topbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
 html body .topbar .brand{flex:1 1 auto;min-width:0}
 html body .topbar .nav-toggle{display:inline-flex;order:2;margin-left:0}
 html body .topbar .nav-buscar{order:3;flex:1 1 100%;width:100%;margin:2px 0 0}
 html body .topbar .nav-buscar input,html body .topbar .nav-buscar input:focus{width:100%}
 html body .topbar.aqp-unified-header nav.nav,html body .aqp-unified-header .nav,html body .topbar .nav{display:none!important;order:4;width:100%!important;flex-direction:column!important;flex-wrap:nowrap!important;justify-content:flex-start!important;align-items:stretch;gap:2px;margin:6px 0 0;padding:8px;border:1px solid var(--aqp-menu-line);border-radius:14px;background:var(--aqp-menu-bg)}
 html body .topbar.aqp-unified-header nav.nav.open,html body .aqp-unified-header .nav.open,html body .topbar .nav.open{display:flex!important}
 html body .topbar .nav>a,html body .topbar .nav .nav-dd-btn{width:100%;justify-content:flex-start;padding:11px 12px;font-size:14px;min-height:44px}
 html body .topbar .nav .nav-dd{width:100%}
 html body .topbar .nav .nav-dd-box{position:static;box-shadow:none;border:0;padding:0 0 0 14px;min-width:0}
 html body .topbar .nav .nav-dd-box:not(.notif-mini):not(.cuenta-box){display:block}
 html body .topbar .nav .cuenta-btn .cuenta-nombre{display:inline}
 html body .topbar .nav .btn{justify-content:center;margin:4px 0}
 html body .topbar .nav .nav-chatava{display:none}
}
@media (max-width:520px){
 html body .topbar .nav-toggle span:last-child{display:none}
 html body .topbar .nav-toggle{padding:6px 10px}
}
/* site-design.css fuerza fila y anchos automáticos con !important; en el
   celular gana esta hoja por especificidad para que el menú sea una columna. */
@media (max-width:1150px){
 html body .topbar.aqp-unified-header nav.nav{border:1px solid var(--aqp-menu-line)!important;border-radius:14px!important;background:var(--aqp-menu-bg)!important;padding:8px!important;align-items:stretch!important;gap:2px!important}
 html body .topbar.aqp-unified-header nav.nav>a,html body .topbar.aqp-unified-header nav.nav .nav-dd,html body .topbar.aqp-unified-header nav.nav .nav-dd-btn{width:100%!important;flex:0 0 auto!important;justify-content:flex-start!important;text-align:left}
 html body .topbar.aqp-unified-header nav.nav>a{padding:11px 12px!important;font-size:14px!important;min-height:44px}
 html body .topbar.aqp-unified-header nav.nav .nav-dd-box{position:static!important;box-shadow:none!important;border:0!important;min-width:0!important;padding:0 0 0 14px!important;background:transparent!important}
 html body .topbar.aqp-unified-header nav.nav .nav-dd-box:not(.notif-mini):not(.cuenta-box){display:block!important}
 html body .topbar.aqp-unified-header nav.nav .nav-dd-box a{padding:9px 10px!important;font-size:13.5px!important}
 html body .topbar.aqp-unified-header nav.nav .cuenta-btn{gap:8px!important}
 html body .topbar.aqp-unified-header nav.nav .cuenta-box{display:none}
 html body .topbar.aqp-unified-header nav.nav .nav-dd.open .cuenta-box{display:block!important}
}
/* Botones más pequeños en celular en TODAS las páginas públicas (el panel
   ya tiene su propia regla). 38 px de alto: cabe el pulgar y no ocupa media
   pantalla. */
@media (max-width:640px){
 html body .btn,html body .act-btn{min-height:38px;padding:7px 12px;font-size:12.5px;border-radius:10px}
 html body .btn-sm{min-height:34px;padding:5px 10px;font-size:12px}
 html body .aqp-actions .btn,html body .meta-row .btn{flex:1 1 auto}
 html body .card.pad{padding:14px}
 html body .grid.g2 .btn,html body .grid.g3 .btn{width:auto}
}
/* Internet lenta: sin animaciones pesadas ni vídeos de fondo. */
html.red-lenta *{animation-duration:.01s!important;transition-duration:.01s!important}
html.red-lenta video,html.red-lenta .hero-motion,html.red-lenta .aqp-brand-shine::after{display:none!important}
img[loading=lazy]{content-visibility:auto}
@media (max-width:1150px){
 html body .topbar.aqp-unified-header nav.nav .nav-dd{display:block!important;width:100%!important;position:static!important}
 html body .topbar.aqp-unified-header nav.nav .nav-dd-box{display:block;width:100%!important;max-width:none!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;opacity:1!important;visibility:visible!important}
 html body .topbar.aqp-unified-header nav.nav .nav-dd-box a{display:block!important;width:100%!important;white-space:normal}
 html body .topbar.aqp-unified-header nav.nav .notif-mini,html body .topbar.aqp-unified-header nav.nav .cuenta-box{display:none}
 html body .topbar.aqp-unified-header nav.nav .nav-dd.open>.notif-mini,html body .topbar.aqp-unified-header nav.nav .nav-dd.open>.cuenta-box{display:block!important}
}
