/*@import url(https://fonts.googleapis.com/css?family=Sanchez:400,300,500,700,800);*/

/* roboto-regular - latin */
@font-face {
    font-family: 'Roboto';
    font-style: normal;
    font-weight: 400;
    src: url('../fonts/roboto-v27-latin-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
    url('../fonts/roboto-v27-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
    url('../fonts/roboto-v27-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
    url('../fonts/roboto-v27-latin-regular.woff') format('woff'), /* Modern Browsers */
    url('../fonts/roboto-v27-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
    url('../fonts/roboto-v27-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}

:root {
    --sternenkinderSchrift: #585856;
    --sternenkinderAkzent: #6a4474;
    --sternenkinderAkzent2: #5d2b5e;
    --sternenkinderHell: #ffffff;
    --sternenkinderDunkel: #000000;
    --sternenkinderRahmen: #e7e7e7;
    --sternenkinderAlarm: #ff4737;
    --sternenkinderFormularBox: #f9faea;
    --sternenkinderBoxSchatten: 2px 2px 5px rgba(0,0,0,0.5);
}

html, body {
  font-family: 'Roboto', arial, helvetica, sans-serif;
  margin:0;     /* This is used to reset any browser-default margins */
  height:100vh; /* This is needed to overcome a Chrome bug. */
  width:100%;
}

#nav { background-color: var(--sternenkinderHell); }

/* iwi| sticky-nav - behebt das Problem, dass die Menüzeile bei unterschiedlichen Auflösungen das Header-Bild überlappt und so evtl. das Firmenlogo überdeckt */
#nav.navbar-fixed-top{
    position:sticky;
    top:0;
    right:0;
    left:0;
    margin-bottom:0;
}

	#nav a{ text-transform: uppercase; }
    #nav a:hover, #nav a:focus{ color: var(--sternenkinderAkzent) }

    .iwi-nav-extension{
        margin: 0 0.25rem;
        font-weight:normal;
        font-style: italic;
    }

    .iwi-nav-extension a{ text-transform: none !important; }

    .iwi-kopfzeile{
        display: inline-block;
        padding: 0.5em 1em 0.5em 1em;
        border-bottom: 1px var(--sternenkinderRahmen) solid;
        color: var(--sternenkinderAkzent);
        border-radius: 0 0 0.5em 0.5em;
        box-shadow: var(--sternenkinderBoxSchatten);
    }

        .iwi-kopfzeile a{ color:  var(--sternenkinderAkzent) }

/* iwi| sticky-nav - Anpassung */
img#secStart{
    padding-top:80px;
    padding-top:0;
}

.section {
  min-height: 45vh;
    /*min-height: 55vh;*/
  height: auto !important;
  height: 45vh;
    /*height: 55vh;*/
  padding-top: 50px;
    padding-top: 100px;
}

.image-section {
    height: 100%;
    width: 100%;
    padding-top: 100px;
}

/* Bootstrap Overrides */

.h1, h1, .h2, h2, .h3, h3, h4, h5, h6 {
    color: var(--sternenkinderAkzent);
    font-family: 'Roboto', arial, helvetica, sans-serif;
}

.lead h2, .lead .h2{ font-size:1.5em; }

strong{ color:  var(--sternenkinderAkzent) }
.fett{ font-weight:bold; }

.page-header {
	margin-bottom:50px;
    border-bottom: none;
}

	h1,h2,h3,h5{ text-transform: uppercase; }

    .recht{
        text-transform:none;
        font-weight:bold;
    }

    h2.recht, .h2.recht{
        font-size:2rem;
    }

    p + h2.recht, ul + h2.recht{
        padding-top:2rem;
    }

    h3.recht, .h3.recht{
        font-size:1.7rem;
        padding-top:1.0rem;
    }

    .text-normal{ text-transform: none; }

    section ul, section ol{ padding-left:1em; }

	section a, section a:active, section a:focus, .iwi-footer a, .footer-menu a { color: var(--sternenkinderAkzent); }

		section a:hover { color: var(--sternenkinderAkzent); }

	a[ng-click*="()"] { cursor:pointer; }

.page-midfield {
    margin-top:50px;
    margin-bottom:30px;
}

.thumb { margin-bottom: 30px; }

    div.thumb a { box-shadow: var(--sternenkinderBoxSchatten); }

    div.thumb a:hover {
        border: 1px var(--sternenkinderAkzent) solid;
    }

a.externerLink img{
    padding: 4px;
    background-color: var(--sternenkinderHell);
    border: 1px solid var(--sternenkinderRahmen);
    border-radius: 4px;
    box-shadow: var(--sternenkinderBoxSchatten);
}

    a.externerLink:hover img, a.externerLink:active img{
        border: 1px solid var(--sternenkinderAkzent);
    }

img.bilderRahmen{
    border: 1px solid var(--sternenkinderAkzent);
    border-radius: 4px;
    box-shadow: var(--sternenkinderBoxSchatten);
}

img.logoRahmen{
    border: 1px solid transparent;
    border-radius: 4px;
    padding: 5px;
    box-shadow: var(--sternenkinderBoxSchatten);
}

input:required { background: var(--sternenkinderFormularBox); }
input:invalid { border-color: var(--sternenkinderAkzent); }
input.ng-invalid { border-color: var(--sternenkinderAkzent); }
textarea:required { background: var(--sternenkinderFormularBox); }
textarea:invalid { border-color: var(--sternenkinderAkzent); }
.app-form .ng-dirty.ng-invalid{ border-color: var(--sternenkinderAkzent); }

.iwi-map{
	height:650px;
	margin:0 0 50px 0;
	padding:0;
	border:0px solid var(--sternenkinderDunkel);
	width:100%;
}

div.startInfo{
    text-align:center;
    padding-bottom:3rem;
}

    div.startInfo img{
        width:100%;
        max-width:800px;
        height:auto;
        border-radius: 0.5em;
        padding:4px;
        border:2px solid #999999;
    }

.highslide-container{ z-index:3000 !important; }

figure{ margin-bottom:20px; }

    figcaption{
        text-align: left;
        margin:10px 0 0 0;
        font-style: italic;
        min-height:3em;
    }

ul.lead li, ol.lead li{
    margin-bottom:0.5em;
}

ul.stern{
    list-style-image: url(../img/stern-15.png);
}

.abstand{ margin-top:50px; }

.links{
    float:left;
    margin:0 25px 25px 0;
}

.rechts{
    float:right;
    margin:0 0 25px 25px;
}

.zeitfeld{
    padding-left:25px;
    text-align:right;
}

.rahmen{
    border:1px var(--sternenkinderAkzent) solid;
    box-shadow: var(--sternenkinderBoxSchatten);
}

.farbBox{
    border-radius: 0.5em;
    box-shadow: var(--sternenkinderBoxSchatten);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.akzentFilled{
    border:1px var(--sternenkinderAkzent) solid;
    background-color: var(--sternenkinderAkzent);
    color: var(--sternenkinderHell);
}

.redFilled{
    border:1px var(--sternenkinderAlarm) solid;
    background-color: var(--sternenkinderAlarm);
    color: var(--sternenkinderHell);
}

.akzent2Filled{
    border:1px var(--sternenkinderAkzent2) solid;
    background-color: var(--sternenkinderAkzent2);
    color: var(--sternenkinderHell);
}

.akzentBox{
    border:1px var(--sternenkinderAkzent) solid;
    border-radius: 0.5em;
    background-color: var(--sternenkinderAkzent);
    box-shadow: var(--sternenkinderBoxSchatten);
    color: var(--sternenkinderHell);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.redBox{
    border:1px var(--sternenkinderAlarm) solid;
    border-radius: 0.5em;
    background-color: var(--sternenkinderAlarm);
    box-shadow: var(--sternenkinderBoxSchatten);
    color: var(--sternenkinderHell);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.akzent2Box{
    border:1px var(--sternenkinderAkzent2) solid;
    border-radius: 0.5em;
    background-color: var(--sternenkinderAkzent2);
    box-shadow: var(--sternenkinderBoxSchatten);
    color: var(--sternenkinderHell);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.akzentRahmenBox{
    border:1px var(--sternenkinderAkzent) solid;
    border-radius: 0.5em;
    padding:20px 20px 20px 20px;
    margin: 60px 0 20px 0;
}

.boxSchatten{ box-shadow: var(--sternenkinderBoxSchatten) }

/*.serviceBox + .serviceBox{
    border-top: 1px solid var(--sternenkinderAkzent);
}*/

.inhaltselement{
    max-width:460px;
    min-width:140px;
}

    .inhaltselement img{ margin-bottom:15px; }

.inhaltsbild{
    width:100%;
    max-width:300px;
    min-width:140px;
    height:auto;
}

.iwi-img-responsive{
    max-width:100%;
    height:auto;
}

.iwi-logoListe, a.externerLink img.iwi-logoListe{
    padding:15px;
    margin:15px 30px 15px 0;
}

p a.telefon{
    color: color: var(--sternenkinderSchrift);
    text-decoration:none;
}

dl dt{
    margin-left: 1em;
}

.footer-menu a{
	display:inline-box;
	margin:0 2em 0 0;
	text-transform:uppercase;
}

form{ border:0; }

#xFrame{
    max-width:1000px;
    width:80%;
    height:auto;
    min-height:600px;
}

table.datenschutz{
    border-collapse: collapse;
    margin:0 0 1.5em 0;
}

    table.datenschutz caption{
        text-align: left;
        line-height: 1.5em;
        padding-bottom: 0.5em;
        color: var(--sternenkinderSchrift);
    }

    table.datenschutz td, table.datenschutz th{
        vertical-align: top;
        padding:5px;
        border:1px solid var(--sternenkinderSchrift);
        color: var(--sternenkinderSchrift);
    }


.clearer{ clear:both; }

.nobr, .nowrap{ white-space: nowrap; }


div.iwi-footer{
    margin: 5px;
    background-color: var(--sternenkinderAkzent);
    background-repeat: no-repeat;
    background-position:center;
    background-size:auto;
}


/* *** MEDIA *** */

/*md*/
@media (min-width:970px) {
}

/*sm*/
@media (min-width:750px) {
        ul.nav.navbar-nav {
            display: flex;
            justify-content: center;
            flex-wrap: wrap;
            width: 100%;
        }

}

@media (max-width:1193px){
    .h3, h3 { padding-top: 30px; }
}

@media (max-width:600px){
    .iwi-kopfzeile {
        border: 0;
        box-shadow: none;
    }

    .section{ padding-top:50px; }

    h1{
        font-size:28px;
        margin-top:15px;
        margin-bottom:7px;
    }
    h2{ font-size:24px; }
    h3{ font-size:20px; }

    .abstand{ margin-top:30px; }
    .inhaltsbild{ max-width:200px; }
}

@media (max-width:400px){
    .inhaltsbild{ max-width:150px; }
    .rechts{
        float:none;
        margin:0 0 1em 0;
        display:block;
    }
}

@media (max-width:250px){
    .inhaltsbild{
        max-width:100px;
        min-width:100px;
    }
}

/* DS & Impressum */
div.modal-body h5, div.modal-body h6{
    font-weight:bold;
    font-size:1.2em;
}

.dialog-header-wait, .modal-header {
    background-color: var(--sternenkinderAkzent) !important;
}

div.modal-body a, div.modal-body a:active, div.modal-body a:focus {
    color: var(--sternenkinderAkzent);
}

.btn-primary{
    color: var(--sternenkinderHell);
    background-color: var(--sternenkinderAkzent);
    border-color: var(--sternenkinderAkzent);
}

.btn-primary.focus,.btn-primary:focus{
    color: var(--sternenkinderHell);
    background-color: var(--sternenkinderAkzent);
    border-color: var(--sternenkinderAkzent);
}

.btn-primary:hover{
    color: var(--sternenkinderHell);
    background-color: var(--sternenkinderAkzent);
    border-color: var(--sternenkinderAkzent);
}
