#map 
{
    height:516px !important;
    width: 100% !important; 
} 
 
 
 
.wpb_wrapper .wpcf7
{
    width: 100%;
}

.wpb_wrapper .wpcf7 p
{
    margin-bottom: 0;
}

.wpcf7-not-valid-tip, .screen-reader-response
{
    display: none !important;
}

::-webkit-input-placeholder
{
    color: #111;
    opacity: 1;
}

:-moz-placeholder
{
    color: #111;
    opacity: 1;
}

::-moz-placeholder
{
    color: #111;
    opacity: 1;
}

:-ms-input-placeholder
{
    color: #111;
    opacity: 1;
}

input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder
{
    opacity: 0.2;
}

input:focus:-moz-placeholder, textarea:focus:-moz-placeholder
{
    opacity: 0.2;
}

/* FF 4-18 */ input:focus::-moz-placeholder, textarea:focus::-moz-placeholder
{
    opacity: 0.2;
}

/* FF 19+ */ input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder
{
    opacity: 0.2;
}

/* IE 10+ */ #responsive-form
{
    margin: 0 auto;
    width: 100%;
}

.form-row
{
    width: 100%;
}

.column-half, .column-full
{
    float: left;
    position: relative;
    padding: 8px;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.column-half.doublehalf
{
    display: flex;
	gap: 20px;
}
.column-half.doublehalf > div
{
  flex: 1;
}
 
.clearfix:after
{
    content: "";
    display: table;
    clear: both;
}

.wpcf7 input[type="text"], 
.wpcf7 input[type="email"], 
.wpcf7 input[type="number"], 
.wpcf7 textarea, 
.wpcf7 input[type="date"]
.wpcf7 input[type="phone"]
{
    width: 100%;
    padding: 20px 15px;
	background: #fff;
	border: solid 1px #435059; 
	font-size: 1rem;
    line-height: 1.75rem;
	font-family: 'Parkinsans';
	font-weight: 400;
	color: #435059;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    outline: none; 
 
}
 
.single .wpcf7 input[type="text"], 
.single .wpcf7 input[type="email"], 
.single .wpcf7 input[type="number"], 
.single .wpcf7 textarea
{ 
    background: #fff;
	border: solid 1px #435059;	 
} 

.wpcf7 textarea
{
    height: 250px;
    resize: none;
	margin-top: 10px;
} 
.wpcf7 input:focus .wpcf7 textarea:focus, .wpcf7 button:focus
{
    background: #f9f9f9;
}

/* Grundlegendes Styling für das CF7 Dropdown */
.wpcf7-select {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 20px 45px 20px 15px; /* Rechts mehr Platz (45px) für den Pfeil gemacht, damit der Text nicht überlappt */
    
    /* Typografie & Farbe */
	font-size: 1rem;
    line-height: 1.75rem;
	font-family: 'Parkinsans';
	font-weight: 400;
	color: #435059;
    
    /* Hintergrundfarbe nach Wunsch (Standard) */
    	background: #fff;
	border: solid 1px #435059; 
    
    /* Standard-Browser-Design entfernen */
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    
    /* Sauberer SVG-Pfeil als Hintergrund (Base64) */
background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23435059' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 15px center; /* Platziert den Pfeil perfekt auf der rechten Seite */
    background-size: 18px; /* Größe des Pfeils angepasst */
}

/* Anpassung für .single Bereich */
 .wpcf7-select {
    	background-color: #fff;
	border: solid 1px #435059;  /* Hier deine gewünschte Hintergrundfarbe für .single eintragen */
}

/* Versteckt den Standard-IE-Pfeil (falls noch ältere Browser im Spiel sind) */
.wpcf7-select::-ms-expand {
    display: none;
}
 
.selectbox
{
    position: relative;
}

.selectbox:after
{
    content: '\e938';
    display: block;
    position: absolute;
    color: #3d3d3d;
    top: 41%;
    right: 25px;
    font-family: 'icomoon' !important;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.wpcf7-select::-ms-expand
{
    display: none;
}

.wpcf7-select option
{
    font-weight: normal;
}

/* Support for rtl text, explicit support for Arabic and Hebrew */ *[dir="rtl"] .wpcf7-select,:root:lang(ar) .wpcf7-select,:root:lang(iw) .wpcf7-select
{
    background-position: left .7em top 50%, 0 0;
    padding: .6em .8em .5em 1.4em;
}

/* Disabled styles */ .wpcf7-select:disabled, .wpcf7-select[aria-disabled=true]
{
    color: graytext;
}

.wpcf7-select:disabled:hover, .wpcf7-select[aria-disabled=true]
{
    border-color: #aaa;
}

/*Allgemein*/ /*Accept*/ .wpcf7 .accept div
{
    padding-bottom: 0 !important;
    display: flex;
}

.wpcf7 .accept div p:first-child
{ 
    margin-left: 0;
}

.wpcf7 .accept
{
    margin: 15px 0px 20px 0;
    float: left;
    width: 100%;
}

.wpcf7 .accept .swpcf7-list-item
{
    text-indent: -9999999px;
}

.wpcf7 .accept .wpcf7-form-control-wrap
{
    float: left;
}

.wpcf7 .accept p
{
    font-size: 14px;
    line-height: 22px;
    float: left;
    width: 100%;
    color: #111;
    margin-left: 10px;
    text-decoration: none;
}


.wpcf7 .accept p a:hover
{
    text-decoration: none;
    border-bottom: none;
}

.wpcf7 .accept .wpcf7-list-item
{
    margin-left: 0; 
}

.wpcf7 .accept .wpcf7-list-item input
{
    height: 15px;
    width: 15px;
}

.fullwidth .accept
{
    text-align: left;
}

span.req
{ 
  font-weight: 600;
  color: #bd2d1c;
} 
.pflichthinweis  {
	display: block;
	text-align: right;
	font-size: 1rem;
	padding-right: 10px;
}

 
 
 /* 1. Base-Styling für den Radiobutton */
#reanschrift input[type="radio"] {
    -webkit-appearance: none;
    appearance: none;
    
    /* Größe */
    width: 24px;
    height: 24px;
    border-radius: 50%; /* Macht das Element kreisrund */
    
    /* Border & Hintergrund */
    border: 1px solid #435059;    /* Dicke und Rahmenfarbe */
    background-color: #ffffff;   /* Inaktiver Hintergrund */
    
    /* Ausrichtung & Klick-Verhalten */
    outline: none;
    cursor: pointer;
    vertical-align: middle;
    transition: all 0.2s ease-in-out;
}

 
/* 3. Zustand: Ausgewählt (Checked) */
#reanschrift input[type="radio"]:checked {
    border-color: #435059;
    background-color: #435059; 
    box-shadow: inset 0 0 0 3px #ffffff;
}

