.elementor-398 .elementor-element.elementor-element-t0c1a2b3 .elementor-toc__header-title{text-align:start;}.elementor-398 .elementor-element.elementor-element-t0c1a2b3 .elementor-toc__header{flex-direction:row;}.elementor-398 .elementor-element.elementor-element-t0c1a2b3{--item-text-hover-decoration:underline;}.elementor-398 .elementor-element.elementor-element-l00p9r1d{--grid-columns:3;}@media(max-width:1024px){.elementor-398 .elementor-element.elementor-element-l00p9r1d{--grid-columns:3;}}@media(max-width:767px){.elementor-398 .elementor-element.elementor-element-l00p9r1d{--grid-columns:1;}}/* Start custom CSS for table-of-contents, class: .elementor-element-t0c1a2b3 *//* Table of contents: the widget's own CSS variables, set from Kit variables. Hidden when the post has no H2/H3. */
.elementor-398 .elementor-element.elementor-element-t0c1a2b3 { --box-background-color: var(--cc-grey-50); --box-border-color: var(--cc-border); --box-border-radius: var(--radius-sm); --box-padding: var(--space-lg); --header-color: var(--cc-navy-900); --toggle-button-color: var(--cc-blue-600); --item-text-color: var(--cc-navy-900); --item-text-hover-color: var(--cc-blue-600); --item-text-active-color: var(--cc-blue-600); --nested-list-indent: var(--space-md); margin-block-end: var(--space-2xl); }
.elementor-398 .elementor-element.elementor-element-t0c1a2b3:not(:has(.elementor-toc__list-wrapper)) { display: none; }
.elementor-398 .elementor-element.elementor-element-t0c1a2b3 .elementor-toc__header-title { font-size: var(--fs-body-md); font-weight: 700; }
.elementor-398 .elementor-element.elementor-element-t0c1a2b3 .elementor-toc__list-item { margin-block-end: var(--space-3xs); font-size: var(--fs-body-md); }
.elementor-398 .elementor-element.elementor-element-t0c1a2b3 .elementor-toc__toggle-button { min-width: var(--tap-min); min-height: var(--tap-min); justify-content: center; align-items: center; margin-block: calc(var(--space-xs) * -1); }/* End custom CSS */
/* Start custom CSS for theme-post-content, class: .elementor-element-50b6f363 *//* Post body. WordPress post HTML can't take Elementor classes, so it's styled here with Kit variables only. */
.elementor-398 .elementor-element.elementor-element-50b6f363 { font-size: var(--fs-body-lg); line-height: 1.7; color: var(--cc-slate-700); }
.elementor-398 .elementor-element.elementor-element-50b6f363::after { content: ""; display: table; clear: both; }
.elementor-398 .elementor-element.elementor-element-50b6f363 :is(p, ul, ol, blockquote, figure, .wp-caption) { margin-block: 0 var(--space-lg); }
.elementor-398 .elementor-element.elementor-element-50b6f363 :is(h2, h3, h4) { clear: both; color: var(--cc-navy-900); }
.elementor-398 .elementor-element.elementor-element-50b6f363 h2 { font-size: var(--fs-section-title); margin-block: var(--space-3xl) var(--space-md); }
.elementor-398 .elementor-element.elementor-element-50b6f363 h3 { font-size: var(--fs-card-title); margin-block: var(--space-2xl) var(--space-sm); }
.elementor-398 .elementor-element.elementor-element-50b6f363 h4 { font-family: var(--source-sans-3); font-size: var(--fs-body-lg); font-weight: 700; margin-block: var(--space-lg) var(--space-2xs); }
.elementor-398 .elementor-element.elementor-element-50b6f363 :is(h2, h3, h4):first-child { margin-block-start: 0; }
.elementor-398 .elementor-element.elementor-element-50b6f363 [id^="elementor-toc__heading-anchor"] { scroll-margin-top: calc(var(--header-h-compact) + var(--space-5xl) + var(--space-lg)); }

/* Links and in-body buttons (migrated CTAs use class="btn-primary") */
.elementor-398 .elementor-element.elementor-element-50b6f363 a:not([class]) { text-decoration: underline; text-underline-offset: .15em; }
.elementor-398 .elementor-element.elementor-element-50b6f363 a.btn-primary { display: inline-block; text-decoration: none; }
.elementor-398 .elementor-element.elementor-element-50b6f363 a.btn-primary:hover { color: var(--cc-white); }

/* Lists */
.elementor-398 .elementor-element.elementor-element-50b6f363 :is(ul, ol) { padding-inline-start: 1.25em; }
.elementor-398 .elementor-element.elementor-element-50b6f363 li + li, .elementor-398 .elementor-element.elementor-element-50b6f363 li > :is(ul, ol) { margin-block-start: var(--space-2xs); }
.elementor-398 .elementor-element.elementor-element-50b6f363 li > :is(ul, ol) { margin-block-end: 0; }
.elementor-398 .elementor-element.elementor-element-50b6f363 li::marker { color: var(--cc-blue-600); }

