/* Global (File used for general layout - forms / buttons etc.)
--------------------------------------- */

/* Forms */
fieldset {
	border: 0px;
}
legend {
	color: #636363;
}
label {
	vertical-align: top;
	cursor: pointer;
}
input {
	line-height: inherit;
	display: block;
	padding: 5px;
	box-shadow: none;
	outline: none;
}
textarea {
	display: block;
	padding: 5px;
	resize: none;
	outline: none;
}
form textarea {
	min-height: 200px;
}
select {
	width: 100%;
	display: block;
	outline: none;
}
label,
select,
input[type="reset"],
input[type="submit"] {
	cursor: pointer !important;
	outline: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
textarea,
input[type="text"],
input[type="tel"],
input[type="password"],
input[type="email"] {
	display: block;
	width: 100%;
	height: calc(2.7rem + 2px);
	padding: 0.7rem 0.4rem;
	font-size: 1rem;
	line-height: 1.5;
	color: #495057;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #9eaaaf;
	border-radius: .1875rem;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	font-family: "Source Sans Pro", sans-serif;
	text-align: center;
	box-shadow: inset 0px 1px 8px rgba(0, 0, 0, 0.2);
}
.form-control {
	display: block;
	width: 100%;
	height: calc(2.7rem + 2px);
	padding: 0.7rem 0.4rem;
	font-size: 1rem;
	line-height: 1.5;
	color: #495057;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #9eaaaf;
	border-radius: .1875rem;
	transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	text-align: center;
	box-shadow: inset 0px 1px 8px rgba(0, 0, 0, 0.2);
}
input[type="reset"] {
	cursor: pointer;
}
label:not(.custominput-wrap) {
    display: inline-block;
	margin-bottom: .5rem;
}
select {
	box-shadow: inset 0px 1px 8px rgba(0, 0, 0, 0.2);
	border: 0;
	text-align: center;
	height: calc(2.7rem + 2px);
	padding: 0.7rem 0.4rem;
}
input[type=range] {
	height: 25px;
	-webkit-appearance: none;
	margin: 10px 0;
	background: none;
}

input[type=range]:focus {
	outline: none;
}

input[type=range]::-webkit-slider-runnable-track {
	width: 100%;
	height: 5px;
	cursor: pointer;
	animate: 0.2s;
	box-shadow: 1px 1px 1px #002200;
	background: #205928;
	border-radius: 1px;
	border: 1px solid #18D501;
}

input[type=range]::-webkit-slider-thumb {
	box-shadow: 3px 3px 3px #00AA00;
	border: 2px solid #83E584;
	height: 20px;
	width: 20px;
	border-radius: 23px;
	background: #439643;
	cursor: pointer;
	-webkit-appearance: none;
	margin-top: -10px;
}

input[type=range]:focus::-webkit-slider-runnable-track {
	background: #205928;
}

input[type=range]::-moz-range-track {
	width: 100%;
	height: 5px;
	cursor: pointer;
	animate: 0.2s;
	box-shadow: 1px 1px 1px #002200;
	background: #205928;
	border-radius: 1px;
	border: 1px solid #18D501;
}

input[type=range]::-moz-range-thumb {
	box-shadow: 3px 3px 3px #00AA00;
	border: 2px solid #83E584;
	height: 20px;
	width: 20px;
	border-radius: 23px;
	background: #439643;
	cursor: pointer;
}

input[type=range]::-ms-track {
	width: 100%;
	height: 5px;
	cursor: pointer;
	animate: 0.2s;
	background: transparent;
	border-color: transparent;
	color: transparent;
}

input[type=range]::-ms-fill-lower {
	background: #205928;
	border: 1px solid #18D501;
	border-radius: 2px;
	box-shadow: 1px 1px 1px #002200;
}

input[type=range]::-ms-fill-upper {
	background: #205928;
	border: 1px solid #18D501;
	border-radius: 2px;
	box-shadow: 1px 1px 1px #002200;
}

input[type=range]::-ms-thumb {
	margin-top: 1px;
	box-shadow: 3px 3px 3px #00AA00;
	border: 2px solid #83E584;
	height: 20px;
	width: 20px;
	border-radius: 23px;
	background: #439643;
	cursor: pointer;
}

input[type=range]:focus::-ms-fill-lower {
	background: #205928;
}

input[type=range]:focus::-ms-fill-upper {
	background: #205928;
}

/*Style radio and checkbox inputs, after script initCheckboxRadioButtons is done*/
.custominput-wrap label {
}
.form-field.form-gdpr {
    display: flex;
    align-items: flex-start;
}
label.gdpr-label {
    font-weight: 500;
}
.notes.notes-right {
    font-size: 14px;
    line-height: 16px;
}
.custominput-wrap input[type=checkbox],
.custominput-wrap input[type=radio] {
	border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
}
input[type=checkbox] + label .fake-input,
input[type=radio] + label .fake-input {
	display: block;
	width: 20px;
	height: 20px;
	border: 1px solid #A9A9A9;
	background: #fff;
	min-width: 20px;
}
input[type=checkbox] + label .fake-input {
	border-radius: 2px;
}
input[type=checkbox]:checked + label .fake-input {
	background: #106c54;
	position: relative;
	text-align: center;
}
input[type=checkbox]:checked + label .fake-input:before {
	content: "*";
	color: #fff;
}
input[type=radio] + label .fake-input {
	border-radius: 6px;
}
input[type=radio]:checked + label .fake-input {
	background: #C1C1C1;
	border: 1px solid #3A3A3A;
}
input[type=checkbox]+label .fake-input {
    border-radius: 2px;
    position: absolute;
    left: 0;
    top: 3px;
}
.form-field.checkbox.custominput-wrap label {
    padding-left: 28px !important;
}

/*Selectbox select 2*/
.select2 {
    width: 100% !important;
	min-width: 220px;
}

/*Chrome remove yellow background*/
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 50px white inset;
    -webkit-text-fill-color: #333;
}
input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 50px white inset;
    -webkit-text-fill-color: #333;
} 

