
/*----- Site -----*/

@import url('https://fonts.googleapis.com/css?family=Lato:400,700');

body {
	font-family: 'Lato', sans-serif!important;
	font-weight:400;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}


.clear {
	clear:both;
}


/*----- Header -----*/

#header {
	padding:0 0 10px 0;
	background-color:#275b97;
	position:relative;
	z-index:20;
}
	#header .desktop-header .sitelogo  {
		width:200px;
		height:auto;
		margin:0 auto;
		display:block;
		margin-top:10px;
	}
	#header .mobile-header  .sitelogo {
		width:160px;
		height:auto;
		margin: 10px;
		display: inline-block;
	}
	#header p.callnow {
		display:block;
		color:#ffffff;
		font-size:14px;
		font-weight:400;
		text-align:center;
		margin-top: 8px;
		margin-bottom:0;
		line-height: 20px;
		float:right;
	}
	#header .mobile-header p.callnow {
		display:inline-block;
		margin: 16px 10px 0px 0px;
		font-size: 20px;
	}
	#header .mobile-header p.img {
		margin-right: 5px;
	}
	#header p.callnow a {
		display:block;
		font-weight:700;
		color:#ff9600;
		font-size:18px;
	}
	#header .business-hours {
		font-size: 13px;
		font-weight: bold;
		color: #fff;
		margin: 3px 0 0 0;
	}
	

/*----- Main Content -----*/

#main-content {
	padding-top:20px;
	padding-bottom: 20px;
	min-height:70vh;
}
	/*----- headline -----*/
	#main-content .headlines {
		text-align:center;
		color:#000000;
		font-family: 'Lato', sans-serif;
		font-weight:400;
	}
		#main-content .headlines h1 {
			font-weight:700;
			font-size:28px;
			line-height:28px;
			margin:0;
		}
		#main-content .headlines h2 {
			font-size:15px;
			color:#909090;
			margin-top:10px;
			margin-bottom:10px;
			line-height: 20px
		}

		#main-site-wrapper {
			position: relative;
			overflow: hidden;
		}

