
:root{--ink:#111827;--navy:#0b1f3a;--deep-navy:#071426;--slate:#475569;--muted:#64748b;--paper:#f7f3ea;--paper-2:#efe7d8;--white:#fff;--brass:#b5853b;--brass-dark:#7a5524;--line:#d8cdbb;--blue:#1d4ed8;--max:1160px;--radius:22px;--shadow:0 24px 70px rgba(7,20,38,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}a{color:var(--navy);text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--brass-dark)}.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;padding:12px;z-index:20}.mast{height:72px;background:rgba(7,20,38,.96);backdrop-filter:blur(16px);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(255,255,255,.1)}.nav{max-width:var(--max);height:100%;margin:auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:'Source Serif 4',Georgia,serif;font-size:24px;font-weight:700;color:#fff;text-decoration:none;letter-spacing:-.03em}.brand span{color:var(--brass)}.navlinks{display:flex;gap:26px;align-items:center}.navlinks a{color:rgba(255,255,255,.78);font-size:14px;font-weight:600;text-decoration:none}.navlinks a:hover,.navlinks a[aria-current=page]{color:#fff}.menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:999px;padding:8px 12px}.hero{background:radial-gradient(circle at 78% 20%,rgba(181,133,59,.18),transparent 34%),linear-gradient(135deg,var(--paper),#fff 55%,var(--paper-2));border-bottom:1px solid var(--line)}.hero-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(0,1.1fr) 420px;gap:64px;align-items:center;min-height:720px;padding:72px 24px}.eyebrow,.caption{font-family:'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--brass-dark);font-weight:700}.h1{font-family:'Source Serif 4',Georgia,serif;font-size:clamp(48px,7vw,86px);line-height:.98;letter-spacing:-.055em;margin:14px 0 24px;font-weight:700}.h2{font-family:'Source Serif 4',Georgia,serif;font-size:clamp(34px,4vw,58px);line-height:1.03;letter-spacing:-.045em;margin:0 0 18px}.lead{font-size:clamp(19px,2.2vw,25px);line-height:1.45;color:#334155;max-width:720px}.support{color:var(--slate);font-size:18px}.btnrow{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;border-radius:999px;border:1px solid transparent;font-weight:800;text-decoration:none;cursor:pointer}.primary{background:var(--navy);color:#fff}.primary:hover{background:var(--deep-navy);color:#fff}.secondary{border-color:var(--brass);background:rgba(255,255,255,.58);color:var(--navy)}.secondary:hover{background:#fff;color:var(--brass-dark)}.hero-card,.profile-card{background:var(--deep-navy);color:#fff;border-radius:28px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.1)}.headshot{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 22%;display:block;background:var(--deep-navy)}.about-headshot{aspect-ratio:1/1;object-position:center 18%;border-radius:18px}
.hero-card-body{padding:28px}.hero-card h2{font-family:'Source Serif 4',Georgia,serif;font-size:38px;margin:4px 0}.hero-card p{color:rgba(255,255,255,.76)}.portrait-mark{min-height:300px;background:linear-gradient(145deg,rgba(181,133,59,.35),transparent 42%),linear-gradient(135deg,#102846,#071426);display:flex;align-items:center;justify-content:center}.portrait-mark span{font-family:'Source Serif 4',Georgia,serif;font-size:92px;color:#e7c989}.portrait-mark.large{min-height:380px}.section{max-width:var(--max);margin:auto;padding:88px 24px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.text-link{font-weight:800}.featured{background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;display:flex;gap:28px;align-items:end;justify-content:space-between;box-shadow:0 16px 45px rgba(7,20,38,.07);margin-bottom:24px}.featured h3,.post h3,.card h3{font-family:'Source Serif 4',Georgia,serif;font-size:32px;line-height:1.08;margin:10px 0}.featured h3 a,.post h3 a{text-decoration:none}.posts,.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.post,.card{background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:0 12px 40px rgba(7,20,38,.06);transition:transform .18s ease,box-shadow .18s ease}.post:hover,.card:hover{transform:translateY(-3px);box-shadow:0 20px 60px rgba(7,20,38,.12)}.post.big{grid-column:span 2}.tag{display:inline-flex;background:rgba(181,133,59,.12);color:var(--brass-dark);border-radius:999px;padding:6px 10px;font-family:'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800}.band{background:var(--deep-navy);color:#fff}.band-inner{max-width:var(--max);margin:auto;padding:88px 24px;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.band .h2,.band .support{color:#fff}.theme-list{display:grid;gap:14px}.theme-list div{border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:20px;background:rgba(255,255,255,.045)}.theme-list strong{display:block;color:#fff;font-size:18px}.theme-list span{color:rgba(255,255,255,.72)}.split,.two-col{display:grid;grid-template-columns:.82fr 1.18fr;gap:60px}.quote{background:linear-gradient(135deg,var(--navy),var(--deep-navy));color:#fff;padding:92px 24px}.wrap{max-width:var(--max);margin:auto}.narrow{max-width:820px}.quote p{font-family:'Source Serif 4',Georgia,serif;font-size:clamp(34px,5vw,64px);line-height:1.05;margin:0 0 18px}.quote span{color:#e7c989}.page-hero{background:linear-gradient(135deg,#fff,var(--paper));border-bottom:1px solid var(--line);padding:88px 24px}.about-hero{padding:72px 24px}.content{font-size:18px}.bio-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:56px;align-items:start}.bio-aside{position:sticky;top:96px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 12px 40px rgba(7,20,38,.06)}.bio-aside h2{font-family:'Source Serif 4',Georgia,serif;margin-top:0}.checklist{padding-left:20px;color:var(--slate)}.checklist li{margin-bottom:12px}.article-copy h2{font-family:'Source Serif 4',Georgia,serif;font-size:36px;letter-spacing:-.035em;margin:42px 0 10px}.article-copy p{color:#334155}.source-links{font-weight:700}.article-hero{padding-bottom:64px}.band .eyebrow{color:#e7c989}.mobile-only{color:#fff}.contact-panel{max-width:760px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}
.contact-form{max-width:720px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:28px;padding:32px;display:grid;gap:18px;box-shadow:var(--shadow)}label{font-weight:800;color:var(--navy)}input,select,textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:14px;padding:14px 16px;font:inherit;background:#fff}.foot{background:#071426;color:rgba(255,255,255,.72);padding:52px 24px}.footer-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:40px}.foot a{color:#fff}.foot-brand{display:inline-block;margin-bottom:12px}.small{font-size:13px;color:inherit}.profile-card{padding:18px}.profile-card .caption{color:#e7c989;padding:0 10px 10px}.editorial{align-items:stretch}@media(max-width:880px){.h1{font-size:clamp(42px,12vw,52px);line-height:1.02}.hero-inner{gap:32px}.menu-toggle{display:inline-flex}.navlinks{display:none;position:absolute;left:12px;right:12px;top:78px;background:rgba(7,20,38,.98);border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:18px;flex-direction:column;align-items:stretch;box-shadow:0 24px 70px rgba(7,20,38,.28)}.navlinks a{min-height:46px;display:flex;align-items:center}.navlinks.open{display:flex}.hero-inner,.band-inner,.split,.two-col,.bio-layout,.footer-inner{grid-template-columns:1fr}.hero-inner{min-height:0;padding:54px 20px}.section,.band-inner{padding:58px 20px}.page-hero{padding:58px 20px}.posts,.grid{grid-template-columns:1fr}.post.big{grid-column:auto}.featured{display:block}.bio-aside{position:static}.section-head{display:block}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
