/**
  * Name: Raxena
  * Version: 1.0
  * Author: CymolThemes
  * Author URI: https://www.cymolthemes.com
*/

@import url(https://fonts.googleapis.com/css?family=Josefin+Sans:400,400i,600,600i,700,700i&amp;display=swap);
@import url(https://fonts.googleapis.com/css?family=Poppins:200,200i,300,300i,400,400i,500,500i,600,600i,700,700i);
@import url(https://fonts.googleapis.com/css?family=Nunito+Sans:400,400i,600,600i,700&amp;display=swap);

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}

a:focus {
    text-decoration: none
}

a:focus,
a:hover {
    color: #ff5e14;
    text-decoration: none
}

a,
button,
input {
    outline: medium none;
    color: #ff5e14
}

ol,
ul {
    padding: 0;
    margin: 0;
    list-style: none
}

strong {
    font-weight: 700
}

iframe {
    width: 100%;
    border: none;
    display: block
}

p {
    margin: 0 0 15px;
    color: black;
}

::-moz-selection {
    background: #ff5e14;
    color: #fff;
    text-shadow: none
}

::-moz-selection {
    background: #ff5e14;
    color: #fff;
    text-shadow: none
}

::selection {
    background: #ff5e14;
    color: #fff;
    text-shadow: none
}

.uneditable-input,
input[type=color],
input[type=date],
input[type=datetime-local],
input[type=datetime],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week],
select,
textarea {
    font-family: inherit;
    -webkit-transition: border linear .2s, box-shadow linear .2s;
    -moz-transition: border linear .2s, box-shadow linear .2s;
    -o-transition: border linear .2s, box-shadow linear .2s;
    transition: border linear .2s, box-shadow linear .2s;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 0;
    vertical-align: middle;
    width: 100%;
    color: #666;
    padding: 12px 15px;
    font-weight: 400;
    background-color: #fff;
    text-transform: inherit;
    border: 1px solid #f2f2f2;
    font-size: 14px;
    outline: 0;
    line-height: inherit;
    height: auto
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
    display: inline-block;
    text-decoration: none;
    font-size: 13px;
    line-height: 21px;
    font-weight: 500;
    padding: 11px 40px 11px;
    border: 2px solid transparent;
    border-radius: 0;
    color: #fff;
    -webkit-transition: all .25s ease;
    transition: all .25s ease;
    cursor: pointer;
    outline: 0 !important;
    -webkit-font-smoothing: antialiased
}

input[type=color]:focus,
input[type=date]:focus,
input[type=datetime-local]:focus,
input[type=datetime]:focus,
input[type=email]:focus,
input[type=month]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=time]:focus,
input[type=url]:focus,
input[type=week]:focus,
textarea:focus {
    border: 1px solid #fda02b;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none
}

input:-moz-placeholder,
input:-ms-input-placeholder,
input::-moz-placeholder,
input::-ms-input-placeholder,
input::-webkit-input-placeholde,
textarea:-moz-placeholder,
textarea::-moz-placeholder,
textarea::-webkit-input-placeholder {
    color: #fff
}

menu,
ol,
ul {
    margin: 16px 0;
    padding: 0 0 0 25px
}

body {
    font-family: Poppins, sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 24px;
    color: #666;
    background-color: #fff;
    letter-spacing: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Josefin Sans', sans-serif;
    margin-bottom: 15px;
    font-weight: 700;
    color: #081528
}

h1 {
    font-size: 45px;
    line-height: 50px;
    text-transform: uppercase
}

h2 {
    font-size: 35px;
    line-height: 40px
}

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

h4 {
    font-size: 26px;
    line-height: 30px
}

h5 {
    font-size: 20px;
    line-height: 25px
}

h6 {
    font-size: 16px;
    line-height: 18px
}

#totop,
.cmt-box-post-date,
.cmt-btn,
.featured-icon,
.featured-icon-box,
.featured-icon-box .featured-icon,
.featured-imagebox-portfolio .cmt-box-view-overlay:before,
.featured-imagebox-portfolio .featured-content,
.featured-imagebox-services .cmt-box-view-overlay:before,
.featured-imagebox-services img,
.featured-imagebox-services:hover .services-icon-box,
.owl-item,
.portfolio-filter button,
.portfolio-item a.popup,
.post,
.post .post-desc,
.price-table,
.price-table:hover .price-value,
.product-btn,
.product-item:hover,
.product-overlay,
.team-description,
.team-member,
.team-social,
.team-title,
.testimonial .testimonial-content::after,
.testimonial .testimonial-content::before,
.testimonial-content,
.testimonials,
button,
img,
span {
    -webkit-transition: all .5s ease-in-out 0s;
    -moz-transition: all .5s ease-in-out 0s;
    -ms-transition: all .5s ease-in-out 0s;
    -o-transition: all .5s ease-in-out 0s;
    transition: all .5s ease-in-out 0s
}

#site-header-menu #site-navigation .menu ul li>a,
.accordion .toggle-title a,
.breadcrumb-wrapper span a,
.cmt-header-style-03 .cmt-custombutton a,
.cmt-menu-toggle .toggle-block,
.featured-icon-box.style11 .cmt-icon i,
.featured-icon-box.style11 .featured-desc p,
.featured-icon-box.style11 .featured-title h5,
.featured-imagebox-team .cmt-box-view-overlay:before,
.section-title.with-desc .title-header:after,
.section-title.with-desc .title-header:before,
.social-icons li>a,
a,
a.cmt-btn,
a.nav-link,
i.cmt-btn {
    -webkit-transition: all .3s ease-in-out 0s;
    -moz-transition: all .3s ease-in-out 0s;
    -ms-transition: all .3s ease-in-out 0s;
    -o-transition: all .3s ease-in-out 0s;
    transition: all .3s ease-in-out 0s
}

a.tp-caption:hover {
    -webkit-transition: all .3s ease-in-out 0s !important;
    -moz-transition: all .3s ease-in-out 0s !important;
    -ms-transition: all .3s ease-in-out 0s !important;
    -o-transition: all .3s ease-in-out 0s !important;
    transition: all .3s ease-in-out 0s !important
}

.cart-info a i,
.cmt-btn span,
.cmt-header-icon.cmt-header-cart-link .navbar-form span,
.nav-link span,
ul.products li.product .cmt-shop-icon a i {
    -webkit-transition: all 0s ease-in-out 0s;
    -moz-transition: all 0s ease-in-out 0s;
    -ms-transition: all 0s ease-in-out 0s;
    -o-transition: all 0s ease-in-out 0s;
    transition: all 0s ease-in-out 0s
}

.box-shadow {
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .07);
    -moz-box-shadow: 0 0 10px 0 rgba(0, 0, 0, .07);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .07)
}

.box-shadow2 {
    -webkit-box-shadow: 0 0 25px 0 rgba(41, 61, 88, .06);
    -moz-box-shadow: 0 0 25px 0 rgba(41, 61, 88, .06);
    box-shadow: 0 0 25px 0 rgba(41, 61, 88, .06)
}

body .page {
    overflow: hidden;
    position: relative;
    z-index: 10
}

body.cmt-boxed .page {
    background: #fff;
    max-width: 1170px;
    width: 100%;
    margin: 0px auto;
    -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.3);
    -webkit-transition: all 0s;
    -moz-transition: all .9s ease;
    transition: all .9s ease;
}

body .site-main {
    background-color: #fff;
    position: relative;
    z-index: 9
}

body .page.sidebar-true .site-main {
    padding: 0;
    background-color: #fff
}

.container-fluid {
    padding: 0 0;
    overflow: hidden
}

.container-fluid {
    padding: 0 15px;
}

.container {
    max-width: 1170px;
    padding: 0 15px;
}

.row:not(.g-0) {
    margin-left: -15px;
    margin-right: -15px;
}

.row:not(.g-0)>[class*='col-'] {
    padding-left: 15px;
    padding-right: 15px;
}

.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px
}

.no-gutters {
    margin-right: 0;
    margin-left: 0
}

.no-gutters>.col,
.no-gutters>[class*=col-] {
    padding-right: 0;
    padding-left: 0
}

.col,
.col-1,
.col-10,
.col-11,
.col-12,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-auto,
.col-lg,
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-auto {
    position: relative;
}

a {
    color: #081528;
    text-decoration: none;
}

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

.ml-auto {
    margin-left: auto;
}

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

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

.alignleft {
    float: left;
    margin: .375em 1.75em 1.75em 0
}

.width-100 {
    width: 100%
}

.font-sz-12 {
    font-size: 12px
}

.font-sz-13 {
    font-size: 13px
}

.font-sz-22 {
    font-size: 22px
}

.font-sz-27 {
    font-size: 27px
}

.font-w-500 {
    font-weight: 500
}

.z-0 {
    z-index: 0 !important
}

.z-1 {
    z-index: 1 !important
}

.cmt-col-bgimage-yes.with-border {
    border-right: 10px solid
}

.cmt_single_image-wrapper.with-border {
    border: 12px solid
}

.with-top-border {
    border-top: 12px solid
}

.with-border.border-top-none {
    border-top: 0 solid transparent
}

.with10-border {
    border: 10px solid transparent
}

.with7-border {
    border: 7px solid transparent
}

.cmt_single_image-wrapper {
    position: relative
}

.cmt_single_image-wrapper.border-style1 {
    margin-left: 65px;
    margin-right: 40px
}

.cmt_single_image-wrapper.border-style1>img,
.cmt_single_image-wrapper.border-style2>img {
    border: 10px solid #fff
}

.cmt_single_image-wrapper.border-style1:after {
    content: '';
    position: absolute;
    height: 100%;
    width: 100%;
    top: 40px;
    left: 40px;
    border: 5px solid #000;
    z-index: -1
}

.cmt_single_image-wrapper.border-style2:after {
    content: '';
    position: absolute;
    height: 83%;
    width: 100%;
    bottom: -40px;
    left: -40px;
    z-index: -1
}

.cmt_single_image-wrapper.border-style2 {
    margin-left: 40px;
    margin-right: 60px
}

.cmt_single_image-wrapper.border-style3:after {
    content: '';
    position: absolute;
    height: 100%;
    width: 90%;
    top: 0;
    left: 0;
    border: 15px solid #000;
    z-index: -1;
    margin-right: -40px
}

.cmt_single_image-wrapper.border-style3 img {
    margin-top: 40px;
    margin-bottom: 40px;
    padding-left: 40px
}

.about-overlay-shape.style1 {
    border-radius: 0;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 20px;
    padding-bottom: 10px;
    position: absolute;
    left: 25px;
    bottom: -55px;
    z-index: 2
}

.about-overlay-shape.style2 {
    position: absolute;
    top: 90px;
    left: -65px;
    height: 170px;
    width: 170px;
    line-height: 170px;
    text-align: center;
    background-image: url(../images/about-overlay-style2.png);
    border: 4px solid #fff
}

.about-overlay-shape.style3 {
    border-radius: 0;
    padding: 22px 45px;
    position: absolute;
    right: -15px;
    bottom: 75px;
    z-index: 2;
    font-size: 20px;
    line-height: 26px;
    font-weight: 600;
    color: #fff;
}

.about-overlay-shape.style3:after {
    display: block;
    content: "";
    position: absolute;
    top: 100%;
    right: 0;
    width: 0;
    height: 0;
    border-top: 35px solid;
    border-right: 30px solid transparent;
}

.pattern.style1 {
    position: absolute;
    bottom: -100px;
    left: -65px;
    z-index: -1
}

.about-overlay-shape.style2 i {
    font-size: 50px;
    color: #fff
}

.border-bottom-10 {
    border-bottom: 10px solid;
}

.spacing-1 {
    padding-top: 60px;
    padding-right: 60px;
    padding-bottom: 60px
}

.spacing-3 {
    padding: 70px 40px 50px 40px
}

.spacing-4 {
    padding: 40px 40px 20px;
    margin-top: 110px;
    margin-bottom: -110px
}

.spacing-5 {
    padding: 70px 150px 55px 50px
}

.spacing-6 {
    padding: 70px 0 70px 0
}

.spacing-7 {
    padding: 65px 65px 70px 0
}

.spacing-8 {
    margin-top: -60px;
    margin-left: -100px
}

.spacing-9 {
    padding: 90px 350px 90px 0
}

.spacing-10 {
    padding: 90px 0 90px 0
}

.spacing-11 {
    padding: 40px 30px 40px 30px;
    margin-left: -300px
}

.spacing-12 {
    padding: 35px 30px 20px
}

.spacing-13 {
    padding: 85px 0px 55px 0;
}

.spacing-14 {
    padding: 35px;
}

.pr-5 {
    padding-right: 5px !important
}

.pr-10 {
    padding-right: 10px !important
}

.pr-15 {
    padding-right: 15px !important
}

.pr-20 {
    padding-right: 20px !important
}

.pr-25 {
    padding-right: 25px !important
}

.pr-30 {
    padding-right: 30px !important
}

.pr-35 {
    padding-right: 35px !important
}

.pr-40 {
    padding-right: 40px !important
}

.pr-45 {
    padding-right: 45px !important
}

.pr-50 {
    padding-right: 50px !important
}

.pr-55 {
    padding-right: 55px !important
}

.pr-60 {
    padding-right: 60px !important
}

.pl-0 {
    padding-left: 0 !important
}

.pl-5 {
    padding-left: 5px !important
}

.pl-10 {
    padding-left: 10px !important
}

.pl-15 {
    padding-left: 15px !important
}

.pl-20 {
    padding-left: 20px !important
}

.pl-25 {
    padding-left: 25px !important
}

.pl-30 {
    padding-left: 30px !important
}

.pl-35 {
    padding-left: 35px !important
}

.pl-40 {
    padding-left: 40px !important
}

.pl-45 {
    padding-left: 45px !important
}

.pl-50 {
    padding-left: 50px !important
}

.pl-55 {
    padding-left: 55px !important
}

.pl-60 {
    padding-left: 60px !important
}

.pl-65 {
    padding-left: 65px !important
}

.pl-70 {
    padding-left: 70px !important
}

.pl-75 {
    padding-left: 75px !important
}

.pl-80 {
    padding-left: 80px !important
}

.pl-85 {
    padding-left: 85px !important
}

.pl-90 {
    padding-left: 90px !important
}

.pt-2 {
    padding-top: 2px !important
}

.pt-12 {
    padding-top: 12px !important
}

.pt-5 {
    padding-top: 5px !important
}

.pt-10 {
    padding-top: 10px !important
}

.pt-15 {
    padding-top: 15px !important
}

.pt-20 {
    padding-top: 20px !important
}

.pt-25 {
    padding-top: 25px !important
}

.pt-30 {
    padding-top: 30px !important
}

.pt-35 {
    padding-top: 30px !important
}

.pt-40 {
    padding-top: 40px !important
}

.pt-45 {
    padding-top: 45px !important
}

.pt-50 {
    padding-top: 50px !important
}

.pt-55 {
    padding-top: 55px !important
}

.pt-60 {
    padding-top: 60px !important
}

.pt-65 {
    padding-top: 65px !important
}

.pt-70 {
    padding-top: 70px !important
}

.pt-75 {
    padding-top: 75px !important
}

.pt-80 {
    padding-top: 80px !important
}

.pt-87 {
    padding-top: 87px !important
}

.pt-90 {
    padding-top: 90px !important
}

.pt-110 {
    padding-top: 110px !important
}

.pb-5 {
    padding-bottom: 5px !important
}

.pb-10 {
    padding-bottom: 10px !important
}

.pb-15 {
    padding-bottom: 15px !important
}

.pb-20 {
    padding-bottom: 20px !important
}

.pb-25 {
    padding-bottom: 25px !important
}

.pb-30 {
    padding-bottom: 30px !important
}

.pb-35 {
    padding-bottom: 35px !important
}

.pb-45 {
    padding-bottom: 45px !important
}

.pb-50 {
    padding-bottom: 50px !important
}

.pb-55 {
    padding-bottom: 55px !important
}

.pb-60 {
    padding-bottom: 60px !important
}

.pb-70 {
    padding-bottom: 70px !important
}

.pb-80 {
    padding-bottom: 80px !important
}

.pb-90 {
    padding-bottom: 90px !important
}

.pb-100 {
    padding-bottom: 100px !important
}

.pb-140 {
    padding-bottom: 140px !important
}

.mt-5 {
    margin-top: 5px !important
}

.mt-10 {
    margin-top: 10px !important
}

.mt-15 {
    margin-top: 15px !important
}

.mt-20 {
    margin-top: 20px !important
}

.mt-25 {
    margin-top: 25px !important
}

.mt-30 {
    margin-top: 30px !important
}

.mt-35 {
    margin-top: 35px !important
}

.mt-40 {
    margin-top: 40px !important
}

.mt-45 {
    margin-top: 45px !important
}

.mt-50 {
    margin-top: 50px !important
}

.mt-60 {
    margin-top: 60px !important
}

.mt-80 {
    margin-top: 80px !important
}

.mt-90 {
    margin-top: 90px !important
}

.mt_5 {
    margin-top: -5px !important
}

.mt_10 {
    margin-top: -10px !important
}

.mt_12 {
    margin-top: -12px !important
}

.mt_15 {
    margin-top: -15px !important
}

.mt_25 {
    margin-top: -25px !important
}

.mt_30 {
    margin-top: -30px !important
}

.mt_40 {
    margin-top: -40px !important
}

.mt_45 {
    margin-top: -45px !important
}

.mt_50 {
    margin-top: -50px !important
}

.mt_60 {
    margin-top: -60px !important
}

.mt_70 {
    margin-top: -70px !important
}

.mt_72 {
    margin-top: -72px !important
}

.mt_80 {
    margin-top: -80px !important
}

.mt_85 {
    margin-top: -85px !important
}

.mt_90 {
    margin-top: -90px !important
}

.mt_200 {
    margin-top: -200px !important
}

.ml-0 {
    margin-left: 0 !important
}

.ml-5 {
    margin-left: 5px !important
}

.ml-15 {
    margin-left: 15px !important
}

.ml-20 {
    margin-left: 20px !important
}

.ml-287 {
    margin-left: 287px !important
}

.mr-15 {
    margin-right: 15px !important
}

.ml_15 {
    margin-left: -15px !important
}

.ml_40 {
    margin-left: -40px !important
}

.ml_60 {
    margin-left: -60px !important
}

.ml_80 {
    margin-left: -80px !important
}

.ml_100 {
    margin-left: -100px !important
}

.ml-2,
.mx-2 {
    margin-left: .5rem !important;
}

.mr-2,
.mx-2 {
    margin-right: .5rem !important;
}

.mr-0 {
    margin-right: 0 !important
}

.mr-20 {
    margin-right: 20px !important
}

.mr-70 {
    margin-right: 70px !important
}

.mr_40 {
    margin-right: -40px
}

.mr_60 {
    margin-right: -60px
}

.mr_80 {
    margin-right: -80px
}

.mr_90 {
    margin-right: -90px
}

.mr_190 {
    margin-right: -190px
}

.mb_1 {
    margin-bottom: -1px !important
}

.mb_45 {
    margin-bottom: -45px !important
}

.mb-4 {
    margin-bottom: 4px !important
}

.mb-5 {
    margin-bottom: 5px !important
}

.mb-10 {
    margin-bottom: 10px !important
}

.mb-15 {
    margin-bottom: 15px !important
}

.mb-25 {
    margin-bottom: 25px !important
}

.mb-20 {
    margin-bottom: 20px !important
}

.mb-30 {
    margin-bottom: 30px !important
}

.mb-35 {
    margin-bottom: 35px !important
}

.mb-40 {
    margin-bottom: 40px !important
}

.mb-45 {
    margin-bottom: 45px !important
}

.mb-50 {
    margin-bottom: 50px !important
}

.mb-55 {
    margin-bottom: 55px !important
}

.mb-70 {
    margin-bottom: 70px !important
}

.mb-90 {
    margin-bottom: 90px !important
}

.mb_70 {
    margin-bottom: -70px !important
}

.mb_185 {
    margin-bottom: -185px !important
}

#site-header-menu #site-navigation .menu ul li>a,
.cmt-bgcolor-skincolor a:hover,
.cmt-bgcolor-white .featured-content .featured-desc a,
.cmt-bgcolor-white .featured-content .featured-desc p,
.cmt-bgcolor-white .featured-content .featured-title h5,
.cmt-bgcolor-white ul.cmt-list li span.cmt-list-li-content,
.cmt-btn.cmt-btn-color-darkgrey,
.cmt-comment-owner,
.cmt-header-style-03 .cmt-rt-contact p,
.cmt-header-style-04 .cmt-header-icons .cmt-header-search-link a,
.cmt-icon_element-color-darkgrey i,
.cmt-team-list-value,
.cmt-testimonial-box-view-style1 .testimonial-caption,
.cmt-textcolor-darkgrey,
.cmt-textcolor-darkgrey h1,
.cmt-textcolor-darkgrey h2,
.cmt-textcolor-darkgrey h3,
.cmt-textcolor-darkgrey h4,
.cmt-textcolor-darkgrey h5,
.cmt-textcolor-darkgrey h6,
.comment-meta .cmt-comment-owner h5,
.contact-box h6 a:hover,
.featured-icon-box.style10 i.cmt-num:before,
.featured-imagebox-portfolio .featured-title h5 a:hover,
.featured-imagebox-team.style2 .social-icons li>a:hover,
.pagination-block .page-numbers,
.portfolio-icon-box a:hover,
.sidebar .widget a,
a.cmt-textcolor-skincolor:hover,
a.tp-caption.dark-text-button,
blockquote cite,
ul.cmt-list li .cmt-list-li-content,
ul.project_info li span {
    color: #081528
}

