/* Encabezado común de los micrositios de Credinver (portal, inversiones y préstamos) y fila de links del pie.
   Un solo nivel y un solo color: encabezado blanco, texto oscuro y naranja solo para el sitio actual y el botón principal.
   Es el mismo en los tres sitios: lo copia Credinver/generar_todo.py. Editar este archivo, no las copias.
   Todas las clases llevan el prefijo mc- para no chocar con los estilos de cada sitio. */

.mc-header { position: sticky; top: 0; z-index: 70; background: #FFFFFF; border-bottom: 1px solid #ECECEC; }
.mc-enc { position: relative; display: flex; align-items: center; gap: 10px; max-width: 1200px; height: 68px; margin: 0 auto; padding: 0 20px; font-family: 'Poppins', Arial, Helvetica, sans-serif; color: #222222; }
.mc-enc *, .mc-enc *::before, .mc-enc *::after { box-sizing: border-box; }
.mc-enc ul { margin: 0; padding: 0; list-style: none; }
.mc-logo { margin-right: auto; font-family: 'Nunito', Arial, Helvetica, sans-serif; font-size: 23px; font-weight: 800; letter-spacing: -.5px; color: #222222; text-decoration: none; white-space: nowrap; }
.mc-logo span { color: #EB5424; }

/* Botones de cuenta */
.mc-acciones { display: flex; align-items: center; gap: 10px; }
.mc-btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; height: 40px; padding: 0 16px; border: 0; border-radius: 999px; font-family: 'Poppins', Arial, Helvetica, sans-serif; font-size: 14px; font-weight: 600; line-height: 1; text-decoration: none; white-space: nowrap; cursor: pointer; transition: background-color .15s, color .15s, box-shadow .15s; }
.mc-btn svg { width: 16px; height: 16px; }
.mc-btn-borde { background: #FFFFFF; color: #222222; box-shadow: inset 0 0 0 1.5px #D6D6D6; }
.mc-btn-borde:hover { box-shadow: inset 0 0 0 1.5px #222222; }
.mc-btn-primario { background: #EB5424; color: #FFFFFF; }
.mc-btn-primario:hover { background: #C8431A; }
.mc-solo-escritorio { display: none; }

/* Hamburguesa (solo celular) */
.mc-hamburguesa { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 12px; background: #F4F4F4; cursor: pointer; }
.mc-hamburguesa span, .mc-hamburguesa span::before, .mc-hamburguesa span::after { content: ""; position: relative; display: block; width: 18px; height: 2px; border-radius: 2px; background: #222222; transition: transform .2s, background-color .2s; }
.mc-hamburguesa span::before { position: absolute; top: -6px; }
.mc-hamburguesa span::after { position: absolute; top: 6px; }
.mc-hamburguesa[aria-expanded="true"] span { background: transparent; }
.mc-hamburguesa[aria-expanded="true"] span::before { transform: translateY(6px) rotate(45deg); }
.mc-hamburguesa[aria-expanded="true"] span::after { transform: translateY(-6px) rotate(-45deg); }

/* Menú: en el celular es un panel debajo del encabezado con acordeones */
.mc-menu { display: none; }
.mc-enc.mc-abierto .mc-menu { display: block; position: absolute; top: 68px; left: 0; right: 0; max-height: calc(100vh - 68px); overflow: auto; padding: 4px 20px 24px; background: #FFFFFF; border-top: 1px solid #ECECEC; box-shadow: 0 24px 40px rgba(0, 0, 0, .10); }
.mc-item > a, .mc-item-btn { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 16px 0; border: 0; border-bottom: 1px solid #F0F0F0; background: none; font-family: inherit; font-size: 16px; font-weight: 600; color: #222222; text-align: left; text-decoration: none; cursor: pointer; }
.mc-actual > .mc-item-btn { color: #EB5424; }
.mc-flecha { display: inline-block; flex: none; width: 8px; height: 8px; margin: 0 4px 4px 10px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .2s; }
.mc-sub-abierto .mc-flecha { margin-bottom: -2px; transform: rotate(-135deg); }
.mc-sub { display: none; padding: 6px 0 12px; }
.mc-sub-abierto > .mc-sub { display: block; }
.mc-sub a { display: block; padding: 9px 12px; border-radius: 12px; color: #222222; text-decoration: none; }
.mc-sub a:hover { background: #F6F6F6; }
.mc-sub b { display: block; font-size: 15px; font-weight: 600; }
.mc-sub ul span { display: block; margin-top: 1px; font-size: 13px; color: #777777; }
.mc-sub a.mc-sub-inicio { margin-top: 4px; font-size: 14px; font-weight: 600; color: #EB5424; }
.mc-menu-pie { padding-top: 18px; }
.mc-menu-pie .mc-btn { width: 100%; height: 48px; font-size: 15px; }

@media (min-width: 1000px) {
  .mc-enc { gap: 16px; padding: 0 32px; }
  .mc-logo { margin-right: 18px; }
  .mc-hamburguesa, .mc-menu-pie { display: none; }
  .mc-solo-escritorio { display: inline-flex; }
  .mc-menu, .mc-enc.mc-abierto .mc-menu { display: flex; position: static; flex: 1; max-height: none; overflow: visible; padding: 0; border: 0; box-shadow: none; background: none; }
  .mc-items { display: flex; align-items: stretch; gap: 4px; height: 68px; }
  .mc-item { position: relative; display: flex; }
  .mc-item > a, .mc-item-btn { width: auto; height: 68px; padding: 0 14px; border: 0; font-size: 15px; }
  .mc-item > a:hover, .mc-item-btn:hover { color: #EB5424; }
  /* Sitio actual: una línea naranja abajo, sin cambiar el color del texto */
  .mc-actual > .mc-item-btn { color: #222222; box-shadow: inset 0 -3px 0 #EB5424; }
  .mc-flecha { margin-left: 8px; }
  /* Desplegable */
  .mc-sub { position: absolute; top: calc(100% - 8px); left: -6px; z-index: 80; width: 330px; padding: 10px; border: 1px solid #EEEEEE; border-radius: 18px; background: #FFFFFF; box-shadow: 0 24px 50px rgba(0, 0, 0, .12); }
  .mc-sub b { font-size: 14.5px; }
  .mc-sub ul span { font-size: 12.5px; }
  .mc-sub a.mc-sub-inicio { margin-top: 6px; padding-top: 12px; border-top: 1px solid #F0F0F0; border-radius: 0 0 12px 12px; }
}
@media (min-width: 1000px) and (hover: hover) {
  .mc-con-sub:hover > .mc-sub { display: block; }
  .mc-con-sub:hover .mc-flecha { margin-bottom: -2px; transform: rotate(-135deg); }
}

/* Fila de links a los tres sitios en el pie (hereda los colores del pie de cada sitio) */
.mc-pie { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin: 0 0 18px; padding: 14px 0; border-top: 1px solid rgba(255, 255, 255, .12); border-bottom: 1px solid rgba(255, 255, 255, .12); font-size: 14px; }
.mc-pie strong { font-family: 'Nunito', Arial, Helvetica, sans-serif; font-weight: 800; }
.mc-pie strong span { color: #EB5424; }
.mc-pie a { color: inherit; font-weight: 600; text-decoration: none; }
.mc-pie a:hover { color: #EB5424; }
.mc-pie a[aria-current] { color: #EB5424; }
