/**
 * Rise Utility Classes
 * Extracted from Rise CSS for SCORM rendering
 * Critical for text content rendering fidelity
 *
 * Classes included:
 * - .brand--linkColor: Link color theming
 * - .fr-view: Froala editor content styles (typography, tables, lists)
 * - .rise-tiptap: TipTap editor styles (line breaks, nesting)
 * - .tiptap-editor: TipTap editor placeholder styles
 */

/* === Brand Link Color === */

.bg--type-accent .brand--linkColor a,.bg--type-accent .brand--linkColor a:hover,.bg--type-accent a:hover:not(.blocks-button__button),.bg--type-accent a:not(.blocks-button__button),.bg--type-image .brand--linkColor a,.bg--type-image .brand--linkColor a:hover,.bg--type-image a:hover:not(.blocks-button__button),.bg--type-image a:not(.blocks-button__button) {
  color:var(--color-text)!important
}

/* === Quote Block Overrides === */
/* Remove purple blockquote styling for quote blocks that have custom styling */
.block-quote--c .fr-view blockquote,
.block-quote--c .brand--linkColor blockquote,
.block-quote--c blockquote {
  border-inline-start: none !important;
  border-inline-start-color: transparent !important;
  border-inline-start-width: 0 !important;
  color: var(--color-text, #000) !important;
  font-style: italic !important;
  margin-inline-start: 0 !important;
  padding-inline-start: 0 !important;
}

.bg--type-accent .block-card--white .brand--linkColor a,.bg--type-accent .block-card--white a,.bg--type-image .block-card--white .brand--linkColor a,.bg--type-image .block-card--white a {
  color:var(--color-theme)!important
}

.block-quote--background .brand--linkColor a,.block-quote--background a {
  color:var(--color-theme)!important
}

.block-image--overlay.bg--type-accent .brand--linkColor a,.block-image--overlay.bg--type-accent a,.block-image--overlay.bg--type-image .brand--linkColor a,.block-image--overlay.bg--type-image a {
  color:var(--color-theme)!important
}

.block-labeled-graphic.bg--type-accent .brand--linkColor a,.block-labeled-graphic.bg--type-accent a,.block-labeled-graphic.bg--type-image .brand--linkColor a,.block-labeled-graphic.bg--type-image a {
  color:var(--color-theme)!important
}


/* === Froala Editor Content === */

h2 .fr-box,h2.fr-box,h3 .fr-box,h3.fr-box,h4 .fr-box,h4.fr-box,h5 .fr-box,h5.fr-box,h2 .fr-view,h2.fr-view,h3 .fr-view,h3.fr-view,h4 .fr-view,h4.fr-view,h5 .fr-view,h5.fr-view {
  font-family:var(--font-family-head)!important;
  font-weight:700;
  line-height:1.25;
  padding-block:.8rem;
  padding-inline:0
}

h2 .fr-box p,h2.fr-box p,h3 .fr-box p,h3.fr-box p,h4 .fr-box p,h4.fr-box p,h5 .fr-box p,h5.fr-box p,h2 .fr-view p,h2.fr-view p,h3 .fr-view p,h3.fr-view p,h4 .fr-view p,h4.fr-view p,h5 .fr-view p,h5.fr-view p {
  font-family:var(--font-family-head)!important;
  font-weight:700;
  line-height:1.25
}

h2 .fr-box,h2.fr-box,h2 .fr-view,h2.fr-view {
  font-size:2.8rem
}

@media(min-width:45em){h2 .fr-box,h2.fr-box,h2 .fr-view,h2.fr-view {
  font-size:3.2rem
}

}

@media print{h2 .fr-box,h2.fr-box,h2 .fr-view,h2.fr-view {
  font-size:2.2rem
}

}

h3 .fr-box,h3.fr-box,h3 .fr-view,h3.fr-view {
  font-size:2.2rem
}

@media(min-width:45em){h3 .fr-box,h3.fr-box,h3 .fr-view,h3.fr-view {
  font-size:2.4rem
}

}

@media print{h3 .fr-box,h3.fr-box,h3 .fr-view,h3.fr-view {
  font-size:1.8rem
}

}

h4 .fr-box,h4.fr-box,h4 .fr-view,h4.fr-view {
  font-size:1.8rem
}

@media(min-width:45em){h4 .fr-box,h4.fr-box,h4 .fr-view,h4.fr-view {
  font-size:2rem
}

}

@media print{h4 .fr-box,h4.fr-box,h4 .fr-view,h4.fr-view {
  font-size:1.6rem
}

}

h5 .fr-box,h5.fr-box,h5 .fr-view,h5.fr-view {
  font-size:1.6rem
}

@media(min-width:45em){h5 .fr-box,h5.fr-box,h5 .fr-view,h5.fr-view {
  font-size:1.8rem
}

}

@media print{h5 .fr-box,h5.fr-box,h5 .fr-view,h5.fr-view {
  font-size:1.4rem
}

}

.fr-box,.fr-view {
  overflow-wrap:break-word
}

.fr-box span[style~="color:"] a,.fr-view span[style~="color:"] a {
  color:inherit
}

.fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),.fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h2 .fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h2.fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h3 .fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h3.fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h4 .fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h4.fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h5 .fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h5.fr-box :not(.fa-regular,h1,h2,h3,h4,h5,h6),h2 .fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h2.fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h3 .fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h3.fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h4 .fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h4.fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h5 .fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6),h5.fr-view :not(.fa-regular,h1,h2,h3,h4,h5,h6) {
  font-family:inherit!important
}