.cmt-bgcolor-darkgrey,
.cmt-bgcolor-darkgrey>.cmt-bg-layer,
.cmt-bgcolor-darkgrey>.cmt-bg-layer>.cmt-bg-layer-inner,
.cmt-btn-bgcolor-darkgrey,
.cmt-btn-bgcolor-grey:hover,
.cmt-btn-bgcolor-skincolor.cmt-btn:before,
.cmt-btn-bgcolor-skincolor:hover,
.cmt-btn-bgcolor-white:hover,
.cmt-btn-color-darkgrey.cmt-btn:before,
.cmt-btn.cmt-btn-color-darkgrey.cmt-btn-style-border:hover,
.cmt-cart-form button,
.cmt-header-style-01 .cmt-topbar-content .topbar-right:before,
.cmt-header-style-03 .site-navigation:before,
.cmt-icon_element-bgcolor-darkgrey,
.cmt-nextprev-bottom-nav .nav-next a:hover,
.cmt-nextprev-bottom-nav .nav-previous a:hover,
.cmt-processbox-wrapper .cmt-processbox .process-num,
.cmt-tabs.cmt-tab-style-horizontal ul.tabs li a,
.cmt-topbar-content .topbar-right:after,
.cmt-video-play-btn:hover,
.comment-list a.comment-reply-link,
.coupon button,
.dark-flatborder-button:hover,
.featured-icon-box.style4 .cmt-btn.btn-inline:hover:after,
.featured-imagebox-portfolio.style2 .cmt-box-view-overlay:after,
.featured-imagebox-portfolio.style2 .cmt-box-view-overlay:before,
.mailchimp-inputbox button[type=submit],
.newsletter-form input[type=submit],
.place-order button,
.progress-bar-color-bar_darkgrey,
.progress-bar.progress-bar-color-bar_darkgrey:before,
.section-title.with-desc .title-header:before,
.sidebar .widget.widget-newsletter button:hover,
.testimonial-slide2.owl-carousel .owl-item.active.center .testimonial-content,
.tp-cmt-video-play-btn:hover,
.video-overlay.darkgrey,
a.checkout-button {
    background-color: #081528
}

.darkgrey-border,
.cmt-btn.cmt-btn-color-darkgrey.cmt-btn-style-border:hover,
.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-darkgrey,
.tp-cmt-video-play-btn:hover,
aside.widget.widget-newsletter button:hover {
    border-color: #081528 !important
}

#site-header-menu #site-navigation .menu>ul,
#site-header-menu #site-navigation .menu>ul>li>ul,
.cmt-search-overlay {
    border-top-color: #081528 !important
}

#site-header-menu #site-navigation .menu ul li a span,
.accordion .cmt-style-classic.active .toggle-title a,
.cmt-bg-highlight-dark,
.cmt-bg-highlight-skin,
.cmt-bgcolor-darkgrey .cmt-fid.inside h4,
.cmt-bgcolor-skincolor .cmt-fid-view-lefticon .cmt-fid-icon-wrapper i,
.cmt-bgcolor-skincolor .cmt-fid.inside h3,
.cmt-bgcolor-skincolor .cmt-fid.inside h4,
.cmt-bgcolor-skincolor a,
.cmt-box-view-left-image .featured-content .category>a:hover,
.cmt-btn-bgcolor-darkgrey,
.cmt-btn-bgcolor-darkgrey:hover,
.cmt-btn-bgcolor-skincolor,
.cmt-btn-bgcolor-skincolor:hover,
.cmt-btn-bgcolor-white:hover,
.cmt-btn.cmt-btn-bgcolor-grey:hover,
.cmt-btn.cmt-btn-color-skincolor.cmt-btn-bgcolor-skincolor:hover,
.cmt-btn.cmt-btn-color-skincolor.cmt-btn-bgcolor-white:hover,
.cmt-btn.cmt-btn-color-skincolor.cmt-btn-style-border:hover,
.cmt-btn.cmt-btn-color-white.cmt-btn-bgcolor-skincolor:hover,
.cmt-btn.cmt-btn-color-white.cmt-btn-bgcolor-white:hover,
.cmt-btn.cmt-btn-color-grey:hover,
.cmt-cart-form button,
.cmt-header-icons .cmt-header-search-link a,
.cmt-header-style-03 .cmt-custombutton a:hover,
.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-white,
.cmt-testimonial-box-view-style1:hover .cmt-bgcolor-white.testimonial-content:after,
.cmt-textcolor-white,
.cmt-textcolor-white .cmt-fid-icon-wrapper i,
.cmt-textcolor-white .featured-content .featured-title h5 a,
.cmt-textcolor-white a,
.cmt-textcolor-white h1,
.cmt-textcolor-white h2,
.cmt-textcolor-white h3,
.cmt-textcolor-white h4,
.cmt-textcolor-white h5,
.cmt-textcolor-white h6,
.cmt-toggle-title-bgcolor-skincolor .toggle-title a,
.coupon button,
.dark-flatborder-button:hover,
.featured-icon-box.style1 .cmt-icon.cmt-icon_element-border.cmt-icon_element-color-white:hover,
.featured-icon-box.style1:hover .cmt-icon.cmt-icon_element-color-skincolor,
.featured-icon-box.style2 .highlight-box p,
.footer .social-icons li>a:hover,
.pagination-block .page-numbers.current,
.pagination-block .page-numbers:hover,
.place-order button,
.sidebar .widget .tagcloud a:hover,
.sidebar .widget-Categories li span,
.sidebar .widget-area .widget.widget-link .social-icons li>a:hover,
.sidebar .widget_product_categories li span,
.skin-flatborder-button:hover,
a.checkout-button,
a.checkout-button:hover,
a.cmt-btn-bgcolor-darkgrey,
a.cmt-btn-bgcolor-skincolor,
a.cmt-btn-bgcolor-skincolor:hover {
    color: rgba(255, 255, 255, 1)
}

.cmt-bgcolor-darkgrey .featured-icon-box p,
.cmt-bgcolor-darkgrey .section-title .title-desc,
.cmt-bgcolor-darkgrey .timeline .timeline-body p,
.cmt-bgcolor-darkgrey p,
.cmt-bgcolor-darkgrey ul li,
.cmt-bgcolor-darkgrey ul.cmt-list li .cmt-list-li-content,
.cmt-bgcolor-darkgrey>p,
.cmt-bgcolor-skincolor .featured-icon-box p,
.cmt-bgcolor-skincolor .section-title .title-desc,
.cmt-bgcolor-skincolor .timeline .timeline-body p,
.cmt-bgcolor-skincolor p,
.cmt-bgcolor-skincolor ul li,
.cmt-bgcolor-skincolor ul.cmt-list li .cmt-list-li-content,
.cmt-bgcolor-skincolor ul.top-contact li a:hover,
.cmt-bgcolor-skincolor.cmt-topbar-wrapper ul.social-icons li>a:hover,
.cmt-bgcolor-skincolor>p,
.cmt-textcolor-white .text-opecity,
.cmt-textcolor-white blockquote,
.cmt-textcolor-white.text-opecity {
    color: rgba(255, 255, 255, .8)
}

.banner-img-box .featured-content .cmt-btn,
.banner-img-box .featured-content .cmt-btn:hover,
.banner-img-box .featured-content .featured-desc p,
.banner-img-box .featured-content .featured-title h5,
.cmt-bgcolor-darkgrey .cmt-progress-bar .progress-bar-percent,
.cmt-bgcolor-darkgrey .cmt-progress-bar .progress-parcent,
.cmt-bgcolor-darkgrey .cmt-progress-bar .progressbar-title,
.cmt-bgcolor-darkgrey .cmt-progress-bar h4,
.cmt-bgcolor-darkgrey .cmt-testimonial-box-view-style1 .testimonial-caption h5,
.cmt-bgcolor-darkgrey .cmt-testimonial-box-view-style1 .testimonial-caption label,
.cmt-bgcolor-darkgrey .featured-icon-box .featured-icon.cmt-icon_element-border,
.cmt-bgcolor-darkgrey .featured-title h5,
.cmt-bgcolor-darkgrey .inside h3,
.cmt-bgcolor-darkgrey .section-title h2.title,
.cmt-bgcolor-skincolor .cmt-fid-icon-wrapper i,
.cmt-bgcolor-skincolor .cmt-fid-view-righticon .cmt-fid-icon-wrapper,
.cmt-bgcolor-skincolor .cmt-fid.inside h4,
.cmt-bgcolor-skincolor .cmt-progress-bar .progress-bar-percent,
.cmt-bgcolor-skincolor .cmt-progress-bar .progress-parcent,
.cmt-bgcolor-skincolor .cmt-progress-bar .progressbar-title,
.cmt-bgcolor-skincolor .cmt-progress-bar h4,
.cmt-bgcolor-skincolor .cmt-testimonial-box-view-style1 .testimonial-caption h5,
.cmt-bgcolor-skincolor .cmt-testimonial-box-view-style1 .testimonial-caption label,
.cmt-bgcolor-skincolor .fa-star:before,
.cmt-bgcolor-skincolor .featured-icon-box .featured-icon.cmt-icon_element-border,
.cmt-bgcolor-skincolor .featured-title h5,
.cmt-bgcolor-skincolor .featured-title h6,
.cmt-bgcolor-skincolor .inside h3,
.cmt-bgcolor-skincolor .section-title h2.title,
.cmt-bgcolor-skincolor .section-title h5,
.cmt-blog-classic .social-icons ul li a,
.cmt-blog-single .social-icons ul li a,
.cmt-box-post-date,
.cmt-btn.cmt-btn-color-darkgrey.cmt-btn-style-border:hover,
.cmt-btn.cmt-btn-color-white,
.cmt-icon_element-bgcolor-skincolor i,
.cmt-icon_element-color-white,
.cmt-tabs ul.tabs li.active a,
.cmt-team-member-single-content .cmt-social-links-wrapper ul li a:hover,
.cmt-testimonial-box-view-style2 .cmt-ratting-star i.fa-star:before,
.cmt-textcolor-white,
.cmt-textcolor-white a,
.featured-icon-box.style11.active .cmt-icon.cmt-icon_element-size-md i,
.featured-icon-box.style11.active .featured-desc p,
.featured-icon-box.style11.active .featured-title h5,
.featured-icon-box.style11:hover .cmt-icon.cmt-icon_element-size-md i,
.featured-icon-box.style11:hover .featured-desc p,
.featured-icon-box.style11:hover .featured-title h5,
.featured-icon-box.style4:hover .cmt-btn.btn-inline,
.featured-icon-box.style4:hover .featured-desc p,
.featured-icon-box.style4:hover .featured-icon .cmt-icon,
.featured-icon-box.style4:hover .featured-title h5 a,
.featured-imagebox-portfolio .category p,
.featured-imagebox-portfolio .featured-title h5 a,
.featured-imagebox-team.style1 .social-icons li>a:hover,
.featured-imagebox-team.style2 .social-icons li>a,
.more-project-box .social-icons ul li a,
.newsletter-form button[type=submit],
.services-icon-box i,
.social-media-block .media-button ul li a:hover,
.testimonials.cmt-testimonial-box-view-style2 .testimonial-content label,
.tp-caption.skin-flatborder-button:hover {
    color: #ffffff
}

#site-navigation .menu ul.dropdown>li>a:before,
.cmt-bgcolor-darkgrey .cmt-custombutton.cmt-btn-bgcolor-skincolor:hover,
.cmt-bgcolor-darkgrey .section-title.with-desc .title-header:before,
.cmt-bgcolor-grey .pagination-block .page-numbers,
.cmt-bgcolor-skincolor .inside.cmt-fid-view-topicon h3:after,
.cmt-bgcolor-skincolor .section-title.with-desc .title-header:after,
.cmt-bgcolor-white,
.cmt-bgcolor-white>.cmt-bg-layer,
.cmt-bgimage-yes .cmt-pricing-plan,
.cmt-blog-single .blockquote-box,
.cmt-btn-bgcolor-white,
.cmt-btn.cmt-btn-style-border.cmt-bgcolor-white,
.cmt-col-bgcolor-skincolor .inside.cmt-fid-view-topicon h3:after,
.cmt-highlight-fid-style1,
.cmt-icon_element-background-color-white,
.cmt-video-btn .cmt-video-btn-play,
.cmt-video-btn .cmt-video-btn-play:after,
.cmt-video-btn .cmt-video-btn-play:before,
.cmt-video-play-btn,
.contact-box,
.featured-icon-box.style2,
.featured-imagebox-post.left-image,
.featured-imagebox-post.style1 .featured-content,
.featured-imagebox-services .featured-content-services,
.featured-imagebox-team.style1 .social-icons li>a,
.site-navigation ul.social-icons li a:hover {
    background-color: #fff
}

.cmt-bgcolor-darkgrey .featured-icon-box .featured-icon.cmt-icon_element-border,
.cmt-bgcolor-grey .pagination-block .page-numbers,
.cmt-bgcolor-skincolor .featured-icon-box .featured-icon.cmt-icon_element-border,
.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-white,
.featured-imagebox-team.style1 .social-icons li>a,
.white-border,
.with-border.white-border {
    border-color: #fff
}

.cmt-bgcolor-skincolor .heading-seperator span:after,
.cmt-bgcolor-skincolor .heading-seperator:after,
.cmt-search-overlay .w-search-form-row:before {
    border-bottom-color: #fff !important
}

.cmt-bgcolor-grey>.cmt-bg-layer {
    background-color: #f5f5f5
}

.cmt-bgcolor-grey,
.cmt-btn-bgcolor-grey,
.cmt-icon.cmt-icon_element-fill.cmt-icon_element-bgcolor-grey,
.cmt-search-overlay .cmt-site-searchform input[type=search],
.contact-detail-box,
.sidebar .cmt-bgcolor-grey>.cmt-bg-layer,
.sidebar .widget.widget-search .input-text,
.featured-imagebox-services.style2 .bottom-footer {
    background-color: #f8f9fa
}

.cmt-icon_element-border.cmt-icon_element-color-grey,
.cmt_single_image-wrapper.border-style3:after {
    border-color: #f2f2f2
}

#site-header-menu #site-navigation .menu ul li>a,
.accordion .toggle.cmt-style-classic.style1 .toggle-title,
.breadcrumb-wrapper span,
.breadcrumb-wrapper span.cmt-bread-sep,
.cmt-blog-single blockquote,
.cmt-box-post-date,
.cmt-btn,
.cmt-comment-owner,
.cmt-header-style-03 .cmt-custombutton a,
.cmt-pf-detailbox-list .cmt-pf-details-date .cmt-pf-left-details,
.cmt-team-list-value,
.cmt-top-info-con .title-box h5,
.comment-meta .cmt-comment-owner h5,
.head-font,
blockquote cite,
ul.project_info li span,
.about-overlay-shape.style3 {
    font-family: 'Josefin Sans', sans-serif
}

#site-header-menu #site-navigation .menu>ul>li>ul>li a,
.body-font,
.cmt-highlight-fid-style1.inside h3,
.cmt-topbar-wrapper .cmt-btn.btn-inline,
.contact-box h6,
.featured-icon-box.style2 .highlight-box h5,
.featured-icon-box.style6 .featured-title h5,
.featured-icon-box.style7 .featured-title h5,
.header-btn .cmt-btn,
.section-title h5,
.widget.widget_text h3.widget_text_title,
.cmt-fid-view-lefticon.style3.inside h3 {
    font-family: Poppins, sans-serif
}

#preloader {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 50px;
    height: 50px;
    margin: -30px 0 0 -30px
}

#status {
    position: fixed;
    z-index: 999999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background: #fff;
    background-image: url(../images/pre-loader-1.gif);
    background-repeat: no-repeat;
    background-position: center
}

.social-icons ul {
    margin: 0;
    padding: 0
}

.social-icons {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 15px
}

.social-icons li {
    display: inline-block;
    border: none
}

.social-icons.circle li>a,
.social-icons.square li>a {
    border: 1px solid #fff;
    height: 35px;
    width: 35px;
    line-height: 35px;
    text-align: center;
    display: block;
    font-size: 14px;
    border-radius: 50%
}

.social-icons.square li>a {
    border-radius: 0
}

.tooltip-top {
    position: relative
}

.tooltip:after,
.tooltip:before,
[data-tooltip]:after,
[data-tooltip]:before {
    position: absolute;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity .2s ease-in-out, visibility .2s ease-in-out, -webkit-transform .2s cubic-bezier(.71, 1.7, .77, 1.24);
    -moz-transition: opacity .2s ease-in-out, visibility .2s ease-in-out, -moz-transform .2s cubic-bezier(.71, 1.7, .77, 1.24);
    transition: opacity .2s ease-in-out, visibility .2s ease-in-out, transform .2s cubic-bezier(.71, 1.7, .77, 1.24);
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    pointer-events: none
}

.tooltip:before,
[data-tooltip]:before {
    z-index: 1001;
    border: 6px solid transparent;
    background: 0 0;
    content: ""
}

.tooltip-top:before,
.tooltip:before,
[data-tooltip]:before {
    margin-left: -6px;
    margin-bottom: -12px;
    border-top-color: #000;
    border-top-color: hsla(0, 0%, 20%, .9)
}

.tooltip-top:after,
.tooltip-top:before,
.tooltip:after,
.tooltip:before,
[data-tooltip]:after,
[data-tooltip]:before {
    bottom: 78%;
    left: 50%
}

.tooltip-top:focus:after,
.tooltip-top:focus:before,
.tooltip-top:hover:after,
.tooltip-top:hover:before,
.tooltip:focus:after,
.tooltip:focus:before,
.tooltip:hover:after,
.tooltip:hover:before,
[data-tooltip]:focus:after,
[data-tooltip]:focus:before,
[data-tooltip]:hover:after,
[data-tooltip]:hover:before {
    -webkit-transform: translateY(-12px);
    -moz-transform: translateY(-12px);
    transform: translateY(-12px)
}

.tooltip-top:after,
.tooltip:after,
[data-tooltip]:after {
    margin-left: -80px
}

.tooltip:after,
[data-tooltip]:after {
    z-index: 1000;
    padding: 8px;
    width: 160px;
    background-color: #000;
    background-color: hsla(0, 0%, 20%, .9);
    color: #fff;
    content: attr(data-tooltip);
    font-size: 14px;
    line-height: 1.2;
    text-align: center;
    border-radius: 5px
}

.tooltip:focus:after,
.tooltip:focus:before,
.tooltip:hover:after,
.tooltip:hover:before,
[data-tooltip]:focus:after,
[data-tooltip]:focus:before,
[data-tooltip]:hover:after,
[data-tooltip]:hover:before {
    visibility: visible;
    opacity: 1
}

.cmt-topbar-wrapper {
    line-height: 50px
}

.cmt-header-style-03 .cmt-topbar-wrapper {
    border-bottom: 1px solid #efecec
}

.cmt-topbar-wrapper .top-contact.text-left {
    position: relative;
    float: left
}

.top-contact li {
    position: relative;
    z-index: 1;
    display: inline-block
}

.top-contact>li:not(:last-child) {
    padding-right: 30px
}

.top-contact {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 13px;
    display: inline-block;
    position: relative;
    line-height: 50px
}

.top-contact>li:not(:last-child):after {
    content: "";
    height: 22px;
    width: 1px;
    background-color: rgba(255, 255, 255, .2);
    display: block;
    position: absolute;
    right: 15px;
    top: 14px
}

.topbar-right .top-contact>li:not(:last-child) {
    padding: 0 30px 0 0
}

.cmt-topbar-content .cmt-btn.cmt-btn-size-md {
    padding: 17px 30px 16px 30px;
    margin-left: 15px
}

.topbar-right .top-contact.cmt-highlight-right li:last-child:after {
    content: unset
}

.cmt-topbar-content .topbar-right .list-inline {
    display: inline-block;
    line-height: 50px
}

.top-contact.cmt-highlight-left {
    padding-right: 15px;
    margin-right: 10px
}

.top-contact.cmt-highlight-right {
    margin-left: 15px;
    padding-left: 15px;
    position: relative
}

.top-contact.cmt-highlight-left:after,
.top-contact.cmt-highlight-right:after {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 5000px;
    height: 100%
}

.cmt-header-style-01 .cmt-topbar-content .topbar-right {
    position: relative
}

.cmt-header-style-01 .cmt-topbar-content .topbar-right:after {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 5000px;
    height: 100%
}

.cmt-topbar-content .topbar-right:after {
    left: 0
}

.cmt-header-style-01 .cmt-topbar-content .topbar-right:before {
    position: absolute;
    content: "";
    top: 0;
    width: 1200px;
    right: 100%;
    height: 100%
}

.top-contact strong {
    font-weight: 600
}

.top-contact li i {
    margin-right: 9px
}

.cmt-top-info-con ul li {
    display: table-cell;
    position: relative;
    vertical-align: middle;
    height: 100%;
    margin: 0
}

.cmt-top-info-con>ul {
    padding: 0;
    margin: 0;
    padding: 0;
    margin: 0;
    display: table;
    vertical-align: middle;
    height: 100%
}

.cmt-top-info-con {
    float: right;
    position: relative;
    z-index: 3;
    text-align: right
}

.cmt-top-info-con>ul:not(.social-icons)>li {
    padding: 0 30px
}

.cmt-top-info-con>ul:not(.social-icons)>li:last-child {
    padding-right: 0
}

.cmt-top-info-con>ul:not(.social-icons)>li:first-child {
    padding-left: 0
}

.cmt-top-info-con ul li .cmt-header-icon-box,
.cmt-top-info-con ul li .title-box {
    display: table-cell;
    vertical-align: middle;
    text-align: left
}

.cmt-header-style-03 .topbar-right .top-contact>li:not(:last-child) {
    padding: 0 20px;
    border-right: 1px solid #efecec;
    border-left: 1px solid #efecec
}

.cmt-header-style-03 ul.social-icons li i {
    margin: 0
}

.cmt-header-style-03 ul.social-icons li {
    border-right: 1px solid #efecec;
    margin: 0
}

.cmt-header-style-03 ul.social-icons li a {
    height: 49px;
    line-height: 49px;
    padding: 0 15px;
    text-align: center
}

.cmt-topbar-wrapper .cmt-btn.btn-inline {
    font-weight: 400;
    text-transform: capitalize
}

.cmt-header-style-03 .topbar-btn {
    border-right: 1px solid #efecec
}

ul li .cmt-header-icon-box {
    position: relative
}

.cmt-header-icon-box i {
    font-size: 30px
}

.cmt-top-info-con ul li .title-box {
    padding-left: 18px
}

.cmt-top-info-con .title-box h5 {
    font-size: 16px;
    line-height: 21px;
    margin-bottom: 0
}

.cmt-top-info-con .title-box p {
    font-size: 14px;
    font-weight: 400;
    line-height: 23px;
    margin-bottom: 0;
    font-family: Ubuntu, sans-serif
}

.cmt-header-style-03 .cmt-top-info-con,
.site-branding {
    height: 108px;
    line-height: 108px
}

.cmt-header-top-wrapper {
    position: relative
}

.site-branding a {
    transition: none
}

.cmt-header-style-01 .site-branding {
    text-align: center
}

.site-navigation {
    position: relative
}

.cmt-header-style-01 .site-navigation>.container {
    padding: 0
}

#site-header-menu #site-navigation .menu ul li ul>li:not(:last-child) {
    border-bottom: 1px solid transparent;
    border-bottom-color: rgba(0, 0, 0, .08)
}

