@property --bg-clr-set {
  syntax: "*";
  inherits: false
}

@property --bg-img-set {
  syntax: "*";
  inherits: false
}

@property --text-clr-set {
  syntax: "*";
  inherits: false
}

@property --height-set {
  syntax: "*";
  inherits: false
}

@property --height-min-set {
  syntax: "*";
  inherits: false
}

@property --height-max-set {
  syntax: "*";
  inherits: false
}

@property --width-set {
  syntax: "*";
  inherits: false
}

@property --width-min-set {
  syntax: "*";
  inherits: false
}

@property --width-max-set {
  syntax: "*";
  inherits: false
}

@property --margin-top-set {
  syntax: "*";
  inherits: false
}

@property --margin-bottom-set {
  syntax: "*";
  inherits: false
}

@property --margin-left-set {
  syntax: "*";
  inherits: false
}

@property --margin-right-set {
  syntax: "*";
  inherits: false
}

@property --padding-top-set {
  syntax: "*";
  inherits: false
}

@property --padding-bottom-set {
  syntax: "*";
  inherits: false
}

@property --padding-left-set {
  syntax: "*";
  inherits: false
}

@property --padding-right-set {
  syntax: "*";
  inherits: false
}

@property --gap-inline-set {
  syntax: "*";
  inherits: false
}

@property --gap-block-set {
  syntax: "*";
  inherits: false
}

@property --rotation-set {
  syntax: "*";
  inherits: false
}

@property --align-vertical-set {
  syntax: "*";
  inherits: false
}

@property --align-horizontal-set {
  syntax: "*";
  inherits: false
}

@property --rounding-min-set {
  syntax: "*";
  inherits: false
}

@property --rounding-med-set {
  syntax: "*";
  inherits: false
}

@property --rounding-full-set {
  syntax: "*";
  inherits: false
}

@property --border-set {
  syntax: "*";
  inherits: false
}

@property --border-top-set {
  syntax: "*";
  inherits: false
}

@property --border-right-set {
  syntax: "*";
  inherits: false
}

@property --border-left-set {
  syntax: "*";
  inherits: false
}

@property --border-bottom-set {
  syntax: "*";
  inherits: false
}

:root {
  font-family: var(--wp--preset--font-family--dgm);
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  text-size-adjust: none;
}

@supports (font-variation-settings: normal) {
  :root {
    font-family: var(--wp--preset--font-family--dgm);
  }
}

*, :before, :after {
  box-sizing: border-box;
  interpolate-size: allow-keywords;

  &:focus-visible {
    outline: 3px solid var(--clr-brand);
    outline-offset: 3px;
  }
}

:target {
  scroll-margin-block-start: calc(var(--size-header, 0px) + 1em);
}

@media print {
  * {
    break-inside: avoid;
  }
}

body:not(.wp-admin) {
  overflow-wrap: anywhere;
  -webkit-font-smoothing: antialiased;
  scrollbar-gutter: stable;
  max-width: 100vw;
  margin: 0;
  padding: 0;
  line-height: 1.5;
  overflow-x: clip;
}

:where(img, picture, video, canvas, svg) {
  object-fit: cover;
  max-width: 100%;
  display: block;
}

:where(input, button, textarea, select) {
  font: inherit;
}

:where(span, p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
  letter-spacing: .01em;
  margin-block: var(--margin-block);

  &.dgm_use-vars {
    margin-block: var(--margin-top, var(--margin-block, var(--margin-top-default, 0))) var(--margin-bottom, var(--margin-block, var(--margin-bottom-default, 0)));
  }

  &:where(p, span) {
    text-wrap: pretty;
  }

  &:where(h1, h2, h3, h4, h5, h6) {
    text-wrap: balance;

    & :where(strong, em) {
      letter-spacing: .015em;
      font-weight: 800;
    }
  }

  &:where(:empty:not(.dgm_show-empty, .dgm_icon)) {
    display: none;
  }
}

:where(a) {
  color: inherit;
  transition: var(--transition-default);
  text-underline-offset: 2px;
  border-radius: var(--rounding-25);

  :where(.dgm_span) > & {
    text-decoration: inherit;
  }

  :where(:not(p, span) > &) {
    text-decoration-color: #0000;
  }

  &:where(:hover, :focus-visible) {
    text-underline-offset: 3px;
    text-decoration-color: currentColor;
  }
}

:where(button) {
  all: unset;
  text-align: center;
}

:where(ul) {
  margin-block: unset;
}

:where(dialog) {
  padding: unset;
  margin: unset;
  border: unset;
  background: unset;
  color: inherit;
  max-width: unset;
  max-height: unset;

  &:focus {
    outline: none;
  }
}

:where(table) {
  border-width: 1px;
}

:where(code) {
  font-family: var(--wp--preset--font-family--dgm-mono);
}

h1 {
  --margin-block: .25em;
}

h2 {
  --margin-block: .5em;
}

h3 {
  --margin-block: .67em;
}

h4 {
  --margin-block: .5em;
}

p {
  --margin-top-default: .5em;
  --margin-bottom-default: 1.5em;
  max-width: var(--width-max, 100ch);
  font-size: .875rem;
  line-height: 1.7;

  :where(.dgm_nav, .dgm_header, .dgm_footer) & {
    --margin-top: unset;
    --margin-bottom: unset;
    font-size: inherit;
    max-width: var(--width-max);
    line-height: 1.5;
  }
}

:where(.wp-element-caption) {
  margin-block: .5em;

  & :where(strong, em) {
    font-weight: 550;
  }
}

:where(.dgm_use-vars) {
  --bg-clr: var(--bg-clr-set);
  --bg-img: var(--bg-img-set);
  --text-clr: var(--text-clr-set);
  --accent-clr: var(--accent-clr-set);
  --height: var(--height-set);
  --height-min: var(--height-min-set);
  --height-max: var(--height-max-set);
  --width: var(--width-set);
  --width-min: var(--width-min-set);
  --width-max: var(--width-max-set);
  --margin-top: var(--margin-top-set);
  --margin-bottom: var(--margin-bottom-set);
  --margin-left: var(--margin-left-set);
  --margin-right: var(--margin-right-set);
  --padding-top: var(--padding-top-set);
  --padding-bottom: var(--padding-bottom-set);
  --padding-left: var(--padding-left-set);
  --padding-right: var(--padding-right-set);
  --gap-inline: var(--gap-inline-set);
  --gap-block: var(--gap-block-set);
  --rotation: var(--rotation-set);
  --align-vertical: var(--align-vertical-set);
  --align-horizontal: var(--align-horizontal-set);
  --rounding-min: var(--rounding-min-set);
  --rounding-med: var(--rounding-med-set);
  --rounding-full: var(--rounding-full-set);
  --self-rounding: var(--self-rounding-set);
  --border: var(--border-set);
  --border-top: var(--border-top-set);
  --border-right: var(--border-right-set);
  --border-left: var(--border-left-set);
  --border-bottom: var(--border-bottom-set);
  background-color: var(--bg-clr);
  background-image: var(--bg-img);
  color: var(--text-clr);
  height: var(--height);
  min-height: var(--height-min);
  max-height: var(--height-max);
  width: var(--width);
  min-width: var(--width-min);
  max-width: var(--width-max);
  margin-top: var(--margin-top);
  margin-bottom: var(--margin-bottom);
  margin-left: var(--margin-left);
  margin-right: var(--margin-right);
  padding-top: var(--padding-top);
  padding-bottom: var(--padding-bottom);
  padding-left: var(--padding-left);
  padding-right: var(--padding-right);
  row-gap: var(--gap-block);
  column-gap: var(--gap-inline);
  transform: rotate(var(--rotation));
  justify-content: var(--align-horizontal);
  justify-items: var(--align-horizontal);
  align-items: var(--align-vertical);
  border-radius: var(--self-rounding, var(--calc-rounding));
  border: var(--border);
  border-top: var(--border-top, var(--border));
  border-right: var(--border-right, var(--border));
  border-left: var(--border-left, var(--border));
  border-bottom: var(--border-bottom, var(--border));

  &:where([data-breakpoint="stretch"]) {
    padding-left: calc(max((100vw - var(--breakpoint))/2, 0px) + var(--padding-left, 0px));
    padding-right: calc(max((100vw - var(--breakpoint))/2, 0px) + var(--padding-right, 0px));
  }

  &:where([data-breakpoint="inset"]) {
    margin-left: calc(max((100vw - var(--breakpoint))/2, 0px) + var(--margin-left, 0px));
    margin-right: calc(max((100vw - var(--breakpoint))/2, 0px) + var(--margin-right, 0px));
  }

  &:is(.is-layout-grid, .is-layout-flex) {
    row-gap: var(--gap-block);
    column-gap: var(--gap-inline);
  }

  :where(body[data-rootRounding="minimal"]) & {
    --calc-rounding: var(--rounding-min, var(--self-rounding, var(--self-rounding-default)));
  }

  :where(body[data-rootRounding="medium"]) & {
    --calc-rounding: var(--rounding-med, var(--self-rounding, var(--self-rounding-default)));
  }

  :where(body[data-rootRounding="full"]) & {
    --calc-rounding: var(--rounding-full, var(--self-rounding, var(--self-rounding-default)));
  }
}

@media (width <= 480px) {
  :where(.dgm_collapse-margin-inline__m) {
    border-radius: var(--rounding-self-m, var(--calc-rounding));
    margin-inline: 0;
  }

  :where(.dgm_shrink-padding-inline__m) {
    --padding-left: calc(.5 * var(--padding-left-set));
    --padding-right: calc(.5 * var(--padding-right-set));
  }
}

