/* ------------------------------------------------------
    Colors CSS START
   ------------------------------------------------------
*/

:root {
}

:root {
    
}

:root {
    /*--tracy-space: 16px;*/
    /*--color-body: #000;*/
    /*--color-heading-1: #FFFFFF;*/
    /*--color-title: #141416;*/
    /*--color-heading-dark: #141416;*/
    /*--bg-dark-1: #1E1E20;*/
    /*--color-white: #fff;*/
    /*--color-border: #DDD8F9;*/
    /*--border-width: 1px;*/
    /*--radius: 10px;*/
    /*--color-success: #3EB75E;*/
    /*--color-danger: #FF0003;*/
    /*--color-warning: #FF8F3C;*/
    /*--color-info: #1BA2DB;*/
    /*--color-facebook: #3B5997;*/
    /*--color-twitter: #1BA1F2;*/
    /*--color-youtube: #ED4141;*/
    /*--color-linkedin: #0077B5;*/
    /*--color-pinterest: #E60022;*/
    /*--color-instagram: #C231A1;*/
    /*--color-vimeo: #00ADEF;*/
    /*--color-twitch: #6441A3;*/
    /*--color-discord: #7289da;*/
    /*--p-light: 300;*/
    /*--p-regular: 400;*/
    /*--p-medium: 500;*/
    /*--p-semi-bold: 600;*/
    /*--p-bold: 700;*/
    /*--p-extra-bold: 800;*/
    /*--p-black: 900;*/
    /*--s-light: 300;*/
    /*--s-regular: 400;*/
    /*--s-medium: 500;*/
    /*--s-semi-bold: 600;*/
    /*--s-bold: 700;*/
    /*--s-extra-bold: 800;*/
    /*--s-black: 900;*/
    /*--transition: 0.3s;*/
    /*--font-primary: "Gantari", serif;*/
    /*--font-secondary: "Inter", serif;*/
    /*--font-3: "fontawesome";*/
    /*--font-size-b1: 15px;
    --font-size-b2: 15px;
    --font-size-b3: 22px;
    --line-height-b1: 26px;
    --line-height-b2: 26px;*/
    /*--font-size-b1: 1.5rem;*/
    /*--font-size-b2: 1.5rem;*/
    /*--font-size-b3: 2.2rem;*/
    /*--line-height-b1: 2.6rem;*/
    /*--line-height-b2: 2.6rem;*/
    /*--line-height-b3: 1.7;*/
    /*--h1: 60px;
    --h2: 48px;
    --h3: 30px;
    --h4: 26px;
    --h5: 24px;
    --h6: 18px;*/
    /*--h1: 6rem;*/
    /*--h2: 4.8rem;*/
    /*--h3: 3rem;*/
    /*--h4: 2.6rem;*/
    /*--h5: 2.4rem;*/
    /*--h6: 1.8rem;*/
    /*--color-alt: #1fa2cd;*/
    /*--bg-body-color: #f2f3f5;*/
}

/* ------------------------------------------------------
    Colors CSS END
   ------------------------------------------------------
*/





/* ------------------------------------------------------
    Template CSS START
   ------------------------------------------------------
*/

body {
    font-size: var(--font-size-b1);
    line-height: var(--line-height-b1);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: 'Public Sans';
    color: var(--color-body);
    font-weight: var(--p-regular);
    position: relative;
    overflow-x: hidden;
    margin: 0;
    background: var(--bg-body-color);
}

@media (min-width: 1600px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1429px;
    }
}
@media (min-width: 1400px) and (max-width: 1599.5px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1300px;
    }
}
@media (min-width: 1200px) and (max-width: 1399.5px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1100px;
    }
}
@media (min-width: 992px) and (max-width: 1199.5px) {
    .container, .container-lg, .container-md, .container-sm {
        max-width: 960px;
    }
}
@media (min-width: 768px) and (max-width: 991.5px) {
    .container, .container-md, .container-sm {
        max-width: 720px;
    }
}
@media (min-width: 576px) and (max-width: 767.5px) {
    .container, .container-sm {
        max-width: 540px;
    }
}

/* home page */
.division-list li.current-page {
	background-color: var(--color-primary);
}
.division-list li:not(.current-page) {
    background-size: 200% 200%;
    background-image: var(--division-default-bg);
    transition: background-position 1s;
}
.division-list li:not(.current-page):hover {
	background-image: var(--division-not-active-gradient) !important;
    background-position: 0 75%;
}

.logo-area img {
	max-height: 60px;
}

.slider-img-1 {
    background: 
      linear-gradient(to right, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 100%),
      url(/images/slider/industrial-0-1.jpg);
    background-size: cover;
    background-position: center;
}

.slider-img-2 {
    background: 
      linear-gradient(to right, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 100%),
      url(/images/slider/industrial-0-2.jpg);
    background-size: cover;
    background-position: center;
}

.slider-img-3 {
    background: 
      linear-gradient(to right, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 100%),
      url(/images/slider/industrial-0-3.jpg);
    background-size: cover;
    background-position: center;
}

.slider-img-4 {
    background: 
      linear-gradient(to right, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 100%),
      url(/images/slider/industrial-0-4.jpg);
    background-size: cover;
    background-position: center;
}

