/** 중개사 명함 — 이름과 사진, 연락처, 소개를 각각 분명하게 보여 준다. */
.w-broker-card.w-broker-card--profile {
    --w-broker-card-photo: 132px;
    --w-broker-card-fg: var(--site-text, #203a33);
    --w-broker-card-muted: var(--site-muted, #566962);
    --w-broker-card-border: var(--site-border, #dbe5df);
    --w-broker-card-brand: var(--site-brand, #11665d);
    --w-broker-card-radius: 20px;
    overflow: hidden;
    padding: 0;
    border: 1px solid var(--w-broker-card-border);
    border-radius: var(--w-broker-card-radius);
    background: var(--site-bg, #fff);
    box-shadow: var(--site-shadow, 0 10px 30px rgb(18 63 56 / 5%));
    color: var(--w-broker-card-fg);
}
.w-broker-card--profile .w-broker-card__head { display: flex; align-items: center; gap: 1.75rem; padding: 2rem; border: 0; border-bottom: 1px solid var(--w-broker-card-border); background: linear-gradient(115deg, var(--site-brand-soft, #edf5ef), var(--site-accent-soft, #fbf2df)); }
.w-broker-card--profile .w-broker-card__photo { display: grid; place-items: center; flex: 0 0 auto; width: var(--w-broker-card-photo); height: var(--w-broker-card-photo); overflow: hidden; border: 5px solid #fff; border-radius: 18px; background: #e0eae3; box-shadow: 0 8px 20px rgb(18 63 56 / 8%); }
.w-broker-card__photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.w-broker-card__noimg { font-size: 3.5rem; color: #709284; }
.w-broker-card__id { flex: 1; min-width: 0; }
.w-broker-card__eyebrow { margin: 0 0 0.625rem; color: var(--site-accent, #8a5b18); font-size: 0.6875rem; font-weight: 750; letter-spacing: 0.08em; }
.w-broker-card--profile .w-broker-card__name { margin: 0; color: var(--site-brand-dark, #123f38); font-size: clamp(1.5rem, 2.6vw, 2rem); font-weight: 750; letter-spacing: -0.04em; line-height: 1.35; overflow-wrap: anywhere; }
.w-broker-card__company { margin: 0.5rem 0 0; color: var(--w-broker-card-muted); font-size: 0.875rem; line-height: 1.6; overflow-wrap: anywhere; }
.w-broker-card__state { display: inline-flex; align-items: center; gap: 0.4rem; margin: 0.875rem 0 0; font-size: 0.6875rem; font-weight: 650; line-height: 1.5; }
.w-broker-card__state.is-ok { color: var(--w-broker-card-brand); }
.w-broker-card__state.is-todo { color: var(--site-accent, #8a5b18); }
.w-broker-card__edit { flex: 0 0 auto; align-self: flex-start; }
.w-broker-card__edit wa-button { --wa-color-neutral-fill-normal: #fff; }
.w-broker-card__body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.5rem; padding: 2rem; }
.w-broker-card__body > section { min-width: 0; }
.w-broker-card__body > section:only-child { grid-column: 1 / -1; }
.w-broker-card__section-title { display: flex; align-items: center; gap: 0.625rem; margin: 0 0 1.25rem; color: var(--w-broker-card-fg); font-size: 0.9375rem; font-weight: 750; line-height: 1.5; }
.w-broker-card__section-title > i { color: var(--site-accent, #8a5b18); }
.w-broker-card__contacts { display: grid; gap: 0.625rem; margin: 0; }
.w-broker-card__contact { display: grid; grid-template-columns: minmax(75px, 0.38fr) minmax(0, 1fr); align-items: start; gap: 0.75rem; padding: 0.875rem 1rem; border: 1px solid var(--w-broker-card-border); border-radius: 10px; background: var(--site-bg-soft, #f7f9f6); }
.w-broker-card__contact dt { display: flex; align-items: baseline; gap: 0.5rem; margin: 0; color: var(--w-broker-card-muted); font-size: 0.6875rem; font-weight: 600; line-height: 1.75; }
.w-broker-card__contact dt i { flex: 0 0 1em; text-align: center; color: var(--w-broker-card-brand); }
.w-broker-card__contact dd { min-width: 0; margin: 0; color: var(--w-broker-card-fg); font-size: 0.8125rem; line-height: 1.6; overflow-wrap: anywhere; }
.w-broker-card__link { color: var(--w-broker-card-brand); font-weight: 650; text-decoration: none; text-underline-offset: 0.2em; }
.w-broker-card__link:hover { text-decoration: underline; }
.w-broker-card__link:focus-visible { outline: 2px solid var(--w-broker-card-brand); outline-offset: 3px; border-radius: 2px; }
.w-broker-card--profile .w-broker-card__bio { margin: 0; padding: 0; border: 0; color: var(--w-broker-card-fg); font-size: 0.8125rem; line-height: 1.9; overflow-wrap: anywhere; }
.w-broker-card__facts { display: grid; gap: 1rem; margin: 0; }
.w-broker-card__bio + .w-broker-card__facts { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--w-broker-card-border); }
.w-broker-card__facts > div { min-width: 0; }
.w-broker-card__facts dt { display: flex; gap: 0.5rem; align-items: center; margin: 0 0 0.3rem; color: var(--w-broker-card-muted); font-size: 0.6875rem; font-weight: 600; }
.w-broker-card__facts dt i { width: 1em; color: var(--site-accent, #8a5b18); text-align: center; }
.w-broker-card__facts dd { margin: 0; color: var(--w-broker-card-fg); font-size: 0.8125rem; line-height: 1.7; overflow-wrap: anywhere; }
.w-broker-card--profile .w-broker-card__foot { margin: 0; padding: 1.25rem 2rem; border-top: 1px solid var(--w-broker-card-border); background: var(--site-bg-soft, #f7f9f6); }
.w-broker-card__listings { max-width: 100%; }
.w-broker-card__listings::part(label) { white-space: normal; text-align: start; }
@media (max-width: 800px) {
    .w-broker-card__body { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
    .w-broker-card__about:not(:first-child) { padding-top: 1.75rem; border-top: 1px solid var(--w-broker-card-border); }
}
@media (max-width: 640px) {
    .w-broker-card.w-broker-card--profile { --w-broker-card-photo: 88px; }
    .w-broker-card--profile .w-broker-card__head { flex-wrap: wrap; align-items: center; gap: 1.125rem; padding: 1.5rem 1.125rem; }
    .w-broker-card--profile .w-broker-card__photo { border-width: 4px; border-radius: 14px; }
    .w-broker-card__noimg { font-size: 2.25rem; }
    .w-broker-card__edit { flex: 1 1 100%; }
    .w-broker-card__edit wa-button { width: 100%; }
    .w-broker-card__body { padding: 1.5rem 1.125rem; }
    .w-broker-card__contact { grid-template-columns: 85px minmax(0, 1fr); gap: 0.625rem; padding: 0.875rem 0.75rem; }
    .w-broker-card--profile .w-broker-card__foot { padding: 1.125rem; }
    .w-broker-card__listings { width: 100%; }
}