:where(input, textarea, select):where(:not([class*="components"])) {
  all: unset;
  box-sizing: border-box;

  :where(.dgm_form[data-variant="filled"], :not(.dgm_form[data-variant])) & {
    --background: var(--clr-grey-100);
    --border: 3px solid transparent;
    --border-hover: 3px solid var(--clr-grey-110);
    --padding: 1em;
    --check-bg-clr: var(--clr-grey-120);
  }

  :where(.dgm_form[data-variant="outlined"]) & {
    --background: var(--clr-white-900);
    --border: 1px solid var(--clr-grey-180);
    --border-hover: 1px solid var(--clr-grey-200);
    --padding: .7em;
    --check-bg-clr: var(--clr-white-900);
  }

  :where(p:has(&)) {
    max-width: unset;
  }

  &[type="text"], &[type="email"], &[type="number"], &[type="password"], &[type="search"], &[type="tel"], &[type="url"], &[type="date"], &[type="datetime-local"], &[type="month"], &[type="time"], &[type="week"], &:is(textarea, select) {
    box-sizing: border-box;
    background-color: var(--background);
    border: var(--border);
    border-radius: var(--rounding-50);
    width: 100%;
    padding: var(--padding);
    transition: var(--transition-default);
    color: var(--clr-black-900);
    align-items: center;
    font-size: .9rem;
    line-height: 1.5;
    display: block;
    overflow: visible;

    :where(&):where(:hover, :focus-visible) {
      border: var(--border-hover);
    }
  }

  &[type="file"] {
    border: 2px dashed var(--clr-grey-150);
    cursor: pointer;
    color: var(--clr-grey-600);
    box-sizing: border-box;
    border-radius: var(--rounding-50);
    transition: var(--transition-default);
    padding: var(--space);
    text-align: center;

    &:where(:hover, :focus-visible) {
      color: var(--clr-brand);
      border: 2px dashed var(--clr-brand);
      background: var(--clr-brand-light);
    }
  }

  &:is([type="checkbox"], [type="radio"]) {
    --check-border-clr: var(--clr-grey-200);
    --size: clamp(1rem, .75em, 1.5rem);
    all: revert;
    box-shadow: none;
    border: 1px solid var(--check-border-clr);
    background: var(--check-bg-clr);
    -webkit-appearance: none;
    appearance: none;
    width: var(--size);
    height: var(--size);
    cursor: pointer;
    flex-shrink: 0;
    font-size: 1.25em;
    overflow: visible;

    &:where([type="checkbox"]) {
      border-radius: var(--rounding-25);
    }

    &:where([type="radio"]) {
      border-radius: var(--rounding-z);
    }

    :where(label):has( > &) {
      flex-direction: row;
      gap: .5em;
      margin-top: 0;
      display: inline-flex;
    }

    &:is(:active, :focus, :focus-within, :hover):where(:not(:disabled)) {
      border-color: hsl(from var(--check-border-clr) h s calc(l - 5 * var(--rcu-p)));
    }

    &:where(:checked, :indeterminate) {
      --check-bg-clr: var(--accent-clr, var(--clr-brand));
      --check-border-clr: var(--accent-clr, var(--clr-brand));
      background-position: center;
      background-size: 90%;

      &:where([type="checkbox"]:checked) {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E %3Cpath d='M15.88 8.29L10 14.17l-1.88-1.88a.996.996 0 1 0-1.41 1.41l2.59 2.59c.39.39 1.02.39 1.41 0L17.3 9.7a.996.996 0 0 0 0-1.41c-.39-.39-1.03-.39-1.42 0z' fill='%23fff'/%3E %3C/svg%3E");
      }

      &:where([type="checkbox"]:indeterminate) {
        background-image: url("data: image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' %3E%3Crect fill='%23fff' width='16' height='3.5' x='4' y='10.25' rx='1.5' /%3E%3C/svg%3E");
      }

      &:where([type="radio"]) {
        background-image: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' %3E%3Ccircle fill='%23fff' cx='50%25' cy='50%25' r='3' /%3E%3C/svg%3E");
      }
    }
  }

  &:where(input, textarea) {
    cursor: text;
  }

  &:where(select) {
    cursor: pointer;
  }

  &:where(:focus-visible) {
    outline: 3px solid var(--clr-brand);
    outline-offset: 3px;
  }

  :where(label:has(&):not(.dgm_button-group__more)) {
    flex-direction: column;
    row-gap: .5em;
    margin-top: 1em;
    display: inline-flex;

    &:not(:has([type="file"])) {
      width: 100%;
    }
  }

  &:disabled {
    opacity: .75;
    cursor: not-allowed;
  }
}

:where(label:has([aria-invalid="true"])) {
  color: var(--clr-red-400);
}

:where(label:has(:disabled)) {
  opacity: .75;
  cursor: not-allowed;
}

:where(input[type="submit"]) {
  margin-block: 2em;

  &:where([class*="dgm_button__action"], [type="submit"]:where(:not([class*="dgm_button"]))) {
    --bg-clr: var(--clr-brand);
  }
}

.dgm_button, [class*="dgm_button"], :where(input)[type="submit"] {
  transition: var(--transition-default);
  cursor: pointer;
  letter-spacing: .01em;
  color: var(--text-clr, var(--clr-grey-850));
  min-width: max(var(--min-width), fit-content);
  justify-content: center;
  align-items: center;
  font-size: .8125rem;
  text-decoration: none;
  display: inline-flex;

  @media (width <= 480px) {
    font-size: .9rem;
  }

  &:where(strong, em) {
    font-weight: 650;
  }

  &:is(:disabled, .dgm_disabled, [aria-disabled="true"]) {
    opacity: .7;
    cursor: not-allowed;
  }

  &:where([data-icon]):where(:empty, .dgm_empty) {
    aspect-ratio: 1;

    &:before, &:after {
      margin-inline: 0;
    }
  }

  &:where(a:not([href], [role="button"])) {
    cursor: default;
  }

  &:where([data-variant="checkbox"], [class*="dgm_button__checkbox"], label:has(input[type="checkbox"])) {
    width: unset;
    gap: .25em;

    &:has(input:disabled) {
      cursor: not-allowed;
    }

    & input {
      margin: .25em;
    }

    &[data-labelPosition="right"] {
      flex-direction: row-reverse;
    }
  }

  &:where([data-variant="action"], [class*="dgm_button__action"], [type="submit"]:where(:not([class*="dgm_button"]:not([class*="dgm_button__style-"])))) {
    background: var(--bg-clr, var(--clr-brand));
    color: var(--text-clr, var(--clr-white-900));
    text-align: center;
    outline-color: var(--bg-clr, var(--clr-brand));
    border: 3px solid #0000;
    padding: .8em 1.6em;
    font-weight: 550;
    line-height: 1.5;

    :where(&) {
      --self-rounding-default: var(--rounding-87);
    }

    &:where([data-variantStyle="outlined"], [class*="dgm_button__style-outlined"]) {
      border: 3px solid var(--bg-clr, var(--clr-brand));
      color: var(--bg-clr, var(--clr-brand));
      background: none;

      &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"])):where(:hover, :active) {
        background: var(--bg-clr, var(--clr-brand));
        color: var(--text-clr, var(--clr-white-900));
      }
    }

    &:where([data-variantStyle="ghost"], [class*="dgm_button__style-ghost"]) {
      color: var(--text-clr, var(--clr-brand));
      outline-color: var(--text-clr, var(--clr-brand));
      background: none;

      &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"])):where(:hover, :active) {
        background: var(--bg-clr, var(--clr-brand-light));
      }
    }

    &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"], [data-variantStyle="outlined"], [data-variantStyle="ghost"], [class*="dgm_button__style-outlined"], [class*="dgm_button__style-ghost"])) {
      &:where(:hover) {
        --bg-clr: hsl(from var(--bg-clr-set, var(--clr-brand)) h s calc(l - 2.5 * var(--rcu-p)));
        scale: var(--scale);
      }

      &:where(:active) {
        --bg-clr: hsl(from var(--bg-clr-set, var(--clr-brand)) h s calc(l - 5 * var(--rcu-p)));
        scale: .97;
      }
    }
  }

  &:where([data-variant="control"], [class*="dgm_button__control"]) {
    --icon-gap-inner: .75em;
    --icon-gap-outer: 0;
    border-radius: var(--rounding-z);
    transition: var(--transition-default);
    color: var(--text-clr, var(--clr-grey-850));
    text-align: center;
    padding: .45em 1em .5em;
    line-height: 1.2;

    &:where([data-variantStyle="ghost"], [class*="dgm_button__style-ghost"]) {
      font-weight: 550;

      &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"])):where(:hover) {
        background: var(--clr-grey-150);
      }
    }

    &:where([data-variantStyle="filled"], :where([class*="dgm_button__style-filled"], :not([class*="dgm_button__style-"]))) {
      background: var(--clr-grey-150);
      font-weight: 500;

      &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"])):where(:hover, :active) {
        background-color: var(--clr-grey-180);

        &:where(:hover) {
          scale: var(--scale);
        }

        &:where(:active) {
          scale: .97;
        }
      }
    }

    &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"])):where(:active) {
      background-color: var(--clr-grey-200);
    }
  }

  &:where([data-variant="text"], [class*="dgm_button__text"]) {
    text-underline-offset: .15em;
    transition: var(--transition-default);
    border-radius: var(--rounding-25);
    font-size: .875rem;
    text-decoration: underline;
    display: inline-block;

    &:where([data-icon]) {
      &:before, &:after {
        transform: translateY(calc(50% - .5 * var(--icon-size, 1em)));
      }

      &.dgm_icon__float:before, &.dgm_icon__float:after {
        top: calc(50% - .5 * var(--icon-size, 1em));
      }
    }

    &:where(:not(:hover, :focus-visible)) {
      text-decoration-color: currentColor;
    }

    &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"])):where(:hover) {
      text-underline-offset: .3em;
    }
  }

  &:where([data-variant="quick"], [class*="dgm_button__quick"]) {
    --padding: var(--space-67);
    text-align: center;
    padding: var(--padding);
    flex-grow: 1;
    width: 100%;
    min-width: min(240px, 100%);
    max-width: 350px;
    font-size: .875rem;
    font-weight: 550;
    text-decoration: none;

    :where(&) {
      --self-rounding-default: var(--rounding-125);
    }

    &:where(:is(a[href], a[role="button"], button, [type="submit"]):not(:disabled, .dgm_disabled, [aria-disabled="true"])) {
      &:where(:hover) {
        scale: var(--scale);
      }

      &:where(:active) {
        scale: .97;
      }
    }
  }
}

