body {
  background-color: #FFFFFF;
  color: #515050;
  font-family: "Roboto", system-ui;
  font-weight: 300;
  font-style: normal;
  padding: 0 60px !important;
  font-size: 18px; }
  body.legal header {
    height: auto; }
    body.legal header h2 {
      margin-top: 120px; }
  body.legal section {
    padding-top: 0; }

a {
  color: #539B89; }

.container-fluid {
  max-width: 1600px; }

h1, h2, h3, h4, h5, h6, .headline {
  font-family: "Poppins", system-ui;
  font-weight: 800;
  font-style: normal; }
  h1 em, h2 em, h3 em, h4 em, h5 em, h6 em, .headline em {
    font-size: 1.5em;
    display: block;
    line-height: 0.8; }

.btn {
  border-radius: 0;
  background: #539B89;
  transition: all 0.2s ease;
  color: #FFF;
  padding: 10px;
  border: none !important; }
  .btn:hover {
    background: #515050;
    color: #FFF; }

img {
  max-width: 100%; }

h1, h2 {
  font-size: 3rem; }

h3 {
  font-size: 1rem; }

em {
  color: #539B89;
  font-style: normal; }

nav ul {
  list-style-type: none;
  display: flex;
  flex-direction: row; }
  nav ul, nav ul li {
    margin: 0;
    padding: 0; }

.box-content {
  padding: 15px;
  border: 1px solid #539B89; }
  .box-content h4 {
    font-size: 1.2rem;
    margin-bottom: 0;
    font-weight: 300;
    font-family: "Roboto", system-ui; }
    .box-content h4 em {
      font-size: 1em;
      display: inline;
      font-weight: 800; }

header {
  height: 100vh;
  position: relative;
  border-bottom: 60px solid #FFFFFF; }
  header .image-holder {
    z-index: -1;
    position: fixed;
    top: 60px;
    right: 60px;
    width: calc(100% - 120px);
    height: calc(100% - 120px); }
    header .image-holder .container-fluid {
      position: relative;
      height: 100%;
      display: flex;
      justify-content: flex-end; }
      header .image-holder .container-fluid > div {
        position: relative;
        height: 100%;
        width: 65%; }
    header .image-holder img {
      position: absolute;
      right: 0;
      z-index: 1;
      bottom: 0;
      object-fit: cover;
      width: 100%;
      height: 100%;
      object-position: top; }
    header .image-holder .sky {
      background: linear-gradient(0deg, #eacac2, #f2e9d4, #e5eef2, #a2c4f3);
      background-size: 200% 200%;
      animation: gradient-animation 20s ease infinite;
      position: absolute;
      height: 85%;
      width: 100%;
      bottom: 0;
      left: 0; }
@keyframes gradient-animation {
  0% {
    background-position: 0% 0%; }
  20% {
    background-position: 0% 50%; }
  100% {
    background-position: 0% 0%; } }
  header h2 {
    font-size: 5rem;
    margin: 0;
    display: inline-block;
    line-height: 0.9; }
    header h2 span, header h2 em {
      padding: 10px 10px 10px 0;
      background: #FFFFFF;
      display: inline-block; }
  header > .container-fluid {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-top: 60px;
    padding-bottom: 0; }
  header .logo-holder {
    max-width: 200px; }
  header .menu-holder nav {
    margin-top: 30px; }
    header .menu-holder nav li {
      padding-right: 20px;
      position: relative;
      background: #FFFFFF; }
      header .menu-holder nav li:after {
        content: " ";
        width: 1px;
        height: 100%;
        background: #515050;
        right: 10px;
        top: 0;
        position: absolute; }
      header .menu-holder nav li:last-of-type:after {
        display: none; }
    header .menu-holder nav a {
      color: #515050;
      text-decoration: none;
      font-size: 20px;
      transition: color 0.2s ease-in-out; }
      header .menu-holder nav a:hover {
        color: #539B89; }
  header .highlight-buttons {
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    align-items: flex-start; }
    header .highlight-buttons a {
      background: #539B89;
      color: #FFFFFF;
      display: inline-block;
      text-decoration: none;
      transition: background 0.2s ease-in-out;
      margin-top: 15px; }
      header .highlight-buttons a:hover {
        background: #515050; }
      header .highlight-buttons a .highlight {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        height: 60px; }
        header .highlight-buttons a .highlight .icon-holder {
          width: 60px;
          height: 60px;
          display: flex;
          align-items: center;
          justify-content: center; }
          header .highlight-buttons a .highlight .icon-holder i {
            font-size: 2rem; }
        header .highlight-buttons a .highlight .text-holder {
          text-align: left;
          padding-right: 10px;
          font-weight: 800;
          text-transform: uppercase;
          font-size: 1.2rem;
          height: 100%;
          display: flex;
          flex-direction: column;
          line-height: 1.1;
          justify-content: center;
          font-family: "Poppins", system-ui; }
          header .highlight-buttons a .highlight .text-holder span {
            display: block;
            font-weight: 300;
            font-size: 0.75em; }

.content {
  background: #FFFFFF; }

section {
  padding-top: 200px; }

p em {
  font-weight: 800; }

.section-image-text .image-holder {
  height: 100%;
  position: relative; }
  .section-image-text .image-holder img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
.section-image-text h1, .section-image-text h2 {
  margin-bottom: 30px; }
.section-image-text p:last-of-type {
  margin-bottom: 0; }

.section-form .image-holder {
  height: 100%;
  position: relative; }
  .section-form .image-holder > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0; }
.section-form form input, .section-form form textarea {
  appearance: none;
  border: 1px solid #539B89;
  border-radius: 0;
  display: block;
  width: 100%;
  padding: 10px; }
.section-form form textarea {
  resize: none; }
.section-form form input[type="submit"] {
  background: #539B89;
  color: #FFFFFF;
  transition: all 0.4s ease-in-out; }
  .section-form form input[type="submit"]:hover {
    background: #515050; }
.section-form form > p {
  margin-bottom: 0; }

.section-projekte h2 {
  margin-bottom: 30px; }
.section-projekte .grundrisse {
  display: flex;
  flex-wrap: wrap;
  gap: 5px; }
  .section-projekte .grundrisse p {
    margin: 0;
    width: calc(50% - 5px); }
    .section-projekte .grundrisse p a {
      text-decoration: none;
      color: #515050; }
      .section-projekte .grundrisse p a i {
        color: #539B89; }
.section-projekte .projekt {
  height: 100%;
  display: flex;
  flex-direction: column;
  border: 2px solid #539B89;
  font-size: 17px; }
  .section-projekte .projekt h4 {
    font-size: 1.2rem;
    margin-top: 10px;
    margin-bottom: 5px; }
  .section-projekte .projekt .wohneinheiten {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: space-between; }
    .section-projekte .projekt .wohneinheiten .projekt-einheit {
      width: calc(50% - 5px);
      height: 100%; }
  .section-projekte .projekt .projekt-einheit .info-holder {
    padding: 10px;
    border: 2px solid #539B89;
    border-top: none; }
  .section-projekte .projekt .projekt-einheit a {
    display: block;
    background: #539B89;
    color: #FFFFFF;
    padding: 5px 10px;
    text-decoration: none;
    transition: all 0.4s ease-in-out;
    position: relative; }
    .section-projekte .projekt .projekt-einheit a.collapsed:after {
      content: "\f078"; }
    .section-projekte .projekt .projekt-einheit a:after {
      content: "\f077";
      font-family: "Font Awesome 6 Pro", sans-serif;
      position: absolute;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      right: 10px;
      top: 0;
      z-index: 1; }
    .section-projekte .projekt .projekt-einheit a:hover {
      background: #515050; }
  .section-projekte .projekt .info-holder {
    padding: 15px;
    flex: 1; }
    .section-projekte .projekt .info-holder a.btn {
      width: 100%;
      margin-top: 15px; }
    .section-projekte .projekt .info-holder .ort {
      font-weight: 800;
      font-family: "Poppins", system-ui;
      font-size: 2rem;
      margin: 0; }
    .section-projekte .projekt .info-holder ul {
      list-style-type: none;
      margin: 0;
      padding: 0; }
      .section-projekte .projekt .info-holder ul li {
        margin: 0;
        padding: 2px 0;
        display: flex;
        flex-direction: row;
        align-content: flex-start;
        align-items: flex-start; }
        .section-projekte .projekt .info-holder ul li i {
          color: #539B89;
          width: 30px;
          display: block;
          min-width: 30px;
          padding-top: 3px; }
    .section-projekte .projekt .info-holder h3 {
      font-size: 1.2rem; }
  .section-projekte .projekt .image-holder {
    position: relative;
    max-height: 300px; }
    .section-projekte .projekt .image-holder:after {
      content: " ";
      display: block;
      padding-bottom: 100%; }
    .section-projekte .projekt .image-holder img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      z-index: 1;
      position: absolute;
      top: 0;
      left: 0; }
    .section-projekte .projekt .image-holder .image-overlay {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 3;
      width: 100%;
      height: 100%; }
      .section-projekte .projekt .image-holder .image-overlay:hover > span {
        background: #515050; }
      .section-projekte .projekt .image-holder .image-overlay .uebersicht {
        background: #539B89;
        color: #FFFFFF;
        display: flex;
        align-items: center;
        position: absolute;
        bottom: 0;
        right: 0; }
        .section-projekte .projekt .image-holder .image-overlay .uebersicht .icon-holder {
          width: 60px;
          height: 60px;
          display: flex;
          align-items: center;
          justify-content: center;
          font-size: 1.8rem; }
        .section-projekte .projekt .image-holder .image-overlay .uebersicht .text-holder {
          padding-right: 10px; }
          .section-projekte .projekt .image-holder .image-overlay .uebersicht .text-holder p {
            margin: 2px 0;
            line-height: 1; }
          .section-projekte .projekt .image-holder .image-overlay .uebersicht .text-holder .status {
            font-size: 1.2rem;
            font-weight: 800;
            font-family: "Poppins", system-ui; }
      .section-projekte .projekt .image-holder .image-overlay > span {
        position: absolute;
        top: 0;
        right: 0;
        padding: 5px 10px;
        text-decoration: none;
        background: #539B89;
        color: #FFFFFF;
        transition: all 0.4s ease-in-out; }
    .section-projekte .projekt .image-holder .sold {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5);
      color: #FFF;
      z-index: 2;
      font-family: "Poppins", system-ui;
      font-weight: 800;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
      transition: all 0.4s ease-in-out; }
    .section-projekte .projekt .image-holder:hover .sold {
      opacity: 0; }

.section-start h1 {
  margin-bottom: 60px; }
.section-start .image-holder {
  height: 100%;
  position: relative; }
  .section-start .image-holder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    right: 0; }
.section-start .service-holder {
  text-align: left; }
  .section-start .service-holder .service {
    margin-top: 15px; }
  .section-start .service-holder a {
    display: block;
    font-family: "Poppins", system-ui;
    border: 2px solid #539B89;
    transition: all 0.4s ease-in-out;
    font-size: 1.5rem;
    font-weight: 800;
    text-decoration: none;
    padding: 5px 15px;
    background: #539B89;
    color: #FFF; }
    .section-start .service-holder a.collapsed {
      background: #FFFFFF;
      color: #515050; }
    .section-start .service-holder a:hover {
      background: #539B89;
      color: #FFFFFF; }
  .section-start .service-holder .info-holder {
    padding: 15px;
    border: 2px solid #539B89;
    border-top: none; }

.section-timeline {
  position: relative; }
  .section-timeline .icon-box {
    padding: 30px;
    background: #539B89;
    color: #FFFFFF;
    height: 100%;
    position: relative;
    z-index: 1; }
    .section-timeline .icon-box:after, .section-timeline .icon-box:before {
      content: " ";
      width: 5px;
      display: block;
      height: 100%;
      position: absolute;
      top: 0;
      background-color: #FFFFFF; }
    .section-timeline .icon-box:before {
      left: -5px; }
    .section-timeline .icon-box:after {
      right: -5px; }
    .section-timeline .icon-box i {
      font-size: 5rem;
      margin-bottom: 30px;
      padding: 30px;
      display: block;
      border: 2px solid #FFFFFF;
      text-align: center; }
    .section-timeline .icon-box h3 {
      font-size: 1.5rem;
      font-family: "Poppins", system-ui;
      font-weight: 800;
      hyphens: auto; }
    .section-timeline .icon-box p {
      margin-bottom: 0;
      hyphens: auto; }
  .section-timeline:after {
    content: " ";
    display: block;
    width: 80%;
    height: 2px;
    background: #539B89;
    top: calc(50% - 1px);
    left: 10%;
    z-index: 0;
    position: absolute; }

footer {
  margin: 180px 0 60px 0; }
  footer img {
    position: absolute;
    height: 170px;
    top: -170px;
    right: 0; }
  footer, footer a {
    color: #FFFFFF; }
  footer a {
    margin-left: 10px; }
  footer .row {
    align-items: flex-end; }
  footer .info-holder h3 {
    font-size: 2.2rem;
    margin-bottom: 15px; }
  footer .info-holder p {
    margin-bottom: 3px; }
  footer .info-holder p:last-of-type {
    margin-bottom: 0; }
  footer .info-holder:after {
    background-color: #539B89;
    right: 0; }
  footer .nav-holder ul {
    justify-content: flex-end; }
  footer .nav-holder:after {
    background-color: #515050;
    left: 0; }
  footer .info-holder, footer .nav-holder {
    position: relative; }
    footer .info-holder > div, footer .nav-holder > div {
      padding-bottom: 30px;
      padding-top: 30px;
      position: relative;
      z-index: 1; }
    footer .info-holder:after, footer .nav-holder:after {
      content: " ";
      display: block;
      position: absolute;
      bottom: 0;
      height: 100%;
      width: 100%;
      z-index: 0; }

.gwpb .modal-dialog {
  max-width: 1000px;
  width: 80%; }
  .gwpb .modal-dialog .modal-content {
    border-radius: 0;
    border: none;
    height: calc(100vh - 2* var(--bs-modal-margin)); }
    .gwpb .modal-dialog .modal-content h2 {
      font-size: 2rem; }
      .gwpb .modal-dialog .modal-content h2 em {
        font-size: 1em;
        display: inline; }
    .gwpb .modal-dialog .modal-content .modal-body img {
      width: 100%;
      object-fit: cover;
      position: absolute;
      top: 0;
      left: 0;
      height: 100%; }
    .gwpb .modal-dialog .modal-content .modal-body .carousel-inner, .gwpb .modal-dialog .modal-content .modal-body .carousel, .gwpb .modal-dialog .modal-content .modal-body .carousel-item {
      height: 100%; }
    .gwpb .modal-dialog .modal-content .modal-body .carousel-control-next, .gwpb .modal-dialog .modal-content .modal-body .carousel-control-prev {
      opacity: 1; }
    .gwpb .modal-dialog .modal-content .modal-body .carousel-control-next-icon, .gwpb .modal-dialog .modal-content .modal-body .carousel-control-prev-icon {
      background-color: #539B89;
      border: 5px solid #539B89; }
    .gwpb .modal-dialog .modal-content .modal-body .carousel-control-next, .gwpb .modal-dialog .modal-content .modal-body .carousel-control-prev {
      width: 25%; }

/*# sourceMappingURL=gwpb.main.css.map */
