.library-nav{display:flex;justify-content:space-between;align-items:center;min-height:78px;border-bottom:1px solid var(--rule)}
.library-nav>a:last-child,.library-footer{font-size:13px}
.library-hero{padding:70px 0 48px}
.library-hero .mono{color:var(--ink-50);margin-bottom:22px}
.library-hero h1{font-size:clamp(56px,9.6vw,128px);font-weight:500;line-height:1.05;letter-spacing:-.065em}
.library-hero h1 span{color:var(--accent)}
.library-lead{font-size:clamp(24px,3vw,38px);line-height:1.25;margin-top:28px;letter-spacing:-.025em}
.library-intro{max-width:560px;margin-top:18px;color:var(--ink-70);font-size:16px}
.filters{display:flex;gap:8px;flex-wrap:wrap;padding:0 0 36px}
.filters[hidden],.library-section[hidden]{display:none}
.filters button{border:1px solid var(--line);border-radius:0;background:white;color:var(--ink);padding:11px 16px;font:inherit;font-size:13px;cursor:pointer}
.filters button[aria-pressed="true"]{background:var(--ink);color:white;border-color:var(--ink)}
.filters button:hover{border-color:var(--ink)}
.library a:focus-visible,.filters button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.library-section{border-top:1px solid var(--rule);padding:24px 0 64px}
.library-section-header{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:28px}
.library-section h2{font-size:clamp(24px,3vw,36px);line-height:1.15}
.library-section-header .mono{color:var(--ink-50);white-space:nowrap}
.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.library-card{display:flex;flex-direction:column;border-top:3px solid var(--ink);padding:18px 0 20px;min-height:260px;transition:border-color .15s}
.library-card:hover{border-color:var(--accent)}
.library-card:hover h3{color:var(--accent)}
.library-card .mono{color:var(--ink-50);margin-bottom:22px;font-size:10px}
.library-card h3{font-size:24px;font-weight:500;line-height:1.2;letter-spacing:-.025em}
.library-card p{margin-top:16px;color:var(--ink-70);font-size:14px;line-height:1.6}
.library-card .card-action{padding-top:28px;margin-top:auto;font-size:13px}
.library-section[data-type="articles"] .library-card{border-top-color:var(--accent)}
.library-section[data-type="interactive"] .library-card{background:#f4f4f1;padding:22px;border-top:0}
.library-footer{border-top:1px solid var(--rule);display:flex;gap:24px;justify-content:space-between;padding-top:26px;padding-bottom:32px;color:var(--ink-70)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:900px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-hero{padding-top:48px}}
@media(max-width:600px){.library .wrap{padding-left:22px;padding-right:22px}.library-nav{min-height:64px}.library-hero{padding:40px 0 32px}.library-hero h1{font-size:clamp(48px,11vw,66px)}.library-hero .mono{font-size:9px}.library-intro{font-size:14px}.library-grid{grid-template-columns:1fr;gap:12px}.library-card{min-height:0}.library-card h3{font-size:24px}.library-card .mono{margin-bottom:14px}.library-section-header{align-items:flex-start}.library-section-header .mono{font-size:10px}.library-section{padding-bottom:36px}.library-footer{flex-wrap:wrap;gap:14px}.library-footer span{width:100%}.filters{gap:6px;padding-bottom:26px}.filters button{font-size:12px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.library-card{transition:none}}
