/* compiled by scssphp v0.8.0 on Mon, 19 Oct 2026 14:04:13 +0000 (0.0204s) */

html {
  font-size: 62.5%; }

html, body {
  scroll-behavior: smooth; }

* {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box;
  font: inherit;
  font-weight: normal;
  position: relative; }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
  display: block; }

ol, ul {
  list-style: none;
  list-style-image: none; }

blockquote::before, blockquote::after, q::before, q::after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%; }

span, a {
  color: inherit;
  font-size: inherit; }

a, span {
  line-height: inherit; }

th, td {
  text-align: left; }

.align-center, .align_center, p:has(img.align_center) {
  text-align: center; }

.align-right, .align_right {
  text-align: right; }

.hidden {
  display: none; }

img, video {
  height: auto;
  max-width: 100%; }

img.align_left {
  float: left;
  margin-right: 2rem; }

img.align_right {
  float: right;
  margin-left: 2rem; }

img.valign_bottom {
  display: inline-block;
  vertical-align: bottom; }

.splide__list > li {
  display: flex; }

.LoginRegisterPro .LoginRegisterMessage, .LoginRegisterPro .LoginRegisterNotice {
  border: none;
  padding: 0; }
  .LoginRegisterPro .LoginForm.InputfieldForm .Inputfield:not(.InputfieldSubmit) {
    background: none;
    border: none;
    padding: 0; }
    .LoginRegisterPro .LoginForm.InputfieldForm .LoginRegisterNotice, .LoginRegisterPro .LoginForm.InputfieldForm .LoginRegisterMessage {
      padding: 0;
      border: none; }
    .LoginRegisterPro .LoginForm.InputfieldForm .InputfieldSubmit {
      margin: 3rem 0 0 0; }

#bread-crumbs {
  display: flex;
  margin: 4rem 0; }

p.error {
  background-color: red;
  color: white;
  padding: 1rem; }

#skip-navigation {
  position: fixed;
  left: 0;
  top: 1rem;
  transform: translateX(-110%);
  padding: 2rem;
  z-index: 3000;
  border-radius: 4.2rem; }
  #skip-navigation:focus {
    transform: translateX(10%); }

.social-channels {
  display: flex;
  gap: 2rem; }
  .social-channels a, .social-channels img {
    display: block; }
  .social-channels img {
    height: 3.5rem !important;
    width: auto; }

.nowrap {
  white-space: nowrap; }
/**
 * InputfieldForm CSS file for FormBuilder with non-Legacy frameworks
 *
 */
.InputfieldForm textarea, .InputfieldForm .InputfieldMaxWidth {
  width: 100%; }
  .InputfieldForm input[type="text"], .InputfieldForm input[type="password"], .InputfieldForm input[type="date"], .InputfieldForm input[type="datetime"], .InputfieldForm input[type="datetime-local"], .InputfieldForm input[type="month"], .InputfieldForm input[type="week"], .InputfieldForm input[type="email"], .InputfieldForm input[type="number"], .InputfieldForm input[type="search"], .InputfieldForm input[type="tel"], .InputfieldForm input[type="time"], .InputfieldForm input[type="url"], .InputfieldForm input[type="color"], .InputfieldForm select, .InputfieldForm textarea {
    margin: 0; }
  .InputfieldForm, .InputfieldForm *, .InputfieldForm *:before, .InputfieldForm *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  .InputfieldForm .Inputfields {
    height: auto;
    list-style: none;
    padding: 0; }
  .InputfieldForm .Inputfield {
    list-style: none;
    display: block; }
  .InputfieldForm .Inputfield {
    clear: both;
    margin: 0 0 1.5em 0; }
    .InputfieldForm .Inputfield:not(fieldset) {
      padding: 0; }
  .InputfieldForm fieldset, .InputfieldForm .InputfieldFieldset {
    margin: 0 0 1.5em 0;
    padding-bottom: 0; }
  .InputfieldForm .InputfieldFieldset:not(.InputfieldColumnWidth) {
    clear: both; }
  .InputfieldForm .InputfieldStateCollapsed .InputfieldHeader {
    opacity: 0.5; }
    .InputfieldForm .InputfieldStateCollapsed .InputfieldHeader:after {
      content: " \2026"; }
    .InputfieldForm .InputfieldStateCollapsed .InputfieldContent {
      display: none; }
  .InputfieldForm .InputfieldHidden {
    display: none; }
  .InputfieldForm .description, .InputfieldForm .notes {
    margin: 0.25em 0; }
  .InputfieldForm .Inputfield:not(.InputfieldStateCollapsed) > .InputfieldHeaderHidden > span {
    display: none; }
  .InputfieldForm .InputfieldSubmitPrev {
    float: left; }
    .InputfieldForm .InputfieldSubmitPrev + .InputfieldSubmit {
      clear: none;
      float: left;
      margin-left: 1em; }

.InputfieldFormWidths {
  /** the following have to do with column widths **********************************************/ }
  .InputfieldFormWidths input[type=text], .InputfieldFormWidths input[type=email], .InputfieldFormWidths input[type=url], .InputfieldFormWidths select, .InputfieldFormWidths textarea {
    width: 100%; }
  .InputfieldFormWidths .InputfieldColumnWidth {
    /* an Inputfield that has a percentage width assigned to it */
    float: left;
    clear: none;
    margin-left: 0;
    margin-right: 0; }
    .InputfieldFormWidths .InputfieldColumnWidth > .InputfieldHeader, .InputfieldFormWidths .InputfieldColumnWidth > .InputfieldContent {
      padding-left: 1.5em; }
    .InputfieldFormWidths .InputfieldColumnWidth > .InputfieldHeaderHidden::before {
      display: inline-block;
      content: "\00a0 "; }
  .InputfieldFormWidths .InputfieldColumnWidthFirst, .InputfieldFormWidths .InputfieldColumnWidth + .InputfieldSubmit, .InputfieldFormWidths .InputfieldColumnWidthFirstTmp, .InputfieldFormWidths .InputfieldColumnWidthFirst.InputfieldStateHidden + .Inputfield {
    /* for dependencies */
    /* first Inputfield with a percent width... */
    /* ...or the last percentage-width Inputifeld before the submit button */
    clear: both; }
    .InputfieldFormWidths .InputfieldColumnWidthFirst > .InputfieldHeader, .InputfieldFormWidths .InputfieldColumnWidth + .InputfieldSubmit > .InputfieldHeader, .InputfieldFormWidths .InputfieldColumnWidthFirstTmp > .InputfieldHeader, .InputfieldFormWidths .InputfieldColumnWidthFirst.InputfieldStateHidden + .Inputfield > .InputfieldHeader, .InputfieldFormWidths .InputfieldColumnWidthFirst > .InputfieldContent, .InputfieldFormWidths .InputfieldColumnWidth + .InputfieldSubmit > .InputfieldContent, .InputfieldFormWidths .InputfieldColumnWidthFirstTmp > .InputfieldContent, .InputfieldFormWidths .InputfieldColumnWidthFirst.InputfieldStateHidden + .Inputfield > .InputfieldContent {
      padding-left: 0; }
  .InputfieldFormWidths .description {
    margin: 0.25em 0; }
  .InputfieldFormWidths .notes {
    margin: 0.25em 0; }
