*{box-sizing:border-box}body{margin:0;background:#fff;color:#202020;font:14px Arial,sans-serif}a{color:inherit;text-underline-offset:4px}header{padding:22px 4vw;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between}nav{display:flex;gap:24px;font-size:12px}main{padding:45px 4vw}.eyebrow{font-size:10px;letter-spacing:2px;color:#777}h1{font-size:clamp(32px,4vw,56px);font-weight:500;letter-spacing:-2px;margin:18px 0}.intro{max-width:720px;color:#777;line-height:1.7}.filters{display:flex;gap:16px;flex-wrap:wrap;margin:32px 0 20px}.filters label{font-size:10px;color:#777;display:flex;flex-direction:column;gap:8px}input,select{font:14px Arial;padding:11px 14px;border:1px solid #ddd;border-radius:5px;background:white;min-width:190px}input{width:290px}#count{color:#777;font-size:12px;margin:25px 0}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:32px 22px}.card{min-width:0;border-top:1px solid #eee;padding:18px 0 6px}.card .image{height:215px;display:grid;place-items:center}.card img{width:100%;height:100%;object-fit:contain;max-height:215px}.card h2{font-size:17px;font-weight:500;line-height:1.35;margin:15px 0 9px}.card small{font-size:10px;color:#8a8a8a;letter-spacing:.4px}.card p{font-size:12px;line-height:1.6;color:#777;margin:8px 0}.card .open{display:inline-block;font-size:11px;margin:12px 0}.card details{font-size:11px;color:#777;line-height:1.7}.card summary{cursor:pointer}.card .sources{display:flex;gap:13px;flex-wrap:wrap}footer{border-top:1px solid #ddd;margin-top:55px;padding-top:25px;color:#777;max-width:900px;font-size:12px;line-height:1.7}button,a,input,select,summary{outline-offset:4px}.status{font-size:10px;color:#9b5b33}#load-error{color:#9b332b}@media(max-width:550px){main{padding:25px 20px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}.card .image,.card img{height:150px}.card h2{font-size:14px}nav{font-size:10px;gap:12px}.filters label,.filters input,.filters select{width:100%;min-width:0}h1{letter-spacing:-1px}}
/* Comfortable touch browsing, including iOS inputs that don't zoom on focus. */
@media(max-width:800px){input,select{font-size:16px;min-height:48px}header{gap:18px}nav{flex-wrap:wrap;justify-content:flex-end;gap:4px 16px}nav a,.card summary,.card .open{min-height:44px;display:inline-flex;align-items:center}.card summary{font-size:12px}.card{overflow-wrap:anywhere}.card p{font-size:13px}.card small{font-size:11px}.filters{scroll-margin-top:16px}}
@media(max-width:360px){main{padding-inline:16px}.cards{gap:24px 12px}.card .image,.card img{height:132px}header nav{font-size:12px;max-width:160px}}
