@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}.splide--rtl{direction:rtl}.splide__track--ttb>.splide__list{display:block}.splide__container{box-sizing:border-box;position:relative}.splide__list{backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide:not(.is-overflow) .splide__pagination{display:none}.splide__progress__bar{width:0}.splide{position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}.splide__toggle.is-active .splide__toggle__pause{display:inline}.splide__track{overflow:hidden;position:relative;z-index:0}@font-face {
  font-family: 'fontello';
  src: url('/content/themes/heyc/fontello/font/fontello.eot?28302404');
  src: url('/content/themes/heyc/fontello/font/fontello.eot?28302404#iefix') format('embedded-opentype'),
       url('/content/themes/heyc/fontello/font/fontello.woff2?28302404') format('woff2'),
       url('/content/themes/heyc/fontello/font/fontello.woff?28302404') format('woff'),
       url('/content/themes/heyc/fontello/font/fontello.ttf?28302404') format('truetype'),
       url('/content/themes/heyc/fontello/font/fontello.svg?28302404#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('/content/themes/heyc/fontello/font/fontello.svg?28302404#fontello') format('svg');
  }
}
*/
 
 [class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
 
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
 
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
 
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
 
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
 
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
 
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}
 
.icon-wp-edit:before { content: '\e811'; } /* '' */

@font-face {
    font-family:"GoodSans-Regular";
    src:url("/content/themes/heyc/webfonts/GoodSans-Regular.woff2") format("woff2"),url("/content/themes/heyc/webfonts/GoodSans-Regular.woff") format("woff");
    font-style:normal;font-weight:400;
    font-display: swap;
}

@font-face {
    font-family:"GoodSans-Medium";
    src:url("/content/themes/heyc/webfonts/GoodSans-Medium.woff2") format("woff2"),url("/content/themes/heyc/webfonts/GoodSans-Medium.woff") format("woff");
    font-style:normal;font-weight:400;
    font-display: swap;
}

@font-face {
    font-family:"GoodSans-Bold";
    src:url("/content/themes/heyc/webfonts/GoodSans-Bold.woff2") format("woff2"),url("/content/themes/heyc/webfonts/GoodSans-Bold.woff") format("woff");
    font-style:normal;font-weight:400;
    font-display: swap;
}

@font-face {
    font-family:"Teodor-Light";
    src:url("/content/themes/heyc/webfonts/Teodor-Light.woff2") format("woff2"),url("/content/themes/heyc/webfonts/Teodor-Light.woff") format("woff");
    font-style:normal;font-weight:400;
    font-display: swap;
}/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

/* Document
   ========================================================================== */

html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main { /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

a, button {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover {
  outline-width: 0;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details, /* 1 */
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}





html,
button,
input,
select,
textarea {
    color: #222;
}

body {
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #000;
    color: #fff;
    text-shadow: none;
}

::selection {
    background: #000;
    color: #fff;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

img {
    vertical-align: middle;
}

fieldset, iframe, figure, blockquote {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

ul, ol, h1, h2, h3, h4, h5, h6, p {
  margin: 0;
  padding: 0;
  list-style: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: normal;
}

a {
  text-decoration: none;
  color: inherit;
}

[class^="icon-"]:before, [class*=" icon-"]:before {
  width: auto;
  margin-right: 0;
  margin-left: 0;
}

select::-ms-expand {
    display: none;
}






/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

.slick-slide {
  outline: 0;
}


.btn-wp-edit {
  display: block;
  float: left;
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  z-index: 10000;
  color: #fff;
  background: #222;
  min-width: 1.875rem;
  height: 1.875rem;
  line-height: 1.875rem;
  text-align: center;
  border-radius: .9375rem;
  white-space: nowrap;
  font-family: Arial;
  text-transform: uppercase;
}

.btn-wp-edit i {
  position: absolute;
  top: 0;
  left: 0.55rem;
}

.btn-wp-edit > span {
  display: inline-block;
  position: relative;
  overflow: hidden;
  max-width: 0;
  -webkit-transition: max-width 150ms;
  -moz-transition: max-width 150ms;
  -ms-transition: max-width 150ms;
  -o-transition: max-width 150ms;
  transition: max-width 150ms;
  margin-left: 1.875rem;
}

.btn-wp-edit:hover > span {
  max-width: 12.5rem;
}

.btn-wp-edit > span > span {
  display: inline-block;
  padding-right: 0.55rem;
  font-size: .75rem;
}

.btn-wp-edit {
	font-size: 16px;
	bottom: 0;
	left: 0;
	min-width: 2.275em;
	height: 2.275em;
	line-height: 2.275em;
	border-radius: 0;
}

.btn-wp-edit i {
	left: 0.65em;
}

.btn-wp-edit > span {
	margin-left: 2.275em;
}

.btn-wp-edit > span > span {
	font-size: .75em;
	padding-right: .65em;
}

.btn-wp-edit:hover > span {
	max-width: 12.5em;
}

.sn-col-set {
  letter-spacing:-.31em;
  *letter-spacing:normal;
  *word-spacing:-.43em;
  text-rendering:optimizespeed;
  display:-webkit-flex;
  display: flex;
  -webkit-flex-flow:row wrap;
  display:-ms-flexbox;
  -ms-flex-flow:row wrap;
  flex-flow: row wrap;
  -ms-align-content:flex-start;
  -webkit-align-content:flex-start;
  align-content:flex-start;
}

.sn-col-set-nowrap {
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}

.sn-col-set > * {
  display:inline-block;
  *display:inline;
  zoom:1;
  letter-spacing:normal;
  word-spacing:normal;
  vertical-align:top;
  text-rendering:auto;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-clip: padding-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
          
}

.sn-col-set-1 > * {
  width: 100%;
  margin-right: 0;
}

.sn-col-set-2 > * {
  width: 50%;
}

.sn-col-set-3 > * {
  width: 33.33333333333333333333%;
}

.sn-col-set-4 > * {
  width: 25%;
}

.sn-col-set-5 > * {
  width: 20%;
}

.sn-col-set-6 > * {
  width: 16.66666666666666666666%;
}

.sn-col-set > .sn-col-auto,
.sn-col-set-footer > * {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

html:not(.explorer) .sn-col-set .sn-col-equal-height {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}

.sn-col-set .sn-col-space-between {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}

.sn-col-set .sn-col-valigned {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}

.pull-left {
  float: left;
}

.pull-right {
  float: right;
}

.btn {
  border: 0;
  border-radius: 0;
  display: inline-block;
  white-space: nowrap;
  font-size: 1rem;
  background: transparent;
  position: relative;
}

button.btn {
  -webkit-appearance: none;
  appearance: none;
}

.btn-set {
  margin-top: 1.2em;
}

span.loading {
  height: 0;
  width: 0;
  display: inline-block;
  vertical-align: bottom;
  position: relative;
  transition: all 150ms;
  transform: scale(0);
}

span.loading img {
  width: 100%;
  padding: 0.75rem;
  position: absolute;
  top: -0.9rem;
  left: 0;
  animation: spin .4s infinite linear;
}

span.loading.now {
  height: 1.3rem;
  width: 1.3rem;
  transform: scale(1);
}

img.ajax-loader {
  display: none !important;
}

button.btn {
  -webkit-appearance: none;
  appearance: none;
  outline: 0;
  box-shadow: none;
}

.lnk {
  display: inline-block;
  transition: opacity 250ms;
}

.spanned > span {
  display: block;
}

.figure-cover {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.figure-contain {
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

.figure-cover img,
.figure-contain img {
  display: none;
}

img.rounded {
  display: inline-block;
  border-radius: 50%;
}

.to-be-added {
	transform: translateY(60px);
  opacity: 0;
  transition: transform 1.2s, opacity 1.2s;
	transition-timing-function: cubic-bezier(0.19,1,.22,1);
}

.just-added {
	transform: translateY(0px);
	opacity: 1;
}

button.link {
	all: inherit;
	cursor: pointer;
}










address {
  font-style: normal;
}

a {
	text-decoration-skip: ink;
}

:focus:not(:focus-visible) { outline: none }

html {
  overflow-y: scroll;
  -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wysiwyg a {
  word-wrap: break-word;
  word-break: break-word;
}


select option {
  background: #fff;
  color: #000;
}

[data-kinetic].sn-kinetic-ready,
[data-kinetic].sn-kinetic-ready * {
  cursor: grab;
}

[data-kinetic].sn-kinetic-ready.sn-kinetic-mousedown,
[data-kinetic].sn-kinetic-ready.sn-kinetic-mousedown * {
  cursor: grabbing;
}

[data-kinetic] :is(area, a, input, button),
[data-kinetic] :is(area, a, input, button) * {
  cursor: pointer !important;
}








	/* ROOT */

	:root {
    
    --base-font-1-regular: "GoodSans-Regular", sans-serif;
    --base-font-1-medium: "GoodSans-Medium", sans-serif;
    --base-font-1-bold: "GoodSans-Bold", sans-serif;
    --base-font-2-light: "Teodor-Light", sans-serif;
    
    --min-vw: 380;
    --max-vw: 1670;
    
    --px: min(1px, var(--px-infinite));
    --px-infinite: calc((100 / 1670) * 1vw);
    --px-mobile: calc((100 / 380) * 1vw);
    --base-unit: var(--px);
	
		--ttf: var(--ttf-1);
    --ttf-1: cubic-bezier(0.19, 1, 0.22, 1);
    --ttf-2: cubic-bezier(0.075, 0.820, 0.165, 1);
    --ttf-3: cubic-bezier(0.64, 0, 0.78, 0);
    --ttf-4: cubic-bezier(0.8, 0, 0.2, 1);
    --ttf-5: cubic-bezier(0.165, 0.84, 0.4, 1);
    --ttf-6: cubic-bezier(0.6, 0.07, 0.17, 1);
    --ttf-7: cubic-bezier(0.247, 0.75, 0.187, 1);
    --ttf-8: cubic-bezier(1, 0, 0, 1);
    --ttf-9: cubic-bezier(.47, 3.64, .41, .8);
    
    --page-padding-top: 0;
    
    --page-padding-left: max(15px, calc(55 * var(--px)));
    --page-padding-right: var(--page-padding-left);
    
    --page-padding-left-l: max(45px, calc(188 * var(--px)));
    --page-padding-right-l: var(--page-padding-left-l);
    
    --page-padding-left-mixed: calc(var(--page-padding-left-l) - var(--page-padding-left));
    
    --col-1-width: calc(267 * var(--px));
  
		--base-color-black: #000;
    --base-color-white: #fff;
    
    --base-color-off-white: #edede8;
    --base-color-beige: #dfdfd8;
    --base-color-light-green: #87998f;
    --base-color-green: #5c6f62;
    --base-color-dark-green: #35483b;
    --base-color-brown: #918381;
    --base-color-pink: #fe61b9;
    --base-color-gray: #cccccc;
	
	}














 
 
	/* BASE */

	html {
		scroll-behavior: smooth;
	}

	html.is-transitioning,
	html.is-forced-scrolling,
  html.lenis-scrolling {
		scroll-behavior: auto;
	}
  
  .lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
  }
  
  .lenis.lenis-stopped {
    overflow: hidden;
  }

  .lenis.lenis-scrolling iframe {
    pointer-events: none;
  }

	body {
	  font-size: 100%;
		font-family: var(--base-font-1-regular);
		font-weight: 400;
	  color: var(--base-color-black);
	  line-height: 1.3;
	  background: var(--base-color-off-white);
	}

	input, textarea, select, button {
		font-family: var(--base-font-1-regular);
		font-weight: 400;
	  color: var(--base-color-black);
	}

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

	*:not(.has-component-inner) .module-inner,
	header.main > .inner,
  div.flyout > .inner,
  footer.main > .inner,
	.cookie-bar > .inner,
	*.has-component-inner .component-inner {
	  position: relative;
	  margin: 0 auto;
	  padding-left: var(--page-padding-left);
	  padding-right: var(--page-padding-right);
	  box-sizing: border-box;
	}

	.module-full-width .module-inner {
	  max-width: none;
	  padding-left: 0;
	  padding-right: 0;
	}

	.load-more {
	  text-align: center;
	}
  
  .wysiwyg {
    -webkit-hyphens: auto;
    -webkit-hyphenate-limit-after: 8;
    -webkit-hyphenate-limit-before: 8;
    hyphens: auto;
    hyphenate-limit-chars: 15;
    text-wrap: pretty;
  }

	.wysiwyg a {
	  text-decoration: underline;
	}
  
  @media (hover: hover) {
  	.wysiwyg a:is(:hover, :focus) {
  	  text-decoration: none;
  	}
  }

	.wysiwyg > *:not(:last-child) {
	  margin-bottom: 1em;
	}

	.wysiwyg strong {
	}

	.wysiwyg > ul:not(.plain),
	.wysiwyg > ol:not(.plain) {
	  counter-reset: supernovae;
	}

	.wysiwyg > ul:not(.plain) li,
	.wysiwyg > ol:not(.plain) li {
	  position: relative;
	  padding-left: 1.5em;
	}

	.wysiwyg > ul:not(.plain) li:not(:last-child),
	.wysiwyg > ol:not(.plain) li:not(:last-child) {
	}

	.wysiwyg > ul:not(.plain) li::before {
	  content: '—';
	  position: absolute;
	  left: 0;
	}

	.wysiwyg > ol:not(.plain) li::before {
		content: counter(supernovae) '.';
		counter-increment: supernovae;
	  position: absolute;
	  left: 0;
	}

	.wysiwyg > ul ul li::before {
	}

	.wysiwyg > ul ul,
	.wysiwyg > ol ol {
	}

	.wysiwyg table {
	  width: auto !important;
	}

	.wysiwyg table td {
	  width: auto !important;
	  height: auto !important;
	}

	@keyframes spin {
	    from {transform:rotate(0deg);}
	    to {transform:rotate(360deg);}
	}

	span.loading img {
		top: -12px;
	}

	span.loading {
		vertical-align: middle;
	}

	.btn-menu {
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		margin: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		cursor: pointer;
		color: inherit;
	}

  video {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
  }







  *[class*="hdln-"] {

  	font-family: var(--base-font-2-light);

    --rise: calc(var(--max-font-size, 16) - var(--min-font-size, 16));
    --run: calc(var(--max-vw) - var(--min-vw));
    --slope: calc(var(--rise) / var(--run));

    --min-vw-px: calc(var(--min-vw) * 1px);
    --min-font-size-px: calc(var(--min-font-size) * 1px);

    --fluid-font-size-px:
      calc(
        var(--slope) * (100vw - var(--min-vw-px)) + var(--min-font-size-px)
      );

    --max-font-size-px: calc(var(--max-font-size) * 1px);

    font-size:
      clamp(
        var(--min-font-size-px),
        var(--fluid-font-size-px),
        var(--max-font-size-px)
      );

  }



  .hdln-130 {
    --min-font-size: 40;
    --max-font-size: 130;
    line-height: .94615384615384615384;
  }
  
  .hdln-80 {
    --min-font-size: 25;
    --max-font-size: 80;
    line-height: 1.1;
  }
  
  .hdln-78 {
    --min-font-size: 45;
    --max-font-size: 78;
    line-height: 1.1;
  }
  
  .hdln-50 {
    --min-font-size: 25;
    --max-font-size: 50;
    line-height: 1.28;
  }
  
  .hdln-36 {
    --min-font-size: 22;
    --max-font-size: 36;
    line-height: 1;
  }

	
	
  *[class*="cpy-"] {

  	font-family: var(--base-font-1-regular);

    --rise: calc(var(--max-font-size, 16) - var(--min-font-size, 16));
    --run: calc(var(--max-vw) - var(--min-vw));
    --slope: calc(var(--rise) / var(--run));

    --min-vw-px: calc(var(--min-vw) * 1px);
    --min-font-size-px: calc(var(--min-font-size) * 1px);

    --fluid-font-size-px:
      calc(
        var(--slope) * (100vw - var(--min-vw-px)) + var(--min-font-size-px)
      );

    --max-font-size-px: calc(var(--max-font-size) * 1px);

    font-size:
      clamp(
        var(--min-font-size-px),
        var(--fluid-font-size-px),
        var(--max-font-size-px)
      );

  }


  *[class*="cpy-"][class*="cpy-m"] {
    font-family: var(--base-font-1-medium);
  }
  
  *[class*="cpy-"][class*="cpy-b"] {
    font-family: var(--base-font-1-bold);
  }

  *[class*="cpy-"].kicker {
    text-transform: uppercase;
  }




  .cpy-30 {
    --min-font-size: 13;
    --max-font-size: 30;
  }
  
  .cpy-17 {
    --min-font-size: 13;
    --max-font-size: 17;
    line-height: 1.64705882352941176470;
  }
  
  .cpy-15 {
    --min-font-size: 13;
    --max-font-size: 15;
    line-height: 1.73333333333333333333;
  }
  
  .cpy-11 {
    --min-font-size: 11;
    --max-font-size: 11;
    line-height: 1;
  }





	/* PAGE TRANSITIONS */

	.transitioner {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		pointer-events: none;
		z-index: 998;
	}

	.transitioner::before {
		content: '';
		position: absolute;
		display: block;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: #fff;
		opacity: 0;
		z-index: 1;
		will-change: transform;
	}

	.barba-outer,
	.sn-pt-leave-active,
	.sn-pt-enter-active {
		transition: opacity;
		transition-duration: 1.2s;
		opacity: 1;
	}

	.sn-pt-leave-active .module,
	.sn-pt-enter-active .module,
	.barba-once-active .module {
		transition: opacity 1s, transform 1s;
		transition-timing-function: cubic-bezier(0.19,1,.22,1);
	}

	.sn-pt-leave-active .transitioner::before,
	.sn-pt-enter-active .transitioner::before,
	.barba-once-active .transition::before {
		transition: opacity .75s;
		transition-timing-function: cubic-bezier(0.19,1,.22,1);
	}	
	.sn-pt-enter-active .transitioner::before {
		transition-delay: .15s;
	}

	/* Starting state for leave */
	.sn-pt-leave .module {
		opacity: 1;
	}
	.sn-pt-leave .transitioner::before {
		opacity: 0;
	}

	/* Ending state for leave */
	.sn-pt-leave-to .module {
		opacity: 1;
	}
	.sn-pt-leave-to .transitioner::before {
		opacity: 1;
	}

	/* Starting state for enter */
	.sn-pt-enter .module,
	.barba-once .module {
		/*opacity: 0;*/
		transform: translateY(80px);
	}
	.sn-pt-enter .transitioner::before,
	.barba-once .transitioner::before {
		opacity: 1;
	}

	/* Ending state for enter */
	.sn-pt-enter-to .module,
	.barba-once-to .module {
		opacity: 1;
		transform: none;
	}
	.sn-pt-enter-to .transitioner::before,
	.barba-once-to .transitioner::before {
		opacity: 0;
	}













	/* ON SCREEN */


	/* clip left to right */
	*[data-ios] *[data-ios-item="a"] {
		opacity: 0;
		-webkit-clip-path: inset(0% 100% 0% 0%);
		clip-path: inset(0% 100% 0% 0%);
		transition: clip-path 1.5s, -webkit-clip-path 1.5s, opacity 1.5s;
		transition-timing-function: cubic-bezier(.075, .82, .165, 1);
		transition-delay: calc((var(--ios-item-index) * 100ms) + var(--ios-delay, 0ms));
		will-change: opacity;
	}

	*[data-ios].is-on-screen *[data-ios-item="a"] {
		opacity: 1;
		-webkit-clip-path: inset(0% 0% 0% 0%);
		clip-path: inset(0% 0% 0% 0%);
	}


	/* clip top to bottom */
	*[data-ios] *[data-ios-item="b"] {
		opacity: 0;
		-webkit-clip-path: inset(0% 0% 100% 0%);
		clip-path: inset(0% 0% 100% 0%);
		transition: clip-path 1.5s, -webkit-clip-path 1.5s, opacity 1.5s;
		transition-timing-function: cubic-bezier(.075, .82, .165, 1);
		transition-delay: calc((var(--ios-item-index) * 100ms) + var(--ios-delay, 0ms));
		will-change: opacity;
	}

	*[data-ios].is-on-screen *[data-ios-item="b"] {
		opacity: 1;
		-webkit-clip-path: inset(0% 0% 0% 0%);
		clip-path: inset(0% 0% 0% 0%);
	}


	/* pop randomly */
	*[data-ios] *[data-ios-item="c"] {
		transform: scale(0.8);
		opacity: 0;
		transition: transform 1s, opacity 1s;
		transition-timing-function: cubic-bezier(.075, .82, .165, 1);
		transition-delay: calc((var(--ios-random) * 30ms) + var(--ios-delay, 0ms));
		will-change: opacity;
	}

	*[data-ios].is-on-screen *[data-ios-item="c"] {
		opacity: 1;
		transform: none;
	}


	/* clip vertically from center */
	*[data-ios] *[data-ios-item="d"] {
		opacity: 0;
		-webkit-clip-path: inset(50% 0% 50% 0%);
		clip-path: inset(50% 0% 50% 0%);
		transition: clip-path 1.5s, -webkit-clip-path 1.5s, opacity 1.5s;
		transition-timing-function: cubic-bezier(.075, .82, .165, 1);
		transition-delay: calc((var(--ios-item-index) * 100ms) + var(--ios-delay, 0ms));
		will-change: opacity;
	}

	*[data-ios].is-on-screen *[data-ios-item="d"] {
		opacity: 1;
		-webkit-clip-path: inset(0% 0% 0% 0%);
		clip-path: inset(0% 0% 0% 0%);
	}


	/* move in from bottom */
	*[data-ios] *[data-ios-item="e"] {
		opacity: 0;
		transform: translateY(2vw);
		transition: opacity 1.5s, transform 1.5s;
		transition-timing-function: cubic-bezier(.075, .82, .165, 1);
		transition-delay: calc((var(--ios-item-index) * 100ms) + var(--ios-delay, 0ms));
		will-change: opacity;
	}

	*[data-ios].is-on-screen *[data-ios-item="e"] {
		opacity: 1;
		transform: none;
	}


	/* move in from right */
	*[data-ios] *[data-ios-item="f"] {
		opacity: 0;
		transform: translateX(20vw);
		transition: opacity 1.5s, transform 1.5s;
		transition-timing-function: cubic-bezier(.075, .82, .165, 1);
		transition-delay: calc((var(--ios-item-index) * 100ms) + var(--ios-delay, 0ms));
		will-change: opacity;
	}

	*[data-ios].is-on-screen *[data-ios-item="f"] {
		opacity: 1;
		transform: none;
	}







  *[data-basic-scroll="parallax-y"] {
    transform: translateY(calc(var(--parallax-y, 0) * var(--parallax-factor, 10vw)));
  }
  
  
  
  
  
  
  
  
  
  *[data-ios="list"] *[data-ios-item],
  *[data-ios="list"] .highlights-list li {
    opacity: 0;
    transform: translateY(4vw);
    pointer-events: none;
    transition: 1250ms var(--ttf-7);
    transition-property: opacity, transform;
    transition-delay: calc((var(--ios-item-index, 0)) * 75ms + 100ms);
  }
  
  *[data-ios="list"].is-on-screen *[data-ios-item],
  *[data-ios="list"].is-on-screen .highlights-list li {
    opacity: 1;
    transform: none;
    pointer-events: all;
  }



	/* BUTTONS */

	button, .btn, .lnk {

  	font-family: var(--base-font-1-medium);

    --rise: calc(var(--max-font-size, 16) - var(--min-font-size, 16));
    --run: calc(var(--max-vw) - var(--min-vw));
    --slope: calc(var(--rise) / var(--run));

    --min-vw-px: calc(var(--min-vw) * 1px);
    --min-font-size-px: calc(var(--min-font-size) * 1px);

    --fluid-font-size-px:
      calc(
        var(--slope) * (100vw - var(--min-vw-px)) + var(--min-font-size-px)
      );

    --max-font-size-px: calc(var(--max-font-size) * 1px);

    font-size:
      clamp(
        var(--min-font-size-px),
        var(--fluid-font-size-px),
        var(--max-font-size-px)
      );
    
		margin: 0;
		border: 0;
		padding: 0;
		border-radius: 0;
		box-shadow: none;
		background: transparent;
		display: inline-block;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		cursor: pointer;
    
	}
	
  
  
  
  
  
  
  
	.btn-a {
		
    --min-font-size: 12;
    --max-font-size: 14;
    
    text-transform: uppercase;
    border-radius: 100px;
    padding: 1.07142857142857142857em 1.57142857142857142857em;
    
    color: var(--color, var(--base-color-white));
    background-color: var(--background-color, transparent);
    
	}
  
  .btn-a.pink {
    --background-color: var(--base-color-pink);
    --color: var(--base-color-white);
  }
  
  .btn-a.green {
    --background-color: var(--base-color-green);
    --color: var(--base-color-white);
  }
  
  .btn-a.white.ghost {
    --background-color: transparent;
    --color: var(--base-color-white);
    border: 1px solid currentColor;
  }
  
  .btn-a.black.ghost {
    --background-color: transparent;
    --color: var(--base-color-black);
    border: 1px solid currentColor;
  }
  
  .btn-a * {
    display: block;
  }
  
  .btn-a span.wrap {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    gap: 0px 2.11764705882352941176em;
  }
  
  .btn-a span.icon {
    /*margin-block: -1em;*/
  }

  .btn-a[data-icon="arrow--right"] svg {
    width: 1.71428571428571428571em;
    height: auto;
  }

  .btn-a[data-icon="download"] svg {
    width: 1em;
    height: auto;
  }








  .btn-more {
    --size: max(40px, calc(50 * var(--px)));
    width: var(--size);
    height: var(--size);
    display: block;
    border-radius: 50%;
    position: relative;
    background: var(--base-color-white);
    transition: 150ms;
    transition-property: background, color;
  }
  
  .btn-more span.label {
    position: absolute;
    top: 0;
    left: -100000em;
  }
  
  .btn-more svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(var(--size) * 0.36);
    height: auto;
    display: block;
    transform: translate(-50%, -50%);
  }
  
  .btn-more svg path {
    fill: currentColor;
    transition: fill 150ms;
  }
  
  
  @media (hover: hover) {
    
    .btn-more:is(:focus, :hover),
    a:is(:focus, :hover) .btn-more {
      background: var(--base-color-black);
      color: var(--base-color-white);
    }
    
  }
  
  
  
  
  
  
  
  
	.btn-circle-small {
    position: relative;
	  --size: 20px;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    border: 1px solid var(--base-color-white);
    background: transparent;
    color: var(--base-color-white);
    transition: 250ms var(--ttf-2);
    transition-property: color, background;
	}
  
  
  @media (hover: hover) {
    .btn-circle-small:hover {
      background: var(--base-color-white);
      color: var(--base-color-green);
    }
  }
  
  .btn-circle-small svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: var(--icon-width-px);
  }
  
  .btn-circle-small svg path {
    fill: currentColor;
    transition: fill 250ms var(--ttf-2);
  }
  
  .btn-circle-small span.label {
    position: absolute;
    top: -10000px;
    left: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    display: block;
  }
  
  .btn-circle-small[disabled] {
    opacity: 0.25;
    pointer-events: none;
    cursor: default;
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  .btn-icon-only,
  .btn-circled {
    position: relative;
  }
  
  .btn-icon-only *,
  .btn-circled * {
    display: block;
  }
  
  .btn-icon-only span.label,
  .btn-circled span.label {
    position: absolute;
    top: 0;
    left: -100000em;
    width: 1px;
    height: 1px;
    overflow: hidden;
    display: block;
  }
  
  .btn-icon-only[data-icon="eye"] svg {
    width: 1.52941176470588235294em;
    height: auto;
  }
  
  .btn-icon-only[data-icon="email"] svg {
    width: 1.17647058823529411764em;
    height: auto;
  }
  
  
  
  
  
  
  
  .btn-circled {
    --size: max(40px, calc(50 * var(--px)));
    width: var(--size);
    height: var(--size);
    border: 1px solid currentColor;
    border-radius: 50%;
    position: relative;
    color: rgba(0,0,0,0.7);
  }

  .btn-circled svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  
  .btn-circled path {
    fill: currentColor;
  }

	/* FORMS */
  
  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 {
    -webkit-text-fill-color: var(--color) !important;
    -webkit-box-shadow: 0 0 0px 1000px var(--background-color) inset !important;
    transition: background-color 5000s ease-in-out 0s !important;
  }
  
  ::-webkit-input-placeholder {
    color: var(--color);
  }
  ::placeholder {
    color: var(--color);
  }

	.styled-select,
	.styled-search {
		position: relative;
	}

	.styled-select select,
	li.search input {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
	}

	.styled-select select {
		cursor: pointer;
	}








  .form-list li.input input,
  div.range input,
  .form-list li.textarea textarea,
  .form-list li.select select,
  input.step-input {
    
  	font-family: var(--base-font-1-regular);

    --rise: calc(var(--max-font-size, 16) - var(--min-font-size, 16));
    --run: calc(var(--max-vw) - var(--min-vw));
    --slope: calc(var(--rise) / var(--run));

    --min-vw-px: calc(var(--min-vw) * 1px);
    --min-font-size-px: calc(var(--min-font-size) * 1px);

    --fluid-font-size-px:
      calc(
        var(--slope) * (100vw - var(--min-vw-px)) + var(--min-font-size-px)
      );

    --max-font-size-px: calc(var(--max-font-size) * 1px);

    font-size:
      clamp(
        var(--min-font-size-px),
        var(--fluid-font-size-px),
        var(--max-font-size-px)
      );
      
    --min-font-size: 16;
    --max-font-size: 17;
    
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    box-sizing: border-box;
    width: 100%;
    border: 0;
    border-radius: 0;
    padding: 1.2em .7em .6em;
    padding-left: var(--padding-left);
    margin: 0;
    box-shadow: none;
    color: var(--base-color-white);
    --color: var(--base-color-white);
    background: var(--base-color-green);
    --background-color: var(--base-color-green);
    transition: box-shadow 250ms;
    border-bottom: 1px solid var(--base-color-white);
    
  }
  
  input.step-input {
    padding: 0.9em .7em !important;
    text-align: center;
  }
  
  
  .form-list li.input input:is(:focus, :active),
  div.range input:is(:focus, :active),
  .form-list li.textarea textarea:is(:focus, :active),
  .form-list li.select select:is(:focus, :active),
  input.step-input:is(:focus, :active) {
    outline: 0;
  }
  
  
  
  
  
  
  
  .styled-select {
    position: relative;
  }
  
  .styled-select span[aria-hidden] {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
  }
  
  .styled-select svg {
    width: max(10px, calc(var(--icon-width) * var(--px)));
    height: auto;
    display: block;
  }
  
  .form-list li .styled-select select {
    /*padding-top: .6em;*/
  }
  
  
  
  
  
  
  
  
  .styled-checkbox,
  li.gdpr .wpcf7-list-item {
    position: relative;
    display: inline-block;
  }
  
  .styled-checkbox > span,
  li.gdpr .wpcf7-list-item .checkbox-wrap > span {
    display: block;
    position: absolute;
    inset: 4px;
    z-index: 2;
    background: var(--base-color-pink);
    opacity: 0;
    transition: opacity 250ms var(--ttf-2);
    pointer-events: none;
  }
  
  .styled-checkbox input:checked + span,
  li.gdpr .wpcf7-list-item .checkbox-wrap input:checked + span {
    opacity: 1;
  }
  
  .styled-checkbox input,
  li.gdpr .wpcf7-list-item .checkbox-wrap input {
    appearance: none;
    display: block;
    --size: 20px;
    width: var(--size);
    height: var(--size);
    border: 1px solid var(--base-color-white);
    background: transparent;
    cursor: pointer;
  }
  
  
  
  
  
  
  
  
  .form-list {
    display: flex;
    flex-flow: column nowrap;
    gap: 1.35294117647058823529em 0;
  }
  
  .form-list li.select label {
    display: none;
  }
  
  
  
  
  
  
  
  
  
  
  .checkbox-list {
    display: flex;
    flex-flow: column nowrap;
    gap: 8px 0px;
  }
  
  .checkbox-list > li,
  div.range .row {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    user-select: none;
  }
  
  .checkbox-list label {
    cursor: pointer;
    display: flex;
    flex-flow: row nowrap;
    gap: 0 .70588235294117647058em;
    align-items: center;
    user-select: none;
  }
  
  .checkbox-list > li .styled-checkbox,
  div.range .row .buttons {
    flex-shrink: 0;
    margin-right: .70588235294117647058em;
  }
  
  .checkbox-list > li .styled-checkbox {
    margin-right: 0;
  }
  
  .checkbox-list > li .label {
    width: 100%;
  }
  
  div.range .row .buttons {
    display: flex;
    flex-flow: row nowrap;
    gap: 0px 10px;
  }
  
  div.range {
    display: flex;
    flex-flow: column nowrap;
    gap: 4px 0;
  }
  
  
  
  
  
  
  
  
  
  
  input::placeholder {
    color: transparent;
  }
  
  li.float-label {
    position: relative;
  }
  
  li.float-label label {
    display: block;
    position: absolute;
    user-select: none;
    pointer-events: none;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    transition: transform 250ms var(--ttf-2);
  }
  
  li.float-label:has(input:focus) label,
  li.float-label:has(input:not(:placeholder-shown)) label {
    transform: translateY(calc(-100% - 0.1em)) scale(0.75);
    transform-origin: left top;
  }
  
  
  
  
  
  
  
  
  .form-list .gdpr .col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 1em;
    line-height: 1.3;
  }
  
  .form-list .gdpr .col-set a {
    text-decoration: underline;
  }
  
  @media (hover: hover) {
    .form-list .gdpr .col-set a:is(:focus, :hover) {
      text-decoration: none;
    }
  }
  
  
  
  
  
  
  
  
  .screen-reader-response {
    display: none;
  }
  
  .response-wrapper.top > div {
    margin-bottom: 2em;
  }
  
  .response-wrapper.bottom {
    display: none;
  }
  
  .wpcf7-not-valid-tip {
    display: none;
  }
  
  .form-list > li:has(.wpcf7-not-valid-tip) :is(input, textarea, select) {
    border-color: var(--base-color-pink);
  }
  
  
  
  
  
  
  
  
  @media (max-width: 500px) {
    
    .checkbox-list {
      gap: 15px 0;
    }
    
    div.range {
      gap: 15px 0;
    }
    
  }







  :root {
    --header-padding-top: max(20px, calc(94 * var(--px)));
  }





  header.main {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
  }
  
  header.main > .inner {
    padding-top: var(--header-padding-top);
  }
  
  
  
  
  
  
  
  
  .site-title {
    width: max(120px, calc(246 * var(--px)));
  }
  
  .site-title svg {
    display: block;
    width: 100%;
    height: auto;
  }
  
  .site-title--header path {
    fill: var(--base-color-white);
  }
  
  
  
  
  
  
  
  
  
  
  
  div.menu-button,
  div.inquiry-button {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    pointer-events: none;
    z-index: 105;
    text-align: right;
    mix-blend-mode: difference;
  }
  
  div.inquiry-button {
    right: calc(max(40px, calc(49 * var(--px))) + 20px + var(--page-padding-right));
  }
  
  div.inquiry-button .btn {
    height: max(40px, calc(49 * var(--px)));
    padding-block: 0;
    box-sizing: border-box;
    display: block;
    line-height: max(38px, calc(47 * var(--px)));
  }
  
  div.menu-button + div.menu-button,
  div.inquiry-button + div.inquiry-button {
    mix-blend-mode: overlay;
    pointer-events: none;
  }
  
  div.menu-button :is(a, button),
  div.inquiry-button :is(a, button) {
    pointer-events: all;
  }
  
  div.menu-button > .inner,
  div.inquiry-button > .inner {
    padding-inline: var(--page-padding-left);
    padding-top: var(--header-padding-top);
    display: inline-block;
  }
  
  div.inquiry-button > .inner {
    padding-right: 0;
  }
  
  div.menu-button > .inner > .wrap,
  div.inquiry-button > .inner > .wrap {
    position: relative;
  }
  
  .btn-burger {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    --size: max(40px, calc(49 * var(--px)));
    width: var(--size);
    height: var(--size);
    border: 1px solid var(--base-color-white);
    border-radius: 50%;
  }
  
  .btn-burger .bar {
    display: block;
    height: 1px;
    width: calc(var(--size) * 0.42);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-3px);
    background: var(--base-color-white);
    transition: transform 250ms var(--ttf-2);
    will-change: transform;
  }
  
  .btn-burger .bar-2 {
    transform: translateX(-50%) translateY(3px);
  }
  
  body.menu .btn-burger .bar-1,
  .btn-burger.btn-close .bar-1 {
    transform: translateX(-50%) translateY(0px) rotate(-45deg);
  }
  
  body.menu .btn-burger .bar-2,
  .btn-burger.btn-close .bar-2 {
    transform: translateX(-50%) translateY(0px) rotate(45deg);
  }
  
  @media (max-width: 500px) {
    
    div.inquiry-button {
      position: absolute;
      transition: opacity 500ms;
    }
    
    body.menu div.inquiry-button {
      opacity: 0;
    }
    
    body.menu div.inquiry-button .btn {
      pointer-events: none !important;
    }
    
  }
  
  
  
  
  
  
  
  
  
  
  
  
  div.flyout {
    position: fixed;
    inset: 0;
    z-index: 102;
    color: var(--base-color-white);
    overflow: auto;
    visibility: hidden;
    opacity: 0;
    transition: 
      opacity 250ms 0ms,
      visibility 0ms 250ms;
  }
  
  body.menu div.flyout {
    visibility: visible;
    opacity: 1;
    transition: 
      opacity 0ms 0ms,
      visibility 0ms 0ms;
  }
  
  div.flyout::after {
    content: '';
    display: block;
    position: fixed;
    inset: 0;
    z-index: 1;
    background: var(--base-color-green);
    transform: scaleY(0);
    transform-origin: center top;
    transition: transform 0ms var(--ttf-4) 250ms;
  }
  
  body.menu div.flyout::after {
    transform: none;
    transition: transform 750ms var(--ttf-4) 0ms;
  }
  
  div.flyout > .inner {
    padding-top: var(--header-padding-top);
    padding-bottom: calc(var(--header-padding-top) * 2);
    position: relative;
    z-index: 3;
    display: flex;
    flex-flow: column nowrap;
    gap: max(30px, calc(90 * var(--px))) 0;
  }
  
  div.flyout nav.header {
    margin-left: auto;
  }
  
  div.flyout nav.header .menu {
    display: flex;
    flex-flow: row nowrap;
  }
  
  div.flyout nav.header .menu > li {
    opacity: 0;
    transform: translateY(5vw);
    transition: 1000ms var(--ttf-2) calc((var(--index, 0) * 50ms) + 200ms);
    transition-property: transform, opacity;
  }
  
  body.menu div.flyout nav.header .menu > li {
    opacity: 1;
    transform: none;
  }
  
  div.flyout nav.header .menu > li > a {
    display: inline-block;
  }
  
  div.flyout nav.header .menu > li:not(:last-child) > a {
    margin-right: calc(110 * var(--px));
  }
  
  div.flyout nav.header .sub-menu {
    color: var(--base-color-black);
    font-family: var(--base-font-1-regular);
    font-size: 1.0625rem;
    text-transform: uppercase;
    padding-top: 2.41176470588235294117em;
    display: flex;
    flex-flow: column nowrap;
    gap: 1.5em 0;
  }
  
  div.flyout nav.header .sub-menu a > span {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 1.23529411764705882352em;
    align-items: center;
  }
  
  div.flyout nav.header .sub-menu a > span::before {
    content: '';
    display: block;
    width: 2.64705882352941176470em;
    aspect-ratio: 1;
    background: var(--background-url, url(/content/themes/heyc/imgs/signet--passagen.svg)) no-repeat center center;
    background-size: contain;
    flex-shrink: 0;
  }
  
  div.flyout nav.header .sub-menu .btn-house-garden {
    --background-url: url(/content/themes/heyc/imgs/signet--garden.svg);
  }
  
  div.flyout nav.header .sub-menu .btn-house-light {
    --background-url: url(/content/themes/heyc/imgs/signet--light.svg);
  }
  
  div.flyout nav.header .sub-menu .btn-house-urban {
    --background-url: url(/content/themes/heyc/imgs/signet--urban.svg);
  }
  
  div.flyout nav.header .sub-menu .btn-house-icon {
    --background-url: url(/content/themes/heyc/imgs/signet--icon.svg);
  }
  
  div.flyout div.background-shape {
    position: fixed;
    inset: 0;
    z-index: 2;
    overflow: hidden;
    opacity: 0;
    transition: opacity 1000ms var(--ttf-7) 250ms;
  }
  
  body.menu div.flyout div.background-shape {
    opacity: 1;
  }
  
  div.flyout div.background-shape svg {
    display: block;
    position: absolute;
    width: calc(1875 * var(--px));
    height: auto;
    top: calc(191 * var(--px));
    left: calc(-50 * var(--px));
    opacity: 0.07;
  }
  
  div.flyout .site-title {
    transition: opacity 1000ms var(--ttf-7) 250ms;
    opacity: 0;
  }
  
  body.menu div.flyout .site-title {
    opacity: 1;
  }
  
  div.flyout nav.header a:is([href*="urban"], [href*="light"]) {
    opacity: 0.25;
    pointer-events: none;
    interactivity: inert;
  }
  
  
  
  
  
  
  
  
  
  @media (max-width: 1000px) {
    
    div.flyout nav.header {
      margin-left: var(--page-padding-left-l);
    }
    
    div.flyout nav.header .menu {
      flex-flow: column nowrap;
      gap: 0.6em 0;
    }
    
    div.flyout nav.header .sub-menu {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      padding-top: 1em;
      padding-bottom: 2em;
      font-size: 13px;
    }
    
  }
  
  
  
  
  
  @media (max-width: 500px) {
    
    div.flyout nav.header {
      font-size: 28px;
    }
  
    div.flyout nav.header .sub-menu {
      display: flex;
      flex-flow: column nowrap;
      gap: 17px;
      font-size: 12px;
      padding-left: 30px;
      padding-top: 18px;
      padding-bottom: 10px;
    }
    
    div.flyout nav.header .sub-menu a > span::before {
      width: 30px;
    }
    
    div.flyout nav.header .sub-menu a > span {
      gap: 0 16px;
    }
  
  }
  





  footer.main {
    --col-1-width: calc(489 * var(--px));
    background: var(--base-color-white);
  }

  footer.main > .inner {
    padding-block: max(96px, calc(155 * var(--px))) max(38px, calc(60 * var(--px)));
  }
  
  
  
  
  
  
  
  footer.main div[class*="row-"] {
    display: flex;
    flex-flow: row nowrap;
  }
  
  footer.main div.row-2 {
    margin-top: max(109px, calc(295 * var(--px)));
  }
  
  footer.main div.col-1 {
    width: var(--col-1-width);
    flex-shrink: 0;
  }
  
  
  
  
  
  
  
  
  footer.main div.row-2 div.col-2 {
    display: flex;
    flex-flow: row nowrap;
    width: 100%;
  }
  
  nav.footer .menu {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 2.11764705882352941176em;
  }
  
  .back-to-top {
    margin-left: auto;
  }
  
  
  
  
  
  
  footer.main address {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(146 * var(--px));
  }
  
  footer.main address .wysiwyg {
    display: flex;
    flex-flow: column nowrap;
  }
  
  footer.main address .headline {
    margin-bottom: 2.11764705882352941176em;
  }
  
  footer.main address .wysiwyg .offset {
    margin-top: auto;
  }
  
  
  
  
  
  
  
  
  
  @media (max-width: 1000px) {
    
    footer.main div[class*="row-1"] {
      flex-flow: column nowrap;
      gap: 42px 0;
    }
    
    footer.main div.row-2 div.col-1 {
      display: none;
    }
    
  }
  
  
  
  @media (max-width: 750px) {
    
    nav.footer .menu {
      flex-flow: column nowrap;
      gap: 0;
    }
    
    footer.main div.row-2 div.col-2 {
      align-items: flex-end;
    }
    
    footer.main address .headline {
      margin-bottom: 1em;
    }
    
  }
  
  
  
  @media (max-width: 500px) {
    
    footer.main address {
      flex-flow: column nowrap;
      gap: 3em 0;
    }
    
  }/*
Theme Name: Hey C
Author: SUPERNOVÆ
Author URI: https://www.supernov.ae/
Version: 2025
*/





@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {

}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {

  * {
      background: transparent !important;
      color: #000 !important;
      box-shadow: none !important;
      text-shadow: none !important;
  }

  a,
  a:visited {
      text-decoration: underline;
  }

  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
      content: "";
  }

  pre,
  blockquote {
      border: 1px solid #999;
      page-break-inside: avoid;
  }

  thead {
      display: table-header-group;
  }

  tr,
  img {
      page-break-inside: avoid;
  }

  img {
      max-width: 100% !important;
  }

  @page {
      margin: 1cm;
  }

  p,
  h2,
  h3 {
      orphans: 3;
      widows: 3;
  }

  h2,
  h3 {
      page-break-after: avoid;
  }
  
  .cookie-bar,
  .btn-wp-edit {
    display: none !important;
  }
  
  header.main,
  footer.main {
    display: none;
  }
    
}




  .cell--intro .headline {
    margin-bottom: .88235294117647058823em;
  }

  .cell--intro .large-copy {
    max-width: 11.125em;
    margin-bottom: 0.5em;
  }

  .cell--intro .row-2,
  .cell--intro .row-3 {
    margin-left: calc(133 * var(--px));
  }

  .cell--intro .row-3 {
    margin-top: calc(88 * var(--px));
  }

  .cell--intro .wysiwyg {
    max-width: 36.70588235294117647058em;
  }
  
  @media (max-width: 500px) {
    
    .cell--intro .row-2, .cell--intro .row-3 {
      margin-left: 0;
    }
    
  }
  
  
  
  
  
  
  
  
  
  
  :is(.cell--highlights, .cell--distances) {
    width: 100%;
    max-width: calc(681 * var(--px));
    margin-left: auto;
  }
  
  .cell--distances {
    max-width: calc(447 * var(--px));
  }
  
  :is(.cell--highlights, .cell--distances) .headline {
    margin-bottom: 1.17647058823529411764em;
  }
  
  :is(.cell--highlights, .cell--distances) ul li {
    border-bottom: 1px solid currentColor;
    padding-block: .88235294117647058823em;
    padding-inline: 2.17647058823529411764em var(--page-padding-right);
    position: relative;
  }
  
  :is(.cell--highlights, .cell--distances) ul li:first-child {
    border-top: 1px solid currentColor;
  }
  
  :is(.cell--highlights, .cell--distances) ul li:nth-child(1) { --ios-item-index: 1; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(2) { --ios-item-index: 2; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(3) { --ios-item-index: 3; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(4) { --ios-item-index: 4; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(5) { --ios-item-index: 5; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(6) { --ios-item-index: 6; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(7) { --ios-item-index: 7; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(8) { --ios-item-index: 8; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(9) { --ios-item-index: 9; }
  :is(.cell--highlights, .cell--distances) ul li:nth-child(10) { --ios-item-index: 10; }
  
  .cell--distances ul li {
    padding-inline: 0;
    display: flex;
    flex-flow: row nowrap;
    gap: 0 1em;
  }
  
  .cell--distances ul li span.distance {
    display: block;
    text-align: right;
    min-width: 3.88235294117647058823em;
    color: var(--base-color-pink);
  }
  
  .cell--highlights ul li::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 1.1em;
    width: 22px;
    height: auto;
    aspect-ratio: 1;
    background: url(/content/themes/heyc/imgs/highlights-bullet.svg) no-repeat center center;
    background-size: contain;
  }
  
  .cell--highlights.white ul li::before {
    background: url(/content/themes/heyc/imgs/highlights-bullet--white.svg) no-repeat center center;
    background-size: contain;
  }
  
  
  
  
  
  
  .cell--facts span.label {
    text-transform: uppercase;
    display: block;
  }
  
  .cell--facts .cpy-15 {
    --min-font-size: 11;
  }
  
  .cell--facts span.value {
    display: block;
  }
  
  .cell--facts .facts-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: .7em 0.2em;
  }
  
  
  
  
  
  
  
  .cell--gallery {
    --gap: max(14px, calc(21 * var(--px)));
    display: flex;
    flex-flow: row nowrap;
    gap: var(--gap);
    width: 100%;
    max-width: max(500px, calc(1226 * var(--px)));
  }
  
  .cell--gallery.wide {
    flex-flow: row-reverse nowrap;
  }
  
  .cell--gallery.narrow {
    max-width: max(500px, calc(1100 * var(--px)));
  }
  
  .cell--gallery .gallery-nav {
    width: max(60px, calc(132 * var(--px)));
    flex-shrink: 0;
  }
  
  .cell--gallery .gallery-nav ul {
    display: flex;
    flex-flow: column nowrap;
    gap: var(--gap);
  }
  
  .cell--gallery .gallery-nav ul > li {
    transform: scale(0.9);
    opacity: 0;
    transition: 500ms var(--ttf-7) calc((var(--ios-item-index, 0) * 250ms) + 200ms);
  }
  
  .cell--gallery.is-on-screen .gallery-nav ul > li {
    opacity: 1;
    transform: none;
  }
  
  .cell--gallery .gallery-images {
    width: 100%;
    position: relative;
    aspect-ratio: 946 / 710;
    overflow: hidden;
  }
  
  .cell--gallery .gallery-images li {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    transition: opacity 500ms var(--ttf-2);
  }
  
  .cell--gallery .gallery-images li.current {
    z-index: 2;
    opacity: 1;
  }
  
  
  @media (max-width: 500px) {
    
    .cell--gallery {
      flex-flow: column nowrap !important;
    }
    
    .cell--gallery .gallery-nav {
      width: 100%;
    }
    
    .cell--gallery .gallery-nav ul {
      display: grid;
      grid-auto-flow: column;
    }
    
  }

  /* CUSTOM POINTER */

  *[data-custom-pointer] {
  	cursor: none;
  }

  #pointer-overlay {
  	position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    pointer-events: none;
    --pointer-size: max(70px, min(100px, calc(100 * var(--base-unit))));
  }

  #pointer-overlay[data-pointer-type="close"] {
    --pointer-size: min(70px, calc(70 * var(--base-unit)));
  }

  #pointer-overlay svg {
    display: block;
  	width: var(--pointer-size);
  	height: var(--pointer-size);
  }

  #pointer-overlay svg path {
    fill: var(--base-color-pink);
  }

  #pointer-overlay > div {
  	position: absolute;
  	top: calc(var(--pointer-size) / -2);
  	left: calc(var(--pointer-size) / -2);
  	width: var(--pointer-size);
  	height: var(--pointer-size);
  	cursor: none;
  	transform: translate(var(--pointer-left, 0px), var(--pointer-top, 0px)) rotate(var(--pointer-angle, 0deg));
  	transition: transform 75ms, opacity 250ms;
  }

  #pointer-overlay[data-pointer-type="close"] > div {
    transform: translate(var(--pointer-left, 0px), var(--pointer-top, 0px));
  }

  #pointer-overlay > div > div {
  	width: 100%;
  	height: 100%;
  	transition: transform 250ms, opacity 250ms;
  	transition-timing-function: var(--ttf);
  	opacity: 0;
  	transform: scale(0.5);
  }

  #pointer-overlay > div > div > div {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: transform 150ms;
  }

  #pointer-overlay[data-pointer-type="arrow-left"] > div > div .arrow,
  #pointer-overlay[data-pointer-type="arrow-right"] > div > div .arrow {
    opacity: 1;
  }

  #pointer-overlay[data-pointer-type="arrow-left"] > div > div .arrow {
    transform: rotateY(-180deg);
  }

  #pointer-overlay[data-pointer-type="close"] > div > div .close {
    opacity: 1;
  }

  #pointer-overlay[data-state="on"] > div > div {
  	opacity: 1;
  	transform: none;
  }





  :root {
    
    --module-margin-100: max(60px, calc(100 * var(--px)));
    
    --inner-padding-60: max(60px, calc(60 * var(--px)));
    --inner-padding-140: max(60px, calc(140 * var(--px)));
    --inner-padding-180: max(60px, calc(180 * var(--px)));
    --inner-padding-220: max(60px, calc(220 * var(--px)));
    --inner-padding-350: max(60px, calc(350 * var(--px)));
    
  }
  
  .module.mrgn-100 {
    margin-bottom: var(--module-margin-100);
  }
  
  .module.mrgn-0-if-last:last-child {
    margin-bottom: 0;
  }
  
  
  
  
  
  .btn-set {
    margin-top: max(30px, calc(45 * var(--px)));
  }
  
  .btn-set.multiple {
    display: flex;
    flex-flow: column nowrap;
    gap: max(23px, calc(34 * var(--px))) 0;
  }


  .sn-slider {
    --gap: calc(40 * var(--px));
    user-select: none;
  }
  
  .sn-slider-track {
    width: 100%;
    position: relative;
		overflow: hidden;
		overflow-x: scroll;
		-ms-overflow-style: none;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
  }
  
	.sn-slider-track::-webkit-scrollbar {
		display: none;
	}
  
  
  
  
  .sn-slider-slides {
    display: flex;
    flex-flow: row nowrap;
    width: max-content;
    padding-left: var(--page-padding-left);
    padding-right: var(--page-padding-right);
    gap: 0px var(--gap);
  }
  
  .sn-slider-slide {
    width: max(312px, calc(540 * var(--px)));
    scroll-margin-inline-start: var(--page-padding-left);
  }
  
  .sn-slider:not(.is-scrolling) .sn-slider-slide {
    scroll-snap-align: start;
  }
  
  .sn-slider:not(.is-scrolling) .sn-slider-track {
    scroll-snap-type: x mandatory;
  }
  
  
  
  
  .sn-slider-progress {
    position: relative;
    height: 14px;
    pointer-events: none;
  }
  
  .sn-slider-progress span {
    display: block;
    position: absolute;
    left: 0;
    height: 100%;
    width: var(--progress, 0%);
    background: var(--base-color-black);
  }
  
  
  


  
  .sn-slider-wrap {
    position: relative;
    --transition-duration: 1000;
  }
  
  .sn-slider:not(.sn-slider-ghost) {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    overflow: hidden;
  }
  
  .sn-slider:not(.sn-slider-ghost) .sn-slider-track {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateX(var(--sn-slider-scroll-left, 0px));
    width: auto;
    will-change: transform;
    transition: transform calc(var(--transition-duration, 0) * 1ms) var(--ttf-5);
  }
  
  @media (hover: none) {
    .sn-slider:not(.sn-slider-ghost) .sn-slider-track {
      transition: none;
    }
  }
  
  .sn-slider-wrap.is-wheeling .sn-slider:not(.sn-slider-ghost) .sn-slider-track {
    --transition-duration: 500;
    transition: transform calc(var(--transition-duration, 0) * 1ms) var(--ttf-5);
  }
  
  .sn-slider-ghost {
    position: relative;
    z-index: 2;
    opacity: 0;
  }


  .zoom-image {
    position: relative;
    overflow: hidden;
    display: block;
  }
  
  .zoom-image img,
  .zoom-image video {
    scale: 1.4;
    opacity: 0;
    translate: 0px calc(var(--parallax-y, 0) * 10%);
    transition: scale 5s 0s var(--ttf-7), opacity 5s 0s var(--ttf-7), translate .5s 0s var(--ttf-7);
  }
  
  .is-on-screen .zoom-image img,
  .is-on-screen .zoom-image video {
    scale: 1.2;
    opacity: 1;
  }
  
  
  @media (max-width: 500px) {
    .is-on-screen .zoom-image img,
    .is-on-screen .zoom-image video {
      translate: 0px 0px;
      scale: 1;
    }
  }






  .module-architecture {
    position: relative;
  }

  .module-architecture .module-inner {
    padding-block: var(--inner-padding-60) calc(530 * var(--px));
    position: relative;
    z-index: 2;
  }
  
  
  
  
  
  

  .module-architecture .module-wrap > .row-1 {
    margin-bottom: calc(113 * var(--px));
  }
  
  
  
  
  
  
  
  
  .module-architecture .module-wrap > .row-2 {
    margin-right: calc(var(--page-padding-left) * -1);
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
  }
  
  
  
  
  
  
  
  .module-architecture .module-wrap > .row-3 {
    margin-bottom: calc(64 * var(--px));
    margin-top: calc(-54 * var(--px));
    padding-left: calc((143 * var(--px)) - var(--page-padding-left));
  }
  
  .module-architecture .cell--facts .facts-grid {
    max-width: 8.05128205128205128205em;
  }
  
  
  
  
  
  
  
  
  
  .module-architecture .module-wrap > .row-4 {
    margin-right: calc(var(--page-padding-left) * -1);
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  .module-architecture .dots {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
  }
  
  .module-architecture .dot {
    position: absolute;
    aspect-ratio: 1;
    width: max(98px, calc(303 * var(--px)));
    background: var(--base-color-pink);
    border-radius: 50%;
    overflow: hidden;
  }
  
  .module-architecture .dot-1 {
    bottom: calc(648 * var(--px));
    left: calc(488 * var(--px));
  }
  
  .module-architecture .dot-2 {
    bottom: calc(1053 * var(--px));
    left: calc(892 * var(--px));
  }
  
  
  
  
  
  

  
  
  
  
  
  
  
  @media (max-width: 1000px) {
    
    .module-architecture .module-wrap > .row-3 {
      margin-top: 50px;
      margin-bottom: 110px;
    }
  
    .module-architecture :is(.cell--highlights, .cell--distances) {
      max-width: 450px;
    }
    
  }
  
  
  
  
  @media (max-width: 500px) {
    
    .module-architecture .module-wrap > .row-2,
    .module-architecture .module-wrap > .row-4 {
      margin-right: 0;
    }
    
    .module-architecture :is(.cell--highlights, .cell--distances) {
      margin-left: 0;
    }
    
  }




  .module-community {
    position: relative;
  }

  .module-community .module-inner {
    padding-block: max(74px, var(--inner-padding-220)) 0;
    position: relative;
    z-index: 2;
  }
  
  .module-community .module-wrap {
    display: flex;
    flex-flow: column nowrap;
    gap: calc(120 * var(--px)) 0;
  }
  
  
  
  
  
  
  .module-community .module-wrap > .row-1 {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
  }
  
  
  
  
  
  
  
  .module-community .module-wrap > .row-2 {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
  }
  
  .module-community .row-2 .col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(267 * var(--px));
    align-items: center;
    max-width: calc(1473 * var(--px));
  }
  
  .module-community .row-2 .col-set .col-1 {
    width: calc(802 * var(--px));
    flex-shrink: 0;
  }
  
  .module-community .row-2 .col-set .col-2 {
    width: 100%;
  }
  
  
  
  
  
  
  
  .module-community .dots {
    position: absolute;
    inset: 0;
    z-index: 1;
  }
  
  .module-community .dot {
    position: absolute;
    aspect-ratio: 1;
    width: max(164px, calc(344 * var(--px)));
    background: var(--base-color-pink);
    border-radius: 50%;
    overflow: hidden;
  }
  
  .module-community .dot-1 {
    top: calc(98 * var(--px));
    left: calc(333 * var(--px));
  }
  
  .module-community .dot-2 {
    top: calc(556 * var(--px));
    left: calc(-125 * var(--px));
  }
  
  
  
  
  
  
  
  
  @media (max-width: 700px) {
    
    .module-community .dot-1 {
      top: 74px;
      left: auto;
      right: 75px;
    }
    
    .module-community .module-wrap > .row-1 {
      padding-top: 205px;
    }
    
  }
  
  
  
  
  @media (max-width: 500px) {
    
    .module-community .dot-2 {
      top: 300px;
      left: -83px;
    }
    
    .module-community .row-2 .col-set {
      flex-flow: column nowrap;
      gap: 38px;
      max-width: none;
      align-items: flex-start;
      width: 100%;
    }
    
    .module-community .row-2 .col-set .col-1 {
      width: calc(290 * var(--px-mobile));
    }
    
    .module-community .row-2 .col-set .col-2 {
      width: calc(214 * var(--px-mobile));
      margin-left: auto;
      margin-right: calc(var(--page-padding-left) * -1);
    }
    
  }




  body.view-overlay footer.main,
  body.view-overlay header.main {
    display: none;
  }
  
  body.view-overlay .module-contact {
    display: none;
  }
  
  .module-contact .intro-copy .wysiwyg {
    margin-bottom: 2.4em;
  }
  
  .module-contact .form-wrap {
    display: flex;
    flex-flow: column nowrap;
    gap: calc(80 * var(--px)) 0;
  }
  
  .module-contact .form-row-1 {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 var(--page-padding-left);
    width: 100%;
  }
  
  .module-contact .form-row-1 .form-list--data {
    width: calc(402 * var(--px));
    flex-shrink: 0;
  }
  
  .module-contact .form-row-1 .form-list--message {
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
  }
  
  .module-contact .form-row-1 .form-list--message li.textarea {
    flex-grow: 1;
    display: flex;
    flex-flow: column nowrap;
  }
  
  .module-contact .form-row-1 .form-list--message li.textarea > div,
  .module-contact .form-row-1 .form-list--message li.textarea > div > span {
    flex-grow: 1;
    display: flex;
  }
  
  .module-contact .form-row-1 .form-list--message li.textarea textarea {
    flex-grow: 1;
  }
  
  .module-contact .form-row-2 .form-list--submit {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 var(--page-padding-left);
  }
  
  
  
  
  
  
  
  #contact-overlay {
    position: fixed;
    inset: 0;
    display: block;
    z-index: 1000;
    color: var(--base-color-white);
    visibility: hidden;
    transition: 750ms var(--ttf-7);
    transition-property: visibility;
    overflow: hidden;
  }
  
  #contact-overlay.shown {
    visibility: visible;
  }
  
  #contact-overlay::after {
    content: '';
    position: absolute;
    inset: 0;
    background: var(--base-color-black);
    z-index: 1;
    opacity: 0;
    transition: 750ms var(--ttf-7);
    transition-property: opacity;
  }
  
  #contact-overlay.shown::after {
    opacity: 0.8;
  }
  
  #contact-overlay > .inner {
    position: absolute;
    z-index: 2;
    right: 0;
    top: 0;
    bottom: 0;
    overflow: auto;
    background: var(--base-color-green);
    --padding-right: var(--page-padding-right);
    transition: 750ms var(--ttf-7);
    transition-property: opacity, transform;
    transition-delay: 0ms, 750ms;
    opacity: 0;
    transform: translateX(10vw);
    width: calc(1320 * var(--px));
  }
  
  #contact-overlay.shown > .inner {
    opacity: 1;
    transform: none;
    transition-delay: 0ms, 0ms;
  }
  
  #contact-overlay > .inner > .wrap {
    padding-inline: var(--page-padding-left) calc(138 * var(--px));
    padding-block: max(92px, calc(100 * var(--px))) max(35px, var(--padding-right));
    min-height: 100%;
    box-sizing: border-box;
    transition: 750ms var(--ttf-7) 50ms;
    transition-property: opacity, transform;
    transition-delay: 0ms, 750ms;
    opacity: 0;
    transform: translateX(10vw);
  }
  
  #contact-overlay.shown > .inner > .wrap {
    opacity: 1;
    transform: none;
    transition-delay: 0ms, 0ms;
  }
  
  #contact-overlay .overlay-header {
    position: fixed;
    top: var(--padding-right);
    right: var(--padding-right);
    z-index: 20;
  }
  







  @media (max-width: 900px) {
    
    .module-contact .form-row-1 {
      flex-flow: column nowrap;
      gap: var(--page-padding-left);
    }
    
    .module-contact .form-row-1 .form-list--data {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      width: 100%;
      gap: var(--page-padding-left);
    }
    
  }
  
  





  @media (max-width: 700px) {
    
    .module-contact .form-row-1 .form-list--data {
      display: flex;
      flex-flow: column nowrap;
      gap: var(--page-padding-left);
    }
    
    .module-contact .form-row-2 .form-list--submit {
      flex-flow: column nowrap;
      gap: var(--page-padding-left);
    }
    
  }
    






  @media (max-width: 500px) {
    
    #contact-overlay > .inner {
      width: 100%;
    }
    
    #contact-overlay > .inner > .wrap {
      padding-inline: 15px;
    }
    
    .module-contact .form-row-2 .form-list--submit {
      gap: 25px;
    }
    
  }





  .module-faqs {
    background: var(--base-color-green);
    color: var(--base-color-white);
    position: relative;
  }

  .module-faqs .module-inner {
    padding-block: var(--inner-padding-140) var(--inner-padding-180);
    position: relative;
    z-index: 2;
  }

  .module-faqs .col-set {
    display: flex;
    flex-flow: row nowrap;
  }

  .module-faqs .col-1 {
    width: var(--col-1-width);
    flex-shrink: 0;
  }
  
  .module-faqs .large-copy {
    max-width: 12.46em;
    margin-bottom: 2em;
  }
  
  @media (max-width: 750px) {
    
    .module-faqs .col-set {
      flex-flow: column nowrap;
      gap: 8px;
    }
    
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  .module-faqs .faqs-col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: calc(48 * var(--px));
    margin-left: calc(55 * var(--px));
  }
  
  .accordion-list {
    --padding-right: calc(45 * var(--px));
  }
  
  .accordion-list > li {
    border-bottom: 1px solid currentColor;
  }
  
  .accordion-list > li:first-child {
    border-top: 1px solid currentColor;
  }
  
  .accordion-header {
    position: relative;
  }
  
  .module-faqs .accordion-header > div {
    padding-right: var(--padding-right);
  }
  
  .accordion-header button {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  .accordion-header .question {
    padding-block: 1.1em;
  }
  
  .accordion-header .icon {
    display: block;
    position: absolute;
    right: .35294117647058823529em;
    top: 1.3em;
    width: 1.11764705882352941176em;
    height: 1.11764705882352941176em;
  }
  
  .accordion-header .icon span.plus > span {
    background-color: currentColor;
    display: block;
    position: absolute;
  }
  
  .accordion-header .icon span.plus > span:first-child {
    top: 0;
    left: .52941176470588235294em;
    width: 1px;
    height: 100%;
    transition: transform 500ms var(--ttf-7);
    transform-origin: center center;
  }
  
  *[data-accordion-state="opened"] .accordion-header .icon span.plus > span:first-child {
    transform: scaleY(0);
  }
  
  .accordion-header .icon span.plus > span:last-child {
    top: .52941176470588235294em;
    left: 0;
    width: 100%;
    height: 1px;
  }
  
  .accordion-body {
    max-height: 0px;
    opacity: 0;
    transform: translateY(-20px);
    pointer-events: none;
    position: relative;
    overflow: hidden;
    transition: 500ms var(--ttf-7);
    transition-property: opacity, transform, max-height;
  }
  
  *[data-accordion-state="opened"] .accordion-body {
    max-height: var(--max-height, 1000px);
    opacity: 1;
    transform: none;
    pointer-events: all;
  }
  
  .module-faqs .accordion-body > div {
    padding-right: var(--padding-right);
  }
  
  .module-faqs .accordion-body .wysiwyg {
    padding-bottom: 1.53333333333333333333em;
  }
  
  @media (max-width: 1000px) {
    
    .module-faqs .faqs-col-set {
      flex-flow: column nowrap;
      gap: 0;
    }
    
    .module-faqs .faqs-col-set .faqs-col-2 .accordion-list > li:first-child {
      border-top: 0;
    }
    
  }
  
  @media (max-width: 750px) {
    
    .module-faqs .faqs-col-set {
      margin-left: 0;
    }
    
  }
  
  
  
  
  
  
  
  
  
  
  .module-faqs .background-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 1;
    opacity: .07;
    pointer-events: none;
    overflow: hidden;
  }
  
  .module-faqs .background-shape svg {
    display: block;
    position: absolute;
    top: calc(-100 * var(--px));
    left: calc(430* var(--px));
    width: calc(2565* var(--px));
    height: auto;
  }


  .module-freedom {
    background: var(--base-color-green);
    color: var(--base-color-white);
  }
  
  
  
  
  
  
  .module-freedom .module-wrap > .row-1 {
    margin-bottom: calc(175 * var(--px));
    display: flex;
  }
  
  .module-freedom .cell--image-1 {
    max-width: calc(1383 * var(--px));
    margin-inline: auto;
    position: relative;
    margin-top: calc(-281 * var(--px));
  }
  
  
  
  
  
  
  .module-freedom .col-set {
    display: flex;
    flex-flow: row nowrap;
    margin-right: calc(var(--page-padding-right) * -1);
    gap: 0 calc(112 * var(--px));
    padding-bottom: calc(93 * var(--px));
  }
  
  .module-freedom .col-set .col-1 {
    width: 100%;
  }
  
  .module-freedom .col-set .col-2 {
    width: calc(591 * var(--px));
    flex-shrink: 0;
    padding-top: calc(150 * var(--px));
  }
  
  .module-freedom .col-set .col-2 .cell--image-2 {
    margin-bottom: calc(-186 * var(--px));
  }
  
  
  
  
  
  
  
  @media (max-width: 700px) {
    
    .module-freedom .col-set {
      flex-flow: column nowrap;
      padding-bottom: 0;
      position: relative;
    }
    
    .module-freedom .col-set .col-2 {
      width: calc(288 * var(--px-mobile));
      padding-top: 0;
      margin-left: auto;
      margin-top: 60px;
    }
    
    .module-freedom .col-set .col-2 .cell--image-2 {
      margin-bottom: 0;
    }
    
    .module-freedom .col-set .col-2 .cell--image-2 img {
      position: relative;
      z-index: 2;
    }
    
    .module-freedom .col-set .col-2 .cell--image-2::after {
      content: '';
      display: block;
      position: absolute;
      left: calc(var(--page-padding-left) * -1);
      right: 0;
      bottom: -1px;
      height: calc(144 * var(--px-mobile));
      background: var(--base-color-off-white);
      z-index: 1;
    }
    
  }
  
  
  
  
  
  @media (max-width: 500px) {
    
    .module-freedom .cell--image-1 {
      max-width: none;
      margin-top: 0;
      margin-inline: calc(var(--page-padding-left) * -1);
    }
    
    .module-freedom .cell--image-1 img {
      aspect-ratio: 380 / 273 !important;
      object-fit: cover;
    }
    
  }




  .module-hero {
    position: relative;
    --height: 100vh;
    height: var(--height);
    color: var(--base-color-white);
  }
  
  
  
  
  
  
  
  
  
  .module-hero .module-inner {
    position: relative;
    z-index: 2;
    height: var(--height);
    display: flex;
    flex-flow: column nowrap;
    padding-inline: var(--page-padding-left-l);
  }
  
  .module-hero .module-wrap {
    margin-top: auto;
    padding-bottom: calc(157 * var(--px));
  }
  
  .module-hero .subheadline {
    margin-top: 1.06666666666666666666em;
  }
  
  .scroll-hint {
    position: absolute;
    bottom: 2.11764705882352941176em;
    left: var(--page-padding-left);
    z-index: 2;
  }
  
  .scroll-hint > span {
    writing-mode: sideways-lr;
    animation: scroll-hint infinite alternate 1.25s var(--ttf-3);
  }
  
  @keyframes scroll-hint {
    0% { opacity: 1; }
    100% { opacity: 0; }
  }
  
  
  
  
  
  
  
  
  
  
  
  .module-hero .background {
    position: absolute;
    inset: 0;
    z-index: 1;
  }
  
  .module-hero .background :is(img, video) {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    max-width: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  
  
  
  
  
  
  
  @media (max-width: 500px) {
    
    .module-hero {
      --height: 407px;
    }
    
    .module-hero .scroll-hint {
      display: none;
    }
    
    .module-hero .module-inner {
      padding-inline: var(--page-padding-left);
    }
    
    .module-hero .module-wrap {
      padding-bottom: 50px;
      margin-top: 125px;
    }
    
  }







  .module-hero-house[data-type="garden"] {
    --row-1-background: var(--base-color-light-green);
  }
  
  .module-hero-house[data-type="icon"] {
    --row-1-background: #918381;
  }
  
  .module-hero-house[data-type="passagen"] {
    --row-1-background: #B67973;
    --shape-opacity: 0.7;
  }
  
  .module-hero-house[data-type="light"] {
    --row-1-background: #C2BA9E;
  }
  
  .module-hero-house[data-type="urban"] {
    --row-1-background: #CCCCCC;
  }

  .module-hero-house .row-1 {
    position: relative;
    background: var(--row-1-background, #87998f);
    height: max(230px, calc(660 * var(--px)));
  }
  
  .module-hero-house h1 {
    position: absolute;
    left: -100000em;
  }
  
  .module-hero-house .background-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 1;
    opacity: var(--shape-opacity, .2);
    pointer-events: none;
    overflow: hidden;
  }
  
  .module-hero-house .background-shape svg {
    display: block;
    position: absolute;
    top: calc(232 * var(--px));
    left: calc(-197 * var(--px));
    width: calc(1772 * var(--px));
    rotate: -45deg;
    height: auto;
  }
  
  .module-hero-house .background-shape svg path {
    fill: #DFDFD8;
  }
  
  .module-hero-house .house-logo {
    position: absolute;
    z-index: 2;
    left: calc(322 * var(--px));
    bottom: max(40px, calc(60 * var(--px)));
    height: max(70px, calc(208 * var(--px)));
  }
  
  .module-hero-house .house-logo img {
    display: block;
    width: auto;
    max-width: none;
    height: 100%;
  }
  
  
  
  
  
  
  
  
  .module-hero-house .row-2 {
    height: calc(221 * var(--px));
    position: relative;
    z-index: 3;
    padding-inline: var(--page-padding-left);
  }
  
  .module-hero-house .row-2 figure {
    position: absolute;
    right: calc(190 * var(--px));
    bottom: 0;
    width: calc(890 * var(--px));
  }
  
  .module-hero-house .row-2 figure img {
    display: block;
    width: 100%;
    height: auto;
  }
  
  
  
  
  
  
  
  @media (max-width: 700px) {
    
    .module-hero-house .house-logo {
      left: var(--page-padding-left);
    }
    
  }
  
  
  
  @media (max-width: 500px) {
    
    .module-hero-house .row-2 {
      height: calc(32 * var(--px-mobile));
    }
    
    .module-hero-house .row-2 figure {
      right: var(--page-padding-right);
      width: calc(260 * var(--px-mobile));
    }
    
    .module-hero-house .row-2 figure img {
      aspect-ratio: 272 / 153 !important;
      object-fit: cover;
    }
    
  }



  .module-houses .module-inner {
    padding-left: 0;
    padding-bottom: max(60px, calc(230 * var(--px)));
  }
  
  .module-houses .col-set {
    display: flex;
    flex-flow: row nowrap;
  }
  
  .module-houses .cpy-11 {
    --min-font-size: 8;
  }
  
  @media (max-width: 750px) {
    
    .module-houses .module-inner {
      padding-right: 0;
    }
    
  }
  
  
  
  
  
  
  
  
  
  .module-houses .col-1 {
    width: calc(992 * var(--px));
    flex-shrink: 0;
  }
  
  .module-houses .col-1 div.image {
    position: sticky;
    top: 0;
  }
  
  .module-houses .map-wrap {
    position: relative;
  }
  
  .module-houses .map-wrap .marker {
    display: block;
    position: absolute;
    padding: calc(9 * var(--px));
    border-radius: 100%;
    background: var(--base-color-white);
    will-change: transform;
    transition: transform 500ms var(--ttf-4);
    transform: scale(0.35);
    cursor: pointer;
    user-select: none;
  }
  
  .module-houses .map-wrap .marker.current {
    transform: none;
  }
  
  .module-houses .map-wrap .marker > span {
    display: block;
    width: calc(45 * var(--px));
    aspect-ratio: 1;
    background: var(--background-url, url(/content/themes/heyc/imgs/signet--passagen.svg)) no-repeat center center;
    background-size: contain;
    transition: opacity 500ms var(--ttf-4);
    opacity: 0;
  }
  
  .module-houses .map-wrap .marker.current > span {
    opacity: 1;
  }
  
  .module-houses .map-wrap .marker[data-type="passagen"] {
    top: 43.049881%;
    left: 11.445005%;
  }
  
  .module-houses .map-wrap .marker[data-type="icon"] {
    top: 51.049881%;
    left: 22.445005%;
    --background-url: url(/content/themes/heyc/imgs/signet--icon.svg);
  }
  
  .module-houses .map-wrap .marker[data-type="urban"] {
    top: 45.049881%;
    left: 63.445005%;
    --background-url: url(/content/themes/heyc/imgs/signet--urban.svg);
  }
  
  .module-houses .map-wrap .marker[data-type="garden"] {
    top: 39.049881%;
    left: 39.445005%;
    --background-url: url(/content/themes/heyc/imgs/signet--garden.svg);
  }
  
  .module-houses .map-wrap .marker[data-type="light"] {
    top: 50.049881%;
    left: 39.445005%;
    --background-url: url(/content/themes/heyc/imgs/signet--light.svg);
  }
  
  @media (max-width: 750px) {
    
    .module-houses .col-1 {
      display: none;
    }
  
  }
  
  
  
  
  
  
  
  
  
  
  
  .module-houses .houses-list {
    display: flex;
    flex-flow: column nowrap;
    --padding-y: max(20px, calc(26 * var(--px)));
    padding-bottom: 75vh;
  }
  
  .module-houses .houses-list > li {
    padding-left: calc(87 * var(--px));
  }
  
  .module-houses .house-teaser {
    border-bottom: 1px solid var(--base-color-green);
    padding-top: calc(var(--padding-y) * 1.5);
    padding-bottom: calc(var(--padding-y) * 1.5);
  }
  
  .module-houses figure {
    margin-bottom: var(--padding-y);
    position: relative;
  }
  
  .module-houses .house-teaser .headline {
    margin-bottom: var(--padding-y);
    position: relative;
  }
  
  .module-houses .house-teaser .headline::before {
    content: '';
    display: block;
    position: absolute;
    right: calc(100% + 1em);
    top: 50%;
    transform: translateY(-50%);
    width: calc(45 * var(--px));
    aspect-ratio: 1;
    background: var(--background-url, url(/content/themes/heyc/imgs/signet--passagen.svg)) no-repeat center center;
    background-size: contain;
  }
  
  .module-houses .house-teaser[data-type="icon"] {
    --background-url: url(/content/themes/heyc/imgs/signet--icon.svg);
  }
  
  .module-houses .house-teaser[data-type="garden"] {
    --background-url: url(/content/themes/heyc/imgs/signet--garden.svg);
  }
  
  .module-houses .house-teaser[data-type="light"] {
    --background-url: url(/content/themes/heyc/imgs/signet--light.svg);
  }
  
  .module-houses .house-teaser[data-type="urban"] {
    --background-url: url(/content/themes/heyc/imgs/signet--urban.svg);
  }
  
/*  .module-houses .house-teaser:is([data-type="urban"], [data-type="light"]) {
    pointer-events: none;
    opacity: 0.5;
    interactivity: inert;
  }*/
  
  
  @media (max-width: 1000px) {
    
    .module-houses .houses-list {
      padding-bottom: 10vh;
    }
    
  }
  
  @media (max-width: 750px) {
    
    .module-houses .houses-list {
      padding-bottom: 0;
    }
    
    .module-houses .houses-list > li {
      padding-left: 76px;
    }
    
    .module-houses .house-teaser .headline::before {
      width: 45px;
      right: calc(100% + 16px);
    }
    
  }
  
  
  
  
  
  
  
  
  
  .module-houses div.facts {
    padding-right: 15px;
  }
  
  .module-houses .facts-grid {
    display: flex;
    flex-flow: row wrap;
    gap: 0.4em 0.8em;
  }
  
  .module-houses .facts-grid > li {
    display: flex;
    flex-flow: column nowrap;
  }
  
  .module-houses .facts-grid .label {
    text-transform: uppercase;
    margin-bottom: 0.25em;
  }
  
  
  
  
  
  
  
  
  
  
  
  
  .module-houses .house-teaser div.icon {
    position: absolute;
    right: max(15px, calc(20 * var(--px)));
    bottom: max(15px, calc(20 * var(--px)));
    background: var(--base-color-white);
    border-radius: 50%;
    width: max(40px, calc(50 * var(--px)));
    aspect-ratio: 1;
    pointer-events: none;
  }
  
  .module-houses .house-teaser div.icon svg {
    display: block;
    width: max(18px, calc(18 * var(--px)));
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  
  .module-houses .house-teaser div.icon svg path {
    fill: currentColor;
  }





  .module-inquiry-teaser {
    background: var(--base-color-dark-green);
    color: var(--base-color-white);
    position: relative;
  }

  .module-inquiry-teaser .module-inner {
    padding-block: var(--inner-padding-140) var(--inner-padding-180);
    position: relative;
    z-index: 2;
  }

  .module-inquiry-teaser .col-set {
    display: flex;
    flex-flow: row nowrap;
  }

  .module-inquiry-teaser .col-1 {
    width: var(--col-1-width);
    flex-shrink: 0;
  }
  
  .module-inquiry-teaser .large-copy {
    max-width: 12.46em;
    margin-bottom: .7em;
  }
  
  .module-inquiry-teaser .small-copy {
    max-width: 36.64705882352941176470em;
    margin-left: 18.29411764705882352941em;
  }
  
  .module-inquiry-teaser .small-copy-wrap {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(46 * var(--px));
  }
  
  .module-inquiry-teaser .btn-set {
    margin-top: 0;
    padding-top: calc(13 * var(--px));
  }
  
  
  
  @media (max-width: 1000px) {
    
    .module-inquiry-teaser .small-copy {
      margin-left: 0;
    }
    
  }
  
  
  @media (max-width: 750px) {
    
    .module-inquiry-teaser .col-set {
      flex-flow: column nowrap;
      gap: 8px;
    }
    
  }
  
  
  @media (max-width: 500px) {
    
    .module-inquiry-teaser .small-copy-wrap {
      flex-flow: column nowrap;
    }
    
    .module-inquiry-teaser .btn-set {
      margin-top: 30px;
    }
    
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  .module-inquiry-teaser .dots {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
  }
  
  .module-inquiry-teaser .dot {
    position: absolute;
    aspect-ratio: 1;
    width: calc(270 * var(--px));
    background: var(--base-color-pink);
    border-radius: 50%;
    overflow: hidden;
  }
  
  .module-inquiry-teaser .dot-1 {
    top: calc(-155 * var(--px));
    left: calc(72 * var(--px));
  }
  
  .module-inquiry-teaser .dot-2 {
    top: calc(203 * var(--px));
    left: calc(433 * var(--px));
  }




  .module-intro {
    position: relative;
    color: var(--base-color-white);
  }
  
  
  
  
  
  
  
  
  
  .module-intro .module-inner {
    position: relative;
    z-index: 2;
    display: flex;
    flex-flow: column nowrap;
    padding-inline: var(--page-padding-left-l) 0;
  }
  
  .module-intro .module-wrap {
    margin-top: max(125px, calc(240 * var(--px)));
    padding-bottom: max(50px, calc(75 * var(--px)));
  }
  
  .module-intro .headline {
    padding-top: .34615384615384615384em;
  }
  
  .module-intro .subheadline {
    margin-top: 1.06666666666666666666em;
  }

  
  
  
  
  
  
  
  
  .module-intro .col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(48 * var(--px));
  }
  
  .module-intro .col-set .col-1 {
    width: 100%;
    display: flex;
    flex-flow: column nowrap;
    padding-bottom: 2.5em;
  }
  
  .module-intro .col-set .col-2 {
    width: calc(676 * var(--px));
    flex-shrink: 0;
  }
  
  
  
  
  
  
  
  .module-intro section.news-teaser {
    position: relative;
    left: calc(var(--page-padding-left-l) * -1);
    margin-top: auto;
    padding-top: 2em;
    max-width: max(410px, calc(410 * var(--px)));
  }
  
  .module-intro section.news-teaser > div {
    --border-width: calc(15 * var(--px));
    border-left: var(--border-width) solid var(--base-color-pink);
    padding-left: calc(var(--page-padding-left) - var(--border-width));
  }
  
  .module-intro section.news-teaser .headline {
    margin-bottom: 0.35em;
  }
  
  
  
  
  
  
  .module-intro .background {
    position: absolute;
    inset: 0;
    z-index: 1;
  }
  
  .module-intro .background .shade {
    display: block;
    position: absolute;
    inset: 0;
    z-index: 2;
    background: var(--base-color-green);
    opacity: 0.88;
  }
  
  .module-intro .background :is(img, video) {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    max-width: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    z-index: 1;
  }
  
  
  
  
  
  
  @media (max-width: 600px) {
    
    .module-intro .col-set {
      flex-flow: column nowrap;
    }
    
    .module-intro .col-set .col-1 {
      display: contents;
      padding-bottom: 0;
    }
    
    .module-intro .headline {
      order: 1;
    }
    
    .module-intro .subheadline {
      order: 2;
    }
    
    .module-intro .col-set .col-2 {
      order: 3;
      margin-top: 35px;
      width: 100%;
    }
    
    .module-intro section.news-teaser {
      order: 4;
      padding-top: 45px;
    }
    
    .module-intro .scroll-hint {
      display: none;
    }
    
  }






  .module-large-copy .module-inner {
    padding-block: var(--inner-padding-140) max(176px, var(--inner-padding-350));
  }

  .col-set.col-set--large-copy {
    display: flex;
    flex-flow: row nowrap;
  }
  
  .col-set.col-set--large-copy .col-1 {
    width: var(--col-1-width);
    flex-shrink: 0;
  }
  
  .col-set.col-set--large-copy .wysiwyg {
    max-width: 23.18em;
  }
  
  .col-set.col-set--large-copy .wysiwyg em {
    font-style: normal;
    color: var(--base-color-pink);
  }
  
  .col-set.col-set--large-copy .signet {
    margin-top: max(18px, calc(28 * var(--px)));
  }
  
  .col-set.col-set--large-copy .signet svg {
    display: block;
    width: max(38px, calc(60 * var(--px)));
    height: auto;
  }
  
  
  
  
  
  
  @media (max-width: 750px) {
    
    .col-set.col-set--large-copy {
      flex-flow: column nowrap;
      gap: 8px;
    }
    
  }



  @media (max-width: 500px) {
    .module-large-image img {
      aspect-ratio: 380 / 269 !important;
      object-fit: cover;
      display: block;
    }
  }







  .module-location-teaser {
    background: var(--base-color-beige);
    position: relative;
  }

  .module-location-teaser .module-inner {
    padding-block: max(265px, calc(430 * var(--px))) var(--inner-padding-350);
    position: relative;
    z-index: 2;
  }

  .module-location-teaser .col-set {
    display: flex;
    flex-flow: row nowrap;
  }
  
  .module-location-teaser .col-1 {
    width: var(--col-1-width);
    flex-shrink: 0;
  }
  
  .module-location-teaser .wysiwyg {
    max-width: 23.18em;
  }
  
  @media (max-width: 500px) {
    
    .module-location-teaser .col-set {
      flex-flow: column nowrap;
      gap: 8px;
    }
    
  }
  
  
  
  
  
  
  
  
  
  
  .module-location-teaser .images {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
  }
  
  .module-location-teaser .images figure {
    position: absolute;
  }
  
  .module-location-teaser :is(.image-1, .image-2) {
    width: calc(268 * var(--px));
  }
  
  .module-location-teaser .image-1 {
    top: calc(140 * var(--px));
    left: calc(320 * var(--px));
  }
  
  .module-location-teaser .image-2 {
    top: calc(130 * var(--px));
    left: calc(1313 * var(--px));
    z-index: 2;
  }
  
  .module-location-teaser .image-3 {
    width: calc(374 * var(--px));
    top: calc(574 * var(--px));
    left: calc(545 * var(--px));
    z-index: 2;
  }
  
  .module-location-teaser .image-4 {
    width: calc(536 * var(--px));
    top: 0;
    left: calc(856 * var(--px));
  }
  
  
  @media (max-width: 500px) {
    
    .module-location-teaser :is(.image-2, .image-4) {
      display: none;
    }
    
    .module-location-teaser .image-1 {
      top: 34px;
      left: 44px;
      width: 200px;
    }
    
    .module-location-teaser .image-3 {
      bottom: 40px;
      top: auto;
      right: 16px;
      left: auto;
      width: 121px;
    }
    
  }


  .module-macro-location {
    background: var(--base-color-green);
    color: var(--base-color-white);
    margin-bottom: calc(300 * var(--px));
  }
  
  .module-macro-location .module-inner {
    padding-top: var(--inner-padding-140);
  }
  
  
  
  
  
  
  
  
  
  .module-macro-location .row--intro {
    margin-bottom: calc(320 * var(--px));
    position: relative;
    z-index: 2;
  }
  
  
  
  
  
  
  
  
  .module-macro-location .row--copy {
    margin-right: calc(var(--page-padding-right) * -1);
    margin-bottom: calc(230 * var(--px));
    position: relative;
    display: flex;
    flex-flow: column nowrap;
  }
  
  .module-macro-location .row--copy .col-set {
    display: flex;
    flex-flow: row nowrap;
  }
  
  .module-macro-location .row--copy .col-set > .col-2 {
    margin-left: auto;
    padding-top: calc(380 * var(--px));
    width: calc(727 * var(--px));
    flex-shrink: 0;
  }
  
  .module-macro-location .row--copy .cell--highlights {
    margin-bottom: calc(-300 * var(--px));
  }
  
  .module-macro-location .row--copy .map {
    position: absolute;
    top: calc(-500 * var(--px));
    right: 0;
    width: calc(736 * var(--px));
    z-index: 1;
    pointer-events: none;
  }
  
  
  
  
  
  
  
  
  .module-macro-location .row--blockquote {
    display: flex;
    flex-flow: column nowrap;
    margin-right: calc(var(--page-padding-right) * -1);
  }
  
  .module-macro-location .row--blockquote .col-set {
    display: flex;
    flex-flow: row nowrap;
    margin-bottom: calc(-405 * var(--px));
  }
  
  .module-macro-location .row--blockquote .col-set .col-1 {
    width: calc(725 * var(--px));
    flex-shrink: 0;
  }
  
  .module-macro-location .row--blockquote .col-set .col-2 {
    width: 100%;
    padding-top: calc(450 * var(--px));
  }
  
  .module-macro-location .row--blockquote .col-2 > div {
    background: var(--base-color-pink);
    margin-left: calc(-117 * var(--px));
    position: relative;
    z-index: 2;
    padding: max(20px, calc(34 * var(--px)));
    padding-bottom: max(30px, calc(94 * var(--px)));
  }
  
  .module-macro-location .row--blockquote p span[aria-hidden] {
    color: var(--base-color-white);
  }
  
  .module-macro-location .row--blockquote .hdln-50 {
    --min-font-size: 20;
  }
  
  
  
  
  @media (max-width: 700px) {
    
    .module-macro-location .row--intro {
      margin-bottom: -100px;
    }
    
    .module-macro-location .row--copy {
      display: flex;
      flex-flow: column nowrap;
    }
    
    .module-macro-location .row--copy .col-set,
    .module-macro-location .row--copy .col-2 {
      display: contents;
    }
    
    .module-macro-location .row--copy .map {
      order: 1;
      position: relative;
      top: 0;
      right: 0;
      width: 85%;
      margin-left: auto;
    }
    
    .module-macro-location .row--copy .col-1 {
      order: 2;
      padding-right: var(--page-padding-right);
      margin-bottom: 60px;
    }
    
    .module-macro-location .row--copy .cell--highlights {
      order: 3;
      margin-bottom: 43px;
      max-width: none;
      margin-left: 0;
      padding-right: var(--page-padding-right);
      box-sizing: border-box;
    }
    
    .module-macro-location .row--blockquote .col-set {
      flex-flow: column nowrap;
      gap: 0;
      padding-right: var(--page-padding-right);
    }
    
    .module-macro-location .row--blockquote .col-set .col-1 {
      width: 100%;
      max-width: 400px;
    }
    
    .module-macro-location .row--blockquote .col-set .col-2 {
      padding-top: 0;
      margin-top: -23px;
    }
    
    .module-macro-location .row--blockquote .col-2 > div {
      margin-left: 17px;
      margin-right: calc(var(--page-padding-left) * -1);
    }
    
    
  }






  .module-meta-copy {
    color: var(--base-color-white);
    background: var(--base-color-green);
  }
  
  .module-meta-copy .module-inner {
    padding-top: max(125px, calc(300 * var(--px)));
    padding-bottom: max(60px, calc(120 * var(--px)));
  }
  
  .module-meta-copy .row-2 {
    padding-top: calc(120 * var(--px));
  }
  
  .module-meta-copy .inner {
    max-width: 754px;
    margin-inline: auto;
  }
  
  .module-meta-copy .wysiwyg {
    max-width: 34.33333333333333333333em;
  }
  
  .module-meta-copy .row-2 .wysiwyg {
    margin-left: auto;
  }
  
  
  .module-meta-copy .wysiwyg .subheadline:not(:first-child) {
    margin-top: 2.5em;
  }




  .module-micro-location .module-inner {
    padding-top: max(100px, var(--inner-padding-220));
  }
  
  
  
  
  
  
  .module-micro-location .row--intro .col-set {
    display: flex;
    flex-flow: row nowrap;
    padding-right: calc((144 * var(--px)) - var(--page-padding-right));
  }
  
  .module-micro-location .row--intro .col-set .col-2 {
    width: calc(447 * var(--px));
    margin-left: auto;
    padding-top: calc(200 * var(--px));
  }
  
  
  
  
  
  
  .module-micro-location .row--gallery {
    margin-inline: calc(var(--page-padding-left) * -1);
    margin-top: max(90px, calc(100 * var(--px)));
    position: relative;
    padding-bottom: max(50px, calc(50 * var(--px)));
  }

  .module-micro-location .row--gallery::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: max(230px, calc(243 * var(--px)));
    background: var(--base-color-green);
    z-index: 1;
  }
  
  .module-micro-location .sn-slider-progress {
    display: none;
  }
  
  .module-micro-location .sn-slider-wrap {
    position: relative;
    z-index: 2;
  }

  .module-micro-location .sn-slider-slide {
    width: max(240px, calc(463 * var(--px)));
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-end;
  }
  
  .module-micro-location .sn-slider-slide > div {
    width: 100%;
  }
  
  .module-micro-location .sn-slider {
    --gap: max(39px, calc(93 * var(--px)));
  }
  
  .module-micro-location .sn-slider .slide-row-1 .headline {
    margin-bottom: .83333333333333333333em;
    max-width: 6em;
    --min-font-size: 25;
  }
  
  .module-micro-location .sn-slider .slide-row-2 {
    max-width: max(240px, calc(413 * var(--px)));
    margin-left: auto;
  }
  
  .module-micro-location .sn-slider .caption {
    margin-top: 1.52941176470588235294em;
    color: var(--base-color-white);
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  .module-micro-location .row--map {
    margin-inline: calc(var(--page-padding-left) * -1);
    background: var(--base-color-green);
    color: var(--base-color-white);
  }
  
  .module-micro-location .row--map .col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(86 * var(--px));
    padding-right: var(--page-padding-right);
  }
  
  .module-micro-location .row--map .col-1 {
    width: calc(991 * var(--px));
    flex-shrink: 0;
  }
  
  .module-micro-location .row--map .col-2 {
    width: 100%;
    padding-bottom: 40px;
  }
  
  .module-micro-location .places-list {
    display: flex;
    flex-flow: column nowrap;
  }
  
  .module-micro-location .places-list > li {
    border-top: 1px solid #78887c;
    padding-block: 1em;
    padding-left: .5em;
    display: flex;
    flex-flow: row nowrap;
    gap: 0 1em;
    position: relative;
    padding-right: 30px;
  }
  
  .module-micro-location .places-list .maps-link {
    position: absolute;
    right: .4em;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
  }
  
  .module-micro-location .places-list .maps-link svg {
    width: max(14px, calc(16 * var(--px)));
    height: auto;
    display: block;
  }
  
  .module-micro-location .places-list .number {
    width: 2em;
    color: var(--base-color-pink);
    text-align: right;
  }
  
  .module-micro-location figure.map {
    position: relative;
  }
  
  .module-micro-location figure.map > div.image {
    position: relative;
    z-index: 1;
  }
  
  .module-micro-location figure.map > div.markers {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
  }
  
  .module-micro-location figure.map div.marker {
    position: absolute;
    top: var(--y);
    left: var(--x);
    transform: translate(-50%, -100%);
    transform-origin: center bottom;
    width: max(30px, calc(39 * var(--px)));
    aspect-ratio: 39 / 54;
    background: url(/content/themes/heyc/imgs/marker.svg) no-repeat center center;
    background-size: contain;
    transition: 500ms var(--ttf-7);
    transition-property: opacity, transform;
    transition-delay: calc(60ms * var(--index, 0));
    will-change: transform;
  }
  
  .module-micro-location figure.map div.marker[inert] {
    opacity: 0;
    transform: translate(-50%, -100%) scale(0.7);
    transition-delay: 0;
  }
  
  .module-micro-location figure.map div.marker .number {
    text-align: center;
    padding-top: 0.3em;
    color: var(--base-color-pink);
    display: block;
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  @media (max-width: 700px) {
    
    .module-micro-location .row--intro .col-set {
      flex-flow: column nowrap;
      padding-right: 0;
      gap: 67px 0;
    }
    
    .module-micro-location .row--intro .col-set .col-2 {
      width: 100%;
      margin-left: 0;
      padding-top: 0;
    }
    
    .module-micro-location .cell--distances {
      max-width: none;
    }
    
    .module-micro-location .row--map .col-set {
      flex-flow: column nowrap;
      gap: 40px 0;
      padding-inline: var(--page-padding-left);
    }
    
    .module-micro-location .row--map .col-1 {
      width: auto;
      margin-inline: calc(var(--page-padding-left) * -1);
    }
    
  }
  
  
  
  
  
  @media (max-width: 600px) {
    
    .module-micro-location .sn-slider .caption {
      min-height: 90px;
    }
    
    .module-micro-location .sn-slider .slide-row-1 .headline {
      line-height: 1.28;
    }
    
    .module-micro-location .places-list > li {
      padding-left: 0;
    }
    
    .module-micro-location .row--map .col-2 {
      padding-bottom: 90px;
    }
    
  }


  .module-news .module-inner {
    padding-block: var(--inner-padding-140) var(--inner-padding-220);
  }
  
  .module-news .module-wrap {
    max-width: max(600px, calc(1025 * var(--px)));
    margin-inline: auto;
  }
  
  
  
  
  
  .module-news .accordion-list > li {
    border-bottom: 1px solid var(--base-color-black);
    position: relative;
  }
  
  .module-news .accordion-list div.icon {
    position: absolute;
    right: 0;
    bottom: max(17px, calc(32 * var(--px)));
    background: var(--base-color-white);
    border-radius: 50%;
    width: max(40px, calc(50 * var(--px)));
    aspect-ratio: 1;
    cursor: pointer;
    user-select: none;
    transition: 750ms var(--ttf-4);
    transition-property: transform, background-color, color;
  }
  
  .module-news .accordion-list *[data-accordion-state="opened"] div.icon {
    background: var(--base-color-green);
    color: var(--base-color-white);
    transform: rotate(-180deg);
  }
  
  .module-news .accordion-list div.icon svg {
    display: block;
    width: max(8px, calc(11 * var(--px)));
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  
  .module-news .accordion-list div.icon svg path {
    fill: currentColor;
    transition: fill 750ms var(--ttf-4);
  }
  
  
  
  .module-news .accordion-header {
    position: relative;
  }
  
  .module-news .accordion-header button {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  .module-news .accordion-header > div {
    padding-block: .4em;
    position: relative;
  }
  
  .module-news .accordion-header > div > div {
    position: relative;
  }
  
  .module-news .accordion-header .title {
    padding-right: 2.75em;
    min-height: max(90px, 2.56em);
    --min-font-size: 20;
  }
  
  .module-news .accordion-header .date {
    position: absolute;
    right: 0;
    top: 1em;
    --min-font-size: 9;
  }
  
  
  
  
  
  
  .module-news .accordion-body {
    position: relative;
    overflow: hidden;
    opacity: 0;
    max-height: 0px;
    transform: translateY(-2vw);
    transition: 750ms var(--ttf-4);
    transition-property: opacity, max-height, transform;
  }
  
  .module-news *[data-accordion-state="opened"] .accordion-body {
    transform: none;
    opacity: 1;
    max-height: var(--max-height, 3000px);
  }
  
  .module-news .accordion-body > div {
    padding-block: calc(25 * var(--px)) max(25px, calc(50 * var(--px)));
    max-width: max(500px, calc(623 * var(--px)));
    padding-right: 61px;
  }
  
  .module-news .accordion-body figure {
    margin-bottom: max(25px, calc(50 * var(--px)));
  }
  
  
  
  
  
  
  @media (max-width: 500px) {
    
    .module-news .module-inner {
      padding-inline: 0;
      padding-top: 0;
    }
    
    .module-news .accordion-list > li {
      padding-inline: var(--page-padding-left);
    }
    
    .module-news .accordion-list div.icon {
      right: var(--page-padding-left);
    }
    
  }



  .module-page-title {
    position: relative;
    background: var(--base-color-green);
    color: var(--base-color-white);
  }
  
  .module-page-title .module-inner {
    position: relative;
    z-index: 2;
    padding-block: max(125px, calc(300 * var(--px))) max(40px, calc(123 * var(--px)));
  }
  
  .module-page-title .module-wrap {
    max-width: max(600px, calc(1025 * var(--px)));
    margin-inline: auto;
  }
  
  .module-page-title .hdln-80 {
    --min-font-size: 40;
  }
  
  
  
  
  
  
  
  .module-page-title .dots {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
  }
  
  .module-page-title .dot {
    position: absolute;
    aspect-ratio: 1;
    width: max(113px, calc(208 * var(--px)));
    background: var(--base-color-pink);
    border-radius: 50%;
    overflow: hidden;
  }
  
  .module-page-title .dot-1 {
    top: calc(-125 * var(--px));
    left: calc(276 * var(--px));
  }
  
  .module-page-title .dot-2 {
    top: calc(150 * var(--px));
    left: calc(550 * var(--px));
  }
  
  
  
  
  
  
  
  
  
  .module-page-title--units-overview .module-wrap {
    display: flex;
    flex-flow: column nowrap;
    gap: calc(50 * var(--px)) 0;
  }
  
  .module-page-title--units-overview .row-1 {
    display: flex;
    flex-flow: row nowrap;
    gap: 1em 0;
    justify-content: space-between;
  }
  
  .module-page-title--units-overview .module-prewrap {
    position: relative;
  }
  
  .module-page-title--units-overview .filter-button {
    position: absolute;
    right: 0;
    top: 0;
  }
  
  .module-page-title--units-overview .row-2 {
    max-width: 36.70588235294117647058em;
    padding-left: calc(133 * var(--px));
  }
  
  
  
  
  
  
  
  
  
  
  @media (max-width: 500px) {
    
    .module-page-title .dot-1 {
      top: -35px;
      left: 51px;
    }
  
    .module-page-title .dot-2 {
      top: 116px;
      left: 203px;
    }
    
    .module-page-title--units-overview .module-wrap {
      display: flex;
      flex-flow: column nowrap;
    }
    
    .module-page-title--units-overview .filter-button {
      bottom: 0;
      top: auto;
    }
    
    .module-page-title--units-overview .row-2 {
      padding-left: 0;
      max-width: none;
    }
    
  }


  .module-quarter {
    background: var(--base-color-green);
    color: var(--base-color-white);
    position: relative;
    z-index: 2;
  }
  
  .module-quarter .module-inner {
    padding-block: max(140px, var(--inner-padding-140)) max(80px, var(--inner-padding-140));
  }
  
  
  
  
  




  .module-quarter figure.video {
    position: absolute;
    top: min(-160px, calc(-312 * var(--px)));
    right: var(--page-padding-right);
    width: max(275px, calc(624 * var(--px)));
  }

  .module-quarter .row--intro {
    margin-bottom: max(50px, calc(50 * var(--px)));
  }
  
  .module-quarter .row--intro .headline {
    margin-bottom: .88235294117647058823em;
  }
  
  .module-quarter .row--intro .large-copy {
    max-width: 11.125em;
    margin-bottom: 0.5em;
  }
  
  .module-quarter .row--intro .row-2 {
    margin-left: calc(133 * var(--px));
  }

  .module-quarter .row--intro .wysiwyg {
    max-width: 36.70588235294117647058em;
  }
  
  @media (max-width: 600px) {
    .module-quarter figure.video {
      right: 0;
    }
  }
  
  @media (max-width: 500px) {
    .module-quarter .row--intro .row-2 {
      margin-left: 0;
    }
    .module-quarter .row--intro {
      margin-bottom: 100px;
    }
  }
  
  
  
  
  
  
  
  
  
  .module-quarter .row--blockquote {
    max-width: max(500px, calc(1076 * var(--px)));
    margin-left: auto;
    margin-bottom: max(50px, calc(50 * var(--px)));
    position: relative;
  }
  
  .row--blockquote blockquote {
    padding-top: 1.34em;
    padding-left: 1em;
    position: relative;
    z-index: 2;
  }
  
  .row--blockquote p {
    max-width: 17.8em;
    position: relative;
  }
  
  .row--blockquote p span[aria-hidden] {
    display: block;
    position: absolute;
    bottom: calc(100% - 0.125em);
    right: calc(100% - 0.05em);
    font-size: 3.3em;
    color: var(--base-color-pink);
    line-height: 0;
  }
  
  .row--blockquote footer {
    margin-top: .44em;
  }
  
  .row--blockquote div.image {
    position: absolute;
    width: max(100px, calc(260 * var(--px)));
    z-index: 1;
    top: calc(-70 * var(--px));
    right: calc(250 * var(--px));
  }
  
  .row--blockquote div.image img {
    width: 100%;
    max-width: none;
    height: auto;
    border-radius: 50%;
  }
  
  @media (max-width: 500px) {
    
    .row--blockquote blockquote {
      padding-left: var(--page-padding-left-mixed);
    }
    
  }
  
  
  
  
  
  
  
  
  
  .module-quarter .row--images {
    margin-right: calc(var(--page-padding-right) * -1);
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
  }
  
  .module-quarter .row--images .image-1 {
    width: calc(803 * var(--px));
    padding-top: calc(144 * var(--px));
  }
  
  .module-quarter .row--images .image-2 {
    width: calc(609 * var(--px));
  }
  
  @media (max-width: 500px) {
    
    .module-quarter .row--images {
      flex-flow: column nowrap;
      gap: 25px 0;
    }
    
    .module-quarter .row--images > * {
      width: 100% !important;
      padding: 0;
      box-sizing: border-box;
    }
    
    .module-quarter .row--images > .image-1 {
      padding-left: var(--page-padding-left-mixed);
    }
    
    .module-quarter .row--images > .image-2 {
      padding-right: var(--page-padding-left-l);
    }
    
  }
  
  
  
  
  
  
  
  
  
  .module-quarter .background-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    opacity: .07;
    pointer-events: none;
    overflow: hidden;
  }
  
  .module-quarter .background-shape svg {
    display: block;
    position: absolute;
    bottom: calc(-850 * var(--px));
    left: 0;
    width: calc(2565 * var(--px));
    height: auto;
  }




  .module-quarter-subpage {
    position: relative;
  }

  .module-quarter-subpage .module-inner {
    padding-top: var(--inner-padding-180);
    padding-bottom: calc(547 * var(--px));
    padding-right: 0;
  }
  
  .module-quarter-subpage .col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(88 * var(--px));
  }
  
  
  
  
  
  
  
  
  .module-quarter-subpage .col-set > .col-1 {
    width: 100%;
    padding-top: calc(114 * var(--px));
  }
  

  
  
  
  
  
  
  
  
  .module-quarter-subpage .col-set > .col-2 {
    width: calc(725 * var(--px));
    flex-shrink: 0;
    display: flex;
    flex-flow: column nowrap;
    gap: calc(152 * var(--px)) 0;
  }
  
  
  
  
  
  
  

  .module-quarter-subpage .background-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
  }
  
  .module-quarter-subpage .background-shape svg {
    display: block;
    position: absolute;
    bottom: calc(-910 * var(--px));
    left: calc(-178 * var(--px));
    width: calc(2161 * var(--px));
    height: auto;
  }
  
  
  
  
  
  
  
  @media (max-width: 700px) {
    
    .module-quarter-subpage .module-inner {
      padding-inline: var(--page-padding-left);
    }
    
    .module-quarter-subpage .col-set {
      flex-flow: column nowrap;
    }
    
    .module-quarter-subpage .col-set > div {
      display: contents;
    }
    
    .module-quarter-subpage .cell--intro {
      display: contents;
    }
    
    .module-quarter-subpage .col-set > .col-2 {
      display: contents;
    }
    
    .module-quarter-subpage .col-set > .col-2 .cell--intro-image {
      order: 3;
      margin-top: 39px;
      margin-right: calc(var(--page-padding-left) * -1);
      margin-left: var(--page-padding-left-mixed);
    }
    
    .module-quarter-subpage .col-set > .col-2 .cell--highlights {
      order: 5;
    }
    
    .module-quarter-subpage .cell--intro .row-3 {
      order: 4;
      margin-top: 43px;
      margin-left: var(--page-padding-left-mixed);
    }
    
    .module-quarter-subpage :is(.cell--highlights, .cell--distances) {
      max-width: none;
      margin-left: 0;
      margin-top: 70px;
    }
    
  }
  
  




  .module-subpage-teaser .module-inner {
    padding-top: max(90px, calc(220 * var(--px)));
    padding-bottom: max(80px, calc(130 * var(--px)));
  }

  .module-subpage-teaser .cell--intro {
    max-width: calc(1384 * var(--px));
    margin-inline: auto;
    margin-bottom: max(34px, calc(66 * var(--px)));
  }
  
  
  
  
  
  
  
  .module-subpage-teaser .row--houses {
    margin-bottom: max(50px, calc(83 * var(--px)));
  }
  
  .module-subpage-teaser .house-teaser-grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
  }
  
  .module-subpage-teaser .house-teaser-grid a {
    display: block;
    height: max(130px, calc(170 * var(--px)));
    position: relative;
    box-sizing: border-box;
    padding: 1.17647058823529411764em;
    background: var(--background-color, transparent);
  }
  
  .module-subpage-teaser .house-teaser-grid li[data-type="garden-house"] { --background-color: #87998F; }
  .module-subpage-teaser .house-teaser-grid li[data-type="icon-house"] { --background-color: #918381; }
  .module-subpage-teaser .house-teaser-grid li[data-type="passagen-house"] { --background-color: #B67973; }
  .module-subpage-teaser .house-teaser-grid li[data-type="urban-house"] { --background-color: #CCCCCC; }
  .module-subpage-teaser .house-teaser-grid li[data-type="light-house"] { --background-color: #C2BA9E; }
  
  .module-subpage-teaser .house-teaser-grid :is(li[data-type="urban-house"], li[data-type="light-house"]) {
    opacity: 0.3;
  }
  
  .module-subpage-teaser .house-teaser-grid a > span {
    position: relative;
    height: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: flex-end;
  }
  
  .module-subpage-teaser .house-teaser-grid a .row-1 {
    margin-bottom: .70588235294117647058em;
    display: block;
  }
  
  .module-subpage-teaser .house-teaser-grid a .row-1 svg {
    display: block;
    width: calc(45 * var(--px));
    height: auto;
    aspect-ratio: 1;
  }
  
  .module-subpage-teaser .house-teaser-grid a .row-2 {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
  
  .module-subpage-teaser .house-teaser-grid a .icon {
    margin-left: auto;
  }
  
  .module-subpage-teaser .house-teaser-grid a .icon svg {
    display: block;
    width: 1.05882352941176470588em;
    height: auto;
  }
  
  .module-subpage-teaser .house-teaser-grid a .icon path {
    fill: currentColor;
  }
  
  .module-subpage-teaser .house-teaser-grid a:is([href*="urban"], [href*="light"]) {
    pointer-events: none;
    interactivity: inert;
  }
  
  
  
  
  
  
  
  
  
  .module-subpage-teaser .subpage-teaser-grid {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(46 * var(--px));
    justify-content: center;
  }
  
  .module-subpage-teaser .subpage-teaser-grid > li {
    width: 100%;
    max-width: max(200px, calc(356 * var(--px)));
  }
  
  .module-subpage-teaser .subpage-teaser-grid a {
    display: block;
  }
  
  .module-subpage-teaser .subpage-teaser-grid a > span {
    display: block;
  }
  
  .module-subpage-teaser .subpage-teaser-grid a > span.title {
    margin-bottom: 0.2em;
  }
  
  .module-subpage-teaser .subpage-teaser-grid a > span.btn-set {
    margin-top: 1em;
  }

  
  
  
  
  
  
  @media (max-width: 750px) {
    
    .module-subpage-teaser .cell--intro {
      max-width: none;
    }
    
    .module-subpage-teaser .house-teaser-grid {
      display: flex;
      flex-flow: column nowrap;
    }
    
    .module-subpage-teaser .house-teaser-grid a .row-1 {
      margin-bottom: 20px;
    }
    
    .module-subpage-teaser .house-teaser-grid a .row-1 svg {
      width: 44px;
    }
    
    .module-subpage-teaser .house-teaser-grid a .icon svg {
      width: 23px;
    }
    
  }
  
  
  
  
  
  
  
  
  @media (max-width: 750px) {
    
    .module-subpage-teaser .subpage-teaser-grid {
      flex-flow: column nowrap;
      gap: 40px 0;
    }
    
    .module-subpage-teaser .subpage-teaser-grid > li {
      max-width: none;
    }
    
  }
  
  
  
  
  
  
  
  
  @media (max-width: 500px) {
    
    .module-subpage-teaser .subpage-teaser-grid a {
      position: relative;
      padding-right: 55px;
    }
    
    .module-subpage-teaser .subpage-teaser-grid a > span.btn-set {
      margin-top: 0;
      position: absolute;
      right: 0;
      top: 36px;
    }
    
  }





  .module-units {
    background: var(--base-color-light-green);
    position: relative;
    --col-1-width: calc(267 * var(--px));
    margin-bottom: calc(152 * var(--px));
  }
  
  .module-units[data-type="icon"] {
    background: #918381;
  }
  
  .module-units[data-type="passagen"] {
    background: #B67973;
    --shape-opacity: 0.7;
  }
  
  .module-units[data-type="light"] {
    background: #C2BA9E;
  }
  
  .module-units[data-type="garden"] {
    background: #87998F;
  }
  
  .module-units[data-type="urban"] {
    background: #CCCCCC;
  }
  
  .module-units .module-inner {
    position: relative;
    z-index: 2;
  }
  
  .module-units .module-wrap {
    display: flex;
    flex-flow: column nowrap;
  }






  .module-units .module-wrap > :is(.row-2, .row-3) .col-set {
    display: flex;
    flex-flow: row nowrap;
  }

  .module-units .module-wrap > :is(.row-2, .row-3) .col-1 {
    width: var(--col-1-width);
    flex-shrink: 0;
  }









  .module-units .module-wrap > .row-1 {
    margin-bottom: calc(155 * var(--px));
    display: flex;
  }

  .module-units .cell--image {
    max-width: calc(1383 * var(--px));
    margin-inline: auto;
    position: relative;
    margin-top: calc(-281 * var(--px));
  }









  .module-units .module-wrap > .row-2 {
    margin-bottom: calc(86 * var(--px));
  }

  .module-units .module-wrap > .row-2 .wysiwyg {
    max-width: 23.18em;
  }











  .module-units .module-wrap > .row-3 {
    margin-bottom: calc(210 * var(--px));
    margin-right: calc(var(--page-padding-right) * -1);
  }

  .module-units .module-wrap > .row-3 .col-2 {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(179 * var(--px));
  }
  
  .module-units .module-wrap > .row-3 .col-2 .cell--highlights {
    max-width: calc(681 * var(--px));
    flex-shrink: 0;
  }








  
  .module-units .module-wrap > .row-4 {
    padding-left: calc(88 * var(--px));
    margin-bottom: calc(-152 * var(--px));
  }











  .module-units .background-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 1;
    opacity: var(--shape-opacity, .2);
    pointer-events: none;
    overflow: hidden;
  }
  
  .module-units .background-shape svg {
    display: block;
    position: absolute;
    top: calc(610 * var(--px));
    left: calc(-300 * var(--px));
    width: calc(3000 * var(--px));
    rotate: -45deg;
    height: auto;
  }
  
  .module-units .background-shape svg path {
    fill: #DFDFD8;
  }
  

  
  
  
  
  
  @media (max-width: 700px) {
    
    .module-units .module-inner {
      padding-bottom: 94px;
    }
    
    .module-units .module-wrap > :is(.row-2, .row-3) .col-set {
      flex-flow: column nowrap;
      gap: 8px;
    }
    
    .module-units .module-wrap > .row-3 {
      display: contents;
    }
    
    .module-units .module-wrap > .row-3 .col-set {
      display: contents;
    }
    
    .module-units .module-wrap > .row-3 .col-2 {
      display: contents;
    }
    
    .module-units .module-wrap > .row-4 {
      order: 4;
      margin-bottom: 66px;
      padding-left: 0;
      margin-top: 65px;
    }
    
    .module-units .module-wrap > .row-3 .col-2 .cell--highlights {
      order: 5;
      max-width: 450px;
    }
    
  }
  
  
  
  
  
  
  @media (max-width: 500px) {
    
    .module-units .cell--image {
      max-width: none;
    }
    
  }



  .module-units-overview {
    --table-padding-top: calc(40 * var(--px));
  }

  .module-units-overview .module-inner {
    padding-left: 0;
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(38 * var(--px));
    width: 100%;
  }
  
  .module-units-overview .module-wrap {
    width: 100%;
  }
  
  .module-units-overview .filter-button {
    flex-shrink: 0;
    padding-block: var(--table-padding-top);
  }
  
  .module-units-overview .filter-button .btn {
    position: sticky;
    top: calc(var(--header-padding-top) + max(50px, (70 * var(--px))));
  }
  
  .module-units-overview .col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 calc(46 * var(--px));
  }
  
  .module-units-overview .houses {
    display: flex;
    flex-flow: column nowrap;
    gap: calc(95 * var(--px)) 0;
  }
  
  
  
  
  
  
  
  
  
  
  
  .module-units-overview section[data-type="urban"] {
    --house-background: #b67a74;
    --background-url: url(/content/themes/heyc/imgs/signet--urban.svg);
  }
  
  .module-units-overview section[data-type="garden"] {
    --house-background: #87998f;
    --background-url: url(/content/themes/heyc/imgs/signet--garden.svg);
  }
  
  .module-units-overview section[data-type="icon"] {
    --house-background: #918381;
    --background-url: url(/content/themes/heyc/imgs/signet--icon.svg);
  }
  
  .module-units-overview section[data-type="light"] {
    --house-background: #c1ba9e;
    --background-url: url(/content/themes/heyc/imgs/signet--light.svg);
  }
  
  .module-units-overview .col-set > .col-1 {
    width: calc(544 * var(--px));
    flex-shrink: 0;
  }
  
  .module-units-overview figure.col-1 > div {
    position: sticky;
    top: 0;
  }
  
  .module-units-overview figure.col-1 a {
    display: flex;
    flex-flow: column nowrap;
  }
  
  .module-units-overview figure.col-1 .house-title {
    background: var(--house-background, var(--base-color-gray));
    padding: max(15px, calc(65 * var(--px))) max(15px, calc(20 * var(--px))) max(15px, calc(20 * var(--px)));
  }
  
  .module-units-overview figure.col-1 .house-title .title {
    display: block;
    margin-top: .70588235294117647058em;
    --min-font-size: 9;
  }
  
  .module-units-overview figure.col-1 .house-title .signet {
    display: block;
    width: max(32px, calc(45 * var(--px)));
    aspect-ratio: 1;
    background: var(--background-url, url(/content/themes/heyc/imgs/signet--passagen.svg)) no-repeat center center;
    background-size: contain;
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  .module-units-overview .col-set > .col-2 {
    width: 100%;
    padding-top: var(--table-padding-top);
  }
  
  .units-table {
    border-spacing: 0;
    text-align: left;
    vertical-align: top;
    width: 100%;
  }
  
  .units-table span.abbr {
    display: none;
  }
  
  .units-table :is(th, td) {
    padding: 0.5em 2em 0.6em 0;
    border-bottom: 1px solid currentColor;
  }
  
  .units-table th {
    font-weight: normal;
  }
  
  .units-table thead th {
    text-transform: uppercase;
    padding-block: 1.2em;
  }
  
  .units-table .td-cta {
    text-align: right;
    padding-right: 0;
  }
  
  .units-table tbody .td-cta > span {
    display: inline-flex;
    flex-flow: row nowrap;
    gap: 0 0.75em;
    align-items: center;
  }
  
  .status-display {
    display: inline-block;
    width: 1em;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #1ab249;
  }
  
  .status-display[data-value="0"] {
    background: #a00;
  }
  
  .status-display[data-value="2"] {
    background: #e90;
  }
  
  
  
  
  
  
  
  
  
  .units-overview-filter {
    position: fixed;
    inset: 0;
    display: block;
    z-index: 1000;
    color: var(--base-color-white);
    visibility: hidden;
    transition: 750ms var(--ttf-7);
    transition-property: visibility;
    overflow: hidden;
  }
  
  body.units-overview-filter-shown .units-overview-filter {
    visibility: visible;
  }
  
  .units-overview-filter .background-shade {
    position: absolute;
    inset: 0;
    background: var(--base-color-black);
    z-index: 1;
    opacity: 0;
    transition: 750ms var(--ttf-7);
    transition-property: opacity;
  }
  
  body.units-overview-filter-shown .units-overview-filter .background-shade {
    opacity: 0.8;
  }
  
  .units-overview-filter .pane {
    position: absolute;
    z-index: 2;
    right: 0;
    top: 0;
    bottom: 0;
    overflow: auto;
    background: var(--base-color-green);
    --padding-right: var(--page-padding-right);
    transition: 750ms var(--ttf-7);
    transition-property: opacity, transform;
    transition-delay: 0ms, 750ms;
    opacity: 0;
    transform: translateX(10vw);
  }
  
  body.units-overview-filter-shown .units-overview-filter .pane {
    opacity: 1;
    transform: none;
    transition-delay: 0ms, 0ms;
  }
  
  .units-overview-filter .pane-inner {
    padding-inline: calc(138 * var(--px));
    padding-block: max(92px, calc(135 * var(--px))) max(35px, var(--padding-right));
    min-height: 100%;
    box-sizing: border-box;
    transition: 750ms var(--ttf-7) 50ms;
    transition-property: opacity, transform;
    transition-delay: 0ms, 750ms;
    opacity: 0;
    transform: translateX(10vw);
    display: flex;
  }
  
  body.units-overview-filter-shown .units-overview-filter .pane-inner {
    opacity: 1;
    transform: none;
    transition-delay: 0ms, 0ms;
  }
  
  .units-overview-filter .pane-header {
    position: fixed;
    top: var(--padding-right);
    right: var(--padding-right);
  }
  
  .units-overview-filter form {
    display: flex;
    flex-flow: column nowrap;
    flex-grow: 1;
    gap: 3em 0;
    justify-content: space-between;
    transition: opacity 150ms;
  }
  
  .units-overview-filter.is-loading form {
    opacity: 0.5;
    pointer-events: none;
  }
  
  .units-overview-filter.is-loading {
    cursor: wait;
  }
  
  
  
  
  
  
  
  
  
  
  .units-overview-filter .col-set {
    display: flex;
    flex-flow: row nowrap;
    gap: 0 max(30px, calc(47 * var(--px)));
  }
  
  .units-overview-filter .col-set > div {
    min-width: calc(222 * var(--px));
    display: flex;
    flex-flow: column nowrap;
    gap: max(38px, calc(62 * var(--px))) 0;
  }
  
  .units-overview-filter legend {
    display: block;
    margin-bottom: 1em;
  }
  
  
  
  
  
  
  
  
  
  @media (max-width: 1200px) {
    
    .module-units-overview .col-set > .col-1 {
      width: 250px;
    }
    
  }
  
  
  
  
  @media (max-width: 1100px) {
    
    .units-table .td-house {
      display: none; 
    }
    
    .units-table :is(th, td) {
      padding-right: 0.75em;
    }
    
  }
  
  
  
  
  @media (max-width: 1000px) {
    
    .units-table .cpy-17 {
      font-size: .8125rem;
    }
    
  }
  




  @media (max-width: 770px) {
    
    .module-units-overview {
      --table-padding-top: 0;
    }
    
    .module-units-overview .module-inner {
      padding-inline: 0;
      gap: 0;
    }
    
    .module-units-overview .houses {
      gap: 0;
    }
    
    .module-units-overview .filter-button {
      width: 0px;
    }
    
    .module-units-overview .filter-button .btn {
      margin-left: calc((40px + var(--page-padding-right)) * -1);
      margin-block: 20px;
      background: var(--base-color-black);
      color: var(--base-color-white);
      border-color: var(--base-color-black);
      z-index: 5;
    }
    
    .module-units-overview .col-set {
      flex-flow: column nowrap;
      gap: 0;
    }
    
    .module-units-overview .col-set > .col-1 {
      width: 100%;
    }
    
    .module-units-overview figure.col-1 a {
      display: flex;
      flex-flow: row nowrap;
    }
    
    .module-units-overview figure.col-1 .house-title {
      width: calc(136 * var(--px-mobile));
      box-sizing: border-box;
      flex-shrink: 0;
      display: flex;
      flex-flow: column nowrap;
      justify-content: flex-end;
    }
    
    .units-table :is(th, td):first-child {
      padding-left: 15px;
    }
    
    .units-table :is(th, td):last-child {
      padding-right: 15px;
    }
    
    
    
  }
  
  
  
  
  
  @media (max-width: 500px) {
    
    .units-table :is(th, td) {
      padding-block: 0.75em;
      padding-inline: 0.25em;
    }
    
    .units-table th.td-cta span,
    .units-table th.td-status span,
    .units-table th.td-rooms span {
      display: none;
    }
    
    .units-table th.td-rooms span.abbr {
      display: inline;
    }
    
    .module-units-overview figure.col-1 .house-title .title {
      margin-top: 12px;
    }
    
    .module-units-overview .col-set > .col-1 {
      position: sticky;
      top: 0;
      z-index: 3;
    }
    
    .units-table thead {
      position: sticky;
      top: var(--house-image-height, 0px);
      z-index: 2;
      background: var(--base-color-off-white);
    }
    
    .units-overview-filter .pane-inner {
      padding-inline: 15px;
    }
    
    .units-overview-filter .pane {
      width: 100%;
    }
    
  }