/*
Theme Name:  Vehicle SMART | Bespoke WP Theme
description:  A bespoke theme from Inner City Digital.
Author:       Inner City Digital
Template:     icd-theme
Version:      1.0.0
*/

:root {
  --primaryfont: 'Poppins', sans-serif;
}

.color-accent {
	color:var(--accent) !important;
}

body {
	font-family: var(--primaryfont);
}

.hiddenDesktop {
	display:none !important;
}

.mobileCarDiagram {
	display:none !important;
}

body:not(.page-id-48) .gform_wrapper .gform_body input, body:not(.page-id-48) .gform_wrapper .gform_body textarea {
    font-size: 1.1em !important;
    font-weight: 300;
	padding:15px !important;
}

.table td, .table th {
	border-top: 1px solid #f2f2f2;
	padding: 0.7rem;
}

.gform_wrapper.gravity-theme .gf_progressbar_percentage.percentbar_blue {
    background-color: var(--accent) !important;
}

a.arrow-link {
    position: relative;
    font-weight: 500;
    text-decoration: none;
    font-size: 1.1em;
    color: #1b1b1b;
}

a.arrow-link:after {
    font-family: 'Font Awesome 6 Pro';
    content: '\f178';
    position: absolute;
    right: 0px;
    top: 0px;
	opacity:0;
}

a.arrow-link:hover {
	color:var(--accent);
}

a.arrow-link:hover:after {
    right: -24px;	
	color:var(--accent);
	opacity: 1;
}

#serviceTab {
	display:none;
}

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

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

body .gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: 10px;
	grid-column-gap: 10px;
}

#navWrap {
    width: 100%;
    margin-top: 15px;
}

#navWrap .menu li {
	display:inline-block;
}

#navWrap .menu li a {
    color: #FFF;
    text-decoration: none !important;
    padding: 0px 8px;
    font-size: 1em;
    font-weight: 500;
    position: relative;
    letter-spacing: 1px;
    font-style: normal;
    text-transform: uppercase;
}

#navWrap .menu-main-navigation-container > .menu li a:before {
    content: '';
    width: 0%;
    background-color: var(--accent);
    height: 2px;
    position: absolute;
    bottom: -8px;
    left: 0px;
    right: 0px;
    margin: auto;
}

#navWrap .menu li a:hover {
	color:var(--accent);
}

#navWrap .menu li a:hover:before {
	width:40%;
}

#navWrap .menu li.menu-item-has-children > a {
	padding-right:22px;
}

#navWrap .menu li.menu-item-has-children > a:after {
    font-family: 'Font Awesome 5 Pro';
    content: '\f107';
    position: absolute;
    right: 3px;
    top: 2px;
    font-style: normal;
    font-weight: 600;
    font-size: 15px;
}

#navWrap li.menu-item-type-custom a {
	cursor:pointer;
}

#menu-item-43 {
	margin-left:25px;
}

body .gfield_validation_message {
	display:none !important;
}

body .gform_wrapper.gravity-theme .gfield_label {
    color: #000;
    font-size: .95em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: 2px;
}

body .gf_progressbar_wrapper {
	margin-bottom:20px;
}

body .gfield_error input {
    border: 1px solid #b33737 !important;
    background-color: #fff1f1;
}

body .gform_wrapper.gravity-theme .gf_progressbar, body .gform_wrapper.gravity-theme .gf_progressbar {
	border-radius:2px;
}

body .gform_wrapper.gravity-theme .gf_progressbar_percentage:not(.percentbar_100) {
	border-radius:0px;
}

.percent:after {
	content: '%';
}

.plus:after {
	content: '+';
}

body, input, textarea, .gform_submission_error {
    font-weight:400;
    font-style:normal;
}

.post-meta {
	display:flex;
	gap:30px;
	justify-content:center;
}

.post-meta li {
    position: relative;
    font-size: 0.85em;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--accent);
    font-weight: 500;
}

.post-meta li a {
	color:#FFF;
	text-decoration:none;
}

.post-meta li a:hover {
	opacity:0.75;
}

.post-meta li:after {
    font-family: 'Font Awesome 6 Pro';
    content: '\f111';
    right: -18px;
    position: absolute;
    font-weight: 600;
    font-size: 5px;
    top: 7px;
}

.post-meta li:last-of-type:after {
	display:none;
}

ul.social {
    display: flex;
    gap: 7px;
}

body .narrow-container {
	max-width:1160px;
}

ul.social li a {
	background-color:var(--accent);
	display:block;
	width:40px;
	height:40px;
	line-height:41px;
	border-radius:50%;
	text-align:center;
	color:#FFF;
}


ul.social li a:hover {
	background-color:var(--secondary);
}


.slick-list, .slick-track, .slick-slide {
	height:100%;
}

.logo-colour {
    position: absolute;
    left: 15px;
    opacity: 0;
}

body .wp-block-quote {
    border-left: 3px solid var(--accent);
    margin-left: 0px;
    padding-left: 30px;
    background-color: #FFF;
    box-shadow: 1px 1px 15px rgb(41 41 41 / 15%);
    padding: 30px;
    margin: 30px 0px;;
}

body .wp-block-quote p {
    font-size: 1.2em !important;
    font-weight: 500;
    line-height: 31px;
    color: #292929;
    margin: 0;
}

body .wp-block-quote cite {
    font-style: initial;
    letter-spacing: 0.5px;
    font-weight: 300;
    color: #575757;
    font-size: .95em;
}

.bg-grad {
	background: rgb(103,184,187);
	background: linear-gradient(45deg, rgba(103,184,187,1) 0%, rgba(103,184,187,1) 33%, rgba(139,183,73,1) 63%, rgba(139,183,73,1) 100%);
}

body .wpcf7-not-valid-tip {
	display:none !important;
}

body .wpcf7-not-valid {
    border-color: #ff000069 !important;
    background-color: #ffc0cb17;
}

.bg-dark {
	background-color: #0a0a0a!important;
}

.justify-right {
	justify-content: right;
}

body p {
	font-weight:300;
}

