/* ===== Fuentes alojadas aquí (SIL OFL) ===== */
/* Caveat 500 normal · latin-ext */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fuentes/caveat-normal-latin-ext-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Caveat 500 normal · latin */
@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fuentes/caveat-normal-latin-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Fraunces 300 italic · latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(/fuentes/fraunces-italic-latin-ext-2.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Fraunces 300 italic · latin */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(/fuentes/fraunces-italic-latin-3.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Fraunces 400 italic · latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fuentes/fraunces-italic-latin-ext-2.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Fraunces 400 italic · latin */
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/fuentes/fraunces-italic-latin-3.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Fraunces 300 normal · latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-ext-4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Fraunces 300 normal · latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Fraunces 400 normal · latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-ext-4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Fraunces 400 normal · latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Fraunces 500 normal · latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-ext-4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Fraunces 500 normal · latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Fraunces 600 normal · latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-ext-4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Fraunces 600 normal · latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fuentes/fraunces-normal-latin-5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* IBM Plex Mono 400 normal · latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fuentes/ibm-plex-mono-normal-latin-ext-6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* IBM Plex Mono 400 normal · latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fuentes/ibm-plex-mono-normal-latin-7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* IBM Plex Mono 500 normal · latin-ext */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fuentes/ibm-plex-mono-normal-latin-ext-8.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* IBM Plex Mono 500 normal · latin */
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fuentes/ibm-plex-mono-normal-latin-9.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* IBM Plex Sans 300 normal · latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-ext-10.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* IBM Plex Sans 300 normal · latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-11.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* IBM Plex Sans 400 normal · latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-ext-10.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* IBM Plex Sans 400 normal · latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-11.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* IBM Plex Sans 500 normal · latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-ext-10.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* IBM Plex Sans 500 normal · latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-11.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* IBM Plex Sans 600 normal · latin-ext */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-ext-10.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* IBM Plex Sans 600 normal · latin */
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  font-stretch: 100%;
  font-display: swap;
  src: url(/fuentes/ibm-plex-sans-normal-latin-11.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* ===== fin fuentes ===== */
/* eliasliarte.es · tinta, piedra caliza y oro */
:root{
  --tinta:#14161A; --tinta-2:#1E2025; --piedra:#EFEBE3; --piedra-2:#E5DFD3;
  --linea:#CFC8BA; --linea-2:#DDD6C8; --texto:#1B1D21; --texto-2:#3A3D44; --texto-3:#4A4D54;
  --oro:#C9A15A; --oro-claro:#E2C285; --oro-texto:#7A5C24; --gris-claro:#D9D3C7; --gris-medio:#A9A397;
  --serif:'Fraunces',Georgia,serif; --sans:'IBM Plex Sans',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--piedra);color:var(--texto);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--oro-texto)} a:hover{color:#4F3A14}
:focus-visible{outline:2px solid var(--oro);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.saltar{position:absolute;left:-999px;top:8px;background:var(--oro);color:var(--tinta);padding:8px 14px;z-index:50}
.saltar:focus{left:8px}
.etiqueta{font-family:var(--mono);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--oro-texto);font-weight:400}

/* ---------- Portada ---------- */
.portada{display:flex;background:var(--tinta);color:var(--piedra);height:100svh;min-height:680px;max-height:1000px}
.intro{flex:0 0 500px;padding:44px 52px 36px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.intro .web{font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:var(--gris-medio)}
.quien{display:flex;align-items:flex-end;gap:24px}
.retrato{flex:0 0 150px;width:150px;height:188px;object-fit:cover;box-shadow:10px 10px 0 -1px var(--tinta),10px 10px 0 0 var(--oro)}
.retrato.vacio{position:relative;background:var(--tinta-2);overflow:hidden}
.retrato.vacio svg{position:absolute;inset:0;width:100%;height:100%}
.retrato.vacio span{position:absolute;left:0;right:0;top:10px;text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gris-medio)}
.intro .hola{margin:0 0 4px;color:var(--gris-claro)}
.intro h1{margin:0;font-family:var(--serif);font-weight:400;font-size:52px;line-height:1.02}
.atajos{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px}
.atajos a{color:var(--gris-claro);text-decoration:none;border-bottom:1px solid #3A3D44;padding-bottom:2px}
.atajos a:hover{color:var(--oro-claro);border-color:var(--oro)}
.perfiles{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-direction:column;gap:9px;font-size:18px}
.perfiles li{display:flex;align-items:center;gap:12px}
.perfiles li::before{content:"";width:16px;height:1px;background:var(--oro)}
.lema{margin:30px 0 0;font-family:var(--serif);font-weight:300;font-size:30px;line-height:1.15;color:var(--oro-claro)}
.pista{margin:12px 0 0;font-size:15px;line-height:1.5;color:var(--gris-medio)}
.intro .pie{display:flex;gap:20px;font-size:14px}
.intro .pie a{color:var(--oro)}

.mesa{position:relative;flex:1 1 auto;overflow:hidden;background:#4A3A2C}
.mesa::before{content:"";position:absolute;inset:0;background:
  repeating-linear-gradient(90deg,transparent 0 158px,rgba(0,0,0,.28) 158px 160px),
  repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 3px,transparent 3px 11px,rgba(0,0,0,.05) 11px 13px,transparent 13px 23px),
  linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.18))}
.mesa::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 38%,rgba(255,214,150,.20),transparent 70%),radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.35));pointer-events:none}
.escena .m{font-family:var(--mono)} .escena .s{font-family:var(--serif)} .escena .t{font-family:var(--sans)}
.escena svg{display:block;overflow:visible}
.deco{position:absolute;pointer-events:none;filter:drop-shadow(0 8px 8px rgba(0,0,0,.35))}
.escena{position:absolute;left:50%;top:50%;width:1000px;height:900px;transform:translate(-50%,-50%) scale(var(--s,.8));transform-origin:center}