/*** state toggles *******************************************************/
.InputfieldStateToggle {
  cursor: pointer; }
  .InputfieldStateToggle i.toggle-icon {
    /* the open/close icon that goes with most Inputfields */
    float: right;
    padding-right: 0.25em; }
  .InputfieldStateToggle i.toggle-icon {
    padding-right: 0.5em;
    line-height: 1.7em; }
  .InputfieldStateToggle i + i {
    margin-right: 0.5em;
    margin-left: 0; }
/*** misc ******************************************************************/
.InputfieldStateRequired > .InputfieldHeader:first-child:after {
  /* Required state: Add asterisk to indicate field is required */
  content: '*';
  margin-left: 0.25em;
  color: red; }

.Inputfields > .Inputfield > .InputfieldContent:before, .Inputfields > .Inputfield > .InputfieldContent:after, .InputfieldForm:after {
  content: " ";
  display: table; }

.Inputfields > .Inputfield > .InputfieldContent:after, .InputfieldForm:after {
  clear: both; }

.InputfieldSelect ul, .InputfieldRadios ul, .InputfieldCheckboxes ul {
  margin: 0; }
  .InputfieldSelect ul li, .InputfieldRadios ul li, .InputfieldCheckboxes ul li {
    margin: 0; }

#wrap_Inputfield-, .wrap_Inputfield- {
  display: none; }

.InputfieldForm .InputfieldFormBuilderPageBreak {
  /*margin-bottom: 0;*/ }
/****************************************************************************
 * Render Value Mode 
 *
 * Used when only values are being rendered in the form (no inputs)
 *
 */
.InputfieldRenderValueMode .InputfieldSelect li, .InputfieldRenderValueMode .InputfieldRadios li, .InputfieldRenderValueMode .InputfieldCheckboxes li {
  margin: 0; }
  .InputfieldRenderValueMode .InputfieldSubmit, .InputfieldRenderValueMode .InputfieldButton {
    display: none; }

.pw-no-select {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -o-user-select: none;
  user-select: none;
  /* prevent selection of this element */ }

:root {
  --border-left: 7.8cqw;
  --border-right: 7.8cqw;
  --width-master: 192rem;
  --width-default: 140rem;
  --width-wide: calc(100cqw - (2 * 7.8cqw));
  --width-xwide: 164rem;
  --width-narrow: 94rem;
  --space-default: clamp(4rem, 9vw, 9rem);
  --space-big: clamp(6rem, 16vw, 16rem);
  --space-bigger: clamp(12rem, 30vw, 34rem);
  --space-small: 4.5rem;
  --space-xsmall: 1rem; }

#page-header {
  width: 100vw;
  max-width: var(--width-master);
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1000;
  display: grid;
  grid-template-columns: auto 1fr;
  border-bottom: 1px solid black;
  padding: 6rem 2rem 1rem; }
  @media screen and (min-width: 75em) {
  #page-header {
    padding: 6rem var(--border-left) 1.5rem var(--border-right); } }
  #page-header h1 {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px; }
  #page-header #home-link {
    display: block; }
    #page-header #home-link img {
      width: 21.6rem;
      max-width: 40vw;
      display: block; }
  #page-header #nav-service {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    padding-right: 15rem; }
    #page-header #nav-service ul {
      display: flex;
      justify-content: flex-end;
      gap: 5.5rem; }
    #page-header #nav-service ul a {
      padding: 1rem 0;
      display: flex;
      align-items: center;
      gap: 0.5rem; }
  #page-header #nav-bar {
    display: flex;
    align-items: center; }
  #page-header #nav-main {
    width: 100%; }
  #page-header #navi-main {
    display: flex;
    gap: 2rem;
    justify-content: flex-end;
    align-items: center; }
    @media screen and (min-width: 62.5em) {
  #page-header #navi-main {
    gap: 5rem; } }
    #page-header #navi-main a::before {
      display: none; }
    @media screen and (max-width: 75em) {
    #page-header #navi-main a span {
      display: none; }
    #page-header #navi-main a::before {
      display: block; } }
    @media screen and (min-width: 75em) {
    #page-header #navi-main a.kontakt {
      padding: 1rem 5rem;
      border-radius: 4rem; } }
  #page-header #navi-main-show {
    display: none; }

.TextformatterVideoEmbed {
  margin: 0 !important; }

.ce {
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat; }
  .ce.bg-right {
    background-position: right 0;
    background-size: auto 70%; }
  .ce a.anchor {
    scroll-margin-top: 10rem; }
  .ce.border-left-100 {
    border-left: var(--border-left) solid white; }
  .ce.border-right-100 {
    border-right: var(--border-right) solid white; }
  .ce.image-right-100 {
    background-position: top right;
    background-size: auto 100%; }

form input, form textarea {
  padding: 2rem;
  border-radius: 1rem; }

#page-footer {
  padding: 0 var(--border-left) 0 var(--border-right); }
  #page-footer #menu-10968 {
    justify-content: flex-start; }
  #page-footer #menu-15322 {
    justify-content: flex-end; }

