:root{--ink:#1d2031;--paper:#f8f5ef;--coral:#ff705c;--lime:#d8e84e;--cream:#fffdf8;--muted:#686a74;--line:#e7e2da}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif}.site-header{min-height:76px;padding:0 clamp(20px,6vw,110px);display:flex;align-items:center;gap:30px;background:var(--cream);border-bottom:1px solid var(--line)}.brand{color:var(--ink);text-decoration:none;font-weight:700;font-size:22px;letter-spacing:-1.2px}.brand span,.intro h1 em{color:var(--coral)}nav{display:flex;gap:18px;align-items:center;flex:1}nav a{color:var(--ink);text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap}nav a.active{color:var(--coral)}.saved-button{font-size:13px;font-weight:700;background:var(--ink);color:#fff;text-decoration:none;padding:11px 15px;border-radius:99px;white-space:nowrap}.intro{background:var(--cream);padding-bottom:76px}.crumbs,.intro-copy,.directory,.closing{max-width:1184px;margin:auto}.crumbs{padding:28px 28px 34px;display:flex;gap:8px;color:var(--muted);font-size:13px}.crumbs a{color:var(--muted);text-decoration:none}.intro-copy{padding:0 clamp(28px,7vw,90px)}.eyebrow{margin:0 0 12px;color:var(--coral);font-size:11px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase}.intro h1,.directory h2{font:700 clamp(44px,5.5vw,74px)/.96 Fraunces,Georgia,serif;letter-spacing:-3px;margin:0}.intro-copy>p:not(.eyebrow){max-width:630px;margin:25px 0 0;color:var(--muted);font-size:17px;line-height:1.65}.directory{padding:86px 28px}.directory-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-bottom:30px;border-bottom:1px solid var(--line)}.directory h2{font-size:clamp(34px,4vw,51px)}.directory-heading>span{font:700 18px Fraunces,serif;color:var(--muted)}.author-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:30px}.author-card{display:grid;grid-template-columns:142px minmax(0,1fr);gap:24px;padding:25px;background:var(--cream);border:1px solid var(--line);border-radius:12px}.portrait-link{width:142px;height:142px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:50%;background:var(--lime);color:var(--ink);font:700 42px Fraunces,serif;text-decoration:none}.portrait-link img{width:100%;height:100%;object-fit:cover}.author-card h2{font:700 31px/.98 Fraunces,Georgia,serif;letter-spacing:-1.5px;margin:0}.author-card h2 a{color:var(--ink);text-decoration:none}.author-card p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.55;margin:12px 0}.author-card small{display:block;color:var(--muted);font-size:12px}.text-link{display:inline-block;color:var(--ink);font-size:13px;font-weight:700;text-decoration:none;margin-top:17px}.text-link span{color:var(--coral)}.closing{padding:65px 28px 74px;display:flex;justify-content:space-between;align-items:center;gap:35px}.closing p{max-width:660px;margin:0;font:700 clamp(27px,3vw,40px)/1.1 Fraunces,serif;letter-spacing:-1.5px}.button{display:inline-flex;gap:12px;align-items:center;background:var(--ink);color:#fff;text-decoration:none;border-radius:8px;padding:14px 17px;font-size:14px;font-weight:700;white-space:nowrap}.loading,.not-found{min-height:65vh;padding:20vh 9vw;font:600 22px Fraunces,serif}.empty{color:var(--muted)}footer{background:var(--ink);color:#fff;padding:42px max(28px,calc((100vw - 1184px)/2));display:flex;justify-content:space-between;gap:30px;align-items:center}footer .brand{color:#fff}footer p{max-width:550px;margin:0;color:#c4c7d1;font-size:12px;line-height:1.5}@media(max-width:980px){nav{gap:12px}nav a{font-size:12px}.author-grid{grid-template-columns:1fr}}@media(max-width:700px){.site-header{min-height:62px;padding:0 16px}.site-header nav{display:none}.site-header{justify-content:space-between}.saved-button{font-size:11px;padding:9px}.crumbs{padding:20px 20px 30px}.intro{padding-bottom:56px}.intro-copy{padding:0 20px}.intro h1{font-size:51px}.directory{padding:58px 20px}.directory-heading{display:block}.directory-heading>span{display:block;margin-top:14px}.author-grid{gap:16px}.author-card{grid-template-columns:92px minmax(0,1fr);gap:16px;padding:18px}.portrait-link{width:92px;height:92px;font-size:30px}.author-card h2{font-size:26px}.author-card p:not(.eyebrow){font-size:13px}.closing{display:block;padding:55px 20px}.closing .button{margin-top:25px}footer{display:block;padding:34px 20px}footer p{margin-top:12px}}
