/*
Theme Name: Maarten
Author: Rainer Falkenroth
Version: 2024.1
*/

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
b,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
head,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  font-size: 100%;
  font: inherit;
  padding: 0;
  border: 0;
  margin: 0;
  vertical-align: baseline;
}
body,
html {
  font-family: "klavika-web", sans-serif;
  font-size: 1.5vw;
  line-height: 1.39em;
  font-style: italic;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #000;
  background-color: #fff;
  width: 100%;
  padding: 0;
  border: 0;
  margin: 0;
}
body.home {
  background-color: #023942;
  color: #fff;
  height: 100vh;
  overflow: hidden;
}
a {
  color: inherit;
  text-decoration: none;
  transition: color 0.5s;
}
.content a:hover,
.meta ul li a:hover,
.green,
.menu-main-container a:hover,
.scrolled.page-id-44 .menu-main-container a:hover,
.scrolled.page-id-44 header:hover .menu-main-container a:hover {
  color: #00ff00;
}
h1,
h2,
h3 {
  font-family: "klavika-web-condensed", sans-serif;
  color: #023942;
  display: block;
  font-size: 2.72em;
  line-height: 1em;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  margin-bottom: 1em;
}
h3 {
  font-size: 1.75em;
  line-height: 1.39em;
  margin-top: 1em;
  margin-bottom: 0;
}
h2 + h3 {
  font-size: 1.82em;
  line-height: 1em;
  color: #00ff00;
  margin: -0.5em 0 0.5em 1em;
}
.text h2 {
  font-size: 1.92em;
  line-height: 1.39em;
}
p,
ul {
  margin-bottom: 1em;
}
strong,
b,
.kacheln figcaption,
.marken p,
.text a {
  font-family: "klavika-web-condensed", sans-serif;
  font-weight: 500;
  letter-spacing: 0.05em;
}
strong,
b,
.kacheln figcaption,
.marken p {
  letter-spacing: 0.15em;
}
.nocontent ul,
.content ul {
  margin-left: 1em;
}
.content,
.nocontent {
  padding: 5vw 20vw;
}
.content {
  color: #000;
}
.nocontent p,
.nocontent ul {
  font-size: 1.188em;
  line-height: 1.39em;
}
.home .nocontent p {
  font-size: 1.14em;
  line-height: 1.39em;
  letter-spacing: 0.1em;
}
.home .content,
.page-id-44 .content {
  padding: 0;
  width: 100%;
  height: auto;
  min-height: calc(100vh - 11em - 17vw);
  display: block;
}
.home .nocontent {
  min-height: calc(50vh - 1.5em);
  padding: calc(50vh + 1.5em) 0 0 0;
}
p.green {
  margin-bottom: 3em;
}
a.button {
  display: inline-block;
  background-color: #fff;
  color: #023942;
  border-radius: 999px;
  padding: 0.5em 0.75em;
  margin-top: 0.75em;
  transition: color 0.5s, background-color 0.5s;
}
a.button:hover {
  background-color: #00ff00;
  color: #023942;
}
.page-id-44 header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 3;
}
.page-id-44.logged-in header {
  top: 1.75em;
}
.logo {
  display: block;
  position: absolute;
  top: 5vw;
  left: 6vw;
  width: 7vw;
  height: 7vw;
  overflow: hidden;
  text-indent: -999px;
  background: url("svg/Maarten-Logo-M-Start.svg") 50% 50% no-repeat;
  background-size: contain;
  z-index: 3;
}
.menu-main-container ul,
.page-id-44.scrolled .menu-main-container ul {
  list-style: none;
  margin: 1em 0 0 17vw;
}
.page-id-44 .menu-main-container ul {
  margin: 6.6vw 0 0 17vw;
}
.menu-main-container ul li {
  display: inline-block;
}
.menu-main-container a {
  font-family: "klavika-web-condensed", sans-serif;
  font-size: 1.27em;
  line-height: 1em;
  color: #fff;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin-right: 1.5em;
  transition: color 0.5s;
}
.home .logo {
  top: calc(50vh - 25vw);
  left: 37.5vw;
  width: 25vw;
  height: 25vw;
  background: url("svg/Maarten-Logo-Rundsatz.svg") 50% 50% no-repeat;
  background-size: contain;
}
@media (min-aspect-ratio: 16/10) {
  .home .logo {
    top: 2vh;
    left: calc(50vw - 24vh);
    width: 48vh;
    height: 48vh;
  }
}
.page-id-44 .logo {
  top: 3vw;
  left: 3vw;
  width: 10vw;
  height: 10vw;
  background: url("svg/Maarten-Logo-M-Text-Weiss.svg") 50% 50% no-repeat;
  background-size: contain;
}
.scrolled.page-id-44 header {
  background-color: #fff;
  height: 7vw;
}
.scrolled.page-id-44 header:hover {
  background-color: #023942;
}
.scrolled.page-id-44 .logo {
  top: -1.5vw;
  left: 3vw;
  width: 9vw;
  height: 9vw;
  background: url("svg/Maarten-Logo-M.svg") 50% 50% no-repeat;
  background-size: contain;
}
.menu_active.page-id-44 .logo,
.scrolled.page-id-44 header:hover .logo,
.scrolled.menu_active.page-id-44 .logo {
  background: url("svg/Maarten-Logo-M-Weiss.svg") 50% 50% no-repeat;
  background-size: contain;
}
.scrolled.page-id-44 .menu-main-container a {
  color: #000;
}
.scrolled.page-id-44 header:hover .menu-main-container a,
.scrolled.menu_active.page-id-44 .menu-main-container a {
  color: #fff;
}
.footer {
  font-size: 1.09em;
  line-height: 1.2em;
  position: relative;
  background-color: #023942;
  color: #fff;
  z-index: 1;
}
.footer .col {
  float: left;
  padding: 4vw 3vw;
}
.footer .col:first-child {
  margin-left: 14vw;
}
.footer .col:nth-child(2) {
  width: 32vw;
}
.footer .col a,
.page-id-44 .footer .meta ul li a:hover,
.footer .meta ul li a:hover {
  transition: color 0.5s;
  color: #00ff00;
  text-decoration: none;
}
.footer .col a:hover,
.page-id-44 .footer .meta ul li a,
.home .nofooter .meta ul li a:hover {
  color: #fff;
}
.footer .col span {
  display: inline-block;
  width: 5em;
}
.footer .col img {
  width: 14vw;
  height: auto;
}
.footer .meta {
  clear: both;
  padding: 2vw 17vw;
  background-color: #012b32;
}
.footer strong {
  font-size: 1.166em;
  line-height: 1em;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.footer span strong {
  font-size: 1em;
  line-height: 1.2em;
}
.nofooter .meta {
  display: inline-block;
  margin: 2vw 0;
  text-align: center;
  width: 100%;
}
.home .nofooter .meta {
  position: absolute;
  bottom: -2vw;
}
.meta ul {
  list-style: none;
}
.meta ul li {
  display: inline-block;
  margin: 0 1vw;
}
.footer .meta ul li {
  margin: 0 1em 0 0;
}
.footer .meta ul li a,
.nofooter .meta ul li a {
  font-size: 0.9em;
  line-height: 1em;
  color: #023942;
  text-decoration: none;
  transition: color 0.5s;
}
.home .nofooter .meta ul li a,
.nofooter .meta ul li a:hover {
  font-size: 0.9em;
  line-height: 1em;
  color: #00ff00;
  text-decoration: none;
}
.content > div {
  position: relative;
  z-index: 2;
  background: #fff;
  margin-top: -2px;
}
.content div.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}
.fixed img {
  margin-left: calc(50vw - 100vh / 139 * 240 / 2);
  width: auto !important;
  max-width: unset !important;
  height: 100vh;
}
@media (min-aspect-ratio: 240/139) {
  .fixed img {
    margin-left: auto;
    margin-top: calc(100vh - 100vw / 240 * 139);
    width: 100vw !important;
    max-width: unset !important;
    height: auto;
  }
}
.fixed p {
  font-size: 1.5em;
  text-transform: uppercase;
  line-height: 1em;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 0;
  padding: 3vw 0 3vw 32vw;
  z-index: 1;
  color: #023942;
  background-color: #00ff00;
  background: #00ff00 url(../../uploads/Moving-Box-Animation-Loop_web.gif) 18%
    50% no-repeat;
  background-size: 8vw 7.18vw;
}
.fixed p strong {
  font-size: 1.03em;
  line-height: 0.9em;
  letter-spacing: 0.1em;
}
.content div.overlay {
  position: relative;
  background: transparent;
  margin-top: 100vh;
  height: 54.1vw;
}
.content div.overlay div {
  display: block;
  margin: 10vw 0 0 50vw;
  width: 36vw;
  height: 36vw;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  -webkit-clip-path: url(#svgPath);
  clip-path: url(#svgPath);
}
.content div.overlay::before {
  content: "";
  position: absolute;
  display: block;
  background: url(svg/Maarten-M-Shape.svg) 50% 50% no-repeat;
  background-size: contain;
  top: -2vw;
  left: 50vw;
  width: 36vw;
  height: 36vw;
  -webkit-filter: drop-shadow(1px 2px 4px rgba(0, 0, 0, 0.25));
  filter: drop-shadow(1px 2px 4px rgba(0, 0, 0, 0.25));
}
.content div.overlay::after {
  content: "";
  position: absolute;
  top: -3vw;
  left: 0;
  width: 100%;
  height: 54.1vw;
  display: block;
  background: url(../../uploads/Sticker.png) 50% 50% no-repeat;
  background-size: cover;
}
.text {
  padding: 14vw 17vw;
  font-size: 1.54em;
  line-height: 1.47em;
}
.ueber {
  gap: 2vw;
  padding: 2vw 0 9vw 0;
  position: relative;
}
.ueber .wp-block-column p {
  padding-right: 4vw;
  padding-left: 14vw;
  position: relative;
  opacity: 0.999;
  z-index: 1;
}
.ueber .wp-block-column + .wp-block-column p {
  padding-left: 0;
  padding-right: 9vw;
}
.ueber .wp-block-column:first-child img {
  width: 90%;
  margin: 6.25em 0 7vw 0;
}
.ueber .wp-block-column + .wp-block-column img {
  margin-top: 6vw;
}
.ueber::after {
  content: "";
  position: absolute;
  width: 50vw;
  height: 50vw;
  top: 35vw;
  left: 7vw;
  background: url(svg/Maarten-M-Outline-neon.svg) 0 0 no-repeat;
  background-size: contain;
}
.kacheln .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 0;
}
.kacheln figure {
  position: relative;
  grid-row: auto;
  grid-column: span 1;
}
.kacheln figure:nth-child(1),
.kacheln figure:nth-child(4) {
  grid-row: auto;
  grid-column: span 2;
}
.kacheln figcaption {
  font-size: 1.82em;
  text-transform: uppercase;
  line-height: 1em;
  margin: 0;
  position: absolute;
  bottom: 3vw;
  left: 2vw;
  color: #fff;
}
.google iframe {
  pointer-events: none;
}
.google iframe.clicked {
  pointer-events: auto;
}
.wp-block-image img {
  width: 100%;
}
#sb_instagram #sbi_images {
  padding: 0.2vw 0 !important;
  gap: 0.4vw !important;
}
.mbtn,
.hidedesktop,
.menubottom {
  display: none;
}
.marken {
  height: 36vw;
  -webkit-user-select: none;
  user-select: none;
}
.marken p {
  font-size: 1.12em;
  line-height: 1.47em;
  text-transform: uppercase;
  padding-left: 17vw;
}
.marken .wp-block-group {
  position: relative;
  width: 100vw;
  overflow-x: hidden;
}
.marken .wp-block-group .wp-block-group__inner-container {
  width: 166vw;
  margin: 6vw 17vw 6vw 0;
  padding: 0 0 0 17vw;
}
.marken::before {
  content: "";
  position: absolute;
  bottom: 8vw;
  left: 17vw;
  width: 66vw;
  height: 0.5vw;
  background-color: #ccc;
}
.marken .lft,
.marken .rgt {
  position: absolute;
  top: 0;
  right: 17vw;
  cursor: pointer;
}
.marken .lft {
  right: 19vw;
}
.marken .bar {
  display: block;
  text-indent: -999px;
  position: absolute;
  bottom: 7vw;
  border-top: 1vw solid #fff;
  border-bottom: 1vw solid #fff;
  left: 17vw;
  width: 17vw;
  height: 0.5vw;
  background-color: #023942;
  cursor: pointer;
  margin-left: 0;
}
.marken:not(.pressed) .bar {
  transition: margin-left 0.5s ease-in-out;
}
.marken figure {
  width: 27vw;
  margin-right: 5.4vw !important;
  float: left;
  transform: translateX(0);
}
.marken:not(.pressed) figure {
  transition: transform 0.5s ease-in-out;
}
@media all and (max-width: 770px) {
  body,
  html {
    font-size: 3vw;
    line-height: 1.39em;
    width: 100vw;
    overflow-x: hidden;
  }
  .text h2 {
    font-size: 2em;
    line-height: 1.39em;
  }
  .ueber h2 {
    padding: 0 8vw;
  }
  h2 + h3 {
    margin: -1em 0 2em 3.5em;
  }
  .mbtn,
  .hidedesktop {
    display: block;
  }
  .home .logo {
    top: calc(50vh - 66vw);
    left: 17vw;
    width: 66vw;
    height: 66vw;
  }
  .page-id-44 .logo {
    top: 3vw;
    left: 4vw;
    width: 26vw;
    height: 26vw;
  }
  .mbtn {
    position: absolute;
    top: 3.6vw;
    right: 8vw;
    width: 7vw;
    height: 7vw;
    cursor: pointer;
    z-index: 4;
  }
  .mbtn::before {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 7vw;
    height: 7vw;
    background: url("svg/Maarten-Burger-Icon-Open-Weiss.svg") 50% 50% no-repeat;
    background-size: contain;
    opacity: 1;
    transition: opacity 0.3s;
  }
  .mbtn::after {
    display: block;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 7vw;
    height: 7vw;
    background: url("svg/Maarten-Burger-Icon-Close.svg") 50% 50% no-repeat;
    background-size: contain;
    opacity: 0;
    transition: opacity 0.3s;
  }
  .scrolled.page-id-44 header,
  .menu_active.page-id-44 header {
    height: 14vw;
  }
  .scrolled.page-id-44 .logo,
  .menu_active.page-id-44 .logo {
    top: -2.5vw;
    left: 3.1vw;
    width: 18vw;
    height: 18vw;
  }
  .scrolled.page-id-44 .mbtn::before {
    background: url("svg/Maarten-Burger-Icon-Open.svg") 50% 50% no-repeat;
    background-size: contain;
  }
  .scrolled.page-id-44 header:hover .mbtn::before {
    background: url("svg/Maarten-Burger-Icon-Open-Weiss.svg") 50% 50% no-repeat;
    background-size: contain;
  }
  .menu_active.page-id-44 .mbtn::before {
    opacity: 0;
  }
  .menu_active.page-id-44 .mbtn::after {
    opacity: 1;
  }
  .menu-main-container {
    position: absolute;
    top: -100vh;
    width: 100%;
    height: calc(100vh - 14vw);
    padding-top: 14vw;
    background-color: #023942;
    max-height: 0;
    overflow-y: hidden;
  }
  .menu_active .menu-main-container {
    top: 0;
    max-height: 100vh;
  }
  .page-id-44 .menu-main-container ul,
  .menu-main-container ul,
  .page-id-44.scrolled .menu-main-container ul {
    margin: 24vw 0 0 8vw;
  }
  .menu-main-container ul li {
    display: block;
  }
  .menu-main-container a {
    font-size: 2.2em;
    line-height: 2em;
  }
  .menu-main-container .menubottom {
    display: flex;
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 8vw;
    color: #00ff00;
    background-color: #012b32;
    font-size: 1.5em;
    line-height: 1.2em;
  }
  .ios .menu-main-container .menubottom {
    padding-bottom: 24vw;
  }
  .menu-main-container .wp-block-columns.menubottom > .wp-block-column {
    flex-basis: 50% !important;
  }
  .menubottom .wp-block-column + .wp-block-column strong {
    display: inline-block;
    width: 4em;
  }
  .footer {
    font-size: 1.5em;
    line-height: 1.2em;
  }
  .footer .col {
    padding: 6vw 8vw 0 8vw;
    float: 0;
  }
  .footer .col:nth-child(2) {
    width: 50vw;
    padding-right: 0;
    padding-bottom: 16vw;
  }
  .footer .col:first-child {
    margin: 0;
    width: 84vw;
    padding-top: 16vw;
    padding-bottom: 0;
  }
  .footer .col img {
    width: 25vw;
  }
  .footer .meta {
    padding: 6vw 8vw;
  }
  .footer .meta ul li a {
    font-size: 1em;
    line-height: 1em;
  }
  .fixed img {
    height: 120vh;
    margin-top: -20vh;
    margin-left: calc(66vw - 120vh / 139 * 240 / 2);
  }
  .fixed p {
    width: 64vw;
    padding: 8vw 0 8vw 36vw;
    background-size: 23vw 21vw;
    background-position: 8vw 6vw;
  }
  .ios .fixed p {
    border-bottom: 16vw solid #fff;
  }
  .content div.overlay {
    height: 75vw;
  }
  .content div.overlay div {
    margin: 0 0 0 19vw;
    width: 61vw;
    height: 61vw;
  }
  .content div.overlay::before {
    background: url(svg/Maarten-M-Shape-Mobile.svg) 50% 50% no-repeat;
    background-size: contain;
    top: -3.3vw;
    left: 19vw;
    width: 61vw;
    height: 61vw;
  }
  .content div.overlay::after {
    top: 0;
    height: 75vw;
    background: url(../../uploads/Sticker-Mobile.png) 50% 50% no-repeat;
    background-size: cover;
  }
  .marken p,
  .ueber .wp-block-column p,
  .ueber .wp-block-column + .wp-block-column p {
    font-size: 1.5em;
    line-height: 1.47em;
    padding: 0 8vw;
  }
  .ueber {
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse;
    gap: 0;
    padding: 0;
  }
  .ueber .wp-block-column {
    position: relative;
  }
  .ueber .wp-block-column + .wp-block-column {
    padding-top: 80vw;
  }
  .ueber .wp-block-column + .wp-block-column figure {
    position: absolute;
    top: 0;
    left: 0;
  }
  .ueber .wp-block-column:first-child {
    padding-bottom: 96vw;
  }
  .ueber .wp-block-column:first-child figure {
    position: absolute;
    bottom: 16vw;
    left: 0;
  }
  .ueber .wp-block-column:first-child img,
  .ueber .wp-block-column + .wp-block-column img {
    width: 100%;
    margin: 0;
  }
  .google iframe {
    height: 130vw;
  }
  .text {
    padding: 16vw 8vw;
  }
  .marken {
    height: 80vw;
  }
  .marken .lft,
  .marken .rgt {
    top: -0.05em;
    right: 8vw;
    font-size: 2em;
    line-height: 1em;
  }
  .marken .lft {
    right: 16vw;
  }
  .marken::before {
    bottom: 16vw;
    left: 8vw;
    width: 84vw;
    height: 2vw;
  }
  .marken .bar {
    bottom: 14vw;
    left: 8vw;
    width: 17vw;
    height: 2vw;
    border-top: 2vw solid #fff;
    border-bottom: 2vw solid #fff;
  }
  .marken .wp-block-group .wp-block-group__inner-container {
    width: 370vw;
    margin: 0 8vw 16vw 0;
    padding: 0 0 0 8vw;
  }
  .marken figure {
    width: 84vw;
    margin-right: 8.4vw !important;
  }
}