/*----- Mobile progress bar -----*/
/*----- Mobile progress bar -----*/
.dot-progress {
		width:100%;
		margin-top: 15px;
		margin-bottom: 45px;
	}
	.dot-progress ul {
		padding:0;
		width:300px;
		margin:0 auto;
	}
	.dot-progress li {
		list-style-type:none;
		float:left;
		width:16.66%;
		position:relative;
		text-align:center;
		color:#cfcfcf;
	}
		.dot-progress li:before {
			content: '';
			width:18px;
			height:18px;
			line-height:10px;
			border:5px solid #cfcfcf;
			display:block;
			text-align:center;
			margin:0 auto 10px;
			border-radius:50%;
			background-color:#ffffff;
			position:relative;
			z-index:100;
		}
		.dot-progress li:after {
			content: '';
			position:absolute;
			width:100%;
			height:3px;
			background-color:#cfcfcf;
			top:8px;
			left:-50%;
		}
		.dot-progress li:first-child:after {
			content:none;
		}
		.dot-progress li.complete {
			color:#025ea2;
		}
		.dot-progress li.complete:before {
			border-color:#025ea2;
		}
		.dot-progress li.complete + li:after {
			background-color:#025ea2;
		}
		.dot-progress li.active {
			color:#14c704;
		}
		.dot-progress li.active:before {
			border-color:#14c704;
		}
		.dot-progress li.active + li:after {
			background-color:#cfcfcf;
		}

		/*----- Mobile and tablet/desktop progress bars -----*/
		.outer-progress {
			background-color: #D2ECD1;
			border-radius: 25px;
			padding: 0;
		}
		.outer-progress .inner-progress {
			background-color: #1A9918;
			border-radius: 25px;
		}
		.outer-progress .check-container {
			background-color: white;
			border-radius: 100%;
			width: 16px;
			height: 16px;
		}
		.outer-progress .progress-check {
			color: #1A9918;
			font-size: 10px;
			top: -2px;
		}

		/*----- Mobile progress bar -----*/
		/*----- Mobile and tablet/desktop progress bars -----*/
		.outer-progress {
			background-color: #D2ECD1;
			border-radius: 25px;
			padding: 0;
		}
		.outer-progress .inner-progress {
			background-color: #1A9918;
			border-radius: 25px;
		}
		.outer-progress .check-container {
			background-color: white;
			border-radius: 100%;
			width: 16px;
			height: 16px;
		}
		.outer-progress .progress-check {
			color: #1A9918;
			font-size: 10px;
			top: -2px;
		}

		/*----- Mobile progress bar -----*/
		.mobile-progress {
			width: 300px;
			height: 22px;
			text-align: center;
			margin: 10px auto 60px auto;
		}
		.mobile-progress .inner-progress {
			height: 22px;
		}
		.mobile-progress .prog-step1 {
			width: 125px;
		}
		.mobile-progress .prog-step2 {
			width: 145px;
		}
		.mobile-progress .prog-step3 {
			width: 150px;
		}
		.mobile-progress .prog-step4 {
			width: 170px;
		}
		.mobile-progress .prog-step5 {
			width: 250px;
		}
		.mobile-progress .check-container {
			float: right;
			margin: 3px;
		}
		.mobile-progress .progress-note {
			margin: 10px 0;
			font-weight: 800;
		}
		.progress-note .green-text {
			color: #1A9918;
		}
		.progress-note .underlined-text {
			text-decoration: underline;
		}
		.mobile-break {
			display: none;
		}

		/*----- tablet/desktop progress bar -----*/
		.desktop-progress {
			height: 400px;
			width: 22px;
		}
		.desktop-progress .inner-progress {
			padding: 3px;
			position: relative;
			margin-bottom: -3px;
		}
		.desktop-progress .prog-step1 {
			height: 125px;
		}
		.desktop-progress .prog-step2 {
			height: 145px;
		}
		.desktop-progress .prog-step3 {
			height: 190px;
		}
		.desktop-progress .prog-step4 {
			height: 255px;
		}
		.desktop-progress .prog-step5 {
			height: 338px;
		}
		.desktop-progress .check-container {
			position: absolute;
			bottom: 3px;
		}
		.desktop-progress .progress-check {
			left: 3px;
		}
		.desktop-progress .check-container::after {
			position: absolute;
			left: 30px;
			font-weight: 800;
		}
		.desktop-progress .prog-step1 .check-container::after {
			content: "25% COMPLETE!";
		}
		.desktop-progress .prog-step2 .check-container::after {
			content: "35% COMPLETE!";
		}
		.desktop-progress .prog-step3 .check-container::after {
			content: "45% COMPLETE!";
		}
		.desktop-progress .prog-step4 .check-container::after {
			content: "65% COMPLETE!";
		}
		.desktop-progress .prog-step5 .check-container::after {
			content: "75% COMPLETE!";
		}
