/** Generated from the legacy catalogue; owner: content. */


:where(.cms-ds-card, .cms-pc, .cms-gc, [class*="__card"]) {
    border-width: var(--style-card-border-width, 1px);
}


:where(.cms-ds-card, .cms-pc, .cms-gc, .cms-section-header__title, .cms-hero-title, .cms-hero__title, h1, h2, h3) {
    letter-spacing: var(--style-heading-letter-spacing, inherit);
}


:where(.cms-ds-card img, .cms-pc img, .cms-gc img, .cms-image-decorated, .cms-post-card__image, .cms-hero img) {
    border-radius: var(--style-media-radius, var(--radius-lg));
}


/* ---------------------------------------------------------------------------
   CMS Design System
   --------------------------------------------------------------------------- */
.cms-content-vb {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: clamp(18px, 3vw, 32px);
    overflow: hidden;
    padding: clamp(24px, 4vw, 44px);
    border-radius: var(--radius-lg);
    background: var(--color-dark-bg);
    color: var(--color-dark-text, #fff);
}


.cms-content-vb--light {
    background: var(--color-bg-alt, #f8fafc);
    color: var(--color-text);
}


.cms-content-vb--accent {
    background: var(--color-accent);
    color: #fff;
}


.cms-content-vb--with-image {
    min-height: clamp(260px, 34vw, 420px);
    align-items: end;
}


.cms-content-vb:not(.cms-content-vb--with-image) {
    min-height: auto;
    align-items: start;
    padding: clamp(18px, 3vw, 30px);
}


.cms-content-vb--accent:not(.cms-content-vb--with-image) {
    background: linear-gradient(135deg, var(--color-accent), color-mix(in srgb, var(--color-accent) 78%, #0f172a 22%));
    color: #fff;
}


.cms-content-vb__visual {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: color-mix(in srgb, currentColor 8%, transparent);
}


.cms-content-vb__img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    filter: saturate(.92) brightness(.72);
}


.cms-content-vb__visual::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.64));
}


.cms-content-vb__content {
    position: relative;
    z-index: 1;
    max-width: 760px;
}


.cms-content-vb__eyebrow {
    display: inline-flex;
    margin-bottom: 12px;
    color: var(--color-accent);
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}


.cms-content-vb--accent .cms-content-vb__eyebrow { color: rgba(255,255,255,.78); }


.cms-content-vb--with-image .cms-content-vb__eyebrow { color: #fff; }


.cms-content-vb__title {
    margin: 0 0 10px;
    color: inherit;
    font-family: var(--font-heading);
    font-size: clamp(24px, 3.4vw, 42px);
    line-height: 1.12;
}


.cms-content-vb__text {
    margin: 0;
    color: color-mix(in srgb, currentColor 78%, transparent);
    font-family: var(--font-body);
    font-size: clamp(15px, 1.45vw, 18px);
    line-height: 1.7;
}


.cms-content-ds__eyebrow,
.cms-content-pp__eyebrow,
.cms-content-clp__eyebrow,
.cms-content-tool__eyebrow {
    display: inline-flex;
    width: max-content;
    margin: 0 0 11px;
    padding: 6px 10px;
    border-radius: var(--radius-full, 999px);
    color: var(--color-accent);
    background: color-mix(in srgb, var(--color-accent) 14%, white 86%);
    font: 900 10px/1 var(--font-body);
    letter-spacing: .08em;
    text-transform: uppercase;
}


.cms-content-ds {
    margin: 42px 0;
    padding: clamp(22px, 4vw, 34px);
    border-radius: var(--radius-lg);
    background: var(--color-text, #0f172a);
    color: #fff;
}


.cms-content-ds--light {
    color: var(--color-text);
    background: var(--color-bg-alt);
    border: 1px solid var(--color-border);
}


.cms-content-ds--accent {
    background: linear-gradient(135deg, var(--color-accent), color-mix(in srgb, var(--color-accent) 72%, #0f172a 28%));
}


.cms-content-ds__title,
.cms-content-pp__title,
.cms-content-clp__title,
.cms-content-tool__title {
    margin: 0 0 10px;
    color: inherit;
    font-family: var(--font-heading);
    font-size: clamp(24px, 3vw, 35px);
    font-weight: 850;
    line-height: 1.08;
    letter-spacing: -.025em;
}


.cms-content-ds__grid,
.cms-content-pp__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 24px;
}


.cms-content-ds__card {
    padding: 18px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--radius-md, 22px);
    background: rgba(255,255,255,.08);
    transition: transform .18s ease, background .18s ease;
}


.cms-content-ds--light .cms-content-ds__card {
    background: var(--color-bg);
    border-color: var(--color-border);
}


.cms-content-ds__card:hover,
.cms-content-pp__card:hover {
    transform: translateY(-3px);
}


.cms-content-ds__num {
    display: inline-flex;
    margin-bottom: 12px;
    color: var(--color-accent);
    font: 900 12px/1 var(--font-body);
}


.cms-content-ds__card-title,
.cms-content-pp__label {
    margin: 0 0 8px;
    color: inherit;
    font-family: var(--font-heading);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.22;
}


.cms-content-ds__text,
.cms-content-pp__text,
.cms-content-pp__intro,
.cms-content-clp__intro,
.cms-content-tool__intro {
    margin: 0;
    color: color-mix(in srgb, currentColor 76%, transparent);
    font: 400 14px/1.68 var(--font-body);
}


.cms-content-pp {
    position: relative;
    overflow: hidden;
    margin: 42px 0;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid color-mix(in srgb, var(--color-accent) 16%, var(--color-border));
    border-radius: var(--radius-lg);
    background: radial-gradient(circle at 8% 12%, color-mix(in srgb, var(--color-accent) 18%, transparent), transparent 26%), linear-gradient(135deg, var(--color-bg-alt), color-mix(in srgb, var(--color-accent) 6%, var(--color-bg) 94%));
    box-shadow: var(--shadow, 0 20px 58px rgba(15,23,42,.08));
}


.cms-content-pp::after {
    content: "";
    position: absolute;
    right: -70px;
    top: -90px;
    width: 220px;
    height: 220px;
    border: 42px solid color-mix(in srgb, var(--color-accent) 10%, transparent);
    border-radius: 999px;
    pointer-events: none;
}


.cms-content-pp__head,
.cms-content-pp__grid {
    position: relative;
    z-index: 1;
}


.cms-content-pp__head {
    max-width: 720px;
}


.cms-content-pp__card {
    min-height: 100%;
    padding: 20px;
    border: 1px solid color-mix(in srgb, var(--color-border) 74%, var(--color-accent) 26%);
    border-radius: var(--radius-md, 22px);
    background: color-mix(in srgb, var(--color-bg) 88%, white 12%);
    box-shadow: 0 14px 32px rgba(15,23,42,.055);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}


.cms-content-pp__card:hover {
    border-color: color-mix(in srgb, var(--color-accent) 46%, var(--color-border));
    box-shadow: 0 20px 42px rgba(15,23,42,.09);
}


.cms-content-pp__num,
.cms-content-clp__tick {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: #fff;
    background: var(--color-accent);
    font: 900 12px/1 var(--font-body);
}


.cms-content-pp__num {
    width: 38px;
    height: 38px;
    margin-bottom: 14px;
}


.cms-content-clp {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 26px;
    margin: 42px 0;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid color-mix(in srgb, var(--color-accent) 16%, var(--color-border));
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--color-bg-alt), color-mix(in srgb, var(--color-accent) 7%, var(--color-bg) 93%));
}


.cms-content-clp__list {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}


.cms-content-clp__item {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    margin: 0;
    padding: 13px 14px;
    border-radius: var(--radius-md, 16px);
    color: var(--color-text-muted);
    background: var(--color-bg);
    box-shadow: 0 10px 22px rgba(15,23,42,.045);
}


.cms-content-clp__tick {
    width: 20px;
    height: 20px;
}


.cms-content-tool {
    position: relative;
    overflow: hidden;
    margin: 42px 0;
    padding: clamp(24px, 4vw, 38px);
    border: 1px solid color-mix(in srgb, var(--color-accent) 18%, var(--color-border));
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, color-mix(in srgb, var(--color-accent) 9%, var(--color-bg) 91%), var(--color-bg-alt)), radial-gradient(circle at 92% 12%, color-mix(in srgb, var(--color-accent) 22%, transparent), transparent 34%);
    box-shadow: var(--shadow, 0 22px 60px rgba(15,23,42,.10));
}


.cms-content-tool::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 7px;
    background: var(--color-accent);
}


.cms-content-tool__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 24px 0 0;
}


.cms-content-tool__field {
    display: grid;
    gap: 8px;
    margin: 0;
}


.cms-content-tool__field span {
    color: var(--color-text);
    font: 800 11px/1.2 var(--font-body);
    letter-spacing: .05em;
    text-transform: uppercase;
}


.cms-content-tool select {
    width: 100%;
    min-height: 46px;
    padding: 0 14px;
    border: 1px solid color-mix(in srgb, var(--color-border) 88%, var(--color-accent) 12%);
    border-radius: var(--radius-md, 16px);
    color: var(--color-text);
    background: var(--color-bg);
    font: 600 14px/1.2 var(--font-body);
    box-shadow: 0 8px 20px rgba(15,23,42,.045);
}


.cms-content-tool__actions {
    display: flex;
    justify-content: center;
    margin: 24px 0 0;
}


.cms-content-tool__actions button {
    border: 0;
    border-radius: 999px;
    padding: 14px 22px;
    color: #fff;
    background: var(--color-accent);
    font: 900 12px/1 var(--font-body);
    letter-spacing: .07em;
    text-transform: uppercase;
    box-shadow: 0 16px 34px color-mix(in srgb, var(--color-accent) 28%, transparent);
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
}


.cms-content-tool__actions button:hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 44px color-mix(in srgb, var(--color-accent) 36%, transparent);
}


.cms-content-tool__result {
    margin: 22px auto 0;
    padding: 18px 20px;
    border: 1px dashed color-mix(in srgb, var(--color-accent) 35%, var(--color-border));
    border-radius: var(--radius-md, 20px);
    color: var(--color-text-muted);
    background: color-mix(in srgb, var(--color-bg) 76%, white 24%);
    font: 500 14px/1.7 var(--font-body);
}


.cms-content-tool.is-complete .cms-content-tool__result {
    border-style: solid;
    color: var(--color-text);
    background: color-mix(in srgb, var(--color-accent) 8%, var(--color-bg));
}


.cms-content-ts {
    margin: 38px 0;
    padding: clamp(18px, 3.2vw, 26px);
    border-top: 4px solid var(--color-accent);
    border-radius: var(--radius-lg);
    background: var(--color-bg-alt);
}


.cms-content-ts__head {
    max-width: 760px;
    margin-bottom: 12px;
}


.cms-content-ts__eyebrow {
    display: inline-flex;
    margin: 0 0 8px;
    color: var(--color-accent);
    font: 900 10px/1 var(--font-body);
    letter-spacing: .08em;
    text-transform: uppercase;
}


.cms-content-ts__title {
    margin: 0;
    color: var(--color-text);
    font: 800 clamp(21px, 2.4vw, 30px)/1.12 var(--font-heading);
    letter-spacing: -.02em;
}


.cms-content-ts__intro {
    margin: 10px 0 0;
    color: var(--color-text-muted);
    font: 400 14px/1.65 var(--font-body);
}


.cms-content-ts__list {
    list-style: none;
    margin: 14px 0 0;
    padding: 0;
    display: grid;
    gap: 10px;
}


.cms-content-ts__item {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    padding: 14px;
    border: 1px solid color-mix(in srgb, var(--color-border) 82%, var(--color-accent) 18%);
    border-radius: var(--radius-md, 16px);
    background: var(--color-bg);
}


.cms-content-ts__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    color: #fff;
    background: var(--color-accent);
    font: 900 11px/1 var(--font-body);
}


.cms-content-ts__item-title {
    margin: 0 0 4px !important;
    color: var(--color-text);
    font: 800 15px/1.3 var(--font-heading);
}


.cms-content-ts__text {
    margin: 0;
    color: var(--color-text);
    font: 400 14px/1.6 var(--font-body);
}


.cms-content-ts__meta {
    margin: 6px 0 0;
    color: var(--color-text-muted);
    font: 600 12px/1.4 var(--font-body);
}


@media (max-width: 820px) {
    .cms-content-ds__grid,
    .cms-content-pp__grid,
    .cms-content-clp,
    .cms-content-tool__grid {
        grid-template-columns: 1fr;
    }}


/* ---------------------------------------------------------------------------
   Base Block
   --------------------------------------------------------------------------- */
.cms-block {
    margin: var(--cms-spacing-lg) 0;
    font-family: var(--cms-font);
    color: var(--cms-text);
    line-height: 1.7;
}


.cms-block--inline {
    margin: var(--cms-spacing) 0;
}


.cms-block--full {
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    padding: var(--cms-spacing-lg) calc((100vw - var(--cms-max-width)) / 2);
    background: var(--cms-bg-alt);
}


.cms-block--highlight {
    border-left: 4px solid var(--cms-primary);
    padding: var(--cms-spacing);
    background: var(--cms-primary-light);
    border-radius: 0 var(--cms-radius) var(--cms-radius) 0;
}


.cms-block--card {
    padding: var(--cms-spacing);
    background: var(--cms-bg);
    border: 1px solid var(--cms-border);
    border-radius: var(--cms-radius-lg);
    box-shadow: var(--cms-shadow);
}


/* ---------------------------------------------------------------------------
   PAA Block (People Also Ask — direct answer)
   --------------------------------------------------------------------------- */
.cms-paa:not(.cms-content-paa) {
    padding: 0;
    background: transparent;
    border-radius: 0;
    border-left: 3px solid var(--cms-inline-accent-color, var(--color-accent, var(--cms-primary)));
}


/* ---------------------------------------------------------------------------
   Table
   --------------------------------------------------------------------------- */
.cms-table {
    overflow-x: auto;
}


.cms-table table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.95rem;
}


.cms-table caption {
    font-weight: 700;
    text-align: left;
    margin-bottom: 0.75rem;
    font-size: 1.05rem;
}


.cms-table thead {
    background: var(--cms-bg-alt);
}


.cms-table th,
.cms-table td {
    padding: 0.75rem 1rem;
    text-align: left;
    border-bottom: 1px solid var(--cms-border);
}


.cms-table th {
    font-weight: 700;
    color: var(--cms-text);
    white-space: nowrap;
}


.cms-table tbody tr:hover {
    background: var(--cms-bg-alt);
}


.cms-table--striped tbody tr:nth-child(even) {
    background: var(--cms-bg-alt);
}


/* ---------------------------------------------------------------------------
   Responsive
   --------------------------------------------------------------------------- */
@media (max-width: 768px) {
    .cms-block--full {
        padding: var(--cms-spacing) 1rem;
    }}


/* ---------------------------------------------------------------------------
   Article Content Prose — Headings, Lists, Images, Videos, Tables
   Base styles applied inside .article-content or .prose
   --------------------------------------------------------------------------- */