/* Buttons */
input.btn,
button.btn,
.btn {
    display: inline-block;
    font-weight: var(--default-button-font-weight);
    text-align: var(--default-button-text-align);
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    padding: var(--default-button-padding);
    font-size: var(--default-button-font-size);
    line-height: var(--default-button-line-height);
	font-family: var(--default-button-font-family);
    border-radius: var(--default-button-border-radius);
    color: var(--default-button-color);
    background-color: var(--default-button-background-color);
    border-color: var(--default-button-border-color);
    margin-bottom: var(--default-button-margin-bottom);
	transition: var(--default-button-transition);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.btn.full-width {
    width: 100%;
    text-align: center;
}
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input.btn,
button.btn {
	line-height: inherit;
	outline: none !important; 
}
@media (hover: hover) {
	input.btn:hover,
	button.btn:hover,
	.btn:hover {
		color: var(--default-button-hover-color);
		background-color: var(--default-button-hover-background-color);
		border-color: var(--default-button-hover-border-color);
	}
}
.btn.btn-large {
	padding: 1rem 2rem;
	font-size: 1.1rem;
	line-height: 1.5;
    border-radius: .3rem;
    min-width: 200px;
}  
input.btn.btn-light,
button.btn.btn-light,
.btn.btn-light {
	color: var(--secondary-button-color);
	border-color: var(--secondary-button-border-color);
	background-color: var(--secondary-button-background-color);
	transition: var(--secondary-button-transition);
	border-radius: var(--secondary-button-border-radius);
}
@media (hover: hover) {
	input.btn.btn-light:hover,
	button.btn.btn-light:hover,
	.btn.btn-light:hover {
		color: var(--secondary-button-hover-color);
		border-color: var(--secondary-button-hover-border-color);
		background-color: var(--secondary-button-hover-background-color);
	}
}
input.btn-sm.btn,
button.btn-sm.btn,
.btn-sm.btn {
    padding: .25rem .5rem;
    font-size: .875rem;
    line-height: 1.5;
    border-radius: .2rem;
	height: auto;
}
.hamburger {
	padding: 1px 3px;
	display: inline-block;
	cursor: pointer;
	transition-property: opacity, filter;
	transition-duration: .15s;
	transition-timing-function: linear;
	font: inherit;
	color: inherit;
	text-transform: none;
	background-color: transparent;
	border: 0;
	margin: 0;
	overflow: visible
}
.hamburger.is-active:hover,
.hamburger:hover {
	opacity: 1
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner:after,
.hamburger.is-active .hamburger-inner:before {
	background-color: #fff
}
.hamburger-box {
	width: 13px;
	height: 9px;
	display: inline-block;
	position: relative
}
.hamburger-inner {
	display: block;
	top: 50%;
	margin-top: -.5px
}
.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
	width: 13px;
	height: 1px;
	background-color: #fff;
	border-radius: 0;
	position: absolute;
	transition-property: transform;
	transition-duration: .15s;
	transition-timing-function: ease
}
.hamburger-inner:after,
.hamburger-inner:before {
	content: "";
	display: block
}
.hamburger-inner:before {
	top: -4px
}
.hamburger-inner:after {
	bottom: -4px
}
.hamburger--spin .hamburger-inner {
	transition-duration: .22s;
	transition-timing-function: cubic-bezier(.55, .055, .675, .19)
}
.hamburger--spin .hamburger-inner:before {
	transition: top .1s ease-in .25s, opacity .1s ease-in
}
.hamburger--spin .hamburger-inner:after {
	transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19)
}
.hamburger--spin.is-active .hamburger-inner {
	transform: rotate(225deg);
	transition-delay: .12s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}
