/* FONTS */

body,p,li,ul,input,textarea,.obfx-grid-content, span:not(h1 span){
font-family: "proxima-nova", sans-serif !important;
font-style: normal;
font-weight: 400 !important;
}

h2,h3,h4,h5,h6, .button, .custom-btn-style, .elementor-button span,.elementor-counter .elementor-counter-title,p a{
font-family: "proxima-nova", sans-serif !important;
font-style: normal;
font-weight: 700 !important;
}

h2,h3,h4,h5,h6, .button, .custom-btn-style, .elementor-button span,.elementor-counter .elementor-counter-title{
letter-spacing:-1px;
}

h1, footer h3, .abolition, .number_block .elementor-counter-number, #primary-menu a, .abolition{
font-family: "abolition", sans-serif !important;
font-weight: 400 !important;
font-style: normal;
}

footer h3{
margin-top:0px !important;
}

#blue_header p{
font-size:1.25em;
}

/*NUMBER BLOCK*/

.number_block .elementor-counter-number{
color:#ffffff;
}
.number_block .elementor-counter-title{
margin-top:20px !important;
color: #1e2839 !important;
line-height:1em !important;
}

.number_block{
background: #4D73B4;
background: linear-gradient(90deg,rgba(77, 115, 180, 1) 0%, rgba(77, 170, 233, 1) 100%);
}

.number_block .elementor-counter-number-wrapper{
text-align:center;
margin:0px auto;
}

body{
margin:0 !important;
}

.font_weight_200{
font-weight: 200 !important;
}

.font_weight_400{
font-weight: 400 !important;
}

h1{
font-size:70px;
line-height:1em;
}

.home h1{
font-size:90px;	
}

h2{
font-size:50px;
line-height:1.2em;
}

h3{
font-size:35px;
line-height:1.25em;
}

.small_h3,
.small_h3 h3{
font-size:24px !important;
}

@media only screen and (max-width: 768px) {
h1{
font-size:40px !important;
}
	
.home h1{
font-size:60px !important;
line-height:1em !important;
}

h2{
font-size:30px !important;
}
h3{
font-size:25px !important;
}
.small_h3{
font-size:20px;
}
}

h1 span{
color:#4dabe9;
}

.entry-header-container p{
line-height:1.2em;
text-align:center;
font-weight:300 !important;
color:#cccccc;
}

.entry-header-container h1, .entry-header-container h3{
padding:0;
margin:20px 0 0 0;
}

.wpcf7-form-control-wrap input, .wpcf7-form-control-wrap textarea{
color: #4dabe9 !important;
padding:10px !important;
border:1px solid #4dabe9 !important;
border-radius:20px !important;
margin:28px 0 !important;
display:block !important;
width:100% !important;
}

.wpcf7::focus{
color:#000000 !important;
background:#ff00ff !important;
}

.wpcf7-form-control-wrap input::placeholder, .wpcf7-form-control-wrap textarea::placeholder{
color:#cccccc;
}

h1 a{
text-decoration:none;
color: #4dabe9 !important;	
}

.obfx-grid-pagination a{
color: #4dabe9;	
}

a:visited {
color: #1e2839;
}

a:hover{
transition:0.5s all;
}

.small_caps{
letter-spacing: 4px;
color:#cccccc !important;
text-transform:uppercase;
}

.smaller_caps{
font-size:15px;
}

.large_p, .quick_contact_copy{
font-weight: 300 !important;
font-size:22px;
line-height:1.5em !important;
}

.centeralign{
text-align:center;
}

.rightalign{
text-align:right;
}

.margin-top-auto{
margin-top: auto !important;	
}

.margin-right-auto{
margin-right: auto;	
}

p a{
text-decoration:none;
}

@media only screen and (max-width: 768px) {
.large_p {
font-size: 20px;
}
}

.page_subheading p{
padding:0;
margin:0;
}

.elementor-heading-title{
line-height:1.2em !important;	
}

.entry-header {
display: flex;
position:relative;
z-index:1;
align-items: center;
justify-content: center;
}

.entry-header-extra-padding-top{
padding-top:135px !important;
}

.entry-header .entry-header-container {
justify-content: flex-end;
}

.entry-content p a{
color:#4dabe9;
}

.entry-content p a:hover:not(.button:hover){
color:#1c3a5f;
}

.entry-content ul, .entry-content ol {
margin: 0 0 1.5em 0em;
}

.elementor-19 .elementor-element.elementor-element-879ded3.elementor-view-default .elementor-icon {
fill: url(#header-shape-gradient) #fff !important;
}

#header-shape-gradient {
--color-stop: #f12c06 !important;
--color-bot: #faed34 !important;
}

/* LINKS */

p a{
color:#1e2839;
font-weight:900;
display:inline-block;
}

p a:hover, .entry-content p a:hover{
color:#4dabe9 !important;
}

p a:after {
display:block;
content: '';
border-bottom: solid 4px #4dabe9;  
transform: scaleX(1);  
transition: transform 250ms ease-in-out;
}

p a:hover:after {
transform: scaleX(0);
}

/* TEXT COLOURS AND BKGS */

.white_text, .white_text h1, .white_text h2, .white_text h3, .white_text p{
color: #ffffff !important;
}

.half_white_text, .half_white_text h2, .half_white_text h3, .half_white_text p{
color:rgba(255,255,255,0.5) !important;
}

.dark_blue_text, .dark_blue_text h2, .dark_blue_text h3, .dark_blue_text p, .quick_contact_copy p {
color: #1e2839 !important;
}

.light_grey_text, .light_grey_text h2, .light_grey_text h3, .light_grey_text p{
color: #f3f4f5 !important;
}

.mid_grey_text, .mid_grey_text h2, .mid_grey_text h3, .mid_grey_text p{
color: #cccccc !important;
}

.dark_grey_text, .dark_grey_text h2, .dark_grey_text h3, .dark_grey_text p{
color: #7A7A7A !important;
}

.turkwaz, .turkwaz_text, .turkwaz_text h2, .turkwaz_text h3, .turkwaz_text p{
color: #4fafd8 !important;
}

.blue, .blue_text, .blue_text h2, .blue_text h3, .blue_text p{
color: #4dabe9 !important;
}

/* COLOUR BACKGROUNDS */

.dark_blue_bkg{
background-color: #1c3a5f !important;
}

.white_bkg{
background-color: #ffffff !important;
}

.light_grey_bkg{
background-color: #f3f4f5 !important;
}

.mid_grey_bkg{
background-color: #f3f4f5 !important;
}

.blue_grad_bkg{
background: #4D73B4;
background: linear-gradient(90deg, rgba(77, 115, 180, 1) 0%, rgba(77, 170, 233, 1) 100%);
}

/* ALIGN TEXT */

.align_right, .right_align{
text-align:right;
}

.align_center, .center_align{
text-align:center !important;
}

.align_left, .left_align{
text-align:left !important;
}

.vertical_align_middle{
justify-content: center !important;
}

/* PADDING AND MARGIN */

.margin_bottom_minus_20{
margin-bottom: -10px !important;
}

.nomarginpaddingtop{
margin-top:0px !important;
padding-top:0px !important;
}

.nomarginpaddingbottom{
margin-bottom:0px !important;
padding-bottom:0px !important;
}

.nomargin{
margin:0 !important;
}

.nopadding{
padding:0 !important;
}

.nomarginpadding{
margin:0 !important;
padding:0 !important;
}

.nomarginpadding_p div p,
.nomarginpadding_h div h1,
.nomarginpadding_h div h2,
.nomarginpadding_h div h3,
.nomarginpadding_h div h4{
margin:0 !important;
padding:0 !important;
}

.nomarginpaddingtop{
margin-top:0;
padding-top:0;
}

.padding_20{
padding:20px;
}

.padding_25{
padding:25px;
}

.padding_bottom_25{
padding:25px;
}

.padding_bottom_100{
padding-bottom:100px !important;
}

.margin_20{
margin:20px;
}

.margin_25{
margin:25px;
}

.margin_top_20{
margin-top:20px;
}

.margin_bottom_20{
margin-bottom:20px !important;
}

.margin_bottom_25{
margin-bottom:25px;
}

.margin_top_50{
margin-top:50px;
}

.margin_bottom_50{
margin-bottom:50px;
}

.margin_left_and_right_20{
margin-left:20px !important;
margin-right:20px !important;
}

.paddingtopandbottom{
padding:50px 20px !important;
}

.padding20leftandright{
padding: 0 20px !important;
}

.no_margin_padding_bottom, .no_margin_padding_bottom p{
padding-bottom:0 !important;
margin-bottom:0 !important;
}

.padding_50{
padding:50px !important;
}

.padding_top_50{
padding-top:50px !important;
}

.padding_top_100{
padding-top:100px !important;
}

.padding_bottom_50{
padding-bottom:50px !important;
}

@media only screen and (max-width: 768px) {
.padding_top_50{
padding-top:20px !important;
}

.padding_bottom_50{
padding-bottom:20px !important;
}
}

@media only screen and (max-width: 768px) {
.paddingtopandbottom{
padding:20px !important;
}
}

.paddingleftandright{
padding:20px 50px  !important;
}

.paddingbottom{
padding:20px 20px 50px 20px !important;
}

.padding_top_120{
padding-top:120px !important;
}

@media only screen and (max-width: 768px) {
.padding_top_120{
padding-top:75px !important;
}	
}

.margin_0_auto{
margin:0px auto;
}

/*MIN HEIGHTS */

.minheight40{
min-height:40vh !important;
}

@media only screen and (max-width: 768px) {
.minheight40{
min-height:0px !important;
}
}

.minheight50{
min-height:50vh;
}

.min_height_50{
min-height:50vh !important;
}

.min_height_80{
min-height:80vh !important;
}

@media only screen and (max-width: 768px) {
.min_height_80{
min-height:0px !important;
}
}

.nominheight{
min-height:0px !important;
}

/*WIDTHS*/

.width_100{
width:100% !important;
}

.max_width_150, .max_width_150 img{
max-width:150px !important;
}

.max_width_50{
max-width:50% !important;
}

@media only screen and (max-width: 768px) {
.large_p.max_width_50 {
max-width: 100% !important;
}
}

/* BUTTON */

.button, .custom-btn-style,
.elementor-button,
.obfx-grid-footer a{
background-color:#1e2839 !important;
padding: 15px calc(3em + 1px) !important;
display:inline-block;
margin:10px auto;
color:#ffffff !important;
font-size:18px !important;
font-weight:700 !important;
position:relative;
filter: drop-shadow(0px 0px 75px rgba(50, 54, 57, 0.15));
line-height:1.5em !important;
text-decoration:none;
text-align:center;
border:none !important;
border-radius:4px !important;
text-align:center;
}

.button:visited,
.custom-btn-style:visited,
.elementor-button:visited,
.obfx-grid-footer a:visited{
color:#ffffff;
}
	
.button:after,
.custom-btn-style:after,
.elementor-button:after,
.obfx-grid-footer a:after{
content: "\eb19";
font-size:1.5em !important;
position:absolute;
top:0;
right:0;
bottom:0;
height:100%;
width:2.2em;
display: flex;
align-items: center;
justify-content: center;
color:rgba(255,255,255,0);
font: normal normal normal 1em / 1 'lineicons';
flex-shrink: 0;
-webkit-font-smoothing: antialiased;
padding-left:0px;
}

.whitedropbtn:after{
color:#1e2839;	
}
	
