/*
Name: layout_atmosphere.css
Beschreibung: Layout und Atmosphere
Version: 1.0  2014-04-06
Author: Robert Menghini
Farbshema:
					Schriften:
					#000		- black
					#27AAE1	- blue rgb(39,170,225)
					#FFF		- white
					
					Hintergruende:
					#21A8ED - blue rgb(33,168,237)
					#0074B5 - dark blue rgb(0,116,181)
					#D9EFFC - light blue rgb(217,239,252)
					
Fonts:
					Open Sans	-	normal (400) + italic
					Open Sans	-	semibold (600) + italic
					Open Sans	-	bold (700) + italic
Aufbau:
*/


/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	Reset und allgemeine Angaben
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

/* +++ Aenderung des default-Box-Modells aller Elemente auf "border-box" +++ */ 
*, *:before, *:after {
    -webkit-box-sizing: border-box; /* Safari/Chrome, andere WebKit-Browser */
    -moz-box-sizing: border-box; /* Firefox, andere Gecko-Browser */
		-ms-box-sizing: border-box;
    box-sizing: border-box; /* Opera/IE 8+ */
}

/* +++ Scrollbalken immer anzeigen +++ */ 
/*body{ overflow-y: scroll; }*/ /*???*/
html,body{ height: 100%; min-height: 100.1%; }

/* +++ Versteckte Elemente +++ */ 
.invisible { position: absolute; left: -9999px; }

/* +++ clear und clearfix fuer umgebenden Container +++ */
#container .clear{ clear:both; height:.1px; border:none; visibility:hidden; }
.clearfix:after { content: "."; display: block; clear: both; height: 0; visibility: hidden; }

/* ++++ display-Inline Block ++++ */
.dib { 
	display: inline-block;
	height: auto;
}


/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	Atmosphere / Layout - Allgemein
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

/* +++ Allgemein +++ */

html {
	font-size: 62.5%; /* 10px */
}

body { 
	color: #000;
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 10px;
	font-size: 1rem;
	background: #D9EFFC url(hwt_hintergrund-blau.jpg) left top repeat;
}

#content_header,
#content,
#content_footer {
	width: 100%;
	height: auto;
}


.container {
	position: relative;
	max-width: 970px;
	min-width: 280px;
	padding: 0 10px;
	margin: 0 auto;
}

img { 
	max-width: 100%;
	height: auto;
}

@media \0screen {
  img { 
  	width: auto; /* for ie 8 */
  }
}

#wrapper_1 {
	background: url(hwt_footer.png) center bottom no-repeat;
	-webkit-background-size: 100% auto;
  -moz-background-size: 100% auto;
  -o-background-size: 100% auto;
  background-size: 100% auto;
	
}

#wrapper_2 {
	background: url(hwt_header.png) center top no-repeat; 
	background-attachment: fixed;
	-webkit-background-size: 100% auto;
  -moz-background-size: 100% auto;
  -o-background-size: 100% auto;
  background-size: 100% auto;
}


/* ++++++  Textauszeichnungen  ++++++ */

h1, h2, h3  {
	color: #27AAE1; /* blue */
	font-style: normal;
	font-weight: 600;
	text-transform: uppercase;
	margin: 0 0 20px;
	margin: 0 0 2rem;
}

h1  {
	font-size: 24px;
	font-size: 2.4rem;
	letter-spacing: .05em;
	line-height: 1.4;
}

h2  {
	font-size: 24px; 
	font-size: 2.4rem;
	letter-spacing: .05em;
	line-height: 1.4;
}

h3  {
	font-size: 20px; 
	font-size: 2rem; 
	letter-spacing: .05em;
	line-height: 1.4;
	margin: 0;
}

p,ol,ul {
	color: #000; /* black */
	font-size: 20px;
	font-size: 2rem;
	line-height: 1.35;
	margin: 0 0 35px;
	margin: 0 0 3rem;
}


a:link, a:visited {
	color: #27AAE1;
	text-decoration: underline;
	-webkit-tap-highlight-color: rgba(33,168,237,.5);
}

a:hover, a:focus, a:active {
	color: #000;
	text-decoration: underline;
}




/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	 Navigation 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

nav ul li {
	list-style: none;
	text-align: center;
}

nav a:link,
nav a:visited {
	color: #27AAE1;
	font-weight: 600;
	letter-spacing: .05em;
	text-decoration: none;
	text-transform: uppercase;
}


