:root {

  --color-primario: #1f4d23;       
  --color-primario-hover: #163a19;
  --color-acento-calido: #d88f00;  
 
  --color-texto: #16201a;
  --color-texto-suave: #5c6b5f;
  --color-fondo: #fffdf8;          
  --color-fondo-suave: #f4f2ea;
  --color-borde: #e4e2d8;

  /* --- Estados --- */
  --color-exito: #2e7d32;
  --color-error: #c0392b;
  --color-info: #3498db;

  /* --- Tipografía ---*/
  --fuente-display: 'Fraunces', Georgia, serif;
  --fuente-base: 'Inter', -apple-system, 'Segoe UI', Arial, sans-serif;
  --tracking-tight: -0.02em;

  /* --- Layout --- */
  --radio-borde: 10px;
  --sombra-suave: 0 4px 20px rgba(0,0,0,0.06);
  --sombra-hover: 0 8px 30px rgba(0,0,0,0.1);
}

/* ===== Marca AgroValles (logo) =====
   logoAgro-icono.png = solo el ícono circular, recortado del logo completo,
   pensado para verse nítido en tamaños chicos (sidebar, navbar, formularios).
   El texto "AgroValles" se pone como texto real (h2/span), no como parte de
   la imagen, para que nunca se vea borroso/ilegible sin importar el tamaño. */
.brand-logo-icon{
  display: block;
  height: 40px;
  width: auto;
  max-width: 100%;
  flex-shrink: 0;
}

/* ===== Bloqueo de scroll del fondo mientras un modal está abierto =====
   Aplicado/quitado por un observer genérico (ver script al final de cada página).
   Se usa position:fixed (no solo overflow:hidden) para que la posición de scroll
   se conserve y se restaure exactamente al cerrar el modal, en vez de saltar arriba. */
html.modal-abierto{
  overflow: hidden;
}
body.modal-abierto{
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  overflow: hidden;
}