/*
Theme Name: Artec Engineering
Theme URI: https://artecengineering.co.uk
Description: Artec Engineering WordPress Theme based on Divi and customised with love and a sprinkling of Fairy Dust by 247 Creative.
Version: 1.0
Author: 247 Creative 
Author URI: http://www.247creative.co.uk
Template: Divi
Tags: responsive, white, engineering
*/


/* Main Theme Import
*********************************************************/

@import url('../Divi/style.css');
	
/* CSS3 Goodness
*********************************************************/

::-moz-selection{
	background-color:#1c212a;
	color:#ffffff;
	}
::selection{
	background-color:#1c212a;
	color:#ffffff;
	}
	
input::-moz-placeholder{
    color:#1c212a !important;
	}

input::-webkit-input-placeholder{
    color:#1c212a !important;
	}

input:-ms-input-placeholder{
    color:#1c212a !important;
	}
	
a,
.wpcf7-text,
.wpcf7-number,
.wpcf7-date,
.wpcf7-textarea,
.wpcf7-captchar,
.wpcf7-submit,
.et_pb_scroll_top.et-pb-icon,
.scroll-down.et-pb-icon,
.post.status-publish img,
.section-news .more-link:before,
.link-service,
img#logo,
#logo img,
.section-masthead a.btn-down,
.dtb-read-more:before{
	-moz-transition:all 0.2s ease !important;
	-webkit-transition:all 0.2s ease !important;
	transition:all 0.2s ease !important;
	}
	
.floating{
	animation-name:floating;
	-webkit-animation-name:floating;
	animation-duration: 1.5s;	
	-webkit-animation-duration:1.5s;
	animation-iteration-count:infinite;
	-webkit-animation-iteration-count:infinite;
	}
@keyframes floating{
	0%{
		transform:translateY(0%);	
		}
	50%{
		transform:translateY(20%);	
		}	
	100%{
		transform:translateY(0%);
		}			
	}
@-webkit-keyframes floating{
	0%{
		-webkit-transform:translateY(0%);	
		}
	50%{
		-webkit-transform:translateY(20%);	
		}	
	100%{
		-webkit-transform:translateY(0%);
		}			
	}
	
/* Helper Classes
*********************************************************/

@media only screen and (max-width:1680px){
	
	.visible-xl{
		display:none !important;		
		}
	
	}
	
@media only screen and (max-width:1200px){
	
	.hidden-sm{
		display:none !important;		
		}
	
	}
	
@media only screen and (min-width:980px){
	
	.hidden-md{
		display:none !important;
		}
	.visible-xs{
		display:none !important;	
		}
	
	}
	
@media only screen and (max-width:480px){
	
	.hidden-xs{
		display:none !important;		
		}
	.visible-xs{
		display:block !important;
		}
	
	}
	
/* Body Styles
**********************************************************/

body, 
html{
	overflow-x:hidden !important;
	max-width:100% !important;
	}
	body{
		-webkit-text-size-adjust:100%;
		font-weight:300;
		}
		
/* Text Styles
**********************************************************/

@media only screen and (min-width:768px){
	
	.content-heading-marker h2{
		position:relative;
		display:inline;
		background:rgb(255,255,255);
	    background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 50%, rgba(207,230,253,1) 50%, rgba(207,230,253,1) 100%);
		}
		
	}
	
