@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-ext-wght-normal.BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-wght-normal.Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-serif-latin-400-normal.DnYpCC2O.woff2)format("woff2"),url(/_astro/instrument-serif-latin-400-normal.BVbkICAY.woff)format("woff")}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/instrument-serif-latin-400-italic.DKMiL14s.woff2)format("woff2"),url(/_astro/instrument-serif-latin-400-italic.u__WvvIK.woff)format("woff")}:root{--paper:#f7f6f0;--ink:#253b32;--green:#244b3f;--muted:#626a61;--line:#dedfd5;--sage:#e8ede3;--orange:#a24b2b;--serif:"Instrument Serif", Georgia, serif;--sans:"DM Sans Variable", sans-serif;--text-small:14px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.65}::selection{color:var(--green);background:#dce5c7}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button,a,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px;border-radius:3px}svg{flex-shrink:0;display:block}h1,h2,h3,h4,p{margin:0}h1,h2{letter-spacing:-.055em;font-weight:500;line-height:1.06}h1 em,h2 em{font-family:var(--serif);letter-spacing:-.025em;font-weight:400}h3,h4{font-weight:600;line-height:1.3}.container{width:min(1200px,100% - 112px);margin-inline:auto}.skip-link{background:var(--green);color:#fff;z-index:100;padding:10px 20px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:14px}.eyebrow,.section-label{font-size:var(--text-small);letter-spacing:.14em;font-weight:600;line-height:1.5}.section-label{align-items:center;gap:9px;display:inline-flex}.status-dot{background:var(--green);border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 0 4px #244b3f10}.text-link{align-items:center;gap:10px;font-size:13px;font-weight:500;display:inline-flex}.text-link svg,.button svg,.project-links svg,.footer-links svg{transition:transform .2s}.text-link:hover svg,.button:hover svg,.project-links a:hover svg,.footer-links a:hover svg{transform:translate(2px,-2px)}.button{border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:24px;min-height:48px;padding:12px 22px;font-size:13px;font-weight:500;transition:background .2s,box-shadow .2s;display:inline-flex}.button-primary{background:var(--green);color:var(--paper)}.button-primary:hover{background:#16392e;box-shadow:0 4px 12px #244b3f17}.button-light{color:var(--green);background:var(--paper);border-color:#fff5}.button-light:hover{background:#fff}.site-header{z-index:20;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#f7f6f0f5;position:sticky;top:0}.header-inner{align-items:center;gap:32px;height:91px;display:flex}.wordmark{letter-spacing:-.08em;font-size:28px;font-weight:650;line-height:1;display:block}.wordmark-dot{color:var(--orange)}.wordmark-caption{font-size:var(--text-small);letter-spacing:.025em;color:var(--muted);margin-top:7px;font-weight:400;display:block}.site-nav{align-items:center;gap:30px;margin-left:auto;display:flex}.site-nav a{font-size:var(--text-small);padding:6px 0}.site-nav a:hover,.site-nav .active{color:var(--orange)}.creative-nav{align-items:center;gap:7px;display:inline-flex}.creative-nav svg{color:var(--orange)}.header-resume{font-size:var(--text-small);border:1px solid #cbd0c4;border-radius:4px;align-items:center;gap:18px;margin-left:10px;padding:8px 14px;display:flex}.header-resume:hover{background:var(--sage)}.menu-toggle{border:1px solid var(--line);width:42px;height:42px;color:var(--green);background:0 0;border-radius:4px;justify-content:center;align-items:center;display:none}.hero{grid-template-columns:1.15fr 1fr;align-items:center;column-gap:74px;padding-top:82px;display:grid}.hero .eyebrow{align-items:center;gap:12px;margin-bottom:27px;display:flex}.hero h1{font-size:clamp(54px,5.4vw,76px)}.hero h1 em{white-space:nowrap;font-size:1.065em}.hero-description{max-width:440px;color:var(--muted);margin-top:25px;font-size:14px;line-height:1.85}.hero-description strong{color:var(--ink);font-weight:500}.hero-actions{align-items:center;gap:29px;margin-top:29px;display:flex}.hero-socials{align-items:center;gap:17px;margin-top:35px;display:flex}.hero-socials>span:first-child{color:var(--muted);font-size:var(--text-small);letter-spacing:.1em}.hero-socials a{align-items:center;min-height:30px;display:flex}.hero-socials a:hover{color:var(--orange)}.social-divider{background:var(--line);width:1px;height:16px}.hero-location{color:var(--muted);font-size:var(--text-small);align-items:center;gap:7px;display:inline-flex}.hero-art{background:var(--sage);aspect-ratio:1/1.07;border-radius:8px;margin-top:4px;padding:25px 25px 20px;position:relative;overflow:hidden}.art-topline,.art-bottomline{font-size:var(--text-small);letter-spacing:.12em;color:#436355;justify-content:space-between;align-items:center;display:flex}.art-topline{border-bottom:1px solid #244b3f27;padding-bottom:15px}.orbit-art{width:100%;margin-top:18px;position:relative}.orbit-art>svg{width:100%}.art-tag{font-size:var(--text-small);letter-spacing:.015em;background:var(--paper);color:#426052;border-radius:3px;padding:6px 12px;position:absolute;box-shadow:0 3px 8px #244b3f08}.tag-one{top:20%;right:2%;transform:rotate(6deg)}.tag-two{bottom:25%;left:0;transform:rotate(-6deg)}.art-handnote{font-family:var(--serif);letter-spacing:-.01em;font-size:25px;font-style:italic;line-height:1.1;position:absolute;bottom:78px;left:35px;transform:rotate(-4deg)}.art-bottomline{border-top:1px solid #244b3f27;padding-top:13px;position:absolute;bottom:19px;left:25px;right:25px}.tiny-cross{margin-right:7px;font-size:13px}.hero-bottom{border-top:1px solid var(--line);color:var(--muted);font-size:var(--text-small);letter-spacing:.08em;grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:57px;padding:24px 0;display:flex}.hero-bottom a{letter-spacing:.02em;align-items:center;gap:15px;display:inline-flex}.section{padding-block:98px}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:39px;display:flex}.section-heading h2,.about-copy h2,.experience-intro h2,.contact-section h2{margin-top:17px;font-size:48px}.heading-aside{padding-bottom:5px}.heading-aside p{color:var(--muted);margin-bottom:14px;font-size:13px;line-height:1.75}.projects-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:22px;display:grid}.project-card{border:1px solid var(--line);background:#fcfbf7;border-radius:7px;transition:border-color .2s;overflow:hidden}.project-card:hover{border-color:#b5c4b4}.project-body{padding:23px 23px 19px}.project-meta{color:var(--muted);font-size:var(--text-small);letter-spacing:.07em;justify-content:space-between;align-items:center;gap:8px;font-weight:500;display:flex}.project-meta>span:last-child{color:#6b7566;font-size:var(--text-small)}.project-body h3{letter-spacing:-.04em;margin-top:14px;font-size:23px;font-weight:500}.project-summary{font-size:var(--text-small);color:#3f5949;margin-top:6px}.project-description{color:var(--muted);font-size:var(--text-small);min-height:130px;margin-top:16px;line-height:1.8}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{font-size:var(--text-small);border:1px solid #d9ddd0;border-radius:3px;padding:5px 8px;line-height:1.4}.project-body>.tags{align-content:start;min-height:58px;margin-top:18px}.project-details{border-top:1px solid var(--line);margin-top:18px}.project-details summary{cursor:pointer;font-size:var(--text-small);justify-content:space-between;align-items:center;padding:13px 0;list-style:none;display:flex}.project-details summary::-webkit-details-marker{display:none}.project-details summary span{font-size:17px;font-weight:400}.project-details[open] summary span{transform:rotate(45deg)}.project-details ul{color:var(--muted);font-size:var(--text-small);margin:0 0 14px;padding-left:17px;line-height:1.8}.project-details p{font-size:var(--text-small);color:var(--muted);margin-bottom:12px;font-style:italic}.project-links{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:16px;display:flex}.project-links a{font-size:var(--text-small);align-items:center;gap:6px;font-weight:500;display:inline-flex}.project-links a+a{color:var(--muted);font-weight:400;font-size:var(--text-small)}.project-visual{flex-direction:column;justify-content:center;align-items:center;height:225px;display:flex;position:relative;overflow:hidden}.visual-grid{background-image:linear-gradient(#244b3f08 1px,#0000 1px),linear-gradient(90deg,#244b3f08 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0}.visual-nanolink{background:#e6ecde}.link-before,.link-after{font-size:var(--text-small);background:#f7f6f0;border:1px solid #cbd4c1;border-radius:5px;align-items:center;gap:9px;padding:11px 14px;display:flex;position:relative}.link-before{color:#5f6e55;width:82%;transform:translate(-8px,-15px)rotate(-3deg)}.mini-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.link-connector{color:#71835f;width:85%;height:48px;position:absolute;top:97px}.link-after{background:var(--green);width:78%;color:var(--paper);border-color:var(--green);padding:12px 13px;font-size:13px;transform:translate(10px,14px)rotate(3deg);box-shadow:0 6px 12px #244b3f15}.link-mark{background:#ffffff18;border-radius:4px;place-items:center;width:23px;height:23px;font-size:18px;display:grid}.link-slug{color:#c9d4af}.link-check{color:#c4d7b0;margin-left:auto}.art-caption{font-size:var(--text-small);letter-spacing:.13em;color:#55654c;position:absolute;bottom:16px}.visual-sellsphere{background:#e8e4d7}.campaign-window{background:#faf9f4;border:1px solid #d3cbbb;border-radius:5px;width:77%;transform:rotate(-4deg);box-shadow:0 8px 14px #685a3f09}.window-top{border-bottom:1px solid #e4e0d4;align-items:center;gap:3px;padding:8px;display:flex}.window-top>span{background:#c4bfaf;border-radius:50%;width:4px;height:4px}.window-top b{font-size:var(--text-small);color:#70624f;margin-left:auto;font-weight:400}.campaign-content{padding:14px 18px 11px}.campaign-mini-label{font-size:var(--text-small);letter-spacing:.12em;color:#756545}.campaign-flow{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.campaign-flow>span{font-size:var(--text-small);letter-spacing:.04em;background:#eee8da;border:1px solid #d8ccb7;border-radius:3px;padding:5px 9px}.campaign-flow>span:last-child{background:#e1e8d5;border-color:#c8d1b7}.campaign-flow>i{color:#8d7651;font-style:normal}.campaign-bars{align-items:end;gap:5px;height:40px;margin-top:15px;display:flex}.campaign-bars i{background:#c8cbae;border-radius:2px 2px 0 0;width:25%;height:50%;display:block}.campaign-bars i:nth-child(2){height:67%}.campaign-bars i:nth-child(3){height:60%}.campaign-bars i:nth-child(4){height:84%}.campaign-bars i:nth-child(5){height:74%}.campaign-bars i:nth-child(6){background:#6b8262;height:100%}.campaign-bottom{font-size:var(--text-small);color:#756345;border-top:1px solid #e0dccd;justify-content:space-between;margin-top:7px;padding-top:7px;display:flex}.visual-aura{background:#f1d9c8}.aura-map{color:#945432;width:104%;height:104%;position:absolute;top:-8px}.aura-badge{font-size:var(--text-small);letter-spacing:.08em;color:#875839;background:#f6e6d9;border:1px solid #bd977b;border-radius:10px;align-items:center;gap:5px;padding:4px 7px;display:flex;position:absolute;top:19px;right:16px}.visual-aura .art-caption{color:#875839}.other-builds{border-top:1px solid var(--line);grid-template-columns:.7fr 2.3fr;gap:32px;margin-top:47px;padding-top:27px;display:grid}.other-builds-label{font-size:var(--text-small);letter-spacing:.09em;align-items:start;gap:12px;padding-top:8px;display:flex}.other-builds-label svg{margin-top:-3px}.other-builds-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.other-build{padding:7px 0}.other-build:hover h3{color:var(--orange)}.other-build-top{color:#687961;justify-content:space-between;display:flex}.other-build h3{letter-spacing:-.025em;margin-top:14px;font-size:16px}.other-build p{color:var(--muted);font-size:var(--text-small);margin-top:8px;line-height:1.8}.other-build>span{font-size:var(--text-small);color:#626b55;margin-top:13px;display:block}.experience-section{background:var(--green);color:var(--paper);padding-block:85px}.experience-grid{grid-template-columns:1fr 1.2fr;gap:100px;display:grid}.experience-intro>.section-label{color:#b6c2a6}.experience-intro h2{font-size:49px}.experience-intro>p:not(.section-label){color:#bdc9bf;max-width:315px;margin-top:23px;font-size:13px;line-height:1.85}.experience-intro>.text-link{border-bottom:1px solid #ffffff40;margin-top:25px;padding-bottom:9px}.experience-doodle{font-family:var(--serif);color:#ced5b3;margin-top:90px;font-size:27px;font-style:italic;display:block;transform:rotate(-7deg)}.timeline{border-left:1px solid #ffffff2b}.timeline-item{border-bottom:1px solid #ffffff1f;margin-bottom:29px;padding:0 0 32px 28px;position:relative}.timeline-item:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.timeline-dot{background:#9dad99;border-radius:50%;width:7px;height:7px;position:absolute;top:6px;left:-4px}.timeline-dot.current{background:#dfbd95;box-shadow:0 0 0 5px #dfbd9518}.job-top{color:#c4cfbf;font-size:var(--text-small);justify-content:space-between;align-items:center;display:flex}.current-label{font-size:var(--text-small);letter-spacing:.08em;border:1px solid #b9c5a266;border-radius:3px;padding:2px 6px}.timeline-item h3{letter-spacing:-.03em;margin-top:12px;font-size:23px;font-weight:500}.job-role{font-size:var(--text-small);color:#e2e6d7;margin-top:3px}.job-context{font-size:var(--text-small);color:#b1bfb3;margin-top:5px}.job-description{font-size:var(--text-small);color:#c2cec1;margin-top:16px;line-height:1.8}.timeline-item ul{color:#b3c3b5;font-size:var(--text-small);margin-block:11px 0;padding-left:15px;line-height:1.85}.timeline-item li+li{margin-top:6px}.timeline-item .tags{margin-top:17px}.timeline-item .tags span{color:#d0d9c6;font-size:var(--text-small);border-color:#ffffff29}.experience-section a:focus-visible{outline-color:#f2bc86}.about-grid{grid-template-columns:1.2fr 1fr;align-items:start;gap:100px;display:grid}.about-copy h2{margin-bottom:26px}.about-copy>p:not(.section-label){color:var(--muted);margin-top:15px;font-size:13px;line-height:1.9}.about-copy .text-link{margin-top:21px}.about-copy .text-link svg{color:var(--orange)}.about-strength{background:var(--sage);border:1px solid #dfe4d5;border-radius:5px;align-items:start;gap:16px;margin-top:32px;padding:24px 28px;display:flex}.about-strength>svg{color:var(--orange);margin-top:3px}.about-strength strong{font-size:17px;font-weight:500}.about-strength p{max-width:760px;color:var(--muted);font-size:var(--text-small);margin-top:9px;line-height:1.85}.about-notebook{background:#eeeee5;border:1px solid #dcdccf;border-radius:5px;margin-top:8px;padding:25px 30px 26px}.notebook-top{border-bottom:1px solid #d5d6c8;justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.notebook-top>span{font-size:var(--text-small);letter-spacing:.12em}.education-item{border-bottom:1px solid #d5d6c8;padding-block:22px}.education-item>span{font-size:var(--text-small);color:var(--muted)}.education-item h3{letter-spacing:-.025em;margin-top:6px;font-size:19px;font-weight:500}.education-item p{font-size:var(--text-small);margin-top:4px}.education-item small{font-size:var(--text-small);color:var(--muted);margin-top:5px;display:block}.community-note{padding-top:20px}.community-note .section-label{font-size:var(--text-small)}.community-note p{font-size:var(--text-small);margin-top:7px}.community-note small{font-size:var(--text-small);color:var(--muted);margin-top:5px;display:block}.earlier-education{border-bottom:1px solid #d5d6c8}.earlier-education summary{cursor:pointer;font-size:var(--text-small);justify-content:space-between;align-items:center;padding-block:16px;list-style:none;display:flex}.earlier-education summary::-webkit-details-marker{display:none}.earlier-education summary>span{font-size:20px}.earlier-education[open] summary>span{transform:rotate(45deg)}.earlier-school{padding-bottom:19px}.earlier-school>span{font-size:var(--text-small);color:var(--muted)}.earlier-school h4{margin-top:4px;font-size:14px;font-weight:500}.earlier-school p{font-size:var(--text-small);color:var(--muted);margin-top:5px}.education-footnote{padding-top:19px}.education-footnote .section-label{font-size:var(--text-small)}.education-footnote p{font-size:var(--text-small);color:var(--muted);margin-top:7px}.community-section{border-top:1px solid var(--line);margin-top:60px;padding-top:31px}.community-heading{justify-content:space-between;align-items:end;gap:25px;display:flex}.community-heading .section-label{font-size:var(--text-small);color:var(--muted)}.community-heading h3{letter-spacing:-.035em;margin-top:10px;font-size:30px;font-weight:500}.community-heading h3 em{font-family:var(--serif);font-size:1.15em;font-weight:400}.community-heading>p{color:var(--muted);font-size:var(--text-small);line-height:1.8}.community-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.community-card{border:1px solid var(--line);background:#fcfbf7;border-radius:5px;padding:23px}.community-context{color:var(--muted);font-size:var(--text-small);display:block}.community-card h4{letter-spacing:-.025em;margin-top:8px;font-size:17px;font-weight:500}.community-role{font-size:var(--text-small);color:var(--green);margin-top:9px;line-height:1.6}.community-description{color:var(--muted);font-size:var(--text-small);margin-top:13px;line-height:1.85}.skills-section{border-top:1px solid var(--line);margin-top:67px;padding-top:29px}.skills-heading{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.skills-heading h3{letter-spacing:-.02em;font-size:19px;font-weight:500}.skills-heading p{color:var(--muted);font-size:var(--text-small)}.skills-grid{grid-template-columns:.85fr 1.1fr 1fr 1.15fr;gap:34px;margin-top:27px;display:grid}.skill-group h4{font-size:var(--text-small);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:13px;font-weight:500}.skill-group .tags span{font-size:var(--text-small);background:#eeeee7;border-color:#eeeee7}.coding-profiles{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:22px 30px;margin-top:32px;padding-top:24px;display:flex}.coding-profiles>div{color:var(--muted);font-size:var(--text-small);align-items:center;gap:11px;margin-right:auto;display:flex}.coding-profiles .text-link{font-size:var(--text-small)}.qualifications{border-top:1px solid var(--line);margin-top:35px;padding-top:24px}.qualifications>.section-label{font-size:var(--text-small);color:var(--muted)}.qualifications>h3{letter-spacing:-.02em;margin-top:13px;font-size:19px;font-weight:500}.qualification-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.qualification-grid a{border:1px solid var(--line);background:#fcfbf7;border-radius:5px;justify-content:space-between;align-items:center;gap:18px;padding:20px;display:flex}.qualification-grid a>div{min-width:0}.qualification-grid a span{color:var(--muted);font-size:var(--text-small)}.qualification-grid a h4{font-size:var(--text-small);margin-top:7px;font-weight:500;line-height:1.5}.qualification-grid a .qualification-action{color:var(--green);margin-top:15px;display:block}.qualification-grid a:hover{border-color:#b5c4b4}.qualification-grid a:hover h4{color:var(--orange)}.qualification-grid a svg{color:#819076}.creative-teaser{background:#e9ecdf;border-radius:7px;align-items:center;gap:40px;padding:41px 48px;display:flex;position:relative;overflow:hidden}.teaser-star{color:#849c72;font-size:128px;font-weight:400;line-height:1;transform:rotate(-12deg)}.creative-teaser h2{margin-top:12px;font-size:37px}.creative-teaser p:not(.section-label){font-size:var(--text-small);color:#59694f;margin-top:13px}.creative-teaser .button{z-index:1;margin-left:auto}.teaser-note{font-size:16px;font-family:var(--serif);color:#59694f;font-style:italic;position:absolute;bottom:22px;right:42px;transform:rotate(-4deg)}.contact-section{grid-template-columns:1.1fr 1fr;align-items:center;gap:80px;padding-block:104px 95px;display:grid}.contact-section>div>p:not(.section-label){font-size:var(--text-small);color:var(--muted);margin-top:20px;line-height:1.9}.contact-actions{margin-top:25px}.contact-email{border-bottom:1px solid #b9c5b5;flex-direction:column;gap:9px;padding-block:0 21px;display:flex;position:relative}.contact-email>span{font-size:var(--text-small);letter-spacing:.12em;color:var(--muted)}.contact-email strong{letter-spacing:-.035em;font-size:clamp(16px,1.75vw,23px);font-weight:450}.contact-email svg{position:absolute;top:18px;right:0}.contact-email:hover{color:var(--orange)}.contact-other{color:var(--muted);font-size:var(--text-small);justify-content:space-between;align-items:center;gap:15px;margin-top:17px;display:flex}.contact-other a{align-items:center;gap:5px;display:inline-flex}.contact-other a:hover{color:var(--orange)}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-block:30px;display:flex}.footer-name{letter-spacing:-.02em;font-size:13px;font-weight:500}.footer-name span{color:var(--muted);font-size:var(--text-small);letter-spacing:0;margin-top:4px;font-weight:400;display:block}.footer-links{gap:24px;display:flex}.footer-links a{font-size:var(--text-small);align-items:center;gap:5px;display:inline-flex}.site-footer>p{color:var(--muted);font-size:var(--text-small)}.back-link{font-size:var(--text-small);color:var(--muted);align-items:center;gap:8px;display:inline-flex}.back-link svg{transform:rotate(180deg)}.back-link:hover{color:var(--orange)}.creative-hero{border-bottom:1px solid var(--line);padding-top:35px;padding-bottom:62px;position:relative}.creative-hero>.section-label{color:var(--muted);margin-top:57px;display:block}.creative-hero h1{align-items:baseline;gap:18px;margin-top:20px;font-size:99px;display:flex}.creative-hero h1 em{color:var(--orange)}.creative-asterisk{font-family:var(--sans);color:#7c9573;margin-left:auto;font-size:120px;font-weight:400;line-height:.7}.creative-hero>p:not(.section-label){color:var(--muted);margin-top:25px;font-size:16px;line-height:1.75}.creative-hero>p>em{font-family:var(--serif);color:var(--ink);font-size:24px}.creative-handnote{font-family:var(--serif);color:#5c714f;font-size:22px;font-style:italic;position:absolute;bottom:69px;right:0;transform:rotate(-5deg)}.creative-content{grid-template-columns:1.05fr 1fr;align-items:start;gap:60px;padding-block:70px;display:grid}.story-heading h2{margin-top:15px;font-size:39px}.story-empty{text-align:center;padding:53px 25px 45px}.empty-book{color:#778e66;justify-content:center;align-items:start;gap:8px;margin-bottom:22px;display:flex}.empty-book>span{font-size:25px;line-height:.7}.story-empty h3{font-family:var(--serif);letter-spacing:-.01em;font-size:35px;font-weight:400;line-height:1.05}.story-empty>p{font-size:var(--text-small);color:var(--muted);margin-top:18px;line-height:1.85}.empty-note{color:#637052;font-family:var(--serif);margin-top:29px;font-size:19px;font-style:italic;display:block}.creative-return{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding-block:29px 57px;display:flex}.creative-return>span{color:var(--muted);font-size:var(--text-small)}.story-card{border-bottom:1px solid var(--line);justify-content:space-between;gap:25px;padding-block:28px;display:flex}.story-list{margin-top:20px}.story-card h3{font-size:25px;font-family:var(--serif);margin-top:10px;font-weight:400}.story-card p{font-size:var(--text-small);color:var(--muted);margin-top:10px}.story-card time{font-size:var(--text-small);color:var(--muted);margin-top:15px;display:block}.story-card>svg{margin-top:24px}.story-card:hover h3{color:var(--orange)}.story-article{max-width:730px;padding-block:40px 70px}.story-article header{border-bottom:1px solid var(--line);margin-top:55px;padding-bottom:29px}.story-article h1{font-family:var(--serif);letter-spacing:-.02em;margin-top:15px;font-size:64px;font-weight:400}.story-article header>p:not(.section-label){color:var(--muted);margin-top:20px;font-size:15px}.story-article header time{font-size:var(--text-small);color:var(--muted);margin-top:18px;display:block}.prose{overflow-wrap:anywhere;padding-top:35px;font-family:Georgia,serif;font-size:18px;line-height:1.9}.prose p,.prose ul,.prose ol{margin-bottom:24px}.prose h2,.prose h3{font-family:var(--serif);letter-spacing:-.015em;margin-block:34px 16px;font-weight:400;line-height:1.15}.prose h2{font-size:37px}.prose h3{font-size:29px}.prose a{text-underline-offset:4px;text-decoration:underline}.prose img{border-radius:5px;max-width:100%;height:auto}.prose blockquote{border-left:2px solid #bdc6ae;margin-inline:0;padding-left:25px;font-style:italic}.prose hr{border:0;border-top:1px solid var(--line);margin-block:40px}.story-article footer{border-top:1px solid var(--line);font-size:var(--text-small);justify-content:space-between;align-items:center;gap:25px;margin-top:35px;padding-top:24px;display:flex}.not-found{padding-block:100px 140px}.not-found h1{margin-top:20px;font-size:65px}.not-found p{color:var(--muted);margin-top:25px}.not-found .button{margin-top:30px}@media (width>=1500px){.hero h1{font-size:78px}}@media (width<=1100px){.container{width:calc(100% - 72px)}.hero{column-gap:42px;padding-top:65px}.hero h1{font-size:59px}.hero-description{font-size:13px}.hero-art{aspect-ratio:1/1.2}.art-handnote{font-size:24px;left:25px}.hero-socials{flex-wrap:wrap;gap:12px}.hero-location{font-size:var(--text-small)}.projects-grid{gap:15px}.project-body{padding-inline:18px}.project-body h3{font-size:20px}.project-description{min-height:155px}.project-visual{height:195px}.link-before,.link-after{font-size:var(--text-small)}.link-connector{top:78px}.experience-grid{gap:55px}.about-grid{gap:60px}.skills-grid{gap:20px}.contact-section{gap:40px}.contact-email strong{font-size:18px}.creative-teaser{gap:30px;padding-inline:32px}.teaser-star{font-size:100px}.creative-teaser .button{gap:15px;padding-inline:17px}.creative-hero h1{font-size:88px}.creative-handnote{font-size:18px}.creative-content{gap:35px}}@media (width<=820px){.container{width:calc(100% - 48px)}.header-inner{flex-wrap:wrap;gap:16px;height:80px}.wordmark{font-size:27px}.wordmark-caption{font-size:var(--text-small)}.header-resume{margin-left:auto;padding-inline:11px}.menu-toggle{order:3}html[data-navigation=enhanced] .menu-toggle{display:inline-flex}.site-nav{order:4;justify-content:space-between;gap:12px;width:100%;margin:0}html:not([data-navigation=enhanced]) .header-inner{height:auto;padding-block:16px}html[data-navigation=enhanced] .site-nav{background:var(--paper);border-bottom:1px solid var(--line);padding:16px 24px 22px;display:none;position:absolute;top:79px;left:0;box-shadow:0 12px 20px #253b320a}html[data-navigation=enhanced] .site-nav.is-open{display:flex}.site-nav a{font-size:var(--text-small)}.hero{gap:40px 25px;padding-top:58px}.hero h1{font-size:48px}.hero h1 em{font-size:1.03em}.hero-description{font-size:var(--text-small);margin-top:21px}.hero-actions{gap:17px;margin-top:22px}.hero-actions .button{font-size:var(--text-small);gap:15px;padding-inline:15px}.hero-actions .text-link{font-size:var(--text-small);gap:6px}.hero-art{aspect-ratio:1/1.4;padding:21px 18px}.art-tag{font-size:var(--text-small);padding-inline:8px}.art-handnote{font-size:22px;bottom:82px}.art-topline,.art-bottomline{font-size:var(--text-small)}.art-bottomline{inset-inline:18px}.hero-socials{gap:13px;margin-top:25px}.hero-socials>span:first-child{font-size:var(--text-small)}.hero-location{font-size:var(--text-small);flex-basis:100%}.social-divider{display:none}.hero-bottom{margin-top:3px}.section{padding-block:70px}.section-heading h2,.about-copy h2,.experience-intro h2,.contact-section h2{font-size:40px}.heading-aside p,.heading-aside .text-link{font-size:var(--text-small)}.projects-grid{grid-template-columns:1fr;gap:22px}.project-card{grid-template-columns:.8fr 1fr;display:grid}.project-visual{height:100%;min-height:340px}.project-body{padding:23px}.project-body h3{font-size:24px}.project-description,.project-body>.tags{min-height:0}.link-before,.link-after{font-size:var(--text-small)}.link-connector{top:45%}.campaign-window{width:87%}.aura-map{top:0}.other-builds{grid-template-columns:1fr;gap:23px;margin-top:33px}.other-builds-grid{gap:35px}.experience-section{padding-block:64px}.experience-grid{grid-template-columns:.8fr 1.2fr;gap:36px}.experience-intro h2{font-size:37px}.experience-intro>p:not(.section-label){font-size:var(--text-small)}.experience-doodle{font-size:21px}.timeline-item{padding-left:22px}.about-grid{gap:35px}.about-copy>p:not(.section-label){font-size:var(--text-small)}.about-notebook{padding-inline:22px}.skills-grid{grid-template-columns:1fr 1fr;gap:27px}.community-grid{grid-template-columns:1fr 1fr;gap:16px}.community-card{padding:20px}.qualification-grid{gap:20px}.creative-teaser{gap:20px;padding:35px 29px}.teaser-star{font-size:75px}.creative-teaser h2{font-size:32px}.creative-teaser p:not(.section-label){font-size:var(--text-small)}.creative-teaser .button{font-size:var(--text-small);gap:10px;padding-inline:12px}.teaser-note{font-size:14px;right:24px}.contact-section{gap:30px;padding-block:77px 70px}.contact-email strong{font-size:15px}.contact-email svg{width:21px}.contact-other{font-size:var(--text-small);flex-wrap:wrap}.site-footer{flex-wrap:wrap}.site-footer>p{text-align:right;flex-basis:100%}.creative-hero h1{font-size:76px}.creative-hero .creative-asterisk{font-size:90px}.creative-handnote{margin-top:20px;display:block;position:static;transform:none}.creative-content{gap:25px}.story-heading h2{font-size:33px}.story-empty{padding-inline:5px}}@media (width<=600px){html{scroll-padding-top:100px}.container{width:calc(100% - 40px)}.header-inner{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;height:73px;display:grid}.wordmark{min-width:0}.wordmark-caption{letter-spacing:0}.header-resume{font-size:var(--text-small);gap:8px;min-height:36px;margin-left:0;padding-inline:8px}.menu-toggle{width:36px;height:36px}.site-nav{grid-column:1/-1}html[data-navigation=enhanced] .site-nav{gap:10px;padding-inline:20px;top:72px}.site-nav a{font-size:var(--text-small)}.creative-nav{gap:4px}.creative-nav svg{width:12px}.hero{grid-template-columns:1fr;gap:0;padding-top:47px}.hero .eyebrow{font-size:var(--text-small);margin-bottom:22px}.hero h1{font-size:clamp(44px,10.8vw,62px)}.hero h1 em{white-space:normal}.hero-description{max-width:420px;margin-top:23px;font-size:13px}.hero-actions{gap:26px;margin-top:26px}.hero-actions .button{font-size:var(--text-small);gap:21px;padding:12px 19px}.hero-actions .text-link{font-size:var(--text-small);gap:8px}.hero-socials{gap:17px;margin-top:24px}.hero-socials>span:first-child{font-size:var(--text-small)}.hero-location{font-size:var(--text-small);flex-basis:auto}.hero-art{aspect-ratio:auto;flex-direction:column;margin-top:36px;padding:20px 23px;display:flex}.art-topline{font-size:var(--text-small);padding-bottom:12px}.orbit-art{width:86%;margin:7px auto 0}.orbit-art>svg{margin-top:-3px}.art-tag{font-size:var(--text-small);padding:5px 9px}.art-handnote{margin:13px 0 0 5px;font-size:22px;position:static}.art-bottomline{font-size:var(--text-small);margin-top:20px;padding-top:13px;position:static}.hero-bottom{font-size:var(--text-small);margin-top:27px;padding-block:18px}.hero-bottom a{font-size:var(--text-small);letter-spacing:0;gap:8px}.section{padding-block:57px}.section-label{font-size:var(--text-small)}.section-heading{margin-bottom:27px;display:block}.section-heading h2,.about-copy h2,.experience-intro h2,.contact-section h2{margin-top:14px;font-size:40px}.heading-aside{justify-content:space-between;align-items:center;gap:19px;margin-top:22px;display:flex}.heading-aside p{font-size:var(--text-small);margin:0;line-height:1.65}.heading-aside .text-link{font-size:var(--text-small);white-space:nowrap;gap:4px}.desktop-break{display:none}.project-card{display:block}.project-visual{height:235px;min-height:0}.project-body{padding:23px}.project-body h3{font-size:25px}.project-meta,.project-description{font-size:var(--text-small)}.project-body>.tags{margin-top:17px}.project-details{margin-top:19px}.project-links a,.project-links a+a{font-size:var(--text-small)}.link-before{width:80%;font-size:var(--text-small);max-width:340px}.link-after{width:76%;max-width:320px;font-size:14px}.link-connector{height:48px;top:103px}.campaign-window{width:77%;max-width:300px}.campaign-content{padding:15px 21px}.campaign-mini-label{font-size:var(--text-small)}.campaign-flow>span{font-size:var(--text-small);padding:6px 10px}.campaign-bars{height:44px}.other-builds{gap:23px;margin-top:29px;padding-top:25px}.other-builds-grid{gap:26px}.other-build h3{font-size:15px}.other-build p,.other-build>span{font-size:var(--text-small)}.experience-section{padding-block:58px}.experience-grid{grid-template-columns:1fr;gap:38px}.experience-intro>p:not(.section-label){max-width:none;font-size:var(--text-small);margin-top:20px}.experience-intro .text-link{font-size:var(--text-small);margin-top:20px}.experience-doodle{display:none}.timeline{margin-left:4px}.timeline-item{margin-bottom:25px;padding-bottom:27px;padding-left:23px}.timeline-item h3{font-size:24px}.job-top,.job-role{font-size:var(--text-small)}.about-grid{grid-template-columns:1fr;gap:29px}.about-copy>p:not(.section-label){font-size:13px}.about-copy h2{margin-bottom:22px}.about-notebook{margin-top:0;padding:22px 25px}.education-item{padding-block:19px}.education-item h3{font-size:22px}.education-item p{font-size:var(--text-small)}.skills-section{margin-top:35px;padding-top:26px}.community-section{margin-top:35px;padding-top:25px}.community-heading{display:block}.community-heading>p{font-size:var(--text-small);margin-top:11px}.community-grid{grid-template-columns:1fr;gap:14px}.community-card{padding:21px}.community-card h4{font-size:19px}.community-role{font-size:var(--text-small)}.skills-heading{display:block}.skills-heading p{font-size:var(--text-small);margin-top:6px}.skills-grid{gap:25px 20px;margin-top:22px}.skill-group .tags{gap:5px}.skill-group .tags span{font-size:var(--text-small);padding:5px 7px}.qualification-grid{grid-template-columns:1fr;gap:14px}.qualification-grid a h4,.qualification-grid a span{font-size:var(--text-small)}.creative-teaser{flex-wrap:wrap;align-items:start;gap:21px;padding:30px 28px 51px}.teaser-star{opacity:.6;font-size:68px;position:absolute;top:23px;right:22px}.creative-teaser>div:not(.teaser-star){z-index:1;max-width:85%;position:relative}.creative-teaser h2{font-size:36px}.creative-teaser p:not(.section-label){font-size:var(--text-small)}.creative-teaser .button{font-size:var(--text-small);gap:19px;min-height:43px;margin-left:0;padding:10px 17px}.teaser-note{font-size:15px;bottom:19px;right:26px}.contact-section{grid-template-columns:1fr;gap:31px;padding-block:58px}.contact-section>div>p:not(.section-label){font-size:var(--text-small);margin-top:18px}.contact-actions{margin-top:0}.contact-email strong{font-size:clamp(18px,5vw,24px)}.contact-email svg{width:25px}.contact-other{font-size:var(--text-small)}.site-footer{gap:21px;padding-block:23px}.footer-name{flex-basis:100%;font-size:13px}.footer-name span{font-size:var(--text-small)}.footer-links{gap:20px}.footer-links a{font-size:var(--text-small)}.site-footer>p{font-size:var(--text-small);flex-basis:auto;margin-left:auto}.creative-hero{padding-top:28px;padding-bottom:38px}.creative-hero>.section-label{font-size:var(--text-small);margin-top:38px}.creative-hero h1{gap:12px;margin-top:17px;font-size:clamp(57px,14vw,79px)}.creative-hero .creative-asterisk{font-size:50px}.creative-hero>p:not(.section-label){margin-top:20px;font-size:13px}.creative-hero>p>em{font-size:20px}.creative-handnote{margin-top:18px;font-size:18px}.creative-content{grid-template-columns:1fr;gap:10px;padding-block:39px}.story-heading h2{font-size:38px}.story-empty{padding-block:35px 42px}.story-empty h3{font-size:33px}.story-empty>p{font-size:var(--text-small)}.creative-return{padding-bottom:37px;display:block}.creative-return>span{font-size:var(--text-small)}.creative-return .text-link{font-size:var(--text-small);margin-top:12px;display:flex}.story-article{padding-top:29px}.story-article header{margin-top:38px}.story-article h1{font-size:47px}.story-article header>p:not(.section-label){font-size:13px}.prose{font-size:16px}.story-article footer{display:block}.story-article footer .text-link{margin-top:15px;display:flex}.not-found{padding-block:70px 100px}.not-found h1{font-size:45px}}@media (width<=370px){.container{width:calc(100% - 32px)}.hero-actions{gap:17px}.hero-actions .button{padding-inline:15px}.hero-socials{gap:15px}.hero-location{flex-basis:100%}.hero-art{aspect-ratio:auto}.hero-bottom>span{font-size:var(--text-small);letter-spacing:.04em}.contact-email strong{font-size:18px}.contact-email svg{width:21px}.creative-hero .creative-asterisk{font-size:35px}.project-body{padding-inline:19px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}:root{color-scheme:light}.theme-toggle{width:40px;height:40px;color:var(--ink);border:1px solid var(--line);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle:hover{background:var(--sage)}.theme-sun,[data-theme=dark] .theme-moon{display:none}[data-theme=dark] .theme-sun{display:inline}[data-theme=dark]{color-scheme:dark;--paper:#151e1b;--ink:#e4e9df;--green:#b2d0bf;--muted:#b0b9af;--line:#3a483e;--sage:#22302a;--orange:#efa57e}[data-theme=dark] ::selection{color:#edf1e8;background:#44634e}[data-theme=dark] .site-header{background:#151e1bf5}[data-theme=dark] .header-resume{border-color:var(--line)}[data-theme=dark] .button-primary:hover{background:#c7dfd0}[data-theme=dark] .button-light{color:#244b3f;background:#dce5d7}[data-theme=dark] .button-light:hover{background:#edf1e7}[data-theme=dark] .skip-link{color:#151e1b;background:#b2d0bf}[data-theme=dark] .project-card,[data-theme=dark] .community-card,[data-theme=dark] .qualification-grid a,[data-theme=dark] .diary-card,[data-theme=dark] .diary-search{background:#1b2722}[data-theme=dark] .project-summary,[data-theme=dark] .other-build>span,[data-theme=dark] .other-build-top,[data-theme=dark] .project-meta>span:last-child,[data-theme=dark] .qualification-grid a svg,[data-theme=dark] .diary-search{color:var(--muted)}[data-theme=dark] .tags span{border-color:var(--line)}[data-theme=dark] .hero-art{color:#244b3f;background:#d5dfd1}[data-theme=dark] .art-tag{background:#f7f6f0}[data-theme=dark] .project-visual{color:#244b3f}[data-theme=dark] .visual-nanolink .link-before{color:#5f6e55}[data-theme=dark] .visual-nanolink .link-after{color:#f7f6f0;background:#244b3f;border-color:#244b3f}[data-theme=dark] .experience-section{color:#e4e9df;background:#1b382e}[data-theme=dark] .about-notebook,[data-theme=dark] .reader-artwork figure{background:var(--sage);border-color:var(--line)}[data-theme=dark] .notebook-top,[data-theme=dark] .education-item,[data-theme=dark] .earlier-education,[data-theme=dark] .about-strength,[data-theme=dark] .cat-corner{border-color:var(--line)}[data-theme=dark] .skill-group .tags span{background:#293a31;border-color:#293a31}[data-theme=dark] .creative-teaser{background:var(--sage)}[data-theme=dark] .creative-teaser p:not(.section-label),[data-theme=dark] .teaser-note,[data-theme=dark] .creative-handnote,[data-theme=dark] .cat-footnote{color:var(--muted)}[data-theme=dark] .creative-asterisk,[data-theme=dark] .cat-heading>span,[data-theme=dark] .interest-number,[data-theme=dark] .creative-interest>svg,[data-theme=dark] .beyond-handnote,[data-theme=dark] .reader-tags span,[data-theme=dark] .reader-art-note,[data-theme=dark] .poem-end,[data-theme=dark] .diary-prose .reader-signature,[data-theme=dark] .diary-no-results>svg{color:var(--green)}[data-theme=dark] .diary-filters button:hover{background:var(--sage)}[data-theme=dark] .cat-paper{color:#244b3f;background:#f7f6f0;border-color:#83917b}[data-theme=dark] .cat-paper-note{color:#a24b2b}@media (width<=1100px) and (width>=821px){.header-inner{gap:18px}.site-nav{gap:20px}}@media (width<=820px){.theme-toggle{order:2}}@media (width<=600px){.header-inner{grid-template-columns:minmax(0,1fr) auto auto auto}.theme-toggle{width:32px;height:32px}.header-resume{gap:5px;padding-inline:6px}.header-resume>svg{display:none}.wordmark-caption{max-width:130px;font-size:var(--text-small)}}
