/* Gutenberg and imported classic content. Adapted from Anthem's rich-text
 * reset; deliberately excludes Elementor marketing widgets and site chrome.
 * Core block CSS owns columns, galleries, covers and responsive embeds.
 * Scoped defaults preserve inline block controls. The article heading scale
 * overrides Elementor's marketing-page heading defaults, not its widgets. */
@font-face {
	font-family: "Instrument Sans";
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/instrument-sans/InstrumentSans-Variable.woff2") format("woff2");
}
@font-face {
	font-family: "Instrument Sans";
	font-style: italic;
	font-weight: 400 700;
	font-display: swap;
	src: url("../fonts/instrument-sans/InstrumentSans-Italic-Variable.woff2") format("woff2");
}

:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) {
	font-family: var(--forte-font-body, "Instrument Sans", sans-serif);
	font-size: 18px;
	line-height: 1.6;
	color: var(--forte-color-text, #2c2f33);
	overflow-wrap: break-word;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(p, ul, ol, dl, figure, blockquote, pre, table, .wp-block-buttons, .wp-block-columns, .wp-block-group, .wp-block-media-text, .wp-block-table) {
	margin-block: 0 1.5em;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(h1, h2, h3, h4, h5, h6) {
	font-family: var(--forte-font-display, "Instrument Sans", sans-serif);
	font-weight: 600;
	line-height: 1.2;
	color: var(--forte-color-brand, #063b5a);
	margin-block: 1.5em 0.6em;
	text-wrap: balance;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(h1) { font-size: 48px; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) :is(h2) { font-size: 36px; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) :is(h3) { font-size: 28px; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) :is(h4) { font-size: 24px; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(h5, h6) { font-size: 20px; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content > .elementor-widget-container) > :first-child { margin-block-start: 0; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content > .elementor-widget-container) > :last-child { margin-block-end: 0; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(ul, ol) { padding-inline-start: 1.5em; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(li + li) { margin-block-start: 0.4em; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(li > ul, li > ol) { margin-block: 0.4em 0; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) a:not(:where(.wp-element-button, .wp-block-button__link)) {
	color: var(--forte-color-accent, #db222a);
	text-decoration: underline;
	text-underline-offset: 0.18em;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) a:not(:where(.wp-element-button, .wp-block-button__link)):is(:hover, :focus-visible) {
	color: var(--forte-color-brand, #063b5a);
	text-decoration-thickness: 2px;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(a:focus-visible, summary:focus-visible, button:focus-visible) {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(strong, b) { font-weight: 700; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(blockquote) {
	margin-inline: 0;
	padding-inline-start: 1.5em;
	border-inline-start: 3px solid var(--forte-color-accent, #db222a);
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(blockquote p:last-child) { margin-block-end: 0; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(cite, figcaption, .wp-element-caption) {
	font-size: 0.875em;
	line-height: 1.5;
	margin-block-start: 0.6em;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(img, video, iframe, object, embed) { max-inline-size: 100%; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(img) { height: auto; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(figure) { margin-inline: 0; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(.wp-block-table, pre) { overflow-x: auto; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(table) { inline-size: 100%; border-collapse: collapse; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(th, td) {
	padding: 0.75em;
	border: 1px solid var(--forte-color-border, #dcdfe2);
	text-align: start;
	vertical-align: top;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(th) { font-weight: 600; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(code, kbd, pre) {
	background-color: var(--forte-color-surface-subtle, #f5f5f5);
	font-family: monospace;
	font-size: 0.9em;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(code, kbd) { padding: 0.15em 0.3em; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(pre) { padding: 1.25em; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(pre code) { padding: 0; background: transparent; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(hr:not(.is-style-dots)) {
	border: 0;
	border-block-start: 1px solid var(--forte-color-border, #dcdfe2);
	margin-block: 2em;
}
/* Outrank the Elementor kit's generic anchor color without !important, so
 * native block color controls can still override these article defaults. */
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) a.wp-block-button__link {
	background: var(--forte-color-accent, #db222a);
	color: #fff;
	border: 1px solid var(--forte-color-accent, #db222a);
	border-radius: 6px;
	font-family: inherit;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	padding: 12px 24px;
	text-decoration: none;
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) .wp-block-button.is-style-outline a.wp-block-button__link {
	background: transparent;
	color: var(--forte-color-brand, #063b5a);
}
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) a.wp-block-button__link:is(:hover, :focus-visible) { filter: brightness(0.9); }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(.alignleft) { float: left; margin-inline: 0 1.5em; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(.alignright) { float: right; margin-inline: 1.5em 0; }
:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(.aligncenter) { margin-inline: auto; }
/* Wide/full blocks stay within the native article container, never the viewport. */
:is(.forte-rich-text, .wp-block-post-content, .elementor-widget-theme-post-content) :where(.alignwide, .alignfull) { max-inline-size: 100%; margin-inline: 0; }
@media (max-width: 767px) {
	:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) { font-size: 17px; }
	:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(h1) { font-size: 36px; }
	:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) :is(h2) { font-size: 28px; }
	:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, body .elementor-widget-theme-post-content) :is(h3) { font-size: 24px; }
	:is(.forte-rich-text, .wp-block-post-content, .editor-styles-wrapper, .elementor-widget-theme-post-content) :where(.alignleft, .alignright) { float: none; margin-inline: 0; }
}