:where([type="submit"]) {
  border-radius: var(--self-rounding, var(--self-rounding-default));
}

@container quickButtonGroup (width <= 700px) {
  .dgm_button:where([data-variant="quick"]) {
    max-width: unset;
  }
}

:where(.dgm_cookies-requires-js, .wp-block-group:has( > .dgm_cookies-requires-js)) ~ .dgm_cookies-requires-js {
  display: none;
}

.dgm_fake-section-button {
  opacity: 0;
  width: 0;
  height: 0;
  font-size: 0;
}

.dgm_section {
  margin-trim: block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  container-type: inline-size;

  &:where([data-variant="cover"]) {
    min-height: calc(100vmin - var(--size-header, 0));
  }

  &:has(.dgm_section[data-escapePadding="true"]) {
    --padding-left-inherit: var(--padding-left);
    --padding-right-inherit: var(--padding-right);
  }

  @container (width <= 480px) {
    & .dgm_section[data-escapePadding="true"] {
      transform: translateX(calc(-1 * var(--padding-left-inherit)));
      width: calc(100% + var(--padding-left-inherit) + var(--padding-right-inherit));
    }
  }
}

.dgm_section__link:where(:has(.dgm_link__section-enabled)) {
  transition: var(--transition-default);

  &:where(:hover, :focus-visible, :focus-within) {
    scale: var(--scale);
  }

  &:where(:active) {
    scale: .97;
  }

  &:where(:focus-within) {
    outline: 3px solid var(--clr-brand);
    outline-offset: 3px;
  }

  :where(&) .dgm_link__section-enabled {
    :where(&) {
      text-decoration: inherit;
    }

    &:focus-visible {
      outline-color: #0000;
    }

    &:before {
      content: "";
      z-index: var(--z-below);
      cursor: pointer;
      position: absolute;
      inset: 0;
    }
  }
}

.dgm_section__checkbox:where(:has(.dgm_button[data-variant="checkbox"])) {
  transition: var(--transition-default);

  .dgm_js &:where(:has(.dgm_button[data-variant="checkbox"] input[type="checkbox"]:not(:disabled))):where(:hover, :focus-visible, :focus-within, :active) {
    scale: var(--scale);

    &:where(:active) {
      scale: .97;
    }
  }

  &:where(:focus-within) {
    outline: 3px solid var(--clr-brand);
    outline-offset: 3px;
  }

  :where(&) input[type="checkbox"]:where(:focus-visible, :focus, :focus-within, :hover, :active) {
    outline: none;
  }

  :where(&) .dgm_button[data-variant="checkbox"]:before {
    content: "";
    z-index: var(--z-below);
    position: absolute;
    inset: 0;
  }
}

.dgm_section__checkbox-styling {
  --padding-top-inherit: var(--padding-top, var(--space));
  --padding-right-inherit: var(--padding-right, var(--space));
  border: 1.5px solid var(--clr-grey-100);

  &:where(:has(input[type="checkbox"]:checked)) {
    border-color: var(--accent-clr, var(--clr-brand));
    color: var(--accent-clr, var(--clr-brand));
  }

  & :where(.dgm_button[data-variant="checkbox"]) {
    position: absolute;
    inset: 0;
  }

  & :where(h1, h2, h3, h4, h5, h6):not(.has-text-color, .has-link-color) {
    color: inherit;
  }

  & :where(input[type="checkbox"]) {
    top: calc(var(--padding-top-inherit) / 2);
    right: calc(var(--padding-right-inherit) / 2);
    position: absolute;

    &:not(:checked) {
      border-color: var(--clr-grey-200);
      background-color: #0000;
    }
  }
}

.dgm_details {
  margin-trim: block;

  &:where(:has(:focus-visible)) {
    outline: 3px solid var(--clr-brand);
    outline-offset: 3px;
  }

  & :where(.dgm_details__summary) {
    cursor: pointer;
    margin-trim: block;
    border-radius: var(--rounding-25);
    display: block;

    & > :where(.dgm_details__summary-wrap) {
      margin-trim: block;

      & > :where(:first-child) {
        margin-block-start: 0;
      }

      & > :where(:last-child) {
        margin-block-end: 0;
      }
    }

    &::-webkit-details-marker {
      display: none;
    }

    &:where(:hover, :focus-visible, :focus-within) {
      outline: none;
      text-decoration: underline;
    }
  }

  &:where([data-indicator]) :where(.dgm_details__summary) {
    justify-content: space-between;
    align-items: center;
    display: flex;

    &:after {
      content: "";
      float: right;
      transition: var(--transition-default);
      margin-inline: .5em;
    }
  }

  &:where([data-indicator="plus"]) :where(.dgm_details__summary):after {
    background: conic-gradient(from 90deg at 2px 2px, transparent 90deg, currentcolor 0) calc(100% + 2px/2) calc(100% + 2px/2)/ calc(50% + 2px) calc(50% + 2px);
    width: .8rem;
    height: .8rem;
  }

  &:where([data-indicator="plus"][open]) :where(.dgm_details__summary):after {
    background: conic-gradient(from 90deg at 2px 0, transparent 90deg, currentcolor 0) calc(100% + 2px/2) calc(100% + 2px/2) / calc(50% + 2px) calc(50% + 2px);
    transform: rotate(90deg);
  }

  &:where([data-indicator="caret"]) :where(.dgm_details__summary):after {
    width: 1rem;
    height: 1rem;
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-image: var(--icon-angle-down);
    background-color: currentColor;
  }

  &:where([data-indicator="caret"][open]) :where(.dgm_details__summary):after {
    transform: rotate(-180deg);
  }

  &:where([data-indicator="arrow"]) :where(.dgm_details__summary):after {
    width: 1rem;
    height: 1rem;
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-image: var(--icon-angle-right);
    background-color: currentColor;
  }

  &:where([data-indicator="arrow"][open]) :where(.dgm_details__summary):after {
    transform: rotate(90deg);
  }
}

@supports selector(::details-content) {
  .dgm_details::details-content {
    block-size: 0;
    transition-property: block-size, content-visibility;
    transition: var(--transition-default);
    transition-behavior: allow-discrete;
  }

  .dgm_details:where([open])::details-content {
    block-size: auto;
  }
}

.dgm_accessibility {
  transition: var(--transition-default);
  z-index: var(--z-accessibility);
  width: 100%;
  position: fixed;
  top: -99999vh;

  &:where(:focus-within) {
    top: 0;
  }
}

.dgm_accessibility-notice {
  all: unset;
  color: #0000;
  pointer-events: none;
  background: none;
  border: none;
  outline: none;
  width: 0;
  height: 0;
  font-size: 0;
  display: block;
  position: absolute;
  top: -10000000vh;
  overflow: clip;
  transform: none;
}

.wp-block-separator.is-style-wide, .wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots) {
  height: 1px;
}

.custom-logo-link {
  border-radius: var(--rounding-25);
  overflow: visible;
}

.wp-block-query > .wp-block-post-template.is-layout-flow {
  gap: inherit;
  flex-direction: column;
  display: flex;
}

.wp-block-post-terms[href]:hover {
  text-decoration: underline;
}

.wp-block-pullquote p {
  max-width: unset;
}

.wp-block-group {
  overflow-clip-margin: 2em;
  overflow: clip;
}

.wp-block-group-is-layout-flex.is-nowrap {
  overflow-x: auto;
}

.wp-block-group[data-showSeparator="true"] {
  --gap-inline-inherit: var(--gap-inline);

  & > :not(:first-child):before {
    content: "";
    background: var(--clr-black-900);
    opacity: .15;
    width: 1px;
    height: 1.15em;
    vertical-align: middle;
    margin-inline-end: var(--gap-inline-inherit);
    display: inline-block;
    position: relative;
  }
}

@media (prefers-reduced-transparency: reduce) {
  .wp-block-group[data-showSeparator="true"] > :not(:first-child):before {
    opacity: 1;
    background: var(--clr-grey-850);
  }
}

.wp-block-group:has(.dgm_button[data-variant="quick"]) {
  container: quickButtonGroup / inline-size;
}

:where(.dgm_section__link) :where(.wp-block-group.wp-block-group-is-layout-constrained):has(.dgm_link__section-enabled) {
  position: static;
}

.wp-block-social-link {
  transition: var(--transition-default);
}

.wp-block-social-link:hover {
  transform: scale(var(--scale));
}

.wp-block-table {
  min-width: unset;
  margin-top: var(--margin-top);
  margin-bottom: var(--margin-bottom, 1em);
  margin-left: var(--margin-left);
  margin-right: var(--margin-right);
  overflow-x: auto;

  & > table {
    min-width: var(--width-min);
  }

  & thead {
    border: unset;
  }

  & th {
    font-weight: 500;
  }

  :where(&) :where(a[href]) {
    color: var(--clr-brand);
  }
}

.dgm_table-borders__no-outer {
  & table {
    border: none;
  }

  & :where(td, th):first-of-type {
    border-inline-start: #0000;
  }

  & :where(td, th):last-of-type {
    border-inline-end: #0000;
  }

  & th, &:not(:has(thead)) tr:first-of-type td {
    border-block-start: #0000;
  }

  & tfoot td, &:not(:has(tfoot)) tr:last-of-type td {
    border-block-end: #0000;
  }
}

.dgm_table-borders__no-horizontal :is(th, td) {
  border-block: #0000;
}

.dgm_table-borders__no-vertical :is(th, td) {
  border-inline: #0000;
}

.dgm_page-outline {
  --gap-block-inherit: var(--gap-block);
  --indentation: var(--gap-inline);
}

