/* LIVE TEST 987654321 */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
--navy:#0a1628;--navy2:#0d1d3a;--navy3:#112347;
--blue:#29ABE2;--blue-d:#1A8FC0;--blue-dd:#136A94;
--blue-glow:rgba(41,171,226,.13);--blue-glow2:rgba(41,171,226,.07);
--white:#fff;--text:#dde4f4;--text-m:#7e8faf;--text-d:#7d8cad;
--border:rgba(255,255,255,.07);--border-b:rgba(41,171,226,.22);
--card:rgba(255,255,255,.035);--card-h:rgba(255,255,255,.065);
--r:14px;--rl:22px
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--navy);color:var(--text);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}

/* ── SCROLLBAR ── */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--navy)}
::-webkit-scrollbar-thumb{background:var(--navy3);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--blue-dd)}

/* ── NAV ── */
/* nav{
position:fixed;top:0;left:0;right:0;z-index:200;
display:flex;align-items:center;justify-content:space-between;
padding:0 4rem;height:60px;
background:rgba(24,31,46,.95);backdrop-filter:blur(20px);
border-bottom:1px solid var(--border);
transition:box-shadow .3s
}
nav.scrolled{box-shadow:0 4px 40px rgba(0,0,0,.35)}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-mark{
width:38px;height:38px;border-radius:9px;
background:var(--blue);display:flex;align-items:center;justify-content:center;
font-family:'inter',sans-serif;font-weight:800;font-size:15px;color:var(--navy);
flex-shrink:0
} */
nav{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:1000;
    height:70px;
    padding:0 4rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:transparent;
    border-bottom:none;
    transition:all .4s ease;
}
nav.scrolled{
    background:rgba(23, 46, 80, 0.95);
    backdrop-filter:blur(10px);
    box-shadow:0 5px 25px rgba(0,0,0,.15);
}
.logo-text{font-family:'inter',sans-serif;font-weight:800;font-size:17px;color:var(--white);letter-spacing:.5px}
.logo-text span{color:var(--blue)}
.nav-links{display:flex;gap:2rem;list-style:none;align-items:center}
.nav-links a{font-size:16px;font-weight:600;color:var(--white);text-decoration:none;letter-spacing:.3px;transition:color .2s;position:relative;padding-bottom:3px}
.nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--blue);transition:width .25s;border-radius:1px}
.nav-links a:hover{color:var(--blue)}
.nav-links a:hover::after{width:100%}
.nav-cta{
display:inline-flex;align-items:center;gap:6px;
padding:9px 20px;border-radius:50px;
background:var(--blue);color:var(--white);font-weight:700;font-size:13px;
text-decoration:none;letter-spacing:.3px;transition:all .2s;border:none;cursor:pointer
}
.nav-cta:hover{background:var(--blue-d);transform:translateY(-1px)}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px;border:none;background:none}
.hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:1px;transition:all .3s}
.hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{
display:none;position:fixed;top:70px;left:0;right:0;z-index:199;
background:rgba(24,31,46,.98);backdrop-filter:blur(20px);
border-bottom:1px solid var(--border);
padding:1.5rem 2rem;flex-direction:column;gap:1rem
}
.mobile-menu.open{display:flex}
.mobile-menu a{font-size:16px;font-weight:500;color:var(--text-m);text-decoration:none;padding:.5rem 0;border-bottom:1px solid var(--border)}
.mobile-menu a:hover{color:var(--blue)}

/* ── UTILITY ── */
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--blue);margin-bottom:.9rem}
.eyebrow::before{content:'';display:block;width:22px;height:2px;background:var(--blue);border-radius:1px}
h2.st{font-family:'Inter',sans-serif;font-weight:800;font-size:clamp(2rem,3.5vw,2.9rem);color:var(--white);line-height:1.12;letter-spacing:-.5px;margin-bottom:.9rem}
h2.st span{color:var(--blue)}
.lead{font-size:1.05rem;color:var(--text-m);max-width:540px;line-height:1.85}
.btn{display:inline-flex;align-items:center;gap:7px;padding:14px 28px;border-radius:50px;font-weight:700;font-size:14px;text-decoration:none;letter-spacing:.3px;transition:all .2s;cursor:pointer;border:none}
.btn-p{background:var(--blue);color:var(--navy)}
.btn-p:hover{background:var(--blue-d);transform:translateY(-2px);box-shadow:0 8px 24px rgba(14,201,168,.25)}
.btn-g{background:transparent;color:var(--text);border:1px solid var(--border-b)}
.btn-g:hover{background:var(--blue-glow);color:var(--blue);border-color:var(--blue)}
section{padding:100px 4rem}
.divider{width:50px;height:3px;background:#39B54A;border-radius:2px;margin-bottom:1.5rem}
.hero .btn,
.hero-cta .btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    padding: 14px 28px;
    border-radius: 50px;
    font-weight: 700;
    text-decoration: none;

    opacity: 1 !important;
    visibility: visible !important;
}
.hero .btn-p {
    background: #29ABE2 !important;
    color: #fff !important;
    border: none !important;
}

