/*hr*/

hr.hr-masthead {
  width: 60%;
  height: 5px;
  background-color: white;
  margin-top:1rem;
  margin-bottom:1rem;
  opacity: unset;
}

hr.hr-section-black {
  width: 60%;
  border:solid 3px #005387;
  margin-top:1rem;
  margin-bottom:1rem;
  opacity: unset;
  text-align: center;
}


hr.hr-section-white {
  width: 60%;
  border:solid 3px white;
  margin-top:1rem;
  margin-bottom:1rem;
  opacity: unset;
  text-align: center;
}

.text_blau {
	color:#005387 !important;
}

/*Navbar*/

#mainNav {
    padding-top: 0rem;
    padding-bottom: 0rem;
  }
  
#mainNav.navbar-shrink {
    padding-top: 0rem;
    padding-bottom: 0rem;
  
}

#mainNav .navbar-nav > li.nav-item > a.nav-link.active {
    color: #005387;
    background: white;
  }
  
 #mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover {
    color: #005387;
    background: #f9f9f9;
  }
  
#mainNav .navbar-nav li.nav-item a.nav-link:hover {
  color: lightgrey;
}

.bg-secondary {
  background-color: #005387 !important;
}

/*Intro*/

header.masthead {
	background-image: url("../assets/img/hintergrund1.jpg");
	background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: /*center*/top;
	background-size: /*contain*/cover;
	padding-top:calc(20rem + 104px);
	padding-bottom:calc(24rem + 104px);
	
}

section#angebot.page-section {
  padding: 0rem 0;
}
.main_introtext {
	color:white;
	margin-bottom:3rem;
	background-color: #005387 !important;
	padding-top:0.75rem;
	padding-bottom:0.75rem;
}

.main_introtext p {
	font-size:1.5rem;
}



.intro_text {
	/*padding-top:10rem;
	text-shadow: 3px 3px 8px black;*/
	/*padding-bottom:3rem;*/
	
}

header .masthead-subheading {
	text-shadow: 3px 3px 8px black;
}

/*Section-Hintergund*/
/*Blau*/

.bg-primary, .footer {
  background-color: #005387 !important;
}

/*Portfolio*/
div.angebot_item {
  border-left:2px solid #005387;
  border-right:2px solid #005387;
  border-bottom:2px solid #005387;
  }

div.angebot_item {
	padding-left:0px;
	padding-right:0px;
	border-radius: 1.5rem;
	margin-left:calc(var(--bs-gutter-x) * 0.5);
	margin-right:calc(var(--bs-gutter-x) * 0.5);
}

div.angebot_item_sektion {
border-radius: 1.5rem;
}

div.angebot_ueberschrift {
	color:white;
	background-color:#005387;
	padding-top:1em;
	padding-bottom:1em;
}

ul.portfolio_liste {
	margin-left:auto;
	margin-right:auto;
}


/*Modal*/

div.modal-content .btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg:#005387;
  --bs-btn-border-color: #005387;
}

/*Arccordeon*/

.accordion-button:not(.collapsed) {
  color: white;
  background-color: #005387;
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}

/*Kontaktformular*/

button#submitButton {
	background-color:#005387;
	border-color:#005387;
}

/*footer*/

.footer a {
	color:white;
}


/*Responsive*/




/*X-Small devices (portrait phones, less than 576px)*/
@media (min-width: 100px) and (max-width: 575.98px) {

header.masthead {
	background-position:top;
	background-size: contain;
	padding-top:calc(2rem + 104px);
	padding-bottom:calc(2rem + 104px);
}

}


/* applies to small devices (landscape phones, less than 768px)*/
@media (min-width: 576px) and (max-width: 767.98px) {

header.masthead {
	background-position:top;
	background-size: contain;
	padding-top:calc(2rem + 104px);
	padding-bottom:calc(2rem + 104px);
}


}

/* applies to medium devices (tablets, less than 992px)*/
@media (min-width: 768px) and (max-width: 991.98px) {
	
header.masthead {
	background-position:top;
	background-size: contain;
	padding-top:calc(7rem + 104px);
	padding-bottom:calc(7rem + 104px);
}

	
}


/* applies to medium devices (tablets, less than 1199.98px)*/
@media (min-width: 992px) and (max-width: 1199.98px) {

header.masthead {
	background-position:top;
	background-size: contain;
	padding-top:calc(10rem + 104px);
	padding-bottom:calc(10rem + 104px);
}	
	
}



/* applies to medium devices (tablets, less than 1199.98px)*/
@media (min-width: 1200px) and (max-width: 1599.98px) {

header.masthead {
	background-position:top;
	background-size: contain;
	padding-top:calc(10rem + 104px);
	padding-bottom:calc(10rem + 104px);
}	
	
}