.cv{.hero{padding:2rem 0 1rem}.hero-content{display:flex;flex-direction:column;gap:.5rem}.main-content{padding:0 0 2rem;background:var(--color-background)}.cv-header{margin-bottom:1.5rem}.header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.header-text h1{margin:0;color:var(--color-text)}.role{font-size:1.25rem;color:var(--color-text-secondary);margin:0}.header-actions{display:flex;align-items:flex-start}.download-link{display:flex;align-items:center;gap:.25rem;color:var(--color-secondary);font-weight:500;font-size:.875rem;text-decoration:none;transition:transform .2s}.download-link:hover{transform:translateY(-1px)}.download-link svg{width:16px;height:16px;flex-shrink:0}.bio-section{margin:0}.portrait-container{float:right;margin:.25rem 0 1rem 1.5rem}.portrait{width:clamp(120px,25vw,200px);height:auto;border-radius:.375rem;box-shadow:var(--shadow-sm)}.bio-content,.bio-content p{flex:1;text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto}.bio-content p{color:var(--color-text-secondary);line-height:1.7;margin-bottom:1rem}.bio-content strong{color:var(--color-text);font-weight:600}.languages-section,.soft-skills-section,.certificates-section,.skills-section,.experience-section{margin:3rem 0;& h2[data-astro-cid-usgck7gi]{color:var(--color-text);margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}}.languages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.soft-skills-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.5rem;list-style:none;padding:0;margin:0}.soft-skills-list li{padding:.5rem 1rem;background:var(--color-background);border:1px solid var(--color-border);border-radius:.375rem;color:var(--color-text);font-size:.9rem;font-weight:600;transition:border-color .2s ease}.soft-skills-list li:hover{border-color:var(--color-border-hover)}.skill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;margin-top:1.5rem}.experience-grid{display:flex;flex-direction:column;gap:1.5rem}}@media(max-width:640px){.cv{.header-row{flex-direction:column;align-items:center;text-align:center;gap:.5rem}.header-actions{justify-content:center}.portrait-container{float:right;margin-left:1rem;margin-bottom:1rem;margin-right:0}.portrait{width:clamp(100px,30vw,140px)}.languages-grid,.soft-skills-list,.skill-grid,.projects-grid{grid-template-columns:1fr}}}@media print{@page{margin:20mm;size:A4}.cv{.hero{padding:0;margin-bottom:15pt}.main-content{padding:0}.cv-header{margin-bottom:12pt;border-bottom:1pt solid var(--color-print-text);padding-bottom:8pt;display:block!important}.header-row{display:block;text-align:left}.header-text{display:block!important}.header-text h1{font-size:18pt;font-weight:700;margin:0 0 2pt;display:block!important}.role{font-size:12pt;font-style:italic;margin:0 0 8pt;display:block!important}.portrait-container{float:right;margin:0 0 8pt 12pt}.portrait{width:80pt;height:80pt;object-fit:cover;object-position:center top;border:1pt solid var(--color-border-light)}.bio-content{text-align:justify;margin-bottom:15pt}.bio-content p{margin:0 0 8pt;text-align:justify;line-height:1.4;font-size:11pt}.bio-content strong,.bio-content em,.bio-content b{font-weight:700}.languages-section,.soft-skills-section,.certificates-section{margin:18pt 0}.certificates-section{break-inside:avoid}.skills-section{margin:12pt 0}.skills-section h2,.languages-section h2,.soft-skills-section h2,.certificates-section h2,.experience-section h2{font-size:14pt;font-weight:700;margin:0 0 8pt;border-bottom:.5pt solid var(--color-print-text);padding-bottom:2pt;page-break-after:avoid}.languages-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8pt;margin-bottom:12pt}.soft-skills-list{display:block!important;list-style:disc!important;padding-left:20pt!important;margin:0!important}.soft-skills-list li{display:list-item!important;padding:0!important;background:none!important;border:none!important;margin:0 0 3pt!important;font-size:11pt!important;font-weight:400!important}.skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:12pt 20pt}.experience-section{margin-top:18pt!important;display:block!important}.experience-grid{display:block}.certificates-section .certificate-cards{display:block!important}.certificates-section .certificate-card{display:block!important;margin-bottom:6pt!important;padding:0!important;border:none!important;background:none!important;page-break-inside:avoid}.certificates-section .certificate-title{font-weight:700!important;font-size:11pt!important;margin:0!important}.certificates-section .certificate-issuer{font-style:italic!important;font-size:10pt!important;margin:0!important}.certificates-section .certificate-date{font-size:10pt!important;margin:0!important}.download-link,.header-actions{display:none!important}}}.skill-rating[data-astro-cid-qzrlpzbj]{color:var(--color-primary);letter-spacing:2px}.skill-card[data-astro-cid-u5aykeor]{transition:border-color .2s ease}.skill-card[data-astro-cid-u5aykeor]:hover{border-color:var(--color-border-hover)}.skill-card-title[data-astro-cid-u5aykeor]{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-md) 0}.skill-list[data-astro-cid-u5aykeor]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.skill-item[data-astro-cid-u5aykeor]{display:flex;align-items:center;justify-content:space-between}.skill-name[data-astro-cid-u5aykeor]{color:var(--color-text-secondary)}@media print{.skill-card[data-astro-cid-u5aykeor]{margin-bottom:6pt}.skill-card-title[data-astro-cid-u5aykeor]{font-weight:700;font-size:12pt;margin:0 0 4pt}.skill-list[data-astro-cid-u5aykeor]{gap:2pt}.skill-item[data-astro-cid-u5aykeor]{font-size:10pt;margin-bottom:2pt}}.project-card[data-astro-cid-mspuyifq]{transition:border-color .2s ease,box-shadow .2s ease}.project-card[data-astro-cid-mspuyifq]:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-md)}.project-title[data-astro-cid-mspuyifq]{font-weight:600;font-size:1.125rem;color:var(--color-text);margin:0 0 var(--spacing-sm) 0}.project-meta[data-astro-cid-mspuyifq]{display:flex;justify-content:space-between;align-items:center;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm)}.period[data-astro-cid-mspuyifq]{font-size:var(--font-size-sm)}.project-description[data-astro-cid-mspuyifq]{color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.description-list[data-astro-cid-mspuyifq]{list-style:disc;padding-left:var(--spacing-lg);margin:0}.description-list[data-astro-cid-mspuyifq] li[data-astro-cid-mspuyifq]{margin-bottom:var(--spacing-xs)}.technologies[data-astro-cid-mspuyifq]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-md)}.tech-tag[data-astro-cid-mspuyifq]{background:var(--color-surface);color:var(--color-text-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:var(--font-size-sm);border:1px solid var(--color-border)}@media print{.project-card[data-astro-cid-mspuyifq]{padding:0 0 15pt;margin-bottom:20pt;border-bottom:.75pt solid var(--color-print-border)}.project-title[data-astro-cid-mspuyifq]{font-weight:700;font-size:12pt;margin:0 0 6pt}.project-meta[data-astro-cid-mspuyifq]{margin-bottom:6pt}.role[data-astro-cid-mspuyifq]{font-size:11pt;font-style:italic}.period[data-astro-cid-mspuyifq]{font-size:10pt}.project-description[data-astro-cid-mspuyifq]{font-size:11pt;margin-bottom:6pt;text-align:justify}.description-list[data-astro-cid-mspuyifq]{margin:0;padding-left:20pt}.description-list[data-astro-cid-mspuyifq] li[data-astro-cid-mspuyifq]{margin-bottom:2pt}.technologies[data-astro-cid-mspuyifq]{margin-top:4pt;font-size:10pt;font-style:italic}.tech-tag[data-astro-cid-mspuyifq]{background:none;border:none;padding:0 10pt 0 0;margin:0;display:inline;font-style:italic}}.language-card[data-astro-cid-mgmjvaxv]{padding:var(--spacing-lg);transition:border-color .2s ease}.language-card[data-astro-cid-mgmjvaxv]:hover{border-color:var(--color-border-hover)}.language-title[data-astro-cid-mgmjvaxv]{font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-sm) 0}.language-skills[data-astro-cid-mgmjvaxv]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.language-skill[data-astro-cid-mgmjvaxv]{display:flex;align-items:center;justify-content:space-between}.skill-label[data-astro-cid-mgmjvaxv]{color:var(--color-text-secondary)}@media print{.language-card[data-astro-cid-mgmjvaxv]{margin-bottom:6pt}.language-title[data-astro-cid-mgmjvaxv]{font-weight:700;font-size:11pt;margin:0 0 4pt}.language-skills[data-astro-cid-mgmjvaxv]{gap:2pt}.language-skill[data-astro-cid-mgmjvaxv]{font-size:10pt}}.certificates-grid[data-astro-cid-iawg447i]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.certificate-card[data-astro-cid-iawg447i]{display:grid;gap:var(--spacing-xs);padding:var(--spacing-md);border-radius:var(--border-radius);border:1px solid var(--color-border);transition:border-color .2s ease}.certificate-card[data-astro-cid-iawg447i]:hover{border-color:var(--color-border-hover)}.certificate-meta[data-astro-cid-iawg447i]{font-size:.75rem;color:var(--color-text-secondary)}.certificate-title[data-astro-cid-iawg447i]{font-weight:600;font-size:.875rem;color:var(--color-text)}@media(min-width:640px){.certificates-grid[data-astro-cid-iawg447i]{grid-template-columns:repeat(2,1fr)}}@media print{.certificates-grid[data-astro-cid-iawg447i]{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);break-inside:avoid}.certificate-card[data-astro-cid-iawg447i]{break-inside:avoid;margin-bottom:4pt}.certificate-meta[data-astro-cid-iawg447i]{color:var(--color-print-border)}}