.section-archive h2:after,
.section-related-posts h2:after,
.section-related-posts h3:after,
.section-team h3:after,
.section-two-cols h3:after,
.section-services-grid h3:after,
.section-services-grid h4:after,
.section-content h4:after,
.content-slider-cards h4:after,
.section-testimonials h5:after,
.section-testimonials .dsm_card_carousel_child_subtitle:after{
	content:'';
	display:block;
	width:40px;
	height:3px;
	}
	.section-archive h2:after,
	.section-related-posts h2:after,
	.section-two-cols h3:after,
	.section-services-grid h3:after,
	.section-testimonials h5:after,
	.section-testimonials .dsm_card_carousel_child_subtitle:after{
		margin:20px 0 10px 0;
		}
	.section-content h4:after{
		margin:15px 0 10px 0;
		}
		.section-content .col-share h4:after{
			display:none;
			}
	.content-slider-cards h4:after{
		margin:10px 0 15px 0;
		}
	.section-related-posts h3:after{
		margin:10px 0 10px 0;
		}
	.section-team h3:after,
	.section-services-grid h4:after{
		margin:10px auto 5px auto;
		}
	.section-archive h2:after,
	.section-related-posts h2:after,
	.section-related-posts h3:after,
	.section-team h3:after,
	.section-two-cols h3:after,
	.section-services-grid h4:after,
	.section-content h4:after{
		background-color:#1b96f7;
		}
	.section-testimonials .dsm_card_carousel_child_subtitle:after,
	.section-testimonials h5:after,
	.section-services-grid h3:after{
		background-color:#ddd;
		}
		
.section-services-grid h3,
.section-services-grid h4{
	padding-bottom:0 !important;
	margin-bottom:0 !important;
	}
	
.section-intro h2 strong,
.section-two-cols-boxes h2 strong{
	font-weight:700;
	color:#1b96f7;
	}
	
.section-four-cols h3 strong{
	font-weight:600;
	color:#1b96f7;
	}
	.section-two-cols-boxes h3:after,
	.section-four-cols h3:after{
		content:'';
		display:block;
		width:40px;
		height:3px;
		}
		.section-two-cols-boxes h3:after{
			background-color:#ccc;
			margin:20px 0;
			}
		.section-four-cols h3:after{
			margin:20px 0 10px 0;
			background-color:rgba(255,255,255,.2);
			}
			
.section-testimonials .dsm-advanced-tabs-container h5{
	text-transform:uppercase;
	letter-spacing:2px;
	font-size:14px;
	line-height:1.5;
	font-weight:600;
	color:#1b96f7;
	}
		
.content-subheading:after{
	content:'';
	display:block;
	margin:10px 0 -20px 30px;
	width:1px;
	height:60px;
	background-color:rgba(255,255,255,.5);
	}

.section-services-grid .content-heading strong{
	color:#1b96f7;
	}

.section-map h4{
	font-weight:600;
	color:#1b96f7;
	text-transform:uppercase;
	letter-spacing:2px;
	font-size:13px;
	}
	
.section-map p{
	line-height:1.6;
	color:#1c212a !important;
	}
	
.content-boxed p:first-of-type,
.content-accordion p:first-of-type{
	font-size:20px;
	line-height:1.8;
	}

#main-content p strong,
#main-content li strong{
	font-weight:500 !important;
	}
	
.section-content p:first-of-type{
	font-size:1.5rem;
	font-weight:400;
	line-height:1.7;
	padding-bottom:35px;
	}
	
