/* Supported editorial and block styles, without old marketing/navigation overrides. */
.article-cta__actions{display:flex;gap:10px;flex-wrap:wrap;}
.breadcrumb-wrap{padding-top:24px;}
.breadcrumbs ol{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:0;color:var(--cc-muted);font-size:.82rem;}
.breadcrumbs li:not(:last-child):after{content:"/";margin-left:8px;color:#a7b2bd;}
.breadcrumbs a{color:var(--cc-muted);text-decoration:none;}
.page-hero,.archive-hero,.author-archive{padding-block:clamp(56px,8vw,96px);}
.page-hero__lead,.archive-hero__lead,.archive-hero__intro,.article-header__lead{color:var(--cc-muted);font-size:clamp(1.08rem,1.5vw,1.3rem);}
.page-cover,.article-cover{overflow:hidden;border-radius:var(--radius-lg);background:var(--cc-soft);}
.page-cover img,.article-cover img{width:100%;aspect-ratio:16/8.5;object-fit:cover;}
.page-content{padding-bottom:var(--section);}
.content-prose{font-size:1.07rem;line-height:1.78;}
.content-prose--wide{max-width:920px;}
.content-prose>*:first-child{margin-top:0;}
.content-prose h2{margin-top:2.3em;font-size:clamp(1.6rem,1.35rem + .7vw,1.9rem);}
.content-prose h3{margin-top:1.9em;}
.content-prose p,.content-prose ul,.content-prose ol{margin-bottom:1.35em;}
.content-prose ul,.content-prose ol{padding-left:1.35em;}
.content-prose blockquote{margin:2em 0;padding:20px 24px;border-left:5px solid var(--cc-yellow);border-radius:0 10px 10px 0;background:var(--cc-soft);font-size:1.12rem;}
.content-prose table{width:100%;border-collapse:collapse;margin:2em 0;}
.content-prose th,.content-prose td{padding:12px 14px;border:1px solid var(--cc-line);text-align:left;}
.content-prose th{background:var(--cc-blue-soft);color:var(--cc-navy);}
.article-header{padding-block:clamp(48px,7vw,88px) 42px;}
.article-header h1{max-width:920px;font-size:clamp(2rem,1.4rem + 1.8vw,2.75rem);}
.article-type{margin:12px 0 6px;color:var(--cc-muted);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 16px;color:var(--cc-muted);font-size:.82rem;}
.article-main{padding-block:clamp(42px,6vw,78px);}
.article-main__content{max-width:1000px;margin:auto;}
.article-layout{display:block;}
.article-layout.has-toc{display:grid;grid-template-columns:220px minmax(0,760px);gap:44px;align-items:start;justify-content:center;}
.article-toc{position:sticky;top:110px;padding:18px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-soft);font-size:.86rem;}
.article-toc strong{display:block;margin-bottom:10px;color:var(--cc-navy);}
.article-toc ol{list-style:none;margin:0;padding:0;}
.article-toc li+li{margin-top:8px;}
.article-toc a{color:var(--cc-muted);text-decoration:none;}
.article-toc a:hover{color:var(--cc-navy);}
.article-toc .toc-h3{padding-left:12px;font-size:.92em;}
.editorial-summary{margin:0 auto 42px;max-width:820px;padding:26px;border:1px solid #b8d8e9;border-radius:12px;background:var(--cc-blue-soft);}
.editorial-summary h2{font-size:1.45rem;}
.editorial-summary__lead{font-size:1.08rem;}
.editorial-summary__points{margin:0;padding-left:1.25rem;}
.editorial-summary__points li+li{margin-top:7px;}
.editorial-summary__table{margin:20px 0 0;border-top:1px solid #cbdde8;}
.editorial-summary__table>div{display:grid;grid-template-columns:minmax(140px,.7fr) 1.3fr;gap:16px;padding:10px 0;border-bottom:1px solid #cbdde8;}
.editorial-summary__table dt{font-weight:800;color:var(--cc-navy);}
.editorial-summary__table dd{margin:0;}
.sources{margin-top:48px;padding-top:28px;border-top:1px solid var(--cc-line);}
.sources h2{font-size:1.4rem;}
.sources ol{font-size:.9rem;color:var(--cc-muted);}
.article-cta{display:flex;justify-content:space-between;gap:30px;align-items:center;margin:56px auto 34px;max-width:900px;padding:30px;border-radius:var(--radius-lg);background:var(--cc-navy);color:#fff;}
.article-cta h2{color:var(--cc-yellow);}
.article-cta p{margin:0;color:#e7f1f7;max-width:600px;}
.author-box{display:grid;grid-template-columns:auto 1fr;gap:22px;margin:44px auto 0;max-width:820px;padding:24px;border:1px solid var(--cc-line);border-radius:12px;background:#fff;}
.author-box__avatar img,.author-archive__avatar img{border-radius:50%;}
.author-box h2{font-size:1.35rem;}
.author-box__role,.author-archive__role{color:var(--cc-blue);font-weight:750;}
.related-section{margin-top:40px;}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;}
.post-card{overflow:hidden;border:1px solid var(--cc-line);border-radius:12px;background:#fff;}
.post-card__media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--cc-soft);text-decoration:none;}
.post-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.post-card:hover .post-card__media img{transform:scale(1.025);}
.post-card__placeholder{display:grid;place-items:center;width:100%;height:100%;background:var(--cc-blue-soft);font-size:2rem;}
.post-card__body{padding:20px;}
.post-card__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;color:var(--cc-muted);font-size:.75rem;}
.post-card__title{font-size:1.3rem;}
.post-card__title a{color:var(--cc-ink);text-decoration:none;}
.post-card p{color:var(--cc-muted);font-size:.94rem;}
.topic-directory,.cc-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.topic-directory>a,.cc-directory>a{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:18px;border:1px solid var(--cc-line);border-radius:12px;background:#fff;color:var(--cc-ink);text-decoration:none;}
.topic-directory span,.cc-directory span{grid-column:1;color:var(--cc-muted);font-size:.88rem;}
.topic-directory b,.cc-directory b{grid-row:1/3;grid-column:2;align-self:center;color:var(--cc-navy);}
.search-form{display:flex;gap:8px;}
.search-form label{flex:1;}
.search-field{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--cc-line);border-radius:8px;background:#fff;}
.search-submit{min-height:48px;padding:10px 18px;border:0;border-radius:8px;background:var(--cc-navy);color:#fff;font-weight:800;}
.pagination{padding-block:32px 70px;}
.nav-links{display:flex;gap:8px;flex-wrap:wrap;}
.page-numbers{display:grid;place-items:center;min-width:42px;height:42px;padding:0 10px;border:1px solid var(--cc-line);border-radius:8px;text-decoration:none;}
.page-numbers.current{background:var(--cc-navy);color:#fff;border-color:var(--cc-navy);}
.author-archive{display:grid;grid-template-columns:auto 1fr;gap:28px;}
.author-archive__qual{padding:12px 16px;border-radius:8px;background:var(--cc-soft);}
.cc-block{margin-block:clamp(34px,6vw,64px);}
.cc-block__heading{margin-bottom:18px;}
.cc-block__heading h2{font-size:clamp(1.5rem,2.4vw,2.2rem);}
.cc-cta{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:28px;border-radius:14px;}
.cc-cta--navy{background:var(--cc-navy);color:#fff;}
.cc-cta--navy h2{color:var(--cc-yellow);}
.cc-cta--yellow{background:var(--cc-yellow);}
.cc-cta--soft{background:var(--cc-soft);border:1px solid var(--cc-line);}
.cc-card-grid{display:grid;gap:16px;}
.cc-card-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));}
.cc-card-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.cc-card-grid--4{grid-template-columns:repeat(4,minmax(0,1fr));}
.cc-mini-card{padding:22px;border:1px solid var(--cc-line);border-radius:12px;background:#fff;}
.cc-mini-card__icon img{width:46px;height:46px;object-fit:contain;margin-bottom:14px;}
.cc-mini-card h3{font-size:1.2rem;}
.cc-mini-card p{color:var(--cc-muted);font-size:.94rem;}
.cc-info{padding:22px 24px;border-radius:12px;border-left:5px solid var(--cc-blue);background:var(--cc-blue-soft);}
.cc-info--short{border-left-color:var(--cc-yellow);background:#fff9df;}
.cc-info--tip{border-left-color:var(--cc-brand);background:#eef0f2;}
.cc-info--warning{border-left-color:var(--cc-brand);background:#eef0f2;}
.cc-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.cc-metric{padding:22px;border-radius:12px;background:var(--cc-navy);color:#fff;}
.cc-metric strong{display:block;color:var(--cc-yellow);font-size:clamp(1.8rem,3vw,2.8rem);}
.cc-related-links{padding:22px;border-radius:12px;background:var(--cc-soft);}
.cc-related-links ul{list-style:none;padding:0;margin:0;}
.cc-table-wrap{overflow:auto;border:1px solid var(--cc-line);border-radius:12px;}
.cc-table{width:100%;border-collapse:collapse;}
.cc-table th,.cc-table td{padding:13px 15px;border-bottom:1px solid var(--cc-line);text-align:left;}
.cc-table thead th{background:var(--cc-navy);color:#fff;}
.cc-proscons{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.cc-proscons>div{padding:22px;border:1px solid var(--cc-line);border-radius:12px;}
.cc-quote{padding:28px;border-radius:12px;background:var(--cc-navy);color:#fff;}
.cc-media-text{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;}
.cc-media-text--right .cc-media-text__media{order:2;}
.cc-media-text__media{overflow:hidden;border-radius:12px;}
.cc-quick-table{padding:22px;border:1px solid var(--cc-line);border-radius:12px;background:#fff;}
.cc-quick-table dl>div{display:grid;grid-template-columns:minmax(140px,.65fr) 1.35fr;gap:16px;padding:10px 0;border-top:1px solid var(--cc-line);}
.cc-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;}
.cc-logos>a,.cc-logos>div{display:grid;place-items:center;min-height:105px;padding:18px;border:1px solid var(--cc-line);border-radius:12px;background:#fff;}
.site-footer{background:#071e34;color:#d4dee6;padding-top:var(--s9);}
.site-footer__top{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-bottom:var(--s8);}
.site-footer__brand{display:inline-flex;margin-bottom:22px;color:#fff;text-decoration:none;}
.site-footer__about>p{max-width:430px;color:#aebdca;}
.site-footer__socials{display:flex;gap:14px;flex-wrap:wrap;}
.site-footer__socials a{color:#fff;font-size:.82rem;}
.site-footer__navgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;}
.site-footer h2{color:#fff;font-size:.82rem;letter-spacing:.01em;}
.site-footer ul{list-style:none;margin:0;padding:0;}
.site-footer li+li{margin-top:9px;}
.site-footer a{color:#b9c7d1;text-decoration:none;font-size:.86rem;}
.site-footer a:hover{color:#fff;}
.site-footer__legal{border-top:1px solid rgba(255,255,255,.12);padding:24px 0 34px;display:flex;justify-content:space-between;gap:30px;color:#8295a4;font-size:.875rem;}
.site-footer__legal p{margin:0;}
.site-footer__legal p:first-child{max-width:980px;}
@media (max-width:1050px){
.site-footer__top{grid-template-columns:1fr;}
.site-footer__navgrid{grid-template-columns:repeat(4,1fr);}
}
@media (max-width:980px){
.article-layout.has-toc{grid-template-columns:1fr;}
.article-toc{position:relative;top:auto;}
.post-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.cc-card-grid--4{grid-template-columns:repeat(2,minmax(0,1fr));}
.cc-logos{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:700px){
.site-footer__navgrid{grid-template-columns:1fr 1fr;gap:34px 24px;}
.site-footer__legal{flex-direction:column;font-size:.875rem;}
.post-grid,.topic-directory,.cc-directory,.cc-card-grid--2,.cc-card-grid--3,.cc-card-grid--4,.cc-metrics,.cc-proscons,.cc-media-text{grid-template-columns:1fr;}
.cc-media-text--right .cc-media-text__media{order:0;}
.article-header h1{font-size:clamp(2.25rem,10vw,3.45rem);}
.article-cover{width:100%;border-radius:0;}
.article-main{width:min(calc(100% - 36px),var(--container));}
.editorial-summary__table>div,.cc-quick-table dl>div{grid-template-columns:1fr;gap:2px;}
.author-box,.author-archive{grid-template-columns:1fr;}
.search-form{flex-direction:column;}
.search-submit{width:100%;}
}
.source-date,.legal-updated{color:var(--cc-muted);}
.cc-mini-card h3 a{color:var(--cc-ink);text-decoration:none;}
.cc-info p:last-child{margin-bottom:0;}
.cc-quote blockquote{margin:0;color:#fff;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:650;}
.cc-quote figcaption{display:flex;gap:8px;margin-top:16px;color:#c9dbe7;}
.cc-quote figcaption strong{color:var(--cc-yellow);}
.cc-media-text__content .button{margin-top:12px;}
.cc-table tbody th{background:var(--cc-soft);color:var(--cc-navy);}
.cc-quick-table dt{font-weight:800;color:var(--cc-navy);}
.cc-quick-table dd{margin:0;}
.cc-logos img{max-height:60px;width:auto;object-fit:contain;}
@media (max-width:700px){
.article-cta,.cc-cta{align-items:flex-start;flex-direction:column;}
}
.post-card__placeholder--illustrated{display:grid;place-items:center;min-height:220px;padding:18px;background:var(--cc-soft);}
.post-card__placeholder--illustrated .post-card__fallback-art{width:min(88%,230px);max-height:190px;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(6,42,73,.08));}
.post-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;}
.post-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(6,42,73,.09);}
.post-card__media{overflow:hidden;}
.post-card__media img{transition:transform .55s cubic-bezier(.2,.7,.2,1);}
.post-card:hover .post-card__media img{transform:scale(1.025);}
.cc-mini-card,.topic-directory>a,.cc-directory>a{transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease;}
.cc-mini-card:hover,.topic-directory>a:hover,.cc-directory>a:hover{transform:translateY(-3px);}
.post-card a:focus-visible,.topic-directory>a:focus-visible{outline:3px solid var(--cc-yellow);outline-offset:4px;}
@media (max-width:700px){
.post-card:hover,.cc-mini-card:hover,.topic-directory>a:hover,.cc-directory>a:hover{transform:none;}
}
.post-card--starter>a{display:block;height:100%;color:inherit;text-decoration:none;}
.post-card--starter .post-card__media{display:grid;place-items:center;padding:18px;}
.post-card--starter .post-card__media .cc-illustration{width:min(88%,260px);height:auto;object-fit:contain;}
.post-card--starter .post-card__body{padding:22px;}
.post-card--starter h3{margin:14px 0 10px;font-size:1.36rem;}
.post-card--starter p{margin-bottom:18px;}
.article-header h1{font-size:clamp(2.35rem,3.4vw,3.55rem);line-height:1.05;}
.page-hero,.archive-hero,.author-archive{padding-block:var(--cc-section-lg);}
.post-card,.cc-mini-card,.topic-directory>a,.cc-directory>a{border-color:rgba(16,34,56,.09);border-radius:16px;box-shadow:none;}
@media (max-width:700px){
.article-header h1{font-size:clamp(2.05rem,8.5vw,2.65rem);}
}
.site-footer{padding-top:clamp(70px,7vw,104px);}
.site-footer__top{gap:clamp(54px,8vw,110px);padding-bottom:64px;}
.site-footer__legal{padding-block:28px 34px;}
