@charset "UTF-8";
:root {
  --l: 50%;
  --white: #fff;
  --black: #000;
  --rm-green: #44e5b9;
  --rm-blue-light: #528bfc;
  --rm-blue: #0156fc;
  --rm-red: #e0152b;
  --rm-yellow: #fad442;
  --rm-black: #151215;
  --rm-gray: #edf0f3;
  --rm-gray-neutral: #dbdbdb;
  --rm-gray--100: #8b8f92;
  --rm-gray--200: #8b9ba0;
  --rm-gray--300: #607075;
  --rm-gray--dark: #252b2d;
  --rm-accent--lime: #6bebb6;
  --rm-accent--yellow: #fad442;
  --rm-accent--ramsalt: #00507e;
  --rm-accent: var(--rm-accent--lime);
  --rm-accent--secondary: var(--rm-green);
  --primary: #151215;
  --primary-accent: #2e2e2e;
  --primary-100: hsl(var(--primary), calc(var(--l) + 30%));
  --primary-900: hsl(var(--primary), calc(var(--l) - 30%));
  --secondary: #6bebb6;
  --rm-footer-bg: #151215;
  --rm-footer-text: #ffffff; }

:root {
  --l: 50%;
  --white: #fff;
  --black: #000;
  --rm-green: #44e5b9;
  --rm-blue-light: #528bfc;
  --rm-blue: #0156fc;
  --rm-red: #e0152b;
  --rm-yellow: #fad442;
  --rm-black: #151215;
  --rm-gray: #edf0f3;
  --rm-gray-neutral: #dbdbdb;
  --rm-gray--100: #8b8f92;
  --rm-gray--200: #8b9ba0;
  --rm-gray--300: #607075;
  --rm-gray--dark: #252b2d;
  --rm-accent--lime: #6bebb6;
  --rm-accent--yellow: #fad442;
  --rm-accent--ramsalt: #00507e;
  --rm-accent: var(--rm-accent--lime);
  --rm-accent--secondary: var(--rm-green);
  --primary: #151215;
  --primary-accent: #2e2e2e;
  --primary-100: hsl(var(--primary), calc(var(--l) + 30%));
  --primary-900: hsl(var(--primary), calc(var(--l) - 30%));
  --secondary: #6bebb6;
  --rm-footer-bg: #151215;
  --rm-footer-text: #ffffff; }

::-moz-selection {
  color: var(--rm-black);
  background: var(--rm-accent); }

::selection {
  color: var(--rm-black);
  background: var(--rm-accent); }

.font-heading {
  font-family: "Playfair Display", serif; }

/* Focusing the button with a keyboard will show a dashed black line. */
button:focus-visible {
  outline: 1px dashed var(--rm-accent); }

/* Focusing the button with a mouse, touch, or stylus will show a subtle drop shadow. */
button:focus:not(:focus-visible) {
  outline: none; }

.container-sm {
  margin: 0 auto; }
  @media (min-width: 992px) {
    .container-sm {
      max-width: 720px; } }

.factbox {
  border: 1px solid #d2d3d4;
  margin: 0.5rem 0 1.75rem 0;
  padding: 1.25rem 1.25rem 1.25rem 1.25rem;
  position: relative; }
  @media (min-width: 768px) {
    .factbox {
      padding: 1.75rem 1.875rem 1.25rem 1.875rem; } }
  @media (min-width: 576px) {
    .factbox.alignright, .factbox.alignleft, .factbox.aligncenter {
      max-width: 320px;
      min-width: 270px; } }
  @media (min-width: 576px) {
    .factbox.alignright {
      float: right;
      margin: 0.5rem 0 1.75rem 1rem; } }
  @media (min-width: 576px) {
    .factbox.alignleft {
      float: left;
      margin: 0.5rem 1.75rem 1rem 0; } }
  .factbox .factbox__title,
  .factbox .factbox__label {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 1.25rem 0;
    padding: 0 0 1rem 0;
    position: relative; }
    .factbox .factbox__title:before,
    .factbox .factbox__label:before {
      content: '';
      background: var(--primary);
      bottom: 0;
      height: 2px;
      width: 2.5rem;
      position: absolute; }
  .factbox .factbox__text,
  .factbox .factbox__content {
    /* Remove the margin of the last child, to avoid double spacings with the wrappers spacing. */ }
    .factbox .factbox__text > *:last-child,
    .factbox .factbox__content > *:last-child {
      margin-bottom: 0; }
    .factbox .factbox__text ul,
    .factbox .factbox__content ul {
      margin: -0.25rem 0 1.25rem;
      padding: 0;
      display: block;
      list-style-type: disc;
      -webkit-margin-before: 1em;
      margin-block-start: 1em;
      -webkit-margin-after: 1em;
      margin-block-end: 1em;
      -webkit-padding-start: 40px;
      padding-inline-start: 40px; }
      .factbox .factbox__text ul li,
      .factbox .factbox__content ul li {
        padding: 0;
        margin: 0;
        font-size: 1rem;
        /* This should not happen, but make sure, that paragraphs in list items do not create visual regressions */ }
        .factbox .factbox__text ul li p,
        .factbox .factbox__content ul li p {
          display: inline-block;
          margin: 0; }

.factbox--plain {
  margin: 0 0 2rem;
  padding: 0;
  position: relative; }
  @media (max-width: 767.98px) {
    .factbox--plain {
      border-bottom: 1px solid #3c4548;
      border-top: 1px solid #3c4548;
      padding-bottom: 1.75rem;
      padding-top: 1.75rem; } }
  .factbox--plain .factbox__title {
    font-family: "Playfair Display", serif;
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 0.875rem 0 !important;
    position: relative; }
  .factbox--plain .factbox__text {
    /* Remove the margin of the last child, to avoid double spacings with the wrappers spacing. */ }
    .factbox--plain .factbox__text > *:last-child {
      margin-bottom: 0; }
    .factbox--plain .factbox__text ul {
      font-size: 1rem !important;
      font-weight: 400 !important;
      margin: -0.25rem 0 1.25rem;
      padding: 0; }
      .factbox--plain .factbox__text ul li {
        list-style: none;
        padding: 0.3125rem 0;
        /* This should not happen, but make sure, that paragraphs in list items do not create visual regressions */ }
        .factbox--plain .factbox__text ul li:before {
          font-size: 0.5rem;
          content: '▶' !important;
          background: none !important;
          vertical-align: top !important;
          margin-top: 0.375rem !important; }
        .factbox--plain .factbox__text ul li p {
          display: inline-block;
          margin: 0; }
