:root{color-scheme:light;--ink:#1c2738;--muted:#606d7d;--blue:#315c8d;--line:#e3e8ed;--paper:#fff;--soft:#f7f9fb}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:4.5rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;font-size:1rem;line-height:1.75;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}a:focus-visible{outline:2px solid var(--blue);outline-offset:6px}::selection{background:#dce8f4}.header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{max-width:68rem;margin:auto;padding:0 2rem;height:4.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.wordmark{white-space:nowrap;flex-shrink:0;font-size:1rem;font-weight:650;letter-spacing:-.035em}.wordmark span,h1 span{color:var(--blue)}nav{display:flex;gap:1.75rem;font-size:.875rem;color:var(--muted)}nav a{padding:.6rem 0}nav a[aria-current]{color:var(--blue);text-decoration:underline;text-underline-offset:.5rem;text-decoration-thickness:1px}.chapter{min-height:calc(90svh - 4.5rem);display:flex;align-items:center;padding:6rem 2rem;border-bottom:1px solid var(--line)}.chapter-inner{width:min(100%,46rem);margin:0 auto}.eyebrow,.note-label{font-size:.75rem;font-weight:600;letter-spacing:.13em;color:var(--muted)}.eyebrow{margin-bottom:2rem}.chapter-count{float:right;letter-spacing:.04em;font-weight:450;font-variant-numeric:tabular-nums}.hero{min-height:calc(100svh - 4.5rem);position:relative;padding:5rem 2rem 6rem}.hero-content{display:grid;grid-template-columns:minmax(0,1fr) 14rem;align-items:center;gap:5rem;width:min(100%,64rem);margin:auto}.hero .eyebrow{font-size:.6875rem;letter-spacing:.11em;color:var(--blue);margin-bottom:1.3rem}.portrait-wrap{padding:1rem;border:1px solid var(--line);border-radius:50%}.portrait{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:50% 20%;border-radius:50%}h1{font-size:clamp(3.5rem,5.5vw,4.75rem);line-height:1.1;letter-spacing:-.055em;font-weight:600}.hero-role{font-size:clamp(1.6rem,2.7vw,2.125rem);line-height:1.35;letter-spacing:-.035em;margin-top:1.3rem;font-weight:450}.hero-summary{max-width:33rem;color:var(--muted);margin-top:1.5rem;font-size:1rem;line-height:1.8}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.75rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:1.1rem;background:var(--ink);color:#fff;padding:.8rem 1.25rem;font-size:.875rem;font-weight:500;border-radius:5px;min-height:3rem;transition:background .2s}.button:hover{background:var(--blue);color:white}.text-link{display:inline-block;color:var(--blue);font-size:.875rem;text-decoration:underline;text-decoration-color:#bac9d9;text-underline-offset:.4rem}.hero-location{font-size:.8125rem;color:var(--muted);margin-top:2rem}.hero-location span{padding:0 .45rem}.scroll-cue{position:absolute;bottom:1.65rem;left:50%;transform:translateX(-50%);font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:1rem;white-space:nowrap}.scroll-cue span{font-size:1.1rem}h2{font-size:clamp(2rem,3.5vw,2.75rem);line-height:1.25;letter-spacing:-.04em;font-weight:550}.about h2 span{color:var(--blue)}.body-copy{font-size:1.0625rem;line-height:1.85;color:var(--muted);max-width:41rem;margin-top:1.75rem}.body-copy p+p{margin-top:1rem}.focus-list{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}.focus-list span{font-size:.8125rem;border:1px solid var(--line);border-radius:4px;padding:.35rem .7rem;color:var(--muted)}.experience-item{min-height:calc(85svh - 4.5rem)}.experience-item:nth-of-type(even){background:var(--soft)}.experience-item .eyebrow{padding-bottom:1rem;border-bottom:1px solid var(--line);margin-bottom:2rem}.organization{display:flex;align-items:center;gap:1.1rem;margin-bottom:1.5rem}.org-logo{display:block;width:3.5rem;height:3.5rem;object-fit:contain;border-radius:4px;flex-shrink:0}.logo-source{display:block;flex-shrink:0}.logo-source .army-logo{width:3.5rem;height:3.9375rem;background:#fff;border-radius:3px}.employer{font-size:1rem;font-weight:550;line-height:1.5;letter-spacing:-.015em}.department{font-size:.875rem;font-weight:400;color:var(--muted);letter-spacing:0;display:inline-block;margin-top:.25rem}.job-header h3{font-size:clamp(1.75rem,3.2vw,2.4rem);line-height:1.25;font-weight:550;letter-spacing:-.04em}.rank{font-size:.65em;font-weight:400;letter-spacing:-.02em;white-space:nowrap}.job-meta{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1.2rem}.date{font-size:.875rem;color:var(--muted);font-variant-numeric:tabular-nums}.current-label{font-size:.75rem;line-height:1.5;border:1px solid #d4e3dd;background:#f0f6f3;color:#36604e;border-radius:4px;padding:.15rem .5rem}.job-location{font-size:.8125rem;color:var(--muted);margin-top:.4rem}.experience-details{font-size:1rem;color:var(--muted);padding:1.5rem 0 0 1.15rem;border-top:1px solid var(--line);margin:1.75rem 0 0;max-width:41rem;line-height:1.8}.experience-details li{padding-left:.3rem}.experience-details li+li{margin-top:.6rem}.experience-details strong{color:var(--ink);font-weight:650}.education .eyebrow{margin-bottom:1rem}.education h2{margin-bottom:2.5rem}.education-item{display:flex;align-items:flex-start;gap:1.2rem}.education-item .org-logo{margin-top:.2rem}.education h3{font-size:1.25rem;font-weight:550;line-height:1.45;letter-spacing:-.02em}.education-item>div>p:not(.job-location){font-size:1rem;margin-top:.6rem}.credential{border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem}.purdue-logo{display:block;width:12rem;height:6rem;object-fit:contain;margin:-.5rem 0 0 -1.2rem}.credential .note-label{font-size:.6875rem;margin-bottom:.6rem}.credential h3{font-size:1.125rem}.secondary{font-size:.875rem;color:var(--muted);margin-top:.3rem}.credential .text-link{margin-top:.75rem}.contact{min-height:65svh;background:var(--soft);text-align:center}.contact .body-copy{max-width:29rem;margin:1.25rem auto 0}.contact .eyebrow{margin-bottom:1rem}.contact .button{margin-top:1.75rem}footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:68rem;padding:1.5rem 2rem;margin:auto;font-size:.75rem;color:var(--muted)}footer a:first-child{font-size:.875rem;color:var(--ink)}.skip{position:fixed;z-index:20;top:-5rem;left:1rem;padding:.5rem 1rem;background:white}.skip:focus{top:.5rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reveal{transition:opacity .55s ease,transform .55s ease}.reveal.waiting{opacity:0;transform:translateY(16px)}
@media(max-width:900px){.hero-content{gap:2.5rem;grid-template-columns:minmax(0,1fr) 11rem}.hero .eyebrow{max-width:25rem}.hero-role{font-size:1.65rem}h1{font-size:3.75rem}}
@media(max-width:650px){html{scroll-padding-top:4rem}.header-inner{height:4rem;padding:0 1.25rem}.wordmark{font-size:.875rem}nav{gap:.8rem;font-size:.75rem}.chapter{padding:4.5rem 1.5rem;min-height:calc(90svh - 4rem)}.hero{padding:3rem 1.5rem 5.5rem;min-height:calc(100svh - 4rem)}.hero-content{display:flex;flex-direction:column-reverse;align-items:flex-start;gap:1.5rem}.portrait-wrap{width:6.75rem;padding:.4rem}.hero .eyebrow{font-size:.625rem;letter-spacing:.09em;max-width:22rem;margin-bottom:.8rem}h1{font-size:3.4rem}.hero-role{font-size:1.5rem;margin-top:1rem}.hero-role br{display:none}.hero-summary{font-size:.9375rem;margin-top:1rem}.hero-actions{gap:1rem 1.25rem;margin-top:1.5rem}.hero-actions .button,.hero-actions .text-link{font-size:.8125rem}.hero-location{font-size:.75rem;margin-top:1.5rem}.scroll-cue{bottom:1.3rem}.eyebrow{margin-bottom:1.5rem}.body-copy{font-size:1rem}h2{font-size:2rem}.experience-item{min-height:calc(85svh - 4rem)}.job-header h3{font-size:1.875rem}.rank{display:block;margin-top:.35rem}.organization{gap:1rem}.employer{font-size:.9375rem}.department{font-size:.8125rem}.job-meta{gap:.6rem}.experience-details{font-size:.9375rem}.education h3{font-size:1.125rem}.education-item{gap:1rem}.contact{min-height:65svh}footer{padding:1.5rem}footer>span{display:none}}
@media(max-width:360px){.header-inner{padding:0 1rem}.wordmark{font-size:.8125rem}nav{gap:.6rem;font-size:.6875rem}.chapter{padding-left:1.25rem;padding-right:1.25rem}h1{font-size:3rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:.85rem}.hero-location span{padding:0 .2rem}.hero-location{font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.button{transition:none}.reveal.waiting{opacity:1;transform:none}}
@media print{.header,.scroll-cue,.hero-actions,.contact,footer{display:none}.chapter,.experience-item,.hero{min-height:0;padding:1.5rem 0;break-inside:avoid}.reveal.waiting{opacity:1;transform:none}.hero-content{display:block}.portrait-wrap{display:none}.chapter-inner{width:100%}body{font-size:11pt}h1{font-size:28pt}h2,.job-header h3{font-size:18pt}.org-logo{width:32px;height:32px}}

@media(max-width:360px){.header-inner{gap:.5rem}.wordmark{font-size:.75rem}nav{gap:.5rem}}

.citizenship{font-size:.9375rem;color:var(--muted);margin-top:1.5rem}.citizenship strong{color:var(--ink);font-weight:550}
