@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&display=swap');
:root{--plum:#402039;--ivory:#f6f3ef;--lavender:#d1c6d2;--sage:#b9c6a4;--olive:#a3c300;--text:#242124;--muted:#6e6269;--border:#dfd8dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ivory);color:var(--text);font:15px/1.8 Inter,Arial,sans-serif}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2,h3{color:var(--plum);font-weight:400}h1,h2,.brand,.footerbrand,blockquote{font-family:'Playfair Display',Georgia,serif}h1{font-size:clamp(44px,5.3vw,76px);line-height:1.12;letter-spacing:-2px}h2{font-size:clamp(28px,3vw,40px);line-height:1.25}h3{font-family:Inter,Arial,sans-serif;font-size:18px;font-weight:600;line-height:1.4}p+p{margin-top:20px}.siteheader{padding:27px 4.5%;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;font-size:27px;line-height:1.25;white-space:nowrap}.brand span{display:block;font:7px/2.8 Inter,Arial,sans-serif;letter-spacing:1.2px}nav{display:flex;gap:21px;align-items:center}nav a{text-decoration:none;font-size:11px;font-weight:500;white-space:nowrap}nav a[aria-current]{color:var(--plum);border-bottom:2px solid var(--plum)}nav a:hover{color:#774d70}.menutoggle{display:none}main{max-width:1320px;margin:auto;padding:0 5%}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:8%;align-items:center;padding:65px 0 60px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;color:var(--muted);margin-bottom:25px}.hero h1{font-size:clamp(56px,6.4vw,90px);margin-bottom:24px}.dot{color:#758c00}.herotitle{font-size:15px;line-height:1.75;max-width:470px}.lead{font-size:19px;line-height:1.75;color:#675963}.hero .lead{font:31px/1.4 'Playfair Display',Georgia,serif;color:var(--plum);margin:25px 0 20px}.herocopy>p:not(.lead){max-width:520px}.hero .portrait{position:relative;background:#fff;border-radius:160px 160px 4px 4px;overflow:hidden;box-shadow:18px 18px 0 var(--lavender)}.portrait img{width:100%;height:auto;display:block}.portrait figcaption{background:var(--plum);color:white;text-align:center;padding:16px;font-size:9px;letter-spacing:2px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 15px}.button,button{display:inline-flex;justify-content:space-between;align-items:center;gap:22px;background:var(--plum);color:white;border:1px solid var(--plum);padding:13px 20px;text-decoration:none;border-radius:3px;font-size:12px;font-weight:500}.button:hover,button:hover{background:#613454;color:white}.outline{background:transparent;color:var(--plum)}.textlink{font-size:12px;font-weight:500}.introline{padding:45px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);display:grid;grid-template-columns:1fr 1fr;gap:8%;color:var(--muted)}.introline p+p{margin:0}.section{padding:70px 0}.section h2{margin-bottom:35px}.highlights{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.highlights article{border-top:2px solid var(--lavender);padding-top:20px}.number{color:#7e6e78;font-size:11px}.highlights h3{margin:15px 0 12px}.highlights p{font-size:13px;color:var(--muted)}.callout{background:var(--plum);color:#e8dfe6;padding:45px 50px;display:flex;align-items:center;justify-content:space-between;gap:40px;margin:0 0 70px}.callout h2,.callout .eyebrow{color:white}.callout p{max-width:540px;margin-top:20px}.light{background:var(--ivory);color:var(--plum);white-space:nowrap}footer{background:#ece7e2;border-top:1px solid var(--border);padding:40px 7%;display:flex;justify-content:space-between;gap:20px}footer p,footer span{font-size:11px;color:var(--muted)}.footerbrand{font-size:27px;text-decoration:none}.footerlinks{text-align:right}.footerlinks a{font-size:12px;margin-left:25px}.footerlinks p{margin-top:20px}.pagehead{padding:70px 0 50px;border-bottom:1px solid var(--border);margin-bottom:45px}.pagehead .lead{max-width:800px;margin-top:25px;font-size:17px}.aboutgrid{display:grid;grid-template-columns:.65fr 1fr;gap:8%;align-items:start}.aboutgrid img{width:100%;height:auto;border-radius:100px 100px 0 0}.aboutgrid p{font-size:15px}blockquote{background:var(--lavender);text-align:center;padding:55px 25px;font-size:clamp(26px,3vw,40px);line-height:1.45;color:var(--plum);margin:60px 0 0}cite{display:block;font:10px Inter,Arial,sans-serif;letter-spacing:2px;margin-top:25px}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.values div{padding:22px;background:white;border-left:3px solid var(--sage);font-size:14px}.role{display:grid;grid-template-columns:210px 1fr;gap:30px;padding:30px 0;border-bottom:1px solid var(--border)}.date{font-size:12px;color:var(--muted);padding-top:10px}.role h2{font-size:28px}.roleorg{color:var(--muted);margin-top:8px}ul{padding-left:20px}li{margin:5px 0}.note{font-size:12px;color:var(--muted);line-height:1.7}.endnote{margin:35px 0 65px}.skillgrid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.skill{padding:30px;background:white;border-top:3px solid var(--lavender)}.skill h2{font-size:27px}.tags{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.tags span{padding:10px 18px;border:1px solid #c8bfc5;border-radius:4px;font-size:13px;background:white}.projects{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:70px}.project{background:white;border:1px solid var(--border);padding:35px;display:flex;flex-direction:column;align-items:start}.projecttop{display:flex;gap:20px;align-items:center;color:var(--muted);font-size:10px;margin-bottom:25px}.projecttop>span:first-child{font-family:Georgia,serif;font-size:27px;color:#927d6e}.project h2{font-size:30px;margin-bottom:20px}.project p{font-size:14px}.project .note{font-size:12px;margin-bottom:25px}.textbutton{margin-top:auto;padding:8px 0;background:none;color:var(--plum);border:0;border-bottom:1px solid var(--plum);border-radius:0}.textbutton:hover{background:transparent;color:#774d70}.pending{font-size:12px;border:1px dashed #bbaeb8;padding:9px 12px;margin-top:auto;color:var(--muted)}.resumetools{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.downloads{width:100%;margin:8px 0 30px}.downloads button{margin:0 10px 10px 0}button:disabled{cursor:not-allowed;background:#e6e0e4;color:#70646d;border-color:#d8ced5}.resume{background:white;border:1px solid var(--border);padding:55px;margin:0 0 70px;max-width:1000px}.resume header{padding-bottom:25px;border-bottom:2px solid var(--plum)}.resume header h2{font-size:40px;margin-top:0}.resume>h2{font-size:25px;margin:30px 0 15px}.resume .role{grid-template-columns:150px 1fr;gap:20px;padding:20px 0}.resume .role h2{font:600 17px Inter,Arial,sans-serif}.resume .role p,.resume .role li{font-size:13px}.resume h3{font-size:16px}.contactgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;margin-bottom:70px}.contactgrid h2{font-size:30px;margin-bottom:20px}dt{font-size:10px;letter-spacing:1.5px;margin-top:30px;color:var(--muted)}dd{margin:8px 0;font-size:14px;overflow-wrap:anywhere}form{background:white;padding:35px;border:1px solid var(--border)}label{display:block;font-size:12px;font-weight:600;margin:20px 0 7px}label span{font-weight:400}input,select,textarea{width:100%;padding:11px;border:1px solid #bfb2bc;border-radius:3px;background:#fdfcfb;font-size:14px;color:var(--text)}textarea{resize:vertical}form button{margin-top:20px}form .note{margin-top:15px}#form-status{font-size:13px;color:var(--plum)}.skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:99}.skip:focus{top:10px}
@media(min-width:901px){.hero,.pagehead{animation:appear .6s ease-out}@keyframes appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}}@media(max-width:1150px){.siteheader{flex-wrap:wrap;gap:15px}nav{width:100%;justify-content:space-between}.hero{gap:5%}.hero h1{font-size:64px}}@media(max-width:760px){.siteheader{padding:20px 6%;position:relative}.brand{font-size:24px}.brand span{font-size:6px}.menutoggle{display:block;padding:8px 12px}nav{display:none;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:12px 0;font-size:13px}.hero{grid-template-columns:1fr;padding:40px 0;gap:35px}.hero h1{font-size:59px}.hero .portrait{max-width:380px;margin:0 auto;width:90%}.eyebrow{font-size:9px}.hero .lead{font-size:29px}.introline{grid-template-columns:1fr;gap:20px;padding:30px 0}.highlights{grid-template-columns:1fr 1fr;gap:25px}.section{padding:45px 0}.callout{padding:30px;flex-direction:column;align-items:start;margin-bottom:45px}footer{flex-direction:column;padding:30px 6%}.footerlinks{text-align:left}.footerlinks a{margin:0 20px 0 0}.pagehead{padding:40px 0 30px;margin-bottom:30px}h1{font-size:42px;letter-spacing:-1px}.aboutgrid{grid-template-columns:1fr;gap:30px}.aboutgrid img{max-width:300px;margin:auto}.values{grid-template-columns:1fr 1fr}.role{grid-template-columns:1fr;gap:5px}.role h2{font-size:26px}.skillgrid,.projects,.contactgrid{grid-template-columns:1fr;gap:20px}.project{padding:25px}.resume{padding:25px 20px}.resume .role{grid-template-columns:1fr}.contactgrid{gap:35px}form{padding:25px}.actions .button{font-size:11px;padding:12px 15px}.highlights h3{font-size:16px}.resumetools .button{padding:12px}.pagehead .lead{font-size:15px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media print{body{background:white;font:10pt/1.5 Arial,sans-serif;color:black}.siteheader,footer,.pagehead,.resumetools,.skip{display:none}main{max-width:none;padding:0}.resume{border:0;margin:0;padding:0;max-width:none}.resume h2{break-after:avoid}.role{break-inside:avoid}.resume .role{grid-template-columns:130px 1fr}a{text-decoration:none;color:black}.resume h2,.resume h3{color:black}@page{margin:16mm}}
