body,
html {
  width: 100%;
  height: 100%; }

body {
  ffont-family: 'Montserrat', sans-serif; }

.btn-xl {
  padding: 1.25rem 2.5rem; }

.content-section {
  min-height: 100vh; }
  .content-section li {
    padding-bottom: 1.2rem;
    margin-left: -1.3rem; }

.content-section-heading h2 {
  font-size: 3rem; }
.content-section-heading h3 {
  font-size: 0.7rem;
  text-transform: uppercase; }

h1,
h2,
h4,
h5,
h6 {
  font-weight: 600; }

h2 {
  font-weight: 300;
  font-size: 3rem;
  padding-bottom: 2rem;
  padding-top: 6rem; }

h3 {
  font-weight: 400;
  margin-bottom: 2rem;
  font-size: 1.4rem; }

h4 {
  font-size: 1.2rem; }

h5 {
  font-size: 1rem; }

@media (max-width: 992px) {
  body {
    font-size: 0.9rem; }

  h2 {
    font-size: 1.7rem; }

  h3 {
    font-size: 1.2rem; } }
.text-faded {
  color: rgba(255, 255, 255, 0.7); }

.scroll-to-top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  display: none;
  width: 50px;
  height: 50px;
  text-align: center;
  color: #343a40;
  background: rgba(255, 219, 22, 0.9);
  line-height: 45px; }
  .scroll-to-top:focus, .scroll-to-top:hover {
    color: white; }
  .scroll-to-top:hover {
    background: #ffdb16; }
  .scroll-to-top i {
    font-weight: 800; }

.white {
  background: #fff;
  margin: 2rem;
  padding: 2rem; }

.white2 {
  background: #fff;
  margin: 0;
  padding: 0; }
  .white2 p {
    padding: 2rem; }

.gelb {
  background: #ffdb16;
  margin: 2rem;
  padding: 2rem; }
  .gelb h2 {
    color: #fff;
    margin-bottom: 20%; }
  .gelb h3 {
    padding-right: 2rem; }

.orange {
  background: #36b3ad;
  margin: 2rem;
  padding: 2rem; }
  .orange h2 {
    color: #fff;
    margin-bottom: 20%; }
  .orange h3 {
    padding-right: 2rem; }

.blau {
  background: #007aa3;
  margin: 2rem;
  padding: 2rem; }
  .blau h2 {
    color: #fff;
    margin-bottom: 20%; }
  .blau h3 {
    padding-right: 2rem; }

.rechteck {
  height: 7rem; }

/* Micro clearfix:
 * http://nicolasgallagher.com/micro-clearfix-hack/
 */
.rowbox:before,
.rowbox:after {
  content: ' ';
  display: table; }

.rowbox:after {
  clear: both; }

.rowbox {
  *zoom: 1;
  margin: -240px -20px 100px -20px; }

.column-33,
.column-33 .inner {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.column-33 {
  position: relative;
  width: 33.33%;
  float: left;
  padding: 10px;
  padding-bottom: 32.5%;
  height: 0;
  overflow: hidden; }

.column-33 .inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0px;
  vertical-align: middle;
  text-align: center; }
  .column-33 .inner h3 {
    margin: 42% 0 0 0 !important; }

.column-33 .inner > *:first-child {
  margin-top: 0; }

img {
  width: 100%;
  height: auto;
  max-width: 100%;
  margin-bottom: 20px; }

.headerbg {
  margin: 0 2rem 2rem 2rem; }

.headerbgabout {
  margin: 0 0 0 2em;
  padding-right: 2rem; }

@media (max-width: 992px) {
  .headerbg {
    margin: 0 0 1rem 0; }

  .headerbgabout {
    margin: 0; } }
.mb-1 {
  padding-left: 7px !important; }

.impressum {
  height: 33%;
  background: #fff;
  border: 1px solid #adb5bd;
  position: fixed;
  bottom: 0px;
  padding: 20px; }

.fixed-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; }

nav {
  width: 100%;
  position: fixed; }