#site-header-menu #site-navigation .menu ul {
    padding: 0;
    margin: 0
}

.cmt-menu-toggle {
    float: right
}

.cmt-menu-toggle input[type=checkbox] {
    display: none
}

#site-header-menu #site-navigation .menu>ul>li {
    display: inline-block;
    position: relative
}

#site-header-menu #site-navigation .menu ul li:hover>ul {
    opacity: 1;
    visibility: visible
}

#site-header-menu #site-navigation .menu ul ul>li {
    position: relative
}

#site-header-menu #site-navigation .menu ul ul ul {
    position: absolute;
    left: 100%;
    top: 0
}

#site-header-menu #site-navigation .menu ul li>a {
    font-weight: 600;
    text-transform: capitalize;
    font-size: 17px;
    line-height: 15px;
    position: relative
}

#site-header-menu #site-navigation ul ul li {
    position: relative;
    border-bottom: 1px solid transparent
}

#site-header-menu #site-navigation .menu ul li>ul li>a {
    padding: 15px 10px 15px 10px;
    position: relative;
    font-weight: 400;
    font-size: 13px;
    height: auto;
    line-height: 18px;
    margin: 0;
    color: #000000
}

#site-header-menu #site-navigation .menu ul>li>ul li.has-submenu>a:after {
    content: "\f105";
    position: absolute;
    background-color: transparent;
    right: 12px;
    top: 16px;
    display: inline-block;
    font-family: FontAwesome;
    font-size: 15px;
    margin-left: 4px;
    opacity: .8
}

#site-header-menu #site-navigation .menu ul li a span {
    padding: 1px 3px 2px;
    border-radius: 2px;
    font-size: 10px;
    line-height: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-left: 10px;
    position: relative;
}

.social-icons li {
    margin: 0 2px
}

.site-navigation .cmt-social-links-wrapper {
    margin: 0;
    position: relative;
    padding-left: 15px
}

.cmt-header-style-03 .cmt-rt-contact {
    position: absolute;
    right: 0;
    top: 0;
    font-size: 14px;
    height: 66px;
    padding: 15px 40px
}

.cmt-header-style-03 .cmt-rt-contact .cmt-rt-icon {
    line-height: 40px;
    width: 40px;
    left: 0;
    background-color: #fff;
    margin-left: -20px;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    font-size: 15px;
    z-index: 1;
    transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    margin-top: 0;
    text-align: center
}

.cmt-header-style-03 .cmt-rt-contact .cmt-rt-icon:before {
    position: absolute;
    content: '';
    background-color: #fff;
    opacity: .38;
    height: 48px;
    width: 48px;
    line-height: 48px;
    border-radius: 50%;
    top: -4px;
    left: -4px
}

.cmt-header-style-03 .cmt-rt-contact p {
    margin-bottom: 3px;
    font-size: 13px;
    line-height: 1
}

.cmt-header-icons,
.cmt-header-style-03 .cmt-rt-contact .cmt-header-icons {
    position: relative;
    padding-left: 0;
    float: right
}

.cmt-header-icons .cmt-header-cart-link a,
.cmt-header-icons .cmt-header-search-link a {
    position: relative;
    text-align: center;
    font-size: 15px;
    z-index: 9;
    margin: 0 14px;
    transition: unset;
}

.cmt-header-icons .cmt-header-cart-link a i,
.cmt-header-icons .cmt-header-search-link a i {
    font-weight: 500
}

.cmt-header-icons .cmt-header-cart-link span.number-cart {
    position: absolute;
    top: -8px;
    left: 6px;
    width: 16px;
    height: 16px;
    text-align: center;
    line-height: 17px;
    font-size: 9px;
    display: block;
    color: #fff;
    border-radius: 50%;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease
}

.header-btn {
    padding-left: 24px
}

.header-btn .cmt-btn {
    font-weight: 500;
    padding: 7px 22px 7px 22px
}

.cmt-header-icon {
    position: relative;
    transition: unset;
}

.cmt-search-overlay {
    position: absolute;
    top: 100%;
    right: 0;
    width: 400px;
    background: #fff;
    opacity: 0;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    -webkit-transition: all ease .3s;
    -ms-transition: all ease .3s;
    transition: all ease .3s;
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .1);
    -ms-box-shadow: 0 3px 5px rgba(0, 0, 0, .1);
    box-shadow: 0 3px 5px rgba(0, 0, 0, .1);
    z-index: 111
}

.cmt-header-style-04 .cmt-search-overlay .w-search-form-row:before {
    right: 12px
}

.cmt-search-overlay .w-search-form-h {
    display: table;
    height: 100%;
    width: 100%
}

.cmt-search-overlay .w-search-form-row {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    width: 100%;
    position: relative;
    padding: 10px
}

.cmt-search-overlay .w-search-form-row:before {
    position: absolute;
    right: 17px;
    top: -8px;
    width: 47px;
    height: 47px;
    text-align: center;
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 8px solid;
    content: " "
}

.cmt-search-overlay .cmt-site-searchform input[type=search] {
    font-size: 14px;
    text-align: left;
    height: 50px;
    border: none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    box-shadow: none !important;
    color: #666;
    width: 85%;
    line-height: 1.3em;
    float: left;
    background-color: #f5f5f5
}

.cmt-search-overlay .cmt-site-searchform button {
    font-size: 17px;
    width: 15%;
    padding: 0;
    border: 0;
    border-radius: 0;
    height: 50px;
    text-align: center;
    display: block;
    line-height: 52px;
    color: #fff;
    float: left
}

.cmt-header-search-link .cmt-tectxon-icon-search:before {
    font-weight: 600
}

.cmt-tectxon-icon-search:before {
    content: '\e825';
    font-family: themify
}

.cmt-search-overlay.st-show {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1)
}

.footer {
    background-image: url(../images/footer-bg-new.jpg);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: scroll;
    position: relative;
    border-top: 3px solid #0d83d9;
    box-shadow: 0 -4px 20px rgba(13, 131, 217, 0.2);
}

.footer .second-footer {
    position: relative;
    overflow: hidden;
}

.footer .second-footer:before {
    position: absolute;
    content: "";
    inset: 0;
    background: linear-gradient(135deg, rgba(8, 18, 32, 0.86) 0%, rgba(10, 24, 46, 0.80) 50%, rgba(6, 14, 25, 0.89) 100%);
    pointer-events: none;
}

.footer .second-footer:after {
    position: absolute;
    content: "";
    top: -50px;
    right: 10%;
    width: 320px;
    height: 320px;
    background: radial-gradient(circle, rgba(64, 170, 250, 0.15) 0%, transparent 70%);
    pointer-events: none;
}

.keje-footer-layout {
    position: relative;
    z-index: 1;
    padding: 22px 0 16px;
}

.keje-footer-top {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.keje-footer-panel {
    height: auto;
}

.keje-footer-contact-panel {
    padding-right: 20px;
}

.keje-footer-eyebrow {
    display: inline-block;
    position: relative;
    padding-bottom: 5px;
    margin-bottom: 8px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #40aafa;
}

.keje-footer-eyebrow:after {
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    width: 30px;
    height: 2px;
    background: linear-gradient(90deg, #0d83d9, #40aafa);
    border-radius: 2px;
}

.keje-footer-company {
    margin: 0 0 8px;
    font-size: 19px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: .02em;
    color: #ffffff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
}

.keje-footer-address {
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: 620px;
    margin-bottom: 0;
    font-size: 14.5px;
    line-height: 1.5;
    color: rgba(255, 255, 255, .88);
}

.keje-footer-address-icon {
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.2), rgba(13, 131, 217, 0.1));
    border: 1px solid rgba(64, 170, 250, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #40aafa;
    font-size: 15px;
}

.keje-footer-address-text {
    flex: 1;
}

.keje-footer-meta-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.keje-footer-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    font-weight: 600;
    color: #40aafa;
    background: rgba(64, 170, 250, 0.1);
    border: 1px solid rgba(64, 170, 250, 0.25);
    padding: 3px 10px;
    border-radius: 20px;
    letter-spacing: 0.02em;
}

.keje-footer-pill i {
    font-size: 12px;
    color: #40aafa;
}

.keje-footer-map-panel {
    padding-left: 10px;
}

.keje-footer-map-frame {
    height: 125px;
    overflow: hidden;
    border-radius: 12px;
    border: 1px solid rgba(64, 170, 250, 0.3);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .35);
    transition: all .3s ease;
}

.keje-footer-map-frame:hover {
    border-color: rgba(64, 170, 250, 0.6);
    box-shadow: 0 10px 28px rgba(64, 170, 250, 0.2);
}

.keje-footer-map-frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    filter: saturate(1.1);
}

.keje-footer-divider {
    height: 1px;
    margin: 14px 0 14px;
    background: linear-gradient(90deg, rgba(64, 170, 250, 0.35) 0%, rgba(255, 255, 255, 0.12) 50%, rgba(64, 170, 250, 0.35) 100%);
}

.keje-footer-bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

.keje-footer-info-block {
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 10px;
    padding: 10px 14px;
    height: 100%;
    transition: all .25s ease;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.keje-footer-info-block:hover {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(64, 170, 250, 0.4);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .3);
    transform: translateY(-2px);
}

.keje-footer-info-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.22), rgba(13, 131, 217, 0.1));
    border: 1px solid rgba(64, 170, 250, 0.32);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #40aafa;
    font-size: 15px;
    transition: all .25s ease;
}

.keje-footer-info-block:hover .keje-footer-info-icon {
    background: #0d83d9;
    border-color: #40aafa;
    color: #ffffff;
    box-shadow: 0 0 12px rgba(64, 170, 250, 0.4);
}

.keje-footer-info-body {
    flex: 1;
    min-width: 0;
}

.keje-footer-info-body h4 {
    margin: 0 0 3px 0;
    font-size: 12.5px;
    line-height: 1.2;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #40aafa;
}

.keje-footer-info-body p {
    margin: 0 0 2px 0;
    font-size: 13.5px;
    line-height: 1.35;
    color: rgba(255, 255, 255, .9);
}

.keje-footer-info-body p:last-child {
    margin-bottom: 0;
}

.keje-footer-subtext {
    font-size: 12px !important;
    color: rgba(255, 255, 255, 0.6) !important;
}

.keje-footer-info-body a {
    color: rgba(255, 255, 255, .92);
    transition: color .2s ease;
}

.keje-footer-info-body a:hover {
    color: #40aafa;
    text-decoration: none;
}

.keje-footer-social {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.keje-footer-social li {
    display: inline-flex;
    margin: 0;
}

.keje-footer-social a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, .22);
    background-color: rgba(255, 255, 255, .08);
    color: #fff;
    font-size: 14px;
    transition: all .25s ease;
}

.keje-footer-social a:hover {
    background-color: #0d83d9;
    border-color: #40aafa;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(64, 170, 250, 0.35);
}

.keje-footer-social a i {
    color: #fff;
}

.footer .bottom-footer-text {
    background-color: #060e19;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding: 0;
}

.footer .copyright {
    padding: 10px 0 10px;
    font-size: 12.5px;
    color: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer .copyright a {
    color: #40aafa;
    transition: color 0.2s ease;
}

.footer .copyright a:hover {
    color: #ffffff;
}

.footer-credit-logo {
    max-height: 22px;
    width: auto;
    vertical-align: middle;
    margin-left: 6px;
    display: inline-block;
}

.footer .widget {
    margin: 50px 0 20px
}

.footer .cmt-textcolor-white {
    color: rgba(255, 255, 255, .8)
}

.footer .widget .cmt-btn.cmt-btn-size-md {
    padding: 14px 27px 14px 27px
}

.footer .widget .widget-title {
    font-size: 21px;
    line-height: 28px
}

.footer .bottom-footer-text,
.footer .first-footer {
    background-color: #0d1c33
}

.footer-logo img {
    max-height: 41px;
    width: auto
}

.first-footer .cmt-footer-cta-wrapper {
    position: relative;
    padding: 30px 0 30px 30px;
    z-index: 1
}

.first-footer .cmt-footer-cta-wrapper .featured-icon-box {
    padding: 0
}

.cmt-footer-cta-wrapper .featured-icon-box .cmt-icon.cmt-icon_element-size-lg {
    height: 48px;
    width: 40px
}

.cmt-footer-cta-wrapper .featured-icon-box .cmt-icon.cmt-icon_element-size-lg i {
    font-size: 46px;
    margin-left: 8px
}

.first-footer .cmt-footer-cta-wrapper .featured-title h5 {
    margin-bottom: 4px;
    font-size: 26px;
    line-height: 1
}

.cmt-footer-cta-wrapper .featured-title p {
    margin-bottom: 0;
    color: #fff !important;
    line-height: 1
}

.newsletter-form p {
    margin: 0
}

.newsletter-form input[type=email] {
    background-color: #f4f7fb;
    padding: 12px 15px;
    border: none;
    height: 50px;
    border: 1px solid transparent;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap
}

.newsletter-form button[type=submit] {
    position: absolute;
    top: 0;
    font-weight: 400;
    right: 15px;
    border: 1px solid transparent;
    height: 50px;
    -webkit-transition: all .35s ease;
    transition: all .35s ease;
    width: 54px;
    border-radius: 0
}

.widget ul {
    margin: 0;
    padding: 0
}

.widget ul>li {
    padding: 0 0 15px 0;
    position: relative
}

.widget .widget-title {
    font-size: 21px;
    line-height: 28px
}

.widget .widget-title {
    position: relative;
    margin-bottom: 20px;
    display: inline-block
}

.widget.widget_text h3.widget_text_title {
    font-size: 27px;
    font-weight: 500
}

.widget ul#menu-footer-services li a {
    padding-left: 22px
}

.widget ul#menu-footer-services li a:before {
    font-family: fontello;
    content: '\ed95';
    position: absolute;
    top: 8px;
    left: 0;
    line-height: 1em;
    font-size: 11px
}

.widget ul#menu-footer-services li {
    /* display: inline-block; */
    /* width: calc(50% - 2px); */
    float: none;
    padding: 0 0 8px 0;
    position: relative
}

.widget.widget_contact ul li {
    padding-left: 30px;
    position: relative;
    padding-top: 0;
    padding-bottom: 15px
}

.widget_contact li i {
    position: absolute;
    left: 0;
    top: 5px;
    font-size: 16px
}

.widget.widget_contact li:not(:last-child),
.widget.widget_post li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, .06);
    margin-bottom: 15px
}

.widget.widget_post ul {
    margin-top: 5px
}

.widget.widget_post li:not(:last-child) {
    margin-bottom: 20px
}

.copyright {
    text-align: center;
    padding-top: 20px;
    padding-bottom: 10px
}

.cmt-footer2-left {
    text-align: left
}

.cmt-footer2-right {
    text-align: right
}

.cmt-footer2-left,
.cmt-footer2-right {
    font-size: 13px
}

.footer .social-icons li {
    margin-left: 4px;
    margin-right: 4px;
    min-width: auto
}

.footer .social-icons li>a {
    width: 23px;
    height: 33px;
    line-height: 32px;
    border: none;
    background-color: transparent;
    font-size: 16px
}

.footer .cmt-textcolor-white .social-icons a {
    color: rgba(248, 252, 255, .6)
}

#totop {
    font-weight: 900;
    color: #fff;
    display: none;
    position: fixed;
    right: 34px;
    bottom: 34px;
    z-index: 999;
    height: 0;
    width: 0;
    font-size: 0;
    text-align: center;
    padding-top: 3px;
    line-height: 34px;
    border-radius: 0
}

#totop.top-visible {
    height: 40px;
    width: 40px;
    font-size: 22px;
    display: inline
}

