@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--primary:#1769e0;--dark:#102033;--muted:#667085;--soft:#f5f8fc}
*{box-sizing:border-box}
body{font-family:Inter,Arial,sans-serif;color:var(--dark);margin:0}
.site-header{background:rgba(255,255,255,.94);backdrop-filter:blur(12px);box-shadow:0 2px 18px rgba(16,32,51,.06)}
.navbar{min-height:78px}
.navbar-brand{letter-spacing:-.5px;color:var(--dark)}
.brand-mark {width: 45px;    margin-top: -12px;}
.navbar-brand span{color:var(--primary)}
.nav-link{font-weight:600;color:#455468}
.nav-link:hover,.nav-link.active{color:var(--primary)}
.btn-primary{background:var(--primary);border-color:var(--primary)}
.section-pad{padding:100px 0}
.hero{padding-top:165px;padding-bottom:110px;background:linear-gradient(135deg,#f6faff 0%,#fff 55%,#edf5ff 100%);overflow:hidden}
.eyebrow,.section-heading>span,.cta>div>span{font-size:12px;font-weight:800;letter-spacing:1.8px;color:var(--primary)}
.cta h4 {    
    font-family: 'Fraunces', serif;
    font-style: italic;
    }
h1{font-size:clamp(42px,6vw,65px);
   
    line-height:1.05;letter-spacing:-3px;font-weight:600;margin:1.375rem 0}
h1,h2,h5,h6 {  font-family: "Jost",  sans-serif;}
.hero h1 span,.section-heading em{color:var(--primary);font-style:normal}
.hero .lead{max-width:650px;color:var(--muted);font-size:18px;line-height:1.8; margin-bottom: 1.375rem;}
.hero-points{display:flex;flex-wrap:wrap;gap:20px;color:#475467;font-size:14px;font-weight:600}
.hero-points i{color:#22a06b;margin-right:5px}.hero-card{padding:50px;border-radius:28px;background:#102033;color:white;box-shadow:0 30px 70px rgba(16,32,51,.18)}.hero-icon{font-size:45px;color:#70a9ff}
.hero-card h3{font-size:30px;margin:25px 0 12px}
.hero-card p{color:#b9c5d4;line-height:1.7}
.hero-card a{color:#fff;text-decoration:none;font-weight:700}
.trust-strip{padding:28px 0;background:var(--primary);color:#fff}
.trust-strip strong,.trust-strip span{display:block}
.trust-strip strong{font-size:28px}
.trust-strip span{font-size:12px;opacity:.8;text-transform:uppercase;letter-spacing:1px}
.section-heading{margin-bottom:50px}
.section-heading h2{font-size:clamp(34px,4vw,48px);font-weight:800;letter-spacing:-1.5px;margin:10px 0}
.section-heading p{color:var(--muted)}.about-box{background:var(--soft);border-radius:25px;padding:45px}
.about-number{font-size:14px;font-weight:800;color:var(--primary)}.about-box h3{font-size:30px;margin:20px 0 12px}
.about-box p,.large-copy{color:var(--muted);line-height:1.8}.large-copy{font-size:21px}
.check-list{padding:0;list-style:none}.check-list li{margin:16px 0;font-weight:600}
.check-list i{color:var(--primary);margin-right:10px}.soft-bg{background:var(--soft)}
.service-card{height:100%;background:#fff;padding:35px;border-radius:20px;border:1px solid #e9eef5;transition:.3s}
.service-card:hover{transform:translateY(-7px);box-shadow:0 20px 45px rgba(16,32,51,.1)}
.service-card>i{font-size:34px;color:var(--primary)}.service-card h3{margin:22px 0 10px;font-size:21px}
.service-card p,.project-card p,.contact-card p{color:var(--muted);line-height:1.7}.service-card a{color:var(--primary);text-decoration:none;font-weight:700}
.project-card{padding-bottom:40px}.project-image{height:250px;border-radius:20px;background:linear-gradient(135deg,#dbeafe,#eff6ff);display:grid;place-items:center;color:#7c8ba1;font-weight:700;letter-spacing:1px}
.project-card h3{margin:20px 0 5px}.swiper-pagination{position:relative;margin-top:20px}
.cta{padding:90px 0;background:var(--primary);color:#fff}.cta>div>span{color:#dbeafe}
.cta h2{font-size:clamp(32px,4vw,52px);font-weight:800;margin:15px 0 28px}.contact-card{text-align:center;border:1px solid #e9eef5;border-radius:20px;padding:35px}
.contact-card i{font-size:32px;color:var(--primary)}.contact-card h4{margin:15px 0 5px}
.footer{padding:25px 0;background:#102033;color:#b9c5d4;font-size:13px}
.whatsapp{position:fixed;right:22px;bottom:22px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:27px;text-decoration:none;z-index:99;box-shadow:0 10px 25px rgba(0,0,0,.18)}@media(max-width:991px){.navbar-collapse{padding:15px 0}
.hero{padding-top:130px}h1{letter-spacing:-2px}
.section-pad{padding:75px 0}}

.quote-section {
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    text-align: center;
}
.quote-section blockquote {
    font-family: 'Fraunces', serif;
    font-size: clamp(1.45rem, 2.6vw, 2.1rem);
    max-width: 22ch;
    margin: 0 auto;
    margin-top: 24px;
    line-height: 1.35;
    color: var(--ink);
}
.quote-section cite {
    display: block;
    margin: 24px auto;
    font-style: normal;
    font-size: .85rem;
    color: var(--slate);
}

.team .team-member {
    background-color: var(--surface-color);
    box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
    position: relative;
    border-radius: 5px;
    transition: 0.5s;
    padding: 30px;
    height: 100%;
}
.team .team-member:hover {
    transform: translateY(-10px);
}
.team .team-member .pic {
    overflow: hidden;
    width: 150px;
    border-radius: 50%;
    flex-shrink: 0;
}
.team .team-member .member-info {
    padding-left: 30px;
}
.team .team-member h4 {
    font-weight: 700;
        margin-bottom: 5px;
        font-size: 20px;
}
.team .team-member span {
    display: block;
    font-size: 15px;
    padding-bottom: 10px;
    position: relative;
    font-weight: 500;
}

.team .team-member span::after {
    content: "";
    position: absolute;
    display: block;
    width: 50px;
    height: 1px;
    background: 
 color-mix(in srgb, #444444, transparent 85%);
    bottom: 0;
    left: 0;
}

.team .team-member p {
    margin: 10px 0 0 0;
    font-size: 14px;
}
.team .team-member .social {
    margin-top: 12px;
    display: flex;
    align-items: center;
    justify-content: start;
    width: 100%;
}
.team .team-member .social a {
    background: 
 color-mix(in srgb, var(--default-color), transparent 94%);
    transition: ease-in-out 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    width: 36px;
    height: 36px;
}
.team .team-member .social a i {
    color: color-mix(in srgb, var(--default-color), transparent 20%);
    font-size: 16px;
    margin: 0 2px;
}

/* Testimonials */
.testimonials-section{background:linear-gradient(180deg,#f7faff 0%,#fff 100%);overflow:hidden}
.testimonialSwiper{padding:8px 5px 45px}
.testimonial-card{height:100%;background:#fff;border:1px solid #e7edf5;border-radius:24px;padding:32px;box-shadow:0 12px 35px rgba(16,32,51,.06);transition:transform .35s ease,box-shadow .35s ease}
.testimonial-card:hover{transform:translateY(-8px);box-shadow:0 22px 50px rgba(16,32,51,.11)}
.testimonial-stars{display:flex;gap:4px;margin-bottom:20px;color:#f5b942}
.testimonial-stars i{font-size:15px}
.testimonial-text{color:#526173;font-size:16px;line-height:1.8;min-height:115px;margin-bottom:28px}
.testimonial-author{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid #edf1f5}
.testimonial-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#eaf2ff;color:var(--primary);font-weight:800;font-size:14px}
.testimonial-author h4{font-size:15px;font-weight:800;margin:0 0 3px}
.testimonial-author span{font-size:12px;color:var(--muted)}
.testimonial-pagination{position:relative;margin-top:18px;text-align:center}
.testimonial-pagination .swiper-pagination-bullet{opacity:.35}
.testimonial-pagination .swiper-pagination-bullet-active{opacity:1;background:var(--primary)}
@media(max-width:767px){.testimonial-card{padding:26px}.testimonial-text{min-height:auto}}
