:root{--blue:#1076bb;--blue2:#39a9e8;--red:#ef6269;--navy:#0b344f;--navy2:#0d2944;--ink:#0b344f;--muted:#6f7d8b;--line:#e8edf2;--soft:#f5f8fb;--white:#fff}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.container{width:min(1200px,calc(100% - 40px));margin:auto}.section{padding:110px 0}.eyebrow{font-size:12px;letter-spacing:1.8px;text-transform:uppercase;font-weight:800;color:var(--blue);margin-bottom:16px}.section-title{font-family:Manrope,sans-serif;font-size:clamp(36px,4.8vw,62px);line-height:1.04;letter-spacing:-2.5px}.section-copy{color:var(--muted);font-size:17px;line-height:1.75;max-width:600px;margin-top:18px}
/* nav */
.nav{height:82px;position:sticky;top:0;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(11,62,99,.08);z-index:50}.nav-inner{height:100%;display:grid;grid-template-columns:170px 1fr auto;align-items:center;gap:24px}.logo img{width:118px}.menu{display:flex;justify-content:center;align-items:center;gap:34px;list-style:none}.menu>li{position:relative}.menu a{font-size:12px;font-weight:800;letter-spacing:.7px;text-transform:uppercase;color:#315574;transition:.2s}.menu a:hover{color:var(--red)}.dropdown-toggle{display:inline-flex;align-items:center;gap:7px}.dropdown-toggle i{font-size:10px;transition:transform .2s}.dropdown-menu{position:absolute;top:calc(100% + 22px);left:50%;transform:translateX(-50%) translateY(8px);width:220px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px rgba(16,60,92,.14);list-style:none;opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.dropdown-menu:before{content:"";position:absolute;top:-23px;left:0;width:100%;height:24px}.dropdown-menu li a{display:block;padding:11px 13px;border-radius:9px;font-size:11px;letter-spacing:.45px;color:#315574}.dropdown-menu li a:hover{background:var(--soft);color:var(--red)}.has-dropdown:hover .dropdown-menu,.has-dropdown.open .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.has-dropdown:hover .dropdown-toggle i,.has-dropdown.open .dropdown-toggle i{transform:rotate(180deg)}.actions{display:flex;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:9px;font-size:13px;font-weight:800;border:1px solid transparent;transition:.2s}.btn-outline{border-color:var(--blue);color:var(--blue);background:#fff}.btn-outline:hover{background:var(--blue);color:#fff}.btn-solid{background:var(--red);color:#fff}.btn-solid:hover{background:#d84f57}.toggle{display:none;border:0;background:none;font-size:26px;color:var(--navy)}
@media (max-width:1000px){

    .nav{
        height:82px;
    }

    .nav-inner{
        position:relative;
        display:grid;
        grid-template-columns:1fr auto;
        align-items:center;
        min-height:82px;
    }

    .logo{
        grid-column:1;
        grid-row:1;
        margin-top: 10px;
    }

    .toggle{
        display:flex;
        grid-column:2;
        grid-row:1;
        align-items:center;
        justify-content:center;

        width:44px;
        height:44px;

        border:0;
        background:transparent;
        color:var(--navy);
        font-size:28px;
        cursor:pointer;

        position:relative;
        z-index:100;
    }

    .menu,
    .actions{
        display:none;
    }

    .nav.open{
        height:auto;
    }

    .nav.open .nav-inner{
        padding:0;
        grid-template-columns:1fr auto;
    }

    .nav.open .menu{
        grid-column:1 / -1;
        grid-row:2;

        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:8px;

        width:100%;
        /* padding:30px 0 20px; */
        margin:0;
    }

    .nav.open .menu > li > a{
        display:flex;
        align-items:center;
        justify-content:space-between;

        /* padding:14px 4px; */
        font-size:15px;
    }

    .nav.open .actions{
        grid-column:1 / -1;
        grid-row:3;

        display:flex;
        flex-direction:column;
        width:100%;
        gap:12px;
        padding:20px 0 28px;
    }

    .nav.open .actions .btn{
        width:100%;
    }

    .nav.open .dropdown-menu{
        position:static;
        width:100%;
        margin-top:6px;
        padding:8px;

        transform:none !important;
        box-shadow:none;
        border-radius:10px;

        display:none;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
    }

    .nav.open .has-dropdown.open .dropdown-menu{
        display:block;
    }
}

/* hero */
.hero {
    position: relative;
    width: 100%;
}

.hero-visual {
    position: relative;
    width: 100%;
    height: 550px;
    min-height: 550px;
    overflow: hidden;
    background: #dfeef7;
}

.hero-carousel {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.hero-slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    opacity: 0;
    transform: scale(1.03);
    transition: opacity 1.05s ease, transform 8s ease;
}

.hero-slide.active {
    opacity: 1;
    transform: scale(1);
}

.hero-wash {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(0, 0, 0, 0.08);
    pointer-events: none;
}

.hero-grid {
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: flex-end;
    padding: 40px 60px;
}

.hero-content {
    width: min(650px, 78%);
}

/* .hero-label{display:inline-flex;align-items:center;gap:11px;padding:9px 14px;border:1px solid rgba(16,118,187,.24);border-radius:999px;background:rgba(255,255,255,.78);backdrop-filter:blur(12px);color:var(--blue);font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;margin-bottom:24px}.hero-label:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px rgba(241,99,103,.12)}
.hero h1{font-family:Manrope,sans-serif;font-size:clamp(46px,5.2vw,68px);line-height:1.03;letter-spacing:-3.2px;color:#fff;max-width:650px;text-wrap:balance;text-shadow:0 3px 20px rgba(0,0,0,.24)}.hero h1 em{display:block;font-style:normal;color:#fff} */
/* .hero-meta{display:flex;align-items:center;gap:20px;margin-top:28px}.hero-proof{display:flex;align-items:center;gap:12px}.hero-proof strong{font-family:Manrope,sans-serif;color:var(--red);font-size:38px;line-height:1}.hero-proof span{font-size:12px;line-height:1.45;color:rgba(255,255,255,.92);max-width:150px}.hero-divider,.hero-note{display:none} */

.capability-rail{display:flex;align-items:stretch;gap:0;margin-top:34px;width:max-content;max-width:100%;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.82);border-radius:16px;box-shadow:0 18px 48px rgba(8,26,45,.20);backdrop-filter:blur(16px);overflow:hidden}.capability{min-width:176px;padding:18px 22px;position:relative;transition:.25s}.capability+.capability{border-left:1px solid rgba(16,118,187,.12)}.capability:before{content:"";position:absolute;left:22px;top:0;width:30px;height:3px;background:var(--blue);transition:.25s}.capability:nth-child(2):before{background:var(--red)}.capability:nth-child(3):before{background:#1ba77b}.capability:hover{background:#fff;transform:translateY(-3px)}.capability b{font-family:Manrope,sans-serif;font-size:14px;color:var(--navy);display:block}.capability span{display:block;font-size:10px;color:var(--muted);margin-top:5px;letter-spacing:.2px}
.hero-side-caption{position:absolute;right:32px;top:50%;z-index:3;transform:translateY(-50%);writing-mode:vertical-rl;font-size:9px;font-weight:800;letter-spacing:2.4px;text-transform:uppercase;color:rgba(255,255,255,.82)}.hero-dots{position:absolute;right:34px;bottom:35px;z-index:3;display:flex;align-items:center;gap:8px}.hero-dot{width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.75);background:rgba(255,255,255,.34);cursor:pointer;padding:0;transition:.25s}.hero-dot.active{width:30px;border-radius:99px;background:#fff}.hero-index{position:absolute;right:34px;top:28px;z-index:3;font-family:Manrope,sans-serif;font-weight:800;color:#fff;font-size:11px;letter-spacing:1px}.hero-index span{color:#fff;font-size:24px;margin-right:4px}.scroll-cue{position:absolute;left:50%;bottom:24px;z-index:3;transform:translateX(-50%);display:flex;align-items:center;gap:9px;color:#fff;font-size:9px;letter-spacing:1.6px;text-transform:uppercase;font-weight:800}.scroll-cue:before{content:"";width:28px;height:1px;background:#fff;animation:scrollLine 1.8s ease-in-out infinite}@keyframes scrollLine{50%{width:48px}}
@media(max-width:1000px){.hero-grid{padding:58px 0 58px 52px}.hero-content{width:82%}.hero h1{font-size:clamp(44px,7vw,60px)}.hero-side-caption{display:none}}
@media(max-width:650px){.hero-visual{height:var(--mh,210px);min-height:var(--mh,210px)}.hero-grid{position:static;padding:18px 18px 0;align-items:flex-start;display:block}.hero-content{width:100%}.hero h1{font-size:44px;letter-spacing:-2.5px}.hero-meta{align-items:flex-start;gap:14px}.hero-proof strong{font-size:34px}.capability-rail{display:grid;width:100%;border-radius:14px;margin-top:0}.capability{min-width:0;padding:15px 18px}.capability+.capability{border-left:0;border-top:1px solid rgba(16,118,187,.12)}.capability:before{left:18px}.hero-index,.hero-dots{right:18px}.scroll-cue{display:none}}
.eco-stage{height:560px;position:relative;display:grid;place-items:center}.glow{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(25,143,204,.34),rgba(25,143,204,.04) 58%,transparent 70%);filter:blur(8px)}.hub{width:190px;height:190px;border-radius:50%;background:linear-gradient(145deg,#0f88cf,#0a4f84);border:1px solid rgba(255,255,255,.28);box-shadow:0 30px 80px rgba(0,0,0,.35),inset 0 0 35px rgba(255,255,255,.08);display:grid;place-items:center;text-align:center;position:relative;z-index:4}.hub b{font-family:Manrope;font-size:30px}.hub small{display:block;color:#b7d7e8;margin-top:6px}.orbit{position:absolute;border:1px dashed rgba(115,198,238,.26);border-radius:50%}.orbit.one{width:360px;height:360px;animation:spin 28s linear infinite}.orbit.two{width:500px;height:500px;animation:spinBack 36s linear infinite}.node{position:absolute;width:128px;padding:14px 12px;border-radius:16px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);text-align:center;box-shadow:0 18px 40px rgba(0,0,0,.18);z-index:5}.node i{font-size:22px;color:#63c8f3}.node b{display:block;font-size:13px;margin-top:7px}.node span{display:block;font-size:10px;color:#a9c5d8;margin-top:3px}.n1{top:22px;left:50%;transform:translateX(-50%)}.n2{right:5px;top:190px}.n3{right:70px;bottom:18px}.n4{left:70px;bottom:18px}.n5{left:5px;top:190px}.plane{position:absolute;right:105px;top:68px;font-size:42px;color:#fff;transform:rotate(17deg);filter:drop-shadow(0 10px 18px rgba(0,0,0,.35));animation:float 4s ease-in-out infinite}.route{position:absolute;inset:0}.route path{fill:none;stroke:#54b9e9;stroke-width:1.4;stroke-dasharray:5 8;opacity:.48;animation:dash 8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinBack{to{transform:rotate(-360deg)}}@keyframes float{50%{transform:rotate(17deg) translateY(-12px)}}@keyframes dash{to{stroke-dashoffset:-180}}
/* metrics */
.metrics{background:#fff;border-bottom:1px solid var(--line)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr)}.metric{padding:34px 20px;text-align:center;border-right:1px solid var(--line)}.metric:last-child{border-right:0}.metric strong{font-family:Manrope;font-size:38px;color:var(--navy)}.metric span{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-top:4px}
/* platform */
.platform{background:var(--soft)}.platform-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.product-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;margin-top:55px}.window{background:#fff;border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:0 24px 70px rgba(32,75,107,.09)}.window.large{min-height:470px}.window.small{min-height:223px}.window-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.window-title{font-weight:800}.dots{display:flex;gap:6px}.dots span{width:8px;height:8px;border-radius:50%;background:#dce6ed}.search-panel{background:linear-gradient(135deg,#eef8fe,#fff5f5);border:1px solid #e1edf4;border-radius:18px;padding:24px}.tabs{display:flex;gap:10px;margin-bottom:22px}.tab{padding:9px 14px;border-radius:9px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:700}.tab.active{background:var(--red);color:#fff;border-color:var(--red)}.search-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{height:66px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:13px}.field small{display:block;color:#8b98a5;font-size:10px;text-transform:uppercase;letter-spacing:.8px}.field b{display:block;margin-top:7px;font-size:14px}.search-action{margin-top:12px;height:48px;border-radius:11px;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:800}.mini-route{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line)}.mini-route:last-child{border-bottom:0}.route-code{font-family:Manrope;font-size:22px}.route-line{flex:1;height:1px;background:var(--line);margin:0 16px;position:relative}.route-line:after{content:"✈";position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);background:#fff;padding:0 8px;color:var(--red)}.wallet{background:linear-gradient(135deg,var(--blue),#0a5d94);border-radius:18px;padding:25px;color:#fff}.wallet small{color:#cce7f6}.wallet strong{font-family:Manrope;font-size:34px;display:block;margin-top:8px}.wallet-footer{display:flex;justify-content:space-between;margin-top:25px;font-size:12px;color:#d5ebf6}
/* ecosystem section */
.ecosystem{background:#fff}.ecosystem-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.flow-map{position:relative;height:500px;background:linear-gradient(145deg,#f7fbfe,#eef6fb);border:1px solid var(--line);border-radius:28px;overflow:hidden}.flow-map:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#b9d9ea 1px,transparent 1px);background-size:22px 22px;opacity:.55}.flow-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:150px;height:150px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;text-align:center;z-index:3;box-shadow:0 20px 50px rgba(8,26,45,.24)}.flow-center b{font-family:Manrope;font-size:25px}.flow-node{position:absolute;width:150px;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:0 14px 35px rgba(30,71,101,.09);z-index:3}.flow-node i{font-size:22px;color:var(--blue)}.flow-node b{display:block;margin-top:8px}.flow-node span{font-size:11px;color:var(--muted)}.f1{top:35px;left:50%;transform:translateX(-50%)}.f2{right:28px;top:175px}.f3{right:75px;bottom:32px}.f4{left:75px;bottom:32px}.f5{left:28px;top:175px}.flow-svg{position:absolute;inset:0;width:100%;height:100%;z-index:1}.flow-svg line{stroke:#7ebbdc;stroke-width:1.4;stroke-dasharray:5 6}
/* api */
.api{background:#011e32;color:#fff}.api-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.api .section-copy{color:#a9bfce}.code-card{background:#06111d;border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:26px;box-shadow:0 25px 80px rgba(0,0,0,.35)}.code-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:16px;margin-bottom:18px;font-size:12px;color:#8ca4b6}.code-body{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;line-height:1.95;color:#d9e7f0}.blue{color:#6dc8f4}.pink{color:#ff8e95}.green{color:#85e0a3}.orange{color:#ffd18c}
/* why */
.why{background:#fff}.why-title{font-family:Manrope;font-size:clamp(60px,10vw,142px);line-height:.82;letter-spacing:-7px;color:var(--navy)}.why-title span{display:block;color:transparent;-webkit-text-stroke:1.5px #9fc4d9}.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:65px}.why-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.why-item{padding:20px;border:1px solid var(--line);border-radius:14px;font-weight:700}.why-item i{color:var(--red);margin-right:9px}
/* network */
.network{background:var(--soft)}.network-map{height:430px;margin-top:50px;border-radius:28px;background:linear-gradient(150deg,#0a253e,#0d3658);position:relative;overflow:hidden}.network-map:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.13) 1px,transparent 1px);background-size:28px 28px}.city{position:absolute;color:#fff;font-size:12px;font-weight:700;z-index:2}.city:before{content:"";display:block;width:10px;height:10px;border-radius:50%;background:#ff747b;box-shadow:0 0 0 7px rgba(255,116,123,.12);margin-bottom:7px}.india{left:48%;top:50%}.dubai{left:34%;top:42%}.london{left:22%;top:20%}.singapore{left:65%;top:63%}.bangkok{left:58%;top:52%}.kl{left:69%;top:69%}.network svg{position:absolute;inset:0;width:100%;height:100%}.network path{stroke:#64c8f3;stroke-width:1.4;fill:none;stroke-dasharray:5 7;opacity:.65;animation:dash 9s linear infinite}
/* cta/footer */
.cta{padding:90px 0;background:linear-gradient(110deg,var(--blue),#0a5d94);color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{font-family:Manrope;font-size:clamp(38px,5vw,64px);line-height:1.04;letter-spacing:-2.5px;max-width:760px}.cta .btn{background:#fff;color:var(--blue);padding:15px 22px}.footer{background:#07131f;color:#8fa3b3;padding:68px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:50px}.footer-logo{width:120px;margin-bottom:18px}.footer p{font-size:14px;line-height:1.7;max-width:330px}.footer h4{color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:18px}.footer ul{list-style:none}.footer li{margin:10px 0;font-size:14px}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:44px;padding-top:22px;display:flex;justify-content:space-between;font-size:12px}
.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.show{opacity:1;transform:none}
@media(max-width:1000px){.nav-inner{grid-template-columns:1fr auto}.menu,.actions{display:none}.toggle{display:block}.nav.open{height:auto}.nav.open .nav-inner{padding:18px 0;grid-template-columns:1fr auto}.nav.open .menu{grid-column:1/-1;display:flex;align-items:stretch;flex-direction:column;gap:8px;padding:15px 0}.nav.open .menu>li>a{display:flex;justify-content:space-between;padding:11px 4px}.nav.open .dropdown-menu{position:static;width:100%;transform:none!important;box-shadow:none;border-radius:10px;margin-top:4px;display:none;opacity:1;visibility:visible;pointer-events:auto}.nav.open .has-dropdown.open .dropdown-menu{display:block}.nav.open .actions{grid-column:1/-1;display:flex}.hero-grid,.ecosystem-grid,.api-grid,.why-grid{grid-template-columns:1fr}.eco-stage{margin-top:10px}.product-grid{grid-template-columns:1fr}.platform-head{display:block}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.footer-grid{grid-template-columns:1fr 1fr}.cta-inner{display:block}.cta .btn{margin-top:25px}}
@media(max-width:650px){.container{width:min(100% - 28px,1200px)}.section{padding:78px 0}.hero h1{letter-spacing:-2.5px}.eco-stage{height:480px;transform:scale(.88)}.node{width:108px}.search-fields{grid-template-columns:1fr}.why-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block;line-height:1.8}.actions{flex-direction:column}.btn{width:100%}.network-map{height:330px}.why-title{letter-spacing:-4px}}

.platform-showcase {
    position: relative;
    padding: 110px 0;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 20%, rgba(16, 118, 187, 0.07), transparent 30%),
        radial-gradient(circle at 92% 80%, rgba(241, 99, 103, 0.07), transparent 30%),
        #f8fafc;
}

.platform-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 60px;
    margin-bottom: 70px;
}

.platform-heading .section-title {
    margin-bottom: 0;
}

.platform-heading .section-copy {
    max-width: 420px;
    margin: 0 0 6px;
}

/* Main visual area */

.platform-visual {
    position: relative;
    min-height: 620px;
    border: 1px solid rgba(20, 41, 66, 0.08);
    border-radius: 36px;
    overflow: hidden;
    background:
        linear-gradient(rgba(255, 255, 255, 0.92), rgba(255, 255, 255, 0.92)),
        linear-gradient(90deg, rgba(16, 118, 187, 0.06) 1px, transparent 1px),
        linear-gradient(rgba(16, 118, 187, 0.06) 1px, transparent 1px);
    background-size: auto, 46px 46px, 46px 46px;
    box-shadow: 0 30px 80px rgba(15, 40, 70, 0.09);
}

.platform-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(5px);
    pointer-events: none;
}

.platform-glow-one {
    width: 320px;
    height: 320px;
    top: -160px;
    left: -110px;
    background: rgba(16, 118, 187, 0.12);
}

.platform-glow-two {
    width: 300px;
    height: 300px;
    right: -120px;
    bottom: -150px;
    background: rgba(241, 99, 103, 0.10);
}

/* Central hub */

.platform-hub {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 230px;
    height: 230px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid rgba(16, 118, 187, 0.15);
    box-shadow:
        0 25px 70px rgba(16, 118, 187, 0.18),
        inset 0 0 0 12px rgba(16, 118, 187, 0.035);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 4;
}

.hub-logo {
    font-size: 39px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -2px;
    color: #172b45;
}

.hub-logo strong {
    color: #1076bb;
}

.platform-hub small {
    margin-top: 14px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #748096;
}

.hub-ring {
    position: absolute;
    inset: -28px;
    border-radius: 50%;
    border: 1px dashed rgba(16, 118, 187, 0.22);
    animation: hubRotate 18s linear infinite;
}

.hub-ring-two {
    inset: -55px;
    border-color: rgba(241, 99, 103, 0.17);
    animation-duration: 25s;
    animation-direction: reverse;
}

@keyframes hubRotate {
    to {
        transform: rotate(360deg);
    }
}

/* Lines */

.platform-connections {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 1;
}

.platform-connections path {
    fill: none;
    stroke: rgba(16, 118, 187, 0.28);
    stroke-width: 1.6;
    stroke-dasharray: 7 8;
    animation: platformDash 12s linear infinite;
}

@keyframes platformDash {
    to {
        stroke-dashoffset: -180;
    }
}

/* Feature modules */

.platform-module {
    position: absolute;
    z-index: 3;
    width: 290px;
    min-height: 170px;
    padding: 25px;
    display: flex;
    align-items: flex-start;
    gap: 18px;
    border: 1px solid rgba(20, 41, 66, 0.09);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 18px 45px rgba(18, 49, 79, 0.09);
    backdrop-filter: blur(14px);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.platform-module:hover {
    transform: translateY(-8px);
    box-shadow: 0 28px 60px rgba(18, 49, 79, 0.15);
}

.module-flight {
    top: 60px;
    left: 55px;
}

.module-hotel {
    top: 60px;
    right: 55px;
}

.module-credit {
    bottom: 60px;
    left: 55px;
}

.module-manage {
    right: 55px;
    bottom: 60px;
}

.module-number {
    position: absolute;
    top: 17px;
    right: 19px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    color: rgba(20, 41, 66, 0.32);
}

.module-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    display: grid;
    place-items: center;
    border-radius: 16px;
    background: rgba(16, 118, 187, 0.09);
}

.module-icon svg {
    width: 30px;
    height: 30px;
    fill: #1076bb;
}

.module-label {
    display: block;
    margin-bottom: 6px;
    color: #1076bb;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.platform-module h3 {
    margin: 0 0 8px;
    color: #172b45;
    font-size: 18px;
    font-weight: 700;
}

.platform-module p {
    margin: 0;
    color: #6a7688;
    font-size: 13px;
    line-height: 1.6;
}

/* Bottom process */

.platform-process {
    margin-top: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.process-item {
    text-align: center;
    min-width: 100px;
}

.process-item span {
    display: block;
    margin-bottom: 4px;
    color: #1076bb;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
}

.process-item strong {
    color: #172b45;
    font-size: 15px;
}

.process-line {
    width: 110px;
    height: 1px;
    margin: 0 8px;
    background: linear-gradient(
        90deg,
        rgba(16, 118, 187, 0.15),
        rgba(16, 118, 187, 0.55),
        rgba(16, 118, 187, 0.15)
    );
}

/* Responsive */

@media (max-width: 1100px) {
    .platform-visual {
        min-height: auto;
        padding: 45px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 22px;
    }

    .platform-hub,
    .platform-connections {
        display: none;
    }

    .platform-module {
        position: relative;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        width: 100%;
        min-height: 170px;
    }
}

@media (max-width: 767px) {
    .platform-showcase {
        padding: 75px 0;
    }

    .platform-heading {
        display: block;
        margin-bottom: 40px;
    }

    .platform-heading .section-copy {
        margin-top: 18px;
    }

    .platform-visual {
        padding: 20px;
        grid-template-columns: 1fr;
        border-radius: 24px;
    }

    .platform-module {
        min-height: auto;
        padding: 22px;
    }

    .platform-process {
        flex-wrap: wrap;
        gap: 15px;
    }

    .process-line {
        width: 35px;
    }
}

@media (max-width: 480px) {
    .platform-process {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 5px;
    }

    .process-line {
        display: none;
    }

    .process-item {
        min-width: 0;
    }

    .process-item strong {
        font-size: 12px;
    }
}

.ecosystem-v2 {
    position: relative;
    overflow: hidden;
    padding: 110px 0;
    background: #ffffff;
}

.ecosystem-v2::before {
    content: "";
    position: absolute;
    top: -180px;
    right: -180px;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(16, 118, 187, 0.05);
    pointer-events: none;
}

.ecosystem-v2::after {
    content: "";
    position: absolute;
    left: -160px;
    bottom: -190px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: rgba(241, 99, 103, 0.045);
    pointer-events: none;
}

/* Heading */

.ecosystem-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 60px;
    margin-bottom: 70px;
}

.ecosystem-heading .section-title {
    max-width: 720px;
    margin-bottom: 0;
}

.ecosystem-heading .section-title span {
    color: #1076bb;
}

.ecosystem-heading .section-copy {
    max-width: 410px;
    margin: 0 0 8px;
}

/* Main board */

.ecosystem-board {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 360px 1fr;
    align-items: center;
    gap: 55px;
    padding: 70px 60px;
    border: 1px solid rgba(20, 41, 66, 0.08);
    border-radius: 34px;
    background:
        linear-gradient(
            90deg,
            rgba(16, 118, 187, 0.025),
            rgba(255, 255, 255, 0.96),
            rgba(241, 99, 103, 0.025)
        );
    box-shadow: 0 30px 80px rgba(17, 44, 73, 0.07);
}

/* Columns */

.ecosystem-column {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 18px;
    z-index: 3;
}

.column-label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 6px;
    color: #738096;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.column-label span {
    color: #1076bb;
}

/* Cards */

.ecosystem-card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 17px;
    min-height: 105px;
    padding: 20px 22px;
    border: 1px solid rgba(20, 41, 66, 0.08);
    border-radius: 19px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 35px rgba(17, 44, 73, 0.06);
    transition:
        transform 0.3s ease,
        border-color 0.3s ease,
        box-shadow 0.3s ease;
}

.ecosystem-card:hover {
    transform: translateY(-6px);
    border-color: rgba(16, 118, 187, 0.24);
    box-shadow: 0 22px 45px rgba(17, 44, 73, 0.1);
}

.ecosystem-card-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    background: rgba(16, 118, 187, 0.08);
    color: #1076bb;
    font-size: 21px;
}

.ecosystem-card h3 {
    margin: 0 0 5px;
    color: #172b45;
    font-size: 16px;
    font-weight: 700;
}

.ecosystem-card p {
    margin: 0;
    color: #738096;
    font-size: 12px;
    line-height: 1.5;
}

.status-dot {
    position: absolute;
    right: 19px;
    top: 19px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #35c886;
    box-shadow: 0 0 0 5px rgba(53, 200, 134, 0.1);
}

.card-arrow {
    margin-left: auto;
    color: #1076bb;
    font-size: 23px;
    transition: transform 0.25s ease;
}

.ecosystem-card:hover .card-arrow {
    transform: translateX(4px);
}

/* AIR iQ core */

.ecosystem-core {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 390px;
    z-index: 2;
}

.core-card {
    position: relative;
    z-index: 5;
    width: 310px;
    padding: 48px 32px 34px;
    border-radius: 30px;
    text-align: center;
    color: #ffffff;
    background:
        linear-gradient(
            145deg,
            #0d6da9,
            #1076bb 55%,
            #1685c9
        );
    box-shadow: 0 28px 65px rgba(16, 118, 187, 0.28);
}

.core-label {
    display: inline-block;
    margin-bottom: 22px;
    padding: 7px 13px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.1);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.core-brand {
    margin-bottom: 17px;
    font-size: 42px;
    font-weight: 700;
    letter-spacing: -2px;
}

.core-brand strong {
    color: #d7efff;
}

.core-card > p {
    max-width: 235px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.8);
    font-size: 13px;
    line-height: 1.65;
}

.core-metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 9px;
    margin-top: 29px;
    padding-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.core-metrics strong,
.core-metrics span {
    display: block;
}

.core-metrics strong {
    margin-bottom: 4px;
    font-size: 14px;
}

.core-metrics span {
    color: rgba(255, 255, 255, 0.62);
    font-size: 9px;
}

/* Decorative orbit */

.core-orbit {
    position: absolute;
    border-radius: 50%;
    border: 1px dashed rgba(16, 118, 187, 0.16);
    animation: ecosystemRotate 22s linear infinite;
}

.orbit-one {
    width: 365px;
    height: 365px;
}

.orbit-two {
    width: 430px;
    height: 430px;
    border-color: rgba(241, 99, 103, 0.12);
    animation-duration: 31s;
    animation-direction: reverse;
}

@keyframes ecosystemRotate {
    to {
        transform: rotate(360deg);
    }
}

/* Connecting lines */

.core-lines {
    position: absolute;
    top: 50%;
    width: 180px;
    height: 1px;
    z-index: 1;
    background: repeating-linear-gradient(
        90deg,
        rgba(16, 118, 187, 0.18) 0 7px,
        transparent 7px 13px
    );
}

.core-lines-left {
    right: calc(100% - 28px);
}

.core-lines-right {
    left: calc(100% - 28px);
}

/* Bottom process */

.ecosystem-flow {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 45px;
}

.ecosystem-flow-item {
    min-width: 105px;
    text-align: center;
}

.ecosystem-flow-item span {
    display: block;
    margin-bottom: 4px;
    color: #1076bb;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 1px;
}

.ecosystem-flow-item strong {
    color: #172b45;
    font-size: 14px;
}

.ecosystem-flow-line {
    position: relative;
    width: 100px;
    height: 1px;
    overflow: hidden;
    background: rgba(16, 118, 187, 0.13);
}

.ecosystem-flow-line span {
    position: absolute;
    top: 0;
    left: -40%;
    width: 40%;
    height: 100%;
    background: #1076bb;
    animation: ecosystemFlow 3s linear infinite;
}

@keyframes ecosystemFlow {
    to {
        left: 110%;
    }
}

/* Responsive */

@media (max-width: 1100px) {
    .ecosystem-board {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        padding: 45px;
    }

    .ecosystem-core {
        grid-column: 1 / -1;
        grid-row: 1;
        min-height: 360px;
    }

    .supplier-column {
        grid-column: 1;
    }

    .user-column {
        grid-column: 2;
    }

    .core-lines {
        display: none;
    }
}

@media (max-width: 767px) {
    .ecosystem-v2 {
        padding: 75px 0;
    }

    .ecosystem-heading {
        display: block;
        margin-bottom: 40px;
    }

    .ecosystem-heading .section-copy {
        margin-top: 18px;
    }

    .ecosystem-board {
        grid-template-columns: 1fr;
        padding: 24px;
        border-radius: 24px;
    }

    .ecosystem-core,
    .supplier-column,
    .user-column {
        grid-column: 1;
    }

    .ecosystem-core {
        min-height: 330px;
    }

    .core-card {
        width: 280px;
    }

    .orbit-one {
        width: 320px;
        height: 320px;
    }

    .orbit-two {
        width: 360px;
        height: 360px;
    }

    .ecosystem-flow {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 8px;
    }

    .ecosystem-flow-line {
        display: none;
    }

    .ecosystem-flow-item {
        min-width: 0;
    }
}

@media (max-width: 480px) {
    .ecosystem-card {
        padding: 18px;
    }

    .ecosystem-card-icon {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
    }

    .core-card {
        width: 250px;
        padding: 40px 24px 30px;
    }

    .core-brand {
        font-size: 36px;
    }

    .core-metrics {
        gap: 4px;
    }

    .ecosystem-flow-item strong {
        font-size: 11px;
    }
}


/* awards & achievements */
.awards-achievements{
    background:var(--soft);
}
.awards-head,
.work-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:50px;
    margin-bottom:55px;
}
.awards-head .section-copy,
.work-head .section-copy{
    max-width:430px;
    margin:0 0 6px;
}
.awards-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}
.award-card{
    position:relative;
    min-height:260px;
    padding:28px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:22px;
    overflow:hidden;
    transition:.3s ease;
}
.award-card:after{
    content:"";
    position:absolute;
    width:120px;
    height:120px;
    right:-50px;
    bottom:-50px;
    border-radius:50%;
    background:rgba(16,118,187,.06);
}
.award-card:hover{
    transform:translateY(-8px);
    border-color:rgba(16,118,187,.22);
    box-shadow:0 22px 55px rgba(20,65,95,.11);
}
.award-icon{
    width:56px;
    height:56px;
    border-radius:17px;
    display:grid;
    place-items:center;
    background:rgba(16,118,187,.09);
    color:var(--blue);
    font-size:25px;
    margin-bottom:38px;
}
.award-card:nth-child(2) .award-icon{
    background:rgba(239,98,105,.10);
    color:var(--red);
}
.award-card:nth-child(3) .award-icon{
    background:rgba(27,167,123,.10);
    color:#1ba77b;
}
.award-card:nth-child(4) .award-icon{
    background:rgba(8,26,45,.08);
    color:var(--navy);
}
.award-card strong{
    display:block;
    font-family:Manrope,sans-serif;
    font-size:30px;
    color:var(--navy);
    line-height:1.05;
}
.award-card h3{
    margin-top:9px;
    color:var(--ink);
    font-size:16px;
}
.award-card p{
    margin-top:10px;
    color:var(--muted);
    font-size:13px;
    line-height:1.6;
}
.achievement-timeline{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin-top:45px;
    border-top:1px solid var(--line);
}
.timeline-item{
    position:relative;
    padding:26px 20px 0;
}
.timeline-item:before{
    content:"";
    position:absolute;
    top:-6px;
    left:20px;
    width:11px;
    height:11px;
    border-radius:50%;
    background:var(--blue);
    box-shadow:0 0 0 6px rgba(16,118,187,.11);
}
.timeline-item span{
    color:var(--blue);
    font-size:11px;
    font-weight:800;
    letter-spacing:1px;
}
.timeline-item strong{
    display:block;
    margin-top:7px;
    color:var(--navy);
    font-size:14px;
}

/* why work with us */
.work-with-us{
    background:#fff;
}
.work-layout{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:70px;
    align-items:start;
}
.work-copy .section-copy{
    max-width:520px;
}
.work-copy .btn{
    margin-top:28px;
}
.work-features{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
}
.work-feature{
    min-height:150px;
    padding:24px;
    border:1px solid var(--line);
    border-radius:18px;
    background:#fff;
    transition:.3s ease;
}
.work-feature:hover{
    transform:translateY(-6px);
    border-color:rgba(16,118,187,.22);
    box-shadow:0 18px 42px rgba(20,65,95,.09);
}
.work-feature i{
    width:46px;
    height:46px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:rgba(16,118,187,.08);
    color:var(--blue);
    font-size:21px;
}
.work-feature h3{
    margin-top:18px;
    color:var(--navy);
    font-size:16px;
}
.work-feature p{
    margin-top:7px;
    color:var(--muted);
    font-size:12px;
    line-height:1.55;
}
.work-benefits{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-top:30px;
}
.work-benefit{
    display:flex;
    align-items:center;
    gap:9px;
    padding:14px 15px;
    border-radius:12px;
    background:var(--soft);
    color:var(--ink);
    font-size:12px;
    font-weight:700;
}
.work-benefit i{
    color:var(--red);
}

@media(max-width:1000px){
    .awards-head,
    .work-head{
        display:block;
    }
    .awards-head .section-copy,
    .work-head .section-copy{
        margin-top:18px;
    }
    .awards-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .work-layout{
        grid-template-columns:1fr;
    }
}
@media(max-width:650px){
    .awards-grid{
        grid-template-columns:1fr;
    }
    .achievement-timeline{
        grid-template-columns:1fr;
        gap:18px;
        border-top:0;
    }
    .timeline-item{
        padding:0 0 0 28px;
    }
    .timeline-item:before{
        top:4px;
        left:0;
    }
    .work-features{
        grid-template-columns:1fr;
    }
    .work-benefits{
        grid-template-columns:1fr;
    }
}

/* Testimonials */
.testimonials {
    background: var(--soft);
    overflow: hidden;
}

.testimonial-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
    margin-bottom: 55px;
}

