.cv-page{background:var(--bg-light)}.cv-hero{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--primary-color) 100%);color:#fff;padding:40px 0 36px}.cv-hero .cv-hero-inner{display:flex;flex-wrap:wrap;align-items:center;gap:24px 32px}.cv-hero .cv-photo{flex:0 0 auto;width:140px;height:140px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.35);box-shadow:var(--shadow-md)}.cv-hero .cv-hero-text{flex:1 1 260px;min-width:0}.cv-hero h1{color:#fff;font-size:2.25rem;margin-bottom:.35rem}.cv-hero .cv-role{color:var(--accent-color);font-size:1.125rem;font-weight:500;margin-bottom:12px}.cv-hero .cv-contact{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.95rem}.cv-hero .cv-contact a{color:#fff;text-decoration:underline;text-underline-offset:2px}.cv-hero .cv-contact a:hover{color:var(--accent-color)}.cv-body{padding:36px 0 48px}.cv-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.85fr);gap:28px 36px;align-items:start}.cv-panel{background:var(--bg-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:22px 24px;border:1px solid #e5e7eb}.cv-panel+.cv-panel{margin-top:20px}.cv-panel h2{font-size:1.125rem;margin-bottom:14px;padding-bottom:8px;border-bottom:2px solid var(--accent-color);color:var(--secondary-color)}.cv-panel ul{margin:0;padding-left:1.15rem}.cv-panel ul li{margin-bottom:6px}.cv-courses li{margin-bottom:10px;list-style:none;padding-left:0}.cv-courses .year{font-weight:700;color:var(--primary-color)}.cv-summary{margin:0 0 24px;text-align:justify}.cv-main>.cv-jobs{margin-top:32px}.cv-jobs h2{font-size:1.35rem;margin-top:0;margin-bottom:18px;padding-bottom:8px;border-bottom:2px solid var(--accent-color);color:var(--secondary-color)}.cv-job{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid #e5e7eb}.cv-job:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.cv-job h3{font-size:1.05rem;margin-bottom:4px;color:var(--heading-color)}.cv-job .cv-dates{font-weight:700;color:var(--primary-color);margin-bottom:8px;font-size:.95rem}.cv-job .cv-intro{margin-bottom:8px}.cv-job .cv-key-label{font-weight:700;margin:8px 0 6px}@media(max-width:991px){.cv-grid{grid-template-columns:1fr}.cv-hero h1{font-size:1.85rem}}@media print{.header-top,.header,.bg-primary,#site-footer-root,#site-whatsapp-root,.tiny-footer{display:none!important}.cv-page{background:#fff}.cv-hero{-webkit-print-color-adjust:exact;print-color-adjust:exact}.cv-panel{box-shadow:none;border:1px solid #ddd;break-inside:avoid}}
