/* Estilos compartidos de las páginas legales (aviso-legal, politica-privacidad, politica-cookies).
   Misma paleta y tipografías que index.html. */
:root {
  --color-rojo: #CC1010;
  --color-negro: #1E3328;
  --color-negro-suave: #2C4A38;
  --color-blanco: #F5F5F5;
  --color-crema: #F2E8D5;
  --color-gris: #4A6A55;
  --font-display: 'Oswald', sans-serif;
  --font-body: 'Lato', sans-serif;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 16px; }
body {
  font-family: var(--font-body);
  background: var(--color-negro);
  color: var(--color-crema);
  line-height: 1.75;
}
a { color: var(--color-blanco); text-decoration: underline; text-underline-offset: 3px; }
a:hover, a:focus-visible { color: var(--color-rojo); }

.lg-wrap { max-width: 860px; margin: 0 auto; padding: 0 24px; }

/* Cabecera */
.lg-header { background: var(--color-negro); border-bottom: 1px solid rgba(204,16,16,0.3); }
.lg-header .lg-wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 72px; }
.lg-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--color-blanco); font-family: var(--font-display); text-transform: uppercase; letter-spacing: 1px; }
.lg-brand img { height: 44px; width: auto; }
.lg-brand strong { color: var(--color-rojo); font-weight: 700; }
.lg-back { font-family: var(--font-display); font-size: 13px; text-transform: uppercase; letter-spacing: 1.5px; text-decoration: none; white-space: nowrap; }

/* Contenido */
main { padding: 56px 0 72px; }
h1 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: clamp(28px, 5vw, 40px);
  text-transform: uppercase;
  color: var(--color-blanco);
  line-height: 1.15;
  margin-bottom: 8px;
}
h1::after { content: ''; display: block; width: 56px; height: 3px; background: var(--color-rojo); margin-top: 16px; }
.lg-updated { font-size: 14px; color: #AAAAAA; margin: 16px 0 32px; }
h2 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 20px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--color-blanco);
  margin: 40px 0 12px;
}
p { margin-bottom: 14px; }
ul { margin: 0 0 14px 22px; }
li { margin-bottom: 6px; }
strong { color: var(--color-blanco); }

/* Ficha de datos (dl) */
.lg-datos { background: var(--color-negro-suave); border-top: 3px solid var(--color-rojo); padding: 20px 24px; margin-bottom: 24px; }
.lg-datos dt { font-family: var(--font-display); font-size: 12px; text-transform: uppercase; letter-spacing: 1.5px; color: #AAAAAA; margin-top: 12px; }
.lg-datos dt:first-child { margin-top: 0; }
.lg-datos dd { color: var(--color-blanco); }

/* Tablas */
.lg-tabla { overflow-x: auto; margin-bottom: 20px; }
table { width: 100%; border-collapse: collapse; font-size: 15px; }
th, td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid rgba(242,232,213,0.18); }
th { font-family: var(--font-display); font-size: 12px; text-transform: uppercase; letter-spacing: 1px; color: var(--color-blanco); background: var(--color-negro-suave); }

/* Pie */
.lg-footer { background: #142218; padding: 32px 0; border-top: 1px solid rgba(204,16,16,0.15); }
.lg-footer nav { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-bottom: 16px; }
.lg-footer a { font-size: 14px; color: #AAAAAA; }
.lg-footer a[aria-current="page"] { color: var(--color-blanco); text-decoration: none; }
.lg-footer p { font-size: 13px; color: var(--color-gris); margin: 0; }

@media (max-width: 480px) {
  .lg-brand span { display: none; }
}
