/* === hero-split-overlay === */
.hso{width:100%;min-height:80vh;display:flex;align-items:center}
.hso-inner{max-width:1100px;margin:0 auto;padding:100px 48px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.hso-eyebrow{font-size:11px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--shell-accent,currentColor);margin:0 0 20px}
.hso h1{font-size:48px;font-weight:800;color:var(--shell-h,currentColor);line-height:1.1;letter-spacing:-1.5px;margin:0 0 26px}
.hso-body{font-size:18px;color:var(--shell-t,#1a1a1a);line-height:1.7;margin:0 0 32px;max-width:460px}
.hso-body p{margin:0 0 10px}.hso-body p:last-child{margin-bottom:0}
.hso-actions{display:flex;gap:16px;flex-wrap:wrap}
.hso-btn-primary{display:inline-block;background:var(--shell-accent,currentColor);color:#fff!important;padding:16px 38px;font-size:13px;font-weight:800;letter-spacing:2px;text-decoration:none!important;text-transform:uppercase;transition:all .3s}
/* v3.12.24 (#5) — button-hover paint retired (Glenn 2026-05-21 walk).
 * Unified hover treatment now ships from 0-shared.css (lift only,
 * no paint shift). Original rule preserved here for reference.
 * Original:
 * .hso-btn-primary:hover{filter:brightness(.9);transform:translateY(-2px)}
 */
.hso-btn-primary:hover{/* paint retired; global rule provides lift */}
.hso-btn-primary:empty{display:none}
.hso-btn-outline{display:inline-block;border:2px solid var(--shell-h,currentColor);color:var(--shell-h,currentColor)!important;padding:14px 36px;font-size:13px;font-weight:700;letter-spacing:2px;text-decoration:none!important;text-transform:uppercase;transition:all .3s}
/* v3.12.24 (#5) — button-hover paint retired (Glenn 2026-05-21 walk).
 * Unified hover treatment now ships from 0-shared.css (lift only,
 * no paint shift). Original rule preserved here for reference.
 * Original:
 * .hso-btn-outline:hover{background:var(--shell-h,currentColor);color:#fff!important}
 */
.hso-btn-outline:hover{/* paint retired; global rule provides lift */}
.hso-btn-outline:empty{display:none}
.hso-visual{position:relative;overflow:hidden}
.hso-img{width:100%;height:auto;display:block}
.hso-img[src=""]{min-height:300px;background:var(--shell-card,transparent)}
.hso-overlay{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.6);padding:24px 28px;color:#fff}
.hso-overlay:empty{display:none}
.hso-overlay-tag{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--shell-accent,currentColor);margin:0 0 8px}
.hso-overlay-tag:empty{display:none}
.hso-overlay-quote{font-size:15px;line-height:1.6;color:rgba(255,255,255,.85)}
.hso-overlay-quote:empty{display:none}
.hso-overlay-tag:empty+.hso-overlay-quote:empty{display:none}
@media(max-width:768px){.hso-inner{grid-template-columns:1fr;gap:40px}.hso h1{font-size:36px}}
