


h2.wp-block-heading {
  border-block-end-color: var(--color-border-default);
  border-block-end-style: solid;
  border-block-end-width: var(--border-width-md);
  font-size: var(--font-size-50);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--letter-spacing-50);
  line-height: var(--line-height-50);
  margin-block-start: var(--typography-heading-md-margin-top, 72px);
  margin-block-end: var(--spacing-xl);
  padding-block-end: var(--spacing-md);
}

h3.wp-block-heading {
  border-inline-start-color: var(--color-border-default);
  border-inline-start-style: solid;
  border-inline-start-width: var(--border-width-lg);
  font-size: var(--font-size-40);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--letter-spacing-30);
  line-height: var(--line-height-40);
  margin-block-start: var(--typography-heading-sm-margin-top, 48px);
  margin-block-end: var(--spacing-lg);
  padding-inline-start: var(--spacing-md);
}


h4.wp-block-heading {
  font-size: var(--typography-media-heading-xs-sm-font-size, 18px);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--letter-spacing-30);
  line-height: var(--typography-media-heading-xs-sm-line-height, 32px);
  margin-block-start: var(--spacing-xl);
  margin-block-end: var(--spacing-lg);
}


@media (width < 36em) {
  h2.wp-block-heading {
    font-size: var(--font-size-40);
    letter-spacing: var(--letter-spacing-30);
    line-height: var(--line-height-40);
    margin-block-start: var(--spacing-xxl);
  }

  h3.wp-block-heading {
    font-size: var(--typography-media-heading-xs-sm-font-size, 18px);
    line-height: var(--typography-media-heading-xs-sm-line-height, 32px);
  }

  h4.wp-block-heading {
    font-size: var(--typography-heading-xs-font-size);
    line-height: var(--typography-heading-xs-line-height);
  }
}


p.wp-block-paragraph.has-small-font-size {
  letter-spacing: var(--letter-spacing-30);
  line-height: var(--typography-body-xs-line-height);
}


ul.wp-block-list {
  list-style-type: none;
  margin-block: 0;
  padding-inline-start: 0;
}

ul.wp-block-list li {
  
  line-height: 24px;
  
  padding-inline-start: calc(5px + var(--spacing-xs));
  position: relative;
}


ul.wp-block-list li:not(:last-child) {
  margin-block-end: var(--typography-body-md-margin-bottom);
}

ul.wp-block-list li::before {
  background-color: var(--color-brand-brandsub);
  block-size: 5px;
  border-radius: var(--border-radius-infinity);
  content: "";
  inline-size: 5px;
  inset-block-start: 12px;
  inset-inline-start: 0;
  position: absolute;
}

ul.wp-block-list.has-sm-font-size li {
  
  letter-spacing: var(--letter-spacing-30);
}

ul.wp-block-list.has-sm-font-size li:not(:last-child) {
  margin-block-end: var(--typography-body-sm-margin-bottom);
}

ul.wp-block-list.has-sm-font-size li::before {
  inset-block-start: 11px;
}


strong,
b {
  font-weight: var(--typography-body-md-bold-font-weight);
}




:is(
    p.wp-block-paragraph,
    .wp-block-list,
    .wp-block-accordion-panel,
    .wp-block-tab-panel,
    .wp-block-table table,
    .wp-block-quote
  )
  a {
  color: var(--color-text-link);
  text-decoration-line: underline;
  text-decoration-skip-ink: none;
  text-underline-position: from-font;
}


:is(
    p.wp-block-paragraph,
    .wp-block-list,
    .wp-block-accordion-panel,
    .wp-block-tab-panel,
    .wp-block-table table,
    .wp-block-quote
  )
  a:hover {
  text-decoration-line: none;
}


.wp-block-button .wp-block-button__link {
  background-color: var(--color-button-normal-enabled);
  border-color: transparent;
  border-radius: var(--border-radius-md);
  border-style: solid;
  border-width: var(--border-width-md);
  color: var(--color-text-inverse);
  font-size: var(--typography-heading-sm-font-size);
  font-weight: var(--typography-heading-sm-font-weight);
  letter-spacing: var(--typography-heading-sm-letter-spacing);
  line-height: var(--typography-heading-sm-line-height);
  
  padding-block: calc(var(--spacing-md) - var(--border-width-md));
  padding-inline: calc(var(--spacing-lg) - var(--border-width-md));
  text-align: center;
}


