/* ===== Immo Inhalts-/Leistungsseiten (Studio, Bewertung, Vermittlung, Tippgeber) ===== */
body#immo-content{ background: #fff; }

.immo-page{ padding: 150px 0 110px 0; }   /* Platz unter dem fixen Header */

/* Kopf / Hero */
.immo-hero{ max-width: 880px; }
.immo-eyebrow{ color: #8d8d8d; margin: 0 0 22px 0; }            /* p3, grau */
.immo-title{
    font-family: 'Archivo', Helvetica, Arial, sans-serif;
    font-weight: 600;
    font-size: 34px; line-height: 1.14;
    margin: 0 0 26px 0;
}
.immo-lead{
    font-size: 21px; line-height: 1.42; font-weight: 400;
    max-width: 760px; color: #000;
}

/* Allgemeine Abschnitte */
.immo-section{ margin-top: 92px; }
.immo-section > .section-label{ color: #8d8d8d; margin: 0 0 26px 0; }   /* p3 grau Überschrift */

/* Zwei-Spalten-Text */
.immo-cols{ display: grid; grid-template-columns: 1fr 1fr; gap: 28px 48px; }
.immo-cols h3{ font-size: 20px; font-weight: 600; margin: 0 0 12px 0; }
.immo-cols p{ font-size: 17px; line-height: 1.6; margin: 0; }

/* Nummerierte Schritte */
.immo-steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.immo-step .num{ color: #8d8d8d; font-size: 17px; }
.immo-step h4{ font-size: 20px; font-weight: 600; margin: 10px 0 12px 0; }
.immo-step p{ font-size: 17px; line-height: 1.6; margin: 0; }

/* Aufzählung */
.immo-list{ list-style: none; margin: 0; padding: 0; max-width: 720px; }
.immo-list li{ font-size: 17px; line-height: 1.55; padding: 14px 0 14px 26px; position: relative; border-top: 1px solid #ececec; }
.immo-list li:first-child{ border-top: none; }
.immo-list li:before{ content: '—'; position: absolute; left: 0; color: #8d8d8d; }
.immo-list li b{ font-weight: 600; }

/* Call-to-Action */
.immo-cta{ margin-top: 96px; padding-top: 50px; border-top: 1px solid #e6e6e6; }
.immo-cta .cta-lead{ font-size: 21px; line-height: 1.4; max-width: 640px; margin: 0 0 26px 0; }
a.immo-btn{
    display: inline-block; vertical-align: top;
    font-size: 17px; line-height: 1;
    padding: 15px 28px;
    border: 1.5px solid #000; color: #000;
    transition: background 0.25s ease, color 0.25s ease;
}
a.immo-btn:hover{ background: #000; color: #fff; }
.immo-cta .cta-note{ display: block; margin-top: 18px; color: #8d8d8d; font-size: 17px; }
.immo-cta .cta-note a{ color: #8d8d8d; }
.immo-cta .cta-note a:hover{ color: #000; }

/* ===== Tablet ===== */
@media (min-width: 768px) and (max-width: 1000px){
    .immo-steps{ grid-template-columns: 1fr 1fr; gap: 36px; }
}

/* ===== Mobile ===== */
@media (max-width: 768px){
    .immo-page{ padding: 100px 0 64px 0; }
    .immo-title{ font-size: 25px; }
    .immo-lead{ font-size: 18px; }
    .immo-section{ margin-top: 60px; }
    .immo-cols{ grid-template-columns: 1fr; gap: 28px; }
    .immo-steps{ grid-template-columns: 1fr; gap: 30px; }
    .immo-cta{ margin-top: 64px; }
    .immo-cta .cta-lead{ font-size: 18px; }
}
