/*
 * Variables
 */
:root {
	--isaqb-text-color: #000;
	--isaqb-text-color-light: #fff;
	--isaqb-background-light: #f2f2f2;
	--isaqb-border-light: #cecece;
	--isaqb-color-orange: #f7941d;
	--isaqb-color-orange-hover: #cf6400;
	--isaqb-text-size: 15px;
	--isaqb-text-lineheight: 1.6em;
}
@media sceen and (min-width: 768px) {
	:root {
		--isaqb-text-size: 18px;
		--isaqb-text-lineheight: 1.555em;
	}
}


/*
 * Pagination
 */
.elementor-pagination .page-numbers.current {
	background-color: var(--isaqb-color-orange) !important;
	-webkit-border-radius: 23px;
	-moz-border-radius: 23px;
	border-radius: 23px;
	padding: 8px;
	line-height: 30px;
	border: 0 none;
}
.elementor-pagination a.page-numbers:hover {
	color: var(--isaqb-color-orange) !important;
}

/*
 * Forms
 */
.formrow {
	margin-block-start: 1.777rem;
}

/* CF7 specific */
body .wpcf7-form-control,
body .wpcf7-form-control-wrap{
	display: block;
}
.wpcf7-not-valid-tip {
	color: var(--isaqb-color-orange);
	font-weight: 400;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	border: 1px solid var(--isaqb-color-orange);
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}
body .wpcf7-list-item {
	margin-left: 0;
	display: block;
}
.wpcf7-list-item-label a {
	color: var(--isaqb-color-orange);
}
.wpcf7-list-item-label a:hover {
	color: var(--isaqb-color-orange-hover);
}


/* Fields  */
/* Fix for input type=search on safari */
input[type="search"] {
	-webkit-appearance: textfield;
}

input[type=text], input[type=email], input[type=tel], input[type=password], input[type=number], input[type=url], input[type=search], input[type=phone], input[type=date], input.input-text,
body .wpcf7-form input[type=text], body .wpcf7-form input[type=email], body .wpcf7-form input[type=tel], body .wpcf7-form input[type=password], body .wpcf7-form input[type=number], body .wpcf7-form input[type=url],
body .wpcf7-form input[type=search], body .wpcf7-form input[type=phone], body .wpcf7-form input[type=date], body .wpcf7-form input.input-text {
	display: inline-block;
	position: relative;
	padding: 15px;
	margin: 6px 0 0;
	border: 1px solid var(--isaqb-border-light);
	background: var(--isaqb-background-light);
	color: var(--isaqb-text-color) !important;
	width: 100%;
	max-width: 100%;
	font-size: var(--isaqb-text-size);
	line-height: var(--isaqb-text-lineheight);
	vertical-align: top;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}

textarea, body .wpcf7-form textarea {
	position: relative;
	padding: 15px;
	margin: 6px 0 0;
	border: 1px solid var(--isaqb-border-light);
	background: var(--isaqb-background-light);
	color: var(--isaqb-text-color) !important;
	overflow: auto;
	width: 100%;
	max-width: 100%;
	font-size: var(--isaqb-text-size);
	line-height: var(--isaqb-text-lineheight);
	vertical-align: top;
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
}

select, body .wpcf7-form select {
	position: relative;
	padding: 15px 45px 15px 15px;
	margin: 6px 0 0;
	border: 1px solid var(--isaqb-border-light);
	background: var(--isaqb-background-light);
	color: var(--isaqb-text-color) !important;
	width: 100%;
	max-width: 100%;
	font-size: var(--isaqb-text-size);
	line-height: var(--isaqb-text-lineheight);
	-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
	-moz-box-sizing: border-box;    /* Firefox, other Gecko */
	box-sizing: border-box;
	vertical-align: top;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background: var(--isaqb-text-color-light) url("../images/icon-angle-down.svg") right 15px center / 25px no-repeat;
}

select[multiple], body .wpcf7-form select[multiple] {
	padding: 4px 12px;
	height: 84px;
}

option, body .wpcf7-form option {
	color: var(--isaqb-text-color);
	padding: 12px 6px;
	border: 0 none;
}

input:focus, textarea:focus, select:focus, body .wpcf7-form input:focus, body .wpcf7-form textarea:focus, body .wpcf7-form select:focus {
	border-color: var(--isaqb-color-orange);
}

input[type=range], body .wpcf7-form input[type=range] {
	appearance: none;
	width: 100%;
	border-radius: 6px;
	height: 12px;
	border: 1px solid var(--isaqb-border-light);
	background-color: var(--isaqb-background-light);
}
input[type=range]::-webkit-slider-thumb, body .wpcf7-form input[type=range]::-webkit-slider-thumb {
	appearance: none;
	background: var(--isaqb-color-orange);
	border: 2px solid var(--isaqb-color-orange);
	width: 30px;
	height: 30px;
	border-radius: 15px;
	cursor: pointer;
}

