

/*	---------------------------------------------------------------------------------------------------- */

h1, h2, h3, h4, p, .smallprint {
	font-weight: normal;
	padding:0;
	margin: 0 auto 40px;
}
h1, h2, h3, h5 {
	text-align:center;
}
h1 {
	font-family: 'hn36', Helvetica, Arial, sans-serif;
	font-size: 4em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
	color: #999;
	padding: 0 0 50px;
	margin: 0 0 50px 0;
    border-bottom: 1px dotted #CCC;
}
h1 span {
    display: block;
	font-family: 'hn66', Helvetica, Arial, sans-serif;
	font-size: 0.375em;
	padding: 20px 0 0;
	margin: 0;
}
h2 {
	font-family: 'hn86', Helvetica, Arial, sans-serif;
	color: #999;
	font-size: 2.5em;
	padding:0 0 20px;
    border-bottom: 1px dotted #DDD;
}
h3 {
	font-family: 'hn85', Helvetica, Arial, sans-serif;
	font-size: 1.5em;
	color: #666;
    border-bottom: 1px dotted #DDD;
    padding: 0 0 20px;
}
h4 {
	font-family: 'hn65', Helvetica, Arial, sans-serif;
	font-size: 1.125em;
	color: #666;
}
h5 {
	font-family: 'hn26', Helvetica, Arial, sans-serif;
	font-size: 1.25em;
	color: #666;
	padding: 0;
	margin: 0 0 50px 0;
}
p {
	font-family: 'hn45', Helvetica, Arial, sans-serif;
	font-size: 1.0625em;
	color: #333;
}
em p {
	font-family: 'hn46', Helvetica, Arial, sans-serif;
}
em p strong {
	font-family: 'hn66', Helvetica, Arial, sans-serif;
}
p i {
    vertical-align: -1px;
}
pre {
    display: block;
	font-family: inherit;
	font-size:inherit;
	line-height: inherit;
	padding: 0;
	margin: 0;
    white-space: pre;
}
.smallprint {
	font-size: 0.875em;
	color: #999;
}
.center, 
div.center h4, 
div.center h3 { 
    text-align: center; 
}
.noborder { 
	border: none;
}
strong {
	font-family: 'hn65', Helvetica, Arial, sans-serif;
	font-weight: normal;
}
em {
	font-family: 'hn46', Helvetica, Arial, sans-serif;
	font-style: normal;
}
strong em {
	font-family: 'hn66', Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-style: normal;
}
sup {
	vertical-align:top;
	line-height:100%;
}
sub {
	vertical-align:bottom;
	line-height:75%;
}
a {
	color: #008B8B;
	text-decoration: none;
	-webkit-transition: .5s;
	transition: .5s;
}
a:hover {
	color: #4FB9B9;
	text-decoration: none;
}
.ds h4 {
	font-size: 1em;
	color: #999;
	margin: 30px auto 20px;
}
.ds p {
	font-family: 'hn35', Helvetica, Arial, sans-serif;
	font-size: 0.9375em;
	color: #999;
	margin: 0 auto 20px;
}
.ds li {
    font-size: 0.9375em;
	color: #999;
	margin:0 0 5px;
}

/*	---------------------------------------------------------------------------------------------------- */


.columns {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	-ms-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 1em;
	-moz-column-gap: 1em;
	-ms-column-gap: 1em;
	column-gap: 1em;
    column-rule: 1px dotted #DDD;
}
.columns.sitemap {
    max-width: 800px;
    margin: auto;
}
.columns h3, .columns h4, .columns p, .columns ul, .columns li {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
	margin: 0;
}
.columns h4, .columns p, .columns ul, .columns li {
	text-align: left;
}
.columns h3 {
	text-align: center;
    border-bottom: 1px dotted #DDD;
    padding: 0 0 20px;
    margin: 0 20px 40px;
}

.columns li {
	margin:0 0 0 20px;
}
.columns hr {
	-webkit-column-break-after: column;
	page-break-after: column;
	break-after: column;
	border: none;
}
.columns h3 {
	padding-bottom:1.375em;
}
.columns h4, .columns p, .columns ul {
	padding:0 40px 1.375em;
}
img {
	height:auto;
	width: 100%;
	line-height:0;
	display:block;
	margin: 0 auto;
	border:none;
}