.type-video video {
  width: 100%; }
  .type-video .overlay {
    position: absolute;
    left: 14rem;
    top: 50%;
    transform: translateY(-50%); }

.type-text .element, .type-text_image .text > *:not(header) {
  max-width: 78rem; }

button, a.read-more {
  display: inline-block;
  padding: 1.9rem 4.8rem;
  border: 1px solid black;
  border-radius: 5rem;
  text-decoration: none;
  border: 1px solid black; }

figcaption {
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  padding: 0.5rem 1rem; }

.ce.type-portfolio article, .ce.type-news article {
  border-radius: 2rem;
  overflow: hidden; }

.ce.type-news article img {
  display: block; }
  .ce.type-news article > div {
    padding: 4rem; }

.ce.type-slideshow article.right > div > div {
  padding: 16rem var(--border-right) 10rem 0; }

.ce.type-cite blockquote {
  padding-top: 6rem;
  background-image: url(/site/templates/images/icons/cite.svg);
  background-repeat: no-repeat;
  background-size: 10rem auto;
  margin-bottom: 5rem; }
  .ce.type-cite p {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    justify-content: flex-end; }
    .ce.type-cite p::before {
      content: "";
      display: block;
      width: 15rem;
      border-top: 1px solid black; }

article.compact > div {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 3.5rem; }
  article.compact > div h3 {
    margin-bottom: 0; }

body {
  background-color: lightgray; }

#page-header, button:hover {
  background-color: #fefcfc; }

button {
  background: none; }

#master, #nav-service a:hover, #socket a:hover {
  background-color: white; }

#page-footer, #nav-service {
  background-color: black; }

.ce.style2, article {
  background-color: #f3f3f3; }

.ce.style3, figcaption {
  background-color: rgba(0, 0, 0, 0.85); }

.type-slideshow article.right > div {
  background: linear-gradient(269deg, rgba(0, 0, 0, 0.9) 0.59%, rgba(0, 0, 0, 0.65) 37.56%, rgba(0, 0, 0, 0.37) 67.89%, rgba(0, 0, 0, 0) 99.18%); }

body, button {
  color: black; }

#nav-service a:hover, #socket a:hover {
  color: #1c1c1c; }

#page-footer, .ce.style3, #nav-service, article.compact div *, .type-slideshow article div, form.InputfieldForm *, figcaption {
  color: white; }

a.kontakt, button {
  transition: all 0.3s; }

.ce.type-cite p::before {
  border-color: #ff01ff; }

a.read-more, button {
  border-color: black; }

.ce.style3 button, .ce.style3 a.read-more {
  border-color: white; }

@font-face {
  font-family: "MavenPro Regular";

  src: url(/site/templates/fonts/mavenpro/MavenPro-Regular.woff2); }

@font-face {
  font-family: "MavenPro SemiBold";

  src: url(/site/templates/fonts/mavenpro/MavenPro-SemiBold.woff2); }

@font-face {
  font-family: "MavenPro Bold";

  src: url(/site/templates/fonts/mavenpro/MavenPro-Bold.woff2); }

@font-face {
  font-family: "MavenPro Black";

  src: url(/site/templates/fonts/mavenpro/MavenPro-Black.woff2); }

@font-face {
  font-family: "MDIF";

  src: url(/site/templates/fonts/mdi_filled/MaterialIcons-Regular.woff2); }

@font-face {
  font-family: "CI";

  src: url(/site/templates/fonts/customicons/iconsv1-Regular.woff2); }

body {
  font-family: "MavenPro Regular", sans-serif; }

p.medium, article.compact h3, .type-news article h3, strong, button, a.read-more {
  font-family: "MavenPro Bold", sans-serif; }

h3, p.big-text {
  font-family: "MavenPro Black", sans-serif; }

a.button {
  font-family: "MavenPro SemiBold", sans-serif; }

h2, #navi-main a.kontakt, p.bigger, p.big {
  font-family: "tt-nooks", sans-serif;
  font-weight: 900; }

a::before {
  font-family: "MDIF";
  text-transform: none; }

#nav-service, figcaption {
  font-size: clamp(1rem, 2vw, 1.6rem); }

.ce.style2, #page-footer {
  font-size: clamp(1.6rem, 2vw, 2rem); }

body, #navi-main a.kontakt, button {
  font-size: clamp(2rem, 3vw, 2.5rem); }

article.compact h3, .type-news article h3 {
  font-size: clamp(2.5rem, 4vw, 3.5rem); }

h3 {
  font-size: clamp(4rem, 6vw, 5.5rem); }

h2, p.big-text {
  font-size: clamp(6rem, 14vw, 14rem); }

p.bigger {
  font-size: clamp(6rem, 24vw, 24rem); }

h2, p.big-text {
  line-height: 96.5%; }

p {
  line-height: 128%; }

#navi-main a:not(:hover), #nav-service a {
  text-decoration: none; }

#nav-service a span {
  text-decoration: underline; }

.ce h2 {
  margin-bottom: clamp(4rem, 7vw, 7rem); }

.ce h3, .ce p {
  margin-bottom: clamp(2.5rem, 4vw, 4rem); }

#navi-main, p.bigger, p.big, p.medium, button {
  text-transform: uppercase; }

a.phone::before {
  content: "phone"; }

a.mail::before {
  content: "mail"; }