.dgm_page-outline__wrapper {
  width: 33%;
  min-width: min(100%, 400px);
  max-width: 500px;
  height: 100%;
  transition: var(--transition-header) allow-discrete;
  z-index: var(--z-modal);
  background: var(--clr-grey-100);
  position: fixed;
  left: auto;
  right: 0;
  transform: translateX(100%);

  &:where([open]) {
    transform: translateX(0);

    @starting-style {
      transform: translateX(100%);
    }
  }

  &::backdrop {
    background: var(--clr-black-900);
    opacity: 0;
    transition: inherit;
  }

  &:where([open])::backdrop {
    opacity: .5;

    @starting-style {
      opacity: 0;
    }

    @media (prefers-reduced-transparency: reduce) {
      background: var(--clr-grey-850);
      opacity: 1;
    }
  }

  :where(&) .dgm_close-button {
    cursor: pointer;
    transition: var(--transition-default);
    outline-color: var(--clr-brand);
    line-height: 0;
    position: absolute;
    inset-block-start: var(--space-25);
    inset-inline-end: var(--space-25);

    &:where(:hover, :focus-visible) {
      background-color: var(--clr-grey-120);
    }

    :where([data-rootRounding="minimal"]) & {
      border-radius: var(--rounding-25);
    }

    :where([data-rootRounding="medium"]) & {
      border-radius: var(--rounding-50);
    }

    :where([data-rootRounding="full"]) & {
      border-radius: var(--rounding-z);
    }
  }
}

@media (prefers-reduced-transparency: reduce) {
  .dgm_page-outline__wrapper:where([open])::backdrop {
    opacity: 1;
    background: var(--clr-grey-850);
  }
}

.dgm_page-outline__button:where(:not([data-outlineAvailable="true"])) {
  display: none;
}

.dgm_page-outline__list {
  counter-reset: outlineCounter;
  padding-inline-start: var(--indentation);
  list-style-type: none;

  &:where(.dgm_page-outline__top) {
    padding-inline-start: 0;
  }
}

.dgm_page-outline__list, .dgm_page-outline__item {
  row-gap: var(--gap-block-inherit);
  flex-direction: column;
  display: flex;
}

.dgm_page-outline__link {
  border-radius: var(--rounding-25);
  width: fit-content;

  &:where(:hover) {
    text-underline-offset: .15em;
    text-decoration: underline;

    &:before {
      text-decoration: none;
    }
  }

  :where([data-numberFormat]) &:before {
    counter-increment: outlineCounter;
    content: counters(outlineCounter, ".", var(--counterFormat)) var(--counterTrail);
    margin-inline-end: 1em;
    display: inline-block;
  }

  :where([data-numberFormat="number"]) &:before {
    content: counters(outlineCounter, ".", decimal) " ";
  }

  :where([data-numberFormat="number-period"]) &:before {
    content: counters(outlineCounter, ".", decimal) ". ";
  }

  :where([data-numberFormat="letter"][data-capitalise="true"]) &:before {
    content: counters(outlineCounter, ".", upper-alpha) " ";
  }

  :where([data-numberFormat="letter-period"][data-capitalise="true"]) &:before {
    content: counters(outlineCounter, ".", upper-alpha) ". ";
  }

  :where([data-numberFormat="letter"][data-capitalise="false"]) &:before {
    content: counters(outlineCounter, ".", lower-alpha) " ";
  }

  :where([data-numberFormat="letter-period"][data-capitalise="false"]) &:before {
    content: counters(outlineCounter, ".", lower-alpha) ". ";
  }

  :where([data-numberFormat="roman"][data-capitalise="true"]) &:before {
    content: counters(outlineCounter, ".", upper-roman) " ";
  }

  :where([data-numberFormat="roman-period"][data-capitalise="true"]) &:before {
    content: counters(outlineCounter, ".", upper-roman) ". ";
  }

  :where([data-numberFormat="roman"][data-capitalise="false"]) &:before {
    content: counters(outlineCounter, ".", lower-roman) " ";
  }

  :where([data-numberFormat="roman-period"][data-capitalise="false"]) &:before {
    content: counters(outlineCounter, ".", lower-roman) ". ";
  }
}

.dgm_loader__content {
  background-color: var(--clr-bg, var(--clr-white-900));
  z-index: var(--z-loading);
  opacity: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  animation-name: disableLoader, showLoader;
  animation-duration: 1s, 1ms;
  animation-timing-function: linear, linear;
  animation-iteration-count: 1, 1;
  animation-direction: normal, normal;
  animation-play-state: running, running;
  animation-delay: 7s, .1s;
  animation-fill-mode: forwards;
  animation-timeline: auto, auto;
  position: fixed;
  inset: 0;

  &[open] {
    display: flex;
  }

  :where(body.dgm_js) & {
    animation-name: none;

    &[data-delay] {
      opacity: 1;
    }
  }

  &:where(.dgm_visible) {
    opacity: 1;
    animation: none;
  }
}

.dgm_error {
  text-align: center;
}

.dgm_error__risky {
  justify-content: center;
  align-items: center;
  gap: var(--space-50);
  flex-direction: column;
  display: none;

  &:where(.dgm_visible) {
    display: flex;
  }
}

@supports selector(:has(.class)) and selector(&.class) and (container: container) {
  .dgm_error__browser:where(:not(.dgm_visible)), body.dgm_js .dgm_loader__content:where(:not([data-showalways="true"], .dgm_visible)) {
    display: none;
  }
}

@keyframes disableLoader {
  100% {
    display: none;
  }
}

@keyframes showLoader {
  100% {
    opacity: 1;
  }
}

.dgm_loading-indicator {
  --accent-clr: var(--accent-clr-set, var(--clr-brand));
  --width: var(--width-set, 1.5em);
  width: var(--width);
  aspect-ratio: 1;
  border: clamp(var(--min-width, 4px), calc(var(--width) / 6), 10px) solid var(--accent-clr);
  border-radius: 50%;
  display: block;

  &:where([data-variant="growing"]) {
    --min-width: 4px;
    animation: .8s linear infinite alternate dgmSpinnerGrowing-1, 1.6s linear infinite dgmSpinnerGrowing-2;
  }

  &:where([data-variant="constant"]) {
    --min-width: 3.33px;
    --bg-clr: var(--bg-clr-set, transparent);
    border-color: var(--bg-clr);
    border-bottom-color: var(--accent-clr);
    animation: 1s linear infinite dgmSpinnerConstant;
  }
}

@keyframes dgmSpinnerGrowing-1 {
  0% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
  }

  12.5% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
  }

  25% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 100% 100%, 100% 100%);
  }

  50% {
    clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }

  62.5% {
    clip-path: polygon(50% 50%, 100% 0, 100% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }

  75% {
    clip-path: polygon(50% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 50% 100%, 0% 100%);
  }

  100% {
    clip-path: polygon(50% 50%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 0% 100%);
  }
}

@keyframes dgmSpinnerGrowing-2 {
  0% {
    transform: scaleY(1) rotate(0);
  }

  49.99% {
    transform: scaleY(1) rotate(135deg);
  }

  50% {
    transform: scaleY(-1) rotate(0);
  }

  100% {
    transform: scaleY(-1) rotate(-135deg);
  }
}

@keyframes dgmSpinnerConstant {
  0% {
    transform: rotate(0);
  }

  100% {
    transform: rotate(360deg);
  }
}

.dgm_image {
  height: var(--height, max-content);

  & :where(.dgm_image__img) {
    max-width: min(var(--width-max, 100%), 100%);
    margin-inline: auto;
  }

  & :where(.dgm_image__caption) {
    contain: inline-size;
    margin-block: .5em;
  }

  &:where(.dgm_image__mobile-hidden) {
    display: none;
  }

  :where(.dgm_image__action) > & {
    width: 100%;
  }

  :where(:not(.dgm_image__action) > &) {
    display: inline-block;
  }
}

.dgm_image__action {
  --rounding-inherit: var(--calc-rounding);
  transition: scale var(--transition-default);
  display: inline-block;

  &:where([aria-controls], [href]) {
    cursor: pointer;

    & .dgm_image__wrapper {
      position: relative;

      :where(&):after {
        opacity: 0;
        content: "";
        border: 1px solid var(--clr-grey-100);
        background-color: var(--clr-white-900);
        border-radius: max(calc(var(--rounding-inherit) - .75em), .5rem);
        background-repeat: no-repeat;
        background-origin: content-box;
        width: 2.5em;
        height: 2.5em;
        padding: .8em;
        position: absolute;
        inset-block-end: .75em;
        inset-inline-end: .75em;
      }
    }

    &[data-actionIndicator]:active {
      scale: .97;
    }
  }

  &[data-actionIndicator="link"] .dgm_image__wrapper:after {
    background-image: var(--icon-link-alt);
  }

  &[data-actionIndicator="new-tab"] .dgm_image__wrapper:after {
    background-image: var(--icon-new-tab);
  }

  &[data-actionIndicator="external"] .dgm_image__wrapper:after {
    background-image: var(--icon-arrow-ne);
  }

  &[data-actionIndicator="home"] .dgm_image__wrapper:after {
    background-image: var(--icon-house);
  }

  &[data-actionIndicator="fullscreen"] .dgm_image__wrapper:after {
    background-image: var(--icon-fullscreen);
  }

  &:where([data-actionIndicator]):where(:hover, :focus-visible, [aria-expanded="true"]) .dgm_image__wrapper:after {
    opacity: 1;
  }
}

.dgm_image__caption:empty {
  display: none;
}

