.grecaptcha-badge{visibility:hidden}

:root {
   --chat-app-height: 100%;
}

#message-circle {
	width: 59px;
	height: 59px;
	background: #04ffb7;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	bottom: 30px;
	right: 60px;
	z-index: 444;
	border-radius: 50% 50% 0;
	cursor: pointer;
	box-shadow: rgba(0, 0, 0, 0.3) 0px 2px 20px;
}

	#message-circle img.times {
	    max-width: 0px;
	    filter: invert(1);	
	    transition: all .4s;
	    transform: rotate(180deg);
	}

		body.message_box-active #message-circle img.times{
		    max-width: 14px;
		    width: 14px;
		    filter: invert(1);	
		    transform: rotate(0deg);
		}

	#message-circle img.chat {
	    max-width: 33px;
	    filter: invert(1);	
	    transition: all .4s;
	    width: 33px;
	}

		body.message_box-active #message-circle img.chat {
		    max-width: 0px;
		    filter: invert(1);	
		}

		#message-box .calendly-embed {
			position: relative;
			height: 100%;
		}


#message-box {
    position: fixed;
    bottom: 70px;
    height: 510px;
    right: 60px;
    width: 370px;
	background: #f9f9f9;
    transition: all .4s;
    z-index: 0;
    opacity: 0;
    overflow: hidden;
    border-radius: 20px;
    box-shadow: rgba(0, 0, 0, 0.3) 0px 4px 12px;
    visibility: hidden;
}

	body.message_box-active #message-box {
		bottom: 105px;
		opacity: 1;
		right: 60px;
		visibility: visible;
		z-index: 444;
	}

	#message-box a.button4 {
	    float: right;
	    display: inline-block;
	    text-align: center;
	    margin: 10px auto 0;
	    padding: 10px 18px;
	    font-size: 10px;
	    font-weight: 600;
	    background: #ff0c40;
	    border-radius: 30px;
	    color: white;
	    letter-spacing: 3px;
	    cursor: pointer;
	}


	#message-box .message-header {
	    background: #1b191a;
	    width: 370px;
	    height: 60px;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    color: white;
	    position: relative;
	    overflow: hidden;
	}

	#message-box .message-footer {
	    height: 50px;
	    color: black;
	    display: flex;
	    align-items: center;
		justify-content: space-evenly;
	}


		#message-box .message-footer .bubble_container {
		    display: flex;
		    justify-content: center;
		    align-items: center;
		}

			#message-box .message-footer .bubble {
			    width: 25px;
			    height: 25px;
			    background: white;
			    display: flex;
			    justify-content: center;
			    align-items: center;
			    color: black;
			    font-size: 15px;
			    border-radius: 50% 50% 0;
			    margin: 0 7px;
			}
			
				#message-box .message-footer .bubble.active {
				    background: #04ffb7;
				    color: #1b191a;
				}

		#message-box .message-footer a.button4 {
		    float: none;
		    margin: 0;
		}
		
