@charset "utf-8";

@font-face {
    font-family: 'tienneregular';
    src: url('../fonts/Tienne-Regular-webfont.eot');
    src: url('../fonts/Tienne-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/Tienne-Regular-webfont.woff2') format('woff2'),
         url('../fonts/Tienne-Regular-webfont.woff') format('woff'),
         url('../fonts/Tienne-Regular-webfont.ttf') format('truetype'),
         url('../fonts/Tienne-Regular-webfont.svg#tienneregular') format('svg');
    font-weight: normal;
    font-style: normal;

}

/*********
Allgemein
*********/
* {
	font-family: tienneregular, Helvetica, Arial, sans-serif
}

html {
	height: 100%;
}

/*********
Allgemeine Responsive Klassen fÌr GerÀte
*********/
/* Desktop */
@media 
only screen and (min-device-width : 880px), 
only screen and (min-width : 880px) {
.desktop-off, 
.tablet-on,
.phone-on {
	display: none;
}
.desktop-on, 
.tablet-off, 
.phone-off {
	display: block;
}
}
/* Tablets */
@media 
only screen and (min-device-width : 600px) and (max-device-width : 879px), 
only screen and (min-width : 600px) and (max-width : 879px) {
.tablet-off,
.desktop-on, 
.phone-on {
	display: none;
}
.tablet-on,
.desktop-off, 
.phone-off {
	display: block;
}
}
/* Mobile */
@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
.col-1.phone-off, 
.phone-off,
.desktop-on, 
.tablet-on
 {
	display: none;
}
.phone-on, 
.desktop-off, 
.tablet-off {
	display: block;
}
}

/*********
Allgemeine Content Styles
*********/

h1 {
	font-size: 2.5rem;
	font-weight: normal;
	color: #fff;
	margin: 0;
	padding: 0;
}

h2 {
	font-size: 2rem;
	font-weight: normal;
	color: #fff;
	margin: 0;
	padding: 0;
	margin-bottom: 20px;
}

.angebot h2, 
.about h2 {
	text-align: center;
}

.contact h2, 
.about h2, 
.angebotsdetail h1, 
.angebotsdetail h2 {
	color: #002848;
}

.angebotsdetail h2 {
	margin-bottom: 10px;
	margin-top: 30px;
}

h3 {
	font-size: 1.25rem; /* 20px 20/16 = 1.25 */
	color: #fff;
	margin: 0;
	padding: 0;
}
@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
h1 {
	font-size: 2rem;
}
h2 {
	font-size: 1.5rem;
}
}

p {
	font-size: 1rem;
	padding: 0;
	margin: 0;
	margin-bottom: 15px;
}

.about p, 
.contact p, 
.angebotsdetail p {
	color: #87888a;
}

.angebot p.lead {
	clear: both;
	text-align: center;
	width: 50%;
	padding-left: 25%;
}

.contact p.icon {
	background: url(../img/layout/icon-adresse.png) left top no-repeat;
	background-size: 25px auto;
	padding-left: 35px;
}

.contact p.icon.fon {
	background-image: url(../img/layout/icon-fon.png);
}

.contact p.icon.mail {
	background-image: url(../img/layout/icon-mail.png);
}

.contact p.icon.facebook {
	background-image: url(../img/layout/icon-facebook.png);
	background-size: 20px auto;
}

img {
	border: 0;
}

.about .col-2 img {
	width: 90%;
	height: auto;
}

.img-right {
	float: right;
	margin-left: 15px;
	margin-bottom: 15px;
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
.img-right {
	float: none;
	display: block;
	width: 100%;
	margin-left: 0px;
}
}

.img-left {
	float: left;
	margin-right: 15px;
	margin-bottom: 15px;
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
.img-left {
	float: none;
	display: block;
	width: 100%;
	margin-right: 0px;
}
}

/* Listen */
ul {
	padding: 0;
	margin: 0;
} 

li {
	padding: 0;
	margin: 0;
	list-style-type: none;
	font-size: 1rem; /* 12px 12/16 = 0.75 */
}

ul.list {
	margin: 0;
	padding: 0;
	overflow: hidden;
	padding-top: 15px;
	margin-bottom: 50px;
}

