/*
Theme Name: WIPF Child
Theme URI: https://point-break.ch
Template: WIPF
Author: the PB team
Author URI: https://point-break.ch
Description: WIPF theme
Tags: one-column,accessibility-ready,custom-colors,custom-menu,custom-logo,editor-style,featured-images,footer-widgets,block-patterns,rtl-language-support,sticky-post,threaded-comments,translation-ready
Version: 1.0.1748015668
Updated: 2025-05-23 17:54:28

*/

/* ===========================================
------------------GENERAL---------------------
============================================== */
*{
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  word-break: break-word;
  word-wrap: break-word;
}
body{
  --gold: #BD9E56;
  --dark: #52514F;
  --beige: #EFE6D5;
  --gray: #9A9A9A;
  --gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.50) 53.5%, #EFE6D5 100%);

  --spacing: min(81px, 4.75vw);/* 96 - 15 */
  --offset-row: 90px;
  --hh: 110px;

  --offset: 90px;
  --offset-120: 120px;/* 120 / 100 / 72 */
  --offset-80: 80px;
  --offset-80-d: 80px; /* 80 / 64 / 40 */
  --offset-64: 64px;
  --offset-64-d: 64px;/* 64 / 48 / 32 */
  --offset-56: 56px;
  --offset-40: 40px;
  --offset-40-d: 40px; /* 40 / 32 / 24 */
  --offset-32: 32px;

  --max-width: 1566px;
}
body, body .vc_section{
  margin: 0;
}
.edit-link{
  display: none;
}
.grecaptcha-badge {
  visibility: hidden;
}
.site{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100vh;
}
.lh-0{
  line-height: 0;
}
html.with-fancybox body.hide-scrollbar .site_header{
  margin-right: calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));
}
.wpb_single_image .vc_figure, .wpb_single_image .vc_single_image-wrapper{
  display: block;
}
.full_image img{
  max-width: 100%!important;
}
/* @sections */
.vc_section{
  padding-left: var(--spacing);
  padding-right: var(--spacing);
}
.vc_section.full_width{
  padding-left: 0;
  padding-right: 0;
}
.vc_section.full_width_section > .vc_row {
  margin-left: 0;
  margin-right: 0;
}
.entry-content section{
  padding-top: var(--offset);
  padding-bottom: var(--offset);
}
.entry-content .vc_section.vc_section-has-fill+.vc_section, .entry-content .vc_section.vc_section-has-fill, .entry-content .hero.vc_section + section{
  padding-top: calc(var(--offset) * 1.4);
}
.entry-content section:first-child{
	/* padding-top: calc(var(--offset) + var(--hh)); */
  margin-top: var(--hh);
}
.vc_section:not(.vc_section-has-fill) + .vc_section.vc_section-has-fill{
  margin-top: calc(var(--offset) * .4);
}
.entry-content .vc_section.vc_section-has-fill, .entry-content .vc_section:last-child{
  padding-bottom: calc(var(--offset) * 1.4);
}
.vc_section>.vc_row{
  max-width: var(--max-width);
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.vc_section.full_width>.vc_row{
  max-width: 1728px;
}
.vc_section.small_section>.vc_row,
.vc_section>.vc_row.small_row{
  max-width: min(67%, 1046px);
}
.vc_section.middle_section>.vc_row{
  max-width: min(84%, 1306px);
}
.vc_section>.vc_row.full_width_row{
  max-width: 1920px;
}
/* @row */
.vc_row{
  margin-bottom: var(--offset-row);
}
.entry-content .vc_section.vc_section-has-fill+.vc_row-full-width+.vc_section,
.entry-content .vc_col-has-fill>.vc_column-inner, .entry-content .vc_row-has-fill+.vc_row-full-width+.vc_row>.vc_column_container>.vc_column-inner, .entry-content .vc_row-has-fill+.vc_row>.vc_column_container>.vc_column-inner, .entry-content .vc_row-has-fill>.vc_column_container>.vc_column-inner{
  padding-top: 0;
}
.master_row .vc_row{
  margin-left: 0;
  margin-right: 0;
}
.master_row .vc_row .vc_column_container>.vc_column-inner, section.full_width>.vc_row>.vc_column_container>.vc_column-inner, .vc_row.full_width_row .vc_column_container>.vc_column-inner{
  padding-left: 0;
  padding-right: 0;
}
/* @elements */
.wpb_content_element, .vc_do_btn, .wpb_wrapper .vc_tta-container, .vc_do_message, .vc_row .vc_row{
  margin-bottom: var(--gap, 27px);
}
.wpb_content_element:last-child, .vc_do_btn:last-child, .wpb_wrapper .vc_tta-container:last-child, .vc_row .vc_row:last-child, .vc_row .vc_do_message:last-child, .vc_row .vc_row:last-child, .vc_row:last-child, .wpb_content_element.mb-0{
  margin-bottom: 0;
}
.mobile_title{
  display: none;
}
.clear{
  --gap: 0;
}
.gap-80{
  --gap: var(--offset);
}
.gap-56{
  --gap: 56px;
}
.gap-45{
  --gap: 45px;
}
.gap-40{
  --gap: 40px;
}
.gap-16{
  --gap: 16px;
}
.gap-8{
  --gap: 8px;
}

/* iframe */
iframe{
  width: 100%;
  border: 0;
}
.timify_iframe iframe{
  height: 825px;
}

@media screen  and (min-width: 1200px) and (max-width: 1480px){
  body{

  --offset: 72px;
  --offset-row: 72px;
  --hh: 90px;

  --offset-120: 100px;
  --offset-80-d: 64px;
  --offset-40-d: 32px;
  --offset-64-d: 48px;
  }
  .gap-80 .gap-40{
    --gap: 32px;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  body{
  --offset: 56px;
  --offset-row: 56px;
  --spacing: 3vw;
  --hh: 84px;

  --offset-120: 80px;
  --offset-80-d: 48px;
  --offset-40-d: 32px;
  --offset-64-d: 40px;
  }
  .gap-80 .gap-40{
    --gap: 28px;
  }
}
@media screen and (max-width: 767px){
  body{
  --spacing: 1px;
  --offset: 48px;
  --offset-row: 48px;
  --hh: 78px;

  --offset-120: 64px;
  --offset-80-d: 40px;
  --offset-40-d: 24px;
  --offset-64-d: 32px;
  }

  .gap-40, .gap-45{
    --gap: 25px;
  }
  .wpb_content_element, .vc_do_btn, .wpb_wrapper .vc_tta-container, .vc_do_message, .vc_row .vc_row{
    margin-bottom: var(--gap, 18px);
  }
  .timify_iframe iframe{
    height: 850px;
  }


}
@media screen  and (min-width: 430px) and (max-width: 960px){
  .wpb_wrapper:has(.mobile_title) .desktop_title{
    display: none;
  }
  .mobile_title{
    display: block;
  }
}
/* ===========================================
------------------FONT---------------------
============================================== */
@font-face {
  font-family: "PlayfairDisplay";
  font-weight: 400;
  font-style: normal;
  src: url("/wp-content/themes/WIPF-child/fonts/PlayfairDisplay-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "PlayfairDisplay";
  font-weight: 700;
  font-style: normal;
  src: url("/wp-content/themes/WIPF-child/fonts/PlayfairDisplay-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Inter";
  font-weight: 300;
  font-style: normal;
  src: url("/wp-content/themes/WIPF-child/fonts/Inter_24pt-Light.ttf") format("truetype");
}
body, button, input, textarea, select{
  font-family: "Inter",sans-serif;
  color: black;
  letter-spacing: 0;
  cursor: default;
}
a, span{
  font-family: inherit;
  color: inherit;
}
h1, .h1 *{
  font-size: 3.125rem;
  line-height: normal;
}
h2, .h2 *{
  font-size: 6.25rem;
  line-height: .8;
}
h3, .h3 *, .title_m *, .h2_like_h3 h2{
  font-size: 2.1875rem;
  line-height: normal;
  font-weight: 400;
}
h4, .h4 *, .title_s *, .menu>li>a {
  font-size: 1.375rem;
  line-height: normal;
}
h1, .h1 *, h2, .h2 *, h4, .h4 *, .title_s *, h3, .h3 *, .title_m *, .menu>li>a{
  font-family: "PlayfairDisplay",sans-serif;
}
h5, h6, li, p, .site-content .entry-content .vc_btn3-container>.vc_general, .form_item input, .form_item textarea, .form_item select, label, .wpcf7 form .wpcf7-response-output, .wp-block-button__link, input[type=submit], .wpcf7-field-btn{
  font-size: 1.125rem;
  line-height: normal;
  font-weight: 300;
}
h1, .h1 *, h2, .h2 *, h4, .h4 *, .title_s *, .menu>li>a, strong, label, .h3 strong *{
  font-weight: 700;
}
p, .wpb_text_column ul{
  margin-bottom: 24px;
}
p:last-child{
  margin-bottom: 24px;
}
h1, h2, h3, h4, h5, h6, p{
  margin-top: 0;
}
.white_text{
  color: white;
}
em{
  color: var(--gold);
  font-style: normal;
}
.gold_text{
  color: var(--gold);
}
.description_text p{
  font-size: 1rem;
}

@media screen and (min-width: 1200px) and (max-width: 1480px){
  h1, .h1 *{
    font-size: 2.625rem;
  }
  h2, .h2 *{
    font-size: 4.875rem;
  }
  h3, .h3 *, .title_m *, .h2_like_h3 h2{
    font-size: 1.75rem;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  h1, .h1 *, .nav_wrapper .menu>li:not(.anfragen_menu_item)>a{
    font-size: 2rem;
  }
  h2, .h2 *{
    font-size: 4.25rem;
  }
  h3, .h3 *, .title_m *, .h2_like_h3 h2, .menu>li>a{
    font-size: 1.5rem;
  }
  h4, .h4 *, .title_s *{
    font-size: 1.125rem;
  }
  h5, h6, li, p, .site-content .entry-content .vc_btn3-container>.vc_general, .form_item input, .form_item textarea, .form_item select, label, .wpcf7 form .wpcf7-response-output, .wp-block-button__link, input[type=submit], .wpcf7-field-btn{
    font-size: 1.0625rem;
  }
}
@media screen and (max-width: 767px){
  h1, .h1 *{
    font-size: 1.5625rem;
  }
  h2, .h2 *{
    font-size: 3.125rem;
  }
  h3, .h3 *, .title_m *, .h2_like_h3 h2{
    font-size: 1.25rem;
  }
  h4, .h4 *, .title_s *, .menu>li>a{
    font-size: 1.125rem;
  }
  h5, h6, li, p, .site-content .entry-content .vc_btn3-container>.vc_general, .form_item input, .form_item textarea, .form_item select, label, .wpcf7 form .wpcf7-response-output, .wp-block-button__link, input[type=submit], .wpcf7-field-btn{
    font-size: 1rem;
  }
  p:not(:last-child), .wpb_text_column ul:not(:last-child) {
    margin-bottom: 16px;
  }
}

/* ===========================================
-------------GENERAL COMPONENTS---------------
============================================== */
/* @link */
a{
  transition: color .2s ease;
  color: var(--gold);
  text-decoration: underline;
}
.no_hover a{
  color: inherit;
  text-decoration: none;
}
/* @buttons */
input[type=submit]{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  background: black;
  outline: none;
  transition: background .3s ease;
  cursor: pointer;
}
.label_after_submit, input[type=submit]{
  padding: 14.5px 64px 14.5px 25px;
  border-radius: 50px;
  color: white;
}
.label_after_submit{
  background-color: var(--gold);
  margin-bottom: 0;
}
.site-content .entry-content .vc_btn3-container>.vc_general, .wp-block-button__link, .wpcf7-field-btn{
  border: 1px solid black;
  padding: 9px 44px;
  background: black;
  color: white;
  border-radius: 50px;
  transition: all .3s ease;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 9px;
}
.site-content .entry-content .vc_btn3-container.secondary>.vc_general{
  background: transparent;
  color: black;
}
.wpcf7-field-btn{
	cursor: pointer;
	color: var(--dark);
	background: transparent;
	border-color: var(--dark);
}
.site-content .entry-content .vc_btn3-container>.vc_general svg, .wp-block-button__link svg{
  transition: transform .3s ease;
  min-width: 30px;
}
@media screen and (min-width: 1200px) {
  .site-content .entry-content .vc_btn3-container>.vc_general:hover, .wp-block-button__link:hover, input[type=submit]:hover, .form_submit:has(input[type=submit]:hover) p svg{
    color: var(--gold);
  }
	.form_submit:has(input[type=submit]:hover) p svg{
		transform: translate(8px , -50%);
	}
  .site-content .entry-content .vc_btn3-container.secondary>.vc_general:hover{
    border-color: var(--gold);
  }
  .site-content .entry-content .vc_btn3-container:not(.katalog, .events_btn, .reverse)>.vc_general:hover svg, .wp-block-button__link:hover svg{
    transform: translateX(8px);
  }
	.site-content .entry-content .vc_btn3-container.events_btn>.vc_general:hover svg{
		transform: rotate(90deg);
	}
	.site-content .entry-content .vc_btn3-container.reverse>.vc_general:hover svg{
		transform: translateX(-8px);
	}
	.wpcf7-field-btn:hover{
		color: black;
		border-color:black;
	}
}
@media screen and (max-width: 767px){
  .site-content .entry-content .vc_btn3-container>.vc_general, .wp-block-button__link, .wpcf7-field-btn{
    padding: 7px 24px;
    justify-content: center;
    width: 100%;
  }
  .site-content .entry-content .vc_btn3-container, .wp-block-button{
    width: 100%;
  }
}
/* ===========================================
---------------MAIN COMPONENTS----------------
============================================== */
/* @footer */
.site_footer{
  padding: 86px var(--spacing) 50px;
  background: var(--beige);
}
.text_no_margin p{
  margin-bottom: 0;
}
.footer_policy{
  display: flex;
  gap: 20px;
}
.footer_inner_l, .footer_policy{
  color: var(--dark);
}
.footer_inner{
  padding: 0 15px;
  margin-inline: auto;
  max-width: var(--max-width);
}
.footer_inner_row, .footer_inner_l{
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.footer_inner_l{
  padding-right: 47px;
  grid-gap: 16px;
}
.footer_inner_r{
  padding-left: 15px;
}
.footer_inner_row{
  padding-bottom: 60px;
}
.footer_inner_l .footer_block + .footer_block, .footer_policy .footer_block + .footer_block{
  margin-top: 25px;
}
.footer_inner_r .footer_block + .footer_block{
  margin-top: 27px;
}
.default_link p a:not(:hover){
  color: inherit;
  text-decoration: none;
}
.social_wrapper{
  padding-top: 38px;
}
.social_block + .social_block{
  padding-top: 16px;
}
.social_block:has(svg) p{
  line-height: 0;
  display: flex;
}
.social_block:has(svg) br{
  display: none;
}
@media screen  and (min-width: 1200px) and (max-width: 1480px){
  .site_footer{
    padding-top: 64px;
  }
}
@media screen and (max-width: 1199px){
  .footer_inner_row{
    grid-template-columns: 1fr;
    gap: 58px;
  }
  .footer_inner_r{
    padding-left: 0;
  }
  .footer_inner_l{
    padding-right: 0;
  }
  .site_footer{
    padding-top: 50px;
  }
}
@media screen and (max-width: 960px){
  .site_footer, .entry-content .vc_section.termin_vereinbaren_footer:last-child{
    padding-bottom: 144px;
  }
}
@media screen and (max-width: 767px){
  .footer_inner_r .footer_block + .footer_block, .footer_inner_l .footer_block + .footer_block, .footer_policy .footer_block + .footer_block{
    margin-top: 17px;
  }
  .footer_inner_l{
    grid-template-columns: 1fr;
    gap: 38px;
  }
}
/* header */
.site_header{
  position: fixed;
  inset: 0 0 auto;
  z-index: 500;
  padding: 0 var(--spacing);
  background-color: white;
}
.header_inner{
  padding: 0 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-inline: auto;
  max-width: var(--max-width);
}
.header_burger, .mobile_bar{
  display: none;
}
.header_burger svg{
  width: 56px;
  height: 56px;
}
.line {
  fill: none;
  stroke: black;
  stroke-width: 5;
  transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1),
    stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1),
    stroke .3s ease-out;
}
.site:has(.primary-navigation.is_shown) .site_header .line{
  stroke: black;
}
.line1 {
  stroke-dasharray: 60 207;
}
.line2 {
  stroke-dasharray: 60 60;
}
.line3 {
  stroke-dasharray: 60 207;
}
.is_open .line1 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
}
.is_open .line2 {
  stroke-dasharray: 1 60;
  stroke-dashoffset: -30;
}
.is_open .line3 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
}
.logo a{
  display: block;
  position: relative;
}
.logo a img{
  width: 95px;
  height: auto;
}
.light_logo{
  position: absolute;
  inset: 0;
  opacity: 0;
}

.mobile_bar{
  position: fixed;
  inset: auto 0 0;
  background: black;
  z-index: 480;
  padding: 14px 40px;
}
.mobile_bar .menu{
  display: flex;
  justify-content: space-between;
  gap: 32px;
}
.mobile_bar .menu li{
  flex-grow: 1;
  flex-basis: 0;
}
.mobile_bar .menu>li>a{
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0;
  font-weight: 300;
  font-size: 1rem;
  font-family: "Inter",sans-serif;
  align-items: center;
}
@media screen  and (min-width: 1200px) and (max-width: 1480px){
  .logo a img{
    width: 80px;
  }
}
@media screen and (max-width: 1199px){
  .header_burger{
    display: block;
  }
  .header_menu{
    display: none;
  }
  .logo a{
    padding: 5px 0;
  }
  .light_logo{
    top: 5px;
    bottom: 5px;
  }
}
@media screen and (max-width: 960px){
  .mobile_bar{
    display: block;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  .logo a img {
    width: 74px;
  }
}
@media screen and (max-width: 767px){
  .logo a img {
    width: 68px;
  }
  .header_burger svg{
    width: 48px;
    height: 48px;
  }
  .mobile_bar{
    padding: 13px 16px;
  }
  .mobile_bar .menu>li>a{
    font-size: 13px;
  }
  .mobile_bar .menu {
    gap: 24px;
  }
}
@media screen and (max-width: 376px){
  .mobile_bar .menu {
    gap: 8px;
  }
}

/* @header menu */
.menu, .sub-menu{
  list-style: none;
  padding: 0;
  margin: 0;
}
.header_menu .sub-menu{
  position: absolute;
  bottom: 0;
  transform: translateY(100%);
  background: white;
  left: -42px;
  min-width: calc(100%  + 84px);
  transition: all .3s ease;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.header_menu .sub-menu{
  padding: 20px 42px;
  display: grid;
  grid-gap: 16px;
}
.header_menu .sub-menu a{
  display: inline-block;
  padding: 4px 10px;
  white-space: nowrap;
}
.header_menu .menu{
  display: flex;
  gap: 90px;
  margin-right: -10px;
}
.sub-menu-toggle{
  --rotate: 0deg;
  border: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(var(--rotate));
  transition: transform .3s ease, color .3s ease-out;
  pointer-events: none;
  padding: 0;
  line-height: 0;
  background-color: transparent;
  color: #111;
}
.menu>li>a{
  padding: 40px 10px;
  display: block;
}
.menu>li.menu-item-has-children>a{
  padding-right: 40px;
  cursor: pointer;
}
.menu>li.menu-item-has-children{
  position: relative;
}
.sub-menu-toggle span{
  display: none;
}
.header_menu .menu>li.menu-item-has-children:hover .sub-menu{
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}
.header_menu .menu>li.menu-item-has-children:hover .sub-menu-toggle{
  --rotate: -180deg;
}

@media screen  and (min-width: 1200px) and (max-width: 1480px){
  .menu>li>a{
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .header_menu .menu{
    gap: 64px;
  }
  .header_menu .sub-menu{
    padding-top: 8px;
    gap: 12px;
  }
}
/* @menu */
#site-navigation{
  position: fixed;
  inset: 0;
  z-index: 480;
  background: white;
  transition: all .3s ease;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  overflow: auto;
}
#site-navigation.is_shown{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.nav_top{
  padding-top: calc(80px + var(--hh));
}
.nav_top .menu>li>a{
  padding: 0 32px 0 0;
}
#site-navigation .sub-menu{
  display: none;
  padding: 0 24px;
}
#site-navigation .sub-menu li:first-child{
  margin-top: 40px;
}
.nav_top .primary-menu-container{
  margin-inline: auto;
  max-width: 240px;
}
.nav_top .menu>li + li{
  margin-top: 40px;
}
.nav_top .sub-menu >li + li{
  margin-top: 24px;
}
.nav_top .sub-menu-toggle{
  top: 4px;
  transform: rotate(var(--rotate));
}
.nav_top .is_open .sub-menu-toggle{
  --rotate: -180deg;
}
.nav_bot{
  background: black;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 50px 16px;
}
.nav_bot>div{
  padding: 0 15px;
}
.nav_bot{
  padding: 80px var(--spacing);
}
.nav_bot .title_s{
  display: none;
}
.nav_block{
  height: 100%;
}
.nav_inner{
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
  gap: 80px;
}
@media screen and (max-width: 767px){
  .nav_bot{
    padding-top: 50px;
    padding-bottom: 50px;
    grid-template-columns: 1fr;
  }
  .nav_top .menu>li + li {
    margin-top: 25px;
  }
  .nav_top .sub-menu-toggle{
    top: 0;
  }
  .nav_top .primary-menu-container {
    max-width: 190px;
  }
  #site-navigation .sub-menu{
    padding: 0 18px;
  }
  #site-navigation .sub-menu li:first-child {
    margin-top: 25px;
  }
  .nav_top .sub-menu >li + li {
    margin-top: 15px;
  }
}
.nav_bot .footer_block:last-child p:last-child{
  margin-bottom: 0;
}

