/* v35 — final hero crop + mobile legal typography */
/* Homepage desktop: show a more natural portrait, not an oversized face crop */
@media (min-width:1181px){
  .v24-home .v24-hero-grid{grid-template-columns:minmax(0,44%) minmax(0,56%)!important;min-height:690px!important}
  .v24-home .v24-hero-photo{min-height:690px!important;max-height:690px!important;background:#eaf6f8!important}
  .v24-home .v24-hero-photo>img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 18%!important;transform:scale(.94)!important;transform-origin:center top!important}
  .v24-home .v24-person{right:34px!important;bottom:30px!important;max-width:420px!important}
}
/* About portrait: less aggressive crop on desktop and mobile */
.about-photo{background:#eef7f8!important}
.about-photo img{object-fit:cover!important;object-position:center 16%!important}
@media (min-width:981px){
  .about-photo img{transform:scale(.92)!important;transform-origin:center center!important}
}
@media (max-width:980px){
  .about-hero-grid{grid-template-columns:1fr!important;gap:34px!important}
  .about-photo{height:auto!important;aspect-ratio:4/3!important;max-width:720px!important;margin-inline:auto!important}
  .about-photo img{object-position:center 12%!important;transform:none!important}
}
@media (max-width:640px){
  .about-hero{padding:38px 0 44px!important}
  .about-photo{aspect-ratio:4/4.65!important;border-radius:26px!important}
  .about-photo img{object-position:center 10%!important}
  .about-photo-card{left:16px!important;right:16px!important;bottom:16px!important;padding:15px 18px!important}
  .about-photo-card strong{font-size:20px!important}
  .about-photo-card span{font-size:14px!important;line-height:1.4!important}
}
/* Legal pages: never split long German headings/words into ugly fragments */
.legal-shell,.legal-page,.legal-card,.legal-card h1,.legal-card h2,.legal-card h3,.legal-card p,
body:has(.legal-shell) .page-hero h1,body:has(.legal-page) .page-hero h1{
  hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:normal!important
}
@media(max-width:640px){
  body:has(.legal-shell) .page-hero h1,body:has(.legal-page) .page-hero h1{font-size:clamp(38px,10vw,52px)!important;line-height:1.04!important;letter-spacing:-.04em!important;max-width:100%!important}
  .legal-shell h2,.legal-page h2{font-size:28px!important;line-height:1.12!important}
  .legal-shell h3,.legal-page h3{font-size:22px!important;line-height:1.18!important}
}