[data-cols]:not([data-slideshow="1"]) {
  gap: 1rem; }
  [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"]) {
    display: grid;
    grid-template-columns: 1fr; }
  @media screen and (min-width: 60em) {
    [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"]):not([data-cols="1"]) {
      grid-template-columns: repeat(2, 1fr); } }
  @media screen and (min-width: 94em) {
    [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="2"] {
      grid-template-columns: repeat(2, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="3"] {
        grid-template-columns: repeat(3, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="4"] {
        grid-template-columns: repeat(4, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="5"] {
        grid-template-columns: repeat(5, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="6"] {
        grid-template-columns: repeat(6, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="7"] {
        grid-template-columns: repeat(7, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="8"] {
        grid-template-columns: repeat(8, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="9"] {
        grid-template-columns: repeat(9, 1fr); }
      [data-cols]:not([data-slideshow="1"]):not([data-cols="inline"])[data-cols="10"] {
        grid-template-columns: repeat(10, 1fr); } }
  [data-cols]:not([data-slideshow="1"])[data-cols="inline"] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
  [data-cols]:not([data-slideshow="1"])[data-gap="0"] {
    gap: 0; }
  @media screen and (min-width: 60em) {
  [data-cols]:not([data-slideshow="1"])[data-gap="5"] {
    gap: 0.5rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="10"] {
    gap: 1rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="15"] {
    gap: 1.5rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="20"] {
    gap: 2rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="30"] {
    gap: 3rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="40"] {
    gap: 4rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="50"] {
    gap: 5rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="60"] {
    gap: 6rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="75"] {
    gap: 7.5rem; }
  [data-cols]:not([data-slideshow="1"])[data-gap="100"] {
    gap: clamp(4rem, 4vw, 10rem); } }
  [data-cols]:not([data-slideshow="1"]) img {
    max-width: 100%;
    height: auto; }

dialog[open] {
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  max-width: none;
  height: 100vh;
  max-height: none;
  background-color: rgba(0, 0, 0, 0.7);
  display: flex; }
  dialog[open] > div {
    width: auto;
    min-width: 100%;
    height: 100dvh;
    overflow: auto;
    padding: 13rem 0 5rem; }
  dialog[open] div.wrapper {
    margin: auto;
    max-width: var(--width-default); }
  dialog[open] header {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    padding: 2.5rem 2rem;
    display: flex;
    justify-content: space-between; }
  dialog[open] header img {
    order: 1;
    width: 12rem; }
  dialog[open] header button {
    order: 2; }
  dialog[open] button {
    background: none;
    border: none;
    text-transform: none;
    min-width: 0;
    padding: 0;
    width: auto;
    border-radius: 0;
    border: none;
    color: white;
    display: flex;
    align-items: center;
    gap: 1rem;
    z-index: 100; }
  dialog[open] button::after {
    font-family: "MDIF";
    content: "close";
    font-size: 2rem;
    border-radius: 50%;
    line-height: 100%;
    padding: 0.3rem;
    border: 2px solid white; }
  dialog[open] ul#navi-main-mobile {
    margin-bottom: 6.5rem; }
  dialog[open] ul#navi-main-mobile a {
    display: flex;
    padding: 2rem 4.5rem 1rem;
    text-decoration: none; }
  dialog[open] ul#navi-main-mobile a[aria-expanded="true"] span, dialog[open] ul#navi-main-mobile a:hover span {
    border-bottom: 1px solid white; }
  dialog[open] ul#navi-main-mobile a[aria-expanded] span {
    padding: 1rem 3rem 0.5rem 0; }
    dialog[open] ul#navi-main-mobile a[aria-expanded] span::after {
      content: "\E000";
      transform-origin: center;
      transform: translateY(-50%) rotate(-90deg);
      position: absolute;
      top: 50%;
      right: 0rem; }
  dialog[open] ul#navi-main-mobile a[aria-expanded="true"] span::after {
    transform: translateY(-50%) rotate(90deg); }
  dialog[open] ul#navi-main-mobile li ul a::after {
    content: "";
    position: absolute;
    left: 2.5rem;
    right: 2.5rem;
    bottom: 0;
    border-bottom: 1px solid white; }
  dialog[open] ul#navi-main-mobile a:not([aria-expanded="true"]) + ul {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px; }
  dialog[open] ul#navi-service-mobile {
    margin: 0 0 0 2.5rem !important;
    padding: 0 !important;
    display: block !important; }
  dialog[open] ul#navi-service-mobile span {
    font-size: 1.2rem; }
  dialog[open] ul#navi-service-mobile li {
    margin-bottom: 2rem; }

@keyframes slideInFromRight {
  0% {
    transform: translateX(100%); }

  100% {
    transform: translateX(0%); } }

@keyframes fadeIn {
  0% {
    opacity: 0; }

  100% {
    opacity: 1; } }

.ce {
  display: flow-root; }
  .ce .wrapper, .ce header.default {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--width-default); }
  .ce.xwide .wrapper, .ce header.xwide .wrapper {
    max-width: var(--width-xwide); }
  .ce.wide .wrapper, .ce header.wide .wrapper {
    max-width: var(--width-wide); }
  .ce.narrow .wrapper, .ce header.narrow .wrapper {
    max-width: var(--width-narrow); }
  .ce.full .wrapper, .ce header.full .wrapper {
    max-width: var(--width-master);
    width: 100%; }
  @media screen and (max-width: 120em) {
    .ce.full .wrapper, .ce header.full .wrapper {
      max-width: 100vw; } }
  .ce header span {
    display: block; }
  .ce > .wrapper, .ce > div:not(.wrapper) {
    margin-top: var(--space-default);
    margin-bottom: var(--space-default); }
  .ce.header > *, .ce.type-columns .ce > div {
    margin-top: var(--space-default); }
  .ce.after-none > .wrapper, .ce.type-columns .after-none > div, .ce.type-stopper > * {
    margin-bottom: 0; }
  .ce.type-stopper > * {
    margin-bottom: 0; }
  .ce.before-none.header > *, .ce.before-none > .wrapper, .ce.type-columns .before-none > div, .ce.type-columns .header {
    margin-top: 0; }
  .ce.before-xsmall.header, .ce.before-xsmall > .wrapper, .ce.type-columns .before-xsmall > div {
    margin-top: var(--space-xsmall); }
  .ce.after-xsmall > .wrapper {
    margin-bottom: var(--space-xsmall); }
  .ce.before-small.header > *, .ce.before-small > .wrapper, .ce.type-columns .before-small > div {
    margin-top: var(--space-small); }
  .ce.after-small > div {
    margin-bottom: var(--space-small); }
  .ce.before-big.header > *, .ce.before-big > .wrapper, .ce.type-columns .before-big > div {
    margin-top: var(--space-big); }
  .ce.after-big > .wrapper, .ce.after-big > div {
    margin-bottom: var(--space-big); }
  .ce.type-columns .ce .wrapper, .ce.type-text_image .element:not(.under):not(.above) .text header .wrapper {
    padding-left: 0;
    padding-right: 0; }
  .ce.full > .wrapper {
    padding-left: 0;
    padding-right: 0; }
  .accordion details > *:last-child {
    margin-bottom: 3rem !important; }
  .accordion details summary {
    list-style: none;
    padding: 3rem 6rem 3rem 0;
    cursor: pointer;
    border-top-style: solid;
    border-top-width: 2px; }
  .accordion details summary::-webkit-details-marker {
    display: none; }
  .accordion details summary h2, .accordion details summary h3, .accordion details summary h4 {
    text-align: left;
    margin-bottom: 0; }
  .accordion details summary::after {
    font-family: "MDIF";
    content: "add";
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 3.5rem; }
  .accordion details[open] summary::after {
    content: "remove"; }
  .accordion details:last-of-type {
    border-bottom-style: solid;
    border-bottom-width: 2px; }
  .accordion details section.ce {
    padding: 0 !important; }