.hero .btn-p:hover {
    background: #1A8FC0 !important;
    color: #fff !important;
}
.hero .btn-g {
    background: rgba(255,255,255,.12) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.35) !important;
}

.hero .btn-g:hover {
    background: #fff !important;
    color: #0a1628 !important;
}
/* ── SCROLL REVEAL ── */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}

/* ── HERO ── */
.hero{
min-height:100vh;display:flex;flex-direction:column;justify-content:center;
padding:130px 4rem 90px;position:relative;overflow:hidden
}
.hero-bg-circle{
position:absolute;border-radius:50%;pointer-events:none;
background:radial-gradient(circle,var(--blue-glow) 0%,transparent 70%)
}
.hero-bg-circle.c1{width:800px;height:800px;top:-250px;right:-200px}
.hero-bg-circle.c2{width:500px;height:500px;bottom:-150px;left:-100px;opacity:.6}
.hero-grid-line{position:absolute;pointer-events:none;opacity:.04}
.hero-grid-line.h{height:1px;left:0;right:0;background:var(--white)}
.hero-grid-line.v{width:1px;top:0;bottom:0;background:var(--white)}
.badge{
display:inline-flex;align-items:center;gap:8px;
padding:7px 16px;border-radius:50px;font-size:12px;font-weight:600;
background:var(--blue-glow);border:1px solid var(--border-b);color:var(--blue);
margin-bottom:0.25rem;letter-spacing:.5px
}
.badge-dot{width:7px;height:7px;border-radius:50%;background:#39B54A;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}
.hero h1{
font-family:'Inter',sans-serif;font-weight:800;
font-size:clamp(3rem,6.5vw,5.8rem);line-height:1.03;letter-spacing:-1.5px;
color:var(--white);margin-bottom:1.6rem;max-width:780px
}
.hero h1 .teal{color:var(--blue)}
.hero h1 .outline{-webkit-text-stroke:2px #39B54A;color:transparent}
.hero-sub{font-size:1.12rem;color:var(--text-m);max-width:500px;margin-bottom:2.5rem;font-weight:400;line-height:1.85}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin-bottom:4rem}
/* .hero-stats{
display:flex;gap:0;flex-wrap:wrap;
border:1px solid var(--border);border-radius:var(--rl);overflow:hidden;
max-width:600px;background:var(--card)
} */
.stat{
flex:1;min-width:120px;padding:1.5rem 1.5rem;text-align:center;
border-right:1px solid var(--border);
}
.stat:last-child{border-right:none}
/* .stat-n{font-family:'inter',sans-serif;font-size:1.8rem;font-weight:800;color:var(--white)} */
/* .stat-l{font-size:15px;color:var(--text-d);margin-top:3px;letter-spacing:.3px} */
.hero-scroll{
position:absolute;bottom:2.5rem;left:50%;transform:translateX(-50%);
display:flex;flex-direction:column;align-items:center;gap:8px;
font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--text-d)
}
.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,#39B54A,transparent);animation:scrollAnim 2s infinite}
@keyframes scrollAnim{0%{opacity:0;transform:scaleY(0);transform-origin:top}50%{opacity:1;transform:scaleY(1)}100%{opacity:0;transform:scaleY(1);transform-origin:bottom}}

/* ── ABOUT ── */
#about{background:var(--navy2)}
.about-wrap{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-top:4rem}
.about-card{
background:var(--card);border:1px solid var(--border);
border-radius:var(--rl);padding:2.75rem;position:relative;overflow:hidden
}
.about-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),transparent)}
.about-card h3{font-family:'Inter',sans-serif;font-size:1rem;font-weight:700;color:var(--blue);margin-bottom:.7rem;letter-spacing:.5px;text-transform:uppercase}
.about-card p{color:var(--text-m);font-size:.95rem;line-height:1.85;margin-bottom:1.5rem}
.about-card p:last-child{margin-bottom:0}
.pill-list{display:flex;flex-direction:column;gap:.8rem}
.pill{
display:flex;align-items:center;gap:12px;
padding:13px 18px;border-radius:var(--r);
background:var(--card);border:1px solid var(--border);
font-size:14px;font-weight:500;color:var(--text);
transition:all .2s
}
.pill:hover{background:var(--card-h);border-color:var(--border-b);color:var(--blue)}
.pill-ico{font-size:18px;flex-shrink:0}

