/*!******************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js!./src/theme/entries/offer/index.scss ***!
  \******************************************************************************************************************************************************************************************************************/
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
.badge {
  font-family: "Space Grotesk", sans-serif;
  font-size: 14px;
  font-weight: 700;
  padding: 5px 18px;
  border-radius: 99px;
  display: inline-flex;
}
.badge-orange {
  background-color: #FF8014;
  color: #fff;
}
.badge-green {
  background-color: #55EA55;
  color: #3F353E;
}

/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
#subtitle {
  background-color: #55EA55;
  padding: 29px 0 35px;
}
#subtitle .container > *, #subtitle #video .content > *, #video #subtitle .content > *, #subtitle #reviews .headline .elements > *, #reviews .headline #subtitle .elements > *, #subtitle #reviews .content > *, #reviews #subtitle .content > *, #subtitle #map .content > *, #map #subtitle .content > *, #subtitle #forKids .services > *, #forKids #subtitle .services > *, #subtitle #forPets .content > *, #forPets #subtitle .content > *, #subtitle #video .headline h2 > *, #video #subtitle .headline h2 > *, #subtitle #services .headline h2 > *, #services #subtitle .headline h2 > *, #subtitle #map .headline h2 > *, #map #subtitle .headline h2 > *, #subtitle #forKids .headline h2 > *, #forKids #subtitle .headline h2 > *, #subtitle #forPets .headline h2 > *, #forPets #subtitle .headline h2 > *, #video .headline #subtitle h2 > *, #services .headline #subtitle h2 > *, #map .headline #subtitle h2 > *, #forKids .headline #subtitle h2 > *, #forPets .headline #subtitle h2 > * {
  max-width: 1032px;
}
#subtitle h2 {
  font-size: 30px;
  line-height: 46px;
}

/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
.container, #video .content, #reviews .headline .elements, #reviews .content, #map .content, #forKids .services, #forPets .content, #video .headline h2, #services .headline h2, #map .headline h2, #forKids .headline h2, #forPets .headline h2 {
  width: 100%;
  max-width: 1374px;
  margin: 0 auto;
}
@media (max-width: 1374px) {
  .container, #video .content, #reviews .headline .elements, #reviews .content, #map .content, #forKids .services, #forPets .content, #video .headline h2, #services .headline h2, #map .headline h2, #forKids .headline h2, #forPets .headline h2 {
    max-width: calc(100% - 40px);
    margin: 0 20px;
  }
}

#video iframe, #map iframe {
  aspect-ratio: 21/9;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}

#video .headline, #services .headline, #map .headline, #forKids .headline, #forPets .headline {
  padding: 17px 0;
  background-color: #E0FCFF;
}
#video .headline h2, #services .headline h2, #map .headline h2, #forKids .headline h2, #forPets .headline h2 {
  width: 100%;
}

#services .svc-button, #forKids .service {
  border-radius: 16px;
  overflow: hidden;
  background-color: #ECF0F2;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  font-weight: 700;
  display: flex;
  align-items: stretch;
  height: 60px;
}
#services .svc-button .icon, #forKids .service .icon {
  width: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #55EA55;
}
#services .svc-button .label, #forKids .service .label {
  padding: 0 20px;
  display: flex;
  align-items: center;
}

#services .collapse, #forKids .services {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  -moz-column-gap: 82px;
       column-gap: 82px;
  row-gap: 41px;
}
@media (max-width: 768px) {
  #services .collapse, #forKids .services {
    grid-template-columns: 1fr;
  }
}

#intro {
  padding: 63px 0 26px;
  background-color: #ECF0F2;
}
#intro h1 {
  font-family: "Space Grotesk", sans-serif;
  margin: 9px 0 0;
  line-height: normal;
}
@media (min-width: 768px) {
  #intro h1 {
    font-size: 40px;
    font-weight: 700;
    margin: 18px 0 0;
  }
}
#intro .breadcrumb {
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 19px;
  color: #3F353E;
  margin: 0 0 17px;
  overflow-x: auto;
}
#intro .breadcrumb svg {
  margin: 0 13px;
}
#intro .headline {
  display: flex;
  gap: 36px;
  align-items: flex-end;
  justify-content: space-between;
}
@media (max-width: 768px) {
  #intro .headline {
    gap: 18px;
    flex-direction: column;
    align-items: flex-start;
  }
}
#intro [name=toggleWatchlist] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  outline: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  flex-wrap: nowrap;
  font-family: "Space Grotesk", sans-serif;
  font-size: 15px;
  font-weight: 700;
  padding: 5px 18px;
  border-radius: 99px;
  background-color: #fff;
}
@media (min-width: 768px) {
  #intro [name=toggleWatchlist] {
    padding: 15px 25px;
  }
}
#intro [name=toggleWatchlist].active {
  background-color: #6CF7FF;
}
#intro [name=toggleWatchlist] svg {
  margin: 0 0 0 16px;
}
@media (max-width: 768px) {
  #intro [name=toggleWatchlist] svg {
    height: 2em;
  }
}

