/* Casa de artistas interiors. Public editorial content and photography remain
   unchanged. All overrides are scoped to the three explicit preview pages. */
body.casa-interior {
  --bg: var(--casa-paper);
  --surface: var(--casa-paper-deep);
  --surface-2: #e8e2d6;
  --ivory: var(--casa-ink);
  --papel: var(--casa-ink);
  --ivory-dim: var(--casa-muted);
  --gold: var(--casa-accent);
  --gold-prof: var(--casa-accent);
  --line: var(--casa-rule);
  --serif: var(--casa-serif);
  --sans: var(--casa-sans);
  --mono: var(--casa-sans);
  --medida: 65ch;
  color-scheme: light;
}
html:has(body.casa-interior) { background: #f7f3ea; }
.casa-interior main { padding: 0; }
.casa-interior main h1,
.casa-interior main h2,
.casa-interior main h3 {
  color: var(--casa-ink);
  font-family: var(--casa-serif);
  font-weight: 400;
  font-style: normal;
  font-optical-sizing: auto;
  font-variation-settings: normal;
  letter-spacing: -.035em;
  line-height: 1.14;
}
.casa-interior main h1 { font-size: clamp(2.7rem, 4.6vw, 5.1rem); }
.casa-interior main h2 { font-size: clamp(2rem, 3.8vw, 3.7rem); }
.casa-interior main h3 { font-size: clamp(1.6rem, 2.1vw, 2.2rem); }
.casa-interior main p { font-size: 1rem; line-height: 1.8; }
.casa-interior main a,
.casa-interior > footer a { color: var(--casa-ink); text-underline-offset: .25em; }
.casa-interior main a:hover,
.casa-interior > footer a:hover { color: var(--casa-accent); }
.casa-interior main :focus-visible,
.casa-interior .casa-header :focus-visible,
.casa-interior > footer :focus-visible { outline: 2px solid var(--casa-accent); outline-offset: 5px; }
.casa-interior .revelar { opacity: 1; transform: none; }
.casa-interior .kicker,
.casa-interior .mono { font-family: var(--casa-sans); }
.casa-interior .kicker { font-size: .65rem; font-weight: 500; letter-spacing: .2em; line-height: 1.8; color: var(--casa-muted); }
.casa-interior .encabezado-cap .kicker::before { display: none; }
.casa-interior .aviso-independencia {
  padding: 11px var(--casa-space);
  background: var(--casa-paper-deep);
  border-bottom: 1px solid var(--casa-rule);
  color: var(--casa-muted);
  font-family: var(--casa-sans);
  font-size: .69rem;
  letter-spacing: 0;
  line-height: 1.65;
}
.casa-interior .aviso-independencia strong { color: var(--casa-ink); font-weight: 500; }
.casa-interior .skip-link:focus { background: var(--casa-ink); color: var(--casa-paper); }
.casa-interior .progreso-lectura { background: var(--casa-accent); }
.casa-interior .casa-interior-archive { padding-block: 0; }
.casa-interior .casa-archive-nav { margin-top: 0; border-top: 0; border-bottom: 1px solid var(--casa-rule); }
.casa-interior .casa-languages {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  padding: 3px;
  border: 1px solid var(--casa-rule);
  border-radius: 40px;
}
.casa-interior .casa-languages button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  min-width: 44px;
  padding: 0 10px;
  border: 0;
  border-radius: 30px;
  background: transparent;
  color: var(--casa-ink);
  font-family: var(--casa-sans);
  font-size: .62rem;
  letter-spacing: .13em;
  cursor: pointer;
}
.casa-interior .casa-languages button[aria-pressed="true"] { background: var(--casa-ink); color: var(--casa-paper); }
.casa-interior .casa-mobile-toggle > .t-en,
.casa-interior .casa-mobile-toggle > .t-es { display: inline-flex; align-items: center; gap: 12px; font-size: inherit; }
.casa-interior .casa-mobile-menu[open] .casa-mobile-toggle > .t-en,
.casa-interior .casa-mobile-menu[open] .casa-mobile-toggle > .t-es { transform: none; }