ul.list li {
	margin: 0;
	padding: 0;
	list-style: none;
	float: left;
	width: calc(33% - 10px);
	padding-right: 10px;
}

ul.list li h3 {
	background: #002848 url(../img/layout/icon-radionik.svg) no-repeat top center;
	background-position: center 15px;
	padding: 15px;
	padding-top: 100px;
	text-align: center;
	font-size: 1.125rem;
}

ul.list li.angebot-2 h3 {
	background-image: url(../img/layout/icon-elterncoaching.svg);
}

ul.list li.angebot-3 h3 {
	background-image: url(../img/layout/icon-kinder-jugendcoaching.svg);
}

ul.list li p {
	padding: 15px;
	margin-bottom: 0;
	background: #fff;
	color: #87888a;
}

.angebot ul.list li ul {
	background: #fff;
}

.angebotsdetail ul {
	margin-bottom: 15px;
}

.angebot ul.list li li, 
.angebotsdetail ul li {
	list-style-type: circle;
	float: none;
	width: auto;
	padding-left: 10px;
	padding-bottom: 5px;
	margin-left: 30px;
	color: #87888a;
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
ul.list li {
	margin: 0;
	padding: 0;
	padding-bottom: 15px;
	list-style: none;
	float: none;
	display: block;
	width: 100%;

}

.angebot p.lead {
	text-align: left;
	width: auto;
	padding-left: 0;
}	
}

/*Links*/
a {
	color: #fff;
	text-decoration: underline;
}

a:hover {
	color: #002848;
	text-decoration: none;
}

.contact a {
	color: #87888a;
}

.angebot .more {
	padding: 0;
}

.angebot .more a {
	display: block;
	background-color: #002848;
	color: #fff;
	text-align: center;
	padding: 5px;
	text-decoration: none;
}


/*********
Raster-Styles
*********/
body {
	font-size: 100%; /* 16px = 1em */
	height: 100%;
}

body, img, p, tr, td {
	color: #fff;
}
@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
body {
	font-size: 90%; 
}
}

.main {
	width: 100%;
	min-height: 100%;	
	background: #002848 url(../img/background/home.jpg) no-repeat center top;
	
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;  
	background-size: cover;	
}

.main.detail {
	min-height: 190px;
}

.about, 
.contact, 
.angebotsdetail {
	background-image: none;
	background-color: #fff;
	min-height: inherit;
	height: auto;
	padding-bottom: 70px;
}

.angebot {
	background-image: url(../img/background/wasser.jpg);
	min-height: inherit;
	height: auto;
}

.content {
	width: 100%;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 70px;
	overflow: hidden;
}

.contact .col-2 {
	margin-top: 70px;
}

.logo {
	float: left;
}

.main-nav {
	float: right;
}

.logo img {
	display: block;
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 940px), 
only screen and (min-width : 220px) and (max-width : 940px) {
.main .content {
	width: auto;
	margin-left: 25px;
	margin-right: 25px;
}
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
.content {
	padding-top: 35px;
}

.contact .col-2 {
	margin-top: 25px;
}

.contact .col-2 h2, 
.contact .col-2 p {
	margin-left: 25px;
}

.logo, 
.main-nav {
	float: none;
	display: block;
	text-align: center;
}

.logo img {
	display: inline;
}

.main-nav {
	margin-top: 15px;
}
}

footer {
	position: relative;
	clear: both;
	width: auto;
	background: #002848;
	padding: 15px;
}

footer p {
	padding: 0;
	margin: 0;
	font-size: 0.75rem;
}

.skipp {
	position: absolute;
	right: 15px;
	bottom: 15px;
}

.skipp img {
	display: block;
	
	/* IE 8 */
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	/* IE 5-7 */
	filter: alpha(opacity=70);
	/* Netscape/FireFox */
	-moz-opacity: 0.7;
	/* Safari 1.x */
	-khtml-opacity: 0.7;
	/* aktuelle Browser */
	opacity: 0.7;
}
@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
.skipp {
	display: none;
}
}


/*********
Mini-GRID
*********/
.col-1 {
	width: 48%;
	margin-right: 2%;
	float: left;
}