a:hover,
a:after,
a:hover:after,
.custom-btn-style,
.custom-btn-style:hover,
.custom-btn-style:hover:after,
.elementor-button,
.elementor-button:hover,
.elementor-button:hover:after,
.obfx-grid-footer a:hover,
.obfx-grid-footer a:hover:after{
transition:0.5s all !important;
}
	
.button:hover,
.custom-btn-style:hover,
.elementor-button:hover,
.obfx-grid-footer a:hover{
background-color:#4dabe9 !important;
color:#ffffff !important;
}
	
.button:hover:after,
.custom-btn-style:hover:after,
.elementor-button:hover:after,
.obfx-grid-footer a:hover:after{
color:rgba(255,255,255,1);
padding-left:15px;
}
	
.green_button,
.green_button_container .elementor-button{
background-color:#4dabe9 !important;
}
	
.green_button:after,
.green_button_container .elementor-button:after{
color:#1c3a5f;
}
	
.green_button:hover,
.green_button_container .elementor-button:hover{
background-color:#1c3a5f;
color:#ffffff;
}
	
.green_button:hover:after,
.green_button_container .elementor-button:hover:after{
color:#4dabe9;
}

/* SECONDARY CTA */

.secondary_CTA a{
border-radius:0 !important;
text-align:center;
background:none !important;
box-sizing: border-box !important;
-moz-box-sizing: border-box !important;
-webkit-box-sizing: border-box !important;
border: 1px solid #1c3a5f !important;
padding: 20px 4em !important;
color:#1c3a5f !important;
}

.secondary_CTA a:hover{
background:#ffffff !important;
border: 1px solid #ffffff !important;
color:#1C3A69 !important;
}

.secondary_CTA a::after{
color: #1c3a5f !Important;
}

.secondary_CTA a:hover::after{
color: #4dabe9 !Important;
}

.site-branding {
background:url(https://69f9b02b6a400d292c81c5647d7181f4-14958.sites.k-hosting.co.uk/kts_dev/wp-content/uploads/2025/04/kts_top_right_shape.svg);
width: 350px;
height: 150px;
position: absolute;
top: 0;
right: 0px;
background-size:contain;
background-position: right top;
background-repeat:no-repeat;
text-align:center;
display: flex;
align-items: center;
justify-content: center;
padding-left: 100px;
}

.site-branding a{
margin:0 auto;
}

.site-branding img{
max-width:50%;
max-height:100%;
margin-bottom:40px;
}

/* HOMEPAGE HERO */

.hero_logo{
margin-left:auto !important;
}

#homepage_hero{
min-height:80vh !important;
background-size:cover;
background-position:center center;
padding:150px 20px 50px 20px;
}

@media only screen and (max-width: 768px) {
#homepage_hero {
min-height: 0 !important;
padding: 40px !important;
}
#homepage_hero::before {
background:none !important;
}
}

#homepage_hero:after {
content: "";
position: absolute;
pointer-events: none;
right: 0;
left: 0;
bottom: 0px;
height: 600px;
max-height: 100%;
z-index: 0;
box-shadow: -370px 0px #ffffff;
}

@media only screen and (max-width: 768px) {
#homepage_hero:after {
height: 150px;
max-height: 50%;
box-shadow: -150px 0px #ffffff;
}
}

#homepage_hero h1, #homepage_hero h3, #homepage_hero p{
max-width:80%;
margin-right:auto;
}

@media only screen and (max-width: 768px) {
#homepage_hero h1, #homepage_hero h3, #homepage_hero p{
max-width:100%;
}
}

#homepage_hero p{
line-height:1.4em !important;
}

#homepage_hero .e-con-inner{
display: flex;
align-items: flex-start;
justify-content: flex-end;	
}

/*-----LOGO SLIDER---------*/

.logo_slider  .swiper-slide:not(.swiper-slide:hover){
padding:10px 35px;
 -webkit-filter: grayscale(1);
filter: grayscale(1) brightness(1.5);
opacity:0.3;
}

.logo_slider  .swiper-slide:hover{
padding:10px 35px;
transition:0.5s all;
transition:1s all;
}

.min_height_50{
min-height:50vh;
}

.curve_bottom_right{
padding:50px;
}

#sectors_block{
background-color:#f3f3f4;
padding:50px 20px;
}

@media only screen and (max-width: 768px) {
#sectors_block{
padding:20px;
}
}

#masthead{
position: fixed;
z-index: 9;
right: 0;
left: 0;
background-color: rgba(255,255,255,1);
display:flex;
}

@media only screen and (max-width: 768px) {
#masthead{
position: relative;
}
}

.home #masthead{
background-color: rgba(255,255,255,0);
border-bottom:1px solid rgba(248,248,248,0);
}

.home #masthead.scrolled{
background-color: rgba(255,255,255,1);
transition:0.5s all;
border-bottom:1px solid rgba(248,248,248,1);
}

.custom-logo{
margin:10px;
}

#primary-menu{
padding-left:0px !important;
text-align:left;
justify-content: flex-start;
}

#primary-menu a{
font-size:25px;
display: flex;
align-items: center;
justify-content: center;
margin:0 20px;
}

.home #primary-menu a{
color:#ffffff;
}

#primary-menu .current_page_item a{
color:#4dabe9;
}

.menu-primary-container, .menu-primary-container a, #primary-menu, #primary-menu li{
height:100%;
}

@media only screen and (max-width: 768px) {
.menu-primary-container{
display:none !important;
}
}

#site-navigation{
width: 100%;
text-align: right;
}

#services_block{
background-color:#1c3a5f;	
}

#services_block .e-con-inner{
min-height:50vh;
}

@media only screen and (max-width: 768px) {
#find_out_more_button{
display:none !important;
}
}

/* PROCESSES BLOCK */

#processes_block{
background-color:#ffffff;
padding:20px 20px 0 20px;
margin:0;
}

#processes_image{
padding:0;
margin:0;
}

#processes_block .e-con-inner{
padding-bottom:0;
margin-bottom:0;
}

/* TRUSTED BY */

#trusted_by_block h2{
text-align:center;
}

#trusted_by_block{
background-color:#ffffff;
padding:35px 20px;
border-bottom:1px solid #f3f4f5;
}

/* SECTORS BLOCK*/

#sectors_block h2{
text-align:center;
}

/* SERVICES BLOCK */

#services_block{
background-attachment:fixed;
background-size:cover;
background-position:center center;
padding-top:25px;
padding-bottom:25px;
}

@media only screen and (max-width: 768px) {
#services_block{
background-attachment:scroll;
}	
}

#services_block h2, #services_block p{
color:#ffffff;
}

/* INSIGHTS BLOCK */

#insights_block h2{
color:#1c3a5f;
}

#insights_block{
padding:40px 20px;
background-color:#f3f4f5;
}

@media only screen and (max-width: 768px) {
#insights_block{
padding:20px;
}	
}

#insights_block .obfx-grid .obfx-grid-col-image {
margin:0 !important;
}

#insights_block .obfx-grid-col-content{
background-color:#1c3a5f;
padding:20px;
margin-top:-10px !important;
}

#insights_block .obfx-grid-wrapper .obfx-grid-col-content{
background-color:#1c3a5f;
}

#insights_block .obfx-grid-wrapper h2 a{
color:#1c3a5f !important;		
}

#insights_block .obfx-grid-wrapper .obfx-grid-content{
color:#999999;
}

#insights_block .obfx-grid .obfx-grid-col-image {
box-shadow: none !important;
}

.news_title{
font-size:30px;
}

#insights_block .insights_image{
position:relative;
}

.button_hybrid{
background-color: #4dabe9; 
color:#ffffff;
width:60px;
height:60px;
display:block;
position:absolute;
top:0;
right:0;
display:flex;
align-items: center;
justify-content: center;
font-size: 1.5em !important;
}

.button_hybrid:hover{
padding-left:20px;
}

#insights_block .slick-active button {
background-color: #ffffff !important;
}

@media only screen and (max-width: 768px) {
.insight-title{
font-size: 40px !important;
}
}

@media only screen and (max-width: 768px) {
.insight_header_image{
min-height:50vw !important;
}
}

@media only screen and (max-width: 768px) {
.insight-header-inner {
padding: 0px !important;
}
}

/* CALL TO ACTION BLOCK */

#call_to_action_block{
background-color:#1c3a5f;
padding:50px;
}

#call_to_action_block h2{
color:#ffffff;
text-align:left !important;
}

#call_to_action_block p{
color:rgba(255,255,255,0.75);
text-align:left !important;
}

/* TESTIMONIAL/CONTACT BLOCK */

#testimonial_contact_block, #testimonial_contact_block .e-con-inner{
padding:0;
margin:0;
}

/* TESTIMONIALS BLOCK */

#testimonials_block{
min-height:50vh;
background: rgb(72,126,184);
background: linear-gradient(90deg, rgba(72,126,184,1) 0%, rgba(207,72,136,1) 50%, rgba(217,113,76,1) 100%);
padding:40px;
justify-content: center;
position:relative;
}

@media only screen and (max-width: 768px) {
#testimonials_block{
min-height:0;
}
}

#testimonials_block .random_testimonial_title h2{
margin-bottom:20px;
}

#testimonials_block .testimonial_quote{
color: #ffffff;
font-size:40px;
position:relative;
margin:0 0 0 0;
padding:0 0 0 0.75em;
}

#testimonials_block .testimonial_quote span{
color:#4fafd8;
font-size:60px;
position:relative;
top:0.3em;
margin-left:5px;
}

#testimonials_block .testimonial_quote:before{
content: '"';
font-size:60px !important;
position:absolute;
top:0.4em;
left:0;
line-height:0;
color:#4fafd8;
}

#testimonials_block .testimonial_meta{
color: #4fafd8;
text-align:right;
}

#testimonials_block .random_testimonial_title h2{
color: #999999;
font-size:20px;
}

#testimonials_block .entry-title{
padding-left:1em;
position:relative;
}

#testimonials_block .entry-title:before{
content: '"';
font-size:40px !important;
position:absolute;
top:0;
left:0;
line-height:0;
}

#testimonials_block .entry-title:after{
content: '"';
font-size:40px !important;
position:absolute;
bottom:0;
right:0;
line-height:0;
}


/* QUICK CONTACT BLOCK */
#quick_contact_block{
min-height:50vh;
padding:40px;
background-color:#f3f4f5;
justify-content: center;
}

@media only screen and (max-width: 768px) {
#quick_contact_block{
min-height:0;
}
}

#quick_contact_block h2{
color: #1c3a5f;
}

#quick_contact_block p{
padding:0;
margin:0;
}

#quick_contact_block p button{
margin-top:20px;
}




/*---------SLICK CAPABILITIES SLIDER--------*/

.slick-carousel .slick-slide {
border-right:20px solid rgba(255,255,255,0);	
border-left:20px solid rgba(255,255,255,0);	
margin:0 !important;
position:relative;
display:flex;
height: inherit !important;
min-height:400px;
}

@media only screen and (max-width: 768px) {
.slick-carousel .slick-slide{
min-height:300px;
}
}

.slick-carousel .slide-content{
background-position:right bottom 75px;
background-size:200px auto;
background-repeat:no-repeat;
}

.slick-carousel .slick-list{
}

.capabilities_image{
height:175px !important;
width:auto !important;;
margin:0px auto;
}

.slick-carousel .slick-slide .sectors_slider_image{
position:absolute;
}

