/* Host testimonials: a compact profile beside a readable personal story. */
.host-stories {
    max-width: 1040px;
    margin: 0 auto;
    padding: 16px 0 32px;
}

.host-stories #host-stories-title { scroll-margin-top: 80px; }
.host-copy .host-stories-intro { margin: 0 auto 32px; color: #777; font-size: 14px; }
.host-stories-list { display: grid; gap: 24px; }
.host-story {
    display: grid;
    grid-template-columns: 164px minmax(0, 1fr);
    gap: 40px;
    padding: 36px;
    border-radius: 20px;
    background: #faf8f5;
}

.host-story-profile { text-align: center; }
.host-story-profile img {
    display: block;
    width: 112px;
    height: 112px;
    margin: 0 auto 16px;
    border-radius: 50%;
    object-fit: cover;
}
.host-copy .host-story-profile h3 { margin: 0 0 16px; }
.host-story-profile .host-button { min-height: 44px; padding: 10px 14px; font-size: 13px; white-space: nowrap; }
.host-story-content { min-width: 0; text-align: left; }
.host-copy .host-story-highlight {
    margin: 0 0 20px;
    color: #333;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.7;
}
.host-story blockquote { margin: 0; padding: 0; border: 0; font-size: inherit; line-height: 1.9; }
.host-story blockquote p:last-child { margin-bottom: 0; }

@media (max-width: 767px) {
    .host-story { grid-template-columns: 1fr; gap: 24px; padding: 24px 20px; border-radius: 16px; }
    .host-story-profile { display: flex; align-items: center; gap: 16px; text-align: left; }
    .host-story-profile img { flex-shrink: 0; width: 72px; height: 72px; margin: 0; }
    .host-copy .host-story-profile h3 { margin-bottom: 8px; }
    .host-copy .host-story-highlight { font-size: 18px; }
}