.cmt-page-title-row {
    position: relative;
    background-image: linear-gradient(rgba(0, 0, 0, .55), rgba(0, 0, 0, .55)), url(../images/slides/breadcrumb.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

div.cmt-page-title-row>.cmt-bg-layer {
    background-color: rgba(24, 35, 51, .85)
}

.cmt-page-title-row {
    display: block;
    padding-top: 135px;
    padding-bottom: 135px;
    z-index: 2;
    text-align: center
}

.title-box .page-title-heading .title {
    display: block;
    font-weight: 700;
    text-transform: capitalize;
    font-size: 41px;
    line-height: 50px;
    color: #fff;
    margin-bottom: 0
}

.breadcrumb-wrapper span a {
    font-weight: 600;
    color: #fff
}

.breadcrumb-wrapper span {
    font-weight: 400;
    text-transform: capitalize;
    font-size: 14px;
    line-height: 22px;
    display: inline-block
}

.breadcrumb-wrapper span>i {
    margin: 0 5px;
    font-size: 15px
}

.contact-box {
    padding: 30px 30px 30px;
    border: 1px solid #ebeef0;
    -webkit-box-shadow: 0 0 1px 0 rgba(34, 34, 34, .07);
    -moz-box-shadow: 0 0 1px 0 rgba(34, 34, 34, .07);
    box-shadow: 0 0 1px 0 rgba(34, 34, 34, .07)
}

.contact-box h5 {
    font-size: 21px;
    line-height: 28px;
    margin-bottom: 0
}

.contact-box h6 {
    font-size: 15px;
    line-height: 20px;
    padding-top: 30px;
    font-weight: 600;
    text-transform: capitalize
}

.contact-box span,
.contact-box span a {
    color: #777;
    display: inline-block
}

.contact-detail-box {
    margin-top: 35px;
    padding: 20px 15px 15px
}

.contact-detail-box .featured-icon .cmt-icon {
    margin-bottom: 10px
}

article.cmt-blog-classic {
    margin-bottom: 30px;
    padding-bottom: 0
}

.post-featured-wrapper,
article.cmt-blog-classic {
    position: relative
}

.cmt-blog-classic .cmt-box-post-date .entry-date,
.cmt-blog-classic .cmt-box-post-date .entry-month {
    display: block;
    font-size: 22px;
    line-height: 18px
}

article.cmt-blog-classic .cmt-blog-classic-content {
    padding: 30px 30px;
    background: #fff;
    z-index: 1;
    position: relative;
    border: 1px solid #f2f2f2
}

.cmt-blog-classic .post-meta {
    margin: 25px -30px;
    padding: 10px 30px;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
    border-top: 1px solid rgba(0, 0, 0, .08)
}

.cmt-blog-classic .post-meta .cmt-meta-line {
    font-size: 13px;
    line-height: 15px;
    display: inline-block;
    padding-right: 25px;
    position: relative
}

.cmt-blog-classic .post-meta .cmt-meta-line:not(:last-child):after {
    position: absolute;
    content: "";
    height: 100%;
    width: 1px;
    top: 0;
    right: 10px;
    display: block;
    background-color: rgba(0, 0, 0, .2)
}

.cmt-blog-classic .post-meta .cmt-meta-line i {
    padding-right: 7px;
    font-size: 15px
}

.cmt-blog-classic .entry-header .entry-title {
    font-size: 26px;
    line-height: 30px;
    margin-bottom: 0
}

.cmt-blog-classic .cmt-blogbox-desc-footer {
    margin-top: 15px;
    clear: both;
    overflow: hidden
}

.cmt-blogbox-footer-readmore {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.cmt-blogbox-footer-readmore a {
    font-size: 15px;
    font-weight: 600
}

.cmt-blogbox-desc-footer .cmt-social-share-wrapper {
    position: relative
}

.cmt-blogbox-desc-footer .cmt-social-share-wrapper .social-icons {
    content: '';
    position: absolute;
    left: 0 !important;
    top: 0;
    width: max-content;
    height: 100%;
    opacity: 0;
    -webkit-transition: all .5s ease;
    -ms-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transform: translateX(50%);
    -ms-transform: translateX(50%);
    -o-transform: translateX(50%);
    -moz-transform: translateX(50%);
    transform: translateX(50%)
}

.cmt-blogbox-desc-footer .cmt-social-share-wrapper.cmt-show-share-list .social-icons {
    opacity: 1;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    transform: translateX(-100%)
}

.cmt-blogbox-desc-footer .cmt-social-share-wrapper span {
    cursor: pointer;
    margin-left: 15px
}

.cmt-blog-single .blockquote-box {
    position: relative;
    padding: 37px 45px 37px 150px;
    margin: 30px 0 30px 0;
    display: block;
    border: 1px solid #f2f2f2
}

.cmt-blog-single blockquote {
    position: relative;
    border: none;
    font-style: italic;
    font-weight: 400;
    font-size: 17px;
    line-height: 28px;
    margin: 0
}

.cmt-blog-single blockquote:before {
    content: '';
    position: absolute;
    left: -25px;
    top: 0;
    width: 5px;
    height: 100%;
    display: block
}

.cmt-blog-single .blockquote-box:after {
    content: '"';
    font-family: 'Nunito Sans', sans-serif;
    font-size: 80px;
    font-weight: 400;
    position: absolute;
    left: 55px;
    top: 50%;
    font-style: normal;
    display: block;
    margin-top: 10px
}

blockquote cite {
    font-style: normal;
    font-size: 15px;
    font-weight: 700;
    line-height: 20px
}

.social-media-block .media-button ul {
    margin: 0
}

.social-media-block .media-button ul li {
    display: inline-block
}

.social-media-block .media-button ul li a {
    padding: 12px 20px;
    font-size: 15px;
    line-height: 15px;
    color: #7c818e;
    background-color: #fff;
    border: 1px solid #f2f2f2;
    display: block;
    margin-right: 5px
}

.social-icons ul li.facebook-icon a {
    background-color: #3b5999;
    border: 1px solid #3b5999
}

.social-icons ul li.twitter-icon a {
    background-color: #55acee;
    border: 1px solid #55acee
}

.social-icons ul li.google-plus-icon a {
    background-color: #dd4b39;
    border: 1px solid #dd4b39
}

.social-icons ul li.linkedin-icon a {
    background-color: #0077b5;
    border: 1px solid #0077b5
}

.social-icons ul li.pinterest-icon a {
    background-color: #bd081c;
    border: 1px solid #bd081c
}

.comments-area {
    margin-top: 50px;
    margin-bottom: 0
}

.comments-area h2 {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 15px
}

.comment-list li {
    position: relative;
    margin-top: 30px
}

.comment-list .children {
    margin-left: 35px
}

.comment-list,
.comment-list .children {
    list-style-type: none;
    padding: 0
}

.single-post .comments-area {
    margin-top: 50px;
    margin-bottom: 0
}

.single-post .comments-area .comments-title {
    font-size: 33px;
    font-weight: 600
}

.comment-body {
    margin-left: 105px;
    margin-top: 35px;
    margin-bottom: 30px;
    padding: 25px 20px 20px;
    position: relative;
    background-color: #fff;
    border: 1px solid #f2f2f2
}

.comment-body:after,
.comment-body:before {
    position: absolute;
    top: 17px;
    width: 0;
    height: 0;
    border-width: 10px 12px 10px 0;
    border-style: solid;
    border-color: transparent #f2f2f2 transparent #f2f2f2;
    z-index: 1;
    content: "";
    left: -12px
}

.comment-author {
    float: left;
    text-align: center;
    width: 87px;
    height: 87px;
    display: block;
    margin-right: 25px;
    overflow: hidden;
    margin-left: -125px;
    margin-top: -20px
}

.comment-author img {
    max-width: 100%;
    height: auto
}

.comment-reply-title {
    margin-bottom: 10px;
    font-size: 24px;
    line-height: 28px
}

.comment-meta {
    font-size: 14px;
    padding: 0;
    position: relative
}

.comment-meta,
.comment-meta a {
    color: #6e6e6e;
    font-size: 13px
}

.cmt-comment-owner,
.comment-meta .cmt-comment-owner h5 {
    display: block;
    font-size: 18px;
    line-height: 18px;
    font-weight: 700;
    font-style: normal
}

.comment-box .author-content-wrap p {
    margin-top: 10px;
    margin-bottom: 5px
}

.single article.post .comment-body p {
    margin-top: 10px
}

.comment-list a.comment-reply-link {
    border: none;
    color: #fff;
    font-size: 13px;
    padding: 2px 30px 3px 17px;
    position: relative;
    margin-top: 5px;
    display: inline-block
}

.comment-list a.comment-reply-link:after {
    position: absolute;
    top: 4px;
    font-family: themify;
    content: "\e649";
    font-weight: 400;
    display: inline-block;
    margin-right: .2em;
    text-align: center;
    opacity: 1;
    line-height: 22px;
    font-size: 10px;
    margin-left: 8px
}

.comments-area .comment-respond {
    padding-top: 10px
}

#respond .comment-reply-title {
    margin: 0 0 20px !important
}

.comment-form {
    margin-bottom: 20px
}

.comment-form .comment-notes {
    margin-bottom: 25px;
    font-style: italic
}

.comment-form p:not(.comment-notes) {
    margin-bottom: 20px
}

.comment-form textarea {
    height: 125px
}

.comment-form input[type=email],
.comment-form input[type=text],
.comment-form input[type=url],
.comment-form textarea {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
    border-radius: 0;
    padding-left: 0
}

.comments-area .comment-form .comment-form-author,
.comments-area .comment-form .comment-form-email,
.comments-area .comment-form .comment-form-url {
    position: relative;
    float: left;
    width: 100%
}

.comments-area .comment-form .comment-form-url {
    margin-right: 0
}

.cmt-social-share-title span {
    font-size: 15px;
    font-weight: 600;
    position: relative;
    margin-right: 5px;
    margin-bottom: 0
}

.cmt-social-share-title span i {
    margin-left: 5px
}

.cmt-pf-view-left-image .cmt-pf-single-detail-box .cmt-portfolio-title h2 {
    font-size: 25px;
    line-height: 30px
}

.cmt-pf-view-left-image .cmt-pf-detailbox-list {
    margin-top: -17px;
    padding: 0
}

.cmt-pf-detailbox-list .cmt-pf-details-date {
    position: relative;
    display: block;
    padding: 15px 0 17px 45px;
    font-size: 1em;
    margin-left: 3px
}

.cmt-pf-detailbox-list .cmt-pf-details-date:after {
    position: absolute;
    content: '';
    height: 45px;
    background-color: rgba(0, 0, 0, .09);
    width: 1px;
    top: 15px;
    left: 30px
}

.cmt-pf-detailbox-list {
    margin: 0;
    padding: 0
}

.cmt-pf-view-left-image .cmt-pf-details-date:not(:last-child):before {
    height: 1px;
    display: block;
    width: 95%;
    background: #e2e3e5;
    content: '';
    position: absolute;
    left: 0;
    bottom: 0
}

.cmt-pf-detailbox-list .cmt-pf-details-date .cmt-pf-left-details {
    font-weight: 500;
    margin-right: 5px;
    margin-left: 0;
    font-size: 18px;
    display: block
}

.cmt-pf-detailbox-list .cmt-pf-details-date .cmt-pf-right-details {
    display: block;
    padding-top: 0
}

.cmt-pf-detailbox-list .cmt-pf-details-date i {
    position: absolute;
    left: 0;
    top: 15px;
    display: inline-block;
    border-radius: 50%;
    padding-left: 0;
    vertical-align: middle;
    font-size: 18px;
    text-align: center;
    transform: translate(0, 0);
    z-index: 1;
    line-height: 40px
}

.cmt-nextprev-bottom-nav {
    position: relative;
    margin-top: 31px;
    border-top: 1px solid #e4e4e4;
    padding-top: 30px
}

.cmt-nextprev-bottom-nav .nav-next,
.cmt-nextprev-bottom-nav .nav-previous {
    display: inline-block;
    position: relative
}

.cmt-nextprev-bottom-nav .nav-next a,
.cmt-nextprev-bottom-nav .nav-previous a {
    text-align: center;
    top: 106px;
    right: 48px;
    color: #fff;
    transition: all .2s ease-in-out;
    display: inline-block;
    border-radius: 0;
    border-width: 0;
    border-style: solid;
    font-size: 15px;
    padding: 12px 35px;
    border-radius: 0;
    font-weight: 700
}

.cmt-nextprev-bottom-nav .nav-next a:after,
.cmt-nextprev-bottom-nav .nav-previous a:after {
    position: absolute;
    font-size: 15px;
    top: 10px
}

.cmt-nextprev-bottom-nav .nav-previous a {
    padding-right: 25px;
    padding-left: 44px
}

.cmt-nextprev-bottom-nav .nav-previous a:after {
    content: '\f100';
    font-family: FontAwesome;
    left: 25px
}

.cmt-nextprev-bottom-nav .nav-next a {
    padding-right: 50px;
    padding-left: 32px
}

.cmt-nextprev-bottom-nav .nav-next a:after {
    content: '\f101';
    font-family: FontAwesome;
    right: 25px
}

.cmt-pf-single-related-wrapper {
    padding-top: 60PX !important;
    padding-bottom: 80px !important
}

.cmt-pf-single-related-title {
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 30px
}

.more-project-box {
    padding: 25px 0;
    border-top: 1px solid #efecec;
    border-bottom: 1px solid #efecec;
    margin-bottom: 60px
}

.more-project-box .cmt-social-share-title {
    position: relative
}

.more-project-box .cmt-social-share-title:before {
    position: absolute;
    content: '';
    top: 3px;
    right: -10px;
    height: 20px;
    width: 1px;
    background-color: #efecec
}

.more-project-box .social-icons {
    padding-left: 20px
}

.cmt-post-prev-next-buttons {
    text-align: right
}

.cmt-post-prev-next-buttons a {
    height: 38px;
    line-height: 38px;
    width: 38px;
    padding: 8px 10px;
    text-align: center;
    background-color: #efecec;
    color: #081528
}

.cmt-team-member-content {
    margin-top: 40px
}

.cmt-team-member-single-content,
.cmt-team-member-single-list {
    position: relative;
    margin: 0
}

.cmt-team-member-content .cmt-team-member-single-title {
    font-size: 24px;
    line-height: 24px;
    font-weight: 700;
    margin-bottom: 5px
}

.cmt-team-member-single-position {
    display: block;
    font-size: 13px;
    font-weight: 400;
    margin-bottom: 20px
}

.cmt-team-member-single-content .cmt-social-links-wrapper {
    display: block;
    clear: both;
    padding-top: 30px;
    border-top: 1px solid #f2f2f2;
    margin-top: 15px
}

.cmt-team-member-single-content .cmt-social-links-wrapper ul li a {
    border: 1px solid #f2f2f2;
    height: 40px;
    width: 40px;
    line-height: 40px;
    text-align: center;
    display: block;
    font-size: 16px;
    color: #666
}

.cmt-team-skills-wrapper {
    margin-top: 22px;
    padding-top: 22px;
    border-top: 1px solid #dce1e9
}

.cmt-team-skills-wrapper h5 {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 10px
}

.cmt-team-skills-wrapper .cmt-progress-bar {
    margin-bottom: 22px
}

.cmt-team-skills-wrapper .progressbar-title {
    margin-bottom: 7px
}

.cmt-team-member-single-content-wrapper .cmt-team-data {
    border-top: 1px solid #f2f2f2;
    padding-top: 35px;
    margin-top: 25px
}

.cmt-team-member-single-content ul {
    margin: 0;
    padding: 0
}

.cmt-team-details-list li {
    position: relative;
    padding: 15px 0 15px 0;
    font-size: 15px;
    line-height: 24px;
    display: block
}

.cmt-team-details-list li .team-icon-box {
    height: 50px;
    width: 50px;
    line-height: 50px;
    display: table-cell;
    text-align: center;
    border: 1px solid #f2f2f2;
    vertical-align: middle
}

.team-icon-box i {
    font-size: 22px
}

.cmt-team-details-box {
    display: table-cell;
    vertical-align: middle;
    padding-left: 20px
}

.cmt-team-details-list .cmt-team-list-title {
    margin-right: 3px;
    position: relative;
    font-weight: 500;
    font-size: 15px;
    line-height: 20px;
    margin-bottom: 8px;
    text-transform: capitalize
}

.cmt-team-details-list .cmt-team-list-title,
.cmt-team-details-list .cmt-team-list-value {
    display: block
}

.cmt-team-list-value {
    font-size: 20px;
    font-weight: 500
}

.cmt-team-member-education-box span {
    font-size: 16px
}

.cmt-team-member-content-about {
    margin-top: 35px
}

.cmt-team-member-single-content form {
    padding: 35px 20px 20px;
    margin-left: 0 !important;
    margin-right: 0 !important
}

.banner-img-box {
    background-image: url(../images/widget-banner.jpg);
    padding: 15px;
    color: #fff;
    text-align: center;
    justify-content: center;
    display: flex;
    align-items: center;
    min-height: 350px;
    position: relative
}

.banner-img-box:before {
    content: "";
    position: absolute;
    height: 91%;
    width: 90%;
    top: 15px;
    border: 1px solid rgba(255, 255, 255, .2)
}

.banner-img-box .featured-content .featured-title h5 {
    font-size: 30px;
    line-height: 34px
}

.banner-img-box .featured-content .featured-desc p {
    font-size: 14px;
    margin-bottom: 10px
}

.element-row {
    padding: 80px 0 0;
    position: relative
}

.element-row .section-title h2.title {
    margin-bottom: 25px
}

.cmt-progress-bar .progress-bar.progress-bar-color-bar_blue {
    background-color: #0074cc
}

.cmt-progress-bar .progress-bar.progress-bar-color-bar_green {
    background-color: #5bb75b
}

.cmt-progress-bar .progress-bar.progress-bar-color-bar_pink {
    background-color: #f4524d
}

.cmt-progress-bar .progress-bar.progress-bar-color-bar_turquoise {
    background-color: #00c1cf
}

.cmt-icon.cmt-icon_element-fill.cmt-icon_element-background-yellow {
    background-color: #ffb300
}

.cmt-icon.cmt-icon_element-fill.cmt-icon_element-background-orange {
    background-color: #ff4c00
}

.cmt-icon.cmt-icon_element-fill.cmt-icon_element-background-red {
    background-color: #ff0a26
}

.cmt-icon.cmt-icon_element-fill.cmt-icon_element-background-dark_pink {
    background-color: #ff0061
}

.cmt-icon.cmt-icon_element-fill.cmt-icon_element-background-mulled_wine {
    background-color: #50485b
}

.cmt-icon.cmt-icon_element-fill.cmt-icon_element-background-aqua {
    background-color: #39c8df
}

.cmt-icon.cmt-icon_element-fill.cmt-icon_element-color-aqua {
    color: #39c8df
}

.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-mulled_wine {
    border-color: #50485b;
    color: #50485b
}

.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-blue {
    border-color: #5472d2;
    color: #5472d2
}

.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-white {
    border-color: #fff;
    color: #fff
}

.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-yellow {
    border-color: #ffb300;
    color: #ffb300
}

.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-orange {
    border-color: #ff4c00;
    color: #ff4c00
}

.cmt-icon.cmt-icon_element-border.cmt-icon_element-color-red {
    border-color: #ff0a26;
    color: #ff0a26
}

.element-style .row .col-md-6 .featured-icon-box:not(:last-child) {
    padding: 0;
    margin-bottom: 40px
}

.error-404 {
    position: relative
}

.page-header {
    margin: 40px 0 20px
}

section.error-404 {
    padding: 160px 0 120px;
    text-align: center;
    background-image: url(../images/error-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center
}

section.error-404 .cmt-big-icon {
    font-size: 137px
}

section.error-404 h1 {
    font-size: 92px;
    text-transform: uppercase;
    line-height: 100%
}

section.error-404 .page-content p {
    font-size: 18px;
    margin-bottom: 40px;
    margin-top: -20px
}

#map_canvas {
    margin: 0;
    padding: 0;
    height: 100%
}

.map-wrapper {
    height: 385px
}

.list-style-disc {
    list-style-type: disc !important
}

.list-style-decimal {
    list-style-type: decimal !important
}

ul.cmt-list {
    list-style: none;
    padding: 0;
    margin: 0
}

.cmt-list.cmt-list-style-icon li i {
    position: absolute;
    left: 0;
    top: 2px;
    font-size: 11px
}

.cmt-list.cmt-list-style-icon li {
    padding-left: 23px;
    list-style: none;
    position: relative;
    padding-bottom: 8px
}

ul.list-inline li {
    display: inline-block
}

.cmt-video-bg {
    position: absolute;
    right: 0;
    min-width: 100%;
    min-height: max-content;
    top: 0;
    bottom: 0;
    left: 0
}

.video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: .87;
    z-index: 1
}

.cmt-boxed .cmt-stickable-header.fixed-header {
    background-color: transparent !important;
    box-shadow: none;
}

.cmt-boxed .cmt-header-style-04 .cmt-stickable-header.fixed-header .site-navigation {
    background-color: #fff !important;
}

.cmt-boxed .cmt-header-style-01 .site-navigation:before,
.cmt-boxed .cmt-header-style-03 .site-navigation:before,
.cmt-boxed .cmt-header-style-01 .site-navigation:after,
.cmt-boxed .cmt-header-style-03 .site-navigation:after {
    position: unset;
}


.cmt-boxed .site-navigation .cmt-social-links-wrapper {
    padding-right: 15px;
}

.cmt-boxed .top-contact {
    padding: 0 15px;
}

.label-new:before {
    right: 100%;
    top: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    border-color: rgba(255, 255, 255, 0);
    border-width: 5px;
    margin-top: -5px;
}


.slider {
    overflow: hidden;
    white-space: nowrap;
    box-sizing: border-box;
    padding: 30px;
}

.slider img {
    height: 100px;
    /* set as needed */
    margin: 0 20px;
    border-radius: 30px;
    box-shadow: 0px 0px 10px;
    display: inline-block;
    vertical-align: middle;
}

@keyframes slide {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

.slide-track {
    display: inline-block;
    animation: slide 20s linear infinite;
}


/* ======================================
        ||         FULL STYLESHEET           ||
        ====================================== */

/* Shared Styles */




.theme-btn {
    display: inline-block;
    padding: 15px 30px;
    border-radius: 50px;
    text-decoration: none;
    color: white;
    font-weight: bold;
    font-size: 1rem;
    transition: all 0.3s ease;
}

.whatsappbtn {
    background-color: #25D366;
    border: none;
}

.whatsappbtn:hover {
    background-color: #128C7E;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.2);
    transform: translateY(-2px);
    cursor: pointer;
}

/* --- Floating Buttons Container --- */
.floating-contact-btn {
    position: fixed;
    bottom: 83px;
    /* Space from the bottom */
    right: 28px;
    /* Space from the right */
    display: flex;
    flex-direction: column;
    align-items: center;
    /* Aligns items to the center of the container */
    gap: 10px;
    /* Creates space between the buttons */
    z-index: 1050;
}

/* Floating Button Styles */
.floating-contact-btn>div,
.floating-contact-btn>a {
    width: 50px;
    height: 50px;
    border-radius: 0%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    transition: transform 0.2s ease-in-out;
    text-decoration: none;
    /* For the link element */
}

.floating-contact-btn>div:hover,
.floating-contact-btn>a:hover {
    transform: scale(1.1);
}

.floating-whatsapp-btn {
    background-color: #25D366;
}

.floating-phone-btn {
    background-color: #34B7F1;
}

.floating-contact-btn img {
    width: 40px;
}

.floating-contact-btn i {
    color: white;
    font-size: 2rem;
}

.icon-btn {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

/* Modal Overlay and Container */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1050;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.modal-overlay.show {
    display: flex;
    opacity: 1;
}

.modal-content-wrapper {
    background-color: white;
    border-radius: 1rem;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
    max-width: 500px;
    width: 90%;
    transition: transform 0.3s ease, opacity 0.3s ease;
    transform: translateY(-50px);
    opacity: 0;
}

.modal-overlay.show .modal-content-wrapper {
    transform: translateY(0);
    opacity: 1;
}

/* Modal Header */
.modal-header {
    background-color: #25D366;
    color: white;
    padding: 1rem;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-header h5 {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 500;
}

.modal-header .close-btn {
    background: none;
    border: none;
    color: white;
    font-size: 1.5rem;
    cursor: pointer;
    line-height: 1;
}

/* Modal Body */
.modal-body {
    padding: 1.5rem;
}

/* Form Styling */
.form-group {
    margin-bottom: 1rem;
}

.form-label {
    font-weight: 500;
    color: #4a4a4a;
    display: block;
    margin-bottom: 0.5rem;
}

.form-control {
    width: 100%;
    border-radius: 0.75rem;
    border: 1px solid #e0e0e0;
    padding: 0.75rem 1rem;
    box-sizing: border-box;
    transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.form-control:focus {
    outline: none;
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.btn-submit {
    background-color: #25d366;
    border: none;
    font-weight: bold;
    color: white;
    border-radius: 0.75rem;
    padding: 0.75rem 1.5rem;
    width: 100%;
    cursor: pointer;
    transition: transform 0.2s ease-in-out, background-color 0.2s ease-in-out;
}

.btn-submit:hover {
    background-color: #128c7e;
    transform: translateY(-2px);
}

/* Corner Modal Specific Styles */
.corner-modal-overlay {
    justify-content: flex-end;
    align-items: flex-end;
    padding: 20px;
}

.corner-modal-overlay .modal-content-wrapper {
    width: 100%;
    max-width: 400px;
    transform: translateY(50px);
    margin: 0;
}

/* --- MOBILE RESPONSIVE STYLES --- */
@media (max-width: 768px) {
    .floating-contact-btn {
        bottom: 6rem;
        /* Space from the bottom on mobile */
        right: 2rem;
        /* Space from the right on mobile */
        gap: 0.75rem;
    }

    .floating-contact-btn>div,
    .floating-contact-btn>a {
        width: 50px;
        height: 50px;
    }

    .floating-contact-btn img {
        width: 35px;
    }
}

/* existing styles ... */

@keyframes floatUpDown {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

    100% {
        transform: translateY(0);
    }
}

.floating-contact-btn>div,
.floating-contact-btn>a {
    animation: floatUpDown 3s ease-in-out infinite;
}


.container-fluid.keje {
    overflow: unset;
}

.overview-theme-section {
    padding-bottom: 70px;
}

.overview-theme-title {
    margin-bottom: 8px;
}

.overview-theme-stats {
    margin-bottom: 35px;
}

.overview-stat-box {
    background-color: #fff;
}

.overview-stat-box .featured-title h5 {
    font-size: 22px;
    line-height: 28px;
    margin-bottom: 8px;
}

.overview-stat-box .featured-desc p {
    margin-bottom: 0;
    color: #666;
}

.overview-theme-content {
    padding: 38px 34px 18px;
    border-top: 3px solid #ff5e14;
    background-color: #fff;
}

.overview-theme-content p {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #ebeef0;
}

.overview-theme-content p:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.overview-theme-content .overview-lead {
    font-size: 16px;
    line-height: 30px;
    color: #081528;
    font-weight: 500;
}

.resistance-showcase-section {
    position: relative;
    padding-bottom: 85px;
    background:
        linear-gradient(135deg, #fff8f3 0%, rgba(255, 94, 20, 0.08) 20%, rgba(255, 94, 20, 0) 38%),
        linear-gradient(180deg, #ffffff 0%, #f4f7fa 100%);
    overflow: hidden;
}

.resistance-showcase-section:before {
    content: "";
    position: absolute;
    top: 40px;
    right: -80px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(8, 21, 40, 0.08) 0%, rgba(8, 21, 40, 0) 70%);
    pointer-events: none;
}

.resistance-showcase-title {
    margin-bottom: 20px;
}

.resistance-showcase-intro {
    margin-bottom: 26px;
    padding: 18px 0 18px 24px;
    border-left: 3px solid #ff5e14;
}

.resistance-showcase-intro p {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 29px;
    color: #4d5b69;
}

.resistance-showcase-grid>[class*=col-] {
    margin-bottom: 30px;
}

.resistance-showcase-card {
    position: relative;
    height: 100%;
    padding: 24px;
    border-radius: 28px;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbfd 100%);
    border: 1px solid rgba(8, 21, 40, 0.08);
    box-shadow: 0 22px 55px rgba(8, 21, 40, 0.08);
    overflow: hidden;
    transition: transform .35s ease, box-shadow .35s ease;
}

.resistance-showcase-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 28px 65px rgba(8, 21, 40, 0.14);
}

.resistance-showcase-card:after {
    content: "";
    position: absolute;
    inset: auto -30px -60px auto;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 94, 20, 0.16) 0%, rgba(255, 94, 20, 0) 70%);
    pointer-events: none;
}

.resistance-showcase-card-accent {
    background: linear-gradient(180deg, #081528 0%, #152b44 100%);
}

.resistance-showcase-card-dark {
    background: linear-gradient(180deg, #1b1e24 0%, #313841 100%);
}

.resistance-showcase-card-accent .resistance-showcase-content h3,
.resistance-showcase-card-dark .resistance-showcase-content h3 {
    color: #fff;
}

.resistance-showcase-badge {
    position: absolute;
    top: 22px;
    left: 22px;
    z-index: 2;
    min-width: 54px;
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 13px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 1px;
    color: #081528;
    background: rgba(255, 255, 255, 0.88);
    box-shadow: 0 10px 20px rgba(8, 21, 40, 0.10);
}

.resistance-showcase-media {
    min-height: 260px;
    padding: 30px 20px 18px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.resistance-showcase-media img {
    max-height: 220px;
    width: auto;
    object-fit: contain;
    filter: drop-shadow(0 12px 22px rgba(0, 0, 0, 0.16));
}

.resistance-showcase-media-wide img {
    width: 100%;
    max-height: 245px;
}

.resistance-showcase-card-tall .resistance-showcase-media {
    min-height: 300px;
}

.resistance-showcase-card-wide {
    display: flex;
    align-items: center;
    gap: 12px;
}

.resistance-showcase-card-wide .resistance-showcase-media,
.resistance-showcase-card-wide .resistance-showcase-content {
    width: 50%;
}

.resistance-showcase-content {
    position: relative;
    z-index: 1;
    padding: 12px 4px 2px;
}

.resistance-showcase-content h3 {
    margin-bottom: 0;
    font-size: 25px;
    line-height: 33px;
    color: #081528;
}

.management-team-section {
    position: relative;
    padding-bottom: 80px;
    background: linear-gradient(180deg, #fff 0%, #fff7f2 100%);
}

.management-team-section:before {
    content: "";
    position: absolute;
    top: 34px;
    right: -70px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 94, 20, 0.14) 0%, rgba(255, 94, 20, 0) 72%);
    pointer-events: none;
}

.management-team-card {
    position: relative;
    padding: 42px 38px 34px;
    border-top: 0;
    border-left: 4px solid #ff5e14;
    border-radius: 24px;
    background: linear-gradient(135deg, #ffffff 0%, #fffaf6 100%);
    overflow: hidden;
}

.management-team-card:after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 24px;
    border: 1px solid rgba(255, 94, 20, 0.08);
    pointer-events: none;
}

.management-team-card p {
    margin-bottom: 24px;
    padding-bottom: 22px;
    font-size: 16px;
    line-height: 30px;
    color: #4c5a67;
    border-bottom: 1px solid #e7edf3;
}

.management-team-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 18px;
}

.management-team-list.cmt-list.cmt-list-style-icon li {
    display: flex;
    align-items: center;
    min-height: 62px;
    margin: 0;
    padding: 14px 18px 14px 56px;
    border: 1px solid #edf1f5;
    border-radius: 16px;
    background-color: #fff;
    box-shadow: 0 12px 24px rgba(22, 34, 51, 0.05);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.management-team-list.cmt-list.cmt-list-style-icon li:hover {
    transform: translateY(-3px);
    border-color: rgba(255, 94, 20, 0.28);
    box-shadow: 0 18px 32px rgba(22, 34, 51, 0.08);
}

.management-team-list.cmt-list.cmt-list-style-icon li i {
    position: absolute;
    top: 50%;
    left: 18px;
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: -13px;
    font-size: 12px;
    color: #fff;
    background-color: #ff5e14;
    border-radius: 50%;
}

.management-team-list .cmt-list-li-content {
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    color: #213242;
}

@media (max-width: 991px) {
    .overview-theme-stats {
        margin-bottom: 20px;
    }

    .resistance-showcase-card-wide {
        display: block;
    }

    .resistance-showcase-card-wide .resistance-showcase-media,
    .resistance-showcase-card-wide .resistance-showcase-content {
        width: 100%;
    }

    .resistance-showcase-media,
    .resistance-showcase-card-tall .resistance-showcase-media {
        min-height: 240px;
    }

    .resistance-showcase-content h3 {
        font-size: 22px;
        line-height: 30px;
    }

    .management-team-card {
        padding: 34px 28px 28px;
    }

    .management-team-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .overview-theme-section {
        padding-bottom: 55px;
    }

    .resistance-showcase-section {
        padding-bottom: 55px;
    }

    .resistance-showcase-intro {
        margin-bottom: 18px;
        padding-left: 18px;
    }

    .resistance-showcase-card {
        padding: 18px;
        border-radius: 20px;
    }

    .resistance-showcase-badge {
        top: 16px;
        left: 16px;
        min-width: 48px;
        padding: 7px 12px;
    }

    .resistance-showcase-media,
    .resistance-showcase-card-tall .resistance-showcase-media {
        min-height: 210px;
        padding: 26px 14px 10px;
    }

    .resistance-showcase-media img,
    .resistance-showcase-media-wide img {
        max-height: 180px;
    }

    .resistance-showcase-content {
        padding: 10px 2px 0;
    }

    .resistance-showcase-content h3 {
        font-size: 19px;
        line-height: 27px;
    }

    .overview-theme-content {
        padding: 28px 20px 12px;
    }

    .overview-stat-box {
        margin-bottom: 20px;
    }

    .management-team-section {
        padding-bottom: 55px;
    }

    .management-team-card {
        padding: 28px 20px 22px;
        border-radius: 18px;
    }

    .management-team-card:after {
        border-radius: 18px;
    }

    .management-team-card p {
        font-size: 15px;
        line-height: 28px;
    }

    .management-team-list.cmt-list.cmt-list-style-icon li {
        min-height: 58px;
        padding: 12px 14px 12px 50px;
    }

    .management-team-list .cmt-list-li-content {
        font-size: 15px;
    }
}



.resistance-products-section {
    position: relative;
    overflow: hidden;
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%);
}

.resistance-products-section:before,
.resistance-products-section:after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
}

.resistance-products-section:before {
    width: 320px;
    height: 320px;
    top: -120px;
    left: -90px;
    background: radial-gradient(circle, rgba(207, 159, 59, 0.14) 0%, rgba(207, 159, 59, 0) 70%);
}

.resistance-products-section:after {
    width: 360px;
    height: 360px;
    right: -120px;
    bottom: -140px;
    background: radial-gradient(circle, rgba(13, 43, 92, 0.12) 0%, rgba(13, 43, 92, 0) 72%);
}

.resistance-products-section .container {
    position: relative;
    z-index: 1;
}

.resistance-products-section .section-title {
    margin-bottom: 28px;
}

.resistance-products-section .title-header h2.title {
    position: relative;
    display: inline-block;
    padding-bottom: 14px;
}

.resistance-products-section .title-header h2.title:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 72px;
    height: 3px;
    background: linear-gradient(90deg, #cf9f3b 0%, #0d2b5c 100%);
    transform: translateX(-50%);
    border-radius: 999px;
}

.resistance-section-intro {
    max-width: 720px;
    margin: 0 auto 28px;
    text-align: center;
    color: #5f6b7a;
    font-size: 16px;
    line-height: 1.8;
}

.resistance-product-card {
    position: relative;
    margin-bottom: 30px;
    border: 1px solid #e7ebf2;
    border-radius: 18px;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 10px 28px rgba(13, 43, 92, 0.08);
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.resistance-product-card:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #cf9f3b 0%, #0d2b5c 100%);
}

.resistance-product-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 45px rgba(13, 43, 92, 0.16);
    border-color: #d2dbea;
}

.resistance-product-card .featured-thumbnail {
    margin: 0;
    padding: 28px 24px 18px;
    min-height: 290px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    position: relative;
}

.resistance-product-card .featured-thumbnail:after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(13, 43, 92, 0) 0%, rgba(13, 43, 92, 0.16) 50%, rgba(13, 43, 92, 0) 100%);
}

