/* MAIN MENU – FORCE UPPERCASE */
.custmenus li a {
    text-transform: capitalize !important;
}

/* FIX BLUE TAB BACKGROUND (Bootstrap override) */
.clshovertabs .nav-link.active,
.clshovertabs .nav-link:focus,
.clshovertabs .nav-link.show {
    background-color: transparent !important;
    color: var(--color-black) !important;
    box-shadow: none !important;
}

/* REMOVE BLUE ON HOVER (Bootstrap adds focus styles) */
.clshovertabs .nav-link:hover {
    background-color: var(--bgcolor2) !important;
    color: var(--color-black) !important;
}

.section-h4 {padding-bottom: 50px; background-color: var(--bg-soft); font-family: 'Outfit', sans-serif; overflow: hidden; max-height: 100vh;}
.section-h4 .ctitle1, .clsimagegallery .ctitle1 {padding: 50px 0px; color:black; text-align: center;}
.productspart {position: relative; padding: 20px 0;}
.section-h4 .clsslickarrows button {background-color: #ffffff;}

/* EXACT ORIGINAL SLIDER PADDING */
.productslider .slick-list{padding:0 12% !important;}

/* ORIGINAL CARD BORDERS */
.productslider .proditem {background: var(--card-bg); border: none; border-radius: 10px; overflow: hidden; margin: 0 15px; padding: 0 5px; transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1); height: 100% !important; width:min(450px, 100%) !important; display: flex !important; flex-direction: column; box-shadow: var(--card-shadow);}

/* .proditem:hover {transform: translateY(-15px); box-shadow: var(--card-hover-shadow);} */
@media (max-width: 768px) {
  .productslider .proditem .image-wrap {
    width: 100%;
    height: 100%;
  }

  .productslider .proditem img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/* IMAGE WRAPPER FIX */
.productslider .clsprodimg {
    width: 100%;
    
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    background: #fff;
}
.productslider .clsprodimg a {height: 260px;}

.productslider .clsprodimg img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    mix-blend-mode: darken;
    border-radius: 10px;
}

/* INFO BOX */
.productslider .clsprodinfo {
    position: relative;
    text-align: center;
    display: block;
    padding: 40px 120px;
    background-color: #ffffff;
}

