:root{--yellow:#FDD501;--yellow-soft:#F1DE5B;
    --blue:#214DA1;--blue-light:#4477BC;--blue-dark:
    #222E64;--black:#0C0D15;--white:#fff;--teal:#0aa39b;
    --muted:#6b7280;--radius:24px;--shadow:0 20px 60px rgba(12,13,21,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Montserrat',Arial,sans-serif;
    color:var(--black);background:#fff;overflow-x:hidden}.main-nav{padding:18px 0;transition:.35s ease;
        background:#0c0d151f;backdrop-filter:blur(14px)}.main-nav.scrolled{padding:10px 0;background:rgba(255,255,255,.96);box-shadow:0 10px 40px rgba(12,13,21,.08)}.navbar-brand img{height:64px;object-fit:contain}.main-nav .nav-link{font-weight:600;color:#fff!important}.main-nav.scrolled .nav-link{color:var(--black)!important}.btn-primary{background:linear-gradient(135deg,var(--yellow),var(--yellow-soft));border:0;color:var(--black);font-weight:700}.btn-primary:hover{filter:brightness(.96);color:var(--black)}.hero{position:relative;color:#fff;background:var(--black);overflow:hidden}.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 78% 25%,rgba(68,119,188,.55),transparent 28%),linear-gradient(135deg,rgba(12,13,21,.96),rgba(34,46,100,.92)),url('https://images.unsplash.com/photo-1451187580459-43490279c0fa?auto=format&fit=crop&w=1800&q=80') center/cover;opacity:1}.hero h1{font-size:clamp(42px,7vw,82px);font-weight:800;line-height:1.02;margin:22px 0}.lead{font-size:1.22rem;max-width:760px;color:rgba(255,255,255,.82)}.eyebrow,
        .section-tag{
            display:inline-flex;
            align-items:center;gap:10px;
            text-transform:uppercase;
            letter-spacing:.12em;
            font-weight:800;
            font-size:.98rem;
            color:var(--yellow)}.eyebrow:before,
        .section-tag:before
        {
            content:"";
            width:36px;
            height:4px;
            border-radius:6px;
            background:var(--yellow)
        }
        .hero-actions{
            display:flex;gap:14px;
            flex-wrap:wrap;margin:34px 0
        }
        .hero-points{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
        .hero-points span{padding:10px 15px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.06);font-weight:600}.hero-points i{color:var(--yellow)}.glass-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow);backdrop-filter:blur(20px);border-radius:var(--radius);padding:42px}.hero-logo{width:230px;max-width:100%;display:block;margin:0 auto 28px}.hero-card h3{font-weight:800}.hero-card p{color:rgba(255,255,255,.78)}.section{padding:105px 0}.section-light{background:#f8fafc}.section h2{font-size:clamp(30px,4vw,52px);font-weight:800;line-height:1.08;margin:16px 0 20px}.section p{color:#4b5563;line-height:1.8}.split-card{display:grid;grid-template-columns:1fr 1fr;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.split-item{padding:36px;background:var(--blue-light);color:#fff;min-height:300px}.split-item.dark{background:var(--blue-dark)}.split-item i,.feature-box i,.value-card i,.service-card i,.industry-card i{font-size:42px;color:var(--yellow);margin-bottom:20px;display:block}.split-item p,.feature-box p,.service-card p,.industry-card p{color:rgba(255,255,255,.78)}.feature-box{padding:42px;border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow);border-top:6px solid var(--yellow)}.dark-box{background:var(--blue-dark);color:#fff}.feature-box h4{font-weight:800}.dark-box p{color:rgba(255,255,255,.78)}.vision-section{background:linear-gradient(135deg,#fff,#eef4ff)}.value-section{background:linear-gradient(135deg,var(--blue-dark),var(--blue));color:#fff}.value-section h2{color:#fff}.choice-card{height:100%;min-height:245px;padding:34px;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);display:flex;flex-direction:column;justify-content:space-between}.choice-card.alt{background:rgba(10,163,155,.3)}.choice-card i{font-size:46px;color:var(--yellow)}.choice-card p{color:#fff;font-weight:600;margin:0}.value-card,.service-card,.industry-card{height:100%;padding:30px;border-radius:20px;background:#fff;box-shadow:0 12px 35px rgba(12,13,21,.08);transition:.3s ease}.value-card:hover,.service-card:hover,.industry-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.value-card h4,.service-card h3,.industry-card h4{font-weight:800}.value-card p,.industry-card p{color:#5b6471}.services{background:var(--black);color:#fff}.services h2{color:#fff}.service-card{background:linear-gradient(180deg,rgba(68,119,188,.22),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.12);box-shadow:none}.service-card ul{padding-left:18px;color:rgba(255,255,255,.78);line-height:1.9}.category-section{background:#fff}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-grid span{padding:20px;border-radius:18px;background:#f8fafc;border-left:5px solid var(--yellow);font-weight:700;color:var(--blue-dark);box-shadow:0 10px 24px rgba(12,13,21,.05)}.industry-card{border-bottom:5px solid var(--blue-light)}.industry-card i{color:var(--blue)}.region-section{background:linear-gradient(135deg,var(--blue-light),var(--blue-dark));color:#fff}.region-section p{color:rgba(255,255,255,.82)}.region-badge{border:2px solid rgba(255,255,255,.2);border-radius:var(--radius);padding:60px 30px;text-align:center;font-size:42px;font-weight:800;background:rgba(255,255,255,.08);color:var(--yellow);box-shadow:var(--shadow)}.partners{background:#f8fafc}.partner-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.partner-list span{padding:28px;border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(12,13,21,.07);font-weight:800;color:var(--blue-dark);border-left:6px solid var(--teal)}.cta{background:var(--black);color:#fff}.cta-box{background:linear-gradient(135deg,rgba(34,46,100,.95),rgba(33,77,161,.88));border-radius:32px;padding:56px;box-shadow:var(--shadow);position:relative;overflow:hidden}.cta-box:after{content:"";position:absolute;width:280px;height:280px;background:var(--yellow);border-radius:50%;right:-120px;top:-120px;opacity:.18}.cta p{color:rgba(255,255,255,.8)}.contact-card{position:relative;z-index:1;background:#fff;border-radius:22px;padding:30px;display:grid;gap:15px}.contact-card a,.contact-card p{color:var(--black);font-weight:700;text-decoration:none;margin:0}.contact-card i{color:var(--blue);margin-right:8px}.footer{background:#fff;padding:28px 0}.footer img{height:62px}.footer p{color:#596172;font-weight:600}@media(max-width:991px){.main-nav{background:#fff}.main-nav .nav-link{color:var(--black)!important}.navbar-brand img{height:54px}.section{padding:76px 0}.split-card,.category-grid,.partner-list{grid-template-columns:1fr}.cta-box{padding:34px}.hero{text-align:left}.hero-card{display:none}}@media(max-width:575px){.hero h1{font-size:40px}.hero-actions .btn{width:100%}.region-badge{font-size:32px;padding:42px 20px}}
.reveal{opacity:0;transform:translateY(24px);transition:.7s ease}.reveal.show{opacity:1;transform:none}
/* =================================
   Strategic Technology Partners
================================= */

.strategic-partners-intro {
    overflow: hidden;
    background: #ffffff;
}

.strategic-partners-content {
    display: flex;
    align-items: center;
    min-height: 540px;
    padding: 80px 7%;
    background:
        linear-gradient(
            135deg,
            rgba(17, 132, 163, 0.98),
            rgba(30, 153, 178, 0.98)
        );
    color: #ffffff;
}

.strategic-content-inner {
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
}

.strategic-partners-content p {
    margin: 0;
    color: #ffffff;
    font-size: 1.08rem;
    font-weight: 600;
    line-height: 1.8;
    text-align: center;
}

.light-tag {
    display: block;
    width: max-content;
    margin: 0 auto 25px;
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.3);
}

