
/**** basic containers, etc. ****/
#rdc_dpa_widget {
	padding: 0 16px;
	background: #f4f4f4;
	font-family: Poppins, Roboto, sans-serif;
	font-size: 15px;
	font-weight: 400;
	text-align: center;
	line-height: 1.3;
	color: #000;
}
#rdc_dpa_widget * {
	box-sizing: border-box;
}
.dpaw-outer {
	margin: 0 auto;
	padding: 20px 0;
	max-width: 650px;
	overflow: hidden;
}
.dpaw-header {
	margin: 0 0 40px;
}
.dpaw-heading {
	margin: 20px 0;
	font-family: inherit;
	font-size: 38px;
	font-weight: 700;
}
.dpaw-heading:first-child {
	margin-top: 0;
}
.dpaw-box {
	position: relative;
	margin: 30px auto;
	padding: 26px;
	border: solid 1px #e8e8e8;
	border-radius: 10px;
	box-shadow: 1px 2px 0 rgba(0, 0, 0, 0.08);
	background: #fff;
}
.dpaw-box .dpaw-heading {
	font-size: 27px;
}
.dpaw-box .dpaw-desc {
	margin: 10px auto 20px;
}


/**** form layers and steps ****/
.dpaw-form {
	font-size: 15px;
}
.dpaw-step {
	display: none;
}
.dpaw-step.dpaw-active {
	display: block;
	animation: 0.5s dpaw-step-in ease-in-out;
}
.dpaw-step.dpaw-inactive {
	animation-name: dpaw-step-out;
}
.dpaw-step.dpaw-active.dpaw-backwards {
	animation-name: dpaw-step-in-backwards;
}
@keyframes dpaw-step-in {
	0% {
		transform: translateX(500px);
		opacity: 0;
	}
	100% {
		transform: translateX(0);
		opacity: 1;
	}
}
@keyframes dpaw-step-out {
	0% {
		transform: translateX(0);
		opacity: 1;
		display: block;
	}
	99% {
		transform: translateX(-500px);
		opacity: 0;
	}
	100% {
		display: none;
		opacity: 0;
	}
}
@keyframes dpaw-step-in-backwards {
	0% {
		transform: translateX(-500px);
		opacity: 0;
	}
	100% {
		transform: translateX(0);
		opacity: 1;
	}
}
.dpaw-box .dpaw-progress-bar {
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 10px 10px 0 0;
	background: #f6f6f6;
	height: 12px;
	width: 100%;
	overflow: hidden;
}
.dpaw-box .dpaw-progress-bar::after {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	background: #d92228;
	width: 10%;
	height: 100%;
	content: "";
	transition: all 0.5s;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-1::after {
	width: 10%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-2::after {
	width: 20%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-3::after {
	width: 30%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-4::after {
	width: 40%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-5::after {
	width: 50%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-6::after {
	width: 60%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-7::after {
	width: 70%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-8::after {
	width: 80%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-9::after {
	width: 90%;
}
.dpaw-box .dpaw-progress-bar.dpaw-step-10::after {
	width: 100%;
}

.dpaw-box .dpaw-step-label {
	position: relative;
	margin: 10px 0 30px;
	color: #666;
}

.dpaw-powered-by {
	margin: 20px 0 0;
	text-align: right;
}
.dpaw-powered-by img {
	width: 140px;
}


/**** form content ****/
.dpaw-answers {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	list-style: none;
	margin: 40px auto;
	padding: 0;
	text-align: left;
	max-width: 450px;
}
.dpaw-answers.dpaw-short {
	max-width: 250px;
}
.dpaw-answers .dpaw-answer {
	margin: 8px 0;
	padding: 0 8px;
	width: 50%;
}
.dpaw-answers .dpaw-answer.dpaw-full {
	width: 100%;
}
.dpaw-text-box {
	margin: 0;
	padding: 8px 14px;
	border: solid 1px #888;
	border-radius: 4px;
	background: #fff;
	font: inherit;
	color: inherit;
	width: 100%;
	max-width: 250px;
	outline: none;
}
.dpaw-text-box:focus {
	border-color: #444;
	box-shadow: 0 0 0 3px #e4e4e4;
}
.dpaw-text-box.dpaw-full {
	max-width: 100%;
}
.dpaw-check-input,
.dpaw-check-input-wrapper {
	position: relative;
	display: block;
	margin: 0;
	padding: 0 0 0 24px;
}
.dpaw-check-input input {
	position: absolute;
	left: 0;
	top: 50%;
	margin: -7px 0 0;
	width: 14px;
	height: 14px;
}
.dpaw-check-input-wrapper .dpaw-check-input {
	position: static;
	margin: 0 0 8px;
	padding: 0;
}
.dpaw-check-input-wrapper .dpaw-check-input input {
	top: 0.75em;
}

.dpaw-form-message {
	text-align: center;
	line-height: 1.6;
	max-width: 380px;
}

.dpaw-step-where .dpaw-location-field {
	display: none;
}
.dpaw-step-where .dpaw-active.dpaw-location-field {
	display: flex;
	animation: 1s dpaw-fade-in 1;
}
.dpaw-locations {
	margin: 0 auto 30px;
	max-width: 550px;
}
.dpaw-location-field {
	position: relative;
}
.dpaw-location-field.dpaw-location-specific {
	/*display: flex;*/
	flex-wrap: wrap;
	justify-content: space-between;
}
.dpaw-location-field.dpaw-location-specific .dpaw-address {
	width: calc(75% - 6px);
	max-width: initial;
}
.dpaw-location-field.dpaw-location-specific .dpaw-zip {
	width: calc(25% - 6px);
}
.dpaw-autocomplete {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	border: solid 1px #ccc;
	background: #fff;
	text-align: left;
	width: 100%;
	max-height: 200px;
	overflow: auto;
}
.dpaw-autocomplete.dpaw-active {
	display: block;
}
.dpaw-autocomplete li {
	margin: 0;
	padding: 8px 12px;
	border-top: solid 1px #eee;
	cursor: pointer;
}
.dpaw-autocomplete li:hover,
.dpaw-autocomplete li.dpaw-selected {
	background: #dedede;
}

@keyframes dpaw-fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

.dpaw-ctas {
	margin-top: 30px;
}



/* buttons */
.dpaw-button {
	display: inline-block;
	margin: 6px;
	padding: 13px 22px;
	border: none;
	border-radius: 50px;
	background: #333;
	font: inherit;
	font-family: Roboto, sans-serif;
	font-size: 16px;
	color: #fff;
	white-space: nowrap;
	line-height: 1;
	text-decoration: none;
	transition: all 0.5s;
	outline: none;
	transition: all 0.4s;
}
.dpaw-button.dpaw-prev {
	background: #777;
}
.dpaw-button:active, .dpaw-button:focus, .dpaw-button:hover {
	color: #fff;
}
.dpaw-button:hover, .dpaw-button:active, .dpaw-button:focus {
	background: #000;
	text-decoration: none;
}
/*.dpaw-form:not(.dpaw-done) .dpaw-view-programs {
	display: none;
}*/
.dpaw-form.dpaw-viewing-programs .dpaw-step-nav {
	display: none;
}
.dpaw-button:disabled {
	background: #ccc;
}
.dpaw-viewing-programs > .dpaw-step-label {
	display: none;
}

.dpaw-loading {
	position: relative;
}
.dpaw-loading::before,
.dpaw-loading::after {
	position: absolute;
	left: 0;
	top: 0;
	margin: 0;
	background: rgba(255, 255, 255, 0.85);
	width: 100%;
	height: 100%;
	z-index: 9;
	content: "";
}
.dpaw-loading::after {
	left: 50%;
	top: 50%;
	box-sizing: border-box;
	display: inline-block;
	width: 24px;
	height: 24px;
	margin: -12px 0 0 -12px;
	border: 4px solid #999;
	border-radius: 50%;
	border-color: #999 #999 transparent transparent;
	background: transparent;
	animation: dpaw-loading-icon 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
	z-index: 9;
	content: "";
}
@keyframes dpaw-loading-icon {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}


/**** programs ****/
.dpaw-details-container {
	margin: 20px 0;
	font-family: Roboto, sans-serif;
	font-weight: 300;
	text-align: left;
	max-height: 550px;
	overflow: auto;
	overflow-wrap: break-word;
}
.dpaw-programs .dpaw-section-heading {
	margin: 20px 0 0;
}
.dpaw-program-list {
	margin-bottom: 30px;
	border-collapse: collapse;
	width: 100%;
}
.dpaw-program-list th,
.dpaw-program-list td {
	padding: 14px 18px;
	font-weight: inherit;
	text-align: left;
}
.dpaw-program-list th {
	font-weight: 500;
}
.dpaw-program-list tr:nth-child(even) td {
	background: #f2f2f2;
}
.dpaw-program-list td:first-child {
	border-radius: 6px 0 0 6px;
}
.dpaw-program-list td:last-child {
	border-radius: 0 6px 6px 0;
}
.dpaw-prototype {
	display: none;
}
.dpaw-program-list .dpaw-max-amount {
	width: 200px;
}
.dpaw-program-list .dpaw-max-amount .dpaw-amount {
	font-weight: 600;
}
.dpaw-program-list .dpaw-max-amount .dpaw-description {
	font-size: 0.85em;
}
.dpaw-program-list .dpaw-program-name .dpaw-type {
	color: #888;
}
.dpaw-program-list p {
	margin: 4px 0;
}
.dpaw-program-list .dpaw-cta {
	margin: 12px 0 0;
}
.dpaw-program-list .dpaw-button {
	margin: 0;
	padding: 8px 16px;
	border: solid 1px #999;
	background: #f7f7f7;
	font-size: 15px;
	color: inherit;
}
.dpaw-program-list .dpaw-button:hover {
	background: #ccc;
}

.dpaw-section-heading {
	margin: 30px 0 20px;
	padding: 0 0 6px;
	border-bottom: solid 1px #ddd;
	font-size: 18px;
	font-weight: 600;
	font-family: Poppins, Roboto, sans-serif;
}
.dpaw-sub-heading {
	margin: 24px 0 6px;
	font-weight: 500;
	font-size: inherit;
}
.dpaw-program-details ul {
	list-style: disc;
	margin: 6px 0 30px;
	padding: 0 0 0 24px;
}
.dpaw-program-details li {
	margin: 6px 0;
	padding: 0;
}
.dpaw-program-details .dpaw-details-container a {
	font: inherit;
	text-decoration: none;
	color: inherit;
}
.dpaw-program-details .dpaw-details-container a:hover {
	text-decoration: underline;
}



/**** affordability calculator ****/
.dpaw-affordability-calculator {
	padding-top: 32px;
	padding-bottom: 32px;
}
.dpaw-affordability-calculator .dpaw-desc {
	margin: 10px auto;
	max-width: 380px;
}









@media (max-width: 500px) {
	#rdc_dpa_widget,
	.dpaw-form {
		font-size: 14px;
	}
	.dpaw-heading {
		font-size: 28px;
	}
	.dpaw-box .dpaw-heading {
		font-size: 20px;
	}
	.dpaw-box {
		padding: 20px;
	}
}

@media (max-width: 450px) {
	.dpaw-program-list tr,
	.dpaw-program-list th,
	.dpaw-program-list td {
		display: block;
	}
	.dpaw-program-list thead {
		display: none;
	}
	.dpaw-program-list td:first-child {
		border-radius: 6px 6px 0 0;
	}
	.dpaw-program-list td:last-child {
		border-radius: 0 0 6px 6px;
	}
	.dpaw-program-list .dpaw-max-amount {
		width: auto;
	}
}




