/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */
.col-xs-tac{
	text-align: center;
}
.col-xs-tar{
	text-align: right;
}
.col-xs-tal{
	text-align: left;
}
.col-xs-taj{
	text-align: justify;
}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px){
	.col-sm-tac{
		text-align: center;
	}
	.col-sm-tar{
		text-align: right;
	}
	.col-sm-tal{
		text-align: left;
	}
	.col-sm-taj{
		text-align: justify;
	}
	
	h2{
		font-size: 36px;
	}
	
	.btns{
		text-align: left;
	}
	.btn,
	.btn:focus{
		width: auto;
		max-width: none;
		font-size: 18px;
	}
	
	.screen{
		display: block;
		margin: 150px 0;
	}
	.screen .hdr-text{
		font-size: 20px;
	}
	
	.logo{
		width: 262px;
		height: 71px;
	}
	
	.social{
		margin-top: 20px;
		justify-content: start;
	}
	
	.text-items{
		grid-template-columns: repeat(2, 1fr);
		grid-row-gap: 40px;
		margin-top: 50px;
	}
	.text-items .title{
		font-size: 24px;
	}
	.text-items .text{
		margin-top: 20px;
	}
	
	.oval-item:before,
	.oval .title:before{
		width: 62px;
		height: 47px;
		clip-path: ellipse(50% 50% at 50% 50%);
	}
	
	.form-image .container{
		grid-template-columns: auto 610px;
	}
	
	.additional-services .text-items{
		grid-template-columns: repeat(4, 1fr);
	}
	.additional-services .text-items .title{
		font-size: 18px;
	}
	.additional-services .btns{
		margin-top: 50px;
	}
	.additional-services .block-actions{
		grid-template-columns: 500px auto;
		margin-top: 150px;
	}
	.additional-services .block-actions .item{
		padding: 40px;
	}
	.additional-services .block-actions .title{
		font-size: 24px;
	}
	.additional-services .block-actions .text{
		font-size: 18px;
		margin-top: 12px;
	}
	.additional-services .block-actions .btn{
		margin-top: 30px;
	}
	
	.main-map .block{
		margin-top: 48px;
	}
	.main-map .area{
		background: #ffffffcc;
		width: auto;
		max-width: none;
		top: 30px;
		left: 30px;
		transform: none;
	}
	.main-map .cols{
		grid-template-columns: auto 265px;
		gap: 45px;
	}
	.main-map .col-1{
		display: block;
	}
	.main-map .phone{
		line-height: 1.4;
		font-size: 24px;
	}
	.main-map .email a{
		font-size: 20px;
	}
	.main-map .social{
		gap: 15px;
		margin-top: 20px;
	}
	.main-map .text{
		font-size: 16px;
	}
	.main-map .btns{
		margin-top: 30px;
	}
	.main-map .btn{
		padding-right: 30px;
		padding-left: 30px;
	}
	
	.faq .text-items{
		grid-row-gap: 40px
	}
	.faq .item{
		padding-bottom: 20px;
	}
	.faq .title{
		padding-right: 160px;
	}
	.faq .switcher{
		width: 50px;
		height: 50px;
		top: 0;
		transform: none;
		border-radius: 16px;
	}
	.faq .switcher:before,
	.faq .switcher:after{
		width: 20px;
		height: 2px;
	}
	.faq .text{
		font-size: 16px;
	}
	
	.select-supplier .text-items .text{
		font-size: 18px;
	}
	
	#header{
		display: block;
	}
	
	#footer{
		margin-top: 150px;
	}
	#footer .container{
		text-align: left;
		padding-bottom: 120px;
	}
	#footer .row-1{
		border-top: #eef0ef 1px solid;
		padding-top: 60px;
	}
	#footer .image{
		margin-top: 0;
		position: absolute;
		bottom: 50px;
		right: 15px;
	}
	#footer .cols{
		grid-template-columns: 1fr 1fr 155px;
		grid-row-gap: 50px;
	}
	#footer .cols .title{
		font-size: 18px;
	}
	#footer .cols .text{
		font-size: 16px;
	}
	#footer .copyright{
		margin-top: 0;
	}
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px){
	.col-md-tac{
		text-align: center;
	}
	.col-md-tar{
		text-align: right;
	}
	.col-md-tal{
		text-align: left;
	}
	.col-md-taj{
		text-align: justify;
	}
}

/* Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px){
	.col-lg-tac{
		text-align: center;
	}
	.col-lg-tar{
		text-align: right;
	}
	.col-lg-tal{
		text-align: left;
	}
	.col-lg-taj{
		text-align: justify;
	}
}