* { box-sizing: border-box; }
html { color: #242620; background: #f5f4ee; font: 17px/1.6 system-ui, sans-serif; }
body { margin: 0; }
main { width: min(54rem, 100%); margin: auto; padding: clamp(1rem, 4vw, 3rem); }
h1, h2 { line-height: 1.2; overflow-wrap: anywhere; }
h1 { margin: .45em 0 .25em; font-size: clamp(1.65rem, 5vw, 2.65rem); }
h2 { margin-top: 1.7em; border-bottom: 1px solid #c4c9ba; padding-bottom: .25em; }
a { color: #245a49; text-underline-offset: .16em; }
a:focus-visible { outline: 2px solid #245a49; outline-offset: 3px; }
.kicker { font-weight: 700; color: #325846; }
time, .detalle { color: #4c564c; }
.saltos { display: flex; gap: .6rem 1rem; flex-wrap: wrap; padding: .7rem 0; }
.saltos a { font-weight: 600; }
.indice { padding-left: 1.35em; }
.indice li { margin-bottom: .55em; }
.indice time { font-size: .88em; margin-left: .4em; }
article { display: flow-root; margin-top: 1.5rem; background: white; padding: clamp(.8rem, 3vw, 1.7rem); border-radius: .35rem; overflow-wrap: anywhere; }
article img { max-width: 100% !important; height: auto !important; }
article iframe, article table { max-width: 100% !important; }
footer { border-top: 1px solid #c4c9ba; margin-top: 2rem; padding-top: .75rem; font-size: .9em; }
