/* Páginas interiores: textos legales y listado de artículos */
.doc { padding-block: clamp(40px, 7vh, 72px) var(--space-section); }
.doc h1 { font: 800 var(--text-h1)/1.08 var(--font-display); letter-spacing: -.02em; text-wrap: balance; }
/* Páginas legales: título centrado; el texto largo va a la izquierda en una columna de 720 px */
.prose { background: #FFFFFF; }
.prose h1 { font: 800 clamp(28px, 3.4vw, 40px)/1.15 var(--font-heading); color: #333333; text-align: center; }
.prose h1 + p { text-align: center; }

/* Texto legal: una columna angosta, cómoda de leer */
.prose .wrap { max-width: calc(720px + 2 * var(--gutter)); }
.prose h2 { margin-top: 48px; font: 700 clamp(1.25rem, 1.15rem + .4vw, 1.5rem)/1.25 var(--font-heading); letter-spacing: -.01em; color: #333333; }
.prose h3 { margin-top: 28px; font: 700 1.0625rem/1.3 var(--font-heading); color: #333333; }
.prose p, .prose ul, .prose .table-scroll, .prose form { margin-top: 16px; }
.prose p, .prose li, .prose td { font: 400 16px/1.7 var(--font-copy); color: #333333; }
.prose h1 + p { color: var(--text-soft); }
.prose ul { padding-left: 1.25em; display: grid; gap: 8px; }
.prose .table-scroll { overflow-x: auto; border: 1px solid #E6E6E6; border-radius: var(--radius); }
.prose table { width: 100%; min-width: 560px; border-collapse: collapse; background: var(--surface); font-size: .9375rem; }
.prose th, .prose td { padding: 14px 16px; text-align: left; vertical-align: top; border-top: 1px solid #E6E6E6; }
.prose thead th { border-top: 0; font: 700 .8125rem/1.3 var(--font-display); color: var(--text-soft); }

/* Parte 19: noticias (server/noticias-render.mjs). Sin país, sin bandera y sin imagen. Tema en cian; el resto, colores de marca */
.news-page h1 { text-align: left; }
.news-page .wrap { max-width: calc(760px + 2 * var(--gutter)); }
.news-empty { color: var(--text-soft); }
.news-list { list-style: none; padding: 0; margin-top: 28px; display: grid; gap: 16px; }
.news-card { display: grid; gap: 8px; padding: 22px 24px; background: var(--surface); border: 1px solid #E6E6E6; border-radius: var(--radius);
  transition: border-color .2s ease, box-shadow .2s ease; }
.news-card:hover { border-color: rgba(255,102,0,.45); box-shadow: 0 6px 18px rgba(51,51,51,.06); }
.news-card h2 { margin-top: 0; font: 700 clamp(1.125rem, 1.05rem + .3vw, 1.3rem)/1.3 var(--font-heading); }
.news-card h2 a { color: #333333; text-decoration: none; }
.news-card h2 a:hover { color: var(--orange-text); text-decoration: underline; }
.news-card h2 a:focus-visible { outline: 2px solid var(--orange); outline-offset: 3px; border-radius: 3px; }
.prose .news-card p, .prose .news-card__meta { margin-top: 0; color: #555555; }
.news-tag { font: 700 12px/1 var(--font-heading); letter-spacing: .06em; text-transform: uppercase; color: var(--cyan-text); }
.news-card__meta, .news__meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; font: 400 14px/1.5 var(--font-copy); color: #555555; }
.news-pages { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 28px; font: 400 15px/1.4 var(--font-copy); color: #555555; }
.news-pages a { font: 700 13px/1 var(--font-heading); letter-spacing: .06em; text-transform: uppercase; color: var(--orange-text); }
.news h1 { text-align: left; }
.prose .news__meta { margin-top: 12px; }
.news__answer { margin-top: 24px; padding: 18px 20px; background: #FFF7F1; border-left: 4px solid var(--orange); border-radius: 0 var(--radius) var(--radius) 0; }
.prose .news__answer p { margin-top: 0; font-weight: 500; }
.news__body blockquote { margin: 20px 0 0; padding: 4px 0 4px 16px; border-left: 3px solid #D9D9D9; }
.prose .news__body blockquote p { margin-top: 0; color: #555555; font-style: italic; }
.news__sources { margin-top: 40px; padding-top: 20px; border-top: 1px solid #E6E6E6; }
.prose .news__sources h2 { margin-top: 0; font-size: 1.0625rem; }
.news__sources a { color: var(--orange-text); overflow-wrap: anywhere; }
.news__cta { margin-top: 32px; }
.news-updated { color: #555555; }
.news-preview { margin: 0; padding: 14px 16px; background: #333333; color: #FFFFFF; text-align: center;
  font: 800 clamp(16px, 2vw, 22px)/1.3 var(--font-heading); letter-spacing: .06em; text-transform: uppercase; }

/* Ajuste 22b: migas de las páginas internas (iguales al BreadcrumbList de sus datos estructurados) */
.migas { margin: 0 0 18px; font: 400 14px/1.4 var(--font-copy); color: #555555; }
.migas ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.migas li + li::before { content: '›'; margin-right: 6px; color: #9A9A9A; }
.migas a { color: #B84A00; }
.migas a:focus-visible { outline: 2px solid #FF6600; outline-offset: 2px; border-radius: 3px; }