/*
		#message-box:not([data-step="1"]) .message-footer a.button4 {
			display: none;
		}
*/

		#message-box[data-step="4"] .message-footer a.button4,
		#message-box.complete .message-footer a.button4 {
			display: none;
		}




	#message-box h3 {
	    color: black;
	    text-align: center;
	    font-size: 20px;
	    padding: 0 10px;
	    margin: 0 0 5px;
	    text-transform: none;
		font-family: 'Scto Grotesk A', Helvetica, Arial, sans-serif;
	}


	#message-box .step-wrapper {
	    width: 331px;
	    margin: 0 auto;
	    height: 400px;
	    padding-top: 10px;
	    background: white;
	    z-index: 55;
	    box-shadow: rgba(116,129,141,.1) 0 3px 8px 0;
	    display: flex;
	    overflow: hidden;
	    border-radius: 8px;
	    box-sizing: border-box;
	}

		#message-box .step-wrapper:after {
			content: "";
			position: absolute;
			bottom: 0;
			left: 0;
			height: 2px;
			width: 0;
			background-color: #d71829;
			display: block;
			transition: all 8s linear;
			z-index: 1000;
		}

			#message-box.complete .step-wrapper:after {
				width: 100%;
			}

		#message-box .radio_container {
			position: relative;
		    padding-right: 1em;
		    box-sizing: border-box;
		    display: flex;
		    justify-content: space-between;
		}
		
			#message-box .radio_container label {
			    display: flex;
				font-size: 13.3px;
			    align-items: center;
			    padding: .25em;
			}

				#message-box .field-container label input[type="radio"] {
					margin: 3px 5px;
				}

		#message-box .step {
		    min-width: 331px;
		    width: 331px;
		    margin: 0 auto;
		    height: 380px;
		    background: white;
		    z-index: 55;
		    transition: all .4s;
			display: flex;
			flex-direction: column;
			box-sizing: border-box;
		}

			#message-box .step.step-hidden {
				width: 0;
				max-width: 0;
				min-width: 0;
				overflow: hidden;
			}
			
			#message-box .select-container {
				position: relative;
			    display: block;
			    width: 90%;
			    box-sizing: border-box;
			    border-radius: 4px;
			    margin: 0 auto;
			    text-align: center;
			}


			#message-box .field-organization {
			    position: relative;
			}

			#message-box .organization_type_container {
				box-sizing: border-box;
				width: 100%;
				overflow: hidden;
			}

				#message-box .organization_type_container .organization_type {
				    pointer-events: none;
				    opacity: 0;
				    position: absolute;
				}

					#message-box .select-container::after {
						content: url(data:image/svg+xml;charset=UTF-8;base64,IDxzdmcgY2xhc3M9J3JlYWRlci1hcnJvdyBoLTEwMCBtYTAgcGEwJyB3aWR0aD0nMjQnIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIHN0cm9rZT0nbm9uZScgc3Ryb2tlLXdpZHRoPScwJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZmlsbD0nIzg4ODg4OCcgZD0nTSA5LjA3LDE3LjQ0IEwgMTQuNCwxMi4xIDE0LjQsMTIuMSBDIDE0LjYsMTEuOTEgMTQuNiwxMS41OSAxNC40LDExLjQgTCA5LjA5LDYuMDggOS4wOSw2LjA4IEMgOC43LDUuNyA4LjcsNS4wOCA5LjA5LDQuNjkgTCA5LjA5LDQuNjkgOS4wOSw0LjY5IEMgOS40Nyw0LjMxIDEwLjA5LDQuMzEgMTAuNDcsNC42OSBMIDE2Ljg1LDExLjA3IDE2Ljg1LDExLjA3IEMgMTcuMjQsMTEuNDYgMTcuMjQsMTIuMDkgMTYuODUsMTIuNDkgTCAxMC40OSwxOC44NSAxMC40OSwxOC44NSBDIDEwLjA5LDE5LjI0IDkuNDYsMTkuMjQgOS4wNywxOC44NSBMIDkuMDcsMTguODUgOS4wNywxOC44NSBDIDguNjgsMTguNDYgOC42OCwxNy44MyA5LjA3LDE3LjQ0IFogTSA5LjA3LDE3LjQ0Jz48L3BhdGg+PC9zdmc+);
						position: absolute;
						right: 4px;
						z-index: 1;
						top: 4px;
						width: 24px;
						height: 24px;
						transform: rotate(90deg);
					}

					div#message-box select {
					    width: 100%;
					    outline: 0;
					    background: #fff;
					    -webkit-appearance: none;
					    border-radius: 2px;
					    border-width: 1px;
					    border-color: #cbcbcb;
					    padding: .5em;
					    font-size: 13.3px;
					}

					#message-box .field-organization[data-type="church"] .organization_type_container .organization_type[data-type="church"] {
						position: relative;
						pointer-events: auto;
						opacity: 1;
					}

					#message-box .field-organization[data-type="ministry"] .organization_type_container .organization_type[data-type="ministry"] {
						position: relative;
						pointer-events: auto;
						opacity: 1;
					}

					#message-box .field-organization[data-type="business"] .organization_type_container .organization_type[data-type="business"] {
						position: relative;
						pointer-events: auto;
						opacity: 1;
					}


	#message-box .step.one {
		padding: 0 .5em;
	}
	
		#message-box .step.one p {
			margin: 5px auto 10px;
			width: 91%;
			font-size: 1.39em;
		}
		
			#message-box .step.one p strong {
				color: #1b191a;
			}

	#message-box[data-step="2"] .step {
		transform: translateX(-331px);
	}
	#message-box[data-step="3"] .step {
		transform: translateX(-662px);
	}
	#message-box[data-step="4"] .step {
		transform: translateX(-993px);
	}

#message-box form {
	margin: 0 auto;
}