/* ── SERVICES ── */
#services{}
.services-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:2rem;margin-bottom:3.5rem}
.services-filter{display:flex;gap:.6rem;flex-wrap:wrap}
.filter-btn{
padding:7px 16px;border-radius:50px;font-size:13px;font-weight:600;
border:1px solid var(--border);background:transparent;color:var(--text-m);cursor:pointer;transition:all .2s
}
.filter-btn.active,.filter-btn:hover{background:var(--blue-glow);border-color:var(--border-b);color:var(--blue)}
.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.1rem}
/* .svc{
background:var(--card);border:1px solid var(--border);
border-radius:var(--r);padding:1.75rem;
transition:all .25s;position:relative;overflow:hidden;cursor:default
}
 .svc::after{
content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s
}

.svc-icon{
width:50px;height:50px;border-radius:13px;
background:var(--blue-glow);border:1px solid var(--border-b);
display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:1.25rem
} */
.svc:hover{background:var(--card-h);border-color:var(--border-b);transform:translateY(-4px);box-shadow:0 12px 32px rgba(245, 243, 243, 0.25)}
.svc:hover::after{transform:scaleX(1)}
 .svc{
    background:#dad7d7;
    border:1px solid rgba(41,171,226,.15);
    border-radius:22px;
    padding:28px;
    transition:.35s;
    box-shadow:
    0 10px 25px rgba(0,0,0,.06);
}
.svc::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    /* background:
    linear-gradient(
        90deg,
        #29ABE2,
        #134054
    ); */
}
.svc-icon{
    width:60px;
    height:60px;
    border-radius:18px;
    background:
    rgba(41,171,226,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.6rem;
    margin-bottom:20px;
}
.svc h3{
    color:#134054;
    font-size:1.1rem;
    font-weight:800;
    margin-bottom:15px;
}
.svc h3{font-size:15px;font-weight:700;color:var(--white);margin-bottom:.5rem}
.svc p{font-size:13px;color:var(--text-m);line-height:1.7; font-weight:600}
.svc ul{font-size:13px;color:var(--text-m);line-height:1.7; list-style-type: disc}
.svc-tag{
display:inline-block;margin-top:.85rem;
padding:3px 10px;border-radius:50px;font-size:11px;font-weight:600;letter-spacing:.5px;
background:var(--blue-glow2);border:1px solid var(--border-b);color:var(--blue)
}


/* ── WHY US ── */
#why{background:var(--navy2)}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:3.5rem}
.why-card{
background:var(--card);border:1px solid var(--border);
border-radius:var(--rl);padding:2.25rem;text-align:center;transition:all .25s
}
.why-card:hover{border-color:var(--border-b);background:var(--card-h)}
.why-num{font-family:'inter',sans-serif;font-size:3rem;font-weight:800;color:#39B54A;line-height:1;margin-bottom:.75rem;opacity:.9}
.why-card h3{font-size:1rem;font-weight:700;color:var(--white);margin-bottom:.6rem}
.why-card p{font-size:13.5px;color:var(--text-m);line-height:1.75}

/* ── MISSION ── */
.mission-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:3.5rem}
.m-block{
background:var(--card);border:1px solid var(--border);
border-radius:var(--rl);padding:2.75rem;position:relative;overflow:hidden;transition:all .25s
}
.m-block:hover{border-color:var(--border-b)}
.m-block.accent{background:var(--blue-glow);border-color:var(--border-b)}
.m-block h3{font-family:'Inter',sans-serif;font-weight:800;font-size:1.5rem;color:var(--white);margin-bottom:1rem}
.m-block.accent h3{color:var(--blue)}
.m-block p{color:var(--text-m);font-size:.96rem;line-height:1.9}
.m-block .big-icon{font-size:3rem;margin-bottom:1.25rem;display:block}

/* ── CTA BAND ── */
.cta-band{
background:linear-gradient(135deg,var(--navy3),var(--navy2));
border-top:1px solid var(--border);border-bottom:1px solid var(--border);
padding:80px 4rem;text-align:center
}
/* .cta-band h2{font-family:'inter',sans-serif;font-weight:800;font-size:clamp(1.8rem,3vw,2.8rem);color:var(--white);margin-bottom:1rem} */
.cta-band h2{font-family:'Inter',sans-serif;font-weight:800;font-size:clamp(1.8rem,3vw,2.8rem);color:var(--white);margin-bottom:1rem}
.cta-band h2 span{color:var(--blue)}
.cta-band p{color:var(--text-m);font-size:1.05rem;margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}

/* ── CONTACT ── */
#contact{background:var(--navy2)}
.contact-wrap{display:grid;grid-template-columns:1fr 2fr;gap:5rem;align-items:start;margin-top:3.5rem}
.contact-info-items{display:flex;flex-direction:column;gap:.9rem;margin-bottom:2rem}
.c-item{
display:flex;align-items:flex-start;gap:1rem;
padding:1.1rem 1.4rem;background:var(--card);border:1px solid var(--border);
border-radius:var(--r);transition:border-color .2s
}
.c-item:hover{border-color:var(--border-b)}
.c-ico{
width:40px;height:40px;border-radius:10px;flex-shrink:0;
background:var(--blue-glow);border:1px solid var(--border-b);
display:flex;align-items:center;justify-content:center;font-size:18px
}
.c-lbl{font-size:11px;font-weight:700;color:var(--text-d);letter-spacing:1px;text-transform:uppercase;margin-bottom:2px}
.c-val{font-size:14.5px;color:var(--text);font-weight:500}
.contact-tagline{font-family:'inter',sans-serif;font-size:1.9rem;font-weight:800;color:var(--white);line-height:1.3;margin-bottom:1rem}
.contact-tagline span{color:var(--blue)}
.contact-body{font-size:.95rem;color:var(--text-m);line-height:1.85;margin-bottom:2rem}

/* ── QUOTE FORM ── */
.form-card{
background:var(--card);border:1px solid var(--border);
border-radius:var(--rl);padding:2.25rem;position:relative;overflow:hidden
}
.form-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),transparent)}
.form-card h3{font-family:'Inter',sans-serif;font-weight:800;font-size:1.1rem;color:var(--white);margin-bottom:1.5rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:1rem}
.form-group:last-of-type{margin-bottom:1.5rem}
label{font-size:12px;font-weight:600;color:var(--text-m);letter-spacing:.5px;text-transform:uppercase}
input,select,textarea{
background:rgba(255,255,255,.05);border:1px solid var(--border);
border-radius:var(--r);padding:11px 14px;font-size:14px;color:var(--text);
font-family:'Inter',sans-serif;transition:border-color .2s;width:100%;outline:none
}
input::placeholder,textarea::placeholder{color:var(--text-d)}
input:focus,select:focus,textarea:focus{border-color:var(--blue);background:rgba(14,201,168,.05)}
select option{background:var(--navy2);color:var(--text)}
textarea{resize:vertical;min-height:100px}
.form-submit{
width:50%;padding:14px;border-radius:50px;
background:var(--blue);color:var(--navy);font-weight:700;font-size:15px;
border:none;cursor:pointer;transition:all .2s;font-family:'Inter',sans-serif
}
.form-submit:hover{background:var(--blue-d);transform:translateY(-1px);box-shadow:0 8px 24px rgba(14,201,168,.25)}
.form-success{
display:none;text-align:center;padding:2rem;
}
.form-success .success-ico{font-size:3rem;margin-bottom:1rem;display:block}
.form-success h4{font-family:'Inter',sans-serif;font-size:1.2rem;color:var(--blue);margin-bottom:.5rem}
.form-success p{color:var(--text-m);font-size:.9rem}

