/*@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 {
    --kopaniaSchrift: #333333;
    --kopaniaAkzent: #8ba8c4;
    --kopaniaAkzent2: #5D80A2;
    --kopaniaAkzent3: #3B6287;
    --kopaniaHell: #ffffff;
    --kopaniaDunkel: #000000;
    --kopaniaRahmen: #BBCEE1;
    --kopaniaRahmen2: #5D80A2;
    --kopaniaAlarm: #ff7700;
    --kopaniaBlau: #3B6287;
    --kopaniaFormularBox: #E6EEF6;
    --kopaniaBoxSchatten: 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(--kopaniaHell); }

/* 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(--kopaniaAkzent) }

    .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(--kopaniaRahmen) solid;
        color: var(--kopaniaAkzent);
        border-radius: 0 0 0.5em 0.5em;
        box-shadow: var(--kopaniaBoxSchatten);
    }

        .iwi-kopfzeile a{ color:  var(--kopaniaAkzent) }

/* iwi| sticky-nav - Anpassung */
img#start{
    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: 50px;
    clear:both;
}

/* Bootstrap Overrides */

.h1, h1, .h2, h2, .h3, h3, .h4, h4, .h5, h5, h6 {
    color: var(--kopaniaAkzent);
    font-family: 'Roboto', arial, helvetica, sans-serif;
    hyphens:auto;
    hyphenate-limit-chars: 12 5 5;
}

.h3, h3 { padding-top: 1rem; }

h1 + h2, h1 + .h3, h2 + h3, h2 + .h4, .page-header + h2, .page-header + .h3{
    padding-top:0;
}

ul{ padding-left:14px; }
ul.lead{ padding-left: 20px; }
ul.lead li{ margin-bottom:0.5em;}
ul li::marker { color: var(--kopaniaAkzent); }

dl dd{
    color:var(--kopaniaAkzent);
    font-weight: bold;
}

dl dt{
    margin-left: 1em;
    font-weight: normal;
    white-space: pre-wrap;
}

strong{ color:  var(--kopaniaAkzent) }

.page-header {
	margin-bottom:50px;
    border-bottom: none;
}

	h1,h2,h3,h5{ text-transform: uppercase; }

    h3{font-size:22px;}

	section a, section a:active, section a:focus, .iwi-footer a, .footer-menu a { color: var(--kopaniaAkzent); }

		section a:hover, .footer-menu a:hover { color: var(--kopaniaAkzent2); }

	a[ng-click*="()"] { cursor:pointer; }

.page-midfield {
    margin-top:50px;
    margin-bottom:30px;
}

.thumb { margin-bottom: 30px; }

    div.thumb a { box-shadow: var(--kopaniaBoxSchatten); }

    div.thumb a:hover {
        border: 1px var(--kopaniaAkzent) solid;
    }

a.externerLink img{
    padding: 4px;
    background-color: var(--kopaniaHell);
    border: 1px solid var(--kopaniaRahmen);
    border-radius: 4px;
    box-shadow: var(--kopaniaBoxSchatten);
}

    a.externerLink:hover img, a.externerLink:active img{
        border: 1px solid var(--kopaniaAkzent);
    }

img.bilderRahmen{
    /*border: 2px solid var(--kopaniaAkzent);
    border-radius: 4px;
    box-shadow: var(--kopaniaBoxSchatten);*/
    border-radius: 0.5em;
    padding: 4px;
    border: 2px solid var(--kopaniaAkzent);
}

img.logoRahmen{
    border: 1px solid transparent;
    border-radius: 4px;
    padding: 5px;
    box-shadow: var(--kopaniaBoxSchatten);
}



input:required { background: var(--kopaniaFormularBox); }
input:invalid { border-color: var(--kopaniaAkzent); }
input.ng-invalid { border-color: var(--kopaniaAkzent); }
textarea:required { background: var(--kopaniaFormularBox); }
textarea:invalid { border-color: var(--kopaniaAkzent); }
.app-form .ng-dirty.ng-invalid{ border-color: var(--kopaniaAkzent); }

.iwi-map{
	height:650px;
	margin:0 0 50px 0;
	padding:0;
	border:0px solid var(--kopaniaDunkel);
	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 var(--kopaniaAkzent);
    }

.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;
    }

.inhaltRechts{
    float:right;
    margin:0 0 2rem 2rem;
}

.inhaltsRahmen{
    max-width:50%;
}

.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;
}

.achtung{ color: var(--kopaniaAlarm); }

.rahmen{
    border:1px var(--kopaniaAkzent) solid;
    box-shadow: var(--kopaniaBoxSchatten);
}