.testimonial-controls {
    display: flex;
    gap: 10px;
}

.testimonial-arrow {
    width: 46px;
    height: 46px;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: #fff;
    color: var(--navy);
    font-size: 18px;
    cursor: pointer;
    transition: .25s ease;
}

.testimonial-arrow:hover {
    border-color: var(--blue);
    background: var(--blue);
    color: #fff;
}

.testimonial-slider {
    overflow: hidden;
}

.testimonial-track {
    display: flex;
    transition: transform .55s cubic-bezier(.22,.61,.36,1);
}

.testimonial-card {
    flex: 0 0 calc(50% - 12px);
    min-height: 330px;
    margin-right: 24px;
    padding: 34px;
    border: 1px solid var(--line);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 20px 55px rgba(22, 65, 95, .08);
}

.testimonial-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.testimonial-stars {
    display: flex;
    gap: 4px;
    color: var(--red);
    font-size: 13px;
}

.testimonial-quote-icon {
    color: rgba(16, 118, 187, .13);
    font-size: 48px;
}

.testimonial-text {
    margin-top: 35px;
    color: var(--ink);
    font-size: 17px;
    line-height: 1.8;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 35px;
    padding-top: 24px;
    border-top: 1px solid var(--line);
}

.testimonial-avatar {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(16, 118, 187, .1);
    color: var(--blue);
    font-size: 14px;
    font-weight: 800;
}

