@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');


.container-fluid {
    max-width: 1364px;
}

.container-fluid-max {
    width: 100%
}

/* Reset default margin and padding */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Global Styles */
body {
    /* font-family: Arial, Helvetica, sans-serif; */
    font-family: "Roboto", "Lato", "Poppins", sans-serif;
    font-size: 16px;
    background-color: #fff;
    color: #666666;
}

header, main, services-list, footer{
    /* border-bottom: 1px solid #ccc; */
    min-height: 50px;
    /* margin-bottom: 20px; */
    display: block;
}

/* Header Styles */
header{
    box-shadow: 0 1px 13px #00000011;
    height: 185px;
    margin-bottom: -34px;
    background-image: url('../images/header-wave-bg.webp');
    background-repeat: no-repeat;
    background-size: auto;
    background-position: top center;
}

header .links, header .special-links{
    list-style: none;
    font-size: 15px;
    display: inline-flex;
    flex-direction: row-reverse;
    color: #666666;
    padding-left: 0;
    margin-bottom: 0;
    gap: 20px
}

header .links a, header .special-links a{
    color: #666666;
}

header .special-links, header .call-now{
    float: right;
}

header .top{
    border-bottom: 1px solid #CCC;
    padding-top: 5px;
    padding-bottom: 5px;
}

header .bottom {
    margin-top: 10px;
}

header .bottom .logo{
    width: 240px;
    height: 110px;
    background-image: url('../images/kaskim-logo.webp');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left;
}

header .icon-faq{
    background-image: url('../images/icon-faq.webp');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    height: 17px;
    width: 22px;
    display: inline-block;
    margin-bottom: -3px;
}

header .icon-webmail{
    background-image: url('../images/icon-webmail.webp');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    height: 17px;
    width: 20px;
    display: inline-block;
    margin-bottom: -3px;
}

header .call-now{
    display: flex;
    gap: 10px;
    margin-top: 20px;
}

.call-now .icon-call-now{
    background-image: url('../images/icon-call-now.webp');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
}

.call-now .icon{
    display: inline-block;
    width: 45px;
    height: 45px;
    margin-top: 6px;
}

.call-now .info .tel{
    font-size: 23px;
    font-weight: bold;
    color: #000;
}

.call-now .info .cap{
    font-size: 14px;
    color: #999999;
}

/* Menu Style */
menu main{
    display: block;
    min-height: 30px;
    height: 40px;
    border-radius: 0 10px 0 10px;
    -webkit-border-radius: 0 10px 0 10px;
    -moz-border-radius: 0 10px 0 10px;
    -ms-border-radius: 0 10px 0 10px;
    -o-border-radius: 0 10px 0 10px;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(231,231,231,1) 100%);
    border: 1px solid #ccc;
    margin-top: 15px;
    margin-bottom: 15px;
    /* overflow: hidden; */
}

header menu main #site-navigation li a {
    background: none;
    color: #999 !important;
    font-size: 1em;
}

header menu main #site-navigation {
    margin-top: 7px;
}

.green-btn {
    background-color: #329f97;
    border-radius: 0 11px 0 0;
    /* margin-top: -1px; */
    margin-right: -1px;
    -webkit-border-radius: 0 11px 0 0;
    -moz-border-radius: 0 11px 0 0;
    -ms-border-radius: 0 11px 0 0;
    -o-border-radius: 0 11px 0 0;
}

/* Service Style */
services-list {
    background-color: #31A59D;
    min-height: 600px;
    padding-top: 35px;
    padding-bottom: 35px;
    background-image: url('../images/services/services-bg-3.svg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

#services.body-content .title::after{
    display: none!important;
}

#services.body-content .title span{
    color: #fff;
}

#services.body-content .sub-title {
    color: #fff;
}

#services.body-content .services-list {
    display: grid;
    justify-content: space-between;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto auto;
    row-gap: 35px;
    column-gap: 35px;
}

#services.body-content .services-list .services-item {
    background-color: #fff;
    padding: 16px;
    min-width: 215px;
    height: 211px;
    border-radius: 0 15px 0 15px;
    -webkit-border-radius: 0 15px 0 15px;
    -moz-border-radius: 0 15px 0 15px;
    -ms-border-radius: 0 15px 0 15px;
    -o-border-radius: 0 15px 0 15px;
    box-shadow: 0px 0px 9px 0px rgba(0, 0, 0, 0.14);
}

#services.body-content .services-list .services-item:hover{
    background-color: #e7f7f7;
}

#services.body-content .services-list .services-item .icon {
    text-align: center;
}
#services.body-content .services-list .services-item .icon img {
    height: 98px;
    width: auto;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
}
#services.body-content .services-list .services-item .title {
    text-align: center;
    font-size: 18px;
    font-weight: normal;
    color: #666666;
}

