/* Start custom CSS for html, class: .elementor-element-a81f998 *//*=========================
HERO SECTION
=========================*/

.hero{

padding:100px 8%;
background:#ffffff;
overflow:hidden;

}

.container{

max-width:1300px;
margin:auto;

display:grid;
grid-template-columns:1fr 1fr;

align-items:center;
gap:70px;

}

.hero-tag{

display:inline-block;

padding:10px 22px;

background:#EAF2FF;

color:#2563EB;

font-weight:700;

border-radius:50px;

margin-bottom:25px;

}

.hero-content h1{

font-size:58px;

line-height:1.2;

color:#0F172A;

margin-bottom:25px;

font-weight:800;

}

.hero-content h1 span{

color:#2563EB;

}

.hero-content p{

font-size:18px;

line-height:1.8;

color:#64748B;

margin-bottom:40px;

}

/* Buttons */

.hero-buttons{

display:flex;

gap:20px;

flex-wrap:wrap;

margin-bottom:50px;

}

.primary-btn{

display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 38px;

background:#2563EB;

color:#fff;

text-decoration:none;

font-weight:700;

border-radius:50px;

transition:.3s;

}

.primary-btn:hover{

background:#1D4ED8;

transform:translateY(-4px);

box-shadow:0 15px 30px rgba(37,99,235,.25);

}

.secondary-btn{

display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 38px;

border:2px solid #2563EB;

color:#2563EB;

text-decoration:none;

font-weight:700;

border-radius:50px;

transition:.3s;

}

.secondary-btn:hover{

background:#2563EB;

color:#fff;

transform:translateY(-4px);

}

/* Stats */

.hero-stats{

display:flex;

gap:50px;

}

.stat-box h2{

font-size:50px;

color:#2563EB;

margin-bottom:8px;

}

.stat-box p{

font-size:17px;

color:#64748B;

margin:0;

}

/* Image */

.hero-image img{

width:100%;

border-radius:30px;

box-shadow:0 25px 60px rgba(0,0,0,.12);

display:block;

}

/* Responsive */

@media(max-width:992px){

.container{

grid-template-columns:1fr;

text-align:center;

}

.hero-content h1{

font-size:42px;

}

.hero-buttons{

justify-content:center;

}

.hero-stats{

justify-content:center;

flex-wrap:wrap;

gap:30px;

}

}