/* ===========================================
---------------------PAGES--------------------
============================================== */
/* @home */
.vc_section.hero{
  padding-top: 225px;
  position: relative;
  padding-bottom: 50px;
  display: flex;
  align-items: flex-end;
}
.hero{
  min-height: min(687px, 40vw);
}
.hero .wpb_column{
  position: static;
}
.home_hero_text{
  max-width: 480px;
}
.hero{
  overflow: hidden;
}
.hero-image-wrapper{
  position: absolute;
  top: 0;
  width: calc(100% + 2px);
  height: 100%;
  left: 50%;
  transform: translateX(-50%);
  max-width: 1920px;
  z-index: -1;
  background: var(--beige);
}
.hero-mobile{
  display: none;
}
.hero-image-wrapper img{
  width: 100%;
  height: 100%;
  object-fit: cover;

}
@media screen and (min-width: 961px){
  .home_hero_info{
    background: rgba(239, 230, 213, 0.90);
    border-radius: 15px;
  }
}
.hero_content_wrapper>div>div>div{
  display: flex;
  /* align-items: center; */
  justify-content: space-between;
}
.hero_cta>div, .hero_cta>div>div, .hero_cta>div>div>div{
  height: 100%;
}
.hero_cta>div>div>div{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.vc_row .hero_cta.vc_row{
  margin-bottom: 0;
}
.big_hero .vc_row .hero_cta.vc_row{
  width: 60%;
  max-width: min(803px, calc(100% - 336px));
}
.small_hero .vc_row .hero_cta.vc_row{
  width: 585px;
  max-width: 72%;
}
.home_hero_info, .hero_cta>div>div>div{
  padding: 35px 60px;
  --gap: 16px;
}
.home_hero_info p{
  margin-bottom: 16px;
}
.hero_cta>div>div>div{
  border-radius: 15px;
}
.big_hero .hero_cta>div>div>div, .small_hero .hero_cta>div>div>div{
  background: rgba(239, 230, 213, 0.90);
}
.wpb_single_image img{
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 15px;
}
.hero .wpb_single_image img, .default_image.wpb_single_image img{
  border-radius: 0;
  aspect-ratio: auto;
}
.content_text>div>div{
  max-width: 626px;
}
.content_text:last-child{
  padding-left: 26px;
}
.content_text:last-child>div>div{
  margin-left: auto;
}
.content_text:first-child{
  padding-right: 26px;
}
.wpb-content-wrapper{
  position: relative;
}
.wpb-content-wrapper::after{
  content: '';
  position: absolute;
  inset: min(687px, 40vw) 0 0 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.50) 4.67%, #EFE6D5 100%);
}
.column_grid>div>div>div{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 50px 24px;
}
.kreationen.column_grid>div>div>div{
  grid-template-columns: repeat(4, 1fr);
}
.page-preview-box{
  padding: 40px;
  min-height: var(--ih, 0);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  position: relative;
  isolation: isolate;
}
.page-preview-box:has(a){
  padding-bottom: 24px;
}
.preview-box-image, .event-thumbnail{
  position: absolute;
  z-index: -1;
  inset: 0;
  border-radius: 15px;
  overflow: hidden;
}
.preview-box-image::before, .event-thumbnail::before{
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
}
.preview-box-image::before{
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.08) 55.08%, rgba(0, 0, 0, 0.80) 75%, #000 100%);
}
.event-thumbnail::before{
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.08) 55.08%, rgba(0, 0, 0, 0.80) 75%, #000 100%);
}
.preview-box-image img, .event-thumbnail img{
  width: 100%;
  height: 100%!important;
  object-fit: cover;
  transition: transform .5s ease;
}
.preview-box-content{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  height: 100%;
}
.preview-box-content p{
  display: none;
}
.preview-box-content h3{
  text-wrap: balance;
  -webkit-hyphens: auto;
    -ms-hyphens: auto;
        hyphens: auto;
}
.page-preview-box:not(:has(a)) .lh-0, .page-preview-box:not(:has(h3)) .preview-box-image::before{
  display: none;
}
.page-preview-link, .event-link{
  position: absolute;
  inset: 0;
  z-index: 2;
}
.page-preview-box .lh-0, .event-item .lh-0{
  transition: transform .3s ease;
}
.page-preview-box:has(a):hover .lh-0, .event-item:hover .lh-0{
  transform: translateX(8px);
}
.page-preview-box:has(a):hover .preview-box-image img, .event-item:hover .event-thumbnail img{
  transform: scale(1.066666);
}
@media screen  and (min-width: 1200px) and (max-width: 1480px){
  .hero_cta>div>div>div, .home_hero_info{
    padding: 32px 48px;
  }
  .big_hero .vc_row .hero_cta.vc_row{
    width: 720px;
    max-width: calc(100% - 380px);
  }
  .page-preview-box{
    padding:32px;
  }
}
@media screen  and (min-width: 961px) and (max-width: 1199px){
  .hero_cta>div>div>div, .home_hero_info{
    padding: 28px 48px;
  }
  .big_hero .vc_row .hero_cta.vc_row {
    max-width:calc(100% - 300px);
  }
  .hero{
    min-height: min(600px, 50vh);
  }
  .wpb-content-wrapper::after{
    top: min(600px, 50vh);
  }
}
@media screen  and (min-width: 768px) and (max-width: 1320px){
.kreationen.column_grid>div>div>div {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 48px 30px;
  }
  .kreationen.column_grid .page-preview-box{
    min-height: 324px;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  .vc_section.small_section>.vc_row, .vc_section>.vc_row.small_row {
    max-width: 80%;
  }
  .column_grid>div>div>div {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 48px 30px;
  }
  .page-preview-box {
    padding: 40px 32px 28px;
  }
  .small_hero .vc_row .hero_cta.vc_row{
    width: 500px;
  }
}
@media screen and (max-width: 960px){
  .home_hero_info{
    padding: 0;
  }
  .big_hero .vc_row .hero_cta.vc_row {
    width: calc(100% + 30px);
    max-width: unset;
    min-height: calc(100vh - var(--hh));
    min-height: calc(100svh - var(--hh));
    position: relative;
    display: flex;
    align-items: flex-end;
    padding-top: 150px;
    padding-bottom: 144px;
  }
  .wpb-content-wrapper::after{
    top: calc(100vh - var(--hh));
  }
  .vc_section.hero{
    padding-top: 150px;
    padding-bottom: 144px;
  }
  .big_hero .hero-image-wrapper{
    left: calc(var(--spacing) * -1);
    width: 100vw;
    transform: none;
  }
  .hero-image-wrapper:has(.hero-mobile) .hero-desktop{
    display: none;
  }
  .hero-image-wrapper .hero-mobile{
    display: block;
  }
   body.home .hero-image-wrapper .hero-mobile{
	 object-position: bottom;
   }
  .hero_content_wrapper>div>div>div{
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
  }
  .hero{
    min-height: calc(100vh - var(--hh));
    min-height: calc(100svh - var(--hh));
  }
  .vc_section.hero.big_hero{
    min-height: auto;
    padding-top: 0;
    padding-bottom: 0;
  }
  .home_hero_info{
    color: black;
  }
  .content_image{
    order: 1;
  }
  .content_text{
    order: 2;
  }
  .content_text>div>div{
    max-width: 100%;
  }
  .content_text:last-child{
    padding-left: 0;
  }
  .content_text:first-child{
    padding-right: 0;
  }
}
@media screen  and (min-width: 768px) and (max-width: 960px){
  .hero_cta>div>div>div {
    padding: 28px 48px;
  }
  .content_text{
    padding-top: 40px;
  }
  body.home .big_hero .vc_row .hero_cta.vc_row {
    padding-bottom: 104px;
  }
}
@media screen and (max-width: 767px){
  body.home .big_hero .vc_row .hero_cta.vc_row {
    padding-bottom: 98px;
  }
  .vc_section.small_section>.vc_row, .vc_section>.vc_row.small_row{
    max-width: 100%;
  }
  .small_hero .vc_row .hero_cta.vc_row{
    width: unset;
    max-width: unset;
  }
  .column_grid>div>div>div {
    grid-gap: 16px;
  }
  .kreationen.column_grid>div>div>div, .column_grid>div>div>div{
    grid-template-columns: 1fr;
  }
  .page-preview-box{
    padding: 40px 24px 16px;
  }
  .page-preview-box:has(a){
    padding-bottom: 16px;
  }
  .preview-box-content {
    gap: 6px;
  }
  .hero_cta>div>div>div {
    padding: 22px 16px;
  }
  .content_text{
    padding-top: 32px;
  }
}

/* @team */
.team_member{
  margin-bottom: 0;
}
.team_member img{
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
  height: auto;
  border-radius: 15px;
}
.team_member_info{
  padding: 12px 32px 0;
  position: relative;
}
.team-member-email{
  position: absolute;
  top: 15px;
  right: 32px;
  z-index: 2;
}
.team-member-email a:not(:hover){
  color: inherit;
}
.team-member-name{
  padding-right: 72px;
}
.team_member_info h3 + p{
  margin-top: 12px;
}
.team-member-description{
  padding-top: 30px;
}
.garantie_content_row{
  --offset-row: 70px;
}
.garantie_content_row .wpb_content_element{
  padding-right: 10%;
}
.cta_row>div>div>div{
  padding: 25px 128px 25px 50px;
  background: var(--beige);
  border-radius: 15px;
}
.cta_row.gold>div>div>div{
  background: var(--gold);
}
.cta_row .vc_col-sm-4 img{
  border-radius: 50%;
}
.cta_row .vc_col-sm-4{
  width: 265px;
}
.cta_row .vc_col-sm-8{
  width: calc(100% - 265px);
  padding-left: 80px;
}
.cta_row .wpb_text_column{
  max-width: 686px;
}
.gallery_item img{
  aspect-ratio: 1;
  border-radius: 15px;
  object-fit: cover;
  max-width: 100%!important;
}
.gallery_item{
  width: 36.25%;
  margin-right: 24px;
}
.gallery_item:first-child,.gallery_item:last-child{
  width: calc(36.25% + 24px);
}
.gallery_item:first-child{
  padding-left: 24px;
}
.gallery_item:last-child{
  padding-right: 24px;
}
.wpb_image_grid{
  margin-inline: calc(var(--spacing) * -1);
  padding-bottom: 40px;
}
@media screen  and (min-width: 1200px) and (max-width: 1480px){
  .small_hero .vc_row .hero_cta.vc_row {
    width: 550px;
  }
  .team_member_info{
    padding-inline: 24px;
  }
  .team-member-email{
    right: 24px;
    top: 12px;
  }
  .team-member-description {
    padding-top: 24px;
  }
  .team-member-name {
    padding-right: 60px;
  }
  .garantie_content_row {
    --offset-row: 56px;
  }
  .cta_row>div>div>div{
    padding-right: 64px;
  }
  .cta_row .vc_col-sm-8{
    padding-left: 64px;
  }
}
@media screen and (max-width: 1199px){
  .vc_section.middle_section>.vc_row {
    max-width: 100%;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  .cta_row .vc_col-sm-4 {
    width: 200px;
  }
  .cta_row .vc_col-sm-8 {
    width: calc(100% - 200px);
    padding-left: 32px;
  }
  .cta_row>div>div>div {
    padding-inline: 32px;
  }
  .team_member_info {
    padding: 12px 16px 0;
  }
  .team-member-description {
    padding-top: 20px;
  }
  .team-member-email {
    top: 7px;
    right: 16px;
  }
}
@media screen  and (min-width: 961px) and (max-width: 1199px){
  .garantie_content_row .wpb_content_element {
    padding-right: 5%;
  }
  .garantie_content_row{
    --offset-row: 48px;
  }
}
@media screen and (max-width: 960px){
  .garantie_content_row {
    --offset-row: 40px;
  }
  .wpb_column + .wpb_column>div>div:not(:empty) {
    margin-top: var(--offset-col, 40px);
  }
  .cta_row, .content_row{
    --offset-col: 0px;
  }
}
@media screen and (max-width: 767px){
  .cta_row>div>div>div {
    padding: 25px 16px 50px;
  }
  .cta_row .vc_row{
    justify-content: center;
    gap: 25px;
  }
  .cta_row .vc_col-sm-4{
    width: 230px;
  }
  .cta_row .vc_col-sm-8{
    padding-left: 0;
    width: 100%;
  }
  .team_member_info {
    padding: 12px 8px 16px;
  }
  .team-member-description {
    padding-top: 12px;
  }
  .team-member-email {
    top: 6px;
    right: 8px;
  }
}
/* @slider */
.flickity-enabled {
  position: relative;
}
.flickity-enabled:focus { outline: none; }
.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}
.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}
/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
/* ---- previous/next buttons ---- */
.flickity-prev-next-button{
  position: absolute;
  z-index: 5;
  top: 50%;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
  border: none;
  cursor: pointer;
  background: #FFFFFF80;
  color: #52514F;
  padding: 0;
  transition: all .2s ease;
}
.flickity-prev-next-button.previous { left: 64px; }
.flickity-prev-next-button.next { right:64px; }
@media screen and (min-width: 1200px){
  .flickity-prev-next-button:hover{
    background: white;
    color: var(--gold);
  }
}
.flickity-prev-next-button:disabled{
  opacity: .5;
  pointer-events: none;
}
/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: calc(-40px - (var(--offset) * .4));
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}
.flickity-page-dots .dot {
  display: inline-block;
  width: 64px;
  height: 7px;
  margin: 0 5px;
  background: #fff;
  border-radius: 20px;
  opacity: 0.3;
  cursor: pointer;
  transition: all .2s ease;
}
.flickity-page-dots .dot:hover{
  opacity: .5;
}
.flickity-page-dots .dot.is-selected{
  opacity: 1;
  background: var(--gold);
}
.wpb_image_grid_ul {
  container-type: inline-size;
  container-name: wpb;
}
@container wpb (width > 2080px) {
  .gallery_item{
    width: calc(33.333% - 24px);
  }
  .gallery_item:first-child, .gallery_item:last-child {
    width: 33.333%;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  .gallery_item{
    width: 50%;
  }
  .gallery_item:first-child, .gallery_item:last-child {
    width: calc(50% + 24px);
  }
  .flickity-prev-next-button.previous {
    left: 40px;
  }
  .flickity-prev-next-button.next {
    right: 40px;
  }
  .flickity-page-dots .dot{
    width: 50px;
  }
}
@media screen and (max-width: 1199px){
  .flickity-prev-next-button{
    background: #fff;
  }
}
@media screen and (max-width: 767px){
  .flickity-page-dots .dot{
    width: 23px;
    height: 2px;
    margin: 0px 3px;
  }
  .wpb_image_grid {
    padding-bottom: 24px;
  }
  .flickity-page-dots{
    bottom: -32px;
  }
  .gallery_item {
    width: 70%;
    margin-right: 14px;
  }
  .gallery_item:first-child, .gallery_item:last-child {
    width: calc(70% + 14px);
  }
  .gallery_item:first-child{
    padding-left: 14px;
  }
  .gallery_item:last-child{
    padding-right: 14px;
  }
  .flickity-prev-next-button.next{
    right: 16px;
  }
  .flickity-prev-next-button.previous{
    left: 16px;
  }
  .flickity-prev-next-button, .flickity-prev-next-button svg{
    width: 24px;
    height: 24px;
  }
}


/* @sub-pages */
.vc_row .prozess_item.vc_row{
  margin-bottom: 0;
  --gap: 12px;
}
.prozess_item_title{
  padding-bottom: 18px;
}
.prozess_item .wpb_text_column{
  padding-inline: 34px;
}
@media screen  and (min-width: 1200px) and (max-width: 1480px){
  .prozess_item .wpb_text_column {
    padding-inline: 24px;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  .prozess_item .wpb_text_column {
    padding-inline: 16px;
  }
  .prozess_item_title {
    padding-bottom: 8px;
  }
}
@media screen and (max-width: 767px){
  .prozess_item .wpb_text_column {
    padding-inline: 24px;
  }
  .vc_row .prozess_item.vc_row{
    --gap: 8px;
  }
  .prozess_item_title{
    padding-bottom: 0;
  }
  .column_grid.prozess>div>div>div{
    grid-row-gap: 40px;
  }
}


/* @kontakt */
#googleMap{
  aspect-ratio: 1;
  border-radius: 15px;
}
.kontakt_instagram_row{
  --gap: 64px;
  --offset-row: 64px;
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  .kontakt_instagram_row{
    --gap: 48px;
    --offset-row: 48px;
  }
}
@media screen and (max-width: 767px){
  .kontakt_instagram_row{
    --gap: 32px;
    --offset-row: 32px;
  }
}

/* @events_wrapper */
.events-list{
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 40px 30px;
}
.event-item{
	min-height: var(--ih, 0);
	padding: 80px 18% 42px 64px;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 20px;
}
.event-item .lh-0{
	padding-top: 7px;
}
.event-date p{
	border: 1px solid white;
	border-radius: 50px;
	padding: 13px 30px;
	display: inline-block;
}
.events_btn.vc_btn3-container{
	display: flex;
	justify-content: center;
}
.events_btn.vc_btn3-container button{
	margin-top: 70px;
	cursor: pointer;
}
@media screen  and (min-width: 1200px) and (max-width: 1480px){
	.event-item{
		padding: 42px 56px;
	}
	.events_btn.vc_btn3-container button{
		margin-top: 56px;
	}
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
	.event-item{
		padding: 32px 40px;
	}
	.events_btn.vc_btn3-container button{
		margin-top: 48px;
	}
}
@media screen and (max-width: 1199px){
	.event-item .lh-0 {
	  padding-top: 0;
	}
}
@media screen and (max-width: 960px){
	.events-list{
		grid-template-columns: 1fr;
	}
}
@media screen and (max-width: 767px){
	.events-list{
		grid-gap: 32px;
	}
	.event-item{
		padding: 14px 24px;
		gap: 8px;
	}
	.event-date p{
		padding: 8px 25px;
	}
	.event-thumbnail::before{
		background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.08) 43.27%, rgba(0, 0, 0, 0.80) 70.67%, #000 100%);
	}
	.event-item .lh-0 svg{
		height: 30px;
		width: 30px;
	}
	.events_btn.vc_btn3-container button{
		margin-top: 40px;
	}
}

