body,html{margin:0;height:100%}
.loading-wrapper{
	z-index: 100;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100%;
	background-color: #233F7C;
	transition: transform 1s ease-in;
	background-image: url("data:image/svg+xml,%3Csvg width='68' height='85' viewBox='0 0 68 85' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0)'%3E%3Cpath d='M15.0017 61.4905C14.5992 61.4905 14.2075 61.2865 13.9373 60.9394L0.3808 43.5258C-0.126933 42.8674 -0.126933 41.8428 0.3808 41.1895L13.9373 23.7763C14.4795 23.0743 15.5275 23.0743 16.0697 23.7763L29.6191 41.1895C30.1322 41.8428 30.1322 42.8674 29.6191 43.5258L16.0697 60.9394C15.796 61.2865 15.4097 61.4905 15.0017 61.4905Z' fill='white'/%3E%3Cpath d='M33.4543 38.2405C33.0516 38.2405 32.66 38.0356 32.3897 37.6885L18.8333 20.2758C18.3256 19.6177 18.3256 18.5922 18.8333 17.9397L32.3897 0.52649C32.932 -0.175446 33.9783 -0.175446 34.5223 0.52649L48.0714 17.9397C48.5829 18.5922 48.5829 19.6177 48.0714 20.2758L34.5223 37.6885C34.2467 38.0356 33.8623 38.2405 33.4543 38.2405Z' fill='white'/%3E%3Cpath d='M51.9067 61.4905C51.5023 61.4905 51.1107 61.2865 50.8404 60.9394L37.284 43.5258C36.7762 42.8674 36.7762 41.8428 37.284 41.1895L50.8404 23.7763C51.3844 23.0743 52.4307 23.0743 52.973 23.7763L66.5221 41.1895C67.0355 41.8428 67.0355 42.8674 66.5221 43.5258L52.973 60.9394C52.6991 61.2865 52.3128 61.4905 51.9067 61.4905Z' fill='white'/%3E%3Cpath d='M33.4543 84.353C33.0516 84.353 32.66 84.1485 32.3897 83.8008L18.8333 66.3874C18.3256 65.729 18.3256 64.7044 18.8333 64.0519L32.3897 46.6385C32.932 45.9372 33.9783 45.9372 34.5223 46.6385L48.0714 64.0519C48.5829 64.7044 48.5829 65.729 48.0714 66.3874L34.5223 83.8008C34.2467 84.1485 33.8623 84.353 33.4543 84.353Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0'%3E%3Crect width='68' height='85' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 60px;
}
.loading{
	border-radius: 50%;
    height: 120px;
    width: 120px;
    border: 4px solid rgba(255,255,255,.5);
    border-top: 4px solid #fff;
    animation: spin 1.5s linear infinite;
    position: absolute;
    top: calc(50% - 64px);
    left: calc(50% - 64px);
}
.loader{
	border-radius: 50%;
    height: 60px;
    width: 60px;
    border: 4px solid rgba(37,59,125,.3);
    border-top: 4px solid #253B7D;
    animation: spin 1.5s linear infinite;
    margin: 0 auto;
}
@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}
@keyframes loadingClose{
	0% {
		transform: scale(1);
		opacity: 1;
	}
	100% {
		transform: scale(1.5);
		opacity: 0;
	}
}
.app-wrapper{
	height: calc(100% - 60px);
    padding-top: 60px;
}
.app-container{
	width: 100%;
	margin: 0;
	overflow:hidden;
	height: calc(100% - 82px);
	position: relative;
}
.app-step{
	opacity: 0;
    transform: translate3d(0,10px,0);
    transition: transform 0.2s ease-in-out,opacity 0.2s ease-in-out;
    padding: 20px;
    width: calc(100% - 40px);
    height: calc(100% - 40px);
    overflow-y: auto;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.app-step.current-app-step{
	opacity: 1;
	transform: translate3d(0,0,0);
	z-index: 2;
}
.app-footer{
	padding: 18px 20px;
    display: grid;
    grid-template-columns: auto 110px 110px;
	grid-gap: 0 6px;
	transition: box-shadow 0.2s ease-in-out;
}
.app-footer.app-footer-shadow{
	box-shadow: 0 -2px 5px rgba(13,34,64,.08);
}
button.app-button.app-next-button {
    background: #253B7D;
    color: #fff;
}
button.app-button {
    -webkit-appearance: none;
    border: none;
    padding: 0;
    font-size: 18px;
    font-family: 'Montserrat',sans-serif;
	font-weight: 700;
    border-radius: 20px;
	line-height: 40px;
    cursor: pointer;
	outline: none;
	transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
}
button.app-button.app-back-button {
    color: #253B7D;
    background: #E0E7F1;
	opacity: 0;
}
button.app-button.app-back-button:disabled {
    background: #EEF0F3;
    color: #627084;
    cursor: default;
}
button.app-button.app-next-button:disabled {
    background: #6685BB;
    color: #C2CEE4;
    cursor: default;
}
button.app-button.app-back-button.app-button-loader:disabled {
    width: 20px;
    height: 20px;
    color: transparent;
    background: none;
    border: 2px solid #E0E7F1;
    border-radius: 10px;
    border-top: 2px solid #00338D;
    animation: 1s spin infinite linear;
	margin: 14px 6px 0 auto;
}
@media only screen and (max-width: 767px){
.app-footer {
    display: block;
}
.app-container{
	height: calc(100% - 80px);
}
span.custom-logo-text{display:none !important}
button.app-button {
    float: left;
    height: 44px;
    width: calc(50% - 6px);
}
.app-footer::after {content: "";clear: both;display: table;}
button.app-button.app-next-button {
    float: right;
}
.app-progress-bar {
    max-width: unset;
}
button.app-button.app-back-button.app-button-loader:disabled {
	margin: 26px 0 0 calc(50% - 28px);
}
}
/*Mini-THON APP Customizations*/
.app-step-heading-section {
    max-width: 520px;
    margin: 40px auto;
}
h2.app-step-subheading {
    color: rgba(0,0,0,.8);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-family: "Montserrat",sans-serif;
    font-size: 20px;
    text-align: center;
    margin: 0 0 14px 0;
    font-weight: 800;
}
h1.app-step-heading {
	font-family: "Montserrat",sans-serif;
	font-size: 36px;
	text-align: center;
	margin: 0;
	font-weight: 700;
}
p.app-step-description {
    font-family: "Montserrat",sans-serif;
    text-align: center;
    line-height: 140%;
    font-size: 16px;
}
.custom-logo-wrapper{
	border-top: 60px solid #253B7D;
	border-left: 30px solid transparent;
	height: 0;
	width: 70%;
	max-width: 420px;
	position: absolute;
	right: 0;
}
.custom-logo {
	margin: -60px 0 0 0;
	height: 60px;
	line-height: 60px;
	position: absolute;
	top: 0;
	right: 20px;
	max-width: calc(100% - 40px);
}
span.custom-logo-text {
	font-family: "Montserrat",sans-serif;
    font-size: 16px;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    display: inline-block;
    vertical-align: top;
}
.custom-logo svg {
    height: 32px;
    padding: 14px 0;
    margin-left: 6px;
}
select.app-dropdown {
    width: 200px;
    font-weight: 700;
    font-family: "Montserrat",sans-serif;
    padding: 12px;
    border: 2px solid;
    border-radius: 60px;
    font-size: 14px;
    cursor: pointer;
    margin: 0 auto;
    display: block;
	outline: none;
}
div#assignments-container {
    max-width: 600px;
    margin: 0 auto;
}