.dgm_gallery {
  max-width: calc(var(--width-max, 100%) + var(--additional-width, 0px));
  width: calc(var(--width, var(--width-fallback, 100%)) + var(--additional-width, 0px));
  overflow-x: clip;

  &:where([data-escapePadding="true"]) {
    --additional-width: calc(var(--padding-left-inherit, 0px) + var(--padding-right-inherit, 0px));
    margin-left: calc(-1 * var(--padding-left-inherit));

    &:where([data-scrollsnap="true"]) .dgm_gallery__content {
      scroll-padding-left: var(--padding-left-inherit);
      scroll-padding-right: var(--padding-right-inherit);
    }

    & :is(.dgm_gallery__content, .dgm_gallery__caption) {
      padding-left: var(--padding-left-inherit);
      padding-right: var(--padding-right-inherit);
    }

    :has(&) {
      --padding-left-inherit: var(--padding-left);
      --padding-right-inherit: var(--padding-right);
    }
  }

  @media (width <= 480px) {
    &:where([data-gridWrapMobile="true"]) .dgm_gallery__content {
      grid-template-columns: var(--gridTemplateColumns-m, 1fr);
    }

    &:where([data-gridIsTwoColumnsMobile="true"]) :is(.dgm_image, .dgm_image__action):where(:last-child:nth-child(2n-1)) {
      --width: 50%;
      --rotation: 0;
      grid-column: 1 / -1;
      justify-self: center;
    }

    &:where([data-gridDisableRotationMobile="true"]) :where(.dgm_image, .dgm_image__action) {
      --rotation: 0;

      & :where(.dgm_image__img) {
        --width: 100%;
      }
    }

    &:where(:not([data-flexBehaviour])) :where(.dgm_image, .dgm_image__action) {
      --width: 100%;
      --width-min: min(100%, var(--width-min-set));
    }

    &:where([data-gridDisableMarginsMobile="true"]) :where(.dgm_image, .dgm_image__action) {
      margin: 0;
    }
  }
}

.dgm_gallery__content {
  width: 100%;

  :where(:not([data-flexBehaviour])) > & {
    grid-template-columns: var(--gridTemplateColumns);
    grid-auto-rows: var(--gridAutoRows);
    max-width: 100%;

    & .dgm_image__img {
      max-width: min(var(--width-max, 100%), 100%);
    }
  }

  :where([data-flexBehaviour="shrink"]) > & {
    max-width: 100%;

    & .dgm_image {
      flex: auto;
    }

    & .dgm_image__img {
      max-width: min(var(--width-max, 100%), 100%);
    }
  }

  :where([data-flexBehaviour="scroll"]) > & {
    overflow-x: auto;

    :where([data-scrollSnap="true"]) > & {
      scroll-snap-type: x mandatory;

      & .dgm_image {
        scroll-snap-align: start;
      }
    }

    & .dgm_image {
      flex: none;
    }
  }

  :where([data-flexBehaviour="wrap"]) > & {
    flex-wrap: wrap;
  }
}

@media (width <= 768px) {
  .dgm_gallery:where([data-gridCarouselMobile="true"]) {
    --padding-left-inherit: var(--padding-left, 0);
    --padding-right-inherit: var(--padding-right, 0);
    width: 100%;
    padding-inline: 0;
    overflow: auto;

    :where(&) .dgm_gallery__content {
      --align-horizontal: start;
      --gap-inline-inherit: var(--gap-inline, 0);
      scroll-snap-type: x mandatory;
      grid-template-columns: var(--gridTemplateColumns_carousel);
      overflow: auto;

      :where(&) > :is(.dgm_image, .dgm_image__action) {
        --rotation: 0;
        --width: 100vw;
        --width-max: calc((100vw - (2 * var(--gap-inline-inherit, 0)) - var(--padding-left-inherit, 0) - var(--padding-right-inherit, 0)) / 2);
        scroll-snap-align: center;
        margin: 0;

        &:first-child {
          margin-left: var(--padding-left-inherit);
        }

        &:last-child {
          margin-right: var(--padding-right-inherit);
        }
      }
    }
  }
}

@media (width <= 480px) {
  :where(.dgm_gallery[data-gridCarouselMobile="true"] .dgm_gallery__content) > :is(.dgm_image, .dgm_image__action) {
    --width-max: calc(100vw - var(--padding-left-inherit, 0) - var(--padding-right-inherit, 0) - var(--gap-inline-inherit, 0));
  }
}

.dgm_header {
  z-index: var(--z-header);
  transition: inset-block-start var(--transition-header);
  height: var(--size-header);
  box-sizing: content-box;
  max-width: 100vw;
  position: sticky;
  inset-block-start: var(--pos);
  inset-inline: 0;

  &.dgm_header__mobile {
    height: var(--size-header-m);

    & .dgm_navbar > :not(:has(.dgm_nav-link__mobile-button)) {
      flex-shrink: 1;
    }

    & :where(.dgm_nav:not(:has(.dgm_nav-link__mobile-button))) *, & .dgm_dropdown, & :where(.dgm_nav .dgm_nav-link:not(.dgm_nav-link__mobile-button)) {
      display: none;
    }
  }

  &:where([data-position="at-top"]) {
    --pos: var(--at-top, 0px);

    & :where(.dgm_navbar) {
      --pos: var(--at-top, 0px);
    }

    &:where(.dgm_header__mobile) {
      --pos: var(--at-top-m, 0px);

      & :where(.dgm_navbar) {
        --pos: var(--at-top-m, 0px);
      }
    }
  }

  &:where([data-position="scrolling-down"]) {
    --pos: var(--scrolling-down, 0px);

    & :where(.dgm_navbar) {
      --pos: var(--scrolling-down, 0px);
    }

    &:where(.dgm_header__mobile) {
      --pos: var(--scrolling-down-m, 0px);

      & :where(.dgm_navbar) {
        --pos: var(--scrolling-down-m, 0px);
      }
    }
  }

  &:where([data-position="scrolling-up"]) {
    --pos: var(--scrolling-up, 0px);

    & :where(.dgm_navbar) {
      --pos: var(--scrolling-up, 0px);
    }

    &:where(.dgm_header__mobile) {
      --pos: var(--scrolling-up-m, 0px);

      & :where(.dgm_navbar) {
        --pos: var(--scrolling-up-m, 0px);
      }
    }
  }

  :where(body:not(.dgm_js)) & {
    position: sticky;
    inset-block-start: 0;

    &:where(:not(:has([data-behaviour="smart"], [data-behaviour="fixed"]))) {
      position: static;
    }

    & .dgm_nav-link:where(:not(.dgm_nav-link__mobile-button)), & .dgm_dropdown, & .dgm_nav:where(:not(:has(.dgm_nav-link__mobile-button))) {
      display: none;
    }
  }

  &:not(.dgm_header__ready) {
    inset-block-start: 0;
  }
}

@media print {
  .dgm_header, .dgm_footer__wrapper {
    display: none;
  }
}

.dgm_header-calculating {
  & .dgm_nav {
    flex-wrap: nowrap;
  }

  & .dgm_image__img {
    min-width: var(--width-min, var(--width));
  }
}

@media (prefers-reduced-motion: no-preference) {
  .dgm_header__show-loading-indicator:after {
    content: "";
    top: calc(var(--size-header) + var(--pos));
    background-color: var(--clr-brand);
    width: 0;
    height: 3px;
    animation: 2s .1s infinite loadingIndicator;
    position: fixed;
  }
}

@keyframes loadingIndicator {
  0% {
    width: 100%;
    left: -100%;
  }

  50% {
    width: 10%;
    left: 100%;
  }

  100% {
    width: 10%;
    left: 100%;
  }
}

.dgm_navbar {
  width: 100%;
  transition: inset-block-start var(--transition-header);
  z-index: var(--z-self);
  justify-content: space-between;
  align-items: center;
  display: flex;
  position: absolute;
  inset-block-start: var(--pos);
  inset-inline: 0;

  &:where(:has(.dgm_dropdown [aria-expanded="true"])) {
    z-index: var(--z-above);
  }

  :where(.dgm_header:not(.dgm_header__ready)) & {
    position: static;
  }

  :where(body:not(.dgm_js)) & {
    position: static;

    &:not(:has(.dgm_nav-link__mobile-button)) {
      display: none;
    }
  }

  &:where(:empty, &:not(:has(*)), &:has(.dgm_page-outline__button:not([data-outlineAvailable="true"]):only-child), &:has( > .dgm_nav-link__spacer:only-child), &:not(:has(:not(.dgm_page-outline__button:not([data-outlineAvailable="true"])):not(.dgm_nav-link__spacer)))), :where(.dgm_header__mobile) &:where(:not(:has( > :not(.dgm_nav, .dgm_page-outline__button:not([data-outlineAvailable="true"]), .dgm_nav-link__spacer)))) {
    display: none;
  }

  & :where(a) {
    color: var(--text-clr, inherit);
  }
}

body.dgm_is-loading .dgm_navbar > * {
  opacity: 0;
  pointer-events: none;
}

.dgm_nav {
  --gap-inline-inherit: var(--gap-inline);
  --gap-block-inherit: var(--gap-block);
  align-items: center;
  display: inline-flex;

  &:not([data-separator="true"]) {
    flex-wrap: wrap;
  }

  .dgm_navbar & {
    flex-wrap: nowrap;
  }

  body:not(.dgm_is-loading) &:where([data-separator="true"]) > :where(.dgm_nav-link__wrapper:not(:first-child, .dgm_show-empty)):before, body:not(.dgm_is-loading) &:where([data-separator="true"]) > :where(.dgm_nav:not(:first-child, .dgm_show-empty)):before {
    content: "";
    opacity: .5;
    background: currentColor;
    width: 1px;
    height: 1em;
    display: inline-block;
    position: relative;
    top: 1px;

    @media (prefers-reduced-transparency: reduce) {
      opacity: 1;
    }
  }

  &:where([data-separator="true"]) > :where(.dgm_nav-link__wrapper:not(:first-child)):before {
    margin-inline-end: var(--gap-inline-inherit);
  }

  &:where([data-orientation="vertical"]) {
    flex-direction: column;
    display: flex;

    &:where([data-alignment="left"]) {
      align-items: flex-start;
    }

    &:where([data-alignment="right"]) {
      align-items: flex-end;
    }

    &:where([data-alignment="center"]) {
      align-items: center;
    }
  }
}

@media (width <= 480px) {
  .dgm_footer .dgm_nav {
    width: 100%;
  }
}

@media (prefers-reduced-transparency: reduce) {
  .dgm_nav:where([data-separator="true"]) :is(.dgm_nav-link__wrapper, .dgm_nav):before {
    opacity: 1;
  }
}

