.ss-main .store-portrait {
    margin: 22px 0 0; padding: clamp(20px, 3vw, 38px);
    border: 1px solid var(--line); border-radius: 12px;
    background: var(--card); color: var(--text); scroll-margin-top: 5rem;
}
.store-portrait .store-portrait-label {
    color: var(--pink-ink, var(--pink)); font-size: .72rem; font-weight: 700;
    letter-spacing: .12em; text-transform: uppercase;
}
.ss-main .store-portrait h2 {
    margin: 6px 0 16px; color: var(--heading); font-size: clamp(1.5rem, 2.5vw, 2rem);
    line-height: 1.15; letter-spacing: -.035em;
}
.ss-main .store-portrait p {
    font-size: .98rem; line-height: 1.65; margin: 0; color: var(--text);
}
.store-portrait-opening {max-width: 82ch}
.ss-main .store-portrait-opening p + p {margin-top: .75em}
.store-portrait-topics {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px clamp(20px,3.4vw,52px); margin-top: 24px}
.store-portrait-topics > div {border-top: 1px solid var(--line); padding-top: 15px}
.ss-main .store-portrait h3 {font-size: 1.08rem; line-height: 1.35; letter-spacing: -.012em; color: var(--heading); margin: 0 0 7px}
@media (max-width: 740px) {
    .store-portrait-topics {grid-template-columns: minmax(0,1fr); gap: 16px}
    .ss-main .store-portrait {padding: 18px; margin-top: 16px}
}