.resistance-product-card .featured-thumbnail img {
    width: 100%;
    max-height: 250px;
    object-fit: contain;
    transition: transform 0.35s ease;
}

.resistance-product-card:hover .featured-thumbnail img {
    transform: scale(1.04);
}

.resistance-product-card .featured-content {
    padding: 22px 18px 26px;
}

.resistance-product-label {
    display: inline-block;
    margin-bottom: 10px;
    padding: 6px 14px;
    border-radius: 999px;
    background: #f5f7fb;
    color: #6f7b8f;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.resistance-product-card .featured-title h5 {
    margin-bottom: 0;
    font-size: 20px;
    line-height: 1.4;
    color: #0d2b5c;
    transition: color 0.3s ease;
}

.resistance-product-card:hover .featured-title h5 {
    color: #cf9f3b;
}



.heritage-product-page {
    background:
        radial-gradient(circle at top left, rgba(173, 138, 79, 0.12), transparent 28%),
        linear-gradient(180deg, #f7f3ec 0%, #f2efe8 100%);
}

.heritage-shell {
    position: relative;
    padding: 70px 0 40px;
    overflow: hidden;
}

.heritage-shell:before,
.heritage-shell:after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.heritage-shell:before {
    top: 40px;
    right: -80px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(173, 138, 79, 0.16) 0%, rgba(173, 138, 79, 0) 72%);
}

.heritage-shell:after {
    bottom: 30px;
    left: -90px;
    width: 240px;
    height: 240px;
    background: radial-gradient(circle, rgba(23, 50, 74, 0.1) 0%, rgba(23, 50, 74, 0) 72%);
}

.heritage-shell .container {
    position: relative;
    z-index: 1;
}

.heritage-layout {
    align-items: flex-start;
    row-gap: 34px;
}

.heritage-main-card {
    /* padding: 34px;
        border: 1px solid rgba(23, 50, 74, 0.1);
        border-radius: 30px;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(252, 250, 246, 0.98) 100%);
        box-shadow: 0 24px 60px rgba(21, 35, 48, 0.08); */
}

.heritage-hero {
    /* align-items: center;
        margin-bottom: 34px;
        padding: 28px;
        border: 1px solid rgba(173, 138, 79, 0.2);
        border-radius: 24px;
        background:
            linear-gradient(125deg, rgba(255, 255, 255, 0.94) 0%, rgba(246, 239, 228, 0.9) 100%); */
}

.heritage-media {
    /* margin-bottom: 0;
        padding: 16px;
        border-radius: 22px;
        background: #ffffff;
        box-shadow: 0 16px 40px rgba(21, 35, 48, 0.08); */
}

.heritage-media .post-featured {
    border-radius: 16px;
    overflow: hidden;
    background: linear-gradient(180deg, #ffffff 0%, #f4f1ea 100%);
}

.heritage-media img {
    width: 100%;
    transition: transform 0.35s ease;
}

.heritage-media:hover img {
    transform: scale(1.025);
}

.heritage-copy {
    padding-left: 16px;
}

.heritage-copy h4 {
    margin-bottom: 18px;
    color: #17222e;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: 0.01em;
}

.heritage-copy p {
    margin-bottom: 12px;
    color: #5d6873;
    font-size: 16px;
    line-height: 1.85;
}

.heritage-copy p strong {
    color: #8f6b2f;
    letter-spacing: 0.08em;
}

.heritage-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 24px;
}

.heritage-actions .heritage-action-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 56px;
    width: 100%;
    padding: 14px 20px !important;
    border: 1px solid transparent !important;
    border-radius: 18px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    box-shadow: 0 18px 34px rgba(21, 35, 48, 0.12);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease,
        background-color 0.25s ease, color 0.25s ease;
}

.heritage-actions .heritage-action-btn i {
    font-size: 15px;
}

.heritage-actions .heritage-action-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 22px 38px rgba(21, 35, 48, 0.16);
}

