/* =====================================================================
   SOLEGSAL — Capa base: reinicio, tokens y escala
   Todos los valores salen de medir el sitio original, no de estimarlos.
   Origen: _original/inventario/_resumen.json
   ===================================================================== */

/* ---------- Tokens ---------- */
:root{
  /* Azules institucionales */
  --azul:          #003759;   /* 100 usos en texto, 11 en fondo */
  --azul-2:        #0a3b59;   /* 33 en texto, 13 en fondo */
  --azul-velo:     rgba(5,76,128,.82);   /* velo sobre foto de sección */
  --azul-velo-2:   rgba(10,59,89,.75);
  --azul-degradado: linear-gradient(135deg,#003759 0%,#0a4a70 100%);

  /* Vino: es el color de acción (51 fondos, más que ningún otro) */
  --vino:          #a63740;
  --vino-oscuro:   #a5333b;   /* estado hover del original */

  /* Dorado: enlace activo del menú. Detalle del original. */
  --oro:           #cea950;
  --oro-borde:     #caa54c;

  /* Texto */
  --tinta:         #3a4550;
  --tinta-fuerte:  #26313c;
  --tinta-suave:   #666666;
  --tinta-tenue:   #8b98a5;
  --negro:         #000000;
  --blanco:        #ffffff;

  /* Superficies */
  --gris-1:        #f7fafc;
  --gris-2:        #f5f8fa;
  --linea:         #e6ecf1;
  --linea-2:       #e4ebf1;

  /* Tipografía */
  --serif:  'Adamina', Georgia, 'Times New Roman', serif;
  --sans:   'Open Sans', -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;

  /* Medidas del original */
  --contenedor: 1080px;   /* .et_pb_row en escritorio */
  --contenedor-pct: 80%;  /* 614/768 y 312/390 dan el mismo 80% */
  --lectura: 820px;       /* ancho cómodo para artículo largo */

  /* Sombras */
  --sombra-tarjeta: 0 10px 28px rgba(10,59,89,.09);
  --sombra-alta:    0 18px 42px rgba(10,59,89,.18);
  --sombra-foto:    0 14px 36px rgba(10,59,89,.16);
}

/* ---------- Reinicio ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--sans);
  font-size:17px;          /* medido: 17px es el tamaño de cuerpo dominante */
  line-height:1.75;
  color:var(--tinta);
  background:var(--blanco);
  overflow-x:hidden;       /* red de seguridad; el desborde se corrige en origen */
}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4,h5,h6{font-family:var(--serif);font-weight:400;margin:0;line-height:1.25}
p{margin:0 0 1.5em}
ul,ol{margin:0 0 1.5em}

/* ---------- Contenedor ----------
   El original usa ancho fluido al 80% con tope de 1080 px. Se replica igual
   en vez de escalar un lienzo fijo, porque el origen ya era responsive. */
.contenedor{
  width:var(--contenedor-pct);
  max-width:var(--contenedor);
  margin-inline:auto;
}

/* ---------- Escala tipográfica medida ----------
   IMPORTANTE: el original NO reduce la tipografía en tablet ni móvil.
   Mismos píxeles en los tres tamaños. Medido en vivo sobre solegsal.com.
   Por eso aquí no hay media queries que encojan el texto. */
.t-seccion{                    /* Adamina 32px/400 negro — títulos de sección */
  font-family:var(--serif);font-size:32px;font-weight:400;
  line-height:1.28;color:var(--negro);
}
.t-bloque{                     /* Adamina 24px/500 negro — títulos de bloque */
  font-family:var(--serif);font-size:24px;font-weight:500;
  line-height:1.4;color:var(--negro);
}
.t-sub{                        /* Adamina 21px */
  font-family:var(--serif);font-size:21px;line-height:1.4;color:var(--azul-2);
}
.t-destacado{
  font-family:var(--serif);font-size:18px;font-weight:700;line-height:1.32;
}
.t-cuerpo{font-family:var(--serif);font-size:18px;font-weight:500;line-height:1.6;color:var(--negro)}
.t-menudo{font-size:14px;line-height:1.7;color:var(--tinta-suave)}

/* ---------- Utilidades ---------- */
.centrado{text-align:center}
.solo-lectura{max-width:var(--lectura);margin-inline:auto}
.oculto-visual{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}
.saltar-al-contenido{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--azul);color:#fff;padding:12px 20px;
}
.saltar-al-contenido:focus{left:0}

/* Foco visible: el original no lo tenía y es un fallo de accesibilidad */
a:focus-visible,button:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible{
  outline:3px solid var(--oro);outline-offset:2px;
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
