/* Etapa 7: blog, búsqueda, contenido y error 404. Sin frameworks. */
:root { --ic-content-shadow: 0 14px 44px rgba(6,59,97,.065); }
.ic-journal, .ic-article, .ic-error, .ic-page-wide, .ic-page-no-title, .ic-page-landing { min-width: 0; }
.ic-journal { padding-top: clamp(2rem,5vw,4.8rem); padding-bottom: clamp(3rem,6vw,6.2rem); }
.ic-journal__intro { max-width: 1280px; padding: clamp(1.5rem,4vw,3.4rem); border-radius: clamp(16px,2.4vw,28px); background: linear-gradient(125deg,#f4f8fc,#fff 72%); border:1px solid var(--wp--preset--color--borde); position:relative; overflow:hidden; }
.ic-journal__intro::after { content:""; width:18rem; height:18rem; position:absolute; right:-8rem; top:-10rem; background:radial-gradient(circle,rgba(8,118,172,.12),transparent 72%); pointer-events:none; }
.ic-journal__eyebrow,.ic-article-cta__eyebrow { font-size:.76rem; letter-spacing:.12em; font-weight:800; color:var(--wp--preset--color--secundario); }
.ic-journal__heading { font-size:clamp(2rem,4vw,3.45rem); line-height:1.12; max-width:860px; letter-spacing:-.035em; margin-block:.75rem!important; }
.ic-journal__lead { max-width:780px; color:var(--wp--preset--color--texto-suave); font-size:clamp(1rem,1.5vw,1.16rem); }
.ic-journal__body { margin-top: clamp(2rem,4vw,3.5rem)!important; }
.ic-journal .wp-block-post-template.is-layout-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2vw,1.6rem); }
.ic-journal-card { background:#fff; border:1px solid var(--wp--preset--color--borde); border-radius:16px; box-shadow:var(--ic-content-shadow); overflow:hidden; height:100%; display:flex!important; flex-direction:column; gap:0!important; min-width:0; transition:transform .18s ease,box-shadow .18s ease; }
.ic-journal-card:hover { transform:translateY(-3px); box-shadow:0 20px 46px rgba(6,59,97,.12); }
.ic-journal-card__image { margin:0!important; }
.ic-journal-card__image img { display:block; width:100%; object-fit:cover; }
.ic-journal-card__body { padding:clamp(1rem,2vw,1.5rem); display:flex; flex-direction:column; align-items:flex-start; gap:.7rem!important; flex:1; }
.ic-journal-card__terms, .ic-article__terms { color:var(--wp--preset--color--secundario); font-size:.76rem; font-weight:800; letter-spacing:.04em; }
.ic-journal-card__terms a, .ic-article__terms a { color:inherit; }
.ic-journal-card__title { font-size:clamp(1.12rem,1.4vw,1.4rem); line-height:1.3; margin:0!important; }
.ic-journal-card__title a, .ic-search-result__title a { color:var(--wp--preset--color--principal); text-decoration:none; }
.ic-journal-card__title a:hover,.ic-search-result__title a:hover { color:var(--wp--preset--color--secundario); text-decoration:underline; }
.ic-journal-card__date,.ic-search-result__date { font-size:.84rem;color:var(--wp--preset--color--texto-suave); }
.ic-journal-card__excerpt { color:var(--wp--preset--color--texto-suave); font-size:.94rem; line-height:1.6; margin:0!important; }
.ic-journal-card__excerpt .wp-block-post-excerpt__more-link { display:inline-block; color:var(--wp--preset--color--principal); font-weight:750; padding-top:.4rem; }
.ic-journal__pagination { gap:.7rem; margin:2.2rem auto 0!important; }
.ic-journal__pagination a, .ic-journal__pagination .page-numbers { padding:.45rem .85rem; border:1px solid var(--wp--preset--color--borde); border-radius:8px; background:white; }
.ic-journal__pagination .current { background:var(--wp--preset--color--principal); color:#fff; border-color:var(--wp--preset--color--principal); }
.ic-journal__empty { padding:clamp(1.5rem,4vw,3rem); max-width:820px; border-radius:16px; border:1px dashed var(--wp--preset--color--borde); background:var(--wp--preset--color--superficie); text-align:center; }
.ic-journal__search, .ic-error__search { max-width:720px; margin-top:1.4rem; }
.ic-journal__search .wp-block-search__inside-wrapper, .ic-error__search .wp-block-search__inside-wrapper { border:1px solid var(--wp--preset--color--borde); border-radius:12px; padding:5px; background:#fff; }
.ic-journal__search .wp-block-search__input, .ic-error__search .wp-block-search__input { min-width:0; padding:.8rem .95rem; background:transparent; border:0; }
.ic-journal__search .wp-block-search__button, .ic-error__search .wp-block-search__button { border:0; border-radius:8px; background:var(--wp--preset--color--principal); color:#fff; padding:.75rem 1.15rem; font-weight:750; }
.ic-search-results { list-style:none; margin:0!important; padding:0; display:grid!important; gap:1rem; }
.ic-search-result { padding:1.5rem; border-radius:14px; border:1px solid var(--wp--preset--color--borde); background:#fff; box-shadow:var(--ic-content-shadow); }
.ic-search-result__title { font-size:clamp(1.2rem,1.7vw,1.55rem); margin:0 0 .35rem!important; }
.ic-search-result .wp-block-post-excerpt { margin-top:.7rem; color:var(--wp--preset--color--texto-suave); }
.ic-error { padding-block:clamp(4rem,9vw,8rem); }
.ic-error__panel { max-width:900px; text-align:center; border:1px solid var(--wp--preset--color--borde); border-radius:28px; padding:clamp(2rem,5vw,5rem); background:radial-gradient(circle at top right,rgba(8,118,172,.085),transparent 44%),#fff; box-shadow:var(--ic-content-shadow); }
.ic-error__code { color:var(--wp--preset--color--secundario); font-size:clamp(5rem,13vw,9rem); line-height:.95; font-weight:900; letter-spacing:-.08em; margin:0!important; }
.ic-error__title { font-size:clamp(1.7rem,4.5vw,3.3rem); margin-top:1rem!important; }
.ic-error__copy { max-width:620px; margin-inline:auto!important; color:var(--wp--preset--color--texto-suave); }
.ic-error__actions { margin:2rem 0 0!important; }
.ic-error__search { margin:2.5rem auto 0!important; text-align:left; }
.ic-article { padding-block:clamp(2rem,5vw,5rem); }
.ic-article__heading { max-width:850px; }
.ic-article__title { font-size:clamp(2.2rem,4.5vw,4rem); line-height:1.13; letter-spacing:-.035em; margin:.75rem 0!important; }
.ic-article__date { color:var(--wp--preset--color--texto-suave); }
.ic-article__cover { max-width:1140px; margin:clamp(1.3rem,3vw,2.5rem) auto 0!important; }
.ic-article__cover img { border-radius:clamp(12px,2vw,22px); width:100%; max-height:560px; object-fit:cover; }
.ic-article__content { margin-top:clamp(2rem,4vw,3.75rem)!important; }
.ic-article__content .wp-block-post-content > * { max-width:100%; }
.ic-article__content .wp-block-post-content :is(p,ul,ol) { line-height:1.85; }
.ic-article__content .wp-block-post-content a:not(.wp-block-button__link) { text-decoration:underline; }
.ic-article__tags { margin-block:1.4rem; color:var(--wp--preset--color--texto-suave); }
.ic-article__nav { padding:.7rem 0; border-bottom:1px solid var(--wp--preset--color--borde); font-weight:750; }
.ic-article-cta { margin-top:clamp(3rem,6vw,5rem)!important; max-width:1280px; background:linear-gradient(112deg,#063B61,#0876AC); padding:clamp(1.6rem,4vw,3.2rem); border-radius:22px; color:#fff; }
.ic-article-cta__eyebrow { color:#ccecff; }
.ic-article-cta__title { color:#fff!important; font-size:clamp(1.5rem,3vw,2.3rem); margin:.6rem 0!important; }
.ic-article-cta__text { color:#e9f6ff; max-width:720px; margin:0 0 1.1rem!important; }
.ic-article-cta__button .wp-block-button__link { background:#fff; color:#063B61; border-radius:9px; }
.ic-article-cta__button .wp-block-button__link:hover { background:#e8f5ff; }
.ic-page-wide { padding-block:clamp(1.5rem,4vw,3.5rem); }
.ic-page-wide__header { margin-bottom:1.7rem; }
.ic-page-wide > .wp-block-post-content, .ic-page-landing > .wp-block-post-content { width:100%; }
.ic-page-no-title { padding-block:clamp(1.5rem,4vw,3.5rem); }
.ic-page-landing { padding:0!important; margin:0; }
.ic-page-landing > .wp-block-post-content { margin:0; }
/* Contraste, desplazamiento reducido y áreas táctiles accesibles. */
.ic-journal :is(.wp-block-search__button,.wp-block-post-excerpt__more-link), .ic-error .wp-block-button__link { min-height:44px; }
.ic-journal a:focus-visible,.ic-error a:focus-visible,.ic-article a:focus-visible { outline:3px solid #0876AC; outline-offset:4px; }
@media (max-width:1020px) { .ic-journal .wp-block-post-template.is-layout-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:680px) {
  .ic-journal .wp-block-post-template.is-layout-grid { grid-template-columns:minmax(0,1fr); }
  .ic-journal__intro { padding:1.4rem; }
  .ic-journal__search .wp-block-search__button,.ic-error__search .wp-block-search__button { padding-inline:.85rem; }
  .ic-error__panel { padding:2rem 1.1rem; }
  .ic-search-result { padding:1.1rem; }
}
@media (prefers-reduced-motion:reduce) { .ic-journal-card { transition:none; } .ic-journal-card:hover { transform:none; } }
