* {
    margin: 0;
    padding: 0;
}


/*------------------------------------
                GLOBAL
------------------------------------*/
html,
body {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0.03em;
    color: #333;
}

.main {
    padding: 100px 0 140px;
}

.footer {
    padding: 100px 0 80px;
}


/*------------------------------------
                SPACE
------------------------------------*/
.padding0 {
    padding: 0;
}

.margint40 {
    margin-top: 40px;
}

.marginb30 {
    margin-bottom: 30px;
}

.marginb37 {
    margin-bottom: 37px;
}

.marginb40 {
    margin-bottom: 40px;
}

.marginb80 {
    margin-bottom: 80px;
}

.paddingl15 {
    padding-left: 15px;
}


/*------------------------------------
                FONTS
------------------------------------*/
h1 {
    font-family: 'Patua One', cursive;
    font-weight: 300;
    font-size: 50px;
    text-align: center;
    text-transform: uppercase;
    margin: 0 0 70px;
}

h2 {
    font-family: 'Patua One', cursive;
    font-weight: 300;
    font-size: 28px;
    letter-spacing: 1.25px;
    margin: 0 0 14px;
    text-transform: uppercase;
}

h3 {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 20px;
    margin: 0 0 30px 0;
    text-transform: uppercase;
}

h4 {
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-size: 20px;
    margin: 0 0 20px;
}

p {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0.03em;
    color: #333;
}

strong {
    font-weight: 400;
}

.strong {
    font-weight: 400;
}

.ulshort:after {
    content: url("../img/h1_underline_short.png");
    display: block;
    width: 421px;
    height: 19px;
    margin: -20px auto 0;
}

.ullong:after {
    content: url("../img/h1_underline_long.png");
    display: block;
    width: 863px;
    height: 19px;
    margin: -20px auto 0;
}

.ulshortblue:after {
    content: url("../img/h1_underline_short_blue.png");
    display: block;
    width: 421px;
    height: 19px;
    margin: -20px auto 0;
}

.ullongblue:after {
    content: url("../img/h1_underline_long_blue.png");
    display: block;
    width: 863px;
    height: 19px;
    margin: -20px auto 0;
}


/*------------------------------------
                COLORS
------------------------------------*/
.white,
.white p {
    color: #fff;
}

.white:hover {
    color: #fff;
}

.blue {
    color: #4bbee6;
}

.bggray {
    background-color: #444;
}

.bgblue {
    background-color: #4bbee6;
}


/*------------------------------------
                IMG
------------------------------------*/
.gallery img {
    margin: 0 0 30px;
}

.impressions img {
    box-shadow: 0px 0px 8px rgba(68,68,68, 0.4)   
}
   
img,
iframe {
    border: 1px solid #fff;
}

.item img,
#bigpicture img {
    border: none;
}

.element {
    position: relative;
}

.block-front {
    z-index: 999;
}

.bgteeth-img1:before {
    content: url(../img/backgroundimg_1.png);
    width: 374px;
    height: 227px;
    display: block;
    position: absolute;
    bottom: -15px;
    left: 75px;
    z-index: 1;
}

.bgteeth-img2:after {
    content: url(../img/backgroundimg_2.png);
    width: 179px;
    height: 186px;
    display: block;
    position: absolute;
    top: 260px;
    right: 380px;
    z-index: 1;
}

.bgteeth-img3:before {
    content: url(../img/backgroundimg_3.png);
    width: 407px;
    height: 430px;
    display: block;
    position: absolute;
    top: 100px;
    left: 200px;
    z-index: 1;
}

.bgteeth-img4:after {
    content: url(../img/backgroundimg_4.png);
    width: 211px;
    height: 223px;
    display: block;
    position: absolute;
    bottom: 20px;
    right: 230px;
    z-index: 1;
}

.bgteeth-img5:after {
    content: url(../img/backgroundimg_5.png);
    width: 511px;
    height: 539px;
    display: block;
    position: absolute;
    top: 500px;
    right: 250px;
    z-index: 1;
}

.bgteeth-img6:before {
    content: url(../img/backgroundimg_3.png);
    width: 407px;
    height: 430px;
    display: block;
    position: absolute;
    bottom: 40px;
    left: 180px;
    z-index: 1;
}

