/*==========  Desktop First Method  ==========*/

/* Large Devices, Wide Screens */
@media only screen and (max-width : 1599px) {
	.header.sect {
		padding-bottom: 80px;
	}
	.header.sect .logo img {
		max-height: 62px;
	}
	.header.sect .info .phone {
		font-size: 24px;
	}
	.main.sect {
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.main.sect > .container .content > .top > .left .intro .caption {
		font-size: 50px;
		line-height: 56px;
	}
	.main.sect > .container .content > .top > .left .intro .desc {
		display: none;
	}
	.steps.sect {
		padding-top: 65px;
		padding-bottom: 65px;
	}
	.preload.sect {
		padding-top: 120px;
	}
	body.form .steps.sect .questions::before {
		top: -80px;
		margin-left: 230px;
	}
	.steps.sect .step.form > .ornaments .img img {
		width: 560px;
	}
	.steps.sect .step.form > .ornaments .ornament1 {
		top: 20px;
	}
	.steps.sect .step.form > .ornaments .ornament2 {
		top: 150px;
	}
	.complete.sect {
		padding-top: 220px;
	}
	.services.sect {
		padding-top: 200px;
	}
	.services.sect .intro {
		margin-bottom: 60px;
	}
	.services.sect .intro .caption {
		font-size: 50px;
		line-height: 56px;
	}
	.services.sect .content > .bottom {
		margin-top: 60px;
	}
	.services.sect .content > .top .items .item > .table > .cell {
		height: 520px;
	}
}
@media only screen and (max-width : 1219px) {
	.header.sect {
		padding-bottom: 150px;
	}
	.header.sect .logo img {
		max-height: 60px;
	}
	.header.sect .info .phone {
		font-size: 22px;
	}
	.main.sect {
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.main.sect > .container .content > .top > .left {
		text-align: center;
		width: 100%;
		max-width: 520px;
		margin-right: 0;
	}
	.main.sect > .container .content > .top > .left .intro {
		margin-bottom: 80px;
	}
	.main.sect > .container .content > .top > .left .intro .caption {
		font-size: 48px;
		line-height: 56px;
	}
	.main.sect > .container .content > .top > .left .intro .slogan {
		padding: 0;
		margin-top: 20px;
	}
	.main.sect > .container .content > .top > .right {
		display: none;
	}
	.popup_politics.sect .intro .caption {
		font-size: 42px;
	}
	.steps.sect {
		padding-top: 100px;
		padding-bottom: 100px;
	}
	.steps.sect .questions {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
	.steps.sect .info {
		width: 100%;
		margin-right: 0;
		margin-top: 30px;
	}
	.steps.sect .info .items .item {
		width: 33.33%;
	}
	.preload.sect {
		padding-top: 250px;
		padding-bottom: 60px;
	}
	.preload.sect .intro {
		margin-bottom: 70px;
	}
	body.form .steps.sect .questions::before {
		display: none;
	}
	.steps.sect .step.form > .ornaments .ornament1,
	.steps.sect .step.form > .ornaments .img {
		display: none;
	}
	.steps.sect .step.form > .ornaments .ornament2 {
		top: -50px;
		margin-left: -120px;
	}
	.complete.sect {
		padding-top: 270px;
	}
	.complete.sect .intro .caption {
		font-size: 56px;
		line-height: 64px;
	}
	.services.sect {
		padding-top: 160px;
		padding-bottom: 50px;
	}
	.services.sect .intro {
		margin-bottom: 40px;
	}
	.services.sect .intro .caption {
		font-size: 48px;
		line-height: 56px;
	}
	.services.sect .content > .top::after {
		display: none;
	}
	.services.sect .content > .bottom {
		margin-top: 40px;
	}
	.services.sect .content > .bottom .info {
		margin-top: 40px;
	}
}

/* Medium Devices, Desktops */
@media only screen and (max-width : 991px) {
	.steps.sect .step .answer .groups .group {
		width: 173px;
	}
	.steps.sect .info .items .item {
		width: 50%;
	}
	.services.sect .content > .top .items .item {
		width: 352px;
	}
	.pdfbut.topbut {
    width: 216px;
    padding: 20px;
    margin: 20px auto;
    background-color: #ee9d59;
}
}

/* Small Devices, Tablets */
@media only screen and (max-width : 767px) {
	.header.sect {
		padding-bottom: 70px;
	}
	.header.sect .logo img {
		max-height: 38px;
	}
	.header.sect .info .phone {
		font-size: 14px;
	}
	.header.sect .info .callback {
		font-size: 10px;
		padding-bottom: 5px;
		margin-top: 5px;
	}
	.header.sect .info .callback::before {
		left: auto;
		right: 0;
	}
	.main.sect {
		min-height: 100vh;
		padding-top: 15px;
		padding-bottom: 15px;
	}
	.main.sect > .container .content > .top > .left {
		max-width: 290px;
	}
	.main.sect > .container .content > .top > .left .intro {
		margin-bottom: 20px;
	}
	.main.sect > .container .content > .top > .left .intro .caption {
		font-size: 28px;
		line-height: 33px;
	}
	.main.sect > .container .content > .top > .left .intro .slogan {
		font-size: 16px;
		line-height: 20px;
		margin-top: 10px;
	}
	.main.sect > .container .content > .top > .left .buttons .button {
		font-size: 14px;
		padding: 22px 40px;
	}
	.popup_callback.sect {
		max-width: 290px;
		padding-left: 10px;
		padding-right: 10px;
	}
	.popup_callback.sect::before {
		display: none;
	}
	.popup_callback.sect .intro .caption {
		font-size: 20px;
	}
	.popup_callback.sect .intro .desc {
		font-size: 14px;
		line-height: 19px;
	}
	.popup_politics.sect {
		padding-left: 20px;	
		padding-right: 20px;	
	}
	.popup_politics.sect .intro {
		margin-bottom: 30px;	
	}
	.popup_politics.sect .intro .caption {
		font-size: 32px;
	}
	.popup_politics.sect .items {
		margin-top: -30px;
	}
	.popup_politics.sect .items .item {
		margin-top: 30px;
	}	
	.popup_politics.sect .items .item .text .caption {
		font-size: 26px;	
	}
	.steps.sect {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.steps.sect .questions {
		padding: 45px 40px;
	}
	.steps.sect .step .intro {
		margin-bottom: 40px;
	}
	.steps.sect .step .intro .caption {
		font-size: 16px;
		line-height: 19px;
	}
	.steps.sect .step .num {
		margin-bottom: 30px;
	}
	.steps.sect .step .num .dot.current {
		text-indent: -9999px;
	}
	.steps.sect .step .answer .groups,
	.steps.sect .step .answer .groups .group .fields {
		margin-top: -35px;
	}
	.steps.sect .step .answer .groups .group,
	.steps.sect .step .answer .groups .group .fields .field {
		margin-top: 35px;
	}
	.steps.sect .step .answer > .table > .cell {
		height: auto;
	}
	.steps.sect .step .answer .groups .group .fields .field .checkbox input[type="checkbox"] + label {
		font-size: 12px;
	}
	.steps.sect .step .buttons {
		margin-top: 25px;
	}
	.steps.sect .step .buttons .button {
		font-size: 14px;
		padding: 14px 35px;
		margin-left: 5px;
	}
	.steps.sect .step .buttons .button.prev {
		padding: 12px 33px;
	}
	.steps.sect .info {
		display: none;
	}
	.preload.sect {
		padding-top: 130px;
	}
	.preload.sect .intro {
		margin-bottom: 60px;
	}
	.preload.sect .intro .caption {
		font-size: 18px;
		line-height: 23px;
	}
	.steps.sect .step.form > .ornaments .ornament2 {
		top: 6px;
		margin-left: -60px;
	}
	.steps.sect .step.form > .ornaments .ornament2 img {
		width: 40px;
	}
	.steps.sect .step.form > .ornaments .ornament3 {
		bottom: -20px;
		margin-left: -50px;
	}
	.steps.sect .step.form > .ornaments .ornament3 img {
		width: 50px;
	}
	.steps.sect .step.form .intro {
		margin-bottom: 40px;
	}
	.steps.sect .step.form .intro .caption {
		font-size: 20px;
		line-height: 25px;
	}
	.steps.sect .step.form .intro .caption br {
		display: none;
	}
	.steps.sect .step.form .intro .desc {
		font-size: 14px;
		line-height: 17px;
		margin-top: 5px;
	}
	.steps.sect .step.form .intro .desc br {
		display: none;
	}
	.steps.sect .step.form > .bottom .fields::before {
		top: -30px;
		width: 30px;
		height: 48px;
		margin-left: -40px;
	}
	.steps.sect .step.form > .bottom .button {
		font-size: 12px;
		padding: 17px 30px;
	}
	.steps.sect .step.form > .bottom .note {
		font-size: 14px;
		line-height: 17px;
		margin-top: 20px;
	}
	.steps.sect .step.form > .bottom .personal input[type="checkbox"] + label {
		font-size: 9px;
	}
	.complete.sect {
		padding-top: 120px;
	}
	.complete.sect .intro {
		margin-bottom: 30px;
	}
	.complete.sect .intro .caption {
		font-size: 27px;
		line-height: 32px;
	}
	.complete.sect .intro .desc {
		font-size: 14px;
		line-height: 18px;
		margin-top: 5px;
	}
	.complete.sect .buttons .button {
		font-size: 14px;
		padding: 22px 40px;
	}
	.footer.sect .politics {
		font-size: 10px;
	}
	.services.sect {
		padding-top: 80px;
		padding-bottom: 40px;
	}
	.services.sect .intro {
		margin-bottom: 30px;
	}
	.services.sect .intro .caption {
		font-size: 28px;
		line-height: 33px;
	}
	.services.sect .content > .top .items {
		margin-left: 0;
	}
	.services.sect .content > .top .items .item {
		width: 100%;
		max-width: 360px;
		margin-left: 0;
	}
	.services.sect .content > .top .items .item > .table > .cell {
		height: 480px;
	}
	.services.sect .content > .bottom {
		margin-top: 30px;
	}
	.services.sect .content > .bottom .buttons {
		margin-left: -20px;
		margin-top: -20px;
	}
	.services.sect .content > .bottom .buttons .button {
		max-width: 210px;
		font-size: 14px;
		padding: 17px 10px;
		margin-top: 20px;
		margin-left: 20px;
	}
	.services.sect .content > .bottom .buttons .button.start {
		padding-top: 14px;
		padding-bottom: 14px;
	}
	.services.sect .content > .bottom .buttons .button > .table > .cell {
		height: 32px;
	}
	.services.sect .content > .bottom .info {
		margin-top: 30px;
	}
}

/* Extra Small Devices, Phones */
@media only screen and (max-width : 479px) {
	
	.main.sect{
    min-height:68vh;
	}
	
	.services.sect {
    top: -10px;
}
	

	.popup_politics.sect .intro .caption,
	.popup_politics.sect .items .item .text .caption {
		font-size: 24px;	
	}
	.steps.sect .questions {
		padding-left: 25px;
		padding-right: 25px;
	}
	.steps.sect .step .answer .groups {
		margin-left: 0;
	}
	.steps.sect .step .answer .groups .group {
		width: 100%;
		margin-left: 0;
	}
	.footer.sect .politics {
		position: static;
		display: inline-block;
		vertical-align: top;
		margin-top: 20px;
	}
}

/* Custom, iPhone Retina */
@media only screen and (max-width : 319px) {

}


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

/* Custom, iPhone Retina */
@media only screen and (min-width : 320px) {

}

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

}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px) {  

}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px) {

}

@media only screen and (min-width : 1200px) {	
	.container {
		width: 970px;
	}
}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1220px) {
	.container {
		width: 1200px;
	}
	.main.sect > .container .content > .top > .left .intro .slogan {
		display: none;
	}
}



