.profile-actions{margin-top:28px}.button-blue{background:var(--blue);color:white}.button-blue:hover{background:#125998}
.deliverables-art{position:absolute;width:max(100%,1100px);aspect-ratio:1815/510;left:50%;top:50%;transform:translate(-50%,-50%);overflow:hidden;pointer-events:none;opacity:.58}.deliverables-art img{width:100%;max-width:none;height:auto}.deliverables-section:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(11,31,58,.92) 0%,rgba(11,31,58,.65) 45%,rgba(11,31,58,.84) 100%)}.deliverables-grid{position:relative;z-index:1}.deliverables-section .section-intro,.deliverables-section .deliverable-list p{color:#D5E5F1}
.cv-page{background:#F5F8FB}.cv-hero{background:var(--navy);color:var(--ice);padding:68px 0 75px}.cv-hero-grid{display:grid;grid-template-columns:1fr 290px;gap:95px;align-items:center}.cv-back{display:inline-block;color:#C0D4E7;font-size:12px;margin-bottom:28px}.cv-back:hover{color:var(--cyan)}.cv-hero h1{font-size:clamp(44px,5vw,68px);font-weight:650;color:white;margin-bottom:26px}.cv-hero h1 span{display:block;font-size:22px;letter-spacing:-.02em;color:var(--cyan);margin-top:13px;font-weight:500}.cv-profile{max-width:770px;color:#C2D5E5;font-size:16px;line-height:1.8}.cv-profile strong{color:white;font-weight:650}.cv-hero-meta{display:flex;flex-wrap:wrap;gap:8px 25px;font-size:12px;color:#B5CDDF;margin:24px 0 26px}.cv-hero-actions{display:flex;flex-wrap:wrap;gap:14px}.cv-photo-card{border:1px solid rgba(37,201,220,.3);padding:12px;border-radius:22px;background:rgba(234,242,248,.06)}.cv-portrait{width:100%;height:auto;border-radius:14px;background:#fff}.cv-photo-caption{padding:19px 4px 8px;display:flex;align-items:center;gap:17px}.cv-photo-caption strong{color:var(--cyan);font-size:30px;letter-spacing:-.035em;line-height:1}.cv-photo-caption span{color:#C1D5E6;font-size:11px;line-height:1.5;max-width:100px}.cv-layout{display:grid;grid-template-columns:255px minmax(0,1fr);gap:65px;padding-top:70px;padding-bottom:80px;align-items:start}.cv-sidebar{position:sticky;top:115px;align-self:start}.cv-side-section{padding:25px 22px;background:white;border:1px solid var(--line);border-radius:16px;margin-bottom:20px}.cv-side-section .eyebrow{font-size:9px;letter-spacing:.07em;margin-bottom:13px}.cv-side-section h2{font-size:21px;margin-bottom:20px;letter-spacing:-.025em}.cv-languages{margin:0;font-size:13px}.cv-languages>div{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.cv-languages>div:last-child{border-bottom:0;padding-bottom:0}.cv-languages dt{font-weight:600}.cv-languages dd{margin:0;color:var(--blue);font-size:12px;background:var(--ice);border-radius:5px;padding:2px 9px}.cv-apps{list-style:none;padding:0;margin:0;display:grid;gap:20px}.cv-app{display:flex;gap:12px;align-items:center}.cv-app>div{min-width:0;flex:1}.cv-app-icon{width:26px;height:26px;object-fit:contain}.cv-app-name{font-weight:600;font-size:12px;line-height:1.4;margin-bottom:7px}.cv-meter{display:block;width:100%;height:8px;border:0;border-radius:5px;overflow:hidden;background:#E2EAF2;appearance:none;-webkit-appearance:none}.cv-meter::-webkit-meter-bar{background:#E2EAF2;border:0;border-radius:5px;box-shadow:none;height:8px}.cv-meter::-webkit-meter-optimum-value{background:linear-gradient(90deg,var(--blue),var(--cyan));border-radius:5px}.cv-meter::-moz-meter-bar{background:linear-gradient(90deg,var(--blue),var(--cyan));border-radius:5px}.cv-meter-note{font-size:10px;color:var(--muted);line-height:1.7;margin:18px 0 0}.cv-side-link{display:flex;gap:10px;align-items:center;justify-content:center;font-weight:600;font-size:12px;color:var(--blue);padding:10px}.cv-side-link .icon{width:18px;height:18px}.cv-main{min-width:0}.cv-section{margin-bottom:64px;scroll-margin-top:110px}.cv-section:last-child{margin-bottom:0}.cv-section-heading{margin-bottom:26px}.cv-section-heading h2{font-size:34px;margin-bottom:15px}.cv-section-heading p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.8;max-width:720px}.cv-section-heading .eyebrow{margin-bottom:14px}.cv-section-heading .text-link{font-size:12px}.cv-timeline{position:relative;padding-left:30px}.cv-timeline:before{content:"";position:absolute;left:5px;top:10px;bottom:15px;width:1px;background:#C4D6E6}.cv-job{position:relative;padding:0 0 32px;margin:0 0 27px;border-bottom:1px solid var(--line)}.cv-job:last-child{border-bottom:0;margin:0;padding-bottom:0}.cv-job:before{content:"";width:11px;height:11px;position:absolute;left:-30px;top:7px;background:var(--blue);border-radius:50%;outline:5px solid #F5F8FB}.cv-job:first-child:before{background:var(--cyan)}.cv-job-head{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:19px}.cv-job h3{font-size:21px;letter-spacing:-.025em;margin:0 0 5px}.cv-job-dates{color:var(--blue);font-weight:600;font-size:11px;margin-bottom:7px}.cv-location{font-size:11px;color:var(--muted);margin-bottom:0}.cv-current{background:#DFF5F5;color:#0B5765;flex:none;border-radius:5px;font-size:10px;padding:3px 9px}.cv-role+.cv-role{margin-top:22px}.cv-role h4{font-size:14px;font-weight:650;line-height:1.45;margin:0 0 10px}.cv-role ul{padding-left:17px;margin:0;color:var(--muted);font-size:13px;line-height:1.8}.cv-role li+li{margin-top:7px}.cv-technologies{display:grid;grid-template-columns:1fr 1fr;gap:14px;list-style:none;margin:0;padding:0}.cv-tech{display:flex;align-items:flex-start;gap:15px;background:white;padding:20px;border:1px solid var(--line);border-radius:13px;min-width:0}.cv-tech-logo{width:45px;height:45px;object-fit:contain;flex:none}.cv-logo-wide{width:75px;height:40px}.cv-tech h3{font-size:14px;letter-spacing:-.015em;line-height:1.4;margin-bottom:7px}.cv-tech p{font-size:11px;color:var(--muted);line-height:1.75;margin:0}.cv-cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cv-certificate{padding:22px 14px;background:white;border:1px solid var(--line);border-radius:13px;text-align:center;min-width:0}.cv-certificate-expert{border-top:3px solid var(--blue);padding-top:20px}.cv-cert-image{width:92px;height:92px;object-fit:contain;margin:0 auto 14px}.cv-cert-code{font-weight:700;font-size:11px;color:var(--blue);letter-spacing:.06em;margin-bottom:7px}.cv-certificate h3{font-size:12px;line-height:1.5;letter-spacing:0;margin:0;font-weight:600}.cv-other-credentials{margin-top:20px;padding:18px 21px;border-left:3px solid var(--blue);background:#EAF2F8;font-size:12px;color:var(--muted)}.cv-other-credentials p{margin:0;line-height:1.8}.cv-other-credentials p+p{margin-top:9px}.cv-other-credentials strong{color:var(--ink)}.cv-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cv-project{padding:22px;background:white;border:1px solid var(--line);border-radius:13px}.cv-project-meta{display:flex;gap:8px;align-items:center;margin-bottom:14px;color:var(--muted);font-size:10px;line-height:1.5}.cv-flag{width:21px;height:14px;object-fit:contain;flex:none}.cv-project h3{font-size:16px;line-height:1.4;letter-spacing:-.02em;margin-bottom:10px}.cv-project p{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:0}.cv-education{list-style:none;margin:0;padding:0}.cv-education li{display:flex;gap:24px;padding:19px 0;border-bottom:1px solid var(--line)}.cv-education li:first-child{padding-top:0}.cv-education li:last-child{border-bottom:0;padding-bottom:0}.cv-education li>span{font-size:11px;font-weight:700;color:var(--blue);margin-top:2px;min-width:36px}.cv-education h3{font-size:15px;line-height:1.5;margin:0}.cv-education p{font-size:12px;color:var(--muted);margin:5px 0 0}.cv-soft-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;list-style:none;padding:0;margin:0}.cv-soft-skills li{display:flex;gap:15px;align-items:center;background:white;padding:16px 18px;border-radius:10px;border:1px solid var(--line);font-size:12px;font-weight:600}.cv-soft-skills .icon{color:var(--blue);width:23px;height:23px}.cv-academia article{padding:20px 0;border-bottom:1px solid var(--line)}.cv-academia article:first-of-type{padding-top:0}.cv-academia article:last-child{border-bottom:0;padding-bottom:0}.cv-academia h3{font-size:15px;line-height:1.5;margin-bottom:8px}.cv-academia p{font-size:12px;color:var(--muted);margin-bottom:10px}.cv-academia .text-link{font-size:12px}.cv-page .back-top{display:flex;gap:9px;align-items:center}.cv-page .back-top .icon{width:18px;height:18px}
@media(max-width:1120px){.cv-hero-grid{gap:55px;grid-template-columns:1fr 255px}.cv-layout{grid-template-columns:230px minmax(0,1fr);gap:36px}.cv-tech{padding:17px;gap:11px}.cv-tech-logo{width:36px;height:36px}.cv-logo-wide{width:62px}.cv-cert-image{width:80px;height:80px}}
@media(max-width:920px){.cv-hero-grid{gap:35px;grid-template-columns:1fr 220px}.cv-hero{padding:45px 0 55px}.cv-hero h1{font-size:48px}.cv-hero h1 span{font-size:19px}.cv-profile{font-size:14px}.cv-hero-actions .button{font-size:12px;padding:13px 17px}.cv-layout{grid-template-columns:1fr;padding-top:45px;gap:45px}.cv-sidebar{position:static;display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.cv-side-section{margin:0}.cv-side-link{grid-column:1/-1;justify-self:start}.cv-apps{grid-template-columns:1fr 1fr;gap:16px}.cv-side-section h2{margin-bottom:20px}.cv-cert-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cv-cert-image{width:92px;height:92px}.cv-section{margin-bottom:50px}.cv-section-heading h2{font-size:32px}}
@media(max-width:620px){.cv-hero{padding:35px 0 40px}.cv-hero-grid{grid-template-columns:1fr;gap:30px}.cv-hero h1{font-size:44px}.cv-hero h1 span{font-size:19px;line-height:1.3}.cv-back{margin-bottom:23px}.cv-hero-meta{font-size:11px;gap:7px 18px}.cv-hero-actions{gap:11px}.cv-hero-actions .button{padding:13px 17px;min-height:47px}.cv-photo-card{width:205px;justify-self:center;border-radius:16px;padding:9px}.cv-photo-caption{padding:15px 2px 5px;gap:13px}.cv-photo-caption strong{font-size:26px}.cv-photo-caption span{font-size:10px}.cv-layout{padding-top:35px;padding-bottom:55px;gap:38px}.cv-sidebar{grid-template-columns:1fr;gap:15px}.cv-side-section{padding:23px}.cv-apps{gap:20px 25px}.cv-side-link{grid-column:1}.cv-section-heading h2{font-size:30px}.cv-section-heading p:not(.eyebrow){font-size:12px}.cv-section{scroll-margin-top:98px;margin-bottom:44px}.cv-timeline{padding-left:23px}.cv-timeline:before{left:4px}.cv-job:before{left:-23px;width:9px;height:9px}.cv-job-head{gap:10px}.cv-job h3{font-size:19px}.cv-job-dates{font-size:10px}.cv-role h4{font-size:13px}.cv-role ul{font-size:12px}.cv-technologies{grid-template-columns:1fr;gap:12px}.cv-tech{padding:20px;gap:15px}.cv-tech-logo{width:43px;height:43px}.cv-logo-wide{width:75px}.cv-tech h3{font-size:14px}.cv-tech p{font-size:12px}.cv-cert-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.cv-certificate{padding:19px 12px}.cv-certificate-expert{padding-top:17px}.cv-cert-image{width:82px;height:82px}.cv-certificate h3{font-size:11px}.cv-other-credentials{padding:17px;font-size:11px}.cv-project-grid{grid-template-columns:1fr;gap:13px}.cv-project{padding:20px}.cv-project-meta{font-size:10px}.cv-education li{gap:17px}.cv-education h3{font-size:13px}.cv-soft-skills{gap:10px}.cv-soft-skills li{gap:10px;padding:14px 12px;font-size:11px;line-height:1.5}.cv-soft-skills .icon{width:20px;height:20px}.profile-actions .button{font-size:13px}.cv-meter-note{font-size:10px}}
@media(max-width:360px){.cv-apps{grid-template-columns:1fr}.cv-hero-actions{flex-direction:column;align-items:flex-start}.cv-soft-skills{grid-template-columns:1fr}.cv-current{display:none}}
@media print{.site-header,.cv-back,.cv-hero-actions,.cv-side-link,.whatsapp-floating,.contact-section,.site-footer{display:none}.cv-hero{background:white;color:var(--ink);padding:0 0 20px}.cv-hero h1,.cv-profile,.cv-profile strong,.cv-hero-meta{color:var(--ink)}.cv-hero-grid{grid-template-columns:1fr 150px;gap:30px}.cv-hero h1{font-size:32px}.cv-photo-caption{display:none}.cv-layout{display:block;padding:20px 0}.cv-sidebar{display:grid;grid-template-columns:1fr 1fr;position:static;gap:20px;margin-bottom:30px}.container{width:100%}.cv-job,.cv-certificate,.cv-project,.cv-tech,.cv-education li{break-inside:avoid}.cv-section{margin-bottom:30px}.cv-main{font-size:11px}.cv-page{background:white}.cv-cert-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