.col-2 {
	width: 48%;
	margin-left: 2%;
	float: left;
}

.col-1-2 {
	width: 100%;
	overflow: hidden;
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
.col-1, .col-2 {
	display: block;
	width: 100%;
	overflow: hidden;
	margin: 0;
}
.col-1 {
	margin-bottom: 5%;
}
}

/*********
Navigation
*********/
.main-nav ul {
	padding: 0;
	margin: 0;
	overflow: hidden;
}

.main-nav li {
	padding: 0;
	margin: 0;
	list-style-type: none;
	float: left;
	margin-left: 25px;
}

.main-nav li a {
	display: block;
	text-decoration: none;
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
.main-nav li {
	float: none;
	display: inline;
	text-align: center;
	margin-left: 10px;
	margin-right: 10px;
}

.main-nav li a {
	display: inline;
}
}


/*********
Tabellen
*********/
table, tbody, thead {
	width: 100%;
	padding: 0;
	margin: 0;
	border: 0px;
	margin-bottom: 10px;
}

tr, td, th {
	border: 0px;
}

/*tr:nth-child(even) {
	background-image:url(../img/layout/bg_weiss60.png);
}*/

tr {
	padding: 0px;
	margin: 0px;
}

tr:hover {
	background-color: #e3b2b3;
}

th {
	padding: 2px;
	border-bottom: 1px solid #333;
	vertical-align: top;
	text-align: left;
	color: #fff;
	font-weight: bold;
	background-color: #C00;
}


td {
	margin: 0;
	padding: 2px;
	border-bottom: 1px dotted #333;
	vertical-align: top;
	text-align: left;
}

/*********
Formulare
*********/
fieldset {
	border: 0;
}

legend {
	padding: 0;
	margin: 0;
	margin-bottom: 7px;
	font-size: 1em; /* 16px 16/16 = 1 */
	color: #000;	
	text-transform: uppercase;
}

label {
	display: block;	
	font-size: 1em;
	margin-bottom: 5px;
}

label.cb {
	display: inline;
}

label.rd {
	display: inline;
	margin-right: 20px;
}

label.cb.pdf {
	display: inline-block;
	width: 50px;
}

.input-desc {
	font-size: 0.8em;
	display: block;
	margin-top: -10px;
	margin-bottom: 15px;
}

input, 
select, 
textarea {
	background-color: #DBDBDB;
	border: 1px solid #333;
	padding: 4px;
	font-size: 0.8em;
	width: 50%;
	margin-bottom: 15px;
}
@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
input, 
select {
	width: 90%;
}
}

input:focus {
	border-color: #2A8E01;
}

input.checkbox, input.radio {
	width: auto;
	margin-right: 5px;
	border: 0;
}

input[type="submit"] {
	background-color: #DBDBDB; 
}

input[type="submit"]:hover {
	background-color: #fff;
	width: 50%;
}

.filter input[type="submit"] {
	width: inherit;
}

@media 
only screen and (min-device-width : 220px) and (max-device-width : 599px), 
only screen and (min-width : 220px) and (max-width : 599px) {
input[type="submit"]:hover {
	width: 90%;
}
textarea {
	width: 90%;
}
div.halb {
	width: 46%;
}
}

input.pflicht {
	border-right: 3px solid #2A8E01;
}

div.halb input.text {
	width: 90%;
}

/*********
Transparenzen
*********/
.opac70 {
	/* IE 8 */
	  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	  /* IE 5-7 */
	  filter: alpha(opacity=70);
	  /* Netscape/FireFox */
	  -moz-opacity: 0.7;
	  /* Safari 1.x */
	  -khtml-opacity: 0.7;
	  /* aktuelle Browser */
	  opacity: 0.7;
}

.opac100 {
	/* IE 8 */
	  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	  /* IE 5-7 */
	  filter: alpha(opacity=100);
	  /* Netscape/FireFox */
	  -moz-opacity: 1.0;
	  /* Safari 1.x */
	  -khtml-opacity: 1.0;
	  /* aktuelle Browser */
	  opacity: 1.0;
}

nav.main-nav ul li a.active {
    color: red;
}