.testimonial-author h3 {
    color: var(--navy);
    font-size: 15px;
    margin-bottom: 5px;
}

.testimonial-author p {
    color: var(--muted);
    font-size: 12px;
}

.testimonial-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 35px;
}

.testimonial-dot {
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 99px;
    background: #c7d4de;
    cursor: pointer;
    transition: .25s ease;
}

.testimonial-dot.active {
    width: 28px;
    background: var(--blue);
}

@media (max-width: 800px) {
    .testimonial-card {
        flex-basis: 100%;
        margin-right: 18px;
    }
}

@media (max-width: 650px) {
    .testimonial-head {
        align-items: flex-start;
    }

    .testimonial-card {
        min-height: auto;
        padding: 25px;
    }

    .testimonial-text {
        font-size: 15px;
    }

    .testimonial-controls {
        display: none;
    }
}


.cta{
    padding:100px 0;
    background:#ffffff;
}

.cta-card{

    position:relative;

    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:60px;

    padding:60px;

    border-radius:30px;

    background:#ffffff;

    border:1px solid #e8edf3;

    box-shadow:
        0 25px 60px rgba(20,45,75,.08);

    overflow:hidden;
}

.cta-card::before{

    content:"";

    position:absolute;

    width:320px;
    height:320px;

    top:-180px;
    right:-120px;

    border-radius:50%;

    background:rgba(16,118,187,.06);

}