#services.body-content .content{
    margin-top: 40px;
    margin-bottom: 40px;
}

/* Banners Styles */
.banners{
    min-height: 410px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    background-color: #ccc;
    box-shadow: 1px 0px 9px 0px rgba(0, 0, 0, 0.14);
    margin-top: 25px;
    overflow: hidden;
}

.banners-mini{
    min-height: 180px;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -ms-border-radius: 10px;
    -o-border-radius: 10px;
    background-color: #fff;
    box-shadow: 1px 0px 9px 0px rgba(0, 0, 0, 0.14);
    margin-top: 25px;
    overflow: hidden;
}

.swiper {
    width: 100%;
    height: 100%;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #f1f0f0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide img {
    /* display: block; */
    width: 100%;
    height: 411px; /*100%*/
    object-fit: cover;
}

.autoplay-progress {
    position: absolute;
    right: 16px;
    bottom: 16px;
    z-index: 10;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    color: var(--swiper-theme-color);
}

.autoplay-progress svg {
    --progress: 0;
    position: absolute;
    left: 0;
    top: 0px;
    z-index: 10;
    width: 100%;
    height: 100%;
    stroke-width: 4px;
    stroke: var(--swiper-theme-color);
    fill: none;
    stroke-dashoffset: calc(125.6px * (1 - var(--progress)));
    stroke-dasharray: 125.6;
    transform: rotate(-90deg);
}

.slide-text-container {
    position: absolute;
    bottom: 20px;
    /*left: 20px;
    */background-color: #00000056;
    color: #fff;
    padding: 10px 20px;
    border-radius: 15px;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    -ms-border-radius: 15px;
    -o-border-radius: 15px;
    max-width: 830px;
    width: 100%;
}
.slide-text-container .title {
    font-size: 34px;
    font-weight: bold;
    text-align: center;
}
.slide-text-container .text {
    font-size: 20px;
    text-align: center;
}

/* Main Section Styles */
main .body-content{
    min-height: 100px;
    display: block;
    padding-top: 35px;
    padding-bottom: 0;
}

.body-content .title {
    font-size: 26px;
    font-weight: bold;
    display: inline-block;
    line-height: normal;
    color: #333;
    margin-bottom: 10px;
}

.body-content .title2{
    font-size: 26px;
    color: #666666;
    font-weight: bold;
}

.body-content .title2.grey{
    color: #666666;
}

.body-content .title2.green{
    color: #31A59D;
}

.body-content .title::after{
    content:"";
    border-bottom: 3px solid #2c9692;
    width:75px;
    height: 2px;
    display: block;
    position:relative;
    margin-top: 10px;
    margin-bottom: 10px;
}

.body-content .title span{
    color: #2C9692;
}

.body-content .sub-title {
    font-size: 19px;
    line-height: normal;
    color: #333;
}


.body-content p{
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.pic {
    float: left;
    width: 280px;
    height: 435px;
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: contain;
    margin-left: 30px;
    margin-right: 30px;
    /* border:  1px solid #ccc; */
}

/* Clients Section Styles */
#clients{
    min-height: 100px;
    padding: 40px 0;
    margin-top: 20px;
}

#clients.body-content .title::after{
    display: none!important;
}

.client-item img {
    height: 135px;
}

.clients-list{
    margin-top: 40px;
}

/* Partner Section Styles */
#portfolio{
    min-height: 100px;
}

#portfolio.body-content .title::after{
    display: none!important;
}

#portfolio.body-content .title,
#portfolio.body-content .sub-title,
#services.body-content .title,
#services.body-content .sub-title,
#clients.body-content .title,
#clients.body-content .sub-title{
    text-align: center;
    display: block;
}

.portfolio-item.current{
    width: 514px;
}

.portfolio-item:hover,
.portfolio-item.current {
    box-shadow: 0 1px 10px #0000000f;
}
.portfolio-item {
    display: flex;
    flex-direction: column;
    width: 298px;
    border: 1px solid #E6E6E6;
    border-radius: 9px;
    -webkit-border-radius: 9px;
    -moz-border-radius: 9px;
    -ms-border-radius: 9px;
    -o-border-radius: 9px;
    overflow: hidden;
}

.portfolio-item .thumbnail{
    height: 305px;
    background-color: #ccc;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.portfolio-item .info {
    height: 76px;
    padding: 15px 30px;
}

.portfolio-item:hover .info .title{
    color: #329E97;
}

.portfolio-item .info .title{
    font-size: 19px;
    font-weight: normal;
    text-align: left!important;
}

.portfolio-list{
    margin-top: 40px;
}

.portfolio-list .slick-arrow {
    top: 160px;
    /* left: 40px */
    position: absolute;
}

.portfolio-list .slick-prev-btn {
    left: 0;
    z-index: 1; /* Ensure arrows are above the carousel */
    background-color: #329E97;
    color: #fff;
    position: absolute;
    border-radius: 25px 5px 5px 25px;
    display: none;
}