@media(max-width:768px){

.hero{

padding:80px 5%;

}

.hero-content h1{

font-size:34px;

}

.hero-content p{

font-size:16px;

}

.hero-buttons{

flex-direction:column;

}

.primary-btn,
.secondary-btn{

width:100%;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-56cd20f *//*====================================
WHY CHOOSE US
====================================*/

.why-choose-us{

padding:120px 8%;
background:#F8FBFF;

}

.section-title{

text-align:center;
max-width:750px;
margin:0 auto 70px;

}

.section-title span{

display:inline-block;
background:#EAF2FF;
color:#2563EB;
padding:10px 20px;
border-radius:40px;
font-weight:700;
margin-bottom:20px;

}

.section-title h2{

font-size:48px;
color:#0F172A;
margin-bottom:20px;
line-height:1.2;

}

.section-title h2 span{

background:none;
padding:0;
color:#2563EB;

}

.section-title p{

font-size:18px;
color:#64748B;
line-height:1.8;

}

.why-grid{

display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;

}

.why-card{

background:#fff;
padding:40px 30px;
border-radius:20px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
transition:.35s;
border:1px solid #E5E7EB;

}

.why-card:hover{

transform:translateY(-10px);
box-shadow:0 25px 60px rgba(37,99,235,.18);

}

.icon{

width:70px;
height:70px;
background:#2563EB;
border-radius:18px;
display:flex;
align-items:center;
justify-content:center;
font-size:30px;
margin-bottom:25px;

}

.why-card h3{

font-size:24px;
margin-bottom:15px;
color:#0F172A;

}

.why-card p{

font-size:16px;
line-height:1.8;
color:#64748B;

}

.why-btn{

text-align:center;
margin-top:70px;

}

.why-btn a{

display:inline-block;
padding:18px 38px;
background:#2563EB;
color:#fff;
text-decoration:none;
font-weight:700;
border-radius:50px;
transition:.3s;

}

.why-btn a:hover{

background:#1D4ED8;
transform:translateY(-4px);
box-shadow:0 15px 35px rgba(37,99,235,.25);

}

@media(max-width:992px){

.why-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.why-grid{

grid-template-columns:1fr;

}

.section-title h2{

font-size:34px;

}

.why-choose-us{

padding:80px 5%;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-934b251 *//*====================================
SERVICES CTA
====================================*/

.services-cta{

padding:120px 8%;
background:#ffffff;

}

.services-cta .container{

max-width:1300px;
margin:auto;

display:grid;
grid-template-columns:1fr 1fr;
align-items:center;
gap:70px;

}

.services-image{

position:relative;

}

.services-image img{

width:100%;
display:block;
border-radius:30px;
box-shadow:0 25px 70px rgba(0,0,0,.12);

}

.section-badge{

display:inline-block;
padding:10px 22px;
background:#EAF2FF;
color:#2563EB;
font-weight:700;
border-radius:40px;
margin-bottom:25px;

}

.services-content h2{

font-size:52px;
line-height:1.2;
margin-bottom:25px;
color:#0F172A;
font-weight:800;

}

.services-content h2 span{

display:block;
color:#2563EB;

}

.services-content p{

font-size:18px;
line-height:1.9;
color:#64748B;
margin-bottom:35px;

}

.service-list{

display:grid;
grid-template-columns:repeat(2,1fr);
gap:18px;
margin-bottom:45px;

}

.service-item{

background:#F8FBFF;
padding:18px 20px;
border-radius:14px;
font-weight:600;
color:#0F172A;
border:1px solid #E5E7EB;
transition:.3s;

}

.service-item:hover{

background:#2563EB;
color:#ffffff;
transform:translateY(-5px);

}

.services-btn{

display:inline-block;
padding:18px 40px;
background:#2563EB;
color:#ffffff;
text-decoration:none;
font-weight:700;
font-size:17px;
border-radius:50px;
transition:.3s;

}

.services-btn:hover{

background:#1D4ED8;
transform:translateY(-5px);
box-shadow:0 15px 35px rgba(37,99,235,.25);

}

@media(max-width:992px){

.services-cta .container{

grid-template-columns:1fr;
text-align:center;

}

.service-list{

grid-template-columns:1fr;

}

}

@media(max-width:768px){

.services-cta{

padding:80px 5%;

}

.services-content h2{

font-size:36px;

}

.services-content p{

font-size:16px;

}

.services-btn{

width:100%;
text-align:center;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d7457c0 *//* ==========================
HOW WE WORK
========================== */

.process{
    padding:120px 0;
    background:#ffffff;
}

.process-container{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

/* Image */

.process-image{
    position:relative;
}

.process-image img{
    width:100%;
    border-radius:30px;
    display:block;
    box-shadow:0 30px 70px rgba(37,99,235,.15);
}

/* Floating Badges */

.process-badge{
    position:absolute;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(15px);
    padding:18px 26px;
    border-radius:18px;
    box-shadow:0 20px 40px rgba(0,0,0,.08);
    animation:float 4s ease-in-out infinite;
}

.process-badge span{
    display:block;
    font-size:30px;
    font-weight:700;
    color:#2563EB;
}

.process-badge small{
    color:#64748B;
}

.badge-one{
    top:30px;
    left:-30px;
}

.badge-two{
    bottom:35px;
    right:-25px;
}

/* Content */

.process-content h2{
    font-size:48px;
    color:#0F172A;
    margin:20px 0;
    line-height:1.2;
}

.process-content p{
    color:#64748B;
    line-height:1.8;
    font-size:18px;
    margin-bottom:35px;
}

/* Timeline */

.timeline{
    display:flex;
    flex-direction:column;
    gap:25px;
    margin-bottom:40px;
}

.timeline-item{
    display:flex;
    gap:20px;
    padding:22px;
    background:#F8FBFF;
    border-radius:20px;
    transition:.35s;
    border-left:5px solid #2563EB;
}

.timeline-item:hover{
    transform:translateX(8px);
    box-shadow:0 20px 40px rgba(37,99,235,.10);
}

.step{
    width:60px;
    height:60px;
    border-radius:50%;
    background:#2563EB;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    font-weight:700;
    flex-shrink:0;
}

.timeline-item h4{
    margin-bottom:8px;
    color:#0F172A;
    font-size:20px;
}

.timeline-item p{
    margin:0;
    font-size:15px;
}

/* Button */

.process-btn{
    display:inline-block;
    padding:18px 36px;
    background:linear-gradient(135deg,#2563EB,#3B82F6);
    color:#fff;
    text-decoration:none;
    border-radius:50px;
    font-weight:700;
    transition:.3s;
}

.process-btn:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 40px rgba(37,99,235,.25);
}

/* Floating Animation */

@keyframes float{
    0%,100%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-10px);
    }
}

/* Responsive */

@media(max-width:991px){

.process-container{
    grid-template-columns:1fr;
}

.process-content{
    text-align:center;
}

.process-content h2{
    font-size:36px;
}

.badge-one{
    left:10px;
}

.badge-two{
    right:10px;
}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-df68bf0 *//*==========================
CLIENT TESTIMONIALS
===========================*/

.testimonials{

padding:120px 0;

background:#F8FBFF;

}

.testimonials-container{

display:grid;

grid-template-columns:1fr 1fr;

gap:80px;

align-items:center;

}

/* IMAGE */

.testimonial-image{

position:relative;

}

.testimonial-image img{

width:100%;

border-radius:30px;

box-shadow:0 30px 70px rgba(37,99,235,.15);

display:block;

}

/* Floating Cards */

.rating-card,
.review-card{

position:absolute;

background:rgba(255,255,255,.92);

backdrop-filter:blur(12px);

padding:20px 28px;

border-radius:18px;

box-shadow:0 20px 45px rgba(0,0,0,.08);

animation:float 4s ease-in-out infinite;

}

.rating-card{

top:30px;

left:-30px;

}

.review-card{

bottom:30px;

right:-25px;

}

.rating-card h2,
.review-card h3{

color:#2563EB;

font-size:34px;

margin-bottom:5px;

}

.rating-card p,
.review-card p{

margin:0;

font-size:15px;

color:#64748B;

}

/* CONTENT */

.testimonial-content h2{

font-size:48px;

margin:20px 0;

line-height:1.2;

color:#0F172A;

font-family:'Poppins',sans-serif;

}

.testimonial-content p{

font-size:18px;

line-height:1.8;

color:#64748B;

margin-bottom:35px;

}

/* TESTIMONIAL CARD */

.testimonial-box{

background:#fff;

padding:30px;

border-radius:24px;

margin-bottom:25px;

box-shadow:0 15px 35px rgba(0,0,0,.05);

transition:.35s;

}

.testimonial-box:hover{

transform:translateY(-8px);

box-shadow:0 25px 50px rgba(37,99,235,.12);

}

.stars{

font-size:20px;

margin-bottom:15px;

}

.testimonial-box h4{

margin-top:20px;

color:#0F172A;

}

.testimonial-box span{

color:#64748B;

font-size:15px;

}

/* Floating Animation */

@keyframes float{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-10px);

}

}

/* Responsive */

@media(max-width:991px){

.testimonials-container{

grid-template-columns:1fr;

}

.testimonial-content{

text-align:center;

}

.testimonial-content h2{

font-size:36px;

}

.rating-card{

left:10px;

}

.review-card{

right:10px;

}

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-69ce6dd *//*=========================
FAQ SECTION
==========================*/

.faq-section{
    padding:120px 0;
    background:#F8FBFF;
}

.faq-container{
    max-width:900px;
    margin:60px auto 0;
}

.faq-item{
    background:#fff;
    border-radius:20px;
    margin-bottom:20px;
    overflow:hidden;
    box-shadow:0 15px 35px rgba(0,0,0,.05);
    transition:.3s;
}

.faq-item:hover{
    box-shadow:0 20px 45px rgba(37,99,235,.12);
}

.faq-question{
    width:100%;
    padding:25px 30px;
    border:none;
    background:none;
    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;
    transition:.3s;
}

.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:250px;
}

.faq-item.active .faq-question span{
    transform:rotate(45deg);
}

@media(max-width:768px){

.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-5fe0ce6 *//*=========================================
LEAD CONTACT SECTION
=========================================*/

.lead-contact{

padding:120px 8%;
background:#F8FBFF;

}

.lead-contact .container{

max-width:1300px;
margin:auto;

display:grid;
grid-template-columns:1fr 1fr;
gap:70px;
align-items:center;

}

/* Left */

.lead-badge{

display:inline-block;
padding:10px 22px;
background:#EAF2FF;
color:#2563EB;
font-weight:700;
border-radius:40px;
margin-bottom:20px;

}

.lead-left h2{

font-size:52px;
line-height:1.2;
margin-bottom:25px;
color:#0F172A;
font-weight:800;

}

.lead-left h2 span{

display:block;
color:#2563EB;

}

.lead-left p{

font-size:18px;
line-height:1.9;
color:#64748B;
margin-bottom:35px;

}

.lead-left img{

width:100%;
border-radius:30px;
display:block;
box-shadow:0 25px 60px rgba(0,0,0,.12);

}

/* Form */

.lead-form{

background:#ffffff;
padding:45px;
border-radius:30px;
box-shadow:0 25px 60px rgba(0,0,0,.10);

}

.lead-form h3{

font-size:32px;
margin-bottom:30px;
color:#0F172A;
text-align:center;

}

.lead-form form{

display:flex;
flex-direction:column;
gap:18px;

}

.lead-form input,
.lead-form textarea,
.lead-form select{

width:100%;
padding:16px 18px;
font-size:16px;
border:1px solid #D1D5DB;
border-radius:14px;
outline:none;
transition:.3s;

}

.lead-form input:focus,
.lead-form textarea:focus,
.lead-form select:focus{

border-color:#2563EB;
box-shadow:0 0 0 4px rgba(37,99,235,.12);

}

.consult-btn{

display:block;
margin-top:10px;
padding:18px;
text-align:center;
background:#2563EB;
color:#ffffff;
text-decoration:none;
font-weight:700;
font-size:17px;
border-radius:50px;
transition:.3s;

}

.consult-btn:hover{

background:#1D4ED8;
transform:translateY(-4px);
box-shadow:0 18px 35px rgba(37,99,235,.25);

}

/* Responsive */

@media(max-width:992px){

.lead-contact .container{

grid-template-columns:1fr;

}

.lead-left{

text-align:center;

}

}

@media(max-width:768px){

.lead-contact{

padding:80px 5%;

}

.lead-left h2{

font-size:36px;

}

.lead-form{

padding:30px;

}

}/* End custom CSS */