.dgm_breadcrumbs {
  --breadcrumbs-gap-inline: var(--gap-inline);
  outline-color: #0000;
  align-items: center;
  display: inline-flex;

  & :where(.dgm_breadcrumbs-item) {
    align-items: center;
    display: inline-flex;

    &:where(:not(:first-child)):before {
      content: "/";
      opacity: .8;
      margin-inline-end: var(--breadcrumbs-gap-inline);

      @media (prefers-reduced-transparency: reduce) {
        opacity: 1;
      }
    }
  }

  &:where([data-separatorIcon="chevron"]) :where(.dgm_breadcrumbs-item:not(:first-child)):before {
    content: "";
    mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-image: var(--icon-angle-right);
    background-color: currentColor;
    width: .625em;
    height: 1em;
  }
}

@media (prefers-reduced-transparency: reduce) {
  .dgm_breadcrumbs-item:not(:first-child):before {
    opacity: 1;
  }
}

.dgm_dropdown {
  --parent-gap-inline: var(--gap-inline-inherit);
  --delay: .35s;
  display: inline-block;
  position: relative;

  body.dgm_is-loading & {
    opacity: 0;
  }

  :where(&) .dgm_nav {
    --pos-top: calc(1lh + var(--pos-top-set, var(--gap-block)));
    --padding-inherit: calc(var(--padding-top, 0) * .67) calc(var(--padding-right, 0) * .67) calc(var(--padding-bottom, 0) * .67) calc(var(--padding-left, 0) * .67);
    --padding-self: calc(var(--padding-top, 0) * .33) calc(var(--padding-right, 0) * .33) calc(var(--padding-bottom, 0) * .33) calc(var(--padding-left, 0) * .33);
    --rounding-inherit: calc(var(--calc-rounding, var(--self-rounding)) - (var(--padding-top, 0) * .33)) calc(var(--calc-rounding, var(--self-rounding)) - (var(--padding-right, 0) * .33)) calc(var(--calc-rounding, var(--self-rounding)) - (var(--padding-bottom, 0) * .33)) calc(var(--calc-rounding, var(--self-rounding)) - (var(--padding-left, 0) * .33));
    --bg-clr-inherit: var(--bg-clr);
    left: 50%;
    opacity: 0;
    transition: var(--transition-default) allow-discrete;
    transition-delay: var(--delay);
    max-width: calc(max(100%, 10ch) + 2 * var(--parent-gap-inline));
    border: 1px solid var(--clr-grey-100);
    width: max-content;
    z-index: var(--z-above);
    text-align: center;
    padding: var(--padding-self);
    flex-direction: column;
    display: none;
    position: absolute;
    inset-block-start: var(--pos-top);
    transform: translateY(-100%) translateX(-50%);

    :where(&) .dgm_nav-link__wrapper {
      width: 100%;
      min-width: unset;
      z-index: var(--z-above);
    }

    :where(&) .dgm_nav-link {
      padding: var(--padding-inherit);
      border-radius: var(--rounding-inherit);
      min-width: unset;
      display: block;

      &:where(:hover, :focus-visible) {
        background: hsl(from var(--bg-clr-inherit) h s calc(l - 2 * var(--rcu-p)));
      }
    }

    &:before {
      content: "";
      width: 100%;
      height: var(--pos-top);
      z-index: var(--z-below);
      position: absolute;
      inset-block-start: calc(-1 * (var(--pos-top) - 1lh));
    }
  }

  :where(&) .dgm_dropdown__label {
    cursor: pointer;
    z-index: var(--z-above);
    outline: none;
    flex-wrap: nowrap;
    display: flex;
    position: relative;
  }

  :where(&) .dgm_dropdown__icon {
    transition: transform var(--transition-default) var(--delay), outline var(--transition-default) 0s;
    outline-color: currentColor;
    margin-left: .5em;
  }

  &:before {
    content: "";
    background-color: var(--clr-grey-900);
    width: calc(100% + 1.75em);
    height: calc(100% + 1.75em);
    z-index: var(--z-below);
    border-radius: var(--rounding-50);
    transition: var(--transition-default) allow-discrete;
    transition-delay: var(--delay);
    opacity: 0;
    display: none;
    position: absolute;
    inset: -.875em;
  }

  @media (hover: none) {
    &:where([data-dropdownHover="true"]) {
      :where(&) :where(.dgm_dropdown__label) .dgm_nav-link {
        pointer-events: none;
      }
    }
  }

  &:where(:not([data-dropdownHover="true"])) {
    :where(&) :where(.dgm_dropdown__label) .dgm_nav-link {
      pointer-events: none;
    }
  }

  &:where([data-dropdownHover="true"]):where(:has(:hover), :hover), &:where(:has([aria-expanded="true"])), :where(body:not(.dgm_js)) &:where(:has(.dgm_dropdown__label:focus)), &:where(:has(.dgm_nav:where(:focus-visible, :focus-within))) {
    --delay: 0s;

    :where(&) .dgm_dropdown__icon {
      transition-delay: var(--delay);
      transform: rotate(180deg);
    }

    &:before {
      content: "";
      opacity: .03;
      transition: var(--delay);
      display: block;
    }

    :where(&) .dgm_dropdown__label {
      z-index: var(--z-above);
      position: relative;

      :where(&) .dgm_nav-link {
        animation: 1ms linear .5s forwards allowPointerEvents;
      }
    }

    :where(&) .dgm_nav {
      opacity: 1;
      transition-delay: var(--delay);
      display: flex;
      transform: translateY(0) translateX(-50%);
    }
  }
}

@keyframes allowPointerEvents {
  0% {
    pointer-events: none;
  }

  100% {
    pointer-events: initial;
  }
}

@media (prefers-contrast: more) {
  .dgm_nav {
    border-color: var(--clr-grey-200);
  }
}

.dgm_nav-link {
  text-underline-offset: 0;
  transition: var(--transition-default) allow-discrete;
  border-radius: var(--rounding-25);
  outline-color: currentColor;
  min-width: max-content;
  font-weight: 450;

  &:where(:not(:disabled, .dgm_disabled, [aria-disabled="true"])) {
    text-decoration: underline;
  }

  &:where(:not(:disabled, .dgm_disabled, [aria-disabled="true"])):where(:hover) {
    opacity: 1;
    text-underline-offset: 3px;
    cursor: pointer;
    text-decoration: underline;
  }

  :where([data-header="true"]) > &:where(:first-child) {
    font-weight: 550;
  }

  @media (prefers-reduced-transparency: reduce) {
    opacity: 1;
  }

  &:where(:not(:hover)) {
    text-decoration-color: #0000;
  }
}

:where(.dgm_nav-link__wrapper, .dgm_nav-link):has(.dgm_icon) {
  align-items: center;
  display: inline-flex;
}

.dgm_nav-link__hamburger {
  --bar-width: 1.2em;
  --bar-height: .12em;
  --button-gap: .4em;
  --button-padding: .1em;
  gap: var(--button-gap);
  aspect-ratio: 1;
  padding: var(--button-padding);
  width: var(--bar-width);
  outline-color: var(--clr-brand);
  box-sizing: content-box;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: none;
  display: flex;
  position: relative;

  .dgm_header:not(.dgm_header__mobile) &:not(.dgm_nav-link__hamburger__no-js) {
    display: none;
  }

  &:before, &:after {
    --pos: calc((var(--bar-width) - var(--button-gap)) * .5);
    content: "";
    width: var(--bar-width);
    height: var(--bar-height);
    transition: var(--transition-hamburger);
    background-color: currentColor;
    display: block;
    position: absolute;
  }

  &:before {
    top: var(--pos);
    transform-origin: 100% 0;
  }

  &:after {
    bottom: var(--pos);
    transform-origin: 100% 100%;
  }

  &:where([aria-expanded="true"]) {
    &:before, &:after {
      --pos: var(--button-padding);
      --move: calc((1.41 * var(--bar-width) - var(--bar-width)) / -2);
    }

    &:before {
      transform: rotate(-45deg) translate(var(--move), -50%);
    }

    &:after {
      transform: rotate(45deg) translate(var(--move), 50%);
    }
  }

  :where(body:not(.dgm_js)) &:where(:not(.dgm_nav-link__hamburger__no-js)) {
    display: none;
  }
}

:where(.dgm_nav-link__wrapper) {
  min-width: max-content;
}

.dgm_mobile-nav__wrapper {
  height: calc(100vh - var(--size-header-m));
  height: calc(100dvh - var(--size-header-m));
  width: 100%;
  z-index: var(--z-mobile-nav);
  transition: var(--transition-header) allow-discrete;
  opacity: .75;
  overscroll-behavior: none;
  background: var(--bg-clr);
  position: fixed;
  inset: 0;
  inset-block-start: 0;
  overflow-y: auto;
  transform: translateY(-100%);

  &::backdrop {
    display: none;
  }

  &:has(.dgm_section):not(:has(.dgm_section ~ .dgm_section)) {
    --bg-clr-opacity: rgb(from var(--bg-clr) r g b / .98);
    overscroll-behavior: unset;
    background: linear-gradient(var(--bg-clr-opacity) 75%,
                var(--bg-clr));
    backdrop-filter: blur(3px);

    :where(body.dgm_js) :where(&) > .dgm_section {
      height: inherit;
      background: none;
      overflow: scroll;
    }
  }

  &:where([open]) {
    z-index: var(--z-mobile-nav);
    opacity: 1;
    inset-block-start: var(--size-header-m);
    transform: translateY(0);

    @starting-style {
      opacity: 0;
      inset-block-start: 0;
      transform: translateY(-100%);
    }
  }

  :where(body:not(.dgm_js)) & {
    visibility: hidden;
    display: block;
  }

  &:where(:target, :target-within, :has(:target)) {
    visibility: visible;
    z-index: var(--z-modal);
    opacity: 1;
    transform: translateY(0);

    :where(&) > .dgm_section {
      background: var(--bg-clr);
    }
  }

  :where(&) > .dgm_section {
    --padding-top-inherit: var(--padding-top);
    --padding-right-inherit: var(--padding-right);

    & .dgm_close-button {
      inset-block-start: calc(-.5 * var(--padding-top-inherit));
      inset-inline-end: calc(-.5 * var(--padding-right-inherit));
    }
  }

  :where(body.dgm_js) &:where(:target, :target-within, :has(:target)):where(:not([open])) {
    transition: none;
    display: none;
  }

  :where(body.dgm_js) & :where(h1, h2, h3, h4, h5, h6, span, a, p, nav[data-orientation="horizontal"]):not(nav[data-orientation="horizontal"] *) {
    opacity: 0;
    animation: fadeInLinks .4s ease-in-out var(--animation-delay, 0s) forwards;
  }
}

