/*
Theme Name: Martín Riva
Theme URI: https://www.martinriva.com.ar/
Author: Martín Riva
Description: Theme de martinriva.com.ar. Portada con emprendimientos, entrevistas, escritos y contacto; plantillas propias para entradas, páginas, categorías, etiquetas, archivos, búsqueda y 404.
Version: 1.0.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: martinriva
*/

:root {
  --papel: #efe9dd;
  --tinta: #141311;
  --bermellon: #e0442b;
  --azul: #1e3757;
  --ocre: #d9a441;
  --tenue: #7d776c;
  --serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
  --sans: "Helvetica Neue", Helvetica, "Inter", Arial, sans-serif;
  --m: clamp(1.25rem, 4vw, 3.5rem);
}

* { box-sizing: border-box; }

html {
  background: var(--papel);
  color: var(--tinta);
  font: 400 1rem/1.55 var(--sans);
  -webkit-font-smoothing: antialiased;
}
html, body { overflow-x: hidden; overflow-x: clip; }
body { margin: 0; position: relative; background: var(--papel); }

/* grano de papel */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 50;
  opacity: .06;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");
}

a { color: inherit; }
img { max-width: 100%; height: auto; }

.oculto, .screen-reader-text {
  position: absolute !important; width: 1px; height: 1px; overflow: hidden;
  clip-path: inset(50%); white-space: nowrap; margin: -1px; padding: 0; border: 0;
}
.saltar {
  position: absolute; left: var(--m); top: -4rem; z-index: 60;
  background: var(--tinta); color: var(--papel); padding: .6rem 1rem;
  font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; text-decoration: none;
}
.saltar:focus { top: 1rem; }

/* ---------- barra superior: queda arriba de todo y se va con el scroll ---------- */
.barra {
  position: absolute;
  top: 0; left: 0; right: 0;
  z-index: 20;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.1rem var(--m);
  font-size: .78rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  mix-blend-mode: difference;
  color: #fff;
}
.barra a { text-decoration: none; }
.barra ul { display: flex; gap: 2rem; list-style: none; margin: 0; padding: 0; }
.barra button {
  display: none;
  font: inherit; letter-spacing: inherit; text-transform: inherit;
  color: inherit; background: none; border: 0; padding: 0; cursor: pointer;
}

/* menú del celular: panel a pantalla completa */
.panel-menu {
  position: fixed;
  inset: 0;
  z-index: 30;
  background: var(--tinta);
  color: var(--papel);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.4rem;
  padding: var(--m);
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}
.panel-menu.abierto { opacity: 1; visibility: visible; }
.panel-menu ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 1.4rem; }
.panel-menu a { font-family: var(--serif); font-size: 2.3rem; line-height: 1; text-decoration: none; }
.panel-menu a:active { color: var(--bermellon); }
.panel-menu button {
  position: absolute; top: 1.1rem; right: var(--m);
  font: .78rem/1 var(--sans); letter-spacing: .14em; text-transform: uppercase;
  color: var(--papel); background: none; border: 0; padding: 0; cursor: pointer;
}
.admin-bar .panel-menu button { top: calc(1.1rem + 46px); }
@media (min-width: 783px) { .admin-bar .panel-menu button { top: calc(1.1rem + 32px); } }

@media (max-width: 52rem) {
  .barra nav { display: none; }
  .barra button { display: block; }
}

/* ---------- portada ---------- */
.portada {
  position: relative;
  padding: var(--m);
  padding-top: clamp(7rem, 22vh, 13rem);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
}
.portada h1 {
  position: relative;
  font-family: var(--serif);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(2.4rem, 9vw, 9rem);
  white-space: nowrap;
  line-height: 1;
  letter-spacing: -.02em;
  margin: 0;
}
.portada h1 em { font-style: italic; color: inherit; }