/* Cirilo: the published portrait shares the opening with the exact biography. */
.casa-interior-cirilo .migaja { border-bottom: 0; }
.casa-interior-cirilo .migaja .contenido { max-width: 1512px; padding: 35px var(--casa-space) 0; }
.casa-interior-cirilo .migaja p { font-family: var(--casa-sans); font-size: .66rem; letter-spacing: .1em; }
.casa-interior-cirilo .capitulo { padding: clamp(65px, 7vw, 110px) var(--casa-space); border-bottom: 1px solid var(--casa-rule); }
.casa-interior-cirilo #hero { padding-top: clamp(40px, 5vw, 76px); }
.casa-interior-cirilo #hero > .contenido {
  max-width: 1368px;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: center;
}
.casa-interior-cirilo #hero .casa-interior-hero-copy { grid-column: 2; grid-row: 1; margin: 0; min-width: 0; }
.casa-interior-cirilo #hero .encabezado-cap { margin: 0 0 25px; }
.casa-interior-cirilo #hero h1 { font-size: clamp(2.45rem, 3.7vw, 4.35rem); max-width: 19ch; margin: 20px 0 24px; }
.casa-interior-cirilo #hero .epoca { color: var(--casa-muted); font-size: .8rem; font-family: var(--casa-sans); letter-spacing: .02em; line-height: 1.7; text-transform: none; }
.casa-interior-cirilo #hero .casa-interior-hero-copy > p { max-width: 54ch; margin: 0; color: var(--casa-muted); }
.casa-interior-cirilo #hero figure.casa-interior-hero-media {
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  padding: 24px 24px 0;
  background: var(--casa-paper-deep);
  border: 0;
  overflow: visible;
}
.casa-interior-cirilo #hero .casa-interior-hero-media img {
  width: 100%;
  height: auto;
  max-height: 650px;
  object-fit: contain;
  filter: none;
}
.casa-interior-cirilo .encabezado-cap { margin-bottom: 30px; }
.casa-interior-cirilo .encabezado-cap h2 { margin-top: 17px; }
.casa-interior-cirilo .capitulo:not(#hero) .contenido { max-width: 68ch; }
.casa-interior-cirilo figure.lamina { margin-block: 42px 0; border: 0; background: var(--casa-paper-deep); box-shadow: none; }
.casa-interior-cirilo figure.lamina--foto img { filter: none; object-fit: contain; }
.casa-interior-cirilo figure.lamina figcaption { color: var(--casa-muted); font-family: var(--casa-sans); font-size: .72rem; line-height: 1.65; font-style: normal; letter-spacing: 0; }
.casa-interior-cirilo .lamina--apoyo img,
.casa-interior-cirilo .lamina--evento img { width: 100%; height: auto; max-height: none; object-fit: contain; }
.casa-interior-cirilo .libro-datos { margin-top: 36px; gap: 26px 32px; padding-block: 26px; }
.casa-interior-cirilo .libro-datos strong { font-size: clamp(2rem, 4vw, 3rem); }
.casa-interior-cirilo blockquote.cita-cirilo { padding: 20px 0 10px 26px; margin-top: 36px; border-color: var(--casa-accent); }
.casa-interior-cirilo blockquote.cita-cirilo p { font-family: var(--casa-serif); font-size: clamp(1.45rem, 2.5vw, 2rem); line-height: 1.4; }
.casa-interior-cirilo .ficha-lanzamiento { padding: 30px; margin-top: 35px; border: 1px solid var(--casa-rule); background: var(--casa-paper-deep); }
.casa-interior-cirilo .ficha-lanzamiento dt { font-family: var(--casa-sans); letter-spacing: .14em; }
.casa-interior-cirilo .volver-portada .contenido { max-width: 68ch; padding-block: 35px; }
.casa-interior-cirilo .paginas-hermanas { background: var(--casa-paper-deep); }
.casa-interior-cirilo .paginas-hermanas .contenido { max-width: 68ch; }

/* Arenas: spacious biography, full certificates, then the five public works. */
body.casa-interior-arenas.pagina main section { padding: clamp(55px, 6vw, 100px) var(--casa-space); }
body.casa-interior-arenas.pagina .hero {
  background: var(--casa-paper);
  padding: clamp(80px, 10vw, 145px) var(--casa-space) clamp(60px, 7vw, 100px);
  border-bottom: 1px solid var(--casa-rule);
}
.casa-interior-arenas .inner { max-width: 68ch; margin-inline: auto; }
.casa-interior-arenas .hero .inner { max-width: 1140px; }
body.casa-interior-arenas.pagina .hero h1 { font-size: clamp(3rem, 6.7vw, 6.5rem); max-width: 17ch; margin: 25px 0; }
body.casa-interior-arenas.pagina .hero .line { font-size: clamp(1.4rem, 2.5vw, 2rem); font-style: normal; max-width: 42ch; margin-block: 28px; }
.casa-interior-arenas .hero .line::before { display: none; }
.casa-interior-arenas .hero .lead,
.casa-interior-arenas .hero .note-src,
.casa-interior-arenas .hero .conflict { max-width: 70ch; }
.casa-interior-arenas .hero .lead { color: var(--casa-muted); font-size: 1.05rem; }
.casa-interior-arenas .hero .note-src,
.casa-interior-arenas .hero .conflict { font-size: .85rem; color: var(--casa-muted); }
.casa-interior-arenas .cert-head,
.casa-interior-arenas .cert-grid-wrap { background: var(--casa-paper-deep); }
body.casa-interior-arenas.pagina .cert-head { padding-bottom: 30px; }
body.casa-interior-arenas.pagina .cert-grid-wrap { padding-top: 16px; }
.casa-interior-arenas .cert-head h2 { margin-block: 17px 22px; }
.casa-interior-arenas .wide { max-width: 1368px; margin-inline: auto; }
.casa-interior-arenas .cert-grid { gap: 50px 35px; }
.casa-interior-arenas .cert-card { background: transparent; padding: 0; border: 0; }
.casa-interior-arenas .cert-card::after { display: none; }
.casa-interior-arenas .cert-card figure { border: 0; background: var(--casa-paper); }
.casa-interior-arenas .cert-card img { width: 100%; height: auto; object-fit: contain; filter: none; }
.casa-interior-arenas .cert-card figcaption { padding: 15px 18px 18px; font-style: normal; }
.casa-interior-arenas .cert-card h3 { margin: 22px 0 16px; }
.casa-interior-arenas .cert-card .meta { margin: 0; }
.casa-interior-arenas .works-head .kicker { margin-bottom: 20px; display: block; }
.casa-interior-arenas .card { padding: clamp(70px, 9vw, 130px) var(--casa-space); }
.casa-interior-arenas .card-grid { grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: clamp(40px, 7vw, 105px); align-items: center; }
.casa-interior-arenas .card figure { background: transparent; border: 0; overflow: visible; }
.casa-interior-arenas .card img { width: 100%; height: auto; max-height: 760px; object-fit: contain; filter: none; }
.casa-interior-arenas .card figcaption { border: 0; padding: 18px 0 0; font-style: normal; line-height: 1.7; }
.casa-interior-arenas .card h2 { margin-block: 20px 25px; }
.casa-interior-arenas .card .sub { margin-bottom: 24px; color: var(--casa-muted); }
.casa-interior-arenas .meta li { padding-block: 13px; font-size: .86rem; grid-template-columns: 6.5rem minmax(0, 1fr); gap: 15px; }
.casa-interior-arenas .meta span { font-family: var(--casa-sans); font-size: .6rem; line-height: 1.7; }
.casa-interior-arenas .sources { background: var(--casa-paper-deep); }
.casa-interior-arenas .sources h2 { margin-block: 20px 30px; }
.casa-interior-arenas .sources li { padding-bottom: 10px; overflow-wrap: anywhere; }

/* Preserve the original footer notices and contacts; restyle only their space. */
.casa-interior > footer { padding: 55px var(--casa-space) 45px; background: var(--casa-paper-deep); border-top: 1px solid var(--casa-rule); color: var(--casa-muted); font-size: .8rem; line-height: 1.8; }
.casa-interior > footer .contenido { max-width: 90ch; }
.casa-interior > footer .contenido::before { display: none; }
.casa-interior > footer > p { max-width: 90ch; margin-inline: auto; }

@media (max-width: 899px) {
  .casa-interior-cirilo #hero > .contenido { grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: 35px; align-items: start; }
  .casa-interior-cirilo #hero h1 { font-size: clamp(2.3rem, 4.3vw, 3.2rem); }
  .casa-interior-cirilo #hero figure.casa-interior-hero-media { padding: 15px 15px 0; }
  .casa-interior-arenas .card-grid { grid-template-columns: minmax(0, 1fr); gap: 35px; }
  .casa-interior-arenas .card figure { max-width: 760px; width: 100%; margin-inline: auto; }
}
@media (max-width: 599px) {
  .casa-interior-cirilo #hero > .contenido { grid-template-columns: minmax(0, 1fr); gap: 35px; }
  .casa-interior-cirilo #hero .casa-interior-hero-copy { grid-column: 1; grid-row: 1; }
  .casa-interior-cirilo #hero figure.casa-interior-hero-media { grid-column: 1; grid-row: 2; }
  .casa-interior-cirilo #hero .casa-interior-hero-media img { max-height: 600px; }
  .casa-interior-cirilo #hero h1 { font-size: clamp(2.3rem, 10vw, 3rem); max-width: 22ch; }
  .casa-interior-cirilo .migaja .contenido { padding-top: 25px; }
  .casa-interior-cirilo .libro-datos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .casa-interior-cirilo .ficha-lanzamiento { padding: 22px; }
  .casa-interior-arenas .cert-grid { grid-template-columns: minmax(0, 1fr); gap: 45px; }
  body.casa-interior-arenas.pagina .hero h1 { font-size: clamp(3rem, 13vw, 4.4rem); }
  .casa-interior-arenas .meta li { grid-template-columns: 5.8rem minmax(0, 1fr); }
  .casa-interior .casa-archive-nav nav { grid-template-columns: minmax(0, 1fr); }
  .casa-interior .casa-header-inner { gap: 12px; }
  .casa-interior .casa-languages button { padding-inline: 7px; }
}