.slider-img-5 {
    background: 
      linear-gradient(to right, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0) 100%),
      url(/images/slider/main_snow_ice_solutions.jpg);
    background-size: cover;
    background-position: center;
}

#servicesDiv {
    min-height: 553px !important;
}

.overlay {
    -webkit-mask-position: center !important;
    mask-position: center !important;
}

/* end home page */


.padding-y-60 {
	padding-top: 60px;
	padding-bottom: 60px;
}

.service-abot-area.sustain .one {
    margin-bottom: 50px;
}

.service-abot-area.sustain .one p {
	/*font-size: 20px;*/
	font-size: 1.8rem
}

.service-abot-area.sustain .one  p:not(:last-of-type)  {
	margin-bottom: 20px;
}

.service-abot-area.sustain .one .thumbnail-service-about {
    margin-right: 120px;
}

.thumbnail-service-about {
    position: relative;
}

.reveal-item {
    position: relative;
    display: block;
    overflow: hidden;
}

[data-aos=reveal-top], [data-aos=reveal-start], [data-aos=reveal-end], [data-aos=reveal-bottom] {
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
}

[data-aos=reveal-end] {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

[data-aos=reveal-top], [data-aos=reveal-start], [data-aos=reveal-end], [data-aos=reveal-bottom] {
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
}

[data-aos=reveal-end] {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.reveal-item .reveal-animation {
    position: absolute;
    top: 0;
    width: 100%;
    height: 101%;
    background: var(--color-primary);
    border-radius: 0;
}

[data-aos=reveal-end].aos-animate {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 100% 0%;
    transform-origin: 100% 0%;
}

[data-aos][data-aos][data-aos-duration="500"], body[data-aos-duration="500"] [data-aos] {
    -webkit-transition-duration: .5s;
    -o-transition-duration: .5s;
    transition-duration: .5s;
}

[data-aos][data-aos][data-aos-easing=ease-out-quart], body[data-aos-easing=ease-out-quart] [data-aos] {
    -webkit-transition-timing-function:
        cubic-bezier(.25, .46, .45, .94);
        -o-transition-timing-function: cubic-bezier(.25, .46, .45, .94);
    transition-timing-function:
        cubic-bezier(.25, .46, .45, .94);
}


.reveal-animation.reveal-start.aos-animate::before, .reveal-animation.reveal-end.aos-animate::before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.reveal-animation.reveal-start.aos-animate::before, .reveal-animation.reveal-end.aos-animate::before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}

.reveal-animation.reveal-end::before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
}

.reveal-animation.reveal-primary::before {
    background: #0c0c0a;
}

.reveal-item .reveal-animation::before {
    position: absolute;
    content: "";
    top: 0;
    border-radius: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--bs-gray-400);
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 1s;
    transition-duration: 1s;
}

.reveal-animation.reveal-end::before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 0% 100%;
    transform-origin: 0% 100%;
}

.reveal-animation.reveal-primary::before {
    background: #0c0c0a;
}

.title-three-left span.pre-title {
    font-weight: 600;
    /*font-size: 16px;*/
    font-size: 1.6rem;
    line-height: 24px;
    font-family: var(--font-primary);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #0C0A0A;
}

.title-three-left span.pre-title {
    font-weight: 600;
    /*font-size: 16px;*/
    font-size: 1.6rem;
    line-height: 24px;
    font-family: var(--font-primary);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #0C0A0A;
}