.slick-carousel .sectors_vehicle{
background-position: left bottom;
background-size: 90% auto;
background-repeat: no-repeat;
}

.sectors_vehicle div a{
position:absolute;
padding:20px;
left:0;
top:0;
right:0;
bottom:0;
}

@media only screen and (max-width: 768px) {
.slick-carousel .sectors_vehicle {
background-position: left bottom;
background-size: auto 80%;
height:100%;
text-align:right;
}
}

.slidercontentverticalalign{
display: flex;
align-items: center;
justify-content: center;
}

#external-buttons{
text-align:center;
margin-top:25px;
}

@media only screen and (max-width: 768px) {
#external-buttons{
display:none;
}
}
	
.slick-carousel .slick-slide .slide-content{
display:block;
flex-grow: 1;
}
	
.slick-carousel .slick-slide .slide-content h3{
color:#1e2839;
font-weight:300;
padding:0;
margin:0;
}

.slick-carousel .slick-slide .slide-content .super_heading, .super_heading h2, .contactblock .super_heading, .insights_page_content .super_heading, #page_header .super_heading, .item .super_heading, .insight_header_content .super_heading{
border:1px solid #d2d2d3;
border-radius:35px;
color:#d2d2d3 !important;
margin:0 0 1em 0;
font-size:15px;
display:inline-block;
padding:8px 30px;
}

.super_heading_elementor p{
border:1px solid #d2d2d3;
border-radius:35px;
color:#d2d2d3 !important;
margin:0 0 1em 0;
font-size:15px;
display:inline-block;
padding:8px 30px;
}

.super_heading h2, .contactblock .super_heading{
margin:0;
}

.slick-carousel .slick-slide .slide-content h3{
margin-top:0px;
}
		
.slick-carousel .slick-slide .slide-content div:nth-of-type(1){
flex:1;
}

.slick-carousel .slick-slide .slide-content div:nth-of-type(2){
flex:1;
padding:20px;
}

@media only screen and (max-width: 768px) {
.slick-carousel .slick-slide .slide-content div:nth-of-type(2) {
}
}

.slick-carousel .slide-content{
display:flex !important;
}

@media only screen and (max-width: 768px) {
.slick-carousel .slide-content {
display: block !important;
padding: 0px !important;
}
}

.action a {
display:inline-block;
padding:10px 15px; 
color:rgba(40, 40, 40, 1);
text-decoration:none;
}

@media only screen and (max-width: 768px) {
.action a {
margin:5px 0;
}
}

.action a:hover, .action a.active {
color:#ffffff;
}

.action a.active {
background: #4dabe9;
}

.action a:hover{
background:rgba(40, 40, 40, 1);
}

.slick-track{
display: flex !important;
}

.slick-slide{
height: inherit !important;
}
		


@gutters: 10%;

body {
  
  .slick-slide {
    .slide-content{
      margin: 0 @gutters;
      padding: 0;
    }
  }
	

	
.slick-carousel  .sectors_slider_image{

background-size:contain;
background-position:right bottom;
}
	
@media only screen and (max-width: 768px) {
.sectors_slider_image{
min-height:250px;
}
}
	
  
.slick-carousel .slick-list {
margin: 20px 0px;
}
  
  .slick-prev,
  .slick-next {
    position: absolute;
    right: @gutters;
    background: none;
    border: none;
    color: transparent;
   
    &:before { 
		display:none;
      content: ">"; 
      color: #fff; 
      font-size: 25px;
    }
	  
	  &:after { 
      color: #fff; 
      font-size: 25px;
    }
  }
  
  .slick-prev { 
    left: @gutters; 
    &:before { content: "<"; }
  }
  
  .slick-dots {
    list-style: none;
    margin: 0 auto 25px;
    text-align: center;
    
    li {
      display: inline-block;
      
      button { 
        transition: 0.2s background-color ease-in-out 0s;
        border: none;
        padding: 0;
        color: transparent;
        width: 45px;
        height: 10px;
        background-color: rgba(255,255,255,0.25);
        margin-right: 10px;
        border-radius: 10px; 
      }

       &.slick-active button { background-color: rgba(255,255,255,1) !important; }
    }
  }
}

.slick-track{
display: flex !important;
}

.slick-dots li {
width: 50px !important;
}

.slick-prev:hover{
transition:0.5s all;
left:-35px;
}

.slick-next:hover {
transition:0.5s all;
right:-35px;
}

.slick-carousel .slick-slide, .slick-carousel .slide-content, .slick-carousel, .slick-carousel .slide-1, .slick-carousel .slide-2, .slick-carousel .slide-3, .slick-carousel .slide-4, .slick-carousel .slide-5, .slick-carousel .slide-6{
height:100%;
}
	
.slick-carousel .slick-slide{
display:flex !important;
}
	
.slick-carousel .slick-slide .slide-content img {
width: 50%;
margin: 0 auto 25px;
}












/* SECTORS PAGE */

.all_sectors{
display:flex;
flex-wrap: wrap;
}

.sectors_links{
display:flex;
flex:1;
padding:25px;
flex: 1 1 31%;
margin:1%;
position:relative;
background-position:center center;
background-size:contain;
background-repeat:no-repeat;
}

.sectors_links .color_overlay{
position:absolute;
background-color:rgba(0,0,0,0.9);
top:0;
right:0;
bottom:0;
left:0;
mix-blend-mode: color;
transition:0.5s all;
}

.sectors_links .second_color_overlay{
position:absolute;
background-color:rgba(83,164,209,0.8);
top:0;
right:0;
bottom:0;
left:0;
transition:0.5s all;
}

.all_product_cats .sectors_links .color_overlay{
background-color:rgba(0,0,0,0);
}

.all_product_cats .sectors_links .second_color_overlay{
background-color:rgba(255,255,255,0.5);
}

.sectors_links:hover .color_overlay, .sectors_links:hover .second_color_overlay{
transition:0.5s all;
opacity:0;
}

.sectors_links h3{
font-size:30px;
z-index:1;
transition:0.5s all;
color:#ffffff !important;
margin-top:50px;
margin-bottom:0px;
}

.sectors_links h3 span{
box-decoration-break: clone;
padding: 0 12px !important;
background: #4dabe9;
line-height:1.5em;
}

.sectors_links:hover h3{
margin-left:20px;
opacity:0;
transition:0.5s all;
}

@media only screen and (max-width: 768px) {
.sectors_links{
flex: 1 1 48% !important;
max-width:48%;
}
}

@media only screen and (max-width: 768px) {
.sectors_links {
flex: 1 1 100% !important;
max-width: 100%;
}
.sectors_links{
max-width:100%;
margin:20px 0;
}
}

.sectors_links::before {
content:'';
float:left;
padding-top:100%;
}

@media only screen and (max-width: 768px) {
.sectors_links::before {
padding-top:50%;
}
}

.sectors_links .sectors_arrow_link{
opacity:0;
transition:0.5s all;
}

.sectors_links:hover .sectors_arrow_link{
opacity:1;
transition:0.5s all;
}

.sectors_arrow_link:after{
content: "\eb19";
font-size:1.5em !important;
position:absolute;
top:75px;
right:0;
width:60px;
height:60px;
background-color:#4dabe9;
display: flex;
align-items: center;
justify-content: center;
color:#ffffff;
font: normal normal normal 1em / 1 'lineicons';
flex-shrink: 0;
-webkit-font-smoothing: antialiased;
padding-left:0px;
transition:0.5s all;
z-index:1;
}

.sectors_links:hover .sectors_arrow_link:after{
padding-left:20px;
transition:0.5s all;
}


	
.mobilelink{
display:none;
}
	
@media only screen and (max-width: 768px) {
.mobilelink{
display:block;
padding:10px;
color: #4dabe9 !imprtant;
}
}


/* PAGE HEADER */

#page_header{
min-height:50vh;
padding:150px 20px 40px;
position:relative;
}

@media only screen and (max-width: 768px) {
#page_header{
min-height:0;
padding:20px !important;
}
}

#page_header .e-con-inner{
justify-content: flex-end;
width:100%;
max-width:1140px;
}

#page_header h1{
color:#000000;
margin-top: auto;
}

#page_header h1, #page_header p{
margin: 20px auto 0 0;
}

#page_header p{
color:#cccccc;
}

@media only screen and (max-width: 768px) {
#page_header h1, #page_header p{
max-width:100%;
}
}

.green_page_header{
background-color:#4dabe9 !important;
}

.green_page_header:after {
background-color:#4dabe9;
}

.green_page_header:after {
content: "";
position: absolute;
pointer-events: none;
right: 0;
left: 0;
bottom: 0px;
height: 300px;
max-height:100%;
box-shadow: -190px 0px #1c3a5f;
z-index: -9;
}

/* REMOVE SPACE AT TOP OF MAIN CONTENT */

.entry-content{
margin-top:0px !important;
}

/* CONTACT FORM */

.form_container{
display:flex;
}

@media only screen and (max-width: 768px) {
.form_container{
display:block;
}
}
	
.form_container input, .form_container textarea{
width:100%;
}
	
.form_container div:nth-of-type(1), .form_container div:nth-of-type(2){
flex:1;
}
	
.form_container div:nth-of-type(1){
padding-right:20px;
}

.form_container div:nth-of-type(2){
padding-left:20px;
}

/* CONTACTUS PAGE */

#map_block{
padding:0;
margin:0;
}

#map_block:after {
content: "";
position: absolute;
pointer-events: none;
right: 0;
left: 0;
bottom: 0px;
height: 300px;
max-height: 100%;
box-shadow: -190px 0px #e5e5e5;
z-index: 0;
}



/* PRODUCT CATEGORY PAGEZ */

.all_product_cats ul{
display: flex;
flex-wrap: wrap;
}

.all_product_cats .sectors_links {
flex: 1 1 31%;
}

@media only screen and (max-width: 768px) {
.all_product_cats ul{
display:block;
padding:0 !important;
margin:0 !important;
}
.all_product_cats .sectors_links {
max-width: 100%;
}
}

#archive_header {
padding: 135px 40px 40px 150px;
align-items: center;
display:flex;
justify-content: center;
z-index: 1;
position: relative;
}

@media only screen and (max-width: 768px) {
#archive_header {
min-height:0;
padding:100px 20px 40px 50px;
}
}
	
#archive_header .e-con-inner{
max-width:1140px;
margin:0 auto;
align-self: center;
}

#archive_header .e-con-inner h1, #archive_header .e-con-inner h3{
padding: 0;
margin: 0;
text-align:center;
line-height: 1;
}

#archive_header .e-con-inner h1{
color:#4eafd9 !important;
}
	
#archive_header .e-con-inner h3{
color:#1c3a5f !important;
}

.archive_container{
padding:40px 0;
}

@media only screen and (max-width: 768px) {
.archive_container {
padding-bottom:100px;
}
}

.archive-description{
line-height:1.4em;
font-size:25px;
text-align:center;
padding:0;
margin:0;
}
	
.archive_container_inner{
display:flex;
flex-wrap:wrap;
max-width:1140px;
margin:0 auto;
}

@media only screen and (max-width: 768px) {
.archive_container_inner{
display:block;
}
}

.sector_icons, .sector_icons div, .sector_icons div a{
text-align:center !important;
display:flex;
flex-wrap: wrap;
}
	
.sector_icons div{
flex:none !important;	
max-width:120px;
flex-direction:column;
margin-bottom:20px;
}
	
