
        .mlp-provider-mosaic {
          display: grid;
          grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr));
          gap: clamp(28px, 3vw, 44px) clamp(20px, 2.5vw, 32px);
        }
        .mlp-provider-tile {
          position: relative;
          display: flex;
          flex-direction: column;
          align-items: center;
          text-align: center;
          padding: 14px 8px 10px;
          border-radius: 16px;
          transition: transform 280ms cubic-bezier(.22,.61,.36,1), background 280ms ease;
        }
        .mlp-provider-tile:hover { transform: translateY(-4px); }
        .mlp-provider-cell { position: relative; z-index: 1; scroll-margin: 120px 0; }
        /* The hovered tile's tooltip must paint over the NEXT row's tiles,
           which come later in the DOM: lift the whole cell above its siblings. */
        .mlp-provider-cell:hover, .mlp-provider-cell:focus-within { z-index: 30; }
        /* Deep-link focus: only the LOGO glows, an accent halo following its
           shape (drop-shadow, not a box), breathing four times while it lifts.
           Same rhythm as the Connectors page focus. */
        .mlp-provider-tile.is-focused .mlp-provider-logo { animation: mlpProvLogo 0.85s ease-in-out 4; }
        @keyframes mlpProvLogo {
          0%, 100% { transform: scale(1); filter: drop-shadow(0 6px 12px rgba(0,0,0,0.18)); }
          40% { transform: scale(1.1);
            filter: drop-shadow(0 0 10px var(--pf-ac)) drop-shadow(0 0 24px var(--pf-ac)) drop-shadow(0 0 44px color-mix(in srgb, var(--pf-ac) 45%, transparent)); }
        }
        .mlp-provider-partner { position: absolute; top: 0; left: 50%; transform: translate(-50%, -52%); z-index: 3;
          filter: drop-shadow(0 0 9px rgba(246,196,83,0.55)); }
        @media (prefers-reduced-motion: reduce) {
          .mlp-provider-tile.is-focused .mlp-provider-logo { animation: none;
            filter: drop-shadow(0 0 10px var(--pf-ac)) drop-shadow(0 0 22px var(--pf-ac)); }
        }
        .mlp-provider-tile:hover .mlp-provider-logo {
          transform: scale(1.06);
          filter: drop-shadow(0 12px 24px rgba(124,111,240,0.28));
        }
        .mlp-provider-tile:hover .mlp-provider-label {
          background-image: linear-gradient(120deg, #22D3EE, #7C6FF0);
          background-clip: text;
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          color: transparent;
        }
        .mlp-provider-tile:hover .mlp-provider-desc { opacity: 1; }
        .mlp-provider-logo {
          width: 72px;
          height: 72px;
          object-fit: contain;
          filter: drop-shadow(0 6px 12px rgba(0,0,0,0.18));
          transition: transform 280ms cubic-bezier(.22,.61,.36,1), filter 280ms ease;
        }
        .mlp-provider-desc {
          position: absolute; top: calc(100% - 4px); left: 50%; z-index: 4;
          width: max-content; max-width: 200px !important; margin-top: 0 !important;
          padding: 8px 10px; border-radius: 10px; pointer-events: none;
          background: var(--mel-surface-card, rgba(15,18,32,0.96));
          box-shadow: 0 10px 28px rgba(0,0,0,0.22), inset 0 0 0 1px rgba(124,111,240,0.18);
          opacity: 0;
          transform: translate(-50%, 4px);
          transition: opacity 200ms ease, transform 200ms ease;
        }
        .mlp-provider-tile:hover .mlp-provider-desc { transform: translate(-50%, 0); }
        @media (hover: none) {
          .mlp-provider-desc { display: none; }
        }
      