.tabbed {
  width: 100%;
  position: relative;
  justify-content: center;
  display: flex;
  flex-wrap: wrap; }
  .tabbed details {
    display: contents; }
  .tabbed details > div {
    order: 1;
    width: 100%; }
  .tabbed summary {
    position: sticky;
    top: 0;
    list-style: none;
    padding: 2rem 2rem 1.5rem;
    min-width: 30rem;
    cursor: pointer;
    text-align: center;
    margin: 0 0.5rem; }
  .tabbed summary::-webkit-details-marker {
    display: none; }

.type-persons span {
  line-height: normal; }
  .type-persons [itemprop="name"] {
    display: block; }
  .type-persons [itemprop="sameAs"], .type-persons [itemprop="address"], .type-persons [itemprop="telephone"], .type-persons [itemprop="email"] {
    margin-left: 3rem;
    display: block; }
  .type-persons [itemprop="sameAs"]::before, .type-persons [itemprop="address"]::before, .type-persons [itemprop="telephone"]::before, .type-persons [itemprop="email"]::before {
    position: absolute;
    left: -3rem;
    top: 0.5rem; }
  .type-persons figure {
    margin: auto;
    text-align: center;
    display: block; }
  .type-persons img {
    width: 30rem;
    border-radius: 50%;
    margin: auto; }
  .type-persons ul.highlight [itemprop="name"], .type-persons ul.highlight [itemprop="jobTitle"], .type-persons ul.highlight .title {
    text-align: center;
    width: 100%;
    display: inline-block; }
  .type-persons ul.highlight .title {
    margin-top: 3rem; }
  .type-persons ul.highlight [itemprop="jobTitle"] {
    display: block; }
  .type-persons ul.highlight [itemprop="jobTitle"] {
    margin-bottom: 4rem; }
  .type-persons ul.card li {
    border-radius: 1.5rem;
    padding: 3rem; }
  .type-persons [itemprop="memberOf"] {
    display: flex;
    width: min-content;
    gap: 1rem;
    /*
     &::before {
     content: "";
     position: absolute;
     left: 1rem;
     top: .5rem;
     bottom: .5rem;
     border-left: 2px solid black;
     }
     */ }
  .type-persons [itemprop="memberOf"] span {
    display: grid;
    width: 2.4rem;
    height: 2.4rem;
    justify-content: center;
    align-content: center;
    background-color: black;
    color: white;
    border-radius: 50%; }
  .type-persons div.group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: -2rem; }
  .type-persons div.group > * {
    width: 100%; }
  .type-persons div.comm {
    margin-top: 2.4rem; }
  .type-persons div.comm br {
    display: none; }
  .type-persons div.comm span br {
    display: block; }
  .type-persons div.comm a, .type-persons div.comm span, .type-persons div.comm div {
    margin-bottom: 2rem; }
  .type-persons ul.ra-list, .type-persons ul.ni-list {
    display: flex;
    gap: 6rem; }
  .type-persons ul.ra-list li::before, .type-persons ul.ni-list li::before {
    transform: translateX(-120%);
    content: attr(data-id);
    text-align: center;
    color: white; }

.map {
  height: 40vh; }

form.InputfieldForm div.Inputfield {
  display: grid;
  grid-template-columns: 20rem auto;
  gap: 5rem;
  border-bottom: 1px solid white;
  margin-bottom: 5rem;
  padding-bottom: 1rem; }
  form.InputfieldForm div.Inputfield:last-of-type {
    border: none;
    grid-template-columns: 1fr; }
  form.InputfieldForm div.Inputfield:last-of-type .InputfieldContent {
    text-align: right; }
  form.InputfieldForm div.Inputfield input, form.InputfieldForm div.Inputfield textarea {
    border: none;
    border-radius: 0;
    background: none;
    padding: 0; }

.ce.type-menu ul {
  list-style-type: none !important;
  margin: 0; }
  .ce.type-menu ul br {
    display: none; }
  .ce.type-menu ul a + ul {
    margin: 5rem 0 5rem 5rem; }
  .ce.type-menu ul a + ul li {
    margin-bottom: 1.5rem; }

.type-gallery img {
  display: block;
  width: 100%;
  max-width: none; }
  .type-gallery.logos li, .type-gallery.logos a {
    display: flex; }
  .type-gallery.logos img {
    width: auto !important;
    max-width: 75vw; }
  .type-gallery.logos a {
    padding: 2rem; }
  .type-gallery a {
    text-decoration: none; }