.cta-card::after{

    content:"";

    position:absolute;

    width:220px;
    height:220px;

    bottom:-120px;
    left:-80px;

    border-radius:50%;

    background:rgba(239,98,105,.05);

}

.cta-left{

    position:relative;
    z-index:2;
    max-width:700px;

}

.cta-label{

    display:inline-block;

    padding:7px 16px;

    margin-bottom:18px;

    border-radius:40px;

    background:#edf7fd;

    color:#1076BB;

    font-size:11px;

    font-weight:700;

    letter-spacing:1.5px;

    text-transform:uppercase;

}

.cta-left h2{

    margin-bottom:18px;

    color:#0f2238;

    font-size:46px;

    line-height:1.15;

}

.cta-left p{

    max-width:560px;

    color:#6f7d8d;

    line-height:1.8;

    font-size:16px;

}

.cta-right{

    position:relative;
    z-index:2;

}

.cta-right .btn{

    padding:18px 34px;

    border-radius:14px;

    font-size:15px;

    font-weight:700;

    white-space:nowrap;

}

@media(max-width:991px){

    .cta-card{

        flex-direction:column;

        text-align:center;

        padding:45px 30px;

    }

    .cta-left{

        max-width:100%;

    }

    .cta-left p{

        margin:auto;

    }

}

@media(max-width:600px){

    .cta{

        padding:70px 0;

    }

    .cta-card{

        padding:35px 24px;

        border-radius:22px;

    }

    .cta-left h2{

        font-size:32px;

    }

    .cta-left p{

        font-size:15px;

    }

    .cta-right{

        width:100%;

    }

    .cta-right .btn{

        width:100%;
        justify-content:center;

    }

}


.airiq-footer{
    position:relative;
    overflow:hidden;
    margin-top:80px;
    padding:120px 0 28px;
    background:#eaf6fd;
    color:#17324d;
}

.airiq-footer-wave{
    position:absolute;
    top:-1px;
    left:-5%;
    width:110%;
    height:125px;
    background:#ffffff;
    border-radius:0 0 50% 50% / 0 0 100% 100%;
    transform:translateY(-52%);
}

/* subtle AIR iQ accent */
.airiq-footer::before{
    content:"";
    position:absolute;
    top:0;
    right:-120px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:rgba(239,98,105,.08);
}

.airiq-footer::after{
    content:"";
    position:absolute;
    left:-150px;
    bottom:-190px;
    width:380px;
    height:380px;
    border-radius:50%;
    background:rgba(16,118,187,.08);
}

.airiq-footer-content{
    position:relative;
    z-index:2;
}

.airiq-footer-grid{
    display:grid;
   grid-template-columns: 1.4fr repeat(2, 1fr);
    gap:55px;
}

.airiq-footer-column h4,
.airiq-follow h4{
    margin-bottom:20px;
    color:#0d2944;
    font-size:15px;
    font-weight:800;
}

.airiq-footer-column ul{
    list-style:none;
    padding:0;
    margin:0;
}

.airiq-footer-column li{
    margin-bottom:13px;
}

.airiq-footer-column a{
    color:#46647e;
    font-size:13px;
    transition:.25s ease;
}

.airiq-footer-column a:hover{
    color:#1076bb;
    padding-left:4px;
}

/* Newsletter */

.airiq-footer-newsletter h3{
    margin-bottom:10px;
    color:#0d2944;
    font-family:Manrope,sans-serif;
    font-size:24px;
}

.airiq-footer-newsletter p{
    max-width:390px;
    margin-bottom:24px;
    color:#5e768a;
    font-size:13px;
    line-height:1.65;
}

.airiq-newsletter-form{
    display:flex;
    align-items:center;
    padding-bottom:10px;
    border-bottom:1px solid rgba(13,41,68,.35);
}

.airiq-newsletter-form input{
    flex:1;
    border:0;
    outline:0;
    background:transparent;
    color:#0d2944;
    font-family:Inter,sans-serif;
    font-size:13px;
}

.airiq-newsletter-form input::placeholder{
    color:#8196a7;
}

.airiq-newsletter-form button{
    border:0;
    background:transparent;
    color:#1076bb;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    cursor:pointer;
}

.airiq-newsletter-form button:hover{
    color:#ef6269;
}

.airiq-follow{
    margin-top:30px;
}

.airiq-social-icons{
    display:flex;
    gap:10px;
}

.airiq-social-icons a{
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#0d2944;
    color:#ffffff;
    transition:.25s ease;
}

.airiq-social-icons a:hover{
    background:#1076bb;
    transform:translateY(-4px);
}

/* Bottom */

.airiq-footer-bottom{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:30px;
    margin-top:60px;
    padding-top:22px;
    border-top:1px solid rgba(13,41,68,.1);
}

.airiq-footer-brand{
    display:flex;
    align-items:center;
    gap:18px;
}

.airiq-footer-brand img{
    width:95px;
}

.airiq-footer-brand span{
    color:#667f92;
    font-size:11px;
}

.airiq-footer-legal{
    display:flex;
    align-items:center;
    gap:10px;
}

.airiq-footer-legal a,
.airiq-footer-legal span{
    color:#667f92;
    font-size:11px;
}

.airiq-footer-legal a:hover{
    color:#1076bb;
}

/* Tablet */

@media(max-width:1000px){

    .airiq-footer-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

/* Mobile */

@media(max-width:650px){

    .airiq-footer{
        padding-top:95px;
    }

    .airiq-footer-wave{
        height:85px;
    }

    .airiq-footer-grid{
        grid-template-columns:1fr;
        gap:35px;
    }

    .airiq-footer-bottom{
        flex-direction:column;
        align-items:flex-start;
    }

    .airiq-footer-legal{
        flex-wrap:wrap;
    }

    .airiq-footer-brand{
        flex-direction:column;
        align-items:flex-start;
    }

}

/* =========================================================
   FINAL RESPONSIVE FIXES
   Desktop design remains unchanged
========================================================= */

html,
body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
}

body{
    position:relative;
}

img,
svg,
video,
iframe{
    max-width:100%;
}

section,
main,
footer{
    max-width:100%;
}

.platform-showcase,
.platform-visual,
.ecosystem-v2,
.ecosystem-board,
.api,
.why,
.metrics,
.cta,
.airiq-footer{
    overflow:hidden;
}

.api-grid,
.api-grid > *,
.why-grid > *{
    min-width:0;
}

.api .section-title,
.api .section-copy,
.why-title{
    word-break:normal;
    overflow-wrap:normal;
    hyphens:none;
}

.code-card{
    width:100%;
    min-width:0;
    overflow:hidden;
}

.code-body{
    width:100%;
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    white-space:normal;
    -webkit-overflow-scrolling:touch;
}

.code-body > div{
    min-width:max-content;
}

.metric-grid{
    width:100%;
}

.metric{
    min-width:0;
}

.airiq-footer-wave{
    left:0;
    width:100%;
}

