/* skeleton-www runtime: what the copy needs that Wix's own scripts used to do.
   nginx adds this file and www.js to every page (sub_filter in nginx/default.conf). */

/* Wix's video player hides the pointer over a playing video while the mouse is still, and its script shows it again
   on the next move. The copy has no player script, so the snapshot's still state hid the pointer for good. */
[data-playable-hook="screen-block"] {
  cursor: auto !important;
}

/* Cookie banner, laid out like Wix's: a bar along the bottom on a wide screen, a panel on a phone. */
.skc,
.skc * {
  box-sizing: border-box;
}
.skc {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2147483000;
  max-height: 100vh;
  max-height: 100dvh; /* a phone's browser bars cover part of 100vh */
  overflow-y: auto;
  background: #fff;
  color: #000;
  box-shadow: -8px -7px 20px rgba(0, 0, 0, 0.1);
  font: 400 14px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: normal;
  text-align: left;
  text-transform: none;
}
.skc[hidden] {
  display: none;
}
.skc-bar {
  display: flex;
  align-items: center;
  gap: 16px 24px;
  min-height: 64px;
  padding: 12px 56px 12px 20px;
}
.skc-text {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  font: inherit;
  color: inherit;
}
.skc a,
.skc-link,
.skc-reopen {
  color: inherit;
  text-decoration: underline;
}
.skc-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 16px;
}
.skc button {
  margin: 0;
  font: inherit;
  letter-spacing: normal;
  text-transform: none;
  cursor: pointer;
}
.skc-btn {
  min-height: 34px;
  padding: 0 16px;
  border: 1px solid #000;
  border-radius: 0;
  background: #fff;
  color: #000;
}
.skc-btn.skc-primary {
  background: #000;
  color: #fff;
}
.skc-link,
.skc-reopen {
  padding: 0;
  border: 0;
  background: none;
}
.skc-close {
  position: absolute;
  top: 50%;
  right: 12px;
  width: 32px;
  height: 32px;
  margin-top: -16px !important;
  padding: 0;
  border: 0;
  background: none;
  color: #000;
  font-size: 24px !important;
  line-height: 32px !important;
}
.skc-full .skc-close {
  top: 8px;
  margin-top: 0 !important;
}
.skc button:focus-visible,
.skc a:focus-visible,
.skc input:focus-visible,
.skc-reopen:focus-visible {
  outline: 2px solid #00474a;
  outline-offset: 2px;
}
.skc-settings {
  max-width: 720px;
  margin: 0 auto;
  padding: 24px 20px 20px;
}
.skc-settings[hidden],
.skc-bar[hidden] {
  display: none;
}
.skc-title {
  margin: 0 0 12px;
  font: 700 16px/1.4 "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #000;
}
.skc-cat {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid #e6e6e6;
  cursor: pointer;
}
.skc-cat input {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
  accent-color: #000;
}
.skc-cat input:disabled {
  cursor: default;
}
.skc-cat strong {
  display: block;
  font-weight: 700;
}
.skc-settings .skc-actions {
  justify-content: flex-end;
  padding-top: 12px;
  border-top: 1px solid #e6e6e6;
}
.skc-reopen {
  font: inherit;
  cursor: pointer;
}
.skc-reopen-row {
  margin: 0;
  padding: 12px 20px;
  font: 400 14px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-align: center;
}

@media (max-width: 767px) {
  .skc-bar {
    flex-direction: column;
    align-items: stretch;
    padding: 20px 24px 10px;
  }
  .skc-text {
    padding-right: 24px;
  }
  .skc-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
  }
  .skc-bar .skc-actions .skc-primary {
    order: 1;
  }
  .skc-bar .skc-actions .skc-btn:not(.skc-primary) {
    order: 2;
  }
  .skc-bar .skc-actions .skc-link {
    order: 3;
    align-self: center;
    padding: 4px 0;
  }
  .skc-btn {
    min-height: 40px;
  }
  .skc-close {
    top: 8px;
    right: 8px;
    margin-top: 0 !important;
  }
  .skc-settings .skc-actions {
    flex-direction: column-reverse;
  }
}

/* Contact form (www.js). The field only a robot fills in: out of sight and out of the tab order. */
.skw-trap {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}
/* Why the form was not sent, under the button. */
.skw-note {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1;
  box-sizing: border-box;
  width: max-content;
  max-width: min(360px, calc(100vw - 32px));
  margin: 8px 0 0;
  padding: 8px 12px;
  border-left: 3px solid #b3261e;
  background: #fff;
  color: #000;
  font: 400 14px/1.4 "Helvetica Neue", Helvetica, Arial, sans-serif;
  letter-spacing: normal;
  text-align: left;
  text-transform: none;
  white-space: normal;
}
.skw-note[hidden] {
  display: none;
}
/* The Kontakt form on the mobile pages (all three languages share the ids). Wix added the company field and the two
   lists after the first four fields and never fitted them to the phone layout: wider, further left, larger type, and
   the last list 25px tall against the button. They take the first four fields' measures here, through the variables
   Wix's own rules read. */
body.device-mobile-optimized [data-mesh-id="comp-ltn09ed41inlineContent-gridContainer"] > #comp-mclzynz0,
body.device-mobile-optimized [data-mesh-id="comp-ltn09ed41inlineContent-gridContainer"] > #comp-mcm00q2p,
body.device-mobile-optimized [data-mesh-id="comp-ltn09ed41inlineContent-gridContainer"] > #comp-mkzduc70 {
  left: 15px;
  width: 269px;
  height: 50px;
  margin-bottom: 15px;
  --fnt: normal normal normal 14px/1.4em raleway, sans-serif;
  --inputHeight: 50px;
  --textPadding_start: 14px;
  --textPaddingInput_start: 14px;
}
/* The phone field above them kept Wix's 10px gap. */
body.device-mobile-optimized [data-mesh-id="comp-ltn09ed41inlineContent-gridContainer"] > #comp-luwdh3x4 {
  margin-bottom: 15px;
}