/* 4. Ausrichtung von Radiobutton und Text im CF7-Label */
#reanschrift .wpcf7-list-item label {
    display: inline-flex;
    align-items: center;
    gap: 10px; /* Abstand zwischen Radiobutton und Text */
    cursor: pointer;
}
 
 
 #reanschrift.wpcf7-not-valid input[type="radio"] {
    border-color: #bd2d1c;
    background-color: #bd2d1c;  
}
 
 
 
 /* Nur innerhalb von .accept */
 .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  position: relative;
  user-select: none; 
}
 


/* 1. Container & Label-Ausrichtung mit fester Zeilenhöhe */
.wpcf7-acceptance .wpcf7-list-item label {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    user-select: none;
    vertical-align: middle;
}

/* 2. Checkbox-Styling mit fester Box-Sizing-Definition */
.wpcf7-acceptance input[type="checkbox"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
    
    box-sizing: border-box !important; /* Verhindert Größenänderung durch Borders */
    background-color: #ffffff;
    border: 1px solid #435059 !important; 
    
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer;
    position: relative; /* Wichtig für die absolute Positionierung des "X" */
}

/* 3. Das "X" absolut positioniert (verhindert das Springen komplett) */
.wpcf7-acceptance input[type="checkbox"]:checked::after {
    content: 'X';
    font-size: 18px;
    font-weight: 600;
    color: #435059;
    
    /* Absolutes Zentrieren innerhalb der 30x30 Box */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 1;
}