@media(max-width:1000px){

    .api-grid{
        grid-template-columns:1fr;
        gap:42px;
    }

    .api .section-title,
    .api .section-copy{
        max-width:100%;
    }

    .why-grid{
        grid-template-columns:1fr;
        gap:32px;
        margin-top:45px;
    }

    .why-list{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .metric-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .metric{
        border-right:1px solid var(--line);
        border-bottom:1px solid var(--line);
    }

    .metric:nth-child(2n){
        border-right:0;
    }

    .metric:nth-last-child(-n+2){
        border-bottom:0;
    }
}

@media(max-width:650px){

    .container{
        width:min(100% - 28px,1200px);
    }

    .section{
        padding:72px 0;
    }

    /* Metrics: exact 2 x 2 grid */
    .metric-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .metric{
        padding:28px 10px;
        border-right:1px solid var(--line);
        border-bottom:1px solid var(--line);
    }

    .metric:nth-child(2n){
        border-right:0;
    }

    .metric:nth-last-child(-n+2){
        border-bottom:0;
    }

    .metric strong{
        font-size:32px;
        line-height:1;
        white-space:nowrap;
    }

    .metric span{
        margin-top:9px;
        font-size:9px;
        line-height:1.45;
        letter-spacing:.8px;
    }

    /* FAST. SMART. CONNECTED. */
    .why{
        padding:72px 0;
    }

    .why-title{
        font-size:clamp(46px,15vw,72px);
        line-height:.9;
        letter-spacing:-3px;
    }

    .why-grid{
        display:flex;
        flex-direction:column;
        gap:28px;
        margin-top:42px;
    }

    .why-grid .section-copy{
        max-width:100%;
        margin-top:0;
        font-size:15px;
        line-height:1.75;
    }

    .why-list{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:12px;
    }

    .why-item{
        min-height:112px;
        padding:18px 14px;
        display:flex;
        align-items:flex-start;
        gap:9px;
        font-size:14px;
        line-height:1.35;
        word-break:normal;
        overflow-wrap:normal;
    }

    .why-item i{
        flex:0 0 auto;
        margin-right:0;
        margin-top:1px;
    }

    /* API section */
    .api{
        padding:72px 0;
    }

    .api-grid{
        grid-template-columns:1fr !important;
        gap:34px;
    }

    .api .section-title{
        font-size:clamp(36px,12vw,50px);
        line-height:1.05;
        letter-spacing:-2px;
        max-width:100%;
    }

    .api .section-copy{
        font-size:15px;
        line-height:1.75;
    }

    .code-card{
        padding:18px;
        border-radius:18px;
    }

    .code-head{
        font-size:11px;
        gap:12px;
    }

    .code-body{
        font-size:12px;
        line-height:1.8;
    }

    .hero-grid{
        padding-left:18px;
        padding-right:18px;
    }

    .platform-visual,
    .ecosystem-board,
    .cta-card{
        width:100%;
        max-width:100%;
    }
}

@media(max-width:420px){

    .metric{
        padding:24px 8px;
    }

    .metric strong{
        font-size:28px;
    }

    .metric span{
        font-size:8px;
        letter-spacing:.6px;
    }

    .why-list{
        gap:10px;
    }

    .why-item{
        min-height:50px;
        padding:16px 12px;
        font-size:13px;
    }
}
/* =========================================================
   ABOUT PAGE
   Cleaned and merged without duplicate global, navbar,
   CTA, footer, reveal, or shared responsive rules
========================================================= */

.active{
    color:var(--red) !important;
}

/* About company */
.about-header{
    display:grid;
    /* grid-template-columns:140px 1fr; */
    gap:70px;
    padding:50px 0;
    align-items:start;
}

.about-mini-nav{
    padding-top:95px;
}

.about-mini-nav span{
    display:block;
    font-size:15px;
    font-weight:700;
    color:var(--navy);
    line-height:1.6;
}

.about-company-content{
    max-width:1500px;
}

.about-main-title{
    margin:0 0 45px;
    font-family:Manrope,sans-serif;
    font-size:clamp(72px,8vw,120px);
    font-weight:800;
    line-height:.88;
    letter-spacing:-6px;
    color:var(--navy);
    text-transform:uppercase;
}

.about-description{
    max-width:1500px;
}

.about-description p{
    margin:0 0 30px;
    color:var(--muted);
    font-size:18px;
    line-height:1.9;
}

.about-description strong{
    color:var(--navy);
}

/* Vision */
.vision{
    padding:110px 70px;
    background:#fff;
}

.vision-grid{
    display:grid;
    grid-template-columns:70% 30%;
    gap:10px;
    align-items:center;
}

.vision-copy{
    position:relative;
    padding:40px 70px 40px 55px;
}

.vision-kicker{
    margin-bottom:25px;
    color:var(--blue);
    font-size:12px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.vision-copy blockquote{
    margin:0;
    max-width:760px;
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(34px,3.2vw,54px);
    font-style:italic;
    font-weight:600;
    line-height:1.18;
    letter-spacing:-1px;
    color:var(--navy);
}

.vision-author{
    margin-top:28px;
    color:#8a98a6;
    font-size:13px;
    letter-spacing:.3px;
}

.quote-mark{
    position:absolute;
    font-family:Georgia,serif;
    font-size:82px;
    line-height:1;
    color:var(--navy);
    opacity:.9;
}

.quote-open{
    left:0;
    top:0;
}

.quote-close{
    right:15px;
    bottom:-10px;
}

.vision-image{
    height:280px;
    overflow:hidden;
    border-radius:4px;
}

.vision-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:.4s ease;
}

.vision-image:hover img{
    transform:scale(1.05);
}

/* Group of companies */
.group-companies-section{
    position:relative;
    padding:115px 0;
    overflow:hidden;
    background:
        radial-gradient(circle at 10% 20%,rgba(16,118,187,.06),transparent 30%),
        radial-gradient(circle at 90% 80%,rgba(239,98,105,.055),transparent 30%),
        #f8fafc;
}

.group-heading{
    max-width:780px;
    margin:0 auto 70px;
    text-align:center;
}

.group-heading .section-copy{
    max-width:670px;
    margin:20px auto 0;
}

.group-orbit-wrapper{
    position:relative;
    width:100%;
    min-height:690px;
    overflow:hidden;
    border:1px solid rgba(20,41,66,.08);
    border-radius:38px;
    background:
        linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.9)),
        radial-gradient(rgba(16,118,187,.12) 1px,transparent 1px);
    background-size:auto,25px 25px;
    box-shadow:0 30px 80px rgba(18,49,79,.08);
}

.group-orbit-bg{
    position:absolute;
    top:50%;
    left:50%;
    border-radius:50%;
    transform:translate(-50%,-50%);
    pointer-events:none;
}

.orbit-bg-one{
    width:470px;
    height:470px;
    border:1px dashed rgba(16,118,187,.28);
    animation:groupOrbitRotate 35s linear infinite;
}

.orbit-bg-two{
    width:580px;
    height:580px;
    border:1px dashed rgba(239,98,105,.17);
    animation:groupOrbitRotateReverse 45s linear infinite;
}

@keyframes groupOrbitRotate{
    to{transform:translate(-50%,-50%) rotate(360deg)}
}

@keyframes groupOrbitRotateReverse{
    to{transform:translate(-50%,-50%) rotate(-360deg)}
}

.group-connection-lines{
    position:absolute;
    inset:0;
    z-index:1;
    width:100%;
    height:100%;
    pointer-events:none;
}

.connection-path{
    fill:none;
    stroke:rgba(16,118,187,.25);
    stroke-width:1.7;
    stroke-dasharray:7 9;
    animation:groupLineFlow 10s linear infinite;
    transition:.3s ease;
}

@keyframes groupLineFlow{
    to{stroke-dashoffset:-160}
}

.group-orbit-wrapper[data-active="airiq-online"] .path-top,
.group-orbit-wrapper[data-active="airiq-365"] .path-right,
.group-orbit-wrapper[data-active="udaan-holidays"] .path-bottom,
.group-orbit-wrapper[data-active="udaan-hotels"] .path-left{
    stroke:var(--red);
    stroke-width:2.5;
}

.group-center{
    position:absolute;
    top:50%;
    left:50%;
    z-index:5;
    width:240px;
    height:240px;
    transform:translate(-50%,-50%);
    border-radius:50%;
    padding:12px;
    background:rgba(255,255,255,.75);
    border:1px solid rgba(16,118,187,.15);
    box-shadow:
        0 25px 70px rgba(16,118,187,.22),
        0 0 0 18px rgba(16,118,187,.035);
    backdrop-filter:blur(12px);
}

.group-center-inner{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    border-radius:50%;
    color:#fff;
    background:linear-gradient(145deg,#0d6ca8,var(--blue) 58%,#238fd0);
}

.group-center-inner span{
    display:block;
    margin-bottom:12px;
    font-size:11px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
    color:rgba(255,255,255,.72);
}

.group-center-inner h3{
    margin:0;
    font-family:Manrope,sans-serif;
    font-size:30px;
    line-height:1.04;
    letter-spacing:-1.3px;
}

.group-center-inner small{
    display:block;
    margin-top:15px;
    font-size:10px;
    letter-spacing:.8px;
    color:rgba(255,255,255,.7);
}

.company-node{
    position:absolute;
    z-index:6;
    width:245px;
    min-height:150px;
    padding:22px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(20,41,66,.1);
    border-radius:25px;
    background:rgba(255,255,255,.95);
    box-shadow:0 17px 45px rgba(18,49,79,.1);
    cursor:pointer;
    font-family:Inter,sans-serif;
    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease,
        background .35s ease;
}

.company-node:hover,
.company-node.active{
    transform:translateY(-9px);
    border-color:rgba(239,98,105,.42);
    box-shadow:0 27px 60px rgba(18,49,79,.17);
    background:#fff;
}

.company-top{
    top:42px;
    left:50%;
    transform:translateX(-50%);
}

.company-top:hover,
.company-top.active{
    transform:translateX(-50%) translateY(-9px);
}

.company-right{
    top:50%;
    right:60px;
    transform:translateY(-50%);
}

.company-right:hover,
.company-right.active{
    transform:translateY(calc(-50% - 9px));
}

.company-bottom{
    bottom:42px;
    left:50%;
    transform:translateX(-50%);
}

.company-bottom:hover,
.company-bottom.active{
    transform:translateX(-50%) translateY(-9px);
}

.company-left{
    top:50%;
    left:60px;
    transform:translateY(-50%);
}

.company-left:hover,
.company-left.active{
    transform:translateY(calc(-50% - 9px));
}

.company-logo{
    min-height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--navy2);
}

.company-logo img{
    height:35px;
}

.company-logo-airiq{
    font-family:Manrope,sans-serif;
    font-size:31px;
    font-weight:800;
    letter-spacing:-1.6px;
}

.company-logo-airiq span{
    color:var(--blue);
}

.company-logo-airiq strong{
    color:var(--red);
}

.company-logo-365{
    gap:7px;
    font-family:Manrope,sans-serif;
}

.company-logo-365 span{
    color:var(--blue);
    font-size:22px;
    font-weight:800;
}

.company-logo-365 strong{
    color:var(--red);
    font-size:29px;
}

.company-logo-hotels,
.company-logo-holidays{
    gap:10px;
}

.company-logo-hotels i,
.company-logo-holidays i{
    color:#ef9f26;
    font-size:31px;
}

.company-logo-hotels span,
.company-logo-holidays span{
    display:block;
    color:#e19019;
    font-family:Manrope,sans-serif;
    font-size:20px;
    font-weight:800;
    line-height:1;
}

.company-logo-hotels strong,
.company-logo-holidays strong{
    display:block;
    margin-top:4px;
    color:#526678;
    font-size:9px;
    letter-spacing:1.1px;
    text-transform:uppercase;
}

.company-node-text{
    margin-top:17px;
    text-align:center;
}

.company-node-text h3{
    margin:0 0 6px;
    color:var(--navy2);
    font-size:15px;
    font-weight:800;
}

.company-node-text span{
    display:block;
    color:#768595;
    font-size:10px;
    letter-spacing:.45px;
}

.company-node-plus{
    position:absolute;
    right:15px;
    bottom:15px;
    width:27px;
    height:27px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--blue);
    background:#eef7fd;
    font-size:12px;
    transition:.3s ease;
}

.company-node:hover .company-node-plus,
.company-node.active .company-node-plus{
    color:#fff;
    background:var(--red);
    transform:rotate(45deg);
}

