/* ****** basic settings *************************************************** */

body,
html {
  width: 100%;
  height: 100%;
}
body {
  font-family: 'Source Sans Pro';
}
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
  color: #17a2b8;
}
.strong {
	font-weight: 700;
} 
.text-faded {
  color: rgba(255, 255, 255, 0.7);
}
.btn-xl {
  padding: 1.25rem 2.5rem;
}
.list-group-item {
    font-size: 1.75rem;
    font-weight: 300;
    background-color: transparent;
  }
.small {
  font-size: 1rem;
  font-weight: 300;
}

/* ****** sections *************************************************** */

.google-section {
  padding-top: 7.5rem;
}
.google-section-heading h2 {
  font-size: 3rem;
}
.google-section-heading h3 {
  font-size: 1rem;
  text-transform: uppercase;
}
.content-section {
  padding-top: 7.5rem;
  padding-bottom: 5rem;
}
.content-section-heading h2 {
  font-size: 3rem;
}
.content-section-heading h3 {
  font-size: 1rem;
  text-transform: uppercase;
}
.privacy-section {
	padding-top: 2.5rem;
	padding-bottom: 3.5rem;
}
.last-section {
	padding-top: 1rem;
	padding-bottom: 7rem;
}
.site-heading{
        padding: 50px 0
    } 
    
/* ****** links *************************************************** */

a.mylinks {	
	color: rgb(0,162,186);
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none;
	border-bottom: 1px solid rgb(0,162,186);
  font-weight: 400;
}
a:hover.mylinks {
	color: rgb(255,0,0);
	background: none;
	padding: 0;
	text-decoration: none;
	border-bottom: 1px solid rgb(255,0,0);
  font-weight: 400;
}

/* ****** accordion *************************************************** */

.accordion .card {
	border: none;
	margin-bottom: 2px;
}
.accordion .card-body {
	background: #eeeeee;
  font-size: 1.15rem;
  padding-left: 30px;
}
.accordion .card-header {
	background: #17a2b8;
	padding-top: 7px;
	padding-bottom: 7px;
}
.accordion .card-header h2 {
	color: #fff;
	font-size: 1.25rem;
	font-family: 'Source Sans Pro';
	font-weight: 500;
}
.accordion .card-header h2 span {
	float: left;
	margin: 10px;
}
.accordion .card-header button {
	color: #fff;
	font-size: 1.3rem;
	line-height: 1.3rem;
	float: right;
  padding: 6px;
  margin-top: 6px;
  border: none;
  background: none;
}
.accordion .card-header button:hover {
	color: #ea3636;
}

/* ****** backgrounds *************************************************** */

.bg-vanilla {
	background: #f9f4ee;
}
.bg-pink {
	background: #ffe1ff;
}
.bg-plum {
	background: #dda0dd;
}
.bg-lavender {
	background: #f0f8ff;
}
.bg-cadetblue {
	background: #97ffff;
}
.bg-light {
	background: #ffffff;
}

/* ****** mark *************************************************** */

.mark {
	background: #ffff00;
}

/* ****** basic colors *************************************************** */

.logocolor {
	color: #8c2651;
}
.tomato {
	color: #ff6347;
}
.linkblue {
	color: #0099CC;
}
.headlinegrey {
	color: #888888;
}
.bright-orange {
	color: #f7c723;
}
.turquoise {
	color: #85b4be;
}
.white {
	color: #ffffff;
}
.black {
	color: #000000;
}
.grey {
	color: #d2d2d2;
}
.lightgrey {
	color: rgb(210,210,210);
}
.slate-grey {
	color: rgb(112,128,144);
}
.dark-slate-grey {
	color: rgb(47,79,79);
}
.brown {
	color: #8b2323;
}
.blue {
	color: #7097B9;
}
.lightblue {
	color: #88C8E4;
}
.pink {
	color: #ee1289;
}
.red {
	color: #f15a24;
}
.logored {
	color: #e41b0f;
}
.subtlered {
	color: #F08080;
}
.orange {
	color: rgb(237,184,90);
}
.green {
	color: rgb(102,204,51);
}
.yellowgreen {
	color: rgb(154,205,50);
}
.darkgreen {
	color: #006400;
}
.event {
	color: rgb(210,110,144);
}

/* ****** highlight *************************************************** */

.highlight {
    background-color: #a52a2a;
    padding: 4px 12px 6px 12px;
    border-radius: 6px;
}
.highlight2 {
  background-color: #e8e8e8;
  padding: 4px 12px 2px 12px;
  border: none;
}

