/*!*****************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./scss/main.scss ***!
  \*****************************************************************************************************************************************************************/
@charset "UTF-8";
@layer reset, globals, layout, components, partials, utilities;
:root {
  --color-black: #232323;
  --color-white: #fff;
  --color-turkis: #00819C;
  --color-blue: #2358C2;
  --color-bright-blue: #1D88E5;
  --color-green: #95B422;
  --color-greyed: rgba(76, 92, 107, 0.5);
  --color-light-grey: #FAFAFA;
  --color-foreground: #232323;
  --color-background: #fff;
  --border: 1px;
}

:root {
  --full-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
  --spacing: 1rem;
  --inline-spacing: calc(1rem - 2px);
  --inline-spacing-m: 2rem;
  --block-spacing: 1rem;
  --block-spacing-m: calc(1rem + 4px);
  --block-spacing-l: 2rem;
  --gutter: 1rem;
  --container-wide: 1320px;
  --container-flash: 964px;
  --container-text: 860px;
  --container-form: 746px;
  --column-min: 24rem;
  --column-max: 1fr;
}

/* dm-sans-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "DM Sans";
  font-style: normal;
  font-weight: 400;
  src: url(/wp-content/themes/vsao-sg/dist/8aae4f3d5a6a62dc3dae.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* dm-sans-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "DM Sans";
  font-style: normal;
  font-weight: 700;
  src: url(/wp-content/themes/vsao-sg/dist/dca06d82fac911716e42.woff2) format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
@layer reset {
  /*
  1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
  2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
  */
  *,
::before,
::after {
    box-sizing: border-box;
    /* 1 */
    border-width: 0;
    /* 2 */
    border-style: solid;
    /* 2 */
    border-color: black;
    /* 2 */
  }

  ::before,
::after {
    --tw-content: "";
  }

  /*
  1. Use a consistent sensible line-height in all browsers.
  2. Prevent adjustments of font size after orientation changes in iOS.
  3. Use a more readable tab size.
  4. Use the user's configured `sans` font-family by default.
  */
  html {
    line-height: 1.5;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
    -moz-tab-size: 4;
    /* 3 */
    tab-size: 4;
    /* 3 */
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    /* 4 */
  }

  /*
  1. Remove the margin in all browsers.
  2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
  */
  body {
    margin: 0;
    /* 1 */
    line-height: inherit;
    /* 2 */
  }

  /*
  1. Add the correct height in Firefox.
  2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
  3. Ensure horizontal rules are visible by default.
  */
  hr {
    height: 0;
    /* 1 */
    color: inherit;
    /* 2 */
    border-top-width: 1px;
    /* 3 */
  }

  /*
  Add the correct text decoration in Chrome, Edge, and Safari.
  */
  abbr:where([title]) {
    text-decoration: underline dotted;
  }

  /*
  Remove the default font size and weight for headings.
  */
  h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  /*
  Reset links to optimize for opt-in styling instead of opt-out.
  */
  a {
    color: inherit;
    text-decoration: inherit;
  }

  /*
  Add the correct font weight in Edge and Safari.
  */
  b,
strong {
    font-weight: bolder;
  }

  /*
  1. Use the user's configured `mono` font family by default.
  2. Correct the odd `em` font sizing in all browsers.
  */
  code,
kbd,
samp,
pre {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    /* 1 */
    font-size: 1em;
    /* 2 */
  }

  /*
  Add the correct font size in all browsers.
  */
  small {
    font-size: 80%;
  }

  /*
  Prevent `sub` and `sup` elements from affecting the line height in all browsers.
  */
  sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }

  sub {
    bottom: -0.25em;
  }

  sup {
    top: -0.5em;
  }

  /*
  1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
  2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
  3. Remove gaps between table borders by default.
  */
  table {
    text-indent: 0;
    /* 1 */
    border-color: inherit;
    /* 2 */
    border-collapse: collapse;
    /* 3 */
  }

  /*
  1. Change the font styles in all browsers.
  2. Remove the margin in Firefox and Safari.
  3. Remove default padding in all browsers.
  */
  button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    /* 1 */
    font-size: 100%;
    /* 1 */
    line-height: inherit;
    /* 1 */
    color: inherit;
    /* 1 */
    margin: 0;
    /* 2 */
    padding: 0;
    /* 3 */
  }

  /*
  Remove the inheritance of text transform in Edge and Firefox.
  */
  button,
