/* v0.5: only the two specified KAISHIN photos. Original image bytes unchanged. */
.art-teaser img{object-position:50% 18%}
.real-business-photo.art img{object-fit:contain;object-position:50% 50%}
@media(max-width:620px){.art-teaser img{object-position:72% 25%}}
/* Localized text protection; original river image and all image pixels stay intact. */
.full-photo:before{background:linear-gradient(90deg,rgba(8,23,16,.62) 0%,rgba(8,23,16,.42) 32%,rgba(8,23,16,.12) 53%,transparent 72%)}
.full-copy h1{text-shadow:0 2px 5px #08171099}
.full-copy .v2-kicker,.full-copy .v2-intro,.full-copy .v2-cta{width:fit-content;background:rgba(8,23,16,.58);box-shadow:0 0 14px 8px rgba(8,23,16,.15)}
@media(max-width:620px){.full-photo:before{background:linear-gradient(0deg,rgba(8,23,16,.62) 0%,rgba(8,23,16,.52) 42%,rgba(8,23,16,.12) 65%,transparent 82%)}.full-copy{transform:translateY(8px)}.full-copy h1{text-shadow:0 2px 5px #081710cc}}

/* KAISHIN crop revision: viewport-only enlargement; asset pixels untouched. */
.art-teaser img{transform:scale(1.08);transform-origin:80% 20%}
.art-crop-viewport{overflow:hidden}
.real-business-photo.art .art-crop-viewport img{transform:scale(1.2);transform-origin:80% 12%}
@media(max-width:620px){.art-teaser img{transform:scale(1.07);transform-origin:75% 20%}.real-business-photo.art .art-crop-viewport img{transform:scale(1.22);transform-origin:80% 10%}}

/* Owner-selected representative portrait; preserve the existing frame dimensions. */
.story-visual .representative-photo{padding:0;background:#e9e4dd;overflow:hidden;display:flex;justify-content:center}
.representative-photo:before,.representative-photo:after{display:none}
.representative-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%;filter:none}