#message-box .field-container {
    position: relative;
    margin: 0 auto;
    margin-bottom: 14px;
    width: 91%;
}

	#message-box .field-container.budget {
		margin-top: 2em;
	}

	#message-box .field-container h5 {
	    margin: 0;
	    opacity: 1;
	    font-size: 13px;
	    color: #777;
	    font-weight: normal;
	}

	#message-box .field-container .required_label {
		display: none;
		position: absolute;
		padding-left: 13px;
		color: #D7192A;
		font-size: .8em;
		font-style: italic;
	}
	
		#message-box .field-container.required .required_label {
			display: block;
		}

#message-box input[type="text"], #message-box input[type="tel"], #message-box input[type="email"] {
    border: none;
    padding: 10px 13px 10px 0;
    width: 100%;
    border-bottom: 1px solid #cbcbcb;
	font-family: 'Scto Grotesk A', Helvetica, Arial, sans-serif;
    font-size: 13.3px;
}



.chat-logo {
	max-width: 51%;
/* 	margin-bottom: 37px; */
	filter: invert(1);
	z-index: 3;
}

.small-dots {
    position: absolute;
    right: 0;
    top: -97px;
    max-width: 63%;
    z-index: 0;
}



.from-them {
    position: relative;
    padding: 1px 20px;
    background: #E5E5EA;
    border-radius: 25px;
    color: black;
    width: 70%;
    margin: 20px auto;
    line-height: 1.4;
}

	.from-them:before {
	  content: "";
	  position: absolute;
	  z-index: 2;
	  bottom: -2px;
	  left: -7px;
	  height: 20px;
	  border-left: 20px solid #E5E5EA;
	  border-bottom-right-radius: 16px 14px;
	  -webkit-transform: translate(0, -2px);
	}
	
	.from-them:after {
	  content: "";
	  position: absolute;
	  z-index: 3;
	  bottom: -2px;
	  left: 4px;
	  width: 26px;
	  height: 20px;
	  background: white;
	  border-bottom-right-radius: 10px;
	  -webkit-transform: translate(-30px, -2px);
	}

	.from-them p {
	    font-size: 14px;
	}


#message-box input[type="checkbox"]{
  display:none;
}

#message-box .check-container{
  display:inline-block;
  position:relative;
  width: 90%;
  height:30px;
  margin-left: 5%;
	  font-size: 16px;
}

	#message-box .check-container label {
		cursor: pointer;
	}

	#message-box .check-container input[type="checkbox"] + span.check-box {
	  z-index:15;
	  position:absolute;
	  left:10px;
	  top: 0;
	  transition:all 0.3s ease;
	  cursor:pointer;
	  width:15px;
	  border:2px solid #444;
	  height:15px;
	  box-sizing: unset;
	}
	
	#message-box .tag{
		position: relative;
		margin-left: 40px;
		display: block;
	}
	
	#message-box .check-container input[type="checkbox"]:checked + span.check-box {
	    z-index: 15;
	    display: inline-block;
	    transform: rotate(-50deg) translate(5px,-9px);
	    transition: all 0.3s ease;
	    width: 16px;
	    border-top-color: transparent;
	    border-right-color: transparent;
	    border-bottom-color: #2ecc71;
	    border-left-color: transparent;
	    height: 14px;
	    border-width: 3px;
	}
	
	
	#message-box .check-container input[type="checkbox"]:checked + span.check-box:before {
	    content: "";
	    position: absolute;
	    right: 0;
	    bottom: -3px;
	    width: 100%;
	    height: 11px;
	    border-left: 4px solid #2ecc7a;
	}

#message-box textarea:focus, input:focus{
    outline: none;
}

#message-box input::placeholder {
    opacity: 1;
    font-size: 13px;
    color: #777;
}


		.step.three textarea {
		    width: 84%;
		    margin: 10px auto 0;
		    min-height: 40px;
		    max-height: 80px;
		    border: none;
		    background: #e9eaed;
		    padding: 10px;
		    font-size: 14px;
		    box-sizing: border-box;
		}

		#mainContainer div.step.two a.message-next.chatbox-submit.button4 {
		    margin-top: 5px;
		}

		#message-box .step.two .check-container {
		    height: 25px;
		}



