[data-template-position-root="true"] {
  position: relative;
}

@media (min-width: 681px) {
  [data-template-layout-desktop="FLOW"] {
    --template-left: 0px;
    --template-top: 0px;
    translate: var(--template-left) var(--template-top);
  }

  [data-template-layout-desktop="FLOW"][data-template-width-desktop="true"] {
    width: var(--template-width) !important;
  }

  [data-template-layout-desktop="FLOW"][data-template-height-desktop="true"] {
    height: var(--template-height) !important;
  }

  [data-template-layout-desktop="ABSOLUTE"] {
    position: absolute !important;
    left: var(--template-left) !important;
    top: var(--template-top) !important;
    width: var(--template-width) !important;
    height: var(--template-height) !important;
  }

  [data-template-z-index-desktop="true"] { z-index: var(--template-z-index) !important; }
  [data-template-font-size-desktop="true"] { font-size: var(--template-font-size) !important; }
  [data-template-font-family-desktop="true"] { font-family: var(--template-font-family) !important; }
  [data-template-font-weight-desktop="true"] { font-weight: var(--template-font-weight) !important; }
  [data-template-line-height-desktop="true"] { line-height: var(--template-line-height) !important; }
  [data-template-color-desktop="true"] { color: var(--template-color) !important; }
  [data-template-background-desktop="true"] { background-color: var(--template-background) !important; }
  [data-template-opacity-desktop="true"] { opacity: var(--template-opacity) !important; }
  [data-template-text-align-desktop="true"] { text-align: var(--template-text-align) !important; }
  [data-template-border-radius-desktop="true"] { border-radius: var(--template-border-radius) !important; }
  [data-template-object-fit-desktop="true"] { object-fit: var(--template-object-fit) !important; }
  [data-template-padding-desktop="true"] { padding: var(--template-padding) !important; }

  [data-template-gradient-self-desktop="true"] {
    background-image: var(--template-gradient-self) !important;
  }

  [data-template-gradient-carousel-overlay-desktop="true"] {
    background-image: var(--template-gradient-carousel-overlay) !important;
  }

  [data-template-gradient-before-desktop="true"]::before {
    background-image: var(--template-gradient-before) !important;
  }

  [data-template-gradient-after-desktop="true"]::after {
    background-image: var(--template-gradient-after) !important;
  }

  [data-template-layer-desktop="true"] {
    z-index: var(--template-layer-z-index) !important;
  }
}

.template-carousel-frame {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: inherit;
}

[data-carousel] .hero-slide[href] {
  cursor: pointer;
}

[data-carousel] .hero-overlay,
[data-carousel] .hero-content {
  pointer-events: none;
}

[data-carousel] .hero-content :is(a, button, input, select, textarea, [role="button"]) {
  pointer-events: auto;
}

[data-carousel][data-indicator-position="bottom-left"] .hero-controls {
  right: auto;
  left: max(48px, 50% - 648px);
}

[data-carousel][data-indicator-position="bottom-center"] .hero-controls {
  right: auto;
  left: 50%;
  transform: translateX(-50%);
}

[data-carousel][data-indicator-position="bottom-right"] .hero-controls {
  right: max(48px, 50% - 648px);
  left: auto;
}

.template-custom-node {
  box-sizing: border-box;
}

.template-custom-node > img {
  width: 100%;
  height: 100%;
  object-fit: inherit;
}

.template-custom-node--button > :is(a, button) {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-decoration: none;
}

.template-custom-node--button > button {
  padding: 0;
  border: 0;
  background: transparent;
  font: inherit;
  cursor: pointer;
}

.template-custom-node .managed-language-switcher {
  display: flex;
  height: 100%;
  align-items: center;
  gap: 10px;
}

.template-custom-node .managed-language-switcher a {
  color: inherit;
  text-decoration: none;
}

.template-custom-node .managed-carousel,
.template-custom-node .managed-carousel__slides,
.template-custom-node .managed-carousel__slide {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}

.template-custom-node .managed-carousel__slide {
  position: absolute;
  inset: 0;
  visibility: hidden;
  opacity: 0;
  transition: opacity 240ms ease;
}

.template-custom-node .managed-carousel__slide.is-active {
  visibility: visible;
  opacity: 1;
}

.template-custom-node .managed-carousel__slide img {
  width: 100%;
  height: 100%;
  object-fit: inherit;
}

.template-custom-node .managed-carousel__arrows {
  position: absolute;
  inset: 50% 10px auto;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  pointer-events: none;
}

.template-custom-node .managed-carousel__arrows button {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 50%;
  color: #fff;
  background: rgb(0 0 0 / 55%);
  cursor: pointer;
  pointer-events: auto;
  font-size: 25px;
}