#content.is-free {
  margin: 0 0 200px;
}
#content h2 {
  font-family: "Space Grotesk", sans-serif;
  font-size: 34px;
  font-weight: 700;
  margin: 0 0 19px;
}
#content p {
  font-family: "Roboto", sans-serif;
  font-size: 20px;
  line-height: 30px;
  font-weight: 300;
}
#content .contact {
  margin: 0 0 26px;
}
#content .contact p {
  font-family: "Roboto", sans-serif;
  font-size: 20px;
  font-weight: 300;
  line-height: 30px;
}
#content .description {
  margin: 0 0 28px;
}
#content .description button {
  margin: 12px 0 0;
  color: #FF8014;
  text-decoration: underline;
}
#content .equipment ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 22px;
  margin: 22px 0 0;
}
#content .equipment li {
  display: flex;
  align-items: center;
  gap: 22px;
  font-family: "Roboto", sans-serif;
  font-size: 18px;
  font-weight: 700;
}
#content .equipment li svg {
  margin: 0 0 0 16px;
}
#content .headline {
  display: flex;
  flex-wrap: wrap;
  gap: 21px;
  align-items: flex-end;
  margin: 0 0 14px;
}
#content .headline * {
  margin: 0;
}
#content .headline small {
  margin: 0 0 0 12px;
}
#content .offer-grid {
  display: grid;
  gap: 36px;
  grid-template-columns: minmax(0, 2fr) 1fr;
}
@media (max-width: 1024px) {
  #content .offer-grid {
    grid-template-columns: 1fr;
  }
}
#content .ratings {
  display: flex;
}
#content .ratings a {
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 300;
  text-decoration: underline;
  color: #3F353E;
  margin: 0 14px 0 auto;
}
#content .request {
  display: flex;
  align-items: center;
  gap: 16px;
  border-radius: 16px;
  padding: 18px 21px;
  background-color: #ECF0F2;
  margin: 0 0 40px;
}
@media (max-width: 768px) {
  #content .request {
    flex-direction: column;
    align-items: flex-start;
  }
}
#content .request > div {
  display: flex;
  gap: 16px;
}
#content .request .form-control-button-primary {
  color: #3F353E;
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
  margin: 0 0 0 auto;
  padding: 16px 37px;
}
@media (max-width: 768px) {
  #content .request .form-control-button-primary {
    margin: 0;
  }
}
#content .slider {
  aspect-ratio: 1.7784679089;
  margin: 0 0 48px;
  overflow: hidden;
}
#content .slider img {
  max-width: 100%;
  aspect-ratio: 859/483;
}

#forPets .content {
  margin-top: 36px;
  margin-bottom: 72px;
}
#forKids .services {
  margin: 38px auto 80px;
}

#map iframe {
  border-radius: 27px;
}
#map .content {
  margin-top: 36px;
  margin-bottom: 72px;
}
#map .headline small {
  margin: 0 0 0 20px;
  font-size: 20px;
  font-weight: 300;
}

#reviews .content {
  margin-top: 36px;
  margin-bottom: 72px;
  display: flex;
  gap: 97px;
}
@media (max-width: 1024px) {
  #reviews .content {
    flex-direction: column;
    gap: 48px;
  }
}
#reviews .headline {
  padding: 17px 0;
  background-color: #E0FCFF;
}
#reviews .headline .elements {
  display: flex;
  gap: 20px;
  align-items: flex-end;
}
@media (max-width: 768px) {
  #reviews .headline .elements {
    flex-direction: column;
    align-items: flex-start;
  }
}
#reviews .headline .elements a {
  font-family: "Roboto", sans-serif;
  color: #3F353E;
}
#reviews .ratingAverage {
  display: flex;
  align-items: center;
  margin: 0 0 0 auto;
  font-size: 18px;
  font-weight: 700;
}
@media (max-width: 768px) {
  #reviews .ratingAverage {
    margin: 0;
  }
}
#reviews .ratingAverage svg {
  position: relative;
  top: -3px;
  max-height: 20px;
  margin: 0 3px;
}
#reviews .meta {
  padding: 0 0 8px 20px;
  color: #868686;
  font-size: 12px;
}
#reviews .card {
  border-radius: 20px;
  background-color: #ECF0F2;
  overflow: hidden;
}
#reviews .card .card-header {
  display: flex;
  align-items: center;
  background: #55EA55;
  color: #fff;
  padding: 8px 20px;
}
#reviews .card .card-header .user-rating {
  margin: 0 0 0 auto;
  font-family: "Roboto", sans-serif;
  font-size: 20px;
  font-weight: 700;
}
#reviews .card .card-header .user-rating svg {
  position: relative;
  top: 1px;
}
#reviews .card .card-body {
  padding: 16px 20px;
}
#reviews .card .card-body h3 {
  margin: 0 0 8px;
}
#reviews .card .card-body p {
  font-size: 16px;
  font-weight: 300;
  line-height: 21px;
  color: #3F353E;
}
#reviews .card .card-body a {
  display: block;
  margin: 12px 0 0;
  font-size: 14px;
  color: #FF8014;
}

