@@ -308,10 +308,10 @@ <h2><lottie-player src="/images/skills.json" background="transparent" speed="1"
308308 < img src ="/images/companies/logo-loja-do-sapo.svg " alt ="Loja do Sapo " width ="4997 " height ="3465 " loading ="lazy " decoding ="async " />
309309 < div class ="experience-title-date ">
310310 < div class ="experience-title ">
311- < b > Solutions Architect (Backend / Integration Focus)</ b > Loja do Sapo
311+ < b > Solutions Architect (Backend / Integration Focus)</ b > - Loja do Sapo
312312 </ div >
313313 < div class ="experience-date ">
314- < i > April 2026 Present</ i >
314+ < i > April 2026 - Present</ i >
315315 </ div >
316316 </ div >
317317 </ div >
@@ -328,10 +328,10 @@ <h2><lottie-player src="/images/skills.json" background="transparent" speed="1"
328328 < div class ="experience-header no-logo ">
329329 < div class ="experience-title-date ">
330330 < div class ="experience-title ">
331- < b > Software Engineer (Backend & Automation)</ b > Loja do Sapo
331+ < b > Software Engineer (Backend & Automation)</ b > - Loja do Sapo
332332 </ div >
333333 < div class ="experience-date ">
334- < i > September 2025 March 2026</ i >
334+ < i > September 2025 - March 2026</ i >
335335 </ div >
336336 </ div >
337337 </ div >
@@ -348,10 +348,10 @@ <h2><lottie-player src="/images/skills.json" background="transparent" speed="1"
348348 < div class ="experience-header no-logo ">
349349 < div class ="experience-title-date ">
350350 < div class ="experience-title ">
351- < b > Software Developer (Data & Workflows)</ b > Loja do Sapo
351+ < b > Software Developer (Data & Workflows)</ b > - Loja do Sapo
352352 </ div >
353353 < div class ="experience-date ">
354- < i > October 2024 August 2025</ i >
354+ < i > October 2024 - August 2025</ i >
355355 </ div >
356356 </ div >
357357 </ div >
@@ -368,10 +368,10 @@ <h2><lottie-player src="/images/skills.json" background="transparent" speed="1"
368368 < img src ="/images/companies/logo-icaiu.svg " alt ="iCaiu " width ="360 " height ="118 " loading ="lazy " decoding ="async " />
369369 < div class ="experience-title-date ">
370370 < div class ="experience-title ">
371- < b > Systems Integration Architect</ b > iCaiu
371+ < b > Systems Integration Architect</ b > - iCaiu
372372 </ div >
373373 < div class ="experience-date ">
374- < i > December 2025 Present</ i >
374+ < i > December 2025 - Present</ i >
375375 </ div >
376376 </ div >
377377 </ div >
@@ -388,10 +388,10 @@ <h2><lottie-player src="/images/skills.json" background="transparent" speed="1"
388388 < div class ="experience-header no-logo ">
389389 < div class ="experience-title-date ">
390390 < div class ="experience-title ">
391- < b > Software Engineer (Systems Integration)</ b > iCaiu
391+ < b > Software Engineer (Systems Integration)</ b > - iCaiu
392392 </ div >
393393 < div class ="experience-date ">
394- < i > March 2025 November 2025</ i >
394+ < i > March 2025 - November 2025</ i >
395395 </ div >
396396 </ div >
397397 </ div >
@@ -402,16 +402,16 @@ <h2><lottie-player src="/images/skills.json" background="transparent" speed="1"
402402 </ ul >
403403 </ div >
404404
405- <!-- WR Auto Peças -->
405+ <!-- WR Auto Pecas -->
406406 < div class ="experience-item ">
407407 < div class ="experience-header ">
408- < img src ="/images/companies/logo-wr.svg " alt ="WR Auto Peças " width ="868 " height ="570 " loading ="lazy " decoding ="async " />
408+ < img src ="/images/companies/logo-wr.svg " alt ="WR Auto Pecas " width ="868 " height ="570 " loading ="lazy " decoding ="async " />
409409 < div class ="experience-title-date ">
410410 < div class ="experience-title ">
411- < b > Operations & Tech Support Specialist</ b > WR Auto Peças
411+ < b > Operations & Tech Support Specialist</ b > - WR Auto Pecas
412412 </ div >
413413 < div class ="experience-date ">
414- < i > November 2015 February 2026</ i >
414+ < i > November 2015 - February 2026</ i >
415415 </ div >
416416 </ div >
417417 </ div >
@@ -529,21 +529,21 @@ <h2><lottie-player src="/images/link.json" background="transparent" speed="1" cl
529529 < a href ="https://github.com/PkLavc " target ="_blank " rel ="noopener noreferrer "> < lottie-player src ="/images/github.json " background ="transparent " speed ="1 " class ="contact-item-icon " loop autoplay title ="Patrick Araujo - GitHub Portfolio and Open Source Projects "> </ lottie-player > </ a >
530530 < span class ="contact-value " data-href ="https://github.com/PkLavc "> PkLavc</ span >
531531 < button class ="copy-btn " type ="button " data-copy ="https://github.com/PkLavc " title ="Copy to clipboard " aria-label ="Copy GitHub profile URL to clipboard ">
532- ?? < span > copy</ span >
532+ < lottie-player src =" /images/copy.json " background =" transparent " speed =" 0.55 " class =" copy-btn-icon " loop autoplay aria-hidden =" true " > </ lottie-player > < span > copy</ span >
533533 </ button >
534534 </ div >
535535 < div class ="contact-item ">
536536 < a href ="https://www.linkedin.com/in/patrickajm/ " target ="_blank " rel ="noopener noreferrer "> < lottie-player src ="/images/linkedin.json " background ="transparent " speed ="1 " class ="contact-item-icon " loop autoplay title ="Patrick Araujo - Professional LinkedIn Profile "> </ lottie-player > </ a >
537537 < span class ="contact-value " data-href ="https://www.linkedin.com/in/patrickajm/ "> patrickajm</ span >
538538 < button class ="copy-btn " type ="button " data-copy ="https://www.linkedin.com/in/patrickajm/ " title ="Copy to clipboard " aria-label ="Copy LinkedIn profile URL to clipboard ">
539- ?? < span > copy</ span >
539+ < lottie-player src =" /images/copy.json " background =" transparent " speed =" 0.55 " class =" copy-btn-icon " loop autoplay aria-hidden =" true " > </ lottie-player > < span > copy</ span >
540540 </ button >
541541 </ div >
542542 < div class ="contact-item ">
543543 < a href ="mailto:patrickajm@gmail.com " target ="_blank " rel ="noopener noreferrer "> < lottie-player src ="/images/mail.json " background ="transparent " speed ="1 " class ="contact-item-icon " loop autoplay title ="Contact Patrick Araujo via Email "> </ lottie-player > </ a >
544544 < span class ="contact-value " data-href ="mailto:patrickajm@gmail.com "> patrickajm@gmail.com</ span >
545545 < button class ="copy-btn " type ="button " data-copy ="patrickajm@gmail.com " title ="Copy to clipboard " aria-label ="Copy email address to clipboard ">
546- ?? < span > copy</ span >
546+ < lottie-player src =" /images/copy.json " background =" transparent " speed =" 0.55 " class =" copy-btn-icon " loop autoplay aria-hidden =" true " > </ lottie-player > < span > copy</ span >
547547 </ button >
548548 </ div >
549549 </ div >
@@ -653,6 +653,14 @@ <h2><lottie-player src="/images/link.json" background="transparent" speed="1" cl
653653 }
654654
655655 function setupContacts ( ) {
656+ function copyButtonMarkup ( state ) {
657+ if ( state === 'copied' ) {
658+ return '<lottie-player src="/images/copied.json" background="transparent" speed="1" class="copy-btn-icon" loop autoplay aria-hidden="true"></lottie-player><span>copied</span>' ;
659+ }
660+
661+ return '<lottie-player src="/images/copy.json" background="transparent" speed="0.55" class="copy-btn-icon" loop autoplay aria-hidden="true"></lottie-player><span>copy</span>' ;
662+ }
663+
656664 document . querySelectorAll ( '.contact-value' ) . forEach ( function ( span ) {
657665 span . addEventListener ( 'click' , function ( ) {
658666 const href = span . getAttribute ( 'data-href' ) ;
@@ -670,7 +678,7 @@ <h2><lottie-player src="/images/link.json" background="transparent" speed="1" cl
670678
671679 navigator . clipboard . writeText ( textToCopy ) . then ( function ( ) {
672680 button . classList . add ( 'copied' ) ;
673- button . innerHTML = '? <span> copied</span>' ;
681+ button . innerHTML = copyButtonMarkup ( ' copied' ) ;
674682
675683 window . setTimeout ( function ( ) {
676684 button . classList . remove ( 'copied' ) ;
0 commit comments