/* Quotes */
.elementor-398 .elementor-element.elementor-element-50b6f363 blockquote { margin-inline: 0; padding-inline-start: var(--space-lg); border-inline-start: 3px solid var(--cc-green-400); font-family: var(--crimson-pro); font-size: var(--fs-card-title); font-style: italic; line-height: 1.4; color: var(--cc-navy-900); }
.elementor-398 .elementor-element.elementor-element-50b6f363 blockquote p { margin: 0; }
.elementor-398 .elementor-element.elementor-element-50b6f363 blockquote cite { display: block; margin-block-start: var(--space-xs); font-family: var(--source-sans-3); font-size: var(--fs-small); font-style: normal; color: var(--cc-slate-500); }

/* Images and captions, including legacy alignleft / alignright and [caption] */
.elementor-398 .elementor-element.elementor-element-50b6f363 figure { margin-inline: 0; }
.elementor-398 .elementor-element.elementor-element-50b6f363 img { height: auto; border-radius: var(--radius-sm); }
.elementor-398 .elementor-element.elementor-element-50b6f363 :is(figcaption, .wp-caption-text) { margin-block-start: var(--space-2xs); font-size: var(--fs-small); font-style: normal; line-height: 1.5; color: var(--cc-slate-500); }
.elementor-398 .elementor-element.elementor-element-50b6f363 .alignleft { float: left; max-width: 50%; margin: var(--space-3xs) var(--space-lg) var(--space-md) 0; }
.elementor-398 .elementor-element.elementor-element-50b6f363 .alignright { float: right; max-width: 50%; margin: var(--space-3xs) 0 var(--space-md) var(--space-lg); }
@media (max-width: 767px) {
  .elementor-398 .elementor-element.elementor-element-50b6f363 :is(.alignleft, .alignright) { float: none; display: block; max-width: 100%; margin: 0 0 var(--space-lg); }
}

/* Tables scroll inside the column instead of widening the page */
.elementor-398 .elementor-element.elementor-element-50b6f363 .wp-block-table { overflow-x: auto; margin-inline: 0; }
.elementor-398 .elementor-element.elementor-element-50b6f363 table { width: 100%; min-width: 36em; margin: 0; border-collapse: collapse; font-size: var(--fs-body); }
.elementor-398 .elementor-element.elementor-element-50b6f363 :is(th, td) { padding: var(--space-xs) var(--space-md); border: 1px solid var(--cc-border); text-align: start; vertical-align: top; }
.elementor-398 .elementor-element.elementor-element-50b6f363 th { background-color: var(--cc-grey-50); color: var(--cc-navy-900); }
.elementor-398 .elementor-element.elementor-element-50b6f363 tbody > tr > td, .elementor-398 .elementor-element.elementor-element-50b6f363 tbody > tr:hover > td { background-color: transparent; }

/* FAQs: core Details block, matched to the site FAQ accordion */
.elementor-398 .elementor-element.elementor-element-50b6f363 details { margin: 0; border-block-end: 1px solid var(--cc-border); }
.elementor-398 .elementor-element.elementor-element-50b6f363 :not(details) + details { border-block-start: 1px solid var(--cc-border); }
.elementor-398 .elementor-element.elementor-element-50b6f363 details + :not(details) { margin-block-start: var(--space-lg); }
.elementor-398 .elementor-element.elementor-element-50b6f363 summary { position: relative; display: block; padding-block: var(--space-ml); padding-inline-end: var(--space-3xl); cursor: pointer; list-style: none; font-family: var(--crimson-pro); font-size: var(--fs-card-title); font-weight: 600; line-height: 1.3; color: var(--cc-navy-900); }
.elementor-398 .elementor-element.elementor-element-50b6f363 summary::-webkit-details-marker { display: none; }
.elementor-398 .elementor-element.elementor-element-50b6f363 summary::after { content: ""; position: absolute; inset-inline-end: 0; top: 50%; width: 32px; height: 32px; margin-block-start: -16px; border: 1px solid var(--cc-blue-300); border-radius: 50%; }
.elementor-398 .elementor-element.elementor-element-50b6f363 summary::before { content: ""; position: absolute; inset-inline-end: 9px; top: 50%; width: 14px; height: 8px; margin-block-start: -4px; background-color: var(--cc-blue-600); -webkit-mask: url(/wp-content/uploads/2026/09/chevron-current.svg) center / contain no-repeat; mask: url(/wp-content/uploads/2026/09/chevron-current.svg) center / contain no-repeat; transition: transform .2s; }
.elementor-398 .elementor-element.elementor-element-50b6f363 details[open] > summary::before { transform: rotate(180deg); }
.elementor-398 .elementor-element.elementor-element-50b6f363 details > :not(summary) { max-width: 70ch; margin-block: 0 var(--space-lg); font-size: var(--fs-body-md); line-height: 1.6; }/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-l00p9r1d *//* Card gaps from Kit variables */
.elementor-398 .elementor-element.elementor-element-l00p9r1d { --grid-column-gap: var(--space-lg); --grid-row-gap: var(--space-lg); }/* End custom CSS */