      /* ============ GRIFT (licensed webfont) ============
   Drop the licensed Grift woff2 files into /fonts/ next to this file.
   Until the files are added, the site falls back to Urbanist (closest
   free geometric sans) so nothing breaks. */
      @font-face {
        font-family: "Grift";
        src: url("/fonts/Grift-Regular.woff2") format("woff2");
        font-weight: 400;
        font-style: normal;
        font-display: swap;
      }
      @font-face {
        font-family: "Grift";
        src: url("/fonts/Grift-Medium.woff2") format("woff2");
        font-weight: 500;
        font-style: normal;
        font-display: swap;
      }
      @font-face {
        font-family: "Grift";
        src: url("/fonts/Grift-SemiBold.woff2") format("woff2");
        font-weight: 600;
        font-style: normal;
        font-display: swap;
      }
      @font-face {
        font-family: "Grift";
        src: url("/fonts/Grift-ExtraBold.woff2") format("woff2");
        font-weight: 800;
        font-style: normal;
        font-display: swap;
      }
      @font-face {
        font-family: "Grift";
        src: url("/fonts/Grift-Black.woff2") format("woff2");
        font-weight: 900;
        font-style: normal;
        font-display: swap;
      }
      :root {
        --navy: #010220;
        --navy2: #070936;
        --pink: #cb1457;
        --pinkL: #ff6b96;
        --off: #f7f7fb;
        --white: #fff;
        --dim: rgba(247, 247, 251, 0.6);
        --faint: rgba(247, 247, 251, 0.32);
        --line: rgba(247, 247, 251, 0.09);
        --disp: "Grift", "Urbanist", sans-serif;
        --body: "Grift", "Urbanist", sans-serif;
        --mono: "Grift", "Urbanist", sans-serif;
        --max: 1280px;
        --ease: cubic-bezier(0.65, 0.05, 0, 1);
      }
      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }
      html {
        scroll-behavior: smooth;
      }
      body {
        font-family: var(--body);
        background: var(--navy);
        color: var(--off);
        -webkit-font-smoothing: antialiased;
        overflow-x: hidden;
      }
      ::selection {
        background: var(--pink);
        color: #fff;
      }
      a {
        color: inherit;
        text-decoration: none;
      }
      button {
        font: inherit;
        color: inherit;
        background: none;
        border: none;
        cursor: pointer;
      }
      .wrap {
        max-width: 1350px;
        margin: 0 auto;
        padding: 0 clamp(20px, 4.5vw, 56px);
        width: 100%;
      }
      :focus-visible {
        outline: 2px solid var(--pinkL);
        outline-offset: 4px;
      }

      /* grain overlay */
      body::after {
        content: "";
        position: fixed;
        inset: -50%;
        pointer-events: none;
        z-index: 9990;
        opacity: 0.05;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
        animation: grain 8s steps(10) infinite;
      }
      @keyframes grain {
        0%,
        100% {
          transform: translate(0, 0);
        }
        10% {
          transform: translate(-2%, 3%);
        }
        30% {
          transform: translate(3%, -2%);
        }
        50% {
          transform: translate(-3%, -3%);
        }
        70% {
          transform: translate(2%, 3%);
        }
        90% {
          transform: translate(-1%, 2%);
        }
      }

      /* ============ PRELOADER ============ */
      #loader {
        position: fixed;
        inset: 0;
        z-index: 10000;
        background: var(--navy);
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 20px;
        transition: clip-path 1s var(--ease);
        clip-path: inset(0 0 0 0);
      }
      #loader.done {
        clip-path: inset(0 0 100% 0);
      }
      #loader .l-mark {
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(34px, 6vw, 64px);
        letter-spacing: 0.01em;
        overflow: hidden;
        display: flex;
      }
      #loader .l-mark span {
        display: inline-block;
        transform: translateY(110%);
        animation: rise 0.8s var(--ease) forwards;
      }
      #loader .l-mark span:nth-child(2) {
        animation-delay: 0.05s;
        color: var(--pink);
      }
      #loader .l-mark span:nth-child(3) {
        animation-delay: 0.1s;
      }
      @keyframes rise {
        to {
          transform: translateY(0);
        }
      }
      #loader .l-count {
        font-family: var(--mono);
        font-size: 14px;
        color: var(--faint);
        letter-spacing: 0.3em;
      }
      #loader .l-bar {
        width: min(280px, 60vw);
        height: 2px;
        background: var(--line);
        overflow: hidden;
        border-radius: 2px;
      }
      #loader .l-bar i {
        display: block;
        height: 100%;
        width: 0;
        background: var(--pink);
        transition: width 0.2s;
      }

      /* ============ CURSOR ============ */
      #cur,
      #curRing {
        position: fixed;
        top: 0;
        left: 0;
        pointer-events: none;
        z-index: 9999;
        border-radius: 50%;
        transform: translate(-50%, -50%);
      }
      #cur {
        width: 8px;
        height: 8px;
        background: var(--pinkL);
      }
      #curRing {
        width: 38px;
        height: 38px;
        border: 1.5px solid rgba(255, 107, 150, 0.55);
        transition:
          width 0.25s,
          height 0.25s,
          background 0.25s,
          border-color 0.25s;
        display: grid;
        place-items: center;
      }
      #curRing.big {
        width: 84px;
        height: 84px;
        background: rgba(203, 20, 87, 0.14);
        border-color: var(--pinkL);
      }
      #curRing .cur-label {
        font-family: var(--mono);
        font-size: 10px;
        letter-spacing: 0.2em;
        color: var(--pinkL);
        opacity: 0;
        transition: opacity 0.2s;
        text-transform: uppercase;
      }
      #curRing.big .cur-label {
        opacity: 1;
      }
      @media (hover: none), (pointer: coarse) {
        #cur,
        #curRing {
          display: none;
        }
      }

      /* ============ NAV ============ */
      nav {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 100;
        transition:
          background 0.4s,
          border-color 0.4s,
          transform 0.4s;
        border-bottom: 1px solid transparent;
      }
      nav.scrolled {
        background: rgba(1, 2, 32, 0.8);
        backdrop-filter: blur(16px);
        border-color: var(--line);
      }
      nav.hide {
        transform: translateY(-100%);
      }
      .nav-in {
        max-width: var(--max);
        margin: 0 auto;
        padding: 20px clamp(20px, 4.5vw, 56px);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 24px;
      }
      .logo {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 19px;
        display: flex;
        align-items: center;
        gap: 9px;
      }
      .logo em {
        font-style: normal;
        color: var(--pink);
      }
      .logo .reg {
        font-size: 9px;
        vertical-align: super;
        color: var(--faint);
      }
      .nav-links {
        display: flex;
        gap: 34px;
        font-size: 14px;
        font-weight: 500;
        color: var(--dim);
      }
      .nav-links a {
        position: relative;
        padding: 4px 0;
      }
      .nav-links a::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        height: 1.5px;
        width: 100%;
        background: var(--pinkL);
        transform: scaleX(0);
        transform-origin: right;
        transition: transform 0.35s var(--ease);
      }
      .nav-links a:hover::after {
        transform: scaleX(1);
        transform-origin: left;
      }
      .nav-links a:hover {
        color: var(--off);
      }

      /* magnetic pill button */
      .btn {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        font-weight: 600;
        font-size: 15px;
        padding: 15px 30px;
        border-radius: 100px;
        background: var(--pink);
        color: #fff;
        overflow: hidden;
        isolation: isolate;
        transition: color 0.35s;
        will-change: transform;
      }
      .btn::before {
        content: "";
        position: absolute;
        inset: 0;
        background: var(--pinkL);
        border-radius: 100px;
        transform: translateY(101%);
        transition: transform 0.4s var(--ease);
        z-index: -1;
      }
      .btn:hover::before {
        transform: translateY(0);
      }
      .btn:hover {
        color: var(--navy);
      }
      .btn.ghost {
        background: transparent;
        box-shadow: inset 0 0 0 1.5px rgba(247, 247, 251, 0.25);
        color: var(--off);
      }
      .btn.ghost::before {
        background: var(--off);
      }
      .btn.ghost:hover {
        color: var(--navy);
      }
      .btn.sm {
        padding: 11px 22px;
        font-size: 14px;
      }
      .btn .arr {
        transition: transform 0.35s var(--ease);
      }
      .btn:hover .arr {
        transform: translateX(4px);
      }

      /* ============ HERO ============ */
      header {
        min-height: 100svh;
        display: flex;
        flex-direction: column;
        position: relative;
        overflow: hidden;
        padding-top: 110px;
      }
      .hero-core {
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
      }
      .hero-meta {
        display: flex;
        gap: 18px;
        align-items: center;
        margin-bottom: 34px;
        font-family: var(--mono);
        font-size: 12.5px;
        font-weight: 600;
        letter-spacing: 0.24em;
        text-transform: uppercase;
        color: var(--pinkL);
      }
      .hero-meta::before {
        content: "";
        width: 44px;
        height: 1.5px;
        background: var(--pink);
      }
      .hero-meta .loc {
        color: var(--faint);
      }
      h1 {
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(50px, 10.5vw, 150px);
        line-height: 0.95;
        letter-spacing: -0.025em;
        text-transform: uppercase;
      }
      h1 .l {
        display: block;
        overflow: hidden;
      }
      h1 .l span {
        display: inline-block;
        transform: translateY(115%);
        animation: rise 1s var(--ease) forwards;
      }
      h1 .l:nth-child(2) span {
        animation-delay: 0.08s;
      }
      h1 .l:nth-child(3) span {
        animation-delay: 0.16s;
      }
      h1 .hollow {
        color: transparent;
        -webkit-text-stroke: 2.5px var(--off);
      }
      /* rotating word */
      .rotor {
        display: inline-grid;
        vertical-align: top;
        overflow: hidden;
        height: 1em;
        color: var(--pinkL);
        text-align: left;
      }
      .rotor span {
        grid-area: 1/1;
        height: 1em;
        line-height: 1;
        transform: translateY(110%);
        opacity: 0;
        transition:
          transform 0.6s var(--ease),
          opacity 0.4s;
      }
      .rotor span.on {
        transform: translateY(0);
        opacity: 1;
      }
      .rotor span.off {
        transform: translateY(-110%);
        opacity: 0;
      }

      .hero-foot {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        gap: 32px;
        margin-top: 52px;
        flex-wrap: wrap;
      }
      .hero-sub {
        font-size: clamp(16px, 1.5vw, 19px);
        line-height: 1.65;
        color: var(--dim);
        max-width: 46ch;
      }
      .hero-sub strong {
        color: var(--off);
        font-weight: 600;
      }
      .hero-ctas {
        display: flex;
        gap: 14px;
        flex-wrap: wrap;
      }

      /* big vertical KIKA ghost */
      .ghost-k {
        position: absolute;
        right: -4vw;
        top: 50%;
        transform: translateY(-50%);
        font-family: var(--disp);
        font-weight: 800;
        font-size: 38vh;
        line-height: 1;
        color: transparent;
        -webkit-text-stroke: 1px rgba(247, 247, 251, 0.06);
        pointer-events: none;
        user-select: none;
        z-index: -1;
      }
      .glow {
        position: absolute;
        width: 56vw;
        height: 56vw;
        max-width: 820px;
        max-height: 820px;
        border-radius: 50%;
        background: radial-gradient(
          circle,
          rgba(203, 20, 87, 0.2),
          transparent 62%
        );
        top: -22%;
        right: -14%;
        pointer-events: none;
        z-index: -2;
      }

      /* finish tape */
      .tape {
        position: relative;
        background: var(--pink);
        color: #fff;
        overflow: hidden;
        font-family: var(--disp);
        font-weight: 700;
        font-size: 15px;
        letter-spacing: 0.26em;
        text-transform: uppercase;
        padding: 15px 0;
        white-space: nowrap;
        transform: rotate(-2.5deg) scale(1.04);
        box-shadow: 0 10px 50px rgba(203, 20, 87, 0.35);
        z-index: 2;
      }
      .tape.rev {
        transform: rotate(2deg) scale(1.04);
        background: var(--off);
        color: var(--navy);
        box-shadow: 0 10px 50px rgba(0, 0, 0, 0.3);
        margin-top: -14px;
        z-index: 1;
      }
      .tape-track {
        display: inline-flex;
        animation: scrollX 26s linear infinite;
      }
      .tape.rev .tape-track {
        animation-direction: reverse;
        animation-duration: 32s;
      }
      .tape-track span {
        padding: 0 30px;
        display: inline-flex;
        align-items: center;
        gap: 60px;
      }
      .tape-track span::after {
        content: "✦";
        opacity: 0.6;
      }
      @keyframes scrollX {
        from {
          transform: translateX(0);
        }
        to {
          transform: translateX(-50%);
        }
      }
      .tapes {
        margin-top: 64px;
      }

      /* ============ CLIENTS ============ */
      .clients {
        padding: 90px 0 30px;
      }
      .clients .lbl {
        font-family: var(--mono);
        font-size: 12px;
        font-weight: 600;
        letter-spacing: 0.28em;
        text-transform: uppercase;
        color: var(--faint);
        display: flex;
        align-items: center;
        gap: 16px;
        margin-bottom: 34px;
      }
      .clients .lbl::after {
        content: "";
        flex: 1;
        height: 1px;
        background: var(--line);
      }
      .client-marquee {
        overflow: hidden;
        mask-image: linear-gradient(
          90deg,
          transparent,
          #000 8%,
          #000 92%,
          transparent
        );
      }
      .client-track {
        display: inline-flex;
        gap: 0;
        animation: scrollX 30s linear infinite;
        white-space: nowrap;
      }
      .client-track span {
        font-family: var(--disp);
        font-weight: 700;
        font-size: clamp(26px, 3.4vw, 44px);
        letter-spacing: 0.01em;
        color: transparent;
        -webkit-text-stroke: 1.2px rgba(247, 247, 251, 0.3);
        padding: 0 38px;
        transition: color 0.3s;
      }
      .client-track span:hover {
        color: var(--pinkL);
        -webkit-text-stroke-color: transparent;
      }

      /* ============ SECTION HEADERS ============ */
      .sec-head {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        gap: 32px;
        flex-wrap: wrap;
        margin-bottom: clamp(48px, 6vw, 84px);
      }
      .kicker {
        font-family: var(--mono);
        font-size: 12.5px;
        font-weight: 600;
        letter-spacing: 0.28em;
        text-transform: uppercase;
        color: var(--pinkL);
        display: flex;
        align-items: center;
        gap: 14px;
        margin-bottom: 22px;
      }
      .kicker i {
        font-style: normal;
        color: var(--faint);
      }
      h2 {
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(36px, 5.4vw, 72px);
        line-height: 1;
        letter-spacing: -0.02em;
        text-transform: uppercase;
        max-width: 16ch;
      }
      h2 .hollow {
        color: transparent;
        -webkit-text-stroke: 2px var(--off);
      }
      .sec-note {
        font-size: 16px;
        line-height: 1.65;
        color: var(--dim);
        max-width: 38ch;
      }

      /* ============ FLAGSHIP (ONE8 RUN) ============ */
      .flagship {
        padding: clamp(10px, 12vw, 120px) 0 0;
        position: relative;
      }
      .flag-stage {
        position: relative;
        border-radius: 28px;
        overflow: hidden;
        background: linear-gradient(
          135deg,
          var(--navy2) 0%,
          #28093c 55%,
          var(--pink) 155%
        );
        border: 1px solid var(--line);
        padding: clamp(40px, 6vw, 84px);
        min-height: 520px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
      }
      .flag-stage::before {
        content: "ONE8 RUN";
        position: absolute;
        top: -4%;
        left: 50%;
        transform: translateX(-50%);
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(70px, 13vw, 190px);
        letter-spacing: -0.02em;
        white-space: nowrap;
        color: transparent;
        -webkit-text-stroke: 1.5px rgba(247, 247, 251, 0.12);
        pointer-events: none;
      }
      .flag-bib {
        position: absolute;
        top: clamp(70px, 12vw, 130px);
        right: clamp(24px, 6vw, 84px);
        background: var(--off);
        color: var(--navy);
        border-radius: 16px;
        padding: 24px 30px;
        transform: rotate(3deg);
        width: min(300px, 58vw);
        box-shadow: 0 30px 80px rgba(0, 0, 0, 0.45);
        transition: transform 0.5s var(--ease);
      }
      .flag-stage:hover .flag-bib {
        transform: rotate(-1deg) translateY(-8px);
      }
      .flag-bib .bt {
        display: flex;
        justify-content: space-between;
        font-family: var(--mono);
        font-size: 11px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: var(--pink);
      }
      .flag-bib .bn {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(44px, 7vw, 72px);
        line-height: 1;
        margin-top: 10px;
        letter-spacing: -0.02em;
      }
      .flag-bib .bb {
        font-size: 12.5px;
        font-weight: 500;
        color: rgba(1, 2, 32, 0.55);
        margin-top: 10px;
        border-top: 1.5px dashed rgba(1, 2, 32, 0.2);
        padding-top: 10px;
      }
      .flag-body {
        position: relative;
        max-width: 52ch;
      }
      .flag-body .kicker {
        color: #ffd6e3;
      }
      .flag-body h3 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(28px, 3.8vw, 48px);
        line-height: 1.05;
        letter-spacing: -0.015em;
        text-transform: uppercase;
      }
      .flag-body p {
        margin-top: 20px;
        font-size: 16.5px;
        line-height: 1.7;
        color: rgba(247, 247, 251, 0.78);
      }
      .flag-body p strong {
        color: #fff;
      }
      .flag-chips {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        margin-top: 26px;
      }
      .chip {
        font-family: var(--mono);
        font-size: 12px;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        padding: 9px 16px;
        border-radius: 100px;
        border: 1px solid rgba(247, 247, 251, 0.3);
        color: rgba(247, 247, 251, 0.85);
        transition:
          background 0.25s,
          color 0.25s,
          border-color 0.25s;
      }
      .chip:hover {
        background: var(--off);
        color: var(--navy);
        border-color: var(--off);
      }

      /* ============ SERVICES, sticky stack ============ */
      .services {
        padding: clamp(110px, 13vw, 90px) 0;
      }
      .stack {
        display: grid;
        gap: 20px;
      }
      .card {
        position: sticky;
        border-radius: 26px;
        border: 1px solid var(--line);
        padding: clamp(32px, 5vw, 60px);
        min-height: 340px;
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: clamp(20px, 4vw, 56px);
        align-items: start;
        background: var(--navy2);
        transition: transform 0.3s;
      }
      .card:nth-child(1) {
        top: 110px;
        background: linear-gradient(120deg, #0a0c33, #101347);
      }
      .card:nth-child(2) {
        top: 130px;
        background: linear-gradient(120deg, #12082e, #251048);
      }
      .card:nth-child(3) {
        top: 150px;
        background: linear-gradient(120deg, #1e0a30, #3a0f47);
      }
      .card:nth-child(4) {
        top: 170px;
        background: linear-gradient(120deg, #33093c, #59103f);
      }
      .card:nth-child(5) {
        top: 190px;
        background: linear-gradient(120deg, #4d0c42, #8f1150);
      }
      .card:nth-child(6) {
        top: 210px;
        background: linear-gradient(120deg, #71104c, var(--pink));
      }
      .card .idx {
        font-family: var(--mono);
        font-size: 13px;
        letter-spacing: 0.2em;
        color: var(--pinkL);
        border: 1px solid rgba(255, 107, 150, 0.4);
        border-radius: 100px;
        padding: 8px 14px;
      }
      .card:nth-child(6) .idx {
        color: #fff;
        border-color: rgba(255, 255, 255, 0.5);
      }
      .card h3 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(26px, 4vw, 52px);
        line-height: 1;
        letter-spacing: -0.015em;
        text-transform: uppercase;
      }
      .card p {
        margin-top: 16px;
        font-size: 16px;
        line-height: 1.65;
        color: var(--dim);
        max-width: 52ch;
      }
      .card:nth-child(5) p,
      .card:nth-child(6) p {
        color: rgba(247, 247, 251, 0.8);
      }
      .card .tags {
        margin-top: 22px;
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
      }
      .card .tags i {
        font-style: normal;
        font-family: var(--mono);
        font-size: 11.5px;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: var(--faint);
        border: 1px solid var(--line);
        border-radius: 100px;
        padding: 6px 13px;
      }
      .card:nth-child(5) .tags i,
      .card:nth-child(6) .tags i {
        color: rgba(255, 255, 255, 0.75);
        border-color: rgba(255, 255, 255, 0.25);
      }
      .card .big-ic {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(40px, 6vw, 80px);
        color: transparent;
        -webkit-text-stroke: 1.5px rgba(247, 247, 251, 0.22);
        line-height: 1;
      }
      @media (max-width: 820px) {
        .card {
          grid-template-columns: 1fr;
        }
        .card .big-ic {
          display: none;
        }
      }

      /* ============ SPORTS ============ */
      .sports {
        padding: 0 0 clamp(110px, 13vw, 180px);
        position: relative;
        overflow: hidden;
      }
      .sports-band {
        border-radius: 28px;
        border: 1px solid rgba(255, 107, 150, 0.25);
        background:
          radial-gradient(
            120% 160% at 85% -20%,
            rgba(203, 20, 87, 0.35),
            transparent 55%
          ),
          var(--navy2);
        padding: clamp(40px, 6vw, 84px);
        display: grid;
        grid-template-columns: 1.15fr 0.85fr;
        gap: clamp(36px, 5vw, 72px);
        align-items: center;
        position: relative;
        overflow: hidden;
      }
      .sports-band::after {
        content: "@thekika_sports";
        position: absolute;
        bottom: 18px;
        right: 28px;
        font-family: var(--mono);
        font-size: 12px;
        letter-spacing: 0.2em;
        color: var(--faint);
      }
      .sports-band h2 {
        font-size: clamp(32px, 4.6vw, 60px);
      }
      .sports-band p {
        margin-top: 22px;
        font-size: 16.5px;
        line-height: 1.7;
        color: var(--dim);
      }
      .sports-band p strong {
        color: var(--off);
      }
      .sports-list {
        display: grid;
        gap: 14px;
      }
      .s-item {
        display: flex;
        align-items: center;
        gap: 18px;
        padding: 22px 24px;
        border-radius: 16px;
        border: 1px solid var(--line);
        background: rgba(1, 2, 32, 0.5);
        transition:
          border-color 0.3s,
          transform 0.3s,
          background 0.3s;
      }
      .s-item:hover {
        border-color: var(--pink);
        transform: translateX(8px);
        background: rgba(203, 20, 87, 0.08);
      }
      .s-item .n {
        font-family: var(--mono);
        font-size: 12px;
        color: var(--pinkL);
        letter-spacing: 0.15em;
        flex-shrink: 0;
        width: 38px;
        height: 38px;
        border-radius: 50%;
        border: 1px solid rgba(255, 107, 150, 0.4);
        display: grid;
        place-items: center;
      }
      .s-item b {
        font-family: var(--disp);
        font-weight: 700;
        font-size: 16.5px;
        display: block;
        letter-spacing: 0.01em;
      }
      .s-item span {
        font-size: 13.5px;
        color: var(--dim);
      }
      @media (max-width: 900px) {
        .sports-band {
          grid-template-columns: 1fr;
        }
      }

      /* ============ PROOF / NUMBERS ============ */
      .proof {
        padding: 30px , 30px;
      }
      .proof-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1px;
        background: var(--line);
        border: 1px solid var(--line);
        border-radius: 24px;
        overflow: hidden;
      }
      .proof-cell {
        background: var(--navy);
        padding: clamp(28px, 3.5vw, 48px);
        transition: background 0.3s;
      }
      .proof-cell:hover {
        background: var(--navy2);
      }
      .proof-cell b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(34px, 4.4vw, 62px);
        letter-spacing: -0.02em;
        display: block;
        line-height: 1;
      }
      .proof-cell b em {
        font-style: normal;
        color: var(--pinkL);
      }
      .proof-cell span {
        display: block;
        margin-top: 12px;
        font-size: 14px;
        color: var(--dim);
        line-height: 1.5;
      }
      @media (max-width: 820px) {
        .proof-grid {
          grid-template-columns: 1fr 1fr;
        }
      }

      /* ============ CTA / FOOTER ============ */
      .mega {
        position: relative;
        padding: clamp(10px, 14vw, 30px) 0 0;
        overflow: hidden;
      }
      .mega .kicker {
        justify-content: center;
      }
      .mega-word {
        display: block;
        text-align: center;
        font-family: var(--disp);
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: -0.03em;
        font-size: clamp(58px, 13.5vw, 210px);
        line-height: 0.92;
        color: transparent;
        -webkit-text-stroke: 2px var(--off);
        transition:
          color 0.5s,
          -webkit-text-stroke-color 0.5s;
        cursor: pointer;
      }
      .mega-word:hover {
        color: var(--pinkL);
        -webkit-text-stroke-color: var(--pinkL);
      }
      .mega-sub {
        text-align: center;
        margin-top: 30px;
        color: var(--dim);
        font-size: 17px;
        line-height: 1.7;
      }
      .mega-ctas {
        display: flex;
        gap: 16px;
        justify-content: center;
        margin-top: 40px;
        flex-wrap: wrap;
      }
      .mega .contact-strip {
        margin-top: 70px;
        display: flex;
        justify-content: center;
        gap: 14px 44px;
        flex-wrap: wrap;
        font-family: var(--mono);
        font-size: 13.5px;
        letter-spacing: 0.06em;
        color: var(--dim);
      }
      .contact-strip a {
        border-bottom: 1px solid rgba(247, 247, 251, 0.2);
        padding-bottom: 3px;
        transition:
          color 0.25s,
          border-color 0.25s;
      }
      .contact-strip a:hover {
        color: var(--pinkL);
        border-color: var(--pinkL);
      }

      footer {
        margin-top:30px;
        border-top: 1px solid var(--line);
        padding: 52px 0 40px;
        font-size: 14px;
        color: var(--faint);
      }
      .foot {
        display: flex;
        justify-content: space-between;
        gap: 36px;
        flex-wrap: wrap;
      }
      .foot address {
        font-style: normal;
        line-height: 1.9;
      }
      .foot .col {
        display: flex;
        flex-direction: column;
        gap: 10px;
      }
      .foot a:hover {
        color: var(--pinkL);
      }
      .foot-btm {
        margin-top: 44px;
        padding-top: 24px;
        border-top: 1px solid rgba(247, 247, 251, 0.05);
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
        font-family: var(--mono);
        font-size: 12px;
        letter-spacing: 0.1em;
      }

      /* ============ REVEALS ============ */
      .rv {
        opacity: 0;
        transform: translateY(36px);
        transition:
          opacity 0.9s var(--ease),
          transform 0.9s var(--ease);
      }
      .rv.in {
        opacity: 1;
        transform: none;
      }
      .rv-d1 {
        transition-delay: 0.08s;
      }
      .rv-d2 {
        transition-delay: 0.16s;
      }
      .rv-d3 {
        transition-delay: 0.24s;
      }

      @media (max-width: 900px) {
        /* .nav-links {
          display: none;
        } */
        .ghost-k {
          display: none;
        }
      }
      @media (prefers-reduced-motion: reduce) {
        *,
        *::before,
        *::after {
          animation: none !important;
          transition: none !important;
        }
        .rv {
          opacity: 1;
          transform: none;
        }
        h1 .l span,
        #loader .l-mark span {
          transform: none;
        }
        #loader {
          display: none;
        }
        html {
          scroll-behavior: auto;
        }
      }

      /* ============ INNER PAGES ============ */
      .page-hero {
        padding: 190px 0 70px;
        position: relative;
        overflow: hidden;
      }
      .page-hero h1 {
        font-size: clamp(46px, 9vw, 120px);
      }
      .page-hero .hero-sub {
        margin-top: 28px;
      }
      .nav-links a.active {
        color: var(--off);
      }
      .nav-links a.active::after {
        transform: scaleX(1);
      }

      /* ---- WORK GRID ---- */
      .filters {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        margin: 44px 0 40px;
      }
      .filters button {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12.5px;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        padding: 11px 20px;
        border-radius: 100px;
        border: 1px solid var(--line);
        color: var(--dim);
        transition: all 0.25s;
      }
      .filters button:hover {
        border-color: var(--pinkL);
        color: var(--pinkL);
      }
      .filters button.on {
        background: var(--pink);
        border-color: var(--pink);
        color: #fff;
      }
      .work-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 22px;
        padding-bottom: 20px;
      }
      .work-card {
        border-radius: 24px;
        border: 1px solid var(--line);
        overflow: hidden;
        position: relative;
        padding: clamp(28px, 4vw, 44px);
        min-height: 340px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        transition:
          transform 0.45s var(--ease),
          border-color 0.3s,
          opacity 0.4s,
          scale 0.4s;
      }
      .work-card:hover {
        transform: translateY(-8px);
        border-color: rgba(255, 107, 150, 0.5);
      }
      .work-card.hidden {
        display: none;
      }
      .work-card.feature {
        grid-column: 1/-1;
        min-height: 440px;
      }
      .work-card .w-cat {
        position: absolute;
        top: 26px;
        left: 28px;
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
      }
      .work-card .w-cat i {
        font-style: normal;
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11px;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        padding: 7px 14px;
        border-radius: 100px;
        background: rgba(1, 2, 32, 0.55);
        border: 1px solid rgba(247, 247, 251, 0.2);
        color: rgba(247, 247, 251, 0.85);
        backdrop-filter: blur(6px);
      }
      .work-card .w-mark {
        position: absolute;
        top: 14px;
        right: 22px;
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(60px, 9vw, 130px);
        line-height: 1;
        color: transparent;
        -webkit-text-stroke: 1.5px rgba(247, 247, 251, 0.13);
        pointer-events: none;
      }
      .work-card h3 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(24px, 3vw, 40px);
        line-height: 1.05;
        letter-spacing: -0.015em;
        text-transform: uppercase;
      }
      .work-card p {
        margin-top: 12px;
        font-size: 15px;
        line-height: 1.6;
        color: rgba(247, 247, 251, 0.75);
        max-width: 56ch;
      }
      .work-card .w-foot {
        margin-top: 20px;
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--pinkL);
      }
      .g-one8 {
        background: linear-gradient(
          135deg,
          var(--navy2) 0%,
          #28093c 55%,
          var(--pink) 160%
        );
      }
      .g-miko {
        background: linear-gradient(135deg, #0a0c33, #14226b 70%, #2a44b8 160%);
      }
      .g-sanj {
        background: linear-gradient(135deg, #132605, #2e5a0d 75%, #87a03c 170%);
      }
      .g-uhipl {
        background: linear-gradient(135deg, #10243e, #1b3d63 70%, #e8a33d 200%);
      }
      .g-nesto {
        background: linear-gradient(135deg, #1c1030, #3c1a5e 70%, #7b3fa0 170%);
      }
      .g-bigfoot {
        background: linear-gradient(135deg, #0b2b2b, #0f4d4a 70%, #1d9188 170%);
      }
      .g-funk {
        background: linear-gradient(
          135deg,
          #33061f,
          #71104c 70%,
          var(--pinkL) 190%
        );
      }
      .g-aci {
        background: linear-gradient(135deg, #1a1a2e, #31315c 75%, #5c5c9e 180%);
      }
      .g-mk {
        background: linear-gradient(135deg, #2b1c07, #5e3c0e 75%, #b07c25 180%);
      }
      @media (max-width: 860px) {
        .work-grid {
          grid-template-columns: 1fr;
        }
      }

      /* ---- SERVICES DETAIL ---- */
      .svc-detail {
        border-top: 1px solid var(--line);
      }
      .svc-block {
        display: grid;
        grid-template-columns: auto 1.1fr 0.9fr;
        gap: clamp(24px, 4vw, 64px);
        padding: clamp(40px, 6vw, 72px) 0;
        border-bottom: 1px solid var(--line);
        align-items: start;
      }
      .svc-block .s-no {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 13px;
        letter-spacing: 0.2em;
        color: var(--pinkL);
        border: 1px solid rgba(255, 107, 150, 0.4);
        border-radius: 100px;
        padding: 9px 16px;
        white-space: nowrap;
      }
      .svc-block h3 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(26px, 3.6vw, 48px);
        line-height: 1.02;
        letter-spacing: -0.015em;
        text-transform: uppercase;
      }
      .svc-block .s-lead {
        margin-top: 16px;
        font-size: 16.5px;
        line-height: 1.7;
        color: var(--dim);
        max-width: 52ch;
      }
      .svc-block .s-lead strong {
        color: var(--off);
      }
      .deliv {
        display: grid;
        gap: 0;
        border: 1px solid var(--line);
        border-radius: 18px;
        overflow: hidden;
      }
      .deliv span {
        padding: 16px 22px;
        font-size: 14.5px;
        color: var(--dim);
        border-bottom: 1px solid var(--line);
        display: flex;
        align-items: center;
        gap: 12px;
        transition:
          background 0.25s,
          color 0.25s,
          padding-left 0.25s;
      }
      .deliv span:last-child {
        border-bottom: none;
      }
      .deliv span::before {
        content: "✦";
        color: var(--pink);
        font-size: 11px;
      }
      .deliv span:hover {
        background: rgba(203, 20, 87, 0.08);
        color: var(--off);
        padding-left: 30px;
      }
      @media (max-width: 900px) {
        .svc-block {
          grid-template-columns: 1fr;
        }
      }

      /* ---- PROCESS ---- */
      .process {
        padding: 30px 30px;
      }
      .proc-grid {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 1px;
        background: var(--line);
        border: 1px solid var(--line);
        border-radius: 24px;
        overflow: hidden;
      }
      .proc-cell {
        background: var(--navy);
        padding: clamp(24px, 3vw, 40px);
        transition: background 0.3s;
        position: relative;
      }
      .proc-cell:hover {
        background: var(--navy2);
      }
      .proc-cell i {
        font-style: normal;
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12px;
        letter-spacing: 0.2em;
        color: var(--pinkL);
      }
      .proc-cell b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(18px, 1.8vw, 24px);
        display: block;
        margin-top: 14px;
        text-transform: uppercase;
        letter-spacing: 0.01em;
      }
      .proc-cell span {
        display: block;
        margin-top: 10px;
        font-size: 13.5px;
        line-height: 1.55;
        color: var(--dim);
      }
      @media (max-width: 900px) {
        .proc-grid {
          grid-template-columns: 1fr 1fr;
        }
        .proc-cell:last-child {
          grid-column: 1/-1;
        }
      }

      /* ---- ABOUT ---- */
      .story {
        padding: clamp(90px,30px) 0 0;
      }
      .story-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: clamp(36px, 5vw, 80px);
        align-items: start;
      }
      .story-copy p {
        font-size: clamp(16px, 1.5vw, 19px);
        line-height: 1.8;
        color: var(--dim);
        margin-bottom: 22px;
      }
      .story-copy p strong {
        color: var(--off);
      }
      .story-copy p em {
        color: var(--pinkL);
        font-style: normal;
      }
      .founder-card {
        border-radius: 24px;
        border: 1px solid var(--line);
        padding: clamp(30px, 4vw, 48px);
        background: linear-gradient(140deg, var(--navy2), #28093c 120%);
        position: sticky;
        top: 120px;
      }
      .founder-card .f-role {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12px;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        color: var(--pinkL);
      }
      .founder-card .f-name {
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(28px, 3vw, 40px);
        margin-top: 12px;
        text-transform: uppercase;
        letter-spacing: -0.01em;
      }
      .founder-card p {
        margin-top: 16px;
        font-size: 15px;
        line-height: 1.7;
        color: var(--dim);
      }
      .values {
        padding: clamp(100px, 12vw, 160px) 0 0;
      }
      .val-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 18px;
      }
      .val-card {
        border: 1px solid var(--line);
        border-radius: 22px;
        padding: clamp(26px, 3vw, 38px);
        min-height: 230px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 20px;
        transition:
          border-color 0.3s,
          transform 0.35s var(--ease),
          background 0.3s;
      }
      .val-card:hover {
        border-color: var(--pink);
        transform: translateY(-6px);
        background: rgba(203, 20, 87, 0.06);
      }
      .val-card i {
        font-style: normal;
        font-family: var(--disp);
        font-weight: 900;
        font-size: 34px;
        color: transparent;
        -webkit-text-stroke: 1.5px var(--pinkL);
      }
      .val-card b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 19px;
        text-transform: uppercase;
        letter-spacing: 0.02em;
        display: block;
      }
      .val-card span {
        font-size: 14px;
        line-height: 1.6;
        color: var(--dim);
        display: block;
        margin-top: 8px;
      }
      @media (max-width: 900px) {
        .story-grid {
          grid-template-columns: 1fr;
        }
        .founder-card {
          position: static;
        }
        .val-grid {
          grid-template-columns: 1fr 1fr;
        }
      }
      @media (max-width: 560px) {
        .val-grid {
          grid-template-columns: 1fr;
        }
      }

      /* ---- CONTACT ---- */
      .contact-grid {
        display: grid;
        grid-template-columns: 1.05fr 0.95fr;
        gap: clamp(36px, 5vw, 80px);
        align-items: start;
        padding-bottom: 20px;
      }
      .c-cards {
        display: grid;
        gap: 16px;
      }
      .c-card {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        border: 1px solid var(--line);
        border-radius: 18px;
        padding: 24px 28px;
        transition:
          border-color 0.3s,
          transform 0.3s,
          background 0.3s;
      }
      .c-card:hover {
        border-color: var(--pink);
        transform: translateX(8px);
        background: rgba(203, 20, 87, 0.07);
      }
      .c-card .c-l {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: var(--faint);
        display: block;
      }
      .c-card .c-v {
        font-family: var(--disp);
        font-weight: 700;
        font-size: clamp(16px, 1.7vw, 21px);
        margin-top: 6px;
        display: block;
        letter-spacing: 0.01em;
      }
      .c-card .arr2 {
        font-size: 22px;
        color: var(--pinkL);
        transition: transform 0.3s var(--ease);
      }
      .c-card:hover .arr2 {
        transform: translateX(6px);
      }
      .c-form {
        border: 1px solid var(--line);
        border-radius: 24px;
        padding: clamp(28px, 4vw, 44px);
        background: var(--navy2);
      }
      .c-form h3 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(22px, 2.4vw, 30px);
        text-transform: uppercase;
        letter-spacing: -0.01em;
      }
      .c-form p {
        margin-top: 10px;
        font-size: 14.5px;
        color: var(--dim);
        line-height: 1.6;
      }
      .f-row {
        margin-top: 22px;
      }
      .f-row label {
        display: block;
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: var(--faint);
        margin-bottom: 10px;
      }
      .f-row input,
      .f-row textarea,
      .f-row select {
        width: 100%;
        background: rgba(1, 2, 32, 0.6);
        border: 1px solid var(--line);
        border-radius: 12px;
        padding: 15px 18px;
        color: var(--off);
        font-family: var(--body);
        font-size: 15px;
        transition: border-color 0.25s;
      }
      .f-row select {
        appearance: none;
        background-image:
          linear-gradient(45deg, transparent 50%, var(--pinkL) 50%),
          linear-gradient(135deg, var(--pinkL) 50%, transparent 50%);
        background-position:
          calc(100% - 24px) 50%,
          calc(100% - 18px) 50%;
        background-size: 6px 6px;
        background-repeat: no-repeat;
      }
      .f-row input:focus,
      .f-row textarea:focus,
      .f-row select:focus {
        outline: none;
        border-color: var(--pink);
      }
      .f-row textarea {
        min-height: 130px;
        resize: vertical;
      }
      .c-form .btn {
        margin-top: 26px;
        width: 100%;
        justify-content: center;
      }
      .c-note {
        margin-top: 16px;
        font-size: 12.5px;
        color: var(--faint);
        text-align: center;
      }
      @media (max-width: 900px) {
        .contact-grid {
          grid-template-columns: 1fr;
        }
      }

      /* ============ VISIBILITY FIXES ============ */
      /* descender clipping: give reveal lines breathing room below the baseline */
      h1 .l {
        padding-bottom: 0.14em;
        margin-bottom: -0.14em;
      }
      h1 {
        line-height: 1;
      }
      #loader .l-mark {
        padding-bottom: 0.1em;
      }
      /* fallback when text-stroke is unsupported: never leave text transparent */
      @supports not (-webkit-text-stroke: 1px #fff) {
        .hollow,
        h1 .hollow,
        h2 .hollow {
          color: var(--off);
        }
        .mega-word {
          color: var(--off);
        }
        .client-track span {
          color: var(--dim);
        }
        .ghost-k,
        .flag-stage::before,
        .work-card .w-mark,
        .card .big-ic {
          opacity: 0;
        }
        .val-card i {
          color: var(--pinkL);
        }
      }
      /* slightly thicker strokes so hollow text reads on all screens */
      .client-track span {
        -webkit-text-stroke-width: 1.5px;
      }
      .mega-word {
        padding-bottom: 0.12em;
      }

      /* ============ TEAM ============ */
      .team {
        padding: clamp(100px, 12vw, 160px) 0 0;
      }
      .team-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 18px;
      }
      .t-card {
        border: 1px solid var(--line);
        border-radius: 22px;
        padding: clamp(24px, 3vw, 34px);
        transition:
          border-color 0.3s,
          transform 0.35s var(--ease),
          background 0.3s;
        display: flex;
        flex-direction: column;
        gap: 18px;
      }
      .t-card:hover {
        border-color: var(--pink);
        transform: translateY(-6px);
        background: rgba(203, 20, 87, 0.06);
      }
      .t-card.lead {
        grid-column: span 2;
        background: linear-gradient(140deg, var(--navy2), #28093c 130%);
        border-color: rgba(255, 107, 150, 0.3);
      }
      .t-av {
        width: 62px;
        height: 62px;
        border-radius: 50%;
        flex-shrink: 0;
        display: grid;
        place-items: center;
        font-family: var(--disp);
        font-weight: 900;
        font-size: 20px;
        color: #fff;
        background: linear-gradient(135deg, var(--pink), #71104c);
      }
      .t-card.lead .t-av {
        width: 74px;
        height: 74px;
        font-size: 24px;
        background: linear-gradient(135deg, var(--pinkL), var(--pink));
      }
      .t-card b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 18px;
        text-transform: uppercase;
        letter-spacing: 0.02em;
        display: block;
      }
      .t-card .t-role {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--pinkL);
        display: block;
        margin-top: 6px;
      }
      .t-card p {
        font-size: 13.5px;
        line-height: 1.6;
        color: var(--dim);
        margin-top: 8px;
      }
      @media (max-width: 900px) {
        .team-grid {
          grid-template-columns: 1fr 1fr;
        }
        .t-card.lead {
          grid-column: 1/-1;
        }
      }
      @media (max-width: 560px) {
        .team-grid {
          grid-template-columns: 1fr;
        }
      }

      /* hollow text: always visible, fills accent on hover */
      h2 .hollow {
        transition:
          color 0.3s,
          -webkit-text-stroke-color 0.3s;
      }
      h2:hover .hollow {
        color: var(--pinkL);
        -webkit-text-stroke-color: var(--pinkL);
      }

      /* ============ SPA PAGES ============ */
      main .page {
        display: none;
      }
      main .page.active {
        display: block;
        animation: pageIn 0.55s var(--ease);
      }
      @keyframes pageIn {
        from {
          opacity: 0;
          transform: translateY(18px);
        }
        to {
          opacity: 1;
          transform: none;
        }
      }
      @media (prefers-reduced-motion: reduce) {
        main .page.active {
          animation: none;
        }
      }
      .crumb {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12px;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        color: var(--faint);
        margin-bottom: 22px;
        display: flex;
        gap: 10px;
        align-items: center;
      }
      .crumb a {
        color: var(--dim);
      }
      .crumb a:hover {
        color: var(--pinkL);
      }
      .crumb i {
        font-style: normal;
        color: var(--pink);
      }
      .sd-grid {
        display: grid;
        grid-template-columns: 1.05fr 0.95fr;
        gap: clamp(32px, 5vw, 72px);
        align-items: start;
        padding: 30px 0;
      }
      .sd-copy p {
        font-size: clamp(16px, 1.5vw, 18.5px);
        line-height: 1.8;
        color: var(--dim);
        margin-bottom: 20px;
      }
      .sd-copy p strong {
        color: var(--off);
      }
      .sd-copy h4 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 20px;
        text-transform: uppercase;
        letter-spacing: 0.02em;
        margin: 34px 0 14px;
        color: var(--off);
      }
      .sd-side {
        position: sticky;
        top: 120px;
        display: grid;
        gap: 18px;
      }
      .sd-clients {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
        margin-top: 6px;
      }
      .sd-cta-card {
        border: 1px solid rgba(255, 107, 150, 0.3);
        border-radius: 22px;
        padding: 30px;
        background: linear-gradient(140deg, var(--navy2), #28093c 140%);
      }
      .sd-cta-card b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 19px;
        text-transform: uppercase;
        display: block;
      }
      .sd-cta-card p {
        font-size: 14px;
        color: var(--dim);
        line-height: 1.6;
        margin-top: 10px;
      }
      .svc-block h3 a {
        transition: color 0.25s;
      }
      .svc-block h3 a:hover {
        color: var(--pinkL);
      }
      .next-svc {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 20px;
        border: 1px solid var(--line);
        border-radius: 20px;
        padding: 26px 30px;
        margin-top: clamp(50px, 7vw, 80px);
        transition:
          border-color 0.3s,
          background 0.3s;
      }
      .next-svc:hover {
        border-color: var(--pink);
        background: rgba(203, 20, 87, 0.06);
      }
      .next-svc .n-l {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: var(--faint);
      }
      .next-svc .n-t {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(18px, 2.2vw, 26px);
        text-transform: uppercase;
        margin-top: 6px;
      }
      .next-svc .n-t:hover{
        color:#c91357;
      }
      .next-svc .arr2 {
        font-size: 26px;
        color: var(--pinkL);
      }

      /* ============ SPORTS VERTICAL PAGE (volt scheme from The Kika Sports & Events logo) ============ */
      .page[data-page^="sports"] {
        --pink: #c8f135;
        --pinkL: #deff5e;
      }
      .page[data-page^="sports"] .btn {
        color: var(--navy);
      }
      .page[data-page^="sports"] .btn::before {
        background: #efff9a;
      }
      .page[data-page^="sports"] .glow {
        background: radial-gradient(
          circle,
          rgba(200, 241, 53, 0.16),
          transparent 62%
        );
      }
      .page[data-page^="sports"] .tape {
        color: var(--navy);
        box-shadow: 0 10px 50px rgba(200, 241, 53, 0.25);
      }
      .page[data-page^="sports"] .s-item:hover {
        background: rgba(200, 241, 53, 0.07);
      }
      .page[data-page^="sports"] ::selection {
        background: #c8f135;
        color: var(--navy);
      }
      .volt-dot {
        display: inline-block;
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #c8f135;
        margin-left: 7px;
        vertical-align: middle;
        animation: voltPulse 1.6s infinite;
      }
      @keyframes voltPulse {
        0%,
        100% {
          opacity: 1;
          transform: scale(1);
        }
        50% {
          opacity: 0.4;
          transform: scale(0.7);
        }
      }
      /* paper plane from the vertical logo */
      .plane-wrap {
        position: absolute;
        right: clamp(10px, 7vw, 120px);
        top: 120px;
        width: clamp(140px, 22vw, 300px);
        pointer-events: none;
        animation: planeFloat 5s ease-in-out infinite;
      }
      @keyframes planeFloat {
        0%,
        100% {
          transform: translateY(0) rotate(0deg);
        }
        50% {
          transform: translateY(-18px) rotate(2deg);
        }
      }
      .plane-wrap svg {
        width: 100%;
        height: auto;
        filter: drop-shadow(0 0 24px rgba(200, 241, 53, 0.25));
      }
      .plane-trail {
        position: absolute;
        top: 64%;
        right: 96%;
        width: clamp(120px, 18vw, 260px);
        height: 2px;
        background: linear-gradient(90deg, transparent, #c8f135);
        opacity: 0.5;
      }
      /* heartbeat / ECG line */
      .ecg {
        margin: clamp(40px, 6vw, 70px) 0 0;
        overflow: hidden;
      }
      .ecg svg {
        width: 100%;
        height: 70px;
        display: block;
      }
      .ecg path {
        fill: none;
        stroke: #c8f135;
        stroke-width: 2.5;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-dasharray: 1200;
        stroke-dashoffset: 1200;
        animation: ecgDraw 3.2s linear infinite;
        filter: drop-shadow(0 0 8px rgba(200, 241, 53, 0.6));
      }
      @keyframes ecgDraw {
        to {
          stroke-dashoffset: 0;
        }
      }
      /* live badge */
      .live {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12px;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: #deff5e;
        border: 1px solid rgba(200, 241, 53, 0.4);
        border-radius: 100px;
        padding: 9px 18px;
      }
      .live::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #c8f135;
        animation: voltPulse 1.2s infinite;
      }
      /* scoreboard */
      .scoreboard {
        border: 1px solid rgba(200, 241, 53, 0.3);
        border-radius: 26px;
        overflow: hidden;
        background: linear-gradient(160deg, #070936, #0d1030);
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        padding: clamp(28px, 5vw, 56px) clamp(20px, 4vw, 56px);
        gap: clamp(14px, 3vw, 40px);
        position: relative;
      }
      .scoreboard::before {
        content: "FULL TIME";
        position: absolute;
        top: 18px;
        left: 50%;
        transform: translateX(-50%);
        font-family: var(--mono);
        font-weight: 600;
        font-size: 10.5px;
        letter-spacing: 0.3em;
        color: rgba(222, 255, 94, 0.5);
      }
      .sb-team {
        text-align: center;
      }
      .sb-team b {
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(17px, 2.4vw, 30px);
        text-transform: uppercase;
        letter-spacing: 0.02em;
        display: block;
      }
      .sb-team span {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11px;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        color: var(--faint);
        display: block;
        margin-top: 8px;
      }
      .sb-score {
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(40px, 7vw, 88px);
        letter-spacing: 0.02em;
        color: #c8f135;
        text-shadow: 0 0 30px rgba(200, 241, 53, 0.45);
        white-space: nowrap;
      }
      /* sport offer cards */
      .sp-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 18px;
      }
      .sp-card {
        border: 1px solid var(--line);
        border-radius: 22px;
        padding: clamp(24px, 3vw, 34px);
        min-height: 250px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 20px;
        position: relative;
        overflow: hidden;
        transition:
          border-color 0.3s,
          transform 0.35s var(--ease),
          background 0.3s;
      }
      .sp-card::after {
        content: "";
        position: absolute;
        inset: auto -30% -55% -30%;
        height: 70%;
        background: radial-gradient(
          ellipse at bottom,
          rgba(200, 241, 53, 0.14),
          transparent 70%
        );
        opacity: 0;
        transition: opacity 0.4s;
      }
      .sp-card:hover {
        border-color: #c8f135;
        transform: translateY(-8px);
      }
      .sp-card:hover::after {
        opacity: 1;
      }
      .sp-card .sp-ic {
        font-size: 30px;
      }
      .sp-card b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 19px;
        text-transform: uppercase;
        letter-spacing: 0.02em;
        display: block;
      }
      .sp-card p {
        font-size: 14px;
        line-height: 1.6;
        color: var(--dim);
        margin-top: 8px;
      }
      .sp-card .sp-no {
        position: absolute;
        top: 18px;
        right: 22px;
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.16em;
        color: rgba(222, 255, 94, 0.55);
      }
      @media (max-width: 900px) {
        .sp-grid {
          grid-template-columns: 1fr 1fr;
        }
      }
      @media (max-width: 560px) {
        .sp-grid {
          grid-template-columns: 1fr;
        }
      }
      /* volt flagship stage */
      .volt-stage {
        border-radius: 28px;
        overflow: hidden;
        position: relative;
        border: 1px solid rgba(200, 241, 53, 0.25);
        background: linear-gradient(
          135deg,
          #070936 0%,
          #12203a 55%,
          #39510e 160%
        );
        padding: clamp(36px, 6vw, 80px);
        min-height: 440px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
      }
      .volt-stage::before {
        content: "ONE8 RUN";
        position: absolute;
        top: -2%;
        left: 50%;
        transform: translateX(-50%);
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(64px, 12vw, 180px);
        letter-spacing: -0.02em;
        white-space: nowrap;
        color: transparent;
        -webkit-text-stroke: 1.5px rgba(200, 241, 53, 0.18);
        pointer-events: none;
      }
      .volt-stage .kicker {
        color: #deff5e;
      }
      .volt-stage h3 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(26px, 3.6vw, 46px);
        line-height: 1.05;
        text-transform: uppercase;
        max-width: 20ch;
      }
      .volt-stage p {
        margin-top: 18px;
        font-size: 16px;
        line-height: 1.7;
        color: rgba(247, 247, 251, 0.78);
        max-width: 56ch;
      }
      .volt-stage p strong {
        color: #fff;
      }
      .volt-stage .chip {
        border-color: rgba(200, 241, 53, 0.4);
        color: #deff5e;
      }
      .volt-stage .chip:hover {
        background: #c8f135;
        color: var(--navy);
        border-color: #c8f135;
      }
      /* diagonal speed lines background */
      .speed {
        position: absolute;
        inset: 0;
        pointer-events: none;
        z-index: -1;
        opacity: 0.5;
        background: repeating-linear-gradient(
          -55deg,
          transparent 0 90px,
          rgba(200, 241, 53, 0.04) 90px 92px
        );
      }

      /* ============ HOME WORK GALLERY ============ */
      .gallery {
        padding: clamp(110px, 13vw, 90px) 0 0;
      }
      .g-strip {
        display: flex;
        gap: 16px;
        overflow-x: auto;
        padding: 6px 4px 22px;
        scroll-snap-type: x mandatory;
        cursor: grab;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
      }
      .g-strip::-webkit-scrollbar {
        display: none;
      }
      .g-strip.dragging {
        cursor: grabbing;
        scroll-snap-type: none;
      }
      .g-tile {
        flex: 0 0 clamp(240px, 30vw, 380px);
        aspect-ratio: 4/5;
        border-radius: 22px;
        overflow: hidden;
        position: relative;
        border: 1px solid var(--line);
        scroll-snap-align: start;
        display: flex;
        align-items: flex-end;
        background: linear-gradient(150deg, var(--navy2), #28093c 140%);
        transition:
          transform 0.4s var(--ease),
          border-color 0.3s;
      }
      .g-tile:hover {
        transform: translateY(-8px);
        border-color: rgba(255, 107, 150, 0.5);
      }
      .g-tile img {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.6s var(--ease);
      }
      .g-tile:hover img {
        transform: scale(1.06);
      }
      .g-tile .g-cap {
        position: relative;
        width: 100%;
        padding: 60px 20px 18px;
        background: linear-gradient(transparent, rgba(1, 2, 32, 0.92));
      }
      .g-tile .g-cap b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 17px;
        text-transform: uppercase;
        letter-spacing: 0.02em;
        display: block;
      }
      .g-tile .g-cap span {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--pinkL);
      }
      .g-hint {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        color: var(--faint);
        display: flex;
        align-items: center;
        gap: 12px;
        margin-top: 6px;
      }
      .g-hint::before {
        content: "⟵";
        color: var(--pinkL);
      }
      .g-hint::after {
        content: "⟶";
        color: var(--pinkL);
      }

      /* ============ CREATIVE PLAYGROUND ============ */
      .playground {
        padding: 60px,60px;
      }
      .pg-shell {
        display: grid;
        grid-template-columns: 0.95fr 1.05fr;
        gap: clamp(28px, 4vw, 56px);
        border: 1px solid var(--line);
        border-radius: 28px;
        padding: clamp(28px, 4vw, 52px);
        background: linear-gradient(140deg, var(--navy2), #1b0a35 140%);
      }
      .pg-controls .pg-lab {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: var(--faint);
        display: block;
        margin: 24px 0 10px;
      }
      .pg-controls .pg-lab:first-child {
        margin-top: 0;
      }
      .pg-controls input[type="text"] {
        width: 100%;
        background: rgba(1, 2, 32, 0.6);
        border: 1px solid var(--line);
        border-radius: 12px;
        padding: 14px 16px;
        color: var(--off);
        font-family: var(--disp);
        font-weight: 800;
        font-size: 17px;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        transition: border-color 0.25s;
      }
      .pg-controls input[type="text"]:focus {
        outline: none;
        border-color: var(--pink);
      }
      .pg-opts {
        display: flex;
        gap: 8px;
        flex-wrap: wrap;
      }
      .pg-opts button {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12px;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        padding: 10px 16px;
        border-radius: 100px;
        border: 1px solid var(--line);
        color: var(--dim);
        transition: all 0.25s;
      }
      .pg-opts button:hover {
        border-color: var(--pinkL);
        color: var(--pinkL);
      }
      .pg-opts button.on {
        background: var(--off);
        border-color: var(--off);
        color: var(--navy);
      }
      .pg-swatch {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        border: 2px solid transparent;
        padding: 0 !important;
        transition:
          transform 0.2s,
          border-color 0.2s;
      }
      .pg-swatch:hover {
        transform: scale(1.12);
      }
      .pg-swatch.on {
        border-color: #fff !important;
        background: none;
      }
      .pg-actions {
        display: flex;
        gap: 12px;
        margin-top: 28px;
        flex-wrap: wrap;
      }
      .pg-stage {
        border-radius: 20px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 22px;
        min-height: 380px;
        padding: 36px;
        text-align: center;
        position: relative;
        overflow: hidden;
        transition: background 0.4s;
      }
      .pg-mark {
        width: 110px;
        height: 110px;
        display: grid;
        place-items: center;
        font-family: var(--disp);
        font-weight: 900;
        font-size: 52px;
        line-height: 1;
        transition: all 0.35s var(--ease);
      }
      .pg-name {
        font-family: var(--disp);
        font-weight: 900;
        font-size: clamp(26px, 3.2vw, 44px);
        letter-spacing: 0.02em;
        text-transform: uppercase;
        transition: all 0.3s;
      }
      .pg-tag {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 13px;
        letter-spacing: 0.24em;
        text-transform: uppercase;
        transition: all 0.3s;
      }
      .pg-note {
        font-size: 12.5px;
        color: var(--faint);
        text-align: center;
        margin-top: 14px;
      }
      @media (max-width: 900px) {
        .pg-shell {
          grid-template-columns: 1fr;
        }
      }

      /* sports sub-page back-link */
      .page[data-page^="sports/"] .crumb a {
        color: var(--dim);
      }
      .page[data-page^="sports/"] .crumb a:hover {
        color: #deff5e;
      }

      /* ============ BLOG ============ */
      .blog-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 18px;
        padding-bottom: 20px;
      }
      .b-card {
        border: 1px solid var(--line);
        border-radius: 22px;
        padding: clamp(24px, 3vw, 32px);
        min-height: 230px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: 22px;
        position: relative;
        overflow: hidden;
        transition:
          border-color 0.3s,
          transform 0.35s var(--ease),
          background 0.3s;
      }
      .b-card:hover {
        border-color: var(--pink);
        transform: translateY(-6px);
        background: rgba(203, 20, 87, 0.05);
      }
      .b-card .b-date {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--faint);
      }
      .b-card h3 {
        font-family: var(--disp);
        font-weight: 800;
        font-size: clamp(17px, 1.8vw, 21px);
        line-height: 1.25;
        letter-spacing: 0.005em;
        margin-top: 14px;
      }
      .b-card .b-read {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 12px;
        letter-spacing: 0.16em;
        text-transform: uppercase;
        color: var(--pinkL);
        display: flex;
        align-items: center;
        gap: 8px;
      }
      .b-card.b-featured {
        grid-column: span 3;
        min-height: 200px;
        background: linear-gradient(120deg, var(--navy2), #28093c 130%);
        border-color: rgba(255, 107, 150, 0.3);
      }
      .b-card.b-featured h3 {
        font-size: clamp(24px, 3vw, 38px);
        max-width: 24ch;
      }
      @media (max-width: 960px) {
        .blog-grid {
          grid-template-columns: 1fr 1fr;
        }
        .b-card.b-featured {
          grid-column: span 2;
        }
      }
      @media (max-width: 600px) {
        .blog-grid {
          grid-template-columns: 1fr;
        }
        .b-card.b-featured {
          grid-column: span 1;
        }
      }

      /* ============ TESTIMONIALS ============ */
      .testi {
        padding: 60px,60px;
      }
      .testi-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 18px;
      }
      .t-quote {
        border: 1px solid var(--line);
        border-radius: 22px;
        padding: clamp(26px, 3.5vw, 40px);
        display: flex;
        flex-direction: column;
        gap: 22px;
        justify-content: space-between;
        transition:
          border-color 0.3s,
          transform 0.35s var(--ease),
          background 0.3s;
        position: relative;
      }
      
      .t-quote:hover {
        border-color: var(--pink);
        transform: translateY(-6px);
        background: rgba(203, 20, 87, 0.05);
      }
      .t-quote p {
        font-size: 15.5px;
        line-height: 1.75;
        color: var(--dim);
      }
      .t-quote .t-who b {
        font-family: var(--disp);
        font-weight: 800;
        font-size: 16px;
        display: block;
        text-transform: uppercase;
        letter-spacing: 0.02em;
      }
      .t-quote .t-who span {
        font-family: var(--mono);
        font-weight: 600;
        font-size: 11.5px;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: var(--pinkL);
      }
      @media (max-width: 820px) {
        .testi-grid {
          grid-template-columns: 1fr;
        }
      }

      /* ============ WHATSAPP FLOAT ============ */
      .wa-float {
        position: fixed;
        right: 22px;
        bottom: 22px;
        z-index: 95;
        width: 58px;
        height: 58px;
        border-radius: 50%;
        background: #25d366;
        display: grid;
        place-items: center;
        box-shadow: 0 12px 40px rgba(37, 211, 102, 0.4);
        transition: transform 0.3s var(--ease);
      }
      .wa-float:hover {
        transform: scale(1.1) translateY(-3px);
      }
      .wa-float svg {
        width: 30px;
        height: 30px;
        fill: #fff;
      }
      .wa-float::after {
        content: "";
        position: absolute;
        inset: -5px;
        border-radius: 50%;
        border: 2px solid rgba(37, 211, 102, 0.5);
        animation: waPing 2s infinite;
      }
      @keyframes waPing {
        0% {
          transform: scale(0.9);
          opacity: 1;
        }
        100% {
          transform: scale(1.35);
          opacity: 0;
        }
      }
      @media (prefers-reduced-motion: reduce) {
        .wa-float::after {
          animation: none;
          display: none;
        }
      }

