.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}/* Start custom CSS for html, class: .elementor-element-57b0769 *//*=================================
      PREMIUM SERVICES
==================================*/

.services-slope{

    position:relative;

    overflow:hidden;

    padding:180px 0 180px;

    background:linear-gradient(135deg,#0F172A 0%,#1E40AF 100%);

}

/* High Top Slope */

.top-slope{

    position:absolute;

    top:-220px;

    left:0;

    width:100%;

    height:320px;

    background:#ffffff;

    transform:skewY(-8deg);

    transform-origin:left;

}

/* High Bottom Slope */

.bottom-slope{

    position:absolute;

    bottom:-220px;

    left:0;

    width:100%;

    height:320px;

    background:#ffffff;

    transform:skewY(8deg);

    transform-origin:right;

}

/* Decorative Background */

.services-slope::before{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    background:rgba(255,255,255,.05);

    border-radius:50%;

    top:-180px;

    right:-180px;

}

.services-slope::after{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    background:rgba(59,130,246,.12);

    border-radius:50%;

    bottom:-160px;

    left:-160px;

}

.section-heading{

    position:relative;

    z-index:5;

    max-width:800px;

    margin:0 auto 80px;

    text-align:center;

}

.section-heading span{

    color:#93C5FD;

    font-size:15px;

    font-weight:700;

    letter-spacing:3px;

}

.section-heading h2{

    font-size:56px;

    color:#ffffff;

    margin:20px 0;

    line-height:1.2;

}

.section-heading p{

    color:#CBD5E1;

    line-height:1.9;

    font-size:18px;

}

.services-grid{

    position:relative;

    z-index:5;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.service-card{

    padding:45px;

    border-radius:30px;

    background:rgba(255,255,255,.08);

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.15);

    transition:.45s;

}

.service-card:hover{

    transform:translateY(-18px);

    box-shadow:0 35px 80px rgba(0,0,0,.30);

    border-color:#60A5FA;

}

.featured{

    background:linear-gradient(135deg,#2563EB,#3B82F6);

}

.service-icon{

    width:85px;

    height:85px;

    border-radius:22px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:40px;

    margin-bottom:30px;

    background:rgba(255,255,255,.15);

}

.service-card h3{

    color:#ffffff;

    font-size:28px;

    margin-bottom:18px;

}

.service-card p{

    color:#CBD5E1;

    line-height:1.9;

    margin-bottom:30px;

}

.service-card a{

    color:#ffffff;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.service-card:hover a{

    letter-spacing:1px;

}

@media(max-width:992px){

.services-grid{

grid-template-columns:repeat(2,1fr);

}

.section-heading h2{

font-size:42px;

}

.top-slope{

transform:skewY(-6deg);

}

.bottom-slope{

transform:skewY(6deg);

}

}

@media(max-width:768px){

.services-slope{

padding:120px 0;

}

.services-grid{

grid-template-columns:1fr;

}

.section-heading h2{

font-size:34px;

}

.service-card{

padding:35px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a8d376c *//*==================================
        OUR PROCESS
==================================*/

.process-section{

    padding:140px 0;

    background:#f8fafc;

    position:relative;

}

.process-section::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:180px;

    background:#2563eb;

    clip-path:polygon(0 0,100% 0,100% 65%,0 100%);

}

.process-section .container{

    position:relative;

    z-index:2;

}

.process-timeline{

    position:relative;

    max-width:1000px;

    margin:80px auto 0;

}

.process-timeline::before{

    content:"";

    position:absolute;

    left:50%;

    top:0;

    width:4px;

    height:100%;

    background:#2563eb;

    transform:translateX(-50%);

}

.process-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:70px;

    position:relative;

}

.process-item:nth-child(even){

    flex-direction:row-reverse;

}

.process-number{

    width:90px;

    height:90px;

    background:linear-gradient(135deg,#2563eb,#60a5fa);

    color:#fff;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:28px;

    font-weight:700;

    z-index:2;

    box-shadow:0 15px 35px rgba(37,99,235,.25);

}

.process-card{

    width:42%;

    background:#fff;

    padding:35px;

    border-radius:24px;

    box-shadow:0 20px 45px rgba(0,0,0,.08);

    transition:.4s;

}

.process-card:hover{

    transform:translateY(-10px);

    box-shadow:0 30px 60px rgba(37,99,235,.18);

}

.process-card h3{

    font-size:28px;

    color:#0f172a;

    margin-bottom:15px;

}

.process-card p{

    color:#64748b;

    line-height:1.9;

}

@media(max-width:992px){

.process-timeline::before{

left:45px;

}

.process-item{

flex-direction:row !important;

padding-left:90px;

}

.process-number{

position:absolute;

left:0;

}

.process-card{

width:100%;

}

}

@media(max-width:768px){

.process-section{

padding:90px 0;

}

.process-section::before{

height:120px;

}

.process-card{

padding:25px;

}

.process-card h3{

font-size:22px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-127c7ec *//*==================================
PORTFOLIO SECTION
==================================*/

.portfolio-section{

    padding:120px 0;

    background:#F8FAFC;

}

.portfolio-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:70px;

}

.portfolio-card{

    background:#fff;

    border-radius:22px;

    overflow:hidden;

    transition:.4s;

    border:1px solid #E5E7EB;

}

.portfolio-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 60px rgba(37,99,235,.12);

}

.portfolio-image{

    position:relative;

    overflow:hidden;

}

.portfolio-image img{

    width:100%;

    height:260px;

    object-fit:cover;

    transition:.5s;

}

.portfolio-card:hover img{

    transform:scale(1.08);

}

.portfolio-overlay{

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:100%;

    background:rgba(37,99,235,.80);

    display:flex;

    justify-content:center;

    align-items:center;

    opacity:0;

    transition:.4s;

}

.portfolio-card:hover .portfolio-overlay{

    opacity:1;

}

.portfolio-overlay a{

    color:#fff;

    text-decoration:none;

    border:2px solid #fff;

    padding:14px 28px;

    border-radius:40px;

    font-weight:600;

}

.portfolio-content{

    padding:30px;

}

.portfolio-content span{

    display:inline-block;

    background:#DBEAFE;

    color:#2563EB;

    padding:8px 18px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

    margin-bottom:18px;

}

.portfolio-content h3{

    font-size:26px;

    color:#0F172A;

    margin-bottom:15px;

}

.portfolio-content p{

    color:#64748B;

    line-height:1.8;

}

@media(max-width:992px){

.portfolio-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.portfolio-section{

padding:80px 0;

}

.portfolio-grid{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-eae44c6 *//*==================================
ACHIEVEMENT SECTION
==================================*/

.achievement-section{

    padding:120px 0;

    background:#ffffff;

}

.achievement-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.achievement-card{

    background:#F8FAFC;

    padding:40px 30px;

    text-align:center;

    border-radius:24px;

    border:1px solid #E5E7EB;

    transition:.35s;

}

.achievement-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 50px rgba(37,99,235,.12);

    border-color:#2563EB;

}

.achievement-icon{

    width:90px;

    height:90px;

    margin:0 auto 25px;

    border-radius:22px;

    background:linear-gradient(135deg,#2563EB,#3B82F6);

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:40px;

    color:#fff;

}

.achievement-card h2{

    font-size:42px;

    color:#2563EB;

    margin-bottom:10px;

}

.achievement-card h4{

    font-size:22px;

    color:#0F172A;

    margin-bottom:15px;

}

.achievement-card p{

    color:#64748B;

    line-height:1.8;

}

@media(max-width:992px){

.achievement-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.achievement-section{

padding:80px 0;

}

.achievement-grid{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b31837b *//*==================================
OUR TEAM
==================================*/

.team-section{

    padding:120px 0;

    background:#F8FAFC;

}

.team-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.team-card{

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    transition:.4s;

    border:1px solid #E5E7EB;

}

.team-card:hover{

    transform:translateY(-10px);

    box-shadow:0 25px 60px rgba(37,99,235,.12);

}

.team-image{

    position:relative;

    overflow:hidden;

}

.team-image img{

    width:100%;

    height:340px;

    object-fit:cover;

    transition:.4s;

}

.team-card:hover img{

    transform:scale(1.08);

}

.team-overlay{

    position:absolute;

    inset:0;

    background:rgba(37,99,235,.85);

    display:flex;

    justify-content:center;

    align-items:center;

    gap:15px;

    opacity:0;

    transition:.35s;

}

.team-card:hover .team-overlay{

    opacity:1;

}

.team-overlay a{

    width:45px;

    height:45px;

    border-radius:50%;

    background:#fff;

    color:#2563EB;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    font-weight:700;

}

.team-content{

    padding:30px;

    text-align:center;

}

.team-content h3{

    font-size:24px;

    color:#0F172A;

    margin-bottom:8px;

}

.team-content span{

    color:#2563EB;

    font-weight:600;

    display:block;

    margin-bottom:15px;

}

.team-content p{

    color:#64748B;

    line-height:1.8;

}

@media(max-width:992px){

.team-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.team-section{

padding:80px 0;

}

.team-grid{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d46a87a *//*==================================
TECHNOLOGY LOGO SLIDER
==================================*/

.technology-section{

    padding:120px 0;

    background:#ffffff;

    overflow:hidden;

}

.logo-slider{

    position:relative;

    width:100%;

    overflow:hidden;

    margin-top:70px;

}

.logo-slider::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:180px;

    height:100%;

    background:linear-gradient(to right,#fff,transparent);

    z-index:5;

}

.logo-slider::after{

    content:"";

    position:absolute;

    right:0;

    top:0;

    width:180px;

    height:100%;

    background:linear-gradient(to left,#fff,transparent);

    z-index:5;

}

.logo-track{

    display:flex;

    width:max-content;

    animation:scroll 35s linear infinite;

}

.logo-slider:hover .logo-track{

    animation-play-state:paused;

}

.logo-item{

    width:180px;

    height:160px;

    margin:0 15px;

    border-radius:24px;

    background:#ffffff;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    border:1px solid #E5E7EB;

    transition:.4s;

    box-shadow:0 10px 30px rgba(0,0,0,.06);

}

.logo-item:hover{

    transform:translateY(-10px);

    border-color:#2563EB;

    box-shadow:0 25px 50px rgba(37,99,235,.15);

}

.logo-item img{

    width:60px;

    height:60px;

    object-fit:contain;

    margin-bottom:15px;

    transition:.4s;

}

.logo-item:hover img{

    transform:scale(1.15);

}

.logo-item h4{

    color:#0F172A;

    font-size:18px;

    font-weight:600;

}

@keyframes scroll{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}

@media(max-width:768px){

.logo-item{

width:140px;

height:130px;

}

.logo-item img{

width:45px;

height:45px;

}

.logo-item h4{

font-size:15px;

}

.logo-slider::before,

.logo-slider::after{

width:60px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7c2ffb6 *//*==================================
LATEST BLOGS
==================================*/

.blog-section{

    padding:120px 0;

    background:#F8FAFC;

}

.blog-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

    margin-top:70px;

}

.blog-card{

    background:#fff;

    border-radius:24px;

    overflow:hidden;

    border:1px solid #E5E7EB;

    transition:.4s;

}

.blog-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 60px rgba(37,99,235,.12);

}

.blog-image{

    position:relative;

}

.blog-image img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:.4s;

}

.blog-card:hover img{

    transform:scale(1.08);

}

.blog-category{

    position:absolute;

    top:20px;

    left:20px;

    background:#2563EB;

    color:#fff;

    padding:8px 16px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

}

.blog-content{

    padding:30px;

}

.blog-meta{

    display:flex;

    justify-content:space-between;

    margin-bottom:18px;

    color:#64748B;

    font-size:14px;

}

.blog-content h3{

    font-size:24px;

    color:#0F172A;

    margin-bottom:15px;

    line-height:1.4;

}

.blog-content p{

    color:#64748B;

    line-height:1.8;

    margin-bottom:25px;

}

.blog-content a{

    color:#2563EB;

    text-decoration:none;

    font-weight:600;

}

.blog-content a:hover{

    letter-spacing:1px;

}

@media(max-width:992px){

.blog-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.blog-section{

padding:80px 0;

}

.blog-grid{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c48ae9f *//*==================================
TECHNOLOGY SECTION
==================================*/

.technology-section{

    padding:120px 0;

    background:#ffffff;

}

.technology-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

    margin-top:70px;

}

.tech-card{

    background:#F8FAFC;

    border:1px solid #E2E8F0;

    border-radius:22px;

    padding:35px 30px;

    text-align:center;

    transition:.35s;

}

.tech-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(37,99,235,.12);

    border-color:#2563EB;

}

.tech-icon{

    width:85px;

    height:85px;

    margin:0 auto 25px;

    border-radius:20px;

    background:linear-gradient(135deg,#2563EB,#60A5FA);

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:38px;

}

.tech-card h3{

    font-size:24px;

    margin-bottom:15px;

    color:#0F172A;

}

.tech-card p{

    color:#64748B;

    line-height:1.8;

}

@media(max-width:992px){

.technology-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.technology-section{

padding:80px 0;

}

.technology-grid{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3af24aa *//*==================================
FAQ SECTION
==================================*/

.faq-section{

    padding:120px 0;

    background:#F8FAFC;

}

.faq-wrapper{

    max-width:900px;

    margin:70px auto 0;

}

.faq-item{

    background:#fff;

    margin-bottom:20px;

    border-radius:18px;

    overflow:hidden;

    border:1px solid #E5E7EB;

    transition:.3s;

}

.faq-item:hover{

    box-shadow:0 15px 40px rgba(37,99,235,.10);

}

.faq-question{

    width:100%;

    padding:25px 30px;

    border:none;

    background:#fff;

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:20px;

    font-weight:600;

    cursor:pointer;

    color:#0F172A;

}

.faq-question span{

    font-size:30px;

    color:#2563EB;

}

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:max-height .4s ease;

}

.faq-answer p{

    padding:0 30px 25px;

    color:#64748B;

    line-height:1.8;

}

.faq-item.active .faq-answer{

    max-height:300px;

}

.faq-item.active .faq-question{

    color:#2563EB;

}

@media(max-width:768px){

.faq-section{

padding:80px 0;

}

.faq-question{

font-size:18px;

padding:20px;

}

.faq-answer p{

padding:0 20px 20px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3924e55 *//*==================================
CLIENT TESTIMONIALS
==================================*/

.testimonials-section{

    padding:120px 0;

    background:#ffffff;

}

.testimonial-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-top:70px;

}

.testimonial-card{

    background:#F8FAFC;

    border:1px solid #E5E7EB;

    border-radius:24px;

    padding:35px;

    transition:.35s;

}

.testimonial-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 50px rgba(37,99,235,.12);

}

.testimonial-card.featured{

    background:#2563EB;

    color:#ffffff;

}

.testimonial-card.featured p,
.testimonial-card.featured span,
.testimonial-card.featured h3{

    color:#ffffff;

}

.testimonial-top{

    display:flex;

    align-items:center;

    gap:18px;

    margin-bottom:20px;

}

.testimonial-top img{

    width:70px;

    height:70px;

    border-radius:50%;

    object-fit:cover;

}

.testimonial-top h3{

    margin-bottom:5px;

    color:#0F172A;

    font-size:22px;

}

.testimonial-top span{

    color:#64748B;

    font-size:15px;

}

.stars{

    color:#FBBF24;

    font-size:22px;

    margin-bottom:18px;

}

.testimonial-card p{

    color:#64748B;

    line-height:1.9;

}

@media(max-width:992px){

.testimonial-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.testimonials-section{

padding:80px 0;

}

.testimonial-grid{

grid-template-columns:1fr;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d85affc *//*==================================
CALL TO ACTION
==================================*/

.cta-section{

    padding:120px 0;

    background:linear-gradient(135deg,#2563EB,#1D4ED8);

}

.cta-wrapper{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:60px;

    align-items:center;

}

.cta-content span{

    display:inline-block;

    color:#BFDBFE;

    font-size:15px;

    letter-spacing:2px;

    font-weight:600;

    text-transform:uppercase;

    margin-bottom:20px;

}

.cta-content h2{

    color:#ffffff;

    font-size:52px;

    line-height:1.2;

    margin-bottom:25px;

}

.cta-content p{

    color:rgba(255,255,255,.9);

    font-size:18px;

    line-height:1.9;

    margin-bottom:40px;

}

.cta-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.btn-primary{

    background:#ffffff;

    color:#2563EB;

    padding:18px 36px;

    border-radius:12px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;

}

.btn-primary:hover{

    transform:translateY(-5px);

}

.btn-secondary{

    border:2px solid #ffffff;

    color:#ffffff;

    padding:18px 36px;

    border-radius:12px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;

}

.btn-secondary:hover{

    background:#ffffff;

    color:#2563EB;

}

.cta-card{

    background:rgba(255,255,255,.12);

    backdrop-filter:blur(10px);

    border:1px solid rgba(255,255,255,.2);

    border-radius:24px;

    padding:40px;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:25px;

}

.cta-item{

    text-align:center;

}

.cta-item h3{

    font-size:42px;

    color:#ffffff;

    margin-bottom:8px;

}

.cta-item p{

    color:#E0E7FF;

    font-size:15px;

}

@media(max-width:992px){

.cta-wrapper{

grid-template-columns:1fr;

text-align:center;

}

.cta-buttons{

justify-content:center;

}

}

@media(max-width:768px){

.cta-section{

padding:80px 0;

}

.cta-content h2{

font-size:36px;

}

.cta-card{

grid-template-columns:1fr 1fr;

padding:25px;

}

}

@media(max-width:480px){

.cta-card{

grid-template-columns:1fr;

}

.btn-primary,
.btn-secondary{

width:100%;

text-align:center;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b15d671 *//*==================================
CONTACT SECTION
==================================*/

.contact-section{

    padding:120px 0;

    background:#F8FAFC;

}

.contact-wrapper{

    display:grid;

    grid-template-columns:380px 1fr;

    gap:50px;

    margin-top:70px;

}

.contact-info{

    background:linear-gradient(135deg,#2563EB,#1D4ED8);

    color:#fff;

    padding:45px;

    border-radius:25px;

}

.contact-info h3{

    font-size:32px;

    margin-bottom:15px;

}

.contact-info>p{

    line-height:1.8;

    opacity:.9;

    margin-bottom:40px;

}

.info-box{

    display:flex;

    gap:18px;

    margin-bottom:30px;

    align-items:flex-start;

}

.icon{

    width:60px;

    height:60px;

    background:rgba(255,255,255,.15);

    border-radius:16px;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:28px;

    flex-shrink:0;

}

.info-box h4{

    margin-bottom:6px;

    font-size:18px;

}

.info-box p{

    color:#E2E8F0;

    line-height:1.7;

}

.contact-form{

    background:#fff;

    padding:45px;

    border-radius:25px;

    box-shadow:0 20px 50px rgba(0,0,0,.08);

}

.input-group{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:20px;

}

.contact-form input,
.contact-form textarea{

    width:100%;

    padding:18px;

    margin-bottom:20px;

    border:1px solid #CBD5E1;

    border-radius:12px;

    font-size:16px;

    outline:none;

    transition:.3s;

}

.contact-form input:focus,
.contact-form textarea:focus{

    border-color:#2563EB;

    box-shadow:0 0 0 3px rgba(37,99,235,.12);

}

.contact-form textarea{

    resize:none;

}

.contact-form button{

    background:#2563EB;

    color:#fff;

    border:none;

    padding:18px 40px;

    border-radius:12px;

    font-size:16px;

    cursor:pointer;

    transition:.3s;

}

.contact-form button:hover{

    background:#1D4ED8;

    transform:translateY(-3px);

}

@media(max-width:992px){

.contact-wrapper{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.contact-section{

padding:80px 0;

}

.contact-form,
.contact-info{

padding:30px;

}

.input-group{

grid-template-columns:1fr;

}

.contact-form button{

width:100%;

}

}/* End custom CSS */