.voices-section{overflow:hidden}
.voices-diagram{display:grid;grid-template-columns:minmax(0,1.15fr) 330px minmax(0,.85fr);grid-template-rows:repeat(3,1fr);gap:20px 28px;max-width:1160px;margin:52px auto 0;align-items:center}
.voices-bulb{position:relative;grid-column:2;grid-row:1/4;width:330px;align-self:center;filter:drop-shadow(0 18px 30px #0d27401b)}
.bulb-art{display:block;width:100%;height:auto}
.bulb-heart{position:absolute;top:18%;left:25%;width:50%;aspect-ratio:1;border-radius:50%;background:linear-gradient(145deg,var(--bg-primary),var(--bg-tertiary));border:5px solid var(--bg-secondary);box-shadow:0 3px 18px #142f4f35;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;animation:voice-heart-light 6s ease-in-out infinite}
.bulb-quote-mark{font-size:3.2rem;line-height:.65;color:var(--primary);font-family:Georgia,serif;display:block}
.bulb-heart strong{font-size:.91rem;line-height:1.35;letter-spacing:-.025em;margin-top:7px;color:var(--text-primary)}
.bulb-heart>span:last-child{font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;margin-top:10px;color:var(--text-tertiary)}
.voice-pair{display:contents;--voice-color:#5caa8b}
.voice-2{--voice-color:#4d8eb1}.voice-3{--voice-color:#ce8a4f}
.voice-quote,.voice-person{position:relative;margin:0;border-top:2px solid var(--voice-color);padding:22px 20px;background:var(--bg-primary);border-radius:8px;box-shadow:0 8px 28px #16355208}
.voice-quote{grid-column:1}.voice-person{grid-column:3;display:flex;gap:14px;align-items:center}
.voice-1 .voice-quote,.voice-1 .voice-person{grid-row:1}.voice-2 .voice-quote,.voice-2 .voice-person{grid-row:2}.voice-3 .voice-quote,.voice-3 .voice-person{grid-row:3}
.voice-quote::after,.voice-person::before{content:'';position:absolute;top:50%;width:31px;border-top:1px dotted var(--voice-color);opacity:.7}
.voice-quote::after{left:100%}.voice-person::before{right:100%}
.voice-kicker{display:block;font-size:.6rem;letter-spacing:.14em;font-weight:700;text-transform:uppercase;color:var(--voice-color);margin-bottom:12px}
.voice-quote p{font-size:.86rem;line-height:1.85;color:var(--text-secondary)}
.voice-avatar{width:43px;height:43px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;color:var(--voice-color);font-weight:700;font-size:.8rem;background:color-mix(in srgb,var(--voice-color) 13%,var(--bg-primary));border:1px solid color-mix(in srgb,var(--voice-color) 40%,transparent)}
.voice-person strong{display:block;font-size:.98rem;line-height:1.5}
.voice-person div>span{display:block;font-size:.74rem;color:var(--text-tertiary);line-height:1.6;margin-top:3px}
@keyframes voice-heart-light{50%{box-shadow:0 3px 25px #5c8fbd50}}
@media(max-width:1000px){.voices-diagram{grid-template-columns:minmax(0,1fr) 270px minmax(0,.8fr);gap:18px}.voices-bulb{width:270px}.voice-quote,.voice-person{padding:18px 15px}.voice-person{flex-direction:column;align-items:flex-start}.bulb-heart strong{font-size:.78rem}.bulb-quote-mark{font-size:2.3rem}.bulb-heart>span:last-child{font-size:.5rem}}
@media(max-width:800px){.voices-diagram{display:flex;flex-direction:column;gap:20px;margin-top:30px}.voices-bulb{width:290px;max-width:100%;margin-bottom:15px}.voice-pair{display:flex;flex-direction:column;width:100%;border:1px solid var(--border);border-top:2px solid var(--voice-color);border-radius:12px;overflow:hidden;background:var(--bg-primary)}.voice-quote,.voice-person{border:0;border-radius:0;box-shadow:none;padding:22px}.voice-person{flex-direction:row;align-items:center;padding-top:0}.voice-quote::after,.voice-person::before{display:none}.voice-kicker{margin-bottom:8px}.voice-quote p{font-size:.9rem}.bulb-heart strong{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){.bulb-heart{animation:none}}