.farbBox{
    border-radius: 0.5em;
    box-shadow: var(--kopaniaBoxSchatten);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.akzentFilled{
    border:1px var(--kopaniaAkzent) solid;
    background-color: var(--kopaniaAkzent);
    color: var(--kopaniaHell);
}

.alarmFilled{
    border:1px var(--kopaniaAlarm) solid;
    background-color: var(--kopaniaAlarm);
    color: var(--kopaniaHell);
}

.akzent2Filled{
    border:1px var(--kopaniaBlau) solid;
    background-color: var(--kopaniaBlau);
    color: var(--kopaniaHell);
}

.akzentBox{
    border:1px var(--kopaniaAkzent) solid;
    border-radius: 0.5em;
    background-color: var(--kopaniaAkzent);
    box-shadow: var(--kopaniaBoxSchatten);
    color: var(--kopaniaHell);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.lightBox{
    border:1px var(--kopaniaRahmen) solid;
    border-radius: 0.5em;
    background-color: var(--kopaniaRahmen);
    box-shadow: var(--kopaniaBoxSchatten);
    color: var(--kopaniaHell);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.bigger-inline{
    display:inline-block;
    width:auto;
}

.akzentBox .h1,.akzentBox h1,.akzentBox .h2,.akzentBox h2,.akzentBox .h3,.akzentBox h3,.akzentBox h4,.akzentBox h5,.akzentBox h6 {
    color: var(--kopaniaAkzent3);
    font-weight:bold;
    font-size:2em;
}
.akzentBox dl dd{
    color:var(--kopaniaAkzent3);
}

.alarmBox{
    border:1px var(--kopaniaAlarm) solid;
    border-radius: 0.5em;
    background-color: var(--kopaniaAlarm);
    box-shadow: var(--kopaniaBoxSchatten);
    color: var(--kopaniaHell);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.akzent2Box{
    display:inline-block;
    border:1px var(--kopaniaBlau) solid;
    border-radius: 0.5em;
    background-color: var(--kopaniaBlau);
    box-shadow: var(--kopaniaBoxSchatten);
    color: var(--kopaniaHell);
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.akzentRahmenBox{
    border:1px var(--kopaniaAkzent) solid;
    border-radius: 0.5em;
    padding:20px 20px 0 20px;
    margin: 60px 0 20px 0;
}

.inhaltselement{
    max-width:460px;
    min-width:140px;
}

    .inhaltselement img{ margin-bottom:15px; }

.inhaltsbild{
    width:100%;
    max-width:500px;
    min-width:140px;
    height:auto;
}

.round{
    border-radius: 50%;
    object-fit: contain;
}

.flex-parent{
    display: flex;
    align-items: center;
    gap:32px;
    margin-bottom:20px;
}

.flex-child{
    margin-bottom:0;
}

.m-0{ margin:0; }
.mb-20{ margin-bottom:20px; }
.mb-32{ margin-bottom:32px; }
.mr-20{ margin-right:20px; }
.mr-32{ margin-right:32px; }

.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, p a[href^="tel:"]{
    color: var(--kopaniaSchrift);
    text-decoration:none;
}

    p a.telefon:hover, p a[href^="tel:"]:hover{
        color: var(--kopaniaAkzent2);
    }

.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(--kopaniaSchrift);
    }

    table.datenschutz td, table.datenschutz th{
        vertical-align: top;
        padding:5px;
        border:1px solid var(--kopaniaSchrift);
        color: var(--kopaniaSchrift);
    }


.clearer{ clear:both; }

.nobr, .nowrap{ white-space: nowrap; }


.iwi-footer{
    margin: 5px;
    background-color: var(--kopaniaAkzent);
    background-repeat: no-repeat;
    background-position:center;
    background-size:auto;
}

.marginalabstand-top-xs{ margin-top:5rem; }

.center-xs{ text-align:center; }

/* *** 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%;
        }

    .marginalabstand-top-xs{ margin:0; }

    .center-xs{ text-align:center; }
}

@media (max-width:1193px){
    .h3, h3 { padding-top: 30px; }
}

@media (max-width:768px) {
    .bigger-inline{width:100%;}
}

@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; }

    a{
        overflow-wrap: break-word;
    }


    h1, h2, h3, h4, p{
        hyphens: auto;
        hyphenate-limit-chars: auto 5;
    }


    .abstand{ margin-top:30px; }
    .inhaltsbild{ max-width:200px; }

}

@media (max-width:400px){
    .inhaltsbild{ max-width:150px; }
    .rechts, .inhaltRechts{
        float:none;
        margin:0 0 2rem 0;
        display:block;
        max-width:100%;
    }
    .flex-parent{
        display: block;
    }
    .flex-child{
        margin-bottom:20px;
    }
}

@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(--kopaniaAkzent) !important;
}

div.modal-body a, div.modal-body a:active, div.modal-body a:focus {
    color: var(--kopaniaAkzent);
}

.btn-primary{
    color: var(--kopaniaHell);
    background-color: var(--kopaniaAkzent);
    border-color: var(--kopaniaAkzent);
}

.btn-primary.focus,.btn-primary:focus{
    color: var(--kopaniaHell);
    background-color: var(--kopaniaAkzent);
    border-color: var(--kopaniaAkzent);
}

.btn-primary:hover{
    color: var(--kopaniaHell);
    background-color: var(--kopaniaAkzent);
    border-color: var(--kopaniaAkzent);
}
