<script>(()=>{const K="audiobooks",U="/brae-data-audiobooks";function esc(v){return String(v||'').replace(/[&<>"']/g,c=>({'&':'&','<':'<','>':'>','"':'"',"'":'''}[c]))}function draw(){fetch(U,{cache:'no-store'}).then(r=>{if(!r.ok)throw Error('Catalog data unavailable');return r.text()}).then(html=>{const doc=new DOMParser().parseFromString(html,'text/html'),parts=[...doc.querySelectorAll('script[data-brae-catalog="'+K+'"]')].sort((a,b)=>Number(a.dataset.braePart)-Number(b.dataset.braePart)),books=parts.flatMap(node=>{try{return JSON.parse(node.textContent)}catch(e){return[]}}),slots=[...document.querySelectorAll('.brae-catalog-slot[data-brae-page="'+K+'"]')],editing=!!document.querySelector('.sqs-edit-mode-active')||document.body.classList.contains('sqs-edit-mode-active');slots.forEach((slot,index)=>{const list=books.slice(index*50,index*50+50),section=slot.closest('section.page-section,section[data-section-id]')||slot;slot.innerHTML=list.map(b=>'<a class="brae-book" href="'+esc(b.u)+'" target="_blank" rel="noopener noreferrer" aria-label="Open '+esc(b.t)+' by '+esc(b.a)+'"><img src="'+esc(b.c)+'" alt="'+esc(b.t)+' by '+esc(b.a)+'" loading="lazy" decoding="async"></a>').join('');slot.hidden=!list.length&&!editing;if(!list.length&&!editing){section.style.setProperty('display','none','important');section.setAttribute('aria-hidden','true')}else{section.style.removeProperty('display');section.removeAttribute('aria-hidden')}});document.querySelectorAll('.brae-catalog-warning[data-brae-page="'+K+'"]').forEach(node=>node.remove());const required=Math.ceil(books.length/50);if(slots.length<required){const warning=document.createElement('p');warning.className='brae-catalog-warning';warning.dataset.braePage=K;warning.textContent='BRAE catalog setup warning: '+required+' cover sections are required, but only '+slots.length+' were found.';(slots[slots.length-1]||document.body).after(warning)}}).catch(error=>console.error('BRAE catalog:',error))}document.readyState==='loading'?document.addEventListener('DOMContentLoaded',draw):draw()})();</script><style>.brae-catalog-slot{--brae-gap:clamp(1rem,2.2vw,1.8rem);display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:var(--brae-gap);width:100%;height:auto}.brae-book{display:block;box-sizing:border-box;flex:0 1 calc((100% - (4 * var(--brae-gap)))/5);min-width:0;border-radius:12px;outline:none;text-decoration:none;transition:transform .24s ease,filter .24s ease}.brae-book img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;border-radius:12px;background:#eee;box-shadow:0 14px 28px rgba(25,14,10,.24),0 4px 10px rgba(25,14,10,.14);transition:box-shadow .24s ease}.brae-book:hover,.brae-book:focus-visible{transform:translateY(-7px) scale(1.025);filter:saturate(1.04)}.brae-book:hover img,.brae-book:focus-visible img{box-shadow:0 22px 42px rgba(25,14,10,.30),0 7px 16px rgba(25,14,10,.17)}.brae-catalog-warning{padding:12px 14px;background:#fff3cd;border:1px solid #e0b94d;color:#5d4100;font-weight:700}@media(max-width:900px){.brae-book{flex-basis:calc((100% - (3 * var(--brae-gap)))/4)}}@media(max-width:700px){.brae-catalog-slot{--brae-gap:.9rem}.brae-book{flex-basis:calc((100% - (2 * var(--brae-gap)))/3)}}@media(max-width:430px){.brae-book{flex-basis:calc((100% - var(--brae-gap))/2)}.brae-book,.brae-book img{border-radius:8px}}@media(prefers-reduced-motion:reduce){.brae-book,.brae-book img{transition:none}.brae-book:hover,.brae-book:focus-visible{transform:none}}</style>