/*
  Native HTML styled with GCDS 1.6.0 tokens (from /assets/vendor/gcds/gcds.css),
  mirroring the gcds-heading, gcds-notice, gcds-details, gcds-table and
  gcds-date-modified components so the content works without JavaScript.
*/
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  color: var(--gcds-text-primary);
  font: 400 1rem/160% var(--gcds-font-families-body);
}

/* gcds-header / gcds-footer need JS; the <noscript> fallbacks replace them. */
gcds-header:not(:defined),
gcds-footer:not(:defined) {
  display: none;
}
.noscript-header,
.noscript-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: var(--gcds-container-size-xl);
  max-width: 90%;
  margin-inline: auto;
  padding-block: 1.5rem;
}
.noscript-header {
  border-bottom: 1px solid var(--gcds-border-default);
  margin-bottom: 2rem;
}
.noscript-header img {
  width: min(18rem, 60%);
  height: auto;
}
.noscript-footer {
  justify-content: flex-end;
  margin-top: 3rem;
}

/* gcds-container layout="page" */
.page-container {
  display: block;
  width: var(--gcds-container-size-xl);
  max-width: 90%;
  margin-inline: auto;
}

/* Links (gcds-link) */
a {
  color: var(--gcds-link-default);
  text-decoration-thickness: var(--gcds-link-decoration-thickness);
  text-underline-offset: var(--gcds-link-underline-offset);
}
a:visited {
  color: var(--gcds-link-visited);
}
a:hover {
  color: var(--gcds-link-hover);
  text-decoration-thickness: var(--gcds-link-hover-decoration-thickness);
}
a:focus {
  background-color: var(--gcds-link-focus-background);
  border-radius: var(--gcds-link-focus-border-radius);
  box-shadow: var(--gcds-link-focus-box-shadow);
  color: var(--gcds-link-focus-text);
  outline: var(--gcds-link-focus-outline-width) solid
    var(--gcds-link-focus-background);
  outline-offset: var(--gcds-link-focus-outline-offset);
  text-decoration: none;
}

/* Headings (gcds-heading) */
.page-container h1,
.page-container h2 {
  color: var(--gcds-heading-default-text);
  text-wrap: balance;
}
.page-container h1 {
  font: var(--gcds-heading-h1-desktop);
  max-width: var(--gcds-heading-character-limit-h1);
  margin: 0 0 1.5rem;
}
.page-container h1::after {
  content: "";
  display: block;
  background-color: var(--gcds-heading-h1-border-background);
  height: var(--gcds-heading-h1-border-height);
  width: var(--gcds-heading-h1-border-width);
  margin-block-start: var(--gcds-heading-h1-border-margin);
}
.page-container h2 {
  font: var(--gcds-heading-h2-desktop);
  max-width: var(--gcds-heading-character-limit-h2);
  margin: 3rem 0 1.5rem;
}
.page-container h2.no-limit {
  max-width: none;
}

/* Body text (gcds-text) */
.page-container p,
.page-container li {
  font: var(--gcds-text-size-body-desktop);
}
.page-container p {
  max-width: var(--gcds-text-character-limit);
  margin: 0 0 1.5rem;
}

/* Notice (gcds-notice notice-role="warning") */
.gcds-notice {
  display: grid;
  gap: var(--gcds-notice-icon-gap);
  grid-template-columns: var(--gcds-notice-icon-width) auto;
  color: var(--gcds-notice-text);
}
.gcds-notice .notice__icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: var(--gcds-notice-icon-margin);
  color: var(--gcds-notice-warning-text);
}
.gcds-notice .notice__icon::before,
.gcds-notice .notice__icon::after {
  content: "";
  display: block;
  width: var(--gcds-notice-border-width);
  background-color: currentColor;
}
.gcds-notice .notice__icon::before {
  height: var(--gcds-notice-icon-before-height);
}
.gcds-notice .notice__icon::after {
  flex: 1;
}
.gcds-notice .notice__glyph::before {
  content: "\f014";
  font-family: var(--gcds-font-families-icons);
  font-size: var(--gcds-icon-font-size-h4);
  line-height: var(--gcds-icon-line-height-h4);
}
.gcds-notice h2 {
  font: var(--gcds-notice-content-heading-font-desktop);
  margin: var(--gcds-notice-content-heading-margin-block-start-desktop) 0 0.5rem;
}
.gcds-notice p {
  font: var(--gcds-notice-content-slotted-font-desktop);
  margin: 0 0 1.5rem;
}

