@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-latin-500-normal.BsRWmXhO.woff2)format("woff2"),url(/_astro/cormorant-garamond-latin-500-normal.zIXX3Q-H.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-latin-500-italic.Y14P-dkT.woff2)format("woff2"),url(/_astro/cormorant-garamond-latin-500-italic.DhNIfkTX.woff)format("woff")}:root{--paper:#f6f4ee;--ink:#15171b;--muted:#4f5663;--blue:#284fe8;--pale:#bdcaff;--line:#c7c5bc;--ease:cubic-bezier(.22,1,.36,1);color:var(--ink);background:var(--paper);font-family:system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}p{line-height:1.65}a{color:inherit;text-underline-offset:.23em}a:hover{color:var(--blue)}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:4px}main:focus{outline:none}.shell{width:min(100% - clamp(32px,10vw,160px),1280px);margin-inline:auto}.skip{z-index:5;background:var(--paper);padding:12px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip:focus{transform:none}.mast{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;min-height:78px;display:flex}.signature{font-family:Georgia,serif;font-size:1.65rem;font-weight:700;line-height:44px;text-decoration:none}.signature span,.accent{color:var(--blue)}nav,.actions{flex-wrap:wrap;align-items:center;gap:4px clamp(12px,3vw,32px);display:flex}nav a,.actions a,.footer a,.back,.about a,.contact a,.prose a{align-items:center;gap:10px;min-height:44px;display:inline-flex}nav a{font-size:.875rem;font-weight:650;text-decoration:none}nav a[aria-current]{text-decoration:underline}#motion-toggle{color:var(--muted);text-underline-offset:.24em;background:0 0;border:0;min-height:44px;padding:0;font-size:.78rem;text-decoration:underline}.kicker{letter-spacing:.15em;text-transform:uppercase;font-size:.72rem;font-weight:650;line-height:1.55}.signal{background:var(--blue);vertical-align:1px;width:7px;height:7px;margin-right:7px;display:inline-block}.hero-location{float:right;color:var(--muted)}.hero{padding-block:clamp(40px,8vw,114px) clamp(46px,7vw,95px)}h1,h2,h3{letter-spacing:-.065em;overflow-wrap:break-word;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:.99}.hero h1{margin:clamp(26px,4vw,56px) 0;font-size:clamp(2.65rem,10.2vw,9.35rem);line-height:.94}.hero h1>span{display:block}.hero h1 i{font-style:normal;display:block}.hero-rule{background:var(--blue);transform-origin:0;height:3px}.hero-bottom{grid-template-columns:1fr auto;align-items:start;gap:14px 36px;padding-top:24px;display:grid}.hero-bottom p{max-width:45ch;margin:0;font-size:clamp(1rem,2vw,1.3rem)}.actions a{white-space:nowrap}.primary{background:var(--blue);color:#fff;border:1px solid var(--blue);align-items:center;gap:14px;min-height:44px;padding:0 16px;font-weight:650;text-decoration:none;display:inline-flex}.primary:hover{color:#fff;background:#1739bf}.work{background:var(--ink);color:var(--paper);padding:clamp(48px,8vw,110px) 0}.work a:focus-visible{outline-color:var(--pale)}.work a:hover,.work .section-label,.row-meta span{color:var(--pale)}h2{font-size:clamp(2.65rem,6.4vw,6.5rem)}.section-label{color:var(--blue);margin:0 0 18px}.work-grid{margin-top:clamp(32px,6vw,76px)}.work-list{margin:0;padding:0;list-style:none}.work-list li{border-top:1px solid #52555e;padding:24px 0}.work-list li:last-child{border-bottom:1px solid #52555e}.row-meta{color:#d7d9e0;gap:14px;display:flex}.work-list h3{max-width:19ch;margin:14px 0 6px;font-size:clamp(2rem,4.1vw,3.8rem)}.work-list h3 a{min-height:44px;text-decoration:none;display:inline-block}.work-list h3 a span{color:var(--pale);vertical-align:middle;font:400 .42em system-ui}.work-list p{color:#dadce2;max-width:42ch;margin:14px 0}.rail{display:none}.art{--ground:#1932a3;--grid:#3e56bc;--mark:#d6dfff;width:100%;height:auto;display:block}.art.product{--ground:#ded9cb;--grid:#c8c0af;--mark:#252b48}.art.policy{--ground:#273548;--grid:#48566e;--mark:#e2e8ff}.stack-art{margin-top:22px}.about,.simple,.case{padding-block:clamp(44px,8vw,110px)}.about p:not(.kicker),.lede{max-width:55ch;font-size:clamp(1.08rem,2vw,1.32rem)}.footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 22px;padding-block:14px;font-size:.88rem;display:flex}.footer span{margin-right:auto}.simple h1,.case h1{max-width:16ch;font-size:clamp(3rem,8.5vw,8rem)}.case .back{margin-bottom:24px}.case-art{max-width:960px;margin:36px 0 44px}.media{overflow:hidden}.case-art figcaption{color:var(--muted);margin-top:12px;font-size:.85rem}.prose{max-width:66ch}.prose h2{margin-top:32px;font-size:clamp(1.85rem,4vw,2.7rem)}.prose .primary{margin-top:14px}.contact-grid{grid-template-columns:1fr 1fr;gap:clamp(18px,6vw,68px);margin-top:32px;display:grid}.contact-grid fieldset{border:1px solid var(--line);min-inline-size:0;margin:0;padding:clamp(12px,3vw,24px)}.contact-grid legend{padding:0 6px;font-weight:650}.contact-grid label{margin:14px 0 6px;font-weight:650;display:block}.contact-grid input,.contact-grid textarea{width:100%;color:var(--ink);background:0 0;border:1px solid #777a81;min-height:44px;padding:8px}.contact-grid textarea{resize:vertical}.contact-grid input:disabled,.contact-grid textarea:disabled{opacity:.65}.contact-grid button:disabled{background:#525967;border-color:#525967}.field-error{color:#9c2023;font-size:.9rem;display:block}.contact-grid small{color:var(--muted)}#verification{margin-top:14px}#form-status{margin:0}#form-status:empty{display:none}@media (width<=720px){.hero-bottom,.contact-grid{grid-template-columns:1fr}.hero-location{display:none}}@media (width<=370px){.mast{gap:0 12px}.footer span{width:100%}}@media (width>=900px) and (pointer:fine) and (prefers-reduced-motion:no-preference){.has-motion .work-grid{grid-template-columns:1fr .86fr;align-items:start;gap:8%;display:grid}.has-motion .stack-art{display:none}.has-motion .work-list li{min-height:250px;padding-block:38px}.has-motion .rail{display:block;position:sticky;top:24px}.rail-frame{aspect-ratio:560/390;position:relative;overflow:hidden}.rail-art{opacity:0;transition:opacity .26s var(--ease),transform .26s var(--ease);position:absolute;inset:0;transform:translateY(12px)}.rail-art.active{opacity:1;transform:none}.rail-meta{justify-content:space-between;gap:12px;margin-top:14px;display:flex}.rail-progress{fill:none;stroke:#606676;width:100%;height:2px;margin-top:12px;display:block}.rail-progress [data-progress]{stroke:var(--pale);stroke-dasharray:1;stroke-dashoffset:1px}.has-motion [data-hero]>span{margin-bottom:-.09em;padding-bottom:.09em;overflow:hidden}}@media (prefers-reduced-motion:no-preference){.has-motion a,.has-motion button{transition:color .16s,background-color .16s}}.portfolio-list{max-width:960px;margin:32px 0 16px}.portfolio-list>div{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px 32px;padding:18px 0;display:grid}.portfolio-list>div:last-child{border-bottom:1px solid var(--line)}.portfolio-list dt strong,.portfolio-list dt span{display:block}.portfolio-list dt span{color:var(--blue);margin-bottom:5px}.portfolio-list dd{margin:0;line-height:1.55}.writing-callout,.interests{border-top:1px solid var(--line)}.writing-list{max-width:830px;margin:32px 0;padding:0;list-style:none}.writing-list li{border-top:1px solid var(--line);padding:18px 0}.writing-list h3{letter-spacing:-.045em;margin:7px 0;font-size:clamp(1.45rem,4vw,2.35rem)}.writing-list p{max-width:66ch;margin:7px 0 0}@media (width<=560px){.portfolio-list>div{grid-template-columns:1fr}.mast nav{order:3;width:100%}}.opening{color:#f6f4ee;background:radial-gradient(at 85% 35%,#192953 0%,#0000 54%),#111725}.opening .hero{padding-block:clamp(30px,5vw,70px) clamp(36px,5vw,70px)}.opening .hero-location{color:#b7c5e7}.opening a:focus-visible{outline-color:#bdcaff}.hero-stage{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:center;gap:clamp(18px,3vw,45px);margin-block:clamp(26px,4vw,56px);display:grid}.hero-stage h1{margin:0;font-size:clamp(2.9rem,8.1vw,8.6rem);position:relative}.opening-plate{justify-self:end;width:100%;min-width:0;max-width:440px}.opening-plate svg{width:100%;height:auto;display:block}.plate-legend{color:#b7c5e7;justify-content:space-between;gap:10px;margin-top:12px;display:flex}.opening .hero-rule{height:1px}.work{background:#171b23}.work-list li{position:relative}.work-list li:before{content:"";transform-origin:0;background:#91a9ff;width:32px;height:1px;position:absolute;top:-1px;left:0;transform:scaleX(0)}.has-motion .work-list li.is-active:before{transform:scaleX(1)}.rail-frame{border:1px solid #5f6f9a}.writing-callout{background:#e8eaff;border-top:1px solid #a4b1e4;padding-inline:clamp(18px,5vw,64px)}.writing-list{counter-reset:archive}.writing-list li{counter-increment:archive}.writing-list .section-label:before{content:counter(archive, decimal-leading-zero) " / ";font-variant-numeric:tabular-nums}@media (width<=680px){.hero-stage{grid-template-columns:1fr}.hero-stage h1{font-size:clamp(2.9rem,11.6vw,5.4rem)}.opening-plate{width:min(56%,220px)}}@media (width>=900px) and (pointer:fine) and (prefers-reduced-motion:no-preference){.has-motion .rail-art{clip-path:inset(0 0 0 12%);transition:opacity .26s var(--ease),transform .48s var(--ease),clip-path .48s var(--ease);transform:translate(16px)scale(1.025)}.has-motion .rail-art.active{clip-path:inset(0);transform:none}.has-motion .work-list li:before{transition:transform .38s var(--ease)}}.plate-surface{transform-origin:50%}.rail-sweep{pointer-events:none;opacity:0;background:linear-gradient(90deg,#0000 28%,#8faaff15 44%,#d5e0ff96 50%,#8faaff15 56%,#0000 72%);position:absolute;inset:-14% 0}.work-list .work-topic{color:inherit}@media (width>=900px) and (pointer:fine) and (prefers-reduced-motion:no-preference){.has-motion .plate-surface{transform:perspective(720px) rotateX(var(--plate-y,0deg)) rotateY(var(--plate-x,0deg));transition:transform .32s var(--ease)}.has-motion .rail-art{clip-path:inset(0 0 0 25%);transform:translate(24px)scale(1.045)}.has-motion .rail-art.active{clip-path:inset(0);transform:none}}.plate-surface{padding:0 7% 5% 0;position:relative}.opening-photo{aspect-ratio:1.06;background:#192953;border:1px solid #8ca7ff80;overflow:hidden}.opening-photo img{object-fit:cover;object-position:61% 12%;width:100%;height:100%;display:block}.opening-plate svg.opening-orbit{background:#17213b;border:1px solid #8099ed;width:32%;position:absolute;bottom:0;right:0;box-shadow:0 8px 28px #0b1023b0}.experience-photo{max-width:960px;color:var(--paper);background:#171f33;grid-template-columns:minmax(0,2fr) minmax(0,1fr);margin:32px 0;display:grid}.experience-photo img{width:100%;height:auto;display:block}.experience-photo figcaption{align-self:end;padding:clamp(16px,3vw,30px)}.experience-photo .section-label{color:var(--pale);margin-bottom:12px;display:block}.experience-photo strong{font:400 clamp(1.45rem,3vw,2.55rem)/1.1 Georgia,serif;display:block}.experience-photo a:hover,.experience-photo a:focus-visible{color:var(--pale)}.experience-photo a:focus-visible{outline-color:var(--pale)}@media (width<=680px){.opening-plate{justify-self:start;width:min(100%,340px)}.opening-photo{aspect-ratio:1.45}.experience-photo{grid-template-columns:1fr}}:root{--paper:#f7f3e9;--ink:#202821;--muted:#565b50;--blue:#34574b;--pale:#e6cea0;--line:#ccc3af}.opening .hero-location,.plate-legend{color:#e0cba6}.opening .signal,.opening .hero-rule{background:#c7a66b}.opening .accent,.opening a:not(.primary):hover{color:#e6cea0}.opening-photo{background:#24362e;border-color:#ad9169}.opening-plate svg.opening-orbit{background:#26342c;border-color:#ad9169}.writing-callout{background:#eee8d8;border-color:#bcaa8b}.journal-lead{border-block:1px solid var(--line);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:clamp(20px,4vw,55px);margin:clamp(22px,5vw,62px) 0;padding:18px 0;display:grid}.journal-photo{margin:0;overflow:hidden}.journal-photo img{width:100%;height:auto;display:block}.journal-photo figcaption{color:var(--muted);margin-top:9px;font-size:.82rem}.journal-lead-copy{max-width:51ch}.journal-lead-copy :is(h2,h3){font-size:clamp(2rem,4.2vw,4rem)}.journal-lead-copy a,.archive-source{min-height:44px;color:var(--blue);align-items:center;font-weight:650;display:inline-flex}.archive-heading{margin-top:55px;font-size:clamp(2.35rem,5vw,4.2rem)}.writing-list li{padding-block:20px}@media (width<=730px){.journal-lead{grid-template-columns:1fr}}.journal-contact-sheet{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,3vw,38px);padding-bottom:28px;display:grid}@media (width<=560px){.journal-contact-sheet{grid-template-columns:1fr}}:root{--paper:#f5f0e4;--ink:#1b211d;--muted:#575a50;--blue:#1f3d31;--pale:#dcc394;--line:#d2c7ae;--brass:#a8864f;--oxblood:#7a2a26;--green-deep:#16231d;--display:"Cormorant Garamond",Georgia,"Times New Roman",serif}body{background:var(--paper)}h1,h2,h3,.signature,.experience-photo strong{font-family:var(--display);letter-spacing:-.025em;font-weight:500}h1,h2,h3{line-height:1}.hero h1,.hero-stage h1{letter-spacing:-.035em}.section-label,.kicker{letter-spacing:.2em}.section-label{color:var(--brass)}.work .section-label,.experience-photo .section-label{color:var(--pale)}::selection{background:#dcc39466}.opening{background:radial-gradient(ellipse at 82% 28%,#2a4437 0%,transparent 58%),var(--green-deep)}.opening .signal{background:var(--oxblood);outline:1px solid #c9a76a}.work,.experience-photo{background:#1e2a24}.primary{background:var(--blue);border-color:var(--blue);box-shadow:inset 0 0 0 1px #dcc39459,inset 0 0 0 3px var(--blue)}.primary:hover{background:#163026;border-color:#163026}.about+.about,.writing-callout,.interests{border-top:3px double var(--line)}.writing-callout{border-top-color:#bcaa8b}.seal{aspect-ratio:1;border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative}.seal svg{width:100%;height:100%;display:block}.seal img{z-index:1;object-fit:cover;object-position:50% 30%;border-radius:50%;width:69%;height:69%;position:absolute}.seal-field{fill:var(--green-deep)}.seal-core{fill:#21352b}.seal-line{fill:none;stroke:#c9a76a;stroke-width:2px}.seal-line.thin{stroke-width:.9px;stroke-opacity:.75}.seal-ticks{stroke:#c9a76a;stroke-width:1.4px;stroke-opacity:.7}.seal-monogram{font-family:var(--display);fill:#ead5ad;letter-spacing:-2px;font-size:78px;font-weight:500}.seal-text{fill:#e3cc9f;letter-spacing:2px;font:600 12.5px/1 system-ui,sans-serif}.seal-mark{width:46px}.seal-medal{width:clamp(132px,18vw,188px);margin-bottom:22px;box-shadow:0 0 0 1px #c9a76a55,0 14px 34px #0c140f80}.signature{color:var(--ink);align-items:center;gap:12px;font-size:1rem;line-height:1.2;display:inline-flex}.signature-name{letter-spacing:.26em;text-transform:uppercase;font:650 .76rem/1.2 system-ui,sans-serif}.signature:hover .seal{box-shadow:0 0 0 2px var(--brass)}.footer .footer-mark{align-items:center;gap:12px;margin-right:auto;display:inline-flex}.footer-mark .seal{width:34px}.footer-mark>span{display:block}.motto{font:italic 500 1.05rem/1.2 var(--display);color:var(--blue);margin-top:2px;display:block}.conversations{background:radial-gradient(ellipse at 12% 18%,#2a4437 0%,transparent 55%),var(--green-deep);color:var(--paper);border-top:3px double #8f7449;padding-block:clamp(52px,8vw,112px)}.conversations-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:clamp(28px,6vw,90px);display:grid}.conversations .section-label,.conversations .accent{color:var(--pale)}.conversations .lede{color:#e7e0cf;margin:22px 0 28px}.conversations a:not(.primary):hover{color:var(--pale)}.conversations a:focus-visible{outline-color:var(--pale)}.conversations .primary{background:var(--paper);color:var(--green-deep);border-color:var(--paper);box-shadow:inset 0 0 0 1px #a8864f80,inset 0 0 0 3px var(--paper)}.conversations .primary:hover{background:var(--pale);border-color:var(--pale);color:var(--green-deep)}.topic-list{margin:0;padding:0;list-style:none}.topic-list li{border-top:1px solid #4d5d52;padding:24px 0}.topic-list li:last-child{border-bottom:1px solid #4d5d52}.topic-mark{color:var(--pale);margin:0}.topic-mark:before{content:"";background:var(--oxblood);vertical-align:1px;outline:1px solid #c9a76a;width:8px;height:8px;margin-right:10px;display:inline-block}.topic-list h3{margin:10px 0 6px;font-size:clamp(1.8rem,3.4vw,2.8rem)}.topic-list p:not(.kicker){color:#d9d6ca;max-width:48ch;margin:8px 0 0}@media (width<=820px){.conversations-inner{grid-template-columns:1fr}}@media (width<=340px){.signature-name{display:none}}.footer .footer-mark .seal{width:34px;margin:0}.footer .footer-mark>span{width:auto;margin:0}@media (width<=370px){.footer .footer-mark{width:100%}}.contact-grid button:disabled{box-shadow:none;background:#6d7068;border-color:#6d7068}
