
:root {

--logo-color:#faf22f;
--bg-color:#4656a0;
--menu-bg-color:#5b70cf;
--menu-selected-color:#303c6e;
--footer-color:rgb(76, 78, 86);

--text-font:GT Sectra, Spectral, Serif;
--markup-font:GT America, Roboto Mono, Sans-serif;

}

/* Test-Idp-spezifische Änderungen */
#content .wrap {
    margin-top:200px;
}

footer .copyrights {
    font-family:var(--markup-font);
    font-size:inherit;
}

#logo #header-text {
    text-shadow:none;
    font-family:var(--markup-font);
    position:fixed;
    margin-top:52px;
}

.pure-button-red {
    background-color:var(--footer-color);
}

a.pure-button-red:link, a.pure-button-red:visited {
	border:2px solid;
	color:white;
	font-family:GT America, Roboto Mono, Sans-serif;
	font-family:var(--markup-font);
	font-size:12px;
	font-weight:500;
	letter-spacing:0.6px;
	line-height:32px;
	padding:8px;	
	margin-bottom:16px;
	text-decoration:none;
	text-transform:uppercase;
}

a.pure-button-red:hover {
        color: #cbd0c2;
}


.pure-form-message strong {
    font-size:24px;
}
/* Test-IdP Ende */

