/* The LT lineup grows in normal document flow; stage effects stay in the rehearsal. */
.lt-stage{min-height:0;isolation:isolate}
.lt-stage>h2{line-height:1.2}
.lt-stage>p{position:relative;max-width:680px;line-height:1.8}
.lt-stage .lt-intro{font-size:1rem;color:#ead8c9;margin:16px 0 32px}
.lt-invitation,.lt-lineup,.lt-create,.lt-rehearsal{position:relative;width:min(100%,940px);min-width:0;box-sizing:border-box}
.lt-invitation{max-width:680px;text-align:left;padding:28px;border-top:2px solid #f3bd47;background:#290b06}
.lt-stage .lt-kicker{margin:0 0 12px;font-size:.875rem;font-weight:700;line-height:1.6;color:#f3bd47}
.lt-invitation>p,.lt-create p{font-size:1rem;line-height:1.85;color:#ead8c9}
.lt-contact{display:inline-flex;justify-content:center;align-items:center;min-height:52px;box-sizing:border-box;padding:12px 20px;margin:12px 0 0;background:#a52417;border:1px solid #f3bd47;color:#fff;font-size:1rem;font-weight:700;line-height:1.7;text-align:center;text-decoration:none;overflow-wrap:anywhere}
.lt-contact:hover{background:#c02b1b}.lt-stage .lt-contact-note{font-size:.875rem;line-height:1.8;color:#d4bca6;margin:16px 0 0}
.lt-lineup{margin-top:48px;text-align:left}
.lt-lineup-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 20px;border-bottom:1px solid #b78c4666;padding-bottom:16px}
.lt-lineup h3,.lt-create h3{font-size:clamp(1.25rem,3vw,1.65rem);line-height:1.6;margin:0;color:#fff}
#ltSpeakerCount{font-size:.875rem;color:#f3bd47;margin:0}
.lt-empty{font-size:1rem;line-height:1.85;color:#d4bca6;padding:24px 0;margin:0}
.lt-speaker-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.lt-speaker{display:grid;grid-template-columns:100px minmax(0,1fr);gap:20px;align-items:start;padding:28px 0;border-bottom:1px solid #b78c4644}
.lt-speaker-portrait{width:100%;aspect-ratio:1;position:relative;background:#290b06;overflow:hidden}
.lt-speaker-initial{position:absolute;inset:0;display:grid;place-items:center;color:#f3bd47;font-size:2rem}
.lt-speaker-initial[hidden]{display:none}
.lt-speaker-portrait picture,.lt-speaker-sprite{position:absolute;inset:0;display:block;width:100%;height:100%}
.lt-speaker-portrait img{position:relative;display:block;width:100%;height:100%;object-fit:contain;background:#290b06}
.lt-speaker-sprite{border:0;padding:0;background:#290b06;cursor:pointer}
.lt-speaker-sprite span{display:block;width:100%;height:100%;background-size:300% 200%;background-repeat:no-repeat;background-position:0% 0%}
.lt-speaker-sprite:focus-visible{outline-offset:-4px}
.lt-speaker-copy{min-width:0;overflow-wrap:anywhere}.lt-speaker-copy h4{font-size:1.25rem;line-height:1.5;margin:0 0 8px;color:#fff}
.lt-speaker-copy p{font-size:1rem;line-height:1.8;color:#ead8c9;margin:8px 0 0}.lt-speaker-copy .lt-speaker-title{color:#f5dfb0;font-weight:700}
.lt-create{margin-top:40px;padding:28px 0;border-top:1px solid #b78c4666;text-align:left;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.lt-create p:last-child{margin-bottom:0}.lt-contact-secondary{background:transparent}
.lt-rehearsal{max-width:560px;margin-top:32px;padding:24px 16px;overflow:hidden;border:1px solid #b78c4644}
.lt-rehearsal>p{font-size:1rem;line-height:1.7;margin:0 0 16px;color:#ead8c9}
.lt-rehearsal>button{display:flex;align-items:center;justify-content:center;gap:16px;min-height:64px;width:100%;padding:12px 16px;border:1px solid #f3bd47;background:#42110b;color:#fff}
.lt-rehearsal>button span{font:2.4rem/1.2 Impact,sans-serif;color:#f3bd47}.lt-rehearsal>button b{font-size:1rem;line-height:1.6}
.lt-rehearsal>small{display:block;font-size:.875rem;line-height:1.7;color:#d4bca6;margin-top:16px}
.lt-rehearsal .lt-timeup{font-size:clamp(2rem,8vw,4rem);line-height:1.4}
.event-flow a{color:#f5cf79;text-underline-offset:4px}
@media(max-width:900px){.lt-create{grid-template-columns:minmax(0,1fr)}.lt-contact-secondary{justify-self:start}.lt-speaker-list{grid-template-columns:minmax(0,1fr)}}
@media(max-width:720px){.lt-stage{padding:64px 24px}.lt-stage>h2{line-height:1.3}.lt-intro br{display:none}.lt-invitation{padding:24px 20px}.lt-contact{width:100%}.lt-lineup{margin-top:36px}.lt-speaker{grid-template-columns:80px minmax(0,1fr);gap:16px}.lt-create{margin-top:24px;padding-top:24px;gap:8px}.lt-rehearsal>button{flex-wrap:wrap;gap:8px 16px}.lt-rehearsal>button b{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.lt-motion-image{display:none!important}}