ul.tick-list li {
	position:relative;
	padding-left:25px;
	margin-bottom:10px;
}

ul.tick-list li:before {
    font-family: 'Font Awesome 6 Pro';
    content: '\f00c';
    position: absolute;
    left: 0;
    top: 0;
    font-weight: 600;
    color: var(--accent);
}

.post, .page {
    margin: 0;
}

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

.inline-menu .menu {
	display: flex;
    gap: 20px;
}

#homeHeroWrapper {
	position:relative;
}

#homeHero .overlay {
	opacity:0.7;
}

#heroNav {
    display: flex;
    gap: 20px;
    position: absolute;
    bottom: 30px;
    right: 30px;
    color: #FFF;
    z-index: 20;
}

#heroNav li {
    font-size: 1.8em;
    font-weight: 600;
	cursor: pointer;
}

#heroNav li:hover {
	color:var(--accent);
	transform: scale(0.97);
}

#homeHero {
    height: 65vh;
    background-color: #fafafa;
    position: relative;
    color: #FFF;
    overflow: hidden;
	min-height: 800px;
    background-size: cover;
    background-position: center;
	position:relative;
}

#homeHero:before {
	content: '';
	position:absolute;
	top:0px;
	bottom:0px;
	left:0px;
	right:0px;
	background-color:rgb(0 0 0 / 70%);
}

#homeHero .slick-dots {
    padding: 0;
    bottom: 30px;
    margin: 0;
    text-align: right;
    padding-right: 30px;
}

#homeHero .slick-dots li button {
    width: 40px;
    height: 40px;
}

#homeHero .container h1 {
	word-break: break-word;
    color: #FFF;
    font-size: 4.3em;
    line-height: 75px;
    letter-spacing: -1px;
    margin-top: 0px;
    margin-bottom: 10px;
    font-style: normal;
    text-transform: uppercase;
    font-weight: 900;
}

.heroContent {
    padding-right: 30% !important;
    margin-top: 20px;
}

body #homeHero .slick-arrow:before {
	color:#FFF;
}

#homeHero .container h1 b {
	color:var(--accent);
}

#homeHero .container p {
    color: #FFF;
    font-size: 1.25em;
    font-weight: 100;
    line-height: 33px;
    margin: 13px 0px;
    margin-bottom: 25px;
}

body .slick-dots li button:before {
	background-color: transparent;
    opacity: 1;
    border: 2px solid #FFF;
    width: 18px;
    height: 18px;
}

body .slick-dots .slick-active button:before, 
body .slick-dots li button:hover:before {
	background-color:#FFF !important;
}

body .slick-dots li {
    margin: 0px 3px;
}

body .slick-dots li button:before {
    border-radius: 50%;
    background-color: rgb(255 255 255 / 68%);
    height: 18px;
    width: 18px;
    content: ' ';
    border: 2px solid black;
}

body .slick-dots {
	bottom:-90px;
	z-index:30;
}

body .slick-dots .slick-active button:before {
    background-color: var(--accent) !important;
	border-color:var(--accent) !important;
    opacity: 1 !important;
}

body .slick-dots li:hover button:before {
	background-color:#FFF !important;
}

#homeHero .sub-title {
    font-size: 1.1em;
    color: #FFF;
}

#homeHero .sub-title:before {
	background-color:#FFF;
}

body .gform_footer .gform_button {
    background-color: transparent;
    border: 0;
    color: black;
    padding: 0px;
    cursor: pointer;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 1.4em;
    border-bottom: 3px solid var(--accent);
    border-radius: 0px !important;
    padding-bottom: 8px;
}

body .gform_footer .gform_button:hover {
	color:var(--accent);
}

.ofh {
	overflow:hidden;
}

.bg-accent {
	background-color:var(--accent);
}

.bg-secondary {
	background-color:var(--secondary);
}

.bg-multiply {
    background-blend-mode: multiply;
	background-repeat: no-repeat;
}

h1, h2, h3, h4 , h5 {
	font-family: var(--primaryfont);
	font-weight:700;
	color:var(--secondary);
	color:#000;
	font-style: italic;
	text-transform:uppercase;
}

.lsn, #navWrap .menu, #colophon ul.menu {
	list-style:none !important;
	margin:0 !important;
	padding:0 !important;
}

body .slick-prev {
	left:-60px;
}

body .slick-next {
	right:-60px;
}

body .slick-arrow {
    z-index: 10;
    height: 40px;
    width: 40px;
    background: transparent;
    border-radius: 0px;
    margin-top: -60px;
}

body .slick-arrow:hover {
    opacity:.65;
}

body .slick-arrow:before {
	font-family: 'Font Awesome 6 Pro';
	content:'\f104';
	opacity:1 !important;
	color:#000;
	font-weight:300;
	font-size:42px;
}


body .slick-next:before {
	content: '\f105';
}

body .site .text-white {
	color:#FFF !important;
}

body .site .text-black {
	color:#000 !important;
}

body .site .text-accent {
	color:var(--accent) !important;
}

body .btn {
    background-color: var(--accent);
    color: #FFF;
    padding: 17px 33px;
    border-radius: 2px;
    text-decoration: none;
    font-size: 1.05em;
    font-weight: 600;
    display: inline-block;
    letter-spacing: .5px;
    cursor: pointer;
    text-transform: uppercase;
    font-style: italic;
}

body .btn-white {
	background-color:#FFF;
	color:#000 !important;
}

.btn:hover, #masthead .navWrap .quote-btn a:hover {
	background-color:var(--secondary);
	color:#FFF;
}

#masthead .navWrap .quote-btn a:after {
    font-family: 'Font Awesome 6 Pro';
    content: '\f178';
    color: #FFF;
    float: right;
    margin-left: 5px;
    margin-top: 0px;
    font-weight: 500;
}

#masthead .navWrap .quote-btn:hover a:after {
	margin-left:12px;
}

.btn-big {
    font-size: 1.25em;
}

body .btn-white {
	border-color:#FFF;
	color:#FFF;
}

.btn-white:hover {
	background-color:#FFF;
	color:var(--accent) !important;
}