.wp-block-button .wp-block-button__link.has-lg-font-size {
  font-weight: var(--typography-heading-xs-font-weight);
  letter-spacing: var(--typography-heading-xs-letter-spacing);
  line-height: var(--typography-heading-xs-line-height);
  padding-block: calc(var(--spacing-sm) - var(--border-width-md));
  padding-inline: calc(var(--spacing-lg) - var(--border-width-md));
}

.wp-block-button .wp-block-button__link.has-md-font-size {
  font-weight: var(--typography-label-sm-font-weight);
  letter-spacing: var(--typography-label-sm-letter-spacing);
  line-height: var(--typography-label-sm-line-height);
  padding-block: calc(var(--spacing-sm) - var(--border-width-md));
  padding-inline: calc(var(--spacing-md) - var(--border-width-md));
}

.wp-block-button .wp-block-button__link.has-sm-font-size {
  font-weight: var(--typography-label-xs-font-weight);
  letter-spacing: var(--typography-label-xs-letter-spacing);
  line-height: var(--typography-label-xs-line-height);
  padding-block: calc(var(--spacing-xs) - var(--border-width-md));
  padding-inline: calc(var(--spacing-sm) - var(--border-width-md));
}

.wp-block-button .wp-block-button__link:hover {
  background-color: var(--color-button-normal-hovered);
}

.wp-block-button .wp-block-button__link:active {
  background-color: var(--color-button-normal-focused);
}


.wp-block-button .wp-block-button__link:focus-visible {
  box-shadow:
    0 0 0 var(--border-width-lg) var(--color-background-default),
    0 0 0 calc(var(--border-width-lg) + 4px) var(--color-text-link);
  outline: none;
}


.wp-block-button .wp-block-button__link[aria-disabled="true"] {
  background-color: var(--color-background-subtle);
  color: var(--color-text-disabled);
  pointer-events: none;
}


.wp-block-button.is-style-outline .wp-block-button__link {
  background-color: var(--color-background-default);
  border-color: var(--color-button-outlined-line);
  color: var(--color-button-outlined-line);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background-color: var(--color-button-outlined-hovered);
}

.wp-block-button.is-style-outline .wp-block-button__link:active {
  background-color: var(--color-button-outlined-focused);
}

.wp-block-button.is-style-outline .wp-block-button__link[aria-disabled="true"] {
  background-color: var(--color-background-default);
  border-color: var(--color-button-outlined-disabled);
  color: var(--color-button-outlined-disabled);
}


.wp-block-accordion-item {
  background-color: var(--color-background-default);
  border-color: var(--color-border-subtle);
  
  border-radius: var(--border-radius-md);
  border-style: solid;
  border-width: var(--border-width-md);
  font-size: var(--typography-body-sm-font-size);
  
  letter-spacing: var(--letter-spacing-30);
  line-height: var(--typography-body-sm-line-height);
  
  overflow: hidden;
}


.wp-block-accordion-heading {
  margin-block: 0;
}

.wp-block-accordion-heading__toggle {
  background-color: var(--color-background-subtler);
  font-size: var(--font-size-30);
  font-weight: var(--font-weight-bold);
  gap: var(--spacing-md);
  
  letter-spacing: var(--letter-spacing-30);
  
  line-height: var(--typography-media-body-md-lh150-bold-line-height, 1.5);
  padding-block: var(--spacing-md);
  padding-inline: var(--spacing-md);
}

.wp-block-accordion-heading__toggle:hover {
  background-color: var(--color-button-outlined-hovered);
}

.wp-block-accordion-heading__toggle:active {
  background-color: var(--color-button-outlined-focused);
}


.wp-block-accordion-heading__toggle:hover
.wp-block-accordion-heading__toggle-title {
  text-decoration: none;
}


.wp-block-accordion-heading__toggle-icon {
  background-color: var(--color-brand-40);
  block-size: var(--icon-size-lg);
  flex-shrink: 0;
  font-size: 0;
  inline-size: var(--icon-size-lg);
  mask-image: url("../images/icons/angle-down.svg");
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
}


.wp-block-accordion-item.is-open > .wp-block-accordion-heading
  .wp-block-accordion-heading__toggle-icon {
  mask-image: url("../images/icons/angle-up.svg");
  transform: none;
}

.wp-block-accordion-item .wp-block-accordion-panel {
  
  margin-block-start: 0;
  padding-block: var(--spacing-lg);
  padding-inline: var(--spacing-lg);
}


