@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/fonts/archivo-normal-100_900.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/fonts/archivo-normal-100_900-ext.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/fonts/archivo-italic-100_900.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:italic;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/fonts/archivo-italic-100_900-ext.woff2)format("woff2");unicode-range:U+100-2AF,U+304,U+308,U+329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plexmono-normal-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plexmono-normal-500.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plexmono-normal-600.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#101013;--ink-soft:#43434b;--ink-mute:#6c6c75;--paper:#f6f5f1;--paper-2:#edebe4;--paper-3:#e4e2d9;--line:#d3d0c6;--line-strong:#b9b6ab;--green:#4e9a3f;--green-deep:#2f6b26;--blue:#05167a;--red:#e41e33;--white:#fdfdfb;--font-text:"Archivo", "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--shell:78rem;--gutter:clamp(1.25rem, 4vw, 3.5rem);--step--1:clamp(.82rem, .78rem + .2vw, .92rem);--step-0:clamp(1rem, .95rem + .28vw, 1.14rem);--step-1:clamp(1.2rem, 1.09rem + .55vw, 1.55rem);--step-2:clamp(1.55rem, 1.32rem + 1.1vw, 2.25rem);--step-3:clamp(2rem, 1.55rem + 2.1vw, 3.4rem);--step-4:clamp(2.6rem, 1.7rem + 4.2vw, 5.2rem);--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}body{font-family:var(--font-text);font-size:var(--step-0);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-variation-settings:"wght" 420;margin:0;line-height:1.65}h1,h2,h3,h4{font-variation-settings:"wght" 760;letter-spacing:-.015em;text-wrap:balance;margin:0 0 .6em;font-stretch:112%;line-height:1.08}h1{font-size:var(--step-4)}h2{font-size:var(--step-2)}h3{font-size:var(--step-1)}p{text-wrap:pretty;margin:0 0 1.1em}p:last-child{margin-bottom:0}a{color:inherit;text-decoration-color:var(--line-strong);text-underline-offset:3px}a:hover{color:var(--green-deep)}img{max-width:100%;height:auto;display:block}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}::selection{background:var(--green);color:var(--white)}.shell{width:min(100% - 2 * var(--gutter), var(--shell));margin-inline:auto}.shell-wide{width:min(100% - 2 * var(--gutter), 92rem);margin-inline:auto}.skip-link{background:var(--ink);color:var(--white);z-index:100;padding:.75rem 1.25rem;position:absolute;top:0;left:-9999px}.skip-link:focus{top:.5rem;left:.5rem}.kicker{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.18em;text-transform:uppercase;color:var(--green-deep);align-items:center;gap:.75rem;margin-bottom:1.1rem;font-weight:600;display:inline-flex}.kicker:before{content:"";background:linear-gradient(90deg, var(--blue) 0 33%, var(--line-strong) 33% 66%, var(--red) 66% 100%);width:2.2rem;height:2px;display:inline-block}.tricolor{background:linear-gradient(90deg, var(--blue) 0 32%, var(--line-strong) 32% 64%, var(--red) 64% 100%);border:0;width:min(100%,34rem);height:5px;margin:1.6rem 0 0;display:block}.site-header{z-index:60;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#f6f5f1eb;position:sticky;top:0}.site-header .bar{justify-content:space-between;align-items:center;gap:1.5rem;padding:.85rem 0;display:flex}.logo{align-items:center;gap:.9rem;text-decoration:none;display:inline-flex}.logo img{width:auto;height:26px}.logo .divider{background:var(--line-strong);width:1px;height:26px}.logo .tag{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);max-width:12rem;font-size:.72rem;line-height:1.3}@media (width<=60rem){.logo .divider,.logo .tag{display:none}}.site-nav{align-items:center;gap:1.6rem;display:flex}.site-nav ul{gap:1.4rem;margin:0;padding:0;list-style:none;display:flex}.site-nav a.navlink{font-variation-settings:"wght" 620;letter-spacing:.01em;color:var(--ink-soft);border-bottom:2px solid #0000;padding:.35rem 0;font-size:.95rem;font-weight:600;text-decoration:none}.site-nav a.navlink:hover{color:var(--ink)}.site-nav a.navlink[aria-current=page]{color:var(--ink);border-bottom-color:var(--green)}.lang-switch{border:1px solid var(--line-strong);border-radius:2px;display:inline-flex;overflow:hidden}.lang-switch a{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-soft);background:var(--white);padding:.4rem .65rem;font-size:.78rem;font-weight:600;text-decoration:none}.lang-switch a[aria-current=true]{background:var(--ink);color:var(--white)}.nav-toggle{display:none}@media (width<=62rem){.site-nav ul{display:none}.nav-toggle{border:1px solid var(--line-strong);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;color:var(--ink);background:0 0;border-radius:2px;align-items:center;gap:.5rem;padding:.5rem .8rem;font-size:.8rem;font-weight:600;display:inline-flex}.site-nav.open ul{background:var(--paper);border-bottom:1px solid var(--line);padding:1rem var(--gutter) 1.6rem;flex-direction:column;gap:.4rem;margin:0;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 24px 40px #1010131f}.site-nav.open a.navlink{padding:.6rem 0;font-size:1.1rem}}.hero{isolation:isolate;color:var(--white);background:var(--ink);position:relative}.hero-media{z-index:-1;position:absolute;inset:0}.hero-media img{object-fit:cover;object-position:center;width:100%;height:100%}.hero-media:after{content:"";background:linear-gradient(105deg,#0a0a0de0 0%,#0a0a0d8c 45%,#0a0a0d2e 100%);position:absolute;inset:0}.hero-inner{max-width:44rem;padding:clamp(5rem,12vh,9.5rem) 0 clamp(3.5rem,8vh,6rem)}.hero .eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.22em;text-transform:uppercase;color:#9fd48f;margin-bottom:1.4rem;font-weight:500}.hero h1{font-size:var(--step-4);color:var(--white);margin-bottom:.5em}.hero h1 .thin{font-variation-settings:"wght" 500;color:#c9c7c0}.hero .lead{font-size:var(--step-1);color:#e8e6df;font-variation-settings:"wght" 500;max-width:38rem;line-height:1.5}.hero .hero-cta{flex-wrap:wrap;gap:.9rem;margin-top:2.2rem;display:flex}.hero-caption{bottom:.9rem;right:var(--gutter);font-family:var(--font-mono);letter-spacing:.08em;color:#fdfdfbbf;text-align:right;font-size:.72rem;position:absolute}@media (width<=48rem){.hero-media:after{background:linear-gradient(#0a0a0db8 0%,#0a0a0d9e 60%,#0a0a0d66 100%)}.hero-caption{display:none}}.btn{font-variation-settings:"wght" 700;letter-spacing:.02em;transition:transform .25s var(--ease), background .25s, color .25s, border-color .25s;border:1px solid #0000;border-radius:2px;align-items:center;gap:.6rem;padding:.85rem 1.5rem;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--green-deep);color:var(--white)}.btn-primary:hover{background:var(--green);color:var(--white)}.btn-ghost{color:var(--white);border-color:#fdfdfb80}.btn-ghost:hover{border-color:var(--white);color:var(--white)}.btn-outline{border-color:var(--ink);color:var(--ink)}.btn-outline:hover{background:var(--ink);color:var(--white)}.btn .arrow{font-family:var(--font-mono)}.section{padding:clamp(3.5rem,9vh,7rem) 0}.section--alt{background:var(--paper-2);border-block:1px solid var(--line)}.section--deep{background:var(--ink);color:var(--paper)}.section--deep h2{color:var(--white)}.grid{gap:clamp(2rem,5vw,4.5rem);display:grid}.grid--2{grid-template-columns:1.1fr 1fr;align-items:center}.grid--2s{grid-template-columns:1fr 1fr;align-items:start}.grid--3{grid-template-columns:repeat(3,1fr);gap:clamp(1.5rem,3vw,3rem)}.grid--4{grid-template-columns:repeat(4,1fr);gap:clamp(1rem,2vw,2rem)}@media (width<=55rem){.grid--2,.grid--2s{grid-template-columns:1fr}.grid--3,.grid--4{grid-template-columns:1fr 1fr}}@media (width<=34rem){.grid--3,.grid--4{grid-template-columns:1fr}}.lead{font-size:var(--step-1);color:var(--ink-soft);font-variation-settings:"wght" 500;line-height:1.55}figure.photo{margin:0}figure.photo>img,figure.photo picture{border-radius:3px;box-shadow:0 20px 50px #1010132e}figure.photo figcaption{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-mute);align-items:baseline;gap:.6rem;margin-top:.7rem;font-size:.76rem;display:flex}figure.photo figcaption:before{content:"";background:var(--green);flex:none;width:1.2rem;height:2px}.photo--arch img,.photo--arch picture img{filter:grayscale()contrast(1.04)sepia(.18)}.photo--arch{width:fit-content;max-width:100%;position:relative}.photo--arch:after{content:"";pointer-events:none;border:1px solid #10101340;border-radius:3px;position:absolute;inset:0}.steps{counter-reset:step;margin:0;padding:0;list-style:none}.steps li{border-top:1px solid var(--line);padding:1.4rem 0 1.4rem 4.2rem;position:relative}.steps li:last-child{border-bottom:1px solid var(--line)}.steps li:before{counter-increment:step;content:"0" counter(step);font-family:var(--font-mono);color:var(--green-deep);letter-spacing:.05em;font-size:.95rem;font-weight:600;position:absolute;top:1.5rem;left:0}.steps h3{margin-bottom:.35em;font-size:1.15rem}.steps p{color:var(--ink-soft);margin:0}.timeline{margin:0;padding:0;list-style:none}.timeline>li{border-top:1px solid var(--line);grid-template-columns:9.5rem minmax(0,1fr) minmax(0,15rem);grid-template-areas:"year body logo";align-items:start;gap:clamp(1.5rem,4vw,4rem);padding:2.6rem 0;display:grid}.timeline>li:last-child{border-bottom:1px solid var(--line)}.timeline .year{font-family:var(--font-mono);font-size:var(--step-1);color:var(--green-deep);letter-spacing:.03em;grid-area:year;font-weight:600}.timeline .body{grid-area:body;gap:1.6rem;display:grid}.timeline figure.photo{width:fit-content;max-width:min(100%,36rem)}.timeline figure.photo picture,.timeline figure.photo img{object-fit:contain;width:100%;max-width:100%;height:auto;display:block}.timeline h3{margin-bottom:.5em;font-size:1.3rem}.timeline .body p{color:var(--ink-soft);max-width:46rem}.timeline .tl-logo{object-fit:contain;object-position:right top;grid-area:logo;place-self:start end;width:100%;max-width:15rem;height:52px}.timeline .tl-logo--lg{object-position:right top;width:auto;max-width:15rem;height:72px}@media (width<=48rem){.timeline>li{grid-template-columns:1fr;grid-template-areas:"year""logo""body";gap:.9rem;padding:2rem 0}.timeline .tl-logo{object-position:left top;justify-self:start;width:auto;max-width:15rem;height:48px}.timeline .tl-logo--lg{height:64px}}.linkedin-btn{color:#fff;background:#0a66c2;border-radius:6px;justify-content:center;align-items:center;width:48px;height:48px;transition:background .15s,transform .15s;display:inline-flex;box-shadow:0 8px 20px #1010132e}.linkedin-btn:hover{background:#0855a3;transform:translateY(-2px)}.linkedin-btn:focus-visible{outline:2px solid var(--green);outline-offset:3px}@media (prefers-reduced-motion:reduce){.linkedin-btn{transition:none}.linkedin-btn:hover{transform:none}}.certs{grid-template-columns:1fr 1fr;align-items:stretch;gap:clamp(1.5rem,3vw,3rem);margin-top:2.2rem;display:grid}.cert{border:1px solid var(--line-strong);background:var(--white);border-radius:3px;align-content:start;justify-items:start;gap:.9rem;height:100%;padding:clamp(1.5rem,3vw,2.5rem);display:grid}.cert-logo{object-fit:contain;width:auto;max-width:140px;height:72px}.cert h3{margin-top:.4rem;font-size:1.15rem}.cert-sub{font-family:var(--font-mono);letter-spacing:.04em;color:var(--green-deep);margin-top:-.5rem;font-size:.85rem;font-weight:600}.cert p{color:var(--ink-soft)}@media (width<=34rem){.certs{grid-template-columns:1fr}}.cta-band{background:var(--ink);color:var(--white);padding:clamp(3rem,7vh,5.5rem) 0}.cta-band .shell{justify-items:start;gap:1.8rem;display:grid}.cta-band h2{max-width:34rem}.cta-band p{color:#c9c7c0;max-width:40rem}.form-grid{grid-template-columns:1fr 1fr;gap:1.3rem 1.6rem;display:grid}.form-grid .full{grid-column:1/-1}@media (width<=40rem){.form-grid{grid-template-columns:1fr}}.field{gap:.45rem;display:grid}.field label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-size:.78rem;font-weight:600}.field input,.field select,.field textarea{font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line-strong);border-radius:2px;width:100%;padding:.8rem .9rem;font-size:1rem}.field textarea{resize:vertical;min-height:9rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green-deep);outline-offset:1px;outline:2px solid #4e9a3f59}.field .err{color:var(--red);font-size:.85rem;display:none}.field.invalid .err{display:block}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--red)}.hp-field{width:1px;height:1px;position:absolute;left:-9999px}.form-status{border-left:4px solid var(--green);background:var(--paper-2);border-radius:2px;margin-top:1.2rem;padding:1rem 1.2rem;display:none}.form-status.show{display:block}.form-status.error{border-left-color:var(--red)}.form-status.demo{border-left-color:var(--blue)}.form-privacy{color:var(--ink-mute);max-width:46rem;margin-top:1.1rem;font-size:.8rem;line-height:1.7}.form-privacy a{text-underline-offset:2px;text-decoration:underline}.site-footer{background:var(--ink);color:#b9b7b0;padding:4rem 0 2.5rem;font-size:.95rem}.site-footer .footline{background:linear-gradient(90deg, var(--blue) 0 32%, var(--line-strong) 32% 64%, var(--red) 64% 100%);border:0;width:min(100%,34rem);height:5px;margin:0 0 3rem}.site-footer .cols{grid-template-columns:1.4fr 1fr 1fr;gap:clamp(2rem,6vw,5rem);display:grid}@media (width<=55rem){.site-footer .cols{grid-template-columns:1fr}}.site-footer .brand img{width:auto;height:24px;margin-bottom:1.2rem}.site-footer .tagline{max-width:26rem;line-height:1.6}.site-footer h2{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#8f8d86;margin-bottom:1.1rem;font-size:.78rem;font-weight:600}.site-footer ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:#d5d3cc;text-decoration:none}.site-footer a:hover{color:var(--white)}.site-footer address{font-style:normal;line-height:1.7}.site-footer address a{text-decoration:underline #4a4a52}.site-footer .legalbar{color:#7f7d77;border-top:1px solid #2b2b31;flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;margin-top:3.5rem;padding-top:1.5rem;font-size:.85rem;display:flex}.site-footer .legalbar a{color:#a5a39c}.js .reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(1.4rem)}.js .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transition:none;transform:none}}.tagline-mono{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);font-size:.8rem}.rule{border:0;border-top:1px solid var(--line);margin:2.5rem 0}.legal-page h2{font-size:var(--step-1)}.legal-page .credits{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.legal-page .credits li{color:var(--ink-soft);border-top:1px solid var(--line);padding:.6rem 0;font-size:.88rem}.legal-page .credits a{word-break:break-all}