.bgteeth_adult:after {
    content: url(../img/backgroundimg_5.png);
    width: 511px;
    height: 539px;
    display: block;
    position: absolute;
    top: 500px;
    right: 250px;
    z-index: 1;
}


/*------------------------------------
                ELEMENTS
------------------------------------*/
.quote {
    font-family: 'Patua One', cursive;
    font-weight: 300;
    font-size: 30px;
    line-height: 120%;
    text-align: center;
    color: #fff;
    box-sizing: border-box;
    padding: 0 400px;
    margin: 0 0 60px;
}

.inner {
    box-sizing: border-box;
    padding: 20px 20px 35px;
    box-shadow: 0px 0px 8px rgba(68,68,68, 0.4)
}

.concenter {
    align-items: center;
    display: flex;
    flex-direction: column;
}

.parallax {
    max-width: 100%;
    min-height: 400px;
    background: transparent;
}

.parallax img {
    max-width: 100%;
}

/*buttons index*/
a.btn {
    font-family: 'Lato', sans-serif;
    font-size: 17px;
    font-weight: 300;
    border: 1px solid #fff;
    border-radius: 0;
    color: #fff;
    box-sizing: border-box;
    margin: 10px 0 0;
    padding: 10px 20px;
}

a.btn:hover {
    border: 1px solid #fff;
    color: #4bbee6;
    background-color: #fff;
    transition: 0.3s;
}

/*collapse positive*/
button.positive.btn-primary {
    background-color: transparent;
    color: #4bbee6;
}

button.positive.btn-primary:hover {
    border: 1px solid #4bbee6;
    color: #fff;
    background-color: #4bbee6;
    transition: 0.3s;
}

button.positive.btn-primary:active:hover {
    border: 1px solid #4bbee6;
    color: #fff;
    background-color: #4bbee6;
    transition: 0.3s;
}

button.positive.btn {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0.03em;
    color: #4bbee6;
    border: 1px solid #4bbee6;
    border-radius: 0;
    margin: 0 0 20px 0;
    padding: 6px 12px;
    cursor: pointer;
    -moz-user-select: none;
    background-image: none;
    text-align: center;
    vertical-align: middle;
    white-space: normal;
}

.positive.well {
    background-color: rgb(75, 190, 230);
    border: 1px solid #4bbee6;
    border-radius: 0;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05) inset;
    margin-bottom: 20px;
    min-height: 20px;
    padding: 15px;
}

.positive.well p {
    color: #fff;
}



/*collapse negative*/
button.btn {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    line-height: 150%;
    letter-spacing: 0.03em;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0;
    margin: 10px 0;
    padding: 6px 12px;
    cursor: pointer;
    -moz-user-select: none;
    background-image: none;
    text-align: center;
    vertical-align: middle;
    white-space: normal;
}

button.btn-primary {
    background-color: transparent;
}

button.btn-primary:hover {
    border: 1px solid #fff;
    color: #4bbee6;
    background-color: #fff;
    transition: 0.3s;
}

button.btn-primary:active:hover {
    border: 1px solid #fff;
    color: #4bbee6;
    background-color: #fff;
    transition: 0.3s;
}

.well {
    background-color: rgba(255, 255, 255, 0.2);
    border: 1px solid #fff;
    border-radius: 0;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05) inset;
    margin-bottom: 20px;
    min-height: 20px;
    padding: 15px;
}


ul.listdots li {
    list-style: none;
    position: relative;
    margin: 0 0 24px 10px;
}

ul.listdots li a:before {
    content: "·";
    display: block;
    position: absolute;
    top: 0;
    left: -10px;
    color: #fff;
}

ul.listdots li a {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    color: #fff;
}

ul.list.teeth {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    color: #333;
    list-style: none;
}

ul.list.teeth li {
    position: relative;
    margin: 0 0 8px 15px;
}

ul.list.teeth li:before {
    content: url(../img/icon_list.png);
    display: block;
    position: absolute;
    top: -1px;
    left: -14px;
}

ul.list.teeth.blue li:before {
    content: url(../img/icon_list_blue.png);
    display: block;
    position: absolute;
    top: -1px;
    left: -14px;
}


/*------------------------------------
                COMPONENTS
------------------------------------*/