.heritage-actions .heritage-action-primary {
    background: linear-gradient(135deg, #17324a 0%, #2f628d 100%) !important;
    color: #ffffff !important;
}

.heritage-actions .heritage-action-secondary {
    border-color: rgba(173, 138, 79, 0.5) !important;
    background: linear-gradient(135deg, #ffffff 0%, #f4ede1 100%) !important;
    color: #17324a !important;
}

.heritage-actions .heritage-action-secondary:hover {
    border-color: #ad8a4f !important;
    color: #8f6b2f !important;
}

.heritage-description {
    margin-top: 6px;
}

.heritage-feature-grid {
    row-gap: 24px;
}

.heritage-feature-card {
    height: 100%;
    padding: 26px 24px 24px;
    border: 1px solid rgba(23, 50, 74, 0.1);
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 18px 38px rgba(21, 35, 48, 0.05);
}

.heritage-feature-card h4 {
    margin: 0 0 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(173, 138, 79, 0.28);
    color: #17222e;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.heritage-feature-card .cmt-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.heritage-feature-card .cmt-list li {
    position: relative;
    margin-bottom: 14px;
    padding-left: 28px;
    color: #5d6873;
    line-height: 1.8;
}

.heritage-feature-card .cmt-list li:last-child {
    margin-bottom: 0;
}

.heritage-feature-card .cmt-list li i {
    position: absolute;
    top: 7px;
    left: 0;
    color: #ad8a4f !important;
}

.heritage-feature-card .cmt-list-li-content {
    color: #5d6873;
    font-size: 15px;
    line-height: 1.8;
}

.classic-product-sidebar {
    position: sticky;
    /* top: 120px; */
    padding: 28px 24px;
    border: 1px solid rgba(23, 50, 74, 0.12);
    border-radius: 28px;
    background: linear-gradient(180deg, #17324a 0%, #13283b 100%);
    box-shadow: 0 24px 50px rgba(21, 35, 48, 0.14);
}

.classic-product-sidebar .widget-title {
    margin-bottom: 22px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    color: #f5ede0;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.classic-product-sidebar .widget-menu {
    margin: 0;
    padding: 0;
    list-style: none;
}

.classic-product-sidebar.widget.widget-nav-menu ul li {
    margin-bottom: 12px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.05);
    transition: transform 0.25s ease, background-color 0.25s ease, border-color 0.25s ease;
}

.classic-product-sidebar.widget.widget-nav-menu ul li:last-child {
    margin-bottom: 0;
}

.classic-product-sidebar.widget.widget-nav-menu ul li:after {
    display: none;
}

.classic-product-sidebar.widget.widget-nav-menu ul li:hover,
.classic-product-sidebar.widget.widget-nav-menu ul li.active {
    border-color: rgba(173, 138, 79, 0.72);
    background: rgba(173, 138, 79, 0.16);
    transform: translateX(4px);
}

.classic-product-sidebar.widget.widget-nav-menu ul li h5 {
    margin: 0;
}

.classic-product-sidebar.widget.widget-nav-menu ul li h5 a {
    display: block;
    padding: 15px 18px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.45;
}

.classic-product-sidebar.widget.widget-nav-menu ul li:hover h5 a,
.classic-product-sidebar.widget.widget-nav-menu ul li.active h5 a {
    color: #ffffff;
}

.heritage-spec-row {
    margin-top: 34px;
}

.spec-table-card {
    margin: 0;
    border: 1px solid rgba(23, 50, 74, 0.1);
    border-radius: 30px;
    background: #ffffff;
    box-shadow: 0 24px 60px rgba(21, 35, 48, 0.08);
    overflow: hidden;
}

.spec-table-heading {
    margin: 0;
    padding: 24px 28px;
    background: linear-gradient(135deg, #17324a 0%, #8f6b2f 100%);
    color: #fdfbf7;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 29px;
    font-weight: 700;
    line-height: 1.22;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.spec-table-wrap {
    padding: 22px;
    overflow-x: auto;
    background: linear-gradient(180deg, #fffdf8 0%, #ffffff 100%);
}

.spec-table {
    width: 100%;
    /* min-width: 980px; */
    margin: 0;
    color: #2f4558;
    border-collapse: separate;
    border-spacing: 0;
}

.spec-table th,
.spec-table td {
    padding: 14px 16px;
    border-right: 1px solid #e0e5ea;
    border-bottom: 1px solid #e0e5ea;
    font-size: 15px;
    line-height: 1.5;
    vertical-align: middle;
    background: #ffffff;
}

.spec-table th:last-child,
.spec-table td:last-child {
    border-right: 0;
}

.spec-table thead th {
    background: #f2ecdf;
    color: #17222e;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
}

.spec-table thead th:first-child {
    border-top-left-radius: 16px;
    text-align: left;
}

.spec-table thead th:last-child {
    border-top-right-radius: 16px;
}

.spec-table tbody td:first-child {
    text-align: left;
    font-weight: 600;
}

.spec-table tbody td {
    text-align: center;
}

.spec-table .spec-row-blue td {
    background: #ffffff;
}

.spec-table .spec-row-grey td {
    background: #fbfaf7;
}

.spec-table .spec-row-blue:hover td,
.spec-table .spec-row-grey:hover td {
    background: #f7f1e7;
}

.spec-table .spec-section td {
    background: #efe4cf;
    color: #17222e;
    font-weight: 700;
    text-align: left;
    letter-spacing: 0.02em;
}

.spec-table .spec-unit {
    white-space: nowrap;
}

.spec-table .spec-model-label {
    display: none;
}

@media (max-width: 1199px) {
    .heritage-copy h4 {
        font-size: 32px;
    }
}

@media (max-width: 991px) {
    .heritage-shell {
        padding: 50px 0 30px;
    }

    .heritage-main-card {
        padding: 24px;
        border-radius: 24px;
    }

    .heritage-hero {
        padding: 18px;
    }

    .heritage-copy {
        padding-left: 0;
        padding-top: 14px;
    }

    .classic-product-sidebar {
        position: static;
        top: auto;
    }

    .spec-table-card {
        border-radius: 24px;
    }

    .spec-table-heading {
        padding: 18px 20px;
        font-size: 24px;
    }

    .spec-table-wrap {
        padding: 16px 12px;
    }
}

@media (max-width: 767px) {
    .heritage-shell {
        padding-top: 40px;
    }

    .heritage-main-card,
    .classic-product-sidebar,
    .spec-table-card {
        border-radius: 20px;
    }

    .heritage-copy h4 {
        font-size: 28px;
    }

    .heritage-actions {
        grid-template-columns: 1fr;
    }

    .spec-table {
        min-width: 100%;
    }

    .spec-table thead {
        display: none;
    }

    .spec-table,
    .spec-table tbody,
    .spec-table tr,
    .spec-table td {
        display: block;
        width: 100%;
    }

    .spec-table tbody tr {
        margin-bottom: 14px;
        border: 1px solid #e0e5ea;
        border-radius: 16px;
        overflow: hidden;
        box-shadow: 0 10px 20px rgba(21, 35, 48, 0.05);
    }

    .spec-table tbody tr:last-child {
        margin-bottom: 0;
    }

    .spec-table tbody td {
        position: relative;
        min-height: 50px;
        padding: 13px 14px 13px 46%;
        border-right: 0;
        text-align: left;
    }

    .spec-table tbody td:before {
        content: attr(data-label);
        position: absolute;
        top: 13px;
        left: 14px;
        width: calc(46% - 22px);
        color: #17222e;
        font-size: 12px;
        font-weight: 700;
        line-height: 1.35;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }

    .spec-table .spec-section td {
        padding: 14px;
    }

    .spec-table .spec-section td:before {
        content: none;
    }

    .spec-table .spec-model-label {
        display: inline-block;
        margin-right: 6px;
        color: #8f6b2f;
        font-size: 12px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }
}


.project-product-slider {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}

.project-product-slider .item img {
    width: 100%;
    display: block;
}

.project-product-slider .owl-nav button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 0;
    background: rgba(16, 36, 64, 0.82) !important;
    color: #fff !important;
    font-size: 26px !important;
    line-height: 1 !important;
    transition: background 0.25s ease;
}

.project-product-slider .owl-nav button:hover {
    background: #1e73be !important;
}

.project-product-slider .owl-nav .owl-prev {
    left: 16px;
}

.project-product-slider .owl-nav .owl-next {
    right: 16px;
}

.project-product-slider .owl-dots {
    position: absolute;
    right: 0;
    bottom: 18px;
    left: 0;
    text-align: center;
}

.project-product-slider .owl-dot span {
    width: 11px;
    height: 11px;
    margin: 0 5px;
    background: rgba(255, 255, 255, 0.55) !important;
}

.project-product-slider .owl-dot.active span {
    background: #ffffff !important;
}

.project-video-embed {
    position: relative;
    width: 100%;
    padding-bottom: 40%;
    overflow: hidden;
    border-radius: 20px;
    background: #000;
}

.project-video-embed iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

@media (max-width: 767px) {
    .project-product-slider .owl-nav button {
        width: 38px;
        height: 38px;
        font-size: 22px !important;
    }

    .project-product-slider .owl-nav .owl-prev {
        left: 10px;
    }

    .project-product-slider .owl-nav .owl-next {
        right: 10px;
    }
}

.news-showcase {
    padding: 72px 0 84px;
    background:
        radial-gradient(circle at top left, rgba(255, 189, 50, 0.18), transparent 32%),
        linear-gradient(180deg, #f8f6f1 0%, #ffffff 100%);
}

.news-event-card {
    overflow: hidden;
    border: 1px solid rgba(219, 166, 37, 0.24);
    border-radius: 32px;
    background: #ffffff;
    box-shadow: 0 24px 60px rgba(23, 50, 74, 0.1);
}

.news-event-poster {
    height: 100%;
    padding: 18px;
    background: linear-gradient(180deg, #fffdf7 0%, #f8f2e5 100%);
}

.news-event-poster img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 24px;
    object-fit: cover;
    box-shadow: 0 14px 34px rgba(23, 50, 74, 0.12);
}

.news-event-copy {
    padding: 48px 44px;
}

.news-event-kicker {
    display: inline-flex;
    align-items: center;
    margin-bottom: 18px;
    padding: 8px 16px;
    border-radius: 999px;
    background: #fff3cd;
    color: #8f6b2f;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.news-event-copy h2 {
    margin: 0 0 18px;
    color: #17324a;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1.12;
}

.news-event-copy p {
    margin-bottom: 24px;
    color: #526170;
    font-size: 18px;
    line-height: 1.9;
}

.news-event-meta {
    display: grid;
    gap: 16px;
    margin: 0;
}

.news-event-meta-item {
    padding: 18px 20px;
    border-radius: 20px;
    background: #f8f6f1;
    border: 1px solid rgba(23, 50, 74, 0.08);
}

.news-event-meta-label {
    display: block;
    margin-bottom: 6px;
    color: #c7342f;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.news-event-meta-value {
    margin: 0;
    color: #17222e;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.35;
}

@media (max-width: 991px) {
    .news-showcase {
        padding: 54px 0 64px;
    }

    .news-event-copy {
        padding: 34px 28px;
    }

    .news-event-copy h2 {
        font-size: 34px;
    }
}

@media (max-width: 767px) {
    .news-event-card {
        border-radius: 24px;
    }

    .news-event-poster {
        padding: 14px;
    }

    .news-event-poster img {
        border-radius: 18px;
    }

    .news-event-copy {
        padding: 28px 20px;
    }

    .news-event-copy h2 {
        font-size: 28px;
    }

    .news-event-copy p {
        font-size: 16px;
    }

    .news-event-meta-value {
        font-size: 20px;
    }
}

/* Contact page */
.contact-page-section {
    background:
        radial-gradient(circle at top left, rgba(45, 143, 213, 0.14), transparent 28%),
        linear-gradient(180deg, #eef5fb 0%, #ffffff 100%);
}

.contact-hero-shell {
    position: relative;
    overflow: hidden;
    border-radius: 32px;
    background: linear-gradient(135deg, #0f243a 0%, #0f4972 55%, #2d8fd5 100%);
    box-shadow: 0 28px 60px rgba(8, 34, 59, 0.18);
}

.contact-hero-shell:before,
.contact-hero-shell:after {
    content: "";
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
}

.contact-hero-shell:before {
    width: 240px;
    height: 240px;
    top: -70px;
    right: 20%;
}

.contact-hero-shell:after {
    width: 340px;
    height: 340px;
    right: -120px;
    bottom: -140px;
}

.contact-hero-content {
    position: relative;
    z-index: 1;
    padding: 58px 54px;
}

.contact-hero-label,
.contact-card-label,
.contact-section-label,
.contact-rep-kicker {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.contact-hero-label {
    padding: 8px 16px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    color: #ffffff;
    margin-bottom: 24px;
}

.contact-hero-title {
    margin-bottom: 18px;
    color: #ffffff;
    font-size: 46px;
    line-height: 1.14;
    font-weight: 700;
}

.contact-hero-text {
    max-width: 560px;
    margin-bottom: 30px;
    color: rgba(255, 255, 255, 0.86);
    font-size: 18px;
    line-height: 1.9;
}

.contact-form-panel {
    max-width: 640px;
}

.contact-hero-form {
    margin-top: 8px;
}

.contact-form-group {
    margin-bottom: 18px;
}

.contact-form-group label {
    display: block;
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.4px;
}

.contact-form-control {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.10);
    color: #ffffff;
    padding: 15px 18px;
    transition: border-color 0.25s ease, background-color 0.25s ease, box-shadow 0.25s ease;
}

.contact-form-control::placeholder {
    color: rgba(255, 255, 255, 0.64);
}

.contact-form-control:focus {
    outline: none;
    border-color: rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.16);
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.10);
}

textarea.contact-form-control {
    min-height: 150px;
    resize: vertical;
}

.contact-form-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 190px;
    border: 0;
    border-radius: 999px;
    background: #ffffff;
    color: #0f3351;
    padding: 15px 28px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.4px;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}

.contact-form-submit:hover {
    background: #e9f5ff;
    box-shadow: 0 18px 34px rgba(7, 24, 39, 0.22);
    transform: translateY(-1px);
}

.contact-action-list,
.contact-chip-list,
.contact-rep-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.contact-action-list {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.contact-action-list li {
    flex: 1 1 240px;
}

.contact-action-pill {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 72px;
    padding: 14px 18px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
    backdrop-filter: blur(6px);
}

.contact-action-pill i,
.contact-detail-icon,
.contact-rep-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.contact-action-pill i {
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.16);
    font-size: 18px;
}

.contact-action-pill span {
    display: block;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    opacity: 0.82;
}

.contact-action-pill strong,
.contact-action-pill a {
    color: #ffffff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
}

.contact-office-card,
.contact-map-panel,
.contact-support-panel,
.contact-rep-card {
    position: relative;
    background: #ffffff;
    border-radius: 24px;
    box-shadow: 0 20px 48px rgba(8, 34, 59, 0.10);
}

.contact-office-card {
    height: 100%;
    padding: 34px 30px;
}

.contact-card-label {
    color: #2d8fd5;
    margin-bottom: 14px;
}

.contact-company-name {
    margin-bottom: 24px;
    color: #12263d;
    font-size: 24px;
    line-height: 1.24;
    font-weight: 700;
}

.contact-detail-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.contact-detail-list li,
.contact-rep-list li {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 18px;
    color: #2a3b52;
    font-size: 17px;
    line-height: 1.8;
}

.contact-detail-list li:last-child,
.contact-rep-list li:last-child {
    margin-bottom: 0;
}

.contact-detail-icon,
.contact-rep-icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: #edf6fd;
    color: #2d8fd5;
    font-size: 18px;
    margin-top: 2px;
}

.contact-detail-list a,
.contact-rep-list a {
    color: #1568bf;
    text-decoration: underline;
}

.contact-subgrid {
    margin-top: 34px;
}

.contact-map-panel,
.contact-support-panel {
    height: 100%;
    /* padding: 32px 30px; */
}

.contact-section-label {
    color: #2d8fd5;
    margin-bottom: 10px;
}

.contact-panel-title,
.contact-network-title,
.contact-rep-title,
.contact-rep-city {
    color: #12263d;
}

.contact-panel-title {
    margin-bottom: 14px;
    font-size: 30px;
    line-height: 1.25;
    font-weight: 700;
}

.contact-panel-text,
.contact-network-text {
    color: #5c6b7f;
    line-height: 1.9;
}

.contact-map-frame {
    overflow: hidden;
    margin-top: 22px;
    border-radius: 18px;
    box-shadow: 0 12px 34px rgba(8, 34, 59, 0.12);
}

.contact-map-frame iframe {
    width: 100%;
    height: 330px;
    border: 0;
}

.contact-support-panel {
    background: linear-gradient(180deg, #fff9ef 0%, #ffffff 100%);
}

.contact-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 24px 0 26px;
}

.contact-chip-list li {
    padding: 10px 16px;
    border-radius: 999px;
    background: #ffffff;
    border: 1px solid #f0d9a6;
    color: #8f5f00;
    font-weight: 700;
    letter-spacing: 0.2px;
}

.contact-representatives-wrap {
    margin-top: 40px;
}

.contact-network-head {
    max-width: 760px;
    margin: 0 auto 30px;
    text-align: center;
}

.contact-network-title {
    margin-bottom: 12px;
    font-size: 40px;
    line-height: 1.2;
    font-weight: 700;
}

.contact-rep-card {
    overflow: hidden;
    height: 100%;
    padding: 30px 28px;
    border: 1px solid #edf1f5;
}

.contact-rep-card:after {
    content: attr(data-city);
    position: absolute;
    top: 18px;
    right: 18px;
    color: rgba(18, 38, 61, 0.05);
    font-size: 52px;
    font-weight: 700;
    line-height: 1;
    pointer-events: none;
}

.contact-rep-kicker {
    color: #2d8fd5;
    margin-bottom: 10px;
}

.contact-rep-city {
    margin-bottom: 6px;
    font-size: 29px;
    line-height: 1.2;
    font-weight: 700;
}

.contact-rep-title {
    margin-bottom: 20px;
    font-size: 24px;
    line-height: 1.35;
    font-weight: 700;
}

@media (max-width: 1199px) {
    .contact-hero-content {
        padding: 48px 40px;
    }

    .contact-hero-title {
        font-size: 40px;
    }
}

@media (max-width: 991px) {
    .contact-hero-shell {
        border-radius: 24px;
    }

    .contact-hero-content,
    .contact-office-card,
    .contact-map-panel,
    .contact-support-panel,
    .contact-rep-card {
        padding: 28px 24px;
    }

    .contact-hero-title {
        font-size: 34px;
    }

    .contact-company-name,
    .contact-panel-title {
        font-size: 28px;
    }

    .contact-network-title {
        font-size: 34px;
    }

    .contact-rep-city {
        font-size: 26px;
    }
}

@media (max-width: 767px) {

    .contact-hero-content,
    .contact-office-card,
    .contact-map-panel,
    .contact-support-panel,
    .contact-rep-card {
        padding: 24px 20px;
    }

    .contact-hero-title {
        font-size: 29px;
    }

    .contact-hero-text,
    .contact-panel-text,
    .contact-network-text,
    .contact-detail-list li,
    .contact-rep-list li {
        font-size: 16px;
    }

    .contact-company-name,
    .contact-panel-title {
        font-size: 24px;
    }

    .contact-network-title {
        font-size: 29px;
    }

    .contact-form-control {
        padding: 14px 16px;
    }

    .contact-form-submit {
        width: 100%;
    }

    .contact-map-frame iframe {
        height: 260px;
    }
}


/****SEO  START****/

.location-heading {
    background-color: #0977ba;
    color: #fff;
    text-align: center;
    padding: 8px 0px;
    margin: 30px 0px;
    display: block;
    font-size: 26px;
}

.location-subHeading {
    margin: 0 0 15px;
    font-weight: 700;
    font-family: 'Source Sans Pro', sans-serif;
    color: #333;
    font-size: 18px;
    display: block;
    text-align: center;
    background: #0977ba17;
    padding: 13px;
    border-radius: 8px;
}

hr {
    margin-top: 5px;
    margin-bottom: 5px;
    border: 0;
    border-top: 1px solid #ccc;
}


.pricing-block .inner-box div {
    display: flex;
    justify-content: left;
    align-items: center;
    gap: 11px;
}

.inner-box div:hover {
    background-color: #eeeeee;
}

.pricing-block {
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    padding: 20px;
}

.heading-one {
    font-size: 18px;
    color: #000;
    background: #13850017;
    margin-bottom: 15px !important;
    line-height: 32px !important;
    padding: 12px;
    border-bottom: 2px solid #0977ba;
    border-radius: 6px;
    /* margin-top: 20px; */
    text-shadow: 0 4px 4px rgba(0, 0, 0, .3);
}

@media screen and (max-width: 600px) {
    .heading-one {
        font-size: 26px !important;
    }
}

.heading-two~.heading-three {
    margin-left: 0.6%;
}

.heading-two {
    font-size: 24px;
    color: #000;
    background: #13850017;
    margin-bottom: 15px !important;
    line-height: 30px !important;
    padding: 12px;
    border-left: 2px solid #0977ba;
    border-radius: 6px;
    margin-top: 15px;

}

.heading-two~p {
    padding-left: 1.5%;
}

@media screen and (max-width: 600px) {
    .heading-two {
        font-size: 19px !important;
    }
}

.heading-three {
    font-size: 18px;
    color: #000;
    background-image: linear-gradient(to right, #13850017, #fff);
    margin-bottom: 12px !important;
    line-height: 24px !important;
    padding: 12px;
    border-left: 2px solid #0977ba;
    border-radius: 6px;
    margin-top: 12px;

}

.heading-three~p {
    padding-left: 1.5%;
}


.triangle li::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 6px solid transparent !important;
    border-bottom: 6px solid transparent !important;
    border-left: 10px solid #0977ba;
    position: absolute;
    left: 0;
    top: 7px;
}

.triangle {
    padding-left: 1.5rem;
}

ul.triangle li {
    position: relative;
    padding-left: 20px;
    padding-bottom: 10px;
}

/* Ordered List Styling */
ol[type="1"] {
    counter-reset: list-counter;
    padding-left: 2rem;
    margin-bottom: 1rem;
}

ol[type="1"]>li {
    counter-increment: list-counter;
    list-style: none;
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

ol[type="1"]>li::before {
    content: counter(list-counter) ". ";
    font-weight: bold;
    color: #000;
    position: absolute;
    left: 0;
    top: 0;
}

/* Circle List Styling */
ul.circle {
    padding-left: 1.5rem;
    margin-top: 0.5rem;
}

ul.circle>li {
    position: relative;
    padding-left: 2rem;
    margin-bottom: 0.5rem;
}

ul.circle>li::before {
    content: "\2713";
    font-size: 9px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #f26237;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 0;
    top: 0.4em;
    color: #f26237;
}


.accordion-item {
    margin-bottom: 15px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    border: 1px solid #eee;
}

.accordion {
    width: 100%;
    padding: 18px 20px;
    font-size: 16px;
    font-weight: 500;
    text-align: left;
    background: #f8f9fa;
    color: black;
    border: none;
    cursor: pointer;
    position: relative;
    transition: all 0.3s ease;
}

.accordion:hover {
    background: #e9ecef;
}

.accordion::after {
    content: "+";
    position: absolute;
    right: 20px;
    font-size: 20px;
    transition: transform 0.3s ease;
}

.accordion.active::after {
    content: "-";
}

.panel {
    padding: 0 20px;
    background: #fff;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
}

.panel p {
    margin: 15px 0;
    color: #000;
    line-height: 1.6;
}

.box-one {
    /* height: 360px; */
    text-align: center;
}

.imgs {
    border: 2px solid #0977ba;
    padding: 5px;
    object-fit: contain;
    height: 100%;
    width: 100%;
}

ul {
    list-style-type: none;
}

ol,
.circle ul {
    padding-left: 2rem !important;
}

.table-responsive {
    margin-left: 1.5%;
}

table {
    border: 1px solid #0977ba !important;
}

thead tr th {
    background-color: #0977ba17 !important;
    /* color: white; */
}

tr th {
    background-color: #0977ba17 !important;
    /* color: white; */
}

thead {
    background-color: #0977ba17 !important;
    /* color: white; */
}

/****SEO  END****/

@media only screen and (max-width: 767px) {
    .page-header-box span {
        font-size: 30px;
    }
}

@media only screen and (max-width: 991px) {
    .page-header-box span {
        font-size: 45px;
        margin-bottom: 10px;
    }
}

.page-header-box span {
    display: inline-block;
    font-size: 60px;
    font-weight: 600;
    letter-spacing: -0.02em;
    color: var(--white-color);
    margin-bottom: 15px;
    cursor: none;
    line-height: 1.1em;
}

/* SEO product layout alignment for existing legacy markup */
[itemprop="articleBody"] {
    color: #333;
}

[itemprop="articleBody"] .container_16,
[itemprop="articleBody"] .grid_16 {
    width: min(100%, 1200px);
    margin: 0 auto;
    float: none;
}

[itemprop="articleBody"] .heatingProjectWrap {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 32px;
    margin: 0 0 32px;
    padding: 28px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(18, 33, 51, 0.08);
}

[itemprop="articleBody"] .productThumbimg {
    flex: 0 0 340px;
    max-width: 340px;
    width: 100%;
    text-align: center;
}

[itemprop="articleBody"] .productThumbimg>a:first-child {
    display: block;
    overflow: hidden;
    border: 2px solid #0977ba;
    border-radius: 14px;
    background: #fff;
    padding: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

[itemprop="articleBody"] .productThumbimg img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    border-radius: 10px;
}

[itemprop="articleBody"] .productThumbimg .button.button2,
[itemprop="articleBody"] .inner .button.button2 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    margin-top: 18px;
    padding: 12px 26px;
    border: 0;
    border-radius: 999px;
    background: #0977ba;
    color: #fff;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 10px 22px rgba(9, 119, 186, 0.2);
}

[itemprop="articleBody"] .inner {
    flex: 1 1 0;
    min-width: 280px;
}

[itemprop="articleBody"] .inner p {
    margin-bottom: 14px;
    line-height: 1.8;
    color: #000000;
}

[itemprop="articleBody"] .heading2 {
    font-size: 24px;
    color: #000;
    background: #13850017;
    margin: 22px 0 16px !important;
    line-height: 1.35 !important;
    padding: 12px 16px;
    border-left: 3px solid #0977ba;
    border-radius: 8px;
}

[itemprop="articleBody"] .list {
    margin: 0;
    padding: 0;
    list-style: none;
}

[itemprop="articleBody"] .list li {
    position: relative;
    padding: 0 0 12px 22px;
    line-height: 1.75;
    color: #000;
}

[itemprop="articleBody"] .list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 0;
    height: 0;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10px solid #0977ba;
}

[itemprop="articleBody"] .row {
    row-gap: 24px;
}

[itemprop="articleBody"] table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border: 1px solid #0977ba !important;
    overflow: hidden;
    border-radius: 10px;
}

[itemprop="articleBody"] table td,
[itemprop="articleBody"] table th {
    padding: 12px 14px;
    border: 1px solid rgba(9, 119, 186, 0.18);
    vertical-align: top;
}

[itemprop="articleBody"] table tr:nth-child(odd) td {
    background: rgba(9, 119, 186, 0.04);
}

[itemprop="articleBody"] .spot-cum-projection {
    margin-top: 8px;
    padding-bottom: 10px;
}

[itemprop="articleBody"] .jwts_tabberlive {
    padding: 28px;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 36px rgba(18, 33, 51, 0.08);
}

[itemprop="articleBody"] .jwts_tabbernav {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 20px;
    padding: 0;
}

[itemprop="articleBody"] .jwts_tabbernav li {
    list-style: none;
}

[itemprop="articleBody"] .jwts_tabbernav a,
[itemprop="articleBody"] .jwts_heading a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    border-radius: 999px;
    background: rgba(9, 119, 186, 0.09);
    color: #0977ba;
    font-weight: 700;
    text-decoration: none;
}

[itemprop="articleBody"] .jwts_heading {
    margin-bottom: 16px;
}

[itemprop="articleBody"] .videoProject {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

[itemprop="articleBody"] .videoBox {
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(18, 33, 51, 0.1);
}

[itemprop="articleBody"] .videoBox iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    min-height: 220px;
}

@media only screen and (max-width: 991px) {
    [itemprop="articleBody"] .heatingProjectWrap {
        padding: 22px;
        gap: 24px;
    }

    [itemprop="articleBody"] .productThumbimg {
        flex-basis: 100%;
        max-width: 100%;
    }

    [itemprop="articleBody"] .inner {
        min-width: 100%;
    }

    [itemprop="articleBody"] .videoProject {
        grid-template-columns: 1fr;
    }
}

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

    [itemprop="articleBody"] .container_16,
    [itemprop="articleBody"] .grid_16 {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
    }

    [itemprop="articleBody"] .heatingProjectWrap,
    [itemprop="articleBody"] .jwts_tabberlive {
        padding: 18px;
        border-radius: 14px;
    }

    [itemprop="articleBody"] .heading2 {
        font-size: 20px;
        padding: 10px 12px;
    }

    [itemprop="articleBody"] .productThumbimg .button.button2,
    [itemprop="articleBody"] .inner .button.button2 {
        width: 100%;
    }

    [itemprop="articleBody"] table td,
    [itemprop="articleBody"] table th {
        padding: 10px 12px;
        font-size: 14px;
    }

    [itemprop="articleBody"] .videoBox iframe {
        min-height: 190px;
    }
}




.news-showcase {
    padding: 70px 0;
}

.news-event-card {
    padding: 24px;
    border: 1px solid rgba(23, 50, 74, 0.1);
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 18px 40px rgba(21, 35, 48, 0.08);
}

.news-event-poster img {
    display: block;
    width: 100%;
    border-radius: 18px;
}

.news-event-copy {
    padding: 12px 8px 12px 28px;
}

.news-event-copy p {
    margin: 0;
    color: #17324a;
    font-size: 22px;
    line-height: 1.9;
}

@media (max-width: 991px) {
    .news-showcase {
        padding: 50px 0;
    }

    .news-event-copy {
        padding: 24px 0 0;
    }
}

@media (max-width: 767px) {
    .news-event-card {
        padding: 16px;
        border-radius: 18px;
    }

    .news-event-poster img {
        border-radius: 14px;
    }

    .news-event-copy p {
        font-size: 18px;
    }
}

.keje-testimonial-legacy {
    display: none;
}

.keje-testimonial-section {
    padding: 95px 0 50px;
    background: linear-gradient(180deg, #f5f7fb 0%, #edf2f7 100%);
}

.keje-review-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 34px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e6e9ee;
}

.keje-review-header .title-header {
    flex: 1 1 auto;
    text-align: left;
}

.keje-testimonial-section .section-title .title-header .title {
    color: #12263f;
    margin-bottom: 8px;
    font-size: 44px;
    line-height: 1.1;
}

.keje-testimonial-actions {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: auto;
}

.keje-review-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 18px;
    min-width: 190px;
    border: 1px solid #40aafa;
    border-radius: 3px;
    background: #40aafa;
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    box-shadow: 0 12px 24px rgba(64, 170, 250, 0.22);
    transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}

.keje-review-cta:hover,
.keje-review-cta:focus {
    color: #ffffff;
    background: #1f8ee2;
    border-color: #1f8ee2;
    transform: translateY(-1px);
}

.keje-review-cta i {
    font-size: 13px;
}

.keje-review-summary {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    color: #8f98a3;
    font-size: 13px;
    line-height: 1.4;
}

.keje-review-score {
    color: #12263f;
    font-size: 26px;
    font-weight: 600;
}

.keje-review-stars {
    display: inline-flex;
    gap: 2px;
    color: #f14941;
    font-size: 14px;
}

.keje-review-count {
    color: #9ca4ad;
    font-size: 12px;
    font-weight: 500;
}

.keje-testimonial-slider .owl-stage {
    display: flex;
}

.keje-testimonial-slider .owl-item {
    display: flex;
    padding: 8px 0 16px;
}

.keje-testimonial-slider .owl-item .testimonials {
    width: 100%;
}

.keje-review-card .testimonial-content {
    display: flex;
    flex-direction: column;
    gap: 18px;
    height: 100%;
    padding: 30px 28px;
    border: 1px solid #d8e1eb;
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 18px 42px rgba(15, 34, 58, 0.08);
    color: #17324a;
    text-align: left;
}

.keje-review-card .testimonial-content .quote-icon {
    display: none !important;
}

.keje-review-top {
    display: flex;
    align-items: center;
    gap: 16px;
}

.keje-review-card .testimonial-avatar {
    flex-shrink: 0;
}

.keje-review-card .testimonial-avatar .testimonial-img {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    margin: 0;
    border-radius: 50%;
    background: linear-gradient(135deg, #4285f4 0%, #0778bd 100%);
    box-shadow: 0 12px 28px rgba(255, 122, 24, 0.28);
}

.keje-review-card .testimonial-avatar .testimonial-img span {
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.08em;
}

.keje-review-card .testimonial-caption {
    flex: 1;
    padding: 0;
    text-align: left;
}

.keje-review-card .testimonial-caption h6 {
    margin-bottom: 4px;
    color: #12263f;
    font-size: 25px;
    line-height: 1.15;
    font-weight: 700;
}

.testimonials.keje-review-card .testimonial-content .testimonial-caption label {
    margin: 0;
    color: #708296;
    font-size: 15px;
    line-height: 1.45;
}

.keje-review-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border: 1px solid #dce5ef;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffffff 0%, #f4f7fb 100%);
    color: #4285f4;
    font-size: 26px;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 10px 24px rgba(17, 38, 62, 0.08);
}

