/** MATRIX-CMS **/
:root {
--me-dark-color: #04ABA2;
--me-middledark-color: #5b5b5b;;
--me-logo-color: #B242A1;
--me-soft-color: #b2b2b2;
--me-content-left-padding: 0px;
--me-transition-time: 250ms;
}

.matrixcms, .matrixcms a {
	font: 20px/22px serif;
}
* { outline: none; }

body,
.GPS {
	font-family: 'Open Sans', sans-serif;
	font-size: 20px;
	line-height: 150%;
	color: #000;
}
body {
	padding: 0;
	margin: 0;
	background-color: #fff;
}
#content {
	margin-bottom: 100px;
}


* img { border: none; display: block; }
object:hover { border: 0px solid transparent; }

.mxci { max-width: 100%; }

.small { font-size: 85%; }

p, hr, .GPM { margin: 0 0 12px 0; }
p { line-height: 150%; }
.inline { display: inline; }
.floatRight { float: right; }
.floatLeft { float: left; }
.clearBoth { clear: both; }
.nowrap { white-space: nowrap; }

.justify { text-align: justify; }

.valignTop, .vaTop, .alignTop { vertical-align: top; }
.vaMiddle, .alignMiddle { vertical-align: middle; }
.vaBottom { vertical-align: bottom; }
.vaBase { vertical-align: baseline; }

.alignRight { text-align: right; }
.alignLeft { text-align: left; }
.alignCenter { text-align: center; }

.displayBlock { display: block; }
.displayInline, .inline { display: inline; }
.displayInlineBlock, .inlineBlock { display: inline-block; }
.displayNone { display: none; }

.invisible { visibility: hidden; }

.posAbsolute { position: absolute; }
.posRelative { position: relative; }

.oHidden { overflow: hidden; }

.bold { font-weight: bold; }
.italic { font-style: italic; }
.uppercase { text-transform: uppercase; }
.cursorPointer { cursor: pointer; }
.cursorDefault { cursor: default; }

