/* CSS Document */

*,
*::before,
*::after {
  box-sizing: border-box;
}
body {
	color: #4c4c4c;
}

section#portfolio-hochtief .card-body-light.icon-box i {
	float: none;
}
section#portfolio-hochtief .card-body-light.icon-box h4,
section#portfolio-hochtief .card-body-light.icon-box p {
	margin-left:0;
}
.btn-link, a {
	font-weight: 600;
	color: #588258;
}
/*** FONT STYLES ***/
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    margin-bottom: 0.5rem;
    font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-weight: 700;
    line-height: 1.2;
}
header.masthead h1 {
  	/*font-size: 2.25rem;*/
	font-size: calc(24px + (36 - 24) * ((100vw - 320px) / (1600 - 320)));
}
.page-section h2.section-heading {
    /*font-size: 2.5rem;*/
    margin-top: 0;
    margin-bottom: 1rem;
	font-size: calc(24px + (36 - 24) * ((100vw - 320px) / (1600 - 320)));
}
.page-section h3.section-subheading {
    font-size: 1rem;
    font-weight: 400;
    font-style: italic;
    margin-bottom: 3rem;
}
.icon-box h4 {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 5px 0 10px 60px;
}
.icon-box p {
    margin-left: 60px;
}
/*** ICON-FONTS ICON-BOX ***/
.icon-box i {
    font-size: 3rem;
	float: left;
    color: #807673;
}
/*** CONTAINER BOX STYLES ***/
section#portfolio-hoai .image {
    background: url("../images/section-hoai.jpg") center center no-repeat;
    background-size: auto;
    background-size: cover;
    min-height: 400px;
}
section#portfolio-sachbuero .image {
    background: url("../images/portfolio-sachbuero.jpg") center center no-repeat;
    background-size: auto;
    background-size: cover;
    min-height: 400px;
}
/*.fixed-top {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 1030;
}*/
a.navbar-brand {
	background-image: url("../images/SVG/logo-navbar.svg");
	background-repeat: no-repeat;
	min-width: 250px;
	margin-bottom: 0.25rem;
}
.navbar-nav {
	margin-top: 1.3rem;
}
header.masthead {
  padding-top: 10rem;
  padding-bottom: calc(10rem - 4.5rem);
  background: linear-gradient(to bottom, rgba(128, 118, 115, 0.8) 0%, rgba(128, 118, 115, 0.8) 100%), url("../images/bg-masthead-2-sw.png");
  /*background: linear-gradient(to bottom, rgba(73, 90, 140, 0.5) 0%, rgba(73, 90, 140) 100%), url("../images/bg-masthead.jpg");*/
  /*background: linear-gradient(to bottom, rgba(129, 155, 166, 0.5) 0%, rgba(91, 109, 117) 100%), url("../images/bg-masthead-5.jpg");*/
  /*background: linear-gradient(to bottom, rgba(45, 89, 128, 0.5) 0%, rgba(30, 54, 76) 100%), url("../images/bg-masthead-4-sw.jpg");*/
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;
}
body.datenschutz header.masthead,
body.impressum header.masthead{
	height: 33vh;
    min-height: 20rem;
    padding-top: 5.8rem;
    padding-bottom: 0;
}
.masthead .align-self-baseline {
	color: #ffffff;
}
.masthead hr {
	border-top-color: #588258;
}
.portfolio-image img {
	border: 7px solid #D9D9D9;
}
.team-member {
    margin-bottom: 3rem;
    text-align: center;
}
.card-body-light {
	background: rgba(255, 255, 255, 0.8);
    padding: 2rem;
	border-radius: 5px;
}
section#portfolio-hochtief {
	background-color: #EDEDED;
	background: linear-gradient(to bottom, rgba(119, 128, 115, 0.8) 100%, rgba(119, 128, 115, 0.2) 0%), url("../images/bg-masthead-4-sw.jpg");
	width: 100%;
	background-size: cover;
	position: relative;
	z-index: 1;
	padding: 0;
	background-attachment: fixed;
}

section#portfolio-hochtief .section-heading,
section#portfolio-hochtief .section-subheading {
	color: #ffffff!important;
}

section#kontakt {
  background-color: #454A4D;
  background-image: url("../images/map-image.png");
  background-repeat: no-repeat;
  background-position: center;
}
section#kontakt .section-heading {
  color: #fff;
}

/*** FORM STYLES ***/
section#kontakt form#kontaktformular .form-group {
  margin-bottom: 1.5rem;
}
section#kontakt form#kontaktformular .form-group select,
section#kontakt form#kontaktformular .form-group input,
section#kontakt form#kontaktformular .form-group textarea {
  padding: 1.25rem;
}
section#kontakt form#kontaktformular .form-group select.form-control,
section#kontakt form#kontaktformular .form-group input.form-control {
  height: auto;
}
section#kontakt form#kontaktformular .form-group-textarea {
  height: 100%;
}
section#kontakt form#kontaktformular .form-group-textarea textarea {
  height: 100%;
  min-height: 10rem;
}
section#kontakt form#kontaktformular p.help-block {
  margin: 0;
}
section#kontakt form#kontaktformular .form-control:focus {
  border-color: #fed136;
  box-shadow: none;
}
section#kontakt .alert-success {
    color: #ffffff;
    background-color: #7A9983;
    border-color: #7A9983;
}
section#kontakt {
	color: #ffffff;
}
section#kontakt .text-muted{
	color: #D9D9D9!important;
}
section#kontakt .highlight{
	display: none;
}

.btn-primary {
    color: #fff;
    background-color: #588258;
    border-color: #588258;
}
.btn-primary:hover {
    background-color: #0A538D;
    border-color: #0A538D;
	color: #ffffff;
	text-decoration: none;
}
.form-terms { 
	display:none; 
}

@media (min-width: 992px) {
	#mainNav {
    padding-top: 1rem;
    padding-bottom: 1rem;
    transition: padding-top 0.3s, padding-bottom 0.3s;
}
    #mainNav.navbar-shrink {
    padding-top: 0.25rem;
    padding-bottom: 0.3rem;
}
	header.masthead {
    height: 100vh;
    min-height: 40rem;
    padding-top: 4.5rem;
    padding-bottom: 0;
  }
  header.masthead p {
    font-size: 1.15rem;
  }
  header.masthead h1 {
    font-size: 3rem;
  }
}
@media (min-width: 1200px) {
  header.masthead h1 {
    font-size: 3.5rem;
  }
}
 @media (min-width: 360px) and (max-width: 480px){
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	/* hyphens */
   -moz-hyphens: auto;
   -o-hyphens: auto;
   -webkit-hyphens: auto;
   -ms-hyphens: auto;
   hyphens: auto;
}
body.datenschutz header.masthead {
	height: 33vh;
    min-height: 10rem;
    padding-top: 3.75rem;
    padding-bottom: 0;
}
}
