:root{--paper:#faf9f6;--white:#fff;--ink:#182c33;--muted:#53656a;--accent:#146553;--line:#d8dfda;--tint:#eef3ed;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:5px}
a:hover{color:var(--accent)}
a:focus-visible{outline:3px solid var(--accent);outline-offset:5px;border-radius:2px}
.wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}
.skip-link{position:absolute;left:24px;top:-100px;z-index:10;background:var(--ink);color:white;padding:12px 18px}
.skip-link:focus{top:12px;color:white}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:29px;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:17px;font-weight:650;letter-spacing:-.4px}
.monogram{display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--ink);font:16px var(--serif);letter-spacing:-1px}
nav{display:flex;gap:30px;font-size:14px}
nav a{text-decoration:none}
.hero{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:center;gap:70px;padding-block:88px 96px}
.eyebrow{margin:0 0 19px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1{margin-bottom:23px;font:clamp(44px,5.5vw,68px)/1.07 var(--serif);letter-spacing:-3px}
.name-dot{color:var(--accent)}
.hero-deck{margin-bottom:22px;font:clamp(23px,2.5vw,30px)/1.35 var(--serif);letter-spacing:-.5px}
.hero-description{max-width:565px;color:var(--muted);font-size:16px;line-height:1.85}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:28px}
.button{display:inline-flex;align-items:center;gap:24px;background:var(--ink);color:var(--white);padding:12px 19px;text-decoration:none;font-size:13px;font-weight:600;border:1px solid var(--ink);border-radius:3px}
.button:hover{background:var(--accent);border-color:var(--accent);color:white}
.text-link{font-size:13px;font-weight:600;text-decoration:none}
.text-link:hover{text-decoration:underline}
.text-link span{display:inline-block;margin-left:8px}
.focus-note{border-top:3px solid var(--accent);background:var(--tint);padding:29px 24px 22px}
.note-label{font:22px var(--serif)}
.focus-note ol{list-style:none;padding:0;margin:22px 0}
.focus-note li{display:flex;gap:15px;font-size:13px;padding:12px 0;border-bottom:1px solid var(--line)}
.focus-note li span{font-size:11px;color:var(--accent)}
.focus-note p{margin:0;font-size:12px;color:var(--muted);line-height:1.7}
.writing-section{padding-block:65px 55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f3f4ef}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.section-heading .eyebrow,.about-section .eyebrow,.connect-section .eyebrow{margin-bottom:12px}
h2{margin:0;font:36px/1.2 var(--serif);letter-spacing:-1px}
.section-heading>.text-link{margin-bottom:7px}
.section-intro{max-width:680px;font-size:14px;color:var(--muted);margin:22px 0 34px}
.article-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.article-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);padding:28px 30px 25px;border-radius:3px}
.featured-group{margin-top:34px}
.featured-group-title{font:600 14px/1.5 var(--sans);letter-spacing:.1px;margin-bottom:15px;color:var(--accent)}
.article-card h4{font:23px/1.35 var(--serif);letter-spacing:-.35px;margin:0 0 15px}
.article-card h4 a{text-decoration:none}
.article-card h4 a:hover{text-decoration:underline}
.series-links{list-style:none;padding:0;margin:0 0 25px;display:grid;gap:16px}
.series-links li{padding-top:15px;border-top:1px solid var(--line)}
.series-links a{font-size:14px;font-weight:600}
.series-links li>span{display:block;font-size:13px;color:var(--muted);margin-top:7px;line-height:1.7}
.series-links li>.series-byline{font-size:11px}
.security-series{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.collection-card .publication-label{margin-top:auto}
.article-meta{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:21px;font-size:11px;line-height:1.5}
.article-meta>span{color:var(--accent);font-weight:650}
.article-meta time{color:var(--muted);white-space:nowrap}
h3{font:23px/1.35 var(--serif);letter-spacing:-.35px;margin-bottom:15px}
h3 a{text-decoration:none}
h3 a:hover{text-decoration:underline}
.article-card>p:not(.byline){font-size:14px;color:var(--muted);margin-bottom:23px;line-height:1.8}
.byline{margin-top:auto;margin-bottom:13px;font-size:11px;line-height:1.8;color:var(--muted)}
.publication-label{font-size:11px;font-weight:600;border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between}
.source-note{font-size:11px;color:var(--muted);margin:25px 0 0}
.about-section{display:grid;grid-template-columns:1fr 1.7fr;gap:80px;padding-block:80px;border-bottom:1px solid var(--line)}
.about-copy p{color:var(--muted);font-size:15px}
.about-copy .about-lead{font:25px/1.5 var(--serif);color:var(--ink);margin-bottom:22px}
.about-copy p:last-child{margin-bottom:0}
.research-question,.about-copy .research-question{max-width:850px;font:clamp(22px,2.7vw,31px)/1.5 var(--serif);color:var(--ink);letter-spacing:-.4px}
.publication-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 20px;font-size:14px;margin:8px 0 25px}
.publication-details dt{font-weight:600}
.publication-details dd{margin:0;color:var(--muted);overflow-wrap:anywhere}
.publication-card{max-width:900px}
.research-section{padding-block:65px 55px}
.research-interest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.publication-card .hero-actions{margin-top:0}
.connect-section{display:grid;grid-template-columns:1fr 1.7fr;gap:80px;padding-block:70px 80px}
.connect-section>div>p:last-child{font-size:14px;color:var(--muted);margin:18px 0 0}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 24px}
.profile-grid a{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding-block:10px 20px;text-decoration:none;font-size:15px;font-weight:600}
.profile-grid small{display:block;font-weight:400;font-size:11px;color:var(--muted);margin-top:5px}
.profile-grid a:hover{border-bottom-color:var(--accent)}
.site-footer{display:flex;justify-content:space-between;gap:32px;border-top:1px solid var(--line);padding-block:27px 35px;color:var(--muted);font-size:11px}
.footer-name{color:var(--ink);text-decoration:none;font-size:13px;font-weight:600}
.site-footer p{margin:6px 0 0}
.site-footer>p{text-align:right}
.not-found{min-height:65vh;padding-block:100px}
.not-found h1{font-size:55px}
[hidden]{display:none!important}
nav a[aria-current="page"]{color:var(--accent);text-decoration:underline}
.archive-callout{display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid var(--line);background:var(--tint);padding:28px 30px;margin-top:30px}
.archive-callout h3{margin-bottom:8px}
.archive-callout p{font-size:14px;color:var(--muted);margin:0}
.archive-callout .button{flex-shrink:0}
.archive-hero{padding-block:65px 35px}
.archive-hero h1{font-size:56px;margin-bottom:20px}
.archive-hero .section-intro{max-width:730px;font-size:16px;margin:0 0 20px}
.archive-summary{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:24px;font-size:13px;color:var(--muted)}
.archive-summary strong{color:var(--ink)}
.archive-controls{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.1fr) minmax(0,.7fr) auto;align-items:end;gap:16px;padding:24px;background:var(--tint);border:1px solid var(--line);border-radius:3px}
.archive-controls label{display:block;font-size:12px;font-weight:600}
.archive-controls input,.archive-controls select{display:block;width:100%;height:43px;margin-top:7px;border:1px solid #a9b8ae;border-radius:3px;background:var(--paper);color:var(--ink);font:14px var(--sans);padding:8px 11px}
.archive-controls input:focus-visible,.archive-controls select:focus-visible,.reset-filters:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.reset-filters{height:43px;background:transparent;border:0;font:13px var(--sans);text-decoration:underline;text-underline-offset:4px;cursor:pointer;color:var(--accent);padding:10px}
.archive-status{font-size:12px;color:var(--muted);margin:18px 0 0}
.year-group{margin-block:45px}
.year-heading{display:flex;align-items:baseline;gap:16px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.year-heading h2{font-size:31px}
.year-heading span{font-size:12px;color:var(--muted)}
.archive-entry{display:grid;grid-template-columns:125px minmax(0,1fr);gap:25px;padding:27px 0;border-bottom:1px solid var(--line)}
.archive-entry>time{font-size:12px;color:var(--muted);padding-top:5px}
.archive-entry h3{font-size:24px;margin-bottom:11px}
.entry-summary{max-width:820px;color:var(--muted);font-size:14px;margin-bottom:12px}
.entry-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 18px;font-size:11px;margin-bottom:10px}
.topic-tag{font-weight:650;color:var(--accent)}
.entry-publisher{color:var(--muted)}
.archive-entry .byline{margin-bottom:0}
.archive-empty{padding:40px 0;font:23px var(--serif)}
.archive-notes{border-top:1px solid var(--line);padding-block:25px 50px;color:var(--muted);font-size:12px}
.archive-notes p{max-width:850px;margin-bottom:12px}
@media(max-width:800px){.archive-controls{grid-template-columns:1fr 1fr}.archive-controls label:first-child{grid-column:1/-1}.archive-callout{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.archive-hero{padding-block:45px 30px}.archive-hero h1{font-size:45px;letter-spacing:-2px}.archive-controls{gap:14px;padding:18px}.archive-controls .reset-filters{grid-column:1/-1;justify-self:start;height:auto;padding:0}.archive-entry{grid-template-columns:1fr;gap:10px;padding-block:25px}.archive-entry>time{padding:0}.archive-entry h3{font-size:23px}.year-group{margin-block:35px}.archive-callout{padding:23px}.archive-hero .section-intro{font-size:15px}}
@media print{.archive-controls,.archive-status,.archive-callout{display:none}.archive-entry{break-inside:avoid}.archive-hero{padding-block:25px}}
@media(min-width:1600px){.hero{padding-block:105px 110px}}
@media(max-width:960px){.wrap{width:calc(100% - 56px)}.hero{grid-template-columns:minmax(0,1fr) 250px;gap:35px;padding-block:65px}.about-section,.connect-section{gap:40px;grid-template-columns:1fr 1.5fr}.article-card{padding:24px}.profile-grid{grid-template-columns:1fr}.desktop-break{display:none}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{padding-block:20px;gap:16px;flex-wrap:wrap}.brand{font-size:15px}nav{gap:19px;font-size:13px}.monogram{width:30px;height:30px}.hero{grid-template-columns:1fr;gap:35px;padding-block:48px 50px}h1{font-size:49px;letter-spacing:-2px}.hero-deck{font-size:27px}.hero-description{font-size:15px}.hero-actions{gap:19px}.focus-note{padding:23px}.focus-note ol{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-block:15px}.focus-note li{font-size:12px;gap:9px}.section-heading{display:block}.section-heading>.text-link{display:inline-block;margin:20px 0 0}.writing-section{padding-block:43px}.article-grid{grid-template-columns:1fr;gap:16px}.article-card{padding:23px}h2{font-size:32px}h3{font-size:23px}.article-meta{margin-bottom:17px}.about-section,.connect-section{grid-template-columns:1fr;gap:28px;padding-block:48px}.profile-grid{grid-template-columns:1fr 1fr;gap:12px 22px}.site-footer{flex-direction:column;gap:15px}.site-footer>p{text-align:left}}
@media(max-width:380px){.brand{font-size:14px}nav{gap:16px}.site-header{gap:18px}h1{font-size:43px}.profile-grid,.focus-note ol{grid-template-columns:1fr}.hero-actions{align-items:flex-start;flex-direction:column}.article-card{padding:20px}}
@media(max-width:700px){.security-series{grid-template-columns:1fr;gap:14px}.featured-group{margin-top:28px}.article-card h4{font-size:23px}.publication-details{grid-template-columns:1fr;gap:3px}.publication-details dd{margin-bottom:12px}nav{flex-wrap:wrap}.research-question,.about-copy .research-question{font-size:24px}}
@media(max-width:960px){.research-interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.research-interest-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body{background:white;font-size:11pt}.wrap{width:100%}.site-header nav,.hero-actions,.focus-note,.skip-link{display:none}.hero{display:block;padding:25px 0}.hero h1{font-size:36pt}.writing-section{padding:25px 0}.article-grid{display:block}.article-card{break-inside:avoid;margin-bottom:15px}.about-section,.connect-section{display:block;padding:25px 0}.site-footer{font-size:9pt}}