/* ****** zoom css *************************************************** */

img[data-action="zoom"] {
  cursor: zoom-in;
}
.zoom-img,
.zoom-img-wrap {
  position: relative;
  z-index: 666;
  transition: all 300ms;
}
img.zoom-img {
  cursor: zoom-out;
}
.zoom-overlay {
  cursor: zoom-out;
  z-index: 420;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  filter: "alpha(opacity=0)";
  opacity: 0;
  transition:      opacity 300ms;
}
.zoom-overlay-open .zoom-overlay {
  filter: "alpha(opacity=100)";
  opacity: 1;
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2Nzcy96b29tLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLGdCQUFnQjtDQUNqQjtBQUNEOztFQUVFLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2Isc0JBQXNCO0NBQ3ZCO0FBQ0Q7RUFDRSxpQkFBaUI7Q0FDbEI7QUFDRDtFQUNFLGlCQUFpQjtFQUNqQixhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVM7RUFDVCxVQUFVO0VBQ1YsMkJBQTJCO0VBQzNCLFdBQVc7RUFDWCwrQkFBK0I7Q0FDaEM7QUFDRDtFQUNFLDZCQUE2QjtFQUM3QixXQUFXO0NBQ1oiLCJmaWxlIjoiem9vbS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJpbWdbZGF0YS1hY3Rpb249XCJ6b29tXCJdIHtcbiAgY3Vyc29yOiB6b29tLWluO1xufVxuLnpvb20taW1nLFxuLnpvb20taW1nLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDY2NjtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zO1xufVxuaW1nLnpvb20taW1nIHtcbiAgY3Vyc29yOiB6b29tLW91dDtcbn1cbi56b29tLW92ZXJsYXkge1xuICBjdXJzb3I6IHpvb20tb3V0O1xuICB6LWluZGV4OiA0MjA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0wKVwiO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgMzAwbXM7XG59XG4uem9vbS1vdmVybGF5LW9wZW4gLnpvb20tb3ZlcmxheSB7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTEwMClcIjtcbiAgb3BhY2l0eTogMTtcbn1cbiJdfQ== */

/* ****** form *************************************************** */

label {
    color: #000000;
    font-weight: 400;
    background-color: #eeeeee;
    padding: 10px 16px;
}
.form-control {
	height: 60px;
	background-color: #ffffff;
	border-radius: 0px;
	border-color: #999999;
}

/* ****** image border *************************************************** */

.circular {
    padding: 0px;
    border: 12px solid #d2d2d2;
}
.circular4 {
    padding: 0px;
    border: 6px solid #d2d2d2;
}

/* ****** ruler settings *************************************************** */

hr {
    max-width: 100%;
    border-color: #000000;
    border: 1px dashed;
}
hr.light {
    border-color: #336699;
}
hr.dark {
    border-color: #888888;
}

/* ****** spacing *************************************************** */

.mb-10 {
    margin-bottom: 10px;
}
.mb-15 {
    margin-bottom: 15px;
}
.mb-30 {
    margin-bottom: 30px;
}
.ptb-60 {
    padding-top: 60px;
    padding-bottom: 60px;
}
.ptb-30 {
    padding-top: 30px;
    padding-bottom: 30px;
}
.ptb-15 {
    padding-top: 15px;
    padding-bottom: 15px;
}

/* ****** spacing with divs *************************************************** */

.spacer-15 {
    width: 100%;
    height: 15px;
}
.spacer-30 {
    width: 100%;
    height: 30px;
}
.spacer-45 {
    width: 100%;
    height: 45px;
}
.spacer-60 {
    width: 100%;
    height: 60px;
}
.spacer-75 {
    width: 100%;
    height: 75px;
}
.spacer-90 {
    width: 100%;
    height: 90px;
}

/* ****** background vectors *************************************************** */

.background-1 {
	background: url("../img/warp-01.png");
	background-repeat: no-repeat;
	background-position: top right;
  background-size: 80%;
}
.background-2 {
	background: url("../img/warp-02.png");
	background-repeat: no-repeat;
	background-position: bottom center;
  background-size: 85%;
}
.background-3 {
	background: url("../img/warp-03.png");
	background-repeat: no-repeat;
	background-position: center left;
  background-size: 100%;
}
.background-4 {
	background: url("../img/music_note.png");
	background-repeat: no-repeat;
	background-position: center bottom;
  background-size: 45%;
}
.background-5 {
	background: url("../img/bird.png");
	background-repeat: no-repeat;
	background-position: right bottom;
  background-size: 60%;
}  

/* ****** fucking google map *************************************************** */

.map {
  height: 36rem;
}
@media (max-width: 992px) {
  .map {
    height: 75%;
  }
}
.map iframe {
  pointer-events: none;
}

.scroll-to-top {
  position: fixed;
  right: 15px;
  bottom: 15px;
  display: none;
  width: 50px;
  height: 50px;
  text-align: center;
  color: white;
  background: rgba(52, 58, 64, 0.5);
  line-height: 45px;
}
.scroll-to-top:focus, .scroll-to-top:hover {
  color: white;
}
.scroll-to-top:hover {
  background: #343a40;
}
.scroll-to-top i {
  font-weight: 800;
}

/* ****** embedding video *************************************************** */

.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
	height: auto;
}
.embed-container iframe, .embed-container object, .embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ****** fullscreen background *************************************************** */