.service-about-wrapper .title-three-left span.pre-title {
    color: var(--color-primary);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, address, p, pre, blockquote, menu, ol, ul, table, hr {
    margin: 0;
    margin-bottom: 20px;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    word-break: break-word;
    font-family: "Gantari", serif;
    line-height: 1.4074;
    color: var(--template-header);
}

h3, .h3 {
    font-size: var(--h3);
    line-height: 1.2;
}

h1, .h1, h2, .h2, h3, .h3 {
    font-weight: var(--s-bold);
}

.title-three-left .title {
    font-weight: 600;
    /*font-size: 48px;*/
    font-size: 4.8rem;
    line-height: 58px;
    color: #0C0A0A;
    margin-top: 12px;
}

.service-about-wrapper .title-three-left .title {
    color: #fff;
}

p {
    font-size: var(--font-size-b2);
    line-height: var(--line-height-b2);
    font-weight: var(--p-regular);
    color: var(--color-body);
    margin: 0 0 40px;
}

a {
    text-decoration: none;
    outline: none;
}

.rts-btn {
    /*font-size: 16px;*/
    font-size: 1.6rem;
    font-weight: 700;
    background-color: transparent;
    max-width: max-content;
    padding: 12px 28px;
    min-width: max-content;
}

.rts-btn.btn-primary {
    color: #fff;
    font-weight: 700;
    background: var(--color-primary);
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.rts-btn.btn-primary::after {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: var(--color-secondary);
    border-color: var(--color-secondary);
    transform: translateY(110%);
    transition: 0.3s;
    transition-delay: 0.1s;
    z-index: -1;
}

.title-three-left {
    position: relative;
}

img {
    -ms-interpolation-mode: bicubic;
    border: 0;
    vertical-align: middle;
    max-width: 100%;
    height: auto;
}

.single-service-area-inner .thumbnail img {
    transition: 0.3s;
}

.single-service-area-inner .innr p.disc {
    /*font-size: 16px;*/
    font-size: 1.6rem;
    margin-bottom: 20px;
}

.single-service-area-inner .innr .check-wrapper .single {
    display: flex;
    align-items: start;
    gap: 13px;
}

.fa, .fa-brands, .fa-duotone, .fa-light, .fa-regular, .fa-solid, .fa-thin, .fab, .fad, .fal, .far, .fas, .fat {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: var(--fa-display, inline-block);
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    text-rendering: auto;
}

.fa-light, .fal {
    font-family: "Font Awesome 6 Pro";
    font-weight: 300;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, address, p, pre, blockquote, menu, ol, ul, table, hr {
    margin: 0;
    margin-bottom: 20px;
}

p {
    font-size: var(--font-size-b2);
    line-height: var(--line-height-b2);
    font-weight: var(--p-regular);
    color: var(--color-body);
    margin: 0 0 40px;
}

p:last-child {
    margin-bottom: 0;
}

.single-service-area-inner .innr .check-wrapper .single p {
    margin-bottom: 0;
    color: var(--color-title);
    font-weight: 400;
}

.single-service-area-inner .innr .check-wrapper .single i {
    color: var(--color-title);
    margin-top: 3px;
}

/* ------------------------------------------------------
    Template CSS END
   ------------------------------------------------------
*/


.area-bg-color-even {
    background: #f2f3f5;
}

.area-bg-color-odd {
    background: #fff;
}

.area-section-gap-bottom {
    padding-bottom: 40px;
}

.area-section-gap-bottom-alt {
    padding-bottom: 16px;
}

.area-row-margin {
    margin-right: unset;
    margin-left: unset;
}

.line-separator {
    border-bottom: 1px solid var(--color-primary);
}

.line-separator-margin-top{
    margin-top: 19px;
}

.line-separator-margin-bottom {
    margin-bottom: 40px;
}

.line-separator-margin-top-2 {
    margin-top: 40px;
}

.line-separator-margin-bottom-2 {
    margin-bottom: 40px;
}

@media (max-width: 575px) {
    .area-section-gap-bottom {
        padding-bottom: 40px;
    }
    .line-separator-margin-top{
        margin-top: 40px;
    }
    .line-separator-margin-bottom-2 {
        margin-bottom: 40px;
    }
}

.service-abot-area.sustain .one .thumbnail-service-about {
    margin-right: 0;
}

.service-about-wrapper .title-three-left .title, .single-service-area-inner .innr .title {
    font-family: 'Public Sans';
    line-height: 1.2;
    color: var(--template-header);
    font-weight: 900;
    /*font-size: 36px;*/
    font-size: 3.2rem;
}
.service-about-wrapper .title-three-left .main-title, .innr .cta-main-title {
    font-weight: 900;
    /*font-size: 36px;*/
    font-size: 3.2rem;
}
@media (max-width: 1550px) {
	.service-about-wrapper .title-three-left .title, .single-service-area-inner .innr .title {
	    font-size: 3rem;
	}
	.service-about-wrapper .title-three-left .main-title {
	    font-size: 3rem;
	}
}

.single-service-area-inner .innr .sub-title {
    font-weight: 900;
    /*font-size: 24px;*/
    font-size: 2.2rem;
    margin-top: 10px;
}

.single-service-area-inner .innr .title:hover {
    color: var(--template-header);
}

.service-about-wrapper .title-three-left p {
    font-family: 'Public Sans';
    color: black;
}

.service-about-wrapper .title-three-left .main-p {
    /*font-size: 20px;*/
	font-size: 1.8rem
}

.title-three-left .title {
    margin-top: 0;
}

.service-abot-area.sustain .one {
    margin-bottom: 0;
}

.single-service-area-inner {
    display: block;
    border-radius: 0;
    overflow: hidden;
}

@media (max-width: 991px) {
    .s4-single-service-area-inner-r {
        float: unset;
        justify-items: center;
    }
    
    .s4-single-service-area-inner-l {
        float: unset;
        justify-items: center;
    }
}

.single-service-area-inner .thumbnail {
    display: block;
    overflow: hidden;
}

.single-service-area-inner .innr {
    padding: 0;
    background: unset;
    padding-left: 25px;
    padding-right: 25px;
}

.single-service-area-inner .innr p.disc {
    font-family: 'Public Sans';
    /*font-size: 16px;*/
    font-size: 1.6rem;
    color: black;
}

.single-service-area-inner .innr p.disc-p {
    margin-bottom: 10px;
}

.single-service-area-inner .innr .check-wrapper .single p {
    font-family: 'Public Sans';
    /*font-size: 16px;*/
    font-size: 1.6rem;
    color: black;
}

/* Target the div *around* the image (the div that is a sibling to .innr) */
.single-service-area-inner:not(.area-self) > div:first-child {
    /* Ensure no unwanted spacing */
    padding: 0; 
    margin: 0;
}

/* Make the image fit this standardized slot without distortion */
.single-service-area-inner img {
    width: 100%;
    height: 100%;
    object-fit: contain; /* Key: Maintains aspect ratio and prevents distortion */
    display: block; 
}

/* Ensure the row is top-aligned */
.rts-ervice-area .row {
    /*align-items: baseline;*/ /* Ensures columns align to the top of the row */
}

.rts-section-stretch {
    background-image: url('/images/grapes/cps1003_fleetpilot.jpeg');
    background-repeat: no-repeat; /* Prevents the image from repeating */
    background-position: center 90%;
    background-size: cover; /* Scales the image to cover the entire background area */
}

@media (max-width: 991.5px) {
    .rts-section-stretch {
        background-image: unset;
        background-color: white;
    }
}

.single-service-area-inner .innr .sub-title-alt {
    font-weight: 900;
    font-size: 24px;
}

.innr-self {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.s4-img {
    object-fit: cover !important;
    height: 100%;
    width: 100%;
    aspect-ratio: 1.4 / 1;
}

@media (min-width: 768px) {
    .s4-img-div {
        justify-self: right !important;
    }
}

@media (min-width: 1400px) {
    .s4-inner-self {
        padding-left: 33% !important;
    }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .s4-inner-self {
        padding-left: 14% !important;
    }
}

@media (max-width: 1199px) {
    .s4-inner-self {
        padding-left: 0 !important;
    }
}

.s4-inner-self-2 {
    padding-left: 0 !important;
}

@media (min-width: 992px) {
    .s4-single-service-area-inner-l {
        padding-left: 25px !important;
    }
    
    .s4-single-service-area-inner-r {
        padding-right: 25px !important;
    }
}

.s4-sub-title {
    margin-top: 30px;
}

.overlay-image {
    position: absolute;
    top: 75%;
    left: 5%;
    width: 65px !important;
    height: auto !important;
    border-radius: 30px;
    padding: 5px;
    background-color: white;
    z-index: 10;
}

@media (min-width: 1400px) {
    .s4-disc {
        padding-right: 205px;
    }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .s4-disc {
        padding-right: 75px;
    }
}

@media (max-width: 1199px) {
    .s4-disc {
        padding-right: 0;
    }
}

.rts-section-stretch-white {
    background-color: white;
    padding: 40px 20px;
}

.single-service-area-inner .innr .sub-title-alt-lg {
    font-weight: 900;
    /*font-size: 36px;*/
    font-size: 3.2rem;
}
@media (max-width: 1550px) {
	.single-service-area-inner .innr .sub-title-alt-lg {
	    font-size: 3rem;
	}
}

@media (max-width: 767px) {
    .single-service-area-inner .innr .sub-title-alt-lg {
        /*font-size: 28px;*/
        font-size: 2.8rem;
    }
}

@media (max-width: 576px) {
    .single-service-area-inner .innr .sub-title-alt-lg {
        /*font-size: 24px;*/
        font-size: 2.4rem;
    }
}

.s5-area-self {
    align-items: flex-start;
}

.innr-image {
    width: 250px;
    padding-top: 10px;
}

.innr-image img {
    border: 2px solid var(--color-primary);
    border-radius: 50px;
    padding: 7px;
}

.s5-div-wrapper, .s2-p-mb {
    margin-bottom: 14px;
}

.s5-div-wrapper .s5-disc {
    font-family: 'Public Sans';
    /*font-size: 24px;*/
    font-size: 2.2rem;
	font-weight: 900px;
    line-height: 1.2;
    color: black;
}

.s5-links-wrapper .s5-img-wrapper .single-icon a i {
    /*font-size: 24px;*/
    font-size: 2.2rem;
    color: var(--color-primary);
}

.s5-links-wrapper .s5-text-wrapper .single-link a {
    font-family: 'Public Sans';
    /*font-size: 16px;*/
    font-size: 1.6rem;
    color: black;
}
.s5-links-wrapper .s5-text-wrapper .single-link a:hover {
    color: var(--color-primary);
}

.s5-links-wrapper {
    gap: 5px;
}


.your-fleet-section .innr .check-wrapper .single p {
    /*font-size: 20px;*/
	font-size: 1.8rem
}

@media (max-width: 767px) {
    .your-fleet-section .innr .check-wrapper .single p {
        /*font-size: 18px;*/
        font-size: 1.6rem
    }
}

.s5-innr-self {
    padding-left: 1% !important;
}

.s5-col-sm {
    padding: 0 0 20px 0;
}

.plr-lg {
    padding-right: 80px;
}

.s3-white-bg {
    background: white;
}

.s3-col-1 {
    padding: 20px;
}

@media(max-width: 991.5px) {
    .plr-lg {
        padding-right: 7.5px;
    }
}

@media (max-width: 767.5px) {
    .service-about-wrapper .title-three-left .main-title {
        /*font-size: 28px;*/
        font-size: 2.6rem
    }
    .service-about-wrapper .title-three-left .main-p {
        /*font-size: 18px;*/
        font-size: 1.8rem
    }
}

@media (max-width: 767.5px) {
    .rts-section-gap {
        padding: 40px 0;
    }
}

.single-service-area-inner .thumbnail {
    display: block;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 1.4 / 1;
    background: transparent;
}

.rts-single-offer {
    /*padding: 10px 10px 30px;*/
    padding: 25px;
    border: 1px solid #cacaca;
    position: relative;
    display: block;
    overflow: hidden;
    z-index: 1;
    transition: 0.3s;
    height: 100%;
}

.s4-inner-wrapper {
    max-width: 450px;
    margin-bottom: 40px !important;
}

@media (max-width: 991.5px) {
    .s4-mt-sm-0 {
        margin-top: 0;
    }
}

.single-service-area-inner .s4-innr {
    padding-left: 0;
    padding-right: 0;
}

@media (min-width: 1200px) and (max-width: 1399.5px) {
    .overlay-image {
        top: 70%;
    }
}

@media (min-width: 992px) and (max-width: 1199.5px) {
    .overlay-image {
        top: 65%;
    }
}

.s2-custom-gutter {
    --bs-gutter-x: 2.4rem;
}

.disc-list {
    font-family: 'Public Sans';
    /*font-size: 16px;*/
    font-size: 1.6rem;
    color: black;
    margin: 0;
}

.service-about-wrapper .title-three-left .main-p1 {
    margin-bottom: 20px;
}

/* core features section */
.rts-section-gap-120 {
    padding: 120px 0;
}
.service-about-bg {
    background-image: url(/images/backgrounds/3-bck.jpg);
}
.padding-controller {
    padding-left: 50px;
}
@media screen and (max-width: 576px) {
  .padding-controller {
	    padding-left: 15px;
	}
}
@media screen and (min-width: 900px) and (max-width: 991px) {
  .padding-controller {
	    padding-left: 100px;
	}
}
@media screen and (min-width: 992px) and (max-width: 1144px) {
  .padding-controller {
	    padding-left: 150px;
	}
}
@media screen and (min-width: 1145px) and (max-width: 1199px) {
  .padding-controller {
	    padding-left: 200px;
	}
}
.innr p {
    font-family: 'Public Sans';
    /*font-size: 16px;*/
    font-size: 1.6rem;
    color: black;
    margin-bottom: 20px;
}
.innr .title {
    font-family: 'Public Sans';
    line-height: 1.2;
    color: var(--template-header);
    transition: 0.3s;
    margin-bottom: 14px;
}
.innr .sub-title {
    font-weight: 900;
    /*font-size: 24px;*/
    font-size: 2.2rem;
    margin-top: 10px;
}
.single-service-spacing {
    padding: 0 10px;
    margin-top:40px;
}
.s5-single-service .innr {
    margin-bottom: 40px;
}
/*.single-service-area-inner .innr .minor-title {
    margin-bottom: 10px;
}*/
.innr .check-wrapper .single {
    display: flex;
    align-items: start;
    gap: 13px;
}
.innr .check-wrapper .single .i {
    color: var(--color-title);
    margin-top: 3px;
}
.innr .check-wrapper .single p {
    font-weight: 400;
    margin-bottom: 0;
}
/* remove bullets only from the first UL inside .checklist */
.check-list > ul, .check-list content > ul {
    list-style: none;
    padding-left: 0;
}

.check-list ul {
    margin-bottom: 14px;
}
 
/* style top-level list items only */
.check-list ul > li, .check-list content ul > li {
    position: relative;
    padding-left: 30px;
    margin: 0;
    font-family: 'Public Sans';
    /*font-size: 16px;*/
    font-size: 1.6rem;
    color: black;
}
 
.check-list ul > li::before, .check-list content ul > li::before {
    content: "\f058";                  
    font-family: "Font Awesome 6 Pro";  
    /*font-size: 15px;*/
    font-size: 1.5rem;
    font-weight: 300;
    color: var(--color-title);
    padding: 3px;
    position: absolute;
    left: 0;
    top: 5px;
    width: 16px; 
    height: 16px; 
    display: flex;
    align-items: center;
    justify-content: center;
}
 
/* restore default bullets for nested ULs */
.check-list ul ul {
    list-style: disc;         /* or circle, square, etc. */
    padding-left: 20px;       /* add indentation back -- may need to adjust */
    margin-bottom: 0;
}

.check-list ul ul > li, .check-list content ul ul > li {
	padding-left: 0; 
}
 
.check-list ul ul > li::before, .check-list content ul ul > li::before {
    content: none;            /* remove icon on nested lis */
}

.swiper-recent-project-5-wrapper .single-case-studies-5 .inner .active-text-area > p {
    margin-bottom: 20px;
}

.swiper-recent-project-5-wrapper .single-case-studies-5 .inner .active-text-area > h2 {
    margin-bottom: 20px;
    font-weight: 400;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1176470588);
}

.bg-color-gray {
    background-color: #DEDFE3;
}

.inner-column-wrapper > .single-service-area-inner {
    margin-bottom: 40px;
}

.border-right-gray {
    border-right: 1px solid #EDECEC;
}

.inner-column-wrapper-alt .innr > p, .inner-column-wrapper-alt .innr content > p {
    margin-bottom: 40px;
}
.globe-icon {
    width: 80px;
    height: 80px;
    background: var(--color-primary);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.globe-icon > img {
    width: 80px;
    height: 80px;
    padding: 20px;
}
.spacer-80 {
	width: 80px;
	height: 80px;
}
.margin-x-25 {
	margin-left: 25px !important;
    margin-right: 25px!important;
}

.rts-single-offer::after {
	top: unset;
	bottom: 80%;
}

.cta-wrapper-inner-light {
    background-color: #D7E2E8 !important;
}

.text-primary{
    color: var(--color-primary) !important;
}
/* core features section end */

/* add vertical lines btwn columns */
/* Base: attach a "vr-like" line to each column, placed in the middle of the gutter */
.divide-cols > [class^="col-"],
.divide-cols > [class*=" col-"] {
  position: relative;
}

.divide-cols > [class^="col-"]::after,
.divide-cols > [class*=" col-"]::after {
    content: "";
    position: absolute;
    top: 40px;
    bottom: 40px;
    right: calc(var(--bs-gutter-x) / 100);
    width: 1px;
    background: currentColor;
    opacity: .25;
}

/* === Responsive row ends: hide the divider on the last column per row === */

/* lg ≥ 992px: 3 columns per row (col-lg-4) */
@media (min-width: 992px) {
  .divide-cols > [class*="col-lg-4"]:nth-child(3n)::after {
    display: none;
  }
}

/* md ≥ 768px and < 992px: 2 columns per row (col-md-6) */
@media (min-width: 768px) and (max-width: 991.98px) {
  .divide-cols > [class*="col-md-6"]:nth-child(2n)::after {
    display: none;
  }
}

/* xs < 768px: 1 column per row (col-12) — no divider needed */
@media (max-width: 767.98px) {
  .divide-cols > [class*="col-12"]::after {
    display: none;
  }
}

.single-service-area-inner .innr p:has(> strong):has(+ ul), 
.single-service-area-inner .innr content p:has(> strong):has(+ ul) {
    margin-bottom: 10px;
}

.cta-area-wrapper .thumbnail img, .cta-area-wrapper .thumbnail content img {
    height: 100%;
}

.cta-area-wrapper .thumbnail {
    height: 100%;
}

.single-project-area-one {
    border-radius: 0;
    background: white;
}

.single-project-area-one .inner-content .title {
    color: var(--template-header);
    font-weight: 900;
    /*font-size: 24px;*/
    font-size: 2.2rem;
    font-family: 'Public Sans';
    line-height: 1.2;
}

.single-project-area-one .inner-content {
    border-radius: 0;
    background: white;
}

.single-project-area-one .inner-content p {
    color: black;
    /*font-size: 15px;*/
    font-size: 1.5rem;
    margin-bottom: 25px;
}

/*.single-project-area-one:hover .inner-content {
    height: 235px !important;
}*/

.single-project-area-one .inner-content div {
    row-gap: 12px;
}

.single-project-area-one .inner-content div .btn-max-100 {
    max-width: 100%;
}

.title-three-left content:has(p):has(+ a) p:last-child {
    margin-bottom: 40px;
}

.bg-configurator {
    background-color: #D7E2E8;
}

.configurator-padding {
    padding: 20px;
}

.configurator-svg-w {
    width: 45px;
    height: 55px;
}

.nothing-can-stop-icon {
    width: 75px;
}

.nothing-can-stop-inner-title {
    font-size: 2.2rem !important;
}

.innr .nothing-can-stop-title, .innr .nothing-can-stop-inner-title {
    font-weight: 900;
}

.inner-hose-title {
	font-size: 2.2rem !important;
	font-weight: 900;
    color: var(--template-header) !important;
}
.single-choose-us-one p.disc {
    color: var(--color-body);
}

/* heights */

.h--50 {
    height: 50px !important;
}
.h--60 {
    height: 60px !important;
}
.h--65 {
    height: 65px !important;
}
.h--69 {
    height: 69px !important;
}
.h--70 {
    height: 70px !important;
}
.h--80 {
    height: 80px !important;
}
.h--90 {
    height: 90px !important;
}
.h--92 {
    height: 92px !important;
}
.h--100 {
    height: 100px !important;
}
.h--110 {
    height: 110px !important;
}
.h--120 {
    height: 120px !important;
}
.h--130 {
    height: 130px !important;
}
.h--140 {
    height: 140px !important;
}
.h--150 {
    height: 150px !important;
}
.h--160 {
    height: 160px !important;
}
.h--170 {
    height: 170px !important;
}
.h--180 {
    height: 180px !important;
}
.h--190 {
    height: 190px !important;
}
.h--200 {
    height: 200px !important;
}
.h--210 {
    height: 210px !important;
}
.h--220 {
    height: 220px !important;
}
.h--230 {
    height: 230px !important;
}
.h--240 {
    height: 240px !important;
}
.h--250 {
    height: 250px !important;
}
.h--260 {
    height: 260px !important;
}
.h--270 {
    height: 270px !important;
}
.h--280 {
    height: 280px !important;
}
.h--290 {
    height: 290px !important;
}
.h--300 {
    height: 300px !important;
}

/* END heights */

/* padding bottom */

.pb--50 {
    padding-bottom: 50px !important;
}
.pb--55 {
    padding-bottom: 55px !important;
}
.pb--60 {
    padding-bottom: 60px !important;
}
.pb--65 {
    padding-bottom: 65px !important;
}
.pb--70 {
    padding-bottom: 70px !important;
}
.pb--75 {
    padding-bottom: 75px !important;
}
.pb--80 {
    padding-bottom: 80px !important;
}
.pb--85 {
    padding-bottom: 85px !important;
}
.pb--90 {
    padding-bottom: 90px !important;
}
.pb--95 {
    padding-bottom: 95px !important;
}
.pb--100 {
    padding-bottom: 100px !important;
}

/* END padding bottom */

/* tab and accordion sections */

	.title.sub-title {
		font-weight: 900;
	    /*font-size: 24px;*/
	    font-size: 2.2rem;
	    margin-top: 10px;
	    font-family: 'Public Sans';
	    line-height: 1.2;
	    color: var(--template-header);
	}
	
	.faq-inner-wrapper-one .accordion-item .accordion-header button, .accordion-button::after {
		font-weight: 900;
	    /*font-size: 24px;*/
	    font-size: 2.2rem;
	    font-family: 'Public Sans';
	    line-height: 1.2;
	    color: var(--template-header);
	}
	.accordion-button::after {
		background-image: unset;
		font-family: "Font Awesome 6 Pro";
		content: "\f107";
	}
	
	.accordion-button:not(.collapsed)::after {
		background-image: unset;
	}
	
	.faq-inner-wrapper-one .accordion-item:last-of-type {
		margin-bottom: 0;
	}
	
	.tab-content b {
		font-family: 'Public Sans';
	    /*font-size: 16px;*/
    	font-size: 1.6rem;
	    color: black;
		margin-bottom: 10px;
	}
	
	.single {
		margin-bottom: 20px !important;
	}
	.tab-content p, .accordion p {
	    font-family: 'Public Sans';
	    /*font-size: 16px;*/
    	font-size: 1.6rem;
	    color: black;
	    margin-bottom: 20px;
	}
	
	.mb--40 {
		margin-bottom: 40px;
	}
	.mt--40 {
		margin-top: 40px;
	}
	.pb--40 {
		padding-bottom: 40px;
	}
	.pt--40 {
		padding-top: 40px;
	}
	
	.service-main-wrapper-tabs {
		border-radius: 0;
	}
	
	.faq-inner-wrapper-one .accordion-item {
	    border-radius: 0;
	}
	.service-main-wrapper-tabs {
		background: inherit;
	}
	.service-main-wrapper-tabs .nav {
		background: inherit;
		border-bottom: 1px solid var(--bg-body-color);
	}

/* end tab and accordion sections */

/* custom table with table scroll */

	.custom-table-inner-lines {
	  border: none !important; /* remove outer border */
	}
	
	/* Header cells */
	.custom-table-inner-lines th {
	  border-left: 1px solid var(--color-primary) !important;
	  border-right: 1px solid var(--color-primary) !important;
	  font-weight: bold;
	  text-transform: unset;
	}
	
	/* Table body cells */
	.custom-table-inner-lines tr td {
	  border: 1px solid var(--color-primary) !important; /* inner borders */
	}
	
	/* Header edge cleanup */
	.custom-table-inner-lines thead th:first-child {
	  border-left: none !important;
	}
	.custom-table-inner-lines thead th:last-child {
	  border-right: none !important;
	}
	
	/* Body edge cleanup */
	.custom-table-inner-lines td:first-child {
	  border-left: none !important;
	}
	.custom-table-inner-lines td:last-child {
	  border-right: none !important;
	}
	
	/* Remove bottom border on the last row */
	.custom-table-inner-lines tbody tr:last-child td {
	  border-bottom: none !important;
	}
	
	/* --- Sticky header --- */
	.table-sticky-head thead, .table-sticky-head tr:first-child {
		background-color: inherit; 
	}
	
	.table-sticky-head thead th {
	  position: sticky;
	  top: 0;                      /* stick to top of scroll area */
	  z-index: 3;                  /* above body cells */
	  background-color: inherit;   /* keeps your .table-primary background */
	  /* keep the darker underline from earlier */
	  border-bottom: 2px solid #212529 !important;
	  /* optional: subtle shadow for separation while scrolling */
	  box-shadow: 0 1px 0 0 #212529;
	}
	
	.bg-color-white {
		background-color: #fff;   /* keeps your .table-primary background */
	}	
	
	/* Optional: keep first column left-aligned for readability */
	.custom-table-inner-lines th:first-child,
	.custom-table-inner-lines td:first-child {
	  text-align: left;
	}
	
	.table-scroll {
	  max-height: 50vh;           /* adjust to taste */
	  overflow-y: auto;
	}
	
	/* For Chrome, Edge, and Safari */
	.table-scroll::-webkit-scrollbar, .element-scroll::-webkit-scrollbar {
	  width: 8px;              /* thin scrollbar */
	  height: 8px;             /* thin horizontal scrollbar if needed */
	}
	
	.table-scroll::-webkit-scrollbar-track, .element-scroll::-webkit-scrollbar-track {
	  background: #f8f9fa;     /* light neutral background */
	  border-radius: 4px;
	}
	
	.table-scroll::-webkit-scrollbar-thumb, .element-scroll::-webkit-scrollbar-thumb {
	  background-color: var(--color-primary); /* your brand orange */
	  border-radius: 4px;
	  border: 1px solid #f8f9fa; /* gives a little inset definition */
	}
	
	.table-scroll::-webkit-scrollbar-thumb:hover, .element-scroll::-webkit-scrollbar-thumb:hover {
	  background-color: var(--template-header); /* darker orange on hover */
	}
	
	/* For Firefox */
	.table-scroll, .element-scroll {
	  scrollbar-width: thin;               /* thin scrollbar */
	  scrollbar-color: var(--color-primary) #f8f9fa;   /* thumb color | track color */
	}

/* end custom table */

	.limited-thumbnail {
	    height: 100%;
	    width: 100%;
	    overflow: hidden;
	    max-height: 440px;
	}
	@media screen and (max-width: 991.5px) {
      .limited-thumbnail {
      	max-height: unset;
      }
    }
	
	.limited-thumbnail img {
	    width: 100%;
		height: 100%;
	    object-fit: cover;
	    object-position: center center;   /* <-- THIS centers the crop */
	}
	
	@media (min-width: 768px) and (max-width: 991.5px) {
	    .cta-wrapper-inner-p-l {
	        padding-left: 3rem !important;
	    }
	}
	
	@media (min-width: 992px) {
	    .cta-wrapper-inner-p-l {
    	    padding-left: 6rem !important;
    	}
	}
	
	.nice-select, .nice-select .list {
		width: 100% !important;
	}
	.nice-select .list {
		max-height: 300px;
		overflow-y: auto;
	}
	.nice-select .list::-webkit-scrollbar {
	  width: 8px;              /* thin scrollbar */
	  height: 8px;             /* thin horizontal scrollbar if needed */
	}
	.nice-select .list::-webkit-scrollbar-track {
	  background: #f8f9fa;     /* light neutral background */
	  border-radius: 4px;
	}
	.nice-select .list::-webkit-scrollbar-thumb {
	  background-color: var(--color-primary); /* your brand primary */
	  border-radius: 4px;
	  border: 1px solid #f8f9fa; /* gives a little inset definition */
	}
	.nice-select .list::-webkit-scrollbar-thumb:hover {
	  background-color: var(--color-titles); 
	}
	/* For Firefox */
	.nice-select .list {
	  scrollbar-width: thin;               /* thin scrollbar */
	  scrollbar-color: var(--color-primary) #f8f9fa;   /* thumb color | track color */
	}
	
	.form-custom {
		height: 50px !important;
	    background: transparent;
	    border-radius: 0 !important;
	    font-size: 1.6rem;
	}
	
	.form-custom-textarea {
	    background: transparent;
	    border-radius: 0 !important;
	    font-size: 1.6rem;
	}
	
	.select2-container {
	    /* Target the main container and force 100% width */
	    width: 100% !important; 
	}
	
	/* 1. Target the main Select2 container */
	.form-custom + .select2-container {
	    /* Set height to 100% to match the height of its parent .select class or container */
	    height: 50px !important; 
	}
	
	/* 2. Target the rendered input field inside the Select2 container */
	.form-custom + .select2-container .select2-selection--single {
	    /* Set the height of the visible input box/selection area */
	    height: 50px;
	    /* Ensure the text is centered vertically if the height is large */
	    display: flex;
	    align-items: center;
	}
	
	/* 3. Target the arrow/dropdown indicator to vertically center it */
	.form-custom + .select2-container .select2-selection__arrow {
	    /* Set height to 100% to fill the selection area */
	    height: 50px !important;
	}
	
	.select2-container--default .select2-selection--single {
	    border-radius: 0 !important;
	}
	
	/* Removes border radius from the main selection box (multi-select) */
	.select2-container--default .select2-selection--multiple {
	    border-radius: 0 !important;
	}
	
	/* Removes border radius from the dropdown menu container */
	.select2-dropdown {
	    border-radius: 0 !important;
	}
	
	/* Optionally: Also remove border radius from the Search Input inside the dropdown */
	.select2-search--dropdown .select2-search__field {
	    border-radius: 0 !important;
	}
	
	/* 1. Scrollbar Width/Height */
	.select2-results__options::-webkit-scrollbar {
		width: 8px; /* thin scrollbar */
		height: 8px; /* thin horizontal scrollbar if needed */
	}
	
	/* 2. Scrollbar Track */
	.select2-results__options::-webkit-scrollbar-track {
		background: #f8f9fa; /* light neutral background */
		border-radius: 4px;
	}
	
	/* 3. Scrollbar Thumb (the draggable part) */
	.select2-results__options::-webkit-scrollbar-thumb {
		background-color: var(--color-primary); /* your brand primary */
		border-radius: 4px;
		border: 1px solid #f8f9fa; /* gives a little inset definition */
	}
	
	/* 4. Scrollbar Thumb Hover State */
	.select2-results__options::-webkit-scrollbar-thumb:hover {
		background-color: var(--color-titles);
	}
	
	.border-primary {
		border: 1px solid var(--color-primary) !important;
	}
	
	.swiper-recent-project-5-wrapper .single-case-studies-5 .inner {
	    top: 0;
	    bottom: unset;
	}
	
	.swiper-recent-project-5-wrapper .single-case-studies-5 .inner .check-list ul > li::before, 
	.swiper-recent-project-5-wrapper .single-case-studies-5 .inner .check-list content ul > li::before {
	    color: white;
	}
	
	@media only screen and (max-width: 575px) {
	    .swiper-recent-project-5-wrapper .single-case-studies-5 .inner .active-text-area {
	        background: #293b6c;
	    }
	    .swiper-recent-project-5-wrapper .single-case-studies-5 .inner::after {
	        background: #293b6c;
	    }
	}
	
	.card .line-separator {
	    border-bottom: 1px solid rgba(0, 0, 0, .125);
	}
	.card .card-body-p {
	    padding: 1.5rem;
	}
	.card .card-body-p:has(+ .card-separator) {
	    padding-bottom: 0;
	}
	.card .card-body-p:last-child {
	    padding-top: 0;
	}
	@media (min-width: 992px) {
	    .pe--4 {
    	    padding-right: 2rem;
    	}
	}