body .btn-border {
	border:2px solid black;
	color:#000;
	background-color:transparent;
}

body .btn-border:hover {
	background-color:#222;
	border-color:#222;
}

body .mb-2 {
	margin-bottom:2rem !important;
}

body .mb-3 {
	margin-bottom:3rem !important;
}

body .mb-4 {
	margin-bottom:4rem !important;
}

body .mb-5 {
    margin-bottom:5rem !important;
}

body .mt-1 {
	margin-top:1rem !important;
}


body .mt-3 {
	margin-top:3rem;
}

body .mt-2 {
	margin-top:2rem;
}

body .mt-4 {
	margin-top:4rem;
}

body .mt-5 {
	margin-top:5rem;
}

.bg-grey {
    background-color:#f3f7f7;
}

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

.text-right {
    text-align:right;
}

.flex-right {
    justify-content:flex-end;
}

.justify-center {
    justify-content:center;
}

.bg-cover {
    background-size:cover !important;
    background-position:center !important;
}

.hidden {
    display:none !important;
}

.z-container {
    z-index: 30;
    position: relative;
}

img {
    max-width:100%;
}

body {
    margin:0;
}

.flex-center {
  display: flex;
  align-items: center;
}

#homeHero .slick-slide {
  display: flex !important;
  align-items: center;	
}

.ease, .overlay, a, #masthead, #navWrap, #navWrap a:before, #logoWrap img, #serviceSidebar a:after, #carouselNav > div, #masthead .quote-btn a:after, #heroNav li, .featImg, .news-post h5, .news-post h5 .sub-title, #sidebarQuote b:after, .news-post .postInner span, .sub-title {
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

.ease-slower {
    -webkit-transition: 0.45s ease-in-out;
    -moz-transition: all 0.45s ease-in-out;
    -ms-transition: all 0.45s ease-in-out;
    -o-transition: all 0.45s ease-in-out;
    transition: all 0.45s ease-in-out;
}

body .title {
    font-weight: 800;
    color: #000;
    font-size: 4.2em;
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
    line-height: 68px;
    text-transform: uppercase;
    font-style: italic;
}

body .title strong, body .title b {
	font-weight:700;
	color:#000;
}

body .title b {
	color:var(--accent);
}

body .heading {
    position: relative;
    margin-bottom: 35px;
    font-weight: 600;
    font-size: 1.9em;
    line-height: 37px;
}

body .heading:before {
	content: '';
	position: absolute;
	bottom:-19px;
	height:3px;
	width:60px;
	background-color:var(--accent);
}

body .text-center .title:before {
	left:0;
	right:0;
	margin:auto;
}

body .title-small {
    font-weight: 800;
    color: var(--dark);
    font-size: 2.3em;
    margin-top: 0;
    margin-bottom: 0;
    letter-spacing: -1px;
    position: relative;
    line-height: 53px;
}

body .sub-title {
    font-size: 1.2em;
    font-weight: 500;
    color: var(--accent);
    display: block;
    font-style: italic;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

body .sub-title:before {
    content: '';
    height: 2px;
    width: 200px;
    float: left;
    margin-top: 11px;
    margin-right: 20px;
    background-color: var(--accent);
}

.overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000;
    z-index: 8;
    opacity: .62;
}

.darker {
	opacity:.71;
}

body .grad {
    opacity: 1 !important;
    mix-blend-mode: multiply;
    background: rgb(138,182,75);
    background: linear-gradient(38deg, rgba(138,182,75,1) 0%, rgba(103,184,187,1) 100%);
}

body .layer-wide {
    padding-left: 9vw;
    padding-right: 9vw;
}

.grey {
	background-color: #F9F9F9;
}

.border-layer {
    border-top: 1px solid #ebebeb;
    border-bottom: 1px solid #ebebeb;
}

.layer {
	position:relative;
    padding-top:105px;
/* 	overflow:hidden; */
	overflow-x: clip;
    padding-bottom:105px;
}

.layer p, .layer li {
    color: #252525;
	font-weight:300;
    font-size: 1.05em;
    line-height: 33px;
}

.layer p a {
	color:var(--accent);
	text-decoration:underline;
}

.layer p a:hover {
	color:#000;
}

body p.intro {
    font-weight: 500;
    color: black;
    font-size: 1.05em;
    line-height: 31px;
}

#logoWrap {
	position:relative;
}

#logoWrap img {
    width: 100%;
    max-width: 225px;
}

#logoWrap .logo-normal {
	opacity:1;
}

#logoWrap .logo-sticky {
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0px;
}

.sticky #logoWrap .logo-normal {
	opacity:0;
}

.sticky #logoWrap .logo-sticky {
	opacity:1;
}

#masthead {
    background-color: transparent;
    padding: 30px 0px;
	z-index: 999;
	position:absolute;
	top: 0;
    left: 0;
    right: 0;
}

#masthead .social a {
	color:#FFF;
}

.sticky #masthead {
    position: fixed;
    background-color: rgb(255 255 255 / 100%);
    padding: 20px 0px;
    box-shadow: 1px 1px 35px rgb(0 0 0 / 12%);
}

.sticky #headerSubmenu #menu-header-submenu li a, .sticky #masthead .cDetails a {
    font-size: .93em;
    line-height: 36px;
}

.sticky #masthead .social a {
	font-size:14px;
}

.sticky #masthead .cDetails li:before {
	color:#FFF;
    font-weight: 300;
    margin-top: 8px;
    margin-right: 7px;
}

.sticky #masthead .cDetails li {
    border-left: 1px solid rgb(255 255 255 / 13%);
}

.sticky #navWrap .menu li a {
    color: #222;
    font-size: 1.05em !important;
}

 #pageBanner {
    color: #FFF;
    height: 450px;
    position: relative;
    background-position: center;
    background-size: cover;
    overflow: hidden;
	xbackground-attachment:fixed;
	background-color: whitesmoke;
}

#pageBanner .overlay {
    opacity: .9;
    background: rgb(0,0,0);
    background: linear-gradient(180deg, rgba(0 0 0 / 90%) 0%, rgb(0 0 0 / 85%) 70%, rgb(0 0 0 / 80%) 100%, rgb(0 0 0 / 90%) 100%);
}