/* ARROW */
.productslider .clsprodinfo .cls_arrow {
    position: absolute;
    right: 40px;
    width: 50px;
    height: 50px;
    background-color: var(--bgcolor1);
    background-image: url(../images/arrow-white.svg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    border-radius: 100%;
}

.productslider .clsprodinfo h4 a {
    font-size: 24px;
    color: var(--bgcolor1);
}

.productslider .clsprodinfo h4 a:hover {color: #03A600;}

.productslider .clsprodinfo p {
    font-size: 16px;
    margin-top: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.clsslickarrows {position: absolute; top: 50%; width: 100%; left: 0; transform: translateY(-50%); pointer-events: none; display: none; /* We'll reposition them for better UX */}


.productslider .clsprodimg {
    width: 100%;
    height: 260px;               /* SAME AS ORIGINAL */
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    background: #fff;
}

.productslider .clsprodimg img {
    width: auto !important;
    height: 100% !important;     /* THIS FIXES THE LARGE IMAGE ISSUE */
    object-fit: cover !important;
    mix-blend-mode: darken;
}


.productslider .slick-list {
    padding: 0 12% !important;
}
.clsprojdetails1 {padding-bottom: 50px;}
.clsprojdetails1 .clsheading {margin-top: 50px; margin-bottom: 50px;}
.clsprojdetails1 .clsheading p {font-size: 32px; font-weight: 300; font-style: italic; padding: 0 110px; margin-top: 30px; margin-bottom: 50px;}

.ctitle2 {font-size: clamp(1.5rem, 4vw, 2.5rem); font-weight: 400; position: relative; display: inline-block; padding 24px 0;}
h3.ctitle2.gblrch{padding: 24px 0 !important;}
.ctitle2::after {content: ''; position: absolute; bottom: -10px; left: 50%; translate: -50% 0; width: 60px; height: 3px; background-color: 83bd09;}

.clsrow10 {margin: 10px 55px;}
.clsprocol1 {padding-left: 10px; padding-right: 10px;}
.clsprocol1 .clsproinner {padding: 30px 5px 28px; background: linear-gradient(180deg, #F5F6F8 0%, #E9E9E9 100%); border-bottom: 4px solid #dba729; height: -webkit-fill-available;}
.clsprocol1 .clsproinner h4 {font-size: 40px; margin: 10px 15px; font-weight: 600; color: #333333; line-height: 42px;}
.clsprocol1 .clsproinner h4 span {display: block;}
.clsprocol1 .clsproinner p {font-size: 16px; color: #4D4D4D; padding: 10px;}



.clsprojtitle {background-color: #F5F6F8; padding: 41px 0px; margin-top: -40px; position: relative; z-index: 1; border-radius: 20px; -moz-border-radius: 20px; -webkit-border-radius: 20px;}
.clsprojtitle .clsprojectname h4 {font-size: 36px; margin-bottom: 5px;}
.clsprojtitle .clsprojtext1 p {font-size: 20px;}


.clsherosubtl {color:aliceblue;}
.clsherodesc {color:aliceblue; !important}
/* -------------------------------------- */
/* MAIN MENU – CLEAN PROFESSIONAL STYLE   */
/* -------------------------------------- */

/* Align menu to the right */
.custnav {
    margin-left: auto;
}

/* Main menu layout */
.custmenus {
    display: flex;
    gap: 40px !important;
    align-items: center;
    list-style: none;
    margin-top: 20px;
}

/* Top-level menu links */
.custmenus > li > a {
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    padding: 10px 0;
    display: inline-block;
    text-decoration: none !important;
    transition: color 0.25s ease;
}

/* Hover on top menu */
.custmenus > li > a:hover {
    color: var(--color-orange); /* Orange brand color */
    text-decoration: none !important;
}

/* -------------------------------------- */
/* SUBMENU DROPDOWN                       */
/* -------------------------------------- */

/* Parent item must be relative */
.custmenus li.menu-item-has-children {
    position: relative;
}

/* Dropdown box */
.custmenus li .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #ffffff;
    width: 220px;
    padding: 12px 15px;
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, transform 0.25s ease;
    transform: translateY(10px);
    z-index: 99;
}

/* Show dropdown on hover */
.custmenus li.menu-item-has-children:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}

/* Submenu items */
.custmenus li .sub-menu li {
    padding: 0;
    margin: 0 0 6px 0;
    list-style: none;
}

/* Submenu links */
.custmenus li .sub-menu li a {
    display: block;
    padding: 6px 0;
    font-size: 15px;
    color: var(--bgcolor1);
    text-decoration: none !important;
    transition: color 0.25s ease;
}

/* Hover submenu links */
.custmenus li .sub-menu li a:hover {
    color: var(--color-orange);
    text-decoration: none !important;
}


.clsprocol1 {
    margin-bottom: 20px; /* Add space between rows */
}

.clsproinner {
    padding: 20px; /* Add padding inside each box */
    background-color: #f8f8f8; /* Background color */
    border-radius: 8px; /* Rounded corners */
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Shadow for depth */
}

.clsproinner h4 {
    font-size: 24px; /* Increase title font size */
    margin-bottom: 10px; /* Space between title and description */
}

.clsproinner p {
    font-size: 16px;
    color: #555; /* Text color */
}

.row {
    display: flex;
    justify-content: center; /* Center the content inside the row */
}

.text-center {
    text-align: center; /* Ensure the content is centered */
}

.clsprocol1 {
    display: flex;
    justify-content: center;
    align-items: center; /* Vertically center the content inside each box */
}



.clsletrconts .clsletrcontrow {flex-wrap: wrap; gap: clamp(1rem, 1vw, 3rem); /* border-bottom: 1px solid rgba(0, 0, 0, 0.05); */ /* margin-bottom: clamp(2rem, 4vw, 4rem); */ padding-bottom: clamp(2rem, 2vw, 3rem);}
/* .clsletrconts .clsletrcontrow:last-child {border-bottom: none;} */
.clsletrconts .clsletrlabel {width: 290px;}
.clsletrconts .clsletrlabel span {font-size: 50px; color: #333; font-weight: 500; line-height: 50px; letter-spacing: -3px; display: inline-block; width: 350px;}
.clsletrconts .clsletrtexts {width: 100%;}
.clsletrconts .clsletrtextscol {width: 100%;}
/* .clsletrconts .clsletrtextscol .ctextinfo {margin-bottom: 45px;} */
.clsletrconts .clsletrtextscol .ctextinfo a {font-size: 24px; font-weight: 500; color: var(--color-orange);}
.clsletrconts .clsletrtextscol .ctextinfo p {font-weight: 300; /* margin-top: 5px; */ padding: 1px 0; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}


.clsmpexpertise {padding: 60px 0 50px;}
.clsmpexpertise .clsheading {margin-bottom: 54px;}
.clshovertabs .nav-pills {width: 840px;}
.clshovertabs .nav-link {border-bottom: 1px solid #BCBCBC; padding: 44px 20px; display: inline-flex; justify-content: space-between; align-items: center; border-radius: 0px; -moz-border-radius: 0px; -webkit-border-radius: 0px;}
.clshovertabs .nav-link:last-child {border-bottom: none;}
.clshovertabs .nav-link span {font-size: 40px; font-weight: 400; color: var(--color-black)}
.clshovertabs .nav-link .cbtn {padding: 10px 40px;}
.clshovertabs .nav-link:hover {background-color: var(--bgcolor2);}
.tab-content {background: white; border-radius: 10px; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08); min-height: 200px;}
.clshovertabs .tab-content {width: 600px;}
.clshovertabs .tab-content .clstabimg {width: 100%; height: 100%; object-fit: cover;}
.hover-active .clsdefaultimg {display: none;}

.clshovertabs .tab-content > .tab-pane {opacity: 0; transition: opacity 0.4s ease-in-out; -moz-transition: opacity 0.4s ease-in-out; -webkit-transition: opacity 0.4s ease-in-out;}
.clshovertabs .tab-content > .tab-pane.active {opacity: 1;}


.careersec2 .clshovertabs .nav-pills {width: 100%;}
.careersec2 .clshovertabs .nav-link {height: auto; padding: 20px 0; background-color: transparent !important; border-bottom-color: #D9D9D9; flex-wrap: wrap; }
.careersec2 .clshovertabs .nav-link span {font-size: 32px;}
.careersec2 .clshovertabs .clsaccordbtn {width: 40px; height: 40px; background-color: var(--bgcolor2); background-image: url(../images/plus-icon2.svg); background-repeat: no-repeat; background-position: 50% 50%; cursor: pointer; border-radius: 100%; -moz-border-radius: 100%; -webkit-border-radius: 100%; filter: hue-rotate(15deg) brightness(1.1);}
.careersec2 .clshovertabs .clsaccordbtn:hover {background:url(../images/plus-icon2-white.svg), linear-gradient(90deg, #F37021 0%, #FEA36D 100%); background-repeat: no-repeat; background-position: 50% 50%; filter: hue-rotate(20deg) brightness(1.1);}
.careersec2 .clshovertabs .nav-link:last-child {border-bottom: 1px solid #D9D9D9;}
.careersec2 .clshovertabs .clsaccord {display: flex; justify-content: space-between; align-items: center; width: 100%; margin-bottom: 24px;}
.careersec2 .clshovertabs .clsaccordtexts {margin-top: -28px; display: none;}
.careersec2 .clshovertabs .clsaccordtexts .ctextinfo p {font-weight: 300; color: var(--color-black); padding-left: clamp(0, 80px);}
.careersec2 .clshovertabs .nav-link.activeaccord .clsaccordtexts {display: block;}
.careersec2 .clshovertabs .nav-link.activeaccord .clsaccordbtn {background-image: url(../images/minus-icon2.svg);}
.careersec2 .clshovertabs .nav-link.activeaccord .clsaccordbtn:hover {background:url(../images/minus-icon2-white.svg), linear-gradient(90deg, #F37021 0%, #FEA36D 100%); background-repeat: no-repeat; background-position: 50% 50%;}


.clsglossarydetails {padding: 40px 0;}
/* .clsglossarydetails .clsglossinfo .clstextcols1 {margin-top: 40px; padding-top: 50px 0;} */
.clsglossarydetails .clsglossinfo .ctextinfo p {font-weight: 300; padding: 0 0 30px;}
.clsglossarydetails .clsglossinfo .ctextinfo p span {color: var(--color-orange);}
.clsglossarydetails .clsglossinfo .ctextinfo h4 {font-size: 24px; font-weight: 400; line-height: 40px;}
/* .clsglossarydetails .clstextcols2 {gap:0 20px; margin-top: 49px; padding-top: 48px;} */
.clsglossarydetails .clstextcols2 .ctextinfo {background-color: var(--bgcolor2); width: 100%; padding: 20px; margin-bottom: 70px; text-align: center;}
.clsglossarydetails .clstextcols2 .ctextinfo h4 {margin-bottom: 10px;}
.clsglossarydetails .clstextcols2 .ctextinfo h5 {font-size: 24px;color: var(--color-orange);font-weight: 300; margin-bottom: 6px;}
.clsglossarydetails .clstextcols2 .ctextinfo p {padding-bottom: 20px;}




.clsideastabs {padding: clamp(1rem, 2vw, 2rem) 0 clamp(2.5rem, 5vw, 5rem) 0;}
.clsideastabs .clsheading {margin-bottom: clamp(2rem, 4vw, 3rem);}
.clsideastabs .clsmptabs { border: none; display: flex; justify-content: center; gap: clamp(10px, 1.5vw, 15px); flex-wrap: wrap;}
.clsmptabs .nav-link {border: 2px solid #e0e0e0; background-color: white; color: #666; padding: clamp(0.75rem, 1.5vw, 1rem) clamp(1rem, 2vw, 2rem); border-radius: 8px; font-weight: 500; font-size: 0.95rem; transition: all 0.3s ease; width: 100%;}
.clsmptabs .nav-link:hover {border-color: 83bd09; color: 000; transform: translateY(-2px);}
.clsmptabs .nav-link.active {background-color: 83bd09; color: white; border-color: 83bd09;}
.clsideastabs .clsmptabs .nav-item .nav-link {font-size: 18px; padding: 6px; cursor: pointer; color: #333; border: none;}
.clsideastabs .clsmptabs .nav-item .nav-link.active {background-color: transparent; color: var(--color-black); font-weight: 600; font-size: 18px; border-radius: 0; border-bottom: 1px solid #333;}
.clsideastabs .clsmrcontents .clsimgcol {margin-top: 47px; width: 600px; border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; overflow: hidden;}
.clsideastabs .clsmrcontents .clsimgcol img {width: 100%; height: 100%; object-fit: cover;}
.clsideastabs .clsmrcontents .clstexts {width: 100%; margin-top: 47px;}
.clsideastabs .clsmrcontents .clstexts h4 {color: var(--color-orange); margin-bottom: 15px; font-weight: 600;}
.clsideastabs .clsmrcontents .clstexts p {font-weight: 300; font-size: 21px; line-height: 26px; padding-top: 15px;}


 
.ctitle1 h1, .ctitle1 h2, .ctitle1 h3 {
    font-size: 40px;
    line-height: normal;
    font-weight: 500;
    color: #585858;
}

.ctitle1 h3 {font-size: 48px; font-weight: 700; color: var(--text-heading); margin: 0; letter-spacing: -0.5px;}

/* added new classes */
.clsglossary1 {padding: clamp(1rem, 3vw, 6rem) 0; background-color: #f8f9fa;}
.ctitle2.gblfoot {font-size: clamp(1.75rem, 4vw, 2.5rem); font-weight: 700; margin-bottom: clamp(2rem, 4vw, 3rem); color: #212529;}
.clstextcols2 {margin: 0 auto;}

.clsfiledrow textarea + label.active {
    transform: translate(-34px);
}

/* global footprint section */
.gblfoot {margin: 50px 0 30px 0px;}

#menu-item-24>a {
    padding: 0px 40px;
    background: var(--color-orange);
    border-radius: 50px;
    color: #fff;
    transition: 
        background-color 0.3s ease,
        color 0.3s ease,
        box-shadow 0.3s ease;
}

#menu-item-24>a:hover {
    background: var(--color-white);
    color: var(--color-black) !important;
        box-shadow: 0 6px 20px rgba(0,0,0,0.15);
}


/* slick slider started*/
.slick-slider .slick-track,
.slick-track {
	display: flex;
	flex-shrink: 0;
}

.clstabimg .clsdefaultimg img{width: 100%;height: 100%;object-fit: cover;}

.logo{
    height: 50px;
}

/* fixed the black background look */
.clsitem .clsvideocol img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.home .clsoulprobox {width:33%;}

.slick-cardd {width: 450px !important;}
/* slick slider ended*/

 /* Green Checkmarks */
.ctextinfo ul li::before {content: "✓"; position: absolute; left: 0; color: #dba729; font-weight: 800;}

/* bullet wrapper */
.ctextinfo {margin-bottom: 0.5rem;}
.ctextinfo ul {list-style: none; padding: 0; margin: 0;}
.bulletwrapper {padding-bottom: 20px;}
/* .bulletwrapper .ctextinfo {margin-left: 10px;} */
.bulletwrapper .ctextinfo ul li{position: relative; padding-left: 1rem; margin-bottom: 0.75rem; font-size: 1rem; color: #555; line-height: 1.5;}
.clsletrtexts {flex: 1; width: 100%;}
.clsletrtextscol h4 a{font-weight: 600; color: #1a1818; !important}
.clsideastabs .clsmrcontents .clstexts h3 {font-size: clamp(1.2rem, 2.5vw, 1.5rem); font-weight: 600; color: #333;}
.clsideastabs .clsmrcontents .clstexts p {  font-size: clamp(0.95rem, 1vw, 1.05rem); line-height: 1.7; color: var(--text-grey); margin: 0;}
.clsideastabs .clsmrcontents .clstexts p strong {font-size: 24px}
.clsmrcontents {width: 98%; padding: 0 70px;}
.clsideastabs .clsmrcontents .clstexts p:last-child {opacity: 0.8; padding-bottom: 10px;}

/* Label / Left Side Styling */
.clsletrlabel {flex: 0 0 100%;}
.clsletrlabel h3 {font-size: clamp(1.25rem, 2vw, 1.75rem); font-weight: 600; color: #333; padding-left: 1rem; border-left: 4px solid #dba729; margin-top: 0;}

/* new enessio cards section  */
.enessio-grid-layout {display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(1.5rem, 3vw, 1.3rem); width: 100%;}
.enessio-grid-layout-2 {display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(1.5rem, 3vw, 1.3rem); width: 100%;}
.clsletrtexts>.enessio-grid-layout {display: grid; grid-template-columns: repeat(1, 1fr); gap: clamp(1.5rem, 3vw, 1.3rem); width: 100%;}

/* 2. The Card Wrapper (Title + Content) */
.enessio-card {background-color: #ffffff; padding: 30px; border-radius: 8px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04); display: flex; flex-direction: column; height: 100%;transition: transform 0.3s ease, box-shadow 0.3s ease; overflow: hidden; /* Keeps content inside rounded corners */}

/* 3. Card Header Styling */
.enessio-card h4 {margin: 0; padding: 1.5rem 1.5rem 0 0.5rem; font-size: clamp(1.1rem, 1.5vw, 1.25rem);}
.enessio-card h4 a {text-decoration: none; color: #212529; display: flex; align-items: center; gap: 0.5rem; font-weight: 700;}

/* 4. Card Content Area */
.enessio-card .bulletwrapper {padding: 1.5rem 1.5rem 0; flex-grow: 1; /* Pushes content to fill height */}

/* Specific override for the first paragraph card */
.enessio-card p {padding: 0.5rem; margin: 0; color: #555; line-height: 1.6; font-size: 16px;}
.card1 {grid-column: span 3;}

.container{max-width: 1200px; margin: 0 auto; padding: 0 20px;}


.cls_blog {justify-content: flex-start; padding: 50px 0;}

.logo img {width: auto;}

.strategic-description p {font-size: 16px !important;}

/* ended new classes */

/* tabs section for both solution pages - start */
        @media (min-width: 768px) {
            .clsmptabs .nav-link {
                width: auto !important;
                /* Revert to auto width on tablet/desktop */
            }

	    .clshsect5 {0 0 30px !important;}
        }

        /* Optional: Ensure spacing is tight on very small screens */
        @media (max-width: 767px) {
            .clsmptabs {
                flex-direction: column !important;
            }

            .clsmptabs .nav-link {
                text-align: center !important;
            }
        }

/* tabs section for both solution pages - end */

/* media queries here - responsive css*/

/* Tablet devices (768px - 991px) */
@media (max-width: 991px) {
    .clsletrconts .clsletrlabel span {
        font-size: 40px;
        line-height: 45px;
        letter-spacing: -2px;
        width: 100%;
        max-width: 350px;
    }

    .clshsect5 {0 0 30px !important;}
    
    .clsletrconts .clsletrcontrow {
        gap: 0 15px;
        margin-bottom: 35px;
        padding-bottom: 40px;
    }
    
    .clsrow10 {
        margin: 10px 30px;
    }

    .clsletrlabel {
    	flex: 0 0 300px;
        margin-right: 2rem;
    }

    /* Tablet/Desktop: Switch to 3 columns */
      .enessio-grid-layout {
                grid-template-columns: repeat(3, 1fr);
       }
 	.enessio-grid-layout-2 {
                grid-template-columns: repeat(1, 1fr);
       }
}

/* Mobile devices (481px - 767px) */
@media (max-width: 767px) {
    .clsletrconts .clsletrlabel span {
        font-size: 32px;
        line-height: 38px;
        letter-spacing: -1.5px;
        width: 100%;
    }

    .clshsect5 {0 0 30px !important;}

    .clsletrconts .clsletrcontrow {
        gap: 0;
        margin-bottom: 30px;
        padding-bottom: 30px;
        flex-direction: column;
    }
    
    .clsglossarydetails {
        padding: 40px 0 !important;
    }
    
    .clsglossinfo {
        /* padding: 40px 25px; */
        border-radius: 6px;
    }
    
    .ctextinfo h4 {
        font-size: 1.4rem;
        margin-bottom: 1.2rem;
    }
    
    .ctextinfo p {
        font-size: 1rem;
        margin-bottom: 1.5rem;
    }
    
    .clsrow10 {
        margin: 10px 20px;
    }

    .clsletrconts .clsletrtexts {
	width: 100%
    }

    .clsglossarydetails container {
	padding: 0 !important;
    }

    .clsmrcontents {
	width: 98%; 
	padding: 0 30px;
    }
}

/* Small mobile devices (320px - 480px) */
@media (max-width: 480px) {
    .clsletrconts .clsletrlabel span {
        font-size: 28px;
        line-height: 34px;
        letter-spacing: -1px;
    }
    
    .clshsect5 {0 0 30px !important;}

    .clsletrconts .clsletrcontrow {
        margin-bottom: 25px;
        padding-bottom: 25px;
    }
    
    .clsglossarydetails {
        padding: 30px 0 !important;
    }
    
    .clsglossinfo {
        /* padding: 30px 20px; */
        border-radius: 5px;
    }
    
    .ctextinfo h4 {
        font-size: 1.25rem;
        line-height: 1.3;
    }
    
    .ctextinfo p {
        font-size: 0.95rem;
        line-height: 1.6;
    }
    
    .clsrow10 {
        margin: 10px 15px;
    }
    
    .clsletrconts .clsletrtextscol .ctextinfo p {
        -webkit-line-clamp: 4;
    }

    .clsletrconts .clsletrtexts {
	width: 100%
    }

    .clsglossarydetails container {
	padding: 0 !important;
    }
}

/* Extra small devices (below 320px) */
@media (max-width: 319px) {
    .clsletrconts .clsletrlabel span {
        font-size: 24px;
        line-height: 30px;
	margin-bottom: 5px;
    }
    
    .clshsect5 {0 0 30px !important;}

    .clsglossinfo {
        /* padding: 25px 15px; */
    }
    
    .ctextinfo h4 {
        font-size: 1.1rem;
    }
    
    .clsrow10 {
        margin: 10px;
    }

    .clsletrconts .clsletrtexts {
	width: 100%
    }

    .clsglossarydetails container {
	padding: 0 !important;
    }
}
/* end of media queries - responsive css */




.clsmaintopsect {position: relative;}
.productslider  .slick-slide{width: min(470px, 100%) !important;}
.clsmaintopsect .slick-slide > div {display: flex;}
.clsmaintopsect .clsitem {height: 945px; position: relative; background-color: var(--bgcolor1);}
.clsmaintopsect .clsitem .clsvideocol {width: 100%; height: 100%; object-fit: cover;}
.clsmaintopsect .clsitem .clsvideocol {width: 100%;
    height: 120vh;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(0) scale(1);
    transition: transform 0.1s linear, opacity 0.1s linear;
    will-change: transform, opacity;  background-color: var(--bgcolor1);}
.clsmaintopsect .clstexts {position: absolute; top: 50%; width: 100%; left: 0px; z-index: 2; transform: translateY(-50%); -moz-transform: translateY(-50%); -webkit-transform: translateY(-50%);}
.clsmaintopsect .slick-slide {
    opacity: 0.95 !important;
    transition: opacity 1s ease;
    background-color: var(--bgcolor1) !important;
}

.clsmaintopsect .slick-fade .slick-slide.slick-current {
    opacity: 1 !important;
}

/* .clsinnerbanner .clsitem:after {background: #00000033; content: ""; position: absolute; left: 0px; top: 0px; width: 100%; height: 100%; z-index: 1;} */
.clsinnerbanner .clsitem .cbtn {margin-top: 100px;}

.clsvideomodal .clsvideobody .clsvideocol {width: 100%; height: 100%; object-fit: cover;}

.clsscrollwrap {text-align: center; position: absolute;bottom: 50px; left: 50%; transform: translateX(-50%); -moz-transform: translateX(-50%); -webkit-transform: translateX(-50%);}
.clsscrollshape {width: 25px;height: 50px;position: relative;border-radius: 34px;border: 1px solid #ffffff;display: inline-block;}
.clsscrollwheel {position: absolute;top: 10%;left: 50%;width: 5px; height: 5px;margin-left: -2px;border-radius: 50%;background-color: #ffffff;-webkit-animation: mouse-scroll 1.5s infinite;-moz-animation: mouse-scroll 1.5s infinite;animation: mouse-scroll 1.5s infinite;}

.clscontactconts {padding: 120px 0 3px;}
.clscontactconts .clscontsect1 {margin-bottom: 70px;}
.clscontform {width: 100%; background-color: var(--bgcolor2); padding:30px 40px 48px; border: 1px solid var(--color-orange);}
.wpcf7 .clscontform {
    border: none;
}
.clscontform .clsheading .ctitle2 span {font-weight: 500; color: var(--color-orange);}
.clscontform .clsheading p {font-size: 18px; margin-top: 9px; margin-bottom: 43px;}
.clsformgroup .clsfiledrow {position: relative; margin-bottom: 29px;}
.clsformgroup .custfield {font-size: 20px; font-weight: 300; padding: 0px 0px 5px; color: var(--main-color); border-bottom: 1px solid #444; background-color: transparent;}
.clsformgroup textarea.custfield {height: 140px; resize: none;}
.clsformgroup .clsfiledrow label {position: absolute; cursor: text;z-index: 2; top: 0px; left: 0px; font-size: 20px; font-weight: 300; color: #444; transition: all .3s ease}
.clsformgroup .custfield:focus + label,
.clsformgroup .custfield:valid + label{font-size: 12px;top: -18px}
.clsformgroup .clsbtnrow .cbtn {padding: 10px 50px; margin-top: 18px;}
.clscontactconts .clscomcol {width: 680px;}
.clscontinfocol .clscontinforow {margin-top: 50px;}
.clscontinfocol .clscontinforow:first-child {margin-top: 0px;}
.clscontinfocol .clscontinforow h4 {font-size: 24px; line-height: 24px; font-weight: 500; margin-bottom: 15px;}
.clscontinfocol .clscontinforow p {font-size: 20px; line-height: 24px; margin-top: 12px;}
.clscontinfocol .clscontinforow p a {color: var(--color-orange);}

.clsmapinfocol {margin-bottom: 93px;}
.clsmapinfocol .clsmapimg {background-color: var(--bgcolor2); padding: 30px; text-align: center;display: flex;align-items: center;justify-content: center;}
.clsmapinfocol .clsmapimg img {max-width: 100%;}
.clsmapinfocol .clsofloccol {padding-bottom: 29px;}
.clsmapinfocol .clsofloccol .cbtn {position: absolute; right: 16px; bottom: 30px;}
.clsmapinfocol .clsconno {margin-top: 22px;}
.clsmapinfocol .clsofficelocation .clsaddres {width: 100%;}
.clsmapinfocol .clsofloccol.clsadline3 p {padding-top: 9px;}
.clsmapinfocol .clsofloccol.clsadline3 .clsconno {margin-top: 5px;}


.section-su6 .clscol {float: left; width: 100%; padding: 0;}
.section-su6 .clscol img {width: 100%;}
.section-su6 .ctextinfo1 p {font-weight: 300;}


.clsgenerator_types {border-top: 1px solid #585858;}
.clsgenerator_types .ctitle1 {padding: 40px 0 70px;}

/* .section-su6 .clscol2 {padding:50px 150px;} */
.section-su6 .ctextinfo1 p {font-weight: 300;}

.clscpoints {
    padding-left: 20px;
    padding-top: 20px;
}

.clscpoints li {
    color: #585858;
    padding-left: 10px;
    font-size: 16px;
    font-weight: 300;
}



.clsglossarydetails {padding: 80px 0;}
.clsbreadcrumbs ul li, .clsbreadcrumbs ul li a {font-size: 40px; color: var(--main-color); font-weight: 400; position: relative;}
.clsbreadcrumbs ul li a:after {content: "/"; display: inline-flex; font-weight: 300; margin: 0 8px;}
.clsbreadcrumbs ul li a {font-weight: 300; color: #BCBCBC;}

.clsglossarydetails .clsglossinfo .ctextinfo p {font-weight: 300; padding: 0 0 30px;}
.clsglossarydetails .clsglossinfo .ctextinfo p span {color: var(--color-orange);}
.clsglossarydetails .clsglossinfo .ctextinfo h4 {font-size: 24px; font-weight: 400; line-height: 40px;}


.cpoints li {position: relative; padding-left: 30px;}
.cpoints li p {padding: 0px !important;}
.cpoints li p b {font-weight: 400;}


.blog-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    height: 100%;
    transition: all 0.3s ease;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}

.blog-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.12);
}

.blog-thumb img {
    width: 100%;
    height: 240px;
    object-fit: cover;
}

.blog-content {
    padding: 20px;
}

.blog-date {
    font-size: 13px;
    color: #6b7280;
}

.blog-content h3 {
    font-size: 20px;
    margin: 10px 0;
    color: #111827;
}

.blog-content p {
    font-size: 15px;
    color: #4b5563;
}



/* Force disable click on Solutions/Products */
li.menu-parent-no-click > a {
    pointer-events: none !important;
    cursor: default !important;
}




/* ===============================
   SINGLE BLOG POST
================================ */
.post-layout {
    max-width: 820px;
    margin: 0 auto;
}

.single-post__featured img {
    width: 100%;
    height: auto;
    border-radius: 14px;
    margin-bottom: 40px;
}

.single-post__content {
    font-size: 18px;
    line-height: 1.9;
    color: #1f2933;
}

/* Paragraphs */
.single-post__content p {
    margin-bottom: 22px;
}

/* Headings */
.single-post__content h2,
.single-post__content h3 {
    margin: 40px 0 15px;
    font-weight: 700;
    color: #111;
}

.single-post__content h2 {
    font-size: 28px;
}

.single-post__content h3 {
    font-size: 22px;
}

/* Lists */
.single-post__content ul,
.single-post__content ol {
    padding-left: 20px;
    margin-bottom: 24px;
}

.single-post__content li {
    margin-bottom: 10px;
}

/* Links */
.single-post__content a {
    color: #0a8754;
    text-decoration: underline;
}

/* ===============================
   MOBILE
================================ */
@media (max-width: 768px) {
    .single-post__content {
        font-size: 16px;
    }

    .single-post__featured img {
        border-radius: 10px;
    }
}


/* ===============================
   SINGLE BLOG POST – CLEAN LAYOUT
================================ */

/* Centered readable width */
.single-post-wrapper {
    max-width: 820px;
    margin: 0 auto;
    padding-bottom: 80px;
}

/* Featured image */
.single-post-image img {
    width: 100%;
    height: 480px;
    border-radius: 14px;
    margin-bottom: 40px;
    object-fit: cover;
}



/* Content typography */
.single-post-content {
    font-size: 18px;
    line-height: 1.9;
    color: #1f2937;
}

/* Paragraph spacing */
.single-post-content p {
    margin-bottom: 22px;
}

/* Headings */
.single-post-content h2 {
    font-size: 28px;
    margin: 40px 0 16px;
    font-weight: 700;
}

.single-post-content h3 {
    font-size: 22px;
    margin: 32px 0 14px;
    font-weight: 600;
}

/* Lists */
.single-post-content ul,
.single-post-content ol {
    margin: 20px 0 24px;
    padding-left: 22px;
}

.single-post-content li {
    margin-bottom: 10px;
}

/* Gutenberg block width FIX */
.single-post-content .wp-block {
    max-width: 100%;
}

/* Links */
.single-post-content a {
    color: #0a8754;
    text-decoration: underline;
}

/* Mobile */
@media (max-width: 768px) {
    .single-post-content {
        font-size: 16px;
    }
}



/* ===============================
   INNER BANNER (COLOR BASED)
================================ */
.inner-banner {
    position: relative;
    max-height: 320px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 80px 20px;
}

/* Default color theme 
.inner-banner--color {
    background: linear-gradient(135deg, #0f172a, #1e293b);
} */

/* Content */
.inner-banner__content {
    position: relative;
    z-index: 2;
    max-width: 900px;
}

/* Title */
.inner-banner__title {
    font-size: clamp(32px, 4vw, 52px);
    font-weight: 700;
    /* color: #ffffff; */
    margin-bottom: 10px;
}

/* Date */
.inner-banner__date {
    font-size: 15px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    /* color: rgba(255, 255, 255, 0.75); */
}



.cls_read {
	color:#dba729;
}





/* Segments styling */
/* BESS Segments Section - Bootstrap Enhanced Responsive CSS */

.section-su6.clsgenerator_types {
    position: relative;
    z-index: 1;
    background-color: #fff;
}

/* Title Section */
.ctitle1 {
    text-align: center;
    padding: 0 15px;
}

.ctitle1 h2 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1a1818;
    position: relative;
    display: inline-block;
}

/* Row Container - Bootstrap flex layout */
.section-su6 .d-lg-flex {
    display: flex;
    align-items: center;
    width: 100%;
}

.section-su6 .d-lg-flex:last-child {
    margin-bottom: 0;
}

/* Column Layout with Bootstrap grid behavior */
.clscol {
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 15px;
}

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

.clscol1 img {
    max-width: 100%;
    width: 100%;
    height: auto;
    padding: 0;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
    display: block;
}


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

/* Text Content */
.ctextinfo1 {
    width: 100%;
    padding: 20px;
}

.ctextinfo1 h3 {
    font-size: 2rem;
    font-weight: 700;
    color: #1a1818;
    margin-bottom: 15px;
    line-height: 1.3;
}

.ctextinfo1 p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: #555;
    margin-bottom: 20px;
}

.ctextinfo1 strong {
    color: #1a1818;
    font-weight: 600;
}

/* List Styling */
.clscpoints {
    list-style: none;
    padding-left: 0;
    margin: 20px 0 0 0;
}

.clscpoints li {
    font-size: 1rem;
    line-height: 1.7;
    color: #555;
    padding-left: 30px;
    position: relative;
    margin-bottom: 12px;
}

.clscpoints li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #dba729;
    font-weight: bold;
    font-size: 1.2rem;
}

/* Large Devices (desktops, 992px and up) */
@media (max-width: 992px) {
    .section-su6 .d-lg-flex {
        display: flex !important;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

    .clshsect5 {0 0 30px !important;}
    
    .section-su6 .align-items-lg-center {
        align-items: center !important;
    }
    
    .section-su6 .flex-row-reverse {
        flex-direction: row-reverse !important;
    }

    .single-post-image img {
        width: 100%;
        height: 360px;
        border-radius: 14px;
        margin-bottom: 40px;
	object-fit: cover;
    }
}

/* Medium devices and below (tablets, less than 992px) */
@media (max-width: 991.98px) {
    .ctitle1 h2 {
        font-size: 2rem;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

    .clshsect5 {0 0 30px !important;}

    /* Stack columns vertically */
    .section-su6 .d-lg-flex {
        flex-direction: column !important;
    }

    .clscol {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0 15px;
        margin-bottom: 30px;
    }

    .clscol:last-child {
        margin-bottom: 0;
	padding: 0 10px !important;
    }

    .single-post-image img {
        width: 100%;
        height: 360px;
        border-radius: 14px;
        margin-bottom: 40px;
	object-fit: cover;
    }

    /* Always show image first on mobile */
    .clscol1 {
        order: 1;
    }

    .clscol2 {
        order: 2;
    }

    .ctextinfo1 {
        padding: 10px;
    }

    .ctextinfo1 h3 {
        font-size: 1.75rem;
    }

    .ctextinfo1 p {
        font-size: 1rem;
    }
.clsgenerator_types .ctitle1 {padding: 20px;}
}

/* Small devices (landscape phones, 576px and up) to tablets */
@media (max-width: 767.98px) {
    .ctitle1 h2 {
        font-size: 1.75rem;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

    .clshsect5 {0 0 30px !important;}

    .clscol {
        margin-bottom: 25px;
    }

    .ctextinfo1 h3 {
        font-size: 1.5rem;
        margin-bottom: 12px;
    }

    .ctextinfo1 p {
        font-size: 0.95rem;
        line-height: 1.6;
    }

    .single-post-image img {
        width: 100%;
        height: 240px;
        border-radius: 14px;
        margin-bottom: 40px;
	object-fit: cover;
    }

.clsgenerator_types .ctitle1 {padding: 20px;}

    .clscpoints li {
        font-size: 0.95rem;
        padding-left: 28px;
        margin-bottom: 10px;
    }

    .clshsect5 {0 0 30px !important;}

    .clscpoints li::before {
        font-size: 1.1rem;
    }
}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
    .ctitle1 h2 {
        font-size: 1.5rem;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

    .clshsect5 {0 0 30px !important;}

    .clscol {
        margin-bottom: 20px;
        padding: 0 15px;
    }

    .single-post-image img {
        width: 100%;
        height: 240px;
        border-radius: 14px;
        margin-bottom: 40px;
	object-fit: cover;
    }

    .ctextinfo1 {
        padding: 5px;
    }

    .ctextinfo1 h3 {
        font-size: 1.3rem;
    }

.clsgenerator_types .ctitle1 {padding: 20px;}

    .ctextinfo1 p {
        font-size: 16px;
    }

    .clshsect5 {0 0 30px !important;}

    .clscpoints li {
        font-size: 16px;
        padding-left: 25px;
        margin-bottom: 8px;
    }

    .clscpoints li::before {
        font-size: 1rem;
    }
}

/* Extra extra small devices (very small phones, less than 360px) */
@media (max-width: 359.98px) {

    .ctitle1 h2 {
        font-size: 1.3rem;
    }

    .clscol {
        padding: 0 10px;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

    .clshsect5 {0 0 30px !important;}

    .single-post-image img {
        width: 100%;
        height: 240px;
        border-radius: 14px;
        margin-bottom: 40px;
	object-fit: cover;
    }

.clsgenerator_types .ctitle1 {padding: 20px;}

    .ctextinfo1 h3 {
        font-size: 1.2rem;
    }

    .ctextinfo1 p {
        font-size: 0.85rem;
    }

    .clscpoints li {
        font-size: 0.85rem;
    }

    .clshsect5 {0 0 30px !important;}

}

/* Container adjustments */
.section-su6 .container {
    width: 100%;
    max-width: 1200px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 15px;
    padding-left: 15px;
}

@media (max-width: 576px) {
    .section-su6 .container {
        max-width: 540px;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

    .section-su6 .clscol2 {
	padding: 0;
    }

    .single-post-image img {
        width: 100%;
        height: 240px;
        border-radius: 14px;
        margin-bottom: 40px;
	object-fit: cover;
    }

    .clshsect5 {0 0 30px !important;}

    .clsfaqs .accordion-button h3 {font-size: 18px;}
}

@media (max-width: 768px) {
    .section-su6 .container {
        max-width: 720px;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

    .section-su6 .clscol1 {
	padding: 0 !important;
    }
    
    .section-su6 .clscol2 {
	padding: 0 !important;
    }
    .clsfaqs .accordion-button h3 {font-size: 18px;}
}

@media (max-width: 992px) {
    .section-su6 .container {
        max-width: 960px;
    }

    .inner-banner {
    	padding: 50px 20px;
    }

     .section-su6 .clscol1 {
	padding: 0 !important;
    }
    
    .section-su6 .align-items-lg-center {align-items: flex-start !important;}

    .section-su6 .clscol2 {
	padding: 0 !important;
    }
.clsfaqs .accordion-button h3 {font-size: 18px;}
}

@media (max-width: 1200px) {
    .section-su6 .container {
        max-width: 1140px;
    }

     .section-su6 .clscol1 {
	padding: 0 !important;
    }
    
    .section-su6 .clscol2 {
	padding: 0 !important;
    }
.clsfaqs .accordion-button h3 {font-size: 18px;}
}


/* new footer style started - 30-12-2025 */

/* ===============================
	  ENESSIO FOOTER
================================ */

footer {
    color: #e5e5e5 !important;
    padding: 20px 30px;
}

footer a {
    color: var(--color-white);
    text-decoration: none;
}

footer a:hover {
    color: var(--color-black);
}
footer .copyright .copytext p a:hover {
    color: var(--color-orange);
}
footer .copyright .copytext a:hover {
    color: var(--color-orange);
}

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

/* FOOTER TOP LAYOUT */
.footertop {
    gap: 60px;
    margin-bottom: 50px;
}

/* COLUMN BASE */
.footerboxs {
    flex: 1;
}

/* LOGO */
.footerboxs .flogo img {
    max-width: 220px;
    margin-bottom: 25px;
}

/* DESCRIPTION */
.clsreachus h4 {
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 18px;
}

.clsreachus h4 span {
    color: #dba729;
}

.clsreachus p {
    font-size: 15px;
    line-height: 1.7;
    color: var(--bgcolor1);
    max-width: 360px;
}

/* SECTION HEADINGS */
.footerboxs h4 {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 22px;
    position: relative;
}

.footerboxs h4 span {
    color: #dba729;
}

/* UNDERLINE */
.footerboxs h4::after {
    content: "";
    width: 36px;
    height: 3px;
    background: #dba729;
    position: absolute;
    bottom: -8px;
    left: 0;
}

/* QUICK LINKS */
.footer-menu {list-style: none; padding: 0; margin: 0;}

.footer-menu li {margin-bottom: 12px;}

.footer-menu li a {font-size: 16px; color: var(--color-white);}

.footer-menu li a:hover {color: #dba729;}

/* SOCIAL ICONS */
.sociallink {
    gap: 14px;
}

.sociallink a {
    width: 42px;
    height: 42px;
    background: rgba(255,255,255,0.08);
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}


/* CONTACT */
.footerboxs.fbox4 p {
    font-size: 15px;
    margin-bottom: 10px;
}

.cls_contact{
    display: flex !important;
    flex-wrap: wrap !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.footer-phone a {
    font-size: 16px;
    color: var(--color-white);
}

.footer-email a {
    font-size: 16px;
    color: var(--color-white);
}
.footer-email a:hover {
    font-size: 16px;
    color: #dba729;
}
.footer-phone a:hover {
    font-size: 16px;
    color: #dba729;
}


/* COPYRIGHT */
.copyright {
    border-top: 1px solid rgba(255,255,255,0.15);
    padding-top: 20px;
    margin-top: 40px;
}

.copytext p {
    font-size: 14px;
    color: var(--color-black);
}

/* RESPONSIVE */
@media (max-width: 991px) {
    .footertop {
        flex-direction: column;
        gap: 40px;
    }

    .clsreachus p {
        max-width: 100%;
    }
}

/* ===============================
   FOOTER WIREFRAME STRUCTURE
================================ */

.footer-grid {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr 1fr;
    gap: 60px;
    align-items: stretch;
}

/* Brand column (shorter) */
.footer-col-brand {
    max-width: 360px;
    margin-top: clamp(20px, 8vw, 30px);
}

/* Tall columns */
.footer-col-links,
.footer-col-social,
.footer-col-contact {
    min-height: 100%;
}

/* Headings */
.footer-col h4 {
    font-size: 22px;
    margin-bottom: 22px;
    position: relative;
    margin-top: 32px;
}

.footer-col h4 span {
    color: #dba729;
}

.footer-col h4::after {
    content: "";
    width: 36px;
    height: 3px;
    background: #dba729;
    position: absolute;
    bottom: -8px;
    left: 0;
}

/* Responsive */
@media (max-width: 991px) {
    .footer-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px;
    }
}

@media (max-width: 575px) {
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
}


}



/* new footer style ended - 30-12-2025 */