#button-style {
  float: right;
  margin-top: 50px;
  margin-right: 50px;
  margin-left: -35px;
  display: inline-block;
  cursor: pointer;
  border-radius: 500px;
  color: #841f93;
  background-color: #000;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.76px;
  line-height: 18px;
  padding: 8px 34px;
  text-align: center;
  text-transform: uppercase;
  transition: all 33ms cubic-bezier(.3,0,0,1);
  will-change: transform;
  border-color: #841f93;
}
#button-style:hover {
  background-color: #841f93;
  color: #000;
}
#dafaq-header {
  width: 100%;
  text-align: center;
}
#dafaq-body {
  margin: 100px;
  position: absolute;
  text-align: center;
}
.dafaq-h2 {
  margin-left: calc(100vw * .35);
  margin-right: calc(100vw * .35);
  margin-top: calc(100vh * .035);
}
.dafaq-p {
  position: absolute;
  text-align: center;
  max-width: 60vw;
  margin-left: calc(100vw * .2);
  margin-right: calc(100vw * .2);
  margin-top: calc(100vh * .25);
  margin-bottom: calc(100vh * .25);
}
.bgcolor-rose {
 background-color:#FAE1DD
}
.bgcolor-white {
 background-color:#fff
}
:root {
 --selection-color:#FF6464;
 --page-pad-x:30px
}
@media (min-width: 576px) {
 :root {
  --page-pad-x:8vw
 }
}
@media (max-height: 420px) {
 :root {
  --page-pad-x:calc(8vw + 50px)
 }
}
*,
*::before,
*::after {
 box-sizing:border-box
}
html {
 font-family:sans-serif;
 line-height:1.15;
 -webkit-text-size-adjust:100%;
 -ms-text-size-adjust:100%;
 -ms-overflow-style:scrollbar;
 -webkit-tap-highlight-color:transparent
}
@-ms-viewport {
 width:device-width
}
article,
aside,
dialog,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
 display:block
}
body {
 margin:0;
 text-align:left
}
[tabindex="-1"]:focus {
 outline:0 !important
}
hr {
 box-sizing:content-box;
 height:0;
 overflow:visible
}
h1,
h2,
h3,
h4,
h5,
h6 {
 margin-top:0;
 margin-bottom:1em
}
p {
 margin-top:0;
 margin-bottom:1em
}
abbr[title],
abbr[data-original-title] {
 text-decoration:underline;
 text-decoration:underline dotted;
 cursor:help;
 border-bottom:0
}
address {
 margin-bottom:1rem;
 font-style:normal;
 line-height:inherit
}
ol,
ul,
dl {
 margin-top:0;
 margin-bottom:1rem
}
ol ol,
ul ul,
ol ul,
ul ol {
 margin-bottom:0
}
dd {
 margin-bottom:.5rem;
 margin-left:0
}
blockquote {
 margin:0 0 1rem
}
dfn {
 font-style:italic
}
b,
strong {
 font-weight:bolder
}
small {
 font-size:80%
}
sub,
sup {
 position:relative;
 font-size:75%;
 line-height:0;
 vertical-align:baseline
}
sub {
 bottom:-.25em
}
sup {
 top:-.5em
}
a {
 color:inherit;
 text-decoration:underline;
 background-color:transparent;
 -webkit-text-decoration-skip:objects
}
a:hover {
 color:inherit;
 text-decoration:underline
}
a:not([href]):not([tabindex]) {
 color:inherit;
 text-decoration:none
}
a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
 color:inherit;
 text-decoration:none
}
a:not([href]):not([tabindex]):focus {
 outline:0
}
pre,
code,
kbd,
samp {
 font-family:monospace, monospace;
 font-size:1em
}
pre {
 margin-top:0;
 margin-bottom:1rem;
 overflow:auto;
 -ms-overflow-style:scrollbar
}
figure {
 margin:0 0 1rem
}
img {
 vertical-align:middle;
 border-style:none
}
svg:not(:root) {
 overflow:hidden
}
table {
 border-collapse:collapse
}
caption {
 padding-top:1em;
 padding-bottom:1em;
 color:inherit;
 text-align:left;
 caption-side:bottom
}
th {
 text-align:inherit
}
label {
 display:inline-block;
 margin-bottom:.5rem
}
button {
 border-radius:0
}
button:focus {
 outline:1px dotted;
 outline:5px auto -webkit-focus-ring-color
}
input,
button,
select,
optgroup,
textarea {
 margin:0;
 font-family:inherit;
 font-size:inherit;
 line-height:inherit
}
button,
input {
 overflow:visible
}
button,
select {
 text-transform:none
}
button,
html [type="button"],
[type="reset"],
[type="submit"] {
 -webkit-appearance:button
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
 padding:0;
 border-style:none
}
input[type="radio"],
input[type="checkbox"] {
 box-sizing:border-box;
 padding:0
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
 -webkit-appearance:listbox
}
textarea {
 overflow:auto;
 resize:vertical
}
fieldset {
 min-width:0;
 padding:0;
 margin:0;
 border:0
}
legend {
 display:block;
 width:100%;
 max-width:100%;
 padding:0;
 margin-bottom:.5rem;
 font-size:1.5rem;
 line-height:inherit;
 color:inherit;
 white-space:normal
}
progress {
 vertical-align:baseline
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
 height:auto
}
[type="search"] {
 outline-offset:-2px;
 -webkit-appearance:none
}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
 -webkit-appearance:none
}
::-webkit-file-upload-button {
 font:inherit;
 -webkit-appearance:button
}
output {
 display:inline-block
}
summary {
 display:list-item;
 cursor:pointer
}
template {
 display:none
}
[hidden] {
 display:none !important
}
@font-face {
 font-display:fallback;
 font-family:'DM Sans';
 font-style:normal;
 font-weight:400;
 src:local(""),
 url("../fonts/dm-sans/dm-sans-v6-latin-regular.woff2") format("woff2"),
 url("../fonts/dm-sans/dm-sans-v6-latin-regular.woff") format("woff")
}
@font-face {
 font-display:fallback;
 font-family:'DM Sans';
 font-style:normal;
 font-weight:500;
 src:local(""),
 url("../fonts/dm-sans/dm-sans-v6-latin-500.woff2") format("woff2"),
 url("../fonts/dm-sans/dm-sans-v6-latin-500.woff") format("woff")
}
@font-face {
 font-display:fallback;
 font-family:'DM Sans';
 font-style:normal;
 font-weight:700;
 src:local(""),
 url("../fonts/dm-sans/dm-sans-v6-latin-700.woff2") format("woff2"),
 url("../fonts/dm-sans/dm-sans-v6-latin-700.woff") format("woff")
}
/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 *//*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */.hamburger {
 padding:15px 15px;
 display:inline-block;
 cursor:pointer;
 transition-property:opacity, filter;
 transition-duration:0.15s;
 transition-timing-function:linear;
 font:inherit;
 color:inherit;
 text-transform:none;
 background-color:transparent;
 border:0;
 margin:0;
 overflow:visible
}
.hamburger:hover {
 opacity:1
}
.hamburger.is-active:hover {
 opacity:1
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
 background-color:currentColor
}
.hamburger-box {
 width:40px;
 height:13px;
 display:inline-block;
 position:relative
}
.hamburger-inner {
 display:block;
 top:50%;
 margin-top:-1.5px
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
 width:40px;
 height:3px;
 background-color:currentColor;
 border-radius:0px;
 position:absolute;
 transition-property:transform;
 transition-duration:0.15s;
 transition-timing-function:ease
}
.hamburger-inner::before,
.hamburger-inner::after {
 content:"";
 display:block
}
.hamburger-inner::before {
 top:-5px
}
.hamburger-inner::after {
 bottom:-5px
}
.hamburger--slider .hamburger-inner {
 top:1.5px
}
.hamburger--slider .hamburger-inner::before {
 top:5px;
 transition-property:transform, opacity;
 transition-timing-function:ease;
 transition-duration:0.15s
}
.hamburger--slider .hamburger-inner::after {
 top:10px
}
.hamburger--slider.is-active .hamburger-inner {
 transform:translate3d(0, 5px, 0) rotate(45deg)
}
.hamburger--slider.is-active .hamburger-inner::before {
 transform:rotate(-45deg) translate3d(-5.71429px, -2px, 0);
 opacity:0
}
.hamburger--slider.is-active .hamburger-inner::after {
 transform:translate3d(0, -10px, 0) rotate(-90deg)
}
.hamburger {
 outline:none !important
}
.hamburger:not(.is-active) {
 color:#FF6464 !important
}
body:not(.touchdevice) .hamburger:not(.is-active):hover .hamburger-inner {
 transform:translateY(2px)
}
body:not(.touchdevice) .hamburger:not(.is-active):hover .hamburger-inner::after {
 transform:translateY(-4px)
}
.hamburger-inner::before {
 display:none
}
:root {
 --H100vh:100vh;
 --H100vw:100vw
}
@supports (-webkit-touch-callout: none) {
 :root {
  --H100vh:-webkit-fill-available
 }
}
.fullpages {
 position:relative;
 z-index:10;
 scroll-snap-type:y mandatory
}
.fullpages .fullpage {
 scroll-snap-stop:always;
 scroll-snap-align:start;
 min-height:100vh;
 min-height:-webkit-fill-available;
 position:relative
}
@media (max-height: 575px) {
 .fullpages {
  scroll-snap-type:y proximity
 }
}
html {
 height:var(100vh);
 width:100vw
}
body {
 color:#841f93;
 background-color:#000;
 margin:0;
 padding:0
}
[data-snap="1"] {
 position:relative
}
#previewInfo {
 position:fixed;
 top:0;
 right:0;
 z-index:200;
 color:#000;
 font-size:11px;
 line-height:1em;
 text-transform:uppercase
}
#previewInfo a {
 display:inline-block;
 padding:2px 10px;
 background-color:#000;
 color:#fff;
 font-weight:bold;
 text-decoration:none
}
#previewInfo a:hover {
 text-decoration:underline
}
@media (max-width: 767px) {
 #previewInfo a {
  font-size:10px;
  line-height:1.4em;
  padding:0px 5px
 }
}
[data-cursor="red"] {
 cursor:url("/site/assets/img/cursor/cursor_red.svg") 20 20,default
}
[data-cursor="blue"] {
 cursor:url("/site/assets/img/cursor/cursor_blue.svg") 20 20,default
}
[data-cursor="yellow"] {
 cursor:url("/site/assets/img/cursor/cursor_yellow.svg") 20 20,default
}
[data-cursor="rose"] {
 cursor:url("/site/assets/img/cursor/cursor_rose.svg") 20 20,default
}
[data-cursor="white"] {
 cursor:url("/site/assets/img/cursor/cursor_white.svg") 20 20,default
}
.db {
 border:solid 1px red
}
.pad1 {
 padding:10px 0
}
.hidden {
 display:none
}
.nooverflow {
 overflow:hidden
}
.nopointer {
 pointer-events:none
}
.relative {
 position:relative
}
.absolute {
 position:absolute
}
.nobr {
 white-space:nowrap
}
.defaultCursor {
 cursor:default
}
.z-top {
 z-index:5
}
.w100 {
 width:100vw
}
.h100 {
 height:var(--H100vh)
}
.h50 {
 height:50vh
}
a,
button {
 outline:none !important
}
button:focus {
 background-color:transparent !important
}
body a,
body button {
 color:inherit
}
@media (min-width: 768px) {
 .slidermenu-space {
  margin-right:calc(1vw + 40px)
 }
}
#scrollWrapper {
 position:relative
}
#scrollWrapper {
 position:fixed;
 top:0;
 left:0;
 right:0;
 bottom:0;
 z-index:-1;
 overflow:auto
}
#scrollWrapper.noscroll {
 overflow:hidden
}
@media (max-width: 768px) {
 #pageWrapper {
  overflow:hidden
 }
 
 #button-style {
    letter-spacing: 0.76px !important;
    line-height: 10px !important;
    padding: 7px 4px !important;
 }
}
 
}
.gs-dev-tools {
 z-index:100
}
a.hoverLine,
.hoverLine a {
 position:relative;
 text-decoration:none
}
a.hoverLine::before,
.hoverLine a::before {
 content:"";
 border-bottom:solid 1px currentcolor;
 width:100%;
 position:absolute;
 left:50%;
 bottom:0;
 width:0%;
 transform:translateX(-50%);
 transition:width 0.2s
}
a.hoverLine.active::before,
.hoverLine a.active::before {
 width:100%
}
body:not(.touchdevice) a.hoverLine.active::before,
body:not(.touchdevice) a.hoverLine:hover::before,
body:not(.touchdevice) .hoverLine a.active::before,
body:not(.touchdevice) .hoverLine a:hover::before {
 width:100%
}
body:not([data-tplId="home"])>.singlepage {
 margin:200px 10%
}
body[data-tplId="form"],
body[data-tplId="contact"] {
 background-color:#FF6464
}
html {
 line-height:1.3em;
 letter-spacing:0.04em;
 font-weight:normal;
 font-family:"DM Sans",sans-serif;
 color:#000;
 font-size:calc( ( 0.00518 * 100vw ) + 16.05825px);
 -webkit-font-smoothing:antialiased;
 -moz-osx-font-smoothing:grayscale
}
.f-1 {
 font-family:"DM Sans",sans-serif
}
a {
 text-decoration:none
}
strong {
 font-weight:bold
}
@media (max-width: 767px) {
 .nobr-sm br {
  display:none
 }
}
body h1,
body h2,
body h3,
body p {
 margin:0
}
.p {
 line-height:1.8em;
 letter-spacing:0.02em;
 font-size:calc( ( 0.00388 * 100vw ) + 16.54369px)
}
@media (max-width: 575px) {
 .p {
  line-height:1.5em
 }
}
.h1 {
 text-transform:uppercase;
 font-weight:600;
 letter-spacing:0px;
 line-height:1.1em;
 -webkit-font-smoothing:antialiased;
 -moz-osx-font-smoothing:grayscale;
 font-size:calc( ( 0.05243 * 100vw ) + 29.33981px)
}
.h2 {
 font-weight:500;
 letter-spacing:0.04em;
 line-height:1.2em;
 -webkit-font-smoothing:antialiased;
 -moz-osx-font-smoothing:grayscale;
 font-size:calc( ( 0.03495 * 100vw ) + 22.8932px)
}
@media (max-width: 575px) {
 .h2 {
  line-height:1.1em
 }
}
#menu-toggle {
 position:fixed;
 top:0.5rem;
 top:1rem;
 right:1rem;
 z-index:20;
 transition:opacity 0.3s,visibility 0.3s,margin-right 0.3s
}
@media (min-width: 768px) and (min-height: 420px) {
 body:not([data-menu-open="1"]):not([data-footer-open="1"]) #menu-toggle {
  visibility:hidden;
  opacity:0
 }
 body[data-footer-open="1"] #menu-toggle {
  margin-right:calc(1vw + 40px)
 }
}
@media (min-width: 768px) and (min-height: 420px) {
 body[data-loading="1"] #mainMenu {
  right:calc(calc(1vw + 40px) * -1);
  transition:right 0.5s
 }
}
.menu {
 --menu-bg-color:#841F93;
 position:fixed;
 top:0;
 bottom:0;
 z-index:10;
 min-height:90vh
}
.menu .lannav {
 position:absolute;
 z-index:10;
 display:flex;
 align-items:center;
 font-size:20px
}
.menu .lannav a {
 text-decoration:none
}
.menu .lannav .active {
 font-weight:bold
}
.menu .lannav .spacer {
 flex:0 0 auto;
 height:0.8em;
 width:3px;
 background-color:#000;
 margin:0 0.5em
}
@media (max-width: 767px), (max-height: 419px) {
 .menu {
  left:0;
  width:100vw;
  background-color:var(--menu-bg-color);
  padding:5.5rem 2rem;
  transform:translateY(-100%)
 }
 .menu.animation {
  transition:transform 0.5s
 }
 .menu .lannav-desktop {
  display:none
 }
 .menu .lannav {
  top:1.5rem;
  left:2rem;
  left:30px;
  font-size:24px
 }
}
@media (max-height: 575px) and (orientation: landscape) {
 .menu .lannav {
  left:75px
 }
}
@media (min-width: 768px) and (min-height: 420px) {
 .menu {
  right:0;
  width:calc(1vw + 40px);
  background-color:var(--menu-bg-color);
  display:flex;
  align-items:flex-end;
  justify-content:center
 }
 .menu.animation {
  transition:right 0.5s
 }
 .menu .lannav-mobile {
  display:none
 }
 .menu .lannav {
  top:3vh;
  left:-2em;
  transform:translateX(-100%);
  transition:opacity 0.3s
 }
 .menu .sidenav {
  transform:rotate(-90deg);
  width:1em;
  height:1em;
  font-weight:400
 }
 .menu .sidenav nav {
  left:12vh;
  display:flex;
  top:-0.2em;
  position:absolute
 }
 .menu .sidenav nav a {
  text-decoration:none !important;
  line-height:1.2em
 }
 .menu .sidenav nav a:hover {
  border-bottom-color:#000
 }
 .menu .sidenav nav a+a {
  margin-left:2em
 }
}
@media (min-width: 768px) and (min-height: 420px) {
 body[data-loading="1"] #mainMenu {
  right:-calc(1vw + 40px)
 }
 body[data-loading="1"] #mainMenu .lannav {
  opacity:0
 }
}
body[data-menu-open="1"] {
 overflow:hidden
}
@media (max-width: 767px), (max-height: 419px) {
 body[data-menu-open="1"] #mainMenu {
  transform:translateY(0%)
 }
}
@media (min-width: 768px) and (min-height: 420px) {
 body[data-menu-open="1"] #mainMenu {
  right:100vw
 }
 body[data-menu-open="1"] #mainMenu .lannav {
  opacity:0
 }
}
body[data-footer-open="1"],
body[data-privacy-open="1"] {
 overflow:hidden
}
body[data-footer-open="1"] #mainMenu .lannav,
body[data-privacy-open="1"] #mainMenu .lannav {
 opacity:0
}
body[data-footer-open="1"] #footerMenu,
body[data-privacy-open="1"] #footerMenu {
 visibility:visible
}
@media (max-width: 767px), (max-height: 419px) {
 body[data-footer-open="1"] #footerMenu,
 body[data-privacy-open="1"] #footerMenu {
  transform:translateY(0%)
 }
}
@media (min-width: 768px) and (min-height: 420px) {
 body[data-footer-open="1"] #footerMenu,
 body[data-privacy-open="1"] #footerMenu {
  right:100vw;
  top:0
 }
}
body[data-privacy-open="1"] #footerMenu {
 z-index:10
}
#footerMenu {
 --menu-bg-color:#fff;
 visibility:hidden
}
#footerMenu .mod-footerpage {
 padding:0;
 padding-bottom:5rem
}
@media (max-width: 767px), (max-height: 419px) {
 #footerMenu {
  transform:translate(0%, 100%)
 }
}
@media (min-width: 768px) and (min-height: 420px) {
 #footerMenu {
  right:100vw;
  top:100vh;
  z-index:9;
  display:flex;
  align-items:flex-start;
  justify-content:center
 }
 #footerMenu.animation {
  transition:top 0.3s ease-out,visibility 0.3s
 }
 #footerMenu .menupages-inner {
  max-width:1000px;
  max-width:75vw;
  position:relative;
  margin:0 auto
 }
 #footerMenu .menupages-inner .menupage {
  padding-right:0;
  padding-right:calc(1vw + 40px);
  padding-right:10vw
 }
}
.menupages {
 position:absolute;
 top:0;
 left:0;
 width:100vw;
 background-color:var(--menu-bg-color);
 overflow-x:hidden;
 overflow-y:auto;
 height:100%;
 -webkit-overflow-scrolling:touch
}
.menupages[data-view="contact"] .menupage:not([data-id="contact"]),
.menupages[data-view="form"] .menupage:not([data-id="form"]),
.menupages[data-view="imprint"] .menupage:not([data-id="imprint"]),
.menupages[data-view="privacy"] .menupage:not([data-id="privacy"]) {
 display:none
}
.menupages .p {
 font-weight:500
}
.menupages .menupages-slider {
 position:relative
}
.menupages .menupages-slider .menupage {
 padding:0 var(--page-pad-x) 2rem var(--page-pad-x);
 width:100%;
 flex:0 0 auto;
 position:relative
}
.menupages .menupages-nav {
 position:absolute;
 position:relative;
 margin-top:2.2em;
 margin-bottom:1.5em;
 left:var(--page-pad-x);
 z-index:2;
 font-weight:500;
 letter-spacing:0.03em;
 font-size:calc( ( 0.02071 * 100vw ) + 20.23301px)
}
.menupages .menupages-nav.big {
 font-size:calc( ( 0.02201 * 100vw ) + 37.74757px);
 font-size:calc( ( 0.01553 * 100vw ) + 40.17476px)
}
.menupages .menupages-nav nav {
 display:flex
}
.menupages .menupages-nav nav a {
 text-decoration:none !important;
 line-height:1.3em;
 border-bottom:solid 0.1em transparent
}
.menupages .menupages-nav nav a.active {
 border-bottom-color:#000
}
.menupages .menupages-nav .nav-line {
 position:absolute;
 bottom:0;
 width:100%;
 border-bottom:solid 0.1em #000;
 display:none
}
@media (max-width: 767px), (max-height: 419px) {
 .menupages .nav-line {
  display:none
 }
 .menupages .menupages-slider {
  position:relative
 }
 .menupages .menupages-nav {
  position:relative;
  font-size:30px
 }
 .menupages .menupages-nav.big {
  font-size:38px;
  position:relative
 }
 .menupages .menupages-nav nav {
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  flex-direction:column
 }
 .menupages .menupages-nav nav a {
  margin-bottom:0.3em;
  border-bottom:solid 3px transparent;
  line-height:1.3em;
  text-decoration:none !important
 }
}
@media (min-width: 768px) and (min-height: 420px) {
 .menupages {
  left:calc(1vw + 40px)
 }
 .menupages .menupages-nav.big {
  margin-top:1.7em
 }
 .menupages .menupages-nav nav a {
  background-color:var(--menu-bg-color);
  margin-right:2em
 }
 .menupages .menupages-nav nav a:last-child {
  margin-right:0
 }
}
.mod-fullbg {
 position:absolute;
 top:0;
 left:0;
 width:100%;
 height:100%
}
.mod-textpage,
.mod-intro {
 padding:30px;
 padding:var(--page-pad-x);
 display:flex;
 align-items:center;
 justify-content:center
}
.mod-textpage {
 overflow:hidden;
 height:100vh;
 max-height:var(--H100vh);
 padding-top:100px;
 padding-bottom:100px
}
@media (max-height: 575px) {
 .mod-textpage {
  height:auto;
  display:block;
  max-height:none
 }
 .mod-textpage .mod-textbox {
  margin-bottom:80px
 }
}
@media (min-width: 768px) and (min-height: 576px) {
 .mod-textpage {
  align-items:flex-start;
  align-items:center;
  margin-right:80px
 }
}
@media (min-width: 768px) {
 .mod-textpage {
  margin-right:calc(1vw + 40px)
 }
}
@supports (-webkit-touch-callout: none) {
 .mod-textpage {
  box-sizing:content-box;
  height:auto;
  min-height:var(--H100vh);
  max-height:none
 }
 .mod-textpage .mod-textbox {
  margin:auto 0
 }
}
.old_mod-textpage {
 position:relative
}
@media (max-width: 767px) {
 .old_mod-textpage {
  padding-top:100px;
  padding-bottom:100px;
  min-height:50vh
 }
}
@media (min-width: 768px) {
 .old_mod-textpage {
  padding-top:200px;
  padding-bottom:200px;
  min-height:70vh;
  height:70vh
 }
}
.mod-textbox {
 width:100%
}
.mod-textbox .spacer {
 height:0.8em;
 width:40px;
 flex:0 0 auto
}
.mod-textbox .p {
 padding-top:0.3em
}
.mod-textbox .p .line {
 white-space:nowrap
}
.mod-textbox .p_disabled {
 position:relative;
 height:70vh;
 overflow:hidden
}
.mod-textbox .p_disabled .p-inner {
 position:absolute;
 width:100%;
 line-height:inherit;
 line-height:inherit;
 font-size:inherit
}
@media (min-width: 992px) {
 .mod-textbox {
  display:flex
 }
 .mod-textbox h2 {
  white-space:nowrap;
  width:50%;
  flex:0 0 auto
 }
 .mod-textbox .p {
  width:50%;
  flex:0 1 auto;
  padding-right:calc(10% - 50px)
 }
 .mod-textbox[data-invert="1"] {
  flex-direction:row-reverse
 }
}
.mod-logo {
 position:fixed;
 top:1.5rem;
 left:var(--page-pad-x);
 z-index:10;
 margin-top:-3px;
 transition:transform 0.6s 0.4s ease-in-out;
 cursor:pointer
}
.mod-logo .logo-icon,
.mod-logo .logo-text {
 transition:opacity 0.4s 0.8s,visibility 0.4s 0.8s;
 display:block
}
.mod-logo .logo-icon {
 width:90px;
 max-width:15vw;
 height:auto;
 color: red;
 fill: red;
 stroke: red;
}
.mod-logo .logo-text {
 position:absolute;
 top:84px;
 white-space:nowrap;
 display:block;
 max-width:40vw;
 width:90px;
 top:92px;
 height:auto;
}
@media (min-width: 576px) {
 .mod-logo {
  left:60px
 }
}
@media (min-width: 768px) {
 .mod-logo .logo-text {
  top:102px
 }
}
@media (max-height: 575px) and (orientation: landscape) {
 .mod-logo {
  left:45px
 }
 .mod-logo .logo-icon {
  max-height:10vh
 }
}
body[data-logo="text"] .mod-logo .logo-icon,
body:not([data-logo="text"]) .mod-logo .logo-text {
 opacity:0;
 visibility:hidden;
 transition-delay:.4s
}
body[data-logo="text"] .mod-logo {
 transform:translateY(-80px)
}
body[data-logo="hide"] .mod-logo,
body.footer-visible .mod-logo {
 transform:translateY(-80px)
}
.mod-cover {
 position:relative;
 z-index:2
}
.mod-cover .video {
 top:0;
 left:0;
 position:absolute;
 width:100%;
 height:100%;
 object-fit:cover
}
@keyframes intro-bg {
 0% {
  height:0%;
  bottom:0%
 }
 50% {
  height:100%;
  bottom:0%
 }
 100% {
  height:0%;
  bottom:100%
 }
}
.mod-intro-bg {
 height:0%;
 width:100%;
 bottom:0;
 left:0;
 position:absolute
}
.mod-intro-bg.play {
 animation:intro-bg 2s
}
@media (max-height: 575px) {
 .mod-intro-bg {
  display:none
 }
}
.mod-intro-wrap {
 height:200vh;
 width:100%;
 position:relative;
 position:absolute;
 top:0;
 z-index:1
}
.mod-intro {
 position:-webkit-sticky;
 position:sticky;
 top:0;
 overflow:hidden;
 max-width:100%;
 z-index:1;
 height:50%
}
.mod-intro .h1 {
 flex:0 0 auto;
 width:6em;
 white-space:nowrap
}
@media (max-width: 550px) {
 .mod-intro .h1 {
  font-size:12vw
 }
}
@media (max-height: 550px) {
 .mod-intro .h1 {
  font-size:12vh
 }
}
.mod-intro.fixed .unpinned-view {
 display:none
}
.mod-intro.fixed .pinned-view {
 display:block
}
.mod-intro .mod-introtext {
 position:relative
}
.mod-intro .mod-introtext[data-lan="en"] .h1 {
 width:8em
}
body.touchdevice .mod-intro {
 transform:translateY(-50px)
}
.mod-txtSwap {
 position:relative;
 display:inline-flex;
 align-items:center;
 justify-content:flex-start
}
.mod-txtSwap ul {
 list-style:none;
 margin:0;
 padding:0;
 overflow:hidden;
 display:inline-block;
 top:0;
 position:absolute;
 position:relative;
 height:1em
}
.mod-txtSwap ul li {
 transition:transform 0.6s
}
.mod-txtSwap ul li:nth-child(1) {
 transform:translateY(0%);
 transition-delay:.6s
}
.mod-txtSwap ul li:nth-child(2) {
 transform:translateY(100%);
 transition-delay:0s
}
.mod-txtSwap.play ul li:nth-child(1) {
 transition-delay:0s;
 transform:translateY(100%)
}
.mod-txtSwap.play ul li:nth-child(2) {
 transition-delay:.6s;
 transform:translateY(-100%)
}
.mod-footerpage {
 padding:30px;
 padding:5rem var(--page-pad-x);
 padding:5rem var(--page-pad-x) 20% 5rem;
 font-size:calc( ( 0.00259 * 100vw ) + 17.02913px);
 line-height:1.45em
}
.mod-footerpage h3,
.mod-footerpage strong {
 font-weight:bold;
 line-height:inherit
}
.mod-footerpage h1,
.mod-footerpage h2 {
 font-size:calc( ( 0.00259 * 100vw ) + 23.02913px);
 line-height:1.3em;
 margin-top:2em;
 margin-bottom:1em
}
.mod-footerpage ul,
.mod-footerpage ol {
 padding:0;
 margin:0;
 padding-left:1em !important;
 list-style:disc !important;
 list-style-type:disc !important
}
.mod-footerpage ul>li,
.mod-footerpage ol>li {
 margin-bottom:1em;
 list-style-type:inherit !important
}
.mod-footerpage a {
 text-decoration:underline
}
.page-contact .p {
 font-size:calc( ( 0.01036 * 100vw ) + 20.1165px);
 line-height:1.16;
 font-size:calc(3vmin + 12px)
}
.page-contact .map {
 background:no-repeat url("/site/assets/img/map.2.svg") center center;
 background-size:cover;
 pointer-events:none
}
@media (max-width: 1299px) {
 .page-contact .map {
  height:80vw;
  margin:2rem 0;
  max-width:700px;
  max-height:700px;
  background-size:140% auto
 }
}
@media (max-width: 575px) {
 .page-contact .map {
  height:70vh;
  position:absolute;
  left:0;
  right:0;
  margin:0rem 0;
  max-width:700px;
  max-height:700px;
  background-size:160% auto
 }
}
@media (min-width: 1300px) {
 .page-contact .map {
  position:absolute;
  top:0;
  top:2rem;
  right:0;
  width:55vw;
  width:calc(90vw - 8.2em);
  height:92vh;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center
 }
 .page-contact .map img {
  margin:2rem;
  display:block;
  position:relative;
  max-width:85%;
  max-width:100%;
  max-width:140%;
  max-height:100%
 }
}
.page-contact .instagramLink::before {
 content:"";
 width:2em;
 height:0.8em;
 display:inline-block;
 background:no-repeat url("/site/assets/img/svg/arrow_r_black.svg") center center;
 background-size:contain;
 margin-right:.8em;
 margin-bottom:-.1em
}
@media (min-width: 992px) {
 .menupage .page-contact .map {
  font-size:calc( ( 0.01553 * 100vw ) + 40.17476px);
  top:-4em;
  height:92vh
 }
}
.page-form {
 font-size:16px;
 line-height:1.5
}
.page-form .p {
 font-size:18px;
 line-height:1.5
}
.page-form .houre-grid>label {
 min-width:150px
}
.page-form .submit-btn-col {
 text-align:right
}
.page-form .requiredInfo {
 position:absolute;
 right:1em;
 bottom:-0.5em;
 font-size:14px
}
.page-form .privacy_text link {
 text-decoration:underline
}
body .datepicker-modal {
 cursor:default
}
body .datepicker-controls .select-month input {
 width:90px
}
body .datepicker-date-display {
 background-color:#FF6464
}
body .row.nomargin {
 margin-bottom:0
}
body .col.nopad {
 padding-left:0;
 padding-right:0
}
@media (min-width: 1200px) {
 #contactForm {
  margin-top:-2.5em
 }
}
#contactForm .input-field input {
 border:solid 2px #fff !important;
 padding-left:15px;
 box-sizing:border-box
}
#contactForm .input-field label {
 width:auto;
 color:#fff;
 background-color:#FF6464;
 margin-left:10px;
 padding:0 5px;
 display:inline-block;
 white-space:nowrap;
 pointer-events:none
}
#contactForm .input-field>label:not(.label-icon).active {
 transform:translateY(-12px) scale(1)
}
#contactForm .input-field .postfix {
 position:absolute;
 z-index:1;
 width:3rem;
 font-size:2rem;
 -webkit-transition:color 0.2s;
 transition:color 0.2s;
 top:.5rem;
 right:0;
 cursor:pointer
}
#contactForm [type="checkbox"].filled-in+span:not(.lever)::after {
 border-radius:0
}
#contactForm [type="checkbox"].filled-in:checked+span:not(.lever)::after {
 border:2px solid #FFF;
 background-color:transparent;
 color:black
}
#contactForm [type="checkbox"].filled-in+span:not(.lever)::before {
 border:none;
 transition:none;
 border:none;
 content:"";
 transform:none;
 text-align:center;
 line-height:1em;
 width:20px;
 height:20px;
 margin:0;
 transform:none;
 top:-1px;
 left:0;
 display:flex;
 align-items:center;
 justify-content:center;
 font-weight:600;
 font-size:19px
}
#contactForm [type="checkbox"].filled-in:checked+span:not(.lever)::before {
 border-right-color:#000;
 border-bottom-color:#000;
 border:none;
 content:"x";
 transform:none
}
#contactForm .input-field input.invalid,
#contactForm [type="checkbox"].invalid+span::after,
#contactForm [type="radio"].invalid+span::before {
 border-color:#2F85FF !important
}
#contactForm .submit-btn {
 border:solid 2px #000;
 color:#000;
 padding:0;
 height:auto;
 transform:translateY(-20%);
 cursor:pointer;
 padding:0 1em;
 min-width:11em;
 height:2.5em;
 text-align:center;
 box-sizing:border-box;
 border-radius:0;
 -moz-box-shadow:none;
 -webkit-box-shadow:none;
 box-shadow:none
}
#contactForm .submit-btn:focus {
 background:#fff
}
#contactForm .submit-btn:hover {
 background:inherit;
 border:solid 3px #000;
 font-weight:bold
}
#contactForm .submit-btn[disabled] {
 background:#fff !important;
 color:#000 !important
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
 border:2px solid white;
 -webkit-text-fill-color:black;
 -webkit-box-shadow:0 0 0px 1000px #FF6464 inset !important;
 background-color:#FF6464 !important
}
* {
 -webkit-tap-highlight-color:transparent;
 -webkit-text-size-adjust:none;
 -webkit-appearance:none
}
input:focus,
textarea:focus {
 outline:0 none
}
body.touchdevice #gallery #gallerySlideshow {
 opacity:1 !important
}
.mod-gallery {
 overflow:hidden
}
.mod-gallery .gallery-size {
 height:100vw;
 box-sizing:content-box;
 max-height:100vh;
 max-height:var(--H100vh);
 width:100%
}
@media (max-width: 767px) and (orientation: portrait) {
 .mod-gallery .gallery-size {
  padding-top:100px;
  padding-top:13vh;
  padding-top:20vh;
  height:100vw;
  max-height:60vh;
  box-sizing:content-box
 }
}
@media (min-width: 768px) {
 .mod-gallery .gallery-size {
  height:100vh;
  width:100vw
 }
}
.mod-gallery #galleryIntro {
 display:none;
 overflow:hidden;
 position:fixed;
 top:0;
 left:0;
 z-index:5
}
.mod-gallery #galleryIntro .swiper-slide {
 position:absolute;
 top:0;
 left:0;
 width:100%;
 height:100%;
 background:no-repeat center center;
 background-size:cover
}
@media (max-width: 767px) {
 .mod-gallery #gallery.fixed #gallerySlideshow {
  opacity:1 !important
 }
}
@media (min-width: 768px) {
 .mod-gallery #gallery #galleryIntro {
  display:block
 }
 .mod-gallery #gallery:not(.fixed) #galleryIntro {
  display:none
 }
}
.mod-gallery #gallery #gallerySlideshow {
 width:100%;
 margin:0;
 width:100vw
}
.mod-gallery #gallery .swiper-button-prev,
.mod-gallery #gallery .swiper-button-next,
.mod-gallery #gallery .swiper-pagination,
.mod-gallery #gallery .swiper-pagination-circle {
 transition:opacity 0.5s,visibility 0.5s,transform 0.5s;
 transition-delay:0s
}
.mod-gallery #gallery .swiper-button-prev,
.mod-gallery #gallery .swiper-button-next {
 transition-delay:.3s
}
.mod-gallery #gallery:not(.slideshowEnabled) .swiper-button-prev,
.mod-gallery #gallery:not(.slideshowEnabled) .swiper-button-next,
.mod-gallery #gallery:not(.slideshowEnabled) .swiper-pagination,
.mod-gallery #gallery:not(.slideshowEnabled) .swiper-pagination-circle {
 transform:translateY(-50%);
 opacity:0;
 visibility:hidden
}
.mod-gallery #gallery:not(.slideshowEnabled) .swiper-button-prev,
.mod-gallery #gallery:not(.slideshowEnabled) .swiper-button-next {
 transition-delay:0s
}
.mod-gallery .swiper-slide {
 position:relative;
 overflow:hidden
}
.mod-gallery .swiper-slide img {
 width:100%;
 height:100%;
 object-fit:cover
}
.mod-gallery .swiper-button-prev,
.mod-gallery .swiper-button-next {
 top:auto;
 bottom:50px;
 width:110px;
 max-width:20vw;
 outline:none
}
.mod-gallery .swiper-button-prev img,
.mod-gallery .swiper-button-next img {
 transition:transform 0.3s;
 width:100%;
 height:100%;
 object-fit:contain
}
.mod-gallery .swiper-button-prev::after,
.mod-gallery .swiper-button-next::after {
 display:none
}
.mod-gallery .swiper-button-prev {
 left:auto;
 right:50%;
 margin-right:80px
}
.mod-gallery .swiper-button-prev img,
.mod-gallery .swiper-button-prev svg {
 transform:rotate(180deg)
}
.mod-gallery .swiper-button-prev:hover img {
 transform:translateX(-10px) rotate(180deg)
}
.mod-gallery .swiper-button-next {
 right:auto;
 left:50%;
 margin-left:80px
}
.mod-gallery .swiper-button-next:hover img {
 transform:translateX(10px)
}
.mod-gallery .swiper-pagination,
.mod-gallery .swiper-pagination-circle {
 position:absolute;
 width:80px;
 height:80px;
 left:50%;
 bottom:30px;
 margin-left:-40px;
 border-radius:50%;
 z-index:2;
 display:flex;
 align-items:center;
 justify-content:center;
 font-weight:400;
 font-size:1.2rem;
 font-size:calc( ( 0.00647 * 100vw ) + 19.57282px)
}
@media (min-width: 768px) {
 .mod-gallery .swiper-pagination,
 .mod-gallery .swiper-pagination-circle {
  width:100px;
  height:100px;
  bottom:20px;
  margin-left:-50px
 }
}
.mod-gallery .swiper-pagination-circle {
 border:solid 2px #000
}
.mod-gallery .swiper-pagination-circle>svg {
 margin:-4px
}
.mod-gallery .swiper-pagination-circle>svg .path {
 stroke-dasharray:1000 1000;
 stroke-dashoffset:1000
}
.footer {
 text-align:center
}
.footer .footer-centerbox {
 position:absolute;
 top:0;
 left:0;
 right:0;
 bottom:0;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:20px var(--page-pad-x) 80px var(--page-pad-x)
}
.footer .footer-box {
 position:relative;
 -webkit-font-smoothing:antialiased;
 -moz-osx-font-smoothing:grayscale
}
.footer .footer-box .footer-logo {
 width:220px;
 max-width:30vw;
 max-height:20vh;
 height:auto
}
.footer .footer-box .footer-logo-name {
 margin:0.4em 0
}
.footer .footer-box .footer-logo-text {
 font-weight:500;
 letter-spacing:0.04em;
 line-height:1.33em;
 font-size:calc( ( 0.02201 * 100vw ) + 17.74757px)
}
.footer .footer-box .footer-text {
 margin-top:10vh
}
.footer .footer-box .footer-text>span,
.footer .footer-box .footer-text>a {
 white-space:nowrap
}
.footer .footer-nav {
 position:absolute;
 left:0;
 right:0;
 bottom:0;
 margin:2em var(--page-pad-x)
}
.footer .footer-nav nav {
 display:inline-flex;
 flex-direction:row;
 align-items:center;
 justify-content:center
}
.footer .footer-nav nav a {
 padding:0.5em 0
}
.footer .footer-nav nav a+a {
 margin-left:3rem
}
@media (max-height: 500px) and (orientation: landscape) {
 .footer .footer-logo {
  display:none
 }
 .footer .footer-logo-text {
  display:none
 }
}
@media (min-aspect-ratio: 10/5) {
 .footer .footer-box .footer-logo-name {
  font-size:12vh
 }
 .footer .footer-box .footer-logo-text {
  font-size:5vh
 }
 .footer .footer-box .footer-text {
  font-size:1.2rem;
  line-height:1.3em
 }
}
@keyframes footer-bg {
 0% {
  height:0%;
  bottom:0%
 }
 30% {
  height:0%;
  bottom:0%
 }
 100% {
  height:100%;
  bottom:0%
 }
}
.footer-bg {
 height:0%;
 width:100%;
 bottom:0;
 left:0;
 position:absolute
}
.footer-bg.play {
 height:100%;
 animation:footer-bg 1.5s
}
body.footer-visible .footer-bg {
 height:100%;
 animation:footer-bg 1.5s
}