/* OLD:
.carousel-caption {
    font-family: 'Patua One', cursive;
    font-weight: 300;
    font-size: 50px;
    line-height: 120%;
    text-align: center;
    padding: 30px 0;
    bottom: 120px;
    border: 2px solid #fff;
    background-color: rgba(0, 0, 0, 0.2);
}
*/

/* NEW: */

.image-caption{
	position: relative;
}

.image-caption p {
    font-family: 'Patua One', cursive;
    font-weight: 300;
    font-size: 50px;
    line-height: 120%;
    text-align: center;
    padding: 30px 24px;
    margin-top: -220px;
    border: 2px solid #fff;
    background-color: rgba(0, 0, 0, 0.2);
	color: #fff;
}

.display-flex-center{
	display: flex;
  	justify-content: center;
  	align-items: center;
}

.navbar-default .navbar-toggle {
    border: none;
}

.navbar-default .navbar-toggle .icon-bar {
    background-color: #4bbee6;
}

.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
    background-color: transparent;
}

.navbar {
    margin-bottom: 0;
    box-shadow: 0px 0px 8px rgba(68,68,68, 0.4);
    z-index: 999;
}


/* INFOBAR FUER STELLENANZEIGEN */

.navbar-default.info-bar {
	background-color: #4bbee6;
	text-align: center;
}

.info-bar p  {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
}

.info-bar p a  {
	color: #fff;
	text-decoration: underline;
}

.info-bar h2 {
	/* color: #4bbee6;*/
	color: #fff;
	font-size: 20px;
	/* padding-top: 10px; */
}


.navbar.info-bar {
	box-shadow: none;
	border: none;
	/* position: absolute;
	right: 0;
	width: 600px; */
}

/* INFOBAR FUER STELLENANZEIGEN: ENDE */

/* Rote Infobar für wichtige Meldungen */

.navbar-default.info-bar.warning-background{
	background-color: #FF3300;
}

/* Rote Markierung für wichtige Text-Infos */
.text-warning-red-background {
background-color: #FF3300;
color: #fff;
padding: 5px;
	}


.navbar-default {
    background-color: #fff;
    border-color: none;
}

.navbar-brand {
    height: 98px;
}

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

.nav li a {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    color: #333;
}

.navbar-default .navbar-nav > li > a.navi-highlight {
	color: #4bbee6;
	font-weight: bold;
}

.navbar-default .navbar-nav > li > a:hover {
    color: #333;
}

.navbar-default .navbar-nav > li > a:hover:after {
    content: url(../img/nav_hover.png);
    display: block;
    text-align: center;
    margin-top: 8px;
}

.navbar-right > li > a.icohover:hover:after {
    content: none;
}

ul.nav.navbar-nav li.active {
    background: #fff;
}

ul.nav.navbar-nav li.active a {
    color: #4bbee6;
    background: #fff;
}

ul.nav.navbar-nav li.active a:hover {
    color: #4bbee6;
    background: #fff;
}



.panelinfo {
    box-sizing: border-box;
    padding: 20px 0 10px;
}

.footer {
    border-top: 3px solid #fff;
}

ul.list {
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    font-size: 18px;
    color: #fff;
    list-style: none;
    vertical-align: middle;
}

ul.list li:before {
    content: none;
}

ul.list li a {
    color: #fff;
}

ul.list.space li:nth-child(3),
ul.list.space li:nth-child(5) {
    margin-bottom: 10px;
}


ul.list.contact li {
    margin-left: 10px;
    float: right;
}

ul.list.contact li:nth-child(1) {
    margin: 0 0 10px;
}

ul.list.contact li a {
    color: #fff;
}

ul.list.contact li a img {
    border: none;
}

ul.list.spaceopen li:nth-child(3),
ul.list.spaceopen li:nth-child(6),
ul.list.spaceopen li:nth-child(9) {
    margin-bottom: 10px;
}


/*------------------------------------
                RESPONSIVE
------------------------------------*/

@media (max-width: 768px) {

	.navbar-default .navbar-nav > li > a.navi-highlight.desktop-only {
		display: none;
	}
	
	.desktop-only {
		display: none;
	}
	
}

@media (min-width: 400px) {

	.mobile-only {
		display: none;
	}
	
}

.alert-bar {
    padding-top: 20px;
    padding-bottom: 15px;
    background-color: #000080;
    text-align: center;
    color: #fff;
}