.content-card-container[data-v-679af3fa]{padding:10rem 0 0;display:block}.content-card-container.content-card-container-top[data-v-679af3fa]{padding-top:unset}.content-card-container .content-card[data-v-679af3fa]{background-color:var(--color-secondary);width:100%;min-height:18rem;padding:4rem 1rem 1rem;position:relative;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.content-card-container .content-card.no-background[data-v-679af3fa]{padding:4rem 0 0}.content-card-container .content-card.content-top[data-v-679af3fa]{padding:unset}.content-card-container .content-card .image[data-v-679af3fa]{z-index:10;background-position:50%;background-size:cover;width:200px;height:200px;position:absolute;top:-10rem;left:50%;transform:translate(-50%)}.content-card-container .content-card .image-top[data-v-679af3fa]{display:none}.content-card-container .content-card .content[data-v-679af3fa]{gap:1rem;display:grid}.content-card-container .content-card .content .title[data-v-679af3fa]{color:var(--color-gray);align-items:center;gap:1rem;font-size:1.5rem;display:flex}.content-card-container .content-card .content .title .text[data-v-679af3fa]{font-size:inherit;font-weight:inherit;margin:0}.content-card-container .content-card .content .title .icon[data-v-679af3fa]{align-items:start;height:100%;display:flex}.content-card-container .content-card .content .content-container[data-v-679af3fa]{color:var(--color-gray);font-family:Nunito Sans,sans-serif;font-size:1rem;line-height:2.5rem}.content-card-container .content-card.no-background[data-v-679af3fa]{background-color:unset!important;box-shadow:unset!important}.content-card-container .content-card.no-background .content .content-container[data-v-679af3fa],.content-card-container .content-card.no-background .content .title[data-v-679af3fa]{color:var(--color-secondary)!important}@media (width>=1024px){.content-card-container[data-v-679af3fa]{padding:unset!important}.content-card-container.content-card-container-top[data-v-679af3fa]{margin-top:unset}.content-card-container .content-card[data-v-679af3fa]{--card-image-size:16rem;max-width:calc(100% - 14rem);margin:auto}.content-card-container .content-card .image[data-v-679af3fa]{width:var(--card-image-size);height:var(--card-image-size);top:50%!important;transform:translateY(-50%)!important}.content-card-container .content-card .title[data-v-679af3fa]{font-size:1.75rem}.content-card-container .content-card.content-left[data-v-679af3fa]{padding:2rem 2rem 2rem calc(var(--card-image-size) + 2rem)!important}.content-card-container .content-card .image-left[data-v-679af3fa]{left:0!important}.content-card-container .content-card.content-right[data-v-679af3fa]{padding:2rem calc(var(--card-image-size) + 2rem) 2rem 2rem!important}.content-card-container .content-card.content-top[data-v-679af3fa]{padding:unset}.content-card-container .content-card .image-right[data-v-679af3fa]{left:unset;right:0!important}.content-card-container .content-card .image-top[data-v-679af3fa]{display:none;left:50%!important;right:unset!important;top:-7rem!important;transform:translate(-50%)!important}.content-card-container .content-card .content .content-container[data-v-679af3fa]{font-size:1.25rem;line-height:2.5rem}}@media (width>=1440px){.content-card-container[data-v-679af3fa]{padding:unset!important}.content-card-container .content-card[data-v-679af3fa]{max-width:1120px}}.progress-container{display:block}.progress-container .label{font-size:1rem;line-height:1.75rem}.progress-container .label .mark{color:var(--color-primary)}.progress-container .progress-bar-container{background-color:var(--color-gray-light);width:100%;height:1.5rem}.progress-container .progress-bar-container .progress-bar{color:var(--color-white);background-color:var(--color-secondary);justify-content:center;align-items:center;height:1.5rem;font-size:1rem;line-height:1.5rem;transition:background-color .18s;display:flex}.progress-container.is-highlighted .progress-bar-container .progress-bar{background-color:var(--color-primary)}@media (width>=1024px){.progress-container .label{font-size:1.25rem;line-height:2.5rem}}.concept-card[data-v-8f7db695]{color:var(--color-secondary);cursor:pointer;place-content:start center;gap:5px;padding:1.5rem;transition:all .2s ease-in-out;display:grid}.concept-card .icon-container[data-v-8f7db695]{justify-content:center;align-items:center;width:200px;height:150px;margin:auto;display:flex;position:relative}.concept-card .icon-container i[data-v-8f7db695],.concept-card .icon-container svg[data-v-8f7db695]{color:var(--color-secondary);font-size:5rem}.concept-card .title[data-v-8f7db695]{color:var(--color-secondary);text-align:center;justify-content:center;font-family:Tenor Sans,sans-serif;font-size:1rem;line-height:2.5rem}@media (width>=600px){.concept-card .icon-container[data-v-8f7db695]{width:100px;height:64px}.concept-card .icon-container i[data-v-8f7db695],.concept-card .icon-container svg[data-v-8f7db695]{font-size:3rem}}@media (width>=768px){.concept-card .icon-container[data-v-8f7db695]{width:100px;height:80px}.concept-card .icon-container i[data-v-8f7db695],.concept-card .icon-container svg[data-v-8f7db695]{font-size:6rem}}@media (width>=1024px){.concept-card .title[data-v-8f7db695]{font-size:1.25rem!important}}.concept-card .icon-container i,.concept-card .icon-container svg{font-size:5rem}.reference{background-color:var(--color-secondary);color:var(--color-gray);display:block;position:relative;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.reference .reference-content{z-index:5;gap:1rem;padding:1rem 1rem 15rem;display:grid;position:relative}.reference .number{color:var(--color-secondary-light);opacity:.4;z-index:3;text-align:right;vertical-align:top;width:100%;height:20rem;font-size:19rem;font-weight:800;line-height:20rem;position:absolute;top:-1rem;right:0}.reference .rating-container{color:var(--color-gray);height:100%;font-family:Nunito Sans,sans-serif;font-size:1rem;line-height:2.5rem}.reference .company-container{align-items:center;gap:1rem;width:100%;margin:auto;display:grid}.reference .company-container .logo{background-position:50%;background-repeat:no-repeat;background-size:90px;align-items:center;width:90px;height:90px;margin:auto;display:flex}.reference .company-container .author-container .company-name{text-align:center;color:var(--color-gray);font-size:1.5rem}.reference .bottom-container{z-index:10;gap:1rem;width:100%;padding:1rem;display:grid;position:absolute;bottom:0}.reference .bottom-container .city-container{color:var(--color-gray);font-size:1rem;line-height:2.5rem}.reference .bottom-container .card-footer{gap:1rem;display:grid}.reference .bottom-container .card-footer .social-container{order:2;justify-content:space-between;gap:1rem;width:100%;max-width:100%;margin-top:auto;font-size:1.75rem;display:flex}.reference .bottom-container .card-footer .social-container div,.reference .bottom-container .card-footer .social-container a{text-align:center;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.reference .bottom-container .card-footer .social-container div i,.reference .bottom-container .card-footer .social-container div svg,.reference .bottom-container .card-footer .social-container a i,.reference .bottom-container .card-footer .social-container a svg{font-size:1.75rem;top:50%;left:50%;transform:translate(-50%,-50%)}.reference .bottom-container .card-footer .social-container div.disabled,.reference .bottom-container .card-footer .social-container a.disabled{background-color:var(--color-gray);box-shadow:#2d234266 0 4px 8px, #2d23424d 0 7px 13px -3px, var(--color-gray-dark) 0 -3px 0 inset}.reference .bottom-container .card-footer .experience-container{order:1;justify-content:flex-start;align-items:center;width:100%;max-width:8rem;font-size:1rem;display:flex}@media (width>=425px){.reference .company-container{grid-template-columns:90px 1fr}.reference .company-container .company-name{text-align:left!important}}@media (width>=768px){.reference .reference-content{padding:1rem 1rem 13rem!important}.bottom-container .card-footer{display:flex!important}.bottom-container .card-footer .social-container{gap:unset;order:1!important;max-width:19rem!important}.bottom-container .card-footer .experience-container{margin-left:auto;order:2!important;justify-content:flex-end!important}.bottom-container .card-footer a{width:50px!important}}@media (width>=1024px){.reference{margin:auto}.reference .reference-content{padding:2rem 2rem 13rem!important}.reference .reference-content .rating-container{font-size:1.25rem}.bottom-container{padding:2rem!important}.bottom-container .city-container,.bottom-container .card-footer .experience-container{font-size:1.25rem!important}}@media (width>=1290px){.reference{width:unset;margin:unset}}.border-glow-card[data-v-36b7ecac]{isolation:isolate;display:grid;position:relative}.border-glow-card .glow-border[data-v-36b7ecac],.border-glow-card .glow-fill[data-v-36b7ecac]{z-index:-1;pointer-events:none;border:1px solid #0000;position:absolute;inset:0}.border-glow-card .glow-content[data-v-36b7ecac]{z-index:1;gap:inherit;display:grid;position:relative}.tech-marks[data-v-5c361304]{pointer-events:none;position:absolute}@media (prefers-reduced-motion:reduce){.tech-marks[data-v-5c361304]{display:none}}.career-step[data-v-adc6b9fc]{min-width:0;padding-left:2.5rem;position:relative}.career-step .dot[data-v-adc6b9fc]{background-color:var(--color-secondary);width:16px;height:16px;box-shadow:0 0 0 4px var(--color-off-white);z-index:5;border-radius:50%;position:absolute;top:1.25rem;left:0}.career-step .dot.current[data-v-adc6b9fc]{background-color:var(--color-primary)}.career-step .step-card[data-v-adc6b9fc]{z-index:10;background-color:var(--color-secondary);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;gap:.5rem;padding:1rem;display:grid;position:relative;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.career-step .step-card .period[data-v-adc6b9fc]{letter-spacing:.1em;text-transform:uppercase;color:var(--color-gray);font-family:Tenor Sans,sans-serif;font-size:.875rem}.career-step .step-card .period .sparkle[data-v-adc6b9fc]{color:var(--color-primary)}.career-step .step-card .job-title[data-v-adc6b9fc]{font-family:Tenor Sans,sans-serif;font-weight:inherit;color:var(--color-gray);margin:0;font-size:1.5rem}.career-step .step-card .company[data-v-adc6b9fc]{color:var(--color-gray);font-family:Nunito Sans,sans-serif;font-size:1rem}.career-step .step-card .step-tags[data-v-adc6b9fc]{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.career-step .step-card .step-tag[data-v-adc6b9fc]{letter-spacing:.14em;text-transform:uppercase;text-indent:.14em;border:1px solid;flex:none;padding:.3125rem .5rem;font-family:Tenor Sans,sans-serif;font-size:.6875rem;line-height:1}.career-step .step-card .step-tag-neutral[data-v-adc6b9fc]{--tag-line-hover:var(--color-gray);--tag-ink-hover:var(--color-gray-light);border-color:var(--color-gray-dark);color:var(--color-gray)}.career-step .step-card .step-tag-success[data-v-adc6b9fc]{--tag-line-hover:var(--color-success-light);--tag-ink-hover:var(--color-success-very-light);border-color:var(--color-success);color:var(--color-success-very-light)}.career-step .step-card .step-tag-link[data-v-adc6b9fc]{text-decoration:none;transition:border-color .18s,color .18s;position:relative}.career-step .step-card .step-tag-link[data-v-adc6b9fc]:after{content:"";position:absolute;inset:-.25rem 0}.career-step .step-card .step-tag-link[data-v-adc6b9fc]:focus-visible{border-color:var(--tag-line-hover);color:var(--tag-ink-hover);outline:2px solid var(--color-gray-light);outline-offset:2px}.career-step .step-card .step-tag-link:focus-visible .tag-arrow[data-v-adc6b9fc]{translate:1px -1px}@media (hover:hover){.career-step .step-card .step-tag-link[data-v-adc6b9fc]:hover{border-color:var(--tag-line-hover);color:var(--tag-ink-hover)}.career-step .step-card .step-tag-link:hover .tag-arrow[data-v-adc6b9fc]{translate:1px -1px}}.career-step .step-card .tag-arrow[data-v-adc6b9fc]{vertical-align:calc(.5cap - .5em);width:1.25em;height:1.25em;margin-block:-.125em}@media (prefers-reduced-motion:no-preference){.career-step .step-card .tag-arrow[data-v-adc6b9fc]{transition:translate .18s}}.career-step .step-card .description[data-v-adc6b9fc]{color:var(--color-gray);font-family:Nunito Sans,sans-serif;font-size:1rem;line-height:2.5rem}.career-step .step-card.marked-step[data-v-adc6b9fc]{box-shadow:none;background-color:#0000}.career-step .step-card.marked-step .period[data-v-adc6b9fc],.career-step .step-card.marked-step .company[data-v-adc6b9fc]{color:var(--color-gray-dark)}.career-step .step-card.marked-step .step-tag-neutral[data-v-adc6b9fc]{--tag-line-hover:var(--color-gray-dark);--tag-ink-hover:var(--color-secondary);border-color:var(--color-gray);color:var(--color-gray-dark)}.career-step .step-card.marked-step .step-tag-success[data-v-adc6b9fc]{--tag-line-hover:var(--color-success);--tag-ink-hover:var(--color-success-dark);border-color:var(--color-success-light);color:var(--color-success-dark)}.career-step .step-card.marked-step .step-tag-link[data-v-adc6b9fc]:focus-visible{outline-color:var(--color-secondary)}.career-step .step-card.marked-step .job-title[data-v-adc6b9fc],.career-step .step-card.marked-step .description[data-v-adc6b9fc]{color:var(--color-secondary)}@media (width>=1024px){.career-step[data-v-adc6b9fc]{padding-left:unset;width:calc(50% - 3rem)}.career-step .dot[data-v-adc6b9fc]{top:1.75rem}.career-step .step-card[data-v-adc6b9fc]{padding:2rem}.career-step .step-card .period[data-v-adc6b9fc]{font-size:1rem}.career-step .step-card .job-title[data-v-adc6b9fc]{font-size:1.75rem}.career-step .step-card .step-tag[data-v-adc6b9fc]{padding:.375rem .625rem;font-size:.75rem}.career-step .step-card .description[data-v-adc6b9fc]{font-size:1.25rem}.career-step.career-step-left[data-v-adc6b9fc]{margin-right:auto}.career-step.career-step-left .dot[data-v-adc6b9fc]{left:unset;right:calc(-3rem - 8px)}.career-step.career-step-right[data-v-adc6b9fc]{margin-left:auto}.career-step.career-step-right .dot[data-v-adc6b9fc]{left:calc(-3rem - 8px)}}.career-timeline[data-v-c7df0804]{gap:3rem;width:100%;display:grid;position:relative}.career-timeline[data-v-c7df0804]:before{content:"";background-color:var(--color-gray-light);width:2px;position:absolute;top:1.25rem;bottom:1.25rem;left:7px}.career-timeline .career-step:nth-child(2) .step-card[data-v-c7df0804]{transition-delay:.1s}.career-timeline .career-step:nth-child(3) .step-card[data-v-c7df0804]{transition-delay:.2s}.career-timeline .career-step:nth-child(4) .step-card[data-v-c7df0804]{transition-delay:.3s}@media (width>=1024px){.career-timeline[data-v-c7df0804]{gap:4rem;max-width:calc(100% - 14rem);margin:auto}.career-timeline[data-v-c7df0804]:before{top:1.75rem;bottom:1.75rem;left:50%;transform:translate(-50%)}}@media (width>=1440px){.career-timeline[data-v-c7df0804]{max-width:1120px}}.gitlab-stats[data-v-7fcf55a0]{width:100%;max-width:1120px;margin:0 auto}.gitlab-stats .figures[data-v-7fcf55a0]{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.5rem;margin:0;display:grid}.gitlab-stats .figure[data-v-7fcf55a0]{border-top:1px solid var(--color-gray-dark);flex-direction:column-reverse;gap:.5rem;padding-top:.75rem;display:flex}.gitlab-stats .value[data-v-7fcf55a0]{color:var(--color-secondary);font-variant-numeric:tabular-nums;margin:0;font-family:Tenor Sans,sans-serif;font-size:2rem;line-height:1}.gitlab-stats .label[data-v-7fcf55a0]{text-transform:uppercase;letter-spacing:.1em;color:var(--color-gray-dark);font-family:Tenor Sans,sans-serif;font-size:.75rem;line-height:1.4}.gitlab-stats .scope-note[data-v-7fcf55a0]{text-transform:uppercase;letter-spacing:.1em;color:var(--color-gray-dark);align-items:baseline;gap:.5rem;margin:1.5rem 0 0;font-family:Tenor Sans,sans-serif;font-size:.6875rem;line-height:1.4;transition-delay:.4s;display:flex}.gitlab-stats .scope-note .mark[data-v-7fcf55a0]{font-size:.5rem;line-height:1}@media (width>=600px){.gitlab-stats .figures[data-v-7fcf55a0]{grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}.gitlab-stats .value[data-v-7fcf55a0]{font-size:2.25rem}}@media (width>=1024px){.gitlab-stats .value[data-v-7fcf55a0]{font-size:2.75rem}.gitlab-stats .label[data-v-7fcf55a0]{font-size:.875rem}.gitlab-stats .scope-note[data-v-7fcf55a0]{font-size:.75rem}}@media (width>=1024px) and (width<=1439px){.gitlab-stats[data-v-7fcf55a0]{max-width:calc(100% - 14rem)}}.project-video[data-v-26f05690]{margin:2rem 0 0}.project-video .video[data-v-26f05690]{aspect-ratio:16/9;background-color:var(--color-off-white,#f5f5f5);border:1px solid var(--color-gray-light,#dddedd);width:100%;height:auto;display:block}@keyframes fadeInOpacity{0%{opacity:0}to{opacity:1}}main>.content-container{padding:3rem 1rem;display:grid}main>.content-container #career-steps{gap:3rem;width:100%;margin:auto;display:grid}main>.content-container #about-section{gap:12rem;display:grid}main>.content-container #projects-section{gap:7rem;display:grid}main>.content-container #projects-section .content-container .type{color:var(--color-gray);text-transform:capitalize}main>.content-container #tools-section{gap:3rem;display:grid}main>.content-container #tools-section .content-card{padding:unset}main>.content-container #tools-section .tool-container{gap:1rem 2rem;display:grid}main>.content-container #tools-section .tool-container .tool-set{color:var(--color-secondary);cursor:pointer;justify-content:center;padding:1rem;transition:all .2s ease-in-out;display:grid}main>.content-container #tools-section .tool-container .tool-set .label{justify-content:center;align-items:center;gap:.25rem;display:flex}main>.content-container #tools-section .tool-container .tool-set:hover .label{color:var(--color-secondary)}main>.content-container #tools-section .tool-container .tool-set:hover .tool-icon{position:relative}main>.content-container #tools-section .tool-container .tool-set:hover .sparkle{opacity:1;animation-name:fadeInOpacity;animation-duration:.25s;animation-timing-function:ease-in;animation-iteration-count:1;position:absolute;display:block!important}main>.content-container #tools-section .tool-container .tool-set:hover .sparkle-1{font-size:1.75rem;top:.5rem;right:2.5rem}main>.content-container #tools-section .tool-container .tool-set:hover .sparkle-2{font-size:1.75rem;bottom:1rem;left:2rem}main>.content-container #tools-section .tool-container .tool-set:hover .sparkle-3{font-size:1rem;bottom:.25rem;right:2rem}main>.content-container #tools-section .tool-container .tool-set .tool-icon{background-position:50%;background-repeat:no-repeat;background-size:60%;width:200px;height:164px;margin:auto;position:relative}main>.content-container #tools-section .tool-container .tool-set .tool-icon .sparkle{display:none}main>.content-container #tools-section .tool-container .tool-set .label{color:var(--color-secondary);text-align:center;font-family:Tenor Sans,sans-serif;font-size:1rem}main>.content-container #skills-section{gap:3rem;display:grid}main>.content-container #skills-section .content-card{padding:unset}main>.content-container #skills-section .skill-container{gap:3rem;font-family:Tenor Sans,sans-serif;display:grid}main>.content-container #skills-section .skill-container .skill-set{-moz-column-gap:2rem;gap:1rem 2rem;font-size:1rem;display:grid}main>.content-container #skills-section .skill-container .skill-set>.label{font-size:1.5rem;display:block}main>.content-container #concepts-section{gap:3rem;display:grid}main>.content-container #concepts-section .content-card{padding:unset}main>.content-container #concepts-section .concept-container{min-height:unset}main>.content-container #concepts-section .concept-container .content .content-container{gap:1rem 2rem;display:grid}@media (width>=600px){main #tools-section .tool-container{grid-template-columns:repeat(2,1fr)}main #tools-section .tool-container .tool-set .tool-icon{position:relative;background-size:50%!important;width:100px!important;height:64px!important}main #tools-section .tool-container .tool-set:hover .sparkle-1{font-size:1.75rem;top:.25rem!important;right:5rem!important}main #tools-section .tool-container .tool-set:hover .sparkle-2{font-size:1rem!important;bottom:-1.5rem!important;left:2rem!important}main #tools-section .tool-container .tool-set:hover .sparkle-3{font-size:.75rem!important;bottom:.25rem!important;right:1rem!important}main #concepts-section .concept-container .content .content-container i,main #concepts-section .concept-container .content .content-container svg{font-size:3rem!important}main #concepts-section .concept-container .content .content-container{grid-template-columns:repeat(2,1fr)}main #projects .content-card{padding:17rem 0 0}main #projects .content-right .image,main #projects .content-left .image{width:25rem;height:25rem}main>.content-container{padding:7rem 3rem}}@media (width>=768px){main #tools-section .tool-container .tool-set .tool-icon{width:200px!important;height:156px!important}main #tools-section .tool-container .tool-set:hover .sparkle-1{font-size:1.75rem!important;top:.5rem!important;right:2.5rem!important}main #tools-section .tool-container .tool-set:hover .sparkle-2{font-size:1.75rem!important;bottom:1rem!important;left:2rem!important}main #tools-section .tool-container .tool-set:hover .sparkle-3{font-size:1rem!important;bottom:.25rem!important;right:2rem!important}}@media (width>=1024px){main>.content-container #tools-section .tool-container .tool-set .label{font-size:1.25rem!important}main>.content-container #skills-section .skill-container .skill-set{grid-template-columns:repeat(2,1fr)}main>.content-container #skills-section .skill-container .skill-set .label{grid-column:1/3}main>.content-container #projects .content-card{--card-image-size:clamp(16rem, 28vw, 25rem);min-height:var(--card-image-size)}}@media (width>=1100px){main .content-container #tools-section .content .content-container i,main .content-container #tools-section .content .content-container svg{font-size:4rem!important}main .content-container #tools-section .content .content-container{grid-template-columns:repeat(4,1fr)}main .content-container #tools-section .tool-container{grid-template-columns:repeat(3,1fr)}}@media (width>=1290px){main #concepts-section .content .content-container i,main #concepts-section .content .content-container svg{font-size:4rem!important}main #concepts-section .content .content-container{grid-template-columns:repeat(4,1fr)!important}}
