/* Source Sans 3 – Latin, variabel 400–700 (selbst gehostet) */
@font-face {
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("fonts/font-07.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* Source Serif 4 – Latin, variabel 400–700 (selbst gehostet) */
@font-face {
  font-family: 'Source Serif 4';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("fonts/font-13.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


  html{scroll-behavior:smooth}
  body{margin:0;background:#fff;font-family:'Source Sans 3',system-ui,sans-serif;color:#29292b;-webkit-font-smoothing:antialiased}
  *{box-sizing:border-box}
  a{color:#8f1d1d}
  a:hover{color:#7a1717}
  .ph{background-image:repeating-linear-gradient(135deg,#efece6,#efece6 9px,#e6e1d8 9px,#e6e1d8 18px);display:flex;align-items:flex-end;justify-content:center}
  .phcap{font:500 10px ui-monospace,Menlo,monospace;letter-spacing:.08em;color:#9a9388;background:rgba(255,255,255,.82);padding:3px 8px;border-radius:4px;margin-bottom:12px;text-transform:uppercase}
  .nav a{color:#29292b;text-decoration:none}
  .nav a:hover{color:#8f1d1d}
  .svc{transition:border-color .15s,transform .15s}
  .svc:hover{border-color:#8f1d1d;transform:translateY(-2px)}

  /* --- Rechts-/Unterseiten (Impressum, Datenschutz) --- */
  .legal{max-width:860px;margin:0 auto;padding:66px 40px 84px}
  .legal .eyebrow{font:600 12px 'Source Sans 3',system-ui,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#8f1d1d}
  .legal h1{font-family:'Source Serif 4',Georgia,serif;font-weight:600;font-size:38px;line-height:1.12;margin:14px 0 6px}
  .legal .lead{font-size:15.5px;color:#77726b;margin:0 0 30px}
  .legal h2{font-family:'Source Serif 4',Georgia,serif;font-weight:600;font-size:22px;margin:40px 0 10px;padding-top:22px;border-top:1px solid rgba(20,20,20,.1)}
  .legal h3{font-size:15px;font-weight:700;margin:22px 0 4px;color:#29292b}
  .legal p{font-size:16px;line-height:1.75;color:#4a4744;margin:0 0 14px}
  .legal ul{font-size:16px;line-height:1.7;color:#4a4744;margin:0 0 14px;padding-left:22px}
  .legal li{margin:3px 0}
  .legal address{font-style:normal;line-height:1.75;color:#4a4744}
  .legal .note{background:#f6f4f0;border-left:3px solid #8f1d1d;padding:12px 16px;font-size:14px;color:#57544f;border-radius:0 4px 4px 0;margin:6px 0 14px}

  /* --- Leistungen (Startseite) --- */
  .leist-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:800px;margin:0 auto}
  @media (max-width:640px){ .leist-grid{grid-template-columns:1fr} }
  .leist{border:1px solid rgba(20,20,20,.12);border-radius:4px;padding:24px 26px;background:#fff}
  .leist h3{font-family:'Source Serif 4',Georgia,serif;font-weight:600;font-size:19px;margin:0 0 12px;color:#29292b}
  .leist ul{margin:0;padding-left:18px;font-size:14.5px;line-height:1.6;color:#4a4744}
  .leist li{margin:4px 0}

  /* --- Service (Startseite): grosse Karten --- */
  .svc-card{border:1px solid rgba(20,20,20,.14);border-radius:4px;padding:28px 32px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}
  .svc-card + .svc-card{margin-top:16px}
  .svc-card .svc-txt{flex:1;min-width:240px}
  .svc-card .svc-txt h3{font-family:'Source Serif 4',Georgia,serif;font-weight:600;font-size:21px;margin:0;color:#29292b}
  .svc-card .svc-txt p{font-size:14.5px;color:#57544f;line-height:1.6;margin:8px 0 0;max-width:470px}
  .svc-card .svc-actions{flex:none;display:flex;gap:12px;flex-wrap:wrap}
  .svc-btn{display:inline-block;background:#8f1d1d;color:#fff;text-decoration:none;font-weight:600;font-size:14.5px;padding:13px 24px;border-radius:2px;white-space:nowrap}
  .svc-btn:hover{background:#7a1717;color:#fff}

  /* --- Navigation: auf Handys umbrechen statt abschneiden --- */
  @media (max-width:640px){
    .nav{flex-basis:100%;flex-wrap:wrap;justify-content:center;gap:14px 18px !important}
  }
