*{
	padding: 0;
	margin: 0 ;
}

@font-face { font-family: Inter; src: url('Inter/Inter-VariableFont_slnt,wght.ttf'); } 

body{
    font-family: 'Poppins', sans-serif;
}

html {
  scroll-behavior: smooth;
}




/* =========================================================
   IMMOBILIEN HERO SECTION
   Individuelle Klassen damit nichts kollidiert
========================================================= */

.immohero-section{
    position: relative;
    width: 100%;
    max-height: 80vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    background: #111;
}

/* VIDEO */
.immohero-video{
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1;
}

/* OVERLAY */
.immohero-overlay{
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.45);
    z-index: 2;
}

/* CONTAINER */
.immohero-container{
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: 1400px;
    margin:10vh auto;
    padding: 80px 40px;
}

/* CONTENT BOX */
.immohero-content{
    max-width: 900px;
    background: rgba(30,30,30,0.55);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    padding: 70px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.08);
}

/* BADGE */
.immohero-badge{
    display: inline-block;
    background: #ffffff;
    color: #000;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 12px 18px;
    margin-bottom: 35px;
    text-transform: uppercase;
}

/* TITLE */
.immohero-title{
    font-size: 2.2em;
    line-height: 1.08;
    font-weight: 600;
    color: #fff;
    margin-bottom: 35px;
    font-family: "Georgia", serif;
}

/* TEXT */
.immohero-text{
    font-size: 1.0em;
    line-height: 1.7;
    color: rgba(255,255,255,0.92);
    max-width: 820px;
    margin-bottom: 45px;
}

