

.frame-type-form_formframework h2 {
	margin-bottom:80px;
}
.form-grid-columns {
	display:flex;
	column-gap:30px;
}
.form-grid-column {
	width:50%;
}


.form-group {
	margin-bottom:30px;
}
.form-group > label {
	margin-bottom:10px;
	display:inline-block;
	color:var(--lightblue);
}
.form-group input.form-input {
	width:100%;
	padding:10px 20px;
	box-sizing:border-box;
	border:1px solid var(--lightblue);
	border-radius:30px;
}
.form-group input.form-input:focus {
	outline: none !important;
	box-shadow: none !important;
	border-color:var(--orange);
}
.form-group:focus-within label {
	color:var(--orange);
}
.form-group textarea {
	border:1px solid var(--lightblue);
	border-radius:20px;
	width:100%;
	min-height:250px;
	padding:20px;
	box-sizing:border-box;
}
.form-group textarea:focus {
	outline: none !important;
	box-shadow: none !important;
	border-color:var(--orange);
}

.form-subtitle {
	margin-top:30px;
}

/* Checkbox */
.form-check span {
	display:inline-block;
	margin-left:10px;
	width:calc(100% - 40px);
}
.form-check-label {
	color:var(--lightblue);
}
.form-check input {
  -webkit-appearance: none; /* Safari/Chrome */
  -moz-appearance: none;    /* Firefox */
  appearance: none;         /* Standard */
  width: 20px;
  height: 20px;
  border: 2px solid #0052fe;
  border-radius: 50%;       /* rund */
  outline: none;
  cursor: pointer;
  position: relative;
  vertical-align:top;
  margin-top:6px;
  display:inline-block;
}

.form-check input:checked {
  background-color: #0052fe;
}
.form-check input:checked:checked::after {
	  content: '✓';
	  position: absolute;
	  top: -6px;
	  left: 0px;
	  width: 20px;
	  height: 20px;
	  border-radius: 50%;
	  color:white;
}

/* Submit */ 
.frame-type-form_formframework .btn-group.submit {
	display:block;
	text-align:right;
}
.frame-type-form_formframework .btn-primary {
	height:60px;
	line-height:60px;
	background-color:white;
	position:relative;
	border-radius:30px;
	text-align:center;
	display:inline-block;
	padding:0 30px;
	box-sizing: border-box;
	border:none;
	cursor:pointer;
}
.frame-type-form_formframework .btn-primary span {
	position:relative;
	z-index:1;
	color:white;
	font-weight:700;
	letter-spacing:1px;
	text-transform:uppercase;
}

.frame-type-form_formframework .btn-primary::before {
	content:"";
	border-radius:30px;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	z-index:0;
	background-color:var(--orange);
	opacity:0.7;
}
.frame-type-form_formframework .btn-primary:hover::before {
	opacity:0.9;
	
}
.frame-type-form_formframework .btn-primary:active::before {
	opacity:0.8;
	box-shadow: inset 0 3px 3px -2px rgba(0, 0, 0, 0.4);
}
/* Upload */
.file-upload {
  position: relative;
  display: inline-block;
  padding: 10px 20px;
  background-color: white;
  border:1px solid var(--lightblue); 
  color: var(--lightblue);
  border-radius: 30px;
  cursor: pointer;
}

.file-upload input[type="file"] {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;       /* unsichtbar, aber klickbar */
  cursor: pointer;
}
.file-name {
	display:inline-block;
	margin-left:10px;
	padding-left:10px;
	border-left:1px solid var(--lightblue);
}

/* other */
.frame-type-form_formframework .obligatory {
	font-size:18px;
	color: rgba(149, 149, 149, 1);
	margin-top:25px;
}
.frame-type-form_formframework .actions {
	margin-top:-75px;
}  
.frame-type-form_formframework .error.help-block {
	color:var(--red);
}
.frame-type-form_formframework .help-block {
	font-size:18px;
	color: var(--lightblue);
}

@media only screen and (max-width: 768px) { 
	.frame-type-form_formframework h2 {
		margin-bottom:60px;
	}
	.form-grid-columns {
		display:block;
	}
	.form-grid-column {
		width:100%;
	}
	
}
@media only screen and (max-width: 560px) { 
	.frame-type-form_formframework h2 {
		margin-bottom:40px;
	}
	.obligatory {
		margin-top:0;
	}
	.actions {
		margin-top:0;
	}

}