.strategic-partners-title {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 540px;
    padding: 80px 6%;
    background:
        radial-gradient(
            circle at 70% 50%,
            rgba(132, 199, 67, 0.08),
            transparent 48%
        ),
        #ffffff;
}

.strategic-title-inner {
    position: relative;
    width: 100%;
    text-align: center;
}

.strategic-title-inner h2 {
    margin: 0;
    color: #84c743;
    font-size: clamp(2.5rem, 4vw, 4.5rem);
    font-weight: 500;
    line-height: 1.1;
}

.strategic-line {
    display: block;
    width: 180px;
    height: 10px;
    margin: 0 auto 80px;
    background: linear-gradient(
        90deg,
        #1b95ac 0 45%,
        #84c743 45% 100%
    );
}

.strategic-logo {
    position: absolute;
    top: -45px;
    right: 0;
    width: 120px;
    height: auto;
}


/* =================================
   Future Together
================================= */

.future-together-section {
    overflow: hidden;
    background: #ffffff;
}

.future-heading {
    position: relative;
    padding: 85px 20px;
    background:
        linear-gradient(
            135deg,
            rgba(61, 116, 169, 0.97),
            rgba(75, 131, 183, 0.97)
        );
    text-align: center;
}

.future-heading::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 130px;
    height: 8px;
    background: #138da6;
}

.future-heading h2 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(2.2rem, 4vw, 4rem);
    font-weight: 700;
}

.future-content {
    position: relative;
    padding: 110px 20px;
    background:
        radial-gradient(
            circle at center,
            rgba(19, 141, 166, 0.08),
            transparent 55%
        ),
        #ffffff;
}