.group-floating-label{
    position:absolute;
    z-index:2;
    color:#91a0ae;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.label-one{top:120px;left:110px}
.label-two{top:130px;right:100px}
.label-three{left:105px;bottom:110px}
.label-four{right:95px;bottom:110px}

.company-detail-close{
    position:absolute;
    top:20px;
    right:20px;
    z-index:3;
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    border:1px solid #e4ebf0;
    border-radius:50%;
    color:var(--navy2);
    background:#fff;
    cursor:pointer;
    transition:.25s ease;
}

.company-detail-close:hover{
    color:#fff;
    background:var(--red);
    border-color:var(--red);
}

.company-detail-number{
    margin-bottom:10px;
    color:var(--red);
    font-family:Manrope,sans-serif;
    font-size:12px;
    font-weight:800;
    letter-spacing:1.3px;
}

.company-detail-category{
    margin-bottom:9px;
    color:var(--blue);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

.company-detail-panel h3{
    position:relative;
    z-index:2;
    margin:0;
    color:var(--navy2);
    font-family:Manrope,sans-serif;
    font-size:33px;
    letter-spacing:-1px;
}

.company-detail-panel p{
    position:relative;
    z-index:2;
    max-width:620px;
    margin:17px 0 0;
    color:var(--muted);
    font-size:14px;
    line-height:1.8;
}

.company-detail-link{
    position:relative;
    z-index:2;
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-top:22px;
    color:var(--blue);
    font-size:12px;
    font-weight:800;
}

.company-detail-link i{
    transition:.25s ease;
}

.company-detail-link:hover{
    color:var(--red);
}

.company-detail-link:hover i{
    transform:translateX(5px);
}

.company-desc{
    max-height:0;
    opacity:0;
    overflow:hidden;
    transition:.4s;
}

.company-node:hover .company-desc{
    max-height:120px;
    opacity:1;
    margin-top:15px;
}

/* Our team */
.our-team-section{
    padding:110px 0;
    background:#fff;
}

.our-team-title{
    margin:18px 0 35px;
    max-width:700px;
    font-family:Manrope,sans-serif;
    font-size:clamp(42px,5vw,68px);
    font-weight:800;
    line-height:1.1;
    letter-spacing:-2px;
    color:var(--navy);
}

.our-team-content{
    width:100%;
}

.our-team-content p{
    margin:0 0 28px;
    max-width:100%;
    color:var(--muted);
    font-size:18px;
    line-height:1.9;
}

.our-team-content p:last-child{
    margin-bottom:0;
}

/* India presence */
.presence-section{
    position:relative;
    padding:110px 0;
    overflow:hidden;
    background:#f6f9fc;
}

.presence-heading{
    position:relative;
    z-index:2;
    max-width:850px;
    margin-bottom:55px;
}

.presence-layout{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:42% 58%;
    gap:28px;
    align-items:stretch;
}

.network-panel{
    min-height:700px;
    padding:60px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    border-radius:28px;
    color:#fff;
    background:linear-gradient(180deg,#1d6da7 0%,#1f85c9 100%);
}

.network-tag{
    display:inline-flex;
    padding:8px 14px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;
    background:rgba(255,255,255,.09);
    color:rgba(255,255,255,.9);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.network-panel h3{
    max-width:500px;
    margin:28px 0 20px;
    font-family:Manrope,sans-serif;
    font-size:clamp(32px,3.1vw,48px);
    line-height:1.08;
    letter-spacing:-2px;
}

.network-panel > p{
    max-width:520px;
    margin:0;
    color:rgba(255,255,255,.76);
    font-size:15px;
    line-height:1.85;
}

.network-stats{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
    margin-top:34px;
}

.network-stat{
    min-height:105px;
    padding:19px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:16px;
    background:rgba(255,255,255,.08);
}

.network-stat strong{
    display:block;
    font-family:Manrope,sans-serif;
    font-size:27px;
    line-height:1;
}

.network-stat span{
    display:block;
    margin-top:9px;
    color:rgba(255,255,255,.68);
    font-size:11px;
}

.office-details{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin-top:20px;
    padding:19px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:16px;
    background:rgba(5,47,76,.25);
}

.office-icon{
    width:44px;
    height:44px;
    flex:0 0 44px;
    display:grid;
    place-items:center;
    border-radius:13px;
    color:#fff;
    background:var(--red);
    font-size:18px;
}

.office-details span{
    display:block;
    margin-bottom:5px;
    color:rgba(255,255,255,.62);
    font-size:9px;
    font-weight:800;
    letter-spacing:1.2px;
    text-transform:uppercase;
}

.office-details h4{
    margin:0;
    color:#fff;
    font-size:16px;
}

.office-details p{
    margin:7px 0 0;
    color:rgba(255,255,255,.67);
    font-size:11px;
    line-height:1.6;
}

.map-panel{
    padding:28px;
    display:flex;
    flex-direction:column;
    border:1px solid rgba(20,41,66,.09);
    border-radius:28px;
    background:#fff;
    box-shadow:0 28px 70px rgba(18,49,79,.08);
}

.map-panel-header{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:20px;
    margin-bottom:22px;
}

.map-panel-header span{
    display:block;
    color:var(--blue);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

.map-panel-header h3{
    margin:6px 0 0;
    color:var(--navy2);
    font-family:Manrope,sans-serif;
    font-size:28px;
}

.map-panel-header small{
    margin-top:4px;
    color:#8a98a6;
    font-size:10px;
}

.india-map-stage{
    position:relative;
    width:100%;
    height:540px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border-radius:22px;
    background:#fff;
}

.india-map-photo{
    width:100%;
    height:100%;
    display:block;
    object-fit:contain;
    object-position:center;
}

.location-marker{
    position:absolute;
    z-index:10;
    width:28px;
    height:28px;
    padding:0;
    margin:0;
    border:0;
    background:transparent;
    cursor:pointer;
    transform:translate(-50%,-50%);
}

.marker-ripple{
    display:none;
}

.marker-dot{
    display:flex;
    align-items:center;
    justify-content:center;
    background:none;
    box-shadow:none;
    border:0;
}

.location-marker i,
.marker-dot i{
    font-size:18px;
    color:var(--red);
    transition:.25s ease;
    text-shadow:0 2px 8px rgba(0,0,0,.15);
}

.location-marker:hover i,
.location-marker.active i,
.location-marker:hover .marker-dot i,
.location-marker.active .marker-dot i{
    color:var(--blue);
    transform:scale(1.08);
}

.marker-delhi{
    top:29%;
    left:35%;
}

.marker-siliguri{
    top:41%;
    left:62%;
}

.marker-tooltip{
    position:absolute;
    left:50%;
    bottom:22px;
    transform:translateX(-50%);
    padding:4px 10px;
    border-radius:20px;
    background:#fff;
    color:var(--navy2);
    font-size:10px;
    font-weight:600;
    white-space:nowrap;
    box-shadow:0 4px 12px rgba(0,0,0,.12);
    opacity:0;
    pointer-events:none;
    transition:.25s;
}

.location-marker:hover .marker-tooltip,
.location-marker.active .marker-tooltip{
    opacity:1;
}

.map-office-buttons{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
    margin-top:18px;
}

.map-office-button{
    display:flex;
    align-items:center;
    gap:12px;
    padding:15px;
    border:1px solid #e1e9ef;
    border-radius:14px;
    color:#546677;
    background:#fff;
    text-align:left;
    cursor:pointer;
    transition:.25s ease;
}

.map-office-button i{
    width:38px;
    height:38px;
    flex:0 0 38px;
    display:grid;
    place-items:center;
    border-radius:11px;
    color:var(--blue);
    background:#edf7fd;
    font-size:16px;
}

.map-office-button small{
    display:block;
    margin-bottom:4px;
    color:#8a98a6;
    font-size:9px;
    font-weight:700;
    letter-spacing:.7px;
    text-transform:uppercase;
}

.map-office-button span{
    color:var(--navy2);
    font-size:13px;
    font-weight:800;
}

.map-office-button:hover,
.map-office-button.active{
    border-color:var(--blue);
    box-shadow:0 12px 30px rgba(16,118,187,.10);
}

.map-office-button.active i{
    color:#fff;
    background:var(--blue);
}

/* About page responsive */
@media(max-width:1100px){
    .group-orbit-wrapper{
        min-height:auto;
        padding:45px;
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:20px;
    }

    .group-center{
        position:relative;
        top:auto;
        left:auto;
        grid-column:1 / -1;
        width:220px;
        height:220px;
        margin:0 auto 15px;
        transform:none;
    }

    .group-orbit-bg,
    .group-connection-lines,
    .group-floating-label{
        display:none;
    }

    .company-node{
        position:relative;
        top:auto;
        right:auto;
        bottom:auto;
        left:auto;
        width:100%;
        min-height:170px;
        transform:none;
    }

    .company-node:hover,
    .company-node.active,
    .company-top:hover,
    .company-top.active,
    .company-right:hover,
    .company-right.active,
    .company-bottom:hover,
    .company-bottom.active,
    .company-left:hover,
    .company-left.active{
        transform:translateY(-7px);
    }
}

@media(max-width:1050px){
    .presence-layout{
        grid-template-columns:1fr;
    }

    .india-map-stage{
        height:620px;
    }
}

@media(max-width:1000px){
    .about-header{
        grid-template-columns:1fr;
        gap:28px;
    }

    .about-mini-nav{
        padding-top:0;
    }

    .vision-grid{
        grid-template-columns:1fr;
        gap:45px;
    }

    .vision-copy{
        padding:40px 40px 40px 45px;
    }

    .vision-image{
        height:360px;
    }
}

@media(max-width:768px){
    .our-team-section{
        padding:80px 0;
    }

    .our-team-title{
        font-size:38px;
        margin-bottom:25px;
    }

    .our-team-content p{
        font-size:16px;
        line-height:1.8;
    }
}

@media(max-width:650px){
    .about-main-title{
        font-size:56px;
        line-height:.92;
        letter-spacing:-4px;
    }

    .about-description p{
        font-size:16px;
        line-height:1.8;
    }

    .vision{
        padding:70px 0;
    }

    .vision-copy{
        padding:35px 20px 35px 35px;
    }

    .vision-copy blockquote{
        font-size:30px;
    }

    .quote-mark{
        font-size:60px;
    }

    .vision-image{
        height:240px;
    }

    .group-companies-section{
        padding:80px 0;
    }

    .group-heading{
        margin-bottom:40px;
    }

    .group-orbit-wrapper{
        padding:22px;
        grid-template-columns:1fr;
        border-radius:25px;
    }

    .group-center{
        grid-column:1;
        width:190px;
        height:190px;
    }

    .group-center-inner h3{
        font-size:25px;
    }

    .company-detail-panel{
        padding:32px 28px;
    }

    .company-detail-panel h3{
        font-size:28px;
    }

    .presence-section{
        padding:80px 0;
    }

    .network-panel{
        min-height:auto;
        padding:30px 24px;
        border-radius:22px;
    }

    .network-panel h3{
        font-size:34px;
    }

    .network-stats{
        grid-template-columns:repeat(2,1fr);
    }

    .map-panel{
        padding:18px;
        border-radius:22px;
    }

    .map-panel-header{
        flex-direction:column;
    }

    .india-map-stage{
        height:430px;
        border-radius:17px;
    }

    .map-office-buttons{
        grid-template-columns:1fr;
    }
}

@media(max-width:450px){
    .network-stats{
        grid-template-columns:1fr;
    }

    .office-details{
        flex-direction:column;
    }

    .india-map-stage{
        height:370px;
    }
}

/* =========================================================
   PARTNER PAGE
   Cleaned and merged without duplicate global, navbar,
   CTA, footer, button, or shared responsive rules
========================================================= */

.onboarding-section{position:relative;padding:105px 0 120px;overflow:hidden;background:#fff}
.onboarding-section::before{content:"";position:absolute;width:360px;height:360px;right:-160px;top:70px;border-radius:50%;background:rgba(16,118,187,.05)}
.onboarding-section::after{content:"";position:absolute;width:300px;height:300px;left:-160px;bottom:70px;border-radius:50%;background:rgba(239,98,105,.04)}
.onboarding-head{position:relative;z-index:2;max-width:760px;margin-bottom:72px}
.onboarding-kicker{display:inline-flex;align-items:center;padding:8px 15px;border-radius:999px;background:#edf7fd;color:var(--blue);font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}
.onboarding-head h1{margin:22px 0 18px;font-family:Manrope,sans-serif;font-size:clamp(46px,6vw,78px);line-height:1.03;letter-spacing:-4px;color:var(--navy)}
.onboarding-head p{max-width:680px;color:var(--muted);font-size:17px;line-height:1.8}

.process-flow{position:relative;z-index:2;max-width:980px;margin:0 auto;padding:10px 0}
.process-flow::before{content:"";position:absolute;top:42px;bottom:42px;left:50%;width:2px;transform:translateX(-50%);background:repeating-linear-gradient(to bottom,#7db8dc 0,#7db8dc 8px,transparent 8px,transparent 16px)}
.process-row{position:relative;display:grid;grid-template-columns:1fr 86px 1fr;align-items:center;min-height:190px}
.process-row + .process-row{margin-top:18px}
.process-card{position:relative;width:100%;min-height:168px;padding:28px 30px 26px 86px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 46px rgba(18,49,79,.08);transition:.3s ease}
.process-card:hover{transform:translateY(-6px);border-color:rgba(16,118,187,.32);box-shadow:0 26px 58px rgba(18,49,79,.13)}
.process-row.left .process-card{grid-column:1}
.process-row.right .process-card{grid-column:3}
.process-row.left::after,.process-row.right::after{content:"";position:absolute;top:50%;width:44px;border-top:2px dashed #7db8dc}
.process-row.left::after{left:calc(50% - 43px)}
.process-row.right::after{left:50%}
.process-node{position:absolute;top:50%;left:50%;z-index:4;width:42px;height:42px;display:grid;place-items:center;border:5px solid #fff;border-radius:50%;color:#fff;background:var(--blue);box-shadow:0 0 0 2px #7db8dc,0 8px 20px rgba(16,118,187,.18);transform:translate(-50%,-50%);font-family:Manrope,sans-serif;font-size:12px;font-weight:800}
.process-row:nth-child(even) .process-node{background:var(--navy)}
.process-step{position:absolute;left:20px;top:22px;bottom:22px;width:44px;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;transform:rotate(180deg);border-radius:15px;background:var(--blue);color:#fff;font-size:9px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}
.process-row:nth-child(even) .process-step{background:var(--navy)}
.process-card h3{margin-bottom:11px;font-family:Manrope,sans-serif;font-size:22px;line-height:1.2;color:var(--navy)}
.process-card p{color:var(--muted);font-size:13px;line-height:1.7}
.process-icon{width:34px;height:34px;display:grid;place-items:center;margin-bottom:15px;border-radius:10px;background:#edf7fd;color:var(--blue);font-size:15px}
.process-row:nth-child(even) .process-icon{background:#f1f5f8;color:var(--navy)}
.process-row.final .process-card{border-color:rgba(16,118,187,.28);background:linear-gradient(145deg,#f7fcff,#fff)}

.register-cta{position:relative;z-index:2;margin-top:135px;text-align:center}
.register-cta p{margin-bottom:18px;color:var(--muted);font-size:15px}
.register-cta .btn{padding:16px 28px;border-radius:12px}

.partner-collage{position:relative;width:100%;max-width:1080px;height:360px;margin:0 auto 20px}
.collage-item{position:absolute;overflow:hidden;border-radius:18px;background:#edf3f7;box-shadow:0 16px 35px rgba(18,49,79,.10)}
.collage-item img{width:100%;height:100%;display:block;object-fit:cover;transition:.4s ease}
.collage-item:hover img{transform:scale(1.06)}
.item-1{width:125px;height:145px;top:55px;left:0}
.item-2{width:130px;height:105px;top:20px;left:145px}
.item-3{width:135px;height:180px;top:130px;left:145px}
.item-4{width:130px;height:215px;top:45px;left:300px}
.item-5{width:135px;height:235px;top:0;left:50%;transform:translateX(-50%)}
.item-6{width:130px;height:210px;top:45px;right:300px}
.item-7{width:135px;height:120px;top:20px;right:145px}
.item-8{width:135px;height:175px;top:155px;right:145px}
.item-9{width:125px;height:155px;top:60px;right:0}

.testimonial-heading{max-width:760px;margin:0 auto 65px;text-align:center}
.testimonial-label{display:inline-flex;padding:8px 16px;margin-bottom:18px;border:1px solid #dce8f0;border-radius:999px;color:var(--blue);background:#f8fbfd;font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}
.testimonial-heading h2{margin:0;font-family:Manrope,sans-serif;font-size:clamp(38px,4.5vw,62px);line-height:1.08;letter-spacing:-2.5px;color:var(--navy)}
.testimonial-heading p{max-width:650px;margin:20px auto 0;color:var(--muted);font-size:15px;line-height:1.8}

.testimonial-carousel{position:relative;display:flex;align-items:center;gap:18px;padding:0 60px}
.testimonial-carousel .testimonial-slider{position:relative;width:100%;overflow:hidden}
.testimonial-carousel .testimonial-track{display:flex;transition:transform .5s ease;will-change:transform}
.testimonial-carousel .testimonial-card{flex:0 0 calc(33.333% - 19px);min-height:0;margin-right:28px;padding:30px;border:1px solid #e4ebf0;border-radius:22px;background:#fff;box-shadow:none;transition:.3s ease}
.testimonial-carousel .testimonial-card:hover{transform:translateY(-6px);border-color:rgba(16,118,187,.35);box-shadow:0 24px 55px rgba(18,49,79,.10)}
.testimonial-rating{display:flex;gap:4px;margin-bottom:22px;color:#efb93f;font-size:13px}
.testimonial-carousel .testimonial-text{min-height:125px;margin:0;color:#5f6f7f;font-size:14px;line-height:1.8}
.testimonial-person{display:flex;align-items:center;gap:13px;margin-top:28px;padding-top:22px;border-top:1px solid #edf1f4}
.testimonial-person img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.testimonial-person h3{margin:0 0 4px;color:var(--navy);font-size:13px;font-weight:800}
.testimonial-person span{display:block;color:#8a98a6;font-size:10px}
.testimonial-carousel .testimonial-arrow{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border:1px solid #dfe8ef;border-radius:50%;color:var(--blue);background:#fff;font-size:18px;cursor:pointer;transition:.25s ease}
.testimonial-carousel .testimonial-arrow:hover{color:#fff;border-color:var(--blue);background:var(--blue);transform:translateY(-2px)}
.testimonial-carousel + .testimonial-dots,.testimonial-carousel .testimonial-dots{display:flex;justify-content:center;gap:8px;margin-top:30px}
.testimonial-carousel + .testimonial-dots .testimonial-dot,.testimonial-carousel .testimonial-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#cbd7df;cursor:pointer;transition:.25s ease}
.testimonial-carousel + .testimonial-dots .testimonial-dot.active,.testimonial-carousel .testimonial-dot.active{width:25px;border-radius:999px;background:var(--blue)}

@media(max-width:1000px){
    .process-flow{max-width:820px}
    .process-row{grid-template-columns:1fr 72px 1fr;min-height:185px}
    .process-row.left::after,.process-row.right::after{width:37px}
    .process-row.left::after{left:calc(50% - 36px)}
    .register-cta{margin-top:55px}
    .partner-collage{max-width:760px;height:330px}
    .item-1,.item-9{display:none}
    .item-2{left:20px}
    .item-3{left:20px;top:145px}
    .item-4{left:170px}
    .item-6{right:170px}
    .item-7,.item-8{right:20px}
}

@media(max-width:991px){
    .testimonial-carousel .testimonial-card{flex:0 0 calc(50% - 14px)}
}

@media(max-width:650px){
    .onboarding-section{padding:75px 0 90px}
    .onboarding-head{margin-bottom:44px}
    .onboarding-head h1{font-size:46px;letter-spacing:-2.5px}
    .onboarding-head p{font-size:15px}
    .process-flow{padding-left:44px}
    .process-flow::before{left:17px;transform:none}
    .process-row{display:block;min-height:auto;margin:0 0 28px}
    .process-row + .process-row{margin-top:0}
    .process-row.left .process-card,.process-row.right .process-card{width:100%}
    .process-row.left::after,.process-row.right::after{top:50%;left:-27px;width:27px}
    .process-node{left:-27px;width:34px;height:34px;border-width:4px;font-size:10px}
    .process-card{min-height:185px;padding:25px 22px 23px 76px}
    .process-step{left:16px;top:18px;bottom:18px;width:40px}
    .partner-collage{height:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:45px}
    .collage-item,.item-1,.item-2,.item-3,.item-4,.item-5,.item-6,.item-7,.item-8,.item-9{position:relative;top:auto;right:auto;bottom:auto;left:auto;display:block;width:100%;height:150px;transform:none}
    .item-5{grid-column:1 / -1;height:200px}
    .testimonial-heading{margin-bottom:40px}
    .testimonial-heading h2{font-size:38px}
    .testimonial-carousel{gap:8px;padding:0}
    .testimonial-carousel .testimonial-card{flex:0 0 100%;margin-right:16px;padding:24px}
    .testimonial-carousel .testimonial-arrow{width:38px;height:38px;flex-basis:38px;font-size:15px}
    .testimonial-carousel .testimonial-text{min-height:auto}
}

/* =========================================================
   SERVICES PAGE
   Cleaned and merged without duplicate global, navbar,
   buttons, footer, or shared responsive rules
========================================================= */

.services-page{
    position:relative;
    padding:105px 0 120px;
    overflow:hidden;
    background:
        radial-gradient(circle at 8% 10%,rgba(16,118,187,.07),transparent 28%),
        radial-gradient(circle at 92% 88%,rgba(239,98,105,.06),transparent 28%),
        #f8fafc;
}

.services-head{
    display:grid;
    grid-template-columns:1.25fr .75fr;
    gap:70px;
    align-items:end;
    margin-bottom:70px;
}

.services-kicker{
    display:inline-block;
    margin-bottom:17px;
    color:var(--blue);
    font-size:11px;
    font-weight:800;
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.services-head h1{
    max-width:780px;
    font-family:Manrope,sans-serif;
    font-size:clamp(52px,6.7vw,88px);
    line-height:.98;
    letter-spacing:-5px;
    color:var(--navy);
}

.services-head p{
    max-width:430px;
    margin-bottom:8px;
    color:var(--muted);
    font-size:16px;
    line-height:1.85;
}

.services-editorial{
    position:relative;
    z-index:2;
    border-top:1px solid var(--line);
}

.service-row{
    position:relative;
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:70px;
    min-height:430px;
    padding:76px 0;
    border-bottom:1px solid var(--line);
}

.service-row:nth-child(even) .service-number-large{
    grid-column:2;
    grid-row:1;
}

.service-row:nth-child(even) .service-copy{
    grid-column:1;
    grid-row:1;
}

.service-number-large{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:260px;
    font-family:Manrope,sans-serif;
    font-size:clamp(150px,18vw,250px);
    font-weight:800;
    line-height:.78;
    letter-spacing:-12px;
    color:transparent;
    -webkit-text-stroke:2px rgba(16,118,187,.38);
    user-select:none;
    transition:.35s ease;
}

.service-row:nth-child(even) .service-number-large{
    -webkit-text-stroke-color:rgba(239,98,105,.34);
}

.service-number-large::after{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    border-radius:50%;
    background:rgba(16,118,187,.045);
    filter:blur(2px);
    z-index:-1;
}

.service-row:nth-child(even) .service-number-large::after{
    background:rgba(239,98,105,.05);
}

.service-copy{
    max-width:560px;
}

.service-kicker{
    display:block;
    margin-bottom:13px;
    color:var(--blue);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.service-copy h2{
    margin:0;
    color:var(--navy);
    font-family:Manrope,sans-serif;
    font-size:clamp(34px,4vw,56px);
    line-height:1.06;
    letter-spacing:-2.4px;
}

.service-copy p{
    margin-top:22px;
    color:var(--muted);
    font-size:16px;
    line-height:1.9;
}

.service-row:hover .service-number-large{
    transform:translateY(-4px);
}

/* Services proof section */
.service-proof{
    padding:95px 0;
    background:#fff;
}

.proof-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
}

.proof-item{
    padding:34px 24px;
    text-align:center;
    border-right:1px solid var(--line);
}

.proof-item:last-child{
    border-right:0;
}

.proof-item strong{
    display:block;
    color:var(--navy);
    font-family:Manrope,sans-serif;
    font-size:40px;
}

.proof-item span{
    display:block;
    margin-top:9px;
    color:var(--muted);
    font-size:11px;
    font-weight:700;
    letter-spacing:.8px;
    text-transform:uppercase;
}

/* Services page responsive */
@media(max-width:1000px){
    .services-head{
        grid-template-columns:1fr;
        gap:25px;
    }

    .proof-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .proof-item:nth-child(2){
        border-right:0;
    }

    .proof-item:nth-child(-n+2){
        border-bottom:1px solid var(--line);
    }
}

@media(max-width:900px){
    .service-row,
    .service-row:nth-child(even){
        grid-template-columns:1fr;
        gap:20px;
        min-height:auto;
        padding:60px 0;
    }

    .service-row .service-number-large,
    .service-row:nth-child(even) .service-number-large,
    .service-row .service-copy,
    .service-row:nth-child(even) .service-copy{
        grid-column:1;
        grid-row:auto;
    }

    .service-number-large{
        min-height:150px;
        justify-content:flex-start;
        font-size:clamp(110px,28vw,180px);
        letter-spacing:-8px;
    }

    .service-copy{
        max-width:100%;
    }
}

@media(max-width:650px){
    .services-page{
        padding:78px 0 85px;
    }

    .services-head h1{
        font-size:49px;
        letter-spacing:-3px;
    }

    .service-row{
        padding:48px 0;
    }

    .service-number-large{
        min-height:110px;
        font-size:110px;
        letter-spacing:-6px;
        -webkit-text-stroke-width:1.5px;
    }

    .service-copy h2{
        font-size:36px;
    }

    .service-copy p{
        font-size:15px;
        line-height:1.8;
    }

    .service-proof{
        padding:70px 0;
    }

    .proof-grid{
        grid-template-columns:1fr;
    }

    .proof-item{
        border-right:0;
        border-bottom:1px solid var(--line);
    }

    .proof-item:last-child{
        border-bottom:0;
    }
}

/* =========================================================
   CONTACT PAGE
   Cleaned and merged without duplicate global, navbar,
   button, footer, or shared responsive rules
========================================================= */

/* =========================
   MAP
========================= */

.contact-map-section{
    padding:42px 0 0;
    background:#fff;
}

.map-heading{
    max-width:760px;
    margin-bottom:32px;
}

.eyebrow{
    display:inline-block;
    margin-bottom:13px;
    color:var(--blue);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.7px;
    text-transform:uppercase;
}

.map-heading h1{
    font-family:Manrope,sans-serif;
    font-size:clamp(44px,6vw,76px);
    line-height:1.02;
    letter-spacing:-4px;
    color:var(--navy);
}

.map-heading p{
    max-width:620px;
    margin-top:18px;
    color:var(--muted);
    font-size:16px;
    line-height:1.8;
}

.map-shell{
    height:520px;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:28px;
    background:var(--soft);
    box-shadow:0 25px 60px rgba(18,49,79,.08);
}

.map-shell iframe{
    width:100%;
    height:100%;
    border:0;
    display:block;
}

/* =========================
   CONTACT MAIN
========================= */

.contact-main{
    padding:110px 0;
    background:#fff;
}

.contact-grid{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:70px;
    align-items:stretch;
}

.contact-info-panel{
    position:relative;
    min-height:100%;
    padding:58px;
    overflow:hidden;
    border-radius:28px;
    color:#fff;
    background:
        radial-gradient(circle at 90% 10%,rgba(255,255,255,.15),transparent 30%),
        linear-gradient(145deg,#0b5d94,#1076bb 60%,#208fd0);
    box-shadow:0 28px 70px rgba(16,118,187,.20);
}

.contact-info-panel::after{
    content:"";
    position:absolute;
    right:-90px;
    bottom:-110px;
    width:260px;
    height:260px;
    border:1px solid rgba(255,255,255,.17);
    border-radius:50%;
}

.contact-tag{
    position:relative;
    z-index:2;
    display:inline-flex;
    padding:8px 14px;
    margin-bottom:24px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;
    color:rgba(255,255,255,.92);
    background:rgba(255,255,255,.08);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.contact-info-panel h2{
    position:relative;
    z-index:2;
    max-width:520px;
    font-family:Manrope,sans-serif;
    font-size:clamp(42px,4.5vw,64px);
    line-height:1.05;
    letter-spacing:-3px;
}

.contact-info-panel p{
    position:relative;
    z-index:2;
    max-width:540px;
    margin-top:24px;
    color:rgba(255,255,255,.76);
    font-size:16px;
    line-height:1.9;
}

.contact-points{
    position:relative;
    z-index:2;
    display:grid;
    gap:17px;
    margin-top:42px;
}

.contact-point{
    display:flex;
    align-items:flex-start;
    gap:13px;
    color:rgba(255,255,255,.86);
    font-size:14px;
    line-height:1.65;
}

.contact-point i{
    margin-top:2px;
    color:#fff;
    font-size:15px;
}

.contact-note{
    position:relative;
    z-index:2;
    margin-top:42px;
    padding-top:24px;
    border-top:1px solid rgba(255,255,255,.16);
    color:rgba(255,255,255,.62);
    font-size:12px;
    line-height:1.7;
}

/* Form */

.contact-form-panel{
    padding:52px;
    border:1px solid var(--line);
    border-radius:28px;
    background:#fff;
    box-shadow:0 25px 60px rgba(18,49,79,.08);
}

.form-tag{
    display:inline-block;
    margin-bottom:15px;
    color:var(--blue);
    font-size:10px;
    font-weight:800;
    letter-spacing:1.7px;
    text-transform:uppercase;
}

.contact-form-panel h2{
    font-family:Manrope,sans-serif;
    font-size:clamp(36px,3.7vw,52px);
    line-height:1.08;
    letter-spacing:-2px;
    color:var(--navy);
}

.contact-form-panel > p{
    max-width:530px;
    margin:17px 0 34px;
    color:var(--muted);
    font-size:15px;
    line-height:1.8;
}

.contact-form{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:17px;
}

.form-group.full{
    grid-column:1 / -1;
}

.form-control{
    width:100%;
    height:58px;
    padding:0 18px;
    border:1px solid #e2e9ef;
    border-radius:13px;
    outline:none;
    color:var(--navy);
    background:#fff;
    font-size:14px;
    transition:.25s ease;
}

textarea.form-control{
    height:165px;
    padding:18px;
    resize:none;
}

.form-control::placeholder{
    color:#98a6b3;
}

.form-control:focus{
    border-color:var(--blue);
    box-shadow:0 0 0 4px rgba(16,118,187,.08);
}

.contact-form select{
    cursor:pointer;
}

.contact-form .btn{
    grid-column:1 / -1;
    width:max-content;
    min-width:170px;
    padding:15px 24px;
    margin-top:5px;
    border-radius:11px;
}


/* =========================
   FAQ
========================= */

 .contact-reasons{
    padding:105px 0;
    background:#f7f9fc;
} 

.section-head{
    max-width:780px;
    margin:0 auto 52px;
    text-align:center;
}

.section-head h2{
    font-family:Manrope,sans-serif;
    font-size:clamp(38px,4.6vw,62px);
    line-height:1.08;
    letter-spacing:-2.5px;
    color:var(--navy);
}

.faq-section{
    padding:110px 0;
    background:#fff;
}

.faq-wrap{
    max-width:900px;
    margin:auto;
}

.faq-item{
    border-bottom:1px solid var(--line);
}

.faq-question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:25px 0;
    border:0;
    background:none;
    color:var(--navy);
    text-align:left;
    font-size:16px;
    font-weight:800;
    cursor:pointer;
}

.faq-question i{
    color:var(--blue);
    transition:.25s ease;
}

.faq-item.open .faq-question i{
    transform:rotate(45deg);
}

.faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .35s ease;
}

.faq-answer p{
    padding:0 50px 25px 0;
    color:var(--muted);
    font-size:14px;
    line-height:1.8;
}

/* Contact page responsive */
@media(max-width:1000px){
    .contact-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:650px){
    .contact-map-section{
        padding-top:28px;
    }

    .map-heading h1{
        font-size:48px;
        letter-spacing:-2.5px;
    }

    .map-shell{
        height:360px;
        border-radius:20px;
    }

    .contact-main,
    .contact-reasons,
    .faq-section{
        padding:78px 0;
    }

    .contact-info-panel,
    .contact-form-panel{
        padding:30px 23px;
        border-radius:22px;
    }

    .contact-form{
        grid-template-columns:1fr;
    }

    .form-group.full{
        grid-column:auto;
    }

    .contact-form .btn{
        width:100%;
    }

    .faq-answer p{
        padding-right:0;
    }
}

.logox{height: 45px;}



.group-orbit-wrapper {
  position: relative;
  width: 100%;
  max-width: 1200px;
  aspect-ratio: 1000 / 650;
  height: auto;
  margin: 0 auto;
  overflow: visible;
}
.group-orbit-wrapper .company-node.company-pos-1,
.group-orbit-wrapper .company-node.company-pos-2,
.group-orbit-wrapper .company-node.company-pos-3,
.group-orbit-wrapper .company-node.company-pos-4,
.group-orbit-wrapper .company-node.company-pos-5 {
  position: absolute;
  right: auto;
  bottom: auto;
}
.company-pos-1 { top: 17.5%; left: 50%;   transform: translate(-50%, -50%); }
.company-pos-2 { top: 40%;   left: 83.3%; transform: translate(-50%, -50%); }
.company-pos-3 { top: 76.3%; left: 70.6%; transform: translate(-50%, -50%); }
.company-pos-4 { top: 76.3%; left: 29.4%; transform: translate(-50%, -50%); }
.company-pos-5 { top: 40%;   left: 16.7%; transform: translate(-50%, -50%); }

.group-orbit-wrapper .group-connection-lines,
.group-orbit-wrapper .orbit-bg-one,
.group-orbit-wrapper .orbit-bg-two,
.group-orbit-wrapper .group-center {
  position: absolute;
  top: 50%;
  left: 50%;
}
.group-orbit-wrapper .group-connection-lines {
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
}
.group-orbit-wrapper .orbit-bg-one,
.group-orbit-wrapper .orbit-bg-two {
  transform: translate(-50%, -50%);
}
.group-orbit-wrapper .group-center {
  transform: translate(-50%, -50%);
}

/* Simple lift + soft shadow on hover — nothing else. Overrides any
   scale/border/color hover effect from Asset/css/style.css, which was
   replacing the centering transform and making cards look stretched. */
.group-orbit-wrapper .company-node {
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1),
              box-shadow 0.35s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
.group-orbit-wrapper .company-node.company-pos-1:hover,
.group-orbit-wrapper .company-node.company-pos-2:hover,
.group-orbit-wrapper .company-node.company-pos-3:hover,
.group-orbit-wrapper .company-node.company-pos-4:hover,
.group-orbit-wrapper .company-node.company-pos-5:hover {
  transform: translate(-50%, calc(-50% - 6px)) !important;
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.12) !important;
  border-color: transparent !important;
}

/* On narrow screens the pentagon math doesn't have room to breathe,
   so stack the 5 cards in a simple vertical list instead. */
@media (max-width: 768px) {
  .group-orbit-wrapper {
    aspect-ratio: auto;
    height: auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    padding: 24px 0;
  }
  .group-orbit-wrapper .group-connection-lines,
  .group-orbit-wrapper .orbit-bg-one,
  .group-orbit-wrapper .orbit-bg-two {
    display: none;
  }
  .group-orbit-wrapper .group-center {
    position: static;
    transform: none;
    order: -1;
    margin: 0 auto 8px;
  }
  .group-orbit-wrapper .company-node.company-pos-1,
  .group-orbit-wrapper .company-node.company-pos-2,
  .group-orbit-wrapper .company-node.company-pos-3,
  .group-orbit-wrapper .company-node.company-pos-4,
  .group-orbit-wrapper .company-node.company-pos-5 {
    position: static;
    top: auto;
    left: auto;
    transform: none;
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }
  .group-orbit-wrapper .company-node.company-pos-1:hover,
  .group-orbit-wrapper .company-node.company-pos-2:hover,
  .group-orbit-wrapper .company-node.company-pos-3:hover,
  .group-orbit-wrapper .company-node.company-pos-4:hover,
  .group-orbit-wrapper .company-node.company-pos-5:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.12) !important;
    border-color: transparent !important;
  }
}
