body {
    background-color: #151515;
    display: flex;
    flex-direction: column;
    font-family: Syne;
    color: #D9D9D9;
    align-items: center;
    max-width: 100%;
    overflow-x: hidden;
}

img {
    width: 75%; 
}

form {
    display: flex;
    flex-direction: row;
    width: 75vw;
}

#submit {
    margin-left: -10rem;
    max-width: 3rem;
    z-index: 99;
    max-height: 50%;
    background-color: transparent;
}

#submit:focus {
    outline: none;    
    box-shadow: 0 0 0 0;
    animation: none;
}

input {
    font-family: Syne Mono;
    font-size: 1.5rem;
    background-color: #D9D9D9;
    color: #151515;
    border: none;
    border-radius: 1.5rem;
    width: 100%;
    margin: 2rem;
    padding: 2rem;
}

input::placeholder {
    font-family: Syne Mono;
    opacity: 0.5;
    color: #151515;
}

input:focus {
    outline: none;
    box-shadow: 0 0 0 0.1rem #AB4EFD;
    animation: colorShift 15s infinite;
}

p {
    font-size: 1.5rem;
    text-align: center;
}

sup {
    font-size: 1rem;
}

#wordmark {
    display: flex;
    flex-direction: column;
    min-width: 50vw;
    max-width: 100vw; 
    min-height: 20vh;
    align-items: center;
}

#ouigpt {
    min-width: 100%;
    min-height: 20rem;
}

#logomark {
    position: absolute;
    z-index: 9999;
    width: 12rem;
    top: 0;
    left: 0;
    transform: translate3d(var(--mouseX, 0), var(--mouseY, 0), 0) translate(-50%, -50%);
    transition: 2s ease-out;
    transition-property: transform; 
    will-change: transform;
}

.tagline {
    font-family: Syne Mono;
    font-size: 2.5rem;
    margin: 2rem;
}

#ouija {
    margin-top: 4rem;
    margin-bottom: 2rem;
}

.features {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 5rem;
    width: 100%;
}

#spectral {
   font-size: 2.5rem;
}

.props {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

.prop {
    display: flex;
    align-items: center;
    flex-direction: column;
    max-width: 30%;
}

.icon {
    min-height: 75%;
}

.icon:hover {
    min-height: 75%;
    animation: wiggle 2s infinite;
}

.value {
    color: #E1BFFF;
}

.strike {
    text-decoration: line-through;
    margin-bottom: -1.5rem;
}

.caveat {
    font-size: 1rem;
    opacity: 0.5;
    margin-left: auto;
    margin-right: 4rem;
}

@keyframes colorShift {
	0% {
		box-shadow: inset 0 0 0 0.2rem #AB4EFD;
	}
	25% {
		box-shadow: inset 0 0 0 0.2rem #4EABFD;	
	}
	50% {
		box-shadow: inset 0 0 0 0.2rem #4EFDAB;
	}
	75% {
		box-shadow: inset 0 0 0 0.2rem  #FD4EAB;
	}
	100% {	
		box-shadow: inset 0 0 0 0.2rem #FDAB4E;
	}
}	

@keyframes wiggle {
	0% { transform: rotate(0deg); }
	25% { transform: rotate(-2deg); }
	50% { transform: rotate(3deg); }
	75% { transform: rotate(1deg); }
	100% { transform: rotate(-2deg); }
}
