.hero-frame--portfolio{inset:0;width:100%;height:100%;object-fit:contain;object-position:center;filter:none;background:white;transform:none!important}.hero-manual{position:absolute;z-index:5;right:16px;bottom:16px;display:flex;gap:6px}.hero-manual button{min-height:44px;padding:8px 12px;background:#071524;color:white;border:1px solid #b7c4cd;font-size:14px;cursor:pointer}.hero-visual figcaption{max-width:calc(100% - 190px);line-height:1.4}.hero-visual figcaption span{overflow-wrap:anywhere}@media(max-width:560px){.hero-manual{right:10px;bottom:10px}.hero-visual figcaption{max-width:calc(100% - 180px);font-size:12px}}
/* Full-width portfolio sheets, with captions below the drawing area. */
.hero{display:flex;flex-direction:column;height:auto;min-height:0;overflow:hidden}
.hero-title{padding:54px 3vw 30px}
.hero h1{font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.08}
.hero figure.hero-visual{width:100%;height:calc(70.667vw + 64px);min-height:0;flex:none;grid-column:auto;grid-row:auto;background:white}
.hero-visual .hero-frame{inset:0;width:100%;height:calc(100% - 64px)}
.hero-visual .hero-frame--portfolio{object-fit:contain;transform:none!important}
.hero-visual figcaption{left:16px;bottom:10px;margin:0;max-width:calc(100% - 210px);font-size:14px;letter-spacing:0}
.hero-note{padding:24px 3vw;display:flex;flex-direction:row;align-items:center;gap:30px;min-height:0}
.hero-note span{max-width:none;font-size:1rem;flex:1}
.hero-note a{margin:0;padding:0;border:0;white-space:nowrap}
.title-block{display:none}
@media(max-width:900px){.hero-title{padding:42px 5vw 24px}.hero-note{flex-wrap:wrap;padding:24px 5vw}.hero-note span{min-width:220px}.hero figure.hero-visual{height:calc(70.667vw + 88px)}.hero-visual .hero-frame{height:calc(100% - 88px)}.hero-visual figcaption{font-size:12px;max-width:calc(100% - 185px);bottom:12px}}