/* Details (gcds-details) */
.gcds-details + .gcds-details {
  margin-block-start: 1rem;
}
.gcds-details summary {
  display: block;
  list-style: none;
  position: relative;
  width: fit-content;
  cursor: pointer;
  color: var(--gcds-details-default-text);
  font: var(--gcds-details-font-desktop);
  padding: var(--gcds-details-summary-padding);
  text-decoration: underline var(--gcds-details-default-decoration-thickness);
  text-underline-offset: var(--gcds-details-summary-underline-offset);
  transition:
    background-color 0.15s ease-in-out,
    color 0.15s ease-in-out;
}
.gcds-details summary::-webkit-details-marker {
  display: none;
}
.gcds-details summary::before {
  content: "";
  position: absolute;
  left: var(--gcds-details-summary-arrow-left);
  top: var(--gcds-details-summary-arrow-top);
  border-block: var(--gcds-details-summary-arrow-border-top-bottom) solid
    transparent;
  border-inline-start: var(--gcds-details-summary-arrow-border-left) solid
    currentColor;
  transition: transform 0.15s ease-in-out;
}
.gcds-details[open] > summary::before {
  transform: rotate(90deg);
}
@media (hover: hover) {
  .gcds-details summary:hover:not(:focus) {
    color: var(--gcds-details-hover-text);
    text-decoration-thickness: var(--gcds-details-hover-decoration-thickness);
  }
}
.gcds-details summary:focus {
  background-color: var(--gcds-details-focus-background);
  border-radius: var(--gcds-details-focus-border-radius);
  box-shadow: var(--gcds-details-focus-box-shadow);
  color: var(--gcds-details-focus-text);
  outline: var(--gcds-details-focus-outline);
  outline-offset: var(--gcds-details-focus-outline-offset);
  text-decoration: none;
}
.gcds-details .details__panel {
  position: relative;
  margin: var(--gcds-details-panel-margin);
  padding: var(--gcds-details-panel-padding);
}
.gcds-details .details__panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: var(--gcds-details-panel-border-width);
  height: 100%;
  background-color: var(--gcds-details-panel-border-color);
}
.details__panel > * {
  margin-block: 0;
}
.details__panel > :not(:last-child) {
  margin-block-end: var(--gcds-details-panel-slotted-margin);
}
.details__panel > :last-child {
  margin-block-end: 0;
}
.details__panel :is(p, li) {
  font: var(--gcds-details-font-desktop);
}
.details__panel p {
  max-width: none;
}
.hyphen-list {
  list-style: disc;
  margin: 0;
  padding-inline-start: 2rem;
}

/* Tables (gcds-table) */
.gcds-table {
  width: 100%;
  margin-block-start: var(--gcds-table-margin);
  border-collapse: collapse;
  border-block-start: var(--gcds-table-border-width) solid
    var(--gcds-table-outer-border-color);
  color: var(--gcds-table-text);
  font: var(--gcds-table-font);
}
.gcds-table th {
  border-block-end: var(--gcds-table-header-cell-border-width) solid
    var(--gcds-table-header-cell-border-color);
  color: var(--gcds-table-header-cell-text);
  font-weight: var(--gcds-table-header-cell-font-weight);
  text-align: left;
  vertical-align: top;
}
.gcds-table tbody tr {
  border-block-end: var(--gcds-table-border-width) solid
    var(--gcds-table-cell-border-color);
}
.gcds-table td {
  vertical-align: top;
  overflow-wrap: anywhere;
}
@media only screen and (width >= 48em) {
  .gcds-table :is(th, td) {
    padding: var(--gcds-table-cell-padding-desktop);
  }
  .gcds-table a[href^="tel:"] {
    white-space: nowrap;
  }
}
/* Below 48em cells stack, each labelled by its column (data-column). */
@media only screen and (width < 48em) {
  .gcds-table td {
    display: block;
    font-weight: var(--gcds-table-font-weight-mobile);
    padding: var(--gcds-table-cell-padding-mobile);
  }
  .gcds-table td::before {
    content: attr(data-column);
    display: block;
    color: var(--gcds-table-label-mobile);
    font-size: var(--gcds-table-font-size-small);
  }
  .gcds-table td:first-of-type {
    padding-block-start: var(--gcds-table-cell-padding-mobile-first-last);
  }
  .gcds-table td:last-of-type {
    padding-block-end: var(--gcds-table-cell-padding-mobile-first-last);
  }
  .gcds-table thead th {
    position: absolute;
    clip: rect(0 0 0 0);
  }
}

/* Date modified (gcds-date-modified) */
.gcds-date-modified {
  margin: var(--gcds-date-modified-margin);
  font: var(--gcds-date-modified-font);
}
.gcds-date-modified :is(dt, dd) {
  display: inline;
}
.gcds-date-modified dd {
  margin: var(--gcds-date-modified-description-margin);
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media only screen and (width < 48em) {
  .page-container h1 {
    font: var(--gcds-heading-h1-mobile);
  }
  .page-container h2 {
    font: var(--gcds-heading-h2-mobile);
  }
  .page-container :is(p, li) {
    font: var(--gcds-text-size-body-mobile);
  }
  .gcds-notice h2 {
    font: var(--gcds-notice-content-heading-font-mobile);
    margin-block-start: var(
      --gcds-notice-content-heading-margin-block-start-mobile
    );
  }
  .gcds-notice p {
    font: var(--gcds-notice-content-slotted-font-mobile);
  }
  .gcds-notice .notice__glyph::before {
    font-size: var(--gcds-icon-font-size-h4-mobile);
    line-height: var(--gcds-icon-line-height-h4-mobile);
  }
  .gcds-details summary,
  .details__panel :is(p, li) {
    font: var(--gcds-details-font-mobile);
  }
}

@media print {
  gcds-header,
  gcds-footer {
    display: none;
  }
}