/* Headings */
.article-content h2,
.prose h2 {
    font-family: var(--cms-font-serif, 'Playfair Display', serif);
    font-size: 1.75rem;
    font-weight: 600;
    color: var(--cms-dark, #1C1917);
    margin: 2.5rem 0 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--cms-accent, #D97706);
    line-height: 1.3;
}


.article-content h3,
.prose h3 {
    font-family: var(--cms-font-serif, 'Playfair Display', serif);
    font-size: 1.35rem;
    font-weight: 600;
    color: var(--cms-dark, #1C1917);
    margin: 2rem 0 0.75rem;
    line-height: 1.3;
}


.article-content h4,
.prose h4 {
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--cms-dark, #1C1917);
    margin: 1.5rem 0 0.5rem;
}


/* Paragraphs */
.article-content p,
.prose p {
    margin: 1rem 0;
    line-height: 1.8;
    color: var(--cms-text, #44403C);
}


/* Lists */
.article-content ul,
.prose ul {
    list-style: disc;
    padding-left: 1.5rem;
    margin: 1rem 0;
}


.article-content ol,
.prose ol {
    list-style: decimal;
    padding-left: 1.5rem;
    margin: 1rem 0;
}


.article-content li,
.prose li {
    margin: 0.5rem 0;
    line-height: 1.7;
    color: var(--cms-text, #44403C);
}


.article-content ul ul,
.prose ul ul {
    list-style: circle;
    margin: 0.25rem 0;
}


/* Links */
.article-content a,
.prose a {
    color: var(--cms-accent, #D97706);
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-color 0.2s;
}


.article-content a:hover,
.prose a:hover {
    border-bottom-color: var(--cms-accent, #D97706);
}


/* Images (exclude video thumbnails) */
.article-content img:not(.yt-thumbnail):not(.yt-lite img),
.prose img:not(.yt-thumbnail) {
    max-width: 100%;
    height: auto;
    border-radius: 0.75rem;
    margin: 1.25rem 0 0.5rem;
}


/* Reset for images inside video wrappers */
.article-content .yt-lite img,
.article-content .video-embed-wrapper img {
    max-width: none;
    height: 100%;
    border-radius: 0;
    margin: 0;
}


.article-content figure,
.prose figure {
    margin: 1.5rem 0 1rem;
}


.article-content figcaption,
.prose figcaption {
    text-align: center;
    font-size: 0.75rem;
    color: var(--cms-secondary, #78716C);
    margin-top: 0.25rem;
    font-style: italic;
    line-height: 1.4;
}


.article-content .medias-wrapper,
.prose .medias-wrapper,
.post-content .medias-wrapper {
    display: block;
    margin: 1.5rem 0 1rem;
}


.article-content .medias-wrapper > img,
.prose .medias-wrapper > img,
.post-content .medias-wrapper > img {
    display: block;
    width: 100%;
    margin: 0 auto !important;
}


.article-content .medias-legend,
.prose .medias-legend,
.post-content .medias-legend {
    display: block;
    margin-top: 0.2rem;
    text-align: center;
    font-size: 0.72rem;
    line-height: 1.4;
    color: #94a3b8;
    font-style: italic;
}


/* Videos — YouTube embeds (standard iframes) */
.article-content iframe,
.prose iframe {
    width: 100%;
    aspect-ratio: 16/9;
    border-radius: 0.75rem;
    margin: 1.5rem 0;
    border: none;
}


/* Blockquotes */
.article-content blockquote,
.prose blockquote {
    border-left: 4px solid var(--cms-accent, #D97706);
    padding: 1rem 1.5rem;
    margin: 1.5rem 0;
    background: var(--cms-light-bg, #FAF5F2);
    border-radius: 0 0.5rem 0.5rem 0;
    font-style: italic;
    color: var(--cms-text, #44403C);
}


/* Tables — responsive with horizontal swipe */
.article-content .table-wrapper,
.prose .table-wrapper,
.cms-table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 1.5rem 0;
    border-radius: 0.75rem;
    border: 1px solid #e7e5e4;
}


.article-content table,
.prose table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
    /* No min-width — let JS wrapper handle overflow */
}


.article-content thead,
.prose thead {
    background: var(--cms-accent, #D97706);
    color: #fff;
}


.article-content th,
.prose th {
    padding: 0.75rem 1rem;
    text-align: left;
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    white-space: nowrap;
}


.article-content td,
.prose td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #e7e5e4;
    vertical-align: top;
}


.article-content tbody tr:hover,
.prose tbody tr:hover {
    background: var(--cms-light-bg, #FAF5F2);
}


/* Code blocks */
.article-content code,
.prose code {
    background: #f5f5f4;
    padding: 0.15rem 0.4rem;
    border-radius: 0.25rem;
    font-size: 0.875em;
}


.article-content pre,
.prose pre {
    background: #1C1917;
    color: #e7e5e4;
    padding: 1.25rem;
    border-radius: 0.75rem;
    overflow-x: auto;
    margin: 1.5rem 0;
    font-size: 0.875rem;
    line-height: 1.6;
}


.article-content pre code,
.prose pre code {
    background: transparent;
    padding: 0;
}


/* Horizontal rule */
.article-content hr,
.prose hr {
    border: none;
    border-top: 2px solid #e7e5e4;
    margin: 2rem 0;
}


/* Strong / Bold */
.article-content strong,
.prose strong {
    font-weight: 600;
    color: var(--cms-dark, #1C1917);
}


/* ---------------------------------------------------------------------------
   Content Blocks — Résumé, FAQ, Short, PAA, Related Inline
   Compatible with WordPress imports + new CMS components
   Same visual language as author-box (white card, border-left accent, rounded)
   --------------------------------------------------------------------------- */

/* Bloc Résumé (summary) — fond coloré, border standard */
.bloc_resume_post,
.cms-block.cms-summary {
    background: var(--cms-light-bg, #FAF5F2);
    border-radius: 0.75rem;
    padding: 1.5rem 1.5rem 1rem;
    margin: 1.5rem 0 2rem;
    border: 1px solid #e7e5e4;
}


/* Bloc FAQ (inside résumé or standalone) */
.bloc_resume_post p.faq-question,
.bloc_resume_post h4,
.cms-block.cms-faq .cms-faq__question {
    font-size: 1rem;
    font-weight: 600;
    color: var(--cms-dark, #1C1917);
    margin: 0.75rem 0 0.25rem;
}


.bloc_resume_post p.faq-answer,
.cms-block.cms-faq .cms-faq__answer {
    font-size: 0.9rem;
    line-height: 1.6;
    color: var(--cms-text, #44403C);
    margin: 0 0 0.75rem;
}


/* Bloc Short (quick answer) — same style as TOC: white bg, border */
.short_bloc,
.cms-block.cms-short {
    background: transparent;
    border: 0;
    border-left: 3px solid var(--cms-inline-accent-color, var(--color-accent, var(--cms-primary)));
    border-radius: 0;
    box-shadow: none;
    padding: 14px 18px;
    margin: 24px 0;
    display: block;
}


/* PAA (People Also Ask) block — same style as TOC */
.cms-block.cms-paa:not(.cms-content-paa) {
    background: transparent;
    border: 0;
    border-left: 3px solid var(--cms-inline-accent-color, var(--color-accent, var(--cms-primary)));
    border-radius: 0;
    box-shadow: none;
    padding: 16px 20px;
    margin: 28px 0;
}


.cms-post-mag-body .article-content > p:first-of-type::first-letter {
    float: left;
    padding-top: 6px;
    padding-right: 12px;
    color: var(--color-accent);
    font-family: var(--font-heading);
    font-size: clamp(3rem, 5vw, 4.5rem);
    font-weight: 700;
    line-height: 0.8;
}


.cms-post-mag-body .article-content blockquote {
    margin: clamp(24px, 3vw, 48px) 0;
    padding: 20px 28px;
    border-left: 4px solid var(--color-accent);
    border-radius: 0 var(--radius) var(--radius) 0;
    background: color-mix(in srgb, var(--color-accent) 4%, transparent);
}


.cms-post-mag-body .article-content blockquote p {
    margin: 0;
    color: var(--color-text);
    font-family: var(--font-heading);
    font-size: clamp(1.1rem, 2vw, 1.4rem);
    font-style: italic;
    line-height: 1.5;
}


.cms-post-cocon-body .article-content .callout,
.cms-post-cocon-body .article-content .fact-box {
    margin: clamp(20px, 3vw, 36px) 0;
    padding: 20px 24px;
    border-left: 4px solid var(--color-accent);
    border-radius: 0 var(--radius) var(--radius) 0;
    background: color-mix(in srgb, var(--color-accent) 6%, transparent);
    font-family: var(--font-body);
    font-size: 15px;
    line-height: 1.6;
}


/* Post Content */
.cms-pc-std {
    --cms-pc-std-max: 820px;
    --cms-pc-std-font-size: 15px;
    --cms-pc-std-line-height: 1.5;
    --cms-pc-std-text: var(--color-text);
    --cms-pc-std-muted: var(--color-text-muted);
}


.cms-pc-std--dark {
    --cms-pc-std-text: var(--color-dark-text);
    --cms-pc-std-muted: var(--color-dark-text-muted);
}


.cms-pc-std--style-editorial {
    --cms-pc-std-max: 680px;
    --cms-pc-std-font-size: 15px;
}


.cms-pc-std--style-magazine {
    --cms-pc-std-max: 800px;
}


.cms-pc-std__content {
    max-width: var(--cms-pc-std-max);
    margin: 0 auto;
    padding: 0 20px;
}


.cms-pc-std--overlap .cms-pc-std__content {
    position: relative;
    z-index: 2;
    margin-top: -40px;
    padding: 40px;
    border: 0;
    background: transparent;
    box-shadow: none;
}


.cms-pc-std__content :is(h2,h3,h4) { color: var(--cms-pc-std-text); font-family: var(--font-heading); font-weight: 600; line-height: 1.3; }


.cms-pc-std__content h2 { margin: 48px 0 16px; font-size: clamp(22px, 3vw, 28px); }


.cms-pc-std__content h2:first-child { margin-top: 0; }


.cms-pc-std__content h3 { margin: 36px 0 12px; font-size: clamp(18px, 2.5vw, 22px); }


.cms-pc-std__content h4 { margin: 28px 0 8px; font-size: 17px; }


.cms-pc-std__content p { margin: 0 0 20px; color: var(--cms-pc-std-muted); font-family: var(--font-body); font-size: var(--cms-pc-std-font-size); line-height: var(--cms-pc-std-line-height); }


.cms-pc-std__content p:last-child { margin-bottom: 0; }


.cms-pc-std__content :is(.cms-inline-accent__content p, .cms-short p, .short_bloc p, .cms-paa__answer p) { margin: 0; color: var(--color-text-muted, var(--cms-pc-std-muted)); font-family: var(--font-body); font-size: 14px; line-height: 1.7; }


.cms-pc-std__content a { color: var(--color-accent); text-decoration: underline; text-underline-offset: 3px; transition: color 0.2s; }


.cms-pc-std__content a:hover { color: var(--color-accent-hover, var(--color-accent)); }


.cms-pc-std__content blockquote { margin: 32px 0; padding: 4px 0 4px 24px; border-left: 3px solid var(--color-accent); color: var(--cms-pc-std-text); font-size: 18px; font-style: italic; line-height: 1.7; }


.cms-pc-std__content blockquote p { margin-bottom: 0; color: inherit; font-size: inherit; }


.cms-pc-std__content ul { margin: 0 0 20px; padding-left: 25px; }


.cms-pc-std__content ol { margin: 0 0 20px; padding-left: 0px; }


.cms-pc-std__content [class^="cms-content-"] ul,
.cms-pc-std__content [class*=" cms-content-"] ul { padding-left: 0; }


.cms-pc-std__content ul { list-style: disc; }


.cms-pc-std__content ol { list-style: decimal; }


.cms-pc-std__content li { margin-bottom: 6px; color: var(--cms-pc-std-muted); font-family: var(--font-body); font-size: var(--cms-pc-std-font-size); line-height: var(--cms-pc-std-line-height); }


.cms-pc-std__content li::marker { color: var(--color-accent); }


.cms-pc-std__content > img,
.cms-pc-std__content > p > img:only-child,
.cms-pc-std__content > figure > img,
.cms-pc-std__content > .wp-block-image img,
.cms-pc-std__content > .medias-wrapper > img,
.cms-pc-std__content > .cms-content-figure img { display: block; width: 100%; height: auto; margin: 32px 0; border-radius: var(--radius, 8px); }


.cms-pc-std__content hr { border: none; height: 1px; margin: 40px 0; background: var(--color-border, rgba(0,0,0,0.08)); }


.cms-pc-std--firstletter .cms-pc-std__content > p:first-of-type::first-letter { float: left; margin: 6px 8px 0 0; color: var(--color-accent); font-family: var(--font-heading); font-size: 3.5em; font-weight: 700; line-height: 0.8; }


.cms-pc-std--breakout .cms-pc-std__content > img,
.cms-pc-std--breakout .cms-pc-std__content > p > img:only-child,
.cms-pc-std--breakout .cms-pc-std__content > figure > img,
.cms-pc-std--breakout .cms-pc-std__content > .wp-block-image img,
.cms-pc-std--breakout .cms-pc-std__content > .medias-wrapper > img,
.cms-pc-std--breakout .cms-pc-std__content > .cms-content-figure img { width: calc(100% + 80px); max-width: calc(100% + 80px); margin-left: -40px; margin-right: -40px; }


.cms-pc-std--code .cms-pc-std__content pre { margin: 24px 0; padding: 20px 24px; overflow-x: auto; border-radius: var(--radius, 8px); background: var(--color-bg-alt, #f5f5f5); font-size: 14px; line-height: 1.6; }


.cms-pc-std--code .cms-pc-std__content code { font-family: 'JetBrains Mono', 'Fira Code', monospace; font-size: 0.9em; }


.cms-pc-std--code .cms-pc-std__content :is(p code, li code) { padding: 2px 6px; border-radius: 4px; background: var(--color-bg-alt, #f5f5f5); }


.cms-pc-std--code .cms-pc-std__content :is(.info-box, .warning-box) { margin: 24px 0; padding: 16px 20px; border-radius: var(--radius, 8px); font-size: 15px; line-height: 1.6; }


.cms-pc-std--code .cms-pc-std__content .info-box { border-left: 4px solid var(--color-accent); background: var(--color-bg-alt, #f5f5f5); }


.cms-pc-std--code .cms-pc-std__content .warning-box { border-left: 4px solid #e67e22; background: rgba(230, 126, 34, 0.06); }


.cms-pc-std__content .pc-table-shell { position: relative; margin: 32px 0; overflow: hidden; border: 1px solid var(--color-border, rgba(0,0,0,0.08)); border-radius: var(--radius-lg, 12px); background: var(--color-bg, #fff); box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04); }


.cms-pc-std__content .pc-table-expand { position:absolute; top:10px; right:10px; z-index:8; display:none; align-items:center; justify-content:center; width:34px; height:34px; border:1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 26%, var(--color-border, #dbe7e1)); border-radius:999px; background:color-mix(in srgb, var(--color-accent, #0fbd74) 7%, #fff); color:var(--color-accent, #0fbd74); cursor:pointer; box-shadow:0 6px 14px rgba(6,17,15,.06); transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease; }


.cms-pc-std__content .pc-table-shell.is-overflowing .pc-table-expand { display:inline-flex; }


.cms-pc-std__content .pc-table-expand svg { width:14px; height:14px; stroke-width:2.2; }


.cms-pc-std__content .pc-table-expand:hover { transform:translateY(-1px); box-shadow:0 10px 22px rgba(6,17,15,.10); background:var(--color-accent, #0fbd74); color:#fff; }


.cms-pc-std__content .pc-table-shell::before, .cms-pc-std__content .pc-table-shell::after { content:""; position:absolute; top:0; bottom:0; width:18px; pointer-events:none; opacity:0; transition:opacity .18s ease; z-index:5; }


.cms-pc-std__content .pc-table-shell::before { left:0; background:linear-gradient(to right, rgba(255,255,255,.96), rgba(255,255,255,0)); }


.cms-pc-std__content .pc-table-shell::after { right:0; background:linear-gradient(to left, rgba(255,255,255,.96), rgba(255,255,255,0)); }


.cms-pc-std__content .pc-table-shell.has-left-shadow::before { opacity:1; }


.cms-pc-std__content .pc-table-shell.has-right-shadow::after { opacity:1; }


.cms-pc-std__content .pc-table-scroll { overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:rgba(148, 163, 184, 0.85) transparent; }


.cms-pc-std__content .pc-table-scroll::-webkit-scrollbar { height:10px; }


.cms-pc-std__content .pc-table-scroll::-webkit-scrollbar-track { background:transparent; }


.cms-pc-std__content .pc-table-scroll::-webkit-scrollbar-thumb { background:rgba(148, 163, 184, 0.75); border:2px solid transparent; border-radius:999px; background-clip:padding-box; }


.cms-pc-std__content .pc-table-scroll table { display:table !important; width:100%; min-width:max-content; margin:0 !important; border-collapse:separate; border-spacing:0; font-family:var(--font-body); font-size:15px; }


.cms-pc-std__content .pc-table-shell[data-sticky-first="0"] .pc-table-scroll table { width:auto; min-width:0; max-width:100%; }


.cms-pc-std__content .pc-table-scroll th { position:sticky; top:0; z-index:2; padding:13px 18px; min-width:136px; background:var(--color-accent); color:#fff; text-align:left; font-weight:600; line-height:1.35; white-space:normal; word-break:normal; overflow-wrap:anywhere; }


.cms-pc-std__content .pc-table-scroll td { padding:13px 18px; min-width:136px; color:var(--cms-pc-std-muted); vertical-align:top; line-height:1.6; border-bottom:1px solid var(--color-border, rgba(0,0,0,0.08)); background:var(--color-bg, #fff); white-space:normal; word-break:normal; overflow-wrap:anywhere; }


.cms-pc-std__content .pc-table-scroll tr:last-child td { border-bottom:none; }


.cms-pc-std__content .pc-table-shell[data-density="balanced"] .pc-table-scroll :is(th,td) { min-width:118px; }


.cms-pc-std__content .pc-table-shell[data-density="compact"] .pc-table-scroll :is(th,td) { min-width:102px; font-size:14px; }


.cms-pc-std__content .pc-table-shell[data-sticky-first="1"] .pc-table-scroll :is(th:first-child, td:first-child) { position:sticky; left:0; min-width:170px; box-shadow:1px 0 0 var(--color-border, rgba(0,0,0,0.08)); }


.cms-pc-std__content .pc-table-shell[data-sticky-first="1"] .pc-table-scroll th:first-child { z-index:6; background:color-mix(in srgb, var(--color-accent) 92%, #000 8%); }


.cms-pc-std__content .pc-table-shell[data-sticky-first="1"] .pc-table-scroll td:first-child { z-index:3; background:color-mix(in srgb, var(--color-bg) 92%, var(--color-bg-alt) 8%); color:var(--cms-pc-std-text); font-weight:600; }


/* Content Table */
.cms-content-table{margin:32px 0;--cms-content-table-width:auto;--cms-content-table-min-width:0;--cms-content-table-cell-min:0;--cms-content-table-cell-min-mobile:0;--cms-content-table-sticky-min:182px;--cms-content-table-modal-cell-min:144px;--cms-content-table-expand-display:none;--cms-content-table-striped:0}


.cms-content-table--wide{--cms-content-table-width:100%;--cms-content-table-min-width:max-content;--cms-content-table-expand-display:inline-flex}


.cms-content-table--density-balanced{--cms-content-table-cell-min:118px;--cms-content-table-cell-min-mobile:104px;--cms-content-table-modal-cell-min:118px}


.cms-content-table--density-compact{--cms-content-table-cell-min:102px;--cms-content-table-cell-min-mobile:92px;--cms-content-table-sticky-min:152px;--cms-content-table-modal-cell-min:102px}


.cms-content-table--striped{--cms-content-table-striped:1}


.cms-content-table__shell{position:relative;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);box-shadow:0 8px 24px rgba(15,23,42,.04)}


.cms-content-table__expand-btn{position:absolute;top:10px;right:10px;z-index:8;display:var(--cms-content-table-expand-display);align-items:center;justify-content:center;gap:6px;width:38px;height:38px;border:none;border-radius:999px;background:rgba(255,255,255,.94);color:var(--color-text);box-shadow:0 8px 18px rgba(15,23,42,.10);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}


.cms-content-table__expand-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(15,23,42,.14);background:#fff}


.cms-content-table__shell::before,.cms-content-table__shell::after{content:"";position:absolute;top:0;bottom:0;width:18px;pointer-events:none;opacity:0;transition:opacity .18s ease;z-index:4}


.cms-content-table__shell::before{left:0;background:linear-gradient(to right,rgba(255,255,255,.96),rgba(255,255,255,0))}


.cms-content-table__shell::after{right:0;background:linear-gradient(to left,rgba(255,255,255,.96),rgba(255,255,255,0))}


.cms-content-table__shell.has-left-shadow::before{opacity:1}


.cms-content-table__shell.has-right-shadow::after{opacity:1}


.cms-content-table__wrap{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.85) transparent}


.cms-content-table__wrap::-webkit-scrollbar{height:10px}


.cms-content-table__wrap::-webkit-scrollbar-track{background:transparent}


.cms-content-table__wrap::-webkit-scrollbar-thumb{background:rgba(148,163,184,.75);border-radius:999px;border:2px solid transparent;background-clip:padding-box}


.cms-content-table__table{display:table !important;margin:0 !important;width:var(--cms-content-table-width);min-width:var(--cms-content-table-min-width);max-width:100%;border-collapse:separate;border-spacing:0;table-layout:auto}


.cms-content-table__table th,.cms-content-table__table td{white-space:normal;min-width:var(--cms-content-table-cell-min);word-break:normal;overflow-wrap:anywhere}


.cms-content-table__table th{position:sticky;top:0;z-index:2;padding:13px 18px;text-align:left;font:600 13px/1.35 var(--font-heading);color:#fff;background:var(--color-accent);vertical-align:top}


.cms-content-table__table td{padding:13px 18px;font:400 14px/1.6 var(--font-body);color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:top;background:var(--color-bg)}


.cms-content-table__table tbody tr:last-child td{border-bottom:none}


.cms-content-table__table tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--color-bg-alt) calc(var(--cms-content-table-striped) * 100%), var(--color-bg) calc(100% - (var(--cms-content-table-striped) * 100%)))}


.cms-content-table__table th:first-child,.cms-content-table__table td:first-child{position:sticky;left:0;z-index:3;min-width:var(--cms-content-table-sticky-min);box-shadow:1px 0 0 var(--color-border)}


.cms-content-table__table th:first-child{z-index:5;background:color-mix(in srgb,var(--color-accent) 92%,#000 8%)}


.cms-content-table__table td:first-child{background:color-mix(in srgb,var(--color-bg) 92%,var(--color-bg-alt) 8%);font-weight:600;color:var(--color-text)}


.cms-content-table__table tbody tr:nth-child(even) td:first-child{background:color-mix(in srgb,var(--color-bg-alt) 86%,var(--color-bg) 14%)}


.cms-content-table__caption{margin:8px 0 0;text-align:center;font:400 13px/1.6 var(--font-body);color:var(--color-text-muted)}


@media (max-width:768px) {.cms-content-table{margin-left:-12px;margin-right:-12px}.cms-content-table__shell{border-radius:var(--radius)}.cms-content-table__expand-btn{display:none !important}.cms-content-table__table th,.cms-content-table__table td{padding:10px 12px;font-size:13px;min-width:var(--cms-content-table-cell-min-mobile)}.cms-content-table__table th:first-child,.cms-content-table__table td:first-child{min-width:128px}}


/* Content FAQ */
.cms-content-faq{position:relative;overflow:hidden;margin:32px 0;padding:24px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg, #fff);box-shadow:0 1px 6px rgba(0,0,0,.05)}


.cms-content-faq--bg-white{background:var(--color-bg, #fff)}


.cms-content-faq--bg-alt{background:var(--color-bg-alt, #f9fafb)}


.cms-content-faq--bg-dark{background:var(--color-dark-bg, #1C1917)}


.cms-content-faq--bg-transparent{background:transparent}


.cms-content-faq--bg-dark .cms-content-faq__question{color:#fff}


.cms-content-faq--bg-dark .cms-content-faq__answer-inner{color:rgba(255,255,255,.72)}


.cms-content-faq--flat{border-color:transparent;box-shadow:none;background:var(--color-bg-alt)}


.cms-content-faq__deco{position:absolute;z-index:0;pointer-events:none}


.cms-content-faq__deco--tl{top:-12px;left:-12px}


.cms-content-faq__deco--tr{top:-12px;right:-12px}


.cms-content-faq__deco--bl{bottom:-12px;left:-12px}


.cms-content-faq__deco--br{bottom:-12px;right:-12px}


.cms-content-faq__deco--s1{width:70px;height:70px}


.cms-content-faq__deco--s2{width:55px;height:55px}


.cms-content-faq__deco--s3{width:80px;height:80px}


.cms-content-faq__deco--s4{width:60px;height:60px}


.cms-content-faq__deco--s5{width:75px;height:75px}


.cms-content-faq__deco--circle{border-radius:50%;background:color-mix(in srgb,var(--color-accent) 12%,transparent)}


.cms-content-faq__deco--accent,.cms-content-faq__deco--offset{height:calc(var(--cms-deco-h, 100%) * .8);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}


.cms-content-faq__deco--dots{background:radial-gradient(circle,var(--color-accent) 1.5px,transparent 1.5px);background-size:12px 12px;opacity:.2}


.cms-content-faq__deco--stripes{opacity:.15;background:repeating-linear-gradient(45deg,var(--color-accent) 0px,var(--color-accent) 2px,transparent 2px,transparent 10px)}


.cms-content-faq__deco--crosshatch{opacity:.12;background:repeating-linear-gradient(0deg,var(--color-accent) 0px,var(--color-accent) 1px,transparent 1px,transparent 10px),repeating-linear-gradient(90deg,var(--color-accent) 0px,var(--color-accent) 1px,transparent 1px,transparent 10px)}


.cms-content-faq__eyebrow{position:relative;z-index:1;display:block;margin:0 0 14px;font:700 11px/1.2 var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--color-accent)}


.cms-content-faq__list{position:relative;z-index:1;display:flex;flex-direction:column;gap:0}


.cms-content-faq__item--divided{border-bottom:1px solid var(--color-border)}


.cms-content-faq__trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 0;background:none;border:none;cursor:pointer;text-align:left}


.cms-content-faq__question{font:600 15px/1.5 var(--font-body);color:var(--color-text)}


.cms-content-faq__icon{flex-shrink:0;width:16px;height:16px;min-width:16px;color:var(--color-accent);transition:transform .2s}


.cms-content-faq__icon.is-open{transform:rotate(180deg)}


.cms-content-faq__answer{height:0;overflow:hidden;opacity:0;transition:height .28s ease,opacity .22s ease}


.cms-content-faq__answer-inner{padding:0 0 14px;font:400 14px/1.7 var(--font-body);color:var(--color-text-muted)}


/* Content Utility Blocks */
.cms-content-paa{margin:28px 0;padding:16px 20px;border:0;border-left:3px solid var(--color-accent);border-radius:0;box-shadow:none;background:transparent}


.cms-content-paa__eyebrow{display:block;margin:0 0 10px;font:700 10px/1.2 var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--color-accent)}


.cms-content-short{margin:28px 0}


.cms-content-sum{position:relative;overflow:hidden;margin:32px 0;padding:24px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg, #fff);box-shadow:0 1px 6px rgba(0,0,0,.05)}


.cms-content-sum--bg-white{background:var(--color-bg, #fff)}


.cms-content-sum--bg-alt{background:var(--color-bg-alt, #f9fafb)}


.cms-content-sum--bg-dark{background:var(--color-dark-bg, #1C1917)}


.cms-content-sum--bg-transparent{background:transparent}


.cms-content-sum--bg-dark .cms-content-sum__item{color:#fff}


.cms-content-sum--flat{border-color:transparent;box-shadow:none;background:var(--color-bg-alt)}


.cms-content-sum__deco{position:absolute;z-index:0;pointer-events:none}


.cms-content-sum__deco--tl{top:-12px;left:-12px}


.cms-content-sum__deco--tr{top:-12px;right:-12px}


.cms-content-sum__deco--bl{bottom:-12px;left:-12px}


.cms-content-sum__deco--br{bottom:-12px;right:-12px}


.cms-content-sum__deco--s1{width:70px;height:70px}


.cms-content-sum__deco--s2{width:55px;height:55px}


.cms-content-sum__deco--s3{width:80px;height:80px}


.cms-content-sum__deco--s4{width:60px;height:60px}


.cms-content-sum__deco--s5{width:75px;height:75px}


.cms-content-sum__deco--circle{border-radius:50%;background:color-mix(in srgb,var(--color-accent) 12%,transparent)}


.cms-content-sum__deco--accent,.cms-content-sum__deco--offset{border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-accent) 10%,transparent)}


.cms-content-sum__deco--dots{background:radial-gradient(circle,var(--color-accent) 1.5px,transparent 1.5px);background-size:12px 12px;opacity:.2}


.cms-content-sum__deco--stripes{opacity:.15;background:repeating-linear-gradient(45deg,var(--color-accent) 0px,var(--color-accent) 2px,transparent 2px,transparent 10px)}


.cms-content-sum__deco--crosshatch{opacity:.12;background:repeating-linear-gradient(0deg,var(--color-accent) 0px,var(--color-accent) 1px,transparent 1px,transparent 10px),repeating-linear-gradient(90deg,var(--color-accent) 0px,var(--color-accent) 1px,transparent 1px,transparent 10px)}


.cms-content-sum__eyebrow{position:relative;z-index:1;display:block;margin:0 0 14px;font:700 11px/1.2 var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--color-accent)}


.cms-content-sum__list{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;list-style:none !important;margin:0;padding:0 !important}


.cms-content-sum__item{position:relative;list-style:none !important;padding-left:24px;font:400 14px/1.6 var(--font-body);color:var(--color-text)}


.cms-content-sum__item::marker{content:""}


.cms-content-sum__tick{position:absolute;left:0;color:var(--color-accent);font-weight:700}


/* Content Simple */
.cms-content-figure{margin:32px 0;padding:0}


.cms-content-figure__img{display:block;width:100%;border-radius:var(--radius-lg)}


.cms-content-figure__caption{margin-top:10px;text-align:center;font:italic 13px/1.6 var(--font-body);color:var(--color-text-muted)}


.cms-content-h2{margin:48px 0 20px;font:600 clamp(22px,2.8vw,32px)/1.25 var(--font-heading);color:var(--color-text)}


.cms-content-bq{position:relative;margin:32px 0;padding:8px 0 8px 40px;font:italic 16px/1.7 var(--font-body);color:var(--color-text-muted)}


.cms-content-bq__open{position:absolute;top:-10px;left:0;font:56px/1 var(--font-heading);color:var(--color-accent);opacity:.25}


.cms-content-bq__close{margin-left:4px;vertical-align:sub;font:28px/1 var(--font-heading);color:var(--color-accent);opacity:.25}


.cms-content-video{margin:32px 0}


.cms-content-video__embed{position:relative;height:0;min-height:0;padding-bottom:56.25%;overflow:hidden;border-radius:var(--radius-lg)}


.cms-content-video__placeholder{position:absolute;inset:0}


/* Content Rich Cards */
.cms-content-mc,.cms-content-pf,.cms-content-pc,.cms-content-sf{margin:32px 0}


.cms-content-mc__shell,.cms-content-pf__shell{position:relative;padding:20px 0 20px 18px;border-left:3px solid var(--color-accent)}


.cms-content-mc__shell::before,.cms-content-pf__shell::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent) 7%,transparent) 0%,transparent 62%)}


.cms-content-mc__head,.cms-content-pf__head{position:relative;padding:0 4px 10px 0}


.cms-content-mc__eyebrow,.cms-content-pf__eyebrow,.cms-content-pc__eyebrow{display:block;margin:0 0 8px;font:700 10px/1.2 var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--color-accent)}


.cms-content-pc__eyebrow{font-size:11px}


.cms-content-mc__title,.cms-content-pf__title{margin:0 !important;font:700 clamp(20px,2.3vw,25px)/1.15 var(--font-heading);color:var(--color-text)}


.cms-content-pc__title{margin:0;font:700 clamp(22px,2.7vw,28px)/1.15 var(--font-heading);color:var(--color-text)}


.cms-content-mc__intro{margin:10px 0 0;font:400 14px/1.65 var(--font-body);color:var(--color-text-muted)}


.cms-content-mc__grid,.cms-content-pf__grid{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;padding-right:4px}


.cms-content-mc__grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}


.cms-content-mc__card,.cms-content-pf__card{display:grid;gap:10px;align-content:start;padding:16px 16px 15px;border:1px solid color-mix(in srgb,var(--color-border) 88%,white 12%);border-radius:18px;background:var(--color-bg,#fff);box-shadow:0 10px 24px rgba(15,23,42,.05)}


.cms-pc-std--dark .cms-content-mc__card,.cms-pc-std--dark .cms-content-pf__card{background:color-mix(in srgb,var(--color-dark-bg-alt,var(--color-dark-bg)) 88%,white 12%);border-color:rgba(255,255,255,.12)}


.cms-content-mc__label,.cms-content-pf__profile{margin:0;font:700 17px/1.35 var(--font-heading);color:var(--color-text)}


.cms-content-mc__points,.cms-content-pf__points{display:grid;gap:8px}


.cms-content-mc__line,.cms-content-pf__line{display:grid;gap:3px;margin:0}


.cms-content-mc__k,.cms-content-pf__k{font:700 10px/1.2 var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--color-accent)}


.cms-content-mc__v,.cms-content-pf__note{font:400 14px/1.65 var(--font-body);color:var(--color-text-muted)}


.cms-content-mc__v strong,.cms-content-pf__note strong{color:var(--color-text);font-weight:700}


.cms-content-pf__badge{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:3px 7px;border-radius:999px;font:700 9px/1 var(--font-body);letter-spacing:.03em;text-transform:uppercase;margin:0;color:#15803d;background:rgba(34,197,94,.10)}


.cms-content-pf__badge--danger{color:#b91c1c;background:rgba(220,38,38,.10)}


.cms-content-pf__badge--warning{color:#b45309;background:rgba(217,119,6,.12)}


.cms-content-pf__badge--success{color:#15803d;background:rgba(34,197,94,.10)}


@media (max-width:768px) {.cms-content-mc__shell,.cms-content-pf__shell{padding:20px 0 20px 14px}}


.cms-content-pf {
    margin: 28px 0;
}


.cms-content-pf__shell {
    padding: 20px 22px;
    border: 1px solid color-mix(in srgb, var(--color-accent) 24%, var(--color-border));
    border-left: 4px solid var(--color-accent);
    border-radius: var(--radius-lg);
    background: var(--color-bg);
    box-shadow: none;
}


.cms-content-pf__shell::before {
    display: none;
}


.cms-content-pf__head {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    column-gap: 12px;
    align-items: center;
    padding: 0 0 14px;
}


.cms-content-pf__head::before {
    content: "?";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    grid-row: 1 / span 2;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    color: #fff;
    background: var(--color-accent);
    font: 800 18px/1 var(--font-heading);
}


.cms-content-pf__eyebrow,
.cms-content-pf__title {
    grid-column: 2;
}


.cms-content-pf__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    padding: 0;
}


.cms-content-pf__card {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 12px;
    padding: 13px 14px;
    border-radius: var(--radius-md);
    box-shadow: none;
}


.cms-content-pf__points {
    gap: 5px;
}


.cms-content-pf__line {
    display: block;
}


.cms-content-pf__k {
    display: none;
}


.cms-content-pf__profile {
    font-size: 15.5px;
}


.cms-content-pf__note {
    font-size: 13.25px;
    line-height: 1.55;
}


@media (max-width:768px) {
    .cms-content-pf__shell{padding:18px 16px}
    .cms-content-pf__head{grid-template-columns:34px minmax(0,1fr)}
    .cms-content-pf__head::before{width:34px;height:34px;font-size:16px}
    .cms-content-pf__card{grid-template-columns:1fr}}


.cms-content-pc__head{padding:18px 20px 0}


.cms-content-pc__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px 20px 20px}


.cms-content-pc__col{padding:18px;border:1px solid var(--color-border);border-radius:calc(var(--radius-lg) - 4px)}


.cms-content-pc__col--pros{background:linear-gradient(180deg,rgba(34,197,94,.08) 0%,rgba(34,197,94,.03) 100%)}


.cms-content-pc__col--cons{background:linear-gradient(180deg,rgba(239,68,68,.08) 0%,rgba(239,68,68,.03) 100%)}


.cms-content-pc__col-title{margin:0 0 12px;font:700 14px/1.3 var(--font-heading);color:var(--color-text)}


.cms-content-pc__list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}


.cms-content-pc__list li{position:relative;list-style:none !important;padding-left:22px;margin:0;font:400 14px/1.6 var(--font-body);color:var(--color-text)}


.cms-content-pc__list li::before{position:absolute;left:0;top:0;font-weight:700}


.cms-content-pc__col--pros .cms-content-pc__list li::before{content:"✓";color:#16a34a}


.cms-content-pc__col--cons .cms-content-pc__list li::before{content:"–";color:#dc2626}


.cms-content-pc__foot{margin:0;padding:0 20px 20px;font:400 14px/1.65 var(--font-body);color:var(--color-text-muted)}


.cms-content-pc__foot strong{color:var(--color-text)}


@media (max-width:768px) {.cms-content-pc__grid{grid-template-columns:1fr;gap:12px;padding:16px}.cms-content-pc__head{padding:16px 16px 0}.cms-content-pc__foot{padding:0 16px 16px}}


.cms-content-sf__grid{display:grid;grid-template-columns:1fr;gap:16px}


.cms-content-sf--cols-2 .cms-content-sf__grid{grid-template-columns:repeat(2,minmax(0,1fr))}


.cms-content-sf__card{padding:18px;border:1px solid color-mix(in srgb, var(--color-accent) 18%, var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-accent) 5%, var(--color-bg))}


.cms-content-sf--light .cms-content-sf__card{border-color:color-mix(in srgb, var(--color-accent) 10%, transparent);background:transparent}


.cms-content-sf__head-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px}


.cms-content-sf__icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent)}


.cms-content-sf--light .cms-content-sf__icon{background:transparent}


.cms-content-sf__title{margin:2px 0 0;font:600 clamp(18px,2vw,21px)/1.25 var(--font-heading);color:var(--color-text)}


.cms-content-sf__content{font:400 15px/1.72 var(--font-body);color:var(--color-text-muted)}


.cms-content-sf__content p:last-child,.cms-content-sf__card > *:last-child{margin-bottom:0 !important}


.cms-content-sf__content strong{color:var(--color-text)}


@media (max-width:899px) {.cms-content-sf__grid{grid-template-columns:1fr !important}}


.cms-pc-std__content .cms-img-deco img,
.cms-pc-std__content .cms-img-deco__img,
.post-content .cms-img-deco img,
.article-content .cms-img-deco img,
.prose .cms-img-deco img {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    border-radius: inherit !important;
}


/* JS Agency canonical mini-compare cards — 2026-05-06 */
.cms-content-mc {
    margin: 32px 0;
}


.cms-content-mc__shell {
    position: relative;
    padding: 0;
    border-left: 0;
}


.cms-content-mc__shell::before {
    content: none;
}


.cms-content-mc__head {
    position: relative;
    padding: 0 0 14px;
}


.cms-content-mc__eyebrow {
    display: block;
    margin: 0 0 8px;
    font: 700 10px/1.2 var(--font-body, var(--cms-font, system-ui));
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--color-accent, var(--cms-primary, #0f766e));
}


.cms-content-mc__title {
    margin: 0 !important;
    font: 700 clamp(20px, 2.3vw, 25px)/1.15 var(--font-heading, var(--cms-font-heading, system-ui));
    color: var(--color-text, var(--cms-text, #1e293b));
}


.cms-content-mc__intro {
    margin: 10px 0 0;
    font: 400 14px/1.65 var(--font-body, var(--cms-font, system-ui));
    color: var(--color-text-muted, var(--cms-text-light, #64748b));
}


.cms-content-mc__grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding-right: 0;
}


.cms-content-mc__card {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 14px;
    align-content: start;
    padding: 22px;
    border: 1px solid var(--color-border, var(--cms-border, #e2e8f0));
    border-radius: var(--radius-lg, var(--cms-radius-lg, 18px));
    background: var(--color-bg, var(--cms-bg, #fff));
    box-shadow: 0 16px 38px rgba(15, 23, 42, .06);
}


.cms-content-mc__card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}


.cms-content-mc__label {
    margin: 0;
    font: 700 20px/1.22 var(--font-heading, var(--cms-font-heading, system-ui));
    color: var(--color-text, var(--cms-text, #1e293b));
}


.cms-content-mc__rank {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    border-radius: 50%;
    background: var(--color-accent, var(--cms-primary, #0f766e));
    color: #fff;
    font: 800 12px/1 var(--font-body, var(--cms-font, system-ui));
}


.cms-content-mc__points {
    display: grid;
    gap: 10px;
}


.cms-content-mc__line {
    display: grid;
    gap: 3px;
    margin: 0;
    padding: 11px 0 0;
    border-top: 1px solid color-mix(in srgb, var(--color-border, var(--cms-border, #e2e8f0)) 82%, transparent);
}


.cms-content-mc__k {
    color: var(--color-accent, var(--cms-primary, #0f766e));
    font: 700 10px/1.2 var(--font-body, var(--cms-font, system-ui));
    letter-spacing: .07em;
    text-transform: uppercase;
}


.cms-content-mc__v {
    color: var(--color-text-muted, var(--cms-text-light, #64748b));
    font: 400 14px/1.62 var(--font-body, var(--cms-font, system-ui));
}


.cms-content-mc__v strong {
    color: var(--color-text, var(--cms-text, #1e293b));
    font-weight: 700;
}


@media (max-width: 760px) {
    .cms-content-mc__grid {
        grid-template-columns: 1fr;
    }}


/* JS Agency mini-compare icon variant — 2026-05-06 */
.cms-content-mc__rank--icon svg {
    width: 18px;
    height: 18px;
    display: block;
}


/* JS Agency canonical criteria-grid cards — 2026-05-06 */
.cms-content-cg {
    margin: 32px 0 38px;
}


.cms-content-cg__shell {
    position: relative;
}


.cms-content-cg__head {
    padding: 0 0 14px;
}


.cms-content-cg__eyebrow {
    display: block;
    margin: 0 0 8px;
    font: 700 10px/1.2 var(--font-body, var(--cms-font, system-ui));
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--color-accent, var(--cms-primary, #0f766e));
}


.cms-content-cg__title {
    margin: 0 !important;
    font: 700 clamp(20px, 2.3vw, 25px)/1.15 var(--font-heading, var(--cms-font-heading, system-ui));
    color: var(--color-text, var(--cms-text, #1e293b));
}


.cms-content-cg__intro {
    margin: 10px 0 0;
    font: 400 14px/1.65 var(--font-body, var(--cms-font, system-ui));
    color: var(--color-text-muted, var(--cms-text-light, #64748b));
}


.cms-content-cg__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}


.cms-content-cg__card {
    position: relative;
    overflow: hidden;
    min-height: 100%;
    padding: 20px;
    border: 1px solid var(--color-border, var(--cms-border, #e2e8f0));
    border-radius: var(--radius-lg, var(--cms-radius-lg, 18px));
    background: linear-gradient(180deg, color-mix(in srgb, var(--color-accent, var(--cms-primary, #0f766e)) 5%, var(--color-bg, var(--cms-bg, #fff)) 95%) 0%, var(--color-bg, var(--cms-bg, #fff)) 72%);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
}


.cms-content-cg__card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: var(--color-accent, var(--cms-primary, #0f766e));
}


.cms-content-cg__top {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 14px;
}


.cms-content-cg__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    border-radius: 14px;
    background: var(--color-accent, var(--cms-primary, #0f766e));
    color: #fff;
}


.cms-content-cg__icon svg {
    width: 21px;
    height: 21px;
    display: block;
}


.cms-content-cg__badge {
    display: inline-flex;
    width: max-content;
    margin: 0 0 5px;
    padding: 4px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-accent, var(--cms-primary, #0f766e)) 12%, transparent);
    color: var(--color-accent, var(--cms-primary, #0f766e));
    font: 700 10px/1 var(--font-body, var(--cms-font, system-ui));
    letter-spacing: .06em;
    text-transform: uppercase;
}


.cms-content-cg__label {
    margin: 0 !important;
    font: 700 18px/1.25 var(--font-heading, var(--cms-font-heading, system-ui));
    color: var(--color-text, var(--cms-text, #1e293b));
}


.cms-content-cg__question,
.cms-content-cg__impact {
    margin: 0;
    font: 400 14px/1.65 var(--font-body, var(--cms-font, system-ui));
    color: var(--color-text-muted, var(--cms-text-light, #64748b));
}


.cms-content-cg__impact {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid color-mix(in srgb, var(--color-border, var(--cms-border, #e2e8f0)) 78%, transparent);
}


.cms-content-cg__impact strong {
    color: var(--color-text, var(--cms-text, #1e293b));
}


@media (max-width: 760px) {
    .cms-content-cg__grid {
        grid-template-columns: 1fr;
    }}


/* JS Agency canonical audience-fit split block — 2026-05-06 */
.cms-content-af {
    margin: 30px 0 36px;
}


.cms-content-af__shell {
    display: flex;
    align-items: stretch;
    overflow: hidden;
    border: 1px solid var(--color-border, rgba(15, 23, 42, .12));
    border-radius: var(--radius-lg, 22px);
    background: var(--color-bg-alt, #f8fafc);
    box-shadow: 0 18px 42px rgba(15, 23, 42, .07);
}


.cms-content-af__media {
    position: relative;
    flex: 0 0 clamp(240px, 32%, 330px);
    width: clamp(240px, 32%, 330px);
    min-width: 240px;
    min-height: 360px;
    overflow: hidden;
    background: linear-gradient(135deg, color-mix(in srgb, var(--color-accent, #0f766e) 22%, #111827 78%), #0f172a);
}


.cms-content-af__media::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(135deg, rgba(15, 23, 42, .08), rgba(15, 23, 42, .34));
}


.cms-content-af__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 360px;
    margin: 0;
    padding: 0;
    border-radius: 0;
    object-fit: cover;
    object-position: center center;
    vertical-align: top;
}


.cms-content-af__media-placeholder {
    width: 100%;
    height: 100%;
    min-height: 360px;
    background:
        radial-gradient(circle at 28% 26%, color-mix(in srgb, var(--color-accent, #0f766e) 52%, transparent) 0 18%, transparent 19%),
        linear-gradient(135deg, color-mix(in srgb, var(--color-accent, #0f766e) 20%, #111827 80%), #0f172a);
}


.cms-content-af__body {
    flex: 1 1 auto;
    min-width: 0;
    padding: clamp(22px, 3.5vw, 34px);
}


.cms-content-af__eyebrow {
    display: block;
    margin: 0 0 9px;
    color: var(--color-accent, #0f766e);
    font: 800 10px/1.2 var(--font-body, sans-serif);
    letter-spacing: .08em;
    text-transform: uppercase;
}


.cms-content-af__title {
    margin: 0 !important;
    color: var(--color-text, #0f172a);
    font: 800 clamp(20px, 2.2vw, 27px)/1.12 var(--font-heading, sans-serif);
}


.cms-content-af__intro {
    max-width: 62ch;
    margin: 12px 0 0;
    color: var(--color-text-muted, #64748b);
    font: 400 13.5px/1.62 var(--font-body, sans-serif);
}


.cms-content-af__list {
    display: grid;
    gap: 10px;
    margin: 19px 0 0;
}


.cms-content-af__item {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 13px;
    align-items: start;
    padding: 13px 0 0;
    border-top: 1px solid color-mix(in srgb, var(--color-border, #e2e8f0) 82%, transparent);
}


.cms-content-af__index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    color: #fff;
    background: var(--color-accent, #0f766e);
    font: 800 11px/1 var(--font-body, sans-serif);
    box-shadow: 0 10px 24px color-mix(in srgb, var(--color-accent, #0f766e) 24%, transparent);
}


.cms-content-af__badge {
    display: inline-flex;
    width: max-content;
    margin: 0 0 5px;
    padding: 4px 8px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--color-accent, #0f766e) 10%, transparent);
    color: var(--color-accent, #0f766e);
    font: 800 9px/1 var(--font-body, sans-serif);
    letter-spacing: .06em;
    text-transform: uppercase;
}


.cms-content-af__label {
    margin: 0 !important;
    color: var(--color-text, #0f172a);
    font: 750 16px/1.28 var(--font-heading, sans-serif);
}


.cms-content-af__note {
    margin: 6px 0 0;
    color: var(--color-text-muted, #64748b);
    font: 400 13px/1.54 var(--font-body, sans-serif);
}


@media (max-width: 820px) {
    .cms-content-af__shell {
        display: block;
    }
    .cms-content-af__media {
        width: 100%;
        min-width: 0;
        min-height: 240px;
        aspect-ratio: 16 / 9;
    }
    .cms-content-af__media img,
    .cms-content-af__media-placeholder {
        min-height: 240px;
        height: 240px;
    }}


/* JS Agency post component readability tuning — 2026-05-06 */
.article-content .cms-summary,
.prose .cms-summary,
.article-content .cms-faq,
.prose .cms-faq,
.article-content .cms-content-mc,
.prose .cms-content-mc,
.article-content .cms-content-cg,
.prose .cms-content-cg,
.article-content .cms-content-pp,
.prose .cms-content-pp,
.article-content .cms-content-vb,
.prose .cms-content-vb {
    font-size: 0.94rem;
}


.article-content .cms-summary__list li,
.prose .cms-summary__list li {
    font-size: 0.94rem;
    line-height: 1.62;
}


.article-content .cms-faq__question,
.prose .cms-faq__question {
    font-size: 0.98rem;
    line-height: 1.42;
}


.article-content .cms-faq__answer,
.prose .cms-faq__answer {
    font-size: 0.92rem;
    line-height: 1.65;
}


.cms-content-mc__card,
.cms-content-cg__card,
.cms-content-pp__card {
    min-height: 0;
}


.cms-content-mc__label { font-size: 18px; }


.cms-content-mc__v,
.cms-content-cg__question,
.cms-content-cg__impact,
.cms-content-pp__text { font-size: 13.25px; }


.cms-content-cg__label,
.cms-content-pp__label { font-size: 16.5px; }


.cms-content-vb {
    margin: 34px 0 46px;
    min-height: clamp(250px, 30vw, 390px);
    align-items: end;
    background:
        radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--color-accent, #0f766e) 20%, transparent) 0 14%, transparent 15%),
        linear-gradient(135deg, var(--color-bg-alt, #f8fafc), color-mix(in srgb, var(--color-accent, #0f766e) 10%, var(--color-bg, #fff)));
    color: var(--color-text, #0f172a);
    box-shadow: 0 18px 44px rgba(15, 23, 42, .08);
}


.cms-content-vb--accent,
.cms-content-vb--dark,
.cms-content-vb--light {
    color: var(--color-text, #0f172a);
}


.cms-content-vb__visual {
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--color-accent, #0f766e) 14%, transparent), transparent 48%),
        repeating-linear-gradient(-35deg, color-mix(in srgb, var(--color-accent, #0f766e) 12%, transparent) 0 2px, transparent 2px 13px);
    opacity: .95;
}


.cms-content-vb__visual::after {
    background: linear-gradient(90deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.84) 46%, rgba(255,255,255,.18) 100%);
}


.cms-content-vb__img {
    filter: saturate(.9) contrast(.98) brightness(.96);
}


.cms-content-vb--with-image .cms-content-vb__eyebrow,
.cms-content-vb--accent .cms-content-vb__eyebrow,
.cms-content-vb__eyebrow {
    color: var(--color-accent, #0f766e);
}


.cms-content-vb__title {
    max-width: 680px;
    color: var(--color-text, #0f172a);
    font-size: clamp(22px, 2.7vw, 34px);
}


.cms-content-vb__text {
    max-width: 620px;
    color: var(--color-text-muted, #64748b);
    font-size: clamp(14px, 1.25vw, 16px);
    line-height: 1.65;
}


.cms-content-vb.cms-content-vb--with-image,
.cms-content-vb.cms-content-vb--with-image.cms-content-vb--accent,
.cms-content-vb.cms-content-vb--with-image.cms-content-vb--dark,
.cms-content-vb.cms-content-vb--with-image.cms-content-vb--light {
    color: #fff;
    background: #0f172a;
}


.cms-content-vb.cms-content-vb--with-image .cms-content-vb__visual::after {
    background: linear-gradient(180deg, rgba(8,13,24,.10), rgba(8,13,24,.58));
}


.cms-content-vb.cms-content-vb--with-image .cms-content-vb__img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    margin: 0 !important;
    border-radius: 0 !important;
    object-fit: cover;
    filter: saturate(.98) contrast(1.03) brightness(.76);
    transform: scale(1.012);
    transform-origin: center;
}


.cms-content-vb.cms-content-vb--with-image .cms-content-vb__eyebrow {
    color: var(--color-accent2-soft, color-mix(in srgb, var(--color-accent2, var(--color-accent)) 26%, white 74%));
}


.cms-content-vb.cms-content-vb--with-image .cms-content-vb__title {
    color: #fff;
}


.cms-content-vb.cms-content-vb--with-image .cms-content-vb__text {
    color: var(--color-accent2-soft, color-mix(in srgb, var(--color-accent2, var(--color-accent)) 22%, white 78%));
}


.cms-content-vb--accent:not(.cms-content-vb--with-image) .cms-content-vb__eyebrow {
    color: rgba(255,255,255,.80);
}


.cms-content-vb--accent:not(.cms-content-vb--with-image) .cms-content-vb__title {
    color: #fff;
}


.cms-content-vb--accent:not(.cms-content-vb--with-image) .cms-content-vb__text {
    color: rgba(255,255,255,.86);
}


.cms-content-vb:not(.cms-content-vb--with-image) {
    min-height: auto;
    align-items: start;
}


.cms-content-icg {
    margin: 40px 0;
}


.cms-content-icg__head {
    max-width: 760px;
    margin: 0 0 18px;
}


.cms-content-icg__eyebrow {
    display: inline-flex;
    margin: 0 0 9px;
    color: var(--color-accent);
    font: 800 10px/1.2 var(--font-body);
    letter-spacing: .08em;
    text-transform: uppercase;
}


.cms-content-icg__title {
    margin: 0 !important;
    color: var(--color-text);
    font: 800 clamp(22px, 2.5vw, 30px)/1.12 var(--font-heading);
    letter-spacing: -.02em;
}


.cms-content-icg__intro {
    margin: 10px 0 0;
    color: var(--color-text-muted);
    font: 400 14px/1.65 var(--font-body);
}


.cms-content-icg__grid {
    display: grid;
    gap: 18px;
}


.cms-content-icg--cols-2 .cms-content-icg__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}


.cms-content-icg--cols-3 .cms-content-icg__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}


.cms-content-icg--carousel .cms-content-icg__grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(260px, 32%);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    padding-bottom: 8px;
}


.cms-content-icg__card {
    overflow: hidden;
    min-width: 0;
    border: 1px solid color-mix(in srgb, var(--color-border) 82%, var(--color-accent) 18%);
    border-radius: var(--radius-lg);
    background: var(--color-bg);
    box-shadow: 0 12px 28px rgba(15,23,42,.055);
    scroll-snap-align: start;
}


.cms-content-icg__image,
.cms-content-icg__placeholder {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    height: clamp(178px, 18vw, 232px);
    border-radius: 0 !important;
    margin: 0 !important;
}


.cms-content-icg__image {
    object-fit: cover;
}


.cms-content-icg__placeholder {
    background:
        radial-gradient(circle at 24% 22%, color-mix(in srgb, var(--color-accent) 18%, transparent), transparent 34%),
        linear-gradient(135deg, var(--color-bg-alt), color-mix(in srgb, var(--color-accent) 8%, var(--color-bg)));
}


.cms-content-icg__body {
    padding: clamp(16px, 2vw, 22px);
}


.cms-content-icg__link {
    color: inherit;
    text-decoration: none;
}


.cms-content-icg__item-title {
    margin: 0 0 8px !important;
    color: var(--color-text);
    font: 800 17px/1.28 var(--font-heading);
}


.cms-content-icg__text {
    margin: 0;
    color: var(--color-text-muted);
    font: 400 13.5px/1.6 var(--font-body);
}


.cms-content-icg__cta {
    display: inline-flex;
    margin-top: 13px;
    color: var(--color-accent);
    font: 800 12px/1 var(--font-body);
    text-decoration: none;
}


@media (max-width: 760px) {
    .cms-content-icg--cols-2 .cms-content-icg__grid,
    .cms-content-icg--cols-3 .cms-content-icg__grid {
        grid-template-columns: 1fr;
    }
    .cms-content-icg--carousel .cms-content-icg__grid {
        grid-auto-columns: minmax(240px, 84%);
    }}


/* Legacy imported post blocks — match current summary/FAQ components */
.bloc_resume_post,
.cms-block.cms-summary {
    border: none;
    background: var(--color-bg-alt);
    border-radius: var(--radius-lg);
    padding: 24px;
    margin: 32px 0;
    box-shadow: none;
}


.cms-pc-std__content .bloc_resume_post_title,
.article-content .bloc_resume_post_title,
.prose .bloc_resume_post_title,
.post-content .bloc_resume_post_title,
.bloc_resume_post_title,
.cms-summary__title,
.bloc_resume_post h2 {
    line-height: var(--cms-pc-std-line-height, 1.5);
    margin: 0 0 14px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    font-family: var(--font-body);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--color-accent);
}


.faq-question,
.bloc_resume_post h4,
.cms-block.cms-faq .cms-faq__question {
    margin: 0 0 7px !important;
    font: 600 15px/1.5 var(--font-body);
    color: var(--color-text);
}


.faq-answer,
.cms-block.cms-faq .cms-faq__answer {
    margin: 0 !important;
    font: 400 14px/1.7 var(--font-body);
    color: var(--color-text-muted);
}


@media (max-width: 768px) {
    .bloc_resume_post,
    .cms-block.cms-summary {
        padding: 20px;
        border-radius: var(--radius);
    }}


/* ---------------------------------------------------------------------------
   Hotfix 2026-05-08 — Visual banner + decision/profile blocks specificity
   --------------------------------------------------------------------------- */
.cms-content-vb__visual {
    line-height: 0;
    overflow: hidden;
    display: block;
}


.cms-content-vb__img {
    margin: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
}


.cms-content-vb--with-image .cms-content-vb__title,
.cms-content-vb--with-image .cms-content-vb__text {
    color: #fff !important;
}


.cms-content-vb--with-image {
    min-height: clamp(220px, 28vw, 340px) !important;
}


.post-content h4.cms-content-ds__card-title,
.post-content h4.cms-content-pp__label {
    margin-top: 14px !important;
}


.cms-content-pp__card {
    min-height: auto !important;
}


.cms-content-clp__item {
    line-height: 1.3 !important;
}


/* ---------------------------------------------------------------------------
   OL badge 2026-05-08 — Ordered lists in editorial content
   --------------------------------------------------------------------------- */
.article-content ol, .prose ol, .post-content ol, .cms-pc-std__content ol { list-style:none !important; padding-left:0px; margin:1rem 0; counter-reset:cms-ordered-list; }


.article-content ol > li, .prose ol > li, .post-content ol > li, .cms-pc-std__content ol > li { list-style:none !important; position:relative; margin:.7rem 0; padding:.85rem 1rem .85rem 3rem; border:1px solid color-mix(in srgb,var(--color-accent,var(--cms-accent,#D97706)) 22%,var(--color-border,#E7E5E4)); border-radius:12px; background:color-mix(in srgb,var(--color-bg-alt,#F8F7F4) 84%,white 16%); line-height:1.65; counter-increment:cms-ordered-list; }


.article-content ol > li::marker, .prose ol > li::marker, .post-content ol > li::marker, .cms-pc-std__content ol > li::marker { content:none; }


.article-content ol > li::before, .prose ol > li::before, .post-content ol > li::before, .cms-pc-std__content ol > li::before { content:counter(cms-ordered-list); position:absolute; left:.85rem; top:.85rem; width:1.6rem; height:1.6rem; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; font-size:.78rem; font-weight:700; line-height:1; color:#fff; background:var(--color-accent,var(--cms-accent,#D97706)); box-shadow:0 8px 18px color-mix(in srgb,var(--color-accent,var(--cms-accent,#D97706)) 30%,transparent); }


.article-content ol ol, .prose ol ol, .post-content ol ol, .cms-pc-std__content ol ol { list-style:decimal; counter-reset:none; padding-left:1.4rem; margin:.5rem 0 .25rem; }


.article-content ol ol > li, .prose ol ol > li, .post-content ol ol > li, .cms-pc-std__content ol ol > li { border:0; background:transparent; border-radius:0; padding:0; margin:.35rem 0; counter-increment:none; }


.article-content ol ol > li::before, .prose ol ol > li::before, .post-content ol ol > li::before, .cms-pc-std__content ol ol > li::before { content:none; }


/* Hotfix 2026-05-08 — pc-std heading spacing consistency */
.cms-pc-std__content :is(h2,h3,h4) { margin-top: 22px; }


.cms-pc-std__content h2 { margin-top: 22px; }


.cms-pc-std__content h3 { margin-top: 22px; }


.cms-pc-std__content h4 { margin-top: 22px; }


/* Hotfix 2026-05-08d — section-focus icon/title vertical alignment */
.cms-content-sf__head-row {
  align-items: center !important;
}


.cms-content-sf__title,
.cms-content-sf__head-row h3 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  align-self: center;
}


/* Hotfix 2026-05-08e — consent video embed sizing */
.cms-content-video__embed.cms-consent-embed {
  position: relative;
  height: 0 !important;
  min-height: 0 !important;
  padding-bottom: 56.25% !important;
  overflow: hidden;
}


.cms-content-video__embed .cms-consent-embed__placeholder,
.cms-content-video__embed .cms-content-video__placeholder {
  position: absolute;
  inset: 0;
  min-height: 0 !important;
}


.cms-content-video__thumb {
  position: absolute !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  margin: 0 !important;
  border-radius: 0 !important;
  opacity: .72;
  filter: saturate(1.05) contrast(1.02);
}


.cms-content-video__placeholder::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0, 0, 0, .58), rgba(0, 0, 0, .26));
  pointer-events: none;
}


.cms-content-video__placeholder .cms-consent-embed__panel {
  position: relative;
  z-index: 1;
}


.cms-content-video__embed iframe,
.cms-content-video__embed iframe.cms-consent-frame--fill,
.cms-content-video__embed iframe.cms-consent-frame--cover {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
  display: block;
}


/* Editorial premium components v2 — calculation, scenarios, risks, sources, myths, definitions */
.cms-content-calc,
.cms-content-scen,
.cms-content-risk,
.cms-content-src,
.cms-content-mf,
.cms-content-def {
    position: relative;
    overflow: hidden;
    margin: 42px 0;
    padding: clamp(22px, 4vw, 36px);
    border: 1px solid color-mix(in srgb, var(--color-accent) 16%, var(--color-border));
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--color-bg-alt), color-mix(in srgb, var(--color-accent) 6%, var(--color-bg) 94%));
    box-shadow: var(--shadow, 0 18px 48px rgba(15,23,42,.07));
}


.cms-content-calc::before,
.cms-content-risk::before,
.cms-content-mf::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 6px;
    background: var(--color-accent);
}


.cms-content-calc__eyebrow,
.cms-content-scen__eyebrow,
.cms-content-risk__eyebrow,
.cms-content-src__eyebrow,
.cms-content-mf__eyebrow,
.cms-content-def__eyebrow {
    display: inline-flex;
    width: max-content;
    margin: 0 0 11px;
    padding: 6px 10px;
    border-radius: var(--radius-full, 999px);
    color: var(--color-accent);
    background: color-mix(in srgb, var(--color-accent) 14%, white 86%);
    font: 900 10px/1 var(--font-body);
    letter-spacing: .08em;
    text-transform: uppercase;
}


.cms-content-calc__title,
.cms-content-scen__title,
.cms-content-risk__title,
.cms-content-src__title,
.cms-content-mf__title,
.cms-content-def__title {
    margin: 0 0 10px;
    color: var(--color-text);
    font-family: var(--font-heading);
    font-size: clamp(23px, 2.8vw, 34px);
    font-weight: 850;
    line-height: 1.1;
    letter-spacing: -.025em;
}


.cms-content-scen__intro,
.cms-content-risk__intro,
.cms-content-src__intro {
    max-width: 760px;
    margin: 0;
    color: var(--color-text-muted);
    font: 400 14px/1.68 var(--font-body);
}


.cms-content-calc__formula {
    margin: 20px 0 0;
    padding: 18px 20px;
    border-radius: var(--radius-md, 18px);
    color: var(--color-text);
    background: var(--color-bg);
    font: 800 clamp(18px, 2.2vw, 26px)/1.35 var(--font-heading);
    box-shadow: 0 12px 28px rgba(15,23,42,.055);
}


.cms-content-calc__vars {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 18px 0 0;
}


.cms-content-calc__var {
    margin: 0;
    padding: 14px;
    border-radius: var(--radius-md, 16px);
    background: color-mix(in srgb, var(--color-bg) 84%, white 16%);
}


.cms-content-calc__var dt {
    margin: 0 0 4px;
    color: var(--color-accent);
    font: 900 11px/1.2 var(--font-body);
    letter-spacing: .05em;
    text-transform: uppercase;
}


.cms-content-calc__var dd,
.cms-content-calc__example,
.cms-content-calc__note {
    margin: 0;
    color: var(--color-text-muted);
    font: 400 14px/1.65 var(--font-body);
}


.cms-content-calc__example {
    margin-top: 18px;
    color: var(--color-text);
}


.cms-content-calc__note {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px dashed color-mix(in srgb, var(--color-accent) 28%, var(--color-border));
}


.cms-content-scen__grid,
.cms-content-risk__grid,
.cms-content-mf__grid,
.cms-content-def__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 24px;
}


.cms-content-scen__card,
.cms-content-risk__card,
.cms-content-mf__card,
.cms-content-def__card {
    padding: 18px;
    border: 1px solid color-mix(in srgb, var(--color-border) 78%, var(--color-accent) 22%);
    border-radius: var(--radius-md, 18px);
    background: var(--color-bg);
    box-shadow: 0 12px 28px rgba(15,23,42,.05);
}


.cms-content-scen__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-bottom: 12px;
    border-radius: 999px;
    color: #fff;
    background: var(--color-accent);
    font: 900 11px/1 var(--font-body);
}


.cms-content-scen__card-title,
.cms-content-risk__risk,
.cms-content-def__term {
    margin: 0 0 8px !important;
    color: var(--color-text);
    font: 800 17px/1.25 var(--font-heading);
}


.cms-content-scen__context,
.cms-content-scen__line,
.cms-content-scen__warning,
.cms-content-risk__card p,
.cms-content-def__card p {
    margin: 0 0 9px;
    color: var(--color-text-muted);
    font: 400 14px/1.58 var(--font-body);
}


.cms-content-scen__line strong,
.cms-content-risk__card strong {
    color: var(--color-text);
}


.cms-content-scen__warning {
    margin: 12px 0 0;
    padding: 10px 12px;
    border-radius: var(--radius-md, 14px);
    color: color-mix(in srgb, var(--color-warning, #f59e0b) 72%, #0f172a 28%);
    background: color-mix(in srgb, var(--color-warning, #f59e0b) 12%, white 88%);
    font-weight: 650;
}


.cms-content-risk__top {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 10px;
}


.cms-content-risk__level {
    flex: 0 0 auto;
    padding: 6px 8px;
    border-radius: 999px;
    color: #fff;
    background: var(--color-accent);
    font: 900 10px/1 var(--font-body);
    letter-spacing: .05em;
    text-transform: uppercase;
}


.cms-content-risk__card--high .cms-content-risk__level { background: var(--color-danger, #ef4444); }


.cms-content-risk__card--medium .cms-content-risk__level { background: var(--color-warning, #f59e0b); }


.cms-content-risk__card--low .cms-content-risk__level { background: var(--color-success, #10b981); }


.cms-content-src {
    background: var(--color-bg-alt);
}


.cms-content-src__list {
    display: grid;
    gap: 10px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}


.cms-content-src__item {
    display: grid;
    grid-template-columns: minmax(180px, .45fr) minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    margin: 0;
    padding: 14px 16px;
    border-radius: var(--radius-md, 16px);
    color: var(--color-text-muted);
    background: var(--color-bg);
}


.cms-content-src__item strong {
    display: block;
    color: var(--color-text);
    font: 800 14px/1.25 var(--font-heading);
}


.cms-content-src__item span,
.cms-content-src__item small {
    color: var(--color-text-muted);
    font: 700 11px/1.35 var(--font-body);
    text-transform: uppercase;
    letter-spacing: .05em;
}


.cms-content-src__item p {
    margin: 0;
    font: 400 14px/1.55 var(--font-body);
}


.cms-content-src__item a {
    color: var(--color-accent);
    font-weight: 850;
}


.cms-content-mf__grid {
    grid-template-columns: 1fr;
}


.cms-content-mf__card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
    gap: 14px;
}


.cms-content-mf__myth,
.cms-content-mf__fact,
.cms-content-mf__impact {
    margin: 0;
    color: var(--color-text-muted);
    font: 400 14px/1.6 var(--font-body);
}


.cms-content-mf__myth,
.cms-content-mf__fact {
    padding: 14px;
    border-radius: var(--radius-md, 16px);
}


.cms-content-mf__myth {
    background: color-mix(in srgb, var(--color-danger, #ef4444) 8%, var(--color-bg) 92%);
}


.cms-content-mf__fact {
    background: color-mix(in srgb, var(--color-success, #10b981) 9%, var(--color-bg) 91%);
}


.cms-content-mf__myth span,
.cms-content-mf__fact span {
    display: block;
    margin-bottom: 6px;
    color: var(--color-text);
    font: 900 11px/1 var(--font-body);
    letter-spacing: .06em;
    text-transform: uppercase;
}


.cms-content-mf__impact {
    grid-column: 1 / -1;
    padding-top: 2px;
    color: var(--color-text);
    font-weight: 650;
}


.cms-content-def__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}


.cms-content-def__term {
    color: var(--color-accent);
}


.cms-content-def__card small {
    display: block;
    margin-top: 8px;
    color: var(--color-text-muted);
    font: 700 12px/1.45 var(--font-body);
}


/* Editorial premium components v2 responsive */
@media (max-width: 820px) {
    .cms-content-ds__grid,
    .cms-content-pp__grid,
    .cms-content-clp,
    .cms-content-tool__grid,
    .cms-content-calc__vars,
    .cms-content-scen__grid,
    .cms-content-risk__grid,
    .cms-content-mf__card,
    .cms-content-def__grid,
    .cms-content-src__item {
        grid-template-columns: 1fr;
    }}


/* Section focus keeps native bullet lists readable inside transformed case cards. */
.cms-content-sf__content ul { list-style: disc; padding-left: 1.25rem !important; margin: .65rem 0 .9rem; }


.cms-content-sf__content ul li { list-style: disc; padding-left: 0; margin: .35rem 0; }


.cms-content-sf__content ol { margin: .65rem 0 .9rem; }


/* Formula highlight — auto-emphasis for calculation paragraphs in article flow */
.post-content p.cms-formula-highlight,
.article-content p.cms-formula-highlight,
.cms-pc-std__content p.cms-formula-highlight {
    position: relative;
    margin: 1rem 0 1.1rem;
    padding: .85rem 1rem .85rem 1.1rem;
    border-left: 4px solid var(--color-accent, var(--cms-accent, #D97706));
    border-radius: 0 var(--radius-md, 12px) var(--radius-md, 12px) 0;
    background: color-mix(in srgb, var(--color-bg-alt, #F8FAFC) 78%, white 22%);
    color: var(--color-text, #1e293b);
    font-weight: 600;
    line-height: 1.62;
}


/* Decision strip harmonization 2026-05-18 */
.cms-content-ds--image_list {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}


.cms-content-ds--image_list .cms-content-ds__eyebrow,
.cms-content-ds--grid_image_card .cms-content-ds__eyebrow {
    display: none;
}


.cms-content-ds--grid_image_card {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}


.cms-content-ds--image_list .cms-content-ds__grid { grid-template-columns: 1fr; }


.cms-content-ds--image_list .cms-content-ds__card {
    display: grid;
    grid-template-columns: minmax(220px, 42%) 1fr;
    align-items: center;
    gap: 24px;
    padding: 14px;
    background: var(--color-bg-alt);
    border-color: color-mix(in srgb, var(--color-accent) 12%, var(--color-border));
}


.cms-content-ds--grid_image_card .cms-content-ds__card:not(.cms-content-ds__card--image) {
    background: var(--color-bg-alt);
    border-color: color-mix(in srgb, var(--color-accent) 12%, var(--color-border));
}


.cms-content-ds__body { display: flex; flex-direction: column; }


.cms-content-ds--image_list .cms-content-ds__num { margin-bottom: 10px; }


.cms-content-ds--image_list .cms-content-ds__card-title { margin: 0 0 12px; }


.cms-content-ds--image_list .cms-content-ds__text { margin: 0; }


.cms-content-ds--image_list .cms-content-ds__image {
    min-height: 190px;
    max-height: 240px;
}


@media (max-width: 820px) {
    .cms-content-ds--image_list .cms-content-ds__card { grid-template-columns: 1fr; }}


/* PRE_LIGHT_STYLE_V1 */
.post-content pre,
.article-content pre,
.prose pre {
  margin: 18px 0;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #475569;
  font-family: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-x: auto;
}


.post-content pre code,
.article-content pre code,
.prose pre code {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background: transparent;
  padding: 0;
}


/* ICG_FULLWIDTH_OVER_2_V1 */
.cms-content-icg--cols-1 .cms-content-icg__grid {
  grid-template-columns: 1fr !important;
}


/* Editorial synthesis components 2026-05-22 */
.cms-content-info,
.cms-content-cpanel,
.cms-content-stat {
  margin: clamp(24px, 4vw, 42px) 0;
  padding: clamp(20px, 3vw, 30px);
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 14%, var(--color-border, #e5e7eb));
  border-radius: var(--radius-lg, 22px);
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0f766e) 10%, transparent), transparent 42%),
    var(--color-bg-alt, #f8fafc);
  box-shadow: 0 18px 46px rgba(15, 23, 42, .07);
}


.cms-content-info__head,
.cms-content-cpanel__head,
.cms-content-stat__head {
  max-width: 760px;
  margin-bottom: 18px;
}


.cms-content-info__eyebrow,
.cms-content-cpanel__eyebrow,
.cms-content-stat__eyebrow {
  display: inline-flex;
  margin-bottom: 8px;
  color: var(--color-accent, #0f766e);
  font: 900 11px/1 var(--font-body);
  letter-spacing: .08em;
  text-transform: uppercase;
}


.cms-content-info__title,
.cms-content-cpanel__title,
.cms-content-stat__title {
  margin: 0 !important;
  color: var(--color-text, #0f172a);
  font: 600 clamp(22px, 3vw, 32px)/1.08 var(--font-heading);
}


.cms-content-info__intro,
.cms-content-cpanel__intro,
.cms-content-stat__intro {
  margin: 10px 0 0;
  color: var(--color-text-muted, #64748b);
  font: 400 15px/1.65 var(--font-body);
}


.cms-content-info__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}


.cms-content-info--cols-2 .cms-content-info__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }


.cms-content-info--cols-4 .cms-content-info__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }


.cms-content-info__card {
  position: relative;
  overflow: hidden;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 10%, var(--color-border, #e5e7eb));
  border-radius: var(--radius-md, 16px);
  background: color-mix(in srgb, var(--color-bg, #fff) 88%, var(--color-accent, #0f766e) 4%);
}


.cms-content-info__img {
  display: block;
  width: calc(100% + 32px) !important;
  max-width: none !important;
  height: 150px !important;
  margin: -16px -16px 14px !important;
  object-fit: cover;
  border-radius: var(--radius-md, 16px) var(--radius-md, 16px) 0 0;
}


.cms-content-info__top,
.cms-content-cpanel__line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}


.cms-content-info__icon,
.cms-content-cpanel__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  color: var(--color-accent, #0f766e);
  background: color-mix(in srgb, var(--color-accent, #0f766e) 12%, var(--color-bg, #fff));
}


.cms-content-info__icon svg,
.cms-content-cpanel__icon svg {
  width: 17px;
  height: 17px;
}


.cms-content-info__badge,
.cms-content-cpanel__tag {
  padding: 6px 9px;
  border-radius: 999px;
  color: var(--color-text, #0f172a);
  background: color-mix(in srgb, var(--color-accent, #0f766e) 10%, var(--color-bg, #fff));
  font: 850 10px/1 var(--font-body);
  letter-spacing: .04em;
  text-transform: uppercase;
}


.cms-content-info__item-title,
.cms-content-cpanel__label {
  margin: 12px 0 7px !important;
  color: var(--color-text, #0f172a);
  font: 850 17px/1.22 var(--font-heading);
}


.cms-content-info__text,
.cms-content-cpanel__note,
.cms-content-cpanel__value {
  margin: 0;
  color: var(--color-text-muted, #64748b);
  font: 400 14px/1.58 var(--font-body);
}


.cms-content-cpanel__list {
  display: grid;
  gap: 10px;
}


.cms-content-cpanel__row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 14px;
  border-radius: var(--radius-md, 16px);
  background: var(--color-bg, #fff);
}


.cms-content-cpanel__label {
  margin: 0 !important;
}


.cms-content-cpanel__value {
  margin-top: 8px;
  color: var(--color-text, #0f172a);
  font-weight: 750;
}


.cms-content-cpanel__note {
  margin-top: 5px;
}


.cms-content-stat {
  display: grid;
  grid-template-columns: minmax(220px, .75fr) minmax(0, 1.25fr);
  gap: clamp(18px, 3vw, 28px);
  align-items: stretch;
}


.cms-content-stat--media-right {
  grid-template-columns: minmax(0, 1.25fr) minmax(220px, .75fr);
}


.cms-content-stat--media-right .cms-content-stat__media {
  order: 2;
}


.cms-content-stat--grid {
  display: block;
}


.cms-content-stat--grid .cms-content-stat__head {
  max-width: 880px;
}


.cms-content-stat--grid.cms-content-stat--cols-1 .cms-content-stat__grid {
  grid-template-columns: 1fr;
}


.cms-content-stat--grid.cms-content-stat--cols-1 .cms-content-stat__card {
  display: grid;
  grid-template-columns: minmax(130px, .28fr) minmax(0, .34fr) minmax(0, .7fr);
  gap: 16px;
  align-items: center;
  padding: clamp(18px, 3vw, 24px);
}


.cms-content-stat__media {
  margin: 0;
  overflow: hidden;
  min-height: 240px;
  border-radius: var(--radius-lg, 22px);
}


.cms-content-stat__media img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  margin: 0 !important;
}


.cms-content-stat__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}


.cms-content-stat__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}


.cms-content-stat--cols-1 .cms-content-stat__grid { grid-template-columns: 1fr; }


.cms-content-stat--cols-3 .cms-content-stat__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }


.cms-content-stat--cols-4 .cms-content-stat__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }


.cms-content-stat__card {
  padding: 16px;
  border-radius: var(--radius-md, 16px);
  background: var(--color-bg, #fff);
}


.cms-content-stat__value {
  display: block;
  color: var(--color-accent, #0f766e);
  font: 900 clamp(24px, 3vw, 34px)/.98 var(--font-heading);
  letter-spacing: -.035em;
}


.cms-content-stat__value--long {
  font-size: clamp(21px, 2.4vw, 28px);
  letter-spacing: -.025em;
}


.cms-content-stat__label {
  display: block;
  margin-top: 7px;
  color: var(--color-text, #0f172a);
  font: 850 14px/1.25 var(--font-heading);
}


.cms-content-stat__detail {
  margin: 8px 0 0;
  color: var(--color-text-muted, #64748b);
  font: 400 13px/1.5 var(--font-body);
}


@media (max-width: 900px) {
  .cms-content-info__grid,
  .cms-content-info--cols-2 .cms-content-info__grid,
  .cms-content-info--cols-4 .cms-content-info__grid,
  .cms-content-stat,
  .cms-content-stat--media-right,
  .cms-content-stat__grid,
  .cms-content-stat--cols-3 .cms-content-stat__grid,
  .cms-content-stat--cols-4 .cms-content-stat__grid {
    grid-template-columns: 1fr;
  }
  .cms-content-stat--media-right .cms-content-stat__media {
    order: 0;
  }
  .cms-content-stat--grid.cms-content-stat--cols-1 .cms-content-stat__card {
    grid-template-columns: 1fr;
    gap: 8px;
  }}


/* ARTICLE_COMPONENT_COMPACT_20260522
   Keeps writer enrichment blocks useful without overpowering article text. */
.cms-pc-std__content :is(
  .cms-content-sum,
  .cms-content-faq,
  .cms-content-clp,
  .cms-content-scen,
  .cms-content-src,
  .cms-content-af,
  .cms-content-info,
  .cms-content-cpanel,
  .cms-content-stat,
  .cms-content-mc,
  .cms-content-cg,
  .cms-content-ds,
  .cms-content-pp,
  .cms-content-table,
  .cms-inline-accent
) {
  margin-top: 24px;
  margin-bottom: 24px;
}


.cms-pc-std__content :is(.cms-content-sum, .cms-content-faq, .cms-content-clp, .cms-content-scen, .cms-content-src, .cms-content-info, .cms-content-cpanel, .cms-content-stat) {
  padding: clamp(16px, 2.2vw, 22px);
}


.cms-pc-std__content :is(.cms-content-af__shell, .cms-content-mc__shell, .cms-content-cg__shell) {
  padding: 16px 0 16px 16px;
}


.cms-pc-std__content :is(.cms-content-sum__list, .cms-content-clp__list, .cms-content-src__list, .cms-content-cpanel__list) {
  gap: 7px;
}


.cms-pc-std__content :is(.cms-content-scen__grid, .cms-content-af__list, .cms-content-info__grid, .cms-content-stat__grid, .cms-content-mc__grid, .cms-content-cg__grid, .cms-content-ds__grid, .cms-content-pp__grid) {
  gap: 10px;
}


.cms-pc-std__content :is(.cms-content-scen__card, .cms-content-af__item, .cms-content-info__card, .cms-content-stat__card, .cms-content-mc__card, .cms-content-cg__card, .cms-content-ds__card, .cms-content-pp__card) {
  padding: 13px 14px;
}


.cms-pc-std__content :is(.cms-content-sum__eyebrow, .cms-content-faq__eyebrow, .cms-content-clp__eyebrow, .cms-content-scen__eyebrow, .cms-content-src__eyebrow, .cms-content-af__eyebrow, .cms-content-info__eyebrow, .cms-content-cpanel__eyebrow, .cms-content-stat__eyebrow, .cms-content-mc__eyebrow, .cms-content-cg__eyebrow, .cms-content-ds__eyebrow, .cms-content-pp__eyebrow) {
  margin-bottom: 8px;
  font-size: 10px;
  line-height: 1.2;
}


.cms-pc-std__content :is(.cms-content-clp__title, .cms-content-scen__title, .cms-content-src__title, .cms-content-af__title, .cms-content-info__title, .cms-content-cpanel__title, .cms-content-stat__title, .cms-content-mc__title, .cms-content-cg__title, .cms-content-ds__title, .cms-content-pp__title) {
  font-size: clamp(18px, 2.25vw, 24px);
  line-height: 1.16;
}


.cms-pc-std__content :is(.cms-content-clp__intro, .cms-content-scen__intro, .cms-content-src__intro, .cms-content-af__intro, .cms-content-info__intro, .cms-content-cpanel__intro, .cms-content-stat__intro, .cms-content-mc__intro, .cms-content-cg__intro, .cms-content-pp__intro) {
  margin-top: 8px;
  font-size: 13.5px;
  line-height: 1.55;
}


.cms-pc-std__content :is(.cms-content-sum__item, .cms-content-clp__item, .cms-content-src__item, .cms-content-faq__answer-inner, .cms-content-scen__context, .cms-content-scen__line, .cms-content-scen__warning, .cms-content-af__note, .cms-content-info__text, .cms-content-cpanel__note, .cms-content-cpanel__value, .cms-content-mc__v, .cms-content-cg__question, .cms-content-cg__impact, .cms-content-ds__text, .cms-content-pp__text) {
  font-size: 13.25px;
  line-height: 1.52;
}


.cms-pc-std__content :is(.cms-content-faq__trigger) {
  padding: 11px 0;
}


.cms-pc-std__content :is(.cms-content-faq__question, .cms-content-scen__card-title, .cms-content-af__label, .cms-content-info__item-title, .cms-content-cpanel__label, .cms-content-mc__label, .cms-content-cg__label, .cms-content-ds__card-title, .cms-content-pp__label) {
  font-size: 15px;
  line-height: 1.3;
}


.cms-pc-std__content .cms-inline-accent {
  padding: 14px 16px;
}


.cms-pc-std__content .cms-inline-accent__content {
  font-size: 13.5px;
  line-height: 1.55;
}


.cms-pc-std__content .cms-content-table__table :is(th, td) {
  padding: 10px 13px;
  font-size: 13px;
}


@media (max-width: 768px) {
  .cms-pc-std__content :is(.cms-content-sum, .cms-content-faq, .cms-content-clp, .cms-content-scen, .cms-content-src, .cms-content-info, .cms-content-cpanel, .cms-content-stat) {
    padding: 15px;
  }}


/* ARTICLE_COMPONENT_COMPACT_FINAL_20260522: final cascade pass for compact writer components */
.cms-pc-std__content :is(.cms-content-sum,.cms-content-faq,.cms-content-clp,.cms-content-scen,.cms-content-src,.cms-content-af,.cms-content-info,.cms-content-cpanel,.cms-content-stat,.cms-content-mc,.cms-content-cg,.cms-content-ds,.cms-content-pp,.cms-content-table,.cms-inline-accent){margin-top:24px;margin-bottom:24px}


.cms-pc-std__content :is(.cms-content-sum,.cms-content-faq,.cms-content-clp,.cms-content-scen,.cms-content-src,.cms-content-info,.cms-content-cpanel,.cms-content-stat){padding:clamp(16px,2.2vw,22px)}


.cms-pc-std__content :is(.cms-content-af__shell,.cms-content-mc__shell,.cms-content-cg__shell){padding:16px 0 16px 16px}


.cms-pc-std__content :is(.cms-content-sum__list,.cms-content-clp__list,.cms-content-src__list,.cms-content-cpanel__list){gap:7px}


.cms-pc-std__content :is(.cms-content-scen__grid,.cms-content-af__list,.cms-content-info__grid,.cms-content-stat__grid,.cms-content-mc__grid,.cms-content-cg__grid,.cms-content-ds__grid,.cms-content-pp__grid){gap:10px}


.cms-pc-std__content :is(.cms-content-scen__card,.cms-content-af__item,.cms-content-info__card,.cms-content-stat__card,.cms-content-mc__card,.cms-content-cg__card,.cms-content-ds__card,.cms-content-pp__card){padding:13px 14px}


.cms-pc-std__content :is(.cms-content-sum__eyebrow,.cms-content-faq__eyebrow,.cms-content-clp__eyebrow,.cms-content-scen__eyebrow,.cms-content-src__eyebrow,.cms-content-af__eyebrow,.cms-content-info__eyebrow,.cms-content-cpanel__eyebrow,.cms-content-stat__eyebrow,.cms-content-mc__eyebrow,.cms-content-cg__eyebrow,.cms-content-ds__eyebrow,.cms-content-pp__eyebrow){margin-bottom:8px;font-size:10px;line-height:1.2}


.cms-pc-std__content :is(.cms-content-clp__title,.cms-content-scen__title,.cms-content-src__title,.cms-content-af__title,.cms-content-info__title,.cms-content-cpanel__title,.cms-content-stat__title,.cms-content-mc__title,.cms-content-cg__title,.cms-content-ds__title,.cms-content-pp__title){font-size:clamp(18px,2.25vw,24px);line-height:1.16}


.cms-pc-std__content :is(.cms-content-clp__intro,.cms-content-scen__intro,.cms-content-src__intro,.cms-content-af__intro,.cms-content-info__intro,.cms-content-cpanel__intro,.cms-content-stat__intro,.cms-content-mc__intro,.cms-content-cg__intro,.cms-content-pp__intro){margin-top:8px;font-size:13.5px;line-height:1.55}


.cms-pc-std__content :is(.cms-content-sum__item,.cms-content-clp__item,.cms-content-src__item,.cms-content-faq__answer-inner,.cms-content-scen__context,.cms-content-scen__line,.cms-content-scen__warning,.cms-content-af__note,.cms-content-info__text,.cms-content-cpanel__note,.cms-content-cpanel__value,.cms-content-mc__v,.cms-content-cg__question,.cms-content-cg__impact,.cms-content-ds__text,.cms-content-pp__text){font-size:13.25px;line-height:1.52}


.cms-pc-std__content .cms-content-faq__trigger{padding:11px 0}


.cms-pc-std__content :is(.cms-content-faq__question,.cms-content-scen__card-title,.cms-content-af__label,.cms-content-info__item-title,.cms-content-cpanel__label,.cms-content-mc__label,.cms-content-cg__label,.cms-content-ds__card-title,.cms-content-pp__label){font-size:15px;line-height:1.3}


.cms-pc-std__content .cms-inline-accent{padding:14px 16px}


.cms-pc-std__content .cms-inline-accent__content{font-size:13.5px;line-height:1.55}


.cms-pc-std__content .cms-content-table__table :is(th,td){padding:10px 13px;font-size:13px}


/* RAW_ARTICLE_TABLE_READING_PASS_20260529: native article tables keep a compact, readable card style after CSS restores. */
.cms-pc-std__content table:not(.cms-content-table__table),
.article-content table:not(.cms-content-table__table),
.prose table:not(.cms-content-table__table),
.post-content table:not(.cms-content-table__table) {
  margin: 22px 0 !important;
  border: 1px solid color-mix(in srgb, var(--color-border, #e5e7eb) 88%, var(--color-accent, #0f766e) 12%) !important;
  border-radius: 16px !important;
  border-spacing: 0 !important;
  border-collapse: separate !important;
  background: var(--color-bg, #fff) !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .055) !important;
  scrollbar-color: color-mix(in srgb, var(--color-accent, #0f766e) 48%, #94a3b8 52%) transparent !important;
}


.cms-pc-std__content table:not(.cms-content-table__table)::-webkit-scrollbar,
.article-content table:not(.cms-content-table__table)::-webkit-scrollbar,
.prose table:not(.cms-content-table__table)::-webkit-scrollbar,
.post-content table:not(.cms-content-table__table)::-webkit-scrollbar {
  height: 9px;
}


.cms-pc-std__content table:not(.cms-content-table__table)::-webkit-scrollbar-thumb,
.article-content table:not(.cms-content-table__table)::-webkit-scrollbar-thumb,
.prose table:not(.cms-content-table__table)::-webkit-scrollbar-thumb,
.post-content table:not(.cms-content-table__table)::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: color-mix(in srgb, var(--color-accent, #0f766e) 52%, #94a3b8 48%);
  background-clip: padding-box;
}


.cms-pc-std__content table:not(.cms-content-table__table) :is(th, td),
.article-content table:not(.cms-content-table__table) :is(th, td),
.prose table:not(.cms-content-table__table) :is(th, td),
.post-content table:not(.cms-content-table__table) :is(th, td) {
  padding: 10px 13px !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  border-right: 1px solid color-mix(in srgb, var(--color-border, #e5e7eb) 74%, transparent) !important;
  border-bottom: 1px solid color-mix(in srgb, var(--color-border, #e5e7eb) 82%, transparent) !important;
  vertical-align: top !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) th,
.article-content table:not(.cms-content-table__table) th,
.prose table:not(.cms-content-table__table) th,
.post-content table:not(.cms-content-table__table) th {
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  font: 700 12px/1.35 var(--font-heading, inherit) !important;
  letter-spacing: .01em !important;
  color: #fff !important;
  background: color-mix(in srgb, var(--color-accent, #0f766e) 88%, #0f172a 12%) !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) td,
.article-content table:not(.cms-content-table__table) td,
.prose table:not(.cms-content-table__table) td,
.post-content table:not(.cms-content-table__table) td {
  color: var(--color-text, #111827) !important;
  background: var(--color-bg, #fff) !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) tbody tr:nth-child(even) td,
.article-content table:not(.cms-content-table__table) tbody tr:nth-child(even) td,
.prose table:not(.cms-content-table__table) tbody tr:nth-child(even) td,
.post-content table:not(.cms-content-table__table) tbody tr:nth-child(even) td {
  background: color-mix(in srgb, var(--color-bg-alt, #f8fafc) 72%, var(--color-bg, #fff) 28%) !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) :is(th, td):last-child,
.article-content table:not(.cms-content-table__table) :is(th, td):last-child,
.prose table:not(.cms-content-table__table) :is(th, td):last-child,
.post-content table:not(.cms-content-table__table) :is(th, td):last-child {
  border-right: none !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) tr:last-child td,
.article-content table:not(.cms-content-table__table) tr:last-child td,
.prose table:not(.cms-content-table__table) tr:last-child td,
.post-content table:not(.cms-content-table__table) tr:last-child td {
  border-bottom: none !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) :is(th, td):first-child,
.article-content table:not(.cms-content-table__table) :is(th, td):first-child,
.prose table:not(.cms-content-table__table) :is(th, td):first-child,
.post-content table:not(.cms-content-table__table) :is(th, td):first-child {
  position: sticky !important;
  left: 0 !important;
  z-index: 2 !important;
  width: 30% !important;
  min-width: 178px !important;
  max-width: 260px !important;
  overflow-wrap: normal !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) th:first-child,
.article-content table:not(.cms-content-table__table) th:first-child,
.prose table:not(.cms-content-table__table) th:first-child,
.post-content table:not(.cms-content-table__table) th:first-child {
  z-index: 4 !important;
  background: color-mix(in srgb, var(--color-accent, #0f766e) 78%, #020617 22%) !important;
}


.cms-pc-std__content table:not(.cms-content-table__table) td:first-child,
.article-content table:not(.cms-content-table__table) td:first-child,
.prose table:not(.cms-content-table__table) td:first-child,
.post-content table:not(.cms-content-table__table) td:first-child {
  font-weight: 650 !important;
  background: color-mix(in srgb, var(--color-bg-alt, #f8fafc) 64%, var(--color-bg, #fff) 36%) !important;
  box-shadow: 1px 0 0 color-mix(in srgb, var(--color-border, #e5e7eb) 82%, transparent) !important;
}


.cms-pc-std__content table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td),
.article-content table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td),
.prose table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td),
.post-content table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td) {
  min-width: 142px !important;
}


.cms-pc-std__content table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td):first-child,
.article-content table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td):first-child,
.prose table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td):first-child,
.post-content table:not(.cms-content-table__table):has(tr > :nth-child(5)) :is(th, td):first-child {
  min-width: 190px !important;
}


@media (max-width: 768px) {
  .cms-pc-std__content table:not(.cms-content-table__table),
  .article-content table:not(.cms-content-table__table),
  .prose table:not(.cms-content-table__table),
  .post-content table:not(.cms-content-table__table) {
    border-radius: 12px !important;
  }
  .cms-pc-std__content table:not(.cms-content-table__table) :is(th, td),
  .article-content table:not(.cms-content-table__table) :is(th, td),
  .prose table:not(.cms-content-table__table) :is(th, td),
  .post-content table:not(.cms-content-table__table) :is(th, td) {
    padding: 9px 11px !important;
    font-size: 12.5px !important;
    line-height: 1.4 !important;
  }
  .cms-pc-std__content table:not(.cms-content-table__table) :is(th, td):first-child,
  .article-content table:not(.cms-content-table__table) :is(th, td):first-child,
  .prose table:not(.cms-content-table__table) :is(th, td):first-child,
  .post-content table:not(.cms-content-table__table) :is(th, td):first-child {
    min-width: 146px !important;
    max-width: 190px !important;
  }}


/* PC_TABLE_SCROLL_NEUTRAL_SHELL_20260529: wrapper only handles scroll; the table owns the visual card. */
.cms-pc-std__content .pc-table-shell {
  margin: 22px 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


.cms-pc-std__content .pc-table-scroll {
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}


.cms-pc-std__content .pc-table-scroll table:not(.cms-content-table__table) {
  margin: 0 !important;
}


/* PC_TABLE_WIDTH_BALANCE_20260529: 2-col native tables must fill the article; sticky first column must stay proportional. */
.cms-pc-std__content .pc-table-shell[data-sticky-first="0"] .pc-table-scroll table:not(.cms-content-table__table) {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  table-layout: auto !important;
}


.cms-pc-std__content .pc-table-shell[data-sticky-first="0"] .pc-table-scroll table:not(.cms-content-table__table) :is(th, td) {
  min-width: 0 !important;
}


.cms-pc-std__content .pc-table-shell[data-cols="4"][data-sticky-first="1"] .pc-table-scroll table:not(.cms-content-table__table) :is(th:first-child, td:first-child) {
  width: auto !important;
  min-width: 132px !important;
  max-width: 190px !important;
}


.cms-pc-std__content .pc-table-shell[data-cols="5"][data-sticky-first="1"] .pc-table-scroll table:not(.cms-content-table__table) :is(th:first-child, td:first-child),
.cms-pc-std__content .pc-table-shell[data-cols="6"][data-sticky-first="1"] .pc-table-scroll table:not(.cms-content-table__table) :is(th:first-child, td:first-child),
.cms-pc-std__content .pc-table-shell[data-density="compact"][data-sticky-first="1"] .pc-table-scroll table:not(.cms-content-table__table) :is(th:first-child, td:first-child) {
  width: auto !important;
  min-width: 146px !important;
  max-width: 220px !important;
}


@media (max-width: 768px) {
  .cms-pc-std__content .pc-table-shell[data-cols="4"][data-sticky-first="1"] .pc-table-scroll table:not(.cms-content-table__table) :is(th:first-child, td:first-child),
  .cms-pc-std__content .pc-table-shell[data-sticky-first="1"] .pc-table-scroll table:not(.cms-content-table__table) :is(th:first-child, td:first-child) {
    min-width: 124px !important;
    max-width: 168px !important;
  }}


@media (max-width:768px) {.cms-pc-std__content :is(.cms-content-sum,.cms-content-faq,.cms-content-clp,.cms-content-scen,.cms-content-src,.cms-content-info,.cms-content-cpanel,.cms-content-stat){padding:15px}}


/* ARTICLE_DETAIL_COMPACT_FINAL_20260522: ol badges and calculation block tuning */
.cms-pc-std__content ol {
  margin: 14px 0 18px !important;
}


.cms-pc-std__content ol > li {
  margin: 7px 0 !important;
  padding: 10px 12px 10px 42px !important;
  line-height: 1.52 !important;
  border-radius: 10px !important;
}


.cms-pc-std__content ol > li::before {
  left: 12px !important;
  top: 10px !important;
  width: 22px !important;
  height: 22px !important;
  font-size: 11px !important;
  box-shadow: 0 5px 12px color-mix(in srgb, var(--color-accent, var(--cms-accent, #D97706)) 22%, transparent) !important;
}


.cms-pc-std__content .cms-content-calc {
  margin: 24px 0 !important;
  padding: 16px 18px !important;
}


.cms-pc-std__content .cms-content-calc__eyebrow {
  margin-bottom: 5px !important;
  font-size: 10px !important;
}


.cms-pc-std__content .cms-content-calc__title {
  margin-top: 0 !important;
  font-size: clamp(18px, 2vw, 23px) !important;
  line-height: 1.16 !important;
}


.cms-pc-std__content .cms-content-calc__formula {
  margin: 12px 0 0 !important;
  padding: 12px 14px !important;
  font-size: clamp(15px, 1.55vw, 19px) !important;
  line-height: 1.38 !important;
}


.cms-pc-std__content .cms-content-calc__example {
  margin-top: 12px !important;
  font-size: 13.25px !important;
  line-height: 1.55 !important;
}


/* ARTICLE_AUDIENCE_FIT_MEDIA_EDGE_20260522 */
.cms-pc-std__content .cms-content-af__shell {
  padding: 0 !important;
}


.cms-pc-std__content .cms-content-af__media {
  flex: 0 0 clamp(280px, 40%, 390px) !important;
  width: clamp(280px, 40%, 390px) !important;
  min-width: 280px !important;
  margin: 0 !important;
}


.cms-pc-std__content .cms-content-af__media img,
.cms-pc-std__content .cms-content-af__media-placeholder {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  object-fit: cover !important;
}


.cms-pc-std__content .cms-content-af__body {
  padding: clamp(18px, 2.6vw, 28px) !important;
}


@media (max-width: 820px) {
  .cms-pc-std__content .cms-content-af__media {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 230px !important;
  }
  .cms-pc-std__content .cms-content-af__media img,
  .cms-pc-std__content .cms-content-af__media-placeholder {
    height: 230px !important;
    min-height: 230px !important;
  }}


/* ARTICLE_AUDIENCE_FIT_DENSITY_20260522 */
.cms-pc-std__content .cms-content-af__list {
  gap: 8px !important;
  margin-top: 14px !important;
}


.cms-pc-std__content .cms-content-af__item {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 10px !important;
  padding-top: 10px !important;
}


.cms-pc-std__content .cms-content-af__index {
  width: 30px !important;
  height: 30px !important;
  font-size: 10px !important;
}


.cms-pc-std__content .cms-content-af__badge {
  margin-bottom: 4px !important;
  padding: 3px 7px !important;
  font-size: 8.5px !important;
}


.cms-pc-std__content .cms-content-af__label {
  margin: 0 !important;
  line-height: 1.22 !important;
}


.cms-pc-std__content .cms-content-af__note {
  margin-top: 5px !important;
  line-height: 1.45 !important;
}


/* ARTICLE_CHECKLIST_BOTTOM_TIGHTEN_20260522 */
.cms-pc-std__content .cms-content-clp {
  padding-bottom: 16px !important;
}


.cms-pc-std__content .cms-content-clp__list {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


.cms-pc-std__content .cms-content-clp__item {
  margin-bottom: 0 !important;
}


.cms-pc-std__content .cms-content-clp__item:last-child {
  margin-bottom: 0 !important;
}


/* ARTICLE_EXAMPLE_FOCUS_BASE_20260522: base rendering for image-led examples */
.cms-content-exf {
  display: grid;
  grid-template-columns: minmax(280px, 1.15fr) minmax(260px, .85fr);
  gap: 0;
  overflow: hidden;
  margin: 38px 0;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 16%, var(--color-border, #e2e8f0));
  border-radius: var(--radius-lg, 24px);
  background: linear-gradient(135deg, var(--color-bg, #fff), color-mix(in srgb, var(--color-accent, #0f766e) 6%, var(--color-bg-alt, #f8fafc) 94%));
  box-shadow: var(--shadow, 0 18px 48px rgba(15, 23, 42, .07));
}


.cms-content-exf__media {
  min-height: 330px;
  background: color-mix(in srgb, var(--color-accent, #0f766e) 16%, #111827 84%);
}


.cms-content-exf__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 330px;
  object-fit: cover;
  object-position: center center;
}


.cms-content-exf__body {
  padding: clamp(22px, 3.5vw, 36px);
}


.cms-content-exf__eyebrow {
  display: inline-flex;
  width: max-content;
  margin: 0 0 12px;
  padding: 6px 10px;
  border-radius: var(--radius-full, 999px);
  color: var(--color-accent, #0f766e);
  background: color-mix(in srgb, var(--color-accent, #0f766e) 13%, white 87%);
  font: 900 10px/1 var(--font-body, sans-serif);
  letter-spacing: .08em;
  text-transform: uppercase;
}


.cms-content-exf__title {
  margin: 0 0 12px !important;
  color: var(--color-text, #0f172a);
  font: 850 clamp(22px, 2.5vw, 31px)/1.08 var(--font-heading, sans-serif);
  letter-spacing: -.025em;
}


.cms-content-exf__context,
.cms-content-exf__line,
.cms-content-exf__warning,
.cms-content-exf__list {
  color: var(--color-text-muted, #64748b);
  font: 400 14px/1.62 var(--font-body, sans-serif);
}


.cms-content-exf__context {
  margin: 0 0 16px;
}


.cms-content-exf__line {
  margin: 0 0 11px;
}


.cms-content-exf__line strong {
  color: var(--color-text, #0f172a);
}


.cms-content-exf__list {
  display: grid;
  gap: 8px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}


.cms-content-exf__list li {
  position: relative;
  padding-left: 22px;
}


.cms-content-exf__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .7em;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--color-accent, #0f766e);
}


.cms-content-exf__warning {
  margin: 18px 0 0;
  padding: 12px 14px;
  border-radius: var(--radius-md, 16px);
  color: color-mix(in srgb, var(--color-warning, #f59e0b) 68%, #0f172a 32%);
  background: color-mix(in srgb, var(--color-warning, #f59e0b) 12%, white 88%);
  font-weight: 680;
}


@media (max-width: 820px) {
  .cms-content-exf {
    grid-template-columns: 1fr;
  }
  .cms-content-exf__media,
  .cms-content-exf__media img {
    min-height: 240px;
  }}


/* ARTICLE_EXAMPLE_FOCUS_REBALANCE_20260522 */
.cms-pc-std__content .cms-content-exf {
  grid-template-columns: minmax(220px, .82fr) minmax(0, 1.18fr) !important;
}


.cms-pc-std__content .cms-content-exf__media {
  min-height: 300px !important;
}


.cms-pc-std__content .cms-content-exf__media img {
  min-height: 300px !important;
  margin: 0 !important;
  border-radius: 0 !important;
}


.cms-pc-std__content .cms-content-exf__body {
  padding: clamp(18px, 2.6vw, 28px) !important;
}


.cms-pc-std__content .cms-content-exf__eyebrow {
  margin-bottom: 6px !important;
}


.cms-pc-std__content .cms-content-exf__title {
  margin-bottom: 10px !important;
  font-size: clamp(19px, 2.15vw, 26px) !important;
}


.cms-pc-std__content .cms-content-exf__list {
  list-style: none !important;
}


.cms-pc-std__content .cms-content-exf__list li {
  list-style: none !important;
  padding-left: 18px !important;
}


.cms-pc-std__content .cms-content-exf__list li::marker {
  content: "" !important;
}


.cms-pc-std__content .cms-content-exf__list li::before {
  top: .72em !important;
  width: 6px !important;
  height: 6px !important;
}


.cms-pc-std__content .cms-content-exf__conclusion {
  grid-column: 1 / -1;
  margin: 0;
  padding: 16px 20px;
  border-top: 1px solid color-mix(in srgb, var(--color-warning, #f59e0b) 22%, var(--color-border, #e2e8f0));
  color: color-mix(in srgb, var(--color-warning, #f59e0b) 68%, #0f172a 32%);
  background: color-mix(in srgb, var(--color-warning, #f59e0b) 12%, white 88%);
}


.cms-pc-std__content .cms-content-exf__conclusion-label {
  display: block;
  margin: 0 0 4px;
  font: 900 10px/1.2 var(--font-body, sans-serif);
  letter-spacing: .07em;
  text-transform: uppercase;
}


.cms-pc-std__content .cms-content-exf__conclusion p {
  margin: 0 !important;
  color: inherit !important;
  font: 650 13.25px/1.52 var(--font-body, sans-serif) !important;
}


.cms-content-exf__conclusion {
  grid-column: 1 / -1;
  margin: 0;
  padding: 16px 20px;
  border-top: 1px solid color-mix(in srgb, var(--color-warning, #f59e0b) 22%, var(--color-border, #e2e8f0));
  color: color-mix(in srgb, var(--color-warning, #f59e0b) 68%, #0f172a 32%);
  background: color-mix(in srgb, var(--color-warning, #f59e0b) 12%, white 88%);
}


.cms-content-exf__conclusion-label {
  display: block;
  margin: 0 0 4px;
  font: 900 10px/1.2 var(--font-body, sans-serif);
  letter-spacing: .07em;
  text-transform: uppercase;
}


.cms-content-exf__conclusion p {
  margin: 0 !important;
  color: inherit !important;
  font: 650 13.25px/1.52 var(--font-body, sans-serif) !important;
}


@media (max-width: 820px) {
  .cms-pc-std__content .cms-content-exf {
    grid-template-columns: 1fr !important;
  }
  .cms-pc-std__content .cms-content-exf__media,
  .cms-pc-std__content .cms-content-exf__media img {
    min-height: 230px !important;
  }}


/* ORDERED_LIST_NO_BORDER_20260522 */
.article-content ol > li,
.prose ol > li,
.post-content ol > li,
.cms-pc-std__content ol > li {
  border: none !important;
}


/* ARTICLE_COMPARE_PANEL_DENSITY_20260522 */
.cms-pc-std__content .cms-content-cpanel__value {
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  line-height: 1.45 !important;
}


.cms-pc-std__content .cms-content-cpanel__note {
  margin-top: 3px !important;
}


/* WRITER_COMPONENTS_DEPLOY_20260525: shared writer component harmonization. */
/* WRITER_COMPONENTS_COMPARISON_PANEL_HARMONY_20260522
   Canonical article component chrome: align all Writer blocks on comparison-panel. */
.cms-pc-std__content :is(
  .cms-content-sum,
  .cms-block.cms-faq,
  .cms-content-paa,
  .cms-inline-accent,
  .cms-content-cg__shell,
  .cms-content-pc,
  .pc-shell,
  .cms-content-af__shell,
  .cms-content-exf,
  .cms-content-clp,
  .cms-content-pp,
  .cms-content-ds,
  .cms-content-tool,
  .cms-content-calc,
  .cms-content-scen,
  .cms-content-src,
  .cms-content-mf,
  .cms-content-info,
  .cms-content-cpanel,
  .cms-content-stat,
  .cms-content-icg,
  .cms-content-vb,
  .cms-content-table
) {
  margin: clamp(24px, 4vw, 42px) 0 !important;
  padding: clamp(20px, 3vw, 30px) !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 14%, var(--color-border, #e5e7eb)) !important;
  border-radius: var(--radius-lg, 22px) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0f766e) 10%, transparent), transparent 42%),
    var(--color-bg-alt, #f8fafc) !important;
  box-shadow: 0 18px 46px rgba(15, 23, 42, .07) !important;
  color: var(--color-text, #0f172a) !important;
}


.cms-pc-std__content :is(
  .cms-content-sum__head,
  .cms-content-cg__head,
  .cms-content-pc__head,
  .pc-head,
  .cms-content-af__body,
  .cms-content-exf__body,
  .cms-content-clp__head,
  .cms-content-pp__head,
  .cms-content-ds__head,
  .cms-content-tool__head,
  .cms-content-calc__head,
  .cms-content-scen__head,
  .cms-content-src__head,
  .cms-content-mf__head,
  .cms-content-info__head,
  .cms-content-cpanel__head,
  .cms-content-stat__head,
  .cms-content-icg__head,
  .cms-content-vb__content
) {
  max-width: 760px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}


.cms-pc-std__content :is(
  .cms-content-sum__eyebrow,
  .cms-content-paa__eyebrow,
  .cms-inline-accent__eyebrow,
  .cms-content-cg__eyebrow,
  .cms-content-pc__eyebrow,
  .pc-eyebrow,
  .cms-content-af__eyebrow,
  .cms-content-exf__eyebrow,
  .cms-content-clp__eyebrow,
  .cms-content-pp__eyebrow,
  .cms-content-ds__eyebrow,
  .cms-content-tool__eyebrow,
  .cms-content-calc__eyebrow,
  .cms-content-scen__eyebrow,
  .cms-content-src__eyebrow,
  .cms-content-mf__eyebrow,
  .cms-content-info__eyebrow,
  .cms-content-cpanel__eyebrow,
  .cms-content-stat__eyebrow,
  .cms-content-icg__eyebrow,
  .cms-content-vb__eyebrow
) {
  display: inline-flex !important;
  width: auto !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: var(--color-accent, #0f766e) !important;
  background: transparent !important;
  font: 900 11px/1 var(--font-body, sans-serif) !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}


.cms-pc-std__content :is(
  .cms-content-sum__title,
  .cms-faq__title,
  .cms-content-cg__title,
  .cms-content-pc__title,
  .pc-title,
  .cms-content-af__title,
  .cms-content-exf__title,
  .cms-content-clp__title,
  .cms-content-pp__title,
  .cms-content-ds__title,
  .cms-content-tool__title,
  .cms-content-calc__title,
  .cms-content-scen__title,
  .cms-content-src__title,
  .cms-content-mf__title,
  .cms-content-info__title,
  .cms-content-cpanel__title,
  .cms-content-stat__title,
  .cms-content-icg__title,
  .cms-content-vb__title
) {
  margin: 0 !important;
  color: var(--color-text, #0f172a) !important;
  font: 600 clamp(22px, 3vw, 32px)/1.08 var(--font-heading, sans-serif) !important;
  letter-spacing: 0 !important;
}


.cms-pc-std__content :is(
  .cms-content-sum__intro,
  .cms-content-cg__intro,
  .cms-content-pc__intro,
  .cms-content-af__intro,
  .cms-content-exf__context,
  .cms-content-clp__intro,
  .cms-content-pp__intro,
  .cms-content-ds__intro,
  .cms-content-tool__intro,
  .cms-content-calc__intro,
  .cms-content-scen__intro,
  .cms-content-src__intro,
  .cms-content-mf__intro,
  .cms-content-info__intro,
  .cms-content-cpanel__intro,
  .cms-content-stat__intro,
  .cms-content-icg__intro,
  .cms-content-vb__text
) {
  margin: 10px 0 0 !important;
  color: var(--color-text-muted, #64748b) !important;
  font: 400 15px/1.65 var(--font-body, sans-serif) !important;
}


.cms-pc-std__content :is(
  .cms-inline-accent__content,
  .cms-content-paa .cms-inline-accent__content,
  .cms-faq__answer,
  .cms-faq__answer div[itemprop="text"]
) {
  color: var(--color-text-muted, #64748b) !important;
  font: 400 15px/1.65 var(--font-body, sans-serif) !important;
}


.cms-pc-std__content :is(
  .cms-content-sum__list,
  .cms-faq__list,
  .cms-content-cg__grid,
  .cms-content-pc__grid,
  .pc-grid,
  .cms-content-af__list,
  .cms-content-exf__list,
  .cms-content-clp__list,
  .cms-content-pp__grid,
  .cms-content-ds__grid,
  .cms-content-tool__grid,
  .cms-content-calc__vars,
  .cms-content-scen__grid,
  .cms-content-src__list,
  .cms-content-mf__grid,
  .cms-content-info__grid,
  .cms-content-cpanel__list,
  .cms-content-stat__grid,
  .cms-content-icg__grid
) {
  gap: 10px !important;
}


.cms-pc-std__content :is(
  .cms-content-cg__card,
  .cms-content-pc__col,
  .pc-col,
  .cms-faq__item,
  .cms-content-af__item,
  .cms-content-exf__line,
  .cms-content-clp__item,
  .cms-content-pp__card,
  .cms-content-ds__card,
  .cms-content-tool__field,
  .cms-content-calc__var,
  .cms-content-scen__card,
  .cms-content-src__item,
  .cms-content-mf__card,
  .cms-content-info__card,
  .cms-content-cpanel__row,
  .cms-content-stat__card,
  .cms-content-icg__card
) {
  border: 0 !important;
  border-radius: var(--radius-md, 16px) !important;
  background: var(--color-bg, #fff) !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-content-info__top {
  margin-bottom: 8px !important;
}


/* TOOL_CARD_TUNING_20260522 */
.cms-pc-std__content .cms-content-tool::before {
  display: none !important;
  content: none !important;
}


.cms-pc-std__content .cms-content-tool__field {
  background: transparent !important;
}


.cms-pc-std__content .cms-content-tool__grid {
  row-gap: 18px !important;
  margin-bottom: 22px !important;
}


.cms-pc-std__content .cms-content-tool__actions {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
  padding-top: 2px !important;
}


/* WRITER_COMPONENT_STYLE_V2_20260522: inverted/light component style selected by pipeline */
.cms-pc-std__content :is(
  .cms-content-style-v2.cms-content-cpanel,
  .cms-content-style-v2 .cms-content-cg__shell,
  .cms-content-style-v2.pc-shell,
  .cms-content-style-v2.cms-content-stat,
  .cms-content-style-v2.cms-content-calc,
  .cms-content-style-v2.cms-content-exf,
  .cms-content-style-v2 .cms-content-af__shell,
  .cms-content-style-v2.cms-content-pp,
  .cms-content-style-v2.cms-content-clp,
  .cms-content-style-v2.cms-content-info,
  .cms-content-style-v2.cms-content-icg,
  .cms-content-style-v2.cms-content-src,
  .cms-content-style-v2.cms-content-ds,
  .cms-content-style-v2.cms-content-tool
) {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}


.cms-pc-std__content :is(
  .cms-content-style-v2 .cms-content-cpanel__head,
  .cms-content-style-v2 .cms-content-cg__head,
  .cms-content-style-v2 .pc-head,
  .cms-content-style-v2 .cms-content-stat__head,
  .cms-content-style-v2 .cms-content-clp__head,
  .cms-content-style-v2 .cms-content-info__head,
  .cms-content-style-v2 .cms-content-icg__head,
  .cms-content-style-v2 .cms-content-src__head,
  .cms-content-style-v2 .cms-content-ds__head,
  .cms-content-style-v2 .cms-content-tool__head
) {
  padding: 0 !important;
}


.cms-pc-std__content :is(
  .cms-content-style-v2 .cms-content-cpanel__row,
  .cms-content-style-v2 .cms-content-cg__card,
  .cms-content-style-v2 .pc-col,
  .cms-content-style-v2 .cms-content-stat__card,
  .cms-content-style-v2 .cms-content-calc__formula,
  .cms-content-style-v2 .cms-content-calc__var,
  .cms-content-style-v2 .cms-content-calc__example,
  .cms-content-style-v2 .cms-content-calc__note,
  .cms-content-style-v2 .cms-content-exf__body,
  .cms-content-style-v2 .cms-content-af__body,
  .cms-content-style-v2 .cms-content-pp__card,
  .cms-content-style-v2 .cms-content-clp__item,
  .cms-content-style-v2 .cms-content-info__card,
  .cms-content-style-v2 .cms-content-icg__card,
  .cms-content-style-v2 .cms-content-src__item,
  .cms-content-style-v2 .cms-content-ds__card,
  .cms-content-style-v2 .cms-content-tool__result
) {
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 14%, var(--color-border, #e5e7eb)) !important;
  border-radius: var(--radius-md, 16px) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0f766e) 10%, transparent), transparent 42%),
    var(--color-bg-alt, #f8fafc) !important;
  box-shadow: none !important;
}


.cms-pc-std__content :is(.cms-content-style-v2 .cms-content-exf__media, .cms-content-style-v2 .cms-content-af__media) {
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 14%, var(--color-border, #e5e7eb)) !important;
  border-radius: var(--radius-lg, 22px) !important;
  background: var(--color-bg-alt, #f8fafc) !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-content-style-v2 .cms-content-icg__grid {
  background: transparent !important;
}


.cms-pc-std__content .cms-content-style-v2.cms-content-tool .cms-content-tool__field {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}


.cms-pc-std__content .cms-content-style-v2.cms-content-tool :is(input, select, textarea) {
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 14%, var(--color-border, #e5e7eb)) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0f766e) 8%, transparent), transparent 42%),
    var(--color-bg-alt, #f8fafc) !important;
  box-shadow: none !important;
}


/* FAQ_DIVIDED_SIMPLE_20260522 */
.cms-pc-std__content .cms-block.cms-faq .cms-faq__list {
  gap: 0 !important;
}


.cms-pc-std__content .cms-block.cms-faq .cms-faq__item {
  margin: 0 !important;
  padding: 14px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-border, #e5e7eb) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-block.cms-faq .cms-faq__item:first-child {
  padding-top: 0 !important;
}


.cms-pc-std__content .cms-block.cms-faq .cms-faq__item:last-child {
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}


.cms-pc-std__content .cms-block.cms-faq .cms-faq__question {
  padding: 0 !important;
  background: transparent !important;
}


.cms-pc-std__content .cms-block.cms-faq .cms-faq__answer {
  background: transparent !important;
}


/* LEGACY_FAQ_CARD_CHART_20260529: old cms-block FAQ follows current post component card rhythm. */
.cms-pc-std__content .cms-block.cms-faq,
.post-content .cms-block.cms-faq,
.article-content .cms-block.cms-faq,
.prose .cms-block.cms-faq {
  margin: 32px 0 !important;
  padding: clamp(18px, 2.4vw, 24px) !important;
  border: 1px solid var(--color-border, #e5e7eb) !important;
  border-radius: var(--radius-lg, 16px) !important;
  background: var(--color-bg-alt, #f8fafc) !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-block.cms-faq .cms-faq__title,
.post-content .cms-block.cms-faq .cms-faq__title,
.article-content .cms-block.cms-faq .cms-faq__title,
.prose .cms-block.cms-faq .cms-faq__title {
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--color-accent, #0f766e) !important;
  font: 700 11px/1.2 var(--font-body, sans-serif) !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
}


.cms-pc-std__content .cms-block.cms-faq .cms-faq__list,
.post-content .cms-block.cms-faq .cms-faq__list,
.article-content .cms-block.cms-faq .cms-faq__list,
.prose .cms-block.cms-faq .cms-faq__list {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}


.cms-pc-std__content :is(.cms-content-vb--with-image, .cms-content-vb--dark, .cms-content-vb--accent, .cms-content-ds--dark, .cms-content-ds--accent) {
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0f766e) 10%, transparent), transparent 42%),
    var(--color-bg-alt, #f8fafc) !important;
  color: var(--color-text, #0f172a) !important;
}


.cms-pc-std__content :is(.cms-content-vb--with-image .cms-content-vb__title, .cms-content-vb--with-image .cms-content-vb__text) {
  color: #fff !important;
  text-shadow: 0 2px 14px rgba(0, 0, 0, .34) !important;
}


/* CRITERIA_GRID_MATCH_COMPARE_PANEL_20260522 */
.cms-pc-std__content .cms-content-cg__grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}


.cms-pc-std__content .cms-content-cg__card {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: center !important;
  padding: 14px !important;
  border: 0 !important;
  border-radius: var(--radius-md, 16px) !important;
  background: var(--color-bg, #fff) !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-content-cg__card::before {
  display: none !important;
  content: none !important;
}


.cms-pc-std__content .cms-content-cg__top {
  display: contents !important;
}


.cms-pc-std__content .cms-content-cg__icon {
  grid-column: 1 !important;
  grid-row: 1 / span 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: var(--color-accent, #0f766e) !important;
  background: color-mix(in srgb, var(--color-accent, #0f766e) 12%, var(--color-bg, #fff)) !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-content-cg__icon svg {
  width: 17px !important;
  height: 17px !important;
}


.cms-pc-std__content .cms-content-cg__top > div {
  grid-column: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  min-width: 0 !important;
}


.cms-pc-std__content .cms-content-cg__badge {
  order: 2 !important;
  display: inline-flex !important;
  padding: 6px 9px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: var(--color-text, #0f172a) !important;
  background: color-mix(in srgb, var(--color-accent, #0f766e) 10%, var(--color-bg, #fff)) !important;
  font: 850 10px/1 var(--font-body, sans-serif) !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}


.cms-pc-std__content .cms-content-cg__label {
  order: 1 !important;
  margin: 0 !important;
  color: var(--color-text, #0f172a) !important;
  font: 850 17px/1.22 var(--font-heading, sans-serif) !important;
}


.cms-pc-std__content .cms-content-cg__question,
.cms-pc-std__content .cms-content-cg__impact {
  grid-column: 2 !important;
  margin: 0 !important;
  color: var(--color-text-muted, #64748b) !important;
  font: 400 14px/1.58 var(--font-body, sans-serif) !important;
}


.cms-pc-std__content .cms-content-cg__question {
  margin-top: 8px !important;
  color: var(--color-text, #0f172a) !important;
  font-weight: 750 !important;
}


.cms-pc-std__content .cms-content-cg__impact {
  margin-top: 5px !important;
}


/* CALCULATION_BOX_TUNING_20260522 */
.cms-pc-std__content .cms-content-calc::before {
  display: none !important;
  content: none !important;
}


.cms-pc-std__content .cms-content-calc__formula {
  margin: 14px 0 12px !important;
  padding: 14px 16px !important;
  font-size: clamp(16px, 1.45vw, 19px) !important;
  line-height: 1.28 !important;
}


/* EXAMPLE_FOCUS_COMPACT_REPAIR_20260522 */
.cms-pc-std__content .cms-content-exf {
  grid-template-columns: minmax(220px, .82fr) minmax(0, 1.18fr) !important;
  gap: 18px !important;
  padding: 0 !important;
  overflow: hidden !important;
}


.cms-pc-std__content .cms-content-exf__media {
  min-height: 300px !important;
  margin: 0 !important;
  border-radius: var(--radius-md, 16px) !important;
  overflow: hidden !important;
}


.cms-pc-std__content .cms-content-exf__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 300px !important;
  margin: 0 !important;
  border-radius: var(--radius-md, 16px) !important;
  object-fit: cover !important;
}


.cms-pc-std__content .cms-content-exf__body {
  padding: clamp(18px, 2.6vw, 28px) clamp(20px, 3vw, 30px) clamp(18px, 2.6vw, 28px) 0 !important;
}


.cms-pc-std__content .cms-content-exf__context,
.cms-pc-std__content .cms-content-exf__line,
.cms-pc-std__content .cms-content-exf__list,
.cms-pc-std__content .cms-content-exf__list li {
  font-size: 13.25px !important;
  line-height: 1.5 !important;
}


.cms-pc-std__content .cms-content-exf__context {
  margin-bottom: 10px !important;
}


.cms-pc-std__content .cms-content-exf__line {
  margin-bottom: 7px !important;
  padding: 8px 10px !important;
  border-radius: var(--radius-sm, 10px) !important;
  background: color-mix(in srgb, var(--color-bg, #fff) 72%, transparent) !important;
}


.cms-pc-std__content .cms-content-exf__list {
  gap: 4px !important;
  margin-top: 10px !important;
  padding-left: 4px !important;
}


.cms-pc-std__content .cms-content-exf__list li {
  padding-left: 16px !important;
  margin: 0 !important;
}


.cms-pc-std__content .cms-content-exf__list li::before {
  top: .68em !important;
  width: 5px !important;
  height: 5px !important;
}


@media (max-width: 820px) {
  .cms-pc-std__content .cms-content-exf {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .cms-pc-std__content .cms-content-exf__body {
    padding: 18px !important;
  }}


/* AUDIENCE_FIT_MATCH_EXAMPLE_FOCUS_20260522 */
.cms-pc-std__content .cms-content-af__shell {
  display: grid !important;
  grid-template-columns: minmax(220px, .82fr) minmax(0, 1.18fr) !important;
  gap: 18px !important;
  padding: 0 !important;
  overflow: hidden !important;
}


.cms-pc-std__content .cms-content-af__media {
  width: auto !important;
  min-width: 0 !important;
  min-height: 300px !important;
  margin: 0 !important;
  border-radius: var(--radius-md, 16px) !important;
  overflow: hidden !important;
}


.cms-pc-std__content .cms-content-af__media img,
.cms-pc-std__content .cms-content-af__media-placeholder {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 300px !important;
  margin: 0 !important;
  border-radius: var(--radius-md, 16px) !important;
  object-fit: cover !important;
}


.cms-pc-std__content .cms-content-af__body {
  padding: clamp(18px, 2.6vw, 28px) clamp(20px, 3vw, 30px) clamp(18px, 2.6vw, 28px) 0 !important;
}


.cms-pc-std__content .cms-content-af__intro,
.cms-pc-std__content .cms-content-af__note {
  font-size: 13.25px !important;
  line-height: 1.5 !important;
}


.cms-pc-std__content .cms-content-af__intro {
  margin-top: 10px !important;
}


.cms-pc-std__content .cms-content-af__list {
  gap: 6px !important;
  margin-top: 12px !important;
  padding-left: 4px !important;
}


.cms-pc-std__content .cms-content-af__item {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 8px 10px !important;
  border-top: 0 !important;
  border-radius: var(--radius-sm, 10px) !important;
  background: color-mix(in srgb, var(--color-bg, #fff) 72%, transparent) !important;
}


.cms-pc-std__content .cms-content-af__index {
  align-self: center !important;
  width: 30px !important;
  height: 30px !important;
  font-size: 10px !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-content-af__index :is(svg, img) {
  display: block !important;
  width: 15px !important;
  height: 15px !important;
  object-fit: contain !important;
}


.cms-pc-std__content .cms-content-af__badge {
  margin-bottom: 4px !important;
}


.cms-pc-std__content .cms-content-af__label {
  font-size: 15px !important;
  line-height: 1.28 !important;
}


.cms-pc-std__content .cms-content-af__note {
  margin-top: 4px !important;
}


@media (max-width: 820px) {
  .cms-pc-std__content .cms-content-af__shell {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .cms-pc-std__content .cms-content-af__body {
    padding: 18px !important;
  }}


/* CHECKLIST_STEPS_PANEL_20260522: checklist rendering with numbered steps */
.cms-pc-std__content .cms-content-clp--steps .cms-content-clp__list {
  list-style: none !important;
  counter-reset: none !important;
  gap: 24px !important;
  padding-left: 0 !important;
}


.cms-pc-std__content .cms-content-clp--steps .cms-content-clp__item {
  position: relative !important;
  list-style: none !important;
  counter-increment: none !important;
  padding: 13px 14px !important;
}


.cms-pc-std__content .cms-content-clp--steps .cms-content-clp__item::before {
  content: none !important;
  display: none !important;
}


.cms-pc-std__content .cms-content-clp--steps .cms-content-clp__item::marker {
  content: "" !important;
}


.cms-pc-std__content .cms-content-clp--steps .cms-content-clp__tick {
  font-size: 10px !important;
}


.cms-pc-std__content .cms-content-clp--steps .cms-content-clp__item:not(:last-child)::after {
  content: "↓";
  position: absolute;
  left: 31px;
  bottom: -18px;
  z-index: 2;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: var(--color-accent, #0f766e);
  background: transparent;
  box-shadow: none;
  font: 900 15px/1 var(--font-heading, sans-serif);
  opacity: .95;
  animation: cmsChecklistStepArrow 1.8s ease-in-out infinite;
}


/* IMAGE_CARD_GRID_CAROUSEL_NAV_20260522 */
.cms-pc-std__content .cms-content-icg--carousel {
  position: relative !important;
}


.cms-pc-std__content .cms-content-icg__controls {
  display: flex !important;
  justify-content: center !important;
  gap: 10px !important;
  margin: 20px 0 0 !important;
}


.cms-pc-std__content .cms-content-icg__nav {
  width: 36px !important;
  height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 36%, var(--color-border, #e5e7eb)) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-accent, #0f766e) 92%, #111827 8%), var(--color-accent, #0f766e)) !important;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--color-accent, #0f766e) 22%, transparent) !important;
  cursor: pointer !important;
  font: 0/0 a !important;
  transition: transform .18s ease, border-color .18s ease, background .18s ease !important;
}


.cms-pc-std__content .cms-content-icg__nav::before {
  content: "" !important;
  display: block !important;
  width: 8px !important;
  height: 8px !important;
  border-top: 2px solid currentColor !important;
  border-right: 2px solid currentColor !important;
}


.cms-pc-std__content .cms-content-icg__nav--prev::before {
  transform: translateX(2px) rotate(-135deg) !important;
}


.cms-pc-std__content .cms-content-icg__nav--next::before {
  transform: translateX(-2px) rotate(45deg) !important;
}


.cms-pc-std__content .cms-content-icg__nav:hover {
  transform: translateY(-1px) !important;
  border-color: color-mix(in srgb, var(--color-accent, #0f766e) 62%, var(--color-border, #e5e7eb)) !important;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--color-accent, #0f766e) 82%, #020617 18%), var(--color-accent, #0f766e)) !important;
}


.cms-pc-std__content .cms-content-icg--carousel .cms-content-icg__grid {
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}


.cms-pc-std__content .cms-content-icg--carousel .cms-content-icg__grid::-webkit-scrollbar {
  display: none !important;
}


@media (max-width: 768px) {
  .cms-pc-std__content :is(
    .cms-content-sum,
    .cms-content-faq,
    .cms-content-cg,
    .cms-content-pc,
    .cms-content-af__shell,
    .cms-content-exf,
    .cms-content-clp,
    .cms-content-pp,
    .cms-content-ds,
    .cms-content-tool,
    .cms-content-calc,
    .cms-content-scen,
    .cms-content-src,
    .cms-content-mf,
    .cms-content-info,
    .cms-content-cpanel,
    .cms-content-stat,
    .cms-content-icg,
    .cms-content-vb,
    .cms-content-table
  ) {
    padding: 15px !important;
  }}


/* WRITER_COMPONENTS_COMPACT_TYPE_20260525: slightly smaller component typography on Conseil Assurance. */
.cms-pc-std__content :is(
  .cms-content-sum__title,
  .cms-faq__title,
  .cms-content-cg__title,
  .cms-content-pc__title,
  .pc-title,
  .cms-content-af__title,
  .cms-content-exf__title,
  .cms-content-clp__title,
  .cms-content-pp__title,
  .cms-content-ds__title,
  .cms-content-tool__title,
  .cms-content-calc__title,
  .cms-content-scen__title,
  .cms-content-src__title,
  .cms-content-mf__title,
  .cms-content-info__title,
  .cms-content-cpanel__title,
  .cms-content-stat__title,
  .cms-content-icg__title,
  .cms-content-vb__title
) {
  font-size: clamp(19px, 2.35vw, 27px) !important;
  line-height: 1.12 !important;
}


.cms-pc-std__content :is(
  .cms-content-sum__intro,
  .cms-content-cg__intro,
  .cms-content-pc__intro,
  .cms-content-af__intro,
  .cms-content-exf__context,
  .cms-content-clp__intro,
  .cms-content-pp__intro,
  .cms-content-ds__intro,
  .cms-content-tool__intro,
  .cms-content-calc__intro,
  .cms-content-scen__intro,
  .cms-content-src__intro,
  .cms-content-mf__intro,
  .cms-content-info__intro,
  .cms-content-cpanel__intro,
  .cms-content-stat__intro,
  .cms-content-icg__intro,
  .cms-content-vb__text,
  .cms-inline-accent__content,
  .cms-content-paa .cms-inline-accent__content,
  .cms-faq__answer,
  .cms-faq__answer div[itemprop="text"]
) {
  font-size: 13.75px !important;
  line-height: 1.58 !important;
}


.cms-pc-std__content :is(
  .cms-content-cpanel__value,
  .cms-content-cpanel__note,
  .cms-content-cg__question,
  .cms-content-cg__impact,
  .cms-content-pc__list li,
  .cms-content-exf__context,
  .cms-content-exf__line,
  .cms-content-exf__list,
  .cms-content-exf__list li,
  .cms-content-af__intro,
  .cms-content-af__note,
  .cms-content-info__text,
  .cms-content-icg__text,
  .cms-content-src__text,
  .cms-content-clp__item,
  .cms-content-pp__text,
  .cms-content-ds__text,
  .cms-content-stat__label
) {
  font-size: 13px !important;
  line-height: 1.5 !important;
}


.cms-pc-std__content :is(
  .cms-content-cg__label,
  .cms-content-pc__col-title,
  .cms-content-info__label,
  .cms-content-icg__item-title,
  .cms-content-cpanel__label,
  .cms-content-af__label
) {
  font-size: 15px !important;
  line-height: 1.25 !important;
}


.cms-pc-std__content :is(
  .cms-content-sum__eyebrow,
  .cms-content-paa__eyebrow,
  .cms-inline-accent__eyebrow,
  .cms-content-cg__eyebrow,
  .cms-content-pc__eyebrow,
  .pc-eyebrow,
  .cms-content-af__eyebrow,
  .cms-content-exf__eyebrow,
  .cms-content-clp__eyebrow,
  .cms-content-pp__eyebrow,
  .cms-content-ds__eyebrow,
  .cms-content-tool__eyebrow,
  .cms-content-calc__eyebrow,
  .cms-content-scen__eyebrow,
  .cms-content-src__eyebrow,
  .cms-content-mf__eyebrow,
  .cms-content-info__eyebrow,
  .cms-content-cpanel__eyebrow,
  .cms-content-stat__eyebrow,
  .cms-content-icg__eyebrow,
  .cms-content-vb__eyebrow
) {
  font-size: 10px !important;
}


.cms-pc-std__content .cms-content-stat__value {
  font-size: clamp(19px, 2.15vw, 25px) !important;
  line-height: 1.05 !important;
  letter-spacing: -.02em !important;
}


.cms-pc-std__content .cms-content-stat__value--long {
  font-size: clamp(17px, 1.9vw, 22px) !important;
  letter-spacing: -.015em !important;
}


.cms-pc-std__content .cms-content-stat__label {
  margin-top: 5px !important;
  font-size: 12.5px !important;
  line-height: 1.25 !important;
}


.cms-pc-std__content .cms-content-stat__detail {
  margin-top: 5px !important;
  font-size: 12.25px !important;
  line-height: 1.45 !important;
}


/* restore-comparative-components-20260529: restored after CSS rollback. */
/* COMPARATIVE_SERP_COMPONENTS_20260527: ranking blocks for commercial comparison intents. */
.cms-pc-std__content .cms-content-rankcmp,
.article-content .cms-content-rankcmp,
.prose .cms-content-rankcmp,
.post-content .cms-content-rankcmp,
.cms-pc-std__content .cms-content-matrix,
.article-content .cms-content-matrix,
.prose .cms-content-matrix,
.post-content .cms-content-matrix {
  margin: 30px 0 !important;
  padding: clamp(18px, 2.4vw, 24px) !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 16%, var(--color-border, #dbe7e1)) !important;
  border-radius: var(--radius-lg, 22px) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0fbd74) 11%, transparent), transparent 42%),
    var(--color-bg-alt, #f4fbf7) !important;
  box-shadow: 0 12px 30px rgba(6, 17, 15, .06) !important;
}


.cms-content-rankcmp__head,
.cms-content-matrix__head {
  margin: 0 0 18px !important;
}


.cms-content-rankcmp__eyebrow,
.cms-content-matrix__eyebrow {
  display: inline-flex !important;
  margin: 0 0 10px !important;
  color: var(--color-accent, #0fbd74) !important;
  font: 900 10px/1 var(--font-body, sans-serif) !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}


.cms-content-rankcmp__title,
.cms-content-matrix__title {
  margin: 0 !important;
  color: var(--color-text, #10231f) !important;
  font: 850 clamp(20px, 2.3vw, 28px)/1.12 var(--font-heading, sans-serif) !important;
}


.cms-content-rankcmp__intro,
.cms-content-matrix__intro {
  max-width: 760px !important;
  margin: 9px 0 0 !important;
  color: var(--color-text-muted, #5d6f67) !important;
  font-size: 13.75px !important;
  line-height: 1.55 !important;
}


.cms-content-rankcmp__list {
  display: grid !important;
  gap: 13px !important;
}


.cms-content-rankcmp__item {
  display: grid !important;
  grid-template-columns: 56px minmax(240px, 1fr) 94px minmax(260px, 1.25fr) minmax(140px, .55fr) !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 14px !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 13%, var(--color-border, #dbe7e1)) !important;
  border-radius: var(--radius-md, 16px) !important;
  background: var(--color-bg, #fff) !important;
  box-shadow: 0 8px 18px rgba(6, 17, 15, .045) !important;
}


.cms-content-rankcmp__rank {
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;
  color: #fff !important;
  background: linear-gradient(135deg, var(--color-accent, #0fbd74), color-mix(in srgb, var(--color-accent, #0fbd74) 58%, #081f1a)) !important;
  font: 950 14px/1 var(--font-body, sans-serif) !important;
}


.cms-content-rankcmp__brand {
  display: grid !important;
  grid-template-columns: 66px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}


.cms-content-rankcmp__logo {
  display: grid !important;
  place-items: center !important;
  width: 66px !important;
  height: 54px !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 14%, var(--color-border, #dbe7e1)) !important;
  border-radius: 16px !important;
  color: var(--color-text, #10231f) !important;
  background: color-mix(in srgb, var(--color-accent, #0fbd74) 8%, #fff) !important;
  font: 950 13px/1 var(--font-heading, sans-serif) !important;
  letter-spacing: -.03em !important;
}


.cms-content-rankcmp__brand > div:last-child {
  min-width: 0 !important;
}


.cms-content-rankcmp__tag,
.cms-content-matrix__tag {
  display: inline-flex !important;
  width: fit-content !important;
  margin: 0 0 5px !important;
  padding: 4px 8px !important;
  border-radius: 999px !important;
  color: color-mix(in srgb, var(--color-accent, #0fbd74) 72%, #10231f) !important;
  background: color-mix(in srgb, var(--color-accent, #0fbd74) 12%, #fff) !important;
  font: 850 10px/1 var(--font-body, sans-serif) !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}


.cms-content-rankcmp__name {
  margin: 0 !important;
  color: var(--color-text, #10231f) !important;
  font: 850 17px/1.18 var(--font-heading, sans-serif) !important;
}


.cms-content-rankcmp__best {
  margin: 5px 0 0 !important;
  color: var(--color-text-muted, #5d6f67) !important;
  font-size: 12.75px !important;
  line-height: 1.35 !important;
}


.cms-content-rankcmp__scorebox {
  display: grid !important;
  gap: 4px !important;
  justify-items: center !important;
  padding: 10px !important;
  border-radius: 14px !important;
  background: var(--color-bg-alt, #f4fbf7) !important;
  text-align: center !important;
}


.cms-content-rankcmp__scorebox strong {
  color: var(--color-text, #10231f) !important;
  font: 950 22px/1 var(--font-heading, sans-serif) !important;
}


.cms-content-rankcmp__scorebox span,
.cms-content-rankcmp__action small {
  color: var(--color-text-muted, #5d6f67) !important;
  font-size: 11.5px !important;
  line-height: 1.3 !important;
}


.cms-content-rankcmp__points {
  display: grid !important;
  gap: 5px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}


.cms-content-rankcmp__points li {
  position: relative !important;
  margin: 0 !important;
  padding: 0 0 0 18px !important;
  border: 0 !important;
  color: var(--color-text, #10231f) !important;
  font-size: 13px !important;
  line-height: 1.42 !important;
  list-style: none !important;
}


.cms-content-rankcmp__points li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  width: auto !important;
  height: auto !important;
  color: var(--color-accent, #0fbd74) !important;
  background: transparent !important;
  box-shadow: none !important;
  font: 900 12px/1.4 var(--font-body, sans-serif) !important;
}


.cms-content-rankcmp__trust {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-top: 9px !important;
}


.cms-content-rankcmp__trust span {
  padding: 5px 8px !important;
  border-radius: 999px !important;
  color: var(--color-text-muted, #5d6f67) !important;
  background: color-mix(in srgb, var(--color-border, #dbe7e1) 55%, transparent) !important;
  font: 750 11px/1 var(--font-body, sans-serif) !important;
}


.cms-content-rankcmp__action {
  display: grid !important;
  gap: 8px !important;
  justify-items: stretch !important;
}


.cms-content-rankcmp__price {
  color: var(--color-text, #10231f) !important;
  font: 850 13px/1.2 var(--font-body, sans-serif) !important;
  text-align: center !important;
}


.cms-content-matrix__scroll {
  overflow-x: auto !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 13%, var(--color-border, #dbe7e1)) !important;
  border-radius: var(--radius-md, 16px) !important;
  background: var(--color-bg, #fff) !important;
}


.cms-content-matrix__table {
  width: 100% !important;
  min-width: 820px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 0 !important;
  font-size: 13px !important;
}


.cms-content-matrix__table th,
.cms-content-matrix__table td {
  padding: 13px 14px !important;
  border: 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--color-border, #dbe7e1) 78%, transparent) !important;
  color: var(--color-text, #10231f) !important;
  line-height: 1.38 !important;
  vertical-align: top !important;
}


.cms-content-matrix__table thead th {
  position: sticky !important;
  top: 0 !important;
  z-index: 1 !important;
  color: var(--color-text, #10231f) !important;
  background: color-mix(in srgb, var(--color-accent, #0fbd74) 8%, #fff) !important;
  font: 900 11px/1.2 var(--font-body, sans-serif) !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
}


.cms-content-matrix__table tbody tr:last-child th,
.cms-content-matrix__table tbody tr:last-child td {
  border-bottom: 0 !important;
}


.cms-content-matrix__solution {
  display: block !important;
  min-width: 150px !important;
  font: 900 14px/1.2 var(--font-heading, sans-serif) !important;
}


.cms-content-matrix__table td strong {
  display: block !important;
  margin-bottom: 7px !important;
  color: var(--color-text, #10231f) !important;
  font: 850 13px/1.35 var(--font-body, sans-serif) !important;
}


.cms-content-matrix__table a {
  min-height: 32px !important;
  padding: 8px 12px !important;
  font-size: 11px !important;
}


@media (max-width: 960px) {
  .cms-content-rankcmp__item {
    grid-template-columns: 48px minmax(0, 1fr) 84px !important;
  }
  .cms-content-rankcmp__body,
  .cms-content-rankcmp__action {
    grid-column: 2 / -1 !important;
  }}


@media (max-width: 640px) {
  .cms-content-rankcmp,
  .cms-content-matrix {
    padding: 16px !important;
  }
  .cms-content-rankcmp__item {
    grid-template-columns: 42px minmax(0, 1fr) !important;
  }
  .cms-content-rankcmp__scorebox,
  .cms-content-rankcmp__body,
  .cms-content-rankcmp__action {
    grid-column: 1 / -1 !important;
  }}


/* COMPARATIVE_SERP_COMPONENTS_V2_20260527: ranking has no parent card; matrix is a column comparator, not a table. */
.cms-pc-std__content .cms-content-rankcmp,
.article-content .cms-content-rankcmp,
.prose .cms-content-rankcmp,
.post-content .cms-content-rankcmp {
  margin: 30px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


.cms-content-rankcmp__head {
  margin-bottom: 16px !important;
}


.cms-content-matrix__scroll {
  overflow-x: auto !important;
  padding: 4px 4px 12px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}


.cms-content-matrix__container {
  display: flex !important;
  align-items: stretch !important;
  gap: 14px !important;
  min-width: max-content !important;
  padding: 2px 2px 8px !important;
}


.cms-content-matrix__criteria,
.cms-content-matrix__partner {
  display: flex !important;
  flex: 0 0 208px !important;
  flex-direction: column !important;
}


.cms-content-matrix__criteria {
  flex-basis: 190px !important;
}


.cms-content-matrix__partner {
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 14%, var(--color-border, #dbe7e1)) !important;
  border-radius: 20px !important;
  background: var(--color-bg, #fff) !important;
  box-shadow: 0 12px 28px rgba(6, 17, 15, .075) !important;
}


.cms-content-matrix__row {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 58px !important;
  padding: 11px 13px !important;
  border-bottom: 1px solid color-mix(in srgb, var(--color-border, #dbe7e1) 74%, transparent) !important;
  color: var(--color-text, #10231f) !important;
  background: transparent !important;
}


.cms-content-matrix__row--header,
.cms-content-matrix__partner-header {
  min-height: 96px !important;
}


.cms-content-matrix__row--md {
  min-height: 82px !important;
}


.cms-content-matrix__row--lg {
  min-height: 112px !important;
}


.cms-content-matrix__criteria .cms-content-matrix__row {
  color: var(--color-text-muted, #5d6f67) !important;
  font-weight: 850 !important;
}


.cms-content-matrix__criteria .cms-content-matrix__row--header {
  color: var(--color-text, #10231f) !important;
  font: 950 20px/1.1 var(--font-heading, sans-serif) !important;
}


.cms-content-matrix__row p {
  margin: 0 !important;
  font-size: 12.75px !important;
  line-height: 1.38 !important;
}


.cms-content-matrix__row--highlight p,
.cms-content-matrix__row p strong,
.cms-content-matrix__row .text-green {
  color: var(--color-accent, #0fbd74) !important;
  font-weight: 850 !important;
}


.cms-content-matrix__partner-header {
  display: grid !important;
  place-items: center !important;
  gap: 8px !important;
  padding: 14px !important;
  border-bottom: 1px solid color-mix(in srgb, var(--color-border, #dbe7e1) 74%, transparent) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0fbd74) 10%, transparent), transparent 42%),
    var(--color-bg-alt, #f4fbf7) !important;
  text-align: center !important;
}


.cms-content-matrix__partner-logo {
  display: grid !important;
  place-items: center !important;
  min-width: 72px !important;
  min-height: 42px !important;
  padding: 8px 12px !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 14%, var(--color-border, #dbe7e1)) !important;
  border-radius: 14px !important;
  color: var(--color-text, #10231f) !important;
  background: var(--color-bg, #fff) !important;
  font: 950 15px/1 var(--font-heading, sans-serif) !important;
  letter-spacing: -.04em !important;
}


.cms-content-matrix__partner-header h4 {
  margin: 4px 0 0 !important;
  color: var(--color-text, #10231f) !important;
  font: 900 16px/1.15 var(--font-heading, sans-serif) !important;
}


.cms-content-matrix__partner-body {
  display: flex !important;
  flex-direction: column !important;
}


.cms-content-matrix__check,
.cms-content-matrix__cross {
  display: inline-grid !important;
  place-items: center !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 auto !important;
  border-radius: 999px !important;
  font: 950 14px/1 var(--font-body, sans-serif) !important;
}


.cms-content-matrix__check {
  color: #fff !important;
  background: var(--color-accent, #0fbd74) !important;
}


.cms-content-matrix__cross {
  color: #fff !important;
  background: #a8b5ae !important;
}


.cms-content-matrix__cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 40px !important;
  margin: 13px !important;
  padding: 10px 14px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: var(--color-accent, #0fbd74) !important;
  font: 900 12px/1 var(--font-body, sans-serif) !important;
  text-decoration: none !important;
}


@media (max-width: 760px) {
  .cms-content-matrix__criteria {
    position: sticky !important;
    left: 0 !important;
    z-index: 2 !important;
    flex-basis: 150px !important;
    background: var(--color-bg-alt, #f4fbf7) !important;
  }
  .cms-content-matrix__partner {
    flex-basis: 210px !important;
  }}


.cms-content-matrix {
  --cms-matrix-head-h: 128px;
  --cms-matrix-row-h: 60px;
  --cms-matrix-row-md-h: 86px;
  --cms-matrix-row-lg-h: 118px;
}


.cms-content-matrix__criteria,
.cms-content-matrix__partner,
.cms-content-matrix__row,
.cms-content-matrix__partner-header {
  box-sizing: border-box !important;
}


.cms-content-matrix__row {
  min-height: 0 !important;
  height: var(--cms-matrix-row-h) !important;
  overflow: hidden !important;
}


.cms-content-matrix__row--header,
.cms-content-matrix__partner-header {
  min-height: 0 !important;
  height: var(--cms-matrix-head-h) !important;
}


.cms-content-matrix__row--md {
  min-height: 0 !important;
  height: var(--cms-matrix-row-md-h) !important;
}


.cms-content-matrix__row--lg {
  min-height: 0 !important;
  height: var(--cms-matrix-row-lg-h) !important;
}


.cms-content-matrix__partner-header {
  align-content: center !important;
  grid-auto-rows: max-content !important;
}


.cms-content-matrix__row p {
  display: -webkit-box !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
}


.cms-content-matrix__row--md p {
  -webkit-line-clamp: 4 !important;
}


.cms-content-matrix__row--lg p {
  -webkit-line-clamp: 5 !important;
}


/* COMPARISON_MATRIX_V2_ONLY_20260527: matrix is never a V1/card component. */
.cms-pc-std__content .cms-content-matrix,
.article-content .cms-content-matrix,
.prose .cms-content-matrix,
.post-content .cms-content-matrix {
  margin: 32px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


.cms-content-matrix__head {
  margin-bottom: 16px !important;
}


.cms-content-matrix__scroll {
  width: 100% !important;
  overflow-x: auto !important;
  padding: 2px 0 12px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


.cms-content-matrix__container {
  width: 100% !important;
  min-width: 100% !important;
  gap: 14px !important;
  padding: 2px 0 8px !important;
}


.cms-content-matrix__criteria {
  flex: 0 0 178px !important;
}


.cms-content-matrix__partner {
  flex: 1 1 0 !important;
  min-width: 220px !important;
}


.cms-content-matrix__partner-header {
  gap: 5px !important;
  padding: 18px 14px 12px !important;
}


.cms-content-matrix__partner-header h4 {
  margin-top: 2px !important;
}


.cms-content-rankcmp__points {
  margin-bottom: 10px !important;
}


.cms-content-matrix__footer {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}


.cms-content-matrix__cta {
  display: inline-flex !important;
  width: auto !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 11px 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--color-accent, #0fbd74) !important;
  color: #fff !important;
  box-shadow: 0 10px 20px color-mix(in srgb, var(--color-accent, #0fbd74) 24%, transparent) !important;
}


@media (max-width: 760px) {
  .cms-content-matrix__container {
    min-width: max-content !important;
  }

  .cms-content-matrix__criteria {
    flex: 0 0 150px !important;
  }

  .cms-content-matrix__partner {
    flex: 0 0 210px !important;
    min-width: 210px !important;
  }}


/* COMPARISON_MATRIX_VISUAL_TUNING_20260529: lighter matrix cards, cleaner slider arrows and readable CTAs. */
.cms-pc-std__content .cms-content-matrix__partner,
.article-content .cms-content-matrix__partner,
.prose .cms-content-matrix__partner,
.post-content .cms-content-matrix__partner {
  box-shadow: 0 8px 18px rgba(6, 17, 15, .055) !important;
}


.cms-pc-std__content .cms-content-matrix__partner:hover,
.article-content .cms-content-matrix__partner:hover,
.prose .cms-content-matrix__partner:hover,
.post-content .cms-content-matrix__partner:hover {
  box-shadow: 0 10px 22px rgba(6, 17, 15, .075) !important;
}


.cms-pc-std__content .cms-content-matrix__controls,
.article-content .cms-content-matrix__controls,
.prose .cms-content-matrix__controls,
.post-content .cms-content-matrix__controls {
  justify-content: center !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
}


.cms-pc-std__content .cms-content-matrix__nav,
.article-content .cms-content-matrix__nav,
.prose .cms-content-matrix__nav,
.post-content .cms-content-matrix__nav {
  position: relative !important;
  width: 34px !important;
  height: 34px !important;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 26%, var(--color-border, #dbe7e1)) !important;
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--color-accent, #0fbd74) 7%, #fff) !important;
  color: transparent !important;
  box-shadow: 0 6px 14px rgba(6, 17, 15, .06) !important;
}


.cms-pc-std__content .cms-content-matrix__nav::before,
.article-content .cms-content-matrix__nav::before,
.prose .cms-content-matrix__nav::before,
.post-content .cms-content-matrix__nav::before {
  content: "" !important;
  width: 8px !important;
  height: 8px !important;
  border-top: 2px solid currentColor !important;
  border-right: 2px solid currentColor !important;
  color: var(--color-accent, #0fbd74) !important;
}


.cms-pc-std__content .cms-content-matrix__nav--prev::before,
.article-content .cms-content-matrix__nav--prev::before,
.prose .cms-content-matrix__nav--prev::before,
.post-content .cms-content-matrix__nav--prev::before {
  transform: rotate(-135deg) translate(-1px, -1px) !important;
}


.cms-pc-std__content .cms-content-matrix__nav--next::before,
.article-content .cms-content-matrix__nav--next::before,
.prose .cms-content-matrix__nav--next::before,
.post-content .cms-content-matrix__nav--next::before {
  transform: rotate(45deg) translate(-1px, -1px) !important;
}


.cms-pc-std__content .cms-content-matrix__nav:hover,
.cms-pc-std__content .cms-content-matrix__nav:focus-visible,
.article-content .cms-content-matrix__nav:hover,
.article-content .cms-content-matrix__nav:focus-visible,
.prose .cms-content-matrix__nav:hover,
.prose .cms-content-matrix__nav:focus-visible,
.post-content .cms-content-matrix__nav:hover,
.post-content .cms-content-matrix__nav:focus-visible {
  background: var(--color-accent, #0fbd74) !important;
}


.cms-pc-std__content .cms-content-matrix__nav:hover::before,
.cms-pc-std__content .cms-content-matrix__nav:focus-visible::before,
.article-content .cms-content-matrix__nav:hover::before,
.article-content .cms-content-matrix__nav:focus-visible::before,
.prose .cms-content-matrix__nav:hover::before,
.prose .cms-content-matrix__nav:focus-visible::before,
.post-content .cms-content-matrix__nav:hover::before,
.post-content .cms-content-matrix__nav:focus-visible::before {
  color: #fff !important;
}


.cms-pc-std__content .cms-content-matrix__footer,
.article-content .cms-content-matrix__footer,
.prose .cms-content-matrix__footer,
.post-content .cms-content-matrix__footer {
  padding: 0 !important;
}


.cms-pc-std__content .cms-content-matrix__cta,
.article-content .cms-content-matrix__cta,
.prose .cms-content-matrix__cta,
.post-content .cms-content-matrix__cta {
  width: 100% !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 15px 11px !important;
  border-radius: 0 !important;
  font-size: 13px !important;
  line-height: 1.1 !important;
  box-shadow: none !important;
}


.cms-content-rankcmp__brand {
  grid-template-columns: 74px minmax(0, 1fr) !important;
  gap: 20px !important;
}


.cms-content-rankcmp__media {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 70px;
  width: 70px;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: 12px;
  background: #fff;
}


.cms-content-rankcmp__media img {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  padding: 7px;
  object-fit: contain;
  box-sizing: border-box;
}


@media (max-width: 760px) {
  .cms-content-rankcmp__brand {
    grid-template-columns: 64px minmax(0, 1fr) !important;
    gap: 16px !important;
  }

  .cms-content-rankcmp__media {
    flex-basis: 62px;
    width: 62px;
  }}


@media (max-width: 768px) {
  .cms-content-figure--portrait {
    width: 100%;
    max-width: 100%;
  }}


.cms-pc-std__content .cms-content-matrix__footer {
  padding: 0 !important;
}


.cms-pc-std__content .cms-content-matrix__cta {
  min-height: 34px !important;
  padding: 8px 11px !important;
  font-size: 11px !important;
  width: 100% !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}


/* COMPARISON_MATRIX_NAV_CTA_FIX_20260529: precise arrow centering and CTA vertical rhythm. */
.cms-pc-std__content .cms-content-matrix__nav,
.article-content .cms-content-matrix__nav,
.prose .cms-content-matrix__nav,
.post-content .cms-content-matrix__nav {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0 !important;
  line-height: 0 !important;
}


.cms-pc-std__content .cms-content-matrix__nav::before,
.article-content .cms-content-matrix__nav::before,
.prose .cms-content-matrix__nav::before,
.post-content .cms-content-matrix__nav::before {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  margin: 0 !important;
  transform-origin: center !important;
}


.cms-pc-std__content .cms-content-matrix__nav--prev::before,
.article-content .cms-content-matrix__nav--prev::before,
.prose .cms-content-matrix__nav--prev::before,
.post-content .cms-content-matrix__nav--prev::before {
  transform: translate(-42%, -50%) rotate(-135deg) !important;
}


.cms-pc-std__content .cms-content-matrix__nav--next::before,
.article-content .cms-content-matrix__nav--next::before,
.prose .cms-content-matrix__nav--next::before,
.post-content .cms-content-matrix__nav--next::before {
  transform: translate(-58%, -50%) rotate(45deg) !important;
}


.cms-pc-std__content .cms-content-matrix__footer .cms-content-matrix__cta,
.article-content .cms-content-matrix__footer .cms-content-matrix__cta,
.prose .cms-content-matrix__footer .cms-content-matrix__cta,
.post-content .cms-content-matrix__footer .cms-content-matrix__cta {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 16px 12px !important;
  font-size: 13px !important;
  line-height: 1.18 !important;
}


/* COMPONENT_H4_LABEL_MARGIN_RESET_20260529: generic article h4 spacing must not affect component labels. */
.cms-pc-std__content h4.cms-content-cpanel__label,
.article-content h4.cms-content-cpanel__label,
.post-content h4.cms-content-cpanel__label,
.prose h4.cms-content-cpanel__label {
  margin: 0 !important;
}


/* PROS_CONS_SOURCE_PANEL_CARD_FIX_20260529: avoid nested card effect on canonical post components. */
.cms-pc-std__content .cms-content-pc__head {
  padding: 0 !important;
}


.cms-pc-std__content .cms-content-pc__grid {
  padding: 18px 0 0 !important;
}


.cms-pc-std__content .cms-content-pc__foot {
  padding: 14px 0 0 !important;
}


.cms-pc-std__content :is(.cms-content-style-v2.cms-content-pc, .cms-content-style-v2.cms-content-src) {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}


.cms-pc-std__content .cms-content-src:not(.cms-content-style-v2) .cms-content-src__item {
  padding: 12px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 12%, var(--color-border, #e5e7eb)) !important;
  border-radius: 0 !important;
  background: transparent !important;
}


.cms-pc-std__content .cms-content-src:not(.cms-content-style-v2) .cms-content-src__item:last-child {
  border-bottom: 0 !important;
}


.cms-pc-std__content .cms-content-cg__card {
  gap: 2px !important;
}


.cms-pc-std__content .cms-content-style-v2 .cms-content-src__item,
.cms-pc-std__content .writer-component-card--src-lab .cms-content-style-v2 .cms-content-src__item {
  padding: 14px 16px !important;
  border-radius: var(--radius-md, 16px) !important;
}


.cms-pc-std__content .cms-content-style-v2 .cms-content-cg__card,
.cms-pc-std__content .cms-content-cg.cms-content-style-v2 .cms-content-cg__card,
.cms-pc-std__content .writer-component-card--criteria-lab .cms-content-style-v2 .cms-content-cg__card {
  padding: 14px 16px !important;
  border-radius: var(--radius-md, 16px) !important;
}


/* COMPONENT_DEFENSIVE_VARIANTS_20260529:
   Keep writer components styled when PHP emits direct variant classes
   instead of only relying on the generic .cms-content-style-v2 selector. */
.cms-pc-std__content :is(
  .cms-content-cpanel--v2,
  .cms-content-stat--v2,
  .cms-content-cg--v2,
  .cms-content-info--v2,
  .cms-content-src--v2,
  .cms-content-ds--v2,
  .cms-content-pc--v2,
  .cms-content-af--v2,
  .cms-content-pp--v2,
  .cms-content-clp--v2,
  .cms-content-icg--v2,
  .cms-content-tool--v2
) {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}


.cms-pc-std__content :is(
  .cms-content-cpanel--v2 .cms-content-cpanel__head,
  .cms-content-stat--v2 .cms-content-stat__head,
  .cms-content-cg--v2 .cms-content-cg__head,
  .cms-content-info--v2 .cms-content-info__head,
  .cms-content-src--v2 .cms-content-src__head,
  .cms-content-ds--v2 .cms-content-ds__head,
  .cms-content-pc--v2 .cms-content-pc__head,
  .cms-content-af--v2 .cms-content-af__head,
  .cms-content-pp--v2 .cms-content-pp__head,
  .cms-content-clp--v2 .cms-content-clp__head,
  .cms-content-icg--v2 .cms-content-icg__head,
  .cms-content-tool--v2 .cms-content-tool__head
) {
  padding: 0 !important;
}


.cms-pc-std__content :is(
  .cms-content-cpanel--v2 .cms-content-cpanel__row,
  .cms-content-stat--v2 .cms-content-stat__card,
  .cms-content-cg--v2 .cms-content-cg__card,
  .cms-content-info--v2 .cms-content-info__card,
  .cms-content-src--v2 .cms-content-src__item,
  .cms-content-ds--v2 .cms-content-ds__card,
  .cms-content-pc--v2 .pc-col,
  .cms-content-af--v2 .cms-content-af__body,
  .cms-content-pp--v2 .cms-content-pp__card,
  .cms-content-clp--v2 .cms-content-clp__item,
  .cms-content-icg--v2 .cms-content-icg__card,
  .cms-content-tool--v2 .cms-content-tool__result
) {
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 14%, var(--color-border, #e5e7eb)) !important;
  border-radius: var(--radius-md, 16px) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0f766e) 10%, transparent), transparent 42%),
    var(--color-bg-alt, #f8fafc) !important;
  box-shadow: none !important;
}


.cms-pc-std__content .cms-content-stat--cols-2 .cms-content-stat__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}


.cms-pc-std__content .cms-content-cpanel__row,
.cms-pc-std__content .cms-content-stat__card {
  min-width: 0;
}


@media (max-width: 900px) {
  .cms-pc-std__content .cms-content-stat--cols-2 .cms-content-stat__grid {
    grid-template-columns: 1fr;
  }}


/* CRITERIA_GRID_WRAPPER_NEUTRAL_20260529:
   criteria-grid has a root wrapper plus an inner shell. The wrapper must never
   receive card chrome, otherwise V1 renders as a double card/border block. */
.cms-pc-std__content .cms-content-cg {
  margin: clamp(24px, 4vw, 42px) 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}


.cms-pc-std__content .cms-content-cg > .cms-content-cg__shell {
  margin: 0 !important;
}


.cms-pc-std__content .cms-content-style-v2.cms-content-cg > .cms-content-cg__shell,
.cms-pc-std__content .cms-content-cg--v2 > .cms-content-cg__shell {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


/* ARTICLE_CODE_TERMINAL_STYLE_20260529:
   Code-heavy posts need readable terminal-like blocks after legacy light pre styles. */
.cms-pc-std__content pre,
.cms-pc-std__content pre.wp-block-code,
.article-content pre,
.article-content pre.wp-block-code,
.post-content pre,
.post-content pre.wp-block-code,
.prose pre,
.prose pre.wp-block-code {
  position: relative !important;
  box-sizing: border-box !important;
  max-width: 100% !important;
  margin: 24px 0 !important;
  padding: 18px 20px !important;
  overflow-x: auto !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 18%, #1f2937) !important;
  border-radius: var(--radius-lg, 18px) !important;
  background:
    radial-gradient(circle at top right, color-mix(in srgb, var(--color-accent, #0f766e) 18%, transparent), transparent 42%),
    linear-gradient(180deg, #111827 0%, #0b1120 100%) !important;
  color: #e5edf7 !important;
  box-shadow: 0 18px 44px rgba(2, 6, 23, .22) !important;
  font-family: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace !important;
  font-size: 13px !important;
  line-height: 1.62 !important;
  white-space: pre !important;
  -webkit-overflow-scrolling: touch;
}


.cms-pc-std__content pre code,
.cms-pc-std__content pre.wp-block-code code,
.article-content pre code,
.article-content pre.wp-block-code code,
.post-content pre code,
.post-content pre.wp-block-code code,
.prose pre code,
.prose pre.wp-block-code code {
  display: block !important;
  min-width: 100% !important;
  width: max-content !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  font: inherit !important;
  white-space: inherit !important;
}


.cms-pc-std__content :is(p, li, td, th) > code,
.article-content :is(p, li, td, th) > code,
.post-content :is(p, li, td, th) > code,
.prose :is(p, li, td, th) > code {
  display: inline;
  padding: .14em .42em !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 16%, transparent) !important;
  border-radius: 7px !important;
  background: color-mix(in srgb, var(--color-accent, #0f766e) 10%, var(--color-bg-alt, #f8fafc)) !important;
  color: color-mix(in srgb, var(--color-accent, #0f766e) 82%, var(--color-text, #0f172a)) !important;
  font-family: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace !important;
  font-size: .88em !important;
  line-height: 1.35 !important;
  white-space: break-spaces;
}


@media (max-width: 640px) {
  .cms-pc-std__content pre,
  .cms-pc-std__content pre.wp-block-code,
  .article-content pre,
  .article-content pre.wp-block-code,
  .post-content pre,
  .post-content pre.wp-block-code,
  .prose pre,
  .prose pre.wp-block-code {
    padding: 14px 15px !important;
    font-size: 12px !important;
    white-space: pre-wrap !important;
    overflow-wrap: anywhere;
  }
  .cms-pc-std__content pre code,
  .cms-pc-std__content pre.wp-block-code code,
  .article-content pre code,
  .article-content pre.wp-block-code code,
  .post-content pre code,
  .post-content pre.wp-block-code code,
  .prose pre code,
  .prose pre.wp-block-code code {
    width: 100% !important;
    max-width: 100% !important;
    white-space: inherit !important;
    overflow-wrap: anywhere;
    word-break: break-word;
  }}


/* COMPARISON_MATRIX_CAROUSEL_FIX_20260602: hide native scrollbar while keeping arrow carousel functional. */
.cms-pc-std__content .cms-content-matrix__controls,
.article-content .cms-content-matrix__controls,
.prose .cms-content-matrix__controls,
.post-content .cms-content-matrix__controls {
  display: flex !important;
}


.cms-pc-std__content .cms-content-matrix__scroll,
.article-content .cms-content-matrix__scroll,
.prose .cms-content-matrix__scroll,
.post-content .cms-content-matrix__scroll {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}


.cms-pc-std__content .cms-content-matrix__scroll::-webkit-scrollbar,
.article-content .cms-content-matrix__scroll::-webkit-scrollbar,
.prose .cms-content-matrix__scroll::-webkit-scrollbar,
.post-content .cms-content-matrix__scroll::-webkit-scrollbar {
  display: none !important;
}


.cms-pc-std__content .cms-content-matrix__container,
.article-content .cms-content-matrix__container,
.prose .cms-content-matrix__container,
.post-content .cms-content-matrix__container {
  width: max-content !important;
  min-width: max-content !important;
  padding-right: 4px !important;
}


.cms-pc-std__content .cms-content-matrix__criteria,
.article-content .cms-content-matrix__criteria,
.prose .cms-content-matrix__criteria,
.post-content .cms-content-matrix__criteria {
  position: sticky !important;
  left: 0 !important;
  z-index: 4 !important;
  flex: 0 0 150px !important;
  background: var(--color-bg-alt, #f4fbf7) !important;
}


.cms-pc-std__content .cms-content-matrix__partner,
.article-content .cms-content-matrix__partner,
.prose .cms-content-matrix__partner,
.post-content .cms-content-matrix__partner {
  flex: 0 0 clamp(188px, 20vw, 224px) !important;
  min-width: clamp(188px, 20vw, 224px) !important;
}


@media (max-width: 760px) {
  .cms-pc-std__content .cms-content-matrix__criteria,
  .article-content .cms-content-matrix__criteria,
  .prose .cms-content-matrix__criteria,
  .post-content .cms-content-matrix__criteria {
    flex-basis: 92px !important;
  }

  .cms-pc-std__content .cms-content-matrix__partner,
  .article-content .cms-content-matrix__partner,
  .prose .cms-content-matrix__partner,
  .post-content .cms-content-matrix__partner {
    flex-basis: 202px !important;
    min-width: 202px !important;
  }}


/* RANKING_COMPARISON_GRID_STABLE_20260608: keep body/action columns stable when optional scorebox is absent. */
.cms-content-rankcmp__rank {
  grid-column: 1 !important;
}


.cms-content-rankcmp__brand {
  grid-column: 2 !important;
}


.cms-content-rankcmp__scorebox {
  grid-column: 3 !important;
}


.cms-content-rankcmp__body {
  grid-column: 4 !important;
  min-width: 0 !important;
}


.cms-content-rankcmp__action {
  grid-column: 5 !important;
  width: min(100%, 138px) !important;
  min-width: 0 !important;
  justify-self: end !important;
}


.cms-content-rankcmp__cta {
  width: 100% !important;
  max-width: 138px !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.15 !important;
}


@media (max-width: 960px) {
  .cms-content-rankcmp__rank,
  .cms-content-rankcmp__brand,
  .cms-content-rankcmp__scorebox,
  .cms-content-rankcmp__body,
  .cms-content-rankcmp__action {
    grid-column: auto !important;
  }

  .cms-content-rankcmp__body,
  .cms-content-rankcmp__action {
    grid-column: 2 / -1 !important;
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
  }

  .cms-content-rankcmp__cta {
    max-width: none !important;
  }}

/* CONTENT_CAROUSEL_OVERFLOW_FIX_20260608
   Keep article product grids static when all cards fit, and reserve carousel
   controls for real overflow cases. */
.cms-pc-std__content .cms-content-icg--cols-3 .cms-content-icg__grid,
.article-content .cms-content-icg--cols-3 .cms-content-icg__grid,
.prose .cms-content-icg--cols-3 .cms-content-icg__grid,
.post-content .cms-content-icg--cols-3 .cms-content-icg__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  overflow: visible !important;
}


.cms-pc-std__content .cms-content-icg--cols-4 .cms-content-icg__grid,
.article-content .cms-content-icg--cols-4 .cms-content-icg__grid,
.prose .cms-content-icg--cols-4 .cms-content-icg__grid,
.post-content .cms-content-icg--cols-4 .cms-content-icg__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  overflow: visible !important;
}


.cms-pc-std__content .cms-content-icg__link,
.cms-pc-std__content .cms-content-icg__link:hover,
.article-content .cms-content-icg__link,
.article-content .cms-content-icg__link:hover,
.prose .cms-content-icg__link,
.prose .cms-content-icg__link:hover,
.post-content .cms-content-icg__link,
.post-content .cms-content-icg__link:hover {
  color: inherit !important;
  text-decoration: none !important;
}


.cms-pc-std__content .cms-content-icg__cta,
.article-content .cms-content-icg__cta,
.prose .cms-content-icg__cta,
.post-content .cms-content-icg__cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-height: 40px !important;
  margin-top: 16px !important;
  padding: 11px 16px !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0f766e) 28%, transparent) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: var(--color-accent, #0f766e) !important;
  box-shadow: 0 12px 26px color-mix(in srgb, var(--color-accent, #0f766e) 20%, transparent) !important;
  font: 800 12px/1 var(--font-body, sans-serif) !important;
  text-decoration: none !important;
}


.cms-pc-std__content .cms-content-icg__cta:hover,
.article-content .cms-content-icg__cta:hover,
.prose .cms-content-icg__cta:hover,
.post-content .cms-content-icg__cta:hover {
  color: #fff !important;
  filter: brightness(.94);
  text-decoration: none !important;
}


.cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__controls,
.article-content .cms-content-matrix--fit .cms-content-matrix__controls,
.prose .cms-content-matrix--fit .cms-content-matrix__controls,
.post-content .cms-content-matrix--fit .cms-content-matrix__controls {
  display: none !important;
}


.cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__scroll,
.article-content .cms-content-matrix--fit .cms-content-matrix__scroll,
.prose .cms-content-matrix--fit .cms-content-matrix__scroll,
.post-content .cms-content-matrix--fit .cms-content-matrix__scroll {
  overflow-x: visible !important;
  padding-right: 0 !important;
}


.cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__container,
.article-content .cms-content-matrix--fit .cms-content-matrix__container,
.prose .cms-content-matrix--fit .cms-content-matrix__container,
.post-content .cms-content-matrix--fit .cms-content-matrix__container {
  width: 100% !important;
  min-width: 100% !important;
  display: flex !important;
}


.cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__criteria,
.article-content .cms-content-matrix--fit .cms-content-matrix__criteria,
.prose .cms-content-matrix--fit .cms-content-matrix__criteria,
.post-content .cms-content-matrix--fit .cms-content-matrix__criteria {
  position: static !important;
  flex: 0 0 clamp(128px, 16%, 178px) !important;
  min-width: 0 !important;
}


.cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__partner,
.article-content .cms-content-matrix--fit .cms-content-matrix__partner,
.prose .cms-content-matrix--fit .cms-content-matrix__partner,
.post-content .cms-content-matrix--fit .cms-content-matrix__partner {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}


@media (max-width: 900px) {
  .cms-pc-std__content .cms-content-icg--cols-3 .cms-content-icg__grid,
  .cms-pc-std__content .cms-content-icg--cols-4 .cms-content-icg__grid,
  .article-content .cms-content-icg--cols-3 .cms-content-icg__grid,
  .article-content .cms-content-icg--cols-4 .cms-content-icg__grid,
  .prose .cms-content-icg--cols-3 .cms-content-icg__grid,
  .prose .cms-content-icg--cols-4 .cms-content-icg__grid,
  .post-content .cms-content-icg--cols-3 .cms-content-icg__grid,
  .post-content .cms-content-icg--cols-4 .cms-content-icg__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__scroll,
  .article-content .cms-content-matrix--fit .cms-content-matrix__scroll,
  .prose .cms-content-matrix--fit .cms-content-matrix__scroll,
  .post-content .cms-content-matrix--fit .cms-content-matrix__scroll {
    overflow-x: auto !important;
  }

  .cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__container,
  .article-content .cms-content-matrix--fit .cms-content-matrix__container,
  .prose .cms-content-matrix--fit .cms-content-matrix__container,
  .post-content .cms-content-matrix--fit .cms-content-matrix__container {
    width: max-content !important;
    min-width: max-content !important;
  }

  .cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__criteria,
  .article-content .cms-content-matrix--fit .cms-content-matrix__criteria,
  .prose .cms-content-matrix--fit .cms-content-matrix__criteria,
  .post-content .cms-content-matrix--fit .cms-content-matrix__criteria {
    position: sticky !important;
    left: 0 !important;
    z-index: 4 !important;
    flex: 0 0 92px !important;
  }

  .cms-pc-std__content .cms-content-matrix--fit .cms-content-matrix__partner,
  .article-content .cms-content-matrix--fit .cms-content-matrix__partner,
  .prose .cms-content-matrix--fit .cms-content-matrix__partner,
  .post-content .cms-content-matrix--fit .cms-content-matrix__partner {
    flex: 0 0 202px !important;
    min-width: 202px !important;
  }}


@media (max-width: 620px) {
  .cms-pc-std__content .cms-content-icg--cols-3 .cms-content-icg__grid,
  .cms-pc-std__content .cms-content-icg--cols-4 .cms-content-icg__grid,
  .article-content .cms-content-icg--cols-3 .cms-content-icg__grid,
  .article-content .cms-content-icg--cols-4 .cms-content-icg__grid,
  .prose .cms-content-icg--cols-3 .cms-content-icg__grid,
  .prose .cms-content-icg--cols-4 .cms-content-icg__grid,
  .post-content .cms-content-icg--cols-3 .cms-content-icg__grid,
  .post-content .cms-content-icg--cols-4 .cms-content-icg__grid {
    grid-template-columns: 1fr !important;
  }}

/* RANKCMP_CTA_BOX_SIZING_FIX_20260608
   Ranking comparison CTAs can be width:100%; keep padding inside the card. */
.cms-pc-std__content .cms-content-rankcmp__cta,
.article-content .cms-content-rankcmp__cta,
.prose .cms-content-rankcmp__cta,
.post-content .cms-content-rankcmp__cta {
  box-sizing: border-box !important;
  max-width: 100% !important;
  min-width: 0 !important;
}


/* COMPARISON_MATRIX_PRODUCT_MEDIA_20260608: compact product/logo images in matrix headers. */
.cms-content-matrix__partner-media {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 72px !important;
  height: 52px !important;
  margin: 0 auto 4px !important;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--color-accent, #0fbd74) 14%, var(--color-border, #dbe7e1)) !important;
  border-radius: 14px !important;
  background: #fff !important;
}


.cms-content-matrix__partner-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 6px !important;
  object-fit: contain !important;
  box-sizing: border-box !important;
}


.cms-resource-post > *,
.cms-resource-post .cms-block,
.cms-resource-page,
.cms-resource-page > * {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}


.cms-resource-post > .cms-block {
  margin: 0;
}


/* EXAMPLE_FOCUS_V2_BODY_PADDING_20260611
   V2 removes the outer card shell, so the inner text body needs its own breathing room. */
.cms-pc-std__content .cms-content-style-v2.cms-content-exf .cms-content-exf__body,
.cms-pc-std__content .cms-content-exf.cms-content-style-v2 .cms-content-exf__body {
  padding-left: clamp(14px, 2.2vw, 24px) !important;
  padding-right: clamp(14px, 2.2vw, 24px) !important;
}


@media (max-width: 720px) {
  .cms-pc-std__content .cms-content-style-v2.cms-content-exf .cms-content-exf__body,
  .cms-pc-std__content .cms-content-exf.cms-content-style-v2 .cms-content-exf__body {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }}
