/* Loaded only on editorial routes. No carousel or animation dependency. */
/* Header stays in flow. Match the existing interior breadcrumb's 1rem gap,
   overriding any generic main top margin on editorial templates only. */
main.cg-editorial { max-width: 70rem; margin: 0 auto; padding: 1rem 1rem 3rem; }
.cg-editorial__breadcrumb { font-size: .8125rem; line-height: 1.6; margin-bottom: 1.5rem; overflow-wrap: anywhere; }
.cg-editorial__intro { max-width: 52rem; margin-bottom: 2rem; }
.cg-editorial__eyebrow { color: #b70911; font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; }
.cg-editorial h1 { font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.1; font-weight: 800; margin: .5rem 0 1rem; overflow-wrap: anywhere; }
.cg-editorial__summary { font-size: 1.125rem; line-height: 1.65; }
.cg-editorial__meta, .cg-editorial time { color: #52525b; font-size: .875rem; }
.cg-editorial__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
.cg-editorial__card { min-width: 0; background: #fff; border: 1px solid #e4e4e7; border-radius: .375rem; overflow: hidden; }
.cg-editorial__card-link { display: flex; flex-direction: column; height: 100%; color: inherit; text-decoration: none; }
.cg-editorial__card-link:hover { color: inherit; text-decoration: none; }
.cg-editorial__card-link:focus-visible { outline: 3px solid #b70911; outline-offset: -3px; }
.cg-editorial__card-image { aspect-ratio: 16/9; background: #f4f4f5; }
.cg-editorial__card-image img { width: 100%; height: 100%; object-fit: cover; }
.cg-editorial__card-copy { padding: 1.25rem; display: flex; flex-direction: column; flex: 1; }
.cg-editorial__card h2 { font-size: 1.5rem; font-weight: 800; line-height: 1.2; margin: .5rem 0 .75rem; overflow-wrap: anywhere; }
.cg-editorial__card p { line-height: 1.6; }
.cg-editorial__read { color: #b70911; font-weight: 700; margin-top: auto; padding-top: 1rem; }
.cg-editorial__hero { margin-bottom: 2rem; }
.cg-editorial__hero img { display: block; width: 100%; height: auto; border-radius: .375rem; }
.cg-editorial__content { max-width: 48rem; margin: 0 auto; line-height: 1.8; overflow-wrap: anywhere; }
.cg-editorial__content > * + * { margin-top: 1.25rem; }
.cg-editorial__content h2 { font-size: 1.875rem; font-weight: 800; line-height: 1.25; margin-top: 2rem; }
.cg-editorial__content h3 { font-size: 1.5rem; font-weight: 700; line-height: 1.3; }
.cg-editorial__content ul { list-style: disc; padding-left: 1.5rem; }
.cg-editorial__content ol { list-style: decimal; padding-left: 1.5rem; }
.cg-editorial__content a { color: #b70911; text-decoration: underline; }
.cg-editorial__content img, .cg-editorial__content iframe { max-width: 100%; }
.cg-editorial__content img { height: auto; }
.cg-editorial__content blockquote { border-left: 3px solid #b70911; padding-left: 1.25rem; font-size: 1.25rem; }
.cg-editorial__content pre, .cg-editorial__content .wp-block-table { overflow-x: auto; max-width: 100%; }
.cg-editorial__article-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem; margin-top: 2rem; padding: 1.5rem; border: 1px solid #e4e4e7; border-radius: .5rem; background: #fff; box-shadow: 0 4px 16px rgba(24,24,27,.04); }
.cg-editorial__topics { min-width: 0; flex: 1 1 16rem; }
.cg-editorial__topic-label { display: block; margin-bottom: .625rem; color: #52525b; font-size: .6875rem; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }
.cg-editorial__topics ul { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0; margin: 0; list-style: none; }
.cg-editorial__topics li { margin: 0; }
.cg-editorial__topics a { display: inline-flex; align-items: center; gap: .625rem; min-height: 44px; padding: .5rem .875rem; border: 1px solid #e4e4e7; border-radius: .25rem; background: #fafafa; color: #27272a; font-weight: 700; font-size: .875rem; text-decoration: none; overflow-wrap: anywhere; }
.cg-editorial__topics a:hover { background: #fff1f2; border-color: #fca5a5; color: #970b12; text-decoration: none; }
.cg-editorial__topics a span { color: #b70911; }
.cg-editorial__blog-cta { display: inline-flex; justify-content: center; align-items: center; gap: 1rem; min-height: 48px; padding: .75rem 1.25rem; border: 1px solid #b70911; border-radius: .25rem; background: #b70911; color: #fff; font-weight: 800; font-size: .9375rem; text-decoration: none; box-shadow: 0 3px 8px rgba(151,11,18,.12); }
.cg-editorial__blog-cta:hover { background: #970b12; border-color: #970b12; color: #fff; text-decoration: none; }
.cg-editorial__topics a:focus-visible, .cg-editorial__blog-cta:focus-visible { outline: 3px solid #18181b; outline-offset: 3px; }
.cg-editorial .post-navigation { border-top: 1px solid #e4e4e7; padding-top: 1.5rem; margin-top: 2rem; }
.cg-editorial .post-navigation a { color: #b70911; text-decoration: underline; }
.cg-editorial .nav-links { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 1.5rem; }
.cg-editorial__pagination ul { display: flex; flex-wrap: wrap; list-style: none; gap: .5rem; padding: 0; margin: 2rem 0 0; }
.cg-editorial__pagination a, .cg-editorial__pagination span { display: inline-flex; min-width: 2.75rem; min-height: 2.75rem; align-items: center; justify-content: center; padding: .5rem .75rem; border: 1px solid #d4d4d8; border-radius: .25rem; }
.cg-editorial__pagination .current { background: #18181b; color: #fff; }
@media (min-width: 640px) { .cg-editorial__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .cg-editorial__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 639px) { .cg-editorial__article-footer { padding: 1.25rem; gap: 1.25rem; } .cg-editorial__blog-cta { width: 100%; } }