.banda {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: clamp(1rem, 2.5vw, 2.5rem);
  row-gap: .4rem;
  background: var(--tinta);
  color: var(--papel);
  transform: rotate(-1.2deg);
  margin: 0 calc(-1 * var(--m) - 2rem);
  padding: .25em calc(var(--m) + 2rem) .35em;
}
.banda .estrella { color: var(--bermellon); font-size: clamp(1.4rem, 3.5vw, 3.2rem); }
.banda .bajada { position: relative; margin: 0; border: 0; padding: 0; }
.bajada p { margin: 0; font-family: var(--sans); font-size: clamp(.95rem, 1.6vw, 1.35rem); letter-spacing: .02em; }

/* ---------- presentación ---------- */
.manifiesto {
  padding: 18vh var(--m) 14vh;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  column-gap: 1.25rem;
  row-gap: 2rem;
  align-items: center;
}
.manifiesto .rotulo-chico { grid-column: 1 / 13; grid-row: 1; margin: 0; }
.manifiesto .foto { grid-column: 1 / 4; grid-row: 2; margin: 0; width: 100%; max-width: 300px; }
.manifiesto .foto img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; outline: 1px solid rgba(20,19,17,.15); outline-offset: -1px; }
.manifiesto blockquote {
  grid-column: 5 / 13;
  grid-row: 2;
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(1.8rem, 3.6vw, 3.3rem);
  line-height: 1.12;
  letter-spacing: -.02em;
  text-wrap: balance;
}
.rotulo-chico {
  font-size: .75rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--tenue);
}
.rotulo-chico::before { content: "● "; color: var(--bermellon); }

@media (max-width: 48rem) {
  .manifiesto { row-gap: 1.4rem; }
  .manifiesto .rotulo-chico { margin-bottom: 1.5rem; }
  .manifiesto .foto { grid-column: 1 / 13; grid-row: 2; width: 150px; }
  .manifiesto blockquote { grid-column: 1 / 13; grid-row: 3; }
}

/* ---------- secciones ---------- */
.abajo { overflow: hidden; overflow-x: clip; overflow-y: visible; padding: 0 var(--m) var(--m); font-family: var(--sans); line-height: 1.4; }
.principal { padding: 10vh 0 8vh; }
.seccion { padding-top: 1rem; scroll-margin-top: 1rem; }
.seccion + .seccion { margin-top: 6rem; }

.cinta {
  background: var(--tinta);
  color: var(--papel);
  overflow: hidden;
  white-space: nowrap;
  padding: 1.1rem 0;
  transform: rotate(-1.2deg);
  margin: 0 calc(-1 * var(--m) - 2rem) 3rem;
}
.cinta-pista {
  display: inline-block;
  animation: correr 60s linear infinite;
  font-size: clamp(1.6rem, 3.6vw, 3rem);
  letter-spacing: -.02em;
}
.cinta-pista span { margin: 0 .4em; }
.cinta-pista span:nth-child(odd) { font-family: var(--serif); font-style: italic; }
.cinta-pista i { font-style: normal; color: var(--bermellon); }
@keyframes correr { to { transform: translateX(-50%); } }
.seccion:nth-of-type(even) .cinta,
.cinta.al-reves { transform: rotate(1.2deg); }
.seccion:nth-of-type(even) .cinta-pista,
.cinta.al-reves .cinta-pista { animation-direction: reverse; }