/*----- tablet/desktop progress bar -----*/
.vert-progress ul {
		padding:0;
		width:260px;
		margin:0 auto;
	}
	.vert-progress li {
		list-style-type:none;
		float:none;
		width:100%;
		position:relative;
		text-align:left;
		color:#cfcfcf;
	}
		.vert-progress li span {
			margin-left: 40px;
			top: -30px;
			position: relative;
		}
		.vert-progress li:before {
			content: '';
			width:18px;
			height:18px;
			line-height:10px;
			border:5px solid #cfcfcf;
			display:block;
			text-align:center;
			margin:0 12px 10px;
			border-radius:50%;
			background-color:#ffffff;
			position:relative;
			z-index:100;
		}
		.vert-progress li:after {
			content: '';
			position:absolute;
			width:3px;
			height:100%;
			background-color:#cfcfcf;
			top:-40px;
			left:20px;
		}
		.vert-progress li:first-child:after {
			content:none;
		}
		.vert-progress li.complete {
			color:#025ea2;
			font-weight:700;
		}
		.vert-progress li.complete:before {
			border-color:#025ea2;
		}
		.vert-progress li.complete + li:after {
			background-color:#025ea2;
		}
		.vert-progress li.active {
			color:#14c704;
			font-weight:700;
		}
		.vert-progress li.active:before {
			border-color:#14c704;
		}
		.vert-progress li.active + li:after {
			background-color:#cfcfcf;
		}
			
		/*----- LP Form -----*/
		#main-content form .form-group label {
			color:#000000;
			font-family: 'Lato', sans-serif;
			font-weight:700;
			font-size:18px;
			margin-bottom:3px;
			display: block;
			text-align: center;
		}
		#main-content form .form-group .form-control {
			width: 220px;
			margin: 0 auto;
			font-size:18px;
		}
		
		select.form-control {
			padding-right:0px!important;
			padding-left:3px!important;
		}
		#main-content form .form-group .radio-container {
			background-color:#ffffff;
			width:100%;
			border:none;
			text-align:center;
		}
		#main-content form .form-group .radio-container .btn-checkbox-radio {
			float:none;
			font-family: 'Lato', sans-serif;
			font-weight:700;
			text-align:center;
			height: 40px;
			padding:0 9px 0;
			margin:0;
			color:#000000;
			font-size:18px;
			line-height: 35px;
			border-radius: 6px;
			-moz-border-radius: 6px;
			-webkit-border-radius: 6px;
			border:2px solid #fff;
			display:inline-block;
		}
		#main-content form .form-group .radio-container .short-width {
			width:25px!important;
		}
		#main-content form .form-group .radio-container .mid-width {
			width:50px!important;
		}
		#main-content form .form-group .radio-container .wide-width {
			width:100px!important;
		}
		#main-content form .form-group .radio-container .btn-checkbox-radio.active, #main-content form .form-group .radio-container .btn-checkbox-radio:hover {
			-webkit-box-shadow:none!important;
			-moz-box-shadow:none!important;
			box-shadow:none!important;
			border:2px solid #14c704;
			color:#14c704;
		}
		#main-content form .form-group .radio-container .radio-dot {
			display:inline-block;
			width:18px;
			height:18px;
			margin:-3px 4px 0 0;
			vertical-align:middle;
			cursor:pointer;
			border-radius:50%;
			-moz-border-radius:50%;
			-webkit-border-radius:50%;
			-webkit-box-shadow: 0px 0px 0px 1px #1bcd00;
			-moz-box-shadow: 0px 0px 0px 1px #1bcd00;
			box-shadow: 0px 0px 0px 1px #1bcd00;
		}
		#main-content form .form-group .radio-container .active .radio-dot {
			background-color:#1bcd00;
			border:2px solid #fff;
		}
		#main-content form .form-group .bday {
			margin-bottom:5px;
			padding-right:0!important\9;
		}
		#main-content form .site-submit-btn {
			background: #ff8a00;
			color:#ffffff;
			font-family: 'Lato', sans-serif;
			font-weight:700;
			text-align:center;
			font-size:20px;
			height:55px;
			width:205px;
			margin:30px auto 60px;
			display:block;
			border-radius: 6px;
			-moz-border-radius: 6px;
			-webkit-border-radius: 6px;
			cursor:pointer;
		}
		#main-content form .site-submit-btn:hover {
			background:#ff5e00;
		}
		#main-content form label.tcpa-disclosure p {
			font-size: 12px;
			font-weight: 400;
		}
		.partners-wrapper {
		  margin: 0px 6px 40px;
  		  text-align: center;
		}
		.partners-wrapper h3 {
		    font-weight: bolder;
		    font-size: 15px;
		    line-height: 20px;
		    margin-top: 0;
		    color: #000;
		}
		.partners-wrapper img {
			width: 110px;
		    height: auto;
		    margin: 12px;
		}

		/*----- Bottom Contact -----*/
		
		#bottom-contact {
			background-color:#275b97;
			padding:20px 0;
			text-align:center;
			color:#ffffff;
			font-family: 'Lato', sans-serif;
			font-weight:400;
			font-size:20px;
		}
		#bottom-contact p {
			margin:0;
		}
		#bottom-contact p span {
			display:block;
			font-weight:700;
		}
		#bottom-contact p a {
			text-decoration:none;
			color:#ffffff;
		}
		#bottom-contact hr {
 			width: 45%;
 			margin-top: 10px;
 			margin-bottom: 10px;
		}
		
/*----- Footer -----*/

#footer {
	padding-top:60px;
	padding-bottom:60px;
	font-size:14px;
	color:#8c8c8c;
	font-family: 'Lato', sans-serif;
	font-weight:400;
	line-height:22px;
}
	
	#footer p span {
		display:inline-block;
	}
	#footer ul {
		list-style-type:none;
		padding-left:0px;
		color:#8c8c8c;
		margin-top:10px;
	}
		#footer ul li {
			color:#efefef;
			display:block;
			margin: 0;
		}
			#footer ul li a {
				cursor:pointer;
				color:#8c8c8c;
				font-family: 'Lato', sans-serif;
				font-weight:700;
			}		
		
		
/*-- Validation Styling --*/

.has-error .form-control {
	background-color:#FFC8C8;
}

