/* Páginas legales — enredo.ong
   Registro visual de Colmena DAO: bosque y dorado, motivo hexagonal. */

:root {
    color-scheme: light;
    --bosque-900: #12291F;
    --bosque-700: #1E4635;
    --bosque-500: #3B6353;
    --dorado-600: #8E6318;
    --dorado-050: #F6EEDC;
    --papel: #FAF9F5;
    --tiza: #FFFFFF;
    --borde: #E1DDD2;
    --display: 'Zilla Slab', Georgia, serif;
    --texto: 'Public Sans', system-ui, -apple-system, sans-serif;
    --dato: 'IBM Plex Mono', ui-monospace, monospace;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: var(--texto);
    font-size: 1.02rem;
    line-height: 1.65;
    color: var(--bosque-700);
    background: var(--papel);
}

.envoltorio { max-width: 760px; margin-inline: auto; padding: 0 1.5rem 4rem; }

/* Cabecera y navegación */

header.legal {
    border-bottom: 3px solid var(--dorado-600);
    padding: 2.5rem 0 1.5rem;
    margin-bottom: 2rem;
}

header.legal .sitio {
    font-family: var(--dato);
    font-size: 0.76rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--dorado-600);
    display: block;
    margin-bottom: 0.6rem;
}

h1 {
    font-family: var(--display);
    font-weight: 600;
    font-size: clamp(1.8rem, 5vw, 2.4rem);
    line-height: 1.15;
    color: var(--bosque-900);
    margin: 0 0 0.6rem;
}

.vigencia { font-family: var(--dato); font-size: 0.78rem; color: var(--bosque-500); margin: 0; }

nav.paginas { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1.6rem; }

nav.paginas a {
    font-size: 0.85rem;
    text-decoration: none;
    color: var(--bosque-700);
    background: var(--tiza);
    border: 1px solid var(--borde);
    border-radius: 999px;
    padding: 6px 14px;
}

nav.paginas a[aria-current="page"] {
    background: var(--dorado-050);
    border-color: var(--dorado-600);
    color: var(--dorado-600);
    font-weight: 600;
}

nav.paginas a:hover { border-color: var(--dorado-600); }

/* Contenido */

h2 {
    font-family: var(--display);
    font-weight: 600;
    font-size: 1.35rem;
    color: var(--bosque-900);
    margin: 2.6rem 0 0.8rem;
    padding-top: 1.4rem;
    border-top: 1px solid var(--borde);
}

h2:first-of-type { border-top: 0; padding-top: 0; margin-top: 1.6rem; }

h3 { font-family: var(--display); font-weight: 600; font-size: 1.05rem; color: var(--bosque-900); margin: 1.4rem 0 0.4rem; }

p { margin: 0 0 1rem; }

a { color: var(--dorado-600); }

ul { margin: 0 0 1rem; padding-left: 1.2rem; }
li { margin-bottom: 0.45rem; }

.ficha {
    background: var(--tiza);
    border: 1px solid var(--borde);
    border-left: 3px solid var(--dorado-600);
    padding: 1.2rem 1.3rem 0.4rem;
    margin-bottom: 1.6rem;
}

.ficha dl { margin: 0; display: grid; grid-template-columns: 42% 58%; }
.ficha dt { font-family: var(--dato); font-size: 0.76rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bosque-500); padding: 0.45rem 0; border-top: 1px solid var(--borde); }
.ficha dd { margin: 0; padding: 0.45rem 0; border-top: 1px solid var(--borde); }
.ficha dl > dt:first-of-type, .ficha dl > dt:first-of-type + dd { border-top: 0; }

.aviso {
    background: var(--dorado-050);
    border-left: 3px solid var(--dorado-600);
    padding: 1rem 1.2rem 0.2rem;
    margin: 1.6rem 0;
    font-size: 0.95rem;
}

table { width: 100%; border-collapse: collapse; font-size: 0.93rem; margin-bottom: 1.4rem; }
th { font-family: var(--dato); font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; text-align: left; color: var(--dorado-600); border-bottom: 2px solid var(--dorado-600); padding: 0 0.8rem 0.5rem 0; }
td { border-bottom: 1px solid var(--borde); padding: 0.7rem 0.8rem 0.7rem 0; vertical-align: top; }
td:last-child, th:last-child { padding-right: 0; }

footer.legal {
    border-top: 1px solid var(--borde);
    margin-top: 3rem;
    padding-top: 1.4rem;
    font-family: var(--dato);
    font-size: 0.76rem;
    line-height: 1.9;
    color: var(--bosque-500);
}

:focus-visible { outline: 2px solid var(--dorado-600); outline-offset: 3px; }

@media (max-width: 560px) {
    .ficha dl { grid-template-columns: 1fr; }
    .ficha dd { border-top: 0; padding-top: 0; }
}