.masthead {
  background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)),
  url(../img/notenblatt_unsplash.jpg);
  height: 100vh;
  background-position: center;
  background-size: cover;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.masthead h1 {
	font-size: 3.5rem;
  font-weight: 300;
  color: #000000;
	margin: 0;
	padding: 0;
	text-shadow: none;
}
.masthead h3 {
  color: #000000;
  font-weight: 300;
}
@media (min-width:992px) {
	.masthead {
		height: 100vh
	}
	.masthead h1 {
		font-size: 3.25rem;
    color: #000000;
	}
  .masthead h3 {
		font-size: 1.953rem;
    color: #000000;
	}
  .lead {
    font-size: 1.75rem;
  }
  p {
    font-size: 1.35rem;
  }
}

/* ****** image borders *************************************************** */

.photo {
	padding: 20px;
	background-color: #ffffff;
}
.frame-inset {
	max-width: 100%;
	height: auto;
	outline: 2px dotted white;
	outline-offset: -15px
}
.frame-inset2 {
	max-width: 100%;
	height: auto;
	outline: 1px solid #eeeeee;
	outline-offset: -20px
}

/* ****** Side Menu *************************************************** */

#sidebar-wrapper {
  position: fixed;
  z-index: 2;
  right: 0;
  width: 250px;
  height: auto;
  transition: all 0.4s ease 0s;
  transform: translateX(250px);
  background: #333333;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}
.sidebar-nav {
  position: absolute;
  top: 0;
  width: 250px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.sidebar-nav li.sidebar-nav-item a {
	display: block;
	text-decoration: none;
	color: #fff;
	padding: 15px;
  border-top: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
}
.sidebar-nav li a:hover {
  text-decoration: none;
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
}
.sidebar-nav li a:active,
.sidebar-nav li a:focus {
  text-decoration: none;
}
.sidebar-nav > .sidebar-brand {
  font-size: 1.2rem;
  background: rgba(52, 58, 64, 0.1);
  height: 80px;
  line-height: 50px;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 15px;
}
.sidebar-nav > .sidebar-brand a {
  color: #fff;
}
.sidebar-nav > .sidebar-brand a:hover {
  color: #fff;
  background: none;
}
#sidebar-wrapper.active {
  right: 250px;
  width: 250px;
  transition: all 0.4s ease 0s;
}
.menu-toggle {
  position: fixed;
  right: 15px;
  top: 15px;
  width: 50px;
  height: 50px;
  text-align: center;
  color: #fff;
  background: rgba(52, 58, 64, 0.5);
  line-height: 50px;
  z-index: 999;
}
.menu-toggle:focus, .menu-toggle:hover {
  color: #fff;
}
.menu-toggle:hover {
  background: #343a40;
}
.service-icon {
  background-color: #ffffff;
  color: #336699;
  height: 4rem;
  width: 4rem;
  display: block;
  line-height: 4.5rem;
  font-size: 2.25rem;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1);
}
.callout {
  padding: 15rem 0;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%), url("../img/girl_with_dog.jpg");
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
}
.callout h2 {
  font-size: 3.5rem;
  line-height: 3.5rem;
  font-weight: 700;
  display: block;
  max-width: 30rem;
}
.portfolio-item {
  display: block;
  position: relative;
  overflow: hidden;
  max-width: 530px;
  margin: auto auto 1rem;
}
.portfolio-item .caption {
  display: flex;
  height: 100%;
  width: 100%;
  background-color: rgba(33, 37, 41, 0.2);
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
}
.portfolio-item .caption .caption-content {
  color: #fff;
  margin: auto 2rem 2rem;
}
.portfolio-item .caption .caption-content h2 {
  font-size: 0.8rem;
  text-transform: uppercase;
}
.portfolio-item .caption .caption-content p {
  font-weight: 300;
  font-size: 1.2rem;
}
@media (min-width: 992px) {
  .portfolio-item {
    max-width: none;
    margin: 0;
  }
  .portfolio-item .caption {
    transition: background-color 0.7s, -webkit-clip-path 0.25s ease-out;
    transition: clip-path 0.25s ease-out, background-color 0.7s;
    transition: clip-path 0.25s ease-out, background-color 0.7s, -webkit-clip-path 0.25s ease-out;
    -webkit-clip-path: inset(0px);
    clip-path: inset(0px);
  }
  .portfolio-item .caption .caption-content {
    transition: opacity 0.25s;
    margin-left: 5rem;
    margin-right: 5rem;
    margin-bottom: 5rem;
  }
  .portfolio-item img {
    transition: -webkit-clip-path 0.25s ease-out;
    transition: clip-path 0.25s ease-out;
    transition: clip-path 0.25s ease-out, -webkit-clip-path 0.25s ease-out;
    -webkit-clip-path: inset(-1px);
    clip-path: inset(-1px);
  }
  .portfolio-item:hover img {
    -webkit-clip-path: inset(2rem);
    clip-path: inset(2rem);
  }
  .portfolio-item:hover .caption {
    background-color: rgba(29, 128, 159, 0.9);
    -webkit-clip-path: inset(2rem);
    clip-path: inset(2rem);
  }
  .form-group {
	font-size: 24px;
}
}