/* ── FOOTER ── */
footer{
background:var(--navy);border-top:1px solid var(--border);
padding:3rem 4rem 1.5rem
}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;margin-bottom:3rem}
.footer-brand-area{}
.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:1rem}
.footer-desc{font-size:13.5px;color:var(--text-d);line-height:1.8;max-width:280px}
.footer-col h4{font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text-m);margin-bottom:1.1rem}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.6rem}
.footer-col ul li a{font-size:13.5px;color:var(--text-d);text-decoration:none;transition:color .2s}
.footer-col ul li a:hover{color:var(--blue)}
/* .footer-bottom{
display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;
padding-top:1.5rem;border-top:1px solid var(--border)
} */
.footer-copy{font-size:12.5px;color:var(--text-d)}
.footer-web{font-size:12.5px;color:var(--blue);text-decoration:none;font-weight:500}
.footer-web:hover{text-decoration:underline}

/* ── RESPONSIVE ── */
@media(max-width:900px){
nav{padding:0 1.5rem}
.nav-links,.nav-cta.desktop{display:none}
.hamburger{display:flex}
section{padding:70px 1.5rem}
.hero{padding:110px 1.5rem 70px}
.about-wrap,.mission-grid,.contact-wrap,.footer-top{grid-template-columns:1fr;gap:2rem}
.why-grid{grid-template-columns:1fr 1fr}
.form-row{grid-template-columns:1fr}
.footer-top{grid-template-columns:1fr}
.hero-bg-circle.c1{width:400px;height:400px}
}
@media(max-width:580px){
.why-grid{grid-template-columns:1fr}
.hero h1{font-size:2.8rem}
.hero-stats{flex-direction:column}
.stat{border-right:none;border-bottom:1px solid var(--border)}
.stat:last-child{border-bottom:none}
}
.hero-slide{
    position:relative;
    height:100vh;
    display:flex;
    align-items:center;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}