.sector_icons div a{
padding:0 20px 0 0;
flex-direction:column;
font-size: 0.8rem;
line-height: 1.5;
text-decoration:none;
font-weight:200;
color: #cccccc;
transition:0.5s all;
}
	
.sector_icons div:hover a{
color: #4dabe9;
transition:0.5s all;
}
	
.sector_icons div a img{
margin:0px auto;
height: 80px;
width: 80px;
max-width: none !important;
}

.full_width{
max-width:100%;
}
	
.custom-bg{
width:100%;
margin:0 auto;
text-align:center;
}

.custom-bg img{
max-width:300px;
margin:0 auto !important;
}
	
.item{
padding:20px;
flex: 1 50%;
max-width:50%;
}

@media only screen and (max-width: 768px) {
.item {
max-width: 100%;
}
}
	
.item h3{
padding:0;
margin:20px 0 0 0;
line-height:1.2em;
}
	
.item p{
color:#999999;
}
	
.item h3 a{
text-decoration:none !important;
color:#4dabe9 !important;
}
	
.item h3 a:hover {
color:#4dabe9 !important;
}
	
.two-column{
display:flex;
}
	
.flex-inner{
flex:1;
}

.archive_photo_block{
min-height:40vh;
background-position:center center;
background-size:cover;
background-repeat:no-repeat;
}

.underlap_top{
position:relative;
margin-top:-150px;
z-index:0;
min-height:calc(40vh + 150px);
}

.underlap_top .photobox_with_grey_curve_photo{
min-height: calc(40vh + 150px);
}

.underlap_top_sectors{
position:relative;
margin-top:-150px;
z-index:0;
min-height:calc(40vh + 150px);
}

.underlap_top_sectors .photobox_with_grey_curve_photo{
min-height: calc(40vh + 150px);
}




/* INSIGHTS SLIDER */
	
.slick-carousel-insights .slick-slide{
margin:20px;
background-color:#f3f4f5;
-webkit-box-shadow:inset 0px 0px 0px 20px #f3f4f5;
-moz-box-shadow:inset 0px 0px 0px 20px #f3f4f5;
box-shadow:inset 0px 0px 0px 20px #f3f4f5;
}
	
.slick-carousel-insights{
color:#cccccc;
background-color:#f3f4f5;
}
	
.slick-carousel-insights h3 a{
color:#1e2839;
}

.slick-carousel-insights{
background-color:#f3f4f5 !important;
}
	
.slick-carousel-insights .insights_snippet{
color:#666666;
}
	
.slick-carousel-insights h3 a{
color:#1e2839;
}
	
.slick-carousel-insights .tile-content{
background-color:#f3f4f5;
position:relative;
padding:20px;
margin:-50px 20px 20px 20px;
}
	
.slick-carousel-insights .tile-content h3{
line-height:1.2em;
padding:0;
margin:0 0 10px 0;
}
	
.slick-carousel-insights .tile-content h3 a{
text-decoration:none;
}

.slick-carousel-insights{
max-width:1140px;
margin:0 auto;
padding:20px 0;
}
	
.slick-carousel-insights .category{
color:#bebdbf !important;
padding:0;
margin:0 0 10px 0;
}
	
.slick-carousel-insights .insights_image{
position:relative;
height:300px;
background-position:center center;
background-size:cover;
background-repeat:no-repeat;
}

.slick-carousel-insights .slick-dots, .slick-carousel-cs .slick-dots {
position:relative;
bottom: 0;
margin-top:10px;
}

.slick-active button {
background-color: #4dabe9 !important;
}

/* CASE STUDY SLIDER */

.slick-carousel-cs{
padding:20px 0;
}

.slick-carousel-cs .slide-content{
display:flex;
height:100%;
min-height:50vh !important;
}

@media only screen and (max-width: 768px) {
.slick-carousel-cs .slide-content {
display: block;
height: auto;
min-height:0vh !important;
}
}

.slick-carousel-cs .title{
color:#ffffff;
}

.case-study-carousel-inner{
flex:2;
}

.case_study_image{
background-size:cover !important;
background-position:center center !important;
background-repeat:no-repeat !important;
flex:1;
padding:40px;
}

@media only screen and (max-width: 768px) {
.case_study_image {
height:250px;
display:none;
}
}

.case-study-carousel-inner p{
font-size:1.3em !important;
}

@media only screen and (max-width: 768px) {
.case-study-carousel-inner p{
font-size:1em !important;
}
}

.case-studies-carousel .slick-dots {
position: absolute;
bottom: 0;
}

/* FOOTER */

footer{
background-color:#1e2839;
}

#footer_links {
display: flex;
position: relative;
width: 100%;
max-width: 1140px;
padding: 20px;
margin: 0 auto;
}

@media only screen and (max-width: 768px) {
#footer_links {
display: block;
}
}

#footer_links section {
flex: 1;
padding: 20px;
}

#footer_links h3 a{
color:#ffffff;
margin:0;
padding:0;
margin-bottom:20px !important;
}

#footer_links ul, #footer_links li{
padding: 0 !important;
margin: 0 !important;
list-style: none;
}

.site-info{
background-color:#10182b;
color:#ffffff;
padding:20px;

}
.site-info a{
color:#ffffff;
}
.site-info a:hover{
color:#ffffff;
}

#footer_links h3 {
font-size: 35px;
margin-bottom:10px;
}

#footer_links a, #footer_links p, #footer_links li{
text-decoration:none;
color:#999999;
line-height:1.6;
}

#footer_links a:hover {
color:#4dabe9;
}

#footer_links #block-16 p{
padding-bottom:0;
margin-bottom:0;
}

#footer_links #block-17 p{
padding:0;
margin:0;
}

#footer_links #block-16 p:before, #footer_links #block-17 p:before{
display: inline;
align-items: center;
justify-content: center;
color: #999999;
font: normal normal normal 1em / 1 'lineicons';
flex-shrink: 0;
-webkit-font-smoothing: antialiased;
margin-right:5px;
}

#footer_links #block-16 p:before{
content: "\eb58";
}

#footer_links #block-17 p:before{
content: "\eb5c";
}

.widget_media_image img {
max-width:150px !important;
height:auto !important;
}

/* HIDE ENTRY FOOTER */
.entry-footer{
display:none;
}

/*SINGLE BLOG PAGE*/

.single-blog{
padding-top:100px;	
background-color:#ffffff;
padding-top:0px !important;
}

@media only screen and (max-width: 768px) {
.single-blog{
padding-top:0px;
}
}
	
.single-blog .entry-header {
background:none;
display:flex;
}
	
.single-blog .entry-header h1{
font-size:65px;
}
	
.single-blog .entry-content h2{
font-size:40px;
}
	
.single-blog .entry-header-inner{
/*max-width: 1140px;
margin: 0 auto;
padding: 50px 20px 20px 20px;*/
display:flex;
width:100vw !important;
}
	
.image-cover{
background-size:cover;
}
	
.image-contain{
background-size:contain;
}
	
@media only screen and (max-width: 600px) {
.single-blog .entry-header-inner{
display:block;
}
.social_links{
text-align:right;
}
}

.single-blog .entry-content-inner {
max-width: 1140px;
margin: 0 auto;
padding: 20px 20px 50px 20px;
}
	
@media only screen and (max-width: 600px) {
.post_header_image{
}
}
	
.post_header_image, .post_header_content{
flex:1;
}
	
.post_header_content{
background: linear-gradient(90deg, rgba(77, 115, 180, 1) 0%, rgba(77, 170, 233, 1) 100%);
padding:40px;
margin-bottom:-35px;
position:relative;
}

.post_header_content:before{
content:"";
position:absolute;
left:0;
right:0;
	top:0;
	bottom:0;
	background:url(https://69f9b02b6a400d292c81c5647d7181f4-14958.sites.k-hosting.co.uk/kts_dev/wp-content/uploads/2025/04/grid_overlay.png);
	opacity:0.05;
}
	
.post_header_content h1{
line-height:1.2em;
padding:0px;
margin:0 0 20px 0;
font-weight:200;
color:#ffffff;
}

.post_header_content h1,
.post_header_content p,
.post_header_content div{
z-index:9;
position:relative;
}
	
.single-blog .entry-content-inner h2:nth-of-type(1){
padding-top:0px;
margin-top:0px;
}
	
.post_header_content p, .post_header_content a{
color:#cccccc;
}

.post_header_content a:hover{
color:#ff00ff;
}	

.post_header_content .meta{
color:#cccccc;
	margin-bottom:10px;
}
	
.social_links{
border-top:1px solid rgba(0,0,0,0.05);
margin-top:0px;
padding-top:20px;
}
	
.social_links .lni{
font-size:1.5em;
margin:0 5px;
}
	
.social_links a{
color:#cccccc;
}
	
.social_links a:hover{
color:#4dabe9;
}
	
.green_bkg p a{
color:#ffffff;
}

.container_block{
background-color: #4dabe9;
}

.container_block_inner{
display:flex;
padding:40px 20px;
max-width:1140px;
margin:0 auto;
}

@media only screen and (max-width: 768px) {
.container_block_inner{
display:block;
}
}

.container_block_inner div{
flex:1;
}

.container_block_inner div:nth-of-type(1){
padding-right:10px;
}

.container_block_inner div:nth-of-type(2){
padding-left:10px;
}

/* CONTACT PAGE */

.two_column_block{
margin:0 !important;
padding:0 !important;
--widgets-spacing: 0px !important;
}

.contains_form input, .contains_form textarea{
padding: 10px;
border: 0px;
border-radius: 3px;
margin: 20px 0;
display: block;
width: 100%;
}

#contact_us_form{
padding:40px;
background-color:#1c3a5f !important;
}

.elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
align-items: start !important;
}

.contact_details .elementor-icon-list-item{
margin:10px 0 !important;
}

.elementor-widget-image{
max-width: calc(100% - 40px);
margin:0 20px;
}


/* FUNKY NEW NAV */

#primary-menu li{
display: inline-block;
transition: all 0.3s ease-in-out;
z-index:9 !important;
}

.sub-menu {
display:none;
border-radius:5px;
padding:15px;
margin-left:-100px;
width:300px;
position: absolute;
background-color: #4dabe9;
height: 0;
opacity:0;
line-height: 1.4em !important;
box-sizing: border-box;
transition: height 0.5s ease-in-out;
transition-delay: 0.1s;
z-index:999999;
box-shadow: 1px 37px 32px -28px rgba(86,96,115,0.67);
-webkit-box-shadow: 1px 37px 32px -28px rgba(86,96,115,0.67);
-moz-box-shadow: 1px 37px 32px -28px rgba(86,96,115,0.67);
}

#primary-menu li:hover .sub-menu {
display:block;
height: auto;
opacity:1;
transition:0.5s all;
}

.sub-menu li{
display: block !important;
transition: all 0.3s ease-in-out;
z-index:9 !important;
padding:10px 0 10px 0;
}

.sub-menu::after{
top:-10px;
left:140px;
content:"";
background-color:#ffffff;
height:20px;
width:20px;
position:absolute;
z-index:999999999999999 !important;;
transform: rotateY(0deg) rotate(45deg);
}

/* DO LITTLE NAV POINTER THING ON HOMEPAGE */
.home .sub-menu::after{
background-color:#4dabe9;
}

.home .scrolled .sub-menu::after{
background-color:#ffffff;
}

.sub-menu, .sub-menu li {
text-align:center;
align-items: center;
justify-content: center;
}

