@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-orange-500:oklch(70.5% .213 47.604);--color-orange-700:oklch(55.3% .195 38.402);--color-lime-50:oklch(98.6% .031 120.757);--color-lime-100:oklch(96.7% .067 122.328);--color-lime-200:oklch(93.8% .127 124.321);--color-lime-500:oklch(76.8% .233 130.85);--color-lime-600:oklch(64.8% .2 131.684);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-blue-50:oklch(97% .014 254.604);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-700:oklch(48.8% .243 264.376);--color-violet-50:oklch(96.9% .016 293.756);--color-violet-100:oklch(94.3% .029 294.588);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-900:oklch(21% .034 264.665);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-800:oklch(27.4% .006 286.033);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-stone-100:oklch(97% .001 106.424);--color-stone-200:oklch(92.3% .003 48.717);--color-stone-400:oklch(70.9% .01 56.259);--color-stone-500:oklch(55.3% .013 58.071);--color-stone-700:oklch(37.4% .01 67.558);--color-stone-800:oklch(26.8% .007 34.298);--color-stone-900:oklch(21.6% .006 56.043);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-wide:.025em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-lg:.5rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:300;src:url(./files/open-sans-latin-300-normal.woff2)format("woff2"),url(./files/open-sans-latin-300-normal.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./files/open-sans-latin-400-normal.woff2)format("woff2"),url(./files/open-sans-latin-400-normal.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./files/open-sans-latin-500-normal.woff2)format("woff2"),url(./files/open-sans-latin-500-normal.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(./files/open-sans-latin-600-normal.woff2)format("woff2"),url(./files/open-sans-latin-600-normal.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./files/open-sans-latin-700-normal.woff2)format("woff2"),url(./files/open-sans-latin-700-normal.woff)format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:800;src:url(./files/open-sans-latin-800-normal.woff2)format("woff2"),url(./files/open-sans-latin-800-normal.woff)format("woff")}:root,:host{--fa-font-solid:normal 900 1em/1 "Font Awesome 7 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 7 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 7 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 7 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 7 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 7 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 7 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 7 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 7 Sharp Duotone";--fa-font-slab-regular:normal 400 1em/1 "Font Awesome 7 Slab";--fa-font-slab-press-regular:normal 400 1em/1 "Font Awesome 7 Slab Press";--fa-font-whiteboard-semibold:normal 600 1em/1 "Font Awesome 7 Whiteboard";--fa-font-thumbprint-light:normal 300 1em/1 "Font Awesome 7 Thumbprint";--fa-font-notdog-solid:normal 900 1em/1 "Font Awesome 7 Notdog";--fa-font-notdog-duo-solid:normal 900 1em/1 "Font Awesome 7 Notdog Duo";--fa-font-etch-solid:normal 900 1em/1 "Font Awesome 7 Etch";--fa-font-jelly-regular:normal 400 1em/1 "Font Awesome 7 Jelly";--fa-font-jelly-fill-regular:normal 400 1em/1 "Font Awesome 7 Jelly Fill";--fa-font-jelly-duo-regular:normal 400 1em/1 "Font Awesome 7 Jelly Duo";--fa-font-chisel-regular:normal 400 1em/1 "Font Awesome 7 Chisel";--fa-font-utility-semibold:normal 600 1em/1 "Font Awesome 7 Utility";--fa-font-utility-duo-semibold:normal 600 1em/1 "Font Awesome 7 Utility Duo";--fa-font-utility-fill-semibold:normal 600 1em/1 "Font Awesome 7 Utility Fill"}.svg-inline--fa{box-sizing:content-box;display:var(--fa-display,inline-block);vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);overflow:visible}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.0714286em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left,.svg-inline--fa .fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-pull-right,.svg-inline--fa .fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);inset-block-start:.25em;inset-inline-start:calc(-1*var(--fa-li-width,2em))}.fa-layers-counter,.fa-layers-text{text-align:center;display:inline-block;position:absolute}.fa-layers{text-align:center;vertical-align:-.125em;height:1em;width:var(--fa-width,1.25em);display:inline-block;position:relative}.fa-layers .svg-inline--fa{transform-origin:50%;margin:auto;position:absolute;inset:0}.fa-layers-text{transform-origin:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:100% 0;overflow:hidden}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 100%;top:auto}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 100%;top:auto;right:auto}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:100% 0}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:0 0}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{vertical-align:.225em;font-size:.625em;line-height:.1em}.fa-xs{vertical-align:.125em;font-size:.75em;line-height:.0833333em}.fa-sm{vertical-align:.0535715em;font-size:.875em;line-height:.0714286em}.fa-lg{vertical-align:-.075em;font-size:1.25em;line-height:.05em}.fa-xl{vertical-align:-.125em;font-size:1.5em;line-height:.0416667em}.fa-2xl{vertical-align:-.1875em;font-size:2em;line-height:.03125em}.fa-width-auto{--fa-width:auto}.fa-fw,.fa-width-fixed{--fa-width:1.25em}.fa-ul{margin-inline-start:var(--fa-li-margin,2.5em);padding-inline-start:0;list-style-type:none}.fa-ul>li{position:relative}.fa-li{text-align:center;width:var(--fa-li-width,2em);line-height:inherit;position:absolute;inset-inline-start:calc(-1*var(--fa-li-width,2em))}.fa-border{border-color:var(--fa-border-color,#eee);border-radius:var(--fa-border-radius,.1em);border-style:var(--fa-border-style,solid);border-width:var(--fa-border-width,.0625em);box-sizing:var(--fa-border-box-sizing,content-box);padding:var(--fa-border-padding,.1875em .25em)}.fa-pull-left,.fa-pull-start{float:inline-start;margin-inline-end:var(--fa-pull-margin,.3em)}.fa-pull-right,.fa-pull-end{float:inline-end;margin-inline-start:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{transition:none!important;animation:none!important}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1)translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9))translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1))translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95))translateY(0)}57%{transform:scale(1)translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1)translateY(0)}to{transform:scale(1)translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor);opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.svg-inline--fa.fa-inverse{fill:var(--fa-inverse,#fff)}.fa-stack{vertical-align:middle;width:2.5em;height:2em;line-height:2em;display:inline-block;position:relative}.fa-inverse{color:var(--fa-inverse,#fff)}.svg-inline--fa.fa-stack-1x{--fa-width:1.25em;height:1em;width:var(--fa-width)}.svg-inline--fa.fa-stack-2x{--fa-width:2.5em;height:2em;width:var(--fa-width)}.fa-stack-1x,.fa-stack-2x{z-index:var(--fa-stack-z-index,auto);margin:auto;position:absolute;inset:0}:root{--base-color:#6bb1da;--accent-color:#67b700;--dark-color:#2a2a2a;--base-color-hover:#444;--background:#2a2a2a;--background-dark:#0a0a0a;--background-alt:#f2f2f5;--border:#dcd9d9;--heading:#464646;--text:#676767;--link:#464646;--link-hover:#6bb1da;--contact-base:#d7d7d7;--contact-accent:#096ca7}body.dark{--base-color:#5f488c;--accent-color:#c5be10;--dark-color:#2a2a2a;background-color:#1e1e1e;transition:all .2s ease-in-out}body.dark header a:hover{color:#fff;background:#00000095}body.dark .loading svg{filter:invert()}body.dark .footer{background:#2a2a2a;border-top:1px solid #373737}body.dark a:hover{color:#775cab;transition:all .2s}body.dark .icon-link:hover{color:#312549;background:0 0;transition:all}body.dark #lead{background-image:url(/img/lead-bg-10.avif);background-position:50%;transition:all .2s}body.dark #breadcrumbs{background:#1e1e1e}body.dark #breadcrumbs a{color:#e9e9e9}body.dark #breadcrumbs a:hover{color:#c5be10}body.dark #breadcrumbs .separator{color:#636363}body.dark h1,body.dark h2,body.dark #about h2,body.dark #experience h2,body.dark #projects h2,body.dark #skills h2,body.dark p,body.dark #about p,body.dark #projects p,body.dark #experience p,body.dark .vtimeline-date{color:#e9e9e9}body.dark #projects{background:linear-gradient(#232323,#0000)}body.dark #about{background:#252525;border-bottom:1px solid #292929}body.dark #about,body.dark #experience,body.dark #education,body.dark #certifications,body.dark #projects{transition:all .2s}body.dark #experience,body.dark #skills{background-color:#363636}body.dark #experience{background:linear-gradient(#1c1c1c,#2d2d2d);border-bottom:1px solid #292929}body.dark #projects .project{color:#e9e9e9;background:#373737;border:1px solid #232323}body.dark #projects h3{color:#f2f2f2}body.dark #projects .project-link{border:1px solid #292929;transition:all .2s}body.dark #projects .project-link:hover{border:1px solid var(--accent-color)}@supports (color:color-mix(in lab,red,red)){body.dark #projects .project-link:hover{border:1px solid color-mix(in srgb,var(--accent-color)66%,transparent)}}body.dark #projects .project-link:hover{box-shadow:0 2px 10px 0 var(--accent-color)}@supports (color:color-mix(in lab,red,red)){body.dark #projects .project-link:hover{box-shadow:0 2px 10px color-mix(in srgb,var(--accent-color)33%,transparent)}}body.dark #projects .project-link:hover .project{background:#292929;transition:all .2s}body.dark #experience .vtimeline-content{color:#e9e9e9;background:#313131;border:1px solid #232323}body.dark #experience .vtimeline-content h3{color:#f2f2f2}body.dark #experience .vtimeline-content h3 a:hover{color:#e2c7ea}body.dark #experience .vtimeline-content h4{color:#c1c1c1}body.dark #experience .shadow-large{box-shadow:0 3px 10px #00000014,0 3px 6px #00000026}body.dark #education .education-block{color:#e9e9e9;background:#373737;border:1px solid #232323}body.dark #education .education-date{color:#afafaf}body.dark #education h3{color:#e9e9e9}body.dark #education h4{color:#c1c1c1}body.dark #education h5{color:#b1b1b1}body.dark #education ul{color:#f2f2f2}body.dark #certifications .certification-block{color:#e9e9e9;background:#373737;border:1px solid #232323}body.dark #certifications .certification-date{color:#afafaf}body.dark #certifications h3{color:#e9e9e9}body.dark #certifications h4{color:#c1c1c1}body.dark #certifications h5{color:#ededed}body.dark #certifications ul{color:#f2f2f2}body.dark #contact{background:linear-gradient(#080808,#0000)}body.dark #contact h2{color:#e9e9e9}body.dark #skills li{color:#e9e9e9;background:#272727;border:1px solid #393939;box-shadow:0 2px 4px #0000003d}body.dark #contact-form button{color:#f2f2f2;background:#261d38}body.dark #contact-form input:focus,body.dark #contact-form textarea:focus{background:#383838;outline:none}header{text-align:center;z-index:10;position:fixed;top:0;left:0;right:0}header ul{text-align:center;background:linear-gradient(#0a0a0acc,#0a0a0a80,#0a0a0a33 60%,#0a0a0a0d 85%,#0a0a0a00);margin:0;padding:10px}header ul.high-contrast{background:linear-gradient(#0a0a0ae6,#0a0a0a99,#0a0a0a66 60%,#0a0a0a26 85%,#0a0a0a00);transition:all .2s}@media only screen and (max-width:767px){header{background:linear-gradient(#0a0a0ae6,#0a0a0a99,#0a0a0a4d 60%,#0a0a0a1a 85%,#0a0a0a00)}}header li{padding:0 4px;display:inline-block}header .dark-mode-toggle{padding:10px;position:absolute;right:0}header a{color:#f2f2f5;padding:10px;transition:all .5s;display:block}header a:hover{color:#fff;background:#000000a8;border-radius:4px;text-decoration:none}header.active{transition:all .2s;display:block}#menu.active{display:block}#mobile-menu-open{font:inherit;cursor:pointer;color:#666;z-index:10;background:#2a2a2a;border:none;border-radius:4px;padding:0 7px;font-size:1.5em;display:none;position:fixed;top:10px;right:15px}#mobile-menu-close{font:inherit;text-align:right;cursor:pointer;color:#fff;border:none;width:100%;padding:10px 15px;font-size:1.5em;display:none}#mobile-menu-close span{text-transform:uppercase;font-size:.5em}#mobile-menu-close i{vertical-align:middle}.checkbox{opacity:0;position:absolute}.checkbox-label{cursor:pointer;background-color:#111;border-radius:50px;justify-content:space-between;align-items:center;width:50px;height:26px;padding:5px;display:flex;position:relative}.fa-moon,.fa-sun{color:#f2f2f2}.checkbox-label .ball{background-color:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s linear;position:absolute;top:2px;left:2px}.checkbox:checked+.checkbox-label .ball{transform:translate(24px)}.firefly{pointer-events:none;will-change:transform;width:.4vw;height:.4vw;margin:-.2vw 0 0 -.2vw;animation:infinite move;position:absolute;top:50%;left:50%}.firefly:before,.firefly:after{content:"";transform-origin:-10vw;border-radius:50%;width:100%;height:100%;position:absolute}.firefly:before{opacity:.4;background:#f2f2f2;animation:infinite alternate drift}.firefly:after{opacity:0;background:#fff;animation:infinite alternate drift,infinite flash;box-shadow:0 0 #ff0}@keyframes move{0%{transform:translate3d(var(--x1,-20vw),var(--y1,-10vh),0)scale(var(--s1,.6))}50%{transform:translate3d(var(--x2,10vw),var(--y2,15vh),0)scale(var(--s2,.9))}to{transform:translate3d(var(--x3,25vw),var(--y3,-20vh),0)scale(var(--s3,.7))}}@keyframes drift{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes flash{15%,30%{opacity:0;box-shadow:0 0 #00ff9d}0%,to{opacity:0;box-shadow:0 0 #00ff37}5%{opacity:1;box-shadow:0 0 2vw .4vw #fdffc8}}#lead{filter:saturate(1.33);background-image:url(/img/lead-bg-9.avif);background-position:50%;background-size:cover;padding:185px 15px 120px;transition:all .2s;position:relative;overflow:hidden}#lead.narrow{padding-top:100px}#lead-content{z-index:10;text-align:center;position:relative}#lead-content .headshot{width:100%;height:12vw;margin-bottom:1rem}#lead-content .headshot img{filter:contrast(128%)grayscale()saturate(120%);mix-blend-mode:none;border-radius:50%;width:12vw;height:12vw;margin:auto}#lead-content h1,#lead-content h2{margin:0}#lead-content h1{color:#fff;letter-spacing:.05em;text-shadow:0 2px 6px #00000054;font-size:4em;font-weight:500;line-height:.9em}#lead-content h2{color:var(--accent-color);text-shadow:0 2px 4px #00000054;margin-bottom:15px;font-weight:500}#lead-overlay{z-index:1;background:#4444446c;width:100%;height:100%;position:absolute;inset:0}#lead-down{text-align:center;z-index:10;color:#fff;width:100%;position:absolute;bottom:15px;left:0;right:0}#lead-down span{cursor:pointer;border:3px --accent-color;text-align:center;border-radius:50%;width:35px;height:35px;margin:0 auto;transition:all .3s;display:block}#lead-down span:hover{border:3px solid var(--base-color)}#lead-down i{padding-top:5px;animation:1.5s infinite pulsate;position:relative;top:2px}@keyframes pulsate{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}#about{border-bottom:1px solid #dcd9d9;padding:3rem 1rem}#about h2{color:#464646}#about p{margin:0;font-size:12.5pt;line-height:1.33}#experience{text-align:center;border-bottom:1px solid #dcd9d9;padding:50px 15px;transition:all .2s}#experience h2{color:#464646}#experience-timeline{max-width:1000px;margin:30px auto 0;padding-right:20px;position:relative}#experience-timeline:before{content:"";background:var(--base-color);background:linear-gradient(180deg,var(--base-color)0%,var(--base-color)97%,#0000 100%);z-index:0;width:3px;height:100%;position:absolute;inset:0 auto 0 190px}.vtimeline-content{text-align:left;background:#fff;border:1px solid #e6e6e6;border-radius:3px;margin-left:235px;padding:15px}.vtimeline-content .heading-grid{grid-template-columns:1fr 20%;margin-bottom:12px;display:grid}.vtimeline-content .heading-grid img{justify-self:end;max-width:75px}.vtimeline-content .heading-grid .wider{max-width:100px}.vtimeline-content .heading-grid h3 a svg{opacity:0;margin:0 4px;transition:all .2s;position:relative;top:1px}.vtimeline-content .heading-grid h3 a:hover svg{color:#ececf1;opacity:1}.vtimeline-content h3{color:#464646;margin:0;font-size:1.5em;font-weight:300;display:inline-block}.vtimeline-content h3 a{text-decoration:none}.vtimeline-content h3 a:hover{background:var(--accent-color);color:#f2f2f5;transition:all .2s}.vtimeline-content h3 i{color:#c9c9c9;vertical-align:middle;margin-top:-2px;margin-left:6px;font-size:.9rem}.vtimeline-content h4{color:#737373;font-size:1.2em;font-weight:300}.vtimeline-content p{color:#676767;margin:0;font-size:.9em}.vtimeline-content .client-logos{flex-wrap:wrap;justify-content:center;align-items:center;margin:8px;display:flex}.vtimeline-content .client-logos div{flex:0 0 calc(25% - 3vw);margin:4px}.vtimeline-content .client-logos div img{max-width:100px;max-height:50px;margin:auto}.vtimeline-point{margin-bottom:30px;display:block;position:relative}.vtimeline-icon{color:#fff;background:var(--base-color);float:left;z-index:99;border-radius:50%;width:3rem;height:3rem;margin-left:167px;position:relative}.vtimeline-icon svg{margin-top:.7rem}.vtimeline-date{text-align:right;color:#374054;width:150px;font-size:.9rem;font-weight:300;position:absolute;top:14px;left:0}@media only screen and (max-width:750px){#experience-timeline{padding-right:0}#experience-timeline:before,#experience-timeline:after{left:14px}#experience-timeline .client-logos div{flex:0 0 calc(25% - 1vw);margin:4px 12px}.vtimeline-date{text-align:left;width:auto;margin-bottom:14px;margin-left:42px;display:block;position:relative;top:5px}.vtimeline-icon{margin-left:0}.vtimeline-content{margin-left:40px;padding:12px}.vtimeline-icon{width:2rem;height:2rem}.vtimeline-icon svg{width:1rem;height:1rem;margin-top:.3rem}}#education{text-align:center;background-color:#0000;background-image:linear-gradient(#183725,#13131300),url(/img/education/education.avif);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;padding:50px 15px}#education h2{color:#d7d7d7;letter-spacing:1px;margin-bottom:3rem;font-weight:300;position:relative}.education-block{-webkit-backdrop-filter:blur(30px);background:#ffffff38;border:1px solid #ffffff47;border-radius:12px;max-width:900px;margin:0 auto;padding:0;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000001a,0 4px 16px #0000000d}.education-block:hover{background:#ffffff47;border:1px solid #ffffff61;transform:translateY(-2px);box-shadow:0 12px 40px #00000026,0 6px 20px #0000001a}.education-block .education-header{align-items:flex-start;gap:20px;padding:30px;display:flex;position:relative}.education-block .education-header img{object-fit:contain;background:#ffffff1a;border-radius:8px;flex-shrink:0;width:80px;height:80px;padding:8px;transition:transform .3s}.education-block .education-header img:hover{transform:scale(1.05)}.education-block .education-header .education-text-header{text-align:left;flex:1;min-width:0}.education-block .education-header .education-text-header h3{color:var(--contact-base);margin:0 0 8px;font-size:1.4rem;font-weight:600;line-height:1.3}.education-block .education-header .education-text-header h3 a{color:inherit;text-decoration:none;transition:color .3s}.education-block .education-header .education-text-header h3 a:hover{color:var(--background-alt)}.education-block .education-header .education-text-header h4{color:#ffffffe6;font-size:1.1rem;font-weight:500;line-height:1.4}.education-block .education-header .education-text-header h5{color:#fffc;font-size:.95rem;font-weight:400;line-height:1.4}.education-block .education-header .education-text-header h5 a{color:inherit;text-decoration:none}.education-block .education-header .education-text-header p{color:#fffc;-webkit-backdrop-filter:blur(10px);background:#0000004d;border-radius:10px;margin:0;padding:16px 20px;font-size:.9rem;line-height:1.6;box-shadow:inset 0 6px 18px -6px #0000008a}.education-block .education-header .education-text-header p b{color:#fffffff2;font-weight:600}.education-block .education-date{color:#ffffffd9;-webkit-backdrop-filter:blur(15px);letter-spacing:.5px;background:#0006;border:1px solid #ffffff14;border-radius:24px;padding:8px 14px;font-size:.8rem;font-weight:400;position:absolute;top:24px;right:24px}body.dark #education h2{color:#fff}body.dark #education .education-block{background:#0003;border:1px solid #ffffff1a;box-shadow:0 8px 32px #0000004d,0 4px 16px #0003}body.dark #education .education-block:hover{background:#0000004d;border:1px solid #fff3;box-shadow:0 12px 40px #0006,0 6px 20px #0000004d}body.dark #education .education-block .education-header .education-text-header h3{color:#dcdcdc}body.dark #education .education-block .education-header .education-text-header h3 a:hover{color:#fff}body.dark #education .education-block .education-header .education-text-header h4{color:#e0e0e0}body.dark #education .education-block .education-header .education-text-header h5{color:#d0d0d0}body.dark #education .education-block .education-header .education-text-header p{color:#d0d0d0;background:#00000040}body.dark #education .education-block .education-header .education-text-header p b{color:#f0f0f0}body.dark #education .education-block .education-header img{background:#ffffff0d}body.dark #education .education-block .education-date{color:#d0d0d0;background:#0006;border:1px solid #ffffff0d}@media only screen and (max-width:768px){#education .education-block{margin:0 10px}#education .education-block .education-header{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:20px}#education .education-block .education-header img{width:60px;height:60px}#education .education-block .education-header .education-text-header h3{font-size:1.2rem}#education .education-block .education-header .education-text-header h4{font-size:1rem}#education .education-block .education-header .education-text-header h5{font-size:.9rem}#education .education-block .education-header .education-text-header p{font-size:.85rem}#education .education-block .education-date{margin-top:16px;padding:4px 10px;font-size:.8rem;display:inline-block;position:static}}#certifications{text-align:center;background-color:#0000;background-image:linear-gradient(#000,#13131300),url(/img/certifications/certifications.avif);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;padding:50px 15px}#certifications h2{color:#d7d7d7;letter-spacing:1px;margin-bottom:3rem;font-weight:300;position:relative}.certification-block{-webkit-backdrop-filter:blur(30px);background:#ffffff38;border:1px solid #ffffff47;border-radius:12px;max-width:900px;margin:0 auto 20px;padding:0;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000001a,0 4px 16px #0000000d}.certification-block:hover{background:#ffffff47;border:1px solid #ffffff61;transform:translateY(-2px);box-shadow:0 12px 40px #00000026,0 6px 20px #0000001a}.certification-block .certification-header{text-align:left;align-items:flex-start;gap:20px;padding:30px;display:flex;position:relative}.certification-block .certification-header img{object-fit:contain;background:#ffffff1a;border-radius:8px;flex-shrink:0;width:80px;height:80px;padding:8px;transition:transform .3s}.certification-block .certification-header img:hover{transform:scale(1.05)}.certification-block .certification-header .certification-text-header{flex:1;min-width:0}.certification-block .certification-header .certification-text-header h3{color:var(--contact-base);margin:0 0 8px;font-size:1.4rem;font-weight:600;line-height:1.3}.certification-block .certification-header .certification-text-header h3 a{color:inherit;text-decoration:none;transition:color .3s}.certification-block .certification-header .certification-text-header h3 a:hover{color:var(--background-alt)}.certification-block .certification-header .certification-text-header h4{color:#ffffffe6;font-size:1.1rem;font-weight:500;line-height:1.4}.certification-block .certification-header .certification-text-header h4 a{color:inherit;text-decoration:none}.certification-block .certification-header .certification-text-header h5{color:#fffc;-webkit-backdrop-filter:blur(10px);background:#0000004d;border-radius:10px;margin:0;padding:16px 20px;font-size:.95rem;font-weight:400;line-height:1.6;box-shadow:inset 0 6px 18px -6px #0000008a}.certification-block .certification-date{color:#ffffffd9;-webkit-backdrop-filter:blur(15px);letter-spacing:.5px;background:#0000008c;border:1px solid #ffffff29;border-radius:24px;padding:8px 14px;font-size:.8rem;font-weight:400;position:absolute;top:24px;right:24px}body.dark #certifications h2{color:#fff}body.dark #certifications .certification-block{background:#0003;border:1px solid #ffffff1a;box-shadow:0 8px 32px #0000004d,0 4px 16px #0003}body.dark #certifications .certification-block:hover{background:#0000004d;border:1px solid #fff3;box-shadow:0 12px 40px #0006,0 6px 20px #0000004d}body.dark #certifications .certification-block .certification-header .certification-text-header h3{color:#dcdcdc}body.dark #certifications .certification-block .certification-header .certification-text-header h3 a:hover{color:#fff}body.dark #certifications .certification-block .certification-header .certification-text-header h4{color:#e0e0e0}body.dark #certifications .certification-block .certification-header .certification-text-header h5{color:#d0d0d0;background:#00000040}body.dark #certifications .certification-block .certification-header img{background:#ffffff0d}body.dark #certifications .certification-block .certification-date{color:#d0d0d0;background:#0006;border:1px solid #ffffff0d}@media only screen and (max-width:768px){#certifications .certification-block{margin:0 10px 16px}#certifications .certification-block .certification-header{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:20px}#certifications .certification-block .certification-header img{width:60px;height:60px}#certifications .certification-block .certification-header .certification-text-header h3{font-size:1.2rem}#certifications .certification-block .certification-header .certification-text-header h4{font-size:1rem}#certifications .certification-block .certification-header .certification-text-header h5{font-size:.9rem}#certifications .certification-block .certification-date{margin-top:16px;padding:4px 10px;font-size:.8rem;display:inline-block;position:static}}#skills{text-align:center;background-color:#0000;background-image:linear-gradient(#000000e6,#13131300),url(/img/mountain-sunset.avif);background-position:50%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;padding:50px 15px}#skills h2{color:#d7d7d7;margin-bottom:3rem;position:relative}#skills h3{color:#d7d7d7;letter-spacing:.5px;margin-bottom:2rem;font-size:1.4rem;font-weight:100;position:relative}#skills h3:before{content:"";background:var(--accent-color);border-radius:2px;width:4px;height:20px;position:absolute;top:50%;left:-20px;transform:translateY(-50%)}#skills .core-skills{margin-bottom:2rem}#skills .core-skills .core-skills-list{max-width:900px;margin:0 auto;padding:0;display:block}#skills .core-skills .core-skills-list .core-skill{-webkit-backdrop-filter:blur(30px);cursor:default;background:linear-gradient(#ffffff2e,#ffffff14);border:1px solid #ffffff73;border-radius:4px;margin:8px;font-size:1.2em;font-weight:600;list-style:none;transition:all .2s;display:inline-block;position:relative;overflow:hidden;transform:translateY(0);box-shadow:0 10px 30px #0000002e,0 4px 10px #0000001f,inset 0 0 0 1px #fff3}#skills .core-skills .core-skills-list .core-skill:before{content:"";background:linear-gradient(40deg,#b3b3b3,#e0e0e0);border-radius:12px 12px 0 0;height:2px;position:absolute;top:0;left:0;right:0}#skills .core-skills .core-skills-list .core-skill:hover{background:linear-gradient(#ffffff3d,#ffffff1f);border:1px solid #fff9;transform:translateY(-2px);box-shadow:0 14px 36px #00000038,0 6px 16px #00000029,inset 0 0 0 1px #ffffff47}#skills .core-skills .core-skills-list .core-skill:hover:before{background:linear-gradient(40deg,#e0e0e0,#b3b3b3)}#skills .core-skills .core-skills-list .core-skill:active{transform:translateY(-1px);box-shadow:0 6px 20px #0000001a,0 3px 10px #0000000d}#skills .core-skills .core-skills-list .core-skill a{color:var(--contact-base);z-index:1;background:0 0;padding:12px 20px;text-decoration:none;display:block;position:relative}#skills .core-skills .core-skills-list .core-skill a:hover{color:var(--background-alt)}#skills .additional-skills .additional-skills-list{max-width:800px;margin:0 auto;padding:0;display:block}#skills .additional-skills .additional-skills-list .additional-skill{-webkit-backdrop-filter:blur(30px);cursor:default;background:linear-gradient(#ffffff1f,#ffffff0d);border:1px solid #fff6;border-radius:3px;margin:6px;font-size:1em;list-style:none;transition:all .3s;display:inline-block;box-shadow:0 6px 16px #0000001f,0 3px 8px #00000014,inset 0 0 0 1px #ffffff29}#skills .additional-skills .additional-skills-list .additional-skill:hover{background:linear-gradient(#ffffff29,#ffffff14);border:1px solid #ffffff8c;transform:translateY(-1px);box-shadow:0 8px 22px #00000029,0 4px 12px #0000001a,inset 0 0 0 1px #ffffff38}#skills .additional-skills .additional-skills-list .additional-skill:active{transform:translateY(0);box-shadow:0 2px 8px #0000000d}#skills .additional-skills .additional-skills-list .additional-skill a{color:var(--contact-base);background:0 0;padding:6px 12px;display:block}#skills .additional-skills .additional-skills-list .additional-skill a:hover{color:var(--background-alt)}body.dark #skills h2{color:#fff}body.dark #skills h2:after{background:linear-gradient(90deg,var(--accent-color),#f4ef7a)}body.dark #skills h3{color:#e0e0e0}body.dark #skills h3:before{background:var(--accent-color)}body.dark #skills .core-skills .core-skills-list .core-skill{background:linear-gradient(#00000059,#0000002e);border:1px solid #ffffff80;box-shadow:0 10px 30px #00000073,0 4px 14px #00000047,inset 0 0 0 1px #fff3}body.dark #skills .core-skills .core-skills-list .core-skill:hover{background:linear-gradient(#00000073,#00000040);border:1px solid #ffffffb3;box-shadow:0 14px 36px #0000008c,0 6px 18px #00000059,inset 0 0 0 1px #ffffff4d}body.dark #skills .core-skills .core-skills-list .core-skill a{color:#dcdcdc;font-weight:600}body.dark #skills .core-skills .core-skills-list .core-skill a:hover{color:#dcdcdc}body.dark #skills .additional-skills .additional-skills-list .additional-skill{background:linear-gradient(#00000038,#0000001a);border:1px solid #fff6;box-shadow:0 6px 16px #0000004d,0 3px 10px #0000002e,inset 0 0 0 1px #ffffff29}body.dark #skills .additional-skills .additional-skills-list .additional-skill:hover{background:linear-gradient(#0000004d,#0000002e);border:1px solid #fff9;box-shadow:0 8px 22px #00000061,0 4px 12px #00000038,inset 0 0 0 1px #ffffff42}body.dark #skills .additional-skills .additional-skills-list .additional-skill a{color:#e0e0e0;font-weight:500}body.dark #skills .additional-skills .additional-skills-list .additional-skill a:hover{color:#fff}@media only screen and (max-width:768px){#skills .core-skills .core-skills-list .core-skill{margin:6px;font-size:1.1em}#skills .core-skills .core-skills-list .core-skill a{padding:6px 12px;font-size:.9rem}#skills .additional-skills .additional-skills-list .additional-skill{margin:4px}#skills .additional-skills .additional-skills-list .additional-skill a{font-size:.9rem}}#projects{text-align:center;padding-bottom:5rem}#projects h2{color:#464646;margin-bottom:50px}#projects .date{color:var(--text)}#projects .project-link{border:1px solid #f2f2f2;border-radius:4px;transition:all .2s}#projects .project-link:hover{border:1px solid var(--accent-color)}@supports (color:color-mix(in lab,red,red)){#projects .project-link:hover{border:1px solid color-mix(in srgb,var(--accent-color)66%,transparent)}}#projects .project-link:hover{box-shadow:0 2px 10px 0 var(--accent-color)}@supports (color:color-mix(in lab,red,red)){#projects .project-link:hover{box-shadow:0 2px 10px color-mix(in srgb,var(--accent-color)33%,transparent)}}#projects .project-link:hover .project{background:#f2f2f2;transition:all .2s}#projects .grid-container{margin:0 2vw}#projects .grid{grid-gap:1rem;grid-template-columns:repeat(auto-fill,400px);justify-content:center;display:grid}#projects .grid.single{grid-template-columns:1fr 2fr;padding:0 3rem 4rem}#projects .grid.single .project-image img{max-height:20em}#projects .grid.single p{font-size:1rem}#projects .project{grid-column-gap:2rem;background:#fff;border-radius:4px;grid-template-columns:1fr;height:100%;margin:0 auto 30px;padding:1rem;display:grid;position:relative;overflow:hidden}#projects .project-image{margin:auto}#projects .project-image img{max-width:20em;max-height:15em}#projects .project-info h3{color:#464646;margin:0 0 15px;font-size:1.5em;font-weight:300}#projects .project-info p{color:#676767;text-align:left;margin:0 0 15px;font-size:.9em}#projects .project-info p pre{color:var(--accent-color);display:inline}#projects .project-info .thumbnail{text-align:center}#projects .project-info .overflow{text-overflow:ellipsis;-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}#projects .project-info .subtle-link{background:#2a2a2a;border-radius:2px;padding:4px 8px}#projects .svg-wrapper{width:320px;height:0;margin:0 auto;position:relative;top:10%}#contact{text-align:center;background:linear-gradient(#d7d7d7,#0000);padding:8rem 0 10rem}#contact h2{margin:0 0 15px}#contact-form{margin:auto 25vw}#contact-form input,#contact-form textarea{color:#fff;background:#454545;border:1px #2c2c2c;border-radius:4px;width:100%;margin-bottom:10px;padding:10px;transition:all .5s;display:block}#contact-form input::-webkit-input-placeholder{color:#fff}#contact-form textarea::-webkit-input-placeholder{color:#fff}:-moz-any(#contact-form input:-moz-placeholder-shown,#contact-form textarea:-moz-placeholder-shown){color:#fff;opacity:1}:is(#contact-form input:placeholder-shown,#contact-form textarea:placeholder-shown){color:#fff;opacity:1}#contact-form input::-moz-placeholder{color:#fff;opacity:1}#contact-form textarea::-moz-placeholder{color:#fff;opacity:1}:is(#contact-form input:-ms-placeholder-shown,#contact-form textarea:-ms-placeholder-shown),:is(#contact-form input:placeholder-shown,#contact-form textarea:placeholder-shown){color:#fff}#contact-form input:focus,#contact-form textarea:focus{background:#2c2c2c;outline:none}#contact-form textarea{resize:none;height:150px}#contact-form button{color:#6b6b6b;background:#fff;border:none;border-radius:4px;width:100%;padding:5px 10px;font-weight:700;transition:all .5s;display:block;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}#contact-form button:hover{box-shadow:0 10px 10px #00000030,0 6px 6px #0000003b}#contact-form .linked-in-button{color:#fff;margin:1rem auto;background-color:#0a66c2!important}#contact-form .linked-in-button:hover{background-color:#08539e!important}#contact-form .linked-in-button svg{filter:brightness(0)invert();width:auto;height:1.1rem;margin-left:4px;display:inline-block;position:relative;top:-1px}.svg-wrapper .yellow{fill:#0000;stroke-width:2px;stroke-dashoffset:0;stroke-dasharray:10 40;stroke:#ffcf2b;animation:3s .2s infinite draw-yellow}.svg-wrapper .blue{fill:#0000;stroke-width:2px;stroke-dashoffset:40px;stroke-dasharray:100 40;stroke:#0076bf;animation:3s .1s infinite draw-blue}.svg-wrapper .green{fill:#0000;stroke-width:2px;stroke-dashoffset:0;stroke-dasharray:10 40;stroke:#00c081;animation:3s .3s infinite draw-green}.svg-wrapper .shadow{animation:3s .5s infinite draw-shadow}@keyframes draw-yellow{0%{stroke-dasharray:0 540;stroke-dashoffset:-75px}50%{fill:#ffcf2b;stroke-dasharray:760;stroke-dashoffset:0}to{fill:#0000;stroke-dasharray:0 540;stroke-dashoffset:5px}}@keyframes draw-blue{0%{stroke-dasharray:0 540;stroke-dashoffset:-75px}50%{fill:#0076bf;stroke-dasharray:760;stroke-dashoffset:0}to{fill:#0000;stroke-dasharray:0 540;stroke-dashoffset:-45px}}@keyframes draw-green{0%{stroke-dasharray:140 540;stroke-dashoffset:-75px}50%{fill:#00c081;stroke-dasharray:760;stroke-dashoffset:0}to{fill:#0000;stroke-dasharray:0 540;stroke-dashoffset:-175px}}@keyframes draw-shadow{0%{fill:#0000}35%{fill:#bbbdbf}to{fill:#0000}}@keyframes blur{0%,90%{filter:blur()}50%{filter:blur(50px)}}@media only screen and (max-width:1142px){#projects .grid-container{margin:0 10vw}#projects .grid{grid-template-columns:1fr 1fr}}@media only screen and (max-width:992px){#lead{padding:160px 15px 100px}#lead-content h1{font-size:3em}#lead-content h2{font-size:1.75em}#lead-content .headshot{height:15vw}#lead-content .headshot img{width:15vw;height:15vw}#projects .grid{grid-template-columns:1fr 1fr}}@media only screen and (max-width:768px){#lead{padding:100px 15px 120px}#lead-content{height:15vw}#lead-content img{width:15vw;height:15vw}header{z-index:999;height:100%;animation:none;display:none;position:fixed;bottom:0}#mobile-menu-open,#mobile-menu-close{display:block}#menu{height:100%;box-shadow:none;border-radius:0;width:100%;overflow-y:auto}#menu li{margin-bottom:10px;display:block}#menu li a{background:#1c1c1c;border:1px solid #363636;font-size:1.25rem}#menu .dark-mode-toggle{padding:unset;right:unset;display:inline-block;position:relative}#lead-content h1{font-size:2em}#lead-content h2{font-size:1.3em}#lead-content a{padding:10px 20px}#lead-down{display:none}#contact-form{margin:auto 10%}.education-block h3{float:none}.project{grid-column-gap:2rem;grid-template-columns:auto}.project-info{margin:0;padding-top:20px;position:relative;top:auto;transform:none}footer,.social{text-align:center}.vtimeline-content h3{font-size:1.33em}.vtimeline-content h3 i{font-size:.75rem}#projects .grid{grid-template-columns:repeat(auto-fill,400px);gap:1rem}#projects .grid.single{grid-template-columns:1fr}}@media only screen and (max-width:480px){body{font-size:14.5px}#lead-content{height:25vw}#lead-content img{width:25vw;height:25vw}#lead-content a{padding:5px 10px;font-size:.9em}#lead-content .headshot{height:25vw}#lead-content .headshot img{width:25vw;height:25vw}.project{grid-column-gap:2rem;grid-template-columns:auto}.vtimeline-content .heading-grid img{max-width:50px}.vtimeline-content h3{font-size:1.25em}.vtimeline-content h3 i{font-size:.75rem}#projects .grid{grid-gap:1rem;grid-template-columns:1fr}#contact-form{margin:auto 7.5%}}html,body{height:100%}body{flex-direction:column;font-family:Open Sans,sans-serif;font-size:16px;font-weight:300;display:flex}body.active{z-index:-1;overflow:hidden}body::-webkit-scrollbar{background-color:#0000004d;width:.9em}body::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px #0000004d}body::-webkit-scrollbar-thumb{background-color:#3e3e3ecc;outline:1px solid #4e4e4ecc}.text-center{text-align:center}.content{flex:1 0 auto}.footer{background:#f2f2f2;border-top:1px solid #dcd9d9;flex-shrink:0}a{color:var(--text);text-decoration:none}a:hover{color:var(--base-color);transition:all .2s}.justify{text-align:justify}.vtimeline-block li{margin-bottom:10px}.subtle-link{color:#a2a2a2}.loading{place-content:center;height:20vh;display:grid}.loading svg{height:10vh}.icon-link:hover{color:#5f488c;background:0 0;transition:all .2s}#breadcrumbs{background:#f4f4f4;width:100%;padding:.5rem}#breadcrumbs a{color:var(--link);padding:.5rem;transition:all .2s}#breadcrumbs a:hover{color:var(--link-hover);background:0 0}#breadcrumbs span{color:var(--text);padding:.5rem}#breadcrumbs .separator{color:#636363;padding:0 .2rem}.copyright{padding-top:16px;font-size:14px}.copyright p{color:#676767;margin:0}.top{text-align:center}.top span{cursor:pointer;text-align:center;border:3px solid #a7a7a7;border-radius:50%;width:35px;height:35px;margin:12px auto 0;transition:all .3s;display:block}.top span:hover{border:3px solid var(--base-color)}.top svg{color:#676767;position:relative;top:3px}.social{text-align:right}.social ul{margin:2px 0 0;padding:0}.social li{font-size:1.25em;list-style:none;display:inline-block}.social a{color:#676767;padding:10px;display:block}.social a:hover{color:var(--base-color)}.button{min-width:150px;max-width:250px;color:inherit;z-index:1;background:0 0;border:none;margin:1em;padding:1em 2em;display:block;position:relative}.button:focus{outline:none}.button>span{vertical-align:middle}.shadow{box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.shadow-large{box-shadow:0 3px 45px #00000014,0 3px 6px #00000026}.heading{margin:0 0 30px;font-size:2em;font-weight:300;display:inline-block;position:relative}.heading:after{content:"";background:var(--base-color);width:50px;height:1px;margin:0 auto;position:absolute;top:100%;left:0;right:0}.background-alt{background:#f2f2f5}.york-loader{height:200px}*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:after,:before,::backdrop{border-color:var(--color-gray-200,currentcolor)}::file-selector-button{border-color:var(--color-gray-200,currentcolor)}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.bottom-\[40px\]{bottom:40px}.left-\[40px\]{left:40px}.z-1{z-index:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-m-1{margin:calc(var(--spacing)*-1)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing)*2)}.my-4{margin-block:calc(var(--spacing)*4)}.mt-0{margin-top:calc(var(--spacing)*0)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-0{margin-bottom:calc(var(--spacing)*0)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-4{margin-left:calc(var(--spacing)*4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.h-full{height:100%}.w-1\/2{width:50%}.w-full{width:100%}.max-w-sm{max-width:var(--container-sm)}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.list-outside{list-style-position:outside}.list-disc{list-style-type:disc}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing)*1)}:where(.space-y-16>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*16)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*16)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing)*2)}.gap-x-3{column-gap:calc(var(--spacing)*3)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-gray-300{border-color:var(--color-gray-300)}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-\[hsla\(0\,0\%\,100\%\,0\.55\)\]{background-color:#ffffff8c}.bg-blue-50{background-color:var(--color-blue-50)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-neutral-200{background-color:var(--color-neutral-200)}.bg-neutral-300{background-color:var(--color-neutral-300)}.bg-sky-500{background-color:var(--color-sky-500)}.bg-white{background-color:var(--color-white)}.bg-zinc-600\/20{background-color:#52525c33}@supports (color:color-mix(in lab,red,red)){.bg-zinc-600\/20{background-color:color-mix(in oklab,var(--color-zinc-600)20%,transparent)}}.object-cover{object-fit:cover}.object-center{object-position:center}.p-1{padding:calc(var(--spacing)*1)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.px-0{padding-inline:calc(var(--spacing)*0)}.px-5{padding-inline:calc(var(--spacing)*5)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-2{padding-block:calc(var(--spacing)*2)}.py-6{padding-block:calc(var(--spacing)*6)}.py-12{padding-block:calc(var(--spacing)*12)}.py-24{padding-block:calc(var(--spacing)*24)}.pt-6{padding-top:calc(var(--spacing)*6)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-blue-700{color:var(--color-blue-700)}.text-gray-900{color:var(--color-gray-900)}.text-neutral-500{color:var(--color-neutral-500)}.text-neutral-600{color:var(--color-neutral-600)}.text-neutral-700{color:var(--color-neutral-700)}.text-neutral-800{color:var(--color-neutral-800)}.text-orange-700{color:var(--color-orange-700)}.text-sky-500{color:var(--color-sky-500)}.text-stone-500{color:var(--color-stone-500)}.text-stone-700{color:var(--color-stone-700)}.text-stone-800{color:var(--color-stone-800)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.decoration-lime-600{-webkit-text-decoration-color:var(--color-lime-600);text-decoration-color:var(--color-lime-600)}.underline-offset-4{text-underline-offset:4px}.shadow-\[0_2px_15px_-3px_rgba\(0\,0\,0\,0\.07\)\,0_10px_20px_-2px_rgba\(0\,0\,0\,0\.04\)\]{--tw-shadow:0 2px 15px -3px var(--tw-shadow-color,#00000012),0 10px 20px -2px var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.backdrop-blur-\[30px\]{--tw-backdrop-blur:blur(30px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}@media (hover:hover){.hover\:border-white\/30:hover{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.hover\:border-white\/30:hover{border-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.hover\:bg-lime-500:hover{background-color:var(--color-lime-500)}.hover\:bg-sky-600:hover{background-color:var(--color-sky-600)}.hover\:bg-stone-100:hover{background-color:var(--color-stone-100)}.hover\:bg-zinc-600\/30:hover{background-color:#52525c4d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-zinc-600\/30:hover{background-color:color-mix(in oklab,var(--color-zinc-600)30%,transparent)}}.hover\:text-lime-50:hover{color:var(--color-lime-50)}.hover\:text-sky-700:hover{color:var(--color-sky-700)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-white\/30:focus{border-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.focus\:border-white\/30:focus{border-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.focus\:bg-zinc-600\/30:focus{background-color:#52525c4d}@supports (color:color-mix(in lab,red,red)){.focus\:bg-zinc-600\/30:focus{background-color:color-mix(in oklab,var(--color-zinc-600)30%,transparent)}}.focus\:text-lime-100:focus{color:var(--color-lime-100)}.focus\:text-sky-700:focus{color:var(--color-sky-700)}.focus\:shadow-xl:focus{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.active\:bg-zinc-600\/40:active{background-color:#52525c66}@supports (color:color-mix(in lab,red,red)){.active\:bg-zinc-600\/40:active{background-color:color-mix(in oklab,var(--color-zinc-600)40%,transparent)}}.active\:text-lime-200:active{color:var(--color-lime-200)}.active\:shadow-2xl:active{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (min-width:40rem){.sm\:w-auto{width:auto}}@media (min-width:48rem){.md\:container{width:100%}@media (min-width:40rem){.md\:container{max-width:40rem}}.md\:container{max-width:48rem}@media (min-width:64rem){.md\:container{max-width:64rem}}@media (min-width:80rem){.md\:container{max-width:80rem}}@media (min-width:96rem){.md\:container{max-width:96rem}}.md\:-m-2{margin:calc(var(--spacing)*-2)}.md\:mx-1{margin-inline:calc(var(--spacing)*1)}.md\:my-24{margin-block:calc(var(--spacing)*24)}.md\:mb-2{margin-bottom:calc(var(--spacing)*2)}.md\:mb-6{margin-bottom:calc(var(--spacing)*6)}.md\:mb-10{margin-bottom:calc(var(--spacing)*10)}.md\:mb-32{margin-bottom:calc(var(--spacing)*32)}.md\:ml-6{margin-left:calc(var(--spacing)*6)}.md\:grid-cols-\[30vw_1fr\]{grid-template-columns:30vw 1fr}.md\:flex-row{flex-direction:row}.md\:justify-evenly{justify-content:space-evenly}.md\:p-2{padding:calc(var(--spacing)*2)}.md\:px-6{padding-inline:calc(var(--spacing)*6)}.md\:px-12{padding-inline:calc(var(--spacing)*12)}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}}@media (min-width:64rem){.lg\:-mr-14{margin-right:calc(var(--spacing)*-14)}.lg\:mb-0{margin-bottom:calc(var(--spacing)*0)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:px-32{padding-inline:calc(var(--spacing)*32)}.lg\:pt-24{padding-top:calc(var(--spacing)*24)}.lg\:pb-0{padding-bottom:calc(var(--spacing)*0)}.lg\:text-left{text-align:left}}@media (min-width:80rem){.xl\:px-32{padding-inline:calc(var(--spacing)*32)}}.dark\:border-stone-700:is(.dark *){border-color:var(--color-stone-700)}.dark\:border-white\/10:is(.dark *){border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/10:is(.dark *){border-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.dark\:border-zinc-500:is(.dark *){border-color:var(--color-zinc-500)}.dark\:bg-\[hsla\(0\,0\%\,5\%\,0\.55\)\]:is(.dark *){background-color:#0d0d0d8c}.dark\:bg-neutral-600:is(.dark *){background-color:var(--color-neutral-600)}.dark\:bg-neutral-700:is(.dark *){background-color:var(--color-neutral-700)}.dark\:bg-stone-900:is(.dark *){background-color:var(--color-stone-900)}.dark\:bg-violet-600:is(.dark *){background-color:var(--color-violet-600)}.dark\:bg-zinc-600\/20:is(.dark *){background-color:#52525c33}@supports (color:color-mix(in lab,red,red)){.dark\:bg-zinc-600\/20:is(.dark *){background-color:color-mix(in oklab,var(--color-zinc-600)20%,transparent)}}.dark\:bg-zinc-800:is(.dark *){background-color:var(--color-zinc-800)}.dark\:text-blue-500:is(.dark *){color:var(--color-blue-500)}.dark\:text-gray-50:is(.dark *){color:var(--color-gray-50)}.dark\:text-neutral-200:is(.dark *){color:var(--color-neutral-200)}.dark\:text-neutral-300:is(.dark *){color:var(--color-neutral-300)}.dark\:text-orange-500:is(.dark *){color:var(--color-orange-500)}.dark\:text-stone-200:is(.dark *){color:var(--color-stone-200)}.dark\:text-stone-400:is(.dark *){color:var(--color-stone-400)}.dark\:text-violet-50:is(.dark *){color:var(--color-violet-50)}.dark\:text-white:is(.dark *){color:var(--color-white)}.dark\:decoration-violet-500:is(.dark *){-webkit-text-decoration-color:var(--color-violet-500);text-decoration-color:var(--color-violet-500)}.dark\:shadow-black\/20:is(.dark *){--tw-shadow-color:#0003}@supports (color:color-mix(in lab,red,red)){.dark\:shadow-black\/20:is(.dark *){--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-black)20%,transparent)var(--tw-shadow-alpha),transparent)}}@media (hover:hover){.dark\:hover\:border-white\/20:is(.dark *):hover{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:border-white\/20:is(.dark *):hover{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.dark\:hover\:bg-stone-800:is(.dark *):hover{background-color:var(--color-stone-800)}.dark\:hover\:bg-violet-500:is(.dark *):hover{background-color:var(--color-violet-500)}.dark\:hover\:bg-violet-700:is(.dark *):hover{background-color:var(--color-violet-700)}.dark\:hover\:bg-zinc-600\/30:is(.dark *):hover{background-color:#52525c4d}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-zinc-600\/30:is(.dark *):hover{background-color:color-mix(in oklab,var(--color-zinc-600)30%,transparent)}}.dark\:hover\:text-violet-50:is(.dark *):hover{color:var(--color-violet-50)}.dark\:hover\:text-violet-700:is(.dark *):hover{color:var(--color-violet-700)}}.dark\:focus\:border-white\/20:is(.dark *):focus{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.dark\:focus\:border-white\/20:is(.dark *):focus{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.dark\:focus\:bg-zinc-600\/30:is(.dark *):focus{background-color:#52525c4d}@supports (color:color-mix(in lab,red,red)){.dark\:focus\:bg-zinc-600\/30:is(.dark *):focus{background-color:color-mix(in oklab,var(--color-zinc-600)30%,transparent)}}.dark\:focus\:text-violet-100:is(.dark *):focus{color:var(--color-violet-100)}.dark\:focus\:text-violet-700:is(.dark *):focus{color:var(--color-violet-700)}.dark\:active\:bg-zinc-600\/40:is(.dark *):active{background-color:#52525c66}@supports (color:color-mix(in lab,red,red)){.dark\:active\:bg-zinc-600\/40:is(.dark *):active{background-color:color-mix(in oklab,var(--color-zinc-600)40%,transparent)}}.dark\:active\:text-violet-200:is(.dark *):active{color:var(--color-violet-200)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