#services {
  margin: 48px 0 0;
}
#services [data-toggle=collapse] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 13px;
  padding: 12px;
  flex: 0 0 188px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
  justify-content: flex-end;
  background-color: #ECF0F2;
  color: #3F353E;
  font-size: 18px;
  font-weight: 700;
}
#services [data-toggle=collapse] svg * {
  fill: #FF8014;
}
#services [data-toggle=collapse].active {
  background-color: #FF8014;
  color: #fff;
}
#services [data-toggle=collapse].active svg * {
  fill: #fff;
}
#services .buttons {
  margin: 30px 0 0;
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  overflow-x: auto;
}
#services .collapses {
  margin: 45px 0 80px;
}
#subtitle {
  padding: 12px 0 7px;
  margin: 0 0 33px;
}
#subtitle .container, #subtitle #video .content, #video #subtitle .content, #subtitle #video .headline h2, #video #subtitle .headline h2, #video .headline #subtitle h2, #subtitle #forPets .content, #forPets #subtitle .content, #subtitle #forPets .headline h2, #forPets .headline #subtitle h2, #subtitle #forKids .headline h2, #forKids .headline #subtitle h2, #subtitle #forKids .services, #forKids #subtitle .services, #subtitle #map .content, #map #subtitle .content, #subtitle #map .headline h2, #map .headline #subtitle h2, #subtitle #reviews .content, #reviews #subtitle .content, #subtitle #reviews .headline .elements, #reviews .headline #subtitle .elements, #subtitle #services .headline h2, #services .headline #subtitle h2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
@media (max-width: 768px) {
  #subtitle .container, #subtitle #video .content, #video #subtitle .content, #subtitle #video .headline h2, #video #subtitle .headline h2, #video .headline #subtitle h2, #subtitle #forPets .content, #forPets #subtitle .content, #subtitle #forPets .headline h2, #forPets .headline #subtitle h2, #subtitle #forKids .headline h2, #forKids .headline #subtitle h2, #subtitle #forKids .services, #forKids #subtitle .services, #subtitle #map .content, #map #subtitle .content, #subtitle #map .headline h2, #map .headline #subtitle h2, #subtitle #reviews .content, #reviews #subtitle .content, #subtitle #reviews .headline .elements, #reviews .headline #subtitle .elements, #subtitle #services .headline h2, #services .headline #subtitle h2 {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
#subtitle .localInformation {
  display: flex;
  gap: 13px;
  align-items: center;
  margin: 0;
}
#subtitle .localInformation .temperature {
  font-size: 44px;
  font-weight: 700;
}

#video .content {
  margin-top: 36px;
  margin-bottom: 72px;
}
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js!./src/theme/modules/offer-ratingBox/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
.rating {
  padding: 11px 20px 15px;
  border-radius: 11px;
  background-color: #55EA55;
  color: #fff;
}
.rating strong {
  font-size: 12px;
}
@media (min-width: 1374px) {
  .rating strong {
    font-size: 20px;
  }
}
.rating div {
  display: flex;
  gap: 7px;
  align-items: center;
}
.rating div svg {
  flex: 0 0 15px;
}
@media (min-width: 1374px) {
  .rating div svg {
    flex: 0 0 21px;
  }
}
.rating div strong {
  font-family: Roboto, sans-serif;
  font-weight: 700;
  font-size: 14px;
}
@media (min-width: 1374px) {
  .rating div strong {
    font-size: 20px;
  }
}
/*!******************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js!./src/theme/modules/forms/index.scss ***!
  \******************************************************************************************************************************************************************************************************************/
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
input[type=text],
input[type=text]:-webkit-autofill,
input[type=text]:-webkit-autofill:hover,
input[type=text]:-webkit-autofill:focus,
input[type=email],
input[type=email]:-webkit-autofill,
input[type=email]:-webkit-autofill:hover,
input[type=email]:-webkit-autofill:focus,
input[type=password],
input[type=password]:-webkit-autofill,
input[type=password]:-webkit-autofill:hover,
input[type=password]:-webkit-autofill:focus {
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
}