.NoSelect {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.TransformMirror {
	-ms-transform: scale(-1, 1);
	-webkit-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.FieldRequired:after {
	content: '*';
	color: #a23;
}
.TableFlow {overflow-x: auto;}

.flexed,
.justflex {
	display: -webkit-box; -ms-flex: 1; display: -ms-flexbox; display: flexbox; display: box; display: -ms-flex; display: -webkit-flex;
	display: flex;
}
.justflex {
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-ms-justify-content: space-between;
	justify-content: space-between;
}
.flexwrap {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flexigrow1 {
	-webkit-flex-grow: 1;
	-ms-flex-grow: 1;
	flex-grow: 1;
}
.flextop { align-items: flex-start; }
.flexmiddle { align-items: center; }
.flexbase { align-items: baseline; }
.flexbottom { align-items: flex-end; }
.flexstretch { align-items: stretch; }

.flexcenter { justify-content: center; }

.flexitop { align-self: flex-start; }
.fleximiddle { align-self: center; }
.flexibase { align-self: baseline; }
.flexibottom { align-self: flex-end; }

/* some widths */
.w10p { width: 10%; }
.w20p { width: 20%; }
.w30p { width: 30%; }
.w40p { width: 40%; }
.w50p { width: 50%; }
.w60p { width: 60%; }
.w70p { width: 70%; }
.w80p { width: 80%; }
.w90p { width: 90%; }
.w100p,
.fullWidth { width: 100%; }
.noMargin { margin: 0; }
.cfx { display: block; width: 100%; height: 1px; } /*clear full x-axis*/
.jfx { display: inline-block; width: 100%; height: 1px; } /*justify full x-axis*/

.table { display: table; }
.table.inlineBlock, .table.inline { display: inline-table; }
.table .row { display: table-row; }
.table .row .cell { display: table-cell; }
.table .row.displayNone, .table .row .cell.displayNone { display: none; }
table.nbcpcs {
	border: none;
	padding: 0;
	border-spacing: 0;
	border-collapse: collapse;
}

/* The Pads */
.pl { padding-left: 5px; }
.pr { padding-right: 5px; }
.pt { padding-top: 5px; }
.pb { padding-bottom: 5px; }
.ph { padding-top: 5px; padding-bottom: 5px; }
.pv { padding-left: 5px; padding-right: 5px; }
.pc { padding: 5px; }

/* The Lines */
.bl { border-left: 1px solid #f0ede3; }
.br { border-right: 1px solid #f0ede3; }
.bt { border-top: 1px solid #f0ede3; }
.bb { border-bottom: 1px solid #f0ede3; }
.bh { border-top: 1px solid #f0ede3; border-bottom: 1px solid #f0ede3; }
.bv { border-left: 1px solid #f0ede3; border-right: 1px solid #f0ede3; }
.bc { border: 1px solid #f0ede3; }

h1,
.h1s {
	font-size: 55px;
	line-height: 100%;
	font-weight: normal;
	padding: 0px;
	margin: 0 0 0.1em;
	color: var(--me-logo-color);
	padding: 0px;
	font-family: 'Courgette', cursive;
}
@media all and (max-width: 1000px) {
	h1, .h1s { font-size: 30px; }
}
h2,
.h2s {
	margin: 0px;
	margin-bottom: .75em;
	padding: 0px;
	font-size: 24px;
	color: var(--me-logo-color);
	font-weight: 600;
	font-style: italic;
}
h1 + h2, p + h2 { padding-top: .5em; }
h3 {
	margin: 0px;
	padding: 0px;
	margin-bottom: 0.5em;
	font-weight: normal;
	color: #000;
	font-size: 20px;
	font-style: italic;
	letter-spacing: 1px;
}
h4 {
	margin: 0px;
	padding: 0px;
	margin: 0 0 0.5em 0;
	font-weight: normal;
	font-style: italic;
	font-size: 100%;
}

a, .GAS { color: #444; text-decoration: none; }
a:hover, .GAS:hover { text-decoration: underline; }
a.selected, .GAS.selected { text-decoration: underline; }

ul:not([type]) {
	list-style-image: url('../images/content/pfoten.png');
	line-height: 1.5;
}
ul:not([type]) > li {
	margin-bottom: 1em;
}

ol {
	margin: 0;
	padding: 0 0 1em;
	padding-left: 23px;
	/*font-weight: bold;*/
}
ol li {
	margin: 0;
	padding: 0;
	padding: 2px 0px;
}

INPUT[type=text], INPUT[type=password], textarea {
	border: 1px solid #d8d8d8;
	box-shadow: 0 0 5px rgba(64,64,64,0.2) inset;
	padding: 1px 5px 0;
	font-size: 100%;
	border-radius: 3px;
}
INPUT[type=text], INPUT[type=password] {
	height: 16px;
	line-height: 1em;
}
INPUT[type=text]:focus, INPUT[type=password]:focus, textarea:focus {
	border: 1px solid var(--me-logo-color);
}
INPUT.button, INPUT[type="submit"], INPUT[type="button"], INPUT[type="reset"], BUTTON {
	color: black;
	border: 1px solid;
	border-left-color: #D0D7E8;
	border-top-color: #D0D7E8;
	border-bottom-color: #D0D7E8;
	border-right-color: #D0D7E8;
	padding: 0px 3px;
	background: white;
}
INPUT[type="submit"].displayNone {
	display: block;
	width: 1px;
	height: 1px;
	overflow: hidden;
	border: none;
	background: none;
	opacity: 0.01;
	position: absolute;
	top: -9999px;
	left: -9999px;
}
label { position: relative; }


.shortNum {
	width: 30px;
	text-align: center;
	padding-left: 0;
	padding-right: 0;
}

hr {
	border: none;
	border-bottom: 1px solid #b8b8b8;
	font-size: 0px;
	background-color: transparent;
}

sup, sub {
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	position: relative;
	font-size: 75%;
}

sup { bottom: 1ex; }
sub { top: .5ex; }
