/* v36 — exact screenshot fixes: natural portraits + legal mobile overflow */

/* STARTSEITE: Portrait vollständig und ruhig zeigen statt in das Gesicht zu zoomen */
@media (min-width:1181px){
  .v24-home .v24-hero-grid{grid-template-columns:minmax(520px,44%) minmax(0,56%)!important;min-height:680px!important}
  .v24-home .v24-hero-photo{height:680px!important;min-height:680px!important;max-height:680px!important;background:#eef8fa!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .v24-home .v24-hero-photo>img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;transform:none!important}
  .v24-home .v24-person{right:32px!important;bottom:28px!important;left:auto!important;max-width:430px!important}
}

/* ÜBER MICH: Bild nicht mehr künstlich beschneiden. */
.about-photo{background:#eef8f8!important;display:flex!important;align-items:center!important;justify-content:center!important}
.about-photo img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;transform:none!important}
@media (min-width:981px){
  .about-photo{height:560px!important}
}
@media (max-width:980px){
  .about-photo{height:auto!important;aspect-ratio:4/3!important;max-width:720px!important;margin-inline:auto!important}
}
@media (max-width:640px){
  .about-photo{height:auto!important;aspect-ratio:1/1.12!important;max-width:none!important;border-radius:26px!important}
  .about-photo img{object-fit:contain!important;object-position:center center!important}
  .about-photo-card{left:14px!important;right:14px!important;bottom:14px!important;padding:14px 16px!important}
  .about-photo-card strong{font-size:19px!important}
  .about-photo-card span{font-size:13px!important;line-height:1.35!important}
}

/* RECHTLICHES: niemals horizontal aus dem Viewport laufen. Keine Silbentrennung,
   aber lange Wörter dürfen an der Kartenkante sauber umbrechen. */
.legal-main,.legal-hero,.legal-shell,.legal-grid,.legal-prose,.legal-card{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.legal-main{overflow-x:hidden!important}
.legal-hero h1,.legal-hero p,.legal-shell h1,.legal-shell h2,.legal-shell h3,.legal-shell p,.legal-shell a,.legal-prose h2,.legal-prose p{
  hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:anywhere!important;max-width:100%!important
}
@media(max-width:640px){
  .legal-hero{padding:52px 0 48px!important}
  .legal-hero .wrap,.legal-shell{width:calc(100% - 32px)!important;max-width:100%!important;margin-inline:auto!important}
  .legal-hero h1{font-size:clamp(34px,9vw,44px)!important;line-height:1.03!important;letter-spacing:-.035em!important}
  .legal-hero p{font-size:18px!important;line-height:1.55!important}
  .legal-grid{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
  .legal-card,.legal-prose{width:100%!important;padding:24px 20px!important;border-radius:22px!important}
  .legal-card h2,.legal-prose h2{font-size:clamp(24px,7vw,30px)!important;line-height:1.1!important;letter-spacing:-.025em!important}
  .legal-card h3,.legal-prose h3{font-size:20px!important;line-height:1.2!important}
  .legal-card p,.legal-prose p,.legal-intro{font-size:16px!important;line-height:1.65!important}
  /* AGB-Haupttitel ist besonders lang: bewusst kompakter */
  body:has(.legal-prose) .legal-hero h1{font-size:clamp(31px,8.2vw,40px)!important;line-height:1.04!important}
}
