.typing-effect-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.typing-effect-pending{visibility:hidden}.resume-link-button{position:relative;display:inline-block;padding:14px 18px;text-align:center;font-size:18px;font-weight:700;text-decoration:none;color:#eadeda;border:1px solid #eadeda;border-radius:4px;overflow:hidden;min-height:48px;max-width:100%;overflow-wrap:anywhere}.resume-link-button .border{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#eadeda;transform:scaleX(0);transform-origin:left;transition:transform .3s ease-out}.resume-link-button:hover .border{transform:scaleX(1)}.resume-link-button .label{position:relative;z-index:1}.resume-link-button .label-hover{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#161925;opacity:0;transition:opacity .3s ease-out}.resume-link-button:hover .label-hover{z-index:1!important;opacity:1}.resume-link-button .label-hover .inner{transform:translateY(100%);transition:transform .3s ease-out}.resume-link-button:hover .label-hover .inner{transform:translateY(0)}.resume-link-button:focus-visible{outline-color:#c6b1ef}@media (prefers-reduced-motion:reduce){.resume-link-button .border,.resume-link-button .label-hover,.resume-link-button .label-hover .inner{transition:none}}.resume[data-reduced-motion=true] .resume-link-button .border,.resume[data-reduced-motion=true] .resume-link-button .label-hover,.resume[data-reduced-motion=true] .resume-link-button .label-hover .inner{transition:none}.resume .contactLinks{display:flex;flex-wrap:wrap;gap:12px}.resume .titleExperiences{font-size:30px;line-height:1.3;font-weight:400;margin-bottom:28px;color:#161925}.resume .experience{display:grid;grid-template-columns:88px 12px 88px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;margin:20px 0;line-height:1.5}.resume .yearView{background:#161925;padding:4px;min-width:0;text-align:center}.resume .year{font-weight:700;color:#eadeda}.resume .separator{font-weight:700;color:#161925}.resume .experienceRole{font-style:italic;color:#161925}@media (max-width:680px){.resume[data-embedded=false] .experience{grid-template-columns:88px 12px minmax(88px,1fr);gap:10px;margin:0;padding:22px 0;border-bottom:1px solid #16192526}.resume[data-embedded=false] .experienceRole{grid-column:1/-1;font-style:normal}.resume[data-embedded=false] .yearView{width:88px}.resume[data-embedded=false] .titleExperiences{font-size:26px;margin-bottom:0}}.resume .skillsContainer{padding-top:3rem}.resume .skillsView{display:flex;justify-content:center;flex-wrap:wrap}.resume .skillsView a{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:64px}.resume[data-embedded=false] .logo{width:88px;height:88px;object-fit:contain;padding:20px}.resume .logo{height:6em;padding:1.5em;max-width:100%;transition:filter .3s}.resume .logo.mysql:hover,.resume .logo.react:hover,.resume .logo.typescript:hover{filter:drop-shadow(0 0 2em #61dafbaa)}.resume .logo.redux:hover{filter:drop-shadow(0 0 2em #764ABC)}.resume .logo.next:hover,.resume .logo.three:hover{filter:drop-shadow(0 0 2em #000000)}.resume .logo.reactFirebase:hover{filter:drop-shadow(0 0 2em #F6820C)}.resume .logo.angular:hover{filter:drop-shadow(0 0 2em #E23137)}.resume .logo.node:hover,.resume .logo.vue:hover{filter:drop-shadow(0 0 2em #5DAC46)}@keyframes logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-reduced-motion:no-preference){.resume[data-embedded=true][data-reduced-motion=false] .spin{animation:logo-spin 20s linear infinite}}.resume{position:relative;width:100%;margin:0 auto;color:#161925;scrollbar-color:#9c83b6 #161925;scrollbar-width:thin}.resume[data-embedded=true]{width:1024px;height:670px;border-radius:20px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;transform:translateZ(0)}.resume-intro{position:relative;isolation:isolate;background:#161925;color:#eadeda;padding:48px 64px 90px}.resume[data-embedded=true] .resume-intro{min-height:670px}.resume-name{font-size:48px;line-height:1.25;font-weight:400;margin-bottom:12px;text-wrap:balance}.resume-role{font-size:32px;line-height:1.35;margin-bottom:24px}.resume-summary{max-width:70ch;font-size:22px;line-height:1.5}.resume-summary p+p{margin-top:16px}.resume-contacts{position:relative;z-index:1;margin-top:34px;padding-left:142px}.resume-portrait{position:absolute;bottom:0;left:0;z-index:-1;width:180px;height:auto;opacity:.2;pointer-events:none}.resume-scroll{display:inline-flex;align-items:center;justify-content:center;gap:12px;position:absolute;right:24px;bottom:20px;width:48px;height:48px;border:0;border-radius:4px;background:transparent;color:inherit;cursor:pointer;font:inherit}.resume-scroll:hover{background:#eadeda18}.resume-details{background:#eadeda;padding:56px 64px}.resume-details:focus-visible{outline-offset:-6px}.resume-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px max(24px,calc((100vw - 1024px) / 2 + 48px));border-bottom:1px solid #16192526;font:14px/1.5 Arial,sans-serif}.resume-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-underline-offset:4px}.resume-back:hover{text-decoration:underline}.resume-languages{display:flex;gap:4px}.resume-languages button{min-height:44px;padding:8px 10px;border:0;border-radius:4px;background:transparent;color:inherit;cursor:pointer;font:inherit}.resume-languages button[aria-pressed=true]{background:#161925;color:#eadeda}.resume-languages button:not([aria-pressed=true]):hover{background:#1619250d}.resume[data-embedded=false] .resume-details,.resume[data-embedded=false] .resume-intro{padding-left:max(24px,calc((100vw - 1024px) / 2 + 48px));padding-right:max(24px,calc((100vw - 1024px) / 2 + 48px))}.resume[data-embedded=false] .resume-intro{padding-top:clamp(36px,6vw,72px);padding-bottom:100px}.resume[data-embedded=false] .resume-name{font-size:clamp(32px,4.5vw,48px)}.resume[data-embedded=false] .resume-role{font-size:clamp(22px,3vw,30px)}.resume[data-embedded=false] .experience,.resume[data-embedded=false] .resume-scroll,.resume[data-embedded=false] .resume-summary{font-family:Arial,sans-serif}.resume[data-embedded=false] .resume-summary{font-size:18px;line-height:1.7}.resume[data-embedded=false] .resume-contacts{padding-left:0}.resume[data-embedded=false] .resume-portrait{left:auto;right:max(24px,calc((100vw - 1024px) / 2));opacity:.12}.resume[data-embedded=false] .resume-scroll{width:auto;right:max(24px,calc((100vw - 1024px) / 2 + 48px));font-size:14px;padding:0 8px}@media (max-width:600px){.resume-toolbar{flex-wrap:wrap;gap:4px 12px;padding:10px 24px}.resume[data-embedded=false] .resume-details{padding-top:36px;padding-bottom:36px}.resume[data-embedded=false] .resume-portrait{width:144px}}