.type-text_image div.element, .type-interview div.element {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: center; }
  .type-text_image div.element[data-preview="cover"], .type-interview div.element[data-preview="cover"] {
    align-items: normal; }
  .type-text_image div.element[data-gap="0"], .type-interview div.element[data-gap="0"] {
    gap: 0; }
  .type-text_image div.element div.media, .type-interview div.element div.media {
    display: flex;
    order: 2; }
  .type-text_image div.element div.media *, .type-interview div.element div.media * {
    width: 100%; }
  .type-text_image div.element div.media img, .type-interview div.element div.media img, .type-text_image div.element div.media a, .type-interview div.element div.media a {
    display: block; }
  .type-text_image div.element div.media p, .type-interview div.element div.media p {
    margin-bottom: 1.5rem; }
  @media screen and (min-width: 60em) {
    .type-text_image div.element, .type-interview div.element {
      grid-template-columns: repeat(10, 1fr); }
      .type-text_image div.element div.media, .type-interview div.element div.media, .type-text_image div.element div.text, .type-interview div.element div.text {
        grid-column: span 10; }
      .type-text_image div.element.left div.media, .type-interview div.element.left div.media, .type-text_image div.element.before div.media, .type-interview div.element.before div.media {
        order: 1; }
        .type-text_image div.element.left div.text, .type-interview div.element.left div.text, .type-text_image div.element.before div.text, .type-interview div.element.before div.text {
          order: 2; }
      .type-text_image div.element.left[data-preview="cover"] ul.gallery, .type-interview div.element.left[data-preview="cover"] ul.gallery, .type-text_image div.element.right[data-preview="cover"] ul.gallery, .type-interview div.element.right[data-preview="cover"] ul.gallery {
        display: flex; }
        .type-text_image div.element.left[data-preview="cover"] ul.gallery img, .type-interview div.element.left[data-preview="cover"] ul.gallery img, .type-text_image div.element.right[data-preview="cover"] ul.gallery img, .type-interview div.element.right[data-preview="cover"] ul.gallery img {
          display: block;
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: 50% 50%; }
        .type-text_image div.element.left[data-preview="cover"] div.text, .type-interview div.element.left[data-preview="cover"] div.text, .type-text_image div.element.right[data-preview="cover"] div.text, .type-interview div.element.right[data-preview="cover"] div.text {
          padding: var(--space-default) 0; }
      .type-text_image div.element.left.r5050 div.media, .type-interview div.element.left.r5050 div.media, .type-text_image div.element.right.r5050 div.media, .type-interview div.element.right.r5050 div.media, .type-text_image div.element.left_inline.r5050 div.media, .type-interview div.element.left_inline.r5050 div.media, .type-text_image div.element.right_inline.r5050 div.media, .type-interview div.element.right_inline.r5050 div.media, .type-text_image div.element.left.r5050 div.text, .type-interview div.element.left.r5050 div.text, .type-text_image div.element.right.r5050 div.text, .type-interview div.element.right.r5050 div.text, .type-text_image div.element.left_inline.r5050 div.text, .type-interview div.element.left_inline.r5050 div.text, .type-text_image div.element.right_inline.r5050 div.text, .type-interview div.element.right_inline.r5050 div.text {
        grid-column: span 5; }
        .type-text_image div.element.left.r4060 div.media, .type-interview div.element.left.r4060 div.media, .type-text_image div.element.right.r4060 div.media, .type-interview div.element.right.r4060 div.media, .type-text_image div.element.left_inline.r4060 div.media, .type-interview div.element.left_inline.r4060 div.media, .type-text_image div.element.right_inline.r4060 div.media, .type-interview div.element.right_inline.r4060 div.media {
          grid-column: span 4; }
        .type-text_image div.element.left.r4060 div.text, .type-interview div.element.left.r4060 div.text, .type-text_image div.element.right.r4060 div.text, .type-interview div.element.right.r4060 div.text, .type-text_image div.element.left_inline.r4060 div.text, .type-interview div.element.left_inline.r4060 div.text, .type-text_image div.element.right_inline.r4060 div.text, .type-interview div.element.right_inline.r4060 div.text {
          grid-column: span 6; }
        .type-text_image div.element.left.r3070 div.media, .type-interview div.element.left.r3070 div.media, .type-text_image div.element.right.r3070 div.media, .type-interview div.element.right.r3070 div.media, .type-text_image div.element.left_inline.r3070 div.media, .type-interview div.element.left_inline.r3070 div.media, .type-text_image div.element.right_inline.r3070 div.media, .type-interview div.element.right_inline.r3070 div.media {
          grid-column: span 3; }
        .type-text_image div.element.left.r3070 div.text, .type-interview div.element.left.r3070 div.text, .type-text_image div.element.right.r3070 div.text, .type-interview div.element.right.r3070 div.text, .type-text_image div.element.left_inline.r3070 div.text, .type-interview div.element.left_inline.r3070 div.text, .type-text_image div.element.right_inline.r3070 div.text, .type-interview div.element.right_inline.r3070 div.text {
          grid-column: span 7; }
        .type-text_image div.element.left.r2080 div.media, .type-interview div.element.left.r2080 div.media, .type-text_image div.element.right.r2080 div.media, .type-interview div.element.right.r2080 div.media, .type-text_image div.element.left_inline.r2080 div.media, .type-interview div.element.left_inline.r2080 div.media, .type-text_image div.element.right_inline.r2080 div.media, .type-interview div.element.right_inline.r2080 div.media {
          grid-column: span 2; }
        .type-text_image div.element.left.r2080 div.text, .type-interview div.element.left.r2080 div.text, .type-text_image div.element.right.r2080 div.text, .type-interview div.element.right.r2080 div.text, .type-text_image div.element.left_inline.r2080 div.text, .type-interview div.element.left_inline.r2080 div.text, .type-text_image div.element.right_inline.r2080 div.text, .type-interview div.element.right_inline.r2080 div.text {
          grid-column: span 8; }
        .type-text_image div.element.left.r6040 div.media, .type-interview div.element.left.r6040 div.media, .type-text_image div.element.right.r6040 div.media, .type-interview div.element.right.r6040 div.media, .type-text_image div.element.left_inline.r6040 div.media, .type-interview div.element.left_inline.r6040 div.media, .type-text_image div.element.right_inline.r6040 div.media, .type-interview div.element.right_inline.r6040 div.media {
          grid-column: span 6; }
        .type-text_image div.element.left.r6040 div.text, .type-interview div.element.left.r6040 div.text, .type-text_image div.element.right.r6040 div.text, .type-interview div.element.right.r6040 div.text, .type-text_image div.element.left_inline.r6040 div.text, .type-interview div.element.left_inline.r6040 div.text, .type-text_image div.element.right_inline.r6040 div.text, .type-interview div.element.right_inline.r6040 div.text {
          grid-column: span 4; }
        .type-text_image div.element.left.r7030 div.media, .type-interview div.element.left.r7030 div.media, .type-text_image div.element.right.r7030 div.media, .type-interview div.element.right.r7030 div.media, .type-text_image div.element.left_inline.r7030 div.media, .type-interview div.element.left_inline.r7030 div.media, .type-text_image div.element.right_inline.r7030 div.media, .type-interview div.element.right_inline.r7030 div.media {
          grid-column: span 7; }
        .type-text_image div.element.left.r7030 div.text, .type-interview div.element.left.r7030 div.text, .type-text_image div.element.right.r7030 div.text, .type-interview div.element.right.r7030 div.text, .type-text_image div.element.left_inline.r7030 div.text, .type-interview div.element.left_inline.r7030 div.text, .type-text_image div.element.right_inline.r7030 div.text, .type-interview div.element.right_inline.r7030 div.text {
          grid-column: span 3; }
        .type-text_image div.element.left.r8020 div.media, .type-interview div.element.left.r8020 div.media, .type-text_image div.element.right.r8020 div.media, .type-interview div.element.right.r8020 div.media, .type-text_image div.element.left_inline.r8020 div.media, .type-interview div.element.left_inline.r8020 div.media, .type-text_image div.element.right_inline.r8020 div.media, .type-interview div.element.right_inline.r8020 div.media {
          grid-column: span 8; }
        .type-text_image div.element.left.r8020 div.text, .type-interview div.element.left.r8020 div.text, .type-text_image div.element.right.r8020 div.text, .type-interview div.element.right.r8020 div.text, .type-text_image div.element.left_inline.r8020 div.text, .type-interview div.element.left_inline.r8020 div.text, .type-text_image div.element.right_inline.r8020 div.text, .type-interview div.element.right_inline.r8020 div.text {
          grid-column: span 2; }
      .type-text_image div.element[data-gap="5"], .type-interview div.element[data-gap="5"] {
        gap: 0.5rem; }
      .type-text_image div.element[data-gap="10"], .type-interview div.element[data-gap="10"] {
        gap: 1rem; }
      .type-text_image div.element[data-gap="15"], .type-interview div.element[data-gap="15"] {
        gap: 1.5rem; }
      .type-text_image div.element[data-gap="20"], .type-interview div.element[data-gap="20"] {
        gap: 2rem; }
      .type-text_image div.element[data-gap="30"], .type-interview div.element[data-gap="30"] {
        gap: 3rem; }
      .type-text_image div.element[data-gap="50"], .type-interview div.element[data-gap="50"] {
        gap: 5rem; }
      .type-text_image div.element[data-gap="100"], .type-interview div.element[data-gap="100"] {
        gap: 10rem; } }
  @media screen and (min-width: 60em) {
  .type-text_image.img-right div.element div.media, .type-interview.img-right div.element div.media {
    justify-content: flex-end;
    align-items: center; } }
  .type-text_image .TextformatterVideoEmbed, .type-interview .TextformatterVideoEmbed {
    width: 100%; }

