html.storefront-page{color-scheme:light;scrollbar-color:#006341 #fff;background:#fff}.personal-home{--paper:#fff;--ink:#173e30;--muted:#536459;--accent:#c8102e;--green:#006341;--line:#cbd5c5;background:var(--paper);color:var(--ink);border-top:6px solid var(--green);flex-direction:column;min-height:100vh;font-size:15px;display:flex}.personal-home ::selection{background:var(--accent);color:#fff}.personal-home a{text-underline-offset:5px;text-decoration-thickness:1px}.personal-home a:hover{color:var(--accent)}.personal-home :is(a,button,summary):focus-visible{outline:2px solid var(--accent);outline-offset:5px}.personal-home .skip-link{background:var(--green);color:#fff}.storefront-masthead{background-image:radial-gradient(circle,#006341 1.3px,#0000 1.5px);background-size:22px 22px;place-items:center;padding:24px;display:grid}.nameplate{width:min(360px,100%);line-height:0;display:block}.nameplate img{width:100%;height:auto;display:block}.main-nav{border-bottom:2px solid var(--green);justify-content:center;align-items:center;gap:42px;min-height:62px;padding:12px 24px;display:flex}.main-nav a{color:var(--green);padding:7px 0;font-size:14px;text-decoration:none}.main-nav a[aria-current]{color:var(--accent);text-decoration:underline 2px}.file-type{margin-left:4px;font-size:10px}.page-shell{flex:1;width:min(1100px,100%);min-height:42vh;margin:auto;padding:0 40px 80px}.personal-home h1{letter-spacing:-.035em;font-size:clamp(38px,4.5vw,60px);font-weight:650;line-height:1.12}.personal-home h2{letter-spacing:-.025em;color:var(--green);font-size:28px;font-weight:650;line-height:1.3}.personal-home h3{letter-spacing:-.02em;font-size:24px;font-weight:650;line-height:1.3}.personal-home p{line-height:1.8}.welcome{grid-template-columns:1fr 1fr;align-items:start;gap:64px;padding:62px 0 66px;display:grid}.welcome p{color:var(--muted);max-width:49ch;font-size:17px}.welcome a,.read-project,.other-projects-link{color:var(--accent);align-items:center;gap:12px;margin-top:19px;font-size:14px;display:inline-flex}.other-projects-link{margin-top:36px}.work-section,.experience-section{scroll-margin-top:30px}.work-section>h2{margin-bottom:28px}.featured-project{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);align-items:center;gap:40px;display:grid}.featured-project+.featured-project{border-top:1px solid var(--line);margin-top:44px;padding-top:44px}.featured-copy h3 a{text-decoration:none}.featured-copy>p{color:var(--muted);margin-top:18px}.project-meta{color:var(--muted);font-size:12px}.button-link{background:var(--green);color:#fff;justify-content:center;align-items:center;gap:15px;margin-top:24px;padding:13px 19px;font-size:14px;text-decoration:none;transition:background-color .18s ease-out;display:inline-flex}.personal-home .button-link:hover{background:var(--accent);color:#fff}.project-preview{min-width:0}.preview-controls{border:1px solid var(--line);background:#fff;align-items:center;gap:4px;padding:8px 10px;display:flex}.preview-controls[hidden]{display:none}.preview-controls>span{color:var(--muted);margin-right:auto;font-size:11px}.preview-controls button{font:inherit;color:var(--green);cursor:pointer;background:0 0;border:0;padding:8px 12px;font-size:12px}.preview-controls button[aria-pressed=true]{background:var(--green);color:#fff}.preview-controls button:hover:not([aria-pressed=true]){background:#edf4ef}.preview-stage{aspect-ratio:1280/850;border:1px solid var(--line);background:#edf4ef;border-top:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.project-capture{object-fit:contain;width:100%;height:100%;display:block}.preview-stage[data-size=mobile] .project-capture{width:auto;max-width:100%}.engineering-projects{grid-template-columns:1fr 1fr;gap:48px;margin-top:42px;display:grid}.engineering-projects article{border-top:1px solid var(--line);padding-top:26px}.engineering-projects h3{margin-bottom:14px}.engineering-projects h3 a{text-decoration:none}.engineering-projects article>p:not(.project-meta){color:var(--muted);font-size:14px}.engineering-projects .project-meta{margin-top:13px}.experience-section{border-top:2px solid var(--green);grid-template-columns:280px minmax(0,1fr);gap:56px;margin-top:80px;padding-top:44px;display:grid}.section-intro p{color:var(--muted);margin-top:15px;font-size:14px}.career-entry{border-bottom:1px solid var(--line)}.career-entry:first-child{border-top:1px solid var(--line)}.career-entry summary{cursor:pointer;grid-template-columns:116px 1fr 20px;align-items:center;gap:16px;padding:23px 0;list-style:none;display:grid}.career-entry summary::-webkit-details-marker{display:none}.career-entry summary:hover .career-company{color:var(--accent)}.career-date{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.career-company{font-size:17px;font-weight:650}.career-role{color:var(--muted);margin-top:6px;font-size:11px;font-weight:400;line-height:1.6;display:block}.disclosure-icon{transition:transform .18s ease-out}.career-entry[open] .disclosure-icon{transform:rotate(180deg)}.career-entry[open] .career-company{color:var(--green)}.career-detail{padding:0 24px 24px 132px}.career-detail h3{font-size:15px}.career-detail p:last-child{color:var(--muted);margin-top:10px;font-size:13px}.career-detail>div+div{margin-top:22px}.home-close{justify-content:space-between;align-items:center;gap:30px;margin-top:68px;display:flex}.home-close h2{font-size:23px}.home-close>div{gap:28px;font-size:14px;display:flex}.site-bottom{background:var(--green);color:#fff;justify-content:space-between;gap:24px;padding:35px max(40px,50vw - 510px);display:flex}.site-bottom>div>a{font-size:20px}.site-bottom p{color:#fff;margin-top:12px;font-size:12px}.personal-home .site-bottom a:hover{color:#fff;text-decoration-thickness:2px}.personal-home .site-bottom a:focus-visible{outline-color:#fff}.site-bottom .footer-links{align-items:center;gap:26px;display:flex}.site-bottom .footer-links a{font-size:12px}.page-heading{padding:58px 0 42px}.page-heading>p{color:var(--muted);max-width:55ch;margin-top:24px;font-size:19px}.about-layout{grid-template-columns:minmax(0,650px) 250px;gap:70px;display:grid}.prose{max-width:70ch}.prose section+section{margin-top:38px}.prose h2{margin-bottom:17px;font-size:23px}.prose p{color:var(--muted);margin:14px 0}.prose a{color:var(--accent)}.about-aside{border-top:2px solid var(--green);padding-top:24px}.about-aside h2{font-size:18px}.about-aside p{color:var(--muted);margin-top:15px;font-size:13px}.about-aside h2:not(:first-child){margin-top:35px}.about-aside a{overflow-wrap:anywhere;margin-top:17px;font-size:13px;display:block}.blog-empty{border-top:2px solid var(--green);padding:38px 0 45px}.blog-empty h2{font-size:24px}.blog-empty p{color:var(--muted);margin-top:16px}.post-list article{border-top:1px solid var(--line);padding:30px 0}.post-list time,.page-heading time{color:var(--muted);margin-top:15px;font-size:12px;display:block}.post-list h2,.post-list p{margin-top:12px}.back-link{color:var(--accent);margin-top:36px;font-size:13px;display:inline-block}.project-heading{padding-top:32px}.project-heading h1{max-width:19ch}.project-heading .project-meta{flex-wrap:wrap;gap:12px 28px;margin-top:24px;display:flex}.case-content{max-width:70ch}.case-preview{max-width:820px;margin:40px 0}.next-project{border-top:2px solid var(--green);grid-template-columns:1fr auto;gap:12px;margin-top:58px;padding-top:25px;text-decoration:none;display:grid}.next-project span{color:var(--muted);font-size:12px}.next-project strong{grid-row:2;font-size:23px;font-weight:650}.next-project svg{grid-area:2/2}.article-shell{max-width:760px;margin:auto}@media (width<=900px){.featured-project{grid-template-columns:1.4fr 1fr;gap:25px}.experience-section{grid-template-columns:1fr;gap:25px}.about-layout{grid-template-columns:1fr 220px;gap:35px}}@media (width<=650px){.storefront-masthead{background-size:19px 19px;padding:19px 28px}.nameplate{width:min(310px,100%)}.main-nav{gap:26px;min-height:57px;padding:8px 18px}.main-nav a{font-size:13px}.page-shell{padding:0 23px 46px}.welcome{grid-template-columns:1fr;gap:22px;padding:38px 0 42px}.welcome p{font-size:15px}.personal-home h2{font-size:24px}.featured-project,.engineering-projects,.about-layout{grid-template-columns:1fr}.featured-copy h3{font-size:25px}.featured-copy>p{margin-top:13px}.engineering-projects{gap:28px;margin-top:34px}.engineering-projects h3{font-size:23px}.experience-section{margin-top:48px;padding-top:28px}.career-entry summary{grid-template-columns:1fr 20px;gap:8px 12px}.career-entry summary>.career-date,.career-company{grid-column:1}.disclosure-icon{grid-area:1/2/3}.career-detail{padding-left:0}.home-close{margin-top:42px;display:block}.home-close>div{margin-top:20px}.site-bottom{padding:30px 23px;display:block}.site-bottom .footer-links{margin-top:24px}.page-heading{padding:38px 0 32px}.page-heading>p{margin-top:20px;font-size:16px}.about-aside{margin-top:12px}.project-heading{padding-top:24px}.next-project strong{font-size:20px}}@media (prefers-reduced-motion:reduce){.personal-home *,.personal-home :before,.personal-home :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
