/* Tema Catalana: lo que no cabe en theme.json. Medidas calcadas del boceto. */
:root {
	--cr-eo: cubic-bezier(.23, 1, .32, 1);
	--cr-line: rgba(18, 20, 20, .12);
	--cr-line-d: rgba(255, 255, 255, .13);
	--cr-pad: clamp(1.25rem, 4.4vw, 70px);
}

*, *::before, *::after { box-sizing: border-box; }
body { -webkit-font-smoothing: antialiased; overflow-x: clip; }
:focus-visible { outline: 2px solid var(--wp--preset--color--brick); outline-offset: 3px; }
img { height: auto; max-width: 100%; }

/* Marca de texto "catalana." */
.is-style-marca {
	font-family: var(--wp--preset--font-family--inter-tight);
	font-size: 1.55rem;
	font-weight: 600;
	letter-spacing: -.035em;
	line-height: 1;
	white-space: nowrap;
	color: var(--wp--preset--color--white);
}
.is-style-marca a { color: inherit; text-decoration: none; }
.has-ink-background-color .is-style-marca, .has-dark-background-color .is-style-marca { color: var(--wp--preset--color--white); }
.is-style-marca a:hover { color: inherit; }

/* Cabecera oscura fija */
.cr-cabecera-part {
	position: sticky;
	top: var(--wp-admin--admin-bar--height, 0px);
	z-index: 90;
}
.cr-cabecera { padding-left: var(--cr-pad) !important; padding-right: var(--cr-pad) !important; }
.cr-cabecera .cr-menu { margin-left: auto; }
.cr-cabecera .cr-menu .wp-block-navigation-item__content { color: rgba(255, 255, 255, .85); transition: color .3s ease; }
.cr-cabecera .cr-menu .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--brick-hi); }
.cr-cabecera .wp-block-navigation__responsive-container-open { color: var(--wp--preset--color--white); }
.cr-cabecera .cr-hsoc { padding-left: 1.9rem; border-left: 1px solid var(--cr-line-d); }
.cr-cabecera .cr-hsoc .wp-social-link { color: #8a9196; }
.cr-cabecera .cr-hsoc .wp-social-link:hover { color: var(--wp--preset--color--white); }
.cr-cabecera .cr-hsoc .wp-social-link svg { width: 19px; height: 19px; }

/* Menú móvil a pantalla completa */
.wp-block-navigation__responsive-container.is-menu-open {
	backdrop-filter: blur(18px);
	background: rgba(12, 16, 17, .985) !important;
}
.wp-block-navigation__responsive-container.is-menu-open { padding: 1.1rem var(--cr-pad) !important; }
.wp-block-navigation__responsive-container.is-menu-open :is(.wp-block-navigation__responsive-close, .wp-block-navigation__responsive-dialog) { height: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: center !important;
	justify-content: center;
	min-height: 100%;
	padding-top: 0 !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	align-items: center !important;
	justify-content: center !important;
	gap: 2.2rem !important;
	margin: 0 !important;
	width: 100%;
	flex: 0 0 auto;
	height: auto;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 1.2rem; color: var(--wp--preset--color--white) !important; }
@media (max-width: 960px) {
	.cr-cabecera .cr-hsoc { display: none; }
}

/* Secciones oscuras: textos claros sin tener que tocar cada bloque */
.has-ink-background-color :is(h1, h2, h3, h4, h5, h6, .is-style-antetitulo),
.has-dark-background-color :is(h1, h2, h3, h4, h5, h6, .is-style-antetitulo) { color: var(--wp--preset--color--white); }
.has-ink-background-color :is(p, li),
.has-dark-background-color :is(p, li) { color: var(--wp--preset--color--gray-d); }

/* Pie */
.cr-fin > * { padding-left: var(--cr-pad); padding-right: var(--cr-pad); }
.cr-fin .wp-block-columns { margin-bottom: 0; }
.cr-fin__cols, .cr-fin__bar { border-top: 1px solid var(--cr-line-d); }
.cr-fin__cols h3 { margin-bottom: 1.3rem; color: var(--wp--preset--color--white); }
.cr-fin__cols .wp-block-column:first-child { display: flex; flex-direction: column; align-items: flex-start; }
.cr-fin__cols .wp-block-column:first-child p { max-width: 34ch; }
.cr-fin__bar { color: var(--wp--preset--color--gray-d); }
.cr-fin__bar p { margin: 0; }
.cr-fin a:not(.wp-block-button__link):not(.wp-social-link-anchor) { color: var(--wp--preset--color--gray-d); text-decoration: none; transition: color .3s ease; }
.cr-fin a:not(.wp-block-button__link):not(.wp-social-link-anchor):hover { color: var(--wp--preset--color--brick-hi); }
.cr-fin .is-style-marca a, .cr-fin .is-style-marca a:hover { color: var(--wp--preset--color--white) !important; }
@media (max-width: 1100px) {
	.cr-fin__cols { flex-wrap: wrap !important; }
	.cr-fin__cols > .wp-block-column { flex-basis: calc(50% - 1.25rem) !important; flex-grow: 0; }
}
@media (max-width: 760px) {
	.cr-fin__cols > .wp-block-column { flex-basis: 100% !important; }
}

/* Contenido largo (páginas interiores y artículos): gris más oscuro para que se lea bien */
.cr-prosa { color: #55595c; font-size: 1.0625rem; line-height: 1.7; }
.cr-prosa > * + * { margin-top: 1.2em; }
.cr-prosa :is(h2, h3) { margin-top: 2.2em; }
.cr-prosa h2 { font-size: var(--wp--preset--font-size--md); line-height: 1.15; }
.cr-prosa h3 { font-size: var(--wp--preset--font-size--sm); }
.cr-prosa :is(ul, ol) { padding-left: 1.2em; }
.cr-prosa li + li { margin-top: .35em; }
.cr-prosa > .alignfull:first-child { margin-top: 0; }


/* Rejilla de artículos */
.cr-rejilla { gap: clamp(1.25rem, 2.6vw, 2.5rem) !important; }
.cr-rejilla .wp-block-post-featured-image { overflow: hidden; margin-bottom: 1.2rem; }
.cr-rejilla .wp-block-post-featured-image img { transition: transform .8s var(--cr-eo); }
.cr-rejilla .wp-block-post-title a { color: var(--wp--preset--color--ink); text-decoration: none; }
@media (hover: hover) and (pointer: fine) {
	.cr-rejilla li:hover .wp-block-post-featured-image img { transform: scale(1.06); }
}
.cr-rejilla .is-style-antetitulo a { text-decoration: none; color: var(--wp--preset--color--brick); }

/* Animación de entrada (bloques con la clase rv) */
.js .rv { opacity: 0; transform: translateY(20px); transition: opacity .8s var(--cr-eo), transform .8s var(--cr-eo); }
.js .rv.in { opacity: 1; transform: none; }
.editor-styles-wrapper .rv { opacity: 1 !important; transform: none !important; }

@media (prefers-reduced-motion: reduce) {
	.js .rv { opacity: 1; transform: none; transition: none; }
}

/* Cabecera, contenido y pie pegados; y en las páginas por secciones, secciones pegadas entre sí */
.wp-site-blocks > * + * { margin-block-start: 0; }
.cr-secciones > * { margin-block-start: 0 !important; margin-block-end: 0 !important; }

/* ---------- Páginas interiores ---------- */

/* Banda oscura con la imagen destacada de fondo */
.cr-cab-int { background-color: var(--wp--preset--color--ink); }
.cr-cab-int .wp-block-cover__inner-container > * + * { margin-top: 1rem; }
.cr-cab-int .wp-block-post-title,
.cr-cab-int h1 {
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--seccion);
	max-width: 22ch;
	margin-top: 1.2rem !important;
}
.cr-cab-int .cr-migas { color: rgba(255, 255, 255, .78); }
.cr-cab-int .cr-entradilla,
.cr-cab-int .cr-entradilla p { color: rgba(255, 255, 255, .78) !important; font-size: 1.125rem; line-height: 1.55; max-width: 60ch; }
.cr-cab-int .cr-fecha { color: rgba(255, 255, 255, .6); font-size: .875rem; }
.cr-cab-int .cr-entradilla .wp-block-post-excerpt__more-text { display: none; }
.cr-cab-int--lista .wp-block-search { max-width: 34rem; }
.cr-cab-int--lista .wp-block-search__input { border: 0; padding: .8rem 1rem; }

/* Contenido + columna lateral */
.cr-con-lateral { align-items: flex-start !important; }
.cr-lateral { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 100px); }
.cr-lateral > * + * { margin-top: 2.5rem; }
.cr-llamada > * + * { margin-top: .8rem; }
.cr-llamada h2 { margin-top: .5rem !important; }
.cr-llamada__tel a {
	font-family: var(--wp--preset--font-family--inter-tight);
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: -.01em;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}
.cr-llamada__tel a::before { content: "☎"; font-size: 1.1rem; color: var(--wp--preset--color--brick); margin-right: .5rem; vertical-align: .15em; }
.cr-llamada .wp-block-buttons { margin-top: 1.4rem; }
@media (max-width: 781px) {
	.cr-lateral { position: static; }
}

