
/* Etiqueta inicial según idioma del sitio (sin tocar JS) */
html[lang^="es"] { --lang-label: "Es"; }
html[lang^="en"] { --lang-label: "En"; }
html[lang^="ca"] { --lang-label: "Ca"; }

/* Botón del switcher: base + fallbacks */
#langButton { position: relative; }

/* Mientras nuestro JS no marque listo, mostramos la etiqueta vía pseudo */
#langButton:not([data-ready="1"]) {
  color: transparent;
}
#langButton:not([data-ready="1"])::before {
  content: var(--lang-label);
  position: absolute; inset: 0 auto 0 0; /* ocupa el sitio del label */
}

/* Si algún script borra el texto del botón en caliente, mantenemos la etiqueta */
#langButton:empty {
  color: transparent;
}
#langButton:empty::before {
  content: var(--lang-label);
  position: absolute; inset: 0 auto 0 0;
}

/* Activo en el desplegable */
.dropdown.lang-list .dropdown-menu .dropdown-item.active,
.dropdown.lang-list .dropdown-menu .dropdown-item[aria-current="true"] {
  background-color: rgb(238,238,238) !important;
  color: inherit;
}

/* Fade-in del switcher al cargar página (no afecta al clic) */
#langButton {
  opacity: 0;
  transition: opacity 0.5s ease; /* ajusta duración si quieres */
}
body.js-lang-ready #langButton {
  opacity: 1;
}

/* Mantener visible el label cuando el dropdown está abierto */
.dropdown.lang-list.show #langButton { 
  color: inherit !important; 
  opacity: 1 !important; 
}


/* ====== TERMINALES 2025 (no toca el bloque antiguo) ====== */
.home .terminales-2025 { position: relative; }

.home .terminales-2025 .t25-card{
  display:block;
  position:relative;
  background:#fff;
  color:#000;
  text-decoration:none;
  min-height:552px;           /* altura muy parecida a la actual */
  border-left:1px solid rgba(188,189,188,.3);
}

.home .terminales-2025 .t25-inner{
  position: static;   /* antes era relative; lo anulamos */
  /* opcional: quitamos la altura forzada */
  height: auto;
  min-height: 0;
}

.home .terminales-2025 .t25-title{
  margin:0 0 1.25rem 0;
  padding: 3rem 0rem 0rem 1.5rem;
  font-size:47px;             /* como el diseño actual */
  line-height:1.05;
  color:#0061c2;              /* azul de marca */
  font-weight:normal;
}

.home .terminales-2025 .t25-nums{
  margin:0;
  padding-left: 1.5rem;
  font-size: 47px;
  line-height:1.15;
  color:#000;                 /* negro (tal como pedís) */
  font-weight:normal;
}

.home .terminales-2025 .t25-nums sup{
  font-size:.6em;
  top:-.4em;
}

.home .terminales-2025 .t25-arrow{
  position:absolute;
  right:22px;
  bottom:22px;
  font-size:22px;
  color:#000;                 /* negro por defecto */
  transition:transform .25s ease, color .25s ease;
}

/* --- Hover / foco --- */
.home .terminales-2025 .t25-card:hover,
.home .terminales-2025 .t25-card:focus{
  background:#0061c2;         /* panel azul al pasar */
  outline:none;
}

.home .terminales-2025 .t25-card:hover .t25-title,
.home .terminales-2025 .t25-card:focus .t25-title{
  color:#fff;                 /* título pasa a blanco */
}

.home .terminales-2025 .t25-card:hover .t25-arrow,
.home .terminales-2025 .t25-card:focus .t25-arrow{
  color:#fff;                 /* flecha a blanco */
  transform:rotate(-30deg);   /* ligera rotación */
}

/* Accesibilidad: ocultar texto auxiliar visualmente pero accesible */
.home .terminales-2025 .visually-hidden{
  position:absolute!important;
  width:1px;height:1px;
  margin:-1px;padding:0;border:0;
  clip:rect(0 0 0 0);clip-path:inset(50%);
  overflow:hidden;white-space:nowrap;
}

/* --- Responsivo rápido (ajusta si hiciera falta) --- */
@media (max-width: 1200px){
  .home .terminales-2025 .t25-title{ font-size:42px; }
  .home .terminales-2025 .t25-nums{  font-size:42px; }
}
@media (max-width: 1024px){
  .home .terminales-2025 .t25-title{ font-size:38px; }
  .home .terminales-2025 .t25-nums{  font-size:38px; }
  .home .terminales-2025 .t25-card{  min-height:430px; }
}
@media (max-width: 992px){
  .home .terminales-2025 .t25-title{ font-size:32px; }
  .home .terminales-2025 .t25-nums{  font-size:32px; }
  .home .terminales-2025 .t25-card{  min-height:400px; }
}
@media (max-width: 768px){
  .home .custom-html-widget { height: 360px; }
  .home .terminales-2025 .t25-card{  min-height: 360px; }
  .home .terminales-2025 .t25-nums{padding-left: 4rem;}
  .home .terminales-2025 .t25-title{padding: 3rem 0rem 0rem 4rem;}
}

footer .copy {
  top: 15% !important;
}