html {
  font-size: 16px;
}

@media (min-width: 601px) {
  html {
    font-size: 18px;
  }
}
@media (min-width: 1281px) {
  html {
    font-size: 20px;
  }
}

body,
input,
textarea,
select {
  font-size: 1rem;
  line-height: 1.5rem;
  font-family: "neo-sans", verdana, arial, helvetica, sans-serif;
  color: #4e4744;
  font-weight: 300; 
}
#main {
	/*text-wrap: balance; */
}

header * {
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  /* -webkit-hyphens: auto;
 -ms-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;*/
}

h1,
h2,
h3,
h4,
h5{
  font-family: "neo-sans", verdana, arial, helvetica, sans-serif;
  font-weight: 400;
  margin-top: 0;
  margin-bottom: 1.5rem;
}

h1{
  font-size: 2.369rem;
  line-height: 3rem;
  color: #4e4744;
}

h2{
  font-size: 1.777rem;
  line-height: 2.25rem;
}
.tx-ausruestung h2 {color:#fff;}
.job-content h2 {font-size: 1.25rem; line-height:1.75rem; margin-bottom:1rem;}
.mobileview h2 {font-size:1.25rem; margin-bottom:10px;}
.mobileview {display:none;}

h3,
.ce-uploads-fileName {
  font-size: 1.333rem;
  line-height: 1.875rem;
}

h4 {
  font-size: 1.125rem;
}

h5{
  font-size: 1rem;
}

.header-group *:first-child {
  margin-bottom: 0.75rem;
}

p + p,
pre,
table {
  margin-top: 1.5rem;
}

p,
ul,
ol,
dl,
pre,
table {
  margin-bottom: 1.5rem;
}
#c291 p {margin-bottom:0;}

.small,
small {
  font-size: 0.8rem;
}

b,
strong,
.bold {
  font-family: "neo-sans", verdana, arial, helvetica, sans-serif;
  font-weight: 400;
}

a {
  color: #4e4744;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#c272 a {line-height:2rem;}
.frame-layout-220 a {color:#fff;}

.btn-blue {
	background:#3681a0; 
	display:block; 
	width:80%; 
	padding:1.5rem 0; 
	margin:0 auto; 
	-webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
	color:#fff;
	}
.link-internal:before {font-family: 'FontAwesome'; content: "\f101"; font-size:0.875rem; line-height:0; padding-right:5px;}
.rte-icon.fa-envelope:before {font-family: 'FontAwesome'; content: "\f003"; font-size:0.875rem; line-height:0; padding-right:5px;}
.rte-icon.fa-globe:before {font-family: 'FontAwesome'; content: "\f08e"; font-size:0.875rem; line-height:0; padding-right:5px;}
.rte-icon.fa-download:before {font-family: 'FontAwesome'; content: "\f019"; font-size:0.875rem; line-height:0; padding-right:5px;}

.content-footer2 a {color:#fff !important;}
.content-footer2 a:hover {color:#000 !important;}
.content-footer2 a:before {font-family: 'FontAwesome'; content: "\f101"; font-size:0.875rem; line-height:0; padding-right:5px;}

.wrapper-footer a {color: #4e4744;}
.wrapper-footer li > span {font-weight:700;}
.wrapper-footer a:before {font-family: 'FontAwesome'; content: "\f101"; font-size:0.875rem; line-height:0; padding-right:5px;}
.wrapper-footer li#m-105 a:before, .wrapper-footer li#m-105 > span:before {font-family: 'FontAwesome'; content: "\f11c"; font-size:0.875rem; line-height:0; padding-right:5px;}
.wrapper-footer li#m-95 a:before, .wrapper-footer li#m-95 > span:before {font-family: 'FontAwesome'; content: "\f193"; font-size:0.875rem; line-height:0; padding-right:5px;}
.wrapper-footer a:focus, .wrapper-footer a:hover {
  color: #000;
}

.textbig {font-size:1.25rem; font-weight:400;}
.date {display:block; font-size:1.5rem; font-weight:400; line-height:2rem;}
.year {display:block; font-size:1.5rem; font-weight:300;}


@media (prefers-reduced-motion: reduce) {
	a {
		transition: none;
	}
}
a:focus, a:hover {
  color: #000;
}
a.invers {
  color: #cccdd1;
}
a.invers:focus, a.invers:hover {
  color: #fff;
}

.textred {color:#d20a11;}


sup,
sub {
  vertical-align: baseline;
  position: relative;
  top: -0.4em;
}

sub {
  top: 0.4em;
}

.invers {
  color: #fff;
}

.font-color-light {
  color: #64666d;
}

/************* Tabelle **************/

table {
  border-collapse: collapse;
  border-spacing: 0;
  max-width: 100%;
  width: 100%;
  margin: 0 0 1.5rem 0;
  border: 0;
  border-bottom-width: 0;
}
th,
td {
	 padding: 0.687rem 1rem 0.75rem 1rem;
  border-bottom: 0;
  text-align: left;
  vertical-align: top;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
	th,
	td {
		transition: none;
	}
}
th {
	padding-top: 0.75rem;
    font-weight: 400;
}
tr:hover td,
tr:focus td {
	background: #e3dedd;
    color: #333438;
}
tr:nth-child(even) {background:#f5f1f0;}
.tx-termine tr:nth-child(even) {background:#d7e6ec;}


.table-responsive,
.frame-type-table {
	 margin-bottom: 1.5rem;
  overflow-x: auto;
  overflow-y: hidden;
}
th {
  background: #e7e7e9;
  color: #333438;
  font-weight: 400;
  display:none;
}
.tx-termine th {
  background: #3681a0;
  color: #fff;
  font-weight: 400;
  display:table-cell;
}

td:first-child { text-align:right; border-right:1px solid #9799a0;}

table caption {
  padding: 0.375rem;
}

@media screen and (max-width: 660px) { 
.date, .year {display: inline-block; }
.mobileview {display:block;}
#calendar {display:none;}
.mobileview .tx-termine-event {border-bottom:1px solid #999; padding-top:1rem}
.mobileview .tx-termine-date p:last-child{ margin-bottom:10px;}
.mobileview p.lastp{ margin-bottom:5px;}
}
@media screen and (max-width: 568px) { 
h1{
  font-size: 1.75rem;
  line-height: 2.5rem;
}

h2{
  font-size: 1.5rem;
  line-height: 2rem;
}

.tx-termine table, .contenttable table,  
.tx-termine thead, .contenttable thead, 
.tx-termine tbody, .contenttable tbody, 
.tx-termine th, .contenttable th, 
.tx-termine td, .contenttable td,
.tx-termine tr, .contenttable tr { display: block; }
.contenttable thead {display:none;}
.tx-termine td {padding: 0.25rem 1rem 0.25rem 1rem;}
.contenttable td:first-child,
.tx-termine td:first-child {
  text-align: left;
  border-right: 0;
  padding-top:1rem;
}
.contenttable td:last-child {
  text-align: left;
  border-right: 0;
  padding-bottom:1rem;
}
.tx-termine th {display: block;}
}

