@font-face {
  font-family: 'Manrope';
  src: url('/fonts/manrope-v20-latin_latin-ext-300.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Manrope';
  src: url('/fonts/manrope-v20-latin_latin-ext-regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Manrope';
  src: url('/fonts/manrope-v20-latin_latin-ext-600.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Manrope';
  src: url('/fonts/manrope-v20-latin_latin-ext-700.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
    --petrol:    #2f6f73;
    --teal:      #3ec1c9;
    --teal-pale: rgba(62,193,201,0.18);
    --warm-white:#fafaf8;
    --text-dark: #1c2b2c;
    --text-mid:  #4a5a5b;
    --text-light:#8a9a9b;
  }
  * { margin:0; padding:0; box-sizing:border-box; }
  html { scroll-behavior:smooth; }
  body { font-family:'Manrope',sans-serif; background:var(--warm-white); color:#3A3A3A; overflow-x:hidden; font-size:18px; line-height:1.7; }

  /* ── NAV ── */
  nav { position:sticky; top:0; z-index:100; display:flex; justify-content:space-between; align-items:center; padding:0.75rem 3.25rem; background:rgba(250,250,248,0.97); backdrop-filter:blur(12px); border-bottom:1px solid rgba(47,111,115,0.10); }
  .nav-logo { display:flex; align-items:center; text-decoration:none; flex-shrink:0; }
  .nav-logo img { height:46px; width:auto; display:block; }
  .nav-links { display:flex; gap:1.7rem; list-style:none; align-items:center; }
  .nav-links a { text-decoration:none; font-size:1rem; font-weight:400; color:var(--text-mid); transition:color 0.3s; white-space:nowrap; }
  .nav-links a:hover, .nav-links a.active { color:var(--petrol); }
  .nav-links a.active { border-bottom:2px solid var(--petrol); padding-bottom:2px; }
  .nav-spacer { flex:1; }

  /* ── HAMBURGER ── */
  .nav-hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; padding:4px; margin-left:auto; }
  .nav-hamburger span { display:block; width:26px; height:2px; background:var(--petrol); transition:all 0.3s; border-radius:2px; }
  .mobile-menu { display:none; position:fixed; inset:0; background:rgba(250,250,248,0.98); z-index:200; flex-direction:column; align-items:center; justify-content:center; gap:2.5rem; }
  .mobile-menu.open { display:flex; }
  .mobile-menu a { font-size:1.2rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:var(--petrol); text-decoration:none; }
  .mobile-menu a.mob-cta { background:var(--petrol); color:white !important; padding:0.8rem 2rem; border-radius:4px; }
  .mobile-menu-close { position:absolute; top:1.5rem; right:2rem; background:none; border:none; font-size:2rem; cursor:pointer; color:var(--petrol); line-height:1; }

  /* ── HERO SPLIT ── */
  .hero-split { display:grid; grid-template-columns:45fr 55fr; min-height:72vh; }
  .hero-text { display:flex; flex-direction:column; justify-content:center; padding:5rem 3rem 4rem 3rem; background:white; }
  .hero-heading { font-size:clamp(1.65rem,3.1vw,2.4rem); font-weight:600; line-height:1.08; letter-spacing:0; margin-bottom:1.4rem; color:var(--petrol); white-space:nowrap; }
  .hero-heading .teal { color:var(--teal); }
  .hero-tagline { font-size:24px; line-height:1.45; font-weight:400; color:var(--text-dark); max-width:780px; margin-bottom:1.5rem; }
  .hero-divider { width:52px; height:2px; background:var(--teal); margin:0 0 1.5rem 0; }
  .hero-desc { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; max-width:480px; margin-bottom:2.5rem; }
  .hero-btn { display:inline-flex; align-items:center; gap:0.6rem; background:var(--petrol); color:white; padding:0.9rem 2rem; border-radius:4px; text-decoration:none; font-size:1rem; font-weight:600; transition:background 0.3s, transform 0.2s; width:fit-content; }
  .hero-btn:hover { background:#1e4e52; transform:translateY(-2px); }

  .hero-image { width:100%; height:100%; }

  /* ── VALUE STRIP ── */
  .value-strip { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(47,111,115,0.10); }
  .value-item { display:flex; align-items:flex-start; gap:1rem; padding:1.9rem 2.3rem; border-right:1px solid rgba(47,111,115,0.08); }
  .value-item:last-child { border-right:none; }
  .value-icon { display:none; }
  .value-icon svg { width:20px; height:20px; }
  .value-content { flex:1; }
  .value-title { font-size:26px; font-weight:600; color:var(--petrol); margin-bottom:0.75rem; line-height:1.4; }
  .value-title span { color:var(--petrol); }
  .value-desc { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; min-height:0; }
  .value-divider { width:28px; height:2px; background:var(--teal); margin:0.85rem 0; opacity:0.5; }
  .value-extra { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; }

  /* ── INFO STRIP ── */

  /* ── SECTION COMMON ── */
  .section-label { font-size:0.75rem; letter-spacing:0.2em; text-transform:uppercase; color:var(--teal); margin-bottom:0.8rem; font-weight:600; display:block; }
  .section-title { font-family:'Manrope',sans-serif; font-size:38px; font-weight:600; color:var(--petrol); line-height:1.2; margin-bottom:1.4rem; }
  .section-intro { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; max-width:600px; }

  /* ── CONTENT SECTIONS ── */
  .content-section { padding:6rem 5rem; }
  .content-section.alt { background:rgba(62,193,201,0.06); }

  /* Kachelbereiche auf Unterseiten: Hintergrund wie Master-Zielgruppenbereich */
  .two-col { display:grid; grid-template-columns:1fr 1fr; gap:6rem; align-items:start; }
  .two-col.center { align-items:center; }
  .text-block p { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; margin-bottom:1.2rem; }
  .text-block p:last-child { margin-bottom:0; }
  .claude-note { color:var(--teal); font-style:italic; }
  .feature-list { list-style:none; display:flex; flex-direction:column; gap:1.1rem; margin-top:1.5rem; }
  .feature-list li { display:flex; align-items:baseline; gap:0; font-size:18px; color:var(--text-mid); line-height:1.8; padding-left:1.4rem; position:relative; }
  .feature-list li::before { content:''; width:7px; height:7px; background:var(--teal); border-radius:50%; position:absolute; left:0; top:0.55rem; flex-shrink:0; }
  .feature-list li .feat-label { color:var(--petrol); font-weight:700; margin-right:0.4rem; }
  .feature-list li .feat-text { font-weight:300; }

  /* ── ZIELGRUPPEN ── */
  .zg-section-header { text-align:center; margin-bottom:3rem; }
  #zielgruppen { padding-top:4.5rem; }
  .zg-section-header .section-intro { margin:0 auto; }
  .zg-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
  .zg-card { background:rgba(62,193,201,0.12); padding:2.5rem 2.1rem; text-decoration:none; color:var(--text-dark); transition:all 0.35s; position:relative; display:flex; flex-direction:column; border-top:4px solid transparent; min-height:270px; }
  .zg-card:hover { background:rgba(62,193,201,0.22); border-top-color:var(--teal); transform:translateY(-4px); box-shadow:0 12px 40px rgba(47,111,115,0.12); }
  .zg-icon { font-size:2.2rem; margin-bottom:1.2rem; }
  .zg-title { font-size:26px; font-weight:600; color:var(--petrol); margin-bottom:0.8rem; line-height:1.55; min-height:3.1em; display:flex; align-items:flex-start; }
  .zg-desc { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; margin-bottom:1.5rem; }
  .zg-link { font-size:1rem; font-weight:400; color:var(--teal); margin-top:auto; }


  /* ── FIT / PROCESS / ABOUT ── */
  .fit-list { list-style:none; display:grid; grid-template-columns:repeat(2,1fr); gap:1rem 2rem; margin-top:2rem; }
  .fit-list li { position:relative; padding-left:1.5rem; font-size:18px; color:var(--text-mid); line-height:1.7; }
  .fit-list li::before { content:''; width:7px; height:7px; background:var(--teal); border-radius:50%; position:absolute; left:0; top:0.62rem; }


  .prozess-section { padding-top:4rem; padding-bottom:4.25rem; }
  .prozess-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; margin:2.4rem auto 0; position:relative; max-width:1180px; }
  .prozess-step { display:flex; flex-direction:column; align-items:flex-start; }
  .prozess-nr { width:48px; height:48px; border-radius:50%; border:2px solid var(--teal); display:flex; align-items:center; justify-content:center; font-size:1rem; font-weight:600; color:var(--teal); margin-bottom:1.15rem; background:white; position:relative; z-index:1; flex-shrink:0; }
  .prozess-title { font-size:clamp(1.2rem,1.55vw,1.45rem); font-weight:600; color:var(--petrol); margin-bottom:0.5rem; line-height:1.25; min-height:3.6rem; display:flex; align-items:flex-start; }
  .prozess-text { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; }

  .fit-section-start, .fit-section { background:rgba(62,193,201,0.06); }
  .fit-section-start .two-col, .fit-section .two-col { grid-template-columns:0.72fr 1.28fr; gap:3.5rem; align-items:start; }
  .fit-section-start .fit-list, .fit-section .fit-list { margin-top:0.25rem; }


  .indra-section { padding-top:4.5rem; padding-bottom:4.5rem; }
  .indra-teaser-text { width:100%; max-width:none; }
  .indra-teaser-quote { font-size:clamp(1.2rem,2vw,1.5rem); font-weight:600; color:var(--petrol); line-height:1.4; margin-bottom:1.5rem; }
  .indra-teaser-sub { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; margin-bottom:2rem; }

  /* ── KONTAKT CTA ── */
  .kontakt-cta { background:var(--petrol); padding:3rem; text-align:center; position:relative; overflow:hidden; }
  .kontakt-cta::before { content:''; position:absolute; top:-150px; left:50%; transform:translateX(-50%); width:500px; height:500px; background:radial-gradient(circle,rgba(62,193,201,0.12) 0%,transparent 70%); pointer-events:none; }
  .kontakt-cta-title { font-size:clamp(1.7rem,2.6vw,2.2rem); font-weight:600; color:var(--teal); margin:0 auto 1rem; max-width:640px; line-height:1.2; }
  .kontakt-cta-sub { font-size:18px; font-weight:400; color:white; margin:0 auto 2.5rem; max-width:540px; line-height:1.7; }
  .kontakt-buttons { display:flex; gap:1.2rem; justify-content:center; flex-wrap:wrap; }
  .btn-kontakt { background:transparent; border:1px solid rgba(62,193,201,0.4); color:white; padding:1.1rem 2.2rem; font-family:'Manrope',sans-serif; font-size:0.85rem; font-weight:600; cursor:pointer; border-radius:2px; transition:all 0.3s; display:flex; align-items:center; gap:0.7rem; text-decoration:none; }
  .btn-kontakt:hover { background:var(--teal); border-color:var(--teal); }
  .btn-kontakt svg { width:18px; height:18px; }
  .btn-kontakt-primary { background:var(--teal); border-color:var(--teal); }
  .btn-kontakt-primary:hover { background:#2fafb7; border-color:#2fafb7; }
  .kontakt-cta .btn-kontakt-primary { padding:0.85rem 1.7rem; font-size:0.8rem; }
  .btn-outline { border:2px solid var(--petrol); color:var(--petrol); padding:1rem 2.2rem; text-decoration:none; font-size:0.85rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; border-radius:2px; transition:all 0.3s; display:inline-block; }
  .btn-outline:hover { background:var(--petrol); color:white; }

  /* ── FOOTER ── */
  footer { background:var(--petrol); padding:2.5rem 5rem; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1.5rem; }
  .footer-logo img { height:42px; width:auto; display:block; filter:brightness(0) invert(1); opacity:0.85; }
  .footer-links { display:flex; gap:2rem; list-style:none; }
  .footer-links a { font-size:0.85rem; color:rgba(255,255,255,0.4); text-decoration:none; transition:color 0.3s; }
  .footer-links a:hover { color:var(--teal); }
  .footer-copy { font-size:0.85rem; color:rgba(255,255,255,0.25); line-height:1.6; }
  .footer-copy span { display:block; }
  .footer-copy-sub { padding-left:1.15em; }


  /* ── RESPONSIVE ── */
  @media(max-width:1300px) {
    .nav-links { display:none; }
    .nav-hamburger { display:flex; margin-left:0; }
    nav { padding:0.75rem 2rem; justify-content:space-between; }
    .content-section { padding:5rem 3rem; }
    footer { padding:2rem 3rem; }
    .hero-text { padding:4rem 3rem; }
  }
  @media(max-width:860px) {
    nav { padding:0.75rem 1.5rem; }
    .hero-split { grid-template-columns:1fr; min-height:auto; }
    .hero-image { min-height:280px; }
    .hero-heading { white-space:nowrap; font-size:clamp(1.65rem,8.5vw,2.4rem); }
    .hero-text { padding:3rem 1.5rem; }
    .hero-tagline { font-size:20px; }
    .hero-desc { font-size:16px; }
    .section-title { font-size:30px; }
    .section-intro { font-size:16px; }
    .zg-title { font-size:22px; min-height:auto; }
    .zg-desc { font-size:16px; }
    .prozess-title { font-size:22px; min-height:0; }
    .prozess-text { font-size:16px; }
    .value-title { font-size:22px; }
    .value-desc { font-size:16px; }
    .value-extra { font-size:16px; }
    .text-block p { font-size:16px; }
    .feature-list li { font-size:16px; }
    .fit-list li { font-size:16px; }
    .indra-teaser-sub { font-size:16px; }
    .kontakt-cta-sub { font-size:16px; }
    .value-strip { grid-template-columns:1fr; }
    .value-item { border-right:none; border-bottom:1px solid rgba(47,111,115,0.08); }
    .value-desc { min-height:0; }
    .value-item:last-child { border-bottom:none; }
    .content-section { padding:3rem 1.5rem; }
    #zielgruppen { padding-top:3rem; }
    .zg-grid { grid-template-columns:repeat(2,1fr); }
    .two-col { grid-template-columns:1fr; gap:3rem; }
    .fit-list { grid-template-columns:1fr; }
    .prozess-section { padding-top:3rem; padding-bottom:3rem; }
    .indra-section { padding-top:3rem; padding-bottom:3rem; }
    .prozess-steps { grid-template-columns:1fr; gap:2rem; }
    .kontakt-cta { padding:2.5rem 1.5rem; }
    .kontakt-buttons { flex-direction:column; align-items:stretch; }
    .btn-kontakt { justify-content:center; }
    footer { padding:2rem 1.5rem; flex-direction:column; align-items:flex-start; }
    .footer-logo img { height:36px; }
  }
  @media(max-width:480px) {
    .hero-heading { font-size:clamp(1.55rem,8vw,2.1rem); }
    .zg-grid { grid-template-columns:1fr; }
  }

/* ── UNTERSEITE: UNTERNEHMEN ── */
  .expect-box { background:white; border-left:none; padding:2rem; box-shadow:0 12px 40px rgba(47,111,115,0.08); position:relative; }
  .expect-title { font-size:26px; font-weight:600; color:var(--petrol); margin-bottom:1.1rem; }
  .service-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; margin-top:2.4rem; grid-auto-rows:1fr; align-items:stretch; }
  .service-grid-six { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .service-card { background:rgba(62,193,201,0.12); padding:2.2rem 2rem; border-top:4px solid transparent; transition:all 0.35s; min-height:250px; height:100%; display:flex; flex-direction:column; min-width:0; }
  .service-card:hover { background:rgba(62,193,201,0.22); border-top-color:var(--teal); transform:translateY(-4px); box-shadow:0 12px 40px rgba(47,111,115,0.12); }
  .service-icon { display:none; }
  .service-icon svg { width:22px; height:22px; }
  .service-title { font-size:26px; font-weight:600; color:var(--petrol); line-height:1.25; margin-bottom:0.8rem; overflow-wrap:break-word; hyphens:auto; }
  .service-text { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; }
  .statement-box { width:100%; max-width:none; }
  .statement-text { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; margin:0; }
  .statement-text + .statement-text { margin-top:1.2rem; }
  .unternehmer-cta-title { font-size:40px; font-weight:600; color:var(--teal); margin:0 auto 1rem; max-width:720px; line-height:1.2; }
  .unternehmer-cta-btn { font-size:26px; font-weight:600; padding:1rem 2.4rem; }


  /* ── UNTERSEITE: PRIVATPERSONEN ── */



  /* ── UNTERSEITE: KONTAKT ── */
  .contact-grid { display:grid; grid-template-columns:0.95fr 1.05fr; gap:4rem; align-items:start; }
  .contact-card { background:white; border-left:4px solid var(--teal); padding:2rem; box-shadow:0 12px 40px rgba(47,111,115,0.08); }
  .contact-card-title { font-size:26px; font-weight:600; color:var(--petrol); margin-bottom:1.2rem; line-height:1.3; }
  .contact-company { font-size:18px; font-weight:600; color:var(--petrol); margin-bottom:1rem; }
  .contact-qualification { font-size:18px; color:var(--text-mid); line-height:1.7; margin-bottom:1.7rem; }
  .contact-lines { font-size:18px; color:var(--text-mid); line-height:1.7; margin:0; }
  .contact-lines-spaced { margin-top:1.7rem; }
  .contact-lines a { color:var(--petrol); text-decoration:none; border-bottom:1px solid rgba(62,193,201,0.45); }
  .contact-lines a:hover { color:var(--teal); }
  .contact-list { list-style:none; display:flex; flex-direction:column; gap:0.9rem; }
  .contact-list li { font-size:18px; color:var(--text-mid); line-height:1.7; }
  .contact-list a { color:var(--petrol); text-decoration:none; border-bottom:1px solid rgba(62,193,201,0.45); }
  .contact-list a:hover { color:var(--teal); }
  .contact-small-heading { font-size:18px; font-weight:600; color:var(--petrol); margin:1.7rem 0 0.4rem; }
  .route-box { background:rgba(62,193,201,0.08); border:1px solid rgba(62,193,201,0.22); padding:2rem; margin-top:2rem; }
  .contact-route-row { margin-top:2.5rem; width:100%; max-width:none; }
  .contact-route-row .route-box { margin-top:0; }
  .route-title { font-size:26px; font-weight:600; color:var(--petrol); margin-bottom:0.8rem; line-height:1.3; }
  .route-text { font-size:18px; color:var(--text-mid); line-height:1.7; margin-bottom:1.4rem; }
  .contact-form { display:grid; gap:1rem; margin-top:1.5rem; }
  .form-row { display:grid; gap:0.45rem; }
  .form-row label { font-size:16px; font-weight:600; color:var(--text-dark); }
  .form-row input, .form-row textarea { width:100%; border:1px solid rgba(47,111,115,0.22); background:white; padding:0.9rem 1rem; font-family:'Manrope',sans-serif; font-size:16px; color:var(--text-dark); border-radius:2px; }
  .form-row textarea { min-height:150px; resize:vertical; }
  .form-row input:focus, .form-row textarea:focus { outline:none; border-color:var(--teal); box-shadow:0 0 0 3px rgba(62,193,201,0.13); }
  .form-note { font-size:16px; color:var(--text-mid); line-height:1.7; background:rgba(62,193,201,0.08); border-left:4px solid var(--teal); padding:1rem 1.2rem; margin-top:1rem; }
  .form-actions { display:flex; gap:1rem; flex-wrap:wrap; align-items:center; margin-top:0.5rem; }
  .btn-form-disabled { background:rgba(47,111,115,0.45); color:white; padding:0.95rem 1.8rem; border:none; font-family:'Manrope',sans-serif; font-size:18px; font-weight:600; border-radius:2px; cursor:not-allowed; }
  .contact-direct-link { color:var(--petrol); font-size:16px; text-decoration:none; border-bottom:1px solid rgba(62,193,201,0.45); }
  .contact-direct-link:hover { color:var(--teal); }

/* ── UNTERSEITE: ÜBER MICH ── */
  .about-text-narrow { width:100%; max-width:none; }
  .about-subtitle { font-size:26px; font-weight:600; color:var(--petrol); line-height:1.3; margin-bottom:1rem; }
  .principles-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:2.4rem; }
  .principle-card { background:rgba(62,193,201,0.12); padding:2.4rem 2rem; border-top:4px solid transparent; min-height:230px; }
  .principle-title { font-size:26px; font-weight:600; color:var(--petrol); line-height:1.25; margin-bottom:0.8rem; }
  .principle-text { font-size:18px; color:var(--text-mid); line-height:1.7; font-weight:400; }
  .focus-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1.2rem; margin-top:2.2rem; }
  .focus-item { background:white; border-left:4px solid var(--teal); padding:1.4rem 1.6rem; box-shadow:0 10px 30px rgba(47,111,115,0.06); font-size:18px; line-height:1.6; color:var(--text-mid); }
  .focus-item strong { color:var(--petrol); font-weight:600; }
  .timeline-list { list-style:none; display:flex; flex-direction:column; gap:1rem; margin-top:2rem; }
  .timeline-list li { position:relative; padding-left:1.6rem; font-size:18px; color:var(--text-mid); line-height:1.7; }
  .timeline-list li::before { content:''; width:7px; height:7px; background:var(--teal); border-radius:50%; position:absolute; left:0; top:0.7rem; }
  .about-cta-title { font-size:40px; font-weight:600; color:var(--teal); margin:0 auto 1rem; max-width:720px; line-height:1.2; }
  .about-cta-btn { font-size:26px; font-weight:600; padding:1rem 2.4rem; }


@media(max-width:1200px) {
  .service-grid:not(.service-grid-six) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* ── RESPONSIVE: UNTERSEITEN ── */
@media(max-width:860px) {
  .service-grid:not(.service-grid-six) { grid-template-columns:1fr; }
  .service-grid-six { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-title { font-size:22px; }
  .service-text { font-size:16px; }
  .expect-title { font-size:22px; }
  .statement-text { font-size:16px; }
  .unternehmer-cta-title { font-size:30px; }
  .unternehmer-cta-btn { font-size:20px; }
  .contact-grid { grid-template-columns:1fr; gap:2.5rem; }
  .contact-card-title, .route-title { font-size:22px; }
  .contact-list li, .route-text { font-size:16px; }
  .contact-company { font-size:16px; }
  .contact-qualification, .contact-lines { font-size:16px; }
  .btn-form-disabled { width:100%; font-size:16px; }
}
@media(max-width:480px) {
  .service-grid { grid-template-columns:1fr; }
  .service-grid-six { grid-template-columns:1fr; }
}


/* ── FIT-SECTION RESPONSIVE FIX ── */
@media(max-width:860px) {
  .fit-section-start .two-col,
  .fit-section .two-col {
    grid-template-columns:1fr;
    gap:3rem;
  }
}

/* ── EINHEITLICHER HERO FÜR UNTERSEITEN ── */
.subpage-hero {
  display:grid;
  grid-template-columns:45fr 55fr;
  min-height:72vh;
  background:white;
  border-bottom:1px solid rgba(47,111,115,0.10);
}
.subpage-hero-text {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:5rem 3rem 4rem 3rem;
  background:white;
}
.subpage-hero-title {
  font-size:clamp(1.65rem,3.1vw,2.4rem);
  font-weight:600;
  line-height:1.08;
  color:var(--petrol);
  margin-bottom:1.4rem;
}
.subpage-hero-lead {
  font-size:24px;
  line-height:1.45;
  font-weight:400;
  color:var(--text-dark);
  max-width:780px;
  margin-bottom:1.4rem;
}
.subpage-hero-copy {
  font-size:18px;
  line-height:1.7;
  color:var(--text-mid);
  max-width:820px;
  margin-bottom:2.2rem;
}
.subpage-hero-copy:last-child {
  margin-bottom:0;
}
.subpage-hero-image {
  min-height:420px;
  background-size:cover;
  background-position:center center;
}

@media(max-width:860px) {
  .subpage-hero {
    grid-template-columns:1fr;
    min-height:auto;
  }
  .subpage-hero-text {
    padding:3rem 1.5rem;
  }
  .subpage-hero-title {
    font-size:clamp(1.65rem,8.5vw,2.4rem);
  }
  .subpage-hero-lead {
    font-size:20px;
  }
  .subpage-hero-copy {
    font-size:16px;
  }
  .subpage-hero-image {
    min-height:280px;
  }
}


/* ── ÜBER MICH: gezielte Spaltenkorrektur ──
   Nur für die Bereiche „Meine Schwerpunkte" und „Mein Weg".
   Keine Änderung an der globalen .two-col-Struktur und damit keine Nebenwirkung auf die Startseite. */
.about-two-col {
  grid-template-columns:minmax(240px,0.52fr) minmax(0,1.48fr);
  gap:2.5rem;
  align-items:start;
}
.about-two-col .focus-grid,
.about-two-col .timeline-list {
  margin-top:0.25rem;
}
.about-two-col .section-title {
  margin-bottom:0;
}

@media(max-width:860px) {
  .about-two-col {
    grid-template-columns:1fr;
    gap:1.8rem;
  }
  .about-two-col .section-title {
    margin-bottom:0;
  }
}


/* ── RECHTLICHE PFLICHTSEITEN: Impressum / Datenschutz / Cookie-Richtlinie ── */
.legal-hero {
  background:white;
  border-bottom:1px solid rgba(47,111,115,0.10);
  padding:5rem 5rem 3.5rem;
}
.legal-hero-inner {
  max-width:980px;
}
.legal-title {
  font-size:clamp(1.9rem,3vw,2.6rem);
  font-weight:600;
  line-height:1.15;
  color:var(--petrol);
  margin-bottom:1.1rem;
}
.legal-lead {
  font-size:22px;
  line-height:1.55;
  color:var(--text-dark);
  max-width:820px;
}
.legal-content {
  max-width:1120px;
  margin:0 auto;
  padding:4rem 5rem 5rem;
}
.legal-block {
  padding:2rem 0;
  border-bottom:1px solid rgba(47,111,115,0.12);
}
.legal-block:first-child {
  padding-top:0;
}
.legal-block:last-child {
  border-bottom:none;
  padding-bottom:0;
}
.legal-block h2 {
  font-size:28px;
  font-weight:600;
  line-height:1.25;
  color:var(--petrol);
  margin-bottom:1rem;
}
.legal-block p,
.legal-block li {
  font-size:18px;
  line-height:1.7;
  color:var(--text-mid);
}
.legal-block p + p {
  margin-top:1rem;
}
.legal-block a {
  color:var(--petrol);
  text-decoration:none;
  border-bottom:1px solid rgba(62,193,201,0.45);
}
.legal-block a:hover {
  color:var(--teal);
}
.legal-list {
  list-style:none;
  margin-top:1rem;
  display:grid;
  gap:0.45rem;
}
.legal-list li {
  position:relative;
  padding-left:1.4rem;
}
.legal-list li::before {
  content:'';
  width:7px;
  height:7px;
  background:var(--teal);
  border-radius:50%;
  position:absolute;
  left:0;
  top:0.72rem;
}
.legal-note {
  background:rgba(62,193,201,0.08);
  border-left:4px solid var(--teal);
  padding:1.3rem 1.5rem;
  margin-top:1.2rem;
}
.legal-note p {
  margin:0;
}

@media(max-width:860px) {
  .legal-hero {
    padding:3rem 1.5rem 2.5rem;
  }
  .legal-lead {
    font-size:20px;
  }
  .legal-content {
    padding:3rem 1.5rem 4rem;
  }
  .legal-block {
    padding:1.6rem 0;
  }
  .legal-block h2 {
    font-size:24px;
  }
  .legal-block p,
  .legal-block li {
    font-size:16px;
  }
}