#pageBanner h1 {
    font-weight: 600;
    font-size: 3.4em;
    letter-spacing: -1px;
    margin: 0px;
    line-height: 68px;
    color: #FFF;
    margin-top: 75px;
    font-style: normal;
}

.single #pageBanner .post-meta {
	margin-top:75px !important;
}

#pageBanner h1 b {
	font-weight:700;
}

.text-white {
	color:#FFF;
}

.featImg {
    height: 430px;
    background-color: #f6f6f6;
	background-size:cover;
	position: relative;
	border-radius:2px;
}

#primary ul {
    padding: 0;
    margin: 10px 0px 10px 20px;
}

#primary ul li {
	margin-bottom:.7rem;
}

ul.social li a {
	color:var(--grey);
	font-size:1.25em;
}


#navWrap .sub-menu {
    opacity: 0;
    -webkit-transition: opacity 0.7s ease-in-out;
    -moz-transition: opacity 0.7s ease-in-out;
    -ms-transition: opacity 0.7s ease-in-out;
    -o-transition: opacity 0.7s ease-in-out;
    transition: opacity 0.7s ease-in-out;
    box-shadow: none !important;
    position: absolute;
    visibility:hidden;
    min-width: 200px;
    margin: 0;
	z-index: 20;
    padding: 0;
}

#navWrap .sub-menu-inner {
    padding: 5px 10px;
    border-top: 0;
    background-color: #FFF;
    margin-top: 80px;
	position:relative;
	box-shadow: 1px 1px 20px rgb(0 0 0 / 12%);
}

.sub-menu-inner:before {
    position: absolute;
    top: -8px;
    left: 31px;
    content: ' ';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 9px 9px 9px;
    border-color: transparent transparent #ffffff transparent;
}

body #navWrap .sub-menu li {
	display:block;
}

#navWrap .menu-item-has-children:hover .sub-menu {
	opacity:1;
	visibility:visible;
}

#navWrap .menu-item-has-children:hover .sub-menu .sub-menu-inner {
	margin-top:30px;
}

body #navWrap .sub-menu li a {
    padding: 10px;
    color: #242424;
    text-align: left;
    background-color: #FFF;
    font-size: .85em !important;
    border-bottom: 1px solid #efefef;
    display: block;
    letter-spacing: 1px;
    font-style: normal;
    text-transform: uppercase;
    font-weight: 400 !important;
}

body #navWrap .sub-menu li a:before {
	display:none !important;
}

body #navWrap .sub-menu li a:hover {
	color:var(--accent);
}


#navWrap .sub-menu li:last-of-type a {
	border:0px !important;
}


#navWrap .sub-menu li:first-of-type {
	position:relative;
}

.wpcf7 input:not(.wpcf7-submit), .wpcf7 textarea {
    border: 1px solid #dedede;
    margin: 6px 0px;
    border-radius: 3px;
    padding: 10px;
    width: 100%;
    font-size: .9em;
}

.wpcf7 form > p:first-of-type {
	margin-top:0px !important;
}

.form-row-2 {
    display: flex;
    gap: 5px;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    background-color: transparent;
    border: 0;
    color: red;
    text-align: left;
    padding: 0;
    font-size: .95em;
    font-weight: 700;
}

body .wpcf7-submit {
    background-color: var(--accent);
    border: 0px;
    padding: 10px 20px;
    border-radius: 2px;
    line-height: 30px;
    font-size: 1em;
    color: #FFF;
    font-weight: 500;
}

body .wpcf7-submit:hover {
    background-color: var(--secondary);
	cursor:pointer;
}

body .wp-paginate.wpp-modern-grey .current {
    opacity: 1;
    background-color: var(--accent);
    color: #FFF;
    border: 0px !important;
    font-weight: 500;
}

body .wp-paginate a {
    border: 0px !important;
    color: #b0b0b0 !important;
}

body .wp-paginate a:hover {
	background-color:var(--dark) !important;
	color:#FFF !important;
}

body .wp-paginate .page, body .wp-paginate.wpp-modern-grey .current {
    min-width: 30px;
    display: inline-block;
    line-height: 26px;
    text-align: center;
    font-size: 16px;
}

#colophon {
    padding-top: 70px;
	padding-bottom:30px;
	background-color:#222;
	position:relative;
}

#colophon .overlay {
    background-color: #131313;
    opacity: .62;
}

#colophon .widget li, #colophon .widget li a, #colophon .widget p {
    font-size: 15px;
    color: #FFF;
    line-height: 24px;
    font-weight: 300;
    text-decoration: none;
}

#colophon .cDetails li {
	margin-bottom:20px;
	position:relative;
	padding-left:35px;
}

#colophon ul.cDetails li:before {
    font-family: 'Font Awesome 6 Pro';
    content: '\f095';
    position: absolute;
    left: 0;
    top: 0.5px;
    font-size: 18px;
    font-weight: 300;
}

#colophon ul.cDetails li:nth-of-type(2):before {
	content: '\f0e0';
}

#colophon ul.cDetails li:nth-of-type(3):before {
	content: '\f3c5';	
}

span.widget-title {
    display: block;
    font-weight: 600;
    font-size: 1.2em;
    margin-top: 12px;
    margin-bottom: 12px;
    letter-spacing: .5px;
}

#colophon .menu li {
    display: block;
    margin-bottom: 9px;
	position: relative;
}

#colophon .menu li:before {
    font-family: 'Font Awesome 6 Pro';
    content: '\f105';
    margin-right: 7px;
    float: left;
    font-size: 10px;
}

#colophon .social {
	margin-top:30px !important;
}

#colophon .widget li a:hover {
	color:var(--accent);
}

#colophon .social li a {
    background-color: rgb(0 0 0 / 25%);
    font-size: 1.2em;
    line-height: 40px;
	color:#FFf !important;
}

#colophon .social li a:hover {
	background-color:var(--accent);
}

#colophon #footerWidgets .widget:last-of-type .cDetails li:first-of-type a {
    letter-spacing: 0.5px;
}