.keje-review-card .cmt-ratting-star {
    display: flex;
    gap: 8px;
    color: #ffbc00;
    font-size: 20px;
    line-height: 1;
}

.keje-review-card .cmt-ratting-star i {
    margin: 0;
}

.testimonials.keje-review-card .cmt-ratting-star i.fa-star:before {
    color: #0778bd;
}

.keje-review-card .testimonial-content blockquote {
    margin: 0;
    padding: 0;
    color: #364b62;
    font-size: 17px;
    line-height: 1.78;
    text-align: left;
}

.keje-testimonial-slider.owl-theme .owl-dots {
    margin-top: 18px;
    text-align: center;
}

.keje-testimonial-slider.owl-theme .owl-dots .owl-dot span {
    width: 11px;
    height: 11px;
    margin: 0 6px;
    border-radius: 999px;
    background: #c5d0dc;
    opacity: 1;
    transition: all 0.3s ease;
}

.keje-testimonial-slider.owl-theme .owl-dots .owl-dot.active span,
.keje-testimonial-slider.owl-theme .owl-dots .owl-dot:hover span {
    width: 34px;
    background: #17324a;
}

.seam-inline-form {
    position: relative;
    /* margin-top: 26px; */
    padding: 8px 20px 8px;
    border-radius: 34px;
    background: linear-gradient(180deg, #eef7ff 0%, #ffffff 100%);
    border: 1px solid #c6def4;
    box-shadow: 0 18px 42px rgba(110, 160, 203, 0.14);
    overflow: hidden;
    text-align: center;
}

.seam-inline-form::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0) 58%);
    pointer-events: none;
}

.seam-inline-form-label {
    position: relative;
    display: inline-block;
    margin-bottom: 8px;
    padding: 12px 18px;
    border-radius: 999px;
    color: #0075c9;
    background: linear-gradient(180deg, #e8f3fb 0%, #d9ebf8 100%);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.seam-inline-form p {
    position: relative;
    margin-bottom: 18px;
    color: #5c6b7f;
    line-height: 1.7;
}

.seam-inline-form-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 18px;
}

.seam-inline-field {
    position: relative;
}

.seam-inline-field-tag {
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    color: rgba(9, 119, 186, 0.62);
    font-size: 13px;
    font-weight: 600;
    pointer-events: none;
    z-index: 2;
}

.seam-inline-field-textarea .seam-inline-field-tag {
    top: 22px;
    transform: none;
}

.seam-inline-form-control {
    width: 100%;
    min-height: 52px;
    padding: 15px 16px;
    border: 1px solid #e3edf5;
    border-radius: 0;
    background: #ffffff;
    color: #415978;
    box-shadow: 0 10px 24px rgba(141, 178, 209, 0.18);
    font-size: 15px;
    transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease, background-color 0.25s ease;
}

.seam-inline-form-control::placeholder {
    color: #7187a4;
    opacity: 1;
}

.seam-inline-form-control:focus {
    outline: none;
    border-color: #9bc8ea;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(125, 185, 227, 0.16), 0 16px 30px rgba(141, 178, 209, 0.2);
    transform: translateY(-1px);
}

textarea.seam-inline-form-control {
    min-height: 82px;
    padding-top: 18px;
    padding-right: 18px;
    border-radius: 18px;
    resize: vertical;
}

.seam-inline-form-submit {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 180px;
    min-height: 54px;
    margin-top: 4px;
    padding: 14px 30px;
    border: 0;
    border-radius: 0;
    background: linear-gradient(180deg, #1f90d5 0%, #1178c0 100%);
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.01em;
    box-shadow: 0 12px 24px rgba(17, 120, 192, 0.2);
    transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease, filter 0.25s ease;
}

.seam-inline-form-submit:hover {
    filter: brightness(1.03);
    transform: translateY(-2px);
    box-shadow: 0 16px 28px rgba(17, 120, 192, 0.24);
}

.hidden {
    display: none;
}

@media (max-width: 767px) {
    .seam-inline-form {
        padding: 22px 20px 24px;
        border-radius: 28px;
    }

    .seam-inline-form-grid {
        grid-template-columns: 1fr;
    }

    .seam-inline-form-submit {
        width: 100%;
    }
}

.products-range-section {
    position: relative;
    /* padding: 58px 0 44px; */
    background:
        radial-gradient(circle at top left, rgba(20, 129, 206, 0.12), transparent 30%),
        linear-gradient(180deg, #f4faff 0%, #ffffff 100%);
}

.products-range-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0) 42%);
    pointer-events: none;
}

.products-range-section .container_16 {
    position: relative;
    z-index: 1;
}

.products-range-title {
    margin-bottom: 30px;
    padding-top: 20px;
    color: #17324a;
    font-size: 34px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.products-range-list {
    /* margin: 0 0 28px;
        padding: 24px 22px;
        list-style: none;
        min-height: 100%;
        border: 1px solid rgba(20, 129, 206, 0.14);
        border-radius: 28px;
        background: rgba(255, 255, 255, 0.88);
        box-shadow: 0 18px 38px rgba(30, 80, 120, 0.1);
        backdrop-filter: blur(2px); */
}

.products-range-section .keywords li {
    margin: 0 0 12px;
    padding: 0;
}

.products-range-section .keywords li:last-child {
    margin-bottom: 0;
}

.products-range-section .keywords li a {
    display: block;
    padding: 13px 18px 13px 44px;
    border: 1px solid #d9e8f5;
    border-radius: 16px;
    background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
    color: #36506b;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.45;
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.products-range-section .keywords li a::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: linear-gradient(180deg, #1f90d5 0%, #1178c0 100%);
    box-shadow: 0 0 0 5px rgba(31, 144, 213, 0.12);
    transform: translateY(-50%);
}

.products-range-section .keywords li a:hover {
    color: #0f5f98;
    border-color: #9bc8ea;
    box-shadow: 0 14px 28px rgba(31, 144, 213, 0.14);
    transform: translateY(-2px);
}

@media (max-width: 991px) {
    .products-range-section {
        padding: 46px 0 34px;
    }

    .products-range-title {
        font-size: 29px;
    }

    .products-range-list {
        padding: 20px 18px;
        border-radius: 22px;
    }
}

@media (max-width: 767px) {
    .products-range-section {
        padding: 38px 0 24px;
    }

    .products-range-title {
        margin-bottom: 22px;
        font-size: 25px;
    }

    .products-range-section .keywords li a {
        padding: 12px 15px 12px 40px;
        font-size: 14px;
        border-radius: 14px;
    }

    .products-range-section .keywords li a::before {
        left: 16px;
        width: 10px;
        height: 10px;
    }
}

.faq-accordion {
    margin-top: 20px;
}

.faq-item {
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    margin-bottom: 15px;
    overflow: hidden;
    background: #fff;
}

.faq-question {
    width: 100%;
    border: 0;
    background: transparent;
    text-align: left;
    padding: 18px 50px 18px 20px;
    position: relative;
    cursor: pointer;
    font-size: 20px;
    font-weight: 600;
    color: #1f1f1f;
}

.faq-question:focus {
    outline: 2px solid #c41e3a;
    outline-offset: -2px;
}

.faq-question::after {
    content: "+";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    line-height: 1;
}

.faq-item.active .faq-question::after {
    content: "-";
}

.faq-answer {
    display: none;
    padding: 0 20px 18px;
}

.faq-answer p {
    margin-bottom: 0;
}



.news-showcase {
    padding: 70px 0;
}

.news-event-card {
    padding: 24px;
    border: 1px solid rgba(23, 50, 74, 0.1);
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 18px 40px rgba(21, 35, 48, 0.08);
}

.news-event-poster img {
    display: block;
    width: 100%;
    border-radius: 18px;
}

.news-event-copy {
    padding: 12px 8px 12px 28px;
}

.news-event-copy p {
    margin: 0;
    color: #17324a;
    font-size: 22px;
    line-height: 1.9;
}

@media (max-width: 991px) {
    .news-showcase {
        padding: 50px 0;
    }

    .news-event-copy {
        padding: 24px 0 0;
    }
}

@media (max-width: 767px) {
    .news-event-card {
        padding: 16px;
        border-radius: 18px;
    }

    .news-event-poster img {
        border-radius: 14px;
    }

    .news-event-copy p {
        font-size: 18px;
    }
}



.market-map-shell {
    position: relative;
    overflow: hidden;
    padding: 18px;
    border-radius: 32px;
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.22), transparent 34%),
        linear-gradient(145deg, rgba(8, 33, 61, 0.95), rgba(11, 88, 116, 0.92));
    box-shadow: 0 28px 60px rgba(0, 0, 0, 0.22);
}

.market-map-shell::before,
.market-map-shell::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    opacity: 0.28;
}

.market-map-shell::before {
    top: -90px;
    left: -70px;
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.38), transparent 68%);
}

.market-map-shell::after {
    right: -60px;
    bottom: -90px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(255, 196, 77, 0.32), transparent 70%);
}

.market-map-topbar {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
    flex-wrap: wrap;
}

.market-map-stat {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 12px 18px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
    color: #fff;
}

.market-map-stat i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(145deg, #ffb703, #fb8500);
    box-shadow: 0 12px 24px rgba(251, 133, 0, 0.35);
    font-size: 18px;
}

.market-map-stat strong,
.market-map-stat span {
    display: block;
    line-height: 1.2;
}

.market-map-stat strong {
    font-size: 18px;
    font-weight: 700;
    color: #ffffff;
}

.market-map-stat span {
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.78);
}

.market-map-note {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.82);
    margin: 0;
}

.market-map-frame {
    position: relative;
    z-index: 1;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 24px;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.market-map-frame::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 401;
    pointer-events: none;
    background:
        radial-gradient(circle at center, transparent 56%, rgba(5, 15, 24, 0.2) 100%),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.06), transparent 24%, transparent 76%, rgba(5, 15, 24, 0.08));
}

#map {
    height: 430px;
    width: 100%;
    border-radius: 24px;
}

#map .leaflet-tile {
    filter: saturate(1.08) contrast(1.04) brightness(0.98);
}

#map .leaflet-control-zoom a {
    background: rgba(10, 22, 36, 0.82);
    color: #ffffff;
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

#map .leaflet-control-zoom a:hover {
    background: rgba(255, 183, 3, 0.92);
    color: #08121d;
}

.market-location-list {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: 18px;
}

.market-location-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.09);
    color: #fff;
    font-size: 14px;
    cursor: pointer;
    transition: transform 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;
}

.market-location-chip i {
    color: #ffd166;
    font-size: 14px;
}

.market-location-chip:hover,
.market-location-chip.is-active {
    transform: translateY(-3px);
    background: rgba(255, 209, 102, 0.18);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.16);
}

.market-pin-wrapper {
    background: transparent;
    border: 0;
}

.market-pin {
    position: relative;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: linear-gradient(145deg, #ffb703, #f94144);
    border: 3px solid #ffffff;
    box-shadow: 0 0 0 8px rgba(255, 183, 3, 0.16);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.market-pin::before,
.market-pin::after {
    content: "";
    position: absolute;
    inset: 50%;
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.market-pin::before {
    width: 9px;
    height: 9px;
    background: #ffffff;
    z-index: 2;
}

.market-pin::after {
    width: 24px;
    height: 24px;
    border: 2px solid rgba(255, 209, 102, 0.7);
    animation: marketPinPulse 2.2s infinite ease-out;
}

.leaflet-marker-icon.active-pin .market-pin {
    transform: scale(1.16);
    box-shadow: 0 0 0 12px rgba(255, 183, 3, 0.2);
}

.leaflet-popup-content-wrapper {
    border-radius: 16px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18);
}

.market-popup {
    min-width: 150px;
    padding: 4px 2px;
}

.market-popup strong {
    display: block;
    font-size: 15px;
    color: #0b3d5c;
    margin-bottom: 4px;
}

.market-popup span {
    font-size: 12px;
    color: #5c6770;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

@keyframes marketPinPulse {
    0% {
        opacity: 0.75;
        transform: translate(-50%, -50%) scale(1);
    }

    70% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(2.8);
    }

    100% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(3);
    }
}

@media (max-width: 991px) {
    .market-map-shell {
        padding: 14px;
        border-radius: 24px;
    }

    #map {
        height: 380px;
    }
}

@media (max-width: 575px) {
    .market-map-topbar {
        flex-direction: column;
        align-items: stretch;
    }

    .market-map-stat {
        width: 100%;
    }

    #map {
        height: 320px;
    }
}






/* required styles */

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane>svg,
.leaflet-pane>canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
    position: absolute;
    left: 0;
    top: 0;
}

.leaflet-container {
    overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -webkit-user-drag: none;
}

/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::selection {
    background: transparent;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
    image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
    width: 1600px;
    height: 1600px;
    -webkit-transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
    display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
    max-width: none !important;
    max-height: none !important;
}

.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
    max-width: none !important;
    max-height: none !important;
    width: auto;
    padding: 0;
}

.leaflet-container img.leaflet-tile {
    /* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
    mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
    -ms-touch-action: pan-x pan-y;
    touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
    -ms-touch-action: pinch-zoom;
    /* Fallback for FF which doesn't support pinch-zoom */
    touch-action: none;
    touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
    -ms-touch-action: none;
    touch-action: none;
}

.leaflet-container {
    -webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
    -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
    filter: inherit;
    visibility: hidden;
}

.leaflet-tile-loaded {
    visibility: inherit;
}

.leaflet-zoom-box {
    width: 0;
    height: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
    -moz-user-select: none;
}

.leaflet-pane {
    z-index: 400;
}

.leaflet-tile-pane {
    z-index: 200;
}

.leaflet-overlay-pane {
    z-index: 400;
}

.leaflet-shadow-pane {
    z-index: 500;
}

.leaflet-marker-pane {
    z-index: 600;
}

.leaflet-tooltip-pane {
    z-index: 650;
}

.leaflet-popup-pane {
    z-index: 700;
}

.leaflet-map-pane canvas {
    z-index: 100;
}

.leaflet-map-pane svg {
    z-index: 200;
}

.leaflet-vml-shape {
    width: 1px;
    height: 1px;
}

.lvml {
    behavior: url(#default#VML);
    display: inline-block;
    position: absolute;
}


/* control positioning */

.leaflet-control {
    position: relative;
    z-index: 800;
    pointer-events: visiblePainted;
    /* IE 9-10 doesn't have auto */
    pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
    position: absolute;
    z-index: 1000;
    pointer-events: none;
}

.leaflet-top {
    top: 0;
}

.leaflet-right {
    right: 0;
}

.leaflet-bottom {
    bottom: 0;
}

.leaflet-left {
    left: 0;
}

.leaflet-control {
    float: left;
    clear: both;
}

.leaflet-right .leaflet-control {
    float: right;
}

.leaflet-top .leaflet-control {
    margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
    margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
    margin-left: 10px;
}

.leaflet-right .leaflet-control {
    margin-right: 10px;
}


/* zoom and fade animations */

.leaflet-fade-anim .leaflet-popup {
    opacity: 0;
    -webkit-transition: opacity 0.2s linear;
    -moz-transition: opacity 0.2s linear;
    transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
    opacity: 1;
}

.leaflet-zoom-animated {
    -webkit-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    transform-origin: 0 0;
}

svg.leaflet-zoom-animated {
    will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
    -webkit-transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
    -moz-transition: -moz-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
    transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
    -webkit-transition: none;
    -moz-transition: none;
    transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
    visibility: hidden;
}


/* cursors */

.leaflet-interactive {
    cursor: pointer;
}

.leaflet-grab {
    cursor: -webkit-grab;
    cursor: -moz-grab;
    cursor: grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
    cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
    cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane>svg path,
.leaflet-tile-container {
    pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane>svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
    pointer-events: visiblePainted;
    /* IE 9-10 doesn't have auto */
    pointer-events: auto;
}

/* visual tweaks */

.leaflet-container {
    background: #ddd;
    outline-offset: 1px;
}

.leaflet-container a {
    color: #0078A8;
}

.leaflet-zoom-box {
    border: 2px dotted #38f;
    background: rgba(255, 255, 255, 0.5);
}


/* general typography */
.leaflet-container {
    font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.5;
}


/* general toolbar styles */

.leaflet-bar {
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
    border-radius: 4px;
}

.leaflet-bar a {
    background-color: #fff;
    border-bottom: 1px solid #ccc;
    width: 26px;
    height: 26px;
    line-height: 26px;
    display: block;
    text-align: center;
    text-decoration: none;
    color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    display: block;
}

.leaflet-bar a:hover,
.leaflet-bar a:focus {
    background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
    cursor: default;
    background-color: #f4f4f4;
    color: #bbb;
}

.leaflet-touch .leaflet-bar a {
    width: 30px;
    height: 30px;
    line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
    border-bottom-left-radius: 2px;
    border-bottom-right-radius: 2px;
}

/* zoom control */

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
    font: bold 18px 'Lucida Console', Monaco, monospace;
    text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in,
.leaflet-touch .leaflet-control-zoom-out {
    font-size: 22px;
}


/* layers control */

.leaflet-control-layers {
    box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
    background: #fff;
    border-radius: 5px;
}

.leaflet-control-layers-toggle {
    background-image: url(images/layers.png);
    width: 36px;
    height: 36px;
}

.leaflet-retina .leaflet-control-layers-toggle {
    background-image: url(images/layers-2x.png);
    background-size: 26px 26px;
}

.leaflet-touch .leaflet-control-layers-toggle {
    width: 44px;
    height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
    display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
    display: block;
    position: relative;
}

.leaflet-control-layers-expanded {
    padding: 6px 10px 6px 6px;
    color: #333;
    background: #fff;
}

.leaflet-control-layers-scrollbar {
    overflow-y: scroll;
    overflow-x: hidden;
    padding-right: 5px;
}

.leaflet-control-layers-selector {
    margin-top: 2px;
    position: relative;
    top: 1px;
}

.leaflet-control-layers label {
    display: block;
    font-size: 13px;
    font-size: 1.08333em;
}

.leaflet-control-layers-separator {
    height: 0;
    border-top: 1px solid #ddd;
    margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path {
    /* used only in path-guessing heuristic, see L.Icon.Default */
    background-image: url(images/marker-icon.png);
}


/* attribution and scale controls */

.leaflet-container .leaflet-control-attribution {
    background: #fff;
    background: rgba(255, 255, 255, 0.8);
    margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
    padding: 0 5px;
    color: #333;
    line-height: 1.4;
}

.leaflet-control-attribution a {
    text-decoration: none;
}

.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
    text-decoration: underline;
}

.leaflet-attribution-flag {
    display: inline !important;
    vertical-align: baseline !important;
    width: 1em;
    height: 0.6669em;
}

.leaflet-left .leaflet-control-scale {
    margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
    margin-bottom: 5px;
}

.leaflet-control-scale-line {
    border: 2px solid #777;
    border-top: none;
    line-height: 1.1;
    padding: 2px 5px 1px;
    white-space: nowrap;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.8);
    text-shadow: 1px 1px #fff;
}

.leaflet-control-scale-line:not(:first-child) {
    border-top: 2px solid #777;
    border-bottom: none;
    margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
    border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
    box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
    border: 2px solid rgba(0, 0, 0, 0.2);
    background-clip: padding-box;
}


/* popup */

.leaflet-popup {
    position: absolute;
    text-align: center;
    margin-bottom: 20px;
}

.leaflet-popup-content-wrapper {
    padding: 1px;
    text-align: left;
    border-radius: 12px;
}

.leaflet-popup-content {
    margin: 13px 24px 13px 20px;
    line-height: 1.3;
    font-size: 13px;
    font-size: 1.08333em;
    min-height: 1px;
}

.leaflet-popup-content p {
    margin: 17px 0;
    margin: 1.3em 0;
}

.leaflet-popup-tip-container {
    width: 40px;
    height: 20px;
    position: absolute;
    left: 50%;
    margin-top: -1px;
    margin-left: -20px;
    overflow: hidden;
    pointer-events: none;
}

.leaflet-popup-tip {
    width: 17px;
    height: 17px;
    padding: 1px;

    margin: -10px auto 0;
    pointer-events: auto;

    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
    background: white;
    color: #333;
    box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    text-align: center;
    width: 24px;
    height: 24px;
    font: 16px/24px Tahoma, Verdana, sans-serif;
    color: #757575;
    text-decoration: none;
    background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
    color: #585858;
}

.leaflet-popup-scrolled {
    overflow: auto;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
    -ms-zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
    width: 24px;
    margin: 0 auto;

    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
    filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
    border: 1px solid #999;
}


/* div icon */

.leaflet-div-icon {
    background: #fff;
    border: 1px solid #666;
}


/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
    position: absolute;
    padding: 6px;
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 3px;
    color: #222;
    white-space: nowrap;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-interactive {
    cursor: pointer;
    pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
    position: absolute;
    pointer-events: none;
    border: 6px solid transparent;
    background: transparent;
    content: "";
}

/* Directions */

.leaflet-tooltip-bottom {
    margin-top: 6px;
}

.leaflet-tooltip-top {
    margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
    left: 50%;
    margin-left: -6px;
}

.leaflet-tooltip-top:before {
    bottom: 0;
    margin-bottom: -12px;
    border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
    top: 0;
    margin-top: -12px;
    margin-left: -6px;
    border-bottom-color: #fff;
}

.leaflet-tooltip-left {
    margin-left: -6px;
}

.leaflet-tooltip-right {
    margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
    top: 50%;
    margin-top: -6px;
}

.leaflet-tooltip-left:before {
    right: 0;
    margin-right: -12px;
    border-left-color: #fff;
}

.leaflet-tooltip-right:before {
    left: 0;
    margin-left: -12px;
    border-right-color: #fff;
}

/* Printing */

@media print {

    /* Prevent printers from removing background-images of controls. */
    .leaflet-control {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}


html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}

/* Common Typography & Section Decorators */
.keje-section-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 18px;
    background: rgba(64, 170, 250, 0.1);
    border: 1px solid rgba(64, 170, 250, 0.28);
    border-radius: 30px;
    color: #0d83d9;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 14px;
}

.keje-section-pill i {
    color: #40aafa;
    font-size: 13px;
}

.keje-section-title {
    font-size: 34px;
    font-weight: 800;
    color: #112338;
    line-height: 1.25;
    margin-bottom: 14px;
    letter-spacing: -0.5px;
}

.keje-section-desc {
    font-size: 15.5px;
    color: #556980;
    max-width: 720px;
    margin: 0 auto 40px;
    line-height: 1.65;
}

