:root{--bg: #f2f5ef;--surface: #ffffff;--surface-alt: #e7ece4;--text: #12201c;--muted: #5d6b66;--line: rgba(18, 32, 28, 0.14);--accent: #12b981;--accent-bright: #99f2cc;--accent-ink: #042f24;--shadow: 0 24px 70px rgba(15, 36, 29, 0.13);--radius: 22px;--max: 1180px}html[data-theme="dark"]{--bg: #071512;--surface: #0d211c;--surface-alt: #132d26;--text: #eef8f3;--muted: #a2b6ae;--line: rgba(213, 244, 230, 0.14);--accent: #5de5b3;--accent-bright: #a8f4d5;--accent-ink: #05291f;--shadow: 0 28px 90px rgba(0, 0, 0, 0.34)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;line-height:1.65;margin:0;overflow-wrap:break-word}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%}::selection{background:var(--accent);color:var(--accent-ink)}.skip-link{background:var(--accent);color:var(--accent-ink);left:1rem;padding:.7rem 1rem;position:fixed;top:-5rem;z-index:100}.skip-link:focus{top:1rem}.site-header{align-items:center;backdrop-filter:blur(18px);background:color-mix(in srgb, var(--bg) 86%, transparent);border-bottom:1px solid var(--line);display:flex;height:84px;justify-content:space-between;left:0;padding:0 max(24px, calc((100vw - var(--max)) / 2));position:sticky;top:0;z-index:20}.brand{align-items:center;display:flex;gap:.8rem;text-decoration:none}.brand__mark{align-items:center;background:var(--accent);border-radius:10px;color:var(--accent-ink);display:flex;font-size:.78rem;font-weight:900;height:40px;justify-content:center;letter-spacing:-.04em;width:40px}.brand strong,.brand small{display:block}.brand strong{font-size:.95rem;line-height:1.25}.brand small{color:var(--muted);font-size:.7rem}.site-nav{display:flex;gap:2rem}.site-nav a{color:var(--muted);font-size:.82rem;font-weight:700;text-decoration:none;transition:color .2s ease}.site-nav a:hover{color:var(--accent)}.header-actions{align-items:center;display:flex;gap:.7rem}.icon-button{background:transparent;border:1px solid var(--line);border-radius:999px;color:var(--text);cursor:pointer;height:40px;width:40px}.header-contact{background:var(--text);border-radius:999px;color:var(--bg);font-size:.8rem;font-weight:800;padding:.65rem 1rem;text-decoration:none}main{overflow:hidden}.hero{display:grid;gap:clamp(2rem, 6vw, 7rem);grid-template-columns:minmax(0, 1.18fr) minmax(320px, 0.82fr);margin:0 auto;max-width:var(--max);min-height:calc(100vh - 84px);padding:clamp(4rem, 9vh, 7rem) 24px;place-items:center;position:relative}.hero::before{background:var(--accent);border-radius:999px;content:"";filter:blur(130px);height:270px;opacity:.13;position:absolute;right:-140px;top:8%;width:270px}.eyebrow{color:var(--accent);font-size:.74rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.status-dot{background:var(--accent);border-radius:50%;box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 16%, transparent);display:inline-block;height:7px;margin-right:.65rem;width:7px}.hero h1{font-size:clamp(3.1rem, 6.4vw, 6rem);letter-spacing:-.065em;line-height:.94;margin:1.5rem 0 2rem;max-width:900px}.hero h1 span{color:var(--accent)}.hero__lede{color:var(--muted);font-size:clamp(1.05rem, 1.6vw, 1.28rem);max-width:680px}.hero__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:2.2rem 0 3.2rem}.button{border:1px solid var(--line);border-radius:999px;cursor:pointer;font:inherit;font-size:.86rem;font-weight:800;padding:.85rem 1.25rem;text-decoration:none}.button--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.button--secondary{background:transparent;color:var(--text)}.hero__stats{display:grid;gap:1rem;grid-template-columns:repeat(4, 1fr);margin:0}.hero__stats div{border-left:1px solid var(--line);padding-left:1rem}.hero__stats dt{font-size:1.55rem;font-weight:900;letter-spacing:-.04em}.hero__stats dd{color:var(--muted);font-size:.68rem;margin:0;text-transform:uppercase}.hero__visual{width:100%}.portrait-frame{background:var(--surface-alt);border:1px solid var(--line);border-radius:180px 180px var(--radius) var(--radius);box-shadow:var(--shadow);margin:0 auto;max-width:400px;min-height:600px;overflow:visible;position:relative}.portrait-frame::after{border:1px solid var(--accent);border-radius:inherit;content:"";inset:14px -14px -14px 14px;opacity:.45;pointer-events:none;position:absolute;z-index:-1}.portrait-frame>img{border-radius:inherit;display:block;height:600px;object-fit:cover;object-position:center;width:100%}.portrait-card{backdrop-filter:blur(12px);background:color-mix(in srgb, var(--surface) 88%, transparent);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:.8rem 1rem;position:absolute}.portrait-card span,.portrait-card strong{display:block}.portrait-card span{color:var(--muted);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.portrait-card strong{font-size:.82rem}.portrait-card--top{right:-40px;top:100px}.portrait-card--bottom{bottom:50px;left:-45px}.toolbelt{align-items:center;border-bottom:1px solid var(--line);border-top:1px solid var(--line);display:flex;gap:2rem;margin:0 auto;max-width:var(--max);padding:1.4rem 24px}.toolbelt p{color:var(--muted);flex:0 0 auto;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.toolbelt ul{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;margin:0;padding:0}.toolbelt li{background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:.72rem;font-weight:700;padding:.35rem .75rem}.resume-section{margin:0 auto;max-width:var(--max);padding:7rem 24px}.section-intro{display:grid;gap:1rem 3rem;grid-template-columns:1.2fr .8fr;margin-bottom:5rem}.section-intro .eyebrow{grid-column:1 / -1;margin:0}.section-intro h2{font-size:clamp(2.4rem, 5vw, 4.5rem);letter-spacing:-.055em;line-height:1;margin:0}.section-intro>p:last-child{align-self:end;color:var(--muted);font-size:1.08rem}.resume-document>h1:first-child,.resume-document>h2:first-of-type,.resume-document>h2:first-of-type+ul{display:none}.resume-document>h2{border-top:1px solid var(--line);font-size:clamp(1.7rem, 3vw, 2.5rem);letter-spacing:-.035em;margin:6rem 0 2rem;padding-top:1.2rem}.resume-document>h2::before{color:var(--accent);content:"// ";font-size:.7em}.resume-document>h3{color:var(--accent);font-size:1.1rem;margin:3rem 0 .5rem}.resume-document p{color:var(--muted)}.resume-document ul{padding-left:1.2rem}.resume-document li{margin-bottom:.6rem}.resume-document a{text-decoration-color:var(--accent);text-underline-offset:3px}.resume-document>h2#core-skills+ul{display:grid;gap:.8rem;grid-template-columns:repeat(2, minmax(0, 1fr));list-style:none;padding:0}.resume-document>h2#core-skills+ul li{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:1rem 1.1rem}.resume-document>h2#certifications-and-badges+p{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fill, minmax(72px, 1fr))}.resume-document>h2#certifications-and-badges+p img{aspect-ratio:1;background:var(--surface);border:1px solid var(--line);border-radius:16px;height:auto;object-fit:contain;padding:.45rem;transition:transform .2s ease;width:100%}.resume-document>h2#certifications-and-badges+p img:hover{transform:translateY(-4px)}.resume-document>h2#professional-experience ~ h3{background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0;margin-bottom:0;padding:1.2rem 1.3rem .45rem}.resume-document>h2#professional-experience ~ h3+p{background:var(--surface);border-left:1px solid var(--line);border-right:1px solid var(--line);margin:0;padding:0 1.3rem .8rem}.resume-document>h2#professional-experience ~ h3+p+ul{background:var(--surface);border:1px solid var(--line);border-radius:0 0 16px 16px;margin:0;padding:.5rem 2.7rem 1.2rem}.site-footer{border-top:1px solid var(--line);display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin:2rem auto 0;max-width:var(--max);padding:5rem 24px 2.5rem}.site-footer h2{font-size:clamp(2.2rem, 5vw, 4rem);letter-spacing:-.055em;line-height:1;margin:0}.footer-links{align-content:center;display:grid;gap:.7rem;justify-content:end}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover{color:var(--accent)}.footer-meta{border-top:1px solid var(--line);color:var(--muted);font-size:.72rem;grid-column:1 / -1;margin:2rem 0 0;padding-top:1.5rem}@media (max-width: 900px){.site-nav{display:none}.hero{grid-template-columns:1fr}.hero__visual{grid-row:1;max-width:380px}.portrait-frame,.portrait-frame>img{min-height:510px;height:510px}.section-intro{grid-template-columns:1fr}.section-intro .eyebrow{grid-column:auto}}@media (max-width: 620px){.site-header{height:72px;padding:0 18px}.brand small,.header-contact{display:none}.hero{padding:3rem 18px 5rem}.hero h1{font-size:clamp(2.8rem, 15vw, 4.1rem)}.hero__stats{grid-template-columns:repeat(2, 1fr)}.portrait-card--top{right:-8px}.portrait-card--bottom{left:-8px}.toolbelt{align-items:flex-start;flex-direction:column;gap:.5rem;padding-inline:18px}.resume-section{padding:5rem 18px}.resume-document>h2#core-skills+ul{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr;padding-inline:18px}.footer-links{justify-content:start}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms !important}}@media print{:root,html[data-theme="dark"]{--bg: #fff;--surface: #fff;--text: #111;--muted: #333;--line: #ccc}.site-header,.hero,.toolbelt,.section-intro,.site-footer{display:none !important}.resume-section{max-width:none;padding:0}.resume-document>h1:first-child,.resume-document>h2:first-of-type,.resume-document>h2:first-of-type+ul{display:block}.resume-document>h2{break-after:avoid;margin-top:1.5rem}.resume-document>h3,.resume-document li{break-inside:avoid}.resume-document>h2#certifications-and-badges+p img{width:54px}}