/* ---------- tarjetas ---------- */
.grilla {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 3rem 1.5rem;
  margin-bottom: 1rem;
}
@media (max-width: 62rem) { .grilla { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 34rem) { .grilla { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 1rem; } }
.tarjeta { text-decoration: none; display: block; perspective: 900px; min-width: 0; }
.tapa {
  aspect-ratio: 4 / 5;
  border-radius: 2px;
  overflow: hidden;
  transition: transform .6s cubic-bezier(.2,.7,.2,1), box-shadow .6s;
  outline: 1px solid rgba(20,19,17,.12);
  outline-offset: -1px;
  transform-style: preserve-3d;
  background: var(--papel);
}
.tapa svg { width: 100%; height: 100%; display: block; }
.tapa img { width: 100%; height: 100%; display: block; object-fit: cover; }
a.tarjeta:hover .tapa, a.tarjeta:focus-visible .tapa {
  transform: rotateX(4deg) rotateY(-6deg) translateY(-6px);
  box-shadow: 14px 22px 40px -18px rgba(20,19,17,.45);
}
.ficha { display: flex; gap: .8rem; margin-top: 1rem; align-items: baseline; }
.ficha > div { min-width: 0; }
.ficha .n { font-size: .72rem; color: var(--tenue); font-variant-numeric: tabular-nums; }
.ficha h3 { margin: 0; font-size: 1.15rem; font-weight: 500; letter-spacing: -.01em; line-height: 1.2; overflow-wrap: anywhere; }
.ficha p { margin: .25rem 0 0; font-family: var(--serif); font-style: italic; color: var(--tenue); font-size: 1rem; overflow-wrap: anywhere; }
@media (max-width: 34rem) { .ficha p { font-size: .85rem; } }

.ver-todas {
  display: inline-block;
  margin-top: 2rem;
  font-family: var(--serif);
  font-style: italic;
  font-size: clamp(1.2rem, 2vw, 1.6rem);
  text-decoration: none;
  border-bottom: 1px solid var(--bermellon);
}
.ver-todas:hover { color: var(--bermellon); }

/* categorías y etiquetas en forma de chapitas */
.temas, .etiquetas {
  list-style: none;
  margin: 0 0 3rem;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.temas a, .etiquetas a {
  display: inline-block;
  border: 1px solid var(--tinta);
  border-radius: 99px;
  padding: .3rem .85rem;
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color .25s, color .25s;
}
.temas a:hover, .etiquetas a:hover, .temas a:focus-visible, .etiquetas a:focus-visible,
.temas .actual a { background: var(--tinta); color: var(--papel); }

/* ---------- aparición al hacer scroll (solo si hay JS) ---------- */
.js .revelar { opacity: 0; transform: translateY(2rem); transition: opacity 1s, transform 1s cubic-bezier(.2,.7,.2,1); }
.js .revelar.visto { opacity: 1; transform: none; }

/* ---------- contacto ---------- */
.pie-sitio .seccion { margin-top: 6rem; }
.bloque-contacto {
  background: var(--bermellon);
  color: var(--papel);
  padding: 16vh var(--m) calc(var(--m) + 3.5rem);
  margin: 0 calc(-1 * var(--m)) calc(-1 * var(--m));
}
.bloque-contacto .rotulo-chico { color: rgba(239,233,221,.75); }
.bloque-contacto .rotulo-chico::before { color: var(--papel); }
.bloque-contacto a.grande {
  display: inline-block;
  font-family: var(--serif);
  font-size: clamp(3.5rem, 13vw, 13rem);
  line-height: .9;
  letter-spacing: -.045em;
  text-decoration: none;
  margin: 2rem 0 12vh;
  position: relative;
}
.bloque-contacto a.grande::after {
  content: "";
  position: absolute;
  left: 0; right: 0; bottom: -.04em;
  height: .045em;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .7s cubic-bezier(.2,.7,.2,1);
}
.bloque-contacto a.grande:hover::after, .bloque-contacto a.grande:focus-visible::after { transform: scaleX(1); }
.bloque-contacto .datos { display: flex; flex-wrap: wrap; gap: .6rem 3rem; margin: -6vh 0 10vh; font-family: var(--serif); font-size: clamp(1.2rem, 2.2vw, 1.8rem); }
.bloque-contacto .datos a { text-decoration: none; border-bottom: 1px solid rgba(239,233,221,.5); overflow-wrap: anywhere; }
.bloque-contacto .datos a:hover { border-color: currentColor; }
.bloque-contacto .datos span { display: block; font: .72rem/1.4 var(--sans); letter-spacing: .12em; text-transform: uppercase; opacity: .75; margin-bottom: .2rem; }
.pie {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
  border-top: 1px solid rgba(239,233,221,.5);
  padding-top: 1rem;
  font-size: .78rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* ---------- reproductor de Radio Ubicua ---------- */
.aire {
  position: fixed;
  right: var(--m);
  bottom: 1.6rem;
  box-shadow: 0 0 0 4px var(--papel);
  z-index: 30;
  display: flex;
  align-items: center;
  gap: .6rem;
  background: var(--tinta);
  color: var(--papel);
  padding: .35rem .5rem .35rem .35rem;
  border-radius: 99px;
  font-size: .72rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  max-width: calc(100vw - 2 * var(--m));
}
.aire-play {
  flex: none;
  width: 2rem; height: 2rem;
  display: grid; place-items: center;
  border: 0; border-radius: 50%;
  background: var(--bermellon); color: var(--papel);
  cursor: pointer; padding: 0;
}
.aire-play svg { width: .95rem; height: .95rem; fill: currentColor; }
.aire-play:focus-visible { outline: 2px solid var(--papel); outline-offset: 2px; }
.aire-txt { display: flex; flex-direction: column; min-width: 0; line-height: 1.25; width: 15rem; }
.aire-txt b { font-weight: 400; }
.ticker { overflow: hidden; white-space: nowrap; position: relative; }
.ticker-track {
  display: inline-block;
  will-change: transform;
  animation: marq var(--marq-dur, 14s) linear infinite;
  text-transform: none; letter-spacing: 0;
  font-family: var(--serif); font-style: italic; font-size: .82rem;
  opacity: .85;
}
@keyframes marq { from { transform: translateX(var(--marq-from, 100%)); } to { transform: translateX(var(--marq-to, -100%)); } }
@media (max-width: 40rem) { .aire-txt { width: auto; flex: 1; } }
.aire-ir { flex: none; color: inherit; text-decoration: none; opacity: .7; padding: 0 .35rem; font-size: .9rem; }
.aire-ir:hover { opacity: 1; }
.barras { display: flex; gap: 2px; align-items: flex-end; height: 12px; }
.barras i { width: 2px; background: var(--bermellon); animation: vu 1s ease-in-out infinite alternate; }
.barras i:nth-child(2) { animation-delay: -.3s; }
.barras i:nth-child(3) { animation-delay: -.6s; }
.barras i:nth-child(4) { animation-delay: -.15s; }
.aire .barras i { animation-play-state: paused; height: 3px; }
.aire.sonando .barras i { animation-play-state: running; }
@keyframes vu { from { height: 2px; } to { height: 12px; } }

/* =====================================================================
   PÁGINAS INTERIORES: entradas, páginas, categorías, etiquetas, archivo,
   búsqueda y 404. Misma cinta negra de la portada, con el título adentro.
   ===================================================================== */
.cabecera {
  position: relative;
  overflow: hidden;
  padding: clamp(6rem, 18vh, 10rem) var(--m) 1.5rem;
}
.cabecera .rotulo-chico { margin: 0 0 1.4rem; }
.cabecera .banda { padding-top: .45em; padding-bottom: .55em; }
.cabecera h1 {
  font-family: var(--serif);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(2rem, 6vw, 5.5rem);
  line-height: 1.04;
  letter-spacing: -.02em;
  margin: 0;
  max-width: 100%;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
.cabecera .bajada { flex-basis: 100%; }
.cabecera .bajada p, .cabecera .bajada { font-size: clamp(.95rem, 1.4vw, 1.2rem); }
.cabecera .bajada > *:last-child { margin-bottom: 0; }

.interior { padding: 8vh var(--m) 0; }

.articulo, .comentarios, .post-navigation, .vacio { max-width: 46rem; margin-left: auto; margin-right: auto; }

.meta {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem 1.5rem;
  border-top: 1px solid var(--tinta);
  padding-top: .8rem;
  margin-bottom: 2.5rem;
  font-size: .75rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--tenue);
}
.meta a { color: var(--tinta); text-decoration: none; border-bottom: 1px solid var(--bermellon); }

.destacada { margin: 0 0 2.5rem; }
.destacada img { display: block; width: 100%; height: auto; outline: 1px solid rgba(20,19,17,.12); outline-offset: -1px; }

/* texto de entradas y páginas */
.contenido {
  font-family: var(--serif);
  font-size: clamp(1.1rem, 1.4vw, 1.3rem);
  line-height: 1.6;
  overflow-wrap: break-word;
}
.contenido::after { content: ""; display: table; clear: both; }
.contenido a { color: var(--tinta); text-decoration-color: var(--bermellon); text-underline-offset: .15em; text-decoration-thickness: 1px; }
.contenido a:hover { color: var(--bermellon); }
.contenido h2, .contenido h3, .contenido h4, .contenido h5, .contenido h6 {
  font-family: var(--serif); font-weight: 400; letter-spacing: -.02em; line-height: 1.15; margin: 2.2em 0 .6em;
}
.contenido h2 { font-size: 2em; }
.contenido h3 { font-size: 1.5em; }
.contenido h4 { font-size: 1.2em; }
.contenido h5, .contenido h6 { font: 500 .8rem/1.4 var(--sans); letter-spacing: .14em; text-transform: uppercase; }
.contenido blockquote, .contenido .wp-block-quote {
  margin: 2em 0;
  padding: 0 0 0 1.2em;
  border-left: 3px solid var(--bermellon);
  font-style: italic;
}
.contenido blockquote cite { display: block; margin-top: .6em; font: normal .75rem/1.4 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--tenue); }
.contenido .wp-block-pullquote { border-top: 1.5px solid var(--tinta); border-bottom: 1.5px solid var(--tinta); padding: 2em 0; text-align: center; }
.contenido .wp-block-pullquote blockquote { border: 0; padding: 0; font-size: 1.4em; }
.contenido figure { margin: 2em 0; }
.contenido figcaption, .wp-caption-text {
  margin-top: .6rem; font: .8rem/1.4 var(--sans); color: var(--tenue);
}
.contenido pre {
  background: var(--tinta); color: var(--papel); padding: 1.2em; overflow-x: auto;
  font-size: .8rem; line-height: 1.5;
}
.contenido code { font-size: .85em; background: rgba(20,19,17,.07); padding: .1em .3em; }
.contenido pre code { background: none; padding: 0; }
.contenido table { width: 100%; border-collapse: collapse; font: .9rem/1.4 var(--sans); }
.contenido th, .contenido td { border-bottom: 1px solid var(--tinta); padding: .6em .4em; text-align: left; }
.contenido hr { border: 0; border-top: 1px solid var(--tinta); margin: 3em 0; }
.contenido ul, .contenido ol { padding-left: 1.3em; }
.contenido li::marker { color: var(--bermellon); }
.contenido .alignleft { float: left; margin: .3em 1.5em 1em 0; max-width: 50%; }
.contenido .alignright { float: right; margin: .3em 0 1em 1.5em; max-width: 50%; }
.contenido .aligncenter { margin-left: auto; margin-right: auto; display: block; }
.contenido .alignwide { margin-left: calc(-1 * min(8vw, 8rem)); margin-right: calc(-1 * min(8vw, 8rem)); max-width: none; }
.contenido .alignfull { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); }
.contenido .wp-block-button__link, .boton, .submit, .buscador button {
  display: inline-block;
  background: var(--tinta); color: var(--papel);
  border: 0; border-radius: 0;
  padding: .8rem 1.4rem;
  font: .75rem/1 var(--sans); letter-spacing: .14em; text-transform: uppercase;
  text-decoration: none; cursor: pointer;
  transition: background-color .25s;
}
.contenido .wp-block-button__link:hover, .boton:hover, .submit:hover, .buscador button:hover { background: var(--bermellon); color: var(--papel); }
.contenido .wp-block-embed iframe, .contenido iframe { max-width: 100%; }
.sticky .ficha h3::before { content: "✦ "; color: var(--bermellon); }
.post-password-form input[type="password"] { border: 1px solid var(--tinta); background: transparent; padding: .6rem; font: inherit; }

.page-links { margin-top: 2rem; font: .8rem/1.4 var(--sans); letter-spacing: .12em; text-transform: uppercase; }

.articulo .etiquetas { margin: 3rem 0 0; }

/* entrada anterior / siguiente */
.post-navigation { margin-top: 5rem; }
.post-navigation .nav-links {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  border-top: 1px solid var(--tinta);
  padding-top: 1rem;
}
.post-navigation a { text-decoration: none; font-family: var(--serif); font-size: clamp(1.05rem, 1.8vw, 1.4rem); line-height: 1.2; display: block; }
.post-navigation a:hover { color: var(--bermellon); }
.post-navigation .etq { display: block; font: .7rem/1.4 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--tenue); margin-bottom: .4rem; }
.post-navigation .nav-next { grid-column: 2; text-align: right; }