/* @single event */
.single_event_nav{
	margin-bottom: 70px;
}
.event_content_row>div>div>div{
	margin-inline: auto;
	max-width: 756px;
}
.form_wrapper>div>div>div{
	border-radius: 15px;
	/* background: rgba(239, 230, 213, 0.20); */
	padding: 53px 85px;
}
.form_item{
	padding-inline: 50px;
}
.form_item p{
	margin-bottom: 0;
}
.form_item{
	display: grid;
	grid-template-columns: 120px 1fr;
	grid-gap: 16px;
}
.form_item_solid, .form_checkbox_solid .wpcf7-form-control{
	grid-template-columns: 1fr;
}
.form_item{
	margin-bottom: 30px;
}
span.wpcf7-form-control{
	display: flex;
	gap: 8px 0;
  flex-wrap: wrap;
}
.wpcf7-list-item{
	margin: 0;
  min-width: 50%;
}
.wpcf7-list-item label{
	font-weight: 300;
	cursor: pointer;
}
label{
	display: inline-block;
}
.form_input>p>label{
	margin-top: 8px;
}
.wpcf7-list-item-label{
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 0 12px;
  position: relative;
}
.wpcf7-list-item-label::before{
  width: 20px;
  height: 20px;
  border: 2px solid black;
  border-radius: 50%;
  min-width: 20px;
  transition: background .2s ease;
}
.wpcf7-list-item-label::after{
	position: absolute;
  width: 24px;
  height: 24px;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  background: url(/wp-content/uploads/2025/06/check-1.svg) no-repeat center/18px;
  opacity: 0;
  transition: opacity .2s ease;
}
.wpcf7-list-item label input:checked + .wpcf7-list-item-label::before{
	background: black;
}
.wpcf7-list-item label input:checked + .wpcf7-list-item-label::after{
	opacity: 1;
}
.wpcf7-list-item label input{
	position: absolute;
	z-index: -1;
	visibility: hidden;
	pointer-events: none;
}
input[type="text"], input[type="email"], input[type="tel"], textarea{
	border-radius: 15px;
	border: 1px solid #000;
	padding: 7px 24px;
	width: 100%;
	outline: none;
	background-color: unset;
}
textarea{
	height: 84px;
	resize: none;
}
.form_submit{
	display: flex;
  justify-content: center;
}
.form_submit p{
	position: relative;
	display: inline-block;
}
.form_submit p.label_after_submit{
  display: none;
}
.wpcf7-spinner{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.form_submit p svg{
	color: white;
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	pointer-events: none;
}
input[type=submit], .form_submit p svg{
	transition: all .3s ease;
}
.wpcf7-not-valid-tip{
	font-size: .875rem;
	padding-top: 4px;
}
.wpcf7-response-output{
	border: 0!important;
	padding: 0!important;
}
.form_group_item{
	padding: 40px 50px;
	border-radius: 15px;
	border: 1px solid #52514F;
	margin: 0;
}
.form_group_item .form_item{
	padding: 0;
}
.form_group_item>p{
	margin-bottom: 30px;
}
.wpcf7-field-groups {
	counter-reset: repeatable-fields-counter;
}
.wpcf7-field-group {
	counter-increment: repeatable-fields-counter;
}
.group-index:after {
	content: counter(repeatable-fields-counter);
}
.wpcf7-field-group p:has(button){
	display: flex;
	gap: 24px;
	margin: 30px 0!important;
	justify-content: center;
}
.wpcf7-field-group:not(:last-child) .wpcf7-field-group-add{
	display: none;
}
.wpcf7-field-group:first-child:not(:last-child)>p{
	margin: 30px 0 0!important;
}
@media screen  and (min-width: 1200px) and (max-width: 1480px){
  .single_event_nav {
    margin-bottom: 64px;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  .form_wrapper>div>div>div{
    padding-inline: 56px;
  }
  .single_event_nav {
    margin-bottom: 56px;
  }
}
@media screen and (max-width: 767px){
  .single_event_nav {
    margin-bottom: 48px;
  }
  .form_wrapper>div>div>div{
    padding: 40px 16px;
    margin-inline: -16px;
  }
  .form_item {
    padding-inline: 16px;
  }
  .form_item {
    grid-gap: 8px;
    grid-template-columns: 1fr;
  }
  .form_input>p>label {
    margin-top: 0;
  }
  .form_item {
    margin-bottom: 24px;
  }
  .wpcf7-list-item-label {
    gap: 8px;
    padding: 0;
  }
  .wpcf7-list-item-label::before{
    width: 16px;
    height: 16px;
    min-width: 16px;
  }
  .wpcf7-list-item-label::after{
    width: 20px;
    height: 20px;
    left: 0;
    background-size: 16px;
  }
  input[type="text"], input[type="email"], input[type="tel"], textarea{
    padding-inline: 16px
  }
  .form_group_item{
    padding: 24px 16px;
  }
  .form_group_item>p {
    margin-bottom: 24px;
  }
  .wpcf7-field-group p:has(button) {
    margin: 24px 0 !important;
    gap: 16px;
    flex-direction: column;
  }
  .label_after_submit, input[type=submit]{
    padding-top: 13px;
    padding-bottom: 13px;
  }
  .wpcf7-field-group:first-child:not(:last-child)>p {
    margin: 24px 0 0 !important;
  }
}

/* @form */
.form_inner .wpb_wrapper{
  border-radius: 15px;
  overflow: hidden;
  max-width: 650px;
  margin-inline: auto;
}
._form_1 form{
  font-family: inherit!important;
  max-width: 100%!important;
  padding: 50px 150px!important;
  margin: 0!important;
}
._form-title, ._form-thank-you{
  font-size: 2.1875rem!important;
  color: var(--gold);
  font-family: "PlayfairDisplay", sans-serif!important;
}
._form-title, ._form-thank-you{
  padding-bottom: 30px;
}
._button-wrapper{
  text-align: center;
}
._button-wrapper button#_form_1_submit{
  --right: 44px;
  margin-top: 30px!important;
  border: 1px solid black!important;
  padding: 12.5px 83px 12.5px 44px!important;
  background-color: black!important;
  background-image: url(/wp-content/uploads/2025/07/Arrow-right.svg)!important;
  background-size: 30px!important;
  background-position: center right var(--right)!important;
  background-repeat: no-repeat!important;
  color: white!important;
  border-radius: 50px!important;
  transition: all .3s ease;
}
._form-label{
  opacity: .5;
}
._form_element input, ._form-label{
  color: #52514F!important;
}
._form_element input, ._form-label, ._button-wrapper button#_form_1_submit{
  font-size: 1.125rem!important;
  line-height: normal!important;
  font-weight: 300!important;
  font-family: "Inter", sans-serif!important;
}
._form_element input{
  border: 1px solid rgba(82, 81, 79, 0.50)!important;
  border-radius: 8px!important;
  padding: 16px 23px!important;
}
._error-inner{
  font-weight: 300!important;
  font-family: "Inter", sans-serif!important;
}
#main form ._form-content ._button-wrapper ._submit.processing::after{
  background: transparent!important;
}
._submit.processing::before {
    background-image: linear-gradient(var(--gold), var(--gold)), conic-gradient(var(--gold), #FFFFFF)!important;
}
@media screen  and (min-width: 1200px){
  ._button-wrapper button#_form_1_submit:hover{
    --right: 36px;
    color: var(--gold)!important;
    background-image: url(/wp-content/uploads/2025/07/Arrow-right-gold.svg)!important;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1480px){
  ._form-title, ._form-thank-you{
    font-size: 1.75rem!important;
  }
}
@media screen  and (min-width: 768px) and (max-width: 1199px){
  ._form-title, ._form-thank-you{
    font-size: 1.5rem!important;
  }
  ._form_1 form{
    padding-inline: 120px!important;
  }
  ._form_element input, ._form-label, ._button-wrapper button#_form_1_submit{
    font-size: 1.0625rem!important;
  }
  ._button-wrapper button#_form_1_submit{
    padding-top: 14px!important;
    padding-bottom: 14px!important;
  }
}
@media screen and (max-width: 767px){
  ._form-title, ._form-thank-you{
    font-size: 1.25rem!important;
  }
  ._form_element input, ._form-label, ._button-wrapper button#_form_1_submit{
    font-size: 1rem!important;
  }
  ._form_1 form{
    padding: 32px 16px!important;
  }
  ._button-wrapper button#_form_1_submit{
    margin-top: 22px!important;
  }
  ._form-title{
    padding-bottom: 22px;
  }
  ._form_element{
    margin-bottom: 10px!important;
  }
  ._form_element input {
    padding: 13px 16px !important;
  }
  ._button-wrapper button#_form_1_submit{
    padding-top: 12px!important;
    padding-bottom: 12px!important;
  }

}