/* 4. Tastatur-Fokus für Barrierefreiheit */
.wpcf7-acceptance input[type="checkbox"]:focus-visible {
    outline: 2px solid #435059 !important;
    outline-offset: 2px !important;
}








 .wpcf7-list-item.first {
margin: 0 ;
}
 

 
.wpcf7-form label,
.accept label
{
 
    display: block; 
	font-size: 1rem;
	line-height: 1.75rem;
	font-family: 'Parkinsans';
	font-weight: 600;
	color: #34434b;
} 
 
.accept .wpcf7-acceptance label
{ 
	font-weight: 400; 
} 

.accept .wpcf7-list-item .wpcf7-list-item-label a 
{ 
    text-decoration: underline;
	color: inherit;
} 
 
 
 fieldset {
	 margin-bottom: 30px;
 }
 fieldset:nth-last-child(2),
 fieldset.fielddatenschutz,
 fieldset.fielddatenschutzhinweis {
	 margin-bottom: 0 !important;
 }
 
 label { 
    display: block; 
	font-size: 1.125rem;
	line-height: 1.65rem;
font-family: 'Parkinsans';
  font-weight: 600;
	color: #34434b; 
}  
 
.extralink { 
 display: block;
  font-size: 1.125rem;
  line-height: 1.65rem;
font-family: 'Parkinsans';
  font-weight: 600;
  color: #34434b;
}  

  
  
 .uploadboxouter {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 40px;
 }
  .uploadboxouter p {
	text-align: center;
 }
 .codedropz-upload-handler {
  border: none; 
  margin-bottom: 10px;
  position: relative;
  background-color: #f2f2f2;
  border-radius: 0;
}

.invalid .fehler .codedropz-upload-handler { 
  background-color: #bd2d1c; 
}
.codedropz-upload-handler .codedropz-upload-inner div:first-child,
.codedropz-upload-handler .codedropz-upload-inner span,
.dnd-upload-image  {
  display: none;  
} 
.codedropz-upload-container {
  padding: 0;
}
.codedropz-upload-inner .codedropz-btn-wrap a.cd-upload-btn { 
	padding: 15px 20px;
}
a.cd-upload-btn {
	position: relative;
	min-height: 100px;
	display: flex;
	align-items: self-end;
	justify-content: center;
	color: inherit;
}  
a.cd-upload-btn:before {
	display: block;
	position: absolute;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
	content: '\e919';
	font-size: 124px;
	color: #34434b;
} 
.invalid .fehler .codedropz-upload-handler a.cd-upload-btn:before,
.invalid .fehler .codedropz-upload-handler a.cd-upload-btn,
.invalid .fehler .codedropz-upload-handler .dnd-upload-counter   { 
	color: #fff;
} 
.dnd-upload-status .dnd-upload-details .name { 
	font-size: 13px;
	color: inherit;
}
.dnd-upload-status .dnd-upload-details .name em { 
	display: none;
}
.dnd-upload-status .dnd-upload-details .dnd-progress-bar span {
	background: #478149; 
	line-height: 21px;
}
 .dnd-upload-status .dnd-upload-details .dnd-progress-bar { 
	display: none;
}
.dnd-upload-status .dnd-upload-details .remove-file { 
	top: 9px; 
	right: 8px;
} 
.dnd-upload-status { 
	padding: 0; 
	border-bottom: 1px solid #d4d4d4;
	background: #eee;
	margin-bottom: 10px;
}
.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #bd2d1c;
  background: #bd2d1c;
  color: #fff;
}
/*Accept Checkbox*/ /*Submit*/ .buttons_reg
{
    float: left;
    position: relative;
}