/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	 Header 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

#content_header {
	/*???*/
}

#content_header .container {
	min-height: 120px;
}

#header_left {
	float: left;
	width: 25.287356321839084%; /* 220 / 870 */
}

#header_right {
	float: left;
	width: 74.71264367816092%; /* 650 / 870 */
}

/* +++ #logo +++ */

#logo {
	float: left;
	height: 118px;
	width: 216px;
	margin-top: 18px;
}

#logo h1 {
	text-indent: -9999px;
	height: 100%;
	width: 100%;
	margin: 0;
	background: transparent url(hwt_logo.svg) center center no-repeat;
}

.no-svg #logo h1 { background-image: url(hwt_logo.png) }


/* ++++++ #main_nav ++++++ */

#main_nav li .nav_arrow { display: none; }

#main_nav {
	width: 100%;
}

#main_nav ul {
	font-size: 16px;
	font-size: 1.6rem;
	margin: 0;
	padding: 0;
}

#main_nav li { 
	position: relative;
}

#main_nav li a {
	position: relative;
	display: block;
}

#main_nav li.active,
#main_nav li.current,
#main_nav li.hover,
#main_nav li:hover { 
	background: #21A8ED;
	background: rgba(33,168,237,.8);
}

#main_nav li.hover > a,
#main_nav li:hover > a { color: #FFF; cursor: pointer; }

#main_nav li.active > a,
#main_nav li.current > a {
	color: #FFF;
}



/* first level */

#main_nav > ul {
	float: right;
	margin: 0;
}

#main_nav > ul > li { 
	float: left;
	-webkit-border-bottom-right-radius: 12px;
	-webkit-border-bottom-left-radius: 12px;
	-moz-border-radius-bottomright: 12px;
	-moz-border-radius-bottomleft: 12px;
	border-bottom-right-radius: 12px;
	border-bottom-left-radius: 12px;
}

#main_nav > ul > li > a {
	padding: 0;
	margin-top: 90px;
	text-align: center;
	background: #FFF;
	background: rgba(255,255,255,.9);
}

#main_nav > ul > li > a .nav_item {
	display: block;
	padding: 7px 9px;
	padding: .7rem .9rem;
}


#main_nav > ul > li:nth-child(1) > a {
	-webkit-border-top-left-radius: 12px;
	-webkit-border-bottom-left-radius: 12px;
	-moz-border-radius-topleft: 12px;
	-moz-border-radius-bottomleft: 12px;
	border-top-left-radius: 12px;
	border-bottom-left-radius: 12px;
}

#main_nav > ul > li:nth-last-child(1) > a {
	-webkit-border-top-right-radius: 12px;
	-webkit-border-bottom-right-radius: 12px;
	-moz-border-radius-topright: 12px;
	-moz-border-radius-bottomright: 12px;
	border-top-right-radius: 12px;
	border-bottom-right-radius: 12px;
}

#main_nav > ul > li.active > a,
#main_nav > ul > li.current > a,
#main_nav > ul > li.hover > a,
#main_nav > ul > li:hover > a  {
	-webkit-border-top-left-radius: 0;
	-webkit-border-top-right-radius: 0;
	-moz-border-radius-topleft: 0;
	-moz-border-radius-topright: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

#main_nav > ul > li.active > a .nav_item,
#main_nav > ul > li.current > a .nav_item,
#main_nav > ul > li.hover > a .nav_item,
#main_nav > ul > li:hover > a .nav_item {
	background: #21A8ED;
	background: rgba(33,168,237,.8);
	-webkit-border-radius: 0;
	-webkit-border-bottom-right-radius: 12px;
	-webkit-border-bottom-left-radius: 12px;
	-moz-border-radius: 0;
	-moz-border-radius-bottomright: 12px;
	-moz-border-radius-bottomleft: 12px;
	border-radius: 0;
	border-bottom-right-radius: 12px;
	border-bottom-left-radius: 12px;
}




/* second level */

#main_nav li > ul {
	position: absolute;
	left: -9999px;
	width: 200px;
	width: 20rem;
	padding-top: 5px;
	z-index:2;
	opacity: 0;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
	-webkit-transition: opacity .2s ease-in-out;
	-moz-transition: opacity .2s ease-in-out;
	-o-transition: opacity .2s ease-in-out;
	transition: opacity .2s ease-in-out;
}

