.cv-page.svelte-14tzwpa{min-height:100vh;background:#f3f4f6;padding:6rem 1.5rem 3rem}.cv-wrapper.svelte-14tzwpa{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:280px 1fr;background:#fff;border-radius:.75rem;overflow:hidden}@media (max-width: 768px){.cv-wrapper.svelte-14tzwpa{grid-template-columns:1fr}}.shadow-cv.svelte-14tzwpa{box-shadow:0 4px 6px -1px #00000012,0 20px 50px -10px #00000026}.cv-sidebar.svelte-14tzwpa{background:#111827;color:#fff;padding:2.5rem 1.75rem}.photo-wrapper.svelte-14tzwpa{width:160px;height:160px;border-radius:50%;overflow:hidden;margin:0 auto 1.5rem;isolation:isolate;transform:translateZ(0)}.shadow-photo.svelte-14tzwpa{box-shadow:0 4px 20px #0006}.cv-photo.svelte-14tzwpa{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center 25%;object-position:center 25%}.sidebar-name.svelte-14tzwpa{font-size:1.125rem;font-weight:800;text-align:center;line-height:1.25;margin-bottom:.25rem;letter-spacing:-.01em}.sidebar-title.svelte-14tzwpa{font-size:.8125rem;font-weight:500;color:#ffffff8c;text-align:center;letter-spacing:.04em;text-transform:uppercase;margin-bottom:2rem}.sidebar-section.svelte-14tzwpa{margin-bottom:2rem}.sidebar-section-title.svelte-14tzwpa{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#fff6;margin-bottom:.875rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:.5rem}.sidebar-list.svelte-14tzwpa{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.sidebar-list-item.svelte-14tzwpa{display:flex;align-items:flex-start;gap:.625rem;font-size:.8125rem;color:#ffffffbf}.sidebar-icon.svelte-14tzwpa{width:1rem;height:1rem;flex-shrink:0;margin-top:.0625rem;color:#ffffff73}.sidebar-link.svelte-14tzwpa{color:#ffffffbf;text-decoration:none;word-break:break-all}.sidebar-link.svelte-14tzwpa:hover{color:#fff}.sidebar-lang-item.svelte-14tzwpa{display:flex;justify-content:space-between;align-items:center;font-size:.8125rem;margin-bottom:.4rem}.lang-name.svelte-14tzwpa{color:#fffc}.lang-level.svelte-14tzwpa{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff6;background:#ffffff14;padding:.15rem .5rem;border-radius:2rem}.tags-wrap.svelte-14tzwpa{display:flex;flex-wrap:wrap;gap:.4rem}.tag.svelte-14tzwpa{font-size:.6875rem;font-weight:600;color:#ffffffb3;background:#ffffff14;border:1px solid rgba(255,255,255,.12);padding:.2rem .6rem;border-radius:2rem}.sidebar-note.svelte-14tzwpa{font-size:.8125rem;color:#ffffff80;font-style:italic}.cv-main.svelte-14tzwpa{padding:2.5rem 2.5rem 2rem}.cv-section.svelte-14tzwpa{margin-bottom:2.25rem}.cv-section-title.svelte-14tzwpa{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#6b7280;margin-bottom:.5rem}.cv-divider.svelte-14tzwpa{height:2px;background:#111827;margin-bottom:1.25rem;width:2.5rem}.cv-summary.svelte-14tzwpa{font-size:.9375rem;color:#374151;line-height:1.75}.timeline.svelte-14tzwpa{display:flex;flex-direction:column;gap:1.5rem;position:relative}.timeline.svelte-14tzwpa:before{content:"";position:absolute;left:.4375rem;top:.5rem;bottom:0;width:1px;background:#e5e7eb}.timeline-item.svelte-14tzwpa{display:flex;gap:1rem;position:relative}.timeline-dot.svelte-14tzwpa{width:.875rem;height:.875rem;border-radius:50%;background:#111827;flex-shrink:0;margin-top:.25rem;box-shadow:0 0 0 3px #fff,0 0 0 4px #e5e7eb}.timeline-body.svelte-14tzwpa{flex:1;padding-bottom:.5rem}.timeline-header.svelte-14tzwpa{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.timeline-role.svelte-14tzwpa{font-size:.9375rem;font-weight:700;color:#111827}.timeline-company.svelte-14tzwpa{font-size:.8125rem;color:#6b7280;margin-top:.1rem}.timeline-period.svelte-14tzwpa{font-size:.75rem;font-weight:600;color:#fff;background:#111827;padding:.15rem .625rem;border-radius:2rem;white-space:nowrap;flex-shrink:0}.timeline-desc.svelte-14tzwpa{font-size:.8125rem;color:#4b5563;line-height:1.65}.projects-grid.svelte-14tzwpa{display:grid;gap:1rem}@media (min-width: 600px){.projects-grid.svelte-14tzwpa{grid-template-columns:1fr 1fr}}.project-card.svelte-14tzwpa{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.25rem}.shadow-card-sm.svelte-14tzwpa{box-shadow:0 1px 4px #0000000d,0 4px 12px #0000000d}.project-header.svelte-14tzwpa{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.25rem;flex-wrap:wrap}.project-name.svelte-14tzwpa{font-size:.875rem;font-weight:700;color:#111827}.project-client.svelte-14tzwpa{font-size:.75rem;color:#6b7280}.project-period.svelte-14tzwpa{font-size:.6875rem;font-weight:600;color:#6b7280;white-space:nowrap}.project-role.svelte-14tzwpa{font-size:.75rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem}.project-desc.svelte-14tzwpa{font-size:.8125rem;color:#6b7280;line-height:1.6}.edu-list.svelte-14tzwpa{display:flex;flex-direction:column;gap:1rem}.edu-item.svelte-14tzwpa{display:flex;gap:.875rem;align-items:flex-start}.edu-dot.svelte-14tzwpa{width:.5rem;height:.5rem;border-radius:50%;background:#d1d5db;flex-shrink:0;margin-top:.375rem}.edu-body.svelte-14tzwpa{flex:1}.edu-title.svelte-14tzwpa{font-size:.875rem;font-weight:600;color:#111827}.edu-inst.svelte-14tzwpa{font-size:.8125rem;color:#6b7280}.edu-year.svelte-14tzwpa{font-size:.75rem;color:#9ca3af}.back-bar.svelte-14tzwpa{max-width:1100px;margin:1.5rem auto 0}.back-link.svelte-14tzwpa{display:inline-flex;align-items:center;font-size:.875rem;font-weight:600;color:#374151;text-decoration:none;transition:color .15s ease}.back-link.svelte-14tzwpa:hover{color:#111827}@media (max-width: 767px){.cv-page.svelte-14tzwpa{padding:5rem .75rem 2.5rem}.cv-wrapper.svelte-14tzwpa{border-radius:.5rem}.cv-sidebar.svelte-14tzwpa{padding:2rem 1.25rem}.photo-wrapper.svelte-14tzwpa{width:110px;height:110px}.cv-main.svelte-14tzwpa{padding:1.75rem 1.25rem 1.5rem}.timeline-header.svelte-14tzwpa{flex-direction:column;gap:.375rem}.timeline-period.svelte-14tzwpa{align-self:flex-start}.back-bar.svelte-14tzwpa{padding:0 .25rem}}@media (min-width: 768px) and (max-width: 1023px){.cv-page.svelte-14tzwpa{padding:5.5rem 1.25rem 2.5rem}.cv-wrapper.svelte-14tzwpa{grid-template-columns:240px 1fr}.cv-sidebar.svelte-14tzwpa{padding:2rem 1.25rem}.cv-main.svelte-14tzwpa{padding:2rem 1.75rem 1.75rem}}
