@import"https://fonts.googleapis.com/css2?family=Roboto+Flex:opsz,wght@8..144,100..1000&family=Roboto:wght@300;400;500;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--white: #ffffff;--black: #000000;--text-primary: rgb(51, 51, 51);--text-body: rgb(0, 0, 0);--text-muted: #666666;--border-light: #e5e5e5;--bg-light: #f5f5f5;--font-heading: "Roboto Flex", "Roboto", sans-serif;--font-body: "Roboto", sans-serif;--nav-spacing: .15em;--container-max: 900px;--section-padding: 48px}html{font-size:16px;scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);background:var(--white);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-heading);font-weight:400;color:var(--text-primary)}p{margin:0;line-height:1.6}a{color:inherit;text-decoration:none}button{font-family:var(--font-body);cursor:pointer;border:none;background:none}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}::selection{background:var(--text-primary);color:var(--white)}@media print{.header,.cv-footer__links{display:none}.cv-page{min-height:auto}*{animation:none!important;transition:none!important}body{font-size:10pt;color:#000;background:#fff}.cv-main{max-width:100%;padding:0}.timeline__entry,.section{break-inside:avoid}.section__header{break-after:avoid}.skill__fill{print-color-adjust:exact;-webkit-print-color-adjust:exact}@page{margin:1.5cm 2cm;size:A4}}.header{position:sticky;top:0;z-index:10;background:var(--white);border-bottom:1px solid var(--border-light)}.header__inner{max-width:var(--container-max);margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between}.header__logo{display:flex;flex-direction:column;gap:0}.header__sub{font-size:11px;letter-spacing:var(--nav-spacing);color:var(--text-muted);text-transform:lowercase}.header__name{font-family:var(--font-heading);font-size:17px;font-weight:400;color:var(--text-body);letter-spacing:var(--nav-spacing);text-transform:lowercase}.header__pdf{font-size:14px;letter-spacing:var(--nav-spacing);color:var(--text-muted);padding:6px 16px;border:1px solid var(--border-light);transition:color .2s,border-color .2s}.header__pdf:hover{color:var(--text-body);border-color:var(--text-body)}.cv-page{min-height:100vh;display:flex;flex-direction:column}.cv-main{max-width:var(--container-max);margin:0 auto;padding:0 24px;width:100%;flex:1}.hero{padding:var(--section-padding) 0;border-bottom:1px solid var(--border-light)}.hero__row{display:flex;justify-content:space-between;align-items:flex-start;gap:32px}.hero__info{flex:1}.hero__photo{flex-shrink:0}.hero__photo img{width:160px;height:auto;display:block}.hero__name{font-size:48px;font-weight:400;text-transform:uppercase;letter-spacing:.04em;line-height:1.1;color:var(--text-primary)}.hero__title{font-size:17px;color:var(--text-muted);letter-spacing:var(--nav-spacing);margin-top:8px}.hero__contact{margin-top:24px;font-size:15px;color:var(--text-body);line-height:1.8}.hero__contact a{border-bottom:1px solid var(--border-light);transition:border-color .2s}.hero__contact a:hover{border-color:var(--text-body)}.section{padding:var(--section-padding) 0;border-bottom:1px solid var(--border-light)}.section__header{font-size:14px;text-transform:uppercase;letter-spacing:var(--nav-spacing);color:var(--text-muted);margin-bottom:32px;font-weight:400}.timeline{display:flex;flex-direction:column}.timeline__entry{display:flex;gap:32px;padding:20px 0;border-bottom:1px solid var(--bg-light)}.timeline__entry:last-child{border-bottom:none}.timeline__period{flex-shrink:0;width:160px;font-size:14px;color:var(--text-muted);padding-top:2px}.timeline__content{flex:1}.timeline__title{font-size:16px;font-weight:400;color:var(--text-body);line-height:1.4}.timeline__company{font-size:15px;color:var(--text-muted);margin-top:2px}.timeline__company a{color:#e67e22;transition:color .2s,border-color .2s}.timeline__company a:hover{color:#d35400;border-bottom:1px solid #d35400}.timeline__desc{margin-top:8px;display:flex;flex-direction:column;gap:2px}.timeline__desc li{font-size:14px;color:var(--text-muted);line-height:1.6;padding-left:12px;position:relative}.timeline__desc li:before{content:"–";position:absolute;left:0}.expertise-clusters{display:flex;flex-direction:column;gap:36px}.expertise-cluster__title{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-body);margin-bottom:16px;font-weight:400}.skills{display:flex;flex-direction:column;gap:16px}.skill__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.skill__name{font-size:15px;color:var(--text-body)}.skill__pct{font-size:14px;color:var(--text-muted)}.skill__track{height:6px;background:var(--bg-light);overflow:hidden}.skill__fill{height:100%;background:var(--text-primary)}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:14px;color:var(--text-body);padding:6px 16px;border:1px solid var(--border-light);transition:border-color .2s}.tag:hover{border-color:var(--text-muted)}.interests{display:flex;flex-direction:column;gap:4px}.interests__item{font-size:16px;color:var(--text-body);line-height:1.8;padding-left:20px;position:relative}.interests__item:before{content:"+";position:absolute;left:0;color:var(--text-muted)}.cv-footer{max-width:var(--container-max);margin:0 auto;padding:var(--section-padding) 24px;width:100%;display:flex;justify-content:space-between;align-items:center}.cv-footer__links{display:flex;gap:24px}.cv-footer__links a{font-size:14px;color:var(--text-muted);letter-spacing:var(--nav-spacing);transition:color .2s}.cv-footer__links a:hover{color:var(--text-body)}.cv-footer__updated{font-size:14px;color:var(--text-muted)}.pdf-mode{min-height:auto!important}.pdf-mode *{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}.pdf-mode .cv-main{flex:none}.pdf-mode .hero{padding:24px 0}.pdf-mode .section{padding:20px 0}.pdf-mode .section__header{margin-bottom:16px}.pdf-mode .timeline__entry{padding:10px 0}.pdf-mode .expertise-clusters{gap:20px}.pdf-mode .expertise-cluster__title{margin-bottom:10px}.pdf-mode .skills{gap:10px}.pdf-mode .hero__name{font-size:36px}.pdf-mode .hero__photo img{width:120px}.pdf-mode .cv-footer{padding:20px 24px}@media(max-width:768px){.hero__row{flex-direction:column-reverse;gap:20px}.hero__photo img{width:120px}.hero__name{font-size:32px}.cv-main{padding:0 16px}.section{padding:32px 0}.timeline__entry{flex-direction:column;gap:4px}.timeline__period{width:auto}.cv-footer{flex-direction:column;gap:16px;align-items:flex-start}}
