/* Profile layout adapts to zero, one or two detail groups. Brand styles remain. */
.model-section.tour-model-profile .tour-model-profile-main {
    display: flex; flex-wrap: wrap; align-items: flex-start; gap: 20px;
}
.model-section.tour-model-profile .model-thumb {
    flex: 0 0 200px; width: 200px; margin: 0; max-width: 100%;
}
.model-section.tour-model-profile .model-thumb img {
    display: block; width: 100%; height: auto;
}
.model-section.tour-model-profile .model-table {
    flex: 1 1 180px; width: auto; min-width: 0; min-height: 0;
    box-sizing: border-box; margin: 0; overflow-wrap: anywhere;
}
.model-section.tour-model-profile .model-intro {
    flex: 2 1 260px; width: auto; min-width: 0; box-sizing: border-box;
    padding: 20px; overflow-wrap: anywhere;
}
.model-section.tour-model-profile .model-bio {
    /* Plain text and inline markup must not inherit the section's zero size. */
    font-size: 18px; line-height: 1.55em;
    overflow-wrap: anywhere;
}
.model-section.tour-model-profile-light .model-bio {
    max-width: 1000px; margin: 30px auto 0; padding-top: 24px;
    border-top: 1px solid currentColor;
}
.model-section.tour-model-profile-light .model-bio p { font-size: 18px; line-height: 1.55em; }
.model-section.tour-model-profile .model-bio img { max-width: 100%; height: auto; }
@media (max-width: 700px) {
    .model-section.tour-model-profile .model-thumb { margin: 0 auto; }
    .model-section.tour-model-profile .model-table,
    .model-section.tour-model-profile .model-intro { flex-basis: 100%; }
    .model-section.tour-model-profile .model-intro { padding: 10px 0; }
}
