/* Shared geometry for all mobile browsers; desktop retains its existing hero. */
.hero-visual{display:contents}
.mobile-hero-actions{display:none}
@media(max-width:760px){
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.home-page .hero{--hero-unit:calc(min(100vw,480px) / 390);--hero-gutter:calc(22 * var(--hero-unit));display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-height:0;aspect-ratio:auto;padding:0 0 calc(24 * var(--hero-unit));gap:calc(18 * var(--hero-unit));overflow:hidden;background:var(--paper,#f7f5f0)}
body.home-page .hero::before{display:none}
body.home-page .hero-copy{position:static;box-sizing:border-box;width:100%;max-width:none;padding:calc(30 * var(--hero-unit)) var(--hero-gutter) 0;background:transparent}
body.home-page .hero .eyebrow{font-size:calc(12 * var(--hero-unit));line-height:1.5}
body.home-page .hero h1{font-size:calc(36 * var(--hero-unit));line-height:1.2;letter-spacing:0;margin-top:calc(18 * var(--hero-unit));margin-bottom:calc(18 * var(--hero-unit))}
body.home-page .hero .intro{font-size:calc(16 * var(--hero-unit));line-height:1.6;max-width:none;margin-bottom:0}
body.home-page .desktop-hero-actions{display:none}
body.home-page .hero-visual{display:block;position:relative;isolation:isolate;box-sizing:border-box;width:100%;aspect-ratio:.95 / 1;overflow:hidden;background:#f7f5f0}
body.home-page .hero-visual::before,body.home-page .hero-visual::after{display:none}
body.home-page .hero-visual .hero-image{position:absolute;inset:auto 0 0;order:initial;display:block;width:100%;height:76%;max-width:none;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:right center;transform:none;mask-image:linear-gradient(to bottom,transparent 0%,#000 5%,#000 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 5%,#000 100%)}
body.home-page .mobile-hero-actions{position:absolute;z-index:2;left:var(--hero-gutter);top:0;bottom:auto;display:flex;flex-direction:column;align-items:flex-start;gap:calc(10 * var(--hero-unit));width:max-content;max-width:calc(100% - 2 * var(--hero-gutter));padding:0;background:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body.home-page .mobile-hero-actions .button{display:inline-flex;box-sizing:border-box;justify-content:flex-start;align-items:center;align-self:flex-start;gap:calc(10 * var(--hero-unit));min-height:44px;margin:0;padding:calc(11 * var(--hero-unit)) calc(14 * var(--hero-unit));font-size:calc(13 * var(--hero-unit));line-height:1.4;border-radius:3px;white-space:nowrap;width:auto;max-width:100%}
body.home-page .mobile-hero-actions .saju-article-link{display:flex;align-items:center;justify-content:flex-start;gap:calc(10 * var(--hero-unit));min-height:32px;width:auto;max-width:100%;margin:0;padding:0;font-size:calc(12 * var(--hero-unit));line-height:1.45;background:none;border:0;border-radius:0;white-space:nowrap;text-decoration-thickness:1px;text-underline-offset:4px}
body.home-page .mobile-hero-actions .ui-arrow{width:calc(16 * var(--hero-unit));height:calc(16 * var(--hero-unit));flex-shrink:0}
}

/* Use the supplied original logo artwork at both ends of the homepage. */
body.home-page>header>.brand-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:12px;text-decoration:none;letter-spacing:0;flex-shrink:0}
body.home-page .brand-logo{display:block;width:190px;height:auto;max-width:100%}
body.home-page .brand-tagline{display:block;font-family:Manrope,sans-serif;font-size:10px;font-weight:500;line-height:1.4;letter-spacing:1.6px;color:#78877a;white-space:nowrap}
body.home-page .footer-brand-logo{display:block;width:170px;height:auto;max-width:100%}
@media(max-width:760px){
body.home-page>header>.brand-lockup{gap:10px;max-width:calc(100% - 60px)}
body.home-page .brand-logo{width:150px}
body.home-page .brand-tagline{font-size:clamp(7px,2.1vw,10px);letter-spacing:1px}
body.home-page .hero h1{margin-top:0}
}