/* .flag-stage (moved from inline <style> on home page) */
.flag-stage {
            background:
              linear-gradient(
                135deg,
                rgba(1, 2, 32, 0.9) 0%,
                rgba(1, 2, 32, 0.65) 45%,
                rgba(201, 19, 87, 0.75) 100%
              ),
              url("https://thekika.com/wp-content/uploads/2026/07/unnamed.webp")
                center center / cover no-repeat;
/* Mobile Navigation */

}
/* ================= MOBILE NAV ================= */

.hamburger {
    display: none;
    width: 30px;
    cursor: pointer;
    flex-direction: column;
    gap: 5px;
    z-index: 1001;
}

.hamburger span {
    width: 100%;
    height: 3px;
    background: #fff;
    border-radius: 5px;
    transition: .3s;
}

@media (max-width: 991px) {

    .nav-in{
        position: relative;
    }

    .logo img{
        width:60px !important;
    }

    .btn.sm{
        display:none;
    }

    .hamburger{
        display:flex;
    }

    .nav-links{
        position:absolute;
        top:100%;
        left:0;
        width:100%;
        background:#010220;
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:0;
        max-height:0;
        overflow:hidden;
        transition:.4s ease;
        border-top:1px solid rgba(255,255,255,.08);
    }

    .nav-links a{
        width:100%;
        text-align:center;
        padding:18px 20px;
        border-bottom:1px solid rgba(255,255,255,.08);
    }

    .nav-links.show{
        max-height:600px;
        padding:15px 0;
    }

    /* Hamburger Animation */

    .hamburger.active span:nth-child(1){
        transform:rotate(45deg) translate(6px,6px);
    }

    .hamburger.active span:nth-child(2){
        opacity:0;
    }

    .hamburger.active span:nth-child(3){
        transform:rotate(-45deg) translate(5px,-5px);
    }
}
@media (max-width: 991px){
  .flag-bib{
    display: none;
  }
  .plane-wrap{
    display: none;
  }
}
.g-strip {
  display: flex;
  gap: 16px; /* adjust to your tile spacing */
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: auto; /* keep 'auto', not 'smooth' — smooth fights manual scrollLeft writes */
  cursor: grab;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-y; /* let vertical page scroll pass through untouched */
  overscroll-behavior-x: contain;
  user-select: none; /* stop text/image selection while dragging */
  -webkit-user-select: none;
  scrollbar-width: none; /* Firefox: hide scrollbar */
}

.g-strip::-webkit-scrollbar {
  display: none; /* Chrome/Safari: hide scrollbar */
}

.g-strip.dragging {
  cursor: grabbing;
  scroll-snap-type: none; /* disable snap while actively dragging, if you use snap */
}


.g-tile {
  flex: 0 0 auto;
  width: 320px;       /* set this to whatever size you want tiles to be */
  -webkit-user-drag: none;
}

.g-tile img {
  width: 100%;
  height: auto;        /* or a fixed height + object-fit: cover if you want uniform crop */
  display: block;
  -webkit-user-drag: none;
  pointer-events: none;
}