.homepage-wrapper{
	display: grid;
	grid-template-columns: 1fr 2fr;
	position: relative;
}

.phones{
	/*width: 27%;
 	position: absolute;
  	left: 45px;
  	top: -40px;*/
	position: relative;
	margin-left: 5px;
	width: fit-content;
	z-index: 998;
	height: 100%;
}

.babble-welcome{
	grid-column: 2;
	display: flex;
	flex-direction: column;
	margin: 50px 50px 0 20px;
	row-gap: 20px;
}

.welcome-header{
	color: white;
	font-weight: bold;
	font-size: clamp(2rem, 4.5vw, 5.5rem);
}

.download-buttons{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.download-button{
	cursor: pointer;
	width: 32%;
}

.welcome-text{
	background-image: linear-gradient(to right, #D39D38 0%, #FFE603 49%, #4DA0B0 100%);
	background-clip: text;
	color: transparent;
	font-size: clamp(1.25rem, 2vw, 2.25rem);
}

.phone-input-wrapper{
	display: flex;
	flex-direction: row;
}
.phone-input{
	border-radius: 5px !important;
	font-size: clamp(1rem, 1.5vw, 2rem);
	height: 100%;
	line-height: normal !important;
}

.send-text{
	font-size: clamp(1rem, 1.5vw, 2rem);
	margin-left: 100px;
	padding: 10px 35px !important;
	line-height: normal !important;
}

.homepage-modal{
	z-index: 30;
	position: relative;
	display: grid;
	grid-template-columns: 1fr 2fr;
}

.exit-modal{
	position: absolute;
	margin: 20px;
	right: 0;
	top: 0;
	cursor: pointer;
	font-size: 40px;
	padding: 0 15px !important;
  	border-radius: 5px !important;
}
.exit-modal span{
	background-image: linear-gradient(to right, rgba(10, 24, 50, 0.8) 0%, rgba(67, 17, 106, 0.8) 100%) !important;
	background-clip: text;
	color: transparent;
}

.verify-icon{
	width: clamp(50px, 8vw, 9vw);
}

.not-you{
	text-transform: underline;
	cursor: pointer;
}

.welcome-modal-container{
	position: relative;
	border-top-left-radius: 4px;
  	border-bottom-left-radius: 50px;
  	border-bottom-right-radius: 50px;
  	border-top-right-radius: 50px;
	margin-bottom: 15px;
}
.welcome-modal-container::before{
	pointer-events: none;
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 2px;
	background: linear-gradient(to right, #00E4FF 0%, #4378FF 25%, #31FF2D 47%, #FF5F2D 66%, #FB1F1F 82%, #EB00FF 97%, #F1A1A0 100%);
	mask: linear-gradient(to right, white, white 100%) content-box, linear-gradient(to right, white, white 100%);
	mask-composite: exclude;
}

.verify-container{
	display: flex;
	flex-direction: column;
	padding: 10px;
	justify-content: center;
	align-items: center;
	row-gap: 20px;
}

.verify-container p{
	text-align: center;
}

.verify-heading{
	color: white;
	font-size: 40px;
}

.otp-wrapper{
	display: flex;
	flex-direction: row;
	column-gap: 15px;
}

.otp-input{
	font-size: 40px;
	border: 2px solid transparent !important;
	background: linear-gradient(to right, #43116A 0%, #0A1832 100%) padding-box, linear-gradient(to bottom right, rgba(254,193,64, 0.8) 0%, rgba(250,112,154, 0.8) 100%) border-box;
	background-clip: padding-box, border-box;
	border-radius: 30px !important;
	color: white !important;
	text-align: center;
	width: 8vw !important;
}

.verify-button{
	width: 65%;
	font-size: clamp(1.25rem, 1.75vw, 2.25rem);
	font-weight: bold;
}

.resend{
	cursor: pointer;
	text-align: center;
	font-size: 24px;
}

.setup-form{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}

.setup-button{
	font-size: 30px;
	margin-bottom: 20px;
}

.badges-container{
	border: 2px solid transparent;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	padding: 20px;
}

.badge-img{
	width: 120px;
}

.current-badge-wrapper{
	display: grid;
	place-items: center;
	text-align: center;
}

.badge-wrapper{
	display: flex;
	justify-content: center;
}

.current-badge-text{
	font-size: 40px;
	font-weight: bold;
}

.badge-select-container{
	display: grid;
	grid-template-rows: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.upgrade-label{
	text-align: start;
	align-self: start;
	font-size: 40px !important;
	font-weight: bold;
}

.badge-select{
	display: flex;
	flex-direction: column;
	border-radius: 15px;
	position: relative;
	padding: 10px 20px;
	cursor: pointer;
	border: 0px solid transparent;
	position: relative;
	background-size: clamp(6rem, 7vw, 8rem), 100%;
	background-repeat: no-repeat;
	background-position: 90%;
}
.badge-select::before{
	pointer-events: none;
	position: absolute;
	content: "";
	inset: 0;
	border-radius: inherit;
	padding: 2px;
	background: linear-gradient(to right, #00E4FF 0%, #4378FF 25%, #31FF2D 47%, #FF5F2D 66%, #FB1F1F 82%, #EB00FF 97%, #F1A1A0 100%);
	mask: linear-gradient(to right, white, white 100%) content-box, linear-gradient(to right, white, white 100%);
	mask-composite: exclude;
}
.selected-badge{
	background-color: #AB5102;
}
#blue-badge.badge-select{
	background-image: url('../images/babble-badge-blue.svg'), linear-gradient(to right, #9430D8 31%, #FE2D2D 71%, #FCB045 100%);
}
#blue-badge.selected-badge, #blue-badge.selected-upgrade{
	background-image: url('../images/babble-badge-blue.svg');
}
#cobalt-badge.badge-select{
	background-image: url('../images/babble-badge-cobalt.svg'), linear-gradient(to right, #9430D8 31%, #FE2D2D 71%, #FCB045 100%);
}
#cobalt-badge.selected-badge, #cobalt-badge.selected-upgrade{
	background-image: url('../images/babble-badge-cobalt.svg');
}
#purple-badge.badge-select{
	background-image: url('../images/babble-badge-purple.svg'), linear-gradient(to right, #9430D8 31%, #FE2D2D 71%, #FCB045 100%);
}
#purple-badge.selected-badge, #purple-badge.selected-upgrade{
	background-image: url('../images/babble-badge-purple.svg');
}
#gold-badge.badge-select{
	background-image: url('../images/babble-badge-gold.svg'), linear-gradient(to right, #9430D8 31%, #FE2D2D 71%, #FCB045 100%);
}
#gold-badge.selected-badge, #gold-badge.selected-upgrade{
	background-image: url('../images/babble-badge-gold.svg');
}
.badge-name{
	background-image: linear-gradient(to bottom right, #FE53BB 0%, #8EACCB 55%, #09FBD3 100%);
	background-clip: text;
	color: transparent;
	font-size: 32px;
	font-weight: bold;
}
.badge-desc{
	color: transparent;
	background-clip: text;
	background-image: linear-gradient(to right, #FFEFBA 0%, white 100%);
	font-size: 24px;
	font-weight: bold;
	width: 75%;
}

.upgrade-button{
	display: flex;
	justify-content: center;
	width: 75%;
	font-size: 42px;
	margin-top: 20px;
}
.skip-upgrade{
	background-image: linear-gradient(to bottom right, #FE53BB 0%, #8EACCB 55%, #09FBD3 100%);
	background-clip: text;
	color: transparent;
	text-align: center;
	font-size: 28px;
}

.upgrade-form{
	display: flex;
  	flex-direction: column;
  	row-gap: 10px;
	padding: 20px;
}

.selected-upgrade{
    width: 50%;
    background-color: rgb(171, 81, 2);
    background-image: inherit;
}

.selected-upgrade img{
	grid-column: 1;
    display: flex;
}

.upgrade-form .form-button-group.column{
	display: none;
}

.cancel-button{
	font-size: 34px;
    cursor: pointer;
}

@media screen and (max-width: 1023px){
	.homepage-wrapper, .homepage-modal{
		display: flex;
		flex-direction: column;
	}
	.babble-welcome{
		margin: 50px 20px;
		z-index: 2;
	}
	.phones{
		position: absolute;
		z-index: 1;
		left: 0;
		right: 0;
		margin: 0 auto;
		opacity: 0.3;
	}
	.phone-input-wrapper{
		flex-direction: column;
		align-items: center;
		row-gap: 30px;
	}
	.homepage-modal .exit-modal{
		z-index: 2;
	}
	.send-text{
		margin-left: 0;
	}
	.exit-modal{
		font-size: 26px;
	}
	.otp-input{
		width: 11vw !important;
	}
}

@media screen and (max-width: 750px){
	.welcome-header{
		text-align: center;
	}
	.selected-upgrade{
		width: 100%;
	}
}
@media screen and (max-width: 650px){
	.download-buttons{
		flex-direction: column;
		align-items: center;
		row-gap: 30px;
	}
	.download-button{
		width: 200px;
	}
	.otp-input{
		width: 15vw !important;
		font-size: 20px !important;
	}
	.setup-form{
		display: flex;
		flex-direction: column;
	}
	.badge-select-container{
		display: flex;
		flex-direction: column;
	}
	.upgrade-form .form-button-group.row{
		display: none;
	}
	.upgrade-form .form-button-group.column{
		flex-direction: column;
		justify-content: center;
		display: flex;
	}
}