@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono)}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;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{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}: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,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-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]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.static{position:static}.contents{display:contents}.lowercase{text-transform:lowercase}}:root,:root[data-theme=dark]{color-scheme:dark;--profile-canvas: #1a1a1a;--profile-panel: #222222;--profile-panel-raised: #2b2b2b;--profile-line: #3c3c3c;--profile-line-strong: #777777;--profile-copy: #f2f2f2;--profile-muted: #a8a8a8;--profile-accent: #c6ff00;--profile-cyan: #00d9ff;--profile-focus: #00d9ff}:root[data-theme=light]{color-scheme:light;--profile-canvas: #f4f6f8;--profile-panel: #ffffff;--profile-panel-raised: #edf1f3;--profile-line: #d3dade;--profile-line-strong: #5b6870;--profile-copy: #1a1a1a;--profile-muted: #515d65;--profile-accent: #4f6700;--profile-cyan: #00677a;--profile-focus: #00677a}html{min-width:320px;background:var(--profile-canvas);scroll-behavior:smooth;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-width:320px;min-height:100vh;margin:0;background:var(--profile-canvas);color:var(--profile-copy);font-family:var(--font-sans)}button,input,select{font:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid var(--profile-focus);outline-offset:4px}::selection{background:#c6ff00;color:#1a1a1a}.site-frame{min-height:100vh;background:var(--profile-canvas)}.skip-link{position:fixed;z-index:10;top:1rem;left:1rem;transform:translateY(-180%);border:1px solid var(--profile-line-strong);background:var(--profile-canvas);padding:.75rem 1rem;color:var(--profile-copy);font-size:.875rem;font-weight:650}.skip-link:focus{transform:translateY(0)}.site-header{border-bottom:1px solid var(--profile-line)}.header-inner,.page-content{width:min(100% - 3rem,80rem);margin-inline:auto}.header-inner{display:grid;min-height:5.25rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.5rem}.wordmark{display:inline-flex;align-items:center;gap:.75rem;width:fit-content;white-space:nowrap}.wordmark-logo{display:block;width:2rem;height:2rem;flex:0 0 auto}.wordmark-caption{color:var(--profile-muted);font-size:.66rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase}.main-nav{display:flex;align-items:center;justify-content:center;gap:clamp(.75rem,1.7vw,1.65rem)}.main-nav a,.back-to-top{width:fit-content;color:var(--profile-muted);font-size:.74rem;font-weight:600;transition:color .15s ease}.main-nav a:hover,.back-to-top:hover{color:var(--profile-accent)}.theme-toggle{display:grid;width:2.75rem;height:2.75rem;place-items:center;border:1px solid var(--profile-line-strong);border-radius:50%;background:var(--profile-panel);color:var(--profile-cyan);cursor:pointer;transition:border-color .18s ease,background-color .18s ease,transform .18s ease}.theme-toggle:hover{transform:translateY(-1px);border-color:var(--profile-accent);background:var(--profile-panel-raised)}.theme-toggle:active{transform:scale(.94)}.theme-icon{display:block;width:1.35rem;height:1.35rem;overflow:visible;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65}.theme-icon__sun,.theme-icon__moon{transform-box:fill-box;transform-origin:center;transition:opacity .42s cubic-bezier(.2,.75,.25,1),transform .46s cubic-bezier(.2,.75,.25,1)}.theme-icon__sun{opacity:0;transform:rotate(-70deg) scale(.55)}.theme-icon__moon{opacity:1;transform:rotate(0) scale(1)}.theme-icon__sun-core{fill:var(--profile-accent);stroke:var(--profile-accent)}.theme-icon__rays{fill:none;stroke:var(--profile-accent);stroke-width:1.8}.theme-icon__moon path{fill:var(--profile-cyan);stroke:var(--profile-cyan)}.theme-icon__star{fill:var(--profile-accent);stroke:none;transform-box:fill-box;transform-origin:center;transition:opacity .3s ease,transform .42s cubic-bezier(.2,.75,.25,1)}.theme-icon__star--small{transition-delay:35ms}:root[data-theme=light] .theme-icon__sun{opacity:1;transform:rotate(0) scale(1)}:root[data-theme=light] .theme-icon__moon{opacity:0;transform:rotate(55deg) scale(.55)}:root[data-theme=light] .theme-icon__star{opacity:0;transform:scale(.3)}.page-content{padding-top:clamp(3.75rem,9vw,8rem);padding-bottom:3rem}.intro{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(15rem,.58fr);align-items:end;gap:clamp(2rem,7vw,7rem);padding-bottom:clamp(3rem,7vw,6.5rem)}.intro-copy{min-width:0}.eyebrow{margin:0;color:var(--profile-accent);font-size:.65rem;font-weight:700;letter-spacing:.16em;line-height:1.5;text-transform:uppercase}.eyebrow span{padding-inline:.35rem;color:var(--profile-cyan)}.profile-title{display:flex;flex-direction:column;align-items:flex-start;margin:clamp(1.25rem,3vw,2rem) 0 0;font-size:clamp(4.5rem,12vw,10.25rem);font-weight:760;letter-spacing:-.025em;line-height:.77;overflow-wrap:anywhere}.name-given{color:var(--profile-copy)}.name-family{margin-top:.15em;color:var(--profile-muted);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:.96em;font-weight:400;font-style:italic;letter-spacing:-.045em}.intro-summary{max-width:27rem;margin:clamp(1.5rem,3.5vw,2.5rem) 0 0;color:var(--profile-copy);font-size:clamp(1rem,1.8vw,1.3rem);font-weight:450;letter-spacing:-.025em;line-height:1.55}.intro-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem .8rem;margin:1.2rem 0 0;color:var(--profile-muted);font-size:.75rem;font-weight:600;letter-spacing:.015em;line-height:1.6}.intro-meta-separator{color:var(--profile-cyan)}.section-index{width:100%;max-width:22rem;justify-self:end;border-top:1px solid var(--profile-line-strong);border-bottom:1px solid var(--profile-line);padding-top:1rem}.section-index ol{margin:.45rem 0 0;padding:0;list-style:none}.section-index li{border-top:1px solid var(--profile-line)}.section-index li:first-child{border-top:0}.section-index a{display:grid;min-height:2.65rem;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.55rem;color:var(--profile-copy);font-size:.78rem;font-weight:560;transition:padding .15s ease}.section-index a:hover{padding-inline:.2rem}.index-number,.section-number{color:var(--profile-muted);font-size:.65rem;font-variant-numeric:tabular-nums;letter-spacing:.04em}.index-arrow{color:var(--profile-cyan);font-size:.8rem}.dossier-section{display:grid;grid-template-columns:minmax(11rem,.67fr) minmax(0,1.33fr);gap:clamp(1.5rem,7vw,7rem);border-top:1px solid var(--profile-line);padding-block:clamp(2rem,5vw,4.6rem);scroll-margin-top:2rem}.section-label{display:grid;grid-template-columns:2rem minmax(0,1fr);align-content:start;column-gap:.65rem;row-gap:.65rem}.section-label .section-number{grid-column:1;grid-row:1 / span 2;padding-top:.15rem}.section-label .eyebrow{grid-column:2;grid-row:1}.section-label h2,.contact-heading h2{grid-column:2;grid-row:2;max-width:15rem;margin:.1rem 0 0;color:var(--profile-copy);font-size:clamp(1.65rem,3.2vw,2.7rem);font-weight:620;letter-spacing:-.045em;line-height:1.02}.section-body{min-width:0;align-self:center;color:var(--profile-copy);font-size:clamp(.96rem,1.35vw,1.12rem);line-height:1.8}.section-body p{margin:0}.about-body{max-width:39rem;font-size:clamp(1.05rem,1.7vw,1.35rem);letter-spacing:-.015em;line-height:1.7}.experience-list{align-self:start}.experience-entry{border-top:1px solid var(--profile-line);padding-block:1.15rem 1.25rem;break-inside:avoid}.experience-entry:first-child{border-top-color:var(--profile-line-strong)}.experience-entry--current{border-top-color:var(--profile-accent);border-left:2px solid var(--profile-accent);padding-left:1rem}.experience-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:1rem;row-gap:.25rem;line-height:1.4}.experience-employer,.experience-dates{margin:0;font-size:.7rem;line-height:1.5}.experience-employer{color:var(--profile-accent);font-weight:700;letter-spacing:.07em;text-transform:uppercase}.experience-employer span{padding-inline:.25rem;color:var(--profile-muted)}.experience-dates{color:var(--profile-muted);font-variant-numeric:tabular-nums;text-align:right}.experience-heading h3{grid-column:1 / -1;margin:0;color:var(--profile-copy);font-size:clamp(1rem,1.5vw,1.2rem);font-weight:620;letter-spacing:-.025em;line-height:1.35}.experience-entry--current .experience-heading h3{color:var(--profile-accent)}.experience-highlights{display:grid;gap:.35rem;margin:.75rem 0 0;padding:0;color:var(--profile-muted);font-size:.84rem;line-height:1.65;list-style:none}.experience-highlights li{position:relative;padding-left:.95rem}.experience-highlights li:before{position:absolute;top:.72em;left:.1rem;width:.3rem;height:1px;background:var(--profile-cyan);content:""}.skills-body{display:grid;gap:1.5rem}.skill-era{display:grid;grid-template-columns:minmax(8rem,.55fr) minmax(0,1.45fr);gap:1.25rem;border-top:1px solid var(--profile-line-strong);padding-top:.9rem}.skill-era>h3{margin:0;color:var(--profile-copy);font-size:1rem;font-weight:620;letter-spacing:-.02em}.skill-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.25rem}.skill-group h4{margin:0 0 .55rem;color:var(--profile-muted);font-size:.63rem;font-weight:700;letter-spacing:.11em;line-height:1.4;text-transform:uppercase}.skill-list{display:flex;flex-wrap:wrap;gap:.38rem;margin:0;padding:0;list-style:none}.skill-list li{border:1px solid var(--profile-line);padding:.23rem .48rem;color:var(--profile-copy);font-size:.68rem;line-height:1.45}.education-heading h3,.education-degree,.work-intro,.work-item h3{margin:0;color:var(--profile-copy);font-size:1rem;font-weight:630;letter-spacing:-.025em;line-height:1.5}.education-heading p,.education-details>p:not(.education-degree),.work-item p{max-width:32rem;color:var(--profile-muted);font-size:.9rem;line-height:1.7}.education-heading p,.education-details p,.work-item p{margin:0}.education-heading p{margin-top:.2rem;font-size:.75rem}.education-body{display:grid;grid-template-columns:minmax(9rem,.7fr) minmax(0,1.3fr);align-items:start;gap:1.5rem}.education-degree{margin-bottom:.35rem}.education-distinction{margin-top:.65rem!important;color:var(--profile-copy)!important}.work-body{display:grid;grid-template-columns:minmax(9rem,.65fr) minmax(0,1.35fr);align-items:start;gap:1.5rem}.work-intro{padding-left:.85rem;border-left:2px solid var(--profile-accent)}.work-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem 1.5rem}.work-item{border-top:1px solid var(--profile-line-strong);padding-top:.75rem}.work-item h3{font-size:.9rem}.work-item p{margin-top:.35rem;font-size:.78rem;line-height:1.6}.education-distinction{font-weight:600}.education-heading h3{font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:1.3rem;font-weight:500;letter-spacing:-.02em}.contact-section{display:grid;grid-template-columns:minmax(11rem,.67fr) minmax(0,1.33fr);gap:clamp(1.5rem,7vw,7rem);border-top:1px solid var(--profile-line-strong);padding-block:2rem;scroll-margin-top:2rem}.contact-heading{display:grid;grid-template-columns:2rem minmax(0,1fr);align-content:start;gap:.65rem}.contact-heading .section-number{grid-row:1 / span 2;padding-top:.15rem}.contact-heading .eyebrow,.contact-heading h2{grid-column:2}.contact-copy{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;padding-top:.6rem;color:var(--profile-muted);font-size:.9rem;line-height:1.7}.contact-copy p{margin:0}.contact-email{color:var(--profile-copy);text-decoration:underline;text-decoration-color:var(--profile-line-strong);text-underline-offset:.2em}.contact-location{display:block;margin-top:.2rem;color:var(--profile-muted);font-size:.78rem}.back-to-top{flex:0 0 auto;color:var(--profile-copy);font-size:.72rem}.back-to-top span{padding-left:.3rem;color:var(--profile-cyan)}.site-footer{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--profile-line);padding-top:1rem;color:var(--profile-muted);font-size:.66rem;letter-spacing:.025em}.site-footer p{margin:0}.site-footer span{padding-inline:.25rem;color:var(--profile-cyan)}@media(max-width:1020px){.header-inner{grid-template-columns:minmax(0,1fr) auto;row-gap:0;padding-block:1rem 0}.main-nav{grid-column:1 / -1;grid-row:2;justify-content:flex-start;flex-wrap:wrap;gap:.7rem 1.2rem;margin-top:.85rem;border-top:1px solid var(--profile-line);padding-block:.8rem}.main-nav a{min-height:1.5rem;display:inline-flex;align-items:center}.theme-toggle{grid-column:2;grid-row:1;justify-self:end}.intro{grid-template-columns:minmax(0,1.2fr) minmax(14rem,.8fr)}}@media(max-width:680px){.header-inner,.page-content{width:min(100% - 2.25rem,80rem)}.wordmark{gap:.55rem}.wordmark-caption{font-size:.58rem}.main-nav{gap:.55rem 1rem}.main-nav a{font-size:.69rem}.intro{grid-template-columns:minmax(0,1fr);gap:2.5rem}.profile-title{font-size:clamp(4rem,18vw,7rem)}.section-index{max-width:none;justify-self:stretch}.dossier-section,.contact-section{grid-template-columns:minmax(0,1fr);gap:1.5rem;padding-block:2rem}.section-label{grid-template-columns:2rem minmax(0,1fr)}.section-label h2,.contact-heading h2{font-size:1.85rem}.section-body{padding-left:2.65rem}.about-body{font-size:1.08rem}.skill-era,.education-body,.work-body{grid-template-columns:minmax(0,1fr);gap:.65rem}.skill-categories,.work-list{grid-template-columns:minmax(0,1fr)}.experience-heading{grid-template-columns:minmax(0,1fr);row-gap:.1rem}.experience-dates,.experience-heading h3{grid-column:1;text-align:left}.contact-heading{grid-template-columns:2rem minmax(0,1fr)}.contact-copy{padding-left:2.65rem}}@media(max-width:380px){.header-inner,.page-content{width:min(100% - 1.75rem,80rem)}.wordmark-logo{width:1.8rem;height:1.8rem}.wordmark-caption{font-size:.52rem;letter-spacing:.07em}.profile-title{font-size:clamp(3.6rem,18vw,4.3rem)}.contact-copy{align-items:flex-start;flex-direction:column;gap:.8rem}.site-footer{flex-direction:column;gap:.35rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{@page{size:letter;margin:.42in}:root,:root[data-theme=dark],:root[data-theme=light]{color-scheme:light;--profile-canvas: #ffffff;--profile-panel: #ffffff;--profile-panel-raised: #ffffff;--profile-line: #d3dade;--profile-line-strong: #77828a;--profile-copy: #1a1a1a;--profile-muted: #515d65;--profile-accent: #1a1a1a;--profile-cyan: #1a1a1a;--profile-focus: #1a1a1a}html,body,.site-frame{min-width:0!important;min-height:0!important;background:#fff!important;color:#1a1a1a!important;font-size:9pt}.skip-link,.main-nav,.theme-toggle,.back-to-top{display:none!important}.header-inner,.page-content{width:100%!important}.header-inner{min-height:0;grid-template-columns:1fr;padding-block:.1rem .45rem}.wordmark-caption{color:#515d65!important}.page-content{padding-block:.3rem 0}.intro{grid-template-columns:minmax(0,1fr) 15rem;gap:1.2rem;padding-bottom:1rem}.profile-title{margin-top:.5rem;font-size:4.5rem}.name-family{color:#515d65!important}.intro-summary{margin-top:.6rem;font-size:11pt}.intro-meta{margin-top:.4rem;font-size:8pt}.section-index{max-width:none;padding-top:.4rem}.section-index a{min-height:1.45rem;font-size:8pt}.dossier-section,.contact-section{grid-template-columns:minmax(0,13rem) minmax(0,1fr);gap:1.5rem;padding-block:.7rem}.contact-section{break-inside:avoid}.section-label,.contact-heading,.section-label .eyebrow,.contact-heading .eyebrow,.section-label h2,.contact-heading h2{min-width:0;overflow-wrap:anywhere}.section-label h2,.contact-heading h2{font-size:15pt}.section-body,.about-body{padding-left:0;font-size:9pt;line-height:1.4}.about-body{font-size:10pt}.experience-list{padding:0}.experience-entry{padding-block:.55rem}.experience-heading h3{font-size:9.5pt}.experience-employer,.experience-dates{font-size:7.8pt}.experience-highlights{gap:.2rem;margin-top:.4rem;font-size:8.7pt;line-height:1.42}.skills-body{display:grid;gap:.7rem;padding-top:0}.skill-era{grid-template-columns:6.5rem minmax(0,1fr);gap:.55rem;padding-top:.45rem;break-inside:avoid}.skill-era>h3{font-size:8.5pt}.skill-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.skill-group h4{margin-bottom:.25rem;font-size:7.2pt}.skill-list{gap:.15rem}.skill-list li{padding:.08rem .25rem;font-size:7.8pt}.education-body,.work-body{grid-template-columns:minmax(7.5rem,.7fr) minmax(0,1fr);gap:1rem;padding-top:.3rem}.work-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.education-heading h3,.education-degree,.work-intro,.work-item h3{font-size:9pt}.education-heading p,.education-details>p:not(.education-degree),.work-item p,.contact-copy{font-size:8.5pt;line-height:1.4}.contact-copy{padding-top:.3rem}.site-footer{padding-top:.5rem;font-size:7pt}a{color:inherit!important;text-decoration:none!important}}