.sub-menu li {
align-items: center;
justify-content: center;
min-width:0;
}

.sub-menu a {
color: #fff !important;
font-size: 16px;
}

.sub-menu a:hover {
color: #1c3a5f !important;
text-decoration: underline;
transition:0.5 auto.
}

#primary-menu a {
text-decoration: none;
position: relative;
line-height:1;
}

#primary-menu li a::before{
content: "";
position: absolute;
width: 100%;
height: 4px;
bottom: -4px;
left: 0px;
background-color: #4dabe9;
transition: all 0.2s ease-in-out;
transform: scale(0, 0);
visibility: hidden;
}

.home #primary-menu li a {
/* EDITED OUT FOR HOMEPAGE HERO color: #ffffff; */
}

.home .scrolled #primary-menu li a {
color: #000000;
}

#primary-menu li:hover a {
color: #4dabe9;
}

#primary-menu li:hover a::before {
visibility: visible;
transform: scale(1, 1);
}

.current_page_item a{
color: #4dabe9;
}

.current_page_item a::before{
content: "";
position: absolute;
width: 100%;
height: 4px;
bottom: -4px;
left: 0px;
background-color: #4dabe9;
width:100%;
transform: none !important;
visibility: visible !important;
}

.menu-primary-container, .menu-primary-container a, #primary-menu, #primary-menu li {
z-index:9;
}

/* ----------------- SINGLE PRODUCT PAGE -----------------------*/

.products-entry-content .second-column .industries a{
color:#404040;
text-decoration:underline;
transition:0.5s all !important;
}

.products-entry-content .second-column .industries a:hover{
color:#4dabe9 !important;
transition:0.5s all !important;
}

.products-entry-content .second-column h3{
font-size:30px;
}

container, .contz{
max-width:1140px;
padding:20px;
margin:0px auto;
}

.products-entry-header{
min-height:300px;
padding:135px 20px 20px 20px;
}

@media only screen and (max-width: 768px) {
.products-entry-header {
padding:20px;
}
}

.entry-header-container{	
text-align:center;
width:100%;
max-width:1140px;
margin:0 auto;
}
	
.products-entry-content{
max-width:1140px;
display:flex;
margin:0 auto;
padding:50px 20px;
}

@media only screen and (max-width: 768px) {
.products-entry-content{
display:block;
}
}
	
.products-entry-content .main-column{
flex:3;
padding-right:50px;
}

@media only screen and (max-width: 768px) {
.products-entry-content .main-column{
padding-right:0px;
}
}

.products-entry-content .main-column h3:not(.products-entry-content .main-column h3:nth-of-type(1)){
font-size:30px;
}

.products-entry-content .main-column h2{
font-size:30px !important;
}
	
.products-entry-content .second-column{
padding:25px 25px 100px 25px;
background-color:#f2f3f4;
flex:1;
}

.photobox_with_green_curve{
background-color:#4dabe9;
}
	
.photobox_with_green_curve_photo{
height:400px;
background-size:cover;
background-position:center center;
background-repeat:no-repeat;
}
	
.contact_form_block{
background-color:#f3f4f5;	
}

.post-thumbnail{
text-align:center;
}	

.post-thumbnail img{
width:75%;
height:auto;
margin:0 auto;
}
	
table{
border-radius:4px;
}

th{
background-color:#1c3a5f;
border-radius:6px 6px 0 0;
color:#ffffff;
}

td,th{
padding:15px 20px;
border:0px;
}
	
td{
color:#666666;
}
	
tr{
background-color: rgba(0, 0, 0, 0.02);
}
	
tr:nth-child(odd){
background-color: rgba(0, 0, 0, 0.04);
}
	
.second-column h3{
margin-bottom:10px;		
}
	
.second-column h3:not(.second-column h3:first-of-type){
margin-top:35px;
}
	
.second-column ul{
padding:0px;
margin:0px;
list-style: none;
}
	
.second-column li{
padding:10px 0;
}
	
.second-column li:not(.second-column li:last-of-type){
border-bottom:1px solid rgba(0,0,0,0.1);
}

/* HIDE LINKS TO NEXT AND PREVIOUS AT BOTTOM */

.post-navigation{
display:none;
}

.curved_bkg_image div{
z-index:1;
}

/* BUTTON ALIGNER */

.button_aligner{
flex-direction:row !important;
text-align:right !important;
}

/* TESTIMONIALS PAGE*/

.quote_container{
background-color:rgba(255,255,255,1);
padding:50px 40px;
position:relative;
margin:0 0 50px 0;
}

.quote_container .testimonial_quote{	
color:#1c3a5f !important;
line-height:1.2em;
}

.quote_container .testimonial_meta{
text-align:left !important;
color:#cccccc !important;
padding:0;
margin:20px 0 0 30px;
}

.quoter_image{
display:block;
height:75px;
width:75px;
margin:0 auto;
border:7px solid #cccccc;
border-radius:100px;
background-size:cover;
background-position:center center;
position:absolute;
bottom:-15px;
-right:calc( 50% - 35px);
left:-15px;
}


/* SECTOR PAGE */

.sector-entry-header{
padding:20px;
align-items: center;
justify-content: center;
}

@media only screen and (max-width: 768px) {
.sector-entry-header{
padding-left:50px;
}
}

.sector-entry-header .entry-header-container{	
align-self: flex-end;
width:100%;
max-width:1140px;
margin:0 auto;
position:relative;
}
	
.sector-entry-header .entry-header-container h1{
color:#000000;
}
	
.sector-entry-header .entry-header-container .large_p{
padding:0;
margin:20px 0 0 0;
}
	
.sector-entry-header .entry-header-container h1, .entry-header-container h3{
padding:0;
margin:20px 0 20px 0;
}

.photobox_with_grey_curve{
background-color:#f5f5f5;
}

.photobox_with_white_curve {
background-color: #ffffff;
}
	
.photobox_with_grey_curve_photo{
min-height:40vh;
background-size:cover;
background-position:center center;
background-repeat:no-repeat;
}

.sector-entry-content-container{
background-color:#f5f5f5;
position:relative;
}
	
.sector-entry-content-container .entry-content{
max-width:1140px;
margin:0 auto;
/* display:flex; STOPPING CAROUSEL FROM RESIZING */
padding:20px;
min-height: 40vh;
}

.sector-entry-content-container .entry-content .entry-content-inner{
flex:1;
padding:20px;
}

.sector-entry-content-container .entry-content .slide-content{
background-color:#4fafd8;
}

.sector-entry-content-container .entry-content .slide-content h3{
color:#1c3a5e !important;
}

.sector-entry-content-container .slick-slider{
max-width:1140px;	
}

.sector-entry-content-container .slide-content{
min-height: 40vh;
}



/* SQUARE IMAGE */

.square_image, .square_image img{
width: auto;
height: auto;
aspect-ratio: 1;
object-fit: cover;
max-width:80% !important;
margin:20px auto;
}

@media only screen and (max-width: 768px) {
.square_image, .square_image img{
width: 100%;
height: auto;
}
}

.ui-accordion .ui-accordion-header{
border-top:0;
border-right:0;
border-left:0;
border-bottom: 1px solid rgba(0,0,0,0.1);
font-size: 20px !important;
padding:15px 0 !important;
}

.ui-accordion .ui-accordion-content {
padding: 15px 0 15px 16px !important;
border-top: 0;
overflow: auto;
}

.ui-widget-content {
background: none !important;
border: none !important;
}

.flexy{
display:flex !important;
}

@media only screen and (max-width: 768px) {
.flexy{
flex-direction:column;
}	
}

.flexy div{
flex:1;
}

.flexy div:nth-of-type(1){
/*text-align:center;*/
}

.flexy div:nth-of-type(1) ul{
text-align:left;
}

.flexy div img{
margin:0 auto !important;
}

.flexvaligncenter{
align-items: center;
justify-content: flex-start;
}

.ui-state-default{
background:none !important;
color: #7a7a7a !important;
}

.ui-state-active, .ui-button.ui-state-active:hover {
border: 0 !important;
background: rgba(28,58,95,1) !important;
color: rgba(255,255,255,1) !important;
}

/*--------DROPDOWN JUMP LINKS--------*/

.dropbtn, .dropbtn:after {
transition:0.5s all;
}

.dropbtn {
color: white;
border: none;
width:100%;
background-color: #1c3a5f !important;
padding: 10px 4em 10px 20px !important;
}

.fixedwidthdropdown{
max-width:250px;
	margin:0px auto;
}

.dropdown:hover .dropbtn:not(.dropdown:hover .whitedropbtn){
background-color: #4dabe9 !important;	
}

.whitedropbtn:hover{
color:#4dabe9 !important;
}

.dropdown {
position: relative;
display: block;
}

.dropdown-content {
text-align:left;
display: none;
position: absolute;
background-color: #f1f1f1;
width:100%;
z-index: 1;
}

.dropdown-content a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}

.dropdown-content a:hover {
background-color: #ddd;
}

.dropdown:hover .dropdown-content {
display: block;
}

.dropdown:hover .dropbtn {
background-color: #3e8e41;
}

/*----------ABOUT US PAGE------------------*/

.contact_links, .contact_links ul, .contact_links li, .contact_links span, .contact_links a{
color:#4eafd9 !important;
}

.contact_links li{
margin-bottom:10px !important;
}

.elementor-shape-rounded .elementor-icon.elementor-social-icon {
border-radius: 100% !important;
background-color: #1c3a5f !important;
}

.system_image{
position:relative;
display:inline-block;
}

.system_image.is_visible{
opacity:1;
transition:opacity 1s;
}

.system_image .system_image_inner{
position:absolute;
left:0;
top:0;
right:0;
bottom:0;
background-size:cover !important;
opacity:0;
background-position: 0px 0px !important;
}

.system_image.is_visible  .system_image_inner{
background-position: 0px 0px !important;
transition:all 1s;
opacity:1;
}

@media only screen and (max-width: 768px) {
.system_image_inner{
display:none !important;	
}
}

.system_image.is_visible .kit_image{
transition:all 1s;
opacity:1;
}

.system_image.is_visible:hover .kit_image{
transition:all 1s;
opacity:0.2;
}

@media only screen and (min-width: 769px) {
.kit_image{
display:block !important;	
}
.kit_image_mobile{
display:none !important;	
}
}

@media only screen and (max-width: 768px) {
.kit_image{
display:none !important;	
}
.kit_image_mobile{
display:block !important;	
}
}

/*------------TOOLTIP---------------*/

.tooltip {
position: absolute;
display: block;
--width:50px;
--height:50px;
}

@media only screen and (max-width: 768px) {
.tooltip {
display:none !important;	
}
}
	
.tooltip a {
display:block;
color:#ffffff;
}

.tooltip a:hover {
text-decoration:underline !important;
}

.tooltip .tooltiptext {
visibility: hidden;
width: 200px;
background-color: #4fafd8;
color: #fff;
text-align: center;
padding: 10px 10px;
position: absolute;
z-index: 1;
bottom: 100%;
left: 50%;
margin-left: -100px;
opacity: 0;
transition: opacity 0.3s;
}

.tooltip .tooltiptext::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left: -10px;
border-width: 10px;
border-style: solid;
border-color: #4fafd8 transparent transparent transparent;
}

.tooltip:hover .tooltiptext {
visibility: visible;
opacity: 1;
}

/* 404 */

.fourohfour{
min-height:80vh;
display: flex;
align-items: center;
justify-content: center;
}