.obj{position:absolute;display:block;text-decoration:none;color:inherit;transform:rotate(var(--r,0deg));transition:transform .25s ease,filter .25s ease;z-index:1;filter:drop-shadow(0 10px 12px rgba(0,0,0,.45))}
.obj:hover,.obj:focus-visible{transform:rotate(var(--r,0deg)) translateY(-10px) scale(1.035);z-index:3;filter:drop-shadow(0 26px 24px rgba(0,0,0,.40))}
.obj .etq{position:absolute;left:12px;bottom:-34px;background:var(--oro);color:var(--tinta);font-family:var(--mono);font-size:13px;padding:6px 11px;white-space:nowrap;opacity:0;transform:translateY(-4px);transition:opacity .2s,transform .2s;pointer-events:none}
.obj:hover .etq,.obj:focus-visible .etq{opacity:1;transform:none}
@media (hover:none){ .obj .etq{opacity:1;transform:none;background:var(--piedra)} }
.sombra{box-shadow:0 18px 30px rgba(0,0,0,.45)}
.mano{font-family:'Caveat',cursive}

/* ---------- Secciones ---------- */
main{max-width:880px;margin:0 auto;padding:88px 24px 40px}
.bloque{display:flex;flex-wrap:wrap;gap:8px 40px;padding:40px 0;border-top:1px solid var(--linea)}
.bloque:first-child{border-top:0;padding-top:0}
.bloque > h2{flex:0 0 160px;margin:14px 0 0}
.bloque > .cuerpo{flex:999 1 480px;min-width:0}
.titular{margin:0;font-family:var(--serif);font-weight:400;font-size:30px;line-height:1.3}
.texto-2{color:var(--texto-2)}
.lista{list-style:none;margin:0;padding:0}
.lista li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 16px;padding:14px 0;border-bottom:1px solid var(--linea-2)}
.lista li:last-child{border-bottom:0}
.lista strong{font-weight:600}
.lista .det{color:var(--texto-3)}
.lista .cuando{font-family:var(--mono);font-size:14px;color:var(--texto-3)}
.lista a.art{color:var(--texto);font-weight:600;text-decoration:none}
.lista a.art:hover{color:var(--oro-texto)}
.mas{display:inline-block;margin-top:14px;font-weight:600}
.libro{display:flex;flex-wrap:wrap;gap:24px;align-items:center}
.libro .tapa{flex:0 0 96px;width:96px;height:136px;object-fit:cover;box-shadow:0 8px 18px rgba(0,0,0,.18)}
.libro .info{flex:1 1 280px;min-width:0}
.libro p{margin:0}.libro p+p{margin-top:8px}
.camino{background:var(--tinta);color:var(--piedra)}
.camino .dentro{max-width:880px;margin:0 auto;padding:72px 24px;display:flex;flex-wrap:wrap;gap:24px 40px;align-items:center;justify-content:space-between}
.camino .frase{margin:0;font-family:var(--serif);font-weight:300;font-size:30px;line-height:1.25}
.camino .etiqueta{color:var(--oro);display:block;margin-bottom:10px}
.boton-oro{border:1px solid var(--oro);color:var(--piedra);text-decoration:none;padding:14px 22px}
.boton-oro:hover{background:var(--oro);color:var(--tinta)}
.pie-web{max-width:880px;margin:0 auto;padding:48px 24px 56px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:15px}
.pie-web .t{font-family:var(--serif);font-size:20px}
.pie-web nav{display:flex;flex-wrap:wrap;gap:20px}
.pie-web .legal{color:var(--texto-3)}