#colophon #copy {
	display:flex;
	gap:10px;
}

#colophon #copy p {
	display:inline-block;
	margin:0;
	line-height: 27px;
}

#colophon #copy p, #colophon #copy .menu a, #credits p, #credits a {
	color: #FFF;
    font-size: 12px;
    font-weight: 300;
}

#colophon .inline-menu li {
	margin:0px;
}

#colophon .inline-menu li a {
    text-decoration: none !important;
    border-left: 1px solid #cccccc;
    padding-left: 8px;
}

#colophon .inline-menu li a:hover {
	color:#000;
}

#colophon img {
    max-width: 195px;
    margin-top: 10px;
	margin-bottom: 15px;
}

#colophon p {
	color:#FFF;
}

#footerWidgets {
	display:flex;
	justify-content: space-between;
	gap:10px;
	margin-bottom: 15px;
}

#colophon .widget {
    max-width: 320px;
    min-width: 220px;
}

#colophon .widget-title {
    color: var(--accent);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.75px;
    font-size: 1.05em;
}

#credits p {
    margin: 0;
    display: inline-block;
}

#credits p, #copy p {
    color: #9e9e9e !important;
    letter-spacing: .5px;
}

#credits .sep {
    display: inline-block;
    margin: 0px 0px;
    font-weight: 300;
    opacity: .3;
}

#credits p a {
    color: #FFF;
    position: relative;
    text-decoration: none;
    font-weight: 400;
}

#credits p a:after {
    content: '';
    width: 0;
    height: 0;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    border-right: 3px solid #66cfeb;
    position: absolute;
    right: -5px;
    bottom: 1px;
    transform: rotate(-45deg);
}

#credits p b {
    color: #66cfeb;
    font-weight: 800; 
}

#copy, #credits {
	margin:2px 0px;
}

/** GENERIC END **/


#masthead #headerBottom .container {
    background-color: #FFF;
    padding: 20px;
    border-radius: 8px;
    margin-top: 15px;
}

#masthead ul.social {
	gap:0px;
}

#masthead ul.social li a {
    background-color: transparent !important;
    display: block;
    width: 28px;
    height: 28px;
    line-height: 32px;
    border-radius: 0px;
    font-size: 17px;
}

#masthead #menu-header-submenu {
	list-style:none;
	margin:0;
	padding:0;
}

#headerSubmenu {
    display: flex;
    gap:25px;
    align-items: center;
}

#headerSubmenu #menu-header-submenu li a, #masthead .cDetails a {
    color: #FFF;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
}

#mobileMenuToggle {
	text-align:right;
}

/** CUSTOM CSS **/

#masthead .navWrap .quote-btn a {
    background-color: var(--accent);
    padding: 10px 20px !important;
	border-radius:2px;
    display: inline-block;
    margin-left: 20px;
	color:#FFF !important;
}

#masthead .navWrap .quote-btn a:before {
	display:none !important;
}

#statsLayer span {
    font-size: 7em;
    font-weight: 800;
    font-style: italic;
    letter-spacing: -8px;
    line-height: 72px;
}

#statsLayer p {
    font-size: 1.4em;
    font-weight: 500;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin: 0;
    margin-top: 7px;
}

#statsLayer span:after {
	color:var(--accent);
}

.layer-watermark {
    position: absolute;
    right: -20%;
    top: 60px;
    font-size: 11em;
    font-weight: 900;
    letter-spacing: -2px;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: black;
    color: transparent;
    font-style: italic;
    text-transform: uppercase;
    opacity: .12;
}

.watermark-white {
-webkit-text-stroke-color: #FFF !important;	
}

.layer .titleSection {
    padding-right: 380px;
    margin-bottom: 45px;
    position: relative;
}

.layer .titleSection #carouselNav {
    position: absolute;
    display: flex;
    bottom: 0;
    right: 15px;
    gap: 30px;
}

.layer .titleSection #carouselNav > div {
	font-size:2.6em;
	cursor:pointer;
}

.layer .titleSection #carouselNav > div:hover {
	color:var(--accent);
}

#serviceCarousel {
	margin-left:-15px;
}

#serviceCarousel .service {
	min-height:600px;
	margin:15px;
	position:relative;
}

#serviceCarousel .service:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #000;
    background: linear-gradient(180deg,rgb(0 0 0/0%) 0%,rgba(0,0,0,70%) 55%,#000 100%);
}

#serviceCarousel .service .serviceInner {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0px;
    padding: 30px;
    color: #FFF;
}

#serviceCarousel .service .serviceInner h5 {
    color: #FFF;
    font-size: 1.9em;
    letter-spacing: -.5px;
}

#serviceCarousel .service .serviceInner p {
    color: #FFF;
    font-size: 1em;
    line-height: 26px;
    font-weight: 400;
}

#serviceCarousel .service .serviceInner .sub-title {
	color:#FFF;
}

#serviceCarousel .service .serviceInner .sub-title:hover {
	color:var(--accent);
}

#serviceCarousel .service .serviceInner .sub-title:before {
	width:60px;
	margin-top:14px;
}

.bg-carbon {
    background-image: url(https://icdprojects.co.uk/vehiclesmart/wp-content/uploads/2023/04/carbon-bg-4.jpg);
    background-size: 220px;
}

.home #uspLayer .container-fluid * {
	color:#FFF;
}

.home #uspLayer .overlay {
	opacity:0.5;
}


.home #uspLayer {
	box-shadow: inset 0px 0px 330px rgb(0 0 0.95);
}


#uspLayer .icon-list {
	margin-top:40px !important;
}

#uspLayer .icon-list span {
    display: block;
    font-size: 1.2em;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
}

#uspLayer .icon-list li {
	position:relative;
	padding-left:80px;
	margin-bottom:30px;
}

#uspLayer .icon-list li i {
    position: absolute;
    left: 0;
    font-size: 3em;
    top: 1px;
}

#uspLayer .icon-list li p {
    font-size: .95em;
    line-height: 26px;
}

.home #uspLayer .icon-list li p {
    color: #cdcdcd !important;
}