.super_size{
font-weight:900 !important;
text-align:center;
font-size: 200px;
color:#4fafd8;
}

/* INSIGHTS PAGE */

.insights_page .obfx-grid-col{
display:flex;
}

@media only screen and (max-width: 768px) {
.insights_page .obfx-grid-col {
display: block;
}
}

.insights_page .obfx-grid-title, .insights_page .obfx-grid-title a{
font-size:30px !important;
font-weight: 300 !important;
color:#4dabe9 !important;
line-height: 1.2 !important;
}

.insights_page .obfx-grid-content{
color:#404040 !important;
}

.insights_page .obfx-grid-date{
color:#cccccc !important;
font-weight:300 !important;
}

.insights_page .obfx-grid-col-image{
flex:1;
box-shadow: none !important;
}
.insights_page .obfx-grid-col-content{
flex:3;
padding: 0 25px !important;
}

@media only screen and (max-width: 992px) {
.insights_page .obfx-grid-col-content {
flex: 1;
}
}

.insights_entry_header{
background-color:#f8f8f8 !important;
min-height:75vh;
align-items: flex-end;
flex-shrink:1;
background-size:cover !important;
}
		
.insight_header_content{
margin-top:100px;
}

.menu-item-9046{
display:none !important;
}

/* REMOVE MARGIN AT BOTTOM OF PAGE */
.post, .page {
margin: 0 !important;
}

/* STYLE SLICK ARROWS */
.slick-prev, .slick-next{
}

.slick-prev:after, .slick-next:after{
background:none !important;
content: "\eb19";
font-size: 25px !important;
position: absolute;
top: 0;
right: 0;
bottom: 0;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
color: #cccccc !important;
font: normal normal normal 1em / 1 'lineicons';
flex-shrink: 0;
-webkit-font-smoothing: antialiased;
}

.slick-prev:after{
content: "\eb1b";	
}

@media only screen and (max-width: 768px) {
.slick-prev{
display:none !important;
}
.slick-next{
right:20px !important;
top:auto !important;
bottom:0px !important; 
}
.slick-next:after{
}
}

/* LIMIT WIDTH OF DIV */
.boxed-inner{
max-width:1140px;
margin:0 auto;
padding:0 20px;
}

/* SHAPE BKG ON HEADER */
.shape_bkg{
background-size:contain;
background-size: 50%;
background-position:right center;
background-repeat:no-repeat;
}

@media only screen and (max-width: 768px) {
.shape_bkg {
background-size: 250px;
background-position: right bottom;
}
}

@media only screen and (max-width: 768px) {
.shape_bkg {
background:none !important;
}
}

/* HIDE FULL NAV ON TABLET AND MOBILE */
@media only screen and (max-width: 1024px) {
#masthead{
display:none !important;
}
	
}

/* CHANGE BKG COLOUR OF MOBILE MENU */
#rmp-container-8948 {
background-color: #4dabe9;
box-shadow: 4px 0 30px -2px rgba(31, 50, 84, 0.5);
}

/*INSIGHTS PAGE LIST*/

.insights_list .obfx-grid-col-content{
margin-top:10px !important;
margin-bottom:10px !important;
}


/* PRODUCTS CAROUSEL */

.product-slideshow-container {
max-width: 1024px;
position: relative;
margin: auto;
}

.product-slideshow-container .mySlides {
display: none;
}

.product-slideshow-container .prev, .product-slideshow-container .next {
margin:20px;
cursor: pointer;
position: absolute;
top: calc(50% - 35px);
width: 50px;
height: 50px;
padding: 0;
color: white;
font-weight: bold;
font-size: 18px;
transition: 0.6s ease;
border-radius: 100% !important;
user-select: none;
display:flex;
align-items: center;
justify-content: center;
background-color: rgba(0,0,0,0.1);
}

.product-slideshow-container .next {
right: 0;
}

.product-slideshow-container .prev:hover, .product-slideshow-container .next:hover {
background-color: #4dabe9;
}

.product-slideshow-container .numbertext {
color: #999999;
font-size: 12px;
padding: 8px 12px;
position: absolute;
top: 0;
}

.product-slideshow-container .fade {
animation-name: fade;
animation-duration: 1.5s;
}

@keyframes fade {
from {opacity: .4}
to {opacity: 1}
}

.dotcontainer{
display:flex;
max-width:1024px;
margin:15px auto 0;

}

.dotcontainer .dot{
cursor: pointer;
margin: 10px;
transition: background-color 0.6s ease;
flex: 1;
border:2px solid rgba(255,255,255,0);
background-size:cover;
background-position:center center;
transition:0.5s all;
background-repeat:no-repeat;
}

.dotcontainer .active, .dotcontainer .dot:hover {
border:2px solid #4dabe9;
transition:0.5s all;
}

@media only screen and (max-width: 768px) {

.dotcontainer{
flex-wrap: wrap;
}

.dotcontainer .dot{
height: 120px;
max-width:46%;
margin:2%;
flex-basis:100%;
}

.product-slideshow-container .prev, .product-slideshow-container .next {
display:none;
}

}

/* RIBBON */

.ribboncontainer, .ribbonitem:nth-of-type(1){
}

.ribboncontainer p, .ribboncontainer h3{
text-align:center;
}

.ribboncontainer h3{
color:#ffffff;
padding:0 0 5px 0 !important;
margin:0;
text-transform:uppercase;
text-align:center;
font-size:0.8em;
}

.ribboncontainer p{
padding:0;
margin:0;
font-size:0.8em;
line-height:1.2em;
color:#1c3a5f !important;
}

.ribboncontainer{
display:flex;
background: rgba(174,193,73,1);
clip-path: polygon( 0% 0%, calc(100% - 40px) 0%, 100% 50%, calc(100% - 40px) 100%, 0% 100%);
}

.ribbonitem{
flex:1;
display:flex;
flex-direction:column;
padding:15px 50px 15px 15px !important;
position:relative;
clip-path: polygon( 0% 0%, calc(100% - 40px) 0%, 100% 50%, calc(100% - 40px) 100%, 0% 100%);
background: linear-gradient(270deg, rgba(184,203,82,1) 0%, rgba(184,203,82,0) 100%);
}

.ribbonitem:nth-of-type(1){
padding-left:25px !important;
}

.ribboncontainer .lni{
color:#ffffff;
font-size:3em;
text-align:center;
padding:5px 0 10px 0 ;
}

.ribbondesc{
color:#ffffff;
padding:0 10px 10px 10px;
}

@media only screen and (max-width: 768px) {

.ribboncontainer{
flex-direction:column;
clip-path: polygon( 0% 0%, 100% 0%, 100% calc(100% - 40px), 50% 100%, 0% calc(100% - 40px));
}

.ribbonitem{
margin-bottom:0;
background: linear-gradient(0deg, rgba(184,203,82,1) 0%, rgba(184,203,82,0) 100%);
clip-path: polygon( 0% 0%, 100% 0%, 100% calc(100% - 40px), 50% 100%, 0% calc(100% - 40px));
padding:15px 15px 50px 15px !important;
}

.ribbonitem:last-of-type{
}

}

/* FIX SHORTCODE CONTAINER */

.hide_shortcode_container .elementor-shortcode{
display:none;
}

/* FIX LOGO SLIDER ALIGNING LEFT */

.swiper-slide-inner .swiper-slide-image{
margin:0 auto;
}

@media only screen and (min-width: 768px) {
.mobile_map{
display:none !important;
}
}

@media only screen and (max-width: 768px) {
.mobile_map, .mobile_map div{
padding:0 !important;
margin:0 !important;
display:block;
background-position: center center;
background-size:cover;
}
#map_block{
display:none !important;
}
}

/* CASE STUDIES BLOCK */

.slick-carousel-cs{
padding:0px !important;
}

.slick-carousel-cs .slide-content{
background-size:cover;
background-position: center center;
}

.slick-carousel-cs .slick-track{
min-height:80vh;
}

@media only screen and (max-width: 768px) {
.slick-carousel-cs .slick-track{
min-height:0px;
}	
}

.slick-carousel-cs .slide-content:before{
position:absolute;
content:"";
top:0px;
right:0px;
bottom:0px;
left:0px;
}

.slick-carousel-cs .case-study-carousel-inner{
display: flex;
justify-content: flex-end;
align-items: flex-end;
padding:0 0 0 50px;
}

@media only screen and (max-width: 768px) {
.slick-carousel-cs .case-study-carousel-inner{
padding:100px 20px 20px 20px !important;
}	
}

.slick-carousel-cs .case-study-carousel-inner p{
padding:0 !important;
margin:0 !important;
}

.slick-carousel-cs .case-study-carousel-inner .case-study-carousel-inner-textbox{
width:100%;
padding: 0;
z-index:1;
}

#case_studies_block{
background:#ffffff;
}

#case_studies_block h2{
color: #4fafd8 !important;
text-align:center;
color:#4dabe9 !important;
padding:0;
margin:0 0 10px 0;
}
	
#case_studies_block h3.wp-block-heading{
text-align:center;
color:#000000;
padding:0;
margin-top:0;
margin-bottom: 1.5em;
font-weight: 300 !important;
font-size: 22px;
line-height: 1.4em !important;
}
	
#case_studies_block .widget_block{
padding:0;
margin:0;
display:block;
}
	
#case_studies_block .widget_block p:empty{
display:none !important;
}

.value h3{
padding:0 !important;
margin:5px 0 10px 0 !important;
color: #1C3A63 !important;
font-size:25px !important;
}

.value .elementor-icon {
fill: #1C3A63 !important;
color: #1C3A63 !important;
border-color: #1C3A63 !important;
}

.value .elementor-icon svg {
width: 40px !important;
height: 40px !important;
}

/* CASE STUDIES LIST ON CASE STUDIES PAGE */

.case_studies_list .obfx-grid-wrapper{
margin-bottom:50px !Important;
padding-bottom:50px !Important;
border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
}

/* NEWSLETTER SIGNUP FORM FOOTER */

.newsletter_signup_container input[type="email"]{
margin: 0px !important;
}

.newsletter_signup_container input[type="submit"]{
background-position:center center;
background-size:26px auto;
background-repeat:no-repeat;
margin-left:5px;
border: none !important;
padding: 0 1em !important;
margin: 0px !important;
}

.newsletter_signup_container  .wpcf7-not-valid-tip{
display:none;
}

.wpcf7-form p br, .newsletter_signup_container .wpcf7-spinner {
display: none;
}

.newsletter_signup_container p{
display:flex;
}

.sign_up_text p{
font-weight:600 !important;
padding:0 !important;
margin:0 !important;
line-height:1 !important;
}

/* CONTACT FORM MESSAGE BOXES */

.wpcf7-response-output {
border: none !important;
color: #ffffff !important;
padding: 10px 15px !important;
margin: 10px 0 !important;
}

.wpcf7 form.sent .wpcf7-response-output {
background: #46b450; /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
background: #dc3232; /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
background: #f56e28; /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
background: #ffb900; /* Yellow */
}



/*----------------INSIGHTS PAGE----------------*/

.insights-entry-header{
max-width:1140px;
margin:0px auto;
padding:130px 40px 0;
}

@media only screen and (max-width: 768px) {
.insights-entry-header{
padding:20px;
}
}

.insights-entry-content-container .entry-content {
max-width: 1140px;
margin: 0 auto;
padding: 20px;
min-height: 40vh;
}

.whitedropbtn{
background-color:#ffffff !important;
color:#1c3a5f !important
}
	