.business-assignment {
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,.1);
    padding: 10px 12px;
    cursor: pointer;
    display: grid;
    grid-template-columns: 60px auto;
    grid-gap: 14px;
	margin: 8px 0;
}

.assignment-icon {
    width: 60px;
    height: 60px;
    border-radius: 6px;
    background: #E0E4ED;
    color: #253B7D;
    font-family: "Montserrat",sans-serif;
    line-height: 60px;
    text-align: center;
    font-size: 34px;
	position: relative;
}

.assignment-icon::before{
	content: "";
	z-index: 1;
	position: absolute;
	background: #253B7D;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.5 24.255L8.29496 19.05C7.70996 18.465 6.76496 18.465 6.17996 19.05C5.59496 19.635 5.59496 20.58 6.17996 21.165L12.45 27.435C13.035 28.02 13.98 28.02 14.565 27.435L30.435 11.565C31.02 10.98 31.02 10.035 30.435 9.44998C29.85 8.86498 28.905 8.86498 28.32 9.44998L13.5 24.255Z' fill='white'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.2s ease-out;
	border-radius: 6px;
}
.business-assignment.selected-business-assignment .assignment-icon::before{
	opacity: 1;
}

p.assignment-name {font-family: "Montserrat",sans-serif;font-weight: 700;font-size: 18px;margin: 0;line-height: 34px;}

p.assignment-status {
    margin: 2px 0 4px 0;
    font-family: "Montserrat",sans-serif;
    font-size: 15px;
    line-height: 20px;
}

