@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.3/font/bootstrap-icons.css");
/*
|--------------------------------------------------------------------------
| Colors
|--------------------------------------------------------------------------
*/
/*
|--------------------------------------------------------------------------
| Media Queries
|--------------------------------------------------------------------------
*/
/*
|--------------------------------------------------------------------------
| Behavior
|--------------------------------------------------------------------------
*/
body {
  min-height: 100vh;
  overflow-x: hidden;
}
html {
  scroll-behavior: smooth;
  position: relative;
  min-height: 100%;
  overflow-x: hidden;
}
::-webkit-scrollbar {
  width: 5px;
}
h1 {
  line-height: 1;
}
h1,
h2,
h3,
h4 {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
h1:not(:first-child),
h2:not(:first-child),
h3:not(:first-child),
h4:not(:first-child) {
  margin-top: 1em;
}
/* not always a margin-top */
.card h1,
.news-article h1,
.card h2,
.news-article h2,
.card h3,
.news-article h3,
.card h4,
.news-article h4 {
  margin-top: 0;
}
p {
  margin-bottom: 1em;
}
strong {
  font-weight: 500;
  font-style: normal;
}
small,
.small {
  font-size: 0.85em;
}
big,
.big {
  font-size: 1.25em;
}
.color-inherit h1,
.color-inherit h2,
.color-inherit h3,
.color-inherit h4,
.color-inherit a {
  color: inherit;
}
.color-inherit a.btn {
  border-color: inherit;
}
.color-inherit a:hover:not(.btn),
.color-inherit a:focus:not(.btn) {
  color: inherit;
  text-decoration: underline;
}
img {
  max-width: 100%;
}
.buttons-block a {
  margin-bottom: 1rem;
  display: inline-block;
  font-weight: 400;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  padding: 0.375rem 0.75rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.btn,
.buttons-block a {
  text-decoration: none !important;
  border-radius: 0 !important;
  font-size: inherit;
  font-weight: 500;
  font-family: inherit;
}
.btn:not(.search-button),
.buttons-block a:not(.search-button) {
  padding-left: 3rem;
  padding-right: 3rem;
}
.btn:hover,
.buttons-block a:hover {
  text-decoration: none !important;
}
@media (min-width: 1700px) {
  .container-wide {
    max-width: 1600px;
  }
}
/*
|--------------------------------------------------------------------------
| Logo (header & footer
|--------------------------------------------------------------------------
*/
@media (max-width: 991.98px) {
  header {
    padding: 15px 0;
  }
}
.navbar-brand {
  padding-bottom: 13px;
}
@media (min-width: 1400px) {
  .navbar-brand {
    padding-bottom: 15px;
  }
}
@media (min-width: 992px) {
  .navbar-brand {
    padding-top: 0;
  }
}
.navbar-brand img {
  width: 70vw;
  max-width: 400px;
}
@media (min-width: 992px) {
  .navbar-brand img {
    max-width: 300px;
  }
}
@media (min-width: 1600px) {
  .navbar-brand img {
    max-width: 400px;
  }
}
/*
|--------------------------------------------------------------------------
| special links
|--------------------------------------------------------------------------
*/
/* main,
footer {
	a[href^="mailto:"],
	a[href^="tel:"],
	a[href^="http"]:not(.social-link):not(.logo-link):not(.stretched-link),
	a[href$=".pdf"],
	a.download-link {
		&:before {
			display: inline-block;
			font-family: bootstrap-icons !important;
			font-style: normal;
			font-weight: normal !important;
			font-variant: normal;
			text-transform: none;
			line-height: 1;
			vertical-align: -0.125em;
			-webkit-font-smoothing: antialiased;
			color: inherit;
			margin-right: 0.25em;
		}

		&.download-link:before {
			content: "\F346";
		}

		&[href^="mailto:"]:before {
			content: "\f32c";
		}
	
		&[href^="tel:"]:before {
			content: "\f5b4";
		}
	
		&[href^="http"]:not(.social-link):before {
			content: "\F1C5";
		}
	
		&[href$=".pdf"]:before {
			content: "\F756";
		}
		//powerpoints
		&[href$=".ppt"], &[href$=".pptx"], &[href$=".pptm"] {
			&:before {
				content: "\F3AF";
			}
		}
		//archives
		&[href$=".zip"], &[href$=".rar"], &[href$=".tar"], &[href$=".tar.gz"], &[href$=".7z"] {
			&:before {
				content: "\F3BF";
			}
		}
		//videos
		&[href$=".avi"], &[href$=".h264"], &[href$=".m4v"], &[href$=".mkv"], &[href$=".mov"], &[href$=".mp4"], &[href$=".mpeg"], &[href$=".mpg"], &[href$=".ogv"], &[href$=".webm"] {
			&:before {
				content: "\F37B";
			}
		}
		//images
		&[href$=".svg"], &[href$=".gif"], &[href$=".jpeg"], &[href$=".jpg"], &[href$=".png"], &[href$=".webm"] {
			&:before {
				content: "\F42A";
			}
		}
		//documents like word
		&[href$=".docm"], &[href$=".docx"], &[href$=".dot"], &[href$=".dotm"], &[href$=".dotx"], &[href$=".odt"] {
			&:before {
				content: "\F38D";
			}
		}
		//excel
		&[href$=".xlsx"], &[href$=".xlsm"], &[href$=".xlsb"], &[href$=".xltx"], &[href$=".xltm"], &[href$=".xls"], &[href$=".xlt"], &[href$=".xml"], &[href$=".xlam"] {
			&:before {
				content: "\F368";
			}
		}
	}
} */
/*
|--------------------------------------------------------------------------
| header
|--------------------------------------------------------------------------
*/
header {
  max-height: 100vh;
  overflow-y: auto;
}
@media (min-width: 992px) {
  header {
    max-height: none;
    overflow-y: visible;
  }
}
header::-webkit-scrollbar {
  display: none;
}
header.nav-expanded {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
header .header-bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
header:not(.scrolled-down):not(.nav-expanded) .header-bg.banner-overlay {
  opacity: 0.5;
}
header:not(.scrolled-down):not(.nav-expanded) .header-bg.banner-overlay:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3rem;
  transform: translateY(100%);
}
/*
|--------------------------------------------------------------------------
| search form
|--------------------------------------------------------------------------
*/
.search-form {
  position: relative;
}
.search-form .btn.search-button {
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.search-form .btn.search-button:hover,
.search-form .btn.search-button:focus {
  background-color: transparent;
  color: inherit;
}
@media (min-width: 992px) {
  .search-form .search-input {
    display: none;
  }
  .search-form.show-input .search-input {
    display: block;
  }
  .search-form.show-input .btn.search-button {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid transparent;
  }
}
/*
|--------------------------------------------------------------------------
| Navbar Toggler (hamburger)
|--------------------------------------------------------------------------
*/
.navbar-toggler {
  width: 30px;
  height: 20px;
  padding: 0;
  position: relative;
  box-shadow: none !important;
  margin-bottom: 13px;
}
.navbar-toggler .menu-icon {
  width: 100%;
  height: 2px;
  transition: all 0.3s;
  display: inline-block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #000000;
}
.navbar-toggler .menu-icon:before,
.navbar-toggler .menu-icon:after {
  content: "";
  height: 2px;
  width: 100%;
  position: absolute;
  left: 0;
  transition: all 0.3s;
  background-color: #000000;
}
.navbar-toggler .menu-icon:before {
  top: -7px;
}
.navbar-toggler .menu-icon:after {
  bottom: -7px;
}
.navbar-toggler[aria-expanded="true"] .menu-icon {
  background-color: transparent;
}
.navbar-toggler[aria-expanded="true"] .menu-icon:before {
  top: 0;
  transform: rotate(45deg);
}
.navbar-toggler[aria-expanded="true"] .menu-icon:after {
  bottom: 0;
  transform: rotate(-45deg);
}
/*
|--------------------------------------------------------------------------
| Menu
|--------------------------------------------------------------------------
*/
.dropdown-menu {
  overflow: hidden;
}
/*
|--------------------------------------------------------------------------
| navigation mobile
|--------------------------------------------------------------------------
*/
header .navbar-nav .nav-item.dropdown .dropdown-toggle {
  position: relative;
}
header .navbar-nav .nav-item.dropdown .dropdown-toggle:after {
  display: none;
}
header .navbar-nav .nav-item.dropdown .dropdown-toggle .dropdown-toggler {
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  background-image: url('/static/art/chevron-right.svg');
  background-size: auto 100%;
  background-repeat: no-repeat;
  background-position: center;
  width: 1em;
  height: 1em;
  transition: 0.3s all;
}
header .navbar-nav .nav-item.dropdown .dropdown-toggle.show .dropdown-toggler {
  transform: translateY(-50%) rotate(90deg) scaleX(-1);
}
header .navbar-nav .nav-item.dropdown.lang-nav .dropdown-toggler {
  pointer-events: none;
}
@media (min-width: 992px) {
  header .navbar-nav .nav-item.dropdown.lang-nav .dropdown-toggler {
    right: 5px;
  }
  header .navbar-nav .nav-item.dropdown.lang-nav .dropdown-menu {
    left: auto;
    right: 0;
    text-align: right;
    min-width: 0;
  }
}
@media (min-width: 992px) {
  header .shortcuts .nav-link {
    font-size: 16px;
  }
}
/*
|--------------------------------------------------------------------------
| banner
|--------------------------------------------------------------------------
*/
#banner .ratio {
  overflow: hidden;
  --bs-aspect-ratio: 56.25%;
}
@media (min-width: 768px) {
  #banner .ratio {
    --bs-aspect-ratio: 50%;
  }
  #banner .ratio.ratio-4to1 {
    --bs-aspect-ratio: 25%;
  }
  #banner .ratio.ratio-3to1 {
    --bs-aspect-ratio: 33.333333%;
  }
}
#banner .ratio > * {
  width: 100%;
  height: auto;
  min-height: 100%;
  min-width: 100%;
  top: 50%;
  transform: translateY(-50%);
}
#banner .carousel-item {
  min-height: 0 !important;
}
#banner .buttons-block a,
#banner .btn {
  color: inherit;
  background: transparent;
  border-color: #ffffff;
}
/*
|--------------------------------------------------------------------------
| gallery thumbnails
|--------------------------------------------------------------------------
*/
.fancybox figure {
  position: relative;
}
.fancybox .thumbnails-caption {
  position: absolute;
  right: 15%;
  bottom: 0;
  left: 15%;
  color: #ffffff;
  text-align: center;
  filter: drop-shadow(0 0 0.3rem #000000);
}
/*
|--------------------------------------------------------------------------
| gallery slideshow
|--------------------------------------------------------------------------
*/
.news-carousel-outer-wrap .news-carousel-wrap {
  margin: 0 auto;
  width: 300px;
  max-width: 50vw;
  height: 600px;
  position: relative;
  perspective: 1500px;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel {
  height: 100%;
  width: 100%;
  position: absolute;
  transform-style: preserve-3d;
  transition: transform 0.5s;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap {
  transform-style: preserve-3d;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-pos="2"] .news-card,
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-pos="10"] .news-card {
  background: #bce0fd;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-pos="3"] .news-card *,
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-pos="9"] .news-card * {
  opacity: 0.75;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card {
  display: block;
  position: absolute;
  width: 300px;
  max-width: 50vw;
  text-align: center;
  background: #ffffff;
  transition: transform 0.5s, background 0.5s;
  color: #133958;
  font-size: 16px;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card * {
  transition: opacity 0.5s;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card .news-lead {
  height: 4.2em;
  overflow-y: hidden;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card h3 {
  font-size: 24px;
  margin-bottom: 0.5em;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card .btn.btn-primary:hover,
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card .btn.btn-primary:focus {
  color: #ffffff;
  background-color: #36c965;
  box-shadow: none;
}
@media (max-width: 575.98px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card {
    font-size: 14px;
  }
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card h3 {
    font-size: 18px;
  }
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card .btn.btn-primary {
    font-size: 12px;
    padding: 0.5rem 1rem;
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card:hover,
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap .news-card:focus {
  cursor: pointer;
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="1"] {
  transform: rotateY(0deg) translateZ(300px) translateY(80px);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="1"] {
    transform: rotateY(0deg) translateZ(350px) translateY(80px);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="2"] {
  transform: rotateY(36deg) translateZ(300px) translateY(80px) rotateY(-36deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="2"] {
    transform: rotateY(36deg) translateZ(350px) translateY(80px) rotateY(-36deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="3"] {
  transform: rotateY(72deg) translateZ(300px) translateY(80px) rotateY(-72deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="3"] {
    transform: rotateY(72deg) translateZ(350px) translateY(80px) rotateY(-72deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="4"] {
  transform: rotateY(108deg) translateZ(300px) translateY(80px) rotateY(-108deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="4"] {
    transform: rotateY(108deg) translateZ(350px) translateY(80px) rotateY(-108deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="5"] {
  transform: rotateY(144deg) translateZ(300px) translateY(80px) rotateY(-144deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="5"] {
    transform: rotateY(144deg) translateZ(350px) translateY(80px) rotateY(-144deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="6"] {
  transform: rotateY(180deg) translateZ(300px) translateY(80px) rotateY(-180deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="6"] {
    transform: rotateY(180deg) translateZ(350px) translateY(80px) rotateY(-180deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="7"] {
  transform: rotateY(216deg) translateZ(300px) translateY(80px) rotateY(-216deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="7"] {
    transform: rotateY(216deg) translateZ(350px) translateY(80px) rotateY(-216deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="8"] {
  transform: rotateY(252deg) translateZ(300px) translateY(80px) rotateY(-252deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="8"] {
    transform: rotateY(252deg) translateZ(350px) translateY(80px) rotateY(-252deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="9"] {
  transform: rotateY(288deg) translateZ(300px) translateY(80px) rotateY(-288deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="9"] {
    transform: rotateY(288deg) translateZ(350px) translateY(80px) rotateY(-288deg);
  }
}
.news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="10"] {
  transform: rotateY(324deg) translateZ(300px) translateY(80px) rotateY(-324deg);
}
@media (min-width: 992px) {
  .news-carousel-outer-wrap .news-carousel-wrap .news-carousel .news-card-wrap[data-item="10"] {
    transform: rotateY(324deg) translateZ(350px) translateY(80px) rotateY(-324deg);
  }
}
/*
|--------------------------------------------------------------------------
| Gallerie fancybox
|--------------------------------------------------------------------------
*/
[data-fancybox] figure {
  cursor: pointer;
}
/*
|--------------------------------------------------------------------------
| news
|--------------------------------------------------------------------------
*/
.news-date-categories-list {
  line-height: 1;
}
.news-date-categories-list .list-inline-item {
  margin-right: 0;
}
.news-date-categories-list .list-inline-item:not(:first-child) {
  padding-left: 1em;
  border-left: 1px solid;
  margin-left: 1em;
}
/*
|--------------------------------------------------------------------------
| video embed
|--------------------------------------------------------------------------
*/
.video-container {
  overflow: hidden;
  /* 16:9 aspect ratio */

  padding-top: 56.25%;
  position: relative;
}
.video-container iframe {
  border: 0;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
/*
|--------------------------------------------------------------------------
| Hero Sections
|--------------------------------------------------------------------------
*/
.color-inherit * {
  color: inherit;
}
.color-inherit .buttons-block a,
.color-inherit .btn {
  color: inherit;
  background: transparent;
  border-color: inherit;
}
.section-split.section-overlap,
.section-parallax.section-overlap,
.section-simple.section-overlap {
  padding-bottom: 60px;
  margin-bottom: -60px;
}
@media (min-width: 992px) {
  .section-split.section-overlap,
  .section-parallax.section-overlap,
  .section-simple.section-overlap {
    padding-bottom: 85px;
    margin-bottom: -85px;
  }
}
@media (min-width: 1200px) {
  .section-split.section-overlap,
  .section-parallax.section-overlap,
  .section-simple.section-overlap {
    padding-bottom: 110px;
    margin-bottom: -110px;
  }
}
.section-split[overlaps-next="True"],
.section-parallax[overlaps-next="True"],
.section-simple[overlaps-next="True"] {
  padding-bottom: 60px !important;
  margin-bottom: -90px;
}
@media (min-width: 992px) {
  .section-split[overlaps-next="True"],
  .section-parallax[overlaps-next="True"],
  .section-simple[overlaps-next="True"] {
    padding-bottom: 110px !important;
    margin-bottom: -110px;
  }
}
@media (min-width: 1200px) {
  .section-split[overlaps-next="True"],
  .section-parallax[overlaps-next="True"],
  .section-simple[overlaps-next="True"] {
    padding-bottom: 130px !important;
    margin-bottom: -130px;
  }
}
.section-split ul,
.section-parallax ul,
.section-simple ul {
  font-size: 18px;
  margin-top: 1.5rem;
  padding-left: 1.5rem;
  list-style: none;
  padding-left: 0;
}
.section-split ul li,
.section-parallax ul li,
.section-simple ul li {
  margin: 0.5em 0;
  position: relative;
  padding-left: 1.5em;
}
.section-split ul li:before,
.section-parallax ul li:before,
.section-simple ul li:before {
  content: "";
  position: absolute;
  top: 0.15em;
  left: 0;
  width: 1em;
  height: 1em;
  background-image: url("/static/art/thalwil/Arrow-Small-Right-white.svg");
  background-size: 100% auto;
  background-position: left center;
}
@media (min-width: 1400px) {
  .section-split ul,
  .section-parallax ul,
  .section-simple ul {
    font-size: 22px;
    margin-top: 3rem;
    margin-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .section-split.image-left img,
  .section-parallax.image-left img,
  .section-simple.image-left img {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .section-split.image-right img,
  .section-parallax.image-right img,
  .section-simple.image-right img {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
}
.section-parallax {
  overflow: hidden;
  clip-path: inset(0);
  min-height: 50vw;
}
@media (min-width: 992px) {
  .section-parallax {
    min-height: 30vw;
  }
}
.section-parallax .parallax-image {
  left: 0;
  top: 0;
}
.section-parallax:not(.section-slider) .parallax-content {
  filter: drop-shadow(0 0 1rem #000000);
}
.section-parallax.section-slider img.parallax-image {
  filter: blur(10px) brightness(75%);
}
.section-split {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
@media (min-width: 992px) {
  .section-split {
    margin-top: 5rem;
    margin-bottom: 5rem;
  }
}
.section-split h1,
.section-split h2,
.section-split h3,
.section-split h4 {
  margin-top: 0;
}
.section-split .section-content {
  z-index: 1;
}
.section-split .main-image {
  width: 100%;
}
.section-split .main-image.image-top-right {
  margin-top: -50px;
  margin-right: -50px;
  object-fit: contain;
  max-width: 600px;
  height: auto;
}
@media (min-width: 1700px) {
  .section-split .main-image.image-top-right {
    margin-top: -95px;
    margin-right: -110px;
  }
}
@media (min-width: 992px) {
  .section-split .main-image {
    width: 40vw;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    pointer-events: none;
  }
  .section-split .main-image.left {
    right: auto;
    left: 0;
  }
}
.img-fit {
  object-fit: cover;
  object-position: center center;
}
/*
|--------------------------------------------------------------------------
| Cards
|--------------------------------------------------------------------------
*/
.card {
  overflow: hidden;
}
.card .card-image {
  overflow: hidden;
}
.card .card-image img {
  transition: 0.3s all ease-in-out;
}
.card .logo-image {
  position: relative;
  padding-top: 62.5%;
}
@media (max-width: 767.98px) {
  .card .logo-image {
    padding-top: 180px;
  }
}
.card .logo-image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-height: calc(100% - 20px);
  max-width: calc(100% - 20px);
}
.card .card-body {
  max-width: 80%;
}
.card .arrow-icon {
  position: absolute;
  top: 50%;
  left: 110%;
  transform: translate(-50%, -50%);
}
.card .arrow-icon img,
.card .arrow-icon svg {
  width: 27px;
  height: 27px;
  max-width: none;
  transition: all 0.3s;
}
.card:hover {
  cursor: pointer;
}
.card:hover .card-image img,
.card:hover .card-image svg {
  transform: scale(1.15);
}
.card:hover .arrow-icon img,
.card:hover .arrow-icon svg {
  transform: translateX(10px);
}
/*
|--------------------------------------------------------------------------
| Forms
|--------------------------------------------------------------------------
*/
#div_id_wagtailcaptcha .form-control {
  padding: 0;
  border: none;
}
/*
|--------------------------------------------------------------------------
| Footer
|--------------------------------------------------------------------------
*/
#top-link {
  cursor: pointer;
}
@media (min-width: 992px) {
  #top-link {
    width: 50px !important;
  }
}
footer {
  position: relative;
  padding: 1rem 0;
}
footer .footer-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}
footer.color-inherit h3 {
  font-size: 125%;
  color: #fff;
}
.bottom-bar a {
  font-weight: 400;
  color: inherit;
}
.bottom-bar .hstack {
  flex-direction: column;
}
@media (min-width: 576px) {
  .bottom-bar .hstack {
    flex-direction: row;
  }
}
/*
|--------------------------------------------------------------------------
| cookie banner
|--------------------------------------------------------------------------
*/
#cookie-notification {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999;
}
/*
|--------------------------------------------------------------------------
| Accordion
|--------------------------------------------------------------------------
*/
.accordion-item {
  border: none;
  border-radius: 0;
  border-bottom: 1px solid #133958;
}
.accordion-item:last-child {
  border-bottom: none;
}
@media (max-width: 991.98px) {
  .accordion-item .accordion-body {
    font-size: 16px;
  }
}
.accordion-item .accordion-header .accordion-button {
  color: #133958;
  border-radius: 0;
  background-color: transparent;
  border: none;
  box-shadow: none;
  font-size: 18px;
}
@media (min-width: 992px) {
  .accordion-item .accordion-header .accordion-button {
    font-size: 36px;
  }
}
.accordion-item .accordion-header .accordion-button:after {
  display: none;
}
.accordion-item .accordion-header .accordion-button:focus {
  box-shadow: none;
}
.accordion-item .accordion-header .accordion-button .bi-dash {
  display: none;
}
.accordion-item .accordion-header .accordion-button[aria-expanded="true"] .bi-dash {
  display: block;
}
.accordion-item .accordion-header .accordion-button[aria-expanded="true"] .bi-plus {
  display: none;
}
.accordion-item .accordion-header .accordion-button .bi {
  font-size: 1.25em;
  transition: all 0.3s;
  color: #36c965;
}
/*
|--------------------------------------------------------------------------
| two images block
|--------------------------------------------------------------------------
*/
@media (min-width: 992px) {
  .two-images-section .image-text {
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translateY(100%);
  }
  .two-images-section .img-big-wrap {
    position: relative;
    width: calc(100% + 50vw + 27px);
  }
  .two-images-section .img-big-wrap img {
    max-width: none;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
  }
  .two-images-section.left-big .img-big-wrap img {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .two-images-section.right-big .img-big-wrap img {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
}
/*
|--------------------------------------------------------------------------
| Tabs
|--------------------------------------------------------------------------
*/
.tabs-block .nav-tabs {
  margin-bottom: 4rem;
  border: none;
}
@media (max-width: 767.98px) {
  .tabs-block .nav-tabs .nav-item {
    width: 100%;
  }
}
.tabs-block .nav-tabs .nav-item .nav-link {
  border: none;
  color: rgba(19, 57, 88, 0.33);
}
@media (max-width: 767.98px) {
  .tabs-block .nav-tabs .nav-item .nav-link {
    padding-left: 0;
  }
}
.tabs-block .nav-tabs .nav-item .nav-link:hover,
.tabs-block .nav-tabs .nav-item .nav-link.active {
  color: #36c965;
}
.tabs-block .nav-tabs .nav-item:first-child .nav-link {
  padding-left: 0;
}
/*
|--------------------------------------------------------------------------
| button links
|--------------------------------------------------------------------------
*/
.important-links {
  position: fixed;
  z-index: 1;
  right: 0;
  top: 15%;
  transform: rotate(270deg);
  transform-origin: right bottom;
}
.important-links .btn-primary.btn-link {
  padding: 0.4em 3em 0.4em 2em;
  position: relative;
  margin-left: 1rem;
}
.important-links .btn-primary.btn-link:first-child {
  margin-left: 0;
}
.important-links .btn-primary.btn-link:after {
  content: "";
  position: absolute;
  right: 0.5em;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  width: 1em;
  height: 1em;
  background-image: url(/static/art/thalwil/Arrow-Small-Right-white_small.svg);
  background-size: contain;
}
@media (min-width: 768px) {
  .important-links .btn-primary.btn-link:after {
    right: 1em;
  }
}
.important-links .btn-primary.btn-link:hover {
  background-color: #36c965;
  color: #fff;
}
.important-links .btn-primary.btn-link:hover:after {
  transform: translate(0.2em, -50%);
}
.important-links-mobile-wrap {
  position: relative;
}
.important-links-mobile-wrap .important-link-mobile {
  padding-right: 2em !important;
  padding-left: 1em !important;
  position: relative;
  width: 100%;
  text-align: left;
}
@media (min-width: 768px) {
  .important-links-mobile-wrap .important-link-mobile {
    width: 49%;
    display: inline-block;
  }
}
.important-links-mobile-wrap .important-link-mobile:after {
  content: "";
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s;
  width: 1em;
  height: 1em;
  background-image: url(/static/art/thalwil/Arrow-Small-Right-white_small.svg);
  background-size: contain;
}
/*
|--------------------------------------------------------------------------
| typed animation
|--------------------------------------------------------------------------
*/
.typed-cursor {
  font-family: 'Aeonik-Light';
}
/*
|--------------------------------------------------------------------------
| image block special
|--------------------------------------------------------------------------
*/
.image-block.all-right {
  position: relative;
  width: 50%;
  left: 50%;
}
.image-block.all-right img {
  left: 50vw;
  position: relative;
  transform: translateX(-100%);
}
/*
|--------------------------------------------------------------------------
| success-story
|--------------------------------------------------------------------------
*/
.section-split.success-story {
  color: #ffffff;
  background-color: #133958;
  /* a round element with backbround color, text is centered horizontally and vertically*/

}
.section-split.success-story p {
  margin-bottom: 0;
}
.section-split.success-story h2 {
  /* font-size: 30px; */

}
@media (min-width: 992px) {
  .section-split.success-story h2 {
    font-size: 50px;
  }
}
@media (min-width: 1600px) {
  .section-split.success-story h2 {
    font-size: 70px;
  }
}
.section-split.success-story .text1 {
  font-size: 20px;
  /* @media @large-up {
			font-size: 25px;
		} */

}
@media (min-width: 1600px) {
  .section-split.success-story .text1 {
    font-size: 25px;
  }
}
.section-split.success-story .text2 {
  color: #133958;
  background-color: #ffffff;
  font-size: 25px;
  /* @media @large-up {
			font-size: 35px;
		} */

}
@media (min-width: 1600px) {
  .section-split.success-story .text2 {
    font-size: 30px;
  }
}
.section-split.success-story .circle {
  color: #133958;
  border-radius: 50%;
  background-color: #ffffff;
  font-size: 12px;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  position: relative;
  text-align: center;
}
@media (min-width: 768px) {
  .section-split.success-story .circle {
    font-size: 20px;
  }
}
@media (min-width: 992px) {
  .section-split.success-story .circle {
    font-size: 16px;
  }
}
@media (min-width: 1200px) {
  .section-split.success-story .circle {
    font-size: 20px;
  }
}
.section-split.success-story .circle.text4 {
  background-color: #008AE2;
}
.section-split.success-story .circle.text5 {
  background-color: #58B2ED;
}
.section-split.success-story .circle p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.section-split.success-story .main-image {
  /* top: 5%;
		right: -5%;
		height: 90%;
		object-fit: contain;

		@media @small-up {
			max-width: 60vw;
			margin: 0 auto;

		} */

  /* @media @mega-large-up {
			width: 60vw;
			right: -15%;
		} */

}
@media (min-width: 992px) {
  .section-split.success-story .main-image {
    /* width: 50vw; */
  
    border-radius: 0;
  }
}
.section-split.success-story .image-text {
  width: 100%;
  z-index: 1;
  filter: drop-shadow(0 0 0.3rem #000000);
  font-size: 14px;
  line-height: 1.25;
}
@media (max-width: 991.98px) {
  .section-split.success-story .image-text {
    position: absolute;
    bottom: 0;
    right: 0;
  }
}
.section-split.success-story .image-text .text6 {
  font-size: 18px;
}
@media (min-width: 500px) {
  .section-split.success-story .image-text {
    width: 75%;
  }
}
@media (min-width: 576px) {
  .section-split.success-story .image-text {
    font-size: 16px;
  }
  .section-split.success-story .image-text .text6 {
    font-size: 22px;
  }
}
@media (min-width: 768px) {
  .section-split.success-story .image-text {
    font-size: 18px;
  }
  .section-split.success-story .image-text .text6 {
    font-size: 26px;
  }
}
@media (min-width: 992px) {
  .section-split.success-story .image-text {
    width: 100%;
    font-size: 16px;
  }
  .section-split.success-story .image-text .text6 {
    font-size: 22px;
  }
}
@media (min-width: 1200px) {
  .section-split.success-story .image-text {
    width: 100%;
    font-size: 18px;
  }
  .section-split.success-story .image-text .text6 {
    font-size: 26px;
  }
}
/*
|--------------------------------------------------------------------------
| map_search css from ebp
|--------------------------------------------------------------------------
*/
#map-search #searchControl {
  justify-content: center;
  z-index: 100;
  background-color: rgba(255, 255, 255, 0.95);
  pointer-events: auto;
  display: block;
  font-family: 'Roboto', sans-serif;
}
@media (min-width: 992px) {
  #map-search #searchControl {
    height: 97vh;
    width: 420px;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-right: 10px;
    margin-left: calc(1.6666666699999997%);
    border-radius: 2px;
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
  }
}
#map-search .energyInformationDisplay {
  margin: 15px;
}
#map-search #map {
  z-index: 1;
  background-color: white;
  width: 100%;
  height: 50vh;
}
@media (min-width: 992px) {
  #map-search #map {
    z-index: 1;
    background-color: white;
    width: 100vw;
    height: 100vh;
  }
}
#map-search .leaflet-control-container {
  position: absolute;
  right: 42px;
  margin-right: 10px;
}
#map-search .autocomplete {
  width: 100%;
  position: relative;
  display: inline-block;
}
@media (min-width: 992px) {
  #map-search .autocomplete {
    width: 100%;
    position: relative;
    display: inline-block;
  }
}
#map-search .autocomplete-items {
  position: absolute;
  border: 1px solid #d4d4d4;
  border-bottom: none;
  border-top: none;
  z-index: 99;
  top: 100%;
  left: 0;
  right: 0;
  margin-left: 15px;
  margin-right: 15px;
}
#map-search .autocomplete-items div {
  padding: 10px;
  cursor: pointer;
  background-color: #fff;
  border-bottom: 1px solid #d4d4d4;
}
#map-search .autocomplete-items div:hover {
  background-color: #e9e9e9;
}
#map-search input {
  width: 100%;
  border: 1px solid transparent;
  background-color: #f1f1f1;
  padding: 10px;
  font-size: 16px;
}
#map-search .badge {
  background-color: #36c965;
}
#map-search .accordion-button:not(.collapsed) {
  background-color: #133958 !important;
  color: white !important;
}
#map-search .btn-primary {
  background-color: #36c965 !important;
  border-color: #36c965 !important;
}
#map-search .accordion-button:not(.collapsed)::after {
  transform: none !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' id='accordionIcon' viewBox='0 0 16 16' fill='%23FFFFFF' %3e%3cpath  d='M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z'/%3e%3c/svg%3e") !important;
}
#map-search .accordion-button::after {
  background-size: 40px !important;
  width: 40px !important;
  height: 40px !important;
  background-position: center center;
  transition: none !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg'  id='accordionIcon' viewBox='0 0 16 16' fill='%2336c965'%3e%3cpath   d='M8 4a.5.5 0 0 1 .5.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3A.5.5 0 0 1 8 4z'/%3e%3c/svg%3e") !important;
}
/*
|--------------------------------------------------------------------------
| map_search css overrwitings
|--------------------------------------------------------------------------
*/
#map-search {
  position: relative;
  font-size: 14px;
}
#map-search .accordion-button {
  font-size: inherit;
}
#map-search .accordion-button:after {
  display: block;
  background-size: 30px !important;
  width: 30px !important;
  height: 30px !important;
}
#map-search h2 {
  margin-top: 0;
  font-size: inherit;
}
#map-search .btn.btn-primary:hover {
  color: #fff !important;
}
@media (min-width: 992px) {
  #map-search {
    /* #zoom-preventer {
  			position: absolute;
  			top: 0;
  			left: 0;
  			width: 100%;
  			height: 100%;
  			overflow: hidden;
  			z-index: 2;
  			pointer-events: none;
  
  			&.disabled {
  				pointer-events: none;
  			}
  		} */
  
  }
  #map-search #searchControl {
    height: 78vh;
    margin-left: calc(-8.33333333% + 10px);
    max-height: 98vw;
  }
  #map-search #map {
    height: 80vh;
    max-height: 100vw;
  }
}
/*
|--------------------------------------------------------------------------
| online forms with tarteaucitron recaptcha not accepted disabled button show title
|--------------------------------------------------------------------------
*/
#submit-id-submit-button[disabled] {
  pointer-events: auto;
}
