.stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.stat:last-child{grid-column:auto;padding-left:22px}
.audience-portrait{padding:52px 0 36px;border-bottom:1px solid var(--ivory-2)}
.audience-head{margin-bottom:32px}
.audience-head .kicker{border:0;padding:0;margin-bottom:14px}
.audience-head h2{font-size:64px;line-height:.95}
.audience-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:48px}
.audience-demographics{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.aud-label{display:block;font-family:var(--mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--stone-dark)}
.age-main{margin:16px 0 22px;display:flex;flex-direction:column;gap:8px}
.age-main strong{font-family:var(--display);font-variation-settings:"wdth" 64;font-weight:900;font-size:90px;line-height:.9;color:var(--ember-deep)}
.age-main strong small{font-size:36px}
.age-main>span{font-size:18px;font-weight:600}
.age-breakdown{display:grid;gap:12px}
.age-item{display:grid;grid-template-columns:44px minmax(20px,1fr) 32px;align-items:center;gap:8px;font-size:12px}
.age-track{height:6px;background:var(--ivory-2);overflow:hidden}
.age-track i{display:block;height:100%;background:var(--ember-deep);transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--ease)}
.audience-visible .age-track i{transform:scaleX(var(--share))}
.audience-gender{border-left:1px solid var(--ivory-2);padding-left:26px}
.people-strip{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:9px 4px;margin:26px 0 24px}
.person{display:block;opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s;transition-delay:calc(var(--i)*35ms)}
.person svg{width:100%;height:38px;fill:currentColor}
.person.women{color:var(--ember-deep)}.person.men{color:var(--stone-dark)}
.audience-visible .person{opacity:1;transform:none}
.gender-values{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.gender-values div{display:flex;flex-direction:column;gap:4px}
.gender-values b{font-family:var(--display);font-variation-settings:"wdth" 70;font-size:30px;line-height:1}
.gender-values span{font-size:12px;color:var(--stone-dark)}
.gender-values div:first-child b{color:var(--ember-deep)}
.audience-geography{border-left:1px solid var(--ivory-2);padding-left:36px;min-width:0}
.market-heading h3{font-family:var(--display);font-variation-settings:"wdth" 70;font-size:36px;line-height:1.1;font-weight:800;margin:9px 0 0}
.audience-map{display:block;width:100%;aspect-ratio:830/450;overflow:hidden;margin:24px 0 0}
.map-state{fill:var(--ivory-2);stroke:var(--ivory);stroke-width:2;stroke-linejoin:round}
.primary-state{fill:var(--stone-light)}
.pin-dot{fill:var(--ember-deep);stroke:var(--ivory);stroke-width:2}
.pin-halo{fill:none;stroke:var(--ember);stroke-width:1.5;transform-box:fill-box;transform-origin:center}
.audience-visible .pin-halo{animation:market-pulse 3s ease-out calc(var(--i)*.6s) infinite}
.map-pin text{font-family:var(--body);font-size:20px;font-weight:700;fill:var(--ink);paint-order:stroke;stroke:var(--ivory);stroke-width:5px;stroke-linejoin:round}
.market-footer{padding-top:14px;border-top:1px solid var(--ivory-2)}
.market-footer p{font-size:14px;margin:7px 0 0;font-weight:600;line-height:1.6}
@keyframes market-pulse{0%,100%{opacity:.7;transform:scale(.65)}70%{opacity:0;transform:scale(1.5)}}
@media(max-width:1000px){.audience-layout{gap:28px;grid-template-columns:1fr 1fr}.audience-demographics{gap:18px}.audience-gender{padding-left:18px}.audience-geography{padding-left:24px}.age-main strong{font-size:76px}.market-heading h3{font-size:30px}.gender-values b{font-size:25px}}
@media(max-width:760px){.audience-layout{grid-template-columns:1fr;gap:32px}.audience-demographics{gap:28px}.audience-geography{border-left:0;border-top:1px solid var(--ivory-2);padding:28px 0 0}.audience-head h2{font-size:52px}.audience-portrait{padding:38px 0 28px}.audience-map{max-width:640px}.age-main strong{font-size:84px}.gender-values b{font-size:30px}.map-pin text{font-size:24px}}
@media(max-width:480px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:22px 10px 18px 0!important;border-bottom:0}.stat+.stat{padding-left:10px!important}.stat .n{font-size:36px!important}.stat .label{font-size:9px;letter-spacing:0!important}.stat .s{font-size:11px}.stat:nth-child(2){border-right:1px solid var(--ivory-2)}.stat:nth-child(3){border-right:0}.audience-demographics{gap:18px}.audience-gender{padding-left:18px}.age-main strong{font-size:78px}.gender-values b{font-size:26px}.audience-head h2{font-size:46px}.market-heading h3{font-size:32px}}
@media(prefers-reduced-motion:reduce){.person{opacity:1;transform:none}.age-track i{transform:scaleX(var(--share))}.audience-visible .pin-halo{animation:none}}