@keyframes fadeInLinks {
  from {
    opacity: 0;
    transform: translateY(-100%);
  }

  to {
    opacity: 1;
    transform: translateY(0%);
  }
}

.dgm_scroll-to-top {
  --pos: var(--space);
  z-index: var(--z-fab);
  transition: var(--transition-header) allow-discrete;
  position: fixed;
  inset-block-end: var(--pos);
  inset-inline-end: var(--pos);

  :where(body:not([data-showToTop="necessary"])) & {
    visibility: hidden;
    inset-inline-end: 0;
    transform: translateX(100%);
  }

  :where(body:has(.dgm_dialog__dialog[open])) & {
    --pos: var(--space-75);
  }

  @media (width <= 480px) {
    --pos: var(--space-50);
  }
}

.dgm_dialog {
  margin-trim: block;
  position: fixed;
  overflow: auto;

  body[data-cookies] &[data-cookiesConsent="true"] {
    display: none;
  }

  body.dgm_is-loading & {
    opacity: 0;
    transition-duration: 0;
    display: none;
  }

  :where([data-rootRounding="minimal"] &) {
    border-radius: var(--rounding-a);
  }

  :where(body.error404 &:not([data-404="true"], .dgm_cookie-management__wrapper)) {
    display: none;
  }
}

.dgm_close-button {
  float: right;
  border-radius: var(--rounding-75);
  cursor: pointer;
  background: var(--clr-white-900);
  transition: var(--transition-default);
  outline-color: var(--text-clr, var(--clr-brand));
  line-height: 0;
  position: relative;
  inset-block-start: -1em;
  inset-inline-end: -1em;

  &:where(:not(.dgm_disabled, [aria-disabled="true"])):where(:hover, :focus-visible) {
    scale: var(--scale);
  }

  &:where(:not(.dgm_disabled, [aria-disabled="true"])):where(:active) {
    scale: .97;
  }

  @media (width < 480px) {
    inset-inline-end: 0;
  }
}

:where(body:not(.dgm_js) .dgm_close-button:not(.dgm_close-button__no-js)) {
  display: none;
}

.dgm_dialog__dialog {
  z-index: var(--z-dialog);
  width: min(400px, calc(100% - 2 * var(--space)));
  min-height: min(250px, 100%);
  max-height: min(450px, 50vh);
  bottom: var(--space);
  right: var(--space);
  border: 1px solid var(--clr-grey-100);
  opacity: 0;
  left: auto;
  transform: translateY(-100%) scale3d(1.5, 1.5, 1);

  :where([data-rootRounding="medium"] &) {
    border-radius: var(--rounding-125);
  }

  :where([data-rootRounding="full"] &) {
    border-radius: var(--rounding-200);
  }

  &[open] {
    opacity: 1;
    transform: translateY(0) scale3d(1, 1, 1);

    @starting-style {
      opacity: 0;
      transform: translateY(100%) scale3d(.5, .5, 1);
    }
  }

  @media (prefers-reduced-motion: no-preference) {
    transition: allow-discrete .7s ease-in-out .5s;
  }

  body.dgm_js &, &:focus-within {
    transition-delay: 0s;
  }

  &[open]:has( ~ .dgm_dialog__dialog[open]) {
    box-shadow: 0px calc(-1 * var(--space-50)) 0px calc(-1 * var(--space-25)) var(--clr-grey-100);
  }

  &[open]:has( ~ .dgm_dialog__dialog[open] ~ .dgm_dialog__dialog[open]) {
    box-shadow: 0px calc(-1 * var(--space-50)) 0px calc(-1 * var(--space-25)) var(--clr-grey-100), 0px calc(-.9 * var(--space)) 0px calc(-1 * var(--space-50)) var(--clr-grey-120);
  }

  &[open] ~ .dgm_dialog__dialog[open] {
    opacity: 0;
    z-index: -1;
    transform: translateY(50%) scale3d(.75, .75, 1);
  }

  @media (width <= 480px) {
    width: calc(100% - var(--space));
    inset-inline: calc(var(--space) / 2);
    bottom: calc(var(--space) / 2);
    border: 1px solid var(--clr-grey-150);
  }
}

.dgm_dialog__modal {
  --inset: var(--space);
  --max-width: var(--breakpoint);
  z-index: var(--z-modal);
  width: min(var(--max-width, 900px), calc(100% - var(--inset)));
  min-height: min(var(--min-height, 350px), calc(100% - var(--inset)));
  height: max-content;
  max-height: min(var(--max-height, 750px), calc(100% - var(--inset)));
  opacity: 0;
  margin-inline: auto;
  top: 50%;
  transform: rotateY(180deg) translateY(-50%) scale3d(.5, .5, 1);

  :where([data-rootRounding="medium"] &) {
    border-radius: var(--rounding-200);
  }

  :where([data-rootRounding="full"] &) {
    border-radius: var(--rounding-300);
  }

  &[open] {
    opacity: 1;
    transform: rotateY(0) translateY(-50%) scale3d(1, 1, 1);

    @starting-style {
      opacity: 0;
      transform: rotateY(180deg) translateY(-50%) scale3d(.5, .5, 1);
    }
  }

  @media (prefers-reduced-motion: no-preference) {
    transition: allow-discrete .7s ease-in-out .5s;
  }

  body.dgm_js &, &:focus-within {
    transition-delay: 0s;
  }

  :where(body:not(.dgm_js) &) {
    border: 1px solid var(--clr-grey-150);
  }

  &::backdrop {
    background: var(--clr-black-900);
    opacity: 0;

    @media (prefers-reduced-motion: no-preference) {
      transition: allow-discrete .7s ease-in-out;
    }
  }

  &:where([open])::backdrop {
    opacity: .5;

    @starting-style {
      opacity: 0;
    }

    @media (prefers-reduced-transparency: reduce) {
      background: var(--clr-grey-850);
      opacity: 1;
    }
  }

  @media (width <= 480px) {
    --inset: var(--space-50);

    :where([data-rootRounding="medium"] &) {
      border-radius: var(--rounding-150);
    }

    :where([data-rootRounding="full"] &) {
      border-radius: var(--rounding-200);
    }
  }
}

.dgm_dialog__zeffy {
  --min-height: 100%;
  --max-height: 100%;
  background: var(--clr-grey-100);
  justify-content: center;
  align-items: center;
  height: 100%;

  &[open] {
    display: flex;
  }

  & .dgm_close-button {
    z-index: var(--z-above);
    position: absolute;
    inset-block-start: 1em;
    inset-inline-end: 1em;
  }

  & :where(.dgm_zeffy-modal__wrapper) {
    width: 100%;
    height: 100%;
    padding: var(--space-25);
    justify-content: center;
    align-items: center;
    display: flex;
    container: zeffy-modal__iframe / inline-size;
  }

  :where(&) :where(.dgm_zeffy-modal__iframe) {
    border-radius: var(--rounding);
    border: 0;
    width: min(100%, 600px);
    height: 250px;

    @container (width < 600px) {
      height: 214px;
    }

    @container (width < 480px) {
      height: 280px;
    }
  }
}

.dgm_dialog__fullscreen-image {
  --max-width: 100%;
  --min-height: 100%;
  --max-height: 100%;
  background: var(--clr-grey-100);
  justify-content: center;
  align-items: center;
  height: 100%;

  &[open] {
    display: flex;
  }

  & .dgm_close-button {
    position: absolute;
    inset-block-start: 1em;
    inset-inline-end: 1em;
  }

  & .dgm_image {
    width: 100%;
    height: 100%;
    max-height: 100%;
    margin: 0;
    display: flex;
  }

  & .dgm_image__img {
    object-fit: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 100%;
    height: 100%;
    max-height: 100%;
  }

  & .dgm_image__caption {
    max-width: min(100%, 250px);
    font-size: var(--wp--preset--font-size--x-small);
    background: hsl(from var(--clr-white-900) h s l / .8);
    border: 1px solid var(--clr-grey-150);
    contain: unset;
    margin: var(--space-50);
    border-radius: var(--rounding-50);
    backdrop-filter: blur(24px) brightness(4);
    padding: .75em 1em;
    position: absolute;
    bottom: 0;
    left: 0;
  }
}

.dgm_cookie-management__wrapper {
  --inset: var(--space-50);
  background-color: var(--clr-white-100);
}

@media (prefers-reduced-transparency: reduce) {
  .dgm_dialog__modal:where([open])::backdrop {
    opacity: 1;
    background: var(--clr-grey-850);
  }
}

.dgm_zeffy-embed {
  height: 100%;
  padding: var(--space-50);
  justify-content: center;
  align-items: center;
  gap: var(--space-33);
  flex-direction: column;
  display: flex;
  position: relative;
  overflow: clip;

  & > iframe {
    width: 100%;
    height: 100%;
    z-index: var(--z-above);
    border: 0;
    position: absolute;
    inset: 0;

    &:not([data-loaded="true"]:not([data-invalid="true"])) {
      display: none;
    }

    &[data-loaded="false"][data-awaitingConsent="true"] {
      & ~ .dgm_zeffy-embed__notice {
        display: none;
      }

      & ~ .dgm_zeffy-embed__cookies {
        display: flex;
      }
    }

    :where(&)[data-loaded="true"] ~ * {
      display: none;
    }

    :where(&)[data-invalid="true"] ~ .dgm_zeffy-embed__error {
      display: block;
    }
  }

  :where(&) :where(.dgm_zeffy-embed__notice) {
    text-align: center;
    font-size: .8125rem;
    display: block;

    :where(&).dgm_zeffy-embed__error {
      display: none;
    }
  }

  :where(&) .dgm_zeffy-embed__no-js {
    margin: var(--space-50);
  }

  :where(&) .dgm_zeffy-embed__new-tab {
    margin-bottom: 1em;
    font-size: .8125rem;
    position: relative;

    &:empty:after, &[aria-disabled], &:not([href^="http"]) {
      display: none;
    }
  }

  &:where([data-variant="cover"]) {
    min-height: calc(100vmin - var(--size-header, 0));
  }
}

