:root{
--ink:#18212b;--muted:#64717d;--paper:#f7f8f5;--white:#fff;--teal:#0b6b62;--teal2:#dff0eb;--line:#dfe5e1;--shadow:0 22px 70px rgba(24,33,43,.10);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}.shell{width:min(1160px,calc(100% - 40px));margin:auto}
.progress{position:fixed;z-index:100;left:0;top:0;height:3px;width:0;background:var(--teal);transition:width .08s linear}
.nav-wrap{position:sticky;top:0;z-index:90;background:rgba(247,248,245,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(223,229,225,.7)}
.nav{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:"Space Grotesk";font-weight:700;font-size:18px;display:flex;align-items:center;gap:9px}.brand-dot{width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px var(--teal2)}.nav-links{display:flex;gap:28px;font-size:13px;color:var(--muted)}.nav-links a{transition:.2s}.nav-links a:hover{color:var(--teal)}.nav-cta{font-size:12px;font-weight:700;border:1px solid var(--ink);padding:9px 15px;border-radius:99px}
.hero{min-height:calc(100vh - 74px);display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;padding:74px 0 92px}.eyebrow{font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:700;color:var(--teal);display:flex;align-items:center;gap:9px}.pulse{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px var(--teal2)}
h1,h2,h3{font-family:"Space Grotesk",sans-serif;line-height:1.05;margin:0}h1{font-size:clamp(48px,6.1vw,82px);letter-spacing:-.055em;margin:20px 0 25px;max-width:750px}h1 em{font-style:normal;color:var(--teal)}.hero-text{font-size:18px;color:var(--muted);max-width:620px;margin:0 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:18px;padding:13px 18px;border-radius:12px;font-size:13px;font-weight:700;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--ink);color:#fff;box-shadow:0 12px 28px rgba(24,33,43,.15)}.ghost{border:1px solid var(--line);background:#fff}.mini-proof{display:flex;gap:32px;margin-top:45px;padding-top:20px;border-top:1px solid var(--line)}.mini-proof div{display:grid}.mini-proof strong{font:700 24px "Space Grotesk"}.mini-proof span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.hero-visual{display:flex;justify-content:center}.portrait-frame{position:relative;width:min(430px,85vw);aspect-ratio:4/5;background:#dbe6e3;border-radius:30px 30px 120px 30px;padding:12px;box-shadow:var(--shadow);transform:rotate(1deg)}.portrait{width:100%;height:100%;object-fit:cover;border-radius:22px 22px 108px 22px;display:block}.portrait-frame:after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.5);border-radius:20px 20px 106px 20px;pointer-events:none}.orbit-card{position:absolute;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);box-shadow:0 15px 40px rgba(24,33,43,.13);border:1px solid rgba(255,255,255,.9);border-radius:14px;padding:10px 13px;display:flex;gap:9px;align-items:center;min-width:122px}.orbit-card b{display:block;font:700 13px "Space Grotesk"}.orbit-card small{display:block;color:var(--muted);font-size:9px}.tiny-icon{width:25px;height:25px;border-radius:8px;background:var(--teal2);color:var(--teal);display:grid;place-items:center;font-weight:700}.card-a{left:-24px;top:20%}.card-b{right:-20px;bottom:25%}.portrait-caption{position:absolute;left:32px;bottom:27px;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.35);display:grid}.portrait-caption span{font-size:9px;text-transform:uppercase;letter-spacing:.16em;opacity:.8}.portrait-caption strong{font:600 18px "Space Grotesk"}.portrait-caption small{font-size:10px;opacity:.9}
.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.ticker-inner{width:max-content;display:flex;align-items:center;gap:25px;padding:16px 0;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);animation:marquee 28s linear infinite}.ticker i{font-style:normal;color:var(--teal)}@keyframes marquee{to{transform:translateX(-35%)}}
.section{padding:120px 0}.split{display:grid;grid-template-columns:220px 1fr;gap:50px}.section-label{font:700 10px "Space Grotesk";letter-spacing:.16em;text-transform:uppercase;color:var(--teal);padding-top:7px}.section-content{max-width:800px}.section-content h2{font-size:clamp(36px,4.3vw,60px);letter-spacing:-.045em;margin-bottom:25px}.section-content p{font-size:17px;color:var(--muted);max-width:760px}.tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.tag-row span,.skill-strip span,.certs span{padding:7px 10px;border-radius:99px;background:#fff;border:1px solid var(--line);font-size:10px;font-weight:700;color:#53606d}
.timeline{border-left:1px solid var(--line)}.job{display:grid;grid-template-columns:180px 1fr;gap:35px;padding:0 0 72px 35px;position:relative}.job:before{content:"";position:absolute;left:-5px;top:7px;width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px var(--teal2)}.job:last-child{padding-bottom:0}.job-date{font-size:10px;letter-spacing:.11em;font-weight:700;color:var(--muted);padding-top:6px}.job-top{display:flex;justify-content:space-between;gap:20px}.job h3{font-size:28px;letter-spacing:-.03em}.job p{margin:7px 0 20px;color:var(--muted);font-size:13px}.job ul{margin:0;padding-left:18px;color:#4e5b65;font-size:14px}.job li{margin:8px 0}.job-index{font:700 11px "Space Grotesk";color:var(--teal)}.skill-strip{display:flex;gap:6px;flex-wrap:wrap;margin-top:22px}.skill-strip span{background:var(--teal2);border:0;color:var(--teal)}
.soft-bg{background:#edf3f0}.skill-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:55px}.skill-card{background:#fff;border:1px solid rgba(223,229,225,.9);padding:28px;border-radius:18px;min-height:230px;transition:.25s}.skill-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.skill-card .num{font:700 10px "Space Grotesk";color:var(--teal)}.skill-card h3{font-size:22px;margin:45px 0 13px}.skill-card p{font-size:13px;color:var(--muted);margin:0}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:50px}.metric{padding:30px;border-top:2px solid var(--ink)}.metric strong{font:700 clamp(46px,6vw,75px) "Space Grotesk";letter-spacing:-.07em}.metric strong span{font-size:.5em;color:var(--teal)}.metric p{max-width:230px;color:var(--muted);font-size:12px}
.education-list{display:grid;gap:0}.edu{display:grid;grid-template-columns:120px 1fr;gap:25px;padding:25px 0;border-bottom:1px solid var(--line)}.edu:first-child{border-top:1px solid var(--line)}.edu>span{font-size:10px;letter-spacing:.1em;color:var(--teal);font-weight:700}.edu h3{font-size:22px}.edu p{font-size:13px;color:var(--muted);margin:8px 0 0}.cert-section{padding-top:0}.certs{display:flex;flex-wrap:wrap;gap:9px}
.contact-section{background:var(--ink);color:#fff;padding:95px 0}.contact-inner{display:flex;align-items:end;justify-content:space-between;gap:45px}.contact-section .eyebrow{color:#83c8bc}.contact-section h2{font-size:clamp(38px,5vw,67px);letter-spacing:-.05em;max-width:770px;margin-top:17px}.contact-actions{display:grid;gap:14px;justify-items:start}.button.light{background:#fff;color:var(--ink);white-space:nowrap}.phone{font-size:13px;color:#aeb9c0}.footer{display:flex;justify-content:space-between;padding:25px 0;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav-links{display:none}.hero{grid-template-columns:1fr;padding-top:55px}.hero-visual{order:-1}.portrait-frame{width:min(390px,88vw)}.hero-copy{text-align:left}.skill-grid{grid-template-columns:repeat(2,1fr)}.contact-inner{align-items:flex-start;flex-direction:column}.split{grid-template-columns:1fr;gap:20px}.section{padding:85px 0}}
@media(max-width:600px){.shell{width:min(100% - 28px,1160px)}.nav{height:64px}.nav-cta{padding:8px 12px}.hero{min-height:auto;padding:55px 0 75px}.hero-visual{margin-bottom:25px}.hero-text{font-size:16px}.mini-proof{gap:17px}.mini-proof strong{font-size:20px}.mini-proof span{font-size:8px}.card-a{left:-8px}.card-b{right:-7px}.job{grid-template-columns:1fr;gap:8px;padding-left:24px}.job h3{font-size:24px}.skill-grid,.metrics{grid-template-columns:1fr}.edu{grid-template-columns:1fr;gap:4px}.footer{flex-direction:column;gap:8px}.ticker-inner{animation-duration:22s}.contact-section{padding:75px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-inner{animation:none}.reveal{transition:none}}