body {
    font-family:GT Sectra, Spectral, Serif;
    font-family:var(--text-font);
    margin:unset;
    min-width:1750px;
}
/* Kopfleiste mit Logos und Navigation */
header {
    background-color:#4656a0;
    background-color:var(--bg-color);
    font-family:GT America, Roboto Mono, Sans-serif;
    font-family:var(--markup-font);
    font-weight:500;
    letter-spacing:.05em;
    /*overflow:hidden;*/
    text-transform:uppercase;
    padding-left:140px;
    position:fixed;
    width:100%;
	z-index:1;
}
#logoHAB {
    background-repeat:no-repeat;
    float:left;	
    margin-right:40px;
    width:125px;
}
#logoHAB.logo-default {
    background-image:url(images/HAB_Logo_gelb.svg);
    background-size:125px;
	height:105px;
    margin-bottom:50px;
    margin-top:45px;	
}
#logoHAB.logo-reduce {
    background-image:url(images/HAB_Logo_gelb_icon.svg);
    background-size:76px;
	height:80px;
    margin-bottom:none;
    margin-top:none;
	transition:0.5s;
}
#menu {
    background-color:var(--menu-bg-color);
}
#menu .pure-menu-selected, #menu .pure-menu-heading {
    background-color:var(--menu-selected-color);
    text-transform: inherit;
}
#menu .pure-menu ul, #menu .pure-menu .menu-item-divided {
    border: none;
}
nav {
    color:white;
    float:right;
    font-size:12px;
    font-weight:500;	
    letter-spacing:0.9px;
    margin-right:100px;
    margin-top:30px;
}
nav a:link, nav a:visited {
		color:white;
		margin-right:40px;
		text-decoration:none;
}
nav span.active {
    color:#faf22f;
    color:var(--logo-color);
}
/* Dropdown-MenÃ¼ */
div.dropdown {
	background-color:#4656a0;
	background-color:var(--bg-color);
	display:inline;
	overflow: hidden;
	position:relative;
	margin-right:35px;
}
button.dropbtn {
	background-color:#4656a0;
	background-color:var(--bg-color);	
	border: none;
	color: white;
	cursor: pointer;
	font-family: inherit;
	font-size: 12px;  
	font-weight:500;
	letter-spacing:0.9px;
	margin: 0;
	outline: none;
	text-transform:uppercase;	
	
    background-image:url(images/triangle-white.svg);
    background-repeat:no-repeat;
    background-size:12px;
    background-position: right center;	
}
a.dropdown:hover, button.dropbtn, button.dropbtn:focus {
  background-color:var(--bg-color);
}
.dropdown-content {
	background-color:var(--bg-color);
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	display:none;
	max-height:400px;
	/* Die Folgenden beiden Regeln mÃ¼ssen an den Inhalt von button.dropbtn angepasst werden */
	min-width:120px;
	margin-left:-122px;
	overflow:scroll;
	position: absolute;
	top: 100%;
	z-index: 1;
}
.dropdown-content a {
	margin-right:0px;
	padding-left:12px;
	padding-right:12px;	
	padding-top:12px;
	text-transform:initial;
}
.dropdown-content a:first-of-type {
	padding-top:18px;	
}
.dropdown-content a:last-of-type {
	padding-bottom:12px;	
}
.dropdown-content a:link, .dropdown-content a:visited {
	display: block;
	float: none;
	text-decoration: none;
	text-align: left;
}
.dropdown-content a:hover {
	color: #cbd0c2;
}
/* Titelbild */
figure#cover-picture {
	background-color:#4656a0;
	background-color:var(--bg-color);
	height:250px;
	margin:unset;
	min-width:1750px;
	position:absolute;	
	width:100%;
	z-index:0;
}
figure#cover-picture img {
	height:400px;
	margin-left:180px;
	margin-top:200px;
}
/* Text */
main {
    float:left;
    margin-left:243px;
    margin-top:245px; /* 200px for the header plus something */
    max-width:840px;
    min-height:1000px;
    padding-bottom:125px;
    padding-left:15px;
    padding-right:80px;
    width:70%;
}
main:nth-child(3), aside:nth-child(4) {
	margin-top:695px;
}
main.noAside {
	max-width:1230px;
	width:100%;
}
aside {
    float:left;
    margin-right:243px;
    margin-top:315px;
    min-height:1000px;	
    max-width:390px;
    padding-left:40px;
    width:30%;
}
h1 {
    font-size:32px;
    font-weight:700;
    line-height:1.219em;
    margin-top:75px;
}
h1:first-child {
    margin-top:0px;
}
h2 {
    font-size:23px;
    font-weight:700;
    line-height:1.381em;	
}
h2:first-child {
    margin-top:0px;
}
h3 {
    font-size:18px;
    font-weight:700;
    line-height:1.389em;	
}
h3:first-child {
    margin-top:0px;
}
p {
    font-size:18px;
    line-height:25px;
}
p:first-child {
    margin-top:0px;
}
a:link, a:visited {
    color:#344990;
    text-decoration:none;
}
div.button {
	margin-bottom:25px;
	margin-top:25px;
	text-align:center;
}
div.button a:link, div.button a:visited {
	border:2px solid;
	color:inherit;
	font-family:GT America, Roboto Mono, Sans-serif;
	font-family:var(--markup-font);
	font-size:12px;
	font-weight:500;
	letter-spacing:0.6px;
	line-height:32px;
	padding:8px;	
	margin-bottom:16px;
	text-decoration:none;
	text-transform:uppercase;
}
div.button a:hover {
	background-color:black;
	color:white;
}
div.collapse-box {
    border-top:1px solid #4c4e56;
    margin-top:75px;
}
div.collapse-box:first-child {
    margin-top:0px;
}
div.collapse {
    border-bottom:1px solid #4c4e56;
}
h2 a:link, h2 a:visited {
    text-decoration:none;
    color:#000000;
}
aside h3 a:link, aside h3 a:visited {
    text-decoration:none;
}
p.sys a:link, p.sys a:visited {
    text-decoration:none;
    color:#000000;
}
p.skos a:link, p.sys a:visited {
    text-decoration:none;
}
span.collapse {
    display:none;
    font-family: var(--markup-font);
    font-size:15.2px;
    font-weight:400;
}
span.collapse a:link, span.collapse a:visited {
    color:#344990;   
}
div.collapse h2 {
    background-image:url(images/arrow.svg);
    background-repeat:no-repeat;
    background-size:22px;
    background-position: right center;
    margin-top:revert;
}
div.collapse p, div.collapse h3 {
    display:none;
}
h3.heading-nav {
    margin-bottom:5px;
    margin-top:30px;
}
h3.heading-nav a {
    text-decoration:none;
    color:#000000;
}
p.download {
    font-family:var(--markup-font);
    font-size:95%;
    margin-top:0px;
}
p.download a {
    text-decoration:none;
}
/* Tabellen */
main table {
	margin-top:30px;
}
/* altkarten */
main table td {
	padding-right:20px;
	padding-bottom:5px;
	padding-top:50px;
	vertical-align:bottom;
}
td.underlined {
	border-bottom: 1px solid;
}
main table td a {
	display:block;
}
/* ende altkarten */
main table th {
	padding-bottom:5px;
}
aside div.widget div.button a:hover {
	background-color:#4656a0;
	background-color:var(--bg-color);
}
aside div.widget {
	border-top:1px solid;    
    color:#4656a0;
    color:var(--bg-color);
    padding-bottom:30px;
    padding-top:40px;
}
aside div.widget:first-child {
    border-top:none;
    padding-top:0px;
}
aside .widget h2 {
    font-size:21px;
    line-height:1.3em;
    margin-bottom:30px;
}
aside .widget p {
    font-size:16px;
    line-height:1.35em;
    margin-top:0px;
}
/*Formulare */
main form {
    margin-bottom:50px;
}

