/*** LOGO ***/
.ast-builder-layout-element.ast-flex.site-header-focus-item {
  width: 600px;
}
.ast-above-header-bar.ast-above-header.site-header-focus-item.ast-sticky-active.ast-sticky-shrunk.ast-header-sticked .ast-builder-layout-element.ast-flex.site-header-focus-item {
  width: 300px;
  padding-left: 0px;
}
.ast-logo-title-inline .site-logo-img {
  width: 300px;
  padding-right: 0px;
  padding-left: 0px;
  padding-top: 5px;
  padding-bottom: 15px;
}
.ast-sticky-above-shrink .ast-sticky-shrunk .site-logo-img img {
  max-height: 90px !important;
  width: 300px !important;
}

/*** NAVI ***/
.ast-above-header-bar.ast-above-header.site-header-focus-item button.navi-tel {
  display: none;
}
.ast-sticky-active.ast-sticky-shrunk.ast-header-sticked button.navi-tel {
  display: inline-block;
}

button.navi-tel, button.navi-tel:hover, button.navi-tel:active {
  background-color: #ffffff;
  padding: 0 0 0 0 ;
}
.navi-tel a {
  color: #ffffff;
  background: #d20057;
  font-size: 18px;
  font-weight: 700;
  padding: 10px 12px;
  border-radius: 5px;
}
.navi-tel a:hover {
  color: #ffffff;
  background: #222222;
}
.navi-tel .fa, .navi-tel .fas {
  color: #ffffff;
  margin-right: 5px;
}

a.upper-nav {
  color: #000000;
  font-size: 14px;
}
a.upper-nav:hover {
  color: #ff00ff;
}


/*** ANIMATED-HEADLINE ***/
.elementor-headline--style-highlight svg {
  top: 21% !important;
  width: calc(100% + 30px) !important;
}


/*** BUTTON ***/
.elementor-button-icon.elementor-align-icon-left .fas {
  color: #ffffff;
}


/*** LIST ***/
li {
  padding-bottom: 15px;
}



/*** CONTACT ***/
.contact-form .contact-row {
  width: 99%;
  display: flex;
}
.contact-field {
  width: 48%;
}
.wpcf7 select, .wpcf7 textarea {
  width: 92.5%;
  background: none;
  border: none;
  border-bottom: 1px solid #3A3A3A;
}
.wpcf7 textarea {
  height: 250px;
}
.consent {
  font-size: 14px;
  margin: 20px 0px;
}
.wpcf7 input:not([type="submit"]) {
  width: 95%;
  background: none;
  border: none;
  border-bottom: 1px solid #3A3A3A;
  margin-bottom: 5px;
}
input[type="email"], input[type="number"], input[type="password"], input[type="reset"], [type="search"], input[type="tel"], input[type="text"], input[type="url"], select, textarea {
  color: #333333;
}
.wpcf7 input[type="checkbox"], .wpcf7 input[type="radio"] {
  width: 1.4em !important;
}
.sent-button {
  text-align: center;
}
input[type="submit"] {
  color: #ffffff;
  background-color: #d20057;
  border-color: #ffffff;
  border-radius: 5px;
}
input[type="submit"]:hover {
  color: #ffffff;
  background-color: #222222;
  border-color: #ffffff;
  border-radius: 5px;
}

/*** FOOTER ***/
.widget {
  text-align: center;
}
.fa-solid, .fas {
  color: #000000;
  margin-right: 5px;
}

.footer-spalten {
  display: table;
  position: relative;
  max-width: 35rem;
  padding: 0 0 0 0;
}
.footer-spalten .fas {
  color: #000000;
  font-size: 40px;
  padding-right: 30px;
  display: block;
  width: 20%;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}
.texte {
  display: block;
  width: 80%;
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}



/****** RESPONSIVE ******/

@media (max-width: 1690px) {
}
@media (max-width: 1280px) {
}
@media (max-width: 921px) {
  /*.site-main { margin-top: 0px; }
  .main-header-bar, .site-header { position: relative; width: 100%; }*/
}
@media (max-width: 820px) {
}
@media (max-width: 480px) {
  .ast-builder-layout-element.ast-flex.site-header-focus-item { width: 300px; }
  .ast-logo-title-inline .site-logo-img { vertical-align: middle;}
  .ast-above-header.ast-above-header-bar, .ast-header-break-point #masthead.site-header .ast-above-header-bar { margin-left: 0px !important; }
  
  .contact-form .contact-row { width: 99%; display: block; }
  .contact-field { width: 98%; }
}
@media (max-width: 360px) {
  .ast-sticky-above-shrink .ast-sticky-shrunk .site-logo-img img { max-height: 90px !important; width: 250px !important; }
  header .custom-logo-link img, .ast-header-break-point .site-branding img, .ast-header-break-point .custom-logo-link img { width: 250px;}
  .elementor-2 .elementor-element.elementor-element-757cb52 .elementor-heading-title { font-size: 32px; }
  .elementor-2 .elementor-element.elementor-element-8bcd4a3 .elementor-headline { font-size: 35px; }
}