.portfolio-list .slick-next-btn {
    /* right: auto !important; */
    /* left: 50px; */
    right: 0;
    z-index: 1; /* Ensure arrows are above the carousel */
    background-color: #329E97;
    color: #fff;
    position: absolute;
    border-radius:  5px 25px 25px  5px;
}

/* Custom CSS for arrow positioning and appearance */
.portfolio-list .slick-prev-btn,
.portfolio-list .slick-next-btn {
    display: none!important; /* Initially hide the arrows */
    transition: transform 0.3s ease-in-out; 
    /* Add transition for smooth animation */
}
.portfolio-list .slick-prev-btn,
.portfolio-list .slick-next-btn {
    display: none!important; /* Initially hide the arrows */
    width: 44px;
    height: 42px;
    background-color: #329E97; /* Change to desired background color */
    color: #fff; /* Change to desired text color */
    padding: 0 13px;
    font-size: 33px;
    /* transition: transform 0.3s ease-in-out;  */
    /* Add transition for smooth animation */
}

/* Show arrows on hover */
.portfolio-list:hover .slick-prev-btn,
.portfolio-list:hover .slick-next-btn {
    display: block!important;
    /* transform: translateX(0);  */
    /* Slide in animation */
    background-color: #329E97; /* Change to desired background color on hover */
}

/* Hide arrows with slide-out animation */
.portfolio-list .slick-prev-btn,
.portfolio-list .slick-next-btn {
    /* transform: translateX(-100%);  */
    /* Initial position for slide-out animation */
}

.portfolio-list:not(:hover) .slick-prev-btn,
.portfolio-list:not(:hover) .slick-next-btn {
    display: block;
    /* transform: translateX(-100%);  */
    /* Slide out animation */
}

/* Footer Styles */

footer .social-media {
    width: 27px;
    margin: 7px;
}

footer .social-links {
    width: 40px;
    height: 40px;
    display: inline-block;
    background-color: #fff;
    border-radius: 20px;
    margin-right: 9px;
    margin-bottom: 15px;
}

footer {
    background-color: #656565;
    background-image: url('../images/footer-top-bg.webp');
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 100% 121px;
}

footer .world-map{
    background-image: url('../images/footer-world-map.webp');
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
}

footer p {
    color: #fff;
}
footer .footer-main {
    min-height: 370px;
    padding-top: 125px;
    padding-bottom: 30px;
}

footer .footer-main .title {
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 18px;
}

footer .footer-main ul {
    padding-left: 0;
}

footer .footer-main .logo{
    margin-top: 30px;
}

footer .disclaimer{
    border-top: 1px solid #fff;
    color: #fff;
    padding-top: 15px;
}

footer .disclaimer ul{
    list-style: none;
    font-size: 15px;
    display: inline-flex;
    flex-direction: row-reverse;
    gap: 10px;
    color: #666666;
    float: right;
}

footer .disclaimer a, footer .disclaimer li{
    color: #fff;
}

    /* ---------- Footer Section ---------- */

    

    .white-bg{
        background-color: #fff;
    }

    /* Links */
    a {
        color: #fff;
        text-decoration: none;
    }

    a:hover {
        text-decoration: underline;
    }

    /* Blink for Webkit and others
    (Chrome, Safari, Firefox, IE, ...)
    */

    /*@-webkit-keyframes blinker {
    from {opacity: 1.0;}
    to {opacity: 0.0;}
    }
    .blink{
        text-decoration: blink;
        -webkit-animation-name: blinker;
        -webkit-animation-duration: 0.6s;
        -webkit-animation-iteration-count:infinite;
        -webkit-animation-timing-function:ease-in-out;
        -webkit-animation-direction: alternate;
    }*/

    .blinking {
        animation: blinkingText 0.8s infinite;
        background-color: red;
        border-radius: 10px;
        padding-left: 8px;
        padding-right: 8px;
        font-size: 12px;
        margin-left: 8px;
        float: right;
        padding: 4px 10px;
    }

    .new-flag {
        display: inline-block;
        background-color: rgb(243, 10, 11);
        font-size: 0.73em;
        color: #fff;
        position: absolute;
        /* width: 50px; */
        height: 22px;
        padding: 3px 13px;
        border-radius: 17px;
        margin-top: 21px;
        margin-left: 26px; 
    }

    .bg-size-contain{
        background-size: contain!important;
    }

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

    @keyframes blinkingText {
        0% {
            color: #fff;
        }

        29% {
            color: #e6bc0a;
        }

        50% {
            color: #07ef10;
        }

        69% {
            color: transparent;
        }

        80% {
            color: #000;
        }

        99% {
            color: #e6bc0a;
        }

        100% {
            color: #3107ef;
        }
    }