/* BUTTONS */
.immohero-buttons{
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

/* PRIMARY BUTTON */
.immohero-btn-primary{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 18px 34px;
    background: #d87803;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.immohero-btn-primary:hover{
    background: #a85e04;
    transform: translateY(-2px);
}

/* SECONDARY BUTTON */
.immohero-btn-secondary{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 18px 34px;
    border: 1px solid rgba(255,255,255,0.4);
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.immohero-btn-secondary:hover{
    background: rgba(255,255,255,0.08);
    border-color: rgba(255,255,255,0.8);
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991px){

    .immohero-container{
        padding: 40px 24px;
    }

    .immohero-content{
        padding: 45px 30px;
    }

    .immohero-text{
        font-size: 18px;
        line-height: 1.6;
    }

    .immohero-section{
    max-height: none;
    }
}

@media (max-width: 600px){

    .immohero-section{
        min-height: 90vh;
    }

    .immohero-content{
        padding: 35px 22px;
    }

    .immohero-badge{
        font-size: 12px;
        padding: 10px 14px;
    }

    .immohero-text{
        font-size: 16px;
    }

    .immohero-buttons{
        flex-direction: column;
    }

    .immohero-btn-primary,
    .immohero-btn-secondary{
        width: 70%;
        margin-left: auto;
        margin-right: auto;
    }
}





.headline-main-h2{
    font-weight: 700;
    letter-spacing: -1px;
    position: relative;
    text-align:center;
    font-size: 1.8em;
    margin-top:4vh;
    font-family: 'Inter';
}

.headline-main-h3{
    font-weight: 300;
    letter-spacing: -1px;
    position: relative;
    text-align:center;
    font-size: 1.3em;
    margin-top:1vh;
}








/* =========================
   GX Counter Section
========================= */


.gx-counter-wrapper {
  width: 90%;
  max-width: 1000px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 5vh;
}

.gx-counter-item {
  flex: 1;
  text-align: center;
}

.gx-counter-number {
  font-size: 3.5em;
  font-weight: 500;
  line-height: 1;
  color: #3a261f;
  letter-spacing: -2px;
  margin-bottom: 14px;
  font-family: Georgia, serif;
}

.gx-counter-label {
  font-size: 1em;
  letter-spacing: 4px;
  color: #6f625c;
  text-transform: uppercase;
  font-weight: 400;
}

.gx-counter-divider {
  width: 1px;
  height: 140px;
  background: rgba(0,0,0,0.12);
}

/* =========================
   Responsive
========================= */

@media (max-width: 768px) {

  .gx-counter-wrapper {
    flex-direction: column;
    gap: 40px;
  }

  .gx-counter-divider {
    width: 80px;
    height: 1px;
  }

}














/* ========================================
   GX Immobilienverkauf Schritte
======================================== */

.gx-sale-steps-section {
  width: 100%;
  padding: 100px 20px;
  background: #f8f8f8;
}

.gx-sale-steps-container {
  max-width: 1280px;
  margin: 8vh auto;
}

.gx-sale-steps-title {
  text-align: center;
  font-size: 2em;
  font-weight: 700;
  color: #1d1d1d;
  margin-bottom: 50px;
  line-height: 1.2;
}

/* ========================================
   GRID
======================================== */

.gx-sale-steps-grid {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 24px;
width: 95%;
max-width: 1200px;
margin-left: auto;
margin-right: auto;
  flex-wrap: nowrap;
}

/* ========================================
   CARD
======================================== */

.gx-sale-step-card {
  position: relative;
  width: 100%;
  flex: 1 1 0;
  max-width: 380px;

  padding-top: 25px;
    padding-bottom: 15px;
    padding-left: 10px;
    padding-right: 10px;

  border-radius: 28px;

  background:
    linear-gradient(
      145deg,
      rgba(247, 144, 26, 0.12),
      rgba(247, 144, 26, 0.03)
    );

  border: 1px solid rgba(247, 144, 26, 0.18);

  backdrop-filter: blur(12px);

  box-shadow:
    0 10px 35px rgba(0,0,0,0.06),
    0 2px 10px rgba(247, 144, 26, 0.08);

  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease,
    border-color 0.35s ease;
}

.gx-sale-step-card:hover {
  transform: translateY(-10px);

  border-color: rgba(247, 144, 26, 0.35);

  box-shadow:
    0 20px 50px rgba(0,0,0,0.10),
    0 10px 25px rgba(247, 144, 26, 0.15);
}

/* ========================================
   ICON
======================================== */

.gx-sale-step-icon {
  width: 92px;
  height: 92px;

  margin: 0 auto 34px;

  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  font-size: 42px;

  background:
    linear-gradient(
      145deg,
      #f7901a,
      #ffb04d
    );

  color: #fff;

  box-shadow:
    0 10px 25px rgba(247, 144, 26, 0.35);
}

/* ========================================
   TEXT
======================================== */

.gx-sale-step-heading {
  text-align: center;
  font-size: 1.5em;
  font-weight: 700;
  color: #111;

  margin-bottom: 24px;
  line-height: 1.2;
}

.gx-sale-step-text {
  text-align: center;

  font-size: 1em;
  line-height: 1.8;

  color: #555;
}

/* ========================================
   ARROW
======================================== */

.gx-sale-step-arrow {
  font-size: 52px;
  color: #f7901a;
  font-weight: 300;
  display: block;
  margin-top:7vh;
  opacity: 0.9;
}

/* ========================================
   RESPONSIVE
======================================== */

@media (max-width: 1050px) {

  .gx-sale-steps-grid {
    flex-direction: column;
  }

  .gx-sale-step-arrow {
    transform: rotate(90deg);
    display: none;
  }

  .gx-sale-step-card {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 10px;
    padding-right: 10px;
    min-height: auto;
    margin-left: auto;
    margin-right: auto;
  }

}

@media (max-width: 768px) {

  .gx-sale-steps-section {
    padding: 70px 20px;
  }

  .gx-sale-steps-title {
    margin-bottom: 50px;
  }



  .gx-sale-step-icon {
    width: 78px;
    height: 78px;
    font-size: 34px;
  }

}


@media (max-width: 430px) {

  .gx-sale-step-card {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 0px;
    padding-right: 0px;
    min-height: auto;
    margin-left: auto;
    margin-right: auto;
  }

}










.immo-about-container {
  width: 90%;
  max-width: 1200px;
  margin: 10vh auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
  align-items: center;
}

/* LEFT SIDE */
.immo-about-subtitle {
  font-size: 14px;
  color: #777;
  display: block;
  margin-bottom: 10px;
}

.immo-about-title {
  font-size: 42px;
  line-height: 1.2;
  margin-bottom: 20px;
  color: #222;
}

.immo-about-text {
  font-size: 16px;
  line-height: 1.6;
  color: #555;
  margin-bottom: 30px;
}

.immo-about-stats {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}

.immo-about-stat h3 {
  font-size: 32px;
  margin-bottom: 5px;
  color: #222;
}

.immo-about-stat p {
  font-size: 14px;
  color: #666;
}

/* RIGHT SIDE */
.immo-about-image-wrapper {
  text-align: center;
}

.immo-about-image {
  width: 100%;
  max-width: 400px;
  margin:0 auto;
  border-radius: 12px;
  object-fit: cover;
}

.immo-about-image-caption {
  margin-top: 15px;
  font-size: 14px;
  color: #555;
}

/* 📱 RESPONSIVE */
@media (max-width: 992px) {
  .immo-about-container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .immo-about-title {
    font-size: 32px;
  }

  .immo-about-stats {
    justify-content: center;
  }
}

@media (max-width: 600px) {
  .immo-about-title {
    font-size: 26px;
  }

  .immo-about-text {
    font-size: 15px;
  }

  .immo-about-stat h3 {
    font-size: 26px;
  }
}











.immo-about {
  padding: 80px 20px;
  background: #f7f7f7;
  font-family: Arial, sans-serif;
}

.immo-about__container {
  width: 90%;
  max-width: 1200px;
  margin: 8vh auto;
  display: flex;
  gap: 60px;
  align-items: center;
}

/* IMAGE */
.immo-about__image-wrapper {
  position: relative;
  flex: 1;
  min-width: 300px;
}

.immo-about__image {
  width: 100%;
  height: 520px;
  object-fit: cover;
  border-radius: 18px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.12);
}

/* Badge overlay */
.immo-about__image-badge {
  position: absolute;
  bottom: 20px;
  left: 20px;
  background: rgba(255,255,255,0.9);
  padding: 10px 16px;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 600;
  color: #111;
}

/* TEXT */
.immo-about__content {
  flex: 1;
}

.immo-about__headline {
  font-size: 34px;
  line-height: 1.2;
  margin-bottom: 20px;
  color: #111;
}

.immo-about__text {
  font-size: 16px;
  line-height: 1.7;
  color: #555;
  margin-bottom: 15px;
}

/* BUTTON */
.immo-about__btn {
  display: inline-block;
  margin-top: 20px;
  padding: 14px 22px;
  background: #111;
  color: #fff;
  text-decoration: none;
  border-radius: 10px;
  transition: 0.3s ease;
  font-weight: 500;
}

.immo-about__btn:hover {
  background: #333;
  transform: translateY(-2px);
}

/* RESPONSIVE */
@media (max-width: 900px) {
  .immo-about__container {
    flex-direction: column;
  }

  .immo-about__image {
    height: 380px;
  }

  .immo-about__headline {
    font-size: 28px;
  }
}










.review-box{
  position: relative;
  display: block;
  width: auto;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  align-items: center;
  margin-top:2vh;
}


    .mk-review-widget {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      font-family: Arial, Helvetica, sans-serif;
      background: #ffffff;
      padding: 10px 14px;
      border-radius: 14px;
      width: auto;
    }

    /* Bewertung Zahl */
    .mk-review-score {
      font-size: 42px;
      font-weight: 700;
      line-height: 1;
      color: #111111;
      letter-spacing: -1px;
    }

    /* Rechte Seite */
    .mk-review-content {
      display: flex;
      flex-direction: column;
      justify-content: center;
      gap: 4px;
    }

    /* Sterne */
    .mk-review-stars {
      display: flex;
      align-items: center;
      gap: 4px;
    }

    .mk-review-star {
      width: 14px;
      height: 14px;
      background: #7bd89c;
      clip-path: polygon(
        50% 0%,
        61% 35%,
        98% 35%,
        68% 57%,
        79% 91%,
        50% 70%,
        21% 91%,
        32% 57%,
        2% 35%,
        39% 35%
      );
    }

    /* Reviews Text */
    .mk-review-text {
      font-size: 13px;
      color: #9b9b9b;
      line-height: 1;
      font-weight: 500;
    }

    /* =========================
       Responsive
    ========================== */

    @media (max-width: 600px) {

      .mk-review-widget {
        gap: 10px;
        padding: 8px 12px;
      }

      .mk-review-score {
        font-size: 34px;
      }

      .mk-review-star {
        width: 12px;
        height: 12px;
      }

      .mk-review-text {
        font-size: 12px;
      }
    }





















    .mk-testimonial-grid {
      width: 90%;
      max-width: 1200px;
      margin: 2vh auto;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 28px;
    }

    /* ====================================
       CARD
    ==================================== */

    .mk-testimonial-card {
      background: #f5f5f5;
      border-radius: 24px;
      padding: 15px;
      transition: all 0.3s ease;
      position: relative;
      overflow: hidden;
    }

    .mk-testimonial-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 18px 40px rgba(0,0,0,0.08);
    }

    /* Leichtes modernes Muster */
    .mk-testimonial-card::before {
      content: "";
      position: absolute;
      width: 220px;
      height: 220px;
      right: -120px;
      top: -120px;
      border-radius: 50%;
      background: rgba(255, 170, 90, 0.06);
    }

    /* ====================================
       HEADER
    ==================================== */

    .mk-testimonial-header {
      display: flex;
      align-items: center;
      gap: 16px;
      margin-bottom: 24px;
      position: relative;
      z-index: 2;
    }

    /* Avatar */
    .mk-testimonial-avatar {
      width: 52px;
      height: 52px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #ffffff;
      font-size: 24px;
      font-weight: 700;
      flex-shrink: 0;
    }

    .mk-avatar-orange {
      background: #f57c1f;
    }

    .mk-avatar-blue {
      background: #5a72ea;
    }

    .mk-avatar-green {
      background: #22c55e;
    }

    /* Name + Sterne */
    .mk-testimonial-user {
      display: flex;
      flex-direction: column;
      gap: 4px;
    }

    .mk-testimonial-name {
      font-size: 18px;
      font-weight: 700;
      color: #111111;
      line-height: 1.2;
    }

    .mk-testimonial-stars {
      color: #f7c948;
      font-size: 14px;
      letter-spacing: 2px;
    }

    /* ====================================
       TEXT
    ==================================== */

    .mk-testimonial-text {
      font-size: 1em;
      line-height: 1.5;
      color: #2f2f2f;
      position: relative;
      z-index: 2;
    }

    /* ====================================
       RESPONSIVE
    ==================================== */

    @media (max-width: 1100px) {

      .mk-testimonial-grid {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    @media (max-width: 768px) {

      .mk-testimonial-grid {
        grid-template-columns: 1fr;
      }

      .mk-testimonial-card {
        padding: 24px;
      }

      .mk-testimonial-name {
        font-size: 17px;
      }
    }

    @media (max-width: 480px) {

      .mk-testimonial-section {
        padding: 20px 12px;
      }

      .mk-testimonial-card {
        border-radius: 20px;
        padding: 22px;
      }

      .mk-testimonial-avatar {
        width: 48px;
        height: 48px;
        font-size: 20px;
      }

    }








  .headline-h5{
    position: relative;
    text-align: center;
    font-family: 'Inter';
    color: #000;
    font-weight: 600;
    font-size: 2em;
    margin-top:7vh;
  }
    .headline-h5-2{
    position: relative;
    text-align: center;
    font-family: 'Inter';
    color: #000;
    font-weight: 600;
    font-size: 1.5em;
    margin-top:2vh;
  }
  .headline-splitter{
    position: relative;
    width: 70%;
    max-width: 150px;
    height: 4px;
    background-color: #f68f1a;
    margin-left: auto;
    margin-right: auto;
    margin-top:1vh;
  }


  .headline-splitter2{
    position: relative;
    width: 70%;
    max-width: 150px;
    height: 4px;
    background-color: #f68f1a;
    margin-left: auto;
    margin-right: auto;
    margin-top:7vh;
  }




.text-div{
  position: relative;
  width: 90%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  margin-top:5vh;
}
.text-div2{
  position: relative;
  width: 90%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  margin-top:8vh;
}

.text-div-headline{
  position: relative;
  font-family: 'Inter';
  font-size: 1.5em;
  color:#000;
}

.text-div-headline2{
  position: relative;
  font-family: 'Inter';
  font-size: 1.5em;
  color:#000;
  margin-top:7vh;
}

.text-div-p{
  position: relative;
  font-family: 'Inter';
  line-height: 1.3;
  font-size: 1.1em;
  color:#000;
  margin-top:0.5vh;
}

.text-div-p2{
  position: relative;
  font-family: 'Inter';
  line-height: 1.3;
  font-size: 1.1em;
  color:#000;
  margin-top:3vh;
}

.text-div-p3{
  position: relative;
  font-family: 'Inter';
  line-height: 1.3;
  font-size: 1.1em;
  color:#000;
  margin-top:1vh;
}

.span-headline{
  position: relative;
  font-weight: 700;
  font-size:1.1em;
}








.mk-value-section {
  background: #f3efe9;
  padding: 70px 20px;
  overflow: hidden;
  margin-top: 7vh;
}

.mk-value-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* =========================
   HEADING
========================= */

.mk-value-heading {
  text-align: center;
  margin-bottom: 30px;
  max-width: 750px;
  margin-left: auto;
   margin-right: auto;
}

.mk-value-heading h3 {
  margin: 0;
  color: #5f4938;
  font-family: "Cormorant Garamond", serif;
  font-size: 3em;
  line-height: 0.95;
  font-weight: 400;
  letter-spacing: -1px;
}

.mk-value-subtitle {
  display: block;
  margin-top: 35px;
  color: #8b6d57;
  font-size: 0.8em;
  letter-spacing: 5px;
  font-weight: 500;
  text-transform: uppercase;
  font-family: Arial, sans-serif;
}

.mk-value-divider {
  width: 80px;
  height: 1px;
  background: #c8b6a4;
  margin: 28px auto 0;
}

/* =========================
   CONTENT
========================= */

.mk-value-content {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 80px;
  align-items: start;
}

.mk-value-text p {
  margin: 0;
  color: #645448;
  font-size: 1em;
  line-height: 1.95;
  font-weight: 500;
  font-family: "Helvetica Neue", Arial, sans-serif;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 992px) {
  .mk-value-section {
    padding: 90px 24px;
  }

  .mk-value-content {
    gap: 50px;
  }

}

@media (max-width: 768px) {
  .mk-value-section {
    padding: 70px 20px;
  }

  .mk-value-heading {
    margin-bottom: 55px;
    line-height: 1.5;
  }

  .mk-value-content {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .mk-value-subtitle {
    margin-top: 28px;
    letter-spacing: 3px;
    font-size: 0.75rem;
  }

}




.inhaltsverzeichnis-div{
  position: relative;
  width: 100%;
  padding-top: 2vh;
  padding-bottom: 2vh;
  background-color: #e0e0e0;
}

.inhaltsverzeichnis-div-txt{
  position: relative;
  width: 90%;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

.link-text-Inhaltsverzeichnis{
  position: relative;
  font-size: 1.1em;
  font-weight: 700;
}

.link-text-Inhaltsverzeichnis2{
  position: relative;
  font-size: 1em;
  line-height: 1.6;
  color: #de3113;
  transition: 0.5s;
  cursor: pointer;
  text-decoration: none;
}
.link-text-Inhaltsverzeichnis2:hover{
  color: #136ede;
}



.a-link{
  color: #de3113;
  transition: 0.5s;
  cursor: pointer;
  text-decoration: none;
}
.a-link:hover{
  color: #136ede;
}




.mk-parallax-section {
  position: relative;
  height: auto;

  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 10vh;
  padding-bottom: 10vh;
}

/* =========================================
   PARALLAX BACKGROUND
========================================= */

.mk-parallax-bg {
  position: absolute;
  inset: 0;

  /* HIER DEIN BILD EINSETZEN */
  background-image: url("https://www.immobilie-verkauf-hamburg.de/ihr-immobilienmakler-hamburg.webp");

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  /* MODERNER PARALLAX EFFEKT */
  background-attachment: fixed;

  transform: scale(1.08);
  z-index: 1;
}

/* Dunkler Overlay */
.mk-parallax-overlay {
  position: absolute;
  inset: 0;
  background: rgba(15, 20, 30, 0.42);
  z-index: 2;
}

/* =========================================
   CONTENT CONTAINER
========================================= */

.mk-parallax-container {
  position: relative;
  z-index: 5;
  width: 100%;
  max-width: 1400px;
}

/* =========================================
   GLASSMORPHISM CARD
========================================= */

.mk-parallax-card {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;

  padding-top:3vh;
  padding-bottom:3vh;

  background: rgba(255, 255, 255, 0.72);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  border: 1px solid rgba(255, 255, 255, 0.25);

  box-shadow:
    0 10px 40px rgba(0, 0, 0, 0.12),
    0 2px 10px rgba(0, 0, 0, 0.08);

  text-align: center;
}

/* =========================================
   TYPOGRAPHY
========================================= */



.mk-parallax-footer {
  margin-top: 3vh;

  font-size: 1.1rem;
  font-weight: 500;


  letter-spacing: 0.5px;
}

/* =========================================
   RESPONSIVE
========================================= */



.mk-info-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* =========================================
   HEADER
========================================= */

.mk-info-header {
  text-align: center;
}

.mk-info-title {
  margin: 0;

  font-size: 2em;
  line-height: 1.15;

  font-weight: 700;
  color: #3b2a20;

  font-family: 'Cormorant Garamond', serif;
}

.mk-info-subtitle {
  margin-top: 1vh;

  font-size: 1.5em;
  line-height: 1.3;

  color: #3b2a20;

  font-weight: 300;
  font-family: 'Cormorant Garamond', serif;
}

/* =========================================
   DIVIDER
========================================= */

.mk-info-divider {
  display: block;
  width: 70%;
  height: 1px;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3vh;
  background: #363636;

}

/* =========================================
   CONTENT
========================================= */

.mk-info-content {
  display: block;
  max-width: 900px;
  margin-top: 3vh;
  margin-left: auto;
  margin-right: auto;
}

.mk-info-text {
  margin: 0;
  width: 94%;
  margin-left: auto;
  margin-right: auto;

  font-size: 1.1em;
  line-height: 1.7;

  color: #1f1f1f;

  font-family: "Helvetica Neue", Arial, sans-serif;
  font-weight: 400;
}

/* =========================================
   RESPONSIVE
========================================= */








.immo-section-x91 {
      width: 100%;
      padding: 60px 20px;
      background: #f5f5f5;
      box-sizing: border-box;
      font-family: Arial, sans-serif;
    }

    .immo-container-x91 {
      max-width: 1200px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      gap: 50px;
    }

    /* ===== Bild ===== */
    .immo-image-wrapper-x91 {
      flex: 1;
      min-width: 320px;
    }

    .immo-video-x91 {
      width: 100%;
      display: block;
      border-radius: 12px;
      object-fit: cover;
      box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    }

    /* ===== Text ===== */
    .immo-content-x91 {
      flex: 1;
      min-width: 320px;
    }

    .immo-title-x91 {
      font-size: 2em;
      line-height: 1.2;
      margin-bottom: 25px;
      color: #111;
      font-weight: 700;
    }

    .immo-text-x91 {
      font-size: 1em;
      line-height: 1.8;
      color: #333;
      margin-bottom: 25px;
    }

    /* ===== Responsive ===== */
    @media (max-width: 900px) {
      .immo-container-x91 {
        flex-direction: column;
        gap: 35px;
      }
    }


    .image-ablauf-immobilienverkauf{
      position: relative;
      display: block;
      width: 90%;
      max-width: 1200px;
      margin-left: auto;
      margin-right: auto;
      margin-top: 3vh;
    }













    .immochart-wrapper {
      max-width: 1200px;
      margin: 60px auto;
      padding: 0 20px;
      font-family: Arial, sans-serif;
      color: #222;
    }

    /* =========================
       CARD
    ========================== */

    /* =========================
       TABLE
    ========================== */
    .immochart-table-wrapper {
      margin-top: 40px;
      overflow-x: auto;
    }

    .immochart-table {
      width: 100%;
      border-collapse: collapse;
      min-width: 700px;
      overflow: hidden;
      border-radius: 18px;
    }

    .immochart-table thead {
      background: #f7a400;
      color: #fff;
    }

    .immochart-table th {
      padding: 20px;
      text-align: left;
      font-size: 18px;
      font-weight: 700;
    }

    .immochart-table td {
      padding: 18px 20px;
      background: #fff;
      border-bottom: 1px solid #ececec;
      font-size: 16px;
    }

    .immochart-table tbody tr:nth-child(even) td {
      background: #f9f9f9;
    }

    .immochart-table tbody tr:hover td {
      background: #fff7e8;
      transition: 0.3s;
    }

    /* =========================
       RESPONSIVE
    ========================== */
    @media (max-width: 768px) {

      .immochart-card {
        padding: 25px 15px;
      }

      .immochart-title {
        font-size: 24px;
        margin-bottom: 25px;
      }

      .immochart-graph {
        height: 280px;
        padding: 15px;
      }

      .immochart-table th,
      .immochart-table td {
        padding: 14px;
        font-size: 14px;
      }

      .immochart-info {
        font-size: 14px;
      }
    }



      .immochartjs-wrapper {
    position: relative;
    width: 96%;
    max-width: 1200px;
    height: 450px;
    margin: 0 auto;
    padding: 15px;
    background: #f7f7f7;
    border-radius: 24px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
    margin-top:2vh;
  }

  #immochartjs-chart {
    width: 100% !important;
    height: 100% !important;
  }

  @media (max-width: 768px) {

    .immochartjs-wrapper {
      height: 320px;
      padding: 7px;
      border-radius: 18px;
      margin-top:0vh;
    }
  }















   .mrcards-section {
      width: 100%;
      padding: 60px 20px;
      background: #f5f5f5;
      box-sizing: border-box;
    }

    /* =========================
       GRID
    ========================== */
    .mrcards-grid {
      width: 90%;
      max-width: 1000px;
      margin: 3vh auto;
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 22px;
    }

    /* =========================
       CARD
    ========================== */
    .mrcards-item {
      background: #ffffff;
      padding: 45px 30px;
      text-align: center;
      position: relative;
      transition: all 0.35s ease;
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 8px 24px rgba(0,0,0,0.06);
    }

    /* TOP LINE */
    .mrcards-item::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 6px;
      background: #e8b238;
    }

    /* HOVER */
    .mrcards-item:hover {
      transform: translateY(-8px);
      box-shadow: 0 16px 35px rgba(0,0,0,0.10);
    }

    /* TITLE */
    .mrcards-title {
      font-size: 1.2em;
      font-weight: 700;
      color: #1f1f1f;
      margin-bottom: 22px;
      line-height: 1.2;
    }

    /* TEXT */
    .mrcards-text {
      font-size: 17px;
      line-height: 1.8;
      color: #666;
      margin-bottom: 35px;
    }

    /* =========================
       RESPONSIVE
    ========================== */

    /* Tablet */
    @media (max-width: 1100px) {

      .mrcards-grid {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    /* Mobile */
    @media (max-width: 680px) {

      .mrcards-grid {
        grid-template-columns: 1fr;
      }

      .mrcards-item {
        padding: 35px 25px;
      }


      .mrcards-text {
        font-size: 16px;
      }
    }














    .kv-hero {
    padding: 30px 30px;
    background: #f7f2ed;
    margin: 7vh auto;
}

.kv-container {
    max-width: 1400px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    overflow: hidden;
    border-radius: 12px;
    background: transparent;
}

.kv-image-wrapper {
    height: 100%;
}

.kv-image {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}

.kv-content {
    padding: 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.kv-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #ffffff;
    padding: 10px 18px;
    border-radius: 8px;
    width: fit-content;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
    color: #333;
    margin-bottom: 30px;
}

.kv-badge-dot {
    width: 10px;
    height: 10px;
    background: #f08a24;
    border-radius: 50%;
}

.kv-title {
    font-size: clamp(42px, 5vw, 78px);
    line-height: 1.05;
    font-weight: 700;
    color: #352f2c;
    margin-bottom: 30px;
}

.kv-text {
    font-size: 18px;
    line-height: 1.8;
    color: #666;
    max-width: 600px;
    margin-bottom: 40px;
}

.kv-btn {
    display: inline-flex;
    align-items: center;
    gap: 18px;
    background: #1f1a17;
    color: #fff;
    text-decoration: none;
    padding: 18px 32px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 16px;
    transition: all .3s ease;
    width: fit-content;
}

.kv-btn:hover {
    background: #000;
    transform: translateY(-2px);
}

.kv-btn-icon {
    color: #f08a24;
    font-size: 26px;
    line-height: 1;
}

/* ==========================
   TABLET
========================== */

@media (max-width: 1024px) {

    .kv-content {
        padding: 60px;
    }

    .kv-title {
        font-size: 56px;
    }
}

/* ==========================
   MOBILE
========================== */

@media (max-width: 768px) {

    .kv-container {
        grid-template-columns: 1fr;
    }

    .kv-image-wrapper {
        min-height: 350px;
    }

    .kv-content {
        padding: 40px 30px;
    }

    .kv-title {
        font-size: 42px;
    }

    .kv-text {
        font-size: 16px;
        line-height: 1.7;
    }

    .kv-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {

    .kv-hero {
        padding: 20px 15px;
    }

    .kv-image-wrapper {
        min-height: 260px;
    }

    .kv-title {
        font-size: 34px;
    }

    .kv-content {
        padding: 30px 20px;
    }
}




    .img-makler-hamburg{
      position: relative;
      width: 90%;
      max-width: 1200px;
      height:auto;
      margin-top:7vh;
      margin-left: auto;
      margin-right: auto;
    }














.form-box-plz{
  position: relative;
  padding-top: 1vh;
  padding-bottom: 2vh;
}

    .iml-wrap-x1 {
  width: 100%;
  min-height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #f4f4f4;
  padding: 20px;
  box-sizing: border-box;
  font-family: Arial, sans-serif;
  padding-top:7vh;
  padding-bottom:7vh;
  margin-top:4vh;
}

.iml-box-x1 {
  width: 100%;
  max-width: 650px;
  background: #fff;
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
}

/* =========================
   PROGRESS
========================= */

.iml-progress-x1 {
  height: 6px;
  background: #eee;
  border-radius: 50px;
  overflow: hidden;
  margin-bottom: 25px;
}

.iml-progress-bar-x1 {
  height: 100%;
  width: 25%;
  background: #ff7a00;
  transition: 0.3s ease;
}

/* =========================
   STEPS
========================= */

.iml-step-x1 {
  display: none;
}

.iml-step-x1.active {
  display: block;
}

.iml-title-x1 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 18px;
}

.iml-title-x2 {
  font-size: 1.1em;
  font-weight: 500;
  margin-bottom: 18px;
}

/* =========================
   PROPERTY TYPES
========================= */

.iml-grid-x1 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.iml-card-x1 {
  border: 2px solid #eee;
  border-radius: 12px;
  padding: 14px;
  text-align: center;
  cursor: pointer;
  transition: 0.2s;
}

.iml-card-x1:hover {
  border-color: #ff7a00;
}

.iml-card-x1.active {
  border-color: #ff7a00;
  background: #fff6ee;
}


.iml-card-x1-2 {
  border: 2px solid #eee;
  border-radius: 12px;
  padding: 14px;
  text-align: center;
  cursor: pointer;
  transition: 0.2s;
}

.iml-card-x1-2:hover {
  border-color: #ff7a00;
}

.iml-card-x1-2.active {
  border-color: #ff7a00;
  background: #fff6ee;
}

/* =========================
   INPUTS
========================= */

.iml-input-x1 {
  width: 90%;
  display: block;
  padding: 12px;
  border-radius: 10px;
  border: 1px solid #ddd;
  margin-top: 10px;
  font-size: 15px;
  margin-left: auto;
  margin-right: auto;
}

/* =========================
   SLIDER
========================= */

.iml-slider-wrap-x1 {
  margin-top: 15px;
}

.iml-slider-x1 {
  width: 100%;
}

.iml-value-x1 {
  margin-top: 8px;
  font-weight: bold;
}

/* =========================
   ZIMMER COUNTER
========================= */

.iml-counter-x1 {
  display: flex;
  align-items: center;
  justify-content: center; 
  gap: 10px;
  margin-top: 10px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 2vh;
}

.iml-btn-x1 {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  border: none;
  background: #ff7a00;
  color: white;
  font-size: 20px;
  cursor: pointer;
}

.rooms-text{
  font-size: 1.1em;
  font-weight: 600;
}

/* =========================
   BUTTONS
========================= */

.iml-actions-x1 {
  display: flex;
  justify-content: space-between;
  margin-top: 25px;
  gap: 10px;
}

.iml-next-x1,
.iml-back-x1 {
  padding: 12px 18px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  font-weight: bold;
  font-size: 1em;
}

.iml-next-x1 {
  background: #ff7a00;
  color: white;
  width: 100%;
}

.iml-back-x1 {
  background: #eee;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 600px) {
  .iml-grid-x1 {
    grid-template-columns: 1fr;
  }
}









.iml-slider-wrap-x1{
    display:flex;
    align-items:center;
    gap:40px;

    padding-top:3vh;
    padding-bottom:3vh;
}

/* Icon links */
.iml-icon-x1{
    flex-shrink:0;
}

.iml-icon-x1 img{
    width:60px;
    height:60px;
    object-fit:contain;
}

/* Slider Bereich */
.iml-slider-content-x1{
    flex:1;
}

/* Mobile Ansicht */
@media (max-width: 700px){

    .iml-slider-wrap-x1{
        flex-direction:column;
        align-items:center;
        text-align:center;
    }

    .iml-icon-x1{
        margin-bottom:10px;
    }

    .iml-slider-content-x1{
        width:100%;
    }
}


.lable-zimmer-text{
  position: relative;
  font-family: 'Inter';
  font-size:1em;
  font-weight: 600;
  text-align: center;
  margin-top:1vh;
}











/* Wrapper */
.immo-form-wrapper {
  max-width: 500px;
  margin: 0 auto;
  padding: 20px;
  font-family: system-ui, -apple-system, sans-serif;
}

/* Reihen */
.immo-form-row {
  margin-bottom: 15px;
  width: 95%;
}

/* Grid */
.immo-form-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

/* Inputs */
.immo-form-input {
  width: 100%;
  padding: 14px 10px;
  border: 1px solid #ddd;
  border-radius: 8px;
  font-size: 15px;
  transition: all 0.2s ease;
  background: #fff;
}

.immo-form-input:focus {
  border-color: #007aff;
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,122,255,0.1);
}

/* Radio */
.immo-form-radio {
  display: flex;
  gap: 20px;
}

.immo-form-radio-item {
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  font-size: 15px;
}

.immo-form-radio-item input {
  accent-color: #007aff;
  width: 16px;
  height: 16px;
}

/* Hinweistext */
.immo-form-note {
  font-size: 13px;
  color: #555;
  line-height: 1.4;
}

/* Switch */
.immo-form-switch-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top:1vh;
}

.immo-form-switch {
  position: relative;
  width: 42px;
  height: 24px;
  flex-shrink: 0;
}

.immo-form-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.immo-form-slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background-color: #ccc;
  border-radius: 30px;
  transition: 0.3s;
}

.immo-form-slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  top: 3px;
  background-color: white;
  border-radius: 50%;
  transition: 0.3s;
}