.errorMsg {
	font-size: 13px;
	display: block;
	color: #e40000;
	margin-top: 3px;
	margin-left: 1px;
	text-align:center;
}



	/*----- Confirmpage -----*/
	#substep-content .confirm-page-headline {
		font-size:28px;
		font-weight:700;
		color:#000000;
		margin:0 0 15px 0;
		text-align:center;
		line-height: 32px;
	}
	#substep-content .confirm-page-feed-text {
		font-size:16px;
		font-weight:400;
		color:#707070;
		margin-bottom:5px;
		text-align:center;
	}
	
	
	/*----- Personalized -----*/
	.personalized {
		background-color:#ffffff;
		border:2px solid #f0d7b4;
		margin-top:5px;
		margin-bottom:30px;
		padding:15px;
		border-radius: 10px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		position:relative;
		background: #ffffff;
		background: -moz-linear-gradient(top, #ffffff 0%, #fbfaee 100%);
		background: -webkit-linear-gradient(top, #ffffff 0%,#fbfaee 100%);
		background: linear-gradient(to bottom, #ffffff 0%,#fbfaee 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#fbfaee',GradientType=0 );
	}

	.personalized ul {
		list-style-type:none;
		padding:0;
		text-align:center;
		margin:0;
	}
	.personalized ul li {
		font-family: 'Lato', sans-serif;
		font-weight:400;
		font-size:16px;
		color:#000000;
		display:block;
	}
	.personalized ul li span {
		font-family: 'Lato', sans-serif;
		font-weight:700;
		color:#ff9600;
		margin-left:2px;
	}
	.personalized ul li.midspace {
		margin:0;
	}
	
	
	
	

	/*-----------------------------*/
	/*------- Modal Windows -------*/
	/*------- Confirm page  -------*/
	/*-----------------------------*/

	#confirm-popover .modal-content {
		padding:5px 10px;
		margin:10px;
		text-align:center;
	}

	#confirm-popover .modal-content .modal-header {
		color:#2b85c7;
		font-size:1.25em;
		padding-bottom:0px;
	}

	#confirm-popover .modal-content .modal-body {
		color:#333333;

		font-size:1.125em;
	}

	#confirm-popover .modal-content .modal-body .attention {
		font-weight:700;
		color:#ff9600!important;
	}

	#confirm-popover .modal-content .modal-body .number {
		font-size:1.375em;
	}

	.modal-content .modal-body .sm-text {
		font-size:0.875em;
	}

	#confirm-popover .modal-content .modal-body .phone-ring {
		margin-bottom: 15px;
		width: 55px;
		height: auto;
	}

	#confirm-popover .modal-content .modal-body .no-accept {

		font-size:1.125em;
		color:#E00000;
	}

	#confirm-popover .modal-content .modal-footer {
		color:#5e5e5e;

		font-size:.75em;
		text-align:center;
		margin-top:0px;
		padding: 10px 20px 12px;
	}

	#confirm-popover .modal-content .modal-footer a{
		color:#5e5e5e;
	}
	
	#call-end {
		padding-top:0.75em;
		margin-bottom:0.625em;
		text-align:center;
		font-weight:700;
	}

	#call-end .action-msg {
		font-weight:400;
		font-size:1.25em;
		color:#ffffff;
		margin-top:5px;
		margin-left: -15px;
		margin-right: -15px;
	}

	#call-end .feed-title {
		font-size:1em;
		color:#ffffff;
		margin-left: -15px;
		margin-right: -15px;
	}


/*==========  Mobile First Method  ==========*/

/* Custom, iPhone Retina */ 
@media only screen and (min-width : 320px) { 
	.margin-auto p {
		text-align: center;
	}
}

@media only screen and (max-width : 320px) {
	.mobile-progress {
		width: 100%;
	}

	.step3 #main-content .headlines h1,
	.step4 #main-content .headlines h1 {
		font-size: 20px;
	}

	.step5 #main-content .headlines h1 {
		font-size: 18px;
	}
}

/* Extra Small Devices, Phones */ 
@media only screen and (min-width : 480px) {

}

@media only screen and (max-width: 480px) {
	#main-content form .form-group label {
		max-width: 300px;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 15px;
	}

	.step1 #main-content form .site-submit-btn,
	.step3 #main-content form .site-submit-btn,
	.step5 #main-content form .site-submit-btn {
		margin: 10px auto;
	}

	.step3 #main-content .headlines h1,
	.step4 #main-content .headlines h1,
	.step5 #main-content .headlines h1 {
		font-size: 22px;
	}

	.step5 .contact-divider {
		margin-bottom: 10px;
	}
	#bottom-contact hr {
 		width: 45%;
	}
	#bottom-contact p {
		font-size: 14px;
	}
}