.slide1{
    background-image:url('/img/slider1.png');
}
.slide2{
    background-image:url('/img/slider2.png');
}
.slide3{
    background-image:url('/img/slider3.png');
}
.hero-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
}
.hero-content{
    position:relative;
    z-index:10;
    max-width:650px;
    margin-left:8%;
    color:white;
}
.hero h1{
    font-size:4rem;
    font-weight:700;
}
.hero-sub{
    font-size:1.15rem;
    margin:25px 0;
}
/* Hide arrows */
.carousel-control-prev,
.carousel-control-next{
    opacity:0;
    transition:.4s;
}
/* Show arrows only on hover */
#heroSlider:hover .carousel-control-prev,
#heroSlider:hover .carousel-control-next{
    opacity:1;
}
#home{
    padding:0;
}
@media(max-width:768px){

    .hero-stats-section{
        padding:20px;
        margin-top:-40px;
    }

    .hero-stats{
        flex-direction:column;
    }

    .stat{
        border-right:none;
        border-bottom:1px solid rgba(255,255,255,.08);
    }

    .stat:last-child{
        border-bottom:none;
    }
}
.hero-stats-section{
    background:#08172f;
    padding:0 4rem 80px;
    margin-top:-60px;
    position:relative;
    z-index:20;
}

.hero-stats{
    max-width:1000px;
    margin:auto;
    display:flex;
    overflow:hidden;
    border-radius:30px;
    background:rgba(10,22,40,.95);
    backdrop-filter:blur(12px);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 20px 50px rgba(0,0,0,.35);
    margin-bottom: 5px;
}

.stat{
    flex:1;
    text-align:center;
    padding:35px 20px;
    border-right:1px solid rgba(255,255,255,.08);
}

.stat:last-child{
    border-right:none;
}

/* .stat-n,
.stat-text{
    font-family:'inter',sans-serif;
    font-size:3rem;
    font-weight:800;
    color:white;
}

.stat-l{
    margin-top:12px;
    color:#7e8faf;
    font-size:14px;
} */
hr.sep-4 {
    border: none !important;
    width: 40% !important;
    height: 3px !important;
    background-image: linear-gradient(to right, #f0f0f0, #00b9ff, #59d941, #f0f0f0);
    margin: 2rem auto;
    margin-bottom: 10px;
    margin-top: 10px;
    align-items:center;
}
/* =======ABOUT========= */

#about{
    background:linear-gradient(180deg,#0d1d3a,#091426);
    position:relative;
    overflow:hidden;
}

#about::before{
    content:"";
    position:absolute;
    width:700px;
    height:700px;
    right:-250px;
    top:-250px;
    border-radius:50%;
    background:radial-gradient(circle,
    rgba(41,171,226,.10),
    transparent 70%);
}

.about-header{
    text-align:center;
    max-width:800px;
    margin:auto;
}

.about-lead{
    margin:30px auto 0;
}

.about-main{
    margin-top:40px;
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:35px;
    align-items:stretch;
}

.glass-card{
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.08);
    border-radius:24px;
    padding:45px;
    backdrop-filter:blur(14px);
    height:100%;
}

.section-icon{
    width:70px;
    height:70px;
    border-radius:18px;
    background:rgba(41,171,226,.12);
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:25px;
}

.section-icon i{
    font-size:32px;
    color:var(--blue);
}

.glass-card h3{
    font-size:1.8rem;
    margin-bottom:20px;
    color:white;
}

.glass-card p{
    color:var(--text-m);
    margin-bottom:20px;
    line-height:1.9;
}

.about-side{
    display:grid;
    gap:20px;
}

.mini-stat{
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.08);
    border-radius:20px;
    text-align:center;
    padding:35px;
    transition:.35s;
}

.mini-stat:hover{
    transform:translateY(-8px);
    border-color:var(--blue);
}

