.cv-document{max-width:1000px;margin:22px auto 0}.cv-heading{padding:0 0 20px}.cv-heading .eyebrow{margin-bottom:8px}.cv-heading h1{letter-spacing:-1.3px;font-size:32px}.cv-role{margin:8px 0 4px;font-size:16px}.cv-availability{color:var(--muted-foreground);font-size:12px}.cv-contact{flex-wrap:wrap;gap:10px 22px;margin:22px 0;display:flex}.cv-contact a{font-size:12px;text-decoration:none}.cv-contact a:hover{text-decoration:underline}.cv-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cv-actions .ui-button{border-radius:99px;min-height:38px;padding:9px 16px;font-size:12px}.cv-actions>a:not(.ui-button){color:var(--muted-foreground);font-size:11px}.cv-status{color:var(--muted-foreground);min-height:20px;margin:8px 0 0;font-size:12px}.cv-jump{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px 25px;padding-bottom:22px;display:flex}.cv-jump a{font-size:12px;text-decoration:none}.cv-jump a:hover{text-decoration:underline}.cv-section{border-bottom:1px solid var(--border);grid-template-columns:175px minmax(0,1fr);gap:30px;padding:32px 0;font-size:14px;line-height:1.85;display:grid}.cv-section>h2{font-size:17px;font-weight:500}.cv-section h3{margin:0 0 8px;font-size:15px}.cv-section p:last-child{margin-bottom:0}.cv-section ul{margin:14px 0;padding-left:18px}.cv-section li{margin:7px 0;padding-left:3px}.cv-employment{justify-content:space-between;align-items:baseline;gap:15px;display:flex}.cv-employment span{font-size:12px}.cv-meta{color:var(--muted-foreground);font-size:12px}.cv-skill-groups{grid-template-columns:1fr;gap:24px;display:grid}.cv-skill-groups p{margin:0 0 5px}.cv-project+.cv-project{border-top:1px solid var(--border);margin-top:24px;padding-top:24px}.cv-project-heading{break-after:avoid;flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.cv-project-heading h3{margin:0}.cv-project-link{width:24px;height:24px;color:var(--muted-foreground);vertical-align:baseline;justify-content:center;align-items:center;margin-left:4px;font-size:14px;text-decoration:none;display:inline-flex}.cv-project-link:hover{color:var(--foreground)}.cv-project-tag{border:1px solid var(--border);background:var(--muted);color:var(--muted-foreground);border-radius:99px;padding:3px 9px;font-size:10px;line-height:1.5;display:inline-block}@media print{.cv-project-tag{background:0 0;font-size:8pt}}@media (width<=760px){.cv-document{margin-top:14px}.cv-heading h1{font-size:29px}.cv-section{grid-template-columns:1fr;gap:16px;padding:26px 0}.cv-skill-groups{grid-template-columns:1fr;gap:20px}.cv-employment{flex-wrap:wrap;gap:4px}.cv-contact{gap:8px}.cv-contact a{overflow-wrap:anywhere}.cv-jump{gap:10px 18px}.cv-jump a{font-size:11px}}@media print{@page{size:A4;margin:17mm}.cv-document{max-width:none;margin:0}.cv-actions,.cv-status,.cv-jump{display:none!important}.cv-heading{padding:0 0 18px}.cv-heading h1{font-size:26px}.cv-role{font-size:15px}.cv-contact{gap:14px;margin:12px 0}.cv-contact a{border:0;padding:0}.cv-section{border:0;border-top:1px solid var(--border);box-shadow:none;border-radius:0;grid-template-columns:135px 1fr;gap:18px;margin:0;padding:16px 0;font-size:10pt}.cv-section>h2{font-size:13pt}.cv-section h3{break-after:avoid;font-size:11pt}.cv-project,.cv-skill-groups>div{break-inside:avoid}.cv-skill-groups{grid-template-columns:1fr;gap:14px}.cv-section p,.cv-section li{orphans:3;widows:3}}.cv-headline{color:var(--muted-foreground);margin:7px 0 12px;font-size:13px}.cv-availability,.cv-contact a,.cv-edit-link,.cv-job .cv-meta{align-items:center;gap:8px;display:inline-flex}.cv-contact svg,.cv-job .cv-meta svg{flex:none;width:15px;height:15px}.availability-dot{background:var(--primary);border-radius:50%;width:6px;height:6px}.cv-job+.cv-job,.cv-education+.cv-education{margin-top:26px}.cv-download svg{transition:transform .18s}.cv-download:hover svg{transform:translateY(2px)}.cv-download[aria-busy=true]{opacity:.7;cursor:wait}.cv-download[aria-busy=true] svg{animation:.8s ease-in-out 3 cv-download-pulse}@keyframes cv-download-pulse{50%{opacity:.4;transform:translateY(3px)}}@media (prefers-reduced-motion:reduce){.cv-download svg{transition:none;animation:none!important}}@media print{.availability-dot,.cv-contact svg,.cv-job .cv-meta svg{display:none}.cv-section{display:block}.cv-section>h2{margin-bottom:12px}}.cv-document{max-width:1200px}.cv-document>.cv-section,.cv-document>.cv-jump,.cv-document>.cv-contact{max-width:1000px;margin-inline:auto}.cv-hero{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,72px);padding:40px 0 42px;display:grid}.cv-hero .cv-heading{min-width:0;padding:0}.cv-hero-eyebrow{color:var(--primary);text-transform:uppercase;letter-spacing:2px;align-items:center;gap:12px;margin:0 0 22px;font:500 11px/1.6 ui-monospace,monospace;display:flex}.cv-hero-eyebrow:before{content:"";background:currentColor;flex-shrink:0;width:24px;height:1px}.cv-hero .cv-heading h1{letter-spacing:-2.5px;overflow-wrap:anywhere;font-size:clamp(40px,4.5vw,64px);font-weight:750;line-height:1.06}.cv-hero-headline{max-width:34ch;margin:20px 0 26px;font-size:clamp(18px,2vw,24px);font-weight:550;line-height:1.45}.cv-hero-meta{color:var(--muted-foreground);flex-wrap:wrap;gap:10px 18px;margin-bottom:32px;font-size:13px;display:flex}.cv-hero-meta span{align-items:center;gap:7px;display:inline-flex}.cv-hero-meta svg{width:15px;height:15px}.cv-hero .cv-actions .ui-button{min-height:48px;padding:12px 20px;font-size:13px}.cv-work-link svg{transition:transform .18s}.cv-work-link:hover svg{transform:translate(3px)}.cv-hero-tools{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.cv-hero-tools .ui-button{min-height:30px;color:var(--muted-foreground);background:0 0;border:none;padding:5px 0;font-size:12px}.cv-hero-tools .ui-button:hover{color:var(--primary)}.cv-edit-link{color:var(--muted-foreground);font-size:12px}.cv-terminal{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:var(--shadow-soft);border-radius:17px;font:12px/1.85 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:hidden}.cv-terminal-bar{background:var(--muted);border-bottom:1px solid var(--border);color:var(--muted-foreground);align-items:center;gap:16px;padding:15px 18px;font-size:11px;display:flex}.cv-terminal-dots{gap:7px;display:inline-flex}.cv-terminal-dots i{background:#ff6059;border-radius:50%;width:10px;height:10px}.cv-terminal-dots i:nth-child(2){background:#ffbd2e}.cv-terminal-dots i:nth-child(3){background:#28c840}.cv-terminal-body{padding:22px}.cv-terminal-command{color:var(--muted-foreground);margin:0 0 2px}.cv-terminal-command>span{color:var(--primary);margin-right:7px}.cv-terminal-output{overflow-wrap:anywhere;margin:0 0 22px}.cv-terminal-output:last-child{margin-bottom:0}.cv-terminal-profile{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;margin:0 0 24px;padding:0}.cv-terminal-key{color:var(--info)}.cv-terminal-cursor{vertical-align:-2px;background:var(--primary);width:7px;height:13px;margin-left:8px;animation:1s step-end 4 terminal-cursor;display:inline-block}@keyframes terminal-cursor{50%{opacity:0}}@media (width<=900px){.cv-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px}.cv-hero .cv-heading h1{font-size:42px}.cv-terminal-body{padding:18px}}@media (width<=700px){.cv-hero{grid-template-columns:1fr;gap:30px;padding:22px 0 12px}.cv-hero .cv-heading h1{letter-spacing:-1.8px;font-size:clamp(38px,8vw,54px)}.cv-hero-eyebrow{letter-spacing:1.3px;font-size:10px}.cv-hero-meta{margin-bottom:24px}}@media (prefers-reduced-motion:reduce){.cv-terminal-cursor{animation:none}.cv-work-link svg{transition:none}}@media print{.cv-hero{padding:0;display:block}.cv-terminal,.cv-hero-tools,.cv-hero-meta{display:none!important}.cv-hero .cv-heading h1{letter-spacing:-.5px;font-size:26px}.cv-hero-eyebrow{color:#444;margin-bottom:6px}.cv-hero-headline{margin:8px 0;font-size:12px}}