.future-content .container {
    max-width: 1000px;
}

.future-square {
    display: block;
    width: 58px;
    height: 28px;
    margin: 0 auto 22px;
    background: #2794b4;
}

.future-content h3 {
    margin-bottom: 18px;
    color: #2794b4;
    font-size: clamp(1.6rem, 2.4vw, 2.4rem);
    font-weight: 700;
}

.future-content p {
    max-width: 950px;
    margin: 0 auto;
    color: #2584a1;
    font-size: 1.1rem;
    font-weight: 600;
    line-height: 1.7;
}


/* =================================
   Responsive
================================= */

@media (max-width: 991px) {
    .strategic-partners-content,
    .strategic-partners-title {
        min-height: auto;
        padding: 70px 30px;
    }

    .strategic-line {
        margin-bottom: 50px;
    }

    .strategic-logo {
        position: static;
        display: block;
        width: 100px;
        margin: 40px auto 0;
    }
}

@media (max-width: 767px) {
    .strategic-partners-content,
    .strategic-partners-title {
        padding: 55px 20px;
    }

    .strategic-partners-content p {
        font-size: 0.98rem;
        text-align: justify;
    }

    .strategic-line {
        width: 130px;
        height: 8px;
        margin-bottom: 35px;
    }

    .future-heading {
        padding: 65px 20px;
    }

    .future-content {
        padding: 75px 20px;
    }

    .future-content p {
        font-size: 1rem;
    }
}

