@charset "UTF-8";
/*
Theme Name: waja
Theme URI: https://wordpress.org/themes/twentytwentyfour/
Author: the WordPress team
Author URI: https://wordpress.org
Description: 
Version: 1.0
Text Domain: waja
*/
/* FONTS */
/* ALLGEMEIN */
/* NAV */
/* BUTTONS */
/* CONTENT */
/* FOOTER */
/* MEDIA QUERIES */
/*  Grün (#203a3b), Gold (#cfa37a) und Weiß */
/*$colorLink: #0bb4aa;*/
/*$colorText: rgb(68, 68, 68);*/
/*$colorGold: #cfa37a;*/
#hamburger-icon {
  width: 25px;
  height: 20px;
  position: relative;
  display: inline-block;
  cursor: pointer; }
  #hamburger-icon .line {
    display: block;
    /*background: $dark;*/
    background: #fff;
    width: 25px;
    height: 5px;
    position: absolute;
    left: 0;
    border-radius: 0;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s; }
    #hamburger-icon .line.line-1 {
      top: 0; }
    #hamburger-icon .line.line-2 {
      top: 50%; }
    #hamburger-icon .line.line-3 {
      top: 100%; }
  #hamburger-icon:hover .line-1, #hamburger-icon:focus .line-1 {
    transform: translateY(-2.5px);
    -webkit-transform: translateY(-2.5px);
    -moz-transform: translateY(-2.5px); }
  #hamburger-icon:hover .line-3, #hamburger-icon:focus .line-3 {
    transform: translateY(2.5px);
    -webkit-transform: translateY(2.5px);
    -moz-transform: translateY(2.5px); }
  #hamburger-icon.active .line-1 {
    transform: translateY(10px) translateX(0) rotate(45deg);
    -webkit-transform: translateY(10px) translateX(0) rotate(45deg);
    -moz-transform: translateY(10px) translateX(0) rotate(45deg); }
  #hamburger-icon.active .line-2 {
    opacity: 0; }
  #hamburger-icon.active .line-3 {
    transform: translateY(-10px) translateX(0) rotate(-45deg);
    -webkit-transform: translateY(-10px) translateX(0) rotate(-45deg);
    -moz-transform: translateY(-10px) translateX(0) rotate(-45deg); }

h1 {
  text-transform: uppercase; }

a {
  text-decoration: none;
  color: #95a5a6;
  margin: 0;
  display: inline-block; }
  a:hover, a:focus {
    /*color: $font-color;*/
    color: black; }

/*@media (min-width: 790px) {*/
@media (min-width: 910px) {
  #hamburger-icon {
    display: none; } }
/* FONTS */
@font-face {
  font-family: Cinzel-Regular;
  src: url("fonts/Cinzel-Regular.ttf") format("truetype"); }
@font-face {
  font-family: Roboto-Regular;
  src: url("fonts/Roboto-Regular.ttf") format("truetype"); }
@font-face {
  font-family: Roboto-Bold;
  src: url("fonts/Roboto-Medium.ttf") format("truetype"); }
.hide-menu-item {
  display: none; }

/* ALLGEMEIN */
html {
  --top-spacing: 104px;
  scroll-padding-top: var(--top-spacing); }

body, html {
  padding: 0;
  margin: 0; }

