/* Homepage only. No font-family declarations: existing typography/injection wins. */
body.has-personal-hero #gh-head { position: relative; }
body.has-personal-hero.is-head-left-logo #gh-head .gh-head-logo { display: flex; }
body.has-personal-hero.is-head-left-logo #gh-head .gh-head-menu { margin-left: 16px; }
.personal-hero { background: var(--personal-hero-background, #e5eadf); color: #171917; }
.personal-hero-inner { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 88px); align-items: center; min-height: 480px; }
.personal-hero-copy { min-width: 0; padding: clamp(28px, 3.5vw, 52px) 0; align-self: start; }
.personal-hero-heading { margin: 0; color: inherit; font-size: clamp(3.2rem, 4vw, 6.4rem); line-height: 1.3; letter-spacing: -0.025em; overflow-wrap: anywhere; white-space: pre-line; }
.personal-hero-intro { margin: 32px 0 0; color: inherit; font-size: clamp(1.8rem, 1.8vw, 2.8rem); line-height: 1.6; overflow-wrap: anywhere; white-space: pre-line; }
.personal-hero-photo { min-width: 0; align-self: stretch; display: flex; align-items: flex-end; justify-content: center; padding-top: 24px; }
.personal-hero-photo img { display: block; width: 100%; max-height: 560px; height: auto; object-fit: contain; object-position: center bottom; }
.personal-hero-without-portrait { grid-template-columns: minmax(0, 1fr); min-height: 320px; }
.personal-hero-without-portrait .personal-hero-copy { max-width: 900px; }
@media (max-width: 991px) { .personal-hero-inner { min-height: 380px; gap: 28px; } }
@media (max-width: 767px) {
    .personal-hero-inner { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 0; }
    .personal-hero-copy { padding: 28px 0 24px; }
    .personal-hero-heading { font-size: clamp(3rem, 7.5vw, 4.4rem); }
    .personal-hero-intro { margin-top: 24px; font-size: 1.8rem; }
    .personal-hero-photo { padding-top: 0; }
    .personal-hero-photo img { width: auto; max-width: 100%; max-height: 480px; }
}