.map iframe {
  height: 100%;
  width: 100%;
  border: 0;
}

/* ****** footer *************************************************** */

footer.footer {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
footer.footer .social-link {
  display: block;
  height: 4rem;
  width: 4rem;
  line-height: 4.3rem;
  font-size: 1.5rem;
  background-color: #17a2b8;
  transition: background-color 0.15s ease-in-out;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1);
}
footer.footer .social-link:hover {
  background-color: #155d74;
  text-decoration: none;
}
a {
  color: #1D809F;
}
a:hover, a:focus, a:active {
  color: #155d74;
}

/* ****** modal *************************************************** */

modal-body {
  margin: 1rem 2rem;
}

/* ****** list styles *************************************************** */

.li {
  font-size: 1.35rem;
}

/* ****** button settings evil style with important *************************************************** */

.btn {
  -webkit-box-shadow: 0 0.1875rem 0.1875rem 0 rgba(0, 0, 0, 0.1) !important;
  box-shadow: 0 0.1875rem 0.1875rem 0 rgba(0, 0, 0, 0.1) !important;
  padding: 1.25rem 2rem;
  font-family: 'Source Sans Pro';
  font-size: 100%;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: .15rem;
  border: 0;
}
.btn-primary {
  background-color: #1D809F !important;
  border-color: #1D809F !important;
  color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #155d74 !important;
  border-color: #155d74 !important;
}
.btn-secondary {
  background-color: #ecb807 !important;
  border-color: #ecb807 !important;
  color: #fff !important;
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
  background-color: #ba9106 !important;
  border-color: #ba9106 !important;
}
.btn-dark {
  color: #fff !important;
}
.bg-primary {
  background-color: #1D809F !important;
}
.text-primary {
  color: #1D809F !important;
}
.text-secondary {
  color: #ecb807 !important;
  letter-spacing: 1px;
}

/* On screens that are 600px wide or less, the background color is olive */
@media screen and (max-width: 600px) {
  .masthead h1 {
    font-size: 2rem;
    margin: 0;
    padding: 0;
    text-shadow: none;
  }
  .masthead h3 {
    font-size: 1.5rem;
    margin: 0;
    padding: 0;
    text-shadow: none;
  }
  .content-section {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  .btn {
    padding: 0.75rem 1rem;
    font-family: 'Source Sans Pro';
    font-size: 70%;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: .15rem;
    border: 0;
  } 
  .lead {
    font-size: 1.15rem;
  }
  .accordion .card-header h2 span {
    font-size: 1rem;
  }
  .accordion .card-body {
    font-size: 0.9rem;
  }
  .display-4 {
    font-size: 2.5rem;
  }
}