/* paginación de listados */
.pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  border-top: 1px solid var(--tinta);
  padding-top: 1rem;
  margin-top: 3rem;
}
.pagination .page-numbers {
  display: inline-block;
  min-width: 2.4rem;
  padding: .5rem .7rem;
  text-align: center;
  font-size: .8rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none;
}
.pagination a.page-numbers:hover { color: var(--bermellon); }
.pagination .current { background: var(--tinta); color: var(--papel); }

/* comentarios */
.comentarios { margin-top: 5rem; }
.comentarios h2, .comment-reply-title {
  font-family: var(--serif); font-weight: 400; font-size: clamp(1.5rem, 3vw, 2.2rem); letter-spacing: -.02em;
  border-top: 1px solid var(--tinta); padding-top: .7rem; margin: 0 0 1.5rem;
}
.lista-comentarios, .lista-comentarios .children { list-style: none; margin: 0; padding: 0; }
.lista-comentarios .children { padding-left: clamp(1rem, 4vw, 2.5rem); }
.comment-body { border-top: 1px solid rgba(20,19,17,.2); padding: 1.2rem 0; }
.comment-meta { font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; color: var(--tenue); display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center; }
.comment-meta a { text-decoration: none; }
.comment-author { color: var(--tinta); display: flex; align-items: center; gap: .6rem; }
.comment-author .avatar { border-radius: 50%; }
.comment-author .says { display: none; }
.comment-content { font-family: var(--serif); font-size: 1.1rem; line-height: 1.55; }
.reply a { font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; text-decoration: none; border-bottom: 1px solid var(--bermellon); }
.comment-respond { margin-top: 3rem; }
.comment-form label { display: block; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: var(--tenue); margin-bottom: .3rem; }
.comment-form-cookies-consent label { display: inline; text-transform: none; letter-spacing: 0; font-size: .85rem; }
.comment-form input[type="text"], .comment-form input[type="email"], .comment-form input[type="url"], .comment-form textarea {
  width: 100%; border: 1px solid var(--tinta); background: transparent; padding: .7rem; font: 1rem/1.4 var(--sans); color: var(--tinta); border-radius: 0;
}
.comment-form input:focus, .comment-form textarea:focus, .buscador input:focus { outline: 2px solid var(--bermellon); outline-offset: 1px; }
.comment-notes, .logged-in-as { font-size: .85rem; color: var(--tenue); }