.dgm_zeffy-embed__cookies {
  justify-content: center;
  align-items: center;
  gap: var(--space-25);
  flex-direction: column;
  display: none;
}

:is(.dgm_events, .dgm_socials-feed) {
  & :is(.dgm_events, .dgm_socials-feed) {
    display: contents;
  }

  &:where([data-loaded="false"]) {
    & :where(.dgm_events__empty, .dgm_socials-feed__empty), & > :not(:is(.dgm_events__empty, .dgm_socials-feed__empty), :is(.dgm_events__loading, .dgm_socials-feed__loading), noscript) {
      display: none;
    }

    & :where(.dgm_events__loading, .dgm_socials-feed__loading) {
      display: initial;
    }
  }

  &:where(:not([data-keepEmptyImages="true"])) {
    & img[src=""], & img:not([src]) {
      display: none;
    }
  }

  &:where([data-loaded="true"]) {
    & :where(.dgm_events__loading, .dgm_socials-feed__loading), &:where(:not([data-empty="true"])) :is(.dgm_events__empty, .dgm_socials-feed__empty) {
      display: none;
    }

    &:where([data-empty="true"]) {
      & :is(.dgm_events__empty, .dgm_socials-feed__empty) {
        display: initial;
      }

      & > :not(.dgm_events__empty, .dgm_socials-feed__empty), & :is(.dgm_events, .dgm_socials-feed)[data-empty="true"] {
        display: none;
      }
    }
  }

  & :is(.dgm_events__no-js, .dgm_socials-feed__no-js) {
    justify-content: center;
    align-items: center;
    gap: var(--space-50);
    padding: var(--space);
    flex-direction: column;
    display: flex;

    & :is(.dgm_events__error, .dgm_socials-feed__error) {
      font-size: .875rem;
      font-weight: 500;
    }
  }
}

@media (prefers-reduced-motion: no-preference) {
  :is(.dgm_events__event, .dgm_socials-feed__post) {
    animation: fadeInItems 1.5s cubic-bezier(.16, 1, .3, 1) forwards calc(var(--api-block__item-index, 0) * 70ms);
    opacity: 0;
    transform: translateY(max(100px, 50%)) scale3d(.97, .97, 1);
  }

  @keyframes fadeInItems {
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}

.dgm_google-maps {
  --font: var(--wp--preset--font-family--dgm);
  font-family: var(--font);
  justify-content: center;
  align-items: center;
  display: flex;

  &:where([data-variant="place"][data-loaded="true"]) {
    display: block;
    overflow: auto;
  }
}

.dgm_google-maps__notice {
  text-align: center;
  margin: var(--space);
  margin-block-end: calc(var(--space) + 1lh);
  font-size: .8125rem;
  display: block;

  &.dgm_google-maps__error, :where(.dgm_google-maps[data-loaded="true"]) & {
    display: none;
  }
}

.dgm_google-maps[data-invalid="true"] > .dgm_google-maps__error {
  display: block;
}

.dgm_google-maps__marker {
  background-color: var(--clr-brand);
  border-radius: var(--rounding-50);
  color: var(--clr-white-900);
  font-family: var(--font);
  text-align: center;
  text-wrap: balance;
  border: 2px solid var(--clr-grey-100);
  max-width: 250px;
  padding: 1em 1.5em;
  font-size: .75rem;
  font-weight: 500;
  position: relative;
}

.dgm_google-maps__info {
  width: 400px;
  min-width: 200px;
  max-width: 400px;
}

.dgm_google-maps__marker:after {
  content: "";
  border-left: .5em solid #0000;
  border-right: .5em solid #0000;
  border-top: .5em solid var(--clr-brand);
  width: 0;
  height: 0;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%);
}

:where(.dgm_conditional) {
  display: none;
}

:where(body[data-cookies="accepted"]) .dgm_conditional__cookies-accepted, :where(body[data-cookies="declined"]) .dgm_conditional__cookies-declined, :where(body:not([data-cookies])) .dgm_conditional__cookies-unset {
  display: contents;
}

.dgm_notification-center {
  margin: var(--space-50);
  gap: var(--space-25);
  min-width: min(100%, 300px);
  max-width: min(700px, 100%);
  z-index: var(--z-notification);
  max-height: calc(100% - var(--space-50));
  scroll-snap-type: x mandatory;
  flex-direction: column-reverse;
  display: flex;
  position: fixed;
  bottom: 0;
  left: 0;
  overflow-y: auto;

  &:empty {
    display: none;
  }

  & :where(.dgm_notification) {
    --duration: 5s;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-33);
    background: var(--clr-grey-900);
    color: var(--clr-white-900);
    letter-spacing: .01em;
    width: 100%;
    transition: var(--transition-default);
    border-radius: 8px;
    outline: none;
    flex-wrap: nowrap;
    flex-shrink: 0;
    padding-block: 1.2em;
    padding-inline: 1.5em;
    font-size: .875rem;
    display: flex;
    position: relative;
    left: -100vw;
    overflow: clip;

    &:where([data-color="true"]) {
      --borderWidth: 4px;
      --shadow: inset 500px 0 0 calc(-500px + var(--borderWidth));
      box-shadow: var(--shadow) var(--accentColor, transparent);
    }

    &[open] {
      left: 0;
    }

    & :where(.dgm_notification__info-wrapper) {
      flex-grow: 1;
      flex-shrink: 1;
      justify-content: flex-start;
      align-items: center;
      max-width: 100%;
      display: flex;

      & :where(.dgm_notification__icon) {
        flex-shrink: 0;
        margin-right: .75em;
        font-size: 1rem;

        &[data-icon=""]:empty {
          display: none;
        }
      }

      & :where(.dgm_notification__text) {
        color: inherit;
        font: inherit;
        margin: 0;
      }
    }

    & :where(.dgm_notification__progress) {
      display: none;
    }

    & :where(.dgm_notification__action) {
      color: var(--clr-grey-400);
      transition: var(--transition-default);
      border-radius: 2px;
      flex-shrink: 0;
      line-height: normal;

      &:where(:empty) {
        display: none;
      }

      &:where(:hover, :focus-visible) {
        cursor: pointer;
        color: var(--clr-white-100);
      }

      &:where(:focus-visible) {
        outline: 3px solid var(--clr-white-900);
        outline-offset: 3px;
      }
    }

    &:where([data-progress="true"]) {
      padding-bottom: calc(1.2em + 3px);

      & :where(.dgm_notification__progress) {
        background: var(--clr-grey-180);
        width: 100%;
        height: 3px;
        animation: notificationProgress;
        animation-duration: var(--duration);
        animation-timing-function: linear;
        animation-fill-mode: forwards;
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
      }
    }

    &:where([data-close="true"]) {
      & :where(.dgm_notification__close) {
        all: unset;
        color: var(--clr-grey-400);
        cursor: pointer;
        width: 1em;
        height: 1em;
        transition: var(--transition-default);
        border-radius: 4px;
        justify-content: center;
        align-items: center;
        display: flex;

        &:where(:hover, :focus-visible) {
          cursor: pointer;
          color: var(--clr-white-100);
        }

        &:where(:focus-visible) {
          outline: 3px solid var(--clr-white-900);
          outline-offset: 3px;
        }
      }
    }

    &:where([data-close="false"]) {
      & .dgm_notification__close {
        display: none;
      }
    }

    :where([data-rootRounding="minimal"]) & {
      border-radius: var(--rounding-a);
    }

    :where([data-rootRounding="medium"]) & {
      border-radius: var(--rounding-50);
    }

    :where([data-rootRounding="full"]) & {
      border-radius: var(--rounding-75);
    }
  }
}

@keyframes notificationProgress {
  from {
    width: 100%;
  }

  to {
    width: 0;
  }
}

.dgm_fraction {
  font-feature-settings: var(--font-features),
		"frac";
}

.dgm_sub, sub {
  font-feature-settings: var(--font-features), "subs";
  vertical-align: inherit;
  font-size: inherit;
}

.dgm_sup, sup {
  font-feature-settings: var(--font-features), "sups";
  vertical-align: inherit;
  font-size: inherit;
}

.dgm_scientific {
  font-feature-settings: var(--font-features), "sinf";
}

.dgm_mono-nums {
  font-feature-settings: var(--font-features), "tnum";
}

.dgm_DOM-removed, .dgm_DOM-hidden {
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  margin: -1px !important;
  display: none !important;
  position: absolute !important;
  top: -100% !important;
  left: -100% !important;
}

.dgm_invisible {
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
}

.dgm_requires-js {
  display: none;
}

:where(.dgm_full-width) {
  width: 100%;
}

:where(body.dgm_js:has(.dgm_scroll-lock[open])) {
  overflow: hidden;
}

.is-layout-flex > .dgm_use-vars:is(*, div) {
  margin-top: var(--margin-top, 0);
  margin-bottom: var(--margin-bottom, 0);
  margin-left: var(--margin-left, 0);
  margin-right: var(--margin-right, 0);
}

.grecaptcha-badge {
  visibility: hidden;
}

:is(.wpcf7-checkbox, .wpcf7-radio) {
  flex-direction: column;
  gap: .5em;
  display: flex;

  & .wpcf7-list-item {
    display: block;
  }
}

.wpcf7-list-item {
  padding-inline: 1em;
}

.dgm_form .wpcf7-not-valid-tip {
  color: var(--clr-red-400);
  margin-block: .25em;
  font-size: .9em;
}

p:has(.wpcf7-form-control-wrap):where(:has([type="checkbox"], [type="radio"])) {
  margin-block: 2em;
}