#main-content ol,
#main-content ul{
	list-style:none;
	padding-left:20px;
	margin-left:0;
	padding-bottom:10px !important;
	}	
	#main-content .content-list-extended ul,
	#main-content .content-list-team ul{
		padding-bottom:0 !important;
		padding-left:0 !important;
		}		
		#main-content .content-list-extended ul li .dsm_icon_list_wrapper{
			padding-left:20px !important;
			}
	#main-content li{
		margin-bottom:15px;
		line-height:1.8;
		}
		#main-content ul li{
			float:none;
			clear:both;
			padding-left:0;
			}
			#main-content .content-list-extended ul li{
				padding-left:inherit !important;
				margin-bottom:20px !important;
				}
			#main-content ul:not(.ticks) li:before{
				float:left;
				content:'•' !important;
				margin:-8px 0 0 -20px !important;
				font-size:1.5em !important;
				color:#1b96f7;
				}
			#main-content .content-list-extended ul li:before,
			#main-content .content-list-team ul li:before,
			#main-content .content-list-team ul span.dsm_icon_list_text{
				display:none !important				
				}
				
		#main-content ol li{
			display:inline-block;
			counter-increment:count-me;
			padding-left:3rem;
			padding-right:3rem;				
			}
			#main-content ol li:before{
				content:counter(count-me) ". ";
				display:block;
				position:relative;
				max-height:0;
				left:-3rem;
				color:#1b96f7;
				font-weight:400;
				}
		ul.ticks{
			margin-top:20px;
			padding-left:0 !important;
			}
			ul.ticks li{
				margin-left:0 !important;
				padding-left:0 !important;
				position:relative;
				}
				@media only screen and (min-width:1400px){
					
					ul.ticks li{
						display:inline-block;
						width:31% !important;
						}
						.section-3-cols ul.ticks li{
							width:48% !important;
							}
						
					}
					
				ul.ticks li:before{
					content:'✓' !important;
					margin:0 12px 0 0px !important;
					font-size:1em !important;
					color:#1b96f7;
					}
				
.section-content a,
.section-intro a:not(.et_pb_button),
.wpcf7-list-item a{
	color:inherit;
	padding-bottom:0;
	border-bottom:1px solid #1b96f7;
	}
	.wpcf7-list-item a{
		padding-bottom:2px;	
		}
	.section-content a:hover,
	.section-intro a:not(.et_pb_button):hover,
	.wpcf7-list-item a:hover{
		border-bottom:1px solid #ccc;
		}
	.content-image-carousel a{
		border-bottom:none !important;
		}
		
.section-two-cols .content-link a,
.section-four-cols .content-link a{
	padding-bottom:3px;
	}
	.section-two-cols .content-link a{
		border-bottom:1px solid rgba(28,33,42,.2);
		}
	.section-four-cols .content-link a{
		border-bottom:1px solid rgba(27,150,247,.5);
		}
	.section-two-cols .content-link a:hover,
	.section-four-cols .content-link a:hover{
		border-bottom:1px solid #1b96f7;
		}

.fw-normal p{
	font-weight:400 !important;
	}

.content-contact a{
	color:inherit !important;
	}
	.content-contact a:hover{
		color:#1b96f7 !important;
		}

/* Header Styles
**********************************************************/

@media only screen and (min-width:980px){
	
	#top-menu ul.sub-menu li{
		padding-left:5px !important;
		}
		#top-menu ul.sub-menu li:first-of-type{
			padding-top:10px !important;
			}
		#top-menu ul.sub-menu li:last-of-type{
			padding-bottom:10px !important;
			}
		#top-menu ul.sub-menu li a{
			padding-top:4px !important;
			padding-bottom:4px !important;
			}
	.menu-contact{
		display:none !important;
		}
		
	}
	
@media only screen and (max-width:980px){
	
	ul.sub-menu li a{
		padding-left:30px !important;
		color:#1b96f7 !important;
		}
		ul.sub-menu li a:hover{
			color:#fff !important;
			}
	.menu-contact a{
		font-size:115% !important;
		margin-top:15px !important;
		margin-bottom:30px !important;
		line-height:1.3 !important;
		text-transform:uppercase !important;
		border-bottom:none !important;
		}	
		.menu-contact a em{
			display:block !important;
			font-style:normal !important;
			font-size:15px !important;
			letter-spacing:1px !important;
			color:#1b96f7	;
			}
		.menu-contact a:before{
			content:'';
			float:left;
			width:22px;
			height:34px;
			background:url('img/icon-phone.svg') no-repeat 0 0;
			background-size:22px 34px;
			margin:2px 15px 40px 0;
			}
		
	}

img#logo:hover{
	opacity:.7;
	}
	
.hide-header{
	display:none;
	}
	
.show-header{
	display:block;
	}
	
/* Masthead Styles
**********************************************************/