.mini-stat h2{
    font-size:2.6rem;
    color:var(--blue);
    margin-bottom:8px;
}

.mini-stat span{
    color:var(--text-m);
    font-size:.95rem;
}
/* FEATURES */
.feature-grid{
    margin-top:70px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.feature-card{
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.08);
    border-radius:20px;
    padding:35px;
    transition:.35s;
    text-align:left;
}

.feature-card:hover{
    transform:translateY(-10px);
    border-color:var(--blue);
    box-shadow:0 20px 50px rgba(0,0,0,.30);
}

.feature-card i{
    font-size:42px;
    color:var(--blue);
    margin-bottom:20px;
}

.feature-card h4{
    color:white;
    margin-bottom:12px;
}

.feature-card p{
    color:var(--text-m);
    line-height:1.8;
}

/* Responsive */

@media(max-width:992px){
    .about-main{
        grid-template-columns:1fr;
    }
    .feature-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){
    .feature-grid{
        grid-template-columns:1fr;
    }
}
/* ===========================================
        Decorative Technology Network
===========================================*/
.story-network{
    position:relative;
    margin-top:45px;
    height:170px;
    overflow:hidden;
}
/* Background network */
.network-bg{
    position:absolute;
    inset:0;
    opacity:.18;
}
/* Nodes */
.network-bg .node{
    position:absolute;
    width:12px;
    height:12px;
    border-radius:50%;
    background:var(--blue);
    box-shadow:
        0 0 10px rgba(41,171,226,.8),
        0 0 20px rgba(41,171,226,.4);
    animation:pulseNode 4s infinite;
}
.n1{top:18px;left:8%;}
.n2{top:70px;left:28%;}
.n3{top:35px;left:52%;}
.n4{top:95px;left:73%;}
.n5{top:20px;right:6%;}
/* Connection Lines */
.network-bg .line{
    position:absolute;
    height:2px;
    background:linear-gradient(
        90deg,
        transparent,
        var(--blue),
        transparent
    );
    transform-origin:left center;
}
.l1{
    width:120px;
    top:24px;
    left:10%;
    transform:rotate(22deg);
}
.l2{
    width:140px;
    top:64px;
    left:28%;
    transform:rotate(-12deg);
}
.l3{
    width:120px;
    top:42px;
    left:54%;
    transform:rotate(28deg);
}
.l4{
    width:80px;
    top:82px;
    left:73%;
    transform:rotate(-38deg);
}
/* Foreground icon row */
.story-divider{
    position:absolute;
    bottom:10px;
    left:0;
    right:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    z-index:2;
}
.story-divider span{
    width:60px;
    height:60px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(41,171,226,.20);
    backdrop-filter:blur(10px);
    transition:.35s;
}
.story-divider span:hover{
    transform:translateY(-8px) scale(1.08);
    background:var(--blue);
    color:#fff;
    box-shadow:0 15px 35px rgba(41,171,226,.35);
}
.story-divider i{
    font-size:24px;
}
.divider-line{
    flex:1;
    height:2px;
    margin:0 10px;
    background:linear-gradient(
        90deg,
        rgba(41,171,226,.15),
        rgba(41,171,226,.9),
        rgba(41,171,226,.15)
    );
}
/* Pulsing nodes */
@keyframes pulseNode{
    0%,100%{
        transform:scale(1);
        opacity:.4;
    }
    50%{
        transform:scale(1.6);
        opacity:1;
    }
}
.network-bg .line::after{
    content:"";
    position:absolute;
    top:-2px;
    left:0;
    width:10px;
    height:6px;
    border-radius:10px;
    background:white;
    box-shadow:0 0 12px var(--blue);
    animation:dataFlow 3s linear infinite;
}
@keyframes dataFlow{
    from{
        left:0;
    }
    to{
        left:100%;
    }
}
/* =========================
   SERVICES INTRO
========================= */

/* .services-intro{
    display:grid;
    grid-template-columns:500px 1fr;
    gap:4rem;
    align-items:start;
    margin-bottom:5rem;
} */
.services-intro{
    display:grid;
    grid-template-columns:minmax(350px, 550px) 1fr;
    gap:4rem;
    align-items:start;
    margin-bottom:5rem;
}
.services-image{
    position:relative;
}

.services-image img{
    width:100%;
    height:auto;
    object-fit:cover;
    border-radius:24px;
    display:block;
    box-shadow:
    0 20px 50px rgba(0,0,0,.25);
    transition:.5s;
}

.services-image:hover img{
    transform:scale(1.03);
}

.services-content{
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    /* max-width:900px; */
}

.services-content .eyebrow{
    margin-bottom:1rem;
}