.whitedropbtn:hover{
background:#ffffff !important;
background-color:#ffffff !important;
}

.whitedropbtn:after{
content: "\eb1d" !important;
}
	
.whitedropbtn:hover:after{
padding-top:15px !important;
padding-left:0 !important;
}
	
.inline-dropdown{
display:inline-block;
}
	
.insights_page_image_container{
clip-path: polygon(0 0, 80% 0, 100% 100%, 0% 100%);
}

.insights_page_image{
display:block;
width:100%;
height:100%;
background-size:cover;
background-position:center center;
}
	
.insight_post:hover .insights_page_image{	
filter: none;
transition:1s all;
}
	
@media only screen and (max-width: 768px) {
.insights_page_image{
width:100%;
height:250px;
}
}
	
.insightsdate{
color: #cccccc !important;
margin:10px 0 20px !important;
}
	
.smallerfont{
font-size:0.9em;
}
	
.insight_post{
display:flex;
margin:20px 0;
padding-bottom:50px;
border-bottom:1px solid rgba(0,0,0,0.05);
}

.insight_post div{
flex:1;
}
	
#insightsfilter .elementor-shortcode{
text-align:right;
}

@media only screen and (max-width: 768px) {
.insight_post{
flex-direction:column;
}
}
	
@media only screen and (min-width: 769px) {
.insight_post .insights_page_image{
flex:1;
}
}
	
.insight_post .insights_page_content{
flex:1;
padding:20px 40px 20px 20px;
}
	
@media only screen and (max-width: 768px) {
.insight_post .insights_page_content{
padding:20px 0;
}
}
	
.insight_post .insights_page_content .button{
margin:0;
}
	
.insights_page_content h3, .insights_page_content p{
margin:20px 0 10px;
}
	
.insights_page_content a{
margin:20px 0 0 0;
}
	
.insights_page_content h3 a, .insights_page_content h3 a:active,.insights_page_content h3 a:visited,.insights_page_content h3 a:hover{
color:#4dabe9 !important;
text-decoration:none;
}

.insights_page_content h3 a:hover{
color:#4dabe9 !important;
text-decoration:none;
}
	
.entry-content p a, .entry-content ul a, .entry-content li a {
color: #1e2839;
}





/* BLUE RIBBON */

.blue_ribboncontainer{
background: rgb(25,51,83) !important;
}

.blue_ribboncontainer p{
color:rgba(255,255,255,0.5) !important;
}

.blue_ribboncontainer .ribbonitem{
background: rgb(25,51,83) !important;
background: linear-gradient(90deg, rgba(25,51,83,1) 0%, rgba(28,58,99,1) 100%) !important;
	}

@media only screen and (max-width: 768px) {
.blue_ribboncontainer .ribbonitem{
background: linear-gradient(180deg, rgba(25,51,83,1) 0%, rgba(28,58,99,1) 100%) !important;
}
}

/*REVERSE ORDER ON MOBILE*/
@media only screen and (max-width: 768px) {
.reverse_order_on_mobile, .reverse_order_on_mobile .e-con-inner{
flex-direction: column-reverse !Important;
}
}

@media only screen and (max-width: 768px) {
#case_studies_block .entry-content, #case_studies_block .entry-content-inner{
padding:0px !important;
}
}

/*COUNTER NUMBER STYLE */
.elementor-counter-number{
color:#4dabe9;
font-weight:100;
font-size:90px;
}

.photo_overlay_box{
margin-bottom:150px !important;
display:block;
min-height:600px !important;
padding-top:35px;
background-size: cover;
background-position: center center;
}

.photo_overlay_box .e-child{
display: flex;
justify-content: flex-end;
}

.photo_overlay_box .e-child .e-child{
background-color:#ffffff;
margin-bottom:-100px;
padding:40px 50px;
}

.photo_overlay_box .e-child p{
padding:0;
margin:0;
}

.shape_overlay{
position:relative;
margin-bottom:100px !important;
display:block !important;
}

.shape_overlay img{
filter: gray;
-webkit-filter: grayscale(1);
filter: grayscale(1) brightness(1.5);
transition:1s all !important;
}

.shape_overlay:after{
position:absolute;
content: "";

background-size: cover;
height: 150px;
width: 150px;
display: inline-block;
vertical-align: middle;
left:50px;
bottom:-50px;
}

/* ALIGN NUMBER COUNTER LEFT NOT CENTER */
.elementor-counter .elementor-counter-number-wrapper {
display: block !important;
text-align: left !important;
}

/* STYLE NUMBER COUNTER SUFFIX AND PREFIX */
.elementor-counter-number-prefix,
.elementor-counter-number-suffix{
color:#cccccc;
font-weight:200 !important;
font-size:0.8em !important;
}

.icon_block h3{
color: #4dabe9 !important;
margin-top:0;
margin-bottom:20px;
padding:0;
}

.gradientoverlay .e-con-inner{
z-index:1 !important;
}

.gradientoverlay .e-con-inner:after{
opacity:0.75;
content:'';
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
background: rgb(72,126,184);
background: linear-gradient(90deg, rgba(72,126,184,1) 0%, rgba(207,72,136,1) 50%, rgba(217,113,76,1) 100%);
z-index:-1 !important;
}

/* TESTIMONIALS SLIDER */
.testimonials-carousel .slide-content{
display:flex;
}

@media only screen and (max-width: 768px) {
.testimonials-carousel .slide-content {
flex-direction: column;
}
}

.testimonials-carousel .testimonials-carousel-inner{
flex:2;
}

.testimonials-carousel .testimonials_image{
flex:1;
min-height:350px;
margin:20px;
background-size:cover;
background-position: center center;
filter: gray; /* IE6-9 */
-webkit-filter: grayscale(1); /* Google Chrome, Safari 6+ & Opera 15+ */
filter: grayscale(1) brightness(1.5);
}

.testimonials-carousel .testimonials-carousel-inner h3{
display:block;
position:relative;
margin-left:50px !important;
color:#000000 !important;
}

.testimonials-carousel .testimonials-carousel-inner p{
margin-left:50px !important;
}

.testimonials-carousel .testimonials-carousel-inner h3:before {
content: '"';
font-size: 65px !important;
font-weight:900;
position: absolute;
top: .4em;
left: -35px;
line-height: 0;
color: #4dabe9;
}

.testimonials-carousel .testimonials-carousel-inner h3 strong {
font-size: 65px !important;
font-weight:900;
line-height: 0px !important;
color: #4dabe9;
margin:0 0 0 3px;
padding:0;
vertical-align: text-bottom;
}

.testimonials-carousel .slick-prev, .testimonials-carousel .slick-next {	
top: auto !important;
bottom:25px !important;
left:25px !important;
}

.testimonials-carousel .slick-next {
left:60px !important;
}

@media only screen and (max-width: 768px) {
.testimonials-carousel .slick-next {
left:auto !important;
right:50px !important;
bottom:35px !important;
}
}

.contactblock{
padding:50px;
background: rgb(72,126,184);
background: linear-gradient(90deg, rgba(72,126,184,1) 0%, rgba(207,72,136,1) 50%, rgba(217,113,76,1) 100%);
}

/* STYLE ACCORDION */
#accordion h3{
background:none !important;
font-weight:200 !important;
font-size:26px !important;
color:#000000;
}

#accordion .ui-state-active, .ui-button.ui-state-active:hover {
color: rgba(0, 0, 0, 1) !important;
}

#accordion .ui-state-default {
color: #000000 !important;
}

#accordion .ui-accordion-content {
padding-top: 0 !important;
padding-bottom: 0 !important;
}


/* ------------------------------------ TIMELINE CSS */

.wrapper {
width: 100%;
color: #ccc;
box-sizing: border-box;
}

.block {
z-index: 1;
position: relative;
}

.block:before {
content: "";
position: absolute;
height: calc(100% - 30px);
width: 4px;
background: rgb(72,126,184);
background: linear-gradient(0deg, rgba(72,126,184,1) 0%, rgba(237,71,150,1) 50%, rgba(217,113,76,1) 100%);
left: 50%;
margin-top: 60px;
}

.timeline-title {
font-size:30px;
text-align: center;
padding: 10px;
transition: all 0.8s ease-in-out;
}

.each-event {
background-color: #f4f4f4;
color: #777;
padding: 15px;
margin: 20px 20px;
width: 300px;
position: relative;
border-radius: 4px;
box-sizing: border-box;
transition: all 0.3s ease-in-out;
}

.each-event:before {
content: "";
position: absolute;
top: calc(50% - 8px);
left: -29px;
width: 22px;
height: 22px;
border-radius: 50%;
background-color: #fff;
box-shadow: 0 4px 20px -4px rgba(64, 64, 64, 0.8);
border: 4px solid #ab4983;
}

.block:nth-child(odd) .each-event:nth-child(odd) {
margin-left: calc(50% + 20px);
}

.block:nth-child(odd) .each-event:nth-child(even) {
margin-left: calc(50% - 321px);
}

.block:nth-child(even) .each-event:nth-child(odd) {
margin-left: calc(50% - 321px);
}

.block:nth-child(even) .each-event:nth-child(even) {
margin-left: calc(50% + 20px);
}

.block:nth-child(odd) .each-event:nth-child(even):before, .block:nth-child(even) .each-event:nth-child(odd):before {
left: calc(100% + 12px);
}

@media only screen and (max-width: 768px) {
.each-event{
margin-left: 20px !important;
width: calc(100% - 20px);
margin-top: 0px !important;
}
	
.block:nth-child(odd) .each-event:nth-child(even):before, .block:nth-child(even) .each-event:nth-child(odd):before {
left: -29px;
}
	
.block:before {
left:0px;
height: 120%;
margin-top: 0;
}  
}

.timeline-title.non-focus {
font-size: 24px;
line-height: 34px;
transition: all 0.8s ease-in-out;
}

.each-event.non-focus {
color: #d2d2d2;
background: #e6e6e6;
margin-top: 90px;
transform: rotateZ(45deg);
transition: all 0.8s ease-in-out;
}
.each-event.non-focus:before {
opacity: 0;
background-color: #aaa;
}

/*------------------------------------------------------MAIN CONTACT FORM */

.contact_form_two_cols{
display:flex;
}

@media only screen and (max-width: 768px) {
.contact_form_two_cols{
flex-direction:column;
}	
}

.contact_form_two_cols div{
flex:1;
}

.contact_form_two_cols div:nth-of-type(1){
margin-right:14px;
}
.contact_form_two_cols div:nth-of-type(2){
margin-left:14px;
}

@media only screen and (max-width: 768px) {
.contact_form_two_cols div{
margin:0 !important;
}
}

@media only screen and (max-width: 768px) {
.contact_form_two_cols div:nth-of-type(1) span:last-of-type input{
margin-bottom:0 !important;
}
}

/*-----------------------GRADIENT ICON */

.gradient_icon .elementor-icon svg{
font-size:100px !important;
}

/*-----------------FIXED BKG---------------------*/

.fixed_bkg{
background-attachment:fixed;
}