.wpcf7 input.wpcf7-submit
{
	color: #fff;
	border: solid 1px #435059;
	background: #435059; 
	font-family: 'Parkinsans';
	font-weight: 600;
    line-height: 1.75rem; 
    font-size: 1rem;
    padding: 17px 24px;
    border-radius: 99px;
    text-align: center;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
    cursor: pointer;
    box-sizing: border-box; 
    word-wrap: break-word;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    text-decoration: none; 
    position: relative;
    top: 0;
}

.wpcf7 input.wpcf7-submit:hover
{
	background: transparent;
	color: #435059;
	border: solid 1px #435059;
}

.wpcf7 .invalid input.wpcf7-not-valid, 
.wpcf7 .invalid select.wpcf7-not-valid, 
.wpcf7 .invalid textarea.wpcf7-not-valid, 
.wpcf7 .invalid input.wpcf7-date.wpcf7-not-valid 
{
    border-right: solid 7px #bd2d1c;
} 
.wpcf7 .invalid .wpcf7-not-valid input[type=checkbox] + span:before
{
    background: #bd2d1c;
    color: #fff;
    border: solid 2px #bd2d1c;
}
/* Wenn keine Datei hochgeladen wurde, ändere die Hintergrundfarbe */
.codedropz-upload-wrapper.no-file-uploaded {
  border: 2px solid red;  /* Rote Umrandung für den Fall, dass keine Datei hochgeladen wurde */
  background-color: #fdd;  /* Helles Rot als Hintergrundfarbe */
}

 
.wpcf7 .sent div.wpcf7-response-output
{
    background: #0c6019;
    border: none !important;
    color: #FFF;
    margin: 20px 0 0 !important;
    width: auto;
    padding: 20px !important;
}

div.wpcf7-response-output
{
    padding: 15px !important;
    float: left;
    margin: 10px 5px 32px 5px !important;
}

/*OUTPUT*/ .white p, .white p a, .white .accept p, .white .accept p a
{
    color: #fff !important;
}

.white .accept p a
{
    border-bottom: 1px solid #fff;
}


.wpcf7 .leftandright
{
    display: flex;
    margin-left: -5px;
    margin-right: -5px;
}

.wpcf7 .rightside h2
{
    color: #3d3d3d;
}

.wpcf7 .rightside p
{
    margin-bottom: 32px;
}

.wpcf7 .rightside p a
{
    text-decoration: none;
}

.wpcf7 .rightside p a:hover
{
    text-decoration: none;
}

.wpcf7 .leftside, .wpcf7 .rightside
{
    width: 50%;
}

.wpcf7 .leftside
{
    padding-left: 0;
    padding-right: 15px;
}

.wpcf7 .rightside
{
    padding-left: 15px;
    padding-right: 0;
}

/**---------------- Media query ----------------**/ @media only screen and (min-width:48em)
{
.column-half
{
    width: 50%;
}

}

@media only screen and (max-width:1024px)
{
.uploadboxouter { 
  grid-template-columns: repeat(2, 1fr); 
}
}


@media only screen and (max-width:890px)
{
.wpcf7 .leftside
{
    margin-top: 32px;
}

.wpcf7 .leftside, .wpcf7 .rightside
{
    width: 100%;
}

.wpcf7 .rightside
{
    padding-left: 5px;
}

.wpcf7 .leftandright
{
    display: flex;
    flex-direction: column-reverse;
}

.wpb_wrapper .wpcf7
{
    width: auto;
}

}
@media only screen and (max-width:754px)
{
.column-half, .column-full
{
    padding: 5px 0;
}
.footer_kontakt_box .vc_col-sm-6 .vc_column-inner {
  padding: 20px ;
}
.wpcf7 .leftandright
{ 
    margin-left: 0;
    margin-right: 0;
}


}
@media only screen and (max-width:620px)
{
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 input[type="number"], .wpcf7 textarea
{
    font-size: 16px;
}
.brlbs-cmpnt-cb-google-maps:before 
{ 
    font-size: 30px; 
} 
.uploadboxouter { 
  grid-template-columns: repeat(1, 1fr); 
} 
}