.type-stopper div.element {
  text-align: center;
  opacity: 0.1; }
  .type-stopper div.element img {
    width: 20rem;
    padding: 0 2rem; }
  .type-stopper div.element::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    border-top: 3px dashed black;
    transform: translateY(-50%); }

div.contacts {
  border-radius: 1.5rem;
  padding: 2.5rem 4rem; }
  @container (width > 70rem) {
  div.contacts {
    display: grid; }
  div.contacts {
    grid-template-columns: repeat(2, 1fr); } }
  div.contacts > div {
    margin-bottom: 3.5rem; }
  div.contacts p {
    display: flex;
    gap: 2rem; }
  div.contacts p::before {
    transform: translateY(0.7rem); }
  div.contacts p span {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px; }
  div.contacts .social {
    grid-column: 1 / span 2; }
  div.contacts ul {
    grid-column: 1 / span 2;
    display: flex;
    gap: 2rem;
    margin-left: 0;
    list-style-type: none; }
  div.contacts ul span {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px; }
  div.contacts ul img {
    height: 3.5rem !important;
    width: auto; }

ul.downloads {
  margin-left: 0 !important; }
  ul.downloads li {
    list-style-type: none;
    list-style-image: none;
    margin-bottom: 2rem; }
  ul.downloads li a {
    margin-top: 0; }
  ul.downloads li a::before {
    background-image: url(/site/templates/images/icons/arrow-download.svg);
    transform: none; }
  ul.downloads li a:hover::before {
    background-image: url(/site/templates/images/icons/arrow-download-hover.svg); }
  ul.downloads li a span span {
    white-space: nowrap; }