.immo-form-switch input:checked + .immo-form-slider {
  background-color: #007aff;
}

.immo-form-switch input:checked + .immo-form-slider:before {
  transform: translateX(18px);
}

/* Switch Text */
.immo-form-switch-text {
  font-size: 13px;
  line-height: 1.4;
  color: #333;
}

/* Responsive */
@media (max-width: 600px) {
  .immo-form-grid-2 {
    grid-template-columns: 1fr;
  }
}









  footer {
    background: #1A1E25;
    color:#ebebeb;
	padding-top: 3vh;
	padding-bottom: 6vh;
	font-family: 'Inter';
  margin-top:5vh;
}

footer p {
    text-align: center;
	font-family: 'Inter';
	font-size:0.9em;
	margin-top:1em;
}




















/* ===== NAVIGATION (PREFIX: sf-nav) ===== */

.sf-nav {
width: 94%;
  max-width: 1200px;
  position: fixed;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999;
  font-family: Arial, sans-serif;
}

/* TOP BAR */
.sf-nav__top {
  background: #f7901a;
  color: #333;
  font-size: 0.85rem;
  display: flex;
  justify-content: space-between;
  padding: 8px 5%;
  flex-wrap: wrap;
  border-radius: 20px 20px 0 0 ;
}

.sf-nav__top span,
.sf-nav__top a {
  margin-right: 15px;
  text-decoration: none;
  color: inherit;
  color:#fff;
}

