.elementor-1144 .elementor-element.elementor-element-bfb959c{--display:flex;--overlay-opacity:0.51;--margin-top:60px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1144 .elementor-element.elementor-element-bfb959c:not(.elementor-motion-effects-element-type-background), .elementor-1144 .elementor-element.elementor-element-bfb959c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF5E;}.elementor-1144 .elementor-element.elementor-element-bfb959c::before, .elementor-1144 .elementor-element.elementor-element-bfb959c > .elementor-background-video-container::before, .elementor-1144 .elementor-element.elementor-element-bfb959c > .e-con-inner > .elementor-background-video-container::before, .elementor-1144 .elementor-element.elementor-element-bfb959c > .elementor-background-slideshow::before, .elementor-1144 .elementor-element.elementor-element-bfb959c > .e-con-inner > .elementor-background-slideshow::before, .elementor-1144 .elementor-element.elementor-element-bfb959c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-1144 .elementor-element.elementor-element-682ced3 .elementor-heading-title{color:var( --e-global-color-486f2c7 );}.elementor-1144 .elementor-element.elementor-element-caeb28c > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-1144 .elementor-element.elementor-element-caeb28c.elementor-element{--flex-grow:0;--flex-shrink:1;}.elementor-1144 .elementor-element.elementor-element-caeb28c{font-size:13px;line-height:11px;letter-spacing:-0.1px;}.elementor-1144 .elementor-element.elementor-element-893df47 > .elementor-widget-container{margin:-20px 0px 0px 0px;padding:20px 20px 20px 20px;border-radius:15px 15px 15px 15px;box-shadow:0px 0px 10px 1px rgba(0,0,0,0.5);}.elementor-1144 .elementor-element.elementor-element-cf936f9{--display:flex;--min-height:387px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1144 .elementor-element.elementor-element-3380d6c iframe{height:785px;}/* Start custom CSS for shortcode, class: .elementor-element-893df47 */.wpcf7-radio {
  font-size: 0;          
}
.wpcf7-form .wpcf7-radio input[type="radio"] {
  display: none;
}
.wpcf7-form .wpcf7-radio label {
   display: inline-block;
  margin: 0;
  padding: 0.5rem 1rem;
  border: 0.5px solid #000;
  background: #fff;
  cursor: pointer;
  transition: background 0.2s, border-bottom-color 0.2s;
}
.wpcf7-form .wpcf7-radio label:has(input:checked) {

    border-bottom: 3px solid #DD183B;
  background-color: rgba(221,24,59,0.1);
}
.wpcf7-radio label:hover { background-color:rgba(0,0,0,0.15); }

.wpcf7-form input.your-name{
    
}

.wpcf7-form .wpcf7-text,
.wpcf7-form .wpcf7-email,
.wpcf7-form .wpcf7-tel,
.wpcf7-form .wpcf7-textarea,
.wpcf7-form .wpcf7-select {
  border: 1px solid #000;
  box-shadow: none ;
}
.wpcf7-form input.fokus:focus {
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(255,0,0,0.4) !important;
  border-color: #ff0000 !important;
  border: none;
}

.wpcf7-form select.fokus:focus {
  outline: none; 
  box-shadow: 0 0 0 2px rgba(255,0,0,0.4) !important;
  border: none ;
}

.wpcf7-form textarea.your-message:focus {
    outline: none;
    transform: scale(1.02);
    box-shadow: 0 0 0 3px rgba(255,0,0,0.4);
  border: none;
    }

.wpcf7-form input.wpcf7-submit {
  display: inline-block;
  margin-left: 40%;
  margin-top: 30px;
  padding: 1.5rem 3rem;               
  font-size: 1rem;              
  font-weight: 600;                  
  color: #fff !important;             
  background: linear-gradient(135deg, #DD183B 0%, #FF6A5C 100%); 
  border: none;        
  border-radius: 50px;   
  box-shadow: 0 4px 12px rgba(0,0,0,0.1); 
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}


.wpcf7-form input.wpcf7-submit:hover {
  transform: scale(1.15);
  box-shadow: 0 6px 16px rgba(0,0,0.4);
  opacity: 0.95;
}
.wpcf7-form input.wpcf7-submit:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(221,24,59,0.4);
}

.wpcf7-form input.wpcf7-submit:active {
  transform: scale(0.8);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.cf7-accept-inline {
  display: inline-flex;     
  align-items: center;       
  gap: 0.5em;               
  flex-wrap: nowrap;     
}

.cf7-accept-inline .no-wrap {
  white-space: nowrap;  
}

.cf7-accept-inline input[type="checkbox"] {
  appearance: none;
  width: 1.5em;      
  height: 1.5em;        
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
  position: relative;
  cursor: pointer;
  transition: border-color 0.2s, background-color 0.2s;
}


.cf7-accept-inline input[type="checkbox"] {
  appearance: none;
  width: 1.3em;
  height: 1.3em;
  border: 2px solid #ccc;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s, border-color 0.2s;
  cursor: pointer;
}

.cf7-accept-inline input[type="checkbox"]:hover {
  border-color: #888;
}

.cf7-accept-inline input[type="checkbox"]:checked {
  background-color: red;
  border-color: red;
}

/* Unicode-Haken, font-size skaliert ihn sauber mit der Box */
.cf7-accept-inline input[type="checkbox"]:checked::before {
  content: "✔";
  font-size: 1.2em;
  color: white;
  line-height: 1;
}/* End custom CSS */
/* Start custom CSS for google_maps, class: .elementor-element-3380d6c *//* Container vorbereiten */
.map-fade{
  position:relative;
  overflow:hidden; /* schneidet Überlagerungen sauber */
  border-radius:24px; /* optional, damit die Map auch rund wirkt */
}

/* Map selbst (iframe oder div) auf volle Fläche */
.map-fade iframe,
.map-fade .elementor-widget-google_maps iframe{
  width:100%;
  height:100%;
  display:block;
}

/* Weiche Ausblendung oben & unten */
.map-fade::before,
.map-fade::after{
  content:"";
  position:absolute;
  left:0; right:0;
  height:1800px;             
  pointer-events:none;        
  z-index:2;
  background:linear-gradient(to bottom, var(--fadeColor,#fff), transparent);
}
.map-fade::before{ top:0; }
.map-fade::after{
  bottom:0;
  transform:rotate(180deg);      /* gleicher Verlauf für unten */
}


.map-fade iframe{
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 12%, #000 88%, transparent 100%);
          mask-image: linear-gradient(to bottom, transparent 0, #000 12%, #000 88%, transparent 100%);
}
/* Links */
.map-fade::before{
  content:"";
  position:absolute;
  top:0; bottom:0; left:0;
  width:1020px;                 /* Breite des Fade-Bereichs */
  background:linear-gradient(to right, #fff, transparent);
  pointer-events:none;
  z-index:2;
}

/* Rechts */
.map-fade::after{
  content:"";
  position:absolute;
  top:0; bottom:0; right:0;
  width:120px;
  background:linear-gradient(to left, #fff, transparent);
  pointer-events:none;
  z-index:2;
}/* End custom CSS */