/**
 * arch-pages.css — Estilo corporativo unificado para páginas de contenido/SPPB
 * Archidiócesis de Madrid — 2026-07-14
 * Se carga en todo el sitio (index.php) pero SOLO actúa en páginas marcadas con
 * pageclass_sfx="arch-page" (body.arch-page). Sistema visual: carmesí + oro + Palatino.
 * Tokens alineados con arch-portada.css.
 */
body.arch-page {
  --ap-bg:#FAF9F6; --ap-ink:#1F1A18; --ap-body:#453F39; --ap-muted:#8B8378;
  --ap-hair:#E4DDD0; --ap-crimson:#A31F2B; --ap-crimson-deep:#7C1620;
  --ap-gold:#A98A3F; --ap-gold-soft:#C9AF74;
  --ap-serif:"Palatino Linotype","Book Antigua",Palatino,Georgia,"Times New Roman",serif;
  --ap-sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

/* ---- Contenedor y ritmo general ---- */
body.arch-page #sp-component{
  color:var(--ap-body);
  font-family:var(--ap-sans);
  font-size:1.05rem;
  line-height:1.7;
}
body.arch-page #sp-component .sppb-row-container,
body.arch-page #sp-component .com-content-category-blog{
  max-width:1080px;margin-left:auto;margin-right:auto;
}

/* ---- Títulos: Palatino ---- */
body.arch-page #sp-component h1,
body.arch-page #sp-component h2,
body.arch-page #sp-component h3,
body.arch-page #sp-component h4,
body.arch-page #sp-component .sppb-addon-title,
body.arch-page #sp-component .page-header h1,
body.arch-page #sp-component .article-header h1{
  font-family:var(--ap-serif);
  font-weight:600;
  line-height:1.2;
  letter-spacing:.005em;
}
/* Color por defecto de títulos de contenido (el hero H1 conserva su color propio: blanco) */
body.arch-page #sp-component h2.sppb-addon-title,
body.arch-page #sp-component .page-header h1,
body.arch-page #sp-component .article-header h1{color:var(--ap-ink);}
body.arch-page #sp-component .sppb-addon-title{font-size:1.9rem;margin:0 0 .6em;}
body.arch-page #sp-component h1.sppb-addon-title{font-size:2.3rem;}
body.arch-page #sp-component h1.sppb-addon-title,
body.arch-page #sp-component h2.sppb-addon-title{position:relative;padding-bottom:.45rem;}
/* Filete oro bajo los títulos principales (hero H1 y secciones H2) */
body.arch-page #sp-component h1.sppb-addon-title:after,
body.arch-page #sp-component h2.sppb-addon-title:after{
  content:"";display:block;width:64px;height:3px;margin-top:.6rem;
  background:linear-gradient(90deg,var(--ap-gold-soft),var(--ap-gold));border-radius:2px;
}
body.arch-page #sp-component h3{font-size:1.4rem;color:var(--ap-crimson-deep);}

/* ---- Hero de página (sección granate del encabezado) ---- */
body.arch-page #sp-component .sppb-section:first-child{padding-top:3.2rem;padding-bottom:3.2rem;}

/* ---- Texto de cuerpo ---- */
body.arch-page #sp-component .sppb-addon-text,
body.arch-page #sp-component .sppb-addon-content p,
body.arch-page #sp-component .article-body p{
  color:var(--ap-body);
  font-size:1.05rem;
  line-height:1.75;
}
body.arch-page #sp-component p{margin:0 0 1.1em;}

/* ---- Enlaces ---- */
body.arch-page #sp-component a:not(.sppb-btn):not(.btn){
  color:var(--ap-crimson);text-decoration:none;
  border-bottom:1px solid transparent;transition:border-color .15s ease,color .15s ease;
}
body.arch-page #sp-component a:not(.sppb-btn):not(.btn):hover{
  color:var(--ap-crimson-deep);border-bottom-color:var(--ap-gold-soft);
}

/* ---- Imágenes ---- */
body.arch-page #sp-component .sppb-addon-image img,
body.arch-page #sp-component .article-body img,
body.arch-page #sp-component figure img{
  max-width:100%;height:auto;border-radius:12px;
  box-shadow:0 6px 20px rgba(31,26,24,.12);
}

/* ---- Citas ---- */
body.arch-page #sp-component blockquote{
  border-left:4px solid var(--ap-gold);
  background:#F5F1E9;
  margin:1.5em 0;padding:1em 1.4em;border-radius:0 10px 10px 0;
  font-family:var(--ap-serif);font-style:italic;color:var(--ap-ink);
}

/* ---- Acordeones (SPPB) ---- */
body.arch-page #sp-component .sppb-panel{
  border:1px solid var(--ap-hair);border-radius:10px;overflow:hidden;margin-bottom:.6rem;
}
body.arch-page #sp-component .sppb-panel-heading,
body.arch-page #sp-component .sppb-toggle-title{
  font-family:var(--ap-serif);font-weight:600;
}
body.arch-page #sp-component .sppb-panel-title{color:var(--ap-crimson-deep);font-size:1.1rem;}
body.arch-page #sp-component .sppb-panel.sppb-panel-active .sppb-panel-heading,
body.arch-page #sp-component .sppb-panel-heading:hover{
  background:#F5F1E9;
}
body.arch-page #sp-component .sppb-panel-body{background:#fff;}

/* ---- Divisores ---- */
body.arch-page #sp-component .sppb-addon-divider hr,
body.arch-page #sp-component hr{
  border:0;height:2px;background:linear-gradient(90deg,var(--ap-hair),var(--ap-gold-soft),var(--ap-hair));
}

/* ---- Botones corporativos ---- */
body.arch-page #sp-component .sppb-btn,
body.arch-page #sp-component .btn-primary{
  background:var(--ap-crimson);border:0;color:#fff;border-radius:999px;
  padding:.7em 1.6em;font-weight:600;transition:background .15s ease;
}
body.arch-page #sp-component .sppb-btn:hover,
body.arch-page #sp-component .btn-primary:hover{background:var(--ap-crimson-deep);color:#fff;}

/* ---- Cabecera de página de contenido (blog/artículo) ---- */
body.arch-page #sp-component .page-header{
  border-bottom:1px solid var(--ap-hair);margin-bottom:1.4rem;padding-bottom:.6rem;
}