/* MAIN NAV */
.sf-nav__main {
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 5%;
  box-shadow: 0 5px 20px rgba(0,0,0,0.08);
  border-radius: 0 0 20px 20px;
}

/* LOGO */
.sf-nav__logo img {
  height: 45px;
}

/* MENU */
.sf-nav__menu {
  display: flex;
  gap: 25px;
}

.sf-nav__menu a {
  text-decoration: none;
  color: #333;
  font-weight: 500;
  transition: 0.3s;
}

.sf-nav__menu a:hover {
  color: #f7901a;
}

/* CTA BUTTON */
.sf-nav__cta {
  background: #000000;
  color: #fff;
  padding: 10px 18px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: bold;
  transition: 0.3s;
}

.sf-nav__cta:hover {
  background: #252525;
}

/* BURGER */
.sf-nav__burger {
  display: none;
  font-size: 1.8rem;
  cursor: pointer;
}

/* RESPONSIVE */
@media (max-width: 900px) {

  .sf-nav__menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    flex-direction: column;
    align-items: center;
    padding: 20px 0;
    gap: 15px;
    display: none;
  }

  .sf-nav__menu.active {
    display: flex;
  }

    .sf-nav__logo img {
  height: 35px;
}

  .sf-nav__burger {
    display: block;
  }

  .sf-nav__cta {
    display: none;
  }

  .sf-nav__top {
    flex-direction: column;
    gap: 5px;
  }

  .sf-nav__main {
    border-radius: 0 0 0px 0px;
  }

  .sf-hero__title{
    position: relative;
    margin-top: 11vh;
  }
}