.wp-block-accordion-item .wp-block-accordion-panel > * {
  margin-block-start: var(--typography-body-sm-margin-bottom);
}


.wp-block-accordion-item .wp-block-accordion-panel > :first-child {
  margin-block-start: 0;
}

.wp-block-accordion-item .wp-block-accordion-panel > :last-child {
  margin-block-end: 0;
}


@media (width < 36em) {
  .wp-block-accordion-item .wp-block-accordion-panel {
    padding-block: var(--spacing-md);
    padding-inline: var(--spacing-md);
  }
}


.wp-block-table {
  overflow-x: auto;
}

.wp-block-table table {
  border-collapse: collapse;
  width: 100%;
}


.wp-block-table table thead,
.wp-block-table table tfoot {
  border-block-width: 0;
}

.wp-block-table table th,
.wp-block-table table td {
  border-color: var(--color-border-subtle);
  border-style: solid;
  border-width: var(--border-width-md);
  font-size: var(--font-size-20);
  font-weight: var(--font-weight-normal);
  
  letter-spacing: var(--letter-spacing-30);
  
  line-height: 20px;
  padding-block: var(--spacing-xs);
  padding-inline: var(--spacing-xs);
  text-align: start;
}


.wp-block-table:not(.is-style-stripes) table th,
.wp-block-table:not(.is-style-stripes) table td {
  background-color: var(--color-background-default);
}


.wp-block-table table th:first-child,
.wp-block-table table td:first-child {
  white-space: nowrap;
}


.wp-block-table table :is(th, td):first-child .rich-text {
  
  white-space: nowrap !important;
}

.wp-block-table table th:not(:first-child),
.wp-block-table table td:not(:first-child) {
  min-width: 146px;
}


.wp-block-table:not(.is-style-row-header) table thead th,
.wp-block-table:not(.is-style-row-header) table thead td {
  background-color: var(--color-background-subtler);
  font-size: var(--typography-label-sm-bold-font-size);
  font-weight: var(--typography-label-sm-bold-font-weight);
  line-height: var(--typography-label-sm-bold-line-height);
  padding-block: var(--spacing-sm);
  padding-inline: var(--spacing-sm);
  text-align: center;
  white-space: nowrap;
}


.wp-block-table.is-style-row-header table th:first-child,
.wp-block-table.is-style-row-header table td:first-child {
  background-color: var(--color-background-subtler);
  font-size: var(--typography-label-sm-bold-font-size);
  font-weight: var(--typography-label-sm-bold-font-weight);
  line-height: var(--typography-label-sm-bold-line-height);
  padding-block: var(--spacing-sm);
  text-align: center;
}


.wp-block-table.is-style-row-header table thead th:not(:first-child),
.wp-block-table.is-style-row-header table thead td:not(:first-child) {
  text-align: center;
}


.wp-block-table table:has(tr > *:nth-child(4)) th:first-child,
.wp-block-table table:has(tr > *:nth-child(4)) td:first-child {
  inset-inline-start: 0;
  position: sticky;
  z-index: 1;
}

.wp-block-table table:has(tr > *:nth-child(4)) th:first-child::after,
.wp-block-table table:has(tr > *:nth-child(4)) td:first-child::after {
  border-inline-end-color: var(--color-border-subtle);
  border-inline-end-style: solid;
  border-inline-end-width: var(--border-width-md);
  border-inline-start-color: var(--color-border-subtle);
  border-inline-start-style: solid;
  border-inline-start-width: var(--border-width-md);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
}


blockquote.wp-block-quote {
  background-color: var(--color-background-subtler);
  
  border-radius: var(--border-radius-md);
  font-size: var(--typography-body-sm-font-size);
  
  letter-spacing: var(--letter-spacing-30);
  line-height: var(--typography-body-sm-line-height);
  padding-block: var(--spacing-md);
  padding-inline-end: var(--spacing-md);
  
  padding-inline-start: calc(var(--spacing-xs) + 40px + var(--spacing-xs));
  position: relative;
}


blockquote.wp-block-quote::before {
  background-color: var(--color-background-subtle);
  block-size: 40px;
  content: "";
  inline-size: 40px;
  inset-block-start: var(--spacing-xs);
  inset-inline-start: var(--spacing-xs);
  mask-image: url("../images/icons/quote-right-solid.svg");
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
  position: absolute;
}



