@layer theme{:root,:host{--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-inter);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.flex{display:flex}.rounded{border-radius:.25rem}}:root{--paper:#f5f4f0;--ink:#202822;--muted:#626a63;--line:#d8dcd3;--green:#c5dbab;--dark:#19251f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline-offset:5px;outline:3px solid #547339}::selection{background:var(--green);color:var(--dark)}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{letter-spacing:-.045em;line-height:1.15}h2{font-size:clamp(32px,3.8vw,48px);font-weight:500}h3{font-size:26px;font-weight:500}h4{font-size:21px;font-weight:600}p{color:var(--muted)}.container{width:min(1180px,100% - 80px);margin-inline:auto}.skip-link{z-index:100;background:#fff;padding:12px;position:fixed;top:8px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}.navbar-spacer{height:81px}.site-header{background:var(--dark);color:#f9faf5;z-index:30;border-bottom:1px solid #0000;width:100%;transition:background .2s;position:fixed;top:0;left:0}.site-header.is-scrolled{background:0 0;top:12px}.site-header.is-scrolled .header-inner{background:var(--dark);border-radius:50px;padding-inline:24px;box-shadow:0 8px 30px #19251f33}.header-inner{justify-content:space-between;align-items:center;gap:24px;height:80px;transition:border-radius .2s,box-shadow .2s,padding .2s;display:flex}.brand{letter-spacing:-3px;font-size:34px;font-weight:700;line-height:1}.brand span{color:var(--green)}.header-inner nav{gap:30px;font-size:14px;display:flex}.header-inner nav a:hover,.text-link:hover,.footer a:hover{color:#456330}.header-inner nav a:hover{color:var(--green)}.site-header a:focus-visible{outline-color:var(--green)}.header-cta{border:1px solid #728276;border-radius:3px;padding:10px 18px;font-size:14px}.hero{background:var(--dark);color:#f9faf5;flex-direction:column;min-height:calc(100dvh - 81px);padding-top:72px;display:flex}.hero-grid{flex:1;grid-template-columns:1.15fr 1fr;align-items:center;gap:65px;padding-bottom:64px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:#58664c;margin-bottom:23px;font-size:11px;font-weight:600}.eyebrow.light{color:var(--green)}h1{letter-spacing:-.05em;font-size:clamp(38px,4.6vw,60px);font-weight:500;line-height:1.1}h1 span{color:var(--green)}.hero-intro{color:#f2f3ed;max-width:480px;margin-top:24px;font-size:21px;line-height:1.45}.hero-description{color:#b9c3bb;max-width:490px;margin-top:16px;font-size:15px}.actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{border-radius:3px;justify-content:center;align-items:center;gap:25px;padding:13px 20px;font-size:14px;font-weight:600;transition:background .2s,color .2s;display:inline-flex}.button-light{background:var(--green);color:var(--dark);border:1px solid var(--green)}.button-light:hover{background:#dfedcc}.button-outline{color:#f2f3ed;border:1px solid #728276}.button-outline:hover{background:#2d3d32}.hero-links{color:#cdd4ce;flex-wrap:wrap;gap:24px;margin-top:28px;font-size:13px;display:flex}.hero-links a:hover{text-underline-offset:5px;text-decoration:underline}.hero-work{min-width:0}.preview-label{text-transform:uppercase;letter-spacing:.1em;color:#b9c3bb;justify-content:space-between;gap:15px;margin-bottom:15px;font-size:10px;display:flex}.hero-image{background:#ede4e1;border-radius:4px;display:block;overflow:hidden}.hero-image img{width:100%;height:auto;transition:transform .4s;display:block}.hero-image:hover img{transform:scale(1.025)}.preview-caption{justify-content:space-between;align-items:center;margin-top:17px;display:flex}.preview-caption strong{font-size:16px;font-weight:500}.preview-caption span{color:#b9c3bb;margin-top:3px;font-size:12px;display:block}.preview-caption>a{font-size:25px}.snapshot{border-top:1px solid #455148;grid-template-columns:repeat(3,1fr);gap:25px;padding-block:26px;display:grid}.snapshot strong{font-size:18px;font-weight:500;display:block}.snapshot span{color:#b9c3bb;font-size:12px}.section{padding-block:100px}.section-heading{justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:48px;display:flex}.section-heading>p{max-width:360px;font-size:15px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 36px;display:grid}.project-image{border:1px solid var(--line);aspect-ratio:4/3;background:#e7e9e3;border-radius:4px;padding:14px;display:block;position:relative;overflow:hidden}.project-image img{width:100%;height:100%;transition:transform .35s;display:block}.project-image:hover img{transform:scale(1.025)}.image-link{background:var(--paper);border:1px solid var(--line);border-radius:50%;place-items:center;width:36px;height:36px;font-size:21px;display:grid;position:absolute;bottom:15px;right:15px}.project-meta{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:22px;margin-bottom:10px;font-size:10px;display:flex}.project h3{margin-bottom:12px}.project>p{max-width:500px;font-size:15px}.project .project-role{color:var(--ink);margin-top:13px;font-size:12px}.tags{flex-wrap:wrap;gap:7px;margin:16px 0 20px;padding:0;list-style:none;display:flex}.tags li{border:1px solid var(--line);color:#4a544d;border-radius:3px;padding:4px 9px;font-size:11px}.text-link{align-items:center;gap:25px;font-size:13px;font-weight:600;display:inline-flex}.experience-section{border-block:1px solid var(--line);background:#eceee7}.experience-row{border-top:1px solid #cbd1c4;grid-template-columns:1fr 1.65fr;gap:50px;padding:32px 0;display:grid}.experience-row .eyebrow,.experience-row h4{margin-bottom:12px}.experience-row p{font-size:15px}.bullet-list{color:var(--muted);margin:14px 0;padding-left:19px;font-size:14px;line-height:1.75}.bullet-list li+li{margin-top:6px}.experience-row .tags{margin-bottom:0}.about-grid{grid-template-columns:1fr 1fr;gap:70px;display:grid}.about-copy p+p{margin-top:20px}.about-copy .text-link{margin-top:24px}.expertise{border-top:1px solid var(--line);margin-top:70px;padding-top:40px}.skills-grid{grid-template-columns:repeat(3,1fr);gap:35px 40px;display:grid}.skills-grid h3{letter-spacing:-.02em;margin-bottom:10px;font-size:17px}.skills-grid p{font-size:14px;line-height:1.9}.credentials-grid{border-top:1px solid var(--line);grid-template-columns:1.2fr 1.3fr .8fr;gap:40px;margin-top:60px;padding-top:40px;display:grid}.credentials-grid h3{letter-spacing:-.02em;margin-bottom:10px;font-size:18px}.credentials-grid p,.credential-list{font-size:13px}.credential-list{color:var(--muted);margin:0;padding:0;list-style:none}.credential-list li+li{margin-top:7px}.credentials-grid .eyebrow{margin-bottom:18px}.contact-section{background:var(--dark);color:#f2f3ed;padding-block:76px}.contact-grid{grid-template-columns:1.3fr 1fr;align-items:center;gap:70px;display:grid}.contact-grid h2{font-size:clamp(34px,4vw,50px)}.contact-grid p{color:#b9c3bb;max-width:430px;margin-top:20px;font-size:15px}.contact-grid .button{margin-top:27px}.contact-details>a{overflow-wrap:anywhere;margin-bottom:12px;font-size:clamp(15px,1.8vw,21px);display:block}.contact-details>a:hover{text-decoration:underline}.contact-details .hero-links{font-size:14px}.footer{justify-content:space-between;gap:20px;padding-block:26px;font-size:11px;display:flex}.case-hero{padding-block:55px 60px}.case-back{margin-bottom:45px;font-size:13px;display:inline-block}.case-hero h1{max-width:900px;margin-top:15px}.case-description{max-width:710px;margin-top:22px;font-size:21px}.case-facts{flex-wrap:wrap;gap:55px;margin-top:35px;display:flex}.case-facts dt{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:10px}.case-facts dd{margin:6px 0 0;font-size:14px}.case-image{border:1px solid var(--line);background:#e7e9e3;border-radius:4px;padding:25px}.case-image img{object-fit:contain;width:100%;height:auto;max-height:650px;display:block}.case-body{max-width:800px;margin:auto;padding-block:65px}.case-body section{margin-bottom:45px}.case-body h2{margin-bottom:20px;font-size:28px}.case-body p{line-height:1.85}.case-next{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding-block:35px;display:flex}.case-next span{color:var(--muted);font-size:12px;display:block}.case-next strong{font-size:25px;font-weight:500}@media (min-width:1600px){.hero{padding-top:95px}.hero-grid{padding-bottom:85px}}@media (max-width:1000px){.container{width:calc(100% - 48px)}.hero-grid{gap:30px}.hero-links{gap:18px}.skills-grid{grid-template-columns:repeat(2,1fr)}.credentials-grid{grid-template-columns:1fr 1fr}.about-grid{gap:35px}.header-inner nav{gap:20px}}@media (max-width:760px){.container{width:calc(100% - 40px)}.header-inner{gap:12px;height:68px}.brand{font-size:29px}.header-inner nav{gap:14px;font-size:12px}.header-inner nav a[href="/#about"],.nav-resume{display:none}.header-cta{padding:8px 12px;font-size:12px}.hero{min-height:calc(100dvh - 69px);padding-top:42px}.hero-grid{grid-template-columns:1fr;gap:42px;padding-bottom:35px}h1{font-size:clamp(37px,7.5vw,54px)}.hero-intro{font-size:20px}.hero-description{font-size:14px}.hero-work{width:100%;max-width:560px}.snapshot{grid-template-columns:1fr;gap:17px;padding-block:25px}.snapshot>div{justify-content:space-between;align-items:center;gap:15px;display:flex}.snapshot strong{font-size:14px}.snapshot span{text-align:right;font-size:11px}.section{padding-block:65px}.section-heading{margin-bottom:32px;display:block}.section-heading>p{max-width:500px;margin-top:22px}.project-grid{grid-template-columns:1fr;gap:40px}.project-image{padding:10px}.project-meta{margin-top:17px}.experience-row{grid-template-columns:1fr;gap:20px;padding-block:28px}.experience-row h3{font-size:24px}.about-grid{grid-template-columns:1fr;gap:27px}.expertise{margin-top:45px}.skills-grid{gap:28px 20px}.skills-grid h3{font-size:16px}.skills-grid p{font-size:13px}.credentials-grid{grid-template-columns:1fr;gap:30px;margin-top:40px}.contact-section{padding-block:55px}.contact-grid{grid-template-columns:1fr;gap:36px}.footer{flex-wrap:wrap;gap:10px}.footer>p:nth-child(2){display:none}.case-hero{padding-block:35px}.case-back{margin-bottom:30px}.case-facts{gap:22px}.case-description{font-size:18px}.case-image{padding:10px}.case-body{padding-block:40px}.eyebrow{margin-bottom:18px}}@media (max-width:370px){.container{width:calc(100% - 28px)}.header-inner nav{gap:10px}.header-cta{padding:8px}.actions .button{gap:14px;padding:12px 15px;font-size:13px}.snapshot>div{display:block}.snapshot span{text-align:left}.skills-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.hero-positioning{letter-spacing:-.035em;color:#c5dbab;margin-top:19px;font-size:clamp(25px,2.8vw,36px);line-height:1.2}.hero-copy h1{font-size:clamp(38px,4.4vw,56px)}.builder{background:#202d25;border:1px solid #48544c;border-radius:6px;min-width:0;padding:25px}.builder-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.builder-label{color:#a9b8ad;text-transform:uppercase;letter-spacing:.15em;margin-bottom:7px;font-size:9px}.builder h2{color:#eef1e9;letter-spacing:-.025em;font-size:22px}.builder button{font:inherit;cursor:pointer}.builder-play{color:#c7d0c8;background:0 0;border:1px solid #526057;border-radius:3px;padding:5px 9px;font-size:11px!important}.builder-prompts{flex-wrap:wrap;gap:6px;margin:20px 0 15px;display:flex}.builder-prompts button{color:#bec9c0;background:0 0;border:1px solid #4d5b51;border-radius:3px;padding:6px 9px;font-size:10px}.builder-prompts button[aria-pressed=true]{color:#203024;background:#d6e3c6;border-color:#d6e3c6}.builder button:hover{border-color:#c5dbab}.builder button:focus-visible{outline-color:#c5dbab}.builder-input{color:#e3e9df;background:#18221c;border:1px solid #57695c;border-radius:4px;align-items:center;gap:12px;min-height:64px;padding:13px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;display:flex}.builder-input-text{flex:1;min-width:0}.typing-cursor{color:#b4c3ae;animation:1s steps(2,end) infinite cursor-blink}.typing-cursor.done{visibility:hidden;animation:none}.submit-indicator{color:#b7c5ba;border:1px solid #4b5c50;border-radius:3px;flex-shrink:0;place-items:center;width:25px;height:25px;display:grid}.submit-indicator.submitted{color:#d5e5c6}.builder-progress{color:#bec9c0;align-items:center;gap:7px;margin-block:17px;font-size:10px;display:flex}.builder-step{margin-left:auto;font-family:ui-monospace,monospace;font-size:9px}.status-dot{background:#7c8d80;border-radius:50%;width:5px;height:5px}.status-dot.active{background:#c5dbab}.architecture{position:relative}.architecture-root{opacity:.18;background:#293a2e;border:1px solid #54675a;border-radius:3px;justify-content:center;gap:9px;padding:11px;font-size:12px;transition:opacity .35s;display:flex}.architecture-root strong{font-weight:500}.architecture-nodes{grid-template-columns:1fr 1fr;gap:9px;padding-top:20px;display:grid;position:relative}.architecture-nodes:before{content:"";background:#667b6b;width:1px;height:20px;position:absolute;top:0;left:50%}.architecture-node{opacity:.18;background:#25332a;border:1px solid #4c5d51;border-radius:3px;min-width:0;padding:10px 12px;transition:opacity .35s,transform .35s,border-color .35s;position:relative;transform:translateY(4px)}.architecture-node:last-child{grid-column:1/-1}.architecture-node.revealed{opacity:1;border-color:#718568;transform:translateY(0)}.architecture-root.revealed{opacity:1}.node-label{color:#b7c5ba;margin-bottom:4px;font-size:9px;display:block}.architecture-node strong{color:#edf0e8;padding-right:15px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:500;display:block}.node-check{color:#c5dbab;font-size:10px;position:absolute;top:12px;right:10px}.builder-result{color:#bbc7be;border-top:1px solid #4a5b4f;align-items:center;gap:8px;margin-top:18px;padding-top:14px;font-size:11px;display:flex}.builder-result strong{font-weight:500}.builder-result.complete{color:#d6e8c6}.builder-note{color:#a8b7ab;margin-top:12px;font-size:9px}.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}@keyframes cursor-blink{50%{opacity:0}}@media (max-width:760px){.navbar-spacer{height:69px}.site-header.is-scrolled{top:8px}.site-header.is-scrolled .header-inner{border-radius:12px;width:calc(100% - 16px);padding-inline:12px}.builder{width:100%;max-width:560px;padding:20px}.builder-heading h2{font-size:20px}.architecture-nodes{grid-template-columns:1fr;gap:0;padding-top:12px}.architecture-nodes:before{height:12px}.architecture-node{border-bottom:0;border-radius:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.architecture-node:last-child{border-bottom:1px solid #718568}.node-label{margin:0}.node-check{display:none}.architecture-node strong{text-align:right;padding:0}.hero-positioning{font-size:28px}}@media (prefers-reduced-motion:reduce){.typing-cursor{display:none}.architecture-node{transition:none;transform:none}}