/* Texto de las páginas y artículos */
.cr-prosa :is(h2, h3, h4) { color: var(--wp--preset--color--ink); }
.cr-prosa > :first-child { margin-top: 0; }
.cr-prosa :is(.wp-block-image, .wp-block-gallery, .wp-block-video, figure) { margin-block: 2rem; }
.cr-prosa figcaption { font-size: .85rem; color: var(--wp--preset--color--gray); margin-top: .6rem; text-align: left; }
.cr-prosa .wp-block-gallery { gap: 10px; }
.cr-prosa video { width: 100%; height: auto; background: var(--wp--preset--color--ink); }
.cr-prosa table { width: 100%; border-collapse: collapse; font-size: .94rem; }
.cr-prosa :is(th, td) { padding: .7rem .8rem; border-bottom: 1px solid var(--cr-line); text-align: left; vertical-align: top; }
.cr-prosa th { color: var(--wp--preset--color--ink); font-weight: 500; background: var(--wp--preset--color--sand); }
.cr-prosa .wp-block-table { overflow-x: auto; }
.cr-prosa strong { color: #3f4346; font-weight: 600; }
.cr-prosa a:not(.wp-block-button__link) { text-underline-offset: .15em; }
.cr-prosa ul li::marker { color: var(--wp--preset--color--brick); }
.cr-prosa .cr-faql, .cr-prosa .cr-faq { margin-block: 2rem; }

/* Rejilla de artículos */
.cr-rejilla .wp-block-post-excerpt { font-size: .94rem; line-height: 1.6; }
.cr-rejilla .wp-block-post-excerpt__more-text { display: none; }

/* En las bandas de listado (grupo con diseño restringido) un max-width centraría el texto */
.cr-cab-int--lista > :is(h1, p, .cr-entradilla, .wp-block-query-title) { max-width: var(--wp--style--global--content-size); text-wrap: balance; }
.cr-cab-int--lista > .cr-entradilla { padding-right: 30%; }
@media (max-width: 760px) { .cr-cab-int--lista > .cr-entradilla { padding-right: 0; } }
.cr-llamada .wp-block-button { width: 100%; }
.cr-llamada .wp-block-button__link { width: 100%; justify-content: center; }

/* Editor del sitio: cabecera, contenido y pie pegados, como en la web */
.is-root-container > :is(.wp-block-template-part, .cr-main) { margin-block-start: 0; }
.cr-main > .wp-block-template-part,
.cr-main > .wp-block-template-part + * { margin-block-start: 0; }

/* Listado de artículos dentro de una página (sustituye a los widgets de noticias de la web vieja) */
.cr-ultimos.wp-block-latest-posts { padding: 0; margin-block: 1.5rem 2.5rem; border-top: 1px solid var(--cr-line); }
.cr-ultimos.wp-block-latest-posts li { padding: 1.1rem 0; margin: 0; border-bottom: 1px solid var(--cr-line); }
.cr-ultimos.wp-block-latest-posts li::marker { content: none; }
.cr-ultimos .wp-block-latest-posts__post-title {
	font-family: var(--wp--preset--font-family--inter-tight);
	font-weight: 500;
	font-size: var(--wp--preset--font-size--xs);
	line-height: 1.3;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}
.cr-ultimos .wp-block-latest-posts__post-title:hover { color: var(--wp--preset--color--brick); }
.cr-ultimos .wp-block-latest-posts__post-excerpt { margin: .4rem 0 0; font-size: .94rem; line-height: 1.6; }
.cr-ultimos .wp-block-latest-posts__post-excerpt a { display: none; }

/* Vídeos verticales (grabados con el móvil) */
.cr-prosa .cr-video-vertical { max-width: 340px; }
