.ab .bl-bhero{padding-block:clamp(44px,6.4vw,80px) 0}.ab .bl-bhero h1{font-size:clamp(38px,5.8vw,68px);text-wrap:balance;max-width:16ch}.ab .bl-bhero h1 em{font-style:italic;font-family:var(--font-disp)}.ab .bl-bhero .lead{margin-top:18px;max-width:54ch}.ab .bl-cat{display:inline-block;font-family:var(--font-alt);font-weight:700;font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--wisteria-deep)}.ab .bl-featured{padding-block:clamp(34px,4.6vw,56px) 0}.ab .bl-fcard{display:grid;gap:clamp(22px,3.4vw,48px);text-decoration:none;align-items:center;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding-block:clamp(24px,3.4vw,40px)}@media (min-width:880px){.ab .bl-fcard{grid-template-columns:1.1fr .9fr}}.ab .bl-fcard .bl-photo{overflow:hidden;border-radius:var(--radius)}.ab .bl-fcard img{width:100%;height:clamp(240px,34vw,400px);object-fit:cover;transition:transform .6s var(--ease)}.ab .bl-fcard:hover img{transform:scale(1.03)}.ab .bl-fcard h2{font-size:clamp(26px,3.6vw,42px);margin-top:12px;transition:color .25s var(--ease)}.ab .bl-fcard:hover h2{color:var(--spruce)}.ab .bl-fcard .bl-dek{margin-top:12px;color:var(--ink-60);font-size:16px;line-height:1.65;max-width:48ch}.ab .bl-readlink{display:inline-block;margin-top:18px;font-weight:600;font-size:14.5px;color:var(--spruce);text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--brass)}.ab .bl-filters{display:flex;gap:clamp(14px,2.4vw,26px);flex-wrap:wrap;padding-block:clamp(26px,3.6vw,40px) 0}.ab .bl-chip{background:none;border:none;padding:8px 0;cursor:pointer;font-family:var(--font-alt);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);position:relative;transition:color .2s var(--ease)}.ab .bl-chip:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--wisteria-deep);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.ab .bl-chip:hover{color:var(--ink)}.ab .bl-chip.active{color:var(--wisteria-deep)}.ab .bl-chip.active:after{transform:scaleX(1)}.ab .bl-grid{display:grid;gap:clamp(24px,3.4vw,40px) clamp(20px,3vw,32px);padding-block:clamp(28px,4vw,48px) var(--section-y)}@media (min-width:640px){.ab .bl-grid{grid-template-columns:1fr 1fr}}@media (min-width:1020px){.ab .bl-grid{grid-template-columns:1fr 1fr 1fr}}.ab .bl-pcard{text-decoration:none;display:block}.ab .bl-pcard .bl-photo{overflow:hidden;border-radius:var(--radius-sm);border-bottom:2px solid var(--brass-pale)}.ab .bl-pcard img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .6s var(--ease)}.ab .bl-pcard:hover img{transform:scale(1.04)}.ab .bl-pcard .bl-cat{margin-top:14px}.ab .bl-pcard h3{font-size:clamp(19px,2.1vw,23px);margin-top:8px;line-height:1.2;transition:color .25s var(--ease)}.ab .bl-pcard:hover h3{color:var(--spruce)}.ab .bl-pcard .bl-dek{margin-top:8px;font-size:14.5px;color:var(--ink-60);line-height:1.6;max-width:40ch}.ab .bl-pcard-soon{cursor:default}.ab .bl-pcard-soon:hover img{transform:none}.ab .bl-pcard-soon:hover h3{color:var(--ink)}.ab .bl-pcard-soon .bl-photo{position:relative}.ab .bl-soon{position:absolute;top:12px;left:12px;z-index:1;font-family:var(--font-alt);font-weight:700;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-60);background:color-mix(in oklab,var(--oxford-white) 86%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--brass-pale);border-radius:999px;padding:5px 11px}.ab .bl-empty{padding:40px 0 var(--section-y);color:var(--ink-60)}.ab .bl-bookstrip{background:var(--spruce-deep);color:var(--oxford-white);padding-block:clamp(40px,5.4vw,68px)}.ab .bl-bookstrip .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.ab .bl-bookstrip h2{font-size:clamp(24px,3.2vw,36px);max-width:22ch;text-wrap:balance}.ab .bl-bookstrip p{margin-top:8px;font-size:14.5px;color:color-mix(in oklab,var(--oxford-white) 72%,transparent)}@media (prefers-reduced-motion:reduce){.ab .bl-fcard img,.ab .bl-pcard img{transition:none}}