:root{color-scheme:light;--bg: #f7f7f2;--surface: #ffffff;--surface-strong: #11130f;--text: #141611;--muted: #5f665b;--line: #d9ddd3;--accent: #245f55;--accent-strong: #143b35;--rust: #b64f32;--blue: #315d8d;--shadow: 0 18px 50px rgba(20, 22, 17, .1);--radius: 8px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#ffffffc7,#f7f7f2eb),var(--bg);color:var(--text)}a{color:inherit}p{color:var(--muted);font-size:1rem;line-height:1.7;margin:0}h1,h2,h3{margin:0;letter-spacing:0}img{display:block;max-width:100%}.site-header{align-items:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f7f7f2db;border-bottom:1px solid rgba(217,221,211,.8);display:flex;gap:24px;justify-content:space-between;min-height:72px;padding:0 32px;position:sticky;top:0;z-index:10}.brand{color:var(--text);font-size:1.05rem;font-weight:760;text-decoration:none;white-space:nowrap}.site-header nav{align-items:center;display:flex;gap:22px}.site-header nav a,.site-footer span,.section-label,.status,.portfolio-topline,.stack-list span,.role-list span,.muted-link{font-size:.78rem;font-weight:750;letter-spacing:0;text-transform:uppercase}.site-header nav a{color:var(--muted);text-decoration:none}.site-header nav a:hover{color:var(--text)}.button{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);display:inline-flex;font-size:.94rem;font-weight:720;gap:9px;justify-content:center;min-height:46px;padding:0 16px;text-decoration:none;transition:border-color .16s ease,transform .16s ease,background .16s ease}.button svg{display:block;flex:0 0 auto}.button:hover{border-color:var(--accent);transform:translateY(-1px)}.button-primary{background:var(--accent);border-color:var(--accent);color:#fff}.button-small{min-height:40px;padding:0 13px}.section-shell{margin:0 auto;max-width:1160px;padding:96px 28px;width:100%}.hero{align-items:center;display:grid;gap:48px;grid-template-columns:minmax(0,1.42fr) minmax(300px,.58fr);min-height:calc(100vh - 72px);max-width:1500px;padding-top:64px}.hero-copy{max-width:1000px}.hero h1{font-size:clamp(3rem,6vw,75px);font-weight:820;line-height:.94;max-width:1000px}.hero-nowrap{white-space:nowrap}.hero-lede{font-size:1.18rem;line-height:1.72;margin-top:28px;max-width:1000px}.location-row{align-items:flex-start;color:var(--accent-strong);display:flex;font-weight:720;gap:10px;line-height:1.5;margin-top:22px}.location-row svg{flex:0 0 auto;margin-top:2px}.hero-actions,.closing-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.hero-media{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.hero-media img{aspect-ratio:4 / 5;height:100%;object-fit:cover;width:100%}.metric-band{background:var(--surface-strong);color:#fff;display:grid;grid-template-columns:repeat(4,1fr)}.metric{align-content:center;border-right:1px solid rgba(255,255,255,.14);display:grid;gap:12px;justify-items:center;min-height:188px;padding:32px;text-align:center}.metric:last-child{border-right:0}.metric strong{color:#fff;font-size:clamp(2.2rem,4vw,4rem);line-height:1}.metric span{color:#ffffffb8;font-size:.98rem;line-height:1.5;max-width:250px}.two-column-section,.career-section{display:grid;gap:64px;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr)}.career-section{align-items:start;padding-top:72px}.career-section>.section-heading{align-self:start;position:sticky;top:104px}.intro-section{align-items:center;display:grid;gap:56px;grid-template-columns:320px minmax(0,1fr)}.intro-media{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.intro-media img{aspect-ratio:1 / 1;object-fit:cover;width:100%}.intro-copy{display:grid;gap:18px}.intro-copy h2{font-size:clamp(2rem,4vw,4.1rem);font-weight:810;line-height:1.03}.section-heading{display:grid;gap:16px}.section-heading.centered{margin:0 auto 42px;max-width:820px;text-align:center}.section-label{color:var(--rust)}.section-heading h2,.links-section h2,.closing-section h2{font-size:clamp(2rem,4vw,4rem);font-weight:810;line-height:1.03}.role-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.role-list span{background:#e8efe9;border:1px solid #cbd8ce;border-radius:999px;color:var(--accent-strong);padding:9px 12px}.role-section{display:grid;gap:28px}.role-section>div:last-child{max-width:840px}.section-shell.proof-section{max-width:none;padding-left:clamp(28px,6vw,96px);padding-right:clamp(28px,6vw,96px);padding-top:72px}.proof-heading{justify-items:start;margin:0 auto 42px;max-width:1104px;text-align:left;width:100%}.proof-heading h2{max-width:100%}.proof-grid{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}.proof-card,.portfolio-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.proof-card{display:grid;gap:18px}.proof-card svg{color:var(--blue)}.proof-card h3,.portfolio-card h3{font-size:1.24rem;line-height:1.25}.portfolio-section{background:#eef1e9;border-bottom:1px solid var(--line);border-top:1px solid var(--line)}.portfolio-header{display:block;margin-bottom:42px}.portfolio-header .section-heading{max-width:1100px}.portfolio-grid{display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.portfolio-card{display:grid;gap:18px}.portfolio-topline{align-items:center;color:var(--rust);display:flex;gap:12px;justify-content:space-between}.portfolio-topline span{color:var(--text);font-size:.95rem}.stack-list{display:flex;flex-wrap:wrap;gap:8px}.stack-list span{background:#f3f4ef;border-radius:999px;color:var(--muted);padding:7px 9px}.portfolio-card a,.portfolio-links a{align-items:center;color:var(--accent);display:inline-flex;font-size:.95rem;font-weight:760;gap:6px;text-decoration:none}.portfolio-links{display:flex;flex-wrap:wrap;gap:16px}.muted-link{color:var(--muted)}.timeline{border-top:1px solid var(--line)}.timeline-item{border-bottom:1px solid var(--line);display:grid;gap:24px;grid-template-columns:120px minmax(0,1fr);padding:24px 0}.timeline-meta{align-content:start;display:grid;gap:8px;justify-items:start}.timeline-meta span{color:var(--rust);font-weight:820}.timeline-meta small{color:var(--accent-strong);font-size:.78rem;font-weight:760;letter-spacing:0;line-height:1.25;text-transform:uppercase}.timeline-item h3{font-size:1.16rem;margin-bottom:8px}.links-section{background:var(--surface-strong);color:#fff}.links-grid{align-items:start;display:grid;gap:72px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}.links-section p{color:#ffffffad;margin-top:18px}.link-list{display:grid;gap:10px}.link-list a{align-items:center;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);color:#fff;display:grid;gap:14px;grid-template-columns:24px minmax(0,1fr) 18px;min-height:58px;padding:0 16px;text-decoration:none}.link-list a:hover{background:#ffffff0f}.closing-section{background:linear-gradient(120deg,#245f551a,#b64f3214),var(--bg)}.closing-grid{align-items:center;display:grid;gap:42px;grid-template-columns:minmax(0,1fr) minmax(220px,280px)}.closing-grid>div:first-child>svg{color:var(--accent);margin-bottom:18px}.closing-grid p{margin-top:18px;max-width:620px}.closing-actions{align-content:center;display:grid;gap:12px;justify-self:stretch;margin-top:0}.closing-actions .button{align-items:center;display:flex;justify-content:center;line-height:1;width:100%}.site-footer{align-items:center;border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:24px 32px}.site-footer span:first-child{color:var(--text)}.site-footer span:last-child{color:var(--muted);text-align:right}@media(max-width:920px){.site-header{align-items:flex-start;flex-wrap:wrap;gap:14px;min-height:unset;padding:18px 20px}.site-header nav{order:3;overflow-x:auto;padding-bottom:2px;width:100%}.hero,.intro-section,.two-column-section,.career-section,.portfolio-header,.links-grid,.closing-grid{grid-template-columns:1fr}.hero{min-height:unset;padding-top:56px}.hero-media{max-width:420px}.metric-band,.proof-grid,.portfolio-grid{grid-template-columns:1fr}.metric{border-bottom:1px solid rgba(255,255,255,.14);border-right:0;min-height:150px}.metric:last-child{border-bottom:0}.section-shell.proof-section{padding-left:28px;padding-right:28px}.career-section>.section-heading{position:static}}@media(max-width:620px){.section-shell{padding:70px 18px}.section-shell.proof-section{padding-left:18px;padding-right:18px}.hero{gap:34px}.hero h1{font-size:3.1rem}.hero-nowrap{white-space:normal}.hero-actions,.closing-actions{flex-direction:column}.button{width:100%}.timeline-item{grid-template-columns:1fr}.site-footer{align-items:flex-start;flex-direction:column;gap:10px;padding:24px 18px}.site-footer span:last-child{text-align:left}}:root{--bg: #f4f5ef;--text: #132b28;--muted: #53635b;--accent: #205c51;--surface-strong: #092a2d;--display: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;font-family:Avenir Next,Avenir,Segoe UI,sans-serif}html{scroll-padding-top:110px}body{background:var(--bg)}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #3faaa0;outline-offset:5px}::selection{background:#a3e5d0;color:#092a2d}.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:14px;background:#a3e5d0;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header{background:#f4f5eff5;padding-inline:clamp(24px,4.5vw,72px);min-height:78px}.brand{font-size:17px;letter-spacing:-.6px}.brand-domain{font-weight:400;color:#68766c}.site-header nav{gap:32px}.site-header nav a{text-transform:none;font-size:13px;font-weight:500}.site-header .button{background:transparent;border-color:#c4cec4;border-radius:4px;font-size:13px;width:auto}.bubble-hero{position:relative;isolation:isolate;overflow:hidden;background:#062e36;color:#f4f6ee}.hero-field{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 80% 30%,#256b70,#082d37 67%,#061f29)}.liquid-canvas{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;width:100%;display:block}.liquid-canvas[hidden]{display:none}.field-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#04222be0,#042a3380 48%,#042a3300 80%),linear-gradient(0deg,#041d2770,transparent 35%)}.field-bubble{position:absolute;aspect-ratio:1;border-radius:50%;border:1px solid #c6fff36b;background:radial-gradient(ellipse at 28% 18%,#d1fff333,transparent 45%),radial-gradient(ellipse at 70% 80%,#042d3c88,#71ddc90c 58%);box-shadow:inset 8px 12px 45px #c6fff32e,inset -24px -35px 70px #031e3a6b,0 0 70px #8fedd508;animation:bubble-drift 22s ease-in-out infinite alternate;animation-play-state:paused}.field-bubble:after{content:"";position:absolute;top:3%;right:3%;bottom:3%;left:3%;border-radius:inherit;border-top:1px solid #d9fff54f;border-left:1px solid #d9fff51a;transform:rotate(-22deg)}.bubble-one{width:clamp(510px,57vw,920px);right:-4%;top:-38%;border-radius:47% 53% 56% 44%}.bubble-two{width:clamp(320px,39vw,620px);right:-8%;bottom:-42%;animation-delay:-8s;animation-duration:27s}.bubble-three{width:clamp(170px,21vw,330px);right:28%;bottom:-15%;animation-delay:-14s}.bubble-four{width:clamp(80px,10vw,160px);right:38%;top:13%;animation-delay:-5s;animation-duration:18s;opacity:.55}[data-field-state=moving]:not([data-field-visible=false]) .field-bubble{animation-play-state:running}@keyframes bubble-drift{0%{transform:translate3d(-9px,7px,0) rotate(-8deg) scale(1)}to{transform:translate3d(17px,-18px,0) rotate(7deg) scale(1.035)}}.hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:1fr auto;align-items:center;gap:36px 64px;max-width:1440px;min-height:min(820px,calc(100svh - 78px));padding:48px clamp(24px,4.5vw,72px) 24px}.hero-copy{align-self:center}.bubble-hero h1{font-family:var(--display);font-weight:400;font-size:clamp(58px,6.7vw,104px);letter-spacing:-.055em;line-height:1.04}.bubble-hero h1>span{color:#a5e4ce}.bubble-hero .hero-lede{color:#d5e2db;font-size:clamp(16px,1.5vw,20px);line-height:1.65;margin-top:30px;max-width:535px}.bubble-hero .hero-actions{gap:12px;margin-top:32px}.bubble-hero .button{border-radius:4px;min-height:52px;font-size:13px;font-weight:600;gap:24px;padding-inline:22px}.bubble-hero .button-primary{background:#b8e8d1;border-color:#b8e8d1;color:#12392f}.bubble-hero .button-primary:hover{background:#d0f3e0}.bubble-hero .hero-resume{background:#ffffff05;border-color:#d4e8df5c;color:#edf5ef}.bubble-hero .hero-resume:hover{background:#ffffff14;border-color:#d4e8df}.hero-contact{color:#cadfd4;font-size:12px;margin-top:28px;display:inline-flex;align-items:center;gap:10px;text-decoration:none;line-height:1.5}.hero-contact>span{height:5px;width:5px;border-radius:50%;background:#a5e4ce;flex-shrink:0}.hero-contact:hover{color:#fff}.hero-portrait{width:100%;max-width:300px;margin:0;justify-self:end}.hero-portrait img{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:48% 48% 8px 8px;border:1px solid #c6fff34d;box-shadow:0 22px 80px #001c3140;filter:saturate(.74)}.hero-portrait figcaption{font-size:15px;margin-top:20px;font-weight:500}.hero-portrait figcaption span{display:block;font-size:11px;color:#b7d3c9;font-weight:400;margin-top:5px}.hero-bottom{grid-column:1 / -1;border-top:1px solid #ccf4e629;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-explore{text-decoration:none;color:#cae1d6;display:flex;align-items:center;gap:18px;font-size:11px}.hero-explore svg{transform:rotate(90deg)}.motion-toggle{min-height:44px;padding:10px 12px;background:transparent;border:1px solid #d4e8df40;border-radius:4px;color:#cae1d6;display:flex;align-items:center;gap:8px;font-size:11px}.motion-toggle:hover:not(:disabled){background:#ffffff12;color:#fff}.motion-toggle:disabled{cursor:default}.metric-band{background:#0b3032}.metric{min-height:164px;padding:30px 24px}.metric strong{font-family:var(--display);font-weight:400;color:#b8e8d1;letter-spacing:-.04em;font-size:clamp(44px,4vw,64px)}.metric span{font-size:12px;color:#c8d8ce;max-width:215px}@media(min-width:1600px){.hero-inner{min-height:790px}}@media(max-width:1100px){.hero-inner{grid-template-columns:minmax(0,1fr) 250px;gap:40px;padding-top:70px;min-height:720px}.bubble-hero h1{font-size:clamp(55px,6.5vw,76px)}}@media(max-width:920px){.site-header{align-items:center;padding:14px 24px;gap:14px}.site-header nav{width:100%;gap:28px;justify-content:space-between}.site-header nav a{min-height:30px;display:flex;align-items:center;white-space:nowrap}.hero-inner{grid-template-columns:minmax(0,1fr) 200px;gap:32px;min-height:650px;padding-top:48px}.bubble-hero h1{font-size:clamp(45px,6.7vw,62px)}.bubble-hero .hero-lede{font-size:16px}.bubble-hero .button{gap:14px;padding-inline:16px}}@media(max-width:640px){.hero-inner{grid-template-columns:minmax(0,1fr);min-height:auto;padding:48px 24px 20px;gap:36px}.hero-copy{padding:0}.bubble-hero h1{font-size:clamp(41px,9.5vw,60px);letter-spacing:-.055em}.bubble-hero .hero-lede{max-width:440px;margin-top:24px}.hero-contact{font-size:11px}.hero-portrait{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:18px;justify-self:start;max-width:none;padding-top:0}.hero-portrait img{aspect-ratio:1;border-radius:50%}.hero-portrait figcaption{margin:0}.hero-bottom{padding-top:16px}.bubble-one{right:-90%;top:-24%;width:690px}.bubble-two{right:-45%;bottom:-18%;width:350px}.bubble-three{right:45%;bottom:12%;width:210px;opacity:.55}.bubble-four{right:3%;top:38%;width:100px}.field-shade{background:linear-gradient(90deg,#04222bc7,#042a334d),linear-gradient(0deg,#041d2780,transparent 60%)}.metric{min-height:148px;padding:24px 16px}.metric span{font-size:11px}.metric-band{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{border-right:1px solid #ffffff24;border-bottom:1px solid #ffffff24}.metric:nth-child(2n){border-right:0}.metric:nth-child(n+3){border-bottom:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.field-bubble{animation:none}.button{transition:none}.button:hover{transform:none}}
