.audience-choice { position: fixed; z-index: 100; bottom: 1rem; left: 1rem; right: 1rem; max-width: 980px; margin: 0 auto; padding: 1.5rem; display: flex; gap: 1.5rem; align-items: center; background: #FBF8F2; color: #141E1F; border: 1px solid #0F2D2E; box-shadow: 0 4px 24px rgba(0,0,0,.14); font-family: Inter, system-ui, sans-serif; }
.audience-choice[hidden], .audience-choice [hidden] { display: none; }
.audience-choice h2 { font-family: 'Libre Caslon Display', Georgia, serif; font-weight: 400; font-size: 1.75rem; line-height: 1.2; margin: 0 0 .55rem; }
.audience-choice p { font-size: .84rem; line-height: 1.55; margin: 0 0 .65rem; }
.audience-choice a { font-size: .8rem; color: inherit; text-underline-offset: .2em; }
.audience-actions { display: flex; gap: .65rem; flex-shrink: 0; }
.audience-actions button { border: 1px solid #0F2D2E; background: #0F2D2E; color: #FBF8F2; font: inherit; font-size: .86rem; padding: .8rem 1.1rem; cursor: pointer; }
.audience-actions button:hover { background: #204445; }
.audience-actions button:focus-visible, .audience-choice a:focus-visible { outline: 3px solid #C9684A; outline-offset: 3px; }
.footer-legal button { border: 0; padding: 0; color: inherit; background: none; text-decoration: underline; text-underline-offset: .3rem; font: inherit; cursor: pointer; }
@media(max-width:650px) { .audience-choice { flex-direction: column; align-items: stretch; gap: 1rem; padding: 1.1rem; bottom: .65rem; left: .65rem; right: .65rem; max-height: calc(100svh - 1.3rem); overflow: auto; } .audience-actions button { flex: 1; } }