@media only screen and (max-width: 767px) {
	.partners-wrapper {
		text-align: center;
	}
}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {
	/*----- Header -----*/
	#header {
		padding:0 0 15px 0;
	}
		#header .desktop .sitelogo {
			float:left;
			margin-top: 20px;
		}
		#header p.callnow {
			display:inline-block;
			float:right;
			color:#ffffff;
			font-size:16px;
			font-weight:400;
			text-align:right;
			margin-top: 10px;
			line-height: 22px;
		}
		#header p.callnow a {
			display:block;
			color:#ff9600;
			font-size:20px;
		}
	/*----- Headline -----*/
	#main-content .headlines {
		text-align:left;
		margin-bottom:15px;
	}
	#main-content .headlines h1 {
		font-size: 35px;
	}
	#main-content .headlines h2 {
		font-size:24px;
		margin-top:15px;
	}
	/*----- form lp -----*/
	#main-content form .form-group label {
		text-align:left;
	}
	#main-content form .form-group .form-control {
		margin:0;
		width:250px;
	}
	#main-content form .site-submit-btn {
		margin: 5px 0px;
	}
	#main-content form .form-group .radio-container {

		text-align:;
	}
	#main-content form .form-group .radio-container .btn-checkbox-radio {
		float:left;
		margin:0;
		display:inline-block;
	}
	#main-content form .form-group .bday {
		width:86px;
		float:left;
		margin-right:5px;
	}
	/*----- Bottom Contact -----*/
	#bottom-contact {
	}
	#bottom-contact p {
		margin:0;
	}
	#bottom-contact img.bottom-call-now {
		display:inline-block;
		margin:0 10px;
	}
	#bottom-contact p span {
		display:inline-block;
		font-weight:700;
	}
	#bottom-contact p:last-of-type {
    	font-size: 16px;
	}
	.errorMsg {
		text-align:left;
	}
	#substep-content .confirm-page-headline {
		font-size:35px;
		line-height: 38px;
	}
	#substep-content .confirm-page-feed-text {
		font-size:18px;
	}
	.personalized ul li {
		display:inline-block;
	}
	.personalized ul li span {
		margin-left:5px;
	}
	.personalized ul li.midspace {
		margin:0 80px;
	}
	.margin-auto p {
		margin-left: auto;
		text-align: left;
	}
	.partners-wrapper {
		margin-top: 160px;
		text-align: left;
	}
	.partners-wrapper img{
		width: 130px;
	}
	.partners-wrapper img:nth-of-type(3) {
		margin-top: 24px;
	}
	.partners-wrapper img:nth-of-type(4) {
		margin-top: 16px;
		margin-left: 0px;
	}
}

@media only screen and (max-width : 767px) {
	.comparequotes #header .prov-num {
		margin-top: 5px 0;
		text-align: center;
	}

	.comparequotes #header .prov-num p {
		margin-bottom: 0;
	}
}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {
	#main-content form .site-submit-btn {
		margin: 0 0 5px -2px;
	}
}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px) {
	#main-content form .site-submit-btn {
		margin: 0 0 5px -5px;
	}
}



.animated {
  -webkit-animation-duration: .1s;
  animation-duration: .1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

@keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }

  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes slideOutLeft {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }

  100% {
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}



.scroll-arrow {
  text-align: center;
  margin:0;
  position:fixed;
  bottom:10px;
  right:15px;
  z-index:999;
 
}
	.scroll-arrow span {
		color:#fe9600;
		font-size:32px;
	}
.bounce {
  -moz-animation: bounce 2s infinite;
  -webkit-animation: bounce 2s infinite;
  animation: bounce 2s infinite;
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-8px);
  }
  60% {
    transform: translateY(-4px);
  }
}

/* New Button Layout */
#main-content form .form-group label:focus {
	border: solid 2px green;
}

input[type='radio'] {
	display: none; 
}

.radio-year label:checked {
    border: 2px solid red!important;
    background: blue;
}
.radio-year label:hover {
    border: 2px solid green!important;
}
.radio-year label:selected {
    border: 2px solid green!important;
    background: blue;
}
.radio-year label:valid {
    border: 2px solid green!important;
}


.btn:active, .btn.active {
    outline: 0;
    background-image: none;
    -webkit-box-shadow: inset 0 10px 16px rgba(0, 255, 125, .125);
    box-shadow: inset 0 12px 50px rgba(0, 255, 125, .15) !important;
}