@media (min-width: 1024px) {
  .form-control-row {
    display: flex;
    gap: 42px;
  }
}
.form-control-row + * {
  margin: 22px 0 0;
}
@media (min-width: 1374px) {
  .form-control-row + * {
    margin: 41px 0 0;
  }
}
.form-control-row > *:not(:first-child) {
  margin: 12px 0 0;
}
@media (min-width: 1374px) {
  .form-control-row > *:not(:first-child) {
    margin: 0;
  }
}
.form-control-row .form-control + .form-control {
  margin: 12px 0 0;
}
@media (min-width: 1024px) {
  .form-control-row .form-control + .form-control {
    margin: 0;
  }
}

.form-control {
  cursor: pointer;
  display: block;
}
.form-control + * {
  margin: 22px 0 0;
}
@media (min-width: 1374px) {
  .form-control + * {
    margin: 41px 0 0;
  }
}
.form-control-label {
  white-space: nowrap;
}
.form-control-text .form-control-input {
  width: 100%;
  border: 0;
  outline: 0;
  padding: 19px 30px 25px;
  border-radius: 22px;
  font-size: 20px;
  font-weight: 300;
  font-family: "Roboto", sans-serif;
}
@media (max-width: 1374px) {
  .form-control-text .form-control-input {
    font-size: 16px;
    padding: 13px 30px 16px;
  }
}
.form-control-text .form-control-label {
  display: block;
  font-size: 26px;
  line-height: 34px;
  font-weight: 700;
  margin: 0 0 11px;
}
@media (max-width: 1374px) {
  .form-control-text .form-control-label {
    font-size: 20px;
    line-height: 26px;
  }
}
.form-control-radio {
  font-size: 18px;
  font-weight: 700;
  display: grid;
  grid-template-columns: 1.5em auto;
  gap: 0.6em;
  align-items: center;
}
@media (max-width: 1374px) {
  .form-control-radio {
    font-size: 14px;
  }
}
.form-control-radio .form-control-input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font: inherit;
  color: currentColor;
  margin: 0;
  width: 1.5em;
  height: 1.5em;
  border: 0;
  border-radius: 1.5em;
  background-color: #fff;
  display: grid;
  place-content: center;
}
.form-control-radio .form-control-input::before {
  content: "";
  width: 0.72em;
  height: 0.72em;
  border-radius: 1em;
  background-color: #FF8014;
  transition: transform ease-in-out 0.2s;
  transform: scale(0);
}
.form-control-radio .form-control-input:checked::before {
  transform: scale(1);
}
.form-control-radio + .form-control {
  margin: 0;
}
.form-control-select .form-control-label {
  font-size: 20px;
}
@media (max-width: 1374px) {
  .form-control-select .form-control-label {
    font-size: 16px;
    line-height: 21px;
  }
}
.form-control-select .form-control-input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent url(assets/b3f4e55ca06cbea31d69.svg) no-repeat calc(100% - 1em) center;
  border: 1px solid #FF8014;
  border-radius: 25px;
  outline: none;
  padding: 10px 70px 13px 23px;
  margin: 0 0 0 14px;
  color: #FF8014;
  font-family: "Roboto", sans-serif;
  font-size: 20px;
  cursor: inherit;
  line-height: 26px;
}
@media (max-width: 1374px) {
  .form-control-select .form-control-input {
    font-size: 16px;
    line-height: 21px;
    padding: 9px 58px 9px 23px;
    margin: 7px 0 0;
  }
}
.form-control-button-link, .form-control-button-link-lined {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
  border: 0;
  outline: 0;
  font-size: 18px;
  color: inherit;
}
@media (max-width: 1374px) {
  .form-control-button-link, .form-control-button-link-lined {
    font-size: 14px;
  }
}
.form-control-button-link-lined {
  border-bottom: 1px solid #3F353E;
  padding: 0 0 4px;
  font-size: 14px;
}
@media (max-width: 1374px) {
  .form-control-button-link-lined {
    font-size: 12px;
  }
}
.form-control-button-primary {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #6CF7FF;
  border: 0;
  border-radius: 22px;
  outline: 0;
  font-size: 22px;
  padding: 19px;
  color: inherit;
}
@media (max-width: 1374px) {
  .form-control-button-primary {
    font-size: 16px;
  }
}
.form-control.form-control-button-block {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6em;
  width: 100%;
}
/*!*********************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/dist/cjs.js!./node_modules/resolve-url-loader/index.js!./node_modules/sass-loader/dist/cjs.js!./src/theme/modules/collapse/index.scss ***!
  \*********************************************************************************************************************************************************************************************************************/
/**
 * (c) David Giesemann
 * info@david-giesemann.de
 */
[data-toggle=collapse] {
  cursor: pointer;
}

.collapse {
  height: 0;
  overflow: hidden;
  transition: 0.2s ease-in-out height;
}
.collapse.show {
  height: auto;
}