@media only screen and (min-width:1750px){

	.section-masthead .content-masthead-heading{
		max-width:55%;
		}
		
	}

@media only screen and (min-width:1660px) and (max-width:1750px){

	.section-masthead .content-masthead-heading{
		max-width:60%;
		}
		
	}

@media only screen and (min-width:1200px) and (max-width:1660px){

	.section-masthead .content-masthead-heading{
		max-width:80%;
		}
		
	}
	
.section-masthead.masthead-full h1 strong,
.section-masthead.masthead-full h2 strong{
	background-image:linear-gradient(to right, #1b96f7 0%, #1b96f7 100%);
	background-repeat:repeat-x; 
	background-position:0% 94%;
	background-size:100% 3px; 
	}
	
.section-masthead a.btn-down{
	color:#fff !important;
	}
	.section-masthead a.btn-down:hover{
		opacity:.7;
		}
		
.section-masthead .icon-down{
	-webkit-animation-delay:1.8s;
	-moz-animation-delay:1.8s;
	animation-delay:1.8s;
	animation:floating 1.5s infinite;
	}
	
/* Content Styles
**********************************************************/

@media (min-width:1200px){
	
	.section-intro .et_pb_image_wrap{
		max-width:80% !important;
		}
	
	}
	
@media (max-width:1200px){
	
	.section-intro .et_pb_image_wrap{
		max-width:100% !important;
		width:100% !important;
		}
		.section-intro .et_pb_image_wrap img{
			width:100% !important;
			}	
	
	}
	
@media (max-width:1600px) and (min-width:980px){
	
	.section-four-cols .et_pb_row{
		display:-webkit-box;
		display:-moz-box;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:flex;
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;
		}
		.section-four-cols .et_pb_row .et_pb_column{
			width:50% !important;
			}
			.order-first{
				-webkit-order:1 !important;
				order:1 !important;
				}
			.order-second{
				-webkit-order:2 !important;
				order:2 !important;
				}
			.order-third{
				-webkit-order:3 !important;
				order:3 !important;
				}
			.order-fourth{
				-webkit-order:4 !important;
				order:4 !important;
				}
	
	}
	
@media (max-width:980px) and (min-width:480px){
	
	.section-four-cols .et_pb_row .et_pb_column{
		width:100% !important;
		}
		.section-four-cols .et_pb_row.reverse-columns-mobile .et_pb_column:last-child, 
		.section-four-cols .et_pb_row.reverse-columns-mobile .et_pb_column.et-last-child{
			margin-bottom:0 !important;
			}	
	
	}
	
@media only screen and (min-width:980px) and (max-width:1024px){
	
	.content-contact-details p{
		font-size:24px !important;
		}
	
	}
	
.section-testimonials .dsm-advanced-tabs-container h4{
	font-size:24px !important;
	margin-bottom:-5px;
	padding-bottom:0;
	}
	
.section-testimonials .dsm-advanced-tabs-container h5{
	margin-bottom:20px;
	}

.section-testimonials .dsm_card_carousel_child_subtitle{
	margin-bottom:40px;
	}

.section-testimonials .dsm_card_carousel_child_description strong em,
.section-testimonials .dsm-advanced-tabs-container .dsm-content strong em{
	color:#1b96f7;
	}

.section-testimonials .dsm_card_carousel_child_description em,
.section-testimonials .dsm-advanced-tabs-container .dsm-content em{
	font-style:normal;
	font-size:13px;
	font-weight:600;
	text-transform:uppercase;
	line-height:0 !important;
	display:inline-block !important;
	}	
	
.section-testimonials .dsm_card_carousel_child_description img{
	height:64px !important;
	width:auto !important;
	margin-top:30px !important;
	margin-bottom:0 !important;
	}
	
.section-map .wpgmp_map_parent{
	margin-bottom:0 !important;
	display:block !important;
	}
	
.section-services-grid .et_pb_column{
    overflow:hidden !important;
	}
	.et-zoom-in:hover{
	    background-size:115% !important;
	    transition:all .7s ease;
		}
		.et-zoom-in{
			background-size:100% !important;
			transition:all .7s ease;
			}
	
/* index.php Styles
*********************************************************/	
	
.section-archive a.more-link{
	padding:0 0 4px 0 !important;
	border-bottom:1px solid rgba(27,150,247,.5) !important;
	}
	
/* single.php Styles
*********************************************************/	
	
a.social-share{
	background-color:#1b96f7;
	border-radius:100px;
	text-align:center !important;
	width:40px;
	height:40px;
	border:none !important;
	display:inline-block !important;
	line-height:45px;
	margin:0;
	}
	a.social-share:hover{
		background-color:#1c212a;
		}
	a.social-share img{
		height:18px;
		margin:0;
		}
		
body.single .wp-block-image img{
	border-radius:16px !important;
	}
	body.single .wp-block-gallery,
	body.single .wp-block-image.size-large,
	body.single .wp-block-image.size-full{
		margin-top:30px;
		margin-bottom:40px;
		}

/* Footer Styles
**********************************************************/

footer h4{
	margin-bottom:15px !important;
	}

footer a{
	color:#1c212a !important;
	}
	footer a:hover{
		color:#1b96f7 !important;
		}

footer ul{
	list-style:none !important;
	margin:0 !important;
	padding-left:0 !important;
	}
	footer ul li{
		margin-top:0 !important;
		margin-bottom:15px !important;
		}
		footer ul li:last-of-type{
			margin-bottom:0 !important;
			}

footer .content-social a,
footer .content-social .icon:before{
	height:auto !important;
	width:auto !important;
	}			
	footer .content-social .icon:before{
		line-height:inherit !important;
		}
		
/* Contact Form Styles
*********************************************************/	

.wpcf7 p{
	font-weight:600;
	margin:0 !important;
	padding:0;
	line-height:1em;
	text-transform:uppercase;
	font-size:14px;
	letter-spacing:0.1em;
	color:#1c212a;
	}	
	.wpcf7-text,
	.wpcf7-number,
	.wpcf7-date,
	.wpcf7-select,
	.wpcf7-textarea,
	.wpcf7-captchar{
		background-color:#f5f5f5 !important;
		border:1px solid #f5f5f5 !important;
		width:100% !important;
		-moz-border-radius:10px !important;
		-webkit-border-radius:10px !important;
		border-radius:10px !important;
		font-size:16px;
		line-height:1.7;
		color:#676666 !important;
		padding:15px !important;
		-moz-box-sizing:border-box;
		-webkit-box-sizing:border-box;
		box-sizing:border-box;
		margin:20px 0 30px 0 !important;
		-webkit-appearance:none !important;
		}
		.wpcf7-text:hover,
		.wpcf7-text:focus,
		.wpcf7-number:hover,
		.wpcf7-number:focus,
		.wpcf7-date:hover,
		.wpcf7-date:focus,
		.wpcf7-select:focus,
		.wpcf7-select:focus,
		.wpcf7-textarea:hover,
		.wpcf7-textarea:focus,
		.wpcf7-captchar:hover,
		.wpcf7-captchar:focus{
			border:1px solid #1b96f7 !important;
			background-color:#fff !important;
			color:#1c212a !important;
			}
	.wpcf7-file,
	.wpcf7-recaptcha{
		margin:20px 0 30px 0 !important;
		}
	.wpcf7-radio{
		float:left;
		clear:both;
		width:100% !important;
		margin:20px 0 30px 0 !important;
		}
		.wpcf7-radio .first{
			margin-left:0 !important;
			}
	.wpcf7-list-item{
		margin-left:0 !important;
		font-weight:300;
		text-transform:none !important;
		letter-spacing:normal !important;
		line-height:1.7 !important;
		font-size:15px !important;
		}
	.wpcf7-submit{
		margin:30px 0;
		cursor:pointer;
		letter-spacing:0.1em;
		text-transform:uppercase;
		border-radius:10px !important;
		padding:15px 64px;
		line-height:1.7em;
		-webkit-font-smoothing:antialiased;
		-moz-osx-font-smoothing:grayscale;
		display:inline-block;
		text-align:center;
		font-size:15px !important;
		font-weight:600;
		border:none !important;
		background-color:#1b96f7;
		color:#fff !important;
		}
		.wpcf7-submit:after{
			display:none !important;
			}	
		.wpcf7-submit:hover{ 
			background-color:#1c212a !important; 
			color:#fff !important; 
			padding:15px 64px !important; 
			}
		.wpcf7-submit:disabled{
			background-color:#f5f5f5;
			color:#1c212a !important;
			}
			.wpcf7-submit:disabled:hover{
				color:#fff !important; 
				}
	span.required{
		color:#e02b20;	
		}
	span.wpcf7-not-valid-tip{
		color:#e02b20 !important;	
		padding-bottom:20px;
		letter-spacing:0.1em !important;
		margin-top:-10px;
		}
	input.wpcf7-not-valid,
	textarea.wpcf7-not-valid{
		border:1px solid #e02b20 !important;
		}
	span.field-info{
		display:block;
		font-weight:300;
		text-transform:none;
		letter-spacing:0;
		margin-top:10px;	
		margin-bottom:-10px;	
		}
	.wpcf7 .ajax-loader{
		display:none !important;
		}
	.wpcf7 .acceptance{
		margin-bottom:20px;
		}
	.wpcf7 .wpcf7-response-output{
		width:100% !important;
		margin-left:0;
		margin-right:0;
		background-color:#e02b20;
		padding:15px;
		font-size:.9em;
		color:#fff !important;
		}
		.wpcf7-form.invalid .wpcf7-response-output,
		div.wpcf7-validation-errors, 
		div.wpcf7-acceptance-missing{
			border-color:#e02b20 !important;
			}
			
/* Pagination Styles
*********************************************************/	

.wp-pagenavi{
	float:left;
	clear:both;
	margin-top:80px !important;
	border-top:none !important;	
	width:100% !important;
	text-align:left !important;
	}
	.wp-pagenavi a, 
	.wp-pagenavi span{
		padding:1em 1.6em !important;
		font-size:1em !important;
		color:#1c212a;
		line-height:2em;
		background:#eeeeee;
		transition:all .5s;
		font-weight:300 !important;
		border:none !important;
		border-radius:10px;
		}
/*
		.wp-pagenavi span.pages{
			padding:1em 1.6em 1em 0 !important;
			}
*/
			@media only screen and (max-width:767px){
				
				.wp-pagenavi span.pages{
					float:left;
					clear:both;
					margin-bottom:10px;
					}
				
				}
		.wp-pagenavi span.current{
			color:#fff !important;
			background:#1c212a !important;
			}
	.wp-pagenavi a:hover{
		color:#1c212a !important;
		background:#fff !important;
		}
	.wp-pagenavi .pages{
		background:none;
		}
	
/* Back To Top Styles
**********************************************************/
	
.et_pb_scroll_top:before{
    content: "\21";
	} 
.et_pb_scroll_top.et-pb-icon{
    right:20px;
    bottom:20px;
    border-radius:0px;
    background:#fff;
    color:#1c212a;
    padding:20px;
    font-size:24px;
    transition:all .1s ease-in-out; 
	}
.et_pb_scroll_top.et-pb-icon:hover{
    background:#1c212a;
    color:#fff;
    transition:all .1s ease-in-out;
	}
	
/* Hide Recaptcha
*********************************************************/	
		
.grecaptcha-badge{
	visibility:collapse !important;
	opacity:0 !important;
	}