/*------------ON OR OFF HIGHWAY BLOCK--------------*/
.on_or_off_highway{
background: rgb(72, 126, 184);
background: linear-gradient(90deg, rgba(72, 126, 184, 1) 0%, rgba(207, 72, 136, 1) 50%, rgba(217, 113, 76, 1) 100%);
display:flex;
background-position: center bottom 75px;
background-repeat: no-repeat;
}
@media only screen and (max-width: 768px) {
.on_or_off_highway{
flex-direction:column;
}
}
.on_or_off_highway .off_highway,
.on_or_off_highway .on_highway{
flex:1;
padding:35px 35px 350px 35px;
background-size:80% auto !important;
background-position: left bottom !important;
background-repeat:no-repeat !important;
}
.on_or_off_highway h3{
padding:0;
margin:0;
color:#ffffff;
}
.on_or_off_highway p, .on_or_off_highway p a{
color:#ffffff;
}
.on_or_off_highway .off_highway{
border-right:14px solid #ffffff;

}
.on_or_off_highway .on_highway{
border-left:14px solid #ffffff;

}

@media only screen and (max-width: 768px) {
.on_or_off_highway .off_highway,
.on_or_off_highway .on_highway{
	padding-bottom:250px;
border-left:20px #ffffff solid;
border-top:20px #ffffff solid;
border-right:20px #ffffff solid;
border-bottom:20px #ffffff solid;
}
}

/*----------------BLACK AND WHITE IMAGE----------------*/
.black_and_white, .blackandwhite{
filter: gray;
-webkit-filter: grayscale(1);
filter: grayscale(1) brightness(1.5);
transition:1s all !important;
}

/*----------------SOLUTIONS CATEGORY PAGE----------------*/

.solutions_category_header{
display:flex;
align-items: center;
justify-content: center;
}

.solutions_category_header h1{
margin-bottom:30px !important;
}

.solutions_category_header  .large_p{
}

/*------------------CONTACT PAGE MAP BLOCK------------------------*/

.map_overlay_block{
min-height:50vh !important;
justify-content: flex-end !important;
padding-top:100px !important;
}

.map_overlay_block .e-con-inner{
margin-bottom:0 !important;
padding-bottom:0 !important;
flex-grow: 0 !important;
}

@media only screen and (max-width: 768px) {
.map_overlay_block{
min-height:0 !important;
}
}

.map_overlay_block .map_overlay{

background-color:#ffffff;
padding:30px;
}

.map_overlay .elementor-widget-icon-list .elementor-icon-list-text{
color:#000000 !important;
font-weight:200 !important;
}

.map_overlay .elementor-element{
--e-icon-list-icon-size: 25px !important;
}

.map_overlay .elementor-icon-list-item{
margin-bottom:15px !important;
}

/*------------------EXTRA MARGIN FOR PAGE HEADER------------------------*/
.page_header_extra_margin_top{
margin-top:100px !important;
}



/*------------------KEY FEATURES------------------------*/
.key_features img{
width:auto;
height:65px;
}
		
.key_features div{
padding-left:40px;
padding-right:40px;
}


/*----------------SECTORS PAGE--------------------*/

.solution_title a, .solution_title a:active, .solution_title a:visited, .solution_title a:hover{
color:#4dabe9 !important;
text-decoration:none;
transition:0.5s all;
}

.solution_title a:hover{
color:#4dabe9 !important;
text-decoration:none;
transition:0.5s all;
}



/*-----------------FROM PRODUCT PAGE--------------------*/

.key_features img{
width:auto;
height:120px;
}
		
.key_features div{
padding-left:40px;
padding-right:40px;
}
	
.flex2{
flex:2 !important;
}

.dotcontainer{
flex-wrap: wrap;
align-content: start;
margin:25px;
align-items: center;
justify-content: center;
}
		
.dot{
flex-grow: 1 !important;
flex-shrink: 0 !important;
flex-basis: 36% !important;
max-width: 36% !important;
height:90px;
margin:15px 7% !important;
opacity:0.5;
}
	
.dotcontainer .active, .dotcontainer .dot:hover {
opacity:1;
-webkit-box-shadow:0px 0px 70px 0px rgba(0,0,0,0.1);
-moz-box-shadow: 0px 0px 70px 0px rgba(0,0,0,0.1);
box-shadow: 0px 0px 70px 0px rgba(0,0,0,0.1);
border: 2px solid rgba(0,0,0,0) !important;
}

.product-slideshow-container{
display:flex;
}
		
.mySlides{
text-align:center;
display: flex;
align-items: center;
justify-content: center;
}
		
.pseudo_image{
width:100%;
height:450px;
background-size:contain !important;
background-position:center center !important;
background-repeat:no-repeat !important;
}
		
#accordion div h3 {
color: #cccccc !important;
font-size:22px !important;
}

/*------SOLUTIONS AND SOLUTION CATEGORIES ON SECTORS PAGES----------*/

.solution_archive_container_inner{
display: grid;
grid-template-columns: repeat(3, 1fr);
}

@media only screen and (max-width: 768px) {
.solution_archive_container_inner{
display: flex;
flex-direction:column;
}
}

@media only screen and (max-width: 768px) {
.solution_archive_container_inner .padding_50{
padding:20px !important;
}
}
	
.solution_archive_container_inner div{
margin-bottom:20px;
}

.solution-thumbnail{
background-repeat:no-repeat;
height:250px;
width:100%;
background-size:contain;
background-position:center center;
}
	
.solution_title{
margin-bottom:0px;
}
	
.solution_title, .solution_archive_container_inner p{
--text-align:center;
}
	
.solution_title a{
text-decoration:none;
}

/*----SOLUTIONS CATEGORIES PAGE---------*/

.product_categories .elementor-widget-container{
display: grid;
grid-template-columns: repeat(3, 1fr);
}

@media only screen and (max-width: 768px) {
.product_categories .elementor-widget-container{
display: flex;
flex-direction:column;
}
}

/*--HIDE HOME LINK ON NAV ON DESKTOP---*/
@media only screen and (min-width: 1024px) {
#menu-item-12219{
display:none !important;
}
}

/*----GRADIENT ICON SIZE-------*/
.gradient_icon img{
max-width:120px !Important;
}

/*-----FROM SOLUTIONS CATEGORY PAGE-------*/

.archive_container_inner_full{
flex-direction: column;		
}
	
.archive_container_inner_full .item {
flex: 1 100%;
max-width: 100%;
}
	
.flex1{
flex:1 !important;
}
	
.flex2{
flex:2 !important;
}


.slanted{
/*-ms-transform: skewX(20deg);
-webkit-transform: skewX(20deg);
transform: skewX(20deg);*/
position:relative;
padding:35px 50px 35px 35px !important;
border-radius:0 30px 0  0;
overflow:visible;
clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 100%, 0 100%);
}

.slanted-inner{
}

.slanted::after {
content: " ";
display: block;
position: absolute;
top:0px;
right:0px;
background-color: blue;
width: 100px;
height: 100px;
clip-path: ellipse(50px 50px at 50% 50%);
}

/* INLINE SUB MENU - REMOVED

.sub-menu{
display:flex !important;
}

.sub-menu li{
flex:1;
} */

/* BLUE DIVIDER */

.short_blue_divider .elementor-divider-separator,
.short_blue_divider_center .elementor-divider-separator{
width: 75px !important;
border: 4px solid #4dabe9;
border-block-start: none !important;
}

.short_blue_divider .elementor-divider,
.short_blue_divider_center .elementor-divider{
padding-block-start: 0px !important;
padding-block-end: 0px !important;
}

.short_blue_divider_center .elementor-divider-separator {
margin:0 auto !important;
}

/* MEET THE TEAM PAGE */

.team_member{
background-color:#ffffff;
padding:20px !important;
margin:10px !important;
box-shadow: rgba(0, 0, 0, 0.1) 0px 5px 25px;
}

.team_member .elementor-widget-image{
padding:0;
margin:0;
}

.team_member img{
width:100%;
height:auto;
}

/* LOGOS */

.logo_block img{
opacity:0.3;
transition:0.5s all;
height:50px !important;
width:auto !important;
}

.logo_block .opd img{
height:100px !important;
}

.logo_block img:hover{
opacity:1;
transition:0.5s all;
}

/* FIX MODAL WINDOW NOT CENTRING */

.modal-window__content{
position: fixed !important;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

/* MODAL WINDOW STYLES */

#modal-window-4 .modal-window__content,
#modal-window-5 .modal-window__content,
#modal-window-6 .modal-window__content,
#modal-window-7 .modal-window__content,
#modal-window-8 .modal-window__content,
#modal-window-9 .modal-window__content{
background: #4D73B4;
background: linear-gradient(90deg, rgba(77, 115, 180, 1) 0%, rgba(77, 170, 233, 1) 100%);
padding-left: 20px;
padding-right: 20px;
max-width: 90%;
color:#ffffff !important;
}

#modal-window-4 .modal-window__content:before,
#modal-window-5 .modal-window__content:before,
#modal-window-6 .modal-window__content:before,
#modal-window-7 .modal-window__content:before,
#modal-window-8 .modal-window__content:before,
#modal-window-9 .modal-window__content:before{
opacity:0.05;
content:"";
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
background-image: url(https://69f9b02b6a400d292c81c5647d7181f4-14958.sites.k-hosting.co.uk/kts_dev/wp-content/uploads/2025/04/grid_overlay.png) !important;	
}

.modal-window__content h3,
.modal-window__content .dark_blue_text{
padding:0 !important;
margin:0 !important;
}

/* ANGLED IMAGE */

.clipping_path{
clip-path: polygon(0 0, 76% 0, 100% 100%, 0% 100%);
min-height:300px !important;
}

@media only screen and (min-width: 600px) {
.negative_margins{
margin-top:-100px !important;
margin-bottom:-100px !important;
}
}

/* HERO SLIDER */

.hero-carousel .slide-content{
position:relative;
}

.hero-carousel .slide-bkg-image{
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
background-position:center center;
background-size:cover;
}
	
.hero-carousel .slide-bkg-overlay{
background: #1E2839;
background: linear-gradient(90deg,rgba(30, 40, 57, 0.8) 20%, rgba(30, 40, 57, 0.1) 80%);
position:absolute;
top:0;
right:0;
bottom:0;
left:0;
border-top:0;
border-right:0;
border-bottom:25px solid #ffffff;
border-left:0;
border-style: inset;
}
	
.hero-carousel .case-study-content{
margin-top:25px;
background:none;
padding:35px 100px 35px 35px;
position:relative;
overflow:hidden;
}

@media only screen and (max-width: 768px) {
.hero-carousel .case-study-content{
padding:20px 100px 20px 20px;
}
}
	
.hero-carousel .case-study-content p{
color:#ffffff !important;
}
	
.hero-carousel .case-study-content .button{
margin-top:25px;
}
	
.slanted-bkg{
background: #4D73B4;
background: linear-gradient(90deg, rgba(77, 115, 180, 1) 0%, rgba(77, 170, 233, 1) 100%);
transform: skew(20deg);
position:absolute;
right:50px;
top:0;
height:100%;
width:120%;
border-radius: 0 35px 0 0;
z-index:-1;
}
	
.slanted-bkg::before {
content: "";
transform: skewX(-20deg); 
-ms-transform: skewX(-20deg);
-webkit-transform: skewX(-20deg);
background-image: url('/kts_dev/wp-content/uploads/2025/04/grid_overlay.png'); 
position: absolute;
width: 1000%;
height: 1000%;
opacity:0.05;
border-radius:0 30px 0 0;
}

/* GREY OUT DISABLED BUTTON */
.btn:disabled{
background-color:#cccccc !important;
}

.btn:disabled:after{
display:none !important;
}

/* LINKEDIN FIX */

.lni-linkedin::before {
content: "\ebe7" !important;
}