/* buscador */
.buscador { display: flex; gap: .6rem; align-items: stretch; max-width: 32rem; }
.buscador label { flex: 1; }
.buscador input[type="search"] {
  width: 100%; height: 100%;
  border: 0; border-bottom: 1.5px solid var(--tinta); border-radius: 0;
  background: transparent; padding: .6rem 0;
  font: 1.2rem/1.2 var(--serif); color: var(--tinta);
}

/* listado vacío y 404 */
.vacio { font-family: var(--serif); font-size: clamp(1.2rem, 2vw, 1.5rem); line-height: 1.4; }
.vacio p { margin: 0 0 2rem; }
.vacio .numero { font-size: clamp(6rem, 22vw, 16rem); line-height: .85; letter-spacing: -.05em; color: var(--bermellon); margin: 0 0 2rem; }

@media (max-width: 40rem) {
  .banda { padding-top: .5rem; padding-bottom: .7rem; }
  .portada .banda h1 { font-size: 13vw; }
  .banda .estrella { font-size: 1.6rem; }
  .portada { padding-top: 5.2rem; }
  .manifiesto { padding-top: 3.2rem; }
  .principal { padding-top: 8vh; }
  .cabecera { padding-top: 5.2rem; }
  .post-navigation .nav-links { grid-template-columns: 1fr; }
  .post-navigation .nav-next { grid-column: 1; text-align: left; }
}

::selection { background: var(--bermellon); color: var(--papel); }
