
    @import url('https://fonts.googleapis.com/css2?family=Acme&display=swap');

    :root {
      --bg: #0c171e;
      --blue: #1e90ff;
      --blue-light: #38b6ff;
      --white: #ffffff;
      --card-radius: 18px;
    }

    *,
    *::before,
    *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: "Acme", sans-serif;
      background: var(--bg);
      color: #333;
      overflow-x: hidden;
      cursor: none;
    }

    /* ══ CUSTOM CURSOR ══ */
    .cursor-dot {
      position: fixed;
      width: 8px;
      height: 8px;
      background: var(--blue-light);
      border-radius: 50%;
      pointer-events: none;
      z-index: 9999;
      transform: translate(-50%, -50%);
      box-shadow: 0 0 12px var(--blue-light), 0 0 24px var(--blue);
      transition: background 0.2s;
    }

    .cursor-ring {
      position: fixed;
      width: 38px;
      height: 38px;
      border: 1.5px solid rgba(56, 182, 255, 0.55);
      border-radius: 50%;
      pointer-events: none;
      z-index: 9998;
      transform: translate(-50%, -50%);
      transition: width .3s, height .3s, opacity .3s, border-color .3s;
    }

    .cursor-ring.hovered {
      width: 64px;
      height: 64px;
      border-color: var(--blue);
      opacity: 0.55;
    }

    @media (hover:none) {

      .cursor-dot,
      .cursor-ring {
        display: none;
      }

      body {
        cursor: auto;
      }
    }

    /* ══ PARTICLES ══ */
    #particles {
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: 0;
    }

    /* ══ HERO ══ */
    .hero {
      position: relative;
      padding: 90px 20px 108px;
      background: linear-gradient(160deg, #060f18 0%, #0d2137 40%, #112a45 70%, #0c171e 100%);
      color: var(--white);
      overflow: hidden;
      z-index: 1;
    }

    .hero::before {
      content: '';
      position: absolute;
      inset: 0;
      background:
        radial-gradient(ellipse 90% 70% at 20% 20%, rgba(30, 144, 255, 0.18) 0%, transparent 60%),
        radial-gradient(ellipse 60% 50% at 80% 80%, rgba(56, 182, 255, 0.12) 0%, transparent 55%),
        radial-gradient(ellipse 50% 40% at 50% 110%, rgba(30, 144, 255, 0.1) 0%, transparent 50%);
      animation: auroraPulse 10s ease-in-out infinite alternate;
      pointer-events: none;
    }

    @keyframes auroraPulse {
      from {
        opacity: .7;
        transform: scale(1);
      }

      to {
        opacity: 1;
        transform: scale(1.05);
      }
    }

    .hero::after {
      content: '';
      position: absolute;
      inset: 0;
      background-image:
        linear-gradient(rgba(30, 144, 255, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(30, 144, 255, 0.04) 1px, transparent 1px);
      background-size: 50px 50px;
      mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 20%, transparent 75%);
      pointer-events: none;
    }

    .hero-orb {
      position: absolute;
      border-radius: 50%;
      pointer-events: none;
      filter: blur(70px);
    }

    .hero-orb-1 {
      width: 420px;
      height: 420px;
      background: radial-gradient(circle, rgba(30, 144, 255, .22), transparent 70%);
      top: -120px;
      left: -100px;
      animation: orb1 12s ease-in-out infinite;
    }

    .hero-orb-2 {
      width: 280px;
      height: 280px;
      background: radial-gradient(circle, rgba(56, 182, 255, .16), transparent 70%);
      bottom: -60px;
      right: 3%;
      animation: orb2 9s ease-in-out infinite;
    }

    .hero-orb-3 {
      width: 180px;
      height: 180px;
      background: radial-gradient(circle, rgba(30, 144, 255, .14), transparent 70%);
      top: 25%;
      left: 58%;
      animation: orb3 15s ease-in-out infinite;
    }

    @keyframes orb1 {

      0%,
      100% {
        transform: translate(0, 0) scale(1)
      }

      40% {
        transform: translate(40px, -50px) scale(1.12)
      }

      70% {
        transform: translate(-20px, 30px) scale(.92)
      }
    }

    @keyframes orb2 {

      0%,
      100% {
        transform: translate(0, 0) scale(1)
      }

      50% {
        transform: translate(-30px, -40px) scale(1.1)
      }
    }

    @keyframes orb3 {

      0%,
      100% {
        transform: translate(0, 0) scale(1)
      }

      33% {
        transform: translate(25px, 15px) scale(1.15)
      }

      66% {
        transform: translate(-20px, -25px) scale(.88)
      }
    }

    .hero .container {
      position: relative;
      z-index: 2;
    }

    .home_logo {
      background: var(--white);
      padding: 10px;
      border-radius: 36px;
      margin-bottom: 20px;
      filter: drop-shadow(0 0 22px rgba(30, 144, 255, .45));
      animation: logoPop 1s cubic-bezier(.34, 1.56, .64, 1) both;
    }

    @keyframes logoPop {
      from {
        opacity: 0;
        transform: scale(.5) rotate(-12deg);
      }

      to {
        opacity: 1;
        transform: scale(1) rotate(0);
      }
    }

    .hero h1 {
      font-size: clamp(2.2rem, 5.5vw, 3.8rem);
      font-weight: 700;
      margin-bottom: 1rem;
      background: linear-gradient(135deg, #fff 0%, var(--blue-light) 50%, var(--blue) 100%);
      background-size: 200% auto;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      animation: slideUp .8s .25s cubic-bezier(.16, 1, .3, 1) both, shimmerText 5s 1.2s linear infinite;
    }

    @keyframes shimmerText {
      0% {
        background-position: 0% center
      }

      100% {
        background-position: 200% center
      }
    }

    .hero p {
      font-size: 1.1rem;
      opacity: .8;
      margin-bottom: 2rem;
      animation: slideUp .8s .4s cubic-bezier(.16, 1, .3, 1) both;
    }

    @keyframes slideUp {
      from {
        opacity: 0;
        transform: translateY(35px)
      }

      to {
        opacity: 1;
        transform: translateY(0)
      }
    }

    .home-btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 13px 36px;
      border-radius: 50px;
      background: rgba(255, 255, 255, .1);
      color: var(--white);
      font-weight: 600;
      font-family: "Acme", sans-serif;
      font-size: 1rem;
      text-decoration: none;
      backdrop-filter: blur(14px);
      border: 1px solid rgba(255, 255, 255, .2);
      transition: all .4s cubic-bezier(.16, 1, .3, 1);
      animation: slideUp .8s .55s cubic-bezier(.16, 1, .3, 1) both;
      position: relative;
      overflow: hidden;
    }

    .home-btn::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, var(--blue), var(--blue-light));
      opacity: 0;
      transition: opacity .4s;
      border-radius: 50px;
    }

    .home-btn>* {
      position: relative;
      z-index: 1;
    }

    .home-btn .btn-arrow {
      transition: transform .35s cubic-bezier(.34, 1.56, .64, 1);
    }

    .home-btn:hover {
      color: var(--white);
      transform: translateY(-4px);
      box-shadow: 0 16px 50px rgba(30, 144, 255, .5);
      border-color: transparent;
    }

    .home-btn:hover::before {
      opacity: 1;
    }

    .home-btn:hover .btn-arrow {
      transform: translateX(5px);
    }

    .hero-badges {
      display: flex;
      gap: 10px;
      justify-content: center;
      flex-wrap: wrap;
      margin-top: 30px;
      animation: slideUp .8s .7s cubic-bezier(.16, 1, .3, 1) both;
    }

    .hero-badge {
      background: rgba(255, 255, 255, .07);
      border: 1px solid rgba(30, 144, 255, .25);
      backdrop-filter: blur(10px);
      border-radius: 50px;
      padding: 7px 18px;
      font-size: .82rem;
      color: rgba(255, 255, 255, .75);
      white-space: nowrap;
    }

    .hero-badge b {
      color: var(--blue-light);
    }

    /* ══ 4-LAYER WAVE DIVIDER ══ */
    .wave-divider {
      position: relative;
      margin-top: -2px;
      line-height: 0;
      background: linear-gradient(160deg, #060f18 0%, #0d2137 40%, #112a45 70%, #0c171e 100%);
      z-index: 2;
      overflow: hidden;
    }

    .wave-divider svg {
      display: block;
      width: 100%;
      height: 120px;
    }

    .wave {
      fill: var(--bg);
    }

    .wave-a {
      opacity: .4;
      animation: wa 9s ease-in-out infinite;
    }

    .wave-b {
      opacity: .28;
      animation: wb 6.5s ease-in-out infinite;
    }

    .wave-c {
      opacity: .6;
      animation: wc 11s ease-in-out infinite;
    }

    .wave-d {
      opacity: .18;
      animation: wd 7.5s ease-in-out infinite reverse;
    }

    @keyframes wa {

      0%,
      100% {
        d: path("M0,50 C240,95 480,8 720,50 C960,92 1200,8 1440,50 L1440,120 L0,120 Z")
      }

      50% {
        d: path("M0,65 C240,18 480,88 720,65 C960,42 1200,88 1440,65 L1440,120 L0,120 Z")
      }
    }

    @keyframes wb {

      0%,
      100% {
        d: path("M0,60 C200,18 400,82 600,60 C800,38 1000,82 1200,60 C1330,46 1400,68 1440,60 L1440,120 L0,120 Z")
      }

      50% {
        d: path("M0,42 C200,75 400,28 600,48 C800,68 1000,28 1200,48 C1330,62 1400,42 1440,42 L1440,120 L0,120 Z")
      }
    }

    @keyframes wc {

      0%,
      100% {
        d: path("M0,72 C180,38 360,98 540,72 C720,46 900,98 1080,72 C1260,46 1380,76 1440,72 L1440,120 L0,120 Z")
      }

      50% {
        d: path("M0,55 C180,85 360,32 540,55 C720,78 900,32 1080,55 C1260,78 1380,52 1440,55 L1440,120 L0,120 Z")
      }
    }

    @keyframes wd {

      0%,
      100% {
        d: path("M0,82 C300,52 600,100 900,82 C1100,70 1300,88 1440,82 L1440,120 L0,120 Z")
      }

      50% {
        d: path("M0,64 C300,88 600,46 900,64 C1100,76 1300,56 1440,64 L1440,120 L0,120 Z")
      }
    }

    .wave-glow {
      position: absolute;
      bottom: 118px;
      left: 0;
      right: 0;
      height: 1.5px;
      background: linear-gradient(90deg, transparent 0%, var(--blue) 30%, var(--blue-light) 50%, var(--blue) 70%, transparent 100%);
      animation: glowPulse 3s ease-in-out infinite;
    }

    @keyframes glowPulse {

      0%,
      100% {
        opacity: .3;
        transform: scaleX(.8)
      }

      50% {
        opacity: 1;
        transform: scaleX(1)
      }
    }

    /* ══ STICKY TABS ══ */
    .tabs-wrapper {
      position: sticky;
      top: 0;
      background: rgba(10, 18, 25, .95);
      backdrop-filter: blur(22px);
      -webkit-backdrop-filter: blur(22px);
      border-bottom: 1px solid rgba(30, 144, 255, .12);
      z-index: 100;
    }

    .ticker-bar {
      height: 3px;
      background: linear-gradient(90deg, var(--blue), var(--blue-light), var(--blue));
      background-size: 200% auto;
      animation: tickerBg 4s linear infinite;
    }

    @keyframes tickerBg {
      0% {
        background-position: 0% center
      }

      100% {
        background-position: 200% center
      }
    }

    .tabs-inner {
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 0 16px;
      height: 62px;
      position: relative;
    }

    /* Desktop tabs — centered */
    .visual-tabs {
      display: flex;
      gap: 6px;
      list-style: none;
      margin: 0;
      padding: 0;
      flex-wrap: nowrap;
      overflow-x: auto;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
      justify-content: center;
    }

    .visual-tabs::-webkit-scrollbar {
      display: none;
    }

    .visual-tabs .nav-item {
      flex-shrink: 0;
    }

    .visual-tabs .nav-link {
      display: block;
      padding: 9px 20px;
      border-radius: 30px;
      color: rgba(255, 255, 255, .55);
      cursor: pointer;
      font-family: "Acme", sans-serif;
      font-size: .875rem;
      white-space: nowrap;
      background: transparent;
      border: 1px solid transparent;
      transition: all .3s ease;
      text-decoration: none;
      position: relative;
      overflow: hidden;
    }

    .visual-tabs .nav-link::after {
      content: '';
      position: absolute;
      inset: 0;
      border-radius: 30px;
      background: rgba(30, 144, 255, .1);
      opacity: 0;
      transition: opacity .3s;
    }

    .visual-tabs .nav-link:hover {
      color: var(--white);
    }

    .visual-tabs .nav-link:hover::after {
      opacity: 1;
    }

    .visual-tabs .nav-link.active {
      background: linear-gradient(135deg, var(--blue), var(--blue-light));
      color: var(--white);
      border-color: transparent;
      box-shadow: 0 4px 20px rgba(30, 144, 255, .45), 0 0 0 1px rgba(56, 182, 255, .2);
    }

    /* Hamburger — absolute right so tabs stay centered */
    .tabs-hamburger {
      display: none;
      position: absolute;
      right: 16px;
      background: none;
      border: none;
      cursor: pointer;
      padding: 8px;
      color: var(--white);
    }

    .tabs-hamburger .bar {
      display: block;
      width: 22px;
      height: 2px;
      background: var(--white);
      border-radius: 2px;
      transition: all .32s cubic-bezier(.16, 1, .3, 1);
      margin: 5px 0;
    }

    .tabs-hamburger.open .bar:nth-child(1) {
      transform: translateY(7px) rotate(45deg);
    }

    .tabs-hamburger.open .bar:nth-child(2) {
      opacity: 0;
      transform: scaleX(0);
    }

    .tabs-hamburger.open .bar:nth-child(3) {
      transform: translateY(-7px) rotate(-45deg);
    }

    .active-tab-label {
      display: none;
      color: var(--white);
      font-family: "Acme", sans-serif;
      font-size: 1rem;
    }

    .tabs-mobile-menu {
      display: none;
      background: rgba(8, 16, 22, .98);
      backdrop-filter: blur(24px);
      border-bottom: 1px solid rgba(30, 144, 255, .12);
      padding: 8px 14px 14px;
    }

    .tabs-mobile-menu.open {
      display: block;
      animation: menuDrop .35s cubic-bezier(.16, 1, .3, 1) both;
    }

    @keyframes menuDrop {
      from {
        opacity: 0;
        transform: translateY(-12px)
      }

      to {
        opacity: 1;
        transform: translateY(0)
      }
    }

    .tabs-mobile-menu .nav-link {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 13px 16px;
      color: rgba(255, 255, 255, .7);
      font-family: "Acme", sans-serif;
      font-size: .95rem;
      border-radius: 12px;
      cursor: pointer;
      text-decoration: none;
      transition: all .22s ease;
      border-bottom: 1px solid rgba(255, 255, 255, .05);
    }

    .tabs-mobile-menu .nav-link:last-child {
      border-bottom: none;
    }

    .tabs-mobile-menu .nav-link:hover {
      background: rgba(30, 144, 255, .1);
      color: var(--white);
    }

    .tabs-mobile-menu .nav-link.active {
      background: rgba(30, 144, 255, .18);
      color: var(--blue-light);
    }

    .tabs-mobile-menu .nav-link::before {
      content: attr(data-icon);
      font-size: 1.1rem;
    }

    @media(max-width:767.98px) {
      .tabs-hamburger {
        display: flex;
        flex-direction: column;
        justify-content: center;
      }

      .visual-tabs {
        display: none;
      }

      .active-tab-label {
        display: block;
      }
    }

    /* ══ SECTION LABEL ══ */
    .section-label {
      text-align: center;
      margin-bottom: 28px;
    }

    .section-label h2 {
      font-size: clamp(1.4rem, 3vw, 2rem);
      background: linear-gradient(135deg, #1a2a3a, #0d2137);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      margin-bottom: 10px;
    }

    .section-divider {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      margin-bottom: 24px;
    }

    .section-divider::before,
    .section-divider::after {
      content: '';
      flex: 1;
      max-width: 80px;
      height: 1px;
      background: linear-gradient(90deg, transparent, rgba(30, 144, 255, .4));
    }

    .section-divider::after {
      background: linear-gradient(90deg, rgba(30, 144, 255, .4), transparent);
    }

    .divider-dot {
      width: 6px;
      height: 6px;
      background: var(--blue);
      border-radius: 50%;
      box-shadow: 0 0 8px var(--blue);
    }

    /* ══ CONTENT BOX ══ */
    .visual-content {
      background: linear-gradient(160deg, #f8faff 0%, #eef4ff 100%);
      border-radius: 28px;
      margin: 28px auto 60px;
      padding: 36px 28px;
      max-width: 1200px;
      box-shadow: 0 40px 100px rgba(0, 0, 0, .5), 0 0 0 1px rgba(30, 144, 255, .08), inset 0 1px 0 rgba(255, 255, 255, .8);
      position: relative;
      z-index: 1;
      animation: contentReveal .7s .1s cubic-bezier(.16, 1, .3, 1) both;
    }

    .visual-content::before {
      content: '';
      position: absolute;
      top: -1px;
      left: 10%;
      right: 10%;
      height: 2px;
      background: linear-gradient(90deg, transparent, var(--blue), var(--blue-light), var(--blue), transparent);
      border-radius: 2px;
      animation: topGlow 3s ease-in-out infinite;
    }

    @keyframes topGlow {

      0%,
      100% {
        opacity: .5
      }

      50% {
        opacity: 1
      }
    }

    @keyframes contentReveal {
      from {
        opacity: 0;
        transform: translateY(24px) scale(.98)
      }

      to {
        opacity: 1;
        transform: translateY(0) scale(1)
      }
    }

    .tab-box {
      display: none;
    }

    .tab-box.active {
      display: block;
    }

    .tab-box.tab-enter {
      animation: tabIn .5s cubic-bezier(.16, 1, .3, 1) both;
    }

    @keyframes tabIn {
      from {
        opacity: 0;
        transform: translateY(20px) scale(.97)
      }

      to {
        opacity: 1;
        transform: translateY(0) scale(1)
      }
    }

    /* ══ GLASS CARD ══ */
    .glass-card {
      position: relative;
      display: block;
      border-radius: var(--card-radius);
      overflow: hidden;
      box-shadow: 0 8px 28px rgba(0, 0, 0, .14);
      text-decoration: none;
      animation: cardReveal .55s var(--card-delay, 0s) cubic-bezier(.16, 1, .3, 1) both;
      transform-style: preserve-3d;
      will-change: transform;
      transition: box-shadow .4s ease;
    }

    @keyframes cardReveal {
      from {
        opacity: 0;
        transform: translateY(30px) scale(.94)
      }

      to {
        opacity: 1;
        transform: translateY(0) scale(1)
      }
    }

    .tab-box.active .col-12:nth-child(1) .glass-card {
      --card-delay: .05s
    }

    .tab-box.active .col-12:nth-child(2) .glass-card {
      --card-delay: .13s
    }

    .tab-box.active .col-12:nth-child(3) .glass-card {
      --card-delay: .21s
    }

    .tab-box.active .col-12:nth-child(4) .glass-card {
      --card-delay: .29s
    }

    .tab-box.active .col-12:nth-child(5) .glass-card {
      --card-delay: .37s
    }

    .tab-box.active .col-12:nth-child(6) .glass-card {
      --card-delay: .45s
    }

    .card-shine {
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, rgba(255, 255, 255, .18) 0%, transparent 55%);
      opacity: 0;
      transition: opacity .4s;
      z-index: 3;
      pointer-events: none;
    }

    .glass-card img {
      width: 100%;
      height: 240px;
      object-fit: cover;
      display: block;
      transition: transform .6s cubic-bezier(.16, 1, .3, 1);
    }

    .glass-card span {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      padding: 14px 18px;
      background: rgba(10, 20, 30, .86);
      backdrop-filter: blur(10px);
      color: var(--white);
      font-weight: 600;
      text-transform: uppercase;
      text-align: center;
      letter-spacing: .7px;
      font-size: .875rem;
      transition: all .38s cubic-bezier(.16, 1, .3, 1);
      z-index: 2;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
    }

    .arrow-icon {
      opacity: 0;
      transform: translateX(-6px);
      transition: all .35s cubic-bezier(.34, 1.56, .64, 1);
      display: inline-block;
    }

    .glass-card:hover {
      box-shadow: 0 28px 70px rgba(30, 144, 255, .35), 0 0 0 1px rgba(30, 144, 255, .2);
    }

    .glass-card:hover img {
      transform: scale(1.1);
    }

    .glass-card:hover span {
      background: rgba(30, 144, 255, .9);
      letter-spacing: 1px;
    }

    .glass-card:hover .arrow-icon {
      opacity: 1;
      transform: translateX(0);
    }

    .glass-card:hover .card-shine {
      opacity: 1;
    }

    /* ══ RESPONSIVE ══ */
    @media(max-width:991.98px) {
      .visual-content {
        padding: 28px 18px;
        margin: 22px 14px 50px
      }

      .glass-card img {
        height: 215px
      }
    }

    @media(max-width:767.98px) {
      .hero {
        padding: 68px 16px 80px
      }

      .hero p {
        font-size: 1rem
      }

      .visual-content {
        padding: 22px 14px;
        border-radius: 22px
      }
    }

    @media(max-width:575.98px) {
      .hero p {
        font-size: .9375rem
      }

      .glass-card img {
        height: 195px
      }

      .glass-card span {
        font-size: .8125rem;
        padding: 10px 12px
      }

      .home_logo {
        padding: 5px;
        border-radius: 20px;
        width: 164px
      }

      .visual-content {
        margin: 14px 10px 40px
      }

      .hero-badge {
        font-size: .75rem;
        padding: 5px 14px
      }
    }

    /* ══ FOOTER WAVE ══ */
    .footer-wave {
      position: relative;
      margin-top: -2px;
      line-height: 0;
      background: var(--bg);
      z-index: 1;
    }

    .footer-wave svg {
      display: block;
      width: 100%;
      height: 60px;
    }

    .footer-wave path {
      fill: rgba(30, 144, 255, .05);
      animation: fw 7s ease-in-out infinite;
    }

    @keyframes fw {

      0%,
      100% {
        d: path("M0,30 C360,55 720,5 1080,30 C1260,42 1380,22 1440,30 L1440,60 L0,60 Z")
      }

      50% {
        d: path("M0,20 C360,10 720,50 1080,20 C1260,8 1380,38 1440,20 L1440,60 L0,60 Z")
      }
    }
 