#main_nav li ul li {
	background: #FFF;
	background: rgba(255,255,255,.9);
}

#main_nav li ul li:nth-child(1) {
	-webkit-border-top-left-radius: 12px;
	-webkit-border-top-right-radius: 12px;
	-moz-border-radius-topleft: 12px;
	-moz-border-radius-topright: 12px;
	border-top-left-radius: 12px;
	border-top-right-radius: 12px;
}

#main_nav li ul li:nth-last-child(1) {
	-webkit-border-bottom-right-radius: 12px;
	-webkit-border-bottom-left-radius: 12px;
	-moz-border-radius-bottomright: 12px;
	-moz-border-radius-bottomleft: 12px;
	border-bottom-right-radius: 12px;
	border-bottom-left-radius: 12px;
}
	
#main_nav li ul li a {
	display: block;
	line-height: 1.4;
	text-align: left;
	padding: 7px 9px;
	padding: .7rem .9rem;
}


.js #main_nav li.hover > ul,
.no-js #main_nav li:hover > ul { 
	top:100%;  
	left: 0;
	opacity: 1;
}

/* third level */

.js #main_nav > ul li ul li.hover > ul,
.no-js #main_nav > ul li ul li:hover > ul {
	top: 0; 
	left: 100%;
	padding-top: 0;
	padding-left: 5px;
}


/* +++ #toggleNav +++ */

#toggleNav {
	display: none;
	position: absolute;
	right: 10px;
	top: 18px;
	width: 40px;
	padding: 2px 5px;
	background: #FFF;
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	-o-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	box-shadow: 0 1px 4px rgba(0,0,0,.2);
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}

#toggleNav span {
	display: block;
	color: #21A8ED;
	line-height: 3px;
	height: 4px;
	margin: 6px 0;
	background: #27AAE1;
}

/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	 Content 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

#content .container {
	margin: 13px auto;
	margin: 1.3rem auto;
}

#content #banner,
#content #main {
	border: 1px solid #21A8ED;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	-o-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	box-shadow: 0 1px 4px rgba(0,0,0,.2); 
}

#content #banner {
	height: 220px;
	padding: 20px 40px;
	padding: 2rem 4rem;
	margin-bottom: 10px;
	margin-bottom: 1rem;
	background: #21A8ED;
	background: rgba(33,168,237,.85);
	overflow: hidden;
}

#content #banner h2 { 
	font-size: 26px; 
	font-size: 2.6rem;
	margin-bottom: 1rem;
}

#content #banner h3,
#content #banner p,
#content #banner ol,
#content #banner ul {
	font-size: 22px;
	font-size: 2.2rem;
}

#content #banner * { color: #FFF; }

#content #main {
	min-height: 300px;
	padding: 35px 40px;
	padding: 3.5rem 4rem;
	background: #FFF; 
}

#content #main > :nth-last-child(1) { margin-bottom: 0; }


/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
	 Footer 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

#content_footer {
	background: #21A8ED;
	background: rgba(33,168,237,.85);
	-webkit-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	-moz-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	-o-box-shadow: 0 1px 4px rgba(0,0,0,.2); 
	box-shadow: 0 1px 4px rgba(0,0,0,.2);
}

#content_footer .container {
	padding-top: 23px;
	padding-top: 2.3rem;
	padding: 23px 40px;
	min-height: 140px;
}


/* +++ #footer_text +++ */
#footer_text {
	color: #FFF;
	font-size: 20px;
	font-size: 2rem;
	width: 36.4367816091954%; /* 317 / 870 */
}

#footer_text * { color: #FFF; }


/* +++ #nav_footer +++ */

#nav_footer {
	vertical-align: bottom;
	width: 63.2183908045977%; /* 550 / 870 */
	margin-top: 3%;
}

#nav_footer ul {
	text-align: right;
	font-size: 16px;
	font-size: 1.6rem;
	padding: 0;
	margin: 0;
}

#nav_footer ul li {
	line-height: 0;
	margin-left: 20px;
	margin-left: 2rem;
	margin-bottom: .8rem;
}

#nav_footer ul li a {
	color: #FFF;
	display: block;
	line-height: 1.4;
}

#nav_footer li > a.active,
#nav_footer li > a.current {
	color: #FFF;
	font-weight: bold;
}

#nav_footer a:hover, 
#nav_footer a:focus, 
#nav_footer a:active {
	color: #000;
}

