.km-public-speakers{max-width:1100px;margin:0 auto 2rem}.km-speakers-heading{margin:14px 0 22px;font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.25}.km-speakers-list{display:grid;gap:12px}.km-speaker-entry{border:1px solid #dce2e8;border-radius:10px;overflow:hidden;background:#fff;color:#242b33}.km-speaker-summary{display:flex;align-items:center;gap:16px;cursor:pointer;padding:12px 16px;list-style:none}.km-speaker-summary::-webkit-details-marker{display:none}.km-speaker-summary:hover,.km-speaker-summary:focus-visible{background:#f3f6f9}.km-speaker-thumb,.km-speaker-photo-placeholder{width:74px;height:74px;flex:0 0 74px;border-radius:8px;object-fit:cover;background:#e9eef2}.km-speaker-intro{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.km-speaker-intro strong{font-size:1.05rem}.km-speaker-org{color:#5b6570;font-size:.95rem}.km-speaker-chevron{width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-right:8px;transition:transform .15s}.km-speaker-entry[open] .km-speaker-chevron{transform:rotate(225deg)}.km-speaker-details{border-top:1px solid #e6ebef;padding:20px;display:flex;gap:24px;align-items:flex-start}.km-speaker-large-photo{width:190px;max-width:38%;height:auto;max-height:270px;object-fit:contain;border-radius:8px;flex-shrink:0}.km-speaker-info{flex:1;min-width:0}.km-speaker-info p:first-child{margin-top:0}.km-speaker-biography{white-space:normal}@media(max-width:540px){.km-speaker-details{display:block}.km-speaker-large-photo{max-width:100%;width:160px;margin:0 0 14px}.km-speaker-summary{gap:12px;padding:10px}.km-speaker-thumb,.km-speaker-photo-placeholder{width:58px;height:58px;flex-basis:58px}}

/* 0.2.6.28: Compact speaking times below the expanded portrait. */
.km-speaker-left{width:220px;max-width:42%;flex:0 0 220px;min-width:0}
.km-speaker-left .km-speaker-large-photo{display:block;width:190px;max-width:100%;height:auto}
.km-speaker-talks{margin-top:12px;font-size:.85rem;line-height:1.4;overflow-wrap:anywhere}
.km-speaker-talks h3{font-size:.95rem;margin:0 0 8px}
.km-speaker-talk{border-top:1px solid #e5eaf0;padding:9px 0}
.km-speaker-talk-date{font-weight:600;white-space:nowrap;font-size:.82rem}
.km-speaker-talk-title{margin-top:3px}
.km-speaker-talk-place,.km-speaker-talk-with{color:#5b6570;margin-top:2px}
@media(max-width:540px){.km-speaker-left{width:100%;max-width:100%}.km-speaker-left .km-speaker-large-photo{margin-bottom:8px}}
