.landing-holder {
	display: flex;
	min-height: 100vh;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
}

.landing-holder .landing-branding {
	flex-basis: 40%;
	flex-grow: 0;
	flex-shrink: 0;
	text-align: center;
	height: 80vh;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

.landing-holder .landing-branding .branding {
	flex: 0;
}

.landing-holder .landing-branding .branding .branding-inner {
	display: inline-block;
}

.register-branding {
	position: fixed;
	z-index: 50;
	text-align: center;
	transition: font-size 0.4s, width 0.4s;
}

.landing-holder .landing-branding .branding .branding-inner .logo,
.register-branding .logo {
	max-width: 100%;
	width: 25em;
	margin: 0 auto 1.5em auto;
	display: block;
}

.landing-holder .landing-branding .branding .branding-inner h1,
.register-branding h1 {
	color: #4e2d77;
	text-transform: uppercase;
	font-weight: 200;
	letter-spacing: 0.2em;
	font-size: 4.6em;
	display: block;
	margin: 0 auto;
}

.landing-holder .landing-branding .verbiage {
	flex: 0;
	line-height: 2;
	text-align: center;
	font-size: 1.8em;
	color: #3b3345;
}

.landing-holder .actions {
	flex-basis: 40%;
	flex-grow: 0;
	flex-shrink: 0;
}

.landing-holder .actions .login-thirdparty-holder,
.landing-holder .actions .login-holder,
.landing-holder .actions .forgot-holder,
.landing-holder .actions .signup-holder,
.landing-holder .actions .signup-success-holder,
.landing-holder .actions .confirmed-holder,
.landing-holder .actions .confirmed-error-holder,
.landing-holder .actions .forgot-success-holder,
.landing-holder .actions .reset-holder,
.landing-holder .actions .reset-success-holder {
	padding: 2em;
	background-color: #ffffff;
	border: solid 0.5em #4e2d77;
	box-shadow: 0 0 1em #454545;
	box-sizing: border-box;
	border-radius: 1em;
	min-width: 30vw;
	z-index: 100;
}

.landing-holder .actions .login-holder .thirdparty-holder .google-button-holder {
	display: flex;
	justify-content: center;
}

.landing-holder .actions .login-holder .thirdparty-holder .divider {
	display: flex;
	justify-content: space-between;
	margin-bottom: 1.5em;
	gap: 2em;
	align-items: center;
}

.landing-holder .actions .login-holder .thirdparty-holder .divider .or {
	flex: 0;
	padding: 2em;
	text-transform: uppercase;
	position: relative;
	color: #434343;
	font-weight: 300;
}

.landing-holder .actions .login-holder .thirdparty-holder .divider:before,
.landing-holder .actions .login-holder .thirdparty-holder .divider:after {
	content: '';
	flex: 1;
	display: block;
	border: solid 1px #ababab;
}

.landing-holder .actions .signup-holder.step2 .signup-graduation-school-select-holder .button-holder,
.landing-holder .actions .signup-holder.step2 .signup-graduation-school-input-holder .button-holder {
	text-align: right;
	font-size: 0.9em;
	font-weight: 200;
}

.signup-holder {
	text-align: center;
	padding: 2em;
	background-color: #ffffff;
	border: solid 0.5em #4e2d77;
	box-shadow: 0 0 1em #454545;
	box-sizing: border-box;
	border-radius: 1em;
	max-width: 70vw;
	max-height: 70vw;
	min-width: 40vw;
	z-index: 100;
	display: flex;
	flex-direction: column;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.signup-holder.slid {
	transform: translate(-110%, -50%);
	transition: transform 0.3s;
}

.signup-holder.queued {
	transform: translate(110%, -50%);
}

.signup-holder.ready {
	transform: translate(110%, -50%);
	transition: transform 0.3s;
}

.signup-holder .signup-error {
	padding: 1em;
	background-color: #F97A7C;
	margin-bottom: 1em;
	border-radius: 0.3em;
	font-size: 1.2em;
	display: none;
	flex: 0;
}

.signup-holder .signup-success {
	padding: 1em;
	background-color: #72d4bf;
	margin-bottom: 1em;
	border-radius: 0.3em;
	font-size: 1.2em;
	display: none;
	flex: 0;
}

.signup-holder h2 {
	flex: 0;
	margin: 0 0 1.5em 0;
	font-weight: 300;
	text-transform: uppercase;
	font-size: 1.5em;
	color: #3b3345;
}

.signup-holder .signup-action {
	overflow: auto;
	text-align: left;
}

.signup-holder .signup-action .signup-buttons-holder {
	padding-top: 1.5em;
	text-align: center;
}

.signup-holder .signup-verification-code-input {
	text-align: center;
	width: 10em;
	text-transform: uppercase;
	letter-spacing: 0.25em;
}

.signup-holder .signup-email-holder label,
.signup-holder .signup-cell-holder label {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.signup-holder .signup-email-holder .signup-cell-button,
.signup-holder .signup-cell-holder .signup-email-button {
	font-size: 0.8em;
	letter-spacing: 0.125em;
	box-sizing: border-box;
	transition: color 0.2s, background 0.2s;
}

.signup-holder .signup-email-holder .signup-cell-button:hover,
.signup-holder .signup-cell-holder .signup-email-button:hover {
	border-bottom: 0;
	color: #ffffff;
	background-color: #3b3345;
}

.signup-holder .signup-verification-alternate-reenter-holder {
	margin-top: 1.4em;
	font-size: 0.8em;
	letter-spacing: 0.125em;
}