.services-content .st{
    /* font-size:clamp(2.8rem,5vw,4.8rem); */
    font-size:clamp(2rem,3vw,4rem);
    line-height:1.05;
    margin-bottom:1.5rem;
    max-width: 600px;

    color:#fff;
}

.services-content .st span{
    color:#29ABE2;
}

.services-content .lead{
    max-width:650px;
    margin-bottom:1.5rem;
}

.services-text{
    color:var(--text-m);
    font-size:1rem;
    line-height:1.9;
}

/* =========================
   FLOATING BADGE
========================= */

.services-badge{
    position:absolute;
    right:-25px;
    bottom:30px;
    background:#29ABE2;
    color:white;
    padding:20px 28px;
    border-radius:20px;
    text-align:center;
    box-shadow:
    0 20px 35px rgba(0,0,0,.25);
}
.services-badge h3{
    margin:0;
    font-size:2rem;
    font-weight:800;
    line-height:1;
}
.services-badge span{
    display:block;
    margin-top:5px;
    font-size:.85rem;
    letter-spacing:.5px;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:992px){
    .services-intro{
        grid-template-columns:1fr;
        gap:2rem;
        text-align:center;
    }
    .services-image{
        max-width:550px;
        margin:auto;
    }
    .services-content{
        margin:auto;
    }
    .services-content .lead{
        margin-left:auto;
        margin-right:auto;
    }
    .services-badge{
        right:20px;
    }
}
@media(max-width:768px){
    .services-image img{
        height:380px;
    }
    .services-content .st{
        font-size:2.5rem;
    }
    .services-badge{
        padding:15px 20px;
    }
}
.svc-more{
    display:none;
}

.svc.expanded .svc-more{
    display:block;
}

.svc-btn{
    margin-top:1px;
    border:none;
    background:none;
    color:#29ABE2;
    font-weight:600;
    cursor:pointer;
    padding:3px 10px;
    border-radius:50px;
    background:var(--blue-glow2);
    border:1px solid var(--border-b);
    font-size:12px;
}
#mission{
    /* padding:120px 4rem; */
    background:#fff;
    position:relative;
    overflow:hidden;
}
.mission-wrapper{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-top: -100px;
}
.mission-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:1rem;
    align-items:center;
}
.mission-row.reverse .mission-image{
    order:2;
}
.mission-row.reverse .mission-content{
    order:1;
}
.mission-image{
    position:relative;
}
.mission-image img{
    width:100%;
    max-width:600px;
    display:block;
    margin:auto;
    filter:
        drop-shadow(
            0 20px 40px rgba(0,0,0,.15)
        );
}
.mission-content{
    max-width:650px;
}
.mission-title{
    font-size:clamp(2rem,4vw,4rem);
    font-weight:700;
    line-height:1.1;
    margin-bottom:1rem;
    color:#134054;
}

.mission-content p{
    color:#6e7f98;
    font-size:1rem;
    line-height:1.9;
    margin-bottom:0.1rem;
}
section#contact{
    padding: 0 6rem;
    margin: 0 1rem;
}

h4.st{font-family:'Inter',sans-serif;font-weight:800;font-size:clamp(2rem,2.5vw,2.9rem);color:var(--white);line-height:1.12;letter-spacing:-.5px;margin-bottom:.9rem}
h4.st span{color:var(--blue)}
footer{
    background:#08172f;
    color:#fff;
    padding:0;
}
/* CTA */
.footer-cta{
    text-align:center;
    padding:80px 20px;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.footer-cta h2{
    font-size:clamp(2rem,4vw,3rem);
    margin-bottom:1rem;
}

.footer-cta p{
    max-width:700px;
    margin:auto auto 2rem;
    color:#9FB2C8;
}
.footer-cta-buttons{
    display:flex;
    justify-content:center;
    gap:1rem;
    flex-wrap:wrap;
}

/* MAIN */

.footer-main{
    display:grid;
    grid-template-columns:
    2fr
    1fr
    1fr;
    gap:3rem;
    padding:60px 4rem;
}
.footer-brand img{
    height:70px;
    width:auto;
    margin-bottom:20px;
    border-radius:10px;
}

.footer-brand p{
    color:#9FB2C8;
    max-width:350px;
    line-height:1.8;
}

.footer-col h4{
    margin-bottom:1rem;
    color:#29ABE2;
}
.footer-col ul{
    list-style:none;
    padding:0;
}
.footer-col li{
    margin-bottom:.75rem;
    color:#9FB2C8;
}
.footer-col a{
    color:#9FB2C8;
    text-decoration:none;
}
.footer-col a:hover{
    color:#29ABE2;
}

/* BOTTOM */
.footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:1rem;
    padding:25px 4rem;
    border-top:1px solid rgba(255,255,255,.08);
}
.footer-social{
    display:flex;
    gap:15px;
}
.footer-social a{
    color:#29ABE2;
    font-size:1.25rem;
}
.footer-social a:hover{
    color:white;
}
footer{
    position:relative;
}
footer::before{
    content:'';
    position:absolute;
    top:-200px;
    right:-200px;
    width:500px;
    height:500px;
    border-radius:50%;
    background:
    radial-gradient(
        circle,
        rgba(41,171,226,.07),
        transparent 70%
    );
    pointer-events:none;
}
/* .carousel-item {
    height: 100vh;
}

.carousel-item:not(.active) {
    display: none;
} */