.template-custom-node .managed-carousel__dots {
  position: absolute;
  right: 0;
  bottom: 12px;
  left: 0;
  display: flex;
  justify-content: center;
  gap: 7px;
}

.template-custom-node .managed-carousel__dots button {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: rgb(255 255 255 / 55%);
  cursor: pointer;
}

.template-custom-node .managed-carousel__dots button.is-active {
  background: #fff;
}

.template-custom-node .managed-carousel[data-indicator-position="bottom-left"] .managed-carousel__dots {
  justify-content: flex-start;
  padding-inline: 12px;
}

.template-custom-node .managed-carousel[data-indicator-position="bottom-right"] .managed-carousel__dots {
  justify-content: flex-end;
  padding-inline: 12px;
}

.template-custom-node--divider > hr {
  width: 100%;
  margin: 0;
  border: 0;
  border-top: 1px solid currentcolor;
}

@media (max-width: 680px) {
  [data-template-layout-mobile="FLOW"] {
    --template-mobile-left: 0px;
    --template-mobile-top: 0px;
    translate: var(--template-mobile-left) var(--template-mobile-top);
  }

  [data-template-layout-mobile="FLOW"][data-template-width-mobile="true"] {
    width: var(--template-mobile-width) !important;
  }

  [data-template-layout-mobile="FLOW"][data-template-height-mobile="true"] {
    height: var(--template-mobile-height) !important;
  }

  [data-template-layout-mobile="ABSOLUTE"] {
    position: absolute !important;
    left: var(--template-mobile-left) !important;
    top: var(--template-mobile-top) !important;
    width: var(--template-mobile-width) !important;
    height: var(--template-mobile-height) !important;
  }

  [data-template-z-index-mobile="true"] { z-index: var(--template-mobile-z-index) !important; }
  [data-template-font-size-mobile="true"] { font-size: var(--template-mobile-font-size) !important; }
  [data-template-font-family-mobile="true"] { font-family: var(--template-mobile-font-family) !important; }
  [data-template-font-weight-mobile="true"] { font-weight: var(--template-mobile-font-weight) !important; }
  [data-template-line-height-mobile="true"] { line-height: var(--template-mobile-line-height) !important; }
  [data-template-color-mobile="true"] { color: var(--template-mobile-color) !important; }
  [data-template-background-mobile="true"] { background-color: var(--template-mobile-background) !important; }
  [data-template-opacity-mobile="true"] { opacity: var(--template-mobile-opacity) !important; }
  [data-template-text-align-mobile="true"] { text-align: var(--template-mobile-text-align) !important; }
  [data-template-border-radius-mobile="true"] { border-radius: var(--template-mobile-border-radius) !important; }
  [data-template-object-fit-mobile="true"] { object-fit: var(--template-mobile-object-fit) !important; }
  [data-template-padding-mobile="true"] { padding: var(--template-mobile-padding) !important; }

  [data-template-gradient-self-mobile="true"] {
    background-image: var(--template-mobile-gradient-self) !important;
  }

  [data-template-gradient-carousel-overlay-mobile="true"] {
    background-image: var(--template-mobile-gradient-carousel-overlay) !important;
  }

  [data-template-gradient-before-mobile="true"]::before {
    background-image: var(--template-mobile-gradient-before) !important;
  }

  [data-template-gradient-after-mobile="true"]::after {
    background-image: var(--template-mobile-gradient-after) !important;
  }

  [data-template-layer-mobile="true"] {
    z-index: var(--template-mobile-layer-z-index) !important;
  }
}

.history-route.managed-timeline {
  position: relative;
  height: auto !important;
  min-height: 0;
  margin-top: 72px;
}

.managed-timeline-list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: minmax(176px, auto);
  row-gap: 54px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.managed-timeline-item {
  position: relative;
  min-width: 0;
  padding-top: 62px;
}

.managed-timeline-item.is-left {
  padding-right: 56px;
}

.managed-timeline-item.is-right {
  padding-left: 56px;
}

.managed-timeline-rail {
  position: absolute;
  top: 25px;
  height: 8px;
  background: var(--timeline-rail, var(--timeline-track-desktop));
}

.managed-timeline-item.is-left .managed-timeline-rail {
  right: 0;
  left: 38px;
}

.managed-timeline-item.is-right .managed-timeline-rail {
  right: 38px;
  left: 0;
}

