*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}a,button{font:inherit}button{cursor:pointer}a{color:inherit}::selection{background:#b7ff36;color:#08110d}@font-face{font-display:swap;font-family:Centra;font-weight:400;src:url(/static/media/CentraNo2-Book.2b143fa4b734a3584043.ttf) format("truetype")}@font-face{font-display:swap;font-family:Centra;font-weight:500;src:url(/static/media/CentraNo2-Medium.f94be5b326d78bb32b95.ttf) format("truetype")}@font-face{font-display:swap;font-family:Centra;font-weight:700;src:url(/static/media/CentraNo2-Bold.2faff7f7d3fc92a2fcd9.ttf) format("truetype")}:root{--ink:#102d24;--forest:#0d3628;--forest-dark:#09291f;--paper:#eee9db;--paper-light:#f8f5ec;--lime:#d9e88e;--rust:#c95b40;--muted:#68736c;--line:#102d2433;--container:1280px;--serif:Georgia,"Times New Roman",serif}.portfolio-site{background:#eee9db;background:var(--paper);color:#102d24;color:var(--ink);font-family:Centra,Arial,sans-serif}.portfolio-site a{color:inherit;text-decoration:none}.portfolio-site button,.portfolio-site input,.portfolio-site select{font:inherit}.portfolio-site h1,.portfolio-site h2,.portfolio-site h3,.portfolio-site h4,.portfolio-site p{margin:0}.site-container{margin-inline:auto;width:min(calc(100% - 72px),1280px);width:min(calc(100% - 72px),var(--container))}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.skip-link{background:#d9e88e;background:var(--lime);color:#0d3628!important;color:var(--forest)!important;font-size:13px;font-weight:700;left:12px;padding:11px 16px;position:fixed;top:12px;transform:translateY(-160%);transition:transform .2s ease;z-index:2000}.skip-link:focus{transform:translateY(0)}.icon{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;height:18px;width:18px}.section-kicker{color:#c95b40;color:var(--rust);display:block;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.section-heading{grid-gap:90px;align-items:end;display:grid;gap:90px;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr)}.section-heading h2{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:clamp(54px,6vw,88px);font-weight:400;letter-spacing:-.055em;line-height:.96;margin-top:18px}.site-header{left:0;padding-inline:18px;position:fixed;top:16px;transition:transform .34s cubic-bezier(.2,.8,.2,1),opacity .28s ease;width:100%;z-index:1000}.site-header.is-hidden{opacity:0;transform:translateY(calc(-100% - 30px))}.site-header.is-visible{opacity:1;transform:translateY(0)}.header-shell{align-items:center;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:#08231ac7;border:1px solid #efebdb33;border-radius:4px;box-shadow:0 15px 50px #03140e2e;color:#f7f3e7;display:grid;grid-template-columns:100px 1fr auto;margin-inline:auto;min-height:66px;padding:0 10px 0 18px;width:min(100%,1360px)}.az-mark{align-items:center;display:flex;height:48px;justify-content:center;width:48px}.golf-flag-mark{height:46px;overflow:visible;width:46px}.golf-flag-hole,.golf-flag-line{fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.golf-flag-ball,.golf-flag-initials{fill:currentColor;stroke:none}.golf-flag-initials{font:700 6.5px Centra,Arial,sans-serif;letter-spacing:-.05em}.desktop-nav{display:flex;gap:clamp(22px,3vw,48px);justify-content:center}.desktop-nav a{color:#ffffffd4;font-size:12px;padding:10px 0;position:relative}.desktop-nav a:after{background:#d9e88e;background:var(--lime);bottom:3px;content:"";height:1px;left:0;position:absolute;right:0;transform:scaleX(0);transform-origin:right;transition:transform .22s ease}.desktop-nav a:focus-visible:after,.desktop-nav a:hover:after{transform:scaleX(1);transform-origin:left}.header-links{align-items:center;display:flex;gap:7px}.header-social{border:1px solid #ffffff38;border-radius:50%;display:grid;height:38px;place-items:center;transition:color .2s,background .2s,border-color .2s;width:38px}.connect-socials>a>svg:first-child,.github-profile-link>svg:first-child,.header-social svg,.mobile-socials svg{fill:currentColor;height:16px;width:16px}.header-social:focus-visible,.header-social:hover{background:#d9e88e;background:var(--lime);border-color:#d9e88e;border-color:var(--lime);color:#0d3628;color:var(--forest)}.header-calendar-link{border:1px solid #ffffff38;border-radius:50%;display:grid;height:38px;place-items:center;transition:color .2s,background .2s,border-color .2s;width:38px}.header-calendar-link svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;height:16px;width:16px}.header-calendar-link:focus-visible,.header-calendar-link:hover{background:#d9e88e;background:var(--lime);border-color:#d9e88e;border-color:var(--lime);color:#0d3628;color:var(--forest)}.mobile-menu-trigger,.mobile-navigation{display:none}.hero-section{--hero-accent:#d9e88e;background:#0d3628;background:var(--forest);color:#f3efe2;min-height:max(800px,100svh);overflow:hidden;position:relative}.hero-mode-customer{--hero-accent:#f49269}.hero-mode-builder{--hero-accent:#5dcfe0}.hero-mode-leader{--hero-accent:#ebbe65}.ascii-canvas,.hero-shade{height:100%;inset:0;position:absolute;width:100%}.hero-shade{background:linear-gradient(90deg,#051917f7,#051917d6 38%,#05191724 74%,#05191757),linear-gradient(0deg,#051715b8,#0000 30%)}.hero-content{display:flex;flex-direction:column;min-height:max(800px,100svh);padding-bottom:115px;padding-top:clamp(145px,17vh,190px);position:relative;z-index:2}.hero-kicker{align-items:center;color:#f5f1e2c2;display:flex;font-size:11px;font-weight:700;gap:11px;letter-spacing:.14em;text-transform:uppercase}.hero-kicker span{animation:signal-pulse 2.4s ease-in-out infinite;background:var(--hero-accent);border-radius:50%;box-shadow:0 0 0 5px color-mix(in srgb,var(--hero-accent) 10%,#0000);height:7px;transition:background .65s ease,box-shadow .65s ease;width:7px}.hero-content h1{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:clamp(100px,12.7vw,190px);font-weight:400;letter-spacing:-.075em;line-height:.72;margin-top:clamp(30px,5vh,60px);max-width:940px;text-shadow:0 20px 80px #05181240}.hero-content h1 em{color:var(--hero-accent);font-weight:400;transition:color .65s ease}.hero-positioning{grid-gap:clamp(50px,8vw,130px);align-items:start;display:grid;gap:clamp(50px,8vw,130px);grid-template-columns:minmax(300px,520px) minmax(260px,390px);margin-top:clamp(50px,7vh,82px)}.hero-positioning>p{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:clamp(23px,2.2vw,34px);letter-spacing:-.025em;line-height:1.25}.role-list{border-top:1px solid #ffffff52}.role-list button{grid-gap:10px;align-items:center;background:#0000;border:0;border-bottom:1px solid #fff3;color:#ffffffdb;cursor:pointer;display:grid;font-size:12px;gap:10px;grid-template-columns:34px 1fr 16px;min-height:40px;padding:0 8px 0 0;position:relative;text-align:left;transition:color .3s ease,background .35s ease,padding .35s ease;width:100%}.role-list button.active,.role-list button:focus-visible,.role-list button:hover{background:#ffffff14;color:#fff;padding-left:8px}.role-list button i{color:var(--hero-accent);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;font-style:normal;transition:color .65s ease}.role-list button span{min-width:0}.role-list button b{background:#0000;border:1px solid #fff6;border-radius:50%;height:6px;justify-self:end;transform:scale(.75);transition:border-color .3s ease,background .3s ease,box-shadow .3s ease,transform .3s ease;width:6px}.role-list button.active b{background:var(--hero-accent);border-color:var(--hero-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--hero-accent) 14%,#0000);transform:scale(1)}.hero-actions{align-items:center;display:flex;gap:35px;margin-top:42px}.primary-action{align-items:center;background:var(--hero-accent);border:1px solid var(--hero-accent);color:#0d3628!important;color:var(--forest)!important;display:inline-flex;font-size:12px;font-weight:700;justify-content:space-between;min-height:54px;min-width:210px;padding:0 18px;transition:color .22s,background .22s,border-color .65s ease}.primary-action:focus-visible,.primary-action:hover{background:#0000;color:var(--hero-accent)!important}.text-action{align-items:center;border-bottom:1px solid #ffffff80;display:inline-flex;font-size:12px;gap:14px;padding:8px 0}.text-action span{color:var(--hero-accent);transition:color .65s ease}.hero-readout{color:#ffffff4d;display:flex;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;gap:35px;letter-spacing:.14em;position:absolute;top:50%;writing-mode:vertical-rl;z-index:2}.readout-left{left:18px;transform:translateY(-50%) rotate(180deg)}.readout-right{right:18px;transform:translateY(-50%)}.hero-proof{align-items:center;bottom:34px;color:#ffffff8c;display:flex;font-size:9px;gap:14px;letter-spacing:.08em;position:absolute;right:42px;text-transform:uppercase;z-index:2}.hero-proof strong{color:#ffffffe6;font-weight:500}.hero-proof i{background:#ffffff47;height:1px;width:28px}.scroll-cue{align-items:center;bottom:26px;color:#ffffff94;display:flex;flex-direction:column;font-size:8px;gap:10px;left:50%;letter-spacing:.14em;position:absolute;text-transform:uppercase;transform:translateX(-50%);z-index:2}.scroll-cue i{animation:scroll-line 2s ease-in-out infinite;background:linear-gradient(#d9e88e 50%,#ffffff2e 0);background:linear-gradient(var(--lime) 50%,#ffffff2e 50%);background-size:100% 200%;height:36px;width:1px}.career-section{background:#eee9db;background:var(--paper);padding:145px 0 130px}.career-intro{border-top:1px solid #102d24;border-top:1px solid var(--ink);padding-top:22px}.career-intro .career-tagline{color:#526159;font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:20px;line-height:1.55}.career-intro .career-context{color:#68736c;color:var(--muted);font-size:12px;line-height:1.65;margin-top:24px}.career-table{border-top:1px solid #102d24;border-top:1px solid var(--ink);margin-top:95px}.career-table-head{color:#68736c;font-size:9px;font-weight:700;letter-spacing:.14em;min-height:47px;padding-left:55px;text-transform:uppercase}.career-table article,.career-table-head{grid-gap:28px;align-items:center;border-bottom:1px solid #102d2433;border-bottom:1px solid var(--line);display:grid;gap:28px;grid-template-columns:1.1fr 1.05fr 1.8fr 100px}.career-table article{min-height:132px;padding:24px 0 24px 55px;position:relative;transition:padding .25s ease,background .25s ease}.career-table article.current{background:#0d3628;background:var(--forest);border-bottom:0;color:#f8f4e8;margin-inline:-20px;padding-inline:75px 20px}.career-index{color:#8b968f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;left:0;position:absolute}.current .career-index{color:#d9e88e;color:var(--lime);left:20px}.career-table h3{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:26px;font-weight:400}.career-table h3 a{align-items:center;display:inline-flex;gap:8px}.career-table h3 .icon{height:14px;opacity:0;transform:translate(-4px,4px);transition:opacity .2s,transform .2s;width:14px}.career-table h3 a:focus-visible .icon,.career-table h3 a:hover .icon{opacity:1;transform:translate(0)}.career-role{font-size:13px;line-height:1.45}.career-note{color:#5c6962;font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:16px;line-height:1.45}.current .career-note{color:#ffffffb8}.career-table time{color:#77837c;font-size:10px;justify-self:end;text-align:right;text-transform:uppercase}.current time{color:#d9e88e;color:var(--lime)}.career-foundation{grid-gap:100px;align-items:end;border-top:1px solid #102d24;border-top:1px solid var(--ink);display:grid;gap:100px;grid-template-columns:.8fr 1.2fr;margin-top:80px;padding-top:45px}.career-foundation h3{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:33px;font-weight:400;margin-top:18px}.career-foundation>div>p{color:#68736c;color:var(--muted);font-size:13px;margin-top:8px}.foundation-points{border-bottom:1px solid #102d2433;border-bottom:1px solid var(--line);border-top:1px solid #102d2433;border-top:1px solid var(--line);display:grid;grid-template-columns:.7fr .7fr 1.35fr}.foundation-points p{border-right:1px solid #102d2433;border-right:1px solid var(--line);min-height:115px;padding:18px}.foundation-points p:last-child{border-right:0}.foundation-points span,.foundation-points strong{display:block}.foundation-points strong{color:#c95b40;color:var(--rust);font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:28px;font-weight:400}.foundation-points span{color:#5c6861;font-size:11px;line-height:1.4;margin-top:23px}.projects-section{background:#09291f;background:var(--forest-dark);color:#f2eee2;padding:145px 0 150px}.projects-heading>p{border-top:1px solid #fff6;color:#ffffffa3;font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:18px;line-height:1.55;max-width:410px;padding-top:22px}.projects-heading h2{margin-top:0}.github-panel{background:hsla(0,0%,100%,.025);border:1px solid #ffffff36;margin-top:90px}.github-proof{grid-gap:40px;align-items:end;display:grid;gap:40px;grid-template-columns:1fr auto;padding:34px 36px}.github-proof h3{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:34px;font-weight:400;margin-top:0}.github-stats{display:flex;gap:45px}.github-stats p{display:flex;flex-direction:column;min-width:94px}.github-stats strong{color:#d9e88e;color:var(--lime);font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:34px;font-weight:400}.github-stats span{color:#ffffff7a;font-size:9px;letter-spacing:.1em;margin-top:5px;text-transform:uppercase}.contribution-calendar{border-bottom:1px solid #ffffff21;border-top:1px solid #ffffff21;min-height:196px;padding:24px 36px 20px}.contribution-calendar-scroll{overflow-x:auto;padding-bottom:7px;scrollbar-color:#d9e88e6b #ffffff0f;scrollbar-width:thin}.contribution-months{grid-gap:4px;color:#ffffff80;display:grid;font-size:9px;gap:4px;line-height:1;margin-bottom:9px;min-width:792px}.contribution-months span{overflow:visible;white-space:nowrap}.contribution-chart{grid-gap:4px;display:grid;gap:4px;grid-template-columns:28px minmax(760px,1fr);min-width:792px}.contribution-weekdays{grid-gap:4px;color:#ffffff75;display:grid;font-size:8px;gap:4px;grid-template-rows:repeat(7,minmax(8px,1fr));line-height:1}.contribution-weekdays span{align-items:center;display:flex}.activity-grid{grid-gap:4px;display:grid;gap:4px;grid-auto-flow:column;grid-template-rows:repeat(7,minmax(8px,1fr));min-width:760px}.activity-grid i{aspect-ratio:1;background:#ffffff14;border:1px solid hsla(0,0%,100%,.025);border-radius:2px;cursor:default;min-width:8px;transition:border-color .18s ease,filter .18s ease,transform .18s ease;width:100%}.activity-grid i:not(.is-future):focus-visible,.activity-grid i:not(.is-future):hover{border-color:#ffffffb8;filter:brightness(1.18);outline:0;transform:scale(1.16);z-index:1}.activity-grid i[data-level="1"]{background:#d9e88e47}.activity-grid i[data-level="2"]{background:#d9e88e7a}.activity-grid i[data-level="3"]{background:#d9e88eb3}.activity-grid i[data-level="4"]{background:#d9e88e;background:var(--lime)}.activity-grid .is-future{visibility:hidden}.contribution-calendar-footer{align-items:center;color:#ffffff70;display:flex;font-size:9px;gap:20px;justify-content:space-between;margin-top:10px;min-width:792px}.contribution-legend{align-items:center;display:flex;flex:0 0 auto;gap:5px}.contribution-legend i{background:#ffffff14;border-radius:2px;height:11px;width:11px}.contribution-legend i[data-level="1"]{background:#d9e88e47}.contribution-legend i[data-level="2"]{background:#d9e88e7a}.contribution-legend i[data-level="3"]{background:#d9e88eb3}.contribution-legend i[data-level="4"]{background:#d9e88e;background:var(--lime)}.contribution-status{color:#ffffff7a;display:grid;font-size:12px;min-height:150px;place-items:center}.activity-lower{grid-gap:45px;align-items:center;display:grid;gap:45px;grid-template-columns:1fr auto;padding:25px 36px}.activity-events{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(3,minmax(0,1fr))}.activity-events a{grid-gap:5px 10px;display:grid;gap:5px 10px;grid-template-columns:1fr auto;min-width:0}.activity-events a span{color:#d9e88e;color:var(--lime);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.activity-events a strong{font-size:11px;font-weight:500;grid-column:1/-1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-events time{color:#fff6;font-size:8px;grid-column:2;grid-row:1;text-transform:uppercase}.activity-empty{color:#ffffff80;font-size:12px}.github-profile-link{align-items:center;border-bottom:1px solid #ffffff73;display:flex;font-size:11px;font-weight:700;gap:10px;min-width:-webkit-max-content;min-width:max-content;padding-bottom:5px}.github-profile-link .icon{height:13px;width:13px}.project-controls{margin-top:80px}.project-search{grid-gap:15px;align-items:center;border-bottom:1px solid #ffffff80;border-top:1px solid #ffffff80;display:grid;gap:15px;grid-template-columns:25px 1fr;min-height:70px;padding:0 4px}.project-search svg{fill:none;stroke:#d9e88e;stroke:var(--lime);stroke-width:1.5;height:21px;width:21px}.project-search input{background:#0000;border:0;color:#fff;font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:clamp(21px,2.4vw,30px);outline:0;width:100%}.project-search input::placeholder{color:#ffffff6b}.project-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.project-filters button{background:#0000;border:1px solid #ffffff3b;border-radius:999px;color:#fff9;font-size:10px;padding:9px 13px;transition:color .2s,background .2s,border-color .2s}.project-filters button.active,.project-filters button:focus-visible,.project-filters button:hover{background:#d9e88e;background:var(--lime);border-color:#d9e88e;border-color:var(--lime);color:#0d3628;color:var(--forest)}.featured-project-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:55px}.project-card{background:hsla(0,0%,100%,.025);border:1px solid #fff3;min-width:0;transition:border-color .25s ease,transform .25s ease}.project-card:hover{border-color:#d9e88eb8;transform:translateY(-3px)}.project-visual{background-color:#113b2d;background-image:linear-gradient(#d9e88e0f 1px,#0000 0),linear-gradient(90deg,#d9e88e0f 1px,#0000 0);background-size:26px 26px;border-bottom:1px solid #ffffff29;color:#d9e88e;color:var(--lime);height:270px;overflow:hidden;position:relative}.visual-lyrics{display:flex;flex-direction:column;justify-content:center;padding-left:13%}.visual-lyrics span:first-child{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:clamp(42px,5vw,70px)}.visual-lyrics span:nth-child(2){color:#ffffff9e;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.1em;margin-top:12px}.visual-lyrics i{border:1px solid #d9e88e59;border-radius:50%;height:72px;position:absolute;right:10%;width:72px}.visual-lyrics i:nth-of-type(2){height:130px;width:130px}.visual-lyrics i:nth-of-type(3){height:190px;width:190px}.visual-cells{grid-gap:5px;display:grid;gap:5px;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(4,1fr);padding:42px}.visual-cells i{border:1px solid #d9e88e40;color:#fff9;display:grid;font:normal 10px ui-monospace,SFMono-Regular,Menlo,monospace;place-items:center}.visual-cells i:nth-child(7),.visual-cells i:nth-child(8),.visual-cells i:nth-child(9){background:#d9e88e;background:var(--lime);color:#0d3628;color:var(--forest)}.visual-waves{align-items:center;display:flex;gap:10px;justify-content:center}.visual-waves b{animation:equalizer 2.2s ease-in-out infinite;background:#d9e88e;background:var(--lime);border-radius:999px;width:52px}.visual-waves b:first-child{animation-delay:-.4s;height:75px}.visual-waves b:nth-child(2){animation-delay:-.9s;height:145px}.visual-waves b:nth-child(3){animation-delay:-1.3s;height:105px}.visual-waves b:nth-child(4){animation-delay:-.2s;height:170px}.visual-waves span{bottom:15px;color:#ffffff6e;font:8px ui-monospace,monospace;position:absolute;right:18px}.visual-terminal{display:flex;flex-direction:column;font:13px ui-monospace,SFMono-Regular,Menlo,monospace;gap:18px;justify-content:center;padding:55px 13%}.visual-terminal span:nth-child(2){color:#fff}.visual-terminal i{animation:cursor 1s step-end infinite;background:#d9e88e;background:var(--lime);height:17px;width:9px}.visual-map b{border:1px solid #d9e88e6b;border-radius:49% 51% 44% 56%/55% 46% 54% 45%;position:absolute;transform:rotate(-12deg)}.visual-map b:first-child{background:#d9e88e14;inset:16% 18% 13% 22%}.visual-map b:nth-child(2){background:#d9e88e2e;inset:30% 34% 27% 39%}.visual-map b:nth-child(3){background:#c95b40;background:var(--rust);border:0;border-radius:50%;box-shadow:0 0 0 7px #c95b402e;height:10px;left:55%;top:48%;width:10px}.visual-map span{bottom:15px;font:8px ui-monospace,monospace;position:absolute;right:18px}.visual-bars{align-items:flex-end;display:flex;gap:14px;padding:55px 13% 40px}.visual-bars i{background:#d9e88e;background:var(--lime);flex:1 1;max-width:50px}.visual-bars i:nth-child(2n){background:#d9e88e66}.visual-bars span{font:8px ui-monospace,monospace;position:absolute;right:18px;top:18px}.project-card-body{display:flex;flex-direction:column;min-height:340px;padding:30px}.project-card-meta{color:#ffffff6b;display:flex;font-size:8px;font-weight:700;justify-content:space-between;letter-spacing:.13em;text-transform:uppercase}.project-card h3{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:35px;font-weight:400;letter-spacing:-.03em;margin-top:30px}.project-summary{color:#d9e88e;color:var(--lime);font-size:14px;line-height:1.45;margin-top:14px!important}.project-detail{color:#ffffff94;font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:15px;line-height:1.55;margin-top:14px!important;max-width:520px}.project-card-footer{align-items:end;display:flex;gap:20px;justify-content:space-between;margin-top:auto;padding-top:30px}.project-tags{display:flex;flex-wrap:wrap;gap:6px}.project-tags span{border:1px solid #ffffff2e;border-radius:999px;color:#ffffff8c;font-size:8px;padding:6px 8px}.project-actions{display:flex;gap:14px}.project-actions a{align-items:center;border-bottom:1px solid #ffffff6b;display:inline-flex;font-size:9px;font-weight:700;gap:6px;padding-bottom:4px;text-transform:uppercase}.project-actions .icon{height:11px;width:11px}.archive-wrap{margin-top:100px}.archive-heading{align-items:baseline;border-bottom:1px solid #ffffff73;display:flex;justify-content:space-between;padding-bottom:18px}.archive-heading h3{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:30px;font-weight:400}.archive-heading span{color:#fff6;font-size:9px;text-transform:uppercase}.archive-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}.project-card.compact .project-card-body{min-height:285px;padding:24px}.project-card.compact h3{font-size:25px}.project-card.compact .project-summary{color:#ffffff9e;font-family:Georgia,Times New Roman,serif;font-family:var(--serif)}.project-card.compact .project-card-footer{display:block}.project-card.compact .project-actions{margin-top:20px}.show-all-button{background:#0000;border:0;border-bottom:1px solid #ffffff40;border-top:1px solid #ffffff40;color:#ffffffbf;display:flex;font-size:11px;justify-content:space-between;margin-top:18px;padding:16px 4px;text-align:left;width:100%}.project-empty{border:1px solid #fff3;margin-top:55px;padding:60px;text-align:center}.project-empty p{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:24px}.project-empty button{background:#0000;border:0;border-bottom:1px solid;color:#d9e88e;color:var(--lime);font-size:11px;margin-top:20px;padding:4px 0}.connect-section{background:#d9e88e;background:var(--lime);color:#102d24;color:var(--ink);padding:145px 0 130px}.connect-heading h2{font-size:clamp(62px,7vw,100px);margin-top:0}.connect-intro{border-top:1px solid #102d24;border-top:1px solid var(--ink);padding-top:22px}.connect-intro>p{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:18px;line-height:1.55}.connect-socials{display:flex;gap:8px;margin-top:32px}.connect-socials a{align-items:center;border:1px solid #102d2473;border-radius:999px;display:flex;font-size:9px;font-weight:700;gap:8px;padding:9px 11px;text-transform:uppercase;transition:color .2s,background .2s}.connect-socials a:focus-visible,.connect-socials a:hover{background:#0d3628;background:var(--forest);color:#d9e88e;color:var(--lime)}.connect-socials .icon{height:11px;width:11px}.scheduler-shell{background:#f8f5ec;background:var(--paper-light);border:1px solid #0d3628;border:1px solid var(--forest);box-shadow:20px 24px 0 #0d36281f;display:grid;grid-template-columns:.72fr 1.28fr;margin-top:85px;min-height:670px}.scheduler-step{border:1px solid;border-radius:50%;color:#68756e;display:grid;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;height:33px;place-items:center;width:33px}.scheduler-context{background:#eee9db;background:var(--paper);border-right:1px solid #0d3628;border-right:1px solid var(--forest);display:flex;flex-direction:column;padding:42px}.scheduler-context>div:first-child,.scheduler-toolbar>div{align-items:center;display:flex;gap:16px}.scheduler-context h3,.scheduler-toolbar h3{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:26px;font-weight:400}.duration-options{border-top:1px solid #102d2433;border-top:1px solid var(--line);margin-top:42px}.duration-options button{grid-gap:14px;align-items:center;background:#0000;border:0;border-bottom:1px solid #102d2433;border-bottom:1px solid var(--line);color:#102d24;color:var(--ink);display:grid;gap:14px;grid-template-columns:28px 1fr 14px;min-height:82px;padding:10px 5px;text-align:left;width:100%}.booking-success svg,.calendar-privacy svg,.duration-options svg,.scheduler-notice>svg,.selected-time svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;height:21px;width:21px}.duration-options button>span{color:#748078;display:flex;flex-direction:column;font-size:10px;gap:5px}.duration-options button strong{color:#102d24;color:var(--ink);font-size:13px;font-weight:500}.duration-options button i{border:1px solid #89938d;border-radius:50%;box-shadow:inset 0 0 0 3px #eee9db;box-shadow:inset 0 0 0 3px var(--paper);height:13px;width:13px}.duration-options button.active,.duration-options button:hover{color:#c95b40;color:var(--rust)}.duration-options button.active i{background:#0d3628;background:var(--forest);border-color:#0d3628;border-color:var(--forest)}.calendar-privacy{border-top:1px solid #102d24;border-top:1px solid var(--ink);margin-top:auto;padding-top:22px}.calendar-privacy>p{align-items:center;display:flex;font-size:11px;font-weight:700;gap:9px}.calendar-privacy>p svg{height:17px;width:17px}.calendar-privacy ul{grid-gap:10px;display:grid;gap:10px;list-style:none;margin:17px 0 0;padding:0}.calendar-privacy li{align-items:center;color:#66736b;display:flex;font-size:10px;gap:9px}.calendar-privacy li svg{color:#c95b40;color:var(--rust);height:13px;width:13px}.scheduler-booking{min-width:0;padding:42px;position:relative}.scheduler-toolbar{align-items:center;display:flex;gap:24px;justify-content:space-between}.timezone-select{align-items:center;border-bottom:1px solid #102d2433;border-bottom:1px solid var(--line);display:flex;gap:7px;padding:6px 0}.timezone-select svg{fill:none;stroke:currentColor;stroke-width:1.5;height:15px;width:15px}.timezone-select select{background:#0000;border:0;color:#57655e;font-size:10px;max-width:170px;outline:0}.date-strip{grid-gap:7px;display:grid;gap:7px;grid-template-columns:repeat(5,minmax(72px,1fr));margin-top:40px;overflow-x:auto;scrollbar-width:thin}.date-strip button{align-items:center;background:#0000;border:1px solid #102d2433;border:1px solid var(--line);color:#102d24;color:var(--ink);display:flex;flex-direction:column;min-height:91px;min-width:72px;padding:12px 8px;transition:color .2s,background .2s,border-color .2s}.date-strip button.active,.date-strip button:hover{background:#0d3628;background:var(--forest);border-color:#0d3628;border-color:var(--forest);color:#f8f5ec;color:var(--paper-light)}.date-strip small,.date-strip span{color:#748078;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.date-strip button.active small,.date-strip button.active span{color:#d9e88e;color:var(--lime)}.date-strip strong{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:25px;font-weight:400;margin:6px 0}.time-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:24px}.time-grid button{background:#0000;border:1px solid #102d2433;border:1px solid var(--line);color:#475850;font-size:11px;min-height:44px;transition:border-color .2s,color .2s,background .2s}.time-grid button.active,.time-grid button:hover{background:#c95b40;background:var(--rust);border-color:#c95b40;border-color:var(--rust);color:#fff}.scheduler-loading,.scheduler-notice{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:430px;text-align:center}.scheduler-loading{flex-direction:row;gap:7px}.scheduler-loading i{animation:loading-dot 1.1s ease-in-out infinite;background:#c95b40;background:var(--rust);border-radius:50%;height:6px;width:6px}.scheduler-loading i:nth-child(2){animation-delay:.12s}.scheduler-loading i:nth-child(3){animation-delay:.24s}.scheduler-loading p{color:#68736c;color:var(--muted);font-size:11px;margin-left:10px}.scheduler-notice>svg{color:#c95b40;color:var(--rust);height:34px;width:34px}.scheduler-notice h4{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:26px;font-weight:400;margin-top:20px}.scheduler-notice p{color:#68736c;color:var(--muted);font-size:12px;line-height:1.5;margin-top:10px;max-width:360px}.scheduler-setup{border:1px dashed #102d2440;margin-top:35px;min-height:390px}.booking-form{border-top:1px solid #102d24;border-top:1px solid var(--ink);margin-top:28px;padding-top:24px}.selected-time{grid-gap:5px 20px;align-items:center;display:grid;gap:5px 20px;grid-template-columns:1fr auto}.selected-time span{color:#68736c;color:var(--muted);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.selected-time strong{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:22px;font-weight:400;grid-column:1}.selected-time button{background:#0000;border:0;border-bottom:1px solid;color:#5f6c65;font-size:9px;grid-column:2;grid-row:1/3;padding:4px 0}.booking-fields{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:24px}.booking-fields label{display:flex;flex-direction:column;gap:8px}.booking-fields label>span{color:#637169;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.booking-fields input{background:#0000;border:1px solid #102d2433;border:1px solid var(--line);border-radius:0;color:#102d24;color:var(--ink);font-size:12px;min-height:48px;outline:0;padding:0 13px}.booking-fields input:focus{border-color:#c95b40;border-color:var(--rust)}.website-field{height:1px!important;left:-10000px!important;overflow:hidden!important;position:absolute!important;width:1px!important}.request-button{align-items:center;background:#0d3628;background:var(--forest);border:1px solid #0d3628;border:1px solid var(--forest);color:#fff;display:flex;font-size:11px;font-weight:700;justify-content:space-between;margin-top:16px;min-height:52px;padding:0 16px;transition:color .2s,background .2s;width:100%}.request-button:focus-visible,.request-button:hover{background:#0000;color:#0d3628;color:var(--forest)}.request-button:disabled{cursor:wait;opacity:.65}.booking-error{color:#a83f2c;font-size:10px;margin-top:12px!important}.booking-fineprint{color:#7a857f;font-size:9px;margin-top:9px!important;text-align:center}.booking-success{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:570px;text-align:center}.success-mark{background:#0d3628;background:var(--forest);border-radius:50%;color:#d9e88e;color:var(--lime);display:grid;height:66px;place-items:center;width:66px}.booking-success .section-kicker{margin-top:25px}.booking-success h3{font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:42px;font-weight:400;letter-spacing:-.04em;margin-top:11px}.booking-success>p:not(.section-kicker){color:#59675f;font-size:13px;margin-top:12px}.booking-success>div{border-bottom:1px solid #102d2433;border-bottom:1px solid var(--line);border-top:1px solid #102d2433;border-top:1px solid var(--line);color:#617067;display:flex;font-size:11px;gap:12px;line-height:1.5;margin-top:32px;max-width:430px;padding:18px 0;text-align:left}.booking-success>button{background:#0000;border:0;border-bottom:1px solid;color:#c95b40;color:var(--rust);font-size:10px;margin-top:30px;padding:5px 0}.site-footer{background:#09291f;background:var(--forest-dark);color:#f3efe2}.site-footer>div{align-items:center;display:grid;grid-template-columns:auto 1fr;min-height:105px}.site-footer>div>span{color:#fff6;font-size:9px;justify-self:end;letter-spacing:.1em;text-transform:uppercase}@keyframes signal-pulse{50%{box-shadow:0 0 0 9px color-mix(in srgb,var(--hero-accent) 0,#0000)}}@keyframes scroll-line{0%{background-position:0 100%}to{background-position:0 -100%}}@keyframes equalizer{50%{transform:scaleY(.55)}}@keyframes cursor{50%{opacity:0}}@keyframes loading-dot{50%{opacity:.2;transform:translateY(-4px)}}.portfolio-site a:focus-visible,.portfolio-site button:focus-visible,.portfolio-site input:focus-visible,.portfolio-site select:focus-visible{outline:2px solid #c95b40;outline:2px solid var(--rust);outline-offset:3px}@media (max-width:1050px){.section-heading{gap:50px}.hero-positioning{gap:45px;grid-template-columns:minmax(300px,520px) minmax(250px,330px)}.career-table article,.career-table-head{gap:20px;grid-template-columns:.85fr .9fr 1.5fr 75px}.career-foundation{gap:55px}.scheduler-shell{grid-template-columns:.64fr 1.36fr}.scheduler-booking,.scheduler-context{padding:32px}.date-strip{grid-template-columns:repeat(5,80px)}}@media (max-width:840px){.site-container{width:min(calc(100% - 44px),1280px);width:min(calc(100% - 44px),var(--container))}.desktop-mark,.desktop-nav,.header-links{display:none}.site-header{padding-inline:12px;top:12px}.header-shell{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0000;border:0;box-shadow:none;display:flex;justify-content:flex-end;min-height:0;padding:0}.mobile-menu-trigger{align-items:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#08231ae6;border:1px solid #ffffff4d;border-radius:50%;box-shadow:0 12px 35px #04161038;color:#f5f1e5;display:flex;height:58px;justify-content:center;padding:0;position:relative;width:58px;z-index:2}.mobile-az{display:grid;place-items:center;transition:opacity .2s}.mobile-az,.mobile-az .golf-flag-mark{height:36px;width:36px}.menu-lines{display:flex;flex-direction:column;gap:6px;opacity:0;position:absolute;transition:opacity .2s}.menu-lines i{background:currentColor;height:1px;transition:transform .2s;width:20px}.mobile-menu-trigger.is-open{background:#d9e88e;background:var(--lime);color:#0d3628;color:var(--forest)}.mobile-menu-trigger.is-open .mobile-az{opacity:0}.mobile-menu-trigger.is-open .menu-lines{opacity:1}.mobile-menu-trigger.is-open .menu-lines i:first-child{transform:translateY(3.5px) rotate(45deg)}.mobile-menu-trigger.is-open .menu-lines i:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-navigation{background:#09291f;background:var(--forest-dark);color:#f4f0e3;display:flex;flex-direction:column;inset:0;justify-content:center;opacity:0;padding:100px 32px 36px;pointer-events:none;position:fixed;transform:translateY(-20px);transition:opacity .28s ease,transform .35s ease;z-index:900}.mobile-navigation.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-navigation nav{border-top:1px solid #ffffff3d}.mobile-navigation nav a{align-items:center;border-bottom:1px solid #ffffff2e;display:grid;font-family:Georgia,Times New Roman,serif;font-family:var(--serif);font-size:clamp(28px,8vw,48px);grid-template-columns:38px 1fr;letter-spacing:-.04em;min-height:75px}.mobile-navigation nav span{color:#d9e88e;color:var(--lime);font:8px ui-monospace,monospace;letter-spacing:0}.mobile-socials{display:flex;gap:10px;margin-top:34px}.mobile-socials a{align-items:center;border:1px solid #ffffff40;border-radius:999px;display:flex;font-size:10px;gap:8px;padding:10px 13px}.mobile-navigation>p{color:#ffffff6b;font-size:9px;margin-top:auto;text-transform:uppercase}.mobile-navigation>p span{color:#d9e88e;color:var(--lime)}body.menu-open{overflow:hidden}.hero-readout{display:none}.hero-positioning{gap:38px;grid-template-columns:1fr;max-width:600px}.hero-positioning>*{min-width:0}.role-list{max-width:430px}.hero-proof{left:22px;right:auto}.scroll-cue{display:none}.section-heading{gap:42px;grid-template-columns:1fr}.career-table-head{display:none}.career-table article,.career-table article.current{gap:12px 20px;grid-template-columns:1fr 110px;margin-inline:0;min-height:0;padding:30px 0 30px 42px}.career-table article.current{margin-top:-1px;padding-inline:42px 18px}.career-index,.current .career-index{left:0;top:35px}.current .career-index{left:14px}.career-table h3{grid-column:1;grid-row:1}.career-table time{grid-column:2;grid-row:1}.career-role{color:#c95b40;color:var(--rust);grid-column:1/-1;grid-row:2}.current .career-role{color:#d9e88e;color:var(--lime)}.career-note{grid-column:1/-1;grid-row:3;max-width:620px}.career-foundation{gap:35px;grid-template-columns:1fr}.github-proof{align-items:center}.activity-lower{grid-template-columns:1fr}.github-profile-link{width:-webkit-max-content;width:max-content}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scheduler-shell{grid-template-columns:1fr}.scheduler-context{border-bottom:1px solid #0d3628;border-bottom:1px solid var(--forest);border-right:0}.calendar-privacy{margin-top:45px}.site-footer>div{gap:25px;grid-template-columns:auto 1fr auto}}@media (max-width:600px){.site-container{width:calc(100% - 34px)}.section-kicker{font-size:9px}.section-heading h2{font-size:48px}.hero-content,.hero-section{min-height:780px}.hero-shade{background:linear-gradient(90deg,#051917f0,#0519176b),linear-gradient(0deg,#051715cc,#0000 45%)}.hero-content{padding-bottom:125px;padding-top:130px}.hero-kicker{font-size:8px;line-height:1.4}.hero-content h1{font-size:clamp(67px,24vw,103px);letter-spacing:-.065em;line-height:.8;margin-top:45px}.hero-positioning{gap:31px;margin-top:54px}.hero-positioning>p{font-size:22px;max-width:380px}.role-list button{font-size:11px;min-height:42px}.hero-actions{align-items:stretch;flex-wrap:wrap;gap:14px 22px;margin-top:34px}.primary-action{flex:1 0 210px;max-width:100%;min-width:0}.text-action{font-size:10px}.hero-proof{bottom:24px;flex-wrap:wrap;font-size:7px;gap:8px 10px;left:17px;right:17px}.hero-proof i{width:15px}.career-section,.connect-section,.projects-section{padding-bottom:100px;padding-top:95px}.career-intro p,.connect-intro>p,.projects-heading>p{font-size:16px}.career-table{margin-top:60px}.career-table article,.career-table article.current{grid-template-columns:1fr 68px;padding-left:35px}.career-table article.current{padding-left:35px}.career-table h3{font-size:22px}.career-note{font-size:14px}.current .career-index{left:12px}.foundation-points{grid-template-columns:1fr 1fr}.foundation-points p:nth-child(2){border-right:0}.foundation-points p:last-child{border-top:1px solid #102d2433;border-top:1px solid var(--line);grid-column:1/-1}.github-panel{margin-top:60px}.github-proof{grid-template-columns:1fr;padding:26px 22px}.github-stats{gap:25px}.contribution-calendar{padding:20px 22px 17px}.contribution-calendar-footer{flex-wrap:wrap;font-size:8px;min-width:0}.activity-grid{gap:3px}.activity-lower{gap:30px;padding:22px}.activity-events{grid-template-columns:1fr}.project-controls{margin-top:60px}.project-search{grid-template-columns:20px 1fr;min-height:60px}.project-search input{font-size:18px}.project-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:7px}.project-filters button{flex:0 0 auto}.archive-grid,.featured-project-grid{grid-template-columns:1fr}.project-visual{height:220px}.project-card-body{min-height:330px;padding:24px}.project-card h3{font-size:30px}.project-card-footer{align-items:flex-start;flex-direction:column}.archive-wrap{margin-top:75px}.archive-heading h3{font-size:24px}.scheduler-shell{box-shadow:9px 12px 0 #0d36281f;margin-top:58px}.scheduler-booking,.scheduler-context{padding:25px 20px}.scheduler-context h3,.scheduler-toolbar h3{font-size:22px}.scheduler-toolbar{align-items:flex-start}.timezone-select select{max-width:105px}.date-strip{grid-template-columns:repeat(5,72px)}.time-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.scheduler-loading,.scheduler-notice{min-height:350px}.booking-fields{grid-template-columns:1fr}.booking-success{min-height:490px}.booking-success h3{font-size:35px}.site-footer>div{min-height:105px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/*# sourceMappingURL=main.1ae7ed1d.css.map*/