/* @404 */
.not_found_section{
  min-height: calc(100vh - var(--hh));
  display: flex;
  align-items: center;
}
.not_found_section .vc_row{
  padding: 0 15px;
}
@media screen and (max-width: 960px){
  .not_found_section .vc_row{
    padding-bottom: 74px;
  }
}
/* @impressum */
.impressum_section{
  --gap: 33px;
  --offset-row: 55px;
}
.impressum_section .wpb_text_column {
  max-width: 886px;
}
@media screen and (max-width: 960px){
  .impressum_section{
    --gap: 18px;
    --offset-row: 40px;
  }
}

/* @cookies */
.cky-btn{
  border-radius: 50px!important;
  opacity: 1!important;
  transition: all .2s ease;
}
.cky-btn:hover{
  color: var(--gold)!important;
}
.cky-btn-customize:hover, .cky-btn-preferences:hover{
  border-color: var(--gold)!important;
}
.cky-accordion-header .cky-always-active, button.cky-show-desc-btn{
  color: var(--gold)!important;
}
.cky-switch input[type="checkbox"]:checked {
  background: var(--gold)!important;
}
.cky-cookie-des-table li, .cky-cookie-des-table p, .cky-cookie-des-table div{
  font-size: 12px;
}
/* @animation */
.wpb_content_element .wpb_wrapper, .vc_btn3-container,
.animation_el, .vc_tta, .leistungen_el_title_m{
  transform: translateY(32px) translateZ(0);
  transition-property: opacity, transform;
  transition-timing-function: cubic-bezier(0.39, 0.58, 0.57, 1);
	opacity: 0;
  will-change: opacity, transform;
}
.slide_el, .footer_inner_row, .footer_policy{
  transform: translateY(32px) translateZ(0);
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.39, 0.58, 0.57, 1);
  will-change: transform;
}
.vc_section.vc_section-has-fill, .fade_el{
  opacity: 0;
  transition: opacity 0.35s cubic-bezier(0.39, 0.58, 0.57, 1);
}
.wpb_content_element.is_shown .wpb_wrapper, .vc_btn3-container.is_shown,
.animation_el.is_shown, .vc_tta.is_shown, .is_shown .leistungen_el_title_m{
  transition-duration: .65s, .5s;
}
.wpb_content_element.is_shown .wpb_wrapper, .vc_btn3-container.is_shown,
.animation_el.is_shown, .vc_tta.is_shown, .is_shown .leistungen_el_title_m,
.wpb_text_column:not(.h3).is_shown .char{
	opacity: 1;
	transform: translateY(0) translateZ(0);
}
.slide_el.is_shown, .is_shown .footer_inner_row, .is_shown .footer_policy{
  transform: translateY(0) translateZ(0);
  transition-duration: .5s;
}
.vc_section.vc_section-has-fill.is_shown, .fade_el.is_shown{
  opacity: 1;
}
.animation_el .wpb_content_element .wpb_wrapper, .animation_el .vc_btn3-container, .animation_el .vc_tta, .static_el .vc_tta, .static_el.vc_tta, .static_el .wpb_content_element .wpb_wrapper, .static_el .vc_btn3-container, .static_el.wpb_content_element .wpb_wrapper, .static_el.vc_btn3-container,
.vc_tta-panel-body .wpb_content_element .wpb_wrapper, .vc_tta-panel-body .wpb_content_element .vc_btn3-container, .wpb_text_column:not(.h3):has(h1, h2) .wpb_wrapper{
  transform: unset;
  will-change: unset;
  opacity: unset;
}
.wpb_text_column:has(h1, h2){
  opacity: 0;
}
.wpb_text_column.is_shown:has(h1, h2){
  opacity: 1;
}
.wpb_text_column:not(.h3) .char{
  --delay: calc(var(--char-index) * .04s);
  transform: translate(-16px, 150%) rotate(4deg);
  transition-property: opacity, transform;
  transition-timing-function: cubic-bezier(0.39, 0.58, 0.57, 1);
  opacity: 0;
  will-change: opacity, transform;
  transition-delay: var(--delay);
}
.wpb_text_column:not(.h3).is_shown .char{
  transition-duration: .3s, .4s;
}
.wpb_content_element:not(.static_el) .vc_single_image-wrapper, .preview-box-image, .team_member>.lh-0, .wpb_gallery_slides_custom, .event-thumbnail{
  transform: translateY(140px);
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.39, 0.58, 0.57, 1);
}
.wpb_content_element:not(.static_el).is_shown .vc_single_image-wrapper, .is_shown .preview-box-image, .team_member.is_shown>.lh-0, .is_shown .wpb_gallery_slides_custom, .event-item.is_shown .event-thumbnail{
  transform: translateY(0);
  transition-duration: .75s;
}