.hamburger--spin.is-active .hamburger-inner:before {
	top: 0;
	opacity: 0;
	transition: top .1s ease-out, opacity .1s ease-out .12s
}
.hamburger--spin.is-active .hamburger-inner:after {
	bottom: 0;
	transform: rotate(-90deg);
	transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s
}
[data-original] {
    opacity: 0;
}
.frame-type-text {
	padding-left: 20px;
	padding-right: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: var(--default-wrapper-max-width);
}
#p .frame-layout-1 .bc-base-register label:not(.custominput-wrap) {
	background: #ebebe9;
}
#p .frame-layout-1 .bc-base-contact label:not(.custominput-wrap) {
	background: #ebebe9;
}
.frame-layout-3 .fg__row.align-items-flex-start {
    flex-direction: row-reverse;
}
.frame-layout-3 .fg__row.align-items-flex-start .first {
    margin-right: 0;
}
.frame-layout-3 .fg__row.align-items-flex-start .last {
    margin-right: 1.5%;
}
 

/*/*/
.bc-base-register .flex-wrap-wrap,
.bc-base-contact .flex-wrap-wrap {
    gap: 20px;
    margin-bottom: 20px;
}
.bc-form-wrap input[type=text], 
.bc-form-wrap input[type=email], 
.bc-form-wrap input[type=password], 
.bc-form-wrap textarea {
    box-shadow: none;
    border: 1px solid #aaa;
    text-align: left;
}
.bc-form-wrap input[type=text]:placeholder, 
.bc-form-wrap input[type=email]:placeholder, 
.bc-form-wrap input[type=password]:placeholder, 
.bc-form-wrap textarea:placeholder {
	color: #495057 !important;
}
.settings-headline {
    margin-bottom: 0.15em;
}
.bc-base-contact .flex-wrap-wrap > * {
    flex: 1;
}
#p .select2-container .select2-selection--single {
    min-height: 46px;
    height: auto; 
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5;
}
#p .select2-container--default .select2-selection--single .select2-selection__rendered {
    font-size: 1rem;
    line-height: 1.5;
	height: 46px;
    padding-top: 10px;
    padding-left: 6px;
}
#p .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 46px;
    font-size: 22px;
}
#p .bc-base-contact label:not(.custominput-wrap) {
    padding-left: 8px;
	padding-right: 8px;
    padding-bottom: 1px;
    position: relative;
    z-index: 1;
    background: #fff;
    border-bottom: 0 !important;
    display: inline-block;
	margin-left: 10px;
}
#root #p .select2-container--default .select2-selection--single .select2-selection__arrow b {
	border-width: 10px 6px 0 6px;
    margin-left: -10px;
    margin-top: 3px;
}
#p textarea:not(:placeholder-shown):valid,
#p input:not(:placeholder-shown):valid {
    border-color: rgb(0 97 61 / 90%) !important;
}
#p input:not(:placeholder-shown):invalid {
	border-color: #c83c3c !important;
}
#root #p .field-error-parent label { 
    color: #c83c3c !important;
}
#root #p select {
    box-shadow: none !important;
    appearance: none;
}
#root #p form textarea {
    min-height: 120px;
	min-width: 220px;
}
.bc-base-register.bc-wrapper section.teaser {
    margin-top: 0;
}
#root .freeprivacypolicy-com---nb-interstitial-overlay {
	background: rgba(0, 0, 0, .5);
	top: auto;
	bottom: 0;
}
#root .freeprivacypolicy-com---nb-interstitial {
	top: auto;
	bottom: 3vh;
}
#root .freeprivacypolicy-com---palette-dark .cc-nb-okagree {
	color: #fff;
	background-color: #00613d;
}
#root .frame-space-before-medium.frame-type-news_newsliststicky {
	padding: 1px;
}
#root .glogai-color { 
	color: #0071b6 !important; 
}