p, ul, .cmplz-message, .cmplz-btn, .cmplz-category-title, .cmplz-description, .cmplz-always-active {
  font-family: Roboto-Regular;
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: 1px;
  color: #4a4a4a; }

a {
  overflow-wrap: anywhere; }

.cmplz-category-title {
  font-size: 16px;
  font-weight: 600; }

.cmplz-always-active {
  font-size: 11px;
  color: green; }

.cmplz-description {
  font-size: 13px; }

ul {
  margin-top: -10px; }

.p-light {
  color: #fff !important;
  letter-spacing: 1px; }

.over-headline {
  color: #cfa37a;
  margin-bottom: 0px; }

.elementor-button-text {
  font-family: Roboto-Regular; }

.kacheln-leistungen a {
  color: #4a4a4a; }
.kacheln-leistungen a:hover {
  color: #000; }

h1, h1.elementor-heading-title {
  font-family: Cinzel-Regular;
  /*font-size: 36px;*/
  font-size: 46px;
  font-weight: 500;
  hyphens: auto;
  text-transform: none;
  /*color: $colorText;*/ }

h2 {
  font-family: Cinzel-Regular;
  font-size: 36px;
  font-weight: 500;
  padding-top: 0px;
  margin-top: 10px;
  hyphens: auto;
  /*color: $colorText;*/ }

.section-green h2 {
  color: #fff; }

.h2-light {
  color: #fff;
  hyphens: auto; }

.h2-kontakt-termin, .h2-kontakt-nachricht {
  display: none; }

h3, h3.elementor-image-box-title, h3.wj-modal-title, .cmplz-title {
  font-family: Cinzel-Regular;
  font-size: 24px;
  font-weight: 500;
  margin: 24px 0 15px 0;
  hyphens: auto; }

.cmplz-title {
  font-size: 24px !important; }

.fancy-quote {
  position: relative;
  font-family: Roboto-Regular;
  font-size: 16px;
  color: #fff;
  line-height: 1.75;
  letter-spacing: 1px;
  margin-left: 30px;
  margin-top: 45px; }

.fancy-quote::before {
  content: "\201C";
  position: absolute;
  font-size: 8em;
  color: #fff;
  opacity: 0.3;
  z-index: 0;
  top: -75px;
  left: -35px; }

.quelle {
  font-family: Roboto-Regular;
  font-size: 11px; }

/* NAV */
#header {
  position: fixed;
  background: #203A3B;
  background: linear-gradient(180deg, rgba(32, 58, 59, 0.9) 0%, rgba(32, 58, 59, 0.36) 62%, rgba(32, 58, 59, 0) 100%);
  transition: background-color 0.3s ease;
  width: 100%;
  display: flex;
  justify-content: space-between;
  z-index: 10;
  padding: 12px 0; }

#header.scrolled {
  /*background-color: rgba(0,0,0,0.9);*/
  background: #203A3B;
  opacity: 0.9;
  /*background: linear-gradient(180deg, rgba(32, 58, 59, 0.9) 60%, rgba(32, 58, 59, 0.96) 90%, rgba(32, 58, 59, 0) 100%);*/ }

.site-header {
  width: 100%;
  max-width: 1140px; }

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem; }

.header-logo a {
  text-decoration: none;
  color: #333;
  font-size: 1.25rem;
  padding: 0 0 0 20px; }
  .header-logo a img {
    max-width: 350px; }

.header-media {
  height: 100vh !important;
  max-height: 100%;
  overflow: hidden !important; }

.nav-header {
  padding-right: 15px; }

.dropdown {
  display: none;
  position: fixed;
  top: 109px;
  right: 0;
  width: 80%;
  z-index: 10;
  padding: 10px 0;
  background-color: rgba(0, 0, 0, 0.9); }
  .dropdown ul {
    flex-direction: column;
    padding: 0; }
    .dropdown ul li {
      float: none;
      padding: 0px; }
      .dropdown ul li a {
        padding: 5px 0; }
  .dropdown .sub-menu {
    display: block !important; }

.navbar-nav {
  list-style: none;
  margin: 0;
  margin-top: 15px;
  margin-right: 15px;
  padding: 0;
  display: flex;
  /*font-family: Arial;*/
  font-family: Roboto-Regular; }
  .navbar-nav li {
    margin-left: 1.5rem;
    position: relative;
    padding-bottom: 10px; }
    .navbar-nav li a {
      text-decoration: none;
      color: #fff;
      padding: 0.5rem 0;
      line-height: 1.8; }

.nav-wrapper .sub-menu {
  display: none;
  position: absolute;
  padding: 0;
  margin-top: 10px;
  width: 220px;
  border-top: 2px solid #d5b284;
  background: #101010;
  left: 50%;
  transform: translate(-50%, 0); }
  .nav-wrapper .sub-menu li {
    list-style: none;
    margin-left: 0;
    padding-bottom: 0; }
    .nav-wrapper .sub-menu li a {
      width: 100%;
      color: #b0b0b0;
      padding: 10px 15px;
      border-bottom: none; }
    .nav-wrapper .sub-menu li a:hover {
      color: #fff; }
  .nav-wrapper .sub-menu li:not(:first-child) {
    border-top: 1px solid rgba(255, 255, 255, 0.07); }
  .nav-wrapper .sub-menu li:first-child:before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    margin-left: -8px;
    width: 0;
    height: 0;
    border-bottom: 8px solid #d5b284;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent; }

/* Hamburger Toggle – versteckt auf Desktop */
.menu-toggle {
  display: none;
  font-size: 1.5rem;
  cursor: pointer; }

.wjcontainer {
  position: relative;
  width: 100%;
  margin: 0 auto;
  max-width: 1200px;
  display: flex;
  align-items: center;
  justify-content: space-between; }

/* BUTTONS */
.btn-header {
  width: 250px; }
  .btn-header a {
    width: 250px !important; }

.btn-trans-white a {
  width: 250px !important; }
.btn-trans-white a:hover {
  background-color: #fff !important;
  color: #4a4a4a; }

.btn-img-box {
  transform: translateX(0%);
  white-space: nowrap; }

.btn-img-box a {
  border-radius: 0px;
  background-color: transparent;
  border: 2px solid #4a4a4a; }
  .btn-img-box a span {
    color: #4a4a4a;
    font-family: Roboto-Regular; }

.btn-img-box-light {
  left: 20% !important;
  transform: translateX(-50%); }

.btn-img-box-light a {
  border-radius: 0px;
  background-color: transparent;
  border: 2px solid #fff; }
  .btn-img-box-light a span {
    color: #fff;
    font-family: Roboto-Regular; }

.btn-img-box-kontrast {
  left: 20% !important;
  transform: translateX(-50%); }

.btn-img-box-kontrast a {
  border-radius: 0px;
  background-color: transparent !important;
  border: 2px solid #d5b284 !important; }
  .btn-img-box-kontrast a span {
    color: #d5b284;
    font-family: Roboto-Regular; }

.btn-slide-kontrast a {
  width: 100%; }
.btn-slide-kontrast :before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #d5b284;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s ease;
  z-index: -1; }
.btn-slide-kontrast :hover::before {
  transform: scaleX(1); }

.btn-slide-kontrast:hover a span {
  color: #4a4a4a; }

.btn-white {
  /*    left: 20% !important;
      transform: translateX(-50%);*/
  transform: translateX(0%); }

.btn-white a {
  border-radius: 0px;
  background-color: transparent !important;
  border: 2px solid #fff !important; }
  .btn-white a span {
    color: #fff;
    font-family: Roboto-Regular; }

.btn-slide-white-2 a {
  width: 100%; }
.btn-slide-white-2 :before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #fff;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s ease;
  z-index: -1; }
.btn-slide-white-2 :hover::before {
  transform: scaleX(1); }

.btn-slide-white-2:hover a span {
  color: #4a4a4a; }

.btn-slide a {
  width: 100%; }
.btn-slide :before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #4a4a4a;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s ease;
  z-index: -1; }
.btn-slide :hover::before {
  transform: scaleX(1); }

.btn-slide:hover a span {
  color: #fff; }

.btn-slide-white a {
  width: 100%; }
.btn-slide-white :before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #fff;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s ease;
  z-index: -1; }
.btn-slide-white :hover::before {
  transform: scaleX(1); }

.btn-slide-white:hover a span {
  color: #4a4a4a; }

/*.btn-slide-kontrast {
    a {
        width: 100%;
    }

    :before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: $colorGold;
        transform: scaleX(0);
        transform-origin: left;
        transition: transform 0.4s ease;
        z-index: -1;
    }

    :hover::before {
        transform: scaleX(1);
    }
}
.btn-slide-kontrast:hover a span {
    color: $colorText;
}*/
/* CONTENT */
#header-home span {
  font-family: Cinzel-Regular;
  font-size: 61px; }

.header-pre-headline {
  font-family: Roboto-Regular;
  letter-spacing: 1px;
  font-size: 30px;
  color: #fff; }

.home-pre-headline {
  display: block;
  hyphens: auto;
  font-family: Cinzel-Regular;
  font-size: 61px;
  line-height: 70px; }

.header-media h1 {
  font-size: 61px;
  color: #fff; }
.header-media p {
  font-size: 20px; }

#header-nonstart h1 {
  font-size: 600;
  color: #fff; }

.box-full-img p {
  color: #fff; }

.box-with-link {
  cursor: pointer; }

.img-box {
  height: 100%; }
  .img-box span {
    font-family: Cinzel-Regular;
    font-weight: 500 !important; }
  .img-box p {
    font-family: Roboto-Regular;
    color: #4a4a4a !important; }

.section-green {
  font-family: Roboto-Regular;
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: 1px;
  letter-spacing: 1px; }

.slider-headline * {
  font-family: Cinzel-Regular !important;
  font-size: 30px !important;
  font-weight: 500 !important;
  border-radius: 4px; }

.n2-ss-layer-content p {
  font-family: Roboto-Regular !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
  letter-spacing: 1px !important;
  /*color: #fff !important;*/
  color: #fff;
  margin-top: 40px !important; }

.slide-number {
  font-size: 60px !important;
  color: lightgray;
  font-weight: 700 !important; }

.small-tel-mail {
  display: block;
  font-size: 13px;
  line-height: 20px; }

.icon-list-item .e-font-icon-svg {
  color: #203a3b; }

.e-n-accordion-item-title {
  background-color: #d5b284;
  color: #fff !important; }

.e-n-accordion-item-title-icon svg {
  fill: #fff !important; }

.wpz-member-links {
  padding-left: 20px; }

.form-style {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  padding: 2rem;
  background: #fff;
  color: #444444;
  box-shadow: 0 12px 25px rgba(0, 0, 0, 0.35);
  box-sizing: border-box;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
  .form-style input:not([type="submit"]), .form-style select {
    padding: 0.6rem 0.75rem !important;
    outline: none !important;
    font-size: 0.95rem !important;
    background: rgba(0, 0, 0, 0.15) !important;
    color: #444444 !important; }
  .form-style input::placeholder {
    color: rgba(68, 68, 68, 0.6) !important; }
  .form-style textarea {
    outline: none !important;
    font-family: Roboto-Regular;
    font-size: 0.95rem !important;
    background: rgba(0, 0, 0, 0.15) !important;
    color: #444444 !important; }
  .form-style textarea::placeholder {
    font-family: Roboto-Regular;
    color: rgba(68, 68, 68, 0.6) !important; }
  .form-style .wpcf7-form p {
    margin: 0;
    margin-bottom: 10px !important;
    line-height: 1; }
  .form-style .wpcf7-submit {
    padding: 10px 30px !important;
    font-size: 16px;
    border-radius: 0px !important;
    border: 2px solid #4a4a4a !important;
    color: #4a4a4a !important;
    cursor: pointer;
    background: linear-gradient(to right, #4a4a4a 50%, #fff 50%);
    background-size: 200% 100%;
    background-position: right bottom;
    transition: all 0.4s ease !important;
    margin-top: 20px !important; }
  .form-style .wpcf7-submit:hover {
    background-position: left bottom;
    color: #fff !important; }
  .form-style .wpcf7-not-valid-tip {
    color: #d5b284 !important; }
  .form-style .wpr-custom-chk-radio .wpcf7-checkbox .wpcf7-list-item-label:before {
    border-color: #4a4a4a !important; }

.wpcf7 form.sent .wpcf7-response-output {
  border-color: #46b450 !important;
  /* Green */ }

/* Den äußeren CF7-Wrapper für das Acceptance-Feld auf Flex setzen */
.custom-acceptance .wpcf7-form-control-wrap {
  display: block !important; }

/* Das entscheidende Label-Element direkt ansprechen */
.custom-acceptance .wpcf7-list-item {
  display: flex !important;
  align-items: flex-start !important;
  margin: 0 0 15px 0 !important; }

/* Sicherstellen, dass das Label-Tag innerhalb des Spans auch Flex nutzt */
.custom-acceptance label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  /* Der Abstand zwischen Box und Text */
  cursor: pointer; }

/* Die Checkbox vor dem Schrumpfen schützen */
.custom-acceptance input[type="checkbox"] {
  flex-shrink: 0 !important;
  margin-top: 5px !important;
  /* Richtet Box an der ersten Textzeile aus */ }

/* Den Text-Teil als Block behandeln, damit er sauber umbricht */
.custom-acceptance .wpcf7-list-item-label {
  display: block !important;
  line-height: 1.4 !important; }

.wpcf7-list-item-label::before {
  border-color: #4a4a4a !important;
  margin-right: 15px !important; }

.psc-controls button {
  border-radius: 4px;
  border: 2px solid #4a4a4a; }

.kacheln-netzwerk .elementor-icon-box-content {
  color: #4a4a4a; }

.if-immo-wrapper {
  font-family: Roboto-Regular !important;
  color: #4a4a4a !important; }
  .if-immo-wrapper h3 {
    font-weight: 600;
    letter-spacing: 1.2px; }

/*.mymodal {
    display: none;
    position: fixed;  Bleibt an Ort und Stelle 
    z-index: 1;  Über allem 
    left: 0; top: 0; width: 100%; height: 100%;
    overflow: auto;  Scrollbar, falls nötig 
    background-color: rgba(0,0,0,0.4);  Schwarzer, transparenter Hintergrund 
}

.modal-content {
    background-color: #fefefe;
    margin: 15% auto;  Zentriert 
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
}*/
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer; }

/* FOOTER */
#footer-pre {
  color: #fff; }
  #footer-pre p {
    color: #78787f; }
  #footer-pre a {
    color: #d5b284; }
  #footer-pre .search-form {
    display: flex; }
  #footer-pre .search-field {
    height: 40px;
    font-size: 16px;
    background-color: transparent;
    border: 1px solid #78787f;
    color: #78787f; }
  #footer-pre .search-submit {
    background-color: transparent;
    border: 1px solid #0bb4aa;
    color: #0bb4aa;
    margin-left: -1px;
    height: 40px;
    padding: 0 20px; }

#footer p {
  color: #78787f;
  font-size: 12px; }
#footer a {
  color: #d5b284; }

/* MEDIA QUERIES */
@media (max-width: 910px) {
  h1 {
    font-size: 38px !important;
    line-height: 1.2 !important; }

  h2 {
    font-size: 24px;
    margin: 0;
    line-height: 1.4 !important; }

  h3 {
    font-size: 20px; }

  /* NAV */
  .nav-wrapper {
    display: none; }

  .header-logo {
    padding-left: 10px;
    padding-right: 20px; }
    .header-logo a img {
      width: 100%; }

  .header-media .p-light {
    font-size: 15px; }

  .home-pre-headline {
    font-size: 31px;
    line-height: 40px; }

  .nav-menu {
    display: none;
    flex-direction: column;
    background: #fff;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    border-top: 1px solid #ddd;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); }

  .nav-menu li {
    margin: 0;
    border-bottom: 1px solid #eee; }

  .nav-menu li a {
    display: block;
    padding: 1rem; }

  .menu-toggle {
    display: block; }

  /* CONTENT */
  #header-home span {
    font-size: 40px;
    hyphens: auto; }

  .header-media h1 {
    font-size: 30px;
    color: #fff; }

  .acc-leistungen h2 {
    font-size: 20px !important; } }

/*# sourceMappingURL=style.css.map */