/*  */
 :root{
      --shouna-navy:#0c1837;
      --shouna-blue:#214da1;
      --shouna-sky:#2d95ad;
      --shouna-yellow:#fdd501;
      --shouna-green:#82c83e;
      --shouna-white:#ffffff;
      --shouna-ink:#0c0d15;
    }

    *{box-sizing:border-box}

    body{
      margin:0;
      font-family:"Montserrat",Arial,sans-serif;
      background:#f4f7fb;
      color:var(--shouna-ink);
    }

    .partners-experience{
      position:relative;
      overflow:hidden;
      padding:100px 0 0;
      background:
        radial-gradient(circle at 15% 15%, rgba(45,149,173,.18), transparent 28%),
        radial-gradient(circle at 88% 20%, rgba(253,213,1,.12), transparent 22%),
        linear-gradient(180deg,#f8fbff 0%,#eef4fb 100%);
    }

    .partners-experience::before{
      content:"";
      position:absolute;
      inset:0;
      background-image:
        linear-gradient(rgba(33,77,161,.055) 1px,transparent 1px),
        linear-gradient(90deg,rgba(33,77,161,.055) 1px,transparent 1px);
      background-size:42px 42px;
      mask-image:linear-gradient(to bottom,#000 0%,transparent 90%);
      pointer-events:none;
    }

    .partner-shell{
      position:relative;
      z-index:2;
      border:1px solid rgba(12,24,55,.08);
      border-radius:36px;
      overflow:hidden;
      background:rgba(255,255,255,.82);
      backdrop-filter:blur(18px);
      box-shadow:0 32px 80px rgba(12,24,55,.12);
    }

    .partner-copy{
      position:relative;
      min-height:560px;
      padding:72px 64px;
      color:#fff;
      background:
        linear-gradient(145deg,rgba(45,149,173,.98),rgba(33,77,161,.96));
      overflow:hidden;
    }

    .partner-copy::before,
    .partner-copy::after{
      content:"";
      position:absolute;
      border-radius:50%;
      border:1px solid rgba(255,255,255,.15);
    }

    .partner-copy::before{
      width:420px;
      height:420px;
      left:-180px;
      bottom:-180px;
    }

    .partner-copy::after{
      width:250px;
      height:250px;
      right:-80px;
      top:-90px;
    }

    .mini-label{
      display:inline-flex;
      align-items:center;
      gap:12px;
      margin-bottom:26px;
      font-size:.84rem;
      font-weight:800;
      letter-spacing:.15em;
      text-transform:uppercase;
    }

    .mini-label::before{
      content:"";
      width:42px;
      height:4px;
      border-radius:999px;
      background:var(--shouna-yellow);
      box-shadow:0 0 20px rgba(253,213,1,.45);
    }

    .partner-copy h2{
      max-width:620px;
      margin:0 0 24px;
      font-size:clamp(2.3rem,4vw,4.9rem);
      line-height:.98;
      font-weight:800;
      letter-spacing:-.045em;
    }

    .partner-copy p{
      max-width:640px;
      margin:0;
      font-size:1.05rem;
      line-height:1.9;
      color:rgba(255,255,255,.84);
    }

    .ecosystem-stats{
      display:flex;
      flex-wrap:wrap;
      gap:14px;
      margin-top:36px;
    }

    .ecosystem-stats span{
      display:inline-flex;
      align-items:center;
      gap:9px;
      padding:11px 16px;
      border:1px solid rgba(255,255,255,.18);
      border-radius:999px;
      background:rgba(255,255,255,.08);
      font-size:.9rem;
      font-weight:700;
    }

    .partner-visual{
      position:relative;
      min-height:560px;
      padding:64px;
      display:flex;
      align-items:center;
      justify-content:center;
      background:
        radial-gradient(circle at 62% 42%,rgba(130,200,62,.13),transparent 24%),
        radial-gradient(circle at 52% 65%,rgba(253,213,1,.10),transparent 30%),
        #fff;
      overflow:hidden;
    }

    .orbit-system{
      position:relative;
      width:min(460px,100%);
      aspect-ratio:1;
      display:grid;
      place-items:center;
    }

    .orbit-system::before,
    .orbit-system::after{
      content:"";
      position:absolute;
      border-radius:50%;
      border:1px dashed rgba(33,77,161,.22);
      animation:spin 18s linear infinite;
    }

    .orbit-system::before{inset:4%}
    .orbit-system::after{
      inset:19%;
      animation-direction:reverse;
      animation-duration:12s;
    }

    .core-node{
      position:relative;
      z-index:3;
      width:190px;
      height:190px;
      border-radius:50%;
      display:grid;
      place-items:center;
      text-align:center;
      padding:28px;
      background:
        radial-gradient(circle at 35% 28%,rgba(255,255,255,.22),transparent 26%),
        linear-gradient(145deg,var(--shouna-navy),var(--shouna-blue));
      color:#fff;
      box-shadow:0 24px 60px rgba(33,77,161,.28);
    }

    .core-node i{
      display:block;
      margin-bottom:10px;
      font-size:2.6rem;
      color:var(--shouna-yellow);
    }

    .core-node strong{
      font-size:1.25rem;
      line-height:1.15;
    }

    .satellite{
      position:absolute;
      z-index:4;
      width:92px;
      height:92px;
      border-radius:24px;
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:6px;
      border:1px solid rgba(33,77,161,.1);
      background:#fff;
      box-shadow:0 16px 34px rgba(12,24,55,.12);
      color:var(--shouna-navy);
      font-size:.72rem;
      font-weight:800;
      text-align:center;
      transition:.35s ease;
    }

    .satellite i{
      font-size:1.45rem;
      color:var(--shouna-blue);
    }

    .satellite:hover{
      transform:translateY(-8px) scale(1.04);
      border-color:rgba(253,213,1,.75);
      box-shadow:0 20px 44px rgba(12,24,55,.18);
    }

    .sat-1{top:0;left:50%;transform:translateX(-50%)}
    .sat-2{right:2%;top:22%}
    .sat-3{right:10%;bottom:10%}
    .sat-4{left:10%;bottom:10%}
    .sat-5{left:2%;top:22%}

    .partners-cta{
      position:relative;
      z-index:3;
      margin-top:34px;
      padding:34px 42px;
      border-radius:28px 28px 0 0;
      background:linear-gradient(110deg,var(--shouna-navy),var(--shouna-blue));
      color:#fff;
      box-shadow:0 -18px 50px rgba(12,24,55,.12);
    }

    .partners-cta .eyebrow{
      display:block;
      margin-bottom:8px;
      color:var(--shouna-yellow);
      font-size:.8rem;
      font-weight:800;
      letter-spacing:.14em;
      text-transform:uppercase;
    }

    .partners-cta h3{
      margin:0;
      font-size:clamp(1.8rem,3vw,3.4rem);
      font-weight:800;
      letter-spacing:-.03em;
    }

    .partners-cta .btn{
      padding:14px 24px;
      border:0;
      border-radius:999px;
      background:var(--shouna-yellow);
      color:var(--shouna-navy);
      font-weight:800;
      box-shadow:0 12px 28px rgba(253,213,1,.25);
    }

    @keyframes spin{
      to{transform:rotate(360deg)}
    }

    @media (max-width:991px){
      .partners-experience{padding-top:60px}
      .partner-copy,.partner-visual{min-height:auto}
      .partner-copy{padding:52px 34px}
      .partner-visual{padding:55px 24px}
      .orbit-system{width:min(390px,100%)}
      .partners-cta{text-align:center}
    }

    @media (max-width:575px){
      .partner-shell{border-radius:24px}
      .partner-copy{padding:40px 24px}
      .partner-copy h2{font-size:2.25rem}
      .partner-copy p{font-size:.96rem}
      .partner-visual{padding:36px 10px}
      .orbit-system{transform:scale(.82)}
      .satellite{width:82px;height:82px}
      .partners-cta{padding:28px 22px}
    }

    @media (prefers-reduced-motion:reduce){
      .orbit-system::before,.orbit-system::after{animation:none}
    }
/*  */