/* Section 1 Styles */
.keje-induction-section {
    position: relative;
    background: linear-gradient(180deg, #f8fbff 0%, #ffffff 45%, #f4f8fc 100%);
    padding: 80px 0 70px;
    border-top: 1px solid #e8eef5;
    border-bottom: 1px solid #e8eef5;
}

.keje-principle-card {
    background: #ffffff;
    border-radius: 20px;
    padding: 38px 34px;
    border: 1px solid #e2eaf2;
    box-shadow: 0 14px 38px rgba(18, 35, 56, 0.05);
    height: 100%;
    transition: box-shadow 0.3s ease;
}

.keje-principle-card:hover {
    box-shadow: 0 20px 48px rgba(64, 170, 250, 0.12);
}

.keje-principle-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0d83d9;
    font-size: 12.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.9px;
    margin-bottom: 10px;
}

.keje-principle-badge i {
    color: #40aafa;
}

.keje-principle-heading {
    font-size: 26px;
    font-weight: 750;
    color: #112236;
    line-height: 1.32;
    margin-bottom: 18px;
}

.keje-principle-text {
    font-size: 15px;
    line-height: 27px;
    color: #4a5c6d;
    margin-bottom: 14px;
}

.keje-principle-text strong {
    color: #122338;
}

.keje-mech-callout {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.08) 0%, rgba(13, 131, 217, 0.03) 100%);
    border-left: 4px solid #40aafa;
    border-radius: 0 14px 14px 0;
    padding: 16px 20px;
    margin: 22px 0 25px;
}

.keje-mech-callout-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    background: #ffffff;
    border: 1px solid rgba(64, 170, 250, 0.3);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0d83d9;
    font-size: 17px;
    box-shadow: 0 4px 12px rgba(64, 170, 250, 0.15);
}

.keje-mech-callout-content {
    font-size: 14px;
    line-height: 23px;
    color: #2c3e50;
}

.keje-mech-callout-content strong {
    display: block;
    color: #0e2942;
    margin-bottom: 3px;
    font-size: 14.5px;
}

.keje-feature-grid {
    /* display: grid; */
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin: 24px 0 28px;
}

.keje-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    background: #f8fafc;
    border: 1px solid #e9eff5;
    padding: 14px 14px;
    border-radius: 12px;
    transition: all 0.25s ease;
}

.keje-feature-item:hover {
    background: #ffffff;
    border-color: rgba(64, 170, 250, 0.45);
    box-shadow: 0 8px 20px rgba(64, 170, 250, 0.12);
    transform: translateY(-2px);
}

.keje-feature-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 9px;
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.18), rgba(64, 170, 250, 0.06));
    color: #0d83d9;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.keje-feature-name {
    font-size: 13.5px;
    font-weight: 700;
    color: #162a3f;
    line-height: 1.35;
}

.keje-feature-sub {
    font-size: 12px;
    color: #64748b;
    margin-top: 3px;
    line-height: 1.35;
}

.keje-showcase-card {
    background: #ffffff;
    border-radius: 18px;
    border: 1px solid #e2eaf2;
    box-shadow: 0 10px 30px rgba(18, 35, 56, 0.05);
    padding: 16px;
    margin-bottom: 22px;
    transition: all 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative;
}

.keje-showcase-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 42px rgba(64, 170, 250, 0.18);
    border-color: rgba(64, 170, 250, 0.4);
}

.keje-card-badge-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #f0f4f8;
}

.keje-card-title-tag {
    font-size: 13px;
    font-weight: 700;
    color: #122338;
    display: flex;
    align-items: center;
    gap: 8px;
}

.keje-card-title-tag i {
    color: #40aafa;
    font-size: 14px;
}

.keje-card-pill-tag {
    font-size: 11px;
    font-weight: 700;
    background: rgba(64, 170, 250, 0.12);
    color: #0d83d9;
    padding: 3px 10px;
    border-radius: 12px;
    letter-spacing: 0.5px;
}

.keje-showcase-img-wrap {
    padding: 14px;
    background: #fbfdff;
    border-radius: 12px;
    border: 1px solid #f0f5fa;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.keje-showcase-img-wrap img {
    transition: transform 0.35s ease;
}

.keje-showcase-card:hover .keje-showcase-img-wrap img {
    transform: scale(1.025);
}

.keje-showcase-caption {
    font-size: 12.5px;
    color: #64748b;
    margin-top: 10px;
    margin-bottom: 0;
    text-align: center;
    font-weight: 500;
}

.keje-floating-metric {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: linear-gradient(135deg, #10263f 0%, #173659 100%);
    color: #ffffff;
    border-radius: 14px;
    padding: 14px 20px;
    box-shadow: 0 10px 25px rgba(16, 38, 63, 0.2);
    border: 1px solid rgba(64, 170, 250, 0.25);
}

.keje-floating-metric-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 50%;
    background: rgba(64, 170, 250, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #40aafa;
    font-size: 17px;
}

.keje-floating-metric-text {
    font-size: 13.5px;
    color: #e2e8f0;
    line-height: 1.4;
}

.keje-floating-metric-text strong {
    color: #40aafa;
}


/* Section 3 Styles */
.keje-applications-section {
    position: relative;
    background: linear-gradient(180deg, #f5f8fc 0%, #edf3f9 100%);
    padding: 85px 0 80px;
    border-top: 1px solid #e4edf5;
}

.keje-app-card {
    position: relative;
    background: #ffffff;
    border-radius: 16px;
    border: 1px solid #e2ecf5;
    padding: 24px 26px;
    height: 100%;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 6px 20px rgba(15, 34, 58, 0.04);
    transition: all 0.35s cubic-bezier(0.22, 1, 0.36, 1);
    overflow: hidden;
}

.keje-app-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 4px;
    background: linear-gradient(180deg, #40aafa, #0077cc);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.keje-app-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(64, 170, 250, 0.16);
    border-color: rgba(64, 170, 250, 0.45);
}

.keje-app-card:hover::before {
    opacity: 1;
}

.keje-app-icon-wrap {
    width: 62px;
    height: 62px;
    min-width: 62px;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.12) 0%, rgba(64, 170, 250, 0.04) 100%);
    border: 1px solid rgba(64, 170, 250, 0.25);
    color: #0d83d9;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    transition: all 0.35s ease;
    box-shadow: 0 6px 16px rgba(64, 170, 250, 0.08);
    flex-shrink: 0;
}

.keje-app-icon-wrap svg {
    width: 32px;
    height: 32px;
    fill: currentColor;
    transition: transform 0.35s ease;
}

.keje-app-card:hover .keje-app-icon-wrap {
    background: linear-gradient(135deg, #40aafa 0%, #0d83d9 100%);
    color: #ffffff;
    border-color: #40aafa;
    box-shadow: 0 10px 24px rgba(64, 170, 250, 0.35);
    transform: scale(1.08);
}

.keje-app-card:hover .keje-app-icon-wrap svg {
    transform: scale(1.1);
}

.keje-app-title {
    font-size: 18px;
    font-weight: 700;
    color: #122338;
    line-height: 1.35;
    margin: 0;
    transition: color 0.25s ease;
}

.keje-app-card:hover .keje-app-title {
    color: #0d83d9;
}

/* ========================================================================= */
/* KEJE ABOUT US & VISION-MISSION MODERN STYLES                              */
/* ========================================================================= */

.keje-about-wrapper {
    padding: 85px 0 70px;
    background: #ffffff;
    position: relative;
}

.keje-about-image-card {
    position: relative;
    padding-right: 20px;
}

.keje-about-image-inner {
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(16, 38, 63, 0.12);
    border: 1px solid rgba(16, 38, 63, 0.08);
    background: #f8fafc;
}

.keje-about-image-inner img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.4s ease;
}

.keje-about-image-card:hover .keje-about-image-inner img {
    transform: scale(1.02);
}

.keje-about-experience-badge {
    position: absolute;
    bottom: 24px;
    right: 8px;
    background: linear-gradient(135deg, #10263f 0%, #173659 100%);
    color: #ffffff;
    border: 3px solid #ffffff;
    border-radius: 16px;
    padding: 13px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 14px 32px rgba(16, 38, 63, 0.25);
    z-index: 2;
}

.keje-badge-icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 12px;
    background: rgba(64, 170, 250, 0.18);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #40aafa;
    font-size: 20px;
}

.keje-badge-text {
    display: flex;
    flex-direction: column;
}

.keje-badge-number {
    font-size: 28px;
    font-weight: 800;
    line-height: 1;
    color: #ffffff;
}

.keje-badge-label {
    font-size: 11.5px;
    font-weight: 600;
    color: #cbd5e1;
    letter-spacing: 0.4px;
    margin-top: 3px;
    line-height: 1.3;
}

.keje-about-content {
    padding-left: 15px;
}

.keje-sub-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #0d83d9;
    background: rgba(64, 170, 250, 0.12);
    padding: 5px 14px;
    border-radius: 20px;
    border: 1px solid rgba(64, 170, 250, 0.25);
    margin-bottom: 12px;
}

.keje-about-content .section-title .title {
    font-size: 32px;
    font-weight: 800;
    line-height: 1.25;
    color: #10263f;
    margin-bottom: 16px;
}

.keje-about-lead {
    font-size: 15.5px;
    line-height: 1.7;
    color: #1e293b;
    margin-bottom: 12px;
}

.keje-about-lead strong {
    color: #0d83d9;
}

.keje-about-desc {
    font-size: 14.5px;
    line-height: 1.65;
    color: #556987;
    margin-bottom: 20px;
}

.keje-about-highlights {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 26px;
}

.keje-highlight-pill {
    display: flex;
    align-items: center;
    gap: 11px;
    background: #f8fafc;
    border: 1px solid #eef3f8;
    padding: 10px 15px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    color: #1e293b;
    transition: all 0.25s ease;
}

.keje-highlight-pill:hover {
    background: #ffffff;
    border-color: rgba(64, 170, 250, 0.4);
    box-shadow: 0 4px 14px rgba(64, 170, 250, 0.08);
    transform: translateX(4px);
}

.keje-highlight-pill i {
    color: #0d83d9;
    font-size: 16px;
    flex-shrink: 0;
}

.keje-about-actions {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 15px;
}

.keje-about-actions .cmt-btn {
    border-radius: 8px !important;
    font-weight: 700;
}

.keje-btn-secondary {
    display: inline-block;
    padding: 12px 26px;
    border-radius: 8px;
    border: 1.5px solid #cbd5e1;
    font-size: 14px;
    font-weight: 700;
    color: #1e293b;
    text-decoration: none;
    transition: all 0.25s ease;
}

.keje-btn-secondary:hover {
    border-color: #0d83d9;
    color: #0d83d9;
    background: rgba(64, 170, 250, 0.06);
}

/* ========================================================================= */
/* VISION & MISSION SECTION                                                 */
/* ========================================================================= */

.keje-vision-mission-section {
    background: linear-gradient(180deg, #f7fafd 0%, #eef4fa 100%);
    padding: 70px 0 75px;
    border-top: 1px solid #e7eff6;
    border-bottom: 1px solid #e7eff6;
}

.keje-vm-card {
    background: #ffffff;
    border-radius: 18px;
    border: 1px solid #e2ecf5;
    padding: 34px 30px;
    height: 100%;
    position: relative;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(15, 34, 58, 0.04);
    transition: all 0.35s cubic-bezier(0.22, 1, 0.36, 1);
    display: flex;
    flex-direction: column;
}

.keje-vm-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(64, 170, 250, 0.16);
    border-color: rgba(64, 170, 250, 0.45);
}

.keje-vm-top-bar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
}

.keje-vm-vision .keje-vm-top-bar {
    background: linear-gradient(90deg, #40aafa, #0077cc);
}

.keje-vm-mission .keje-vm-top-bar {
    background: linear-gradient(90deg, #0d83d9, #10263f);
}

.keje-vm-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}

.keje-vm-icon-box {
    width: 58px;
    height: 58px;
    min-width: 58px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    transition: all 0.35s ease;
}

.keje-vm-vision .keje-vm-icon-box {
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.15) 0%, rgba(64, 170, 250, 0.05) 100%);
    color: #0d83d9;
    border: 1px solid rgba(64, 170, 250, 0.3);
}

.keje-vm-mission .keje-vm-icon-box {
    background: linear-gradient(135deg, rgba(16, 38, 63, 0.08) 0%, rgba(64, 170, 250, 0.08) 100%);
    color: #10263f;
    border: 1px solid rgba(16, 38, 63, 0.15);
}

.keje-vm-card:hover.keje-vm-vision .keje-vm-icon-box,
.keje-vm-vision:hover .keje-vm-icon-box {
    background: linear-gradient(135deg, #40aafa 0%, #0d83d9 100%);
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(64, 170, 250, 0.35);
    transform: scale(1.08);
}

.keje-vm-card:hover.keje-vm-mission .keje-vm-icon-box,
.keje-vm-mission:hover .keje-vm-icon-box {
    background: linear-gradient(135deg, #10263f 0%, #1e4976 100%);
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(16, 38, 63, 0.3);
    transform: scale(1.08);
}

.keje-vm-title-wrap {
    display: flex;
    flex-direction: column;
}

.keje-vm-badge {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    display: inline-block;
    padding: 3px 10px;
    border-radius: 8px;
    width: fit-content;
    margin-bottom: 4px;
}

.keje-vm-vision .keje-vm-badge {
    background: rgba(64, 170, 250, 0.12);
    color: #0d83d9;
}

.keje-vm-mission .keje-vm-badge {
    background: rgba(16, 38, 63, 0.08);
    color: #10263f;
}

.keje-vm-title {
    font-size: 21px;
    font-weight: 700;
    color: #10263f;
    margin: 0;
    line-height: 1.3;
}

.keje-vm-body {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.keje-vm-text {
    font-size: 14.5px;
    line-height: 1.65;
    color: #475569;
    margin-bottom: 20px;
}

.keje-vm-points {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
    margin-top: auto;
    border-top: 1px dashed #e2eaf2;
    padding-top: 16px;
}

.keje-vm-points li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13.5px;
    color: #334155;
    font-weight: 600;
    line-height: 1.45;
}

.keje-vm-points li i {
    color: #0d83d9;
    font-size: 11px;
    background: rgba(64, 170, 250, 0.14);
    border-radius: 50%;
    width: 20px;
    height: 20px;
    min-width: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 2px;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .keje-about-image-card {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .keje-about-content {
        padding-left: 0;
    }

    .keje-about-experience-badge {
        right: 15px;
        bottom: 15px;
    }

    .keje-vm-card {
        padding: 26px 20px;
    }
}

@media (max-width: 575px) {
    .keje-about-experience-badge {
        position: static;
        margin-top: 15px;
        width: 100%;
        justify-content: center;
    }

    .keje-about-content .section-title .title {
        font-size: 26px;
    }
}

/* ==========================================================================
   WHY CHOOSE US - MODERN INDUSTRIAL SHOWCASE
   ========================================================================== */
.keje-why-section {
    position: relative;
    background: linear-gradient(145deg, #071526 0%, #0d223a 50%, #08172b 100%);
    padding: 30px 0 0px;
    overflow: hidden;
    border-top: 1px solid rgba(64, 170, 250, 0.15);
    border-bottom: 1px solid rgba(64, 170, 250, 0.15);
}

.keje-why-ambient-glow {
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 80% 25%, rgba(64, 170, 250, 0.14) 0%, transparent 55%),
        radial-gradient(circle at 15% 85%, rgba(13, 131, 217, 0.1) 0%, transparent 50%),
        linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
    background-size: 100% 100%, 100% 100%, 40px 40px, 40px 40px;
    pointer-events: none;
    z-index: 1;
}

.keje-why-content-wrap {
    position: relative;
    z-index: 2;
    padding-right: 25px;
}

.keje-why-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(64, 170, 250, 0.12);
    border: 1px solid rgba(64, 170, 250, 0.35);
    color: #40aafa;
    font-size: 12.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    padding: 6px 16px;
    border-radius: 50px;
    margin-bottom: 16px;
}

.keje-why-main-title {
    font-size: 38px;
    font-weight: 800;
    color: #ffffff !important;
    line-height: 1.22;
    margin-bottom: 18px;
    letter-spacing: -0.5px;
}

.keje-gradient-text {
    background: linear-gradient(135deg, #ffffff 0%, #40aafa 60%, #0d83d9 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.keje-why-lead {
    font-size: 15.5px;
    line-height: 27px;
    color: #e1ebf7;
    margin-bottom: 14px;
}

.keje-why-lead strong {
    color: #ffffff;
    font-weight: 700;
}

.keje-why-desc {
    font-size: 14.5px;
    line-height: 25px;
    color: #9cb1c9;
    margin-bottom: 26px;
}

/* Trust Badges Grid */
.keje-why-badges-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 28px;
}

.keje-why-badge-card {
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 12px 16px;
    transition: all 0.3s ease;
}

.keje-why-badge-card:hover {
    background: rgba(64, 170, 250, 0.09);
    border-color: rgba(64, 170, 250, 0.35);
    transform: translateY(-2px);
}

.keje-why-badge-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 9px;
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.2) 0%, rgba(13, 131, 217, 0.1) 100%);
    border: 1px solid rgba(64, 170, 250, 0.3);
    color: #40aafa;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
}

.keje-why-badge-text {
    font-size: 13.5px;
    font-weight: 600;
    color: #ffffff;
    line-height: 1.35;
}

/* Capability Meters in dark theme */
.keje-why-progress-wrapper .cmt-progress-bar {
    margin-bottom: 18px;
}

.keje-why-progress-wrapper .progressbar-title {
    color: #e2ecf7 !important;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 7px;
}

.keje-why-progress-wrapper .progress-bar-percent {
    color: #40aafa !important;
    font-weight: 700;
    font-size: 13px;
}

.keje-why-progress-wrapper .progress-bar-inner {
    background: rgba(255, 255, 255, 0.08) !important;
    height: 8px;
    border-radius: 6px;
    overflow: hidden;
}

.keje-why-progress-wrapper .progress-bar {
    background: linear-gradient(90deg, #0d83d9 0%, #40aafa 100%) !important;
    border-radius: 6px;
    height: 8px;
    box-shadow: 0 0 10px rgba(64, 170, 250, 0.5);
}

/* ==========================================
   IMAGE SHOWCASE CARD (RIGHT SIDE)
   ========================================== */
.keje-why-media-card {
    position: relative;
    z-index: 2;
    border-radius: 22px;
    padding: 10px;
    background: linear-gradient(145deg, rgba(64, 170, 250, 0.25) 0%, rgba(255, 255, 255, 0.04) 60%, rgba(13, 131, 217, 0.18) 100%);
    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.55),
        0 0 40px rgba(64, 170, 250, 0.15);
    border: 1px solid rgba(64, 170, 250, 0.3);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.keje-why-media-card:hover {
    transform: translateY(-5px);
    box-shadow:
        0 30px 75px rgba(0, 0, 0, 0.65),
        0 0 55px rgba(64, 170, 250, 0.25);
}

.keje-why-media-frame {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    background: #000000;
}

.keje-why-img {
    width: 100%;
    height: 380px;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.keje-why-media-card:hover .keje-why-img {
    transform: scale(1.03);
}

.keje-why-media-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
            rgba(7, 21, 38, 0.45) 0%,
            transparent 35%,
            transparent 55%,
            rgba(7, 21, 38, 0.8) 100%);
    pointer-events: none;
}

/* Live Pulse Pill (Top Left) */
.keje-why-live-pill {
    position: absolute;
    top: 16px;
    left: 16px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: rgba(7, 21, 38, 0.85);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(64, 170, 250, 0.45);
    padding: 7px 15px;
    border-radius: 50px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.45);
    z-index: 3;
}

.keje-live-pulse-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 8px #22c55e;
    animation: kejeLivePulse 1.8s infinite;
}

@keyframes kejeLivePulse {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
    }

    70% {
        transform: scale(1.1);
        box-shadow: 0 0 0 7px rgba(34, 197, 94, 0);
    }

    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(34, 197, 94, 0);
    }
}

/* Genuine Kejetherm Pill (Top Right) */
.keje-why-brand-pill {
    position: absolute;
    top: 16px;
    right: 16px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(7, 21, 38, 0.85);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.18);
    padding: 7px 15px;
    border-radius: 50px;
    color: #40aafa;
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.45);
    z-index: 3;
}

.keje-why-brand-pill i {
    color: #40aafa;
}

/* Floating Bottom Trust Bar */
.keje-why-floating-badge {
    position: absolute;
    bottom: 16px;
    left: 16px;
    right: 16px;
    display: flex;
    align-items: center;
    gap: 14px;
    background: rgba(7, 21, 38, 0.9);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(64, 170, 250, 0.4);
    padding: 12px 18px;
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.55);
    z-index: 3;
}

.keje-floating-badge-icon {
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(64, 170, 250, 0.25) 0%, rgba(13, 131, 217, 0.15) 100%);
    border: 1px solid rgba(64, 170, 250, 0.4);
    color: #40aafa;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.keje-floating-badge-text {
    flex-grow: 1;
}

.keje-floating-badge-text h6 {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 2px 0;
    line-height: 1.25;
}

.keje-floating-badge-text p {
    font-size: 12px;
    color: #9cb1c9;
    margin: 0;
    line-height: 1.2;
}

.keje-floating-badge-stat {
    text-align: right;
    border-left: 1px solid rgba(255, 255, 255, 0.15);
    padding-left: 14px;
}

.keje-floating-badge-stat span {
    display: block;
    font-size: 19px;
    font-weight: 800;
    color: #40aafa;
    line-height: 1;
}

.keje-floating-badge-stat small {
    font-size: 10.5px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #9cb1c9;
    font-weight: 600;
}

/* Responsive tweaks */
@media (max-width: 991px) {
    .keje-why-section {
        padding: 70px 0 65px;
    }

    .keje-why-content-wrap {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .keje-why-main-title {
        font-size: 30px;
    }
}

@media (max-width: 575px) {
    .keje-why-badges-grid {
        grid-template-columns: 1fr;
    }

    .keje-why-live-pill,
    .keje-why-brand-pill {
        position: static;
        margin: 8px 8px 0;
        display: inline-flex;
    }

    .keje-why-floating-badge {
        position: static;
        margin-top: 12px;
        flex-wrap: wrap;
    }

    .keje-floating-badge-stat {
        border-left: none;
        padding-left: 0;
        text-align: left;
        width: 100%;
        display: flex;
        gap: 6px;
        align-items: baseline;
    }
}