:root{--color-primary:#20232e;--color-blue:#0e3ff4;--color-purple:#842bff;--radius-2:3px;--transition-250:.25s;--animation-1500:1.5s}body{color:#fff;background-color:var(--color-primary);text-shadow:0 0 1px #00000003;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;cursor:none;width:100%;min-height:100vh;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;overflow-x:hidden}a,button{cursor:none}.transition{width:100%;min-height:100vh;animation:pageFadeIn var(--transition-250) ease-in-out both;position:relative}@keyframes pageFadeIn{0%{opacity:0}to{opacity:1}}@keyframes pageFadeOut{0%{opacity:1}to{opacity:0}}@view-transition{navigation:auto}::view-transition{background-color:#fff}::view-transition-old(root){mix-blend-mode:normal;animation:pageFadeOut calc(var(--transition-250) / 2) ease-in both}::view-transition-new(root){mix-blend-mode:normal;animation:pageFadeIn calc(var(--transition-250) / 2) calc(var(--transition-250) / 2) ease-out both}@media (prefers-reduced-motion:reduce){.transition{animation:none}@view-transition{navigation:none}}.page-main{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;width:100%;min-height:100vh;display:flex}.layout-area{grid-template:". . . . . ."1fr". .main main. ."". . . . . ."1fr/60px 15% 1fr 1fr 15% 60px;width:100%;min-height:100vh;display:grid}@media (width<=1023.98px){.layout-area{grid-template-columns:10px 5% 1fr 1fr 5% 10px}}.layout-lines{pointer-events:none;grid-template:". . . . . ."1fr". .main main. ."". . . . . ."1fr/60px 15% 1fr 1fr 15% 60px;width:100%;min-height:100vh;display:grid;position:fixed}@media (width<=1023.98px){.layout-lines{display:none}}.layout-line{border-right:1px solid #7d7d7d33;grid-row:1/-1}[data-page=contact] .layout-lines{z-index:1}[data-page=index] .layout-lines{z-index:15}@keyframes loader-foldUpFront{0%{transform:scaleY(1)}to{transform:scaleY(0)}}@keyframes loader-foldUpBack{0%{transform:translateY(100vh)scaleY(1)}to{transform:translateY(0)scaleY(0)}}@keyframes loader-dotPulse{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}html[data-returning] .loader{display:none}.loader{z-index:9999;pointer-events:none;grid-template-rows:1fr;grid-template-columns:60px 15% 1fr 1fr 15% 60px;width:100%;min-height:100vh;display:grid;position:fixed}.loader-indicator{opacity:0;z-index:10000;pointer-events:none;gap:8px;transition:opacity .4s ease-in-out;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.loader[data-wait=true] .loader-indicator{opacity:1;transition-delay:.25s}.loader-dot{background-color:#fff;border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both loader-dotPulse}.loader-dot:nth-child(2){animation-delay:.16s}.loader-dot:nth-child(3){animation-delay:.32s}.loader-column{position:relative}.loader-column:before,.loader-column:after{content:"";transform-origin:top;width:100%;height:100vh;animation-duration:1s;animation-play-state:running;animation-fill-mode:forwards;position:absolute;top:0;left:0}.loader-column:before{z-index:1;animation-name:loader-foldUpFront}.loader-column:after{animation-name:loader-foldUpBack}.loader-column:first-child:before,.loader-column:first-child:after{animation-delay:.1s}.loader-column:nth-child(2):before,.loader-column:nth-child(2):after{animation-delay:.2s}.loader-column:nth-child(3):before,.loader-column:nth-child(3):after{animation-delay:.3s}.loader-column:nth-child(4):before,.loader-column:nth-child(4):after{animation-delay:.4s}.loader-column:nth-child(5):before,.loader-column:nth-child(5):after{animation-delay:.5s}.loader-column:nth-child(6):before,.loader-column:nth-child(6):after{animation-delay:.6s}.loader[data-wait=true] .loader-column:before,.loader[data-wait=true] .loader-column:after{animation-play-state:paused}.loader-column:before{background-color:var(--color-primary);border-right:1px solid var(--color-primary)}.loader-column:after{background-color:#fff;border-right:1px solid #fff}.cursor{z-index:100000;pointer-events:none;will-change:transform;backface-visibility:hidden;width:16px;height:16px;margin:-8px 0 0 -8px;position:fixed;top:0;left:0}@media (width<=1023.98px){.cursor{display:none}}.cursor-circle{z-index:100000;pointer-events:none;opacity:.7;transform-origin:50%;will-change:transform, width, height, opacity;backface-visibility:hidden;border:1px solid #ff2d2d;border-radius:50%;width:50px;height:50px;margin:-25px 0 0 -26px;transition:width .4s,height .4s,transform .4s,opacity .4s;position:fixed;top:0;left:0}.cursor-circle.is-active{opacity:.3;background-color:#ff2d2d;width:70px;height:70px;margin:-35px 0 0 -36px}@media (width<=1023.98px){.cursor-circle{display:none}}.menu-hamburger{z-index:5001;background:#fff;border:none;padding:20px 15px;position:fixed;top:30px;right:0}.menu-hamburger:hover *{width:30px!important}@media (width<=1023.98px){.menu-hamburger{padding-bottom:21px;top:0}}.menu-patty{background:#000;width:30px;height:3px;margin-bottom:5px;margin-left:auto;transition:width .25s}.menu-patty:last-child{margin-bottom:0}.menu-overlay{z-index:-5000;background:0 0;transition:z-index 0s .5s;position:fixed;inset:0}.menu-overlay.is-open{z-index:5000;transition-delay:0s}.menu-overlayGrid{grid-template-columns:60% 40%;display:grid}@media (width<=767.98px){.menu-overlayGrid{grid-template-columns:100%}}.menu-overlayGridLeft{background:#fff;flex-direction:column;grid-area:1/1;justify-content:center;align-items:center;transition:transform .5s;display:flex;transform:translate(-100%)}.menu-overlay.is-open .menu-overlayGridLeft{transform:translate(0)}.menu-overlayGridRight{grid-area:1/2;width:100%;height:100vh;transition:transform .5s;position:relative;overflow:hidden;transform:translate(100%)}.menu-overlay.is-open .menu-overlayGridRight{transform:translate(0)}.menu-overlayGridRight img{object-fit:cover;object-position:center;width:100%;height:100vh;display:block}.menu-overlayLink{color:#000;margin-bottom:10px;font-size:3em;font-weight:900;text-decoration:none;position:relative}.menu-overlayLink:last-child{margin-bottom:0}.menu-overlayLink:before{content:attr(data-text);color:#fff;background-color:#000;width:0;height:27px;line-height:0;transition:width .2s;position:absolute;bottom:3px;left:0;overflow:hidden}.menu-overlayLink:hover:before{width:100%}.menu-topBar{justify-content:flex-start;align-items:center;width:100%;display:flex;position:absolute;top:20px;left:20px}.menu-topLink{color:#fff;background-color:#000;margin-left:1rem;padding:.25rem .5rem;font-family:ui-monospace,Menlo,Monaco,Cascadia Mono,Segoe UI Mono,Roboto Mono,Oxygen Mono,Ubuntu Monospace,Source Code Pro,Fira Mono,Droid Sans Mono,Courier New,monospace;text-decoration:none;transition:background-color .2s ease-in-out,color .2s ease-in-out}.menu-topLink:hover{color:#000;background-color:#0000001a}@media (width<=767.98px){.menu-topLink{margin-left:.5rem;font-size:.8em}}.menu-bottomBar{align-items:center;width:100%;display:flex;position:absolute;bottom:20px;left:20px}.menu-bar{background:#0000004d;width:100%;height:1px;margin-left:40px;margin-right:60px}.nav{color:#000;z-index:100;background-color:#fff;border-right:1px solid #7d7d7d33;flex-direction:column;justify-content:space-between;width:60px;display:flex;position:fixed;top:0;bottom:0;left:0}@media (width<=1023.98px){.nav{border-right:none;flex-direction:row;width:100%;height:60px;bottom:auto;left:0}}.nav-logo{background-image:linear-gradient(135deg, var(--color-blue) 0%, var(--color-purple) 100%);z-index:3;border-radius:3px;justify-content:center;align-items:center;width:40px;height:40px;margin-top:10px;margin-left:10px;text-decoration:none;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;display:flex}.nav-logo span{justify-content:center;align-items:center;padding-bottom:3px;display:flex}.nav-logo span:after{content:">_";color:#ffffffe6;font-family:monospace;font-size:14px;font-weight:700;line-height:1}.nav-logo:hover{transform:rotate(12deg)scale(1.08);box-shadow:0 0 14px #842bff4d}@media (width<=767.98px){.nav-logo{left:35px}}.nav-contact{writing-mode:vertical-rl;color:#000;margin:15px;font-size:1.2em;font-weight:700;line-height:1.5em;text-decoration:none;position:relative;overflow:hidden;transform:rotate(180deg)}.nav-contact:before{content:"";z-index:-1;background:#0e40f44d;width:100%;height:100%;transition:right .25s;display:block;position:absolute;right:100%}.nav-contact:hover:before{right:60%}@media (width<=1023.98px){.nav-contact{writing-mode:horizontal-tb;transform:none}}@media (width<=767.98px){.nav-contact{writing-mode:horizontal-tb;display:none;transform:none}}.nav-current{text-align:center;color:#fff;background-color:#000;padding:5px;font-family:monospace}@media (width<=1023.98px){.nav-current{writing-mode:vertical-rl;transform:rotate(180deg)}}.canvas{width:100%;height:100%}@keyframes index-fadeStart{0%{opacity:0}to{opacity:1}}.index-imageWrapper{z-index:0;pointer-events:none;width:100%;height:100vh;position:fixed;inset:0}.index-imageWrapper img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.index-words{z-index:10;mix-blend-mode:darken;background:#000c;justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:fixed;inset:0}.index-word{opacity:.2;text-transform:uppercase;margin:0;font-size:11vw;position:absolute}.index-wordAppear,.index-wordEnter{opacity:0;transform:translateY(-200px)}.index-wordAppearActive,.index-wordEnterActive{opacity:.2;transition-property:opacity,transform;transition-duration:1s;transform:translateY(0)}.index-wordAppearDone,.index-wordEnterDone{opacity:.2}.index-wordExit{opacity:.2;transform:translateY(0)}.index-wordExitActive{opacity:0;transition-property:opacity,transform;transition-duration:1s;transform:translateY(200px)}.index-hero{z-index:20;opacity:0;animation-name:index-fadeStart;animation-duration:1.5s;animation-play-state:paused;animation-fill-mode:forwards;position:relative}.index-hero:before{content:"";background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);width:60px;height:4px;margin-bottom:24px;display:block}.index-name{margin:0 0 16px;line-height:.9;overflow:visible}.index-firstName{text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(2.8em,6.5vw,5em);font-weight:800;display:block}.index-lastName{text-transform:uppercase;letter-spacing:-.02em;background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 20px #000c);-webkit-background-clip:text;background-clip:text;font-size:clamp(2.8em,6.5vw,5em);font-weight:800;display:block}.index-role{letter-spacing:2px;text-transform:uppercase;align-items:baseline;gap:10px;font-family:monospace;font-size:1.5em;display:flex}.index-roleTitle{color:#fff;font-weight:700}.index-roleAt{color:#fff6;font-weight:400}.index-roleCompany{color:#fff9;font-weight:400}.index-notice{border-left:3px solid var(--color-purple);background:#00000080;max-width:420px;margin-top:32px;padding:16px 20px;text-decoration:none;transition:background .25s,border-color .25s;display:block}.index-notice:hover{border-color:var(--color-blue);background:#000000a6}.index-noticeLabel{text-transform:uppercase;letter-spacing:3px;color:#fff9;margin-bottom:6px;font-family:monospace;font-size:.85em;font-weight:700;display:inline-block}.index-noticeTitle{text-transform:uppercase;letter-spacing:1px;color:#fff;margin-bottom:4px;font-size:1.3em;font-weight:800;display:block}.index-noticeDesc{color:#ffffffb3;font-size:.85em;font-style:italic;line-height:1.5;display:block}@media (width<=767.98px){.index-firstName,.index-lastName{font-size:10vw}.index-role{flex-direction:column;gap:2px;font-size:.85em}.index-notice{margin-top:20px;padding:10px 14px}.index-noticeLabel{letter-spacing:2px;font-size:.6em}.index-noticeTitle{font-size:.9em}.index-noticeDesc{font-size:.75em}}@keyframes about-slideLeft{0%{transform:translate(-100%)}40%{transform:translate(0)}60%{transform:translate(0)}to{transform:translate(100%)}}@keyframes about-quickFadeIn{0%{color:#0000}49%{color:#0000}50%{color:#000}to{color:#000}}@keyframes about-fadeIn{0%{color:#0000}to{color:#000}}.about-background{z-index:-2;background-color:#fff;position:absolute;inset:0}.about-words{z-index:-1;opacity:.05;color:#000;text-transform:uppercase;height:100vh;font-size:5vh;line-height:11vh;position:absolute;inset:0 0 0 60px;overflow:hidden}@media (width<=767.98px){.about-words{font-size:4vh;line-height:10vh;top:50px;left:calc(10px + 5%)}}.about-word{margin:0;position:absolute;left:0}.about-wordText{white-space:nowrap;color:#0000;vertical-align:top;display:inline-block;position:relative;overflow:hidden}.about-wordText:before{content:"";z-index:1;background-color:#000;width:100%;height:100%;position:absolute;left:0;transform:translate(-100%)}.about-wordAppearActive>.about-wordText,.about-wordEnterActive>.about-wordText{animation-name:about-quickFadeIn;animation-duration:1s;animation-fill-mode:forwards}.about-wordAppearActive>.about-wordText:before,.about-wordEnterActive>.about-wordText:before{animation-name:about-slideLeft;animation-duration:1s}.about-wordExitActive>.about-wordText{animation-name:about-quickFadeIn;animation-duration:1s;animation-direction:reverse}.about-wordExitActive>.about-wordText:before{animation-name:about-slideLeft;animation-duration:1s;animation-direction:reverse}.about-wordAppearDone>.about-wordText,.about-wordEnterDone>.about-wordText{color:#000}.about-paragraph{color:#0000;font-size:1.8em;font-weight:300;animation-name:about-fadeIn;animation-duration:1s;animation-delay:1.5s;animation-fill-mode:forwards;position:relative}.about-paragraph:before{content:"";background-color:var(--color-blue);width:75px;height:5px;margin-bottom:20px;display:block}@media (width<=767.98px){.about-paragraph{font-size:1.2em}}.about-strong{white-space:nowrap;color:#0000;vertical-align:top;font-weight:700;animation:1.25s forwards about-quickFadeIn;display:inline-block;position:relative;overflow:hidden}.about-strong:before{content:"";z-index:1;background-color:#000;width:100%;height:100%;animation:1.25s forwards about-slideLeft;position:absolute;left:0;transform:translate(-100%)}.about-resume{color:#000;align-items:center;width:fit-content;margin-top:20px;font-weight:700;text-decoration:none;display:flex;position:relative;overflow:hidden}.about-resume:before{content:"";z-index:-1;background:#0e40f44d;width:100%;height:100%;transition:top .25s;display:block;position:absolute;top:100%}.about-resume:hover:before{top:60%}.about-resume svg{margin-right:10px}@keyframes code-transformRight{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes code-transformLeft{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes code-cardEnter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.code-background{z-index:-2;background-color:#fff;position:absolute;inset:0}.code-heading{color:#000;margin-top:60px;margin-bottom:20px;font-size:2.5em;font-weight:700}.code-heading:before{content:"";background-color:var(--color-blue);width:50px;height:5px;margin-bottom:20px;display:block}.code-paragraph{color:#000;margin-top:0;margin-bottom:30px;font-size:1.5em;font-weight:300}.code-paragraph a{color:#000;white-space:nowrap;text-decoration:none;position:relative}.code-paragraph a:before{content:"";transform-origin:0;background:#000;height:2px;animation:.3s forwards code-transformLeft;position:absolute;bottom:0;left:0;right:0}.code-paragraph a:after{content:"";background:#0003;height:2px;position:absolute;bottom:0;left:0;right:0}.code-paragraph a:hover:before{animation:.3s forwards code-transformRight}.code-projects{flex-wrap:wrap;gap:20px;width:100%;display:flex}.code-projects:last-child{padding-bottom:60px}.code-project{flex-direction:column;width:calc(50% - 10px);animation:.6s cubic-bezier(.16,1,.3,1) both code-cardEnter;display:flex}@media (width<=767.98px){.code-project{width:100%}}.code-projectHeading{color:#000;margin-top:40px;margin-bottom:8px;font-size:2em;font-weight:700}.code-tags{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.code-tag{background-color:var(--color-blue);border-radius:var(--radius-2);color:#fff;text-transform:uppercase;letter-spacing:1px;padding:2px 8px;font-family:monospace;font-size:.75em;display:inline-block}.code-projectParagraph{color:#000;flex-grow:1;margin-top:0;margin-bottom:16px;font-size:1.3em;font-weight:300;line-height:1.5}.code-projectCommit{background:var(--color-primary);color:#0f0;text-overflow:ellipsis;border-radius:var(--radius-2);max-width:100%;margin-top:0;margin-bottom:16px;padding:16px;font-family:monospace;font-size:.85em;line-height:1.6;overflow-x:hidden}.code-projectButton{text-transform:uppercase;letter-spacing:2px;color:#fff;background-color:#000;background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);text-align:center;border-radius:var(--radius-2);justify-content:center;align-items:center;width:120px;padding:8px 12px;font-size:.9em;font-weight:700;text-decoration:none;transition-property:transform;transition-duration:.25s;display:inline-flex;transform:scale(1)}.code-projectButton svg{margin-right:10px}.code-projectButton:hover{transform:scale(1.2)}.code-sectionHead{align-items:center;gap:16px;width:100%;margin-top:50px;display:flex}.code-sectionTitle{text-transform:uppercase;letter-spacing:3px;color:#000;margin:0;font-size:1.1em;font-weight:700}.code-sectionRule{background-color:var(--color-blue);flex:1;height:2px}.code-sectionCount{letter-spacing:2px;color:var(--color-blue);font-family:monospace;font-size:.85em}.code-sectionHead-archived .code-sectionRule{background-color:#00000026}.code-sectionHead-archived .code-sectionCount{color:#0006}.code-sectionHead-archived .code-sectionTitle{color:#0000008c}.code-sectionNote{color:#0000008c;max-width:46em;margin:12px 0 0;font-size:1.1em;font-weight:300}.code-projects-archived .code-projectHeading{color:#000000a6;margin-top:30px}.code-project-archived .code-projectParagraph{color:#0000008c}.code-project-archived .code-tag{background-color:#00000059}.code-tag-archived{color:#0000008c;border:1px solid #00000040;padding:1px 7px;background-color:#0000!important}.code-project-archived .code-projectButton{color:#0009;background-color:#0000;background-image:none;border:2px solid #0003;transition-property:transform,color,border-color,background-color}.code-project-archived:hover .code-projectHeading,.code-project-archived:focus-within .code-projectHeading,.code-project-archived:hover .code-projectParagraph,.code-project-archived:focus-within .code-projectParagraph{color:#000}.code-project-archived:hover .code-tag,.code-project-archived:focus-within .code-tag{background-color:var(--color-blue)}.code-project-archived:hover .code-projectButton,.code-project-archived:focus-within .code-projectButton{background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);color:#fff;border-color:#0000}@media (prefers-reduced-motion:reduce){.code-project,.code-project-archived .code-projectButton{transition:none;animation:none}}@keyframes art-transformRight{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes art-transformLeft{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes art-lightboxFadeIn{0%{opacity:0}to{opacity:1}}@keyframes art-lightboxScaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes art-lightboxPulse{0%,to{opacity:.4}50%{opacity:1}}.art-background{z-index:-2;background-color:#fff;position:absolute;inset:0}.art-heading{color:#000;margin-top:60px;margin-bottom:10px;font-size:2.5em;font-weight:700}.art-heading:before{content:"";background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);width:50px;height:5px;margin-bottom:20px;display:block}.art-paragraph{color:#000000b3;margin-top:0;margin-bottom:24px;font-size:1.3em;font-weight:300;line-height:1.6}.art-subheading{color:#000;align-items:center;gap:12px;margin-top:48px;margin-bottom:12px;font-size:1.6em;font-weight:700;display:flex}.art-subheading>span{background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);color:#fff;border-radius:var(--radius-2);letter-spacing:1px;padding:2px 8px;font-family:monospace;font-size:.7em}.art-paragraph a{color:#000;white-space:nowrap;text-decoration:none;position:relative}.art-paragraph a:before{content:"";transform-origin:0;background:#000;height:2px;animation:.3s forwards art-transformLeft;position:absolute;bottom:0;left:0;right:0}.art-paragraph a:after{content:"";background:#0003;height:2px;position:absolute;bottom:0;left:0;right:0}.art-paragraph a:hover:before{animation:.3s forwards art-transformRight}.art-artGrid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}@media (width<=767.98px){.art-artGrid{grid-template-columns:1fr}}.art-artItem{border-radius:var(--radius-2);transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.art-artItem:hover{transform:translateY(-3px);box-shadow:0 8px 30px #0000004d}.art-cardImage{background-color:var(--color-primary);aspect-ratio:16/9;display:block;overflow:hidden}.art-cardImage img{object-fit:cover;object-position:center;aspect-ratio:16/9;opacity:0;width:100%;height:auto;transition:opacity .4s ease-out;display:block}.art-cardImage img.art-imgLoaded{opacity:1}.art-artItemHeader{color:#fff;background:#000;justify-content:space-between;align-items:center;margin:0;padding:10px 14px;font-size:.95em;font-weight:700;display:flex}.art-artItemHeader>span{color:#fffc;letter-spacing:1px;font-family:monospace;font-size:1em;font-weight:400}.art-artItemButton{text-transform:uppercase;letter-spacing:2px;color:#fff;background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);border-radius:var(--radius-2);margin-bottom:20px;padding:8px 14px;font-size:.9em;font-weight:700;text-decoration:none;transition:transform .25s;display:inline-block;transform:scale(1)}.art-artItemButton:hover{transform:scale(1.1)}.art-artContainer{border-radius:var(--radius-2);background:#000;width:100%;height:500px;max-height:100vh;margin-bottom:16px;position:relative;overflow:hidden}.art-playButton{border-radius:var(--radius-2);color:#fff;cursor:pointer;z-index:5;background:#00000080;border:1px solid #fff3;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:20px;line-height:1;transition:border-color .2s,background .2s;display:flex;position:absolute;top:16px;right:16px}.art-playButton:hover{border-color:var(--color-blue);background:#0e3ff433}.art-playButton:active{transform:scale(.95)}.art-lightboxOverlay[hidden]{display:none}.art-lightboxOverlay{z-index:99999;background:#000000eb;justify-content:center;align-items:center;animation:.3s ease-out art-lightboxFadeIn;display:flex;position:fixed;inset:0}.art-lightboxImageWrapper{border-radius:var(--radius-2);background:#000;width:90vw;height:90vh;animation:.4s cubic-bezier(.16,1,.3,1) art-lightboxScaleIn;position:relative;overflow:hidden}.art-lightboxImage{object-fit:contain;visibility:hidden;opacity:0;width:100%;height:100%;transition:opacity .3s ease-out;position:absolute;inset:0}.art-lightboxLoading{color:var(--color-blue);letter-spacing:4px;text-transform:uppercase;font-family:monospace;font-size:1.2em;animation:1.5s ease-in-out infinite art-lightboxPulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.art-show{opacity:1;visibility:visible}.art-hide{opacity:0;visibility:hidden}.art-lightboxClose{border-radius:var(--radius-2);color:#fff;z-index:1;background:#0009;border:1px solid #fff3;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2em;transition:border-color .2s,background .2s;display:flex;position:absolute;top:16px;right:16px}.art-lightboxClose:hover{border-color:var(--color-blue);background:#0e3ff433}@keyframes contact-transformRight{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes contact-transformLeft{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes contact-panelInLeft{0%{transform:translate(-120%)}to{transform:translate(0)}}@keyframes contact-panelInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes contact-ruleDraw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes contact-riseIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes contact-barIn{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:translate(0)}}.contact-background{z-index:-2;background-color:#fff;position:fixed;inset:0}.contact-grid{grid-template:"left right"/calc(50vw - 60px) 1fr;width:calc(100vw - 60px);margin-left:60px;display:grid}@media (width<=1023.98px){.contact-grid{grid-template:"left""right"/1fr;width:100%;margin-top:60px;margin-left:0}}.contact-gridLeft{background-color:#000000e6;grid-area:left;align-items:center;min-height:100vh;animation:.55s cubic-bezier(.16,1,.3,1) .1s both contact-panelInLeft;display:flex}@media (width<=1023.98px){.contact-gridLeft{grid-area:1/1;align-items:flex-start;min-height:auto}}.contact-gridRight{background-color:#fff;grid-area:right;align-items:flex-end;width:100%;height:100vh;animation:.55s cubic-bezier(.16,1,.3,1) .1s both contact-panelInRight;display:flex;overflow-y:auto}@media (width<=1023.98px){.contact-gridRight{grid-area:2/1;align-items:flex-start;height:auto;min-height:50vh;padding-top:20px;padding-bottom:30px;overflow-y:visible}}.contact-contactWrapper{padding-left:60px}@media (width<=1023.98px){.contact-contactWrapper{min-height:auto;padding:10px 20px 30px}}.contact-heading{margin-top:10px;margin-bottom:20px;font-size:3em;animation:.4s ease-out .65s both contact-riseIn}.contact-heading:before{content:"";background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);transform-origin:0;width:60px;height:4px;margin-bottom:10px;animation:.4s cubic-bezier(.16,1,.3,1) .7s both contact-ruleDraw;display:block}@media (width<=767.98px){.contact-heading{margin-top:0;margin-bottom:10px}}.contact-shoutOut{text-transform:uppercase;float:left;clear:left;background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);margin:0 0 2px;padding:5px;font-size:1.4em;animation:.4s cubic-bezier(.16,1,.3,1) both contact-barIn}@media (width<=767.98px){.contact-shoutOut{font-size:1.1em}}.contact-shoutOut:first-of-type{animation-delay:.8s}.contact-shoutOut:nth-of-type(2){animation-delay:.88s}.contact-contactList{clear:both;padding-top:30px}.contact-contactList dt,.contact-contactList dd{animation:.4s ease-out both contact-riseIn}.contact-contactList>:nth-child(-n+2){animation-delay:.96s}.contact-contactList>:nth-child(n+3):nth-child(-n+4){animation-delay:1.03s}.contact-contactList>:nth-child(n+5):nth-child(-n+6){animation-delay:1.1s}.contact-contactList>:nth-child(n+7){animation-delay:1.17s}.contact-contactKey{text-transform:uppercase;color:#fff6;letter-spacing:2px;font-family:monospace;font-size:.75em;font-weight:700}.contact-contactValue{margin-bottom:30px;margin-left:0;font-size:1.5em}.contact-contactLink{color:#fff;text-decoration:none;position:relative}.contact-contactLink:before{content:"";transform-origin:0;background:#fff;height:2px;animation:.3s forwards contact-transformLeft;position:absolute;bottom:0;left:0;right:0}.contact-contactLink:after{content:"";background:#fff3;height:2px;position:absolute;bottom:0;left:0;right:0}.contact-contactLink:hover:before{animation:.3s forwards contact-transformRight}.contact-chat{flex-direction:column;justify-content:flex-end;width:100%;min-height:100%;padding:30px;display:flex}@media (width<=1023.98px){.contact-chat{justify-content:flex-start}}.contact-chatLine{align-items:flex-start;margin-bottom:12px;animation:.3s ease-out both contact-riseIn;display:flex}.contact-chatLineUser{justify-content:flex-end}.contact-chatBubble{border-radius:var(--radius-2);color:#000;background:#0000000f;max-width:75%;padding:12px 18px;font-size:1.1em;line-height:1.5}@media (width<=767.98px){.contact-chatBubble{font-size:1em}}.contact-chatBubble span{text-transform:uppercase;color:var(--color-blue);letter-spacing:2px;margin-top:8px;font-family:monospace;font-size:.65em;font-weight:700;display:block}.contact-chatAvatar{flex-shrink:0;width:40px;height:40px;margin-right:16px;display:inline-flex}@media (width<=767.98px){.contact-chatAvatar{width:36px;height:36px;margin-right:10px}}.contact-chatBubbleUser{background-image:linear-gradient(to right, var(--color-blue) 0, var(--color-purple) 100%);color:#fff}.contact-chatBubbleUser span{display:none}.contact-chatOptions{flex-wrap:wrap;gap:8px;margin-top:4px;margin-bottom:12px;padding-left:56px;animation:.3s ease-out both contact-riseIn;display:flex}@media (width<=767.98px){.contact-chatOptions{padding-left:0}}.contact-chatOption{border-radius:var(--radius-2);color:#000;cursor:none;background:0 0;border:1px solid #0003;padding:8px 16px;font-family:inherit;font-size:.9em;font-weight:600;transition:border-color .2s,background .2s}.contact-chatOption:hover{border-color:var(--color-blue);background:#0e3ff40d}@keyframes contact-dotPulse{0%,80%,to{opacity:.3}40%{opacity:1}}.contact-typingDots{align-items:center;gap:4px;display:inline-flex}.contact-typingDots span{width:6px;height:6px;font-size:inherit;letter-spacing:normal;text-transform:none;color:#0000;background:#0006;border-radius:50%;margin-top:0;font-family:inherit;font-weight:400;animation:1.4s infinite contact-dotPulse;display:inline-block}.contact-typingDots span:nth-child(2){animation-delay:.2s}.contact-typingDots span:nth-child(3){animation-delay:.4s}@media (prefers-reduced-motion:reduce){.contact-gridLeft,.contact-gridRight,.contact-heading,.contact-heading:before,.contact-shoutOut,.contact-contactList dt,.contact-contactList dd,.contact-chatLine,.contact-chatOptions{animation:none}}