/* =========================================
   MOBILE CONTACT + FOOTER FIX
   ========================================= */

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}


/* =========================================
   CONTACT SECTION
   ========================================= */

section#contact {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 70px 4rem;
}

.contact-wrap {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.contact-wrap > * {
    min-width: 0;
}

.c-item {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.c-item > div:last-child {
    min-width: 0;
}

.c-val {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.form-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.form-card form,
#form-body,
.form-group,
.form-row {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

input,
select,
textarea {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}


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

footer {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

.footer-main {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.footer-main > * {
    min-width: 0;
}

.footer-brand,
.footer-col {
    min-width: 0;
    max-width: 100%;
}

.footer-brand p {
    max-width: 350px;
    overflow-wrap: break-word;
}

.footer-col ul {
    margin: 0;
}

.footer-col li,
.footer-col a {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.footer-bottom {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.footer-social {
    flex-wrap: wrap;
}

footer::before {
    pointer-events: none;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 900px) {

    section#contact {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 70px 1.5rem;
    }

    .contact-wrap {
        grid-template-columns: 1fr;
        gap: 2rem;
        width: 100%;
    }

    .contact-wrap > div {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .contact-tagline {
        font-size: 1.6rem;
    }

    .form-card {
        padding: 1.5rem;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .form-submit {
        width: 100%;
    }


    /* FOOTER */

    .footer-main {
        grid-template-columns: 1fr 1fr;
        gap: 2.5rem;
        padding: 50px 1.5rem;
    }

    .footer-brand {
        grid-column: 1 / -1;
    }

    .footer-bottom {
        padding: 25px 1.5rem;
    }
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 580px) {

    section#contact {
        padding: 60px 1rem;
    }

    .contact-tagline {
        font-size: 1.4rem;
    }

    .c-item {
        padding: 1rem;
        gap: .75rem;
    }

    .c-val {
        font-size: 13.5px;
    }

    .form-card {
        padding: 1.25rem;
    }


    /* FOOTER */

    footer {
        width: 100%;
        overflow: hidden;
    }

    .footer-cta {
        width: 100%;
        padding: 60px 1rem;
    }

    .footer-cta h2 {
        font-size: 2rem;
        line-height: 1.2;
    }

    .footer-cta p {
        width: 100%;
        max-width: 100%;
        font-size: .95rem;
    }

    .footer-cta-buttons {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: .75rem;
    }

    .footer-cta-buttons a,
    .footer-cta-buttons button {
        width: 100%;
        max-width: 100%;
        text-align: center;
    }

    .footer-main {
        grid-template-columns: 1fr;
        gap: 2rem;
        padding: 45px 1rem;
    }

    .footer-brand {
        grid-column: auto;
    }

    .footer-brand img {
        max-width: 100%;
        height: auto;
    }

    .footer-brand p {
        max-width: 100%;
        font-size: .9rem;
    }

    .footer-col {
        width: 100%;
        max-width: 100%;
    }

    .footer-col h4 {
        margin-bottom: .75rem;
    }

    .footer-col ul {
        width: 100%;
        max-width: 100%;
    }

    .footer-col li {
        width: 100%;
        max-width: 100%;
    }

    .footer-bottom {
        padding: 20px 1rem;
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        gap: 1rem;
    }

    .footer-social {
        width: 100%;
        flex-wrap: wrap;
        gap: 15px;
    }

    /* Keep the decorative circle from creating visual overflow */
    footer::before {
        right: -300px;
        top: -100px;
    }
}


/* =========================================
   VERY SMALL PHONES
   ========================================= */

@media (max-width: 380px) {

    .footer-cta {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .footer-main {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .footer-bottom {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .footer-cta h2 {
        font-size: 1.75rem;
    }
}