/* ---------- Artículos ---------- */
.barra{background:var(--tinta);color:var(--piedra)}
.barra .dentro{max-width:880px;margin:0 auto;padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.barra a{color:var(--piedra);text-decoration:none}
.barra .marca{font-family:var(--serif);font-size:22px}
.barra nav{display:flex;gap:20px;font-size:14px}
.barra nav a{color:var(--gris-claro)}
.articulo{max-width:680px;margin:0 auto;padding:72px 24px 40px}
.articulo .meta{font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:var(--texto-3);text-transform:uppercase}
.articulo h1{margin:12px 0 0;font-family:var(--serif);font-weight:400;font-size:clamp(34px,6vw,48px);line-height:1.1}
.articulo .entradilla{margin:18px 0 0;font-size:20px;color:var(--texto-2)}
.articulo .texto{margin-top:40px;font-size:19px;line-height:1.7}
.articulo .texto h2{font-family:var(--serif);font-weight:400;font-size:28px;margin:40px 0 0}
.articulo .texto p,.articulo .texto ul,.articulo .texto ol{margin:20px 0 0}
.articulo .texto li+li{margin-top:8px}
.articulo .texto blockquote{margin:28px 0 0;padding-left:20px;border-left:2px solid var(--oro);font-family:var(--serif);font-size:22px}
.nota-ia{max-width:680px;margin:0 auto;padding:0 24px 40px;font-size:14px;color:var(--texto-3)}
.borrador{display:inline-block;margin-left:10px;background:#8E2A2A;color:#fff;font-family:var(--mono);font-size:11px;letter-spacing:.08em;padding:2px 8px;vertical-align:middle}

/* ---------- Móvil ---------- */
@media (max-width:900px){
  .portada{flex-direction:column;height:auto;max-height:none;min-height:0}
  .intro{flex:none;padding:32px 20px 28px}
  .intro h1{font-size:46px}
  .mesa{flex:none;height:92vw;min-height:320px}
  .bloque > h2{flex-basis:100%;margin:0}
  main{padding-top:56px}
}
@media (max-width:600px){
  .obj .etq{width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .quien{gap:18px}
  .retrato{flex-basis:108px;width:108px;height:135px;box-shadow:7px 7px 0 -1px var(--tinta),7px 7px 0 0 var(--oro)}
  .intro h1{font-size:40px}
  .perfiles{font-size:17px}
}
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} .obj{transition:none} }
.pie-web .colofon-int{flex-basis:100%;margin:0;font-size:14px;color:var(--texto-3)}
.barra .marca{display:inline-flex;align-items:center;gap:10px}
.barra .marca img{height:24px;width:auto}
.articulo .texto figure{margin:32px 0 0}
.articulo .texto figure img{display:block;width:100%;height:auto;border:1px solid var(--linea-2)}
.articulo .texto figcaption{margin-top:8px;font-size:14px;color:var(--texto-3)}
.descarga{margin:28px 0 0}
.boton-descarga{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;background:var(--tinta);color:var(--piedra);text-decoration:none;font-weight:500}
.boton-descarga:hover{background:var(--oro);color:var(--tinta)}
.boton-descarga small{font:13px var(--mono);opacity:.8}

/* ===== Navegación de páginas interiores ===== */
.barra{position:sticky;top:0;z-index:20;background:rgba(20,22,26,.96);backdrop-filter:blur(6px)}
.barra .dentro{max-width:1080px;padding:10px 24px;flex-wrap:nowrap;gap:18px}
.barra .marca{font-size:20px;white-space:nowrap}
.barra nav{overflow-x:auto;white-space:nowrap;scrollbar-width:none;gap:18px;font-size:13px}
.barra nav a{padding:10px 0}
.barra nav a.activo{color:var(--oro-claro);border-bottom:1px solid var(--oro)}
.barra .hilo{height:3px}
.barra .hilo span{display:block;height:100%;width:var(--avance,0%);background:var(--oro)}
@media (max-width:720px){
  .barra .dentro{flex-wrap:wrap;row-gap:4px;padding:8px 16px}
  .barra .marca{font-size:18px}
  .barra nav{order:3;flex-basis:100%;font-size:13px}
}
.migas{max-width:680px;margin:0 auto 18px;font:13px var(--mono);color:var(--texto-3);display:flex;gap:8px;flex-wrap:wrap}
main > .migas{padding:0}
.migas a{color:var(--texto-3)}
.migas a:hover{color:var(--oro-texto)}
.articulo{padding-top:40px}
.arriba{position:fixed;right:18px;bottom:18px;z-index:30;background:var(--oro);color:var(--tinta);text-decoration:none;font:500 14px var(--sans);padding:10px 16px;box-shadow:0 8px 20px rgba(0,0,0,.3);opacity:0;pointer-events:none;transform:translateY(10px);transition:opacity .2s,transform .2s}
.arriba.ver{opacity:1;pointer-events:auto;transform:none}
.sigue-leyendo{margin-top:48px;padding-top:24px;border-top:1px solid var(--linea)}
.sl-eti{font:500 13px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--oro-texto);margin:0 0 14px}
.sigue-leyendo > div{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sl{display:block;padding:16px 18px;background:#fff;border:1px solid var(--linea);text-decoration:none;color:var(--texto)}
.sl:hover{border-color:var(--oro)}
.sl span{display:block;font:13px var(--mono);color:var(--texto-3)}
.sl b{display:block;margin-top:6px;font:400 19px/1.3 var(--serif)}
.sl-sig{text-align:right}
@media (max-width:600px){.sigue-leyendo > div{grid-template-columns:1fr}.sl-vacia{display:none}.sl-sig{text-align:left}}
.salidas-art{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:28px;font-weight:600}
@media (prefers-reduced-motion:reduce){.arriba{transition:none}}
.volver-abajo{display:inline-flex;align-items:center;gap:10px;margin-top:32px;padding:12px 20px;background:var(--tinta);color:var(--piedra)!important;text-decoration:none;font:500 15px var(--sans);transition:background .2s,color .2s}
.volver-abajo span{color:var(--oro);transition:transform .2s}
.volver-abajo:hover{background:var(--oro);color:var(--tinta)!important}
.volver-abajo:hover span{color:var(--tinta);transform:translateX(-3px)}
.salidas-art{align-items:center}
.salidas-art .volver-abajo{margin-top:0}

/* foco sobre fondo claro */
:focus-visible{outline-color:var(--oro-texto)}
.franja.oscura :focus-visible,.portal :focus-visible,.barra :focus-visible,.menu-fijo :focus-visible,.pie-final :focus-visible{outline-color:var(--oro)}
.saltar:focus-visible{outline-color:var(--piedra)}
/* firma al final de cada artículo */
.autor-art{max-width:680px;margin:36px auto 6px;padding:14px 24px 0;border-top:1px solid var(--linea);text-align:right}
.autor-art a{font:500 34px/1 'Caveat',cursive;color:var(--oro-texto);text-decoration:none;display:inline-block;transform:rotate(-2deg)}
.autor-art a:hover{color:#4F3A14}
/* menú interior en móvil: se intuye que sigue */
@media (max-width:720px){.barra nav{-webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent);padding-right:32px}}
/* fin foco */