.cat-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    background-color: rgb(255 128 3 / 85%);
    color: #FFF;
    padding: 11px 15px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: 600;
    font-size: .85em;
    font-style: italic;
}

.sideImg {
    width: 100%;
    height: 100%;
	min-height: 700px;
}

.sideColRight {
	padding-left:40px;
}

.square {
    position: absolute;
    bottom: -50px;
    left: 0px;
	opacity:0.95;
    height: 240px;
    width: 200px;
    background-color: var(--accent);
    transform: skew(7deg);
}

.news-post {
	margin:20px 0px;
}

.news-post a {
	text-decoration:none !important;
}

.news-post .featImg:hover {
	opacity:0.85;
}

.postInner {
	margin-top:30px;
}

.news-post span:before {
    width: 64px !important;
    height: 3px;
    margin-top: 12px;
}

.news-post h5 {
    font-size: 1.7em;
    font-weight: 700;
    margin-bottom: 5px;
}

.news-post h5:hover {
	color:var(--accent);
}

.news-post .sub-title:hover {
	color:#000;
}

.news-post .sub-title:hover:before {
	background-color:#000;
}

.news-post .postInner span {
    font-weight: 800;
    letter-spacing: 1px;
}

.testimonial-post {
	background-color: #FFF;
    padding: 50px;
}

.testimonial-post i {
    color: #ffe049;
    font-size: 1.35em;
}

.testimonial-post span {
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: .9em;
	opacity:.8;
}

.testimonial-post h5 {
	margin-bottom:0px;
}

#testimonialLayer .testimonial-post p {
    font-size: 1em;
    line-height: 27px;
    font-weight: 400;
    margin: 20px 0px;
}

#testiCarousel {
	margin-left:-15px;
}

#testimonialLayer .testimonial-post {
	margin:15px;
}

.error404 .title {
    font-size: 2.4em;
	line-height:42px;
}

#uspCopy {
    padding-left: 35px;
}

.flip {
    transform: skew(-7deg);
}

#serviceSidebar ul {
    margin: 0;
    list-style: none;
    padding: 0;
}

#serviceSidebar ul li {
    display: block;
    padding: 15px 12px;
    border-bottom: 1px solid #ececec;
    border-radius: 0px;
    position: relative;
    margin-bottom: 0px;
	line-height:23px;
}

#serviceSidebar ul li:last-of-type {
    border: 0px;
    margin: 0;
}

#serviceSidebar ul li:after {
    font-family: 'Font Awesome 6 Pro';
    content: '\f178';
    right: 32px;
    position: absolute;
    top: 15px;	
}

#serviceContent {
	padding-left:20px;
}

#serviceSidebar ul li a {
    color: #212121;
    text-decoration: none;
    font-size: 1em;
    font-weight: 300;
	padding-right:20px;
}

#serviceSingle .wp-block-heading {
    font-style: normal;
    font-size: 1.4em;
    font-weight: 600;
    letter-spacing: -.5px;
    text-transform: none;
    margin-top: 30px;
	margin-bottom:30px;
	line-height: 30px;
	position:relative;
}

#serviceSingle .wp-block-heading:before {
    content: '';
    height: 3px;
    width: 60px;
    background-color: var(--accent);
    position: absolute;
    bottom: -12px;
}

#serviceSingle {
    background-color: #f9f9f9;
    border-top: 5px solid var(--accent);
    padding-top: 70px;
    border-bottom: 1px solid #f1f1f1;
}

.sidebarItem {
    background-color: #FFF;
    padding: 32px;
	margin-bottom:45px;
    box-shadow: 1px 1px 23px rgb(0 0 0 / 12%);
    border-radius: 0px;
}

#serviceSidebar ul li:hover, #serviceSidebar ul li:hover a {
	color:var(--accent);
}

#serviceSidebar ul li.current-menu-item a {
	font-weight:600;
}

#serviceSidebar ul li.current-menu-item:after {

}

#sidebarQuote a {
    position: relative;
    display: block;
    color: #FFF;
    background-color: var(--accent);
    padding: 40px;
	border-radius:2px;
    padding-left: 90px;
	text-decoration: none !important;
}

#sidebarQuote a:before {
    content: '';
    height: 350px;
    width: 260px;
    background-color: #FFF;
    position: absolute;
    top: -130px;
    right: -150px;
    opacity: .08;
    transform: rotate(-35deg);
}

#sidebarQuote i {
    position: absolute;
    top: 47px;
    left: 28px;
    font-size: 3.5em;
}

#sidebarQuote span {
    display: block;
    font-weight: 600;
    font-size: 1.15em;
    text-transform: uppercase;
    letter-spacing: 1px;
}

#sidebarQuote p {
    color: #FFF;
    font-size: .85em;
    line-height: 22px;
    margin: 0;
    font-weight: 300;
}

#sidebarQuote b {
    font-size: .9em;
    text-transform: uppercase;
    display: block;
    font-weight: 600;
    letter-spacing: 0.5px;
    margin-top: 15px;
}

#sidebarQuote b:after {
    font-family: 'Font Awesome 6 Pro';
    content: '\f178';
    margin-left: 5px;
    margin-top: 41px;
    font-weight: 400;
}

#sidebarQuote b:hover:after {
	margin-left:12px;
}

.page-breadcrumb {
    margin-bottom: 10px;
    display: block;
}

.page-breadcrumb, .page-breadcrumb a {
    font-size: 12px;
    color: #4c4c4c;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.page-breadcrumb a:hover {
	color:var(--accent) !important;
}

.page-breadcrumb b {
    font-weight: 500;
    color: #000;
}

#serviceContent .entry-title {
    margin-bottom: 20px;
    font-size: 2.4em;
	color:#000;
}


#serviceContent h2:not(.entry-title), 
#serviceContent h3,
.singlePostCopy .wp-block-heading:not(.entry-title) {
    font-size: 1.15em;
    margin-bottom: 25px;
    position: relative;
    margin-top: 25px;
    text-transform: none;
    font-weight: 600;
    letter-spacing: -0.35px;
    font-style: normal;
}