select {
    text-transform: none;
  }

  /*
  1. Correct the inability to style clickable types in iOS and Safari.
  2. Remove default button styles.
  */
  button,
[type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button;
    /* 1 */
    background-color: transparent;
    /* 2 */
    background-image: none;
    /* 2 */
  }

  /*
  Use the modern Firefox focus style for all focusable elements.
  */
  :-moz-focusring {
    outline: auto;
  }

  /*
  Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
  */
  :-moz-ui-invalid {
    box-shadow: none;
  }

  /*
  Add the correct vertical alignment in Chrome and Firefox.
  */
  progress {
    vertical-align: baseline;
  }

  /*
  Correct the cursor style of increment and decrement buttons in Safari.
  */
  ::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto;
  }

  /*
  1. Correct the odd appearance in Chrome and Safari.
  2. Correct the outline style in Safari.
  */
  [type=search] {
    -webkit-appearance: textfield;
    /* 1 */
    outline-offset: -2px;
    /* 2 */
  }

  /*
  Remove the inner padding in Chrome and Safari on macOS.
  */
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  /*
  1. Correct the inability to style clickable types in iOS and Safari.
  2. Change font properties to `inherit` in Safari.
  */
  ::-webkit-file-upload-button {
    -webkit-appearance: button;
    /* 1 */
    font: inherit;
    /* 2 */
  }

  /*
  Add the correct display in Chrome and Safari.
  */
  summary {
    display: list-item;
  }

  /*
  Removes the default spacing and border for appropriate elements.
  */
  blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
    margin: 0;
  }

  fieldset {
    margin: 0;
    padding: 0;
  }

  legend {
    padding: 0;
  }

  ol,
ul,
menu {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  /*
  Prevent resizing textareas horizontally by default.
  */
  textarea {
    resize: vertical;
  }

  /*
  1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
  2. Set the default placeholder color to the user's configured gray 400 color.
  */
  input::placeholder,
textarea::placeholder {
    opacity: 1;
    /* 1 */
    color: #9ca3af;
    /* 2 */
  }

  /*
  Set the default cursor for buttons.
  */
  button,
[role=button] {
    cursor: pointer;
  }

  /*
  Make sure disabled buttons don't get the pointer cursor.
  */
  :disabled {
    cursor: default;
  }

  /*
  1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
  2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
     This can trigger a poorly considered lint error in some tools but is included by design.
  */
  img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
    display: block;
    /* 1 */
    vertical-align: middle;
    /* 2 */
  }

  /*
  Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
  */
  img,