blockquote.wp-block-quote > * {
  margin-block-start: var(--typography-body-sm-margin-bottom);
}


hr.wp-block-separator {
  border-block-start-color: var(--color-border-subtle);
  border-block-start-style: solid;
  border-block-start-width: var(--border-width-md);
  margin-block: 48px;
}




.wp-block-tabs .wp-block-tab-panels {
  margin-block-start: 0;
}


.wp-block-tabs .wp-block-tab-list {
  background-color: var(--color-background-default);
  border-inline-end-color: var(--color-border-subtle);
  border-inline-end-style: solid;
  border-inline-end-width: var(--border-width-md);
  flex-wrap: nowrap;
  gap: var(--spacing-none);
  overflow-x: auto;
}


.wp-block-tab-list [role="tab"] {
  background-color: var(--color-background-default);
  border-block-color: var(--color-border-subtle);
  border-block-style: solid;
  border-block-width: var(--border-width-md);
  border-inline-start-color: var(--color-border-subtle);
  border-inline-start-style: solid;
  border-inline-start-width: var(--border-width-md);
  color: var(--color-text-default);
  
  flex: 1 0 0 !important;
  font-size: var(--font-size-30);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--letter-spacing-30);
  
  line-height: var(--typography-media-body-md-lh150-line-height, 1.5);
  min-block-size: 44px;
  min-inline-size: 72px;
  overflow: hidden;
  padding: var(--spacing-xs);
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}



.wp-block-tab-list [role="tab"] .rich-text {
  
  white-space: nowrap !important;
}

.wp-block-tab-list [role="tab"][aria-selected="true"] {
  background-color: var(--color-background-brand-subtler);
  color: var(--color-brand-brandsub);
}


.wp-block-tab-list [role="tab"][aria-selected="true"]::before {
  content: none;
}

.wp-block-tab-list [role="tab"]:hover {
  background-color: var(--color-button-outlined-hovered);
  color: var(--color-brand-brandsub);
}

.wp-block-tab-list [role="tab"]:active {
  background-color: var(--color-button-outlined-focused);
  color: var(--color-brand-brandsub);
}


.wp-block-tab-list [role="tab"]:focus-visible {
  background-color: var(--color-background-default);
  color: var(--color-brand-brandsub);
  outline-color: var(--color-text-link);
  outline-offset: calc(var(--border-width-lg) * -1);
  outline-style: solid;
  outline-width: var(--border-width-lg);
}


.wp-block-tab-list [role="tab"]:disabled,
.wp-block-tab-list [role="tab"][aria-disabled="true"] {
  background-color: var(--color-background-default);
  color: var(--color-button-outlined-disabled);
}


.wp-block-tabs .wp-block-tab-panel {
  border-block-end-color: var(--color-border-subtle);
  border-block-end-style: solid;
  border-block-end-width: var(--border-width-md);
  border-end-end-radius: var(--border-radius-md);
  border-end-start-radius: var(--border-radius-md);
  border-inline-color: var(--color-border-subtle);
  border-inline-style: solid;
  border-inline-width: var(--border-width-md);
  color: var(--color-text-default);
  font-size: var(--font-size-20);
  letter-spacing: var(--letter-spacing-30);
  line-height: var(--line-height-20);
  padding: var(--spacing-md);
}


.wp-block-tabs .wp-block-tab-panel > * {
  margin-block-start: var(--spacing-md);
}


.wp-block-tabs .wp-block-tab-panel > :first-child {
  margin-block-start: 0;
}

.wp-block-tabs .wp-block-tab-panel > :last-child {
  margin-block-end: 0;
}


@media (width < 36em) {
  .wp-block-tab-list [role="tab"] {
    block-size: calc(2lh + var(--spacing-xs) + 2 * var(--border-width-md));
    -webkit-box-orient: vertical;
    display: -webkit-box;
    
    flex: 1 0 auto !important;
    font-size: var(--font-size-20);
    -webkit-line-clamp: 2;
    
    line-height: var(--typography-media-body-sm-lh150-line-height, 1.5);
    max-inline-size: 216px;
    overflow: clip;
    overflow-clip-margin: content-box;
    padding-block: calc(var(--spacing-xs) / 2);
    white-space: normal;
  }

  
  .wp-block-tab-list [role="tab"]:only-child {
    max-inline-size: none;
  }

  
  .wp-block-tab-list [role="tab"] .rich-text {
    
    white-space: normal !important;
  }
}