#serviceContent h2:not(.entry-title):before, 
#serviceContent h3:before,
.singlePostCopy .wp-block-heading:not(.entry-title):before {
    content: '';
    height: 3px;
    width: 45px;
    background-color: var(--accent);
    position: absolute;
    left: 0;
    bottom: -9px;
}

.cBox .title {
	margin-bottom:30px;
}

.cBox .cDetails li {
    position: relative;
    padding-left: 100px;
    min-height: 80px;
    margin-bottom: 20px;
}

.cBox .cDetails li {
    font-size: 1.15em;
    letter-spacing: .5px;
}

.cBox .cDetails li.bolder {
    font-size: 1.6em;
    font-weight: 600;
    letter-spacing: 1px;
}

.cBox .cDetails li, .cBox .cDetails li a {
	color:#e5e5e5;
}

.page-id-40 #contactSection .cDetails {
    padding-right: 20% !important;
}

.cBox .cDetails li:before {
    height: 80px;
    width: 80px;
    background-color: rgb(40 40 40 / 69%);
    line-height: 80px;
    text-align: center;
    color: #e8e8e8;
    font-family: 'Font Awesome 6 Pro';
    content: '\f00c';
    position: absolute;
    left: 0;
    font-weight: 100;
    top: 13px;
    font-size: 26px;
    border-radius: 4px;
}

.cBox .cDetails li a {
	text-decoration:none !important;
}

.cBox .cDetails li a span {
	display:block;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 17px;
    font-weight: 500;
    color: var(--accent);
}

.cBox .cDetails li a:hover {
	color:var(--accent);
}

.cBox .cDetails li:nth-of-type(1):before {
	content: '\f095';
}

.cBox .cDetails li:nth-of-type(2):before {
	content: '\f0e0';
}

.cBox .cDetails li:nth-of-type(3):before {
	content: '\f3c5';
}

#contactSection {
	padding-top:200px;
}

#contactSection .gform_wrapper .gform_body input, #contactSection .gform_wrapper .gform_body textarea {
    background: rgb(0 0 0 / 27%);
    border: 2px groove rgb(0 0 0 / 90%);
}

#contactSection .title {
	color:#FFF;
}

#contactSection .overlay {
	background-color:#0c0c0c;
	opacity:0.75;
}

body #contactSection .gform_footer .gform_button {
	color:#FFF;
}

#mapWrap {
	margin-bottom:-21px;
}

#contactLayer .gform_wrapper.gravity-theme .gfield input,
#contactLayer .gform_wrapper.gravity-theme textarea {
	background-color:#f9f9f9;
}

#blogSidebar {
	padding-left:40px;
}

#blogSidebar .menu {
	padding:0px;
	margin:0;
	list-style:none;
}

#blogSidebar .menu li a {
    color: #474747;
    display: block;
    border-bottom: 1px solid #eeeeee;
    padding: 8px 0px;
    font-size: .95em;
    letter-spacing: .5px;
    text-transform: unset;
	text-decoration:none !important;
}

#blogSidebar .menu li a:hover {
	color:var(--accent);
}

#singlePostMeta ul {
	display:flex;
	gap:12px;
}

#singlePostMeta ul li:last-of-type {
    color: #606060;
    border-left: 1px solid #e5e5e5;
    padding-left: 15px;
    font-size: .8em;
    letter-spacing: 0.25px;
}

#singlePostMeta {
	margin-bottom:25px;
}

#singlePostMeta .date {
    font-size: 1.25em;
    font-weight: 600;
    color: var(--accent);
}

#blogSidebar .menu li a:after {
    font-family: 'Font Awesome 6 Pro';
    content: '\f105';
    margin-right: 12px;
    float: right;
    font-size: 13px;
}

#blogSidebar .sidebarItem {
	background-color:transparent;
	box-shadow:none;
	padding:0;
}

#singlePost .postImage {
    height: 500px;
    background-color: #cccccc;
    border-radius: 2px;
}

.singlePostCopy {
    margin-left: 30px;
    background-color: #FFF;
    margin-top: -50px;
    padding: 40px;
}

.singlePost #singlePost .container {
	max-width:1100px;
}

#blogSidebar .rpwe-thumb {
    border: 0px;
    box-shadow: none !important;
    margin: 0px;
    padding: 3px;
	border-radius:6px;
    margin-right: 9px;
}

#blogSidebar .rpwe-ul {
	list-style: none;
    margin: 0;
    padding: 0;
}

.rpwe-li {
	position:relative;
	padding-left:90px;
}

.rpwe-li .rpwe-img {
    position: absolute;
    left: 0;
    top: 0;
}

#blogSidebar .rpwe-ul .rpwe-title a {
    color: #101010;
    letter-spacing: 0px;
}

#blogSidebar .rpwe-ul .rpwe-title {
    line-height: 20px;
    margin: 0;
    font-weight: 500;
    text-transform: capitalize;
    font-style: normal;
    letter-spacing: .5px;
    font-size: .95em;
}

#blogSidebar .rpwe-time {
    font-size: 13px;
    color: #8e8e8e;
    letter-spacing: 0px;
    font-weight: 400;
    margin-top: 0px;
    display: block;
}

#blogSidebar .widget-title {
    font-style: normal;
    font-size: 1.4em;
    font-weight: 600;
    letter-spacing: -.5px;
    text-transform: none;
    margin-top: 0px;
    margin-bottom: 30px;
    position: relative;
}

#blogSidebar .widget-title:before {
    content: '';
    height: 3px;
    width: 60px;
    background-color: var(--accent);
    position: absolute;
    bottom: -12px;
}

.service {
	margin:15px 0px;
}

.service .postInner {
    margin-top: 10px;
}

.page-id-48 {
	background-color:#F9F9F9;
}

.page-id-48 #primary {
    padding-top: 0px;
    overflow: unset;
}

.page-id-48 #primary .container {
	max-width:1024px;
}

.page-id-48 .gform_wrapper {
    background-color: #FFFF;
    padding: 90px;
    margin-top: -100px;
    z-index: 10;
    position: relative;
    box-shadow: 1px 1px 30px rgb(75 69 69 / 18%);
    border-radius: 14px;	
	padding-top:60px;
}

