/* TG Consultores · estilos compartidos (complementan los estilos de cada página) */
html{scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}
img{max-width:100%}
.dc-if{display:contents}
.dc-if[hidden]{display:none !important}
[hidden]{display:none !important}

/* Puntos del banner */
.bn-dot{width:44px;height:44px;border:0;padding:0;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center}
.bn-dot span{display:block;width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.5);transition:width .25s ease}
.bn-dot[aria-current="true"] span{width:32px;height:8px;background:#fff}
#bn{transition:background-color .4s ease}

/* Filtros (blog y casos de éxito) */
.chip{min-height:44px;padding:0 18px;border-radius:999px;border:1px solid #B7C5DD;background:#fff;color:#1B2C5E;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.chip[aria-pressed="true"]{border-color:#1B2C5E;background:#1B2C5E;color:#fff}

/* Foco visible para teclado */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2AA7DF;outline-offset:2px}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}#bn,.bn-dot span{transition:none}}

/* Encabezado: más compacto para que menú y botones quepan en una línea */
header .navlink{font-size:14px}
header nav{column-gap:12px !important}
header .btn{min-height:44px;padding:0 16px;font-size:14px}
header .btn svg{display:none}
header .wrap{flex-wrap:nowrap !important}
.menu-btn{display:none}

/* Menú móvil */
@media (max-width:1259px){
  header .wrap{flex-wrap:wrap !important}
  .menu-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;padding:0 14px;border-radius:999px;border:1px solid #B7C5DD;background:#fff;color:#1B2C5E;font:600 15px Inter,system-ui,sans-serif;cursor:pointer;margin-left:auto}
  header nav,header .wrap > div:last-child{display:none !important}
  header.menu-open nav{display:flex !important;flex-direction:column;align-items:flex-start;width:100%;gap:0 !important}
  header.menu-open .wrap > div:last-child{display:flex !important;width:100%;padding-bottom:8px}
  header.menu-open .navlink{width:100%;border-bottom:1px solid #EEF2F8;font-size:16px}
}
