/* v4.2 friends shop spotlight, non-destructive cropping and overlay; original remote image unchanged */
.friends-photo{position:relative;overflow:hidden;background:linear-gradient(140deg,#c6af8f,#735b46);aspect-ratio:1.35;border-radius:16px;isolation:isolate}
.friends-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 50%;position:absolute;inset:0;transition:transform .4s}
.friends-photo:hover img{transform:scale(1.035)}
.friends-photo.is-collage img{object-position:49% 58%}
.friends-photo::after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(transparent,rgba(14,12,12,.82));pointer-events:none}
.friends-photo .friends-caption{position:absolute;bottom:19px;left:22px;right:22px;color:#fff;z-index:2;text-shadow:0 1px 12px #222a;font-size:clamp(1.25rem,3vw,2rem);font-weight:800;letter-spacing:.03em;line-height:1.35}
.friends-photo .friends-caption small{display:block;opacity:.88;font-weight:500;font-size:.65rem;letter-spacing:.15em;margin-bottom:6px}
.friends-photo-source{font-size:.75rem;color:#746c62;margin:8px 0 0;line-height:1.7}
.friends-photo-source a{color:#8f2323;text-underline-offset:3px}
.friends-disclaimer{font-size:.76rem;color:#625a53;line-height:1.75;margin-top:10px}
.friends-spotlight{background:#171717;color:#fff;padding:55px 0 62px}
.friends-spotlight .friends-spotlight-title{font-size:clamp(1.55rem,4vw,2.6rem);letter-spacing:.035em;color:#fff;margin:0 0 14px}
.friends-spotlight .friends-intro{color:#e4dad2;font-size:.9rem;margin-bottom:26px}
.friends-spotlight .friends-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.friends-spotlight .friends-entry{background:#fff;color:#161616;border-radius:15px;overflow:hidden}
.friends-spotlight .friends-photo{border-radius:0;aspect-ratio:1.95}
.friends-spotlight .friends-entry-content{padding:18px 21px 22px}
.friends-spotlight .friends-entry h3{font-size:1.45rem;margin:0 0 7px;color:#151515}
.friends-spotlight .friends-entry p{font-size:.87rem;line-height:1.75}
.friends-spotlight .friends-entry .friend-link{display:inline-flex;margin-top:10px;color:#af1823;font-weight:750;text-decoration:none}
.shop-grid .friend-shop-card{border:1px solid #decfc0;box-shadow:0 7px 26px #25140b0a}
.shop-grid .friend-shop-card .friends-photo{border-radius:0;aspect-ratio:1.7}
.shop-grid .friend-shop-card .friends-entry-content{padding:16px}
.friend-shop-card .friend-photo-credit{font-size:.68rem;color:#75685f;display:block;margin:7px 0 0}
.store-layout .friends-photo{aspect-ratio:1.25;border-radius:12px}
.store-layout .friends-photo.is-collage{aspect-ratio:1.45}
.friends-facts{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}
.friends-facts span{background:#f3ede5;color:#43352e;padding:8px 12px;border-radius:7px;font-size:.83rem}
@media(max-width:760px){.friends-spotlight{padding:34px 0 40px}.friends-spotlight .friends-grid{grid-template-columns:1fr;gap:19px}.friends-spotlight .friends-photo{aspect-ratio:1.55}.store-layout .friends-photo{aspect-ratio:1.22}.friends-spotlight .friends-entry-content{padding:17px}}
@media(prefers-reduced-motion:reduce){.friends-photo img{transition:none}}
/* Keep the headline's line break editorially balanced on narrow screens. */
.friends-spotlight .friends-spotlight-title{text-wrap:balance;max-width:100%}

/* Actual store-published photos are external references. Provide local original illustrated fallback if remote assets are blocked. */
.friends-photo.is-shop-shot{background:#a98e6a url("v42-komehachi-fallback.svg") center/cover no-repeat}
.friends-photo.is-collage{background:#a98e6a url("v42-yujiro-fallback.svg") center/cover no-repeat}
.friends-photo img{color:transparent;font-size:0}
.friends-photo::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}
.friends-photo-source{overflow-wrap:anywhere}