input[type=range]::-moz-range-thumb, body .wpcf7-form input[type=range]::-moz-range-thumb {
	background: var(--isaqb-color-orange);
	border: 2px solid var(--isaqb-color-orange);
	width: 30px;
	height: 30px;
	border-radius: 15px;
	cursor: pointer;
}

body ::-webkit-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body :-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body ::-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* firefox 19+ */
body :-ms-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* ie */
body input:-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }

body textarea::-webkit-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body textarea:-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }
body textarea::-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* firefox 19+ */
body textarea:-ms-input-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; } /* ie */
body textarea:-moz-placeholder { color: var(--isaqb-text-color) !important; font-style: normal; font-size: var(--isaqb-text-size); line-height: var(--isaqb-text-lineheight); opacity: 1; }

/* Checkbox */
label > input[type=checkbox], body .wpcf7-form label > input[type=checkbox] {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0;
	border: 0;
	height: 1px;
	width: 1px;
	overflow: hidden;
}
input[type=checkbox] + .wpcf7-list-item-label {
	display: block;
	padding-left: 40px;
	position: relative;
	cursor: pointer;
}
input[type=checkbox] + .wpcf7-list-item-label:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 3px;
	width: 30px;
	height: 30px;
	background-color: var(--isaqb-background-light);
	border: 2px solid var(--isaqb-border-light);
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
input[type=checkbox]:focus + .wpcf7-list-item-label:before {
	border-color: var(--isaqb-color-orange);
}
input[type=checkbox]:checked + .wpcf7-list-item-label:before {
	border-color: var(--isaqb-color-orange);
	background: var(--isaqb-color-orange) url('../images/checkmark.svg') center / 24px no-repeat;
}

/* Radio */
label > input[type=radio], body .wpcf7-form label > input[type=radio] {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	padding: 0;
	border: 0;
	height: 1px;
	width: 1px;
	overflow: hidden;
}
input[type=radio] + .wpcf7-list-item-label {
	display: block;
	padding-left: 40px;
	position: relative;
	cursor: pointer;
}
input[type=radio] + .wpcf7-list-item-label:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 3px;
	width: 30px;
	height: 30px;
	border-radius: 15px;
	background-color: var(--isaqb-background-light);
	border: 2px solid var(--isaqb-border-light);
}
input[type=radio]:focus + .wpcf7-list-item-label:before {
	border-color: var(--isaqb-color-orange);
}
input[type=radio]:checked + .wpcf7-list-item-label:before {
	border-color: var(--isaqb-text-color-light);
	background: var(--isaqb-color-orange);
}

/* Submit */
body .wpcf7-form input[type="submit"] {
	background-color: var(--isaqb-color-orange) !important;
}
body .wpcf7-form input[type="submit"]:hover {
	background-color: var(--isaqb-color-orange-hover) !important;
}

/**
 * Pretix Ticket Booking
 */
.pretix-widget-wrapper .pretix-widget {
	border: 0 none;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	padding: 20px;
	background: var(--isaqb-background-light);
}
body .pretix-widget-wrapper input[type=text]{
	background: #fff !important;
	line-height: 18px;
	height: 48px;
}
body .pretix-widget-wrapper input.pretix-widget-item-count-multiple {
	background: #fff !important;
	border-radius: 0 !important;
	margin: 0;
	line-height: 18px;
	height: 48px;
}
body .pretix-widget-wrapper .pretix-widget-voucher-button-wrap{
	padding-top: 6px;
}
body .pretix-widget-wrapper button {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.444em;
	letter-spacing: 0px;
	color: var( --e-global-color-secondary );
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: var( --e-global-color-accent );
	border-radius: 23px 23px 23px 23px;
	padding: 10px 30px 10px 30px;
	background-color: var(--isaqb-color-orange) !important;
}
body .pretix-widget-wrapper button:hover {
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: var( --e-global-color-accent );
	background-color: var(--isaqb-color-orange-hover) !important;
}
body .pretix-widget .pretix-widget-item-count-dec,
body .pretix-widget .pretix-widget-item-count-inc {
	color: #fff !important;
	padding: 0 10px;
	line-height: 48px;
}
body .pretix-widget .pretix-widget-item-count-group button span {
	line-height: 48px;
	vertical-align: initial;
}
body .pretix-widget .pretix-widget-item-count-dec,
body .pretix-widget .pretix-widget-item-count-dec:hover {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border: 0 none;
}
body .pretix-widget .pretix-widget-item-count-inc,
body .pretix-widget .pretix-widget-item-count-inc:hover {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	border: 0 none;
}
body .pretix-widget a, .pretix-widget-alert-box a {
	color: var(--isaqb-color-orange);
}
@media screen and (min-width: 1024px) {
	.pretix-widget-wrapper .pretix-widget {
		padding: 60px;
	}
}