.type-timeline div.element {
  padding: 5rem 0; }
  .type-timeline div.element::before, .type-timeline div.element::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    border-left: 5px dashed var(--color-accent-1);
    z-index: 0; }
  @media screen and (min-width: 60em) {
    .type-timeline div.element::before, .type-timeline div.element::after {
      left: 50%;
      transform: translateX(-50%); } }
  .type-timeline dl {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    padding: 2rem 0;
    z-index: 10; }
  .type-timeline dl dt {
    display: flex;
    align-items: flex-end; }
  .type-timeline dl dt span {
    width: 100%;
    border-bottom: 5px solid black;
    padding-bottom: 1rem;
    margin-bottom: 3rem;
    text-align: right;
    padding-right: 5rem; }
    .type-timeline dl dt span::after {
      content: "";
      position: absolute;
      bottom: 0;
      transform: translateY(50%);
      width: 3.4rem;
      height: 3.4rem;
      border: 5px solid black;
      border-radius: 50%;
      background-color: white;
      right: 0; }
  .type-timeline dl dd {
    margin-bottom: 8rem; }
  .type-timeline dl dd p {
    padding-left: 2rem; }
  .type-timeline dl img {
    max-width: 28rem; }
  .type-timeline dl::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background-color: black; }
  @media screen and (min-width: 60em) {
    .type-timeline dl {
      grid-template-columns: repeat(2, 1fr);
      padding: 6rem 0; }
      .type-timeline dl::before {
        left: 50%;
        transform: translateX(-50%); }
      .type-timeline dl dt:not(:first-child) {
        margin-top: -15rem; }
        .type-timeline dl dt span {
          padding-bottom: 2rem;
          margin-bottom: 5rem; }
      .type-timeline dl dd {
        margin-bottom: 0; }
      .type-timeline dl dt:nth-of-type(odd), .type-timeline dl dd:nth-of-type(odd) {
        grid-column: 2 / span 1; }
        .type-timeline dl dt:nth-of-type(odd) p, .type-timeline dl dd:nth-of-type(odd) p, .type-timeline dl dt:nth-of-type(odd) span, .type-timeline dl dd:nth-of-type(odd) span {
          padding-left: 6rem;
          text-align: left; }
          .type-timeline dl dt:nth-of-type(odd) p::after, .type-timeline dl dd:nth-of-type(odd) p::after, .type-timeline dl dt:nth-of-type(odd) span::after, .type-timeline dl dd:nth-of-type(odd) span::after {
            right: 0;
            left: auto; }
      .type-timeline dl dt:nth-of-type(even), .type-timeline dl dd:nth-of-type(even) {
        grid-column: 1 / span 1; }
        .type-timeline dl dt:nth-of-type(even) p:has(img), .type-timeline dl dd:nth-of-type(even) p:has(img), .type-timeline dl dt:nth-of-type(even) span, .type-timeline dl dd:nth-of-type(even) span {
          text-align: right; }
          .type-timeline dl dt:nth-of-type(even) p:has(img)::after, .type-timeline dl dd:nth-of-type(even) p:has(img)::after, .type-timeline dl dt:nth-of-type(even) span::after, .type-timeline dl dd:nth-of-type(even) span::after {
            left: 0;
            right: auto; }
        .type-timeline dl dt:nth-of-type(even) p, .type-timeline dl dd:nth-of-type(even) p, .type-timeline dl dt:nth-of-type(even) span, .type-timeline dl dd:nth-of-type(even) span {
          padding-right: 6rem; } }

.type-shop .cart-table form {
  display: flex;
  gap: 1rem;
  align-items: center; }
  .type-shop .cart-table form [type="number"] {
    width: 8rem;
    text-align: right; }
  .type-shop .cart-table form button {
    background: none; }
    .type-shop .cart-table form button::before {
      display: block; }
    .type-shop .cart-table form button span {
      clip: rect(0 0 0 0);
      clip-path: inset(50%);
      height: 1px;
      overflow: hidden;
      position: absolute;
      white-space: nowrap;
      width: 1px; }
  .type-shop ul.shop-tools {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem; }
  .type-shop ul.shop-tools li {
    width: 100%; }
  .type-shop ul.shop-tools li > * {
    width: 100%; }
  @container (width > 60rem) {
    .type-shop ul.shop-tools {
      justify-content: space-between; }

    .type-shop ul.shop-tools li {
      width: auto; } }
  .type-shop form.checkout-form {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem; }
  @container (width > 70rem) {
    .type-shop form.checkout-form {
      gap: 2rem; }

    .type-shop form.checkout-form {
      grid-template-columns: repeat(4, 1fr); }

    .type-shop form.checkout-form .w50 {
      grid-column: 1 / span 2; }
      .type-shop form.checkout-form .w50:nth-of-type(even) {
        grid-column: 3 / span 2; }

    .type-shop form.checkout-form .w50 + .w25, .type-shop form.checkout-form .w100 + .w25 {
      grid-column: 1 / span 1; }

    .type-shop form.checkout-form .w75 + .w25 {
      grid-column: 4 / span 1; }

    .type-shop form.checkout-form .w50 + .w75, .type-shop form.checkout-form .w100 + .w75 {
      grid-column: 1 / span 3; }

    .type-shop form.checkout-form .w25 + .w75 {
      grid-column: 2 / span 3; }

    .type-shop form.checkout-form ul, .type-shop form.checkout-form .w100 {
      grid-column: 1 / span 4; } }
  .type-shop section.order-summary {
    padding: 4rem 2rem;
    margin-bottom: 4rem; }
  .type-shop section.order-summary ul {
    margin-bottom: 1rem; }
  .type-shop section.order-summary ul li {
    padding: 1rem 0;
    border-bottom: 1px solid black; }
  .type-shop section.order-summary p {
    text-align: right; }

div.slideshow article, ul[data-slideshow="1"] article {
  background-size: cover;
  background-position: 50% 50%;
  width: 100%;
  max-width: 100%; }
  div.slideshow article > video, ul[data-slideshow="1"] article > video {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center; }
  div.slideshow article > div, ul[data-slideshow="1"] article > div {
    display: flex;
    align-items: center; }
  div.slideshow article > div > div, ul[data-slideshow="1"] article > div > div {
    max-width: 70rem; }
    div.slideshow article > div > div h2, ul[data-slideshow="1"] article > div > div h2 {
      max-width: 80rem; }
    div.slideshow article > div > div p, ul[data-slideshow="1"] article > div > div p {
      max-width: 75rem; }
  div.slideshow article.right > div, ul[data-slideshow="1"] article.right > div {
    justify-content: right; }
  div.slideshow button.playpause, ul[data-slideshow="1"] button.playpause {
    position: absolute;
    bottom: 2rem;
    right: 16rem;
    border: none;
    padding: 0;
    min-width: none;
    width: auto;
    line-height: 90%; }
  .type-gallery div.slideshow button.playpause, .type-gallery ul[data-slideshow="1"] button.playpause {
    right: 2rem;
    bottom: 2rem; }

.type-slideshow .splide__pagination {
  left: 50%;
  right: auto;
  padding: 0.5rem 1rem;
  border-radius: 5px 5px 0 0;
  transform: translateX(-50%);
  gap: 1rem;
  opacity: 0.7; }
  .type-slideshow .splide__pagination:hover {
    opacity: 1; }
  .type-slideshow .splide__pagination li {
    margin: 0 !important; }
  .type-slideshow .splide__pagination button {
    border: 2px solid var(--color-accent-1) !important; }

#master {
  container-type: inline-size;
  max-width: var(--width-master);
  min-height: 100vh;
  margin: auto;
  display: grid;
  grid-template-rows: 1fr auto;
  overflow-x: hidden; }
