.testimonial.svelte-1h4db02{--dark-bg-rgb:var(--clr-main);--light-bg-rgb:var(--clr-invert);background-color:hsla(var(--light-bg-rgb), .25);border-radius:var(--radius);box-shadow:0 0 12px var(--clr-main);max-inline-size:50em;margin-top:-6rem;margin-bottom:2rem;opacity:0;width:95%;animation:.8s ease-out forwards svelte-1h4db02-fadeIn;animation-delay:var(--stagger-delay,0s);will-change:opacity, transform;-webkit-user-select:none;user-select:none;margin-inline:auto;padding:2rem 2rem 5em;transition:transform .2s,box-shadow .2s;position:relative;scale:.75}@media (width<=500px){.testimonial.svelte-1h4db02{margin-top:-2rem;scale:.95}}.testimonial.svelte-1h4db02:hover{transform:translateY(-5px)}.testimonial.svelte-1h4db02 .author-info:where(.svelte-1h4db02){border-radius:var(--radius);flex-direction:column;padding:.75rem;display:flex}.testimonial.svelte-1h4db02 .author-info:where(.svelte-1h4db02) strong:where(.svelte-1h4db02){font-size:clamp(var(--sm), 1.75vw, var(--h5));color:var(--clr-main);letter-spacing:0;font-weight:600}.testimonial.svelte-1h4db02 .author-info:where(.svelte-1h4db02) span:where(.svelte-1h4db02){color:var(--clr-main);font-size:clamp(var(--xs), 1.25vw, var(--h6));opacity:.5;letter-spacing:-1px;font-weight:400}.testimonial.svelte-1h4db02 .quote-mark:where(.svelte-1h4db02){color:var(--clr-main);font-family:Georgia,serif;font-size:4rem;line-height:1;position:absolute;top:1rem;left:1.5rem}.testimonial.svelte-1h4db02 blockquote:where(.svelte-1h4db02){font-size:clamp(var(--h6), 1.5vw, var(--h3));color:var(--clr-main);border-left:none;margin:0;padding-left:1rem;font-style:italic;line-height:1.5}.testimonial.svelte-1h4db02 .testimonial-footer:where(.svelte-1h4db02){border-top:1px solid var(--clr-main);background-color:#0000;justify-content:center;align-items:center;gap:1rem;max-inline-size:55em;margin-top:1rem;padding:2em;display:flex}@media (width<=500px){.testimonial.svelte-1h4db02 .testimonial-footer:where(.svelte-1h4db02){padding-bottom:.15rem}}.testimonial.svelte-1h4db02 .testimonial-footer:where(.svelte-1h4db02) .avatar:where(.svelte-1h4db02){flex-shrink:0;overflow:clip}.testimonial.svelte-1h4db02 .testimonial-footer:where(.svelte-1h4db02) .avatar:where(.svelte-1h4db02) img:where(.svelte-1h4db02){vertical-align:middle;border-radius:50%;inline-size:150px}@media (width<=500px){.testimonial.svelte-1h4db02 .testimonial-footer:where(.svelte-1h4db02) .avatar:where(.svelte-1h4db02) img:where(.svelte-1h4db02){inline-size:145px}}body.light .testimonial.svelte-1h4db02{background-color:rgba(var(--dark-bg-rgb), .25)}.highlighted.svelte-1h4db02{border-left:3px solid #292929}@media (max-inline-size:640px){.testimonial.svelte-1h4db02{width:90%;margin-inline:auto;padding:1.5rem}}@keyframes svelte-1h4db02-fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.github-contributions.svelte-9tsnth{max-inline-size:900px;font-family:var(--bronova);flex-direction:column;align-items:center;margin:0;margin-inline:auto;padding:2rem 1rem;display:flex;container:github-contributions/inline-size}.github-contributions.svelte-9tsnth .contributions-header:where(.svelte-9tsnth){margin-bottom:2rem}.github-contributions.svelte-9tsnth .contributions-header:where(.svelte-9tsnth) h2:where(.svelte-9tsnth){font-family:var(--bronova-bold);font-size:clamp(var(--sm), 2vw, var(--h4));color:var(--clr-main);text-transform:lowercase;letter-spacing:.5px;margin-bottom:-.2em;font-weight:700}.github-contributions.svelte-9tsnth .contributions-header:where(.svelte-9tsnth) h3:where(.svelte-9tsnth){font-family:var(--bronova);font-size:clamp(var(--sm), 1.25vw, var(--h5));color:var(--clr-light-gray);text-transform:lowercase;letter-spacing:.5px;margin-bottom:.5rem;font-weight:600}.github-contributions.svelte-9tsnth .total-contributions:where(.svelte-9tsnth){font-size:clamp(var(--xs), 1.25vw, var(--sm));color:var(--clr-gray);opacity:.7;margin:0;font-weight:400}.github-contributions.svelte-9tsnth .total-contributions:where(.svelte-9tsnth).loading{opacity:.5}.github-contributions.svelte-9tsnth .total-contributions:where(.svelte-9tsnth).error{color:#ff6b6b;opacity:.8}.github-contributions.svelte-9tsnth .loading-container:where(.svelte-9tsnth){justify-content:center;align-items:center;width:100%;min-height:200px;display:flex}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth){border-radius:8px;flex-direction:column;align-items:center;gap:1rem;width:100%;min-width:50vw;padding:1.5rem;display:flex;position:relative}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .mobile-tooltip:where(.svelte-9tsnth){background:var(--clr-main);color:var(--clr-bg);font-size:.75rem;font-family:var(--bronova);pointer-events:none;z-index:1000;border-radius:6px;padding:.5rem .75rem;animation:.2s ease-out svelte-9tsnth-tooltipFadeIn;position:absolute;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .mobile-tooltip:where(.svelte-9tsnth) .tooltip-content:where(.svelte-9tsnth){margin-bottom:.125rem;font-weight:600}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .mobile-tooltip:where(.svelte-9tsnth) .tooltip-date:where(.svelte-9tsnth){opacity:.9;font-size:.65rem;font-weight:400}@container github-contributions (width<=767px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth){gap:.75rem;padding:1rem}}@container github-contributions (width<=500px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth){min-width:99%;padding:.5rem}}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth){scroll-behavior:smooth;justify-content:flex-start;width:100%;display:flex;overflow:auto visible}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth)::-webkit-scrollbar{height:6px}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth)::-webkit-scrollbar-track{background:0 0}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth)::-webkit-scrollbar-thumb{background:var(--clr-main);opacity:.3;border-radius:3px}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){min-width:max-content;font-family:var(--bronova);max-inline-size:100%;height:auto}@container github-contributions (width<=800px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){transform-origin:50%;transform:scale(.9)}}@container github-contributions (width<=700px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){transform-origin:50%;transform:scale(.8)}}@container github-contributions (width<=600px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){transform-origin:50%;transform:scale(.7)}}@container github-contributions (width<=500px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){transform-origin:50%;transform:scale(.6)}}@container github-contributions (width<=400px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){transform-origin:50%;transform:scale(.5)}}@container github-contributions (width<=320px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){transform-origin:50%;transform:scale(.45)}}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .month-label:where(.svelte-9tsnth){fill:var(--clr-main);opacity:.7;font-size:1.1rem;font-weight:400}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .day-label:where(.svelte-9tsnth){fill:var(--clr-main);opacity:.7;font-size:.9rem;font-weight:400}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth){cursor:pointer;transition:all .2s}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth):hover{stroke:var(--clr-main);stroke-width:1px;opacity:.8}@container github-contributions (width<=600px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth) title:where(.svelte-9tsnth){display:none}}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth).none{fill:var(--clr-gray)}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth).low{fill:#0e4429}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth).medium{fill:#006d32}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth).high{fill:#26a641}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth).very-high{fill:#39d353}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth):focus-visible{outline:3px solid var(--clr-main);outline-offset:2px;stroke:var(--clr-main);stroke-width:2px}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth){font-size:clamp(var(--xs), 2vw, var(--sm));color:var(--clr-main);opacity:.6;justify-content:flex-end;align-items:center;gap:.5rem;margin-top:1rem;font-weight:400;display:flex}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth){gap:2px;margin:0 .5rem;display:flex}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth){border:none;border-radius:2px;width:.75rem;height:.75rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth).none{background-color:var(--clr-gray)}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth).low{background-color:#0e4429}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth).medium{background-color:#006d32}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth).high{background-color:#26a641}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth).very-high{background-color:#39d353}body.dark .contribution-day.none.svelte-9tsnth{fill:var(--clr-invert)}body.dark .legend-square.none.svelte-9tsnth{background-color:var(--clr-invert)}@container github-contributions (width>=600px){.contribution-day.svelte-9tsnth:hover{stroke-width:2px}}@keyframes svelte-9tsnth-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes svelte-9tsnth-tooltipFadeIn{0%{opacity:0;transform:translate(-50%)translateY(-5px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@container github-contributions (width<=600px){.github-contributions.svelte-9tsnth{padding:1rem .5rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth){transform:none!important}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .month-label:where(.svelte-9tsnth){font-size:1rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .day-label:where(.svelte-9tsnth){font-size:.8rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .contribution-day:where(.svelte-9tsnth):hover{stroke-width:1px}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth){gap:.375rem;margin-top:.75rem;font-size:.75rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth){gap:2px}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth){border-radius:1px;width:.65rem;height:.65rem}}@container github-contributions (width<=400px){.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth){min-width:100vw}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth){font-size:.65rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .legend:where(.svelte-9tsnth) .legend-squares:where(.svelte-9tsnth) .legend-square:where(.svelte-9tsnth){width:.6rem;height:.6rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .month-label:where(.svelte-9tsnth){font-size:.9rem}.github-contributions.svelte-9tsnth .calendar-container:where(.svelte-9tsnth) .calendar-svg-wrapper:where(.svelte-9tsnth) .contributions-svg:where(.svelte-9tsnth) .day-label:where(.svelte-9tsnth){font-size:.7rem}}:root{--100:100%}.github-section.svelte-rqn88j{background:0 0;border-radius:12px;min-height:300px;margin:2rem 0;padding:2rem 1rem}@media (width<=768px){.github-section.svelte-rqn88j{min-height:250px;margin:1rem;padding:1rem}}.github-section.svelte-rqn88j .contribution-container:where(.svelte-rqn88j){text-align:center;max-inline-size:1200px;margin:0 auto}.github-section.svelte-rqn88j .github-skeleton:where(.svelte-rqn88j){opacity:.6;animation:2s ease-out infinite alternate svelte-rqn88j-pulse}.github-section.svelte-rqn88j .github-skeleton:where(.svelte-rqn88j) .skeleton-header:where(.svelte-rqn88j){margin-bottom:2rem}.github-section.svelte-rqn88j .github-skeleton:where(.svelte-rqn88j) .skeleton-header:where(.svelte-rqn88j) .skeleton-title:where(.svelte-rqn88j){background:var(--clr-main);opacity:.3;border-radius:4px;width:200px;height:2rem;margin:0 auto .5rem}.github-section.svelte-rqn88j .github-skeleton:where(.svelte-rqn88j) .skeleton-header:where(.svelte-rqn88j) .skeleton-subtitle:where(.svelte-rqn88j){background:var(--clr-main);opacity:.2;border-radius:4px;width:150px;height:1rem;margin:0 auto}.github-section.svelte-rqn88j .github-skeleton:where(.svelte-rqn88j) .skeleton-chart:where(.svelte-rqn88j){background:var(--clr-main);opacity:.1;border-radius:8px;height:150px;margin-bottom:1rem}.github-section.svelte-rqn88j .github-skeleton:where(.svelte-rqn88j) .skeleton-legend:where(.svelte-rqn88j){background:var(--clr-main);opacity:.1;border-radius:4px;width:200px;height:20px;margin:0 auto}.projects.svelte-rqn88j{background:linear-gradient(to bottom, oklch(from var(--clr-gray) .35 c h) 0%, var(--clr-invert) 12%, var(--clr-invert) 100%)}.projects.svelte-rqn88j .bevel-border:where(.svelte-rqn88j){grid-template-columns:repeat(auto-fit,minmax(500px,1fr));place-items:center;margin:0;padding:2rem;display:grid;position:relative}@media (width<=500px){.projects.svelte-rqn88j .bevel-border:where(.svelte-rqn88j){grid-template-columns:1fr;padding:2em 0}}.projects.svelte-rqn88j .bevel-border:where(.svelte-rqn88j) .wholeProject:where(.svelte-rqn88j){border-radius:var(--radius);will-change:opacity, transform;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;margin-bottom:1em;padding:1em 0 .5em;display:flex}@media (width<=768px){.projects.svelte-rqn88j .bevel-border:where(.svelte-rqn88j) .wholeProject:where(.svelte-rqn88j){margin:.5rem .5rem 1.5em;padding:.25px 0}}.projects.svelte-rqn88j .bevel-border:where(.svelte-rqn88j):before{content:"";background:var(--clr-gray);clip-path:polygon(0 40px,40px 0,calc(100% - 40px) 0,100% 40px,100% calc(100% - 40px),calc(100% - 40px) 100%,40px 100%,0 calc(100% - 40px),0 40px,5px 41.03px,5px calc(100% - 41.03px),41.03px calc(100% - 5px),calc(100% - 41.03px) calc(100% - 5px),calc(100% - 5px) calc(100% - 41.03px),calc(100% - 5px) 41.03px,calc(100% - 41.03px) 5px,41.03px 5px,5px 41.03px);position:absolute;inset:0}@keyframes svelte-rqn88j-pulse{0%{opacity:.4}to{opacity:.6}}@keyframes svelte-rqn88j-slide-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100px)}}@keyframes svelte-rqn88j-slide-in{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}::view-transition-old(build-heading){opacity:0}::view-transition-group(build-heading){animation-duration:var(--link-transition-duration);animation-timing-function:cubic-bezier(.4,0,.2,1)}@media (width<=768px){::view-transition-old(build-heading){animation:svelte-rqn88j-slide-out var(--title-transition-duration) ease-out forwards;opacity:1}::view-transition-new(build-heading){animation:svelte-rqn88j-slide-in var(--title-transition-duration) ease-out forwards}}@media (prefers-reduced-motion:reduce){.github-skeleton.svelte-rqn88j{animation:none}::view-transition-group(build-heading){animation:none}::view-transition-old(build-heading){animation:none}::view-transition-new(build-heading){animation:none}}