h1 .fr-box,h1.fr-box,h2 .fr-box,h2.fr-box,h3 .fr-box,h3.fr-box,h4 .fr-box,h4.fr-box,h5 .fr-box,h5.fr-box,h6 .fr-box,h6.fr-box,h1 .fr-view,h1.fr-view,h2 .fr-view,h2.fr-view,h3 .fr-view,h3.fr-view,h4 .fr-view,h4.fr-view,h5 .fr-view,h5.fr-view,h6 .fr-view,h6.fr-view {
  font-family:var(--font-family-head)!important
}

h1 .fr-box:empty,h1.fr-box:empty,h2 .fr-box:empty,h2.fr-box:empty,h3 .fr-box:empty,h3.fr-box:empty,h4 .fr-box:empty,h4.fr-box:empty,h5 .fr-box:empty,h5.fr-box:empty,h6 .fr-box:empty,h6.fr-box:empty,.fr-box p:empty,h1 .fr-view:empty,h1.fr-view:empty,h2 .fr-view:empty,h2.fr-view:empty,h3 .fr-view:empty,h3.fr-view:empty,h4 .fr-view:empty,h4.fr-view:empty,h5 .fr-view:empty,h5.fr-view:empty,h6 .fr-view:empty,h6.fr-view:empty,.fr-view p:empty {
  min-height:1lh
}

.fr-box sub,.fr-view sub {
  font-size:smaller;
  vertical-align:sub
}

.fr-box sup,.fr-view sup {
  font-size:smaller;
  vertical-align:super
}

.fr-box sub rise-math,.fr-box sup rise-math,.fr-view sub rise-math,.fr-view sup rise-math {
  font-size:larger;
  vertical-align:initial
}

ul .fr-box,ul.fr-box,ul .fr-view,ul.fr-view {
  list-style-type:disc
}

ol .fr-box,ol.fr-box,ul .fr-box,ul.fr-box,ol .fr-view,ol.fr-view,ul .fr-view,ul.fr-view {
  list-style-position:outside;
  margin-block:0 3.2rem;
  margin-inline:3.2rem 0
}

ol .fr-box,ol.fr-box,ol .fr-view,ol.fr-view {
  list-style-type:decimal
}

ol .fr-box ul,ol.fr-box ul,ul .fr-box ul,ul.fr-box ul,ol .fr-view ul,ol.fr-view ul,ul .fr-view ul,ul.fr-view ul {
  list-style-position:outside;
  list-style-type:circle
}

ol .fr-box ol,ol.fr-box ol,ul .fr-box ol,ul.fr-box ol,ol .fr-view ol,ol.fr-view ol,ul .fr-view ol,ul.fr-view ol {
  list-style-position:outside;
  list-style-type:lower-latin
}

ol .fr-box li,ol.fr-box li,ul .fr-box li,ul.fr-box li,ol .fr-view li,ol.fr-view li,ul .fr-view li,ul.fr-view li {
  margin-block-start:1.4rem
}

.fr-box em,.fr-view em {
  font-style:italic
}

.fr-box strong,.fr-view strong {
  font-weight:700
}

table .fr-box,table.fr-box,.fr-box table,table .fr-view,table.fr-view,.fr-view table {
  border:none;
  border-collapse:collapse;
  empty-cells:show;
  max-width:100%
}

