footer{background-color:var(--base-400);width:100vw;height:100.5svh;color:var(--base-100);padding:2rem;position:relative}footer .explosion-container{pointer-events:none;width:100%;height:200%;position:absolute;bottom:0;left:0;overflow:hidden}footer img.explosion-particle-img{object-fit:cover;will-change:transform;border-radius:1rem;position:absolute;bottom:-200px;left:50%;transform:translate(-50%);width:var(--particle-size,300px)!important;height:auto!important}.sample-project-page footer img.explosion-particle-img{width:var(--particle-size,300px)!important;height:auto!important}footer .footer-header-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2rem;width:60%;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}footer .footer-byline{width:100%;padding:2rem;display:flex;position:absolute;bottom:0;left:0}footer .footer-byline>div{flex:1;display:flex}footer .footer-copyright{justify-content:flex-end}footer .footer-author{color:var(--base-300);justify-content:center}footer .footer-time{color:var(--base-300);justify-content:flex-start}footer .footer-time span{color:var(--base-100)}footer .footer-byline p{font-size:.9rem}@media (max-width:1000px){footer{height:100svh}footer .explosion-container{display:none}footer .footer-header-content{width:100%;padding:1.25rem}footer .footer-copyright{display:none!important}footer .footer-author{justify-content:flex-end}footer .footer-byline{padding:1.25rem}}
.button{text-transform:uppercase;color:var(--base-500);align-items:center;gap:.5rem;line-height:1;text-decoration:none;display:flex;position:relative}.button .button-label{width:max-content;font-family:var(--font-pangram);color:var(--base-500);-webkit-font-smoothing:antialiased;letter-spacing:-.025rem;font-size:1rem;font-weight:900;display:inline-block;position:relative;transform:translateY(.1rem)}.button .button-label:after{content:"";background:var(--base-500);transform-origin:100% 100%;will-change:transform;width:100%;height:.1rem;transition:transform .25s ease-out;position:absolute;bottom:-.35rem;left:0;transform:scaleX(0)}.button:hover .button-label:after{transform-origin:0 100%;transform:scaleX(1)}.button .button-icon{transform-style:preserve-3d;perspective:1000px;will-change:transform;flex-shrink:0;justify-content:center;align-items:center;transition:transform .6s ease-out;display:flex}.button .button-icon-inner{background-color:var(--base-500);width:1.5rem;height:1.5rem;color:var(--base-100);border-radius:10rem;flex-shrink:0;justify-content:center;align-items:center;display:flex}.button:hover .button-icon{animation:.8s ease-out forwards flipTwice}.button:not(:hover) .button-icon{animation:.8s ease-out forwards flipBack}@keyframes flipTwice{0%{transform:rotateY(0)}to{transform:rotateY(720deg)}}@keyframes flipBack{0%{transform:rotateY(720deg)}to{transform:rotateY(0)}}.button--light,.button--light .button-label{color:#e3e3db}.button--light .button-label:after{background:#e3e3db}.button--light .button-icon-inner{color:#1a1614;background-color:#e3e3db}@media (max-width:1000px){.button .button-label:after{display:none}.button:hover .button-icon,.button:not(:hover) .button-icon{animation:none}}.button .line{will-change:transform;margin-bottom:-.2em;padding-bottom:.2em;position:relative}