p.assignment-note {
    margin: 8px 0 0 0;
    font-family: "Montserrat",sans-serif;
    font-size: 14px;
}
p.assignment-tags {
    margin: 6px 0;
    font-family: "Montserrat",sans-serif;
    font-size: 14px;
    line-height: 26px;
}

span.assignment-tag {
    display: inline-block;
    margin: 0 6px 2px 0;
    padding: 0 6px;
    background: rgba(0,0,0,.06);
    border-radius: 2px;
}
.contact-info-item {
    padding-left: 40px;
    margin: 6px 0;
    font-size: 16px;
    font-family: "Montserrat",sans-serif;
    line-height: 28px;
	background-position: 2px 2px;
	background-size: 24px;
	background-repeat: no-repeat;
	min-height: 26px;
}
.contact-info-container {
    max-width: 576px;
    margin: 0 auto;
    border-radius: 6px;
    border: 1px solid rgba(0,0,0,.1);
    padding: 12px;
}
.contact-info-item.phone-contact-info-item{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23253B7D' width='18px' height='18px'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M6.54 5c.06.89.21 1.76.45 2.59l-1.2 1.2c-.41-1.2-.67-2.47-.76-3.79h1.51m9.86 12.02c.85.24 1.72.39 2.6.45v1.49c-1.32-.09-2.59-.35-3.8-.75l1.2-1.19M7.5 3H4c-.55 0-1 .45-1 1 0 9.39 7.61 17 17 17 .55 0 1-.45 1-1v-3.49c0-.55-.45-1-1-1-1.24 0-2.45-.2-3.57-.57-.1-.04-.21-.05-.31-.05-.26 0-.51.1-.71.29l-2.2 2.2c-2.83-1.45-5.15-3.76-6.59-6.59l2.2-2.2c.28-.28.36-.67.25-1.02C8.7 6.45 8.5 5.25 8.5 4c0-.55-.45-1-1-1z'/%3E%3C/svg%3E");
}
.contact-info-item.person-contact-info-item{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23253B7D' width='18px' height='18px'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M12 6c1.1 0 2 .9 2 2s-.9 2-2 2-2-.9-2-2 .9-2 2-2m0 9c2.7 0 5.8 1.29 6 2v1H6v-.99c.2-.72 3.3-2.01 6-2.01m0-11C9.79 4 8 5.79 8 8s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 9c-2.67 0-8 1.34-8 4v3h16v-3c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
}
.contact-info-item.email-contact-info-item{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23253B7D' width='18px' height='18px'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M22 6c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6zm-2 0l-8 5-8-5h16zm0 12H4V8l8 5 8-5v10z'/%3E%3C/svg%3E");
	text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
.contact-info-item.place-contact-info-item{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23253B7D' width='18px' height='18px'%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3Cpath d='M12 12c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm6-1.8C18 6.57 15.35 4 12 4s-6 2.57-6 6.2c0 2.34 1.95 5.44 6 9.14 4.05-3.7 6-6.8 6-9.14zM12 2c4.2 0 8 3.22 8 8.2 0 3.32-2.67 7.25-8 11.8-5.33-4.55-8-8.48-8-11.8C4 5.22 7.8 2 12 2z'/%3E%3C/svg%3E");
}
.contact-info-item.website-contact-info-item{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' enable-background='new 0 0 24 24' viewBox='0 0 24 24' fill='%23253B7D' width='18px' height='18px'%3E%3Cg%3E%3Crect fill='none' height='24' width='24'/%3E%3Crect fill='none' height='24' width='24'/%3E%3Crect fill='none' height='24' width='24'/%3E%3C/g%3E%3Cg%3E%3Cg/%3E%3Cpath d='M20,4H4C2.9,4,2.01,4.9,2.01,6L2,18c0,1.1,0.9,2,2,2h16c1.1,0,2-0.9,2-2V6C22,4.9,21.1,4,20,4z M4,9h10.5v3.5H4V9z M4,14.5 h10.5V18L4,18V14.5z M20,18l-3.5,0V9H20V18z'/%3E%3C/g%3E%3C/svg%3E");
}
.contact-info-item.notes-contact-info-item{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23253B7D' width='18px' height='18px'%3E%3Cpath d='M0 0h24v24H0V0z' fill='none'/%3E%3Cpath d='M11 7h2v2h-2zm0 4h2v6h-2zm1-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z'/%3E%3C/svg%3E");
}
p.contact-info-text {
    margin: 0 0 4px 0;
    line-height: 22px;
}
a.contact-info-website-link {
    color: #253B7D;
    text-decoration: none;
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 100%;
}
iframe.script-iframe {
    border: 1px solid rgba(0,0,0,.1);
    border-radius: 6px;
    width: 100%;
    display: block;
    max-width: 600px;
    margin: 8px auto 0 auto;
    min-height: 400px;
}
.question-container {
    max-width: 600px;
    margin: 0 auto;
}

.question-wrapper {
    border: 1px solid rgba(0,0,0,.1);
    border-radius: 6px;
    margin: 8px 0;
    padding: 14px 18px;
}

h3.question-label-title {
    margin: 0 0 4px 0;
    font-family: "Montserrat",sans-serif;
    font-size: 18px;
    line-height: 26px;
}

p.question-label-description {font-family: "Montserrat",sans-serif;font-size: 14px;margin: 4px 0 10px 0;}

input.question-text {
    -webkit-appearance: none;
    border: none;
    border-bottom: 1px solid rgba(37,59,125,.2);
    border-radius: 0;
    line-height: 28px;
    padding: 0;
    font-size: 14px;
    font-family: "Montserrat",sans-serif;
    color: #000;
    outline: none;
    transition: border-bottom 0.2s ease-out;
    max-width: 240px;
}

input.question-text:focus {
    border-bottom: 1px solid #253B7D;
}
label.question-radio-label {
    display: block;
    margin: 0 0 4px 0;
    line-height: 30px;
    font-size: 15px;
    font-family: "Montserrat", sans-serif;
    cursor: pointer;
}
label.question-radio-label::after{
	content: "";
	display: table;
	clear: both;
}

input.question-radio {
    -webkit-appearance: none;
    width: 22px;
    height: 22px;
    display: inline-block;
    margin: 4px 10px 4px 0;
    vertical-align: bottom;
    border: 1px solid rgba(37,59,125,.2);
    background: rgba(37,59,125,.05);
    border-radius: 4px;
    outline: none;
    transition: background 0.2s linear;
	float: left;
}

span.question-radio-label-text {
	float: left;
	max-width: calc(100% - 32px);
}

input.question-radio:checked {
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.5 24.255L8.29496 19.05C7.70996 18.465 6.76496 18.465 6.17996 19.05C5.59496 19.635 5.59496 20.58 6.17996 21.165L12.45 27.435C13.035 28.02 13.98 28.02 14.565 27.435L30.435 11.565C31.02 10.98 31.02 10.035 30.435 9.44998C29.85 8.86498 28.905 8.86498 28.32 9.44998L13.5 24.255Z' fill='white'/%3E%3C/svg%3E");
    background-color: #253B7D;
    background-size: 20px;
    background-position: center;
    background-repeat: no-repeat;
}
input.question-radio-other {
    -webkit-appearance: none;
    border: none;
    border-bottom: 1px solid rgba(37,59,125,.2);
    color: #000;
    width: 100%;
    line-height: 32px;
    font-size: 15px;
    font-family: "Montserrat",sans-serif;
    padding: 0;
    margin: 0;
    cursor: pointer;
    outline: none;
    border-radius: 0;
    transition: 0.2s border-bottom ease-out;
	background: none;
}

input.question-radio-other:focus {
    cursor: text;
    border-bottom: 1px solid #253B7D;
}
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
    background: #253B7D !important;
    border-color: #253B7D !important;
}
.flatpickr-calendar {font-family: "Montserrat",sans-serif;}
textarea.question-textarea {
    width: 100%;
    padding: 2px 0 6px 0;
    border: none;
    resize: none;
    border-bottom: 1px solid rgba(37,59,125,.2);
    border-radius: 0;
    -webkit-appearance: none;
    outline: none;
    font-family: "Montserrat",sans-serif;
    line-height: 20px;
    font-size: 15px;
    height: 48px;
    transition: 0.2s border-bottom ease-out;
}

textarea.question-textarea:focus {
    border-bottom: 1px solid #253B7D;
}
p.interaction-recap-text {
    font-family: "Montserrat",sans-serif;
    font-size: 16px;
    line-height: 22px;
    margin: 8px 0 0 0;
}
h3.information-recap-heading {
    font-size: 20px;
    font-family: "Montserrat",sans-serif;
    margin: 0 0 10px 0;
    color: #253B7D;
}
button.restart-button {
    background: #253B7D;
    -webkit-appearance: none;
    border: none;
    border-radius: 40px;
    line-height: 50px;
    padding: 0 18px;
    font-family: "Montserrat",sans-serif;
    font-weight: 700;
    color: #fff;
    font-size: 16px;
    display: block;
    margin: 0 auto;
    cursor: pointer;
    outline: none;
}