table .fr-box td,table.fr-box td,.fr-box table td,table .fr-view td,table.fr-view td,.fr-view table td,table .fr-box th,table.fr-box th,.fr-box table th,table .fr-view th,table.fr-view th,.fr-view table th {
  border:1px solid var(--table-border-color,#eaeaeb);
  font-size:1.4rem;
  vertical-align:middle
}

table .fr-box td:empty,table.fr-box td:empty,.fr-box table td:empty,table .fr-view td:empty,table.fr-view td:empty,.fr-view table td:empty,table .fr-box th:empty,table.fr-box th:empty,.fr-box table th:empty,table .fr-view th:empty,table.fr-view th:empty,.fr-view table th:empty {
  height:20px
}

table .fr-box th,table.fr-box th,.fr-box table th,table .fr-view th,table.fr-view th,.fr-view table th {
  background:#e6e6e6;
  font-weight:700;
  padding-block:1.7rem 1.5rem;
  padding-inline:1.5rem
}

table .fr-box td,table.fr-box td,.fr-box table td,table .fr-view td,table.fr-view td,.fr-view table td {
  min-width:5px;
  padding-block:1.7rem;
  padding-inline:1.5rem
}

table .fr-box.fr-alternate-rows tbody tr:nth-child(2n),table.fr-box.fr-alternate-rows tbody tr:nth-child(2n),.fr-box table.fr-alternate-rows tbody tr:nth-child(2n),table .fr-view.fr-alternate-rows tbody tr:nth-child(2n),table.fr-view.fr-alternate-rows tbody tr:nth-child(2n),.fr-view table.fr-alternate-rows tbody tr:nth-child(2n) {
  background:#f5f5f5
}

table .fr-box.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(2n),table.fr-box.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(2n),.fr-box table.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(2n),table .fr-view.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(2n),table.fr-view.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(2n),.fr-view table.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(2n) {
  background:#0000
}

table .fr-box.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(odd),table.fr-box.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(odd),.fr-box table.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(odd),table .fr-view.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(odd),table.fr-view.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(odd),.fr-view table.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(odd) {
  background:#f5f5f5
}

table .fr-box.fr-dashed-borders td,table.fr-box.fr-dashed-borders td,.fr-box table.fr-dashed-borders td,table .fr-view.fr-dashed-borders td,table.fr-view.fr-dashed-borders td,.fr-view table.fr-dashed-borders td,table .fr-box.fr-dashed-borders th,table.fr-box.fr-dashed-borders th,.fr-box table.fr-dashed-borders th,table .fr-view.fr-dashed-borders th,table.fr-view.fr-dashed-borders th,.fr-view table.fr-dashed-borders th {
  border-style:dashed
}

table .fr-box td.fr-highlighted,table.fr-box td.fr-highlighted,.fr-box table td.fr-highlighted,table .fr-view td.fr-highlighted,table.fr-view td.fr-highlighted,.fr-view table td.fr-highlighted,table .fr-box th.fr-highlighted,table.fr-box th.fr-highlighted,.fr-box table th.fr-highlighted,table .fr-view th.fr-highlighted,table.fr-view th.fr-highlighted,.fr-view table th.fr-highlighted {
  border:1px double red
}

table .fr-box td.fr-thick,table.fr-box td.fr-thick,.fr-box table td.fr-thick,table .fr-view td.fr-thick,table.fr-view td.fr-thick,.fr-view table td.fr-thick,table .fr-box th.fr-thick,table.fr-box th.fr-thick,.fr-box table th.fr-thick,table .fr-view th.fr-thick,table.fr-view th.fr-thick,.fr-view table th.fr-thick {
  border-width:2px
}

rise-math .fr-box,rise-math.fr-box,.fr-box rise-math,rise-math .fr-view,rise-math.fr-view,.fr-view rise-math {
  padding-block:calc(.5lh - .5em);
  padding-inline:0
}

.fr-box--placeholder,.fr-view--placeholder {
  color:#aaa
}

hr .fr-box,hr.fr-box,.fr-box hr,hr .fr-view,hr.fr-view,.fr-view hr {
  break-after:page;
  clear:both;
  page-break-after:always;
  -webkit-user-select:none;
  user-select:none
}

pre .fr-box,pre.fr-box,.fr-box pre,pre .fr-view,pre.fr-view,.fr-view pre {
  overflow:visible;
  overflow-wrap:break-word;
  white-space:pre-wrap
}

blockquote .fr-box[dir=rtl],blockquote.fr-box[dir=rtl],.fr-box[dir=rtl] blockquote,blockquote .fr-view[dir=rtl],blockquote.fr-view[dir=rtl],.fr-view[dir=rtl] blockquote {
  border-inline-end:2px solid #5e35b1;
  border-inline-start:none;
  margin-inline-end:0;
  padding-inline:0 5px
}

blockquote .fr-box[dir=rtl] blockquote,blockquote.fr-box[dir=rtl] blockquote,.fr-box[dir=rtl] blockquote blockquote,blockquote .fr-view[dir=rtl] blockquote,blockquote.fr-view[dir=rtl] blockquote,.fr-view[dir=rtl] blockquote blockquote {
  border-color:#00bcd4
}

blockquote .fr-box[dir=rtl] blockquote blockquote,blockquote.fr-box[dir=rtl] blockquote blockquote,.fr-box[dir=rtl] blockquote blockquote blockquote,blockquote .fr-view[dir=rtl] blockquote blockquote,blockquote.fr-view[dir=rtl] blockquote blockquote,.fr-view[dir=rtl] blockquote blockquote blockquote {
  border-color:#43a047
}

blockquote .fr-box,blockquote.fr-box,.fr-box blockquote,blockquote .fr-view,blockquote.fr-view,.fr-view blockquote {
  border-inline-start:2px solid #5e35b1;
  color:#5e35b1;
  margin-inline-start:0;
  padding-inline-start:5px
}

/* Override purple blockquote styling for quote blocks */
.block-quote blockquote,
.block-quote blockquote .fr-view,
.block-quote blockquote .fr-box {
  border-inline-start: none !important;
  color: var(--color-text, #000) !important;
  margin-inline-start: 0 !important;
  padding-inline-start: 0 !important;
}

blockquote .fr-box blockquote,blockquote.fr-box blockquote,.fr-box blockquote blockquote,blockquote .fr-view blockquote,blockquote.fr-view blockquote,.fr-view blockquote blockquote {
  border-color:#00bcd4;
  color:#00bcd4
}

blockquote .fr-box blockquote blockquote,blockquote.fr-box blockquote blockquote,.fr-box blockquote blockquote blockquote,blockquote .fr-view blockquote blockquote,blockquote.fr-view blockquote blockquote,.fr-view blockquote blockquote blockquote {
  border-color:#43a047;
  color:#43a047
}

img .fr-box,img.fr-box,.fr-box img,img .fr-view,img.fr-view,.fr-view img {
  max-width:100%;
  position:relative
}

.fr-view table.block-text__table td,.fr-view table.block-text__table th {
  border-color:var(--color-table-border)
}

.block-list__content__left .fr-view>*,.block-list__content__left .fr-view>* li {
  margin-block:0;
  margin-inline:0;
  position:absolute
}

.block-list__content__left .fr-view>* li:first-child,.block-list__content__left .fr-view>:first-child {
  position:relative
}

.block-list__content__left .fr-view>* br,.block-list__content__left .fr-view>* li br {
  display:none
}

@media(min-width:42.5em){.block-process-card__description,.block-process-card__description .fr-view table td,.block-process-card__description .fr-view table th {
  font-size:var(--arc-font-size-16)
}

}

.timeline-card__description .fr-view h3,.timeline-card__description .fr-view h4,.timeline-card__description .fr-view h5 {
  font-family:var(--font-family-head);
  font-weight:700;
  letter-spacing:.02rem;
  line-height:1.85;
  margin-block:1rem;
  padding-block:0;
  padding-inline:0
}

.timeline-card__description .fr-view h3 {
  font-size:2rem
}

@media print{.timeline-card__description .fr-view h3 {
  font-size:1.5rem
}

}

.timeline-card__description .fr-view h4 {
  font-size:1.8rem
}

@media print{.timeline-card__description .fr-view h4 {
  font-size:1.3rem
}

}

.timeline-card__description .fr-view h5 {
  font-size:1.6rem
}

@media print{.timeline-card__description .fr-view h5 {
  font-size:1.1rem
}

}


/* === TipTap Editor === */

/* Line break handling for headings and paragraphs */
.rise-tiptap h1:has(>br.break-when-trailing:last-child:not(.ProseMirror-trailingBreak)):after,
.rise-tiptap h2:has(>br.break-when-trailing:last-child:not(.ProseMirror-trailingBreak)):after,
.rise-tiptap h3:has(>br.break-when-trailing:last-child:not(.ProseMirror-trailingBreak)):after,
.rise-tiptap h4:has(>br.break-when-trailing:last-child:not(.ProseMirror-trailingBreak)):after,
.rise-tiptap h5:has(>br.break-when-trailing:last-child:not(.ProseMirror-trailingBreak)):after,
.rise-tiptap h6:has(>br.break-when-trailing:last-child:not(.ProseMirror-trailingBreak)):after,
.rise-tiptap p:has(>br.break-when-trailing:last-child:not(.ProseMirror-trailingBreak)):after {
  content: "\a";
  white-space: pre;
}

/* Table structure */
.rise-tiptap table {
  border: none;
  border-collapse: collapse;
  empty-cells: show;
  max-width: 100%;
}

.rise-tiptap table td,
.rise-tiptap table th {
  border: 1px solid #eaeaeb;
  vertical-align: middle;
}

.rise-tiptap table th {
  background: #e6e6e6;
  font-weight: 700;
  padding: 1.7rem 1.5rem 1.5rem;
}

.rise-tiptap table td {
  min-width: 5px;
  padding: 1.7rem 1.5rem;
}

.rise-tiptap table td:empty,
.rise-tiptap table th:empty {
  height: 20px;
}

/* Table alternating rows */
.rise-tiptap table.fr-alternate-rows tbody tr:nth-child(2n) {
  background: #f5f5f5;
}

.rise-tiptap table.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(2n) {
  background: #0000;
}

.rise-tiptap table.fr-alternate-rows:has(>tbody>tr:first-child>th) tr:nth-child(odd) {
  background: #f5f5f5;
}

/* Table border styles */
.rise-tiptap table.fr-dashed-borders td,
.rise-tiptap table.fr-dashed-borders th {
  border-style: dashed;
}

.rise-tiptap table td.fr-highlighted,
.rise-tiptap table th.fr-highlighted {
  border: 1px double red;
}

.rise-tiptap table td.fr-thick,
.rise-tiptap table th.fr-thick {
  border-width: 2px;
}

/* Table wrapper for horizontal scroll */
.rise-tiptap .rise-table-wrap {
  overflow-x: auto;
}

/* === TipTap Editor Variations === */

.block-quote--a .block-quote__caption .tiptap-editor p.is-editor-empty:first-child,.block-quote--a .block-quote__caption--blank .tiptap-editor p.is-editor-empty:first-child,.block-quote--b .block-quote__caption .tiptap-editor p.is-editor-empty:first-child,.block-quote--b .block-quote__caption--blank .tiptap-editor p.is-editor-empty:first-child {
  padding-inline-start:calc(50% - 5.5ch);
  position:relative;
  text-align:left
}

.block-quote--a .block-quote__text .tiptap-editor p.is-editor-empty:first-child,.block-quote--a .block-quote__text--blank .tiptap-editor p.is-editor-empty:first-child,.block-quote--b .block-quote__text .tiptap-editor p.is-editor-empty:first-child,.block-quote--b .block-quote__text--blank .tiptap-editor p.is-editor-empty:first-child,.block-quote--carousel .block-quote__text .tiptap-editor p.is-editor-empty:first-child,.block-quote--carousel .block-quote__text--blank .tiptap-editor p.is-editor-empty:first-child {
  padding-inline-start:calc(50% - 8.5ch);
  position:relative;
  text-align:left
}

.block-quote--carousel .block-quote__caption .tiptap-editor p.is-editor-empty:first-child,.block-quote--carousel .block-quote__caption--blank .tiptap-editor p.is-editor-empty:first-child {
  padding-inline-start:calc(50% - 6.5ch);
  position:relative;
  text-align:left
}


/* Screen reader only (visually hidden) */
.visually-hidden-always {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


/* === Utility Classes from blocks_v2.css === */

.bg--type-black,.bg--type-dark {
  --color-border-decorative:#ffffff80;
  --color-caption-placeholder-text:#fff;
  --color-progress-track:#eaeaeb;
  --color-text:#fff}

.bg--type-accent.bg--contrast-light,.bg--type-black,.bg--type-color.bg--contrast-light,.bg--type-dark,.bg--type-image:not(.bg--overlay-light) {
  --color-carousel-arrow:#fffc}

.bg--type-accent {
  --color-border-decorative:rgb(var(--color-theme-contrast-rgb),0.3);
  --color-caption-placeholder-text:var(--color-theme-contrast);
  --color-progress-track:rgb(var(--color-theme-contrast-complementary-rgb),0.3);
  --color-text:var(--color-theme-contrast);
  --color-theme-decorative-fg:var(--color-theme-contrast-complementary);
  --color-theme-decorative:var(--color-theme-contrast)}

.bg--type-accent.bg--contrast-light {
  --color-border-decorative:rgb(var(--color-theme-contrast-rgb),0.5)}

.bg--type-color {
  --color-border-decorative:rgb(var(--color-background-contrast-rgb),0.3);
  --color-caption-placeholder-text:var(--color-background-contrast);
  --color-progress-track:rgb(var(--color-background-contrast-rgb),0.3);
  --color-text:var(--color-background-contrast,#000)}

.bg--type-color.bg--contrast-light {
  --color-border-decorative:rgb(var(--color-background-contrast-rgb),0.5)}

.bg--type-image {
  --color-border-decorative:#fffc;
  --color-caption-placeholder-text:#fff;
  --color-progress-track:#ffffff80;
  --color-text:#fff;
  --color-theme-decorative-fg:#000;
  --color-theme-decorative:#fff}

.bg--type-image.bg--overlay-light {
  --color-border-decorative:#0009;
  --color-caption-placeholder-text:#000;
  --color-progress-track:#0003;
  --color-text:#000;
  --color-theme-decorative-fg:#fff;
  --color-theme-decorative:#000}

.bg--type-accent .brand--linkColor a,.bg--type-accent .brand--linkColor a:hover,.bg--type-accent a:hover:not(.blocks-button__button),.bg--type-accent a:not(.blocks-button__button),.bg--type-image .brand--linkColor a,.bg--type-image .brand--linkColor a:hover,.bg--type-image a:hover:not(.blocks-button__button),.bg--type-image a:not(.blocks-button__button) {
  color:var(--color-text)!important}

.bg--type-black .block-card--disabled,.bg--type-dark .block-card--disabled,.bg--type-image .block-card--disabled {
  --color-text:#fff}

.bg--type-accent .block-card--disabled {
  --color-text:var(--color-theme-contrast,#fff)}

.bg--type-color .block-card--disabled {
  --color-text:var(--color-background-contrast,#fff)}

.bg--type-image.bg--overlay-light .block-card--disabled {
  --color-text:#000}

.bg--type-accent .block-card--white .brand--linkColor a,.bg--type-accent .block-card--white a,.bg--type-image .block-card--white .brand--linkColor a,.bg--type-image .block-card--white a {
  color:var(--color-theme)!important}

.bg--type-black .block-card--transparent {
  --color-background:#262626}

.bg--type-gray .block-card--transparent,.bg--type-light .block-card--transparent {
  --color-text-error:#de1d1d}

.bg--type-dark .block-card--transparent {
  --color-background:#494949}

.bg--type-accent .block-card--transparent {
  --color-text:#000;
  --color-theme-contrast-rgb:0,0,0;
  --color-theme-contrast:#000;
  --color-theme-contrast-complementary:#fff;
  --color-theme-decorative-fg:#fff;
  --color-theme-decorative:#000}

.bg--type-color .block-card--transparent {
  --color-text:#000}

.bg--type-accent .block-card--transparent.block-card--contrast-light {
  --color-text:#fff;
  --color-theme-contrast-rgb:255,255,255;
  --color-theme-contrast:#fff;
  --color-theme-contrast-complementary:#000;
  --color-theme-decorative-fg:#000;
  --color-theme-decorative:#fff}

.bg--type-color .block-card--transparent.block-card--contrast-light {
  --color-text:#fff;
  --color-text-opposite:#000}

.bg--type-image .block-card--transparent {
  --color-background:var(--color-background-image-light);
  --color-border-decorative:#000;
  --color-question-draw-border:#00000080;
  --color-text:#000;
  --color-theme-decorative-fg:#fff;
  --color-theme-decorative:#000}

.bg--type-image.bg--overlay-light .block-card--transparent {
  --color-background:var(--color-background-image-dark);
  --color-border-decorative:#fff;
  --color-question-draw-border:#ffffff80;
  --color-text:#fff;
  --color-theme-decorative-fg:#000;
  --color-theme-decorative:#fff;
  box-shadow:0 .2rem 3rem #0000001a}

.bg--card-transparent:not(.bg--type-light):not(.bg--type-gray):not(.bg--type-image) .blocks-tabs__header-item:first-child {
  border-inline-start:#0000}

.bg--card-transparent:not(.bg--type-light):not(.bg--type-gray):not(.bg--type-image) .blocks-tabs__controls:after,.bg--card-transparent:not(.bg--type-light):not(.bg--type-gray):not(.bg--type-image) .blocks-tabs__header-item:last-child {
  border-inline-end:#0000}

.bg--card-transparent .blocks-tabs__content,.bg--card-transparent .blocks-tabs__controls,.bg--card-transparent .blocks-tabs__header-item {
  --color-tabs-border:#0000}

.bg--card-transparent.bg--range-light .blocks-tabs__header-item,.bg--card-transparent.bg--type-tint .blocks-tabs__header-item {
  --color-tabs-border-divider:#00000026;
  --color-tabs-hover-background:#fff6;
  --color-tabs-inactive-background:#ffffff59}

.bg--card-transparent.bg--range-med .blocks-tabs__header-item {
  --color-tabs-border-divider:#0006;
  --color-tabs-hover-background:#00000059;
  --color-tabs-inactive-background:#0003}

.bg--card-transparent.bg--range-dark .blocks-tabs__header-item {
  --color-tabs-border:var(--color-background);
  --color-tabs-border-divider:#0006;
  --color-tabs-hover-background:#0006;
  --color-tabs-inactive-background:#00000059}

.bg--card-transparent.bg--range-near-black .blocks-tabs__header-item {
  --color-tabs-border:var(--color-background);
  --color-tabs-border-divider:#ffffff4d;
  --color-tabs-hover-background:#0009;
  --color-tabs-inactive-background:#00000080}

.bg--card-transparent.bg--type-gray .blocks-tabs__content,.bg--card-transparent.bg--type-gray .blocks-tabs__header-item,.bg--card-transparent.bg--type-light .blocks-tabs__content,.bg--card-transparent.bg--type-light .blocks-tabs__header-item {
  --color-tabs-border:#ddd;
  --color-tabs-border-divider:#ddd;
  --color-tabs-hover-background:#efefef;
  --color-tabs-inactive-background:#f5f5f5}

.bg--card-transparent.bg--type-gray .blocks-tabs__controls,.bg--card-transparent.bg--type-light .blocks-tabs__controls {
  --color-tabs-border:#ddd;
  --gradient-left-tabs:0}

.bg--card-transparent.bg--type-image .blocks-tabs__content,.bg--card-transparent.bg--type-image .blocks-tabs__controls,.bg--card-transparent.bg--type-image .blocks-tabs__header-item {
  --color-tabs-border:#0006;
  --color-tabs-border-divider:#0006;
  --gradient-left-tabs:0;
  --color-tabs-hover-background:#ffffff80;
  --color-tabs-inactive-background:#ffffff59}

.bg--card-transparent.bg--type-image.bg--overlay-light .blocks-tabs__content,.bg--card-transparent.bg--type-image.bg--overlay-light .blocks-tabs__controls,.bg--card-transparent.bg--type-image.bg--overlay-light .blocks-tabs__header-item {
  --color-tabs-border:#ffffff80;
  --color-tabs-border-divider:#ffffff80;
  --gradient-left-tabs:0;
  --color-tabs-hover-background:#000;
  --color-tabs-inactive-background:#00000080}

.bg--card-transparent:not(.bg--type-light):not(.bg--type-gray):not(.bg--type-image) .blocks-tabs--single .blocks-tabs__header-item {
  --color-tabs-border-divider:#0000}

.bg--card-transparent:not(.bg--type-light):not(.bg--type-gray):not(.bg--type-image) .blocks-tabs__controls {
  --color-tabs-first-gradient:rgb(var(--color-background-rgb),1) 0%;
  --color-tabs-second-gradient:rgb(var(--color-background-rgb),0) 100%}

.bg--card-transparent.bg--type-image.bg--overlay-light .blocks-tabs__controls {
  --color-tabs-first-gradient:#000 0%;
  --color-tabs-second-gradient:#0000 100%}

.bg--range-light .blocks-accordion__item.block-card.bg--range-light {
  border-style:none solid solid}

.bg--range-light .blocks-accordion__item.block-card.bg--range-light:first-child {
  border-top-style:solid}

.bg--card-transparent.bg--type-black .blocks-accordion__item,.bg--card-transparent.bg--type-dark .blocks-accordion__item {
  --color-accordion-item-border:#ffffff80;
  --color-accordion-toggle:#fffc;
  --color-accordion-toggle-hover:#fff}

.bg--card-transparent.bg--type-accent .blocks-accordion__item {
  --color-accordion-item-border:rgb(var(--color-theme-contrast-rgb),0.3);
  --color-accordion-toggle:rgb(var(--color-theme-contrast-rgb),0.5);
  --color-accordion-toggle-hover:var(--color-theme-contrast)}

.bg--card-transparent.bg--type-accent .blocks-accordion__item.bg--contrast-light .bg--card-transparent.bg--type-accent .blocks-accordion__item__item {
  --color-accordion-toggle:rgb(var(--color-theme-contrast-rgb),0.8);
  --color-accordion-item-border:rgb(var(--color-theme-contrast-rgb),0.5)}

.bg--card-transparent.bg--type-color .blocks-accordion__item {
  --color-accordion-item-border:rgb(var(--color-background-contrast-rgb),0.3);
  --color-accordion-toggle:rgb(var(--color-background-contrast-rgb),0.5);
  --color-accordion-toggle-hover:var( --color-text,var(--color-background-contrast) )}

.bg--card-transparent.bg--type-color .blocks-accordion__item.bg--contrast-light .bg--card-transparent.bg--type-color .blocks-accordion__item__item {
  --color-accordion-toggle:rgb(var(--color-background-contrast-rgb),0.8);
  --color-accordion-item-border:rgb(var(--color-background-contrast-rgb),0.5)}

.bg--card-transparent.bg--type-image .blocks-accordion__item {
  --color-accordion-item-border:#0009;
  --color-accordion-toggle:#0009;
  --color-accordion-toggle-hover:#000}

.bg--card-transparent.bg--type-image.bg--overlay-light .blocks-accordion__item {
  --color-accordion-item-border:#fffc;
  --color-accordion-toggle:#fffc;
  --color-accordion-toggle-hover:#fff}

.bg--image .blocks-accordion__item {
  border-style:none solid solid;
  border-width:.1rem}

.bg--image .blocks-accordion__item:first-child {
  border-top-left-radius:.4rem;
  border-top-right-radius:.4rem;
  border-top-style:solid}

.bg--image .blocks-accordion__item:last-child {
  border-bottom-left-radius:.4rem;
  border-bottom-right-radius:.4rem}

.bg--image .blocks-accordion__item.block-card.bg--range-light {
  border-style:none none solid}

.bg--image .blocks-accordion__item.block-card.bg--range-light:first-child {
  border-radius:0;
  border-top-style:none}

.bg--image .blocks-accordion__item.block-card.bg--range-light:last-child {
  border-radius:0}

.bg--type-gray .block-attachment.block-card--transparent,.bg--type-light .block-attachment {
  background-color:#f7f7f7}

.bg--type-image .block-attachment {
  border:.1rem solid hsla(0,0%,100%,.498)}

.bg--type-image.bg--overlay-light .block-attachment,.bg--type-light .block-attachment,.block-attachment.block-card--white {
  border:.1rem solid #76767c;
  box-shadow:none}

.bg--type-accent .block-process-card {
  --box-shadow-step:0 4px 5px 0px #0003;
  --color-step-bg:var(--color-theme-contrast);
  --color-step-text:var(--color-theme-contrast-complementary)}

.bg--type-image.bg--card-transparent .block-process-card {
  --color-step-bg:var(--arc-color-mono-black);
  --color-step-text:var(--arc-color-mono-white)}

.bg--type-image.bg--overlay-light.bg--card-transparent .block-process-card {
  --color-step-bg:var(--arc-color-mono-white);
  --color-step-text:var(--arc-color-mono-black)}

.bg--type-accent .block-process-carousel {
  --controls-bg-color:var(--color-theme-contrast);
  --controls-icon-color:var(--color-theme-contrast-complementary)}

.bg--type-black .block-process-carousel,.bg--type-dark .block-process-carousel,.bg--type-image:not(.bg--overlay-light) .block-process-carousel {
  --controls-bg-color:#fff9;
  --controls-icon-color:var(--arc-color-mono-black)}

.bg--type-color.bg--contrast-light .block-process-carousel {
  --controls-bg-color:var(--arc-color-mono-white);
  --controls-icon-color:var(--arc-color-mono-black)}

.bg--type-black .deck,.bg--type-dark .deck,.bg--type-image .deck {
  --color-deck-border:#fff3;
  --color-deck-title:#fff}

.bg--type-image .deck {
  --color-deck-restart-button-hover:#fff9}

.bg--type-image.bg--overlay-light .deck {
  --color-deck-border:#0003;
  --color-deck-restart-button-hover:#0009;
  --color-deck-title:#000}

.bg--type-accent .deck {
  --color-deck-border:rgba(var(--color-theme-contrast-rgb,#000),0.2);
  --color-deck-restart-button:var(--color-theme-contrast);
  --color-deck-restart-button-hover:rgba(var(--color-theme-contrast-rgb,#000),0.6);
  --color-deck-title:var(--color-theme-contrast,#000)}

.bg--type-color .deck {
  --color-deck-border:rgba(var(--color-background-contrast-rgb,#000),0.2);
  --color-deck-restart-button:var(--color-background-contrast);
  --color-deck-restart-button-hover:rgba(var(--color-background-contrast-rgb,#000),0.6);
  --color-deck-title:var(--color-background-contrast,#000)}

.bg--type-accent .playing-card__content,.bg--type-color .playing-card__content,.bg--type-image .playing-card__content,.bg--type-tint .playing-card__content {
  box-shadow:none}

.bg--card-transparent.bg--type-black .playing-card__content,.bg--card-transparent.bg--type-dark .playing-card__content {
  --color-content:rgba(#fff,0.6)}

.bg--card-transparent.bg--type-image .playing-card__content {
  --color-background:#fff;
  --color-border-block-start:#0000;
  --color-content:#0006}

.bg--card-transparent.bg--type-image.bg--overlay-light .playing-card__content {
  --color-background:#000;
  --color-content:#fff9;
  --color-title:#fff}

.bg--card-transparent.bg--type-accent .playing-card__content {
  --color-content:rgba(var(--color-theme-contrast-rgb,#000) 0.4)}

.bg--card-transparent.bg--type-accent.bg--light-contrast .playing-card__content {
  --color-content:rgba(var(--color-theme-contrast-rgb,#000) 0.6)}

.bg--type-accent .playing-card__content {
  --color-border-block-start:#0000}

.bg--branded .playing-card__content:before {
  border-block-start:none;
  border-top-left-radius:0;
  border-top-right-radius:0;
  inset-block-start:0}

.bg--card-transparent.bg--type-accent .playing-card__content {
  --color-transparent-contrast-rgb:var(--color-theme-contrast-rgb);
  --color-transparent-border:rgba(var(--color-theme-contrast-rgb,#000),0.3)}

.bg--card-transparent.bg--type-black .playing-card:first-child .playing-card__content,.bg--card-transparent.bg--type-dark .playing-card:first-child .playing-card__content {
  --color-title:#fff}

.bg--type-accent .playing-card:first-child .playing-card__content {
  --color-border-block-start:#0000}

.bg--card-transparent.bg--type-accent .playing-card:first-child .playing-card__content {
  --color-title:var(--color-text,var(--color-theme-contrast))}

.bg--card-transparent.bg--type-color .playing-card:first-child .playing-card__content {
  --color-title:var(--color-text,var(--color-background-contrast))}

.bg--card-transparent.bg--type-black .playing-card__title,.bg--card-transparent.bg--type-dark .playing-card__title {
  --color-title:#fff}

.bg--card-transparent.bg--type-accent .playing-card__title {
  --color-title:var(--color-text,var(--color-theme-contrast))}

.bg--card-transparent.bg--type-color .playing-card__title {
  --color-title:var(--color-text,var(--color-background-contrast))}

.bg--card-transparent.bg--type-black .playing-card__handle,.bg--card-transparent.bg--type-dark .playing-card__handle,.bg--card-transparent.bg--type-image.bg--overlay-light .playing-card__handle {
  --color-handle-border:#fffc}

.bg--card-transparent.bg--type-image .playing-card__handle {
  --color-handle-border:#000c}

.bg--card-transparent.bg--type-accent .playing-card__handle {
  --color-theme-contrast-rgb:var(--color-theme-contrast-rgb);
  --color-handle-border:rgba(var(--color-theme-contrast-rgb,#000),0.8)}

.bg--card-transparent.bg--type-color .playing-card__handle {
  --color-theme-contrast-rgb:var(--color-background-contrast-rgb);
  --color-handle-border:rgba(var(--color-theme-contrast-rgb,#000),0.8)}

.bg--type-accent .playing-card__status {
  --color-status-background:var(--color-theme-contrast);
  --box-shadow-status:0 4px 5px 0px #0003;
  --color-status-icon:var(--color-theme-contrast-complementary)}

.bg--card-transparent.bg--type-image .playing-card__status {
  --color-status-background:#000;
  --color-status-icon:#fff}

.bg--card-transparent.bg--type-image.bg--overlay-light .playing-card__status {
  --color-status-background:#fff;
  --color-status-icon:#000}

.bg--type-black .restart-button,.bg--type-dark .restart-button,.bg--type-image .restart-button {
  --deck-restart-button-color:#fff;
  --restart-border-color:#fff3}

.bg--type-image.bg--overlay-light .restart-button {
  --deck-restart-button-color:#000;
  --restart-border-color:#0003}

.bg--type-accent .restart-button {
  --restart-border-color:rgba(var(--color-theme-contrast-rgb,#000),0.2)}

.bg--type-color .restart-button {
  --restart-border-color:rgba(var(--color-background-contrast-rgb,#000),0.2)}

.bg--type-black .pile__title,.bg--type-dark .pile__title {
  --color-title:#fff}

.bg--type-image .pile__title {
  --color-title:#000}

.bg--type-image.bg--overlay-light .pile__title {
  --color-title:#fff}

.bg--type-accent .pile__title {
  --color-title:var(--color-theme-contrast,#000)}

.bg--type-accent.bg--card-transparent .pile__title {
  --color-title:var(--color-text,var(--color-theme-contrast))}

.bg--type-color .pile__title {
  --color-title:var(--color-background-contrast,#000)}

.bg--type-color.bg--card-transparent .pile__title {
  --color-title:var(--color-text,var(--color-background-contrast))}

.bg--type-accent .pile__wrap,.bg--type-black .pile__wrap,.bg--type-color .pile__wrap,.bg--type-dark .pile__wrap,.bg--type-image .pile__wrap,.bg--type-tint .pile__wrap {
  --color-background:none}

.bg--type-black .pile__wrap,.bg--type-dark .pile__wrap {
  --color-border-dashed:#fffc}

.bg--type-image.bg--overlay-light .pile__wrap {
  --color-border-dashed:#fff}

.bg--type-accent .pile__wrap {
  --color-theme-contrast-rgb:var(--color-theme-contrast-rgb);
  --color-border-dashed:rgba(var(--color-theme-contrast-rgb,#000),0.8)}

.bg--type-color .pile__wrap {
  --color-theme-contrast-rgb:var(--color-background-contrast-rgb);
  --color-border-dashed:rgba(var(--color-theme-contrast-rgb,#000),0.8)}

.bg--range-med .pile__background {
  background:#00000059}

.bg--range-dark .pile__background {
  background:#0006}

.bg--range-near-black .pile__background {
  background:#ffffff1a}

.bg--type-image .pile__background {
  background:#ffffffb3}

.bg--type-image.bg--overlay-light .pile__background {
  background:#000000b3}

.bg--range-dark .timeline,.bg--range-near-black .timeline,.bg--type-image:not(.bg--overlay-light) .timeline {
  --color-border-connector:#fff3}

.bg--type-accent .timeline-card__body:before,.bg--type-image.bg--card-transparent .timeline-card__body:before {
  content:none}

/* === Base Utility Classes from rise_main.css === */

.block-wrapper {
  --color-background:#fff;
  background-color:var(--color-background);
  background-position:50% 50%;
  background-size:cover;
  transition:background-color .1s linear,padding-block .5s linear,padding-inline .5s linear}

.bg {
  --color-border-decorative:#0003;
  --color-caption-placeholder-text:#aaa;
  --color-carousel-arrow:#00000080;
  --color-progress-track:#0000004d;
  --color-text:#000;
  --color-theme-decorative-fg:var(--color-theme-contrast,#fff);
  --color-theme-decorative:var(--color-theme);
  color:var(--color-text);
  transition:color .1s linear}

.block-card {
  --color-background-image-dark:#000000b3;
  --color-background-image-light:#ffffffb3;
  --color-background:#fff;
  background-color:var(--color-background);
  color:var(--color-text);
  transition:background-color .1s linear}

.block-card.bg--range-light {
  box-shadow:0 .2rem 3rem #0000001a}

.block-card--white {
  --color-text:#000;
  --color-text-error:#de1d1d;
  --color-theme-decorative:var(--color-theme);
  --color-theme-decorative-fg:var(--color-theme-contrast,#fff)}

.blocks-accordion__item.block-card.bg--range-light {
  border-radius:0;
  box-shadow:none}

.bg--range-light .blocks-accordion__item.block-card.bg--range-light {
  border-style:none solid solid}

.bg--image .blocks-accordion__item.block-card.bg--range-light {
  border-style:none none solid}

.block-embed__item--border.block-card--white {
  border:.1rem solid #ddd}

.block-embed.bg--type-light .block-embed__item.block-card--white {
  box-shadow:none}

.bg--type-image.bg--overlay-light .block-attachment,.bg--type-light .block-attachment,.block-attachment.block-card--white {
  border:.1rem solid #76767c;
  box-shadow:none}

.block-flashcards.bg--type-accent .flashcard-side,.block-flashcards.bg--type-color .flashcard-side,.block-flashcards.bg--type-gray .flashcard-side,.block-flashcards.bg--type-gray .flashcard-side.block-card.bg--range-light,.block-flashcards.bg--type-light .flashcard-side,.block-flashcards.bg--type-light .flashcard-side.block-card.bg--range-light,.block-flashcards.bg--type-tint .flashcard-side,.flashcard-side.block-card--white,.flashcard-side.block-card--white.block-card.bg--range-light {
  box-shadow:0 .4rem 1.2rem .2rem #0000000d}

.block-flashcards.bg--type-light .flashcard-side,.flashcard-side.block-card--white {
  border:1px solid #ddd}

.block-knowledge.bg--type-light .block-knowledge__wrapper.block-card--transparent,.block-knowledge__wrapper.block-card--white {
  border:.1rem solid #ddd}

.block-knowledge.bg--type-gray .block-knowledge__wrapper.block-card--transparent,.block-knowledge.bg--type-light .block-knowledge__wrapper.block-card--transparent,.block-knowledge.bg--type-tint .block-knowledge__wrapper.block-card--transparent,.block-knowledge__wrapper.block-card--white {
  --color-quiz-fill-text:#000}

.block-knowledge__wrapper.block-card--transparent,.block-knowledge__wrapper.block-card--white {
  border:.1rem solid #ddd}

.playing-card__content.bg--range-light {
  --color-transparent-border:rgba(#000,0.3)}