#chat-prompt {
    position: fixed;
    display: flex;
    background: white;
    border-radius: 20px;
    width: 300px;
    height: 190px;
    right: 80px;
    box-shadow: rgba(0, 0, 0, 0.3) 0px 4px 12px;
    bottom: 80px;
    z-index: 4;
    justify-content: center;
    align-items: center;
    padding: 10px;

    flex-direction: column;
    
    transition: all .5s;
    transform: translateY(50px);
    opacity: 0;
    visibility: hidden;
}

	#chat-prompt.prompt_active {
		transform: translateY(0);
		visibility: visible;
		opacity: 1;
	}

	div#chat-prompt.clicked {
	    transform: translateY(50px);
	    opacity: 0;
	    visibility: hidden;
	}
	
	#chat-prompt .chat-message {
	    padding-top: 0;
	    margin: 20px auto 10px;
	}


	#chat-prompt .chat-message p {
		font-size: 11px;
	}

	#chat-prompt a.button4 {
		display: inline-block;
		text-align: center;
		margin: 10px auto 0;
		padding: 10px 18px;
		font-size: 10px;
		font-weight: 600;
		background: #ff0c40;
		border-radius: 30px;
		color: #fff;
		letter-spacing: 3px;
		cursor: pointer;
	}

		#chat-prompt .top-wrapper {
		    display: flex;
		    margin-bottom: 10px;
		    justify-content: center;
		    align-items: center;
		}
		
		#chat-prompt .top-wrapper img {
		    max-width: 40px;
		    max-height: 40px;
		    width: 40px;
		    height: auto;
		    border-radius: 50%;
		    top: 19px;
		    position: relative;
		    z-index: 44;
		}
		
		#bubble-close {
		    width: 20px;
		    height: 20px;
		    background: black;
		    color: white;
		    border-radius: 50%;
		    display: flex;
		    justify-content: center;
		    align-items: center;
		    cursor: pointer;

			position: absolute;
			top: -5px;
			right: -5px;
		}
		
			#bubble-close img {
				max-width: 8px;
				width: 8px;
				filter: invert(1);
				transform: rotate(0deg);
			}



@media (width:1024px){
	body.message_box-active {
		overflow:hidden;
	}
}

@media (max-width:640px){
	body.message_box-active {
		height: 100vh;
		overflow: hidden;
	}

	#chat-prompt{
		max-width: 90vw;
		right: 10px;
	}

	#message-circle {
		bottom: 30px;
		right: 13px;
	}

	#message-box {
		position: fixed;
		bottom: 0px;
		height: 100vh;
		height: var(--chat-app-height);
		right: -40px;
		width: 100vw;
		background: #f9f9f9;
		transition: all .4s;
		z-index: 0;
		opacity: 0;
		overflow: hidden;
		border-radius: 0px;
		box-shadow: rgba(0,0,0,.3) 0 4px 12px;
		visibility: none;
	}
	
		body.message_box-active #message-box {
			top: 0;
			opacity: 1;
			bottom: unset;
			right: 0;
			visibility: visible;
			z-index: 4000;
		}
	
		#message-box .message-header {
/* 			background: #333132; */
			width: 100vw;
			padding-left: 20px;
			justify-content: left;
		}

	
	
		#message-box .step-wrapper {
			width: 100vw;
			overflow-y: scroll;
			border-radius: 0px;
			height: calc(var(--chat-app-height) - 90px - 60px);
		}
	
			#message-box .step {
				min-width: 100vw;
				width: 100vw;
				margin: 0 auto;
				height: 100%;
				background: #fff;
				z-index: 55;
				transition: all .4s;
				display: flex;
				flex-direction: column;
				box-sizing: border-box;
				overflow-y: scroll;
			}

		#message-box h3 {
			color: black;
			text-align: center;
			font-size: 18px;
			padding: 0 10px;
			text-transform: none;
		}

		#message-box .tag {
		    font-size: 14px;
		}

		#message-box .check-container input[type="checkbox"] + span.check-box {
		    width: 10px;
		    height: 10px;
		    top: 2px;
		    left: 15px;
		}
		
		#message-box input[type="text"], #message-box input[type="tel"], #message-box input[type="email"] {
			font-size: 16px;
		}

		.step.two textarea {
			font-size: 16px;
		}

		.from-them {
		    margin: 20px auto 9px;
		}


	#message-box[data-step="2"] .step {
		transform: translateX(-100vw);
	}
	
	#message-box[data-step="3"] .step {
		transform: translateX(-200vw);
	}

	#message-box[data-step="4"] .step {
		transform: translateX(-300vw);
	}


	
	body.message_box-active #message-circle {
		right: 15px;
		top: 14px;
		bottom: auto;
		z-index: 9000;
	}

}