.page-id-48 #gf_progressbar_wrapper_2 {
    margin-top: -40px;
    margin-bottom: 50px;	
}

.page-id-48 #primary .gform_wrapper .gform_body input:not(.button), body .gform_wrapper .gform_body textarea {
    font-size: 1em !important;
    font-weight: 300;
    padding: 15px !important;
}

body .gform_wrapper .gsection_title {
    font-size: 1.15em;
    margin: 0;
    font-weight: 600;
    letter-spacing: .5px;
    margin-bottom: -5px;
}

body .gform_wrapper.gravity-theme .gsection {
	border:0px;
}

.page-id-48 #primary .gform_wrapper .gform_body .gform_wrapper.gravity-theme .gsection {
    border-bottom: 0px;
    padding: 0px;
}

.page-id-48 .gform_wrapper.gravity-theme #gform_page_2_2 .gform_fields {
    grid-row-gap: 30px;
    grid-column-gap: 30px;
}

.gform_wrapper.gravity-theme .gform_page_footer input {
    margin-bottom: 8px;
    padding: 15px 30px;
    border: 0;
    background-color: var(--secondary);
    color: #FFF;
    font-style: italic;
    letter-spacing: 0.25px;
    font-weight: 600;
    font-size: 1.2em;
}

#aboutBanner {
	position:relative;
	padding-top:300px;
	padding-bottom:300px;
}

.aboutBannerInner {
    height: 100%;
    background: rgb(28 28 28 / 80%);
    position: absolute;
    top: 0;
    bottom: 0px;
    display: flex;
    width: 64%;
    padding: 80px;
    align-items: center;
    z-index: 20;
    padding-left: 8%;
    padding-right: 10%;
}


#aboutBanner .aboutBannerInner * {
	color:#FFF;
}


#aboutBanner .aboutBannerInner p {
    color: #d9d9d9;
    font-size: 1.1em;
    line-height: 30px;
}


#aboutBanner .aboutBannerInner h3 {
    font-size: 2.8em;
}


#aboutBanner .aboutBannerInner h3 b {
	color:var(--accent) !important;
}

.service-post {
	margin:15px 0px;
}

.service-post .overlay {
    background: linear-gradient(180deg,rgb(0 0 0/75%) 0%,rgba(0,0,0,.99) 60%,#000 100%);
}

.service-post:hover .overlay {
    background: linear-gradient(180deg,rgb(255 128 1 / 53%) 0%,rgb(255 128 1 / 63%) 60%,#ff8001 100%);
    opacity: 1;	
}

.service-post h5 {
    position: absolute;
    bottom: 30px;
    left: 30px;
    right: 30px;
    font-size: 1.6em;
    color: #FFF;
    z-index: 20;
    line-height: 30px;
    letter-spacing: -.5px;
}

.staff-post h3 {
    font-size: 1.4em;
    font-style: normal;
    font-weight: 600;
    letter-spacing: .5px;
    margin-top: 15px;
    margin-bottom: 2px;
}

.staff-post a {
	text-decoration:none !important;
}

.staff-post span.role {
    color: var(--accent);
    font-size: 1.05em;
    text-transform: uppercase;
    letter-spacing: 2px;
}

#staffCarousel .staff-post {
	margin:0px 15px;
}


#staffCarousel {
	margin-left:-15px;
}

#menu-legal-links {
	display:flex;
	gap:10px;
}

#menu-legal-links li:before {
	display:none !important;
}

#menu-legal-links li {
    margin: 0px !important;
}

#menu-legal-links li a {
	font-size:0.8em;
	color:grey;
}

#menu-legal-links li a:hover {
	color:#FFF;
}

#contactCta p {
    font-size: 1.25em;
    font-weight: 100;
    margin: 20px 0px;
    margin-top: 10px;
    letter-spacing: .5px;
}

#thankYou .quoteLower {
    margin-top: 30px;
    font-size: 1.1em;
    font-weight: 400;
}

#thankYou {
    max-width: 100%;
    width: 780px;
    margin: 0 auto;
}

#thankYou .title {
    font-size: 3em;
    letter-spacing: -.5px;
    line-height: 48px;
}

#thankYou .intro {
    font-size: 1.3em;
}

body .gform_required_legend {
	margin-bottom: 40px;
    font-size: .8em;
    color: #747474;
}

.gform_wrapper.gravity-theme .gform_validation_errors>h2 {
	text-transform:capitalize;
}

body .gform_wrapper.gravity-theme .gform_validation_errors {
    background: #ffe6e6;
    border: 0px;
    border-radius: 4px;
    box-shadow: none;
    margin-bottom: 8px;
    margin-bottom: 20px;
}

#heroNav li.active-nav {
	color:var(--accent) !important;
}

body .gfield_checkbox {
	line-height:28px;
}

.gform_wrapper.gravity-theme .gform_previous_button.button {
	text-transform:uppercase;
}

.gform_wrapper.gravity-theme .gform_previous_button.button {
    padding: 0;
    margin-right: 20px;
    opacity: .3;
    letter-spacing: 1px;
}

.gform_wrapper.gravity-theme .gform_previous_button.button:hover {
	opacity:1;
}

.gform_wrapper.gravity-theme .gform_previous_button.button:before {
	font-family: 'Font Awesome 6 Pro';
	content: '\f00d';
}

body .gfield--type-product, body .gfield--type-total {
    visibility: hidden;
    height: 0px;
    overflow: hidden;
    position: absolute;
    z-index: -50;
}

#field_2_16, #field_2_17, #field_2_18 {
    grid-column: span 4;
}

body .singlePostCopy ul {
    margin: 15px 0px;
    padding-left: 15px;
    margin-bottom: 30px;
}

.post-template-default #pageBanner h1 {
	margin-top:0px;
}

.singlePostCopy .entry-title {
    font-weight: 700;
	text-transform:none;
    margin-bottom: 10px;
    font-style: normal;
    font-size: 1.55em;
}