nav div {
  width: 100%;
  height: 65px;
  background: #fff;
  font-weight: 500;
  line-height: 40px;
  position: absolute;
  top: -65px;
  padding: 18px 0 0 2rem;
  -webkit-transition: all 0.7s ease 0s;
  -moz-transition: all 0.7s ease 0s;
  -ms-transition: all 0.7s ease 0s;
  -o-transition: all 0.7s ease 0s;
  transition: all 0.7s ease 0s;
  visibility: hidden; }

.visible-title {
  top: 0;
  visibility: visible;
  color: #343a40; }

@media (max-width: 992px) {
  .visible-title {
    top: -65px; }

  #sidebar-wrapper {
    background: #fff; }

  .blau h3, .gelb h3, .orange h3 {
    font-size: 1rem; }

  .content-section {
    height: auto; }

  .column-33 .inner h3 {
    margin: 38% 0 0 0 !important; } }
footer {
  height: 1px; }

nav#logo {
  z-index: 3; }

#impressum {
  visibility: hidden; }

.Fussnote {
  font-size: 0.6rem; }

.masthead {
  min-height: 30rem;
  position: relative;
  display: table;
  width: 100%;
  height: auto;
  padding-top: 8rem;
  padding-bottom: 8rem;
  background: #fff; }
  .masthead h1 {
    font-size: 4rem;
    margin: 0;
    padding: 0; }
  @media (min-width: 992px) {
    .masthead {
      height: 100vh; }
      .masthead h1 {
        font-size: 8rem; } }

/* Side Menu */
#sidebar-wrapper {
  position: fixed;
  z-index: 10;
  top: -200px;
  left: 0px;
  width: 100%;
  height: 65px;
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -ms-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
  transform: translateX(0px);
  min-height: 30px;
  text-align: right;
  margin: 0;
  padding: 0; }

.sidebar-nav {
  position: fixed;
  top: 0;
  right: 80px;
  margin: 0;
  padding: 27px 0 0 0;
  list-style: none;
  z-index: 20;
  color: #343a40;
  z-index: 10; }

.sidebar-nav li {
  display: inline-block; }

.sidebar-nav li.sidebar-nav-item a {
  text-decoration: none;
  color: #000;
  padding: 5px; }

.sidebar-nav li a:hover {
  text-decoration: none;
  color: #fff;
  background: #ffdb16; }

.sidebar-nav li a:active,
.sidebar-nav li a:focus {
  text-decoration: none; }

.sidebar-nav > .sidebar-brand {
  height: 80px;
  line-height: 50px;
  padding-top: 0px;
  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 {
  top: 0px;
  left: 0px;
  -webkit-transition: all 0.4s ease 0s;
  -moz-transition: all 0.4s ease 0s;
  -ms-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s; }

.menu-toggle {
  position: fixed;
  right: 15px;
  top: 15px;
  width: 50px;
  height: 50px;
  text-align: center;
  color: #343a40;
  background: #fff;
  line-height: 50px;
  z-index: 999; }
  .menu-toggle:focus, .menu-toggle:hover {
    color: #ffdb16; }
  .menu-toggle:hover {
    background: #fff; }

.service-icon {
  background-color: #fff;
  color: #1D809F;
  height: 7rem;
  width: 7rem;
  display: block;
  line-height: 7.5rem;
  font-size: 2.25rem;
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.1); }

.callout {
  padding: 15rem 0;
  background: #fff; }
  .callout h2 {
    font-size: 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 {
        -webkit-transition: -webkit-clip-path 0.25s ease-out, background-color 0.7s;
        -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 {
        -webkit-transition: -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); } }

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: #1D809F;
    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: #000; }
  a:hover, a:focus, a:active {
    color: #e6e6e6;
    text-decoration: none; }

.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; }

.btn {
  box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.1);
  font-weight: 700; }

.bg-primary {
  background-color: #1D809F !important; }

.text-primary {
  color: #1D809F !important; }

.text-secondary {
  color: #ecb807 !important; }

/*# sourceMappingURL=stylish-portfolio.css.map */