.managed-timeline-dot {
  position: absolute;
  z-index: 2;
  top: 16px;
  width: 26px;
  height: 26px;
  border: 6px solid #fff;
  border-radius: 50%;
  background: var(--timeline-dot-desktop, #006986);
  box-shadow: 0 0 0 2px rgb(49 94 82 / 22%);
}

.managed-timeline-item.is-left .managed-timeline-dot {
  left: 25px;
}

.managed-timeline-item.is-right .managed-timeline-dot {
  right: 25px;
}

.managed-timeline-item.has-turn::after {
  position: absolute;
  top: 25px;
  bottom: -79px;
  width: 8px;
  content: "";
  background: var(--timeline-turn, var(--timeline-track-desktop));
}

.managed-timeline-item.has-turn.is-left::after {
  left: 34px;
}

.managed-timeline-item.has-turn.is-right::after {
  right: 34px;
}

.managed-timeline-content {
  max-width: 430px;
  overflow-wrap: anywhere;
}

.managed-timeline-item.is-right .managed-timeline-content {
  margin-left: auto;
}

.managed-timeline-item.has-turn.is-left .managed-timeline-content {
  padding-left: 56px;
}

.managed-timeline-item.has-turn.is-right .managed-timeline-content {
  padding-right: 56px;
}

.managed-timeline-date {
  color: #315e52;
  font-family: var(--latin, Georgia, serif);
  font-size: 28px;
  line-height: 1;
}

.managed-timeline-title {
  margin: 14px 0 0;
  font-size: 22px;
  line-height: 1.45;
}

.managed-timeline-description {
  color: var(--body, #56615d);
  margin: 10px 0 0;
  font-size: 13px;
  line-height: 1.8;
}

.managed-timeline-item.is-last .managed-timeline-rail::after {
  position: absolute;
  z-index: 3;
  top: -8px;
  content: "";
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}

.managed-timeline-item.is-last.is-left .managed-timeline-rail::after {
  left: -16px;
  border-right: 20px solid var(--timeline-arrow-desktop, #e4007e);
}

.managed-timeline-item.is-last.is-right .managed-timeline-rail::after {
  right: -16px;
  border-left: 20px solid var(--timeline-arrow-desktop, #e4007e);
}

.managed-timeline-item.is-last.is-single-row.is-left .managed-timeline-rail {
  right: auto;
  width: 72px;
}

.managed-timeline-item.is-last.is-single-row.is-right .managed-timeline-rail {
  left: auto;
  width: 72px;
}

.managed-timeline-item.is-last.is-single-row.is-left .managed-timeline-rail::after {
  right: -16px;
  left: auto;
  border-right: 0;
  border-left: 20px solid var(--timeline-arrow-desktop, #e4007e);
}

.managed-timeline-item.is-last.is-single-row.is-right .managed-timeline-rail::after {
  right: auto;
  left: -16px;
  border-right: 20px solid var(--timeline-arrow-desktop, #e4007e);
  border-left: 0;
}

@media (max-width: 680px) {
  .history-route.managed-timeline {
    margin-top: 52px;
  }

  .managed-timeline-list {
    display: block;
    padding-left: 52px;
  }

  .managed-timeline-list::before {
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: 14px;
    width: 6px;
    content: "";
    background: var(--timeline-track-mobile);
  }

  .managed-timeline-list::after {
    position: absolute;
    bottom: -5px;
    left: 5px;
    content: "";
    border-right: 12px solid transparent;
    border-left: 12px solid transparent;
    border-top: 20px solid var(--timeline-arrow-mobile, #e4007e);
  }

  .managed-timeline-item,
  .managed-timeline-item.is-left,
  .managed-timeline-item.is-right {
    min-height: 0;
    margin-bottom: 46px;
    padding: 0;
  }

  .managed-timeline-item:last-child {
    margin-bottom: 0;
  }

  .managed-timeline-rail,
  .managed-timeline-item.has-turn::after {
    display: none;
  }

  .managed-timeline-dot,
  .managed-timeline-item.is-left .managed-timeline-dot,
  .managed-timeline-item.is-right .managed-timeline-dot {
    top: 2px;
    right: auto;
    left: -49px;
    background: var(--timeline-dot-mobile, #006986);
  }

  .managed-timeline-item.is-right .managed-timeline-content {
    margin-left: 0;
  }

  .managed-timeline-item.has-turn.is-left .managed-timeline-content,
  .managed-timeline-item.has-turn.is-right .managed-timeline-content {
    padding: 0;
  }

  .managed-timeline-date {
    font-size: 22px;
  }

  .managed-timeline-title {
    margin-top: 8px;
    font-size: 20px;
  }
}

@media (max-width: 920px) {
  [data-carousel][data-indicator-position="bottom-left"] .hero-controls {
    right: auto;
    left: 32px;
  }

  [data-carousel][data-indicator-position="bottom-right"] .hero-controls {
    right: 32px;
    left: auto;
  }
}

@media (max-width: 680px) {
  [data-carousel][data-indicator-position="bottom-left"] .hero-controls {
    right: auto;
    left: 20px;
  }

  [data-carousel][data-indicator-position="bottom-right"] .hero-controls {
    right: 20px;
    left: auto;
  }
}