iframe.video {
	position: relative;
    display:block;
	width: 100%;
	max-width: 480px;
	height: auto;
	aspect-ratio: 16/9;
	margin: 20px auto 60px;
	border:none;
}

div.visual img {
    display:block;
    width:100%;
    max-width:100%;
    height:400px;
    object-fit: cover;
    object-position: 50%;
    line-height:0;
    border:none;
    overflow:hidden;
    margin:auto;
    padding:0;
    background-color: #FFF;
}


/*	Subnavi		---------------------------------------------------------------------------------------------------- */

nav.sub {
	position:relative;
	width:100%;
	height:auto;
	display:block;
	float:none;
	margin:0;
	padding:0;
	overflow:hidden;
	text-align: center;
	z-index:2;
}
nav.sub ul {
	display: inline-block;
	margin: 0;
	padding: 0;
	list-style:none;
}
nav.sub li {
	height:30px;
	display:block;
	float:left;
	font-size: 1em;
	letter-spacing: .05em;
    text-transform: uppercase;
	font-weight: normal;
	font-style: normal;
	line-height:30px;
	color: #999;
	padding:0;
	margin:0 10px 16px 0;
}
nav.sub a {
	display:block;
	font-family: 'hn45', Helvetica, Arial, sans-serif;
	color: #999;
	background-color: #FFF;
	border: 1px solid #999;
	padding:4px 20px 0;
	margin: 0;
    -webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
nav.sub a:hover {
	color: #008B8B;
	border-color: #008B8B;
}


/*	Content		---------------------------------------------------------------------------------------------------- */


section {
	position: relative;
	display:block;
	width:100%;
	height:auto;
	min-height: 800px;
	background-color:#FFF;
	margin:0;
	padding:0;
	overflow: auto;
	z-index: 99;
}
section div.wrapper {
	position:relative;
	display: block;
	margin:0 auto;
	width:1600px;
	height:100%;
	padding:0;
	z-index:99;
}
section article {
	position: relative;
	display:block;
	width:100%;
	height:auto;
	padding:60px 0;
	margin: 80px 0 0;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	overflow: auto;
}
section article.start {
	margin: 0;
    overflow: auto;
    height:auto;
}
section article:first-of-type {
	padding:60px 0 0;
	border-top:none;
}
section article h4, section article p, section article ul, section article ol, section article li {
	max-width:1024px;
}
article ul, article ol {
	margin:0 auto 40px;
}
article ul {
	list-style: square outside;
}
article ol {
	list-style: decimal outside;
}
article ol.abc {
	list-style: lower-alpha outside;
}
article li {
	font-family: 'hn45', Helvetica, Arial, sans-serif;
	font-size: inherit;
	color:#666;
	padding:0 0 0 10px;
}
article ol li {
	padding:0 0 10px;
}

article div.box {
	position: relative;
	float: left;
	width: 33.3333%;
	height: auto;
	padding:0;
	margin:auto;
	background-color: #FFF;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
article div.box.center {
	float: none;
    width:100%;
	margin:0 auto;
    padding: 0;
    height:auto;
}
article div.box.full {
	width: 100%;
    border: none;
}
article div.box img {
    width:100%;
    max-width:300px;
    height:300px;
    object-fit: cover;
    object-position: 50%;
    line-height:0;
    margin:auto;
    padding:0;
    border: 4px dotted #4FB9B9;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
}
article div.box.center img {
    max-width:400px;
    height:400px;
}
article div.box.full img {
    max-width:100%;
    min-width:75%;
    border: none;
    -webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
}
article div.box h2 {
    position: absolute;
	width: 100%;
    height: 300px;
    top: 0;
    left: 0;
	line-height: 300px;
	font-family: 'hn66', Helvetica, Arial, sans-serif;
	color: #FFF;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-size: 30px;
	padding:0;
	margin:0;
    border: none;
    overflow: hidden;
}
article div.box.full h2 {
	max-width: 100%;
}
article div.box h2 a {
    position: inherit;
    top: 0;
    left: 0;
	color: #FFF;
    width: 100%;
    height: 300px;
	line-height: 300px;
}
article div.box h2 a:hover {
	color: #FFF;
}
article div.box h2:hover {
    height: 102%;
    background: rgba(255,255,255,0.40);
	color: #FFF;
    text-shadow: 0px 0px 20px rgba(0,0,0,0.5);
}

article.highlight, article.boxes {
	padding:40px 0 0;
	margin: 0 0 50px 0;
}
article.highlight {
	border:1px dotted #4FB9B9;
}
article.highlight h2 {
	font-family: 'hn36', Helvetica, Arial, sans-serif;
	color:#4FB9B9;
	border:none;
}
article.highlight ul, article.boxes ul {
    display: block;
    width: 50%;
    float: none;
    list-style: none;
    margin: 0 auto;
	padding:0;
}
article.highlight li, article.boxes li {
    display: block;
    float: none;
    list-style: none;
    width: 100%;
    height:auto;
    margin: 0;
    padding:40px 0;
    overflow: hidden;
}
article.highlight li:first-of-type, article.boxes li:first-of-type {
    border-bottom: 1px dotted #DDD;
}
article.boxes li img {
    float: left;
    width:300px;
    height:400px;
    object-fit: cover;
    object-position: 50%;
    line-height:0;
    margin:0 0 0 50px;
    padding:0;
}
article.boxes li div {
    float: left;
    width:calc(100% - 350px);
    height:auto;
    margin:0;
    padding:0;
    font-family: 'hn46', Helvetica, Arial, sans-serif;
    font-size: 1.125em;
	color:#999;
}
article.boxes li div p {
    float: left;
    margin:0 0 20px;
    font-family: 'hn46', Helvetica, Arial, sans-serif;
    font-size: 0.875em;
	color:#999;
     -webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
article.boxes li div p:first-of-type {
    border-bottom: 1px dotted #DDD;
    width: 100%;
}
article.boxes li div strong {
    font-family: 'hn66', Helvetica, Arial, sans-serif;
    font-size: 1.25em;
    line-height:50px;
}

article.thumbs {
    text-align: center;
    padding:20px 0 40px;
}
article.thumbs div {
    max-width: 960px;
    text-align: center;
    margin: 0 auto;
    padding: 0;
}
article.thumbs a span {
    position: relative;
    float: left;
    width:220px;
    height:280px;
    margin:10px;
    padding:0;
    overflow: hidden;
}
article.thumbs a img {
    float: left;
    width:200px;
    height:260px;
    object-fit: cover;
    object-position: 50%;
    line-height:0;
    padding:0;
    text-align: center;
}
article.thumbs div.center {
    width:278px;
    height:398px;
    float: none;
    margin:auto;
}
article.thumbs div.center a span {
    float: none;
    width:278px;
    height:398px;
    margin:auto;
}
article.thumbs div.center img {
    border:2px dotted #DDD;
    width:300px;
    height:auto;
}
article img.max640 {
	margin-top: 40px;
    width:100%;
    max-width:640px;
    border:2px dotted #DDD;
}
div.logos {
    max-width: 960px;
    text-align: center;
    margin: 0 auto;
    padding: 0;
}  
div.logos img, img.logos2 {
    position: relative;
    float: left;
    width:200px;
    height:200px;
    padding: 0;
    border:1px dotted #DDD;
}
div.logos img {
    margin:10px;
}
img.logos2 {
    float: none;
    margin:30px auto 0;
    text-align: center;
}


/*	Tabelle		---------------------------------------------------------------------------------------------------- */

table {
	position:relative;
	width: 100%;
	padding:0;
	cellpadding:0;
	cellspacing:0;
	border-collapse: collapse;
	border: 1px solid #CCC;
	margin: 0 0 1em 0;
}
table tr {
	background-color: #F7F7F7;
}
table tr:nth-of-type(even) {
	background-color: #ECECEC;
}
th, td {
	width: auto;
	line-height:20px;
	font-weight: normal;
	vertical-align:top;
	height:20px;
	padding:4px;
	border: 1px solid #CCC;
	text-align:left;
}
th {
	font-family: 'hn85', Helvetica, Arial, sans-serif;
	font-size: 1em;
	background-color:#999;
	color: #FFF;
}
td {
	font-family: 'hn45', Helvetica, Arial, sans-serif;
	font-size: 0.875em;
	color: #666;
}



@media only screen and (max-width: 1920px) {

/*	Content		---------------------------------------------------------------------------------------------------- */


section div.wrapper {
	width:100%;
	max-width:1600px;
	padding:0 40px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
	
}


@media only screen and (max-width: 1600px) {
	

/*	---------------------------------------------------------------------------------------------------- */



/*	Content		---------------------------------------------------------------------------------------------------- */


section div.wrapper {
	max-width:1280px;
	padding:0 40px;
}
	
}
	
	
@media only screen and (max-width: 1280px) {
	

/*	---------------------------------------------------------------------------------------------------- */

h1, h2, h3, h4, p, .smallprint {
	margin: 0 0 30px 0;
}
h1 {
	font-size: 3em;
	padding: 0 0 40px;
	margin: 0 0 40px 0;
}
h2 {
	font-size: 2em;
}

/*	Content		---------------------------------------------------------------------------------------------------- */


section div.wrapper {
	max-width:100%;
	padding:0;
}
section article {
	padding:40px;
}
section article:first-of-type {
	padding:40px;
}
section article h4, section article p {
	padding:0 90px;
}
section article ul, section article ol {
	padding:0 110px;
}

article.highlight {
    width: calc(100% - 80px);
	margin: 0 40px 50px;
}
article.boxes {
    width: 100%;
	padding:40px 40px 0;
	margin: 0 0 50px 0;
}
article.boxes ul {
    width: 100%;
}
	
}


@media only screen and (max-width: 1024px) {

	
/*	---------------------------------------------------------------------------------------------------- */

h1, h2, h3, h4, p, .smallprint {
	margin: 0 0 25px 0;
}
h1 {
	font-size: 2.5em;
}
h1 span {
	font-size: 0.5em;
}
h2 {
	font-size: 1.75em;
}
h3 {
	font-size: 1.375em;
}
	
	
/*	---------------------------------------------------------------------------------------------------- */

	
.columns {
	-moz-column-count: 1;
	-ms-column-count: 1;
	-webkit-column-count: 1;
	column-count: 1;
	-moz-column-gap: 0;
	-ms-column-gap: 0;
	-webkit-column-gap: 0;
	column-gap: 0;
    column-rule: none;
    break-inside: avoid-column;
    display:inline-block;
}
.columns h4, .columns p, .columns ul {
	padding:0 20px 1.375em;
}
.columns h3, .columns h4, .columns p, .columns ul, .columns li {
	-webkit-column-break-inside: avoid-column;
	page-break-inside: avoid-column;
	break-inside: avoid-column;
}
.columns hr {
	-webkit-column-break-after: auto;
	page-break-after: auto;
	break-after: auto;
}

	
/*	Subnavi		---------------------------------------------------------------------------------------------------- */


nav.sub li {
	font-size: 0.9375em;
}
	
/*	Content		---------------------------------------------------------------------------------------------------- */


section article {
	padding:40px 20px;
}
section article:first-of-type {
	padding:40px 20px;
}
section article h4, section article p {
	max-width:100%;
	padding:0 20px;
}
section article ul, section article ol {
	max-width:100%;
	padding:0 40px;
}
section article li {
	max-width:100%;
}
    
article div.box {
	float: left;
	width: 33.3333%;
	height: 240px;
}
article div.box img {
    width:100%;
    max-width:240px;
    height:240px;
}
article div.box h2 {
    height: 240px;
	line-height: 240px;
    font-size: 22px;
}
article div.box h2 a {
    height: 240px;
	line-height: 240px;
}

article.highlight, article.boxes {
    width: 100%;
	border-left: none;
	border-right: none;
	padding:30px 40px 0;
	margin: 0 0 30px 0;
}
article.highlight ul {
    width: 100%;
}
}

@media only screen and (max-width: 960px) {

.columns.sitemap {
    max-width: 100%;
}

article.thumbs div {
    max-width: 720px;
}
article.thumbs a img {
    width:200px;
    height:260px;
    padding:0;
}
    
    

}

@media only screen and (max-width: 768px) {

	
/*	---------------------------------------------------------------------------------------------------- */

h1, h2, h3, h4, p, .smallprint {
	margin: 0 0 20px 0;
}
h1 {
	font-size: 2.25em;
}
h2 {
	font-size: 1.5em;
}
h3 {
	font-size: 1.25em;
}
h4 {
	font-size: 1em;
}
p {
	font-size: 1em;
}


/*	Content		---------------------------------------------------------------------------------------------------- */


section article {
	padding:30px 20px;
}
section article:first-of-type {
	padding:30px 20px;
}
    
article div.box {
	float: left;
	width: 33.3333%;
	height: 170px;
}
article div.box img {
    width:100%;
    max-width:170px;
    height:170px;
}
article div.box h2 {
    height: 170px;
	line-height: 170px;
    font-size: 18px;
}
article div.box h2 a {
    height: 170px;
	line-height: 170px;
}
    
article.highlight, article.boxes {
	padding:30px 20px 0;
}


/*	Tabelle		---------------------------------------------------------------------------------------------------- */
	
	
	
}


@media only screen and (max-width: 720px) {

article.thumbs div {
    max-width: 480px;
}
article.thumbs a img {
    width:200px;
    height:260px;
    padding:0;
}
}

@media only screen and (max-width: 640px) {

	
/*	---------------------------------------------------------------------------------------------------- */

h1, h2, h3, h4, p, .smallprint {
	margin: 0 0 20px 0;
}
h1 {
	font-size: 2em;
}
h1 span {
	font-size: 0.625em;
}
h2 {
	font-size: 1.375em;
}
h3 {
	font-size: 1.125em;
}

.columns h4, .columns p, .columns ul {
	padding:0 0 1.375em;
}

/*	Subnavi		---------------------------------------------------------------------------------------------------- */

nav.sub {
	padding:0 20px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
nav.sub li {
	font-size: 0.875em;
}
	
/*	Content		---------------------------------------------------------------------------------------------------- */


section article {
	padding:20px;
}
section article:first-of-type {
	padding:20px;
}
section article h4, section article p {
	padding:0;
}
section article ul, section article ol {
	padding:0 20px;
}
    
article div.box {
	float: left;
	width: 33.3333%;
	height: 140px;
}
article div.box img {
    width:100%;
    max-width:140px;
    height:140px;
}
article div.box h2 {
    height: 140px;
	line-height: 140px;
    font-size: 14px;
}
article div.box h2 a {
    height: 140px;
	line-height: 140px;
}
article.highlight, article.boxes {
	padding:20px 20px 0;
}
article.highlight, article.boxes {
	margin: 0;
    border-bottom: none;
}
article.highlight li, article.boxes li {
    padding:30px 0;
}    
article.boxes li img {
    float: none;
    margin:0 auto;
}
article.boxes li div {
    float: none;
    width:100%;
}
article.boxes li div pre {
    max-width: 200px;
    margin:30px auto 0;
    width: 100%;
    overflow: visible;
}
article.boxes li div p {
    float: none;
    width: 100%;
}
article.boxes li div strong {
    line-height:30px;
}


/*	Tabelle		---------------------------------------------------------------------------------------------------- */

td, th {
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}
th {
	font-size: 0.9375em;
}
td {
	font-size: 0.75em;
}
	
}


@media only screen and (max-width: 480px) {

	
/*	---------------------------------------------------------------------------------------------------- */


h1 {
	font-size: 1.5em;
}
h2 {
	font-size: 1.125em;
}	
	
/*	Content		---------------------------------------------------------------------------------------------------- */


section article {
	padding:20px 10px;
}
section article:first-of-type {
	padding:20px 10px;
}    
article div.box {
	float: none;
	width: 100%;
    height: 200px;
	padding:0;
	margin: 0 0 20px;
}    
article div.box img {
    max-width:200px;
    height:200px;
}
article div.box.center img {
    max-width:280px;
    height:280px;
}
article div.box h2 {
    height: 200px;
	line-height: 200px;
    font-size: 20px;
}
article div.box h2 a {
    height: 200px;
	line-height: 200px;
}

article.thumbs div {
    max-width: 320px;
}
article.thumbs a span {
    width:150px;
    height:190px;
    margin:5px;
}
article.thumbs a img {
    width:140px;
    height:180px;
    padding:0;
}

    
	
/*	Tabelle		---------------------------------------------------------------------------------------------------- */


th {
	font-size: 0.875em;
}
td {
	font-size: 0.625em;
}
	
}


/* Farben
Grün
100% = #008B8B
Hellgrün
100% = #4FB9B9
*/