hab-center-form login-form-start {
    flex-direction:column;
    align-content:flex-start;
    align-items:flex-end;
    flex-wrap:wrap;
}

/* Footer */
p.rapacc {
    margin-top:5px;
    margin-bottom:5px;
    font-size:95%;
}
p.rapacc a {
    text-decoration:none;
}
p.date {
    font-family:GT America, Roboto Mono, Sans-serif;
    font-family:var(--markup-font);
    font-size:12px;
    letter-spacing:0.05em;
    line-height:1.5em;
    margin:0px;
}
footer {
    background:initial;
    background-color:var(--footer-color);
    clear:both;
    color:white;
    font-weight:400;
    /*min-height:410px;*/
	min-width:1750p;	
    padding-bottom:100px;
    padding-left:190px;
    padding-right:190px;
    padding-top:45px;
    position:relative;
    width:100%;	
}
footer a:link, footer a:visited {
		color:white;
		text-decoration:none;
}

#logoNiedersachsen {
    background-image:url(images/niedersachsen-logo.svg);
    background-repeat:no-repeat;
    background-size:179px;
    float:left;
    height:50px;
    width:180px;	
}

#footerMenu {
    float:left;
    margin-left:230px;
    margin-top:8px;
    position:relative;	
}

div#footerMenu a {
    font-size:24px;
    line-height:25px;	
    margin-left:40px;
}

#footerWidget {
    clear:both;
    font-family:GT America, Roboto Mono, Sans-serif;
    font-family:var(--markup-font);
    font-size:14px;
    letter-spacing:0.7px;
    line-height:1.7em;
    margin-top:115px;
    text-transform:uppercase;
}

#footerWidget p {
    float:left;
    margin-right:50px;
    margin-top:0px;
}

#baseBar {
    bottom:25px;
    font-family:GT America, Roboto Mono, Sans-serif;
    font-family:var(--markup-font);
    letter-spacing:0.9px;
    line-height:25px;
    position:absolute;
    text-transform:uppercase;	
}

#baseBar a:link, #baseBar a:visited {
		    margin-right:40px;
}

span#copyright {
    margin-right:150px;
}

* {
    box-sizing:border-box;
}

.clearfix::after {
    clear:both;
    content:"";
    display:table;
}
/* Responsives Layout */
@media only screen and (max-width:1500px) {
	header {
		padding-left:55px;
	}
	figure#cover-picture {
		min-width:1300px;		
	}
	figure#cover-picture img {
		margin-left:80px;
	}
	body {
		min-width:1300px;
	}
	main {
		margin-left:15px;
	}
	aside {
		margin-right:15px;
	}
	footer {
		min-width:1300px;
	}
}

@media only screen and (max-width:775px) {
	body {
		min-width:400px;
	}
	nav {
		margin-top:0px;
		padding-bottom:5px;
		padding-top:5px;
	}
	figure#cover-picture {
		height:150px;
		min-width:100px;
	}	
	figure#cover-picture img {
		height:200px;
		margin-left:15px;
		margin-top:135px;
	}
	#logoHAB {
		height:100px;
		margin-left:-22px;
	}
	#logoHAB.logo-default {
		background-image:url(images/HAB_Logo_gelb_icon.svg);
		background-size:90px;
		margin-bottom:0px;
		margin-top:0px;
	}
	#logoHAB.logo-reduce {
		display:none;
	}
	main {
		max-width:none;
		min-height:100px;
		padding-bottom:15px;
		padding-right:0px;
		width:95%;		
	}
	main:nth-child(3) {
		margin-top:415px;	
	}
	aside, aside:nth-child(4) {
		margin-top:25px;
		max-width:550px;		
		width:95%;
	}
	
	footer {
		min-width:400px;
		padding-left:35px;
		padding-right:15px;
	}
	#logoNiedersachsen {
		float:none;
	}
	#footerMenu {
		float:none;
		margin-left:-40px;
		margin-top:15px;
	}	
	#footerWidget p {
		float:none;
	}
	#baseBar {
		position:relative;
		padding-top:50px;
	}		
}