video {
    max-width: 100%;
    height: auto;
  }

  /*
  Ensure the default browser behavior of the `hidden` attribute.
  */
  [hidden] {
    display: none;
  }

  details summary {
    list-style: none;
    cursor: pointer;
  }

  details summary::-webkit-details-marker {
    display: none;
    content: "";
  }

  details summary::marker {
    display: none;
    content: "";
  }

  address {
    font-style: normal;
  }

  body {
    position: relative;
    z-index: 0;
  }

  html, body {
    width: 100vw;
    overflow-x: hidden;
  }
}
@layer globals {
  html {
    font-family: "DM Sans";
    font-size: 18px;
    line-height: 26px;
    color: var(--color-foreground);
    background-color: var(--color-background);
  }

  h1 {
    font-size: 72px;
    line-height: 74px;
  }

  h2, .variant-small h1 {
    font-size: 48px;
    line-height: 52px;
  }

  h3, article header time {
    font-size: 24px;
    line-height: 32px;
  }

  h1, h2, h3 {
    color: var(--color-green);
    font-weight: bold;
  }

  article header time {
    color: var(--color-turkis);
    font-weight: bold;
  }

  a:not(.button) {
    font-weight: bold;
    color: var(--color-bright-blue);
  }
  a:not(.button) p {
    font-weight: normal;
    color: var(--color-foreground);
  }

  button:not(.has-icon), a[role=button], input[type=submit], .button {
    cursor: pointer;
    color: var(--color-green);
    border: 2px solid var(--color-green);
    background-color: var(--color-white);
    border-radius: 9999999px;
    font-size: 16px;
    line-height: 1;
    font-weight: bold;
    padding-inline: 22px;
    padding-block: 16px;
  }
  button:not(.has-icon):hover, a[role=button]:hover, input[type=submit]:hover, .button:hover {
    background-color: var(--color-green);
    color: var(--color-white);
  }

  input, textarea, select {
    border: 1px solid var(--color-green);
    border-radius: 8px;
    padding-inline: 16px;
    padding-block: 10px;
    font-size: 0.75rem;
    line-height: 1.5;
    color: var(--color-foreground);
    width: 100%;
  }

  ::placeholder {
    color: var(--color-greyed);
  }
}
@layer layout {
  .container {
    margin-inline: auto;
    max-inline-size: var(--container-wide);
    padding-inline: var(--inline-spacing, 1rem);
  }
  .container.wide {
    max-inline-size: var(--container-wide);
  }
  .container.text {
    max-inline-size: var(--container-text);
  }
  .container.flash {
    max-inline-size: var(--container-flash);
  }
  .container.form {
    max-inline-size: var(--container-form);
  }

  .stack > * + * {
    margin-block-start: var(--block-spacing, 1rem);
  }
  .stack > * + *.recursive * + * {
    margin-block-start: var(--block-spacing, 1rem);
  }

  .section {
    padding-block: var(--block-spacing, 1rem);
    color: var(--color-foreground, black);
    background-color: var(--color-background, white);
  }
  .section * {
    color: inherit;
  }
  .section.inverted {
    color: var(--color-background, white);
    background-color: var(--color-foreground, black);
  }

  .box {
    padding-block: var(--block-spacing, 1rem);
    padding-inline: var(--inline-spacing, 1rem);
    border: var(--border, 1px) solid;
    outline: var(--border, 1px) transparent;
    outline-offset: calc(var(--border, 1px) * -1);
    color: var(--color-foreground, black);
    background-color: var(--color-background, white);
  }
  .box * {
    color: inherit;
  }
  .box.inverted {
    color: var(--color-background, white);
    background-color: var(--color-foreground, black);
  }

  .cluster {
    display: flex;
    flex-wrap: wrap;
    gap: var(--inline-spacing, 1rem);
    justify-content: start;
  }
  .cluster.end {
    justify-content: end;
  }
  .cluster.center {
    justify-content: center;
  }

  .spread {
    display: flex;
    justify-content: space-between;
  }
  .spread.vertical {
    flex-direction: column;
  }

  .with-sidebar {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gutter, 1rem);
  }
  .with-sidebar > :first-child {
    flex-basis: var(--sidebar-width, 20rem);
    flex-grow: 1;
  }
  .with-sidebar > :last-child {
    flex-basis: 0;
    flex-grow: 999;
    min-inline-size: 50%;
  }

  .switcher {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gutter, 1rem);
    /* ↓ The width at which the layout “breaks” */
  }
  .switcher > * {
    /* ↓ Allow children to grow */
    flex-grow: 1;
    /* ↓ Switch the layout at the --threshold */
    flex-basis: calc((var(--threshold) - 100%) * 999);
  }
  .switcher > :nth-last-child(n+5), .switcher > :nth-last-child(n+5) ~ * {
    /* ↓ Switch to a vertical configuration if
    there are more than 4 child elements */
    flex-basis: 100%;
  }

  .cover {
    /* ↓ Establish a columnal flex context */
    display: flex;
    flex-direction: column;
    /* ↓ Set a minimum height to match the viewport height
    (any minimum would be fine) */
    min-block-size: var(--full-height);
    padding-block: var(--block-spacing);
    padding-inline: var(--inline-spacing);
  }
  .cover > * {
    /* ↓ Give each child a top and bottom margin */
    margin-block: var(--block-spacing);
  }
  .cover > :first-child:not(h1) {
    /* ↓ Remove the top margin from the first-child
    if it _doesn't_ match the centered element */
    margin-block-start: 0;
  }
  .cover > :last-child:not(h1) {
    /* ↓ Remove the bottom margin from the last-child
    if it _doesn't_ match the centered element */
    margin-block-end: 0;
  }
  .cover > h1 {
    /* ↓ Center the centered element (h1 here)
    in the available vertical space */
    margin-block: auto;
  }

  .frame {
    --n: 16;
    /* numerator */
    --d: 9;
    /* denominator */
    aspect-ratio: var(--n)/var(--d);
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .frame > img, .frame > video {
    inline-size: 100%;
    block-size: 100%;
    object-fit: cover;
  }

  body {
    display: flex;
    flex-direction: column;
    min-height: var(--full-height);
  }
  body > * {
    flex-grow: 0;
  }
  body #main {
    flex-grow: 1;
  }

  #header {
    padding-block: 1rem;
    box-shadow: 0 1px 20px 0px rgba(0, 0, 0, 0.1);
  }
  #header a:not(.button) {
    color: var(--color-black);
    font-weight: normal;
  }

  #footer {
    margin-top: 32px;
  }
  #footer #footer-brand, #footer address {
    padding-block-start: 46px;
  }
  #footer nav {
    padding-block: 28px;
    padding-inline-end: 120px;
  }
  #footer nav ul li a {
    font-size: 24px;
    line-height: 32px;
  }
  #footer nav ul li + li {
    margin-block-start: 13px;
  }
}
@layer components {
  .green-box {
    --color-background: var(--color-green);
    --color-foreground: var(--color-white);
  }

  .img-full-cover {
    width: 100%;
    min-height: 100%;
    object-fit: cover;
  }

  .type--module + .type--module,
.type--module + .wrapper-module,
.wrapper-module + .type--module {
    margin-block-start: 50px;
  }
}
@layer partials {
  header#content-header.variant-large {
    --offset-top: 104px;
    padding-top: var(--offset-top);
  }
  header#content-header.variant-large .content-header-wrapper {
    flex-direction: row-reverse;
    align-items: stretch;
  }
  header#content-header.variant-large .content-header-wrapper .text-block {
    padding-top: 94px;
    transform: translate(-12%, calc(var(--offset-top) * -1));
    flex: 1 1 50%;
    margin-right: -6.25%;
  }
  header#content-header.variant-large .content-header-wrapper figure {
    flex: 1 1 50%;
  }
  header#content-header.variant-main {
    --offset-top: 56px;
    padding-top: var(--offset-top);
    position: relative;
  }
  header#content-header.variant-main::before {
    content: "";
    display: block;
    background-color: var(--color-green);
    position: absolute;
    top: 0;
    right: 0;
    width: 27%;
    height: 100%;
  }
  header#content-header.variant-main .content-header-wrapper .text-block {
    flex: 0 0 50%;
    background-color: var(--color-white);
    transform: none;
    z-index: 1;
  }
  header#content-header.variant-main .content-header-wrapper .text-block h1 {
    color: var(--color-green);
  }
  header#content-header.variant-main .content-header-wrapper .text-block p.lead {
    color: var(--color-foreground);
    margin-block-start: 30px;
  }
  header#content-header.variant-main .content-header-wrapper .text-block .button {
    margin-block-start: 40px;
    display: inline-block;
  }
  header#content-header.variant-main .content-header-wrapper figure {
    flex: 0 0 50%;
  }
  header#content-header .content-header-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: relative;
    padding-bottom: 48px;
  }
  header#content-header .content-header-wrapper .text-block {
    flex: 0 0 55%;
    background-color: var(--color-green);
    padding-left: 52px;
    padding-top: 40px;
    padding-right: 80px;
    padding-bottom: 56px;
    transform: translate(12%, 0);
    z-index: 1;
  }
  header#content-header .content-header-wrapper .text-block h1 {
    color: var(--color-white);
  }
  header#content-header .content-header-wrapper .text-block p.lead {
    color: var(--color-foreground);
    font-size: 26px;
    line-height: 32px;
    font-weight: bold;
    margin-block-start: 18px;
  }
  header#content-header .content-header-wrapper figure {
    flex: 0 0 45%;
    min-height: 675px;
    height: 100%;
    position: relative;
  }
  header#content-header .content-header-wrapper figure img {
    height: 675px;
  }

  .type--module.name--title + .type--module {
    margin-block-start: 37px;
  }

  .type--module.name--team {
    position: relative;
    padding-block: 2rem;
  }
  .type--module.name--team ul.grid {
    display: flex;
    justify-content: center;
    gap: 94px;
    flex-wrap: wrap;
  }
  .type--module.name--team ul.grid li {
    flex: 1 0 366px;
    max-width: 366px;
    position: relative;
  }
  .type--module.name--team .person h3, .type--module.name--team .person section {
    margin-top: 1rem;
  }
  .type--module.name--team .person .text-section {
    display: none;
  }
  .type--module.name--team .person .text-section.index-display {
    display: block;
  }
  .type--module.name--team .person .close {
    display: none;
    position: absolute;
    right: 0;
    top: 0;
    transform: translate(calc(100% + 32px), 0px);
  }
  .type--module.name--team.opened .team-list li {
    display: none;
  }
  .type--module.name--team.opened .team-list li.opened {
    display: block;
    width: 420px;
  }
  .type--module.name--team.opened .team-list li.opened img.picture5k-picture-person {
    width: 100%;
  }
  .type--module.name--team.opened .team-list li.opened .text-section {
    display: block;
  }
  .type--module.name--team.opened .team-list li.opened .close {
    display: block;
  }

  .type--module.name--accordion h2 {
    padding-block: 1rem;
    border-top: 4px solid var(--color-green);
  }
  .type--module.name--accordion .name--questions li {
    border-top: 1px solid var(--color-turkis);
  }
  .type--module.name--accordion .name--questions li:last-of-type {
    border-bottom: 1px solid var(--color-turkis);
  }
  .type--module.name--accordion details {
    padding-inline-start: calc(32px + 1rem);
  }
  .type--module.name--accordion details p {
    margin-block-end: 40px;
  }
  .type--module.name--accordion details summary {
    color: var(--color-turkis);
    font-weight: bold;
    padding-block: 1rem;
    cursor: pointer;
    font-size: 24px;
    line-height: 1;
    position: relative;
  }
  .type--module.name--accordion details summary::before {
    content: url(/wp-content/themes/vsao-sg/dist/ebf6df20845593a52a4b.svg);
    width: 32px;
    height: 30px;
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(calc(-32px - 1rem), -50%);
  }
  .type--module.name--accordion details[open] summary::before {
    content: url(/wp-content/themes/vsao-sg/dist/346c96963c672927806a.svg);
  }

  .type--module.name--banner {
    padding-left: 41px;
    padding-right: 69px;
    padding-top: 36px;
    padding-bottom: 28px;
    background-color: var(--color-turkis);
    color: var(--color-white);
    font-size: 24px;
    line-height: 32px;
  }
  .type--module.name--banner h3 {
    font-size: inherit;
    color: inherit;
  }
  .type--module.name--banner .name--button {
    font-size: 16px;
    display: block;
  }
  .type--module.name--banner .name--help {
    font-size: 14px;
    line-height: 26px;
  }
  .type--module.name--banner .button-col {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
  }

  .type--module.name--text_section {
    background-color: var(--color-light-grey);
    padding-top: 52px;
    padding-bottom: 64px;
  }
  .type--module.name--text_section h3 + * {
    margin-block-start: 30px;
  }

  .type--module.name--download {
    padding-left: 41px;
    padding-right: 69px;
    padding-top: 36px;
    padding-bottom: 28px;
    align-items: center;
    background-color: var(--color-green);
    color: var(--color-white);
    font-size: 24px;
    line-height: 32px;
  }
  .type--module.name--download h3 {
    flex-grow: 2;
    font-size: inherit;
    color: inherit;
  }

  .type--module.name--gallery ul {
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
  }
  .type--module.name--gallery ul li {
    flex: 1 0 408px;
    max-width: 408px;
  }

  .type--module.name--appointment_section h2 + * {
    margin-block-start: 37px;
  }
  .type--module.name--appointment_section ul {
    display: flex;
    gap: 16px;
  }
  .type--module.name--appointment_section ul li {
    width: 638px;
  }
  .type--module.name--appointment_section article {
    padding-block-start: 24px;
    padding-block-end: 32px;
    padding-inline-start: 16px;
    padding-inline-end: 38px;
    background-color: var(--color-white);
  }
  .type--module.name--appointment_section article header * {
    display: inline-block;
  }
  .type--module.name--appointment_section article header * + * {
    margin-inline-start: 12px;
  }
  .type--module.name--appointment_section article p {
    margin-block-start: 20px;
  }
  .type--module.name--appointment_section article footer {
    margin-block-start: 32px;
  }
  .type--module.name--appointment_section article footer * + * {
    margin-block-start: 12px;
  }
  .type--module.name--appointment_section article footer a {
    display: block;
    color: var(--color-blue);
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
  }
  .type--module.name--appointment_section article footer a * {
    display: inline-block;
  }
  .type--module.name--appointment_section article footer a * + * {
    margin-inline-start: 12px;
  }
  .type--module.name--appointment_section article footer a img {
    transform: translateY(-3px);
  }

  .type--module.name--teaser ul {
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
  }
  .type--module.name--teaser ul li {
    flex: 1 0 408px;
    max-width: 408px;
  }
  .type--module.name--teaser article > * + * {
    margin-block-start: 22px;
  }

  .type--module.name--contactform .form-group + .form-group {
    margin-block-start: 40px;
  }

  .type--module.name--news_overview h2 + * {
    margin-block-start: 37px;
  }
  .type--module.name--news_overview ul {
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
  }
  .type--module.name--news_overview ul li {
    flex: 1 0 408px;
    max-width: 408px;
  }
  .type--module.name--news_overview article > * + * {
    margin-block-start: 22px;
  }

  .wrapper-module {
    padding-block-start: 48px;
    padding-block-end: 38px;
  }
  .wrapper-module.grey-bg-color {
    background-color: var(--color-light-grey);
  }
  .wrapper-module.grey-bg-color h2 {
    color: var(--color-turkis);
  }
}
@layer utilities {
  .d-none {
    display: none;
  }

  .d-block {
    display: block;
  }

  .d-inline {
    display: inline;
  }

  .d-inline-block {
    display: inline-block;
  }

  .pos-relative {
    position: relative;
  }

  .rounded {
    border-radius: 4px;
  }

  .align-center {
    align-items: center;
  }

  .text-center {
    text-align: center;
  }
}

/*# sourceMappingURL=main.css.map*/