﻿*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:#0c0a09;color:#f5f5f4;font-family:ui-sans-serif,system-ui,-apple-system,sans-serif;line-height:1.65;max-width:48rem;margin:0 auto;padding:4rem 1.5rem 6rem}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;letter-spacing:-.01em;color:#f5f5f4}h1{font-size:1.5rem;margin-bottom:.35rem}h2{font-size:1rem;margin-bottom:2rem;text-transform:uppercase;letter-spacing:.1em;color:#847d78}h3{font-size:1rem;margin-bottom:.5rem}p{margin-bottom:1.25rem;color:#f5f5f4}a{color:#f5f5f4;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#27272a}a:hover{text-decoration-color:#847d78}strong{font-weight:600}em{font-style:italic}hr{border:0;border-top:1px solid #27272a;margin:3rem 0}section,header,footer,article{margin-bottom:3.5rem}.site-nav{display:flex;align-items:center;gap:1.25rem;margin-bottom:3rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem}.site-nav a{display:inline-flex;align-items:center;min-height:2.75rem;color:#847d78;text-decoration:none;transition:color .2s ease}.site-nav a:hover,.site-nav a:focus-visible{color:#f5f5f4}.site-header{padding-bottom:2rem;border-bottom:1px solid #27272a}.site-header .site-name{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.2rem}.site-header .site-title{font-size:.8125rem;color:#847d78;text-transform:uppercase;letter-spacing:.12em;margin-bottom:1rem}.site-header .site-bio{font-size:.9rem;color:#847d78;line-height:1.6;max-width:40rem;margin-bottom:0}.site-header .site-bio p{margin:0 0 1rem 0}.site-header .site-bio p:last-child{margin-bottom:0}.page-heading{margin-bottom:2.5rem}.page-heading h1{font-size:1.25rem;margin-bottom:0}.section-label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:#847d78;border-bottom:1px solid #27272a;padding-bottom:.5rem;margin-bottom:1.5rem}.education-divider{margin-top:2rem}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-top:1.25rem;border-top:1px solid #27272a;margin:1rem 0 0}.site-footer .footer-label{display:inline-flex;align-items:center;min-height:1.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;color:#847d78;text-transform:uppercase;letter-spacing:.12em;text-decoration:none;transition:color .2s ease}.site-footer .footer-label:hover,.site-footer .footer-label:focus-visible{color:#f5f5f4}.site-footer .social-links{display:flex;align-items:center;gap:1rem}.site-footer .social-links a{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;min-height:1.5rem;color:#847d78;text-decoration:none;transition:color .2s ease,transform .2s ease}.site-footer .social-links a:hover{color:#f5f5f4;transform:translateY(-1px)}.site-footer .social-links a:focus-visible{color:#f5f5f4;outline:1px solid #847d78;outline-offset:4px;border-radius:2px}.site-footer .social-links svg{width:1rem;height:1rem;fill:currentColor}.log-row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:.75rem .5rem;margin:0 -.5rem;border-radius:6px;transition:background-color .2s ease}.log-row .log-left-group{display:flex;align-items:center;gap:.75rem;flex-grow:1}.log-row .log-left{display:flex;flex-direction:column;gap:.1rem}.log-row .log-left .log-title{font-size:.9375rem;font-weight:600;color:#f5f5f4}.log-row .log-left .log-company{font-size:.8125rem;color:#847d78}.log-row .log-right{display:flex;align-items:center;gap:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8125rem;color:#847d78;white-space:nowrap;flex-shrink:0}.log-row .log-right .log-duration{flex-shrink:0}.log-row .log-toggle{display:inline-flex;align-items:center;justify-content:center;width:.75rem;height:.75rem;color:#847d78;transition:transform .2s ease,color .2s ease;flex-shrink:0;user-select:none}.log-row .log-toggle::before{content:"›";font-size:1.1rem;line-height:1}.log-row .log-toggle-spacer{display:inline-block;width:.75rem;height:.75rem;flex-shrink:0}.career-entry{border-bottom:1px solid #27272a}.career-entry:first-child{border-top:1px solid #27272a}.career-entry>summary{list-style:none;cursor:pointer;user-select:none}.career-entry>summary::-webkit-details-marker{display:none}.career-entry>summary::marker{display:none}.career-entry>summary:hover,.career-entry>summary:focus-visible{background-color:rgba(24,24,27,.6)}.career-entry>summary:hover .log-title,.career-entry>summary:focus-visible .log-title{color:#f5f5f4}.career-entry>summary:hover .log-toggle,.career-entry>summary:focus-visible .log-toggle{color:#f5f5f4;transform:translateX(2px)}.career-entry>summary:focus-visible{outline:1px solid #847d78;outline-offset:2px}.career-entry.non-expandable .log-row{cursor:default}.career-entry.non-expandable .log-row:hover{background-color:rgba(0,0,0,0)}.career-entry[open]>summary .log-toggle{transform:rotate(90deg);color:#f5f5f4}.career-entry .career-detail{padding:1rem 0 1.25rem 0;border-left:1px solid #27272a;margin-left:-.125rem;padding-left:1.5rem}.career-entry .career-detail .career-detail-desc{font-size:.875rem;color:#847d78;line-height:1.65;margin-bottom:.75rem}.career-entry .career-detail .career-detail-bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.career-entry .career-detail .career-detail-bullets li{font-size:.8125rem;color:#847d78;line-height:1.55;padding-left:1.1rem;position:relative}.career-entry .career-detail .career-detail-bullets li::before{content:"–";position:absolute;left:0;color:#27272a}.featured-list{display:flex;flex-direction:column;gap:0}.featured-item{padding:1rem 0;border-bottom:1px solid #27272a}.featured-item:first-child{border-top:1px solid #27272a}.featured-item .featured-title{font-size:.9375rem;font-weight:600;color:#f5f5f4;margin-bottom:.25rem;text-decoration:none}.featured-item .featured-title:hover{text-decoration-color:#847d78}.featured-item .featured-desc{font-size:.8125rem;color:#847d78;line-height:1.5;margin-bottom:0}.journal-feed{display:flex;flex-direction:column;gap:0}.journal-row{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;padding:.5rem 0;border-bottom:1px solid #27272a;text-decoration:none}.journal-row:first-child{border-top:1px solid #27272a}.journal-row:hover .journal-title{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#847d78}.journal-row .journal-title{font-size:.875rem;color:#f5f5f4;font-weight:500}.journal-row .journal-date{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8125rem;color:#847d78;white-space:nowrap;flex-shrink:0}.article-header{margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid #27272a}.article-header .article-title{font-size:1.375rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.5rem}.article-header .article-meta{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8125rem;color:#847d78}.article-body h2{font-size:1rem;margin-top:2.5rem;margin-bottom:.75rem;text-transform:none;letter-spacing:-.01em;color:#f5f5f4}.article-body h3{font-size:.9375rem;margin-top:2rem;margin-bottom:.5rem;color:#847d78}.article-body p{margin-bottom:1.25rem}.article-body ul,.article-body ol{margin:0 0 1.25rem 1.25rem}.article-body ul li,.article-body ol li{margin-bottom:.4rem;font-size:.9375rem}.article-body blockquote{border-left:2px solid #27272a;padding-left:1rem;margin:1.5rem 0;color:#847d78;font-style:italic}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875em;background-color:#18181b;border:1px solid #27272a;padding:.1em .35em}pre{background-color:#18181b;border:1px solid #27272a;padding:1.25rem 1.5rem;overflow-x:auto;margin-bottom:1.5rem;line-height:1.55}pre code{background:none;border:none;padding:0;font-size:.875rem}.back-link{display:inline-block;font-size:.8125rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#847d78;text-decoration:none;margin-bottom:2.5rem}.back-link::before{content:"← "}.back-link:hover{color:#f5f5f4}@media (max-width: 30rem){body{padding:2.5rem 1.5rem 4rem}.log-row{flex-direction:column;align-items:stretch;gap:.25rem}.log-row .log-left-group,.log-row .log-left{min-width:0}.log-row .log-right{margin-left:1.5rem}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:.01ms !important}}