#  Transforming Global Supply Chains Through the Agentic Business Network 

   

 

[ Orchestrate Multi-Enterprise Operations ](/ai-mode?query=Eliminate+Stockouts) 

[ Explore AI-Powered Network Intelligence ](/ai-mode?query=Improve+OTIF) 

[ Enhance Network Visibility ](/ai-mode?query=Reduce+Costs) 

[ Reduce Supply Chain Risk ](/ai-mode?query=Increase+End%E2%80%91to%E2%80%91End+Visibility) 

[ Accelerate Order‑to‑Cash ](/ai-mode?query=Accelerate+Order%E2%80%91to%E2%80%91Cash) 

[ Improve Partner Collaboration ](/ai-mode?query=Optimize+Inventory+Levels) 

 

 

 

 

 

 

 

 

 


        .tl-net-wrap { padding: 56px 0px; text-align: center; }
        .tl-net-kicker { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: #007A67; margin-bottom: 14px; }
        .tl-net-kicker-dot { width: 6px; height: 6px; border-radius: 50%; background: #00A7B5; display: inline-block; }
        .tl-net-h em { color: #007E9E; }
        .tl-net-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; width: 100%; max-width: 100%; margin: 0 auto; }
        .tl-net-card { border-radius: 12px; border: 1px solid #E5F3ED; background: #F4F4F4; padding: 26px 14px 22px; display: flex; flex-direction: column; align-items: center; text-align: center; position: relative; overflow: hidden; transition: border-color 0.25s, background 0.25s; cursor: default; }
        .tl-net-card:hover { border-color: #007E9E; background: #fff; }
        .tl-net-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: #006341; border-radius: 12px 12px 0 0; transform: scaleX(0); transition: transform 0.3s ease; transform-origin: left; }
        .tl-net-card:hover::before { transform: scaleX(1); }
        .tl-net-icon { width: 38px; height: 38px; border-radius: 9px; background: #E0F4F0; display: flex; align-items: center; justify-content: center; margin: 0 auto 12px; }
        .tl-net-icon svg { width: 18px; height: 18px; }
        .tl-net-chip { display: inline-block; font-size: 10px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; background: #E5F3ED; color: #006341; border-radius: 4px; padding: 3px 8px; margin-bottom: 11px; }
        .tl-net-num { font-size: 30px; font-weight: 700; color: #0B3B2E; line-height: 1; margin-bottom: 8px; letter-spacing: -0.02em; }
        .tl-net-num span { color: #007E9E; }
        .tl-net-label { font-size: 12px; color: #3D5249; line-height: 1.45; }

        /* Added Mobile Responsiveness */
        @media (max-width: 1024px) {
            .tl-net-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        }
        @media (max-width: 768px) {
            .tl-net-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        }
        @media (max-width: 480px) {
            .tl-net-grid { grid-template-columns: 1fr; }
        }

## Customers Transforming Supply Chain Performance with TraceLink

Leading life sciences and healthcare organizations use TraceLink to digitalize business transactions, collaborate across shared processes, ensure compliance with global traceability requirements, and move toward an Agentic Supply Chain Operating Model.

Customers

  

1,750+

Life sciences companies globally



Network

  

315K+

Healthcare &amp; supply chain partners connected



Partners

  

40+

Solution &amp; technology partners worldwide



Global Presence 

   

125+

Countries across the global supply network



Orchestration

   

Millions

Multi-enterprise transactions orchestrated annually







 

 

 
.vidyard-player-container{margin: 0 auto !important;}
## Digitalization, Compliance, and Agentic AI

Inside Cheplapharm’s Evolving Supply Chain Digitalization Journey

![What is Your Supply Chain Without OPUS](https://play.vidyard.com/921yzRxKjsDC1ikPw1LDrX.jpg) 

 

 

 
  .related_cards_section {
     padding: 60px 0 40px 0 !important;
  }
  /* --- COMPLETELY ISOLATED NAMESPACE: "tl-video-" --- */
  
  .tl-video-wrapper {
    position: relative !important; 
    
    /* TAKES FULL WIDTH OF THE PARENT CONTAINER */
    width: 100% !important; 
    margin: 0 auto !important;
    padding: 40px 80px 80px 80px !important; 
    box-sizing: border-box;
  }
  
  .tl-video-viewport {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 20px !important;
    overflow-x: auto !important;
    
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; 
    -ms-overflow-style: none; 
    width: 100% !important;
    padding-bottom: 15px; 
  }
  .tl-video-viewport::-webkit-scrollbar {
    display: none; 
  }
  /* --- REUSABLE CARD CLASS --- */
  .tl-video-card {
    background-color: #ffffff !important;
    border-radius: 20px !important;
    border: 1px solid #eaeaea !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08) !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    
    /* Dynamically stretches/shrinks to fit exactly 3 cards across the full width */
    flex: 0 0 calc((100% - 40px) / 3) !important; 
    min-width: 280px !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
  }
  /* --- ARROWS --- */
  .tl-video-arrow {
    position: absolute !important;
    top: 50% !important; 
    transform: translateY(-50%) !important; 
    width: 54px !important;
    height: 54px !important;
    background-color: #D6EAE3 !important; 
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #2F6F5A !important; 
    text-decoration: none !important;
    font-size: 24px !important;
    font-weight: 300 !important;
    transition: all 0.2s ease !important;
    /*z-index: 10 !important;*/
    line-height: 1 !important;
    cursor: pointer !important;
    user-select: none;
  }
  
  .tl-video-arrow:hover { background-color: #BDE0D3 !important; }
  .tl-video-prev-btn { left: 10px !important; }
  .tl-video-next-btn { right: 10px !important; }
  /* --- PAGINATION --- */
  .tl-video-pagination {
    position: absolute !important;
    bottom: 20px !important; 
    left: 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important; 
    z-index: 20 !important;
  }
  
  .tl-video-dash {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    width: auto !important;
    height: auto !important;
    background-color: transparent !important;
    font-size: 0 !important;
    color: transparent !important;
    padding: 0 !important;
    border: none !important;
  }
  
  .tl-video-dash::before, 
  .tl-video-last-dot {
    content: '' !important;
    display: block !important;
    width: 5px !important;
    min-width: 5px !important;
    height: 5px !important;
    min-height: 5px !important;
    border-radius: 50% !important;
    background-color: #A3A3A3 !important; 
    transition: all 0.3s ease !important;
  }
  
  .tl-video-dash::after {
    content: '' !important;
    display: block !important;
    width: 40px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background-color: #A3A3A3 !important;
    transition: all 0.3s ease !important;
  }
  
  .tl-video-dash.active::before { background-color: #358359 !important; }
  .tl-video-dash.active::after { background-color: #358359 !important; width: 80px !important; }
  .tl-video-dash.active + .tl-video-dash::before,
  .tl-video-dash.active + .tl-video-last-dot { background-color: #358359 !important; }
  /* --- MOBILE RESPONSIVENESS --- */
  @media (max-width: 900px) {
    .tl-video-wrapper { padding: 20px 0 60px 0 !important; }
    .tl-video-arrow { display: none !important; } 
    /* Ensures cards stack nicely into a single scroll line on small screens */
    .tl-video-card { flex: 0 0 280px !important; }
  }
## **Watch How Industry Leaders Are Advancing AI-Driven Supply Chains**  


<a class="ck-anchor tl-video-arrow tl-video-prev-btn" id="tl-video-prev-trigger">←</a> <a class="ck-anchor tl-video-arrow tl-video-next-btn" id="tl-video-next-trigger">→</a>

![NTT DATA](https://play.vidyard.com/Le4jyHrKuqGhSmEcYFAr6N.jpg)

###### From Digital Foundations to Agentic AI: NTT DATA on Aligning Data, Process, and People in Life Sciences Supply Chains





![Tecsys](https://play.vidyard.com/drpSymHAYSq72JVrHd2DMM.jpg)

###### Making AI Work Across the Supply Chain: Tecsys on Data Discipline, Execution, and Network Effects





![Amalia Technologies](https://play.vidyard.com/fSAgLAAhYghwETtTs7wGke.jpg)

###### Transforming Track and Trace at Enterprise Scale: How Amalia Technologies Guided Fresenius Medical Care’s Transition to TraceLink





![Kinaxis](https://play.vidyard.com/mX1xuK2DoKo7u2LqH5n8Vg.jpg)

###### Unifying Visibility, Planning, and Agentic AI: Kinaxis on the Future of Supply Chain Decision-Making





![Genpact](https://play.vidyard.com/sbG5UKsiegB4h4DXkydLqc.jpg)

###### Evolving the Supply Chain Mindset: How AI is Reshaping Behaviors, Roles, and Operating Models—Insights from Genpact





![Agentic AI](https://play.vidyard.com/5c9KLUBBqfsP1voc8SGKue.jpg)

###### From Company Culture to Data Foundations: How Santen Is Preparing Its Organization for Agentic AI





![Agentic AI](https://play.vidyard.com/guMPXsATvHdQYjVbUYRvZe.jpg)

###### The Partnership Mindset Supply Chains Need: Merz Pharma on Digitalization, Crisis Readiness, and Agentic AI





![Build high impact supply chain](https://play.vidyard.com/fSAgLAAhYghwETtTs7wGke.jpg)

###### Powering Innovation in Life Sciences: How Amalia Technologies Uses TraceLink POET to Build High-Impact Supply Chain Solutions







<a class="tl-video-dash active"> </a> <a class="tl-video-dash"> </a> <a class="tl-video-dash"> </a> <a class="tl-video-dash"> </a> <a class="tl-video-dash"> </a> <a class="tl-video-dash"> </a> <a class="tl-video-last-dot"> </a>




// Wrapped to prevent Drupal conflicts
(function() {
    document.addEventListener("DOMContentLoaded", function() {
        const viewport = document.getElementById('tl-video-scroll-viewport');
        if (!viewport) return;
        const mainContainer = document.getElementById('tl-video-main-container');
        const nextBtn = document.getElementById('tl-video-next-trigger');
        const prevBtn = document.getElementById('tl-video-prev-trigger');
        const dashes = mainContainer.querySelectorAll('.tl-video-dash');
        const lastDot = mainContainer.querySelector('.tl-video-last-dot');
        
        let currentIndex = 0;
        let autoScrollTimer = null;
        // Gets the exact width of a card + its gap (scales automatically)
        function getCardWidth() {
            const cards = viewport.querySelectorAll('.tl-video-card');
            if (cards.length > 1) {
                return cards[1].offsetLeft - cards[0].offsetLeft;
            }
            return 320; 
        }
        // Calculates the maximum number of scrolls physically possible before hitting the right wall
        function getMaxIndex() {
            let cardWidth = getCardWidth();
            let maxScroll = viewport.scrollWidth - viewport.clientWidth;
            return Math.max(0, Math.round(maxScroll / cardWidth)); 
        }
        // Dynamically hides dots we can't scroll to, eliminating the blank space issue
        function configureDots() {
            let maxIdx = getMaxIndex();
            dashes.forEach((dash, i) => {
                if (i > maxIdx) {
                    dash.style.display = 'none';
                } else {
                    dash.style.display = 'flex';
                }
            });
            
            // Keeps the little ending dot visually attached to the last dashed line
            if (maxIdx < dashes.length - 1) {
                lastDot.style.display = 'block';
            }
        }
        function updateDotsVisual() {
            let cardWidth = getCardWidth();
            let currentScroll = viewport.scrollLeft;
            let maxScroll = viewport.scrollWidth - viewport.clientWidth;
            let maxIdx = getMaxIndex();
            
            let activeIndex = Math.round(currentScroll / cardWidth);
            
            // If the user has scrolled fully to the right, guarantee the last visible dot lights up
            if (currentScroll >= maxScroll - 10) {
                activeIndex = maxIdx;
            }
            if (activeIndex < 0) activeIndex = 0;
            if (activeIndex > maxIdx) activeIndex = maxIdx;
            currentIndex = activeIndex;
            dashes.forEach((dash, i) => {
                dash.classList.toggle('active', i === activeIndex);
            });
        }
        function goToCard(index) {
            let maxIdx = getMaxIndex();
            let cardWidth = getCardWidth();
            let maxScroll = viewport.scrollWidth - viewport.clientWidth;
            
            // Looping behavior
            if (index > maxIdx) index = 0; 
            if (index < 0) index = maxIdx; 
            
            currentIndex = index;
            
            // If going to the absolute end, ensure we scroll to the max limit exactly
            if (currentIndex === maxIdx) {
                viewport.scrollTo({ left: maxScroll, behavior: 'smooth' });
            } else {
                viewport.scrollTo({ left: currentIndex * cardWidth, behavior: 'smooth' });
            }
        }
        function startAutoScroll() {
            if (autoScrollTimer) clearInterval(autoScrollTimer);
            autoScrollTimer = setInterval(() => {
                goToCard(currentIndex + 1);
            }, 4000); 
        }
        function stopAutoScroll() {
            if (autoScrollTimer) clearInterval(autoScrollTimer);
        }
        // Listeners
        window.addEventListener('resize', () => {
            configureDots();
            updateDotsVisual();
        });
        nextBtn.addEventListener('click', (e) => {
            e.preventDefault();
            stopAutoScroll();
            goToCard(currentIndex + 1);
            startAutoScroll();
        });
        prevBtn.addEventListener('click', (e) => {
            e.preventDefault();
            stopAutoScroll();
            goToCard(currentIndex - 1);
            startAutoScroll();
        });
        dashes.forEach((dash, i) => {
            dash.addEventListener('click', (e) => {
                e.preventDefault();
                stopAutoScroll();
                goToCard(i);
                startAutoScroll();
            });
        });
        // The native scroll event is the source of truth for the dots
        viewport.addEventListener('scroll', () => {
            updateDotsVisual();
        }, { passive: true });
        // Interaction pauses
        viewport.addEventListener('mouseenter', stopAutoScroll);
        viewport.addEventListener('mouseleave', startAutoScroll);
        viewport.addEventListener('touchstart', stopAutoScroll, { passive: true });
        viewport.addEventListener('touchend', startAutoScroll, { passive: true });
        // Boot
        setTimeout(() => {
            configureDots();
            updateDotsVisual();
        }, 100); 
        
        startAutoScroll();
    });
})();
 

 

 

###  Success Stories from the World’s Leading Life Sciences Companies 

See how leading life sciences organizations harness TraceLink and AI-driven orchestration to reduce disruptions, accelerate partner onboarding, ensure global compliance, and deliver measurable supply chain performance gains.

 

 

 [ See more OPUS Orchestration Journey ](https://www.tracelink.com/resources/resource-center?sort_by=field_date&field_type%5B6371%5D=6371) 

 

 

 

 

<a class="coh-link" href="" target="_self">    ![MINT](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2024-02/MINT.png.webp?itok=72CdmfM6) 

 

 </a>#####  Specialty Pharma MAH Digitalizes O2C and Chargebacks with MINT 

 

 [ Read More ](/resources/resource-center/specialty-pharma-mah-digitalizes-o2c-and-chargebacks-mint) 

 

 

<a class="coh-link" href="" target="_self">    ![software](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2024-02/software1.png.webp?itok=ao_zdZOW) 

 

 </a>#####  Global Biopharma Leader Digitalizes Order-to-Cash Across Its Hospital Network 

 

 [ Read More ](https://www.tracelink.com/resources/resource-center/biopharma-leader-digitalizes-hospital-network) 

 

 

<a class="coh-link" href="" target="_self">    ![Serialization](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2024-02/Serialization-3.png.webp?itok=0tkezuN9) 

 

 </a>#####  European Pharma Chooses MINT to Digitalize External Manufacturing Transactions 

 

 [ Read More ](/resources/resource-center/european-pharma-chooses-mint-to-digitalize-external-manufacturing-transactions) 

 

 

<a class="coh-link" href="" target="_self">    ![Newsroom_14](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2026-04/Newsroom_14.jpg.webp?itok=CCcc41po) 

 

 </a>#####  CPO Chooses MINT to Automate Forecasts and Gain Real-Time Inventory Visibility 

 

 [ Read More ](/resources/resource-center/cpo-chooses-mint-to-automate-forecasts-and-gain-real-time-inventory-visibility) 

 

 

<a class="coh-link" href="" target="_self">    ![Newsroom_16](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2026-04/Newsroom_16.jpg.webp?itok=fVIJf6hc) 

 

 </a>#####  European Pharma Manufacturer Chooses MINT to Digitalize PO and ASN Exchange 

 

 [ Read More ](/resources/resource-center/european-pharma-manufacturer-chooses-mint-to-digitalize-po-and-asn-exchange) 

 

 

<a class="coh-link" href="" target="_self">    ![Newsroom_8](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2026-04/Newsroom_8.jpg.webp?itok=kYna1VzC) 

 

 </a>#####  U.S. Compounding Pharmacy Chooses MINT to Digitalize Procure-to-Pay Transactions 

 

 [ Read More ](/resources/resource-center/us-compounding-pharmacy-chooses-mint-to-digitalize-procure-to-pay-transactions) 

 

 

 

 

 

 

###  Customer News &amp; Announcements 

Explore how industry leaders are accelerating digital supply chain transformation with TraceLink

 

 

 [ Explore Newsroom ](https://www.tracelink.com/about/newsroom) 

 

 

 

 

<a class="coh-link" href="" target="_self">    ![Newsroom_13](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2026-04/Newsroom_13.jpg.webp?itok=3nRebDH0) 

 

 </a>#####  Devatis Goes Live on TraceLink MINT to Prepare for Agentic Order-to-Cash Operations 

 

 [ Read more ](/about/news-room/devatis-goes-live-tracelink-mint-prepare-agentic-order-cash-operations) 

 

 

<a class="coh-link" href="" target="_self">    ![software](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2024-02/software1.png.webp?itok=ao_zdZOW) 

 

 </a>#####  CHEPLAPHARM to Accelerate Global Supply Chain Digitalization with TraceLink MINT 

 

 [ Read more ](/about/news-room/cheplapharm-accelerate-global-supply-chain-digitalization-tracelink-mint) 

 

 

<a class="coh-link" href="" target="_self">    ![Newsroom_6](https://www.tracelink.com/sites/default/files/styles/related_content_card_438x246_/public/2026-04/Newsroom_6.jpg.webp?itok=1nsLoxZN) 

 

 </a>#####  TraceLink and Kinaxis Deepen Partnership to Synchronize Supply Chain Planning Decision Making with Real-Time Execution 

 

 [ Read more ](/about/news-room/tracelink-and-kinaxis-deepen-partnership-synchronize-supply-chain-planning-decision) 

 

 

 

 

 

 

## **Hear From Our Customers**

Watch how customers work with TraceLink teams to solve challenges, accelerate progress, and achieve meaningful business outcomes.



![What Data Challenges Block Scalable Agentic Orchestration?](https://play.vidyard.com/5J5YtGsteWYvooenwTVhyF.jpg)

###### Ophtapharm AG: Rapid, Hands-On Support for Time-Sensitive Issues





![Integrate-Once](https://play.vidyard.com/u9XipLxFH8555Ku6PUhqaB.jpg)

###### CNX Therapeutics: Consistent Ownership from Ticket to Resolution





![ track-and-trace capabilities](https://play.vidyard.com/6BDYb94RmAiNpK4tSYEfMs.jpg)

###### Granules Life Sciences: 24/7 Support to Resolve Critical Shipment Issues





![What Advice Do Leaders Need to Build the Foundation for Agentic Orchestration?](https://play.vidyard.com/3ZroGp3pcQ9WmJUJZs5T9i.jpg)

###### Inventia Healthcare: Expert Support to Navigate Global Serialization and Compliance









 

 

 
  /* Import fallback font (IBM Plex Sans) in case Flama is not loaded globally */
  @import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;500;600;700&display=swap');
  
  /* --- CAROUSEL WRAPPER & VIEWPORT --- */
  .tl-carousel-wrapper {
    position: relative !important; /* Critical: anchors the absolute arrows/pagination */
    width: 100%;
    margin: 0 auto;
    /* Added left/right padding to create space for the arrows outside the card */
    padding: 40px 80px 80px 80px !important; 
    box-sizing: border-box;
  }
  
  .tl-carousel-viewport {
    display: flex !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; 
    -ms-overflow-style: none; 
    width: 100% !important;
  }
  
  .tl-carousel-viewport::-webkit-scrollbar {
    display: none; 
  }
  /* --- INDIVIDUAL SLIDE --- */
  .tl-slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    scroll-snap-align: center !important;
    position: relative !important; 
    padding: 0 10px !important; /* Reduced inner padding, wrapper handles spacing */
    box-sizing: border-box !important;
  }
  /* --- ARROWS (MATCHING IMAGE DESIGN) --- */
  .tl-cs-arrow {
    position: absolute !important;
    top: 50% !important; 
    transform: translateY(-50%) !important; 
    width: 54px !important;
    height: 54px !important;
    background-color: #D6EAE3 !important; /* Light green from image */
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #2F6F5A !important; /* Dark green arrow */
    text-decoration: none !important;
    font-size: 24px !important;
    font-weight: 300 !important;
    transition: all 0.2s ease !important;
    z-index: 2 !important; /* Lowered from 10 to stop overlap with site navigation */
    line-height: 1 !important;
    cursor: pointer !important;
  }
  .tl-cs-arrow:hover {
    background-color: #BDE0D3 !important;
  }
  /* Positioned rigidly to the far left and right edges of the wrapper */
  .tl-cs-prev { left: 10px !important; }
  .tl-cs-next { right: 10px !important; }
  /* --- BOTTOM DASHED PAGINATION (NODES & EDGES DESIGN) --- */
  .tl-cs-pagination {
    position: absolute !important;
    bottom: 20px !important; 
    left: 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important; 
    z-index: 20 !important;
  }
  /* The container for each segment */
  .tl-cs-dash {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    cursor: pointer !important;
    width: auto !important;
    height: auto !important;
    background-color: transparent !important;
    font-size: 0 !important;
    color: transparent !important;
    padding: 0 !important;
    border: none !important;
  }
  /* The Dots (Left of each line, plus the final capping dot) */
  .tl-cs-dash::before, 
  .tl-cs-last-dot {
    content: '' !important;
    display: block !important;
    width: 5px !important;
    min-width: 5px !important;
    height: 5px !important;
    min-height: 5px !important;
    border-radius: 50% !important;
    background-color: #A3A3A3 !important; /* Neutral Gray */
    transition: all 0.3s ease !important;
  }
  /* The Lines */
  .tl-cs-dash::after {
    content: '' !important;
    display: block !important;
    width: 40px !important;
    height: 4px !important;
    border-radius: 2px !important;
    background-color: #A3A3A3 !important;
    transition: all 0.3s ease !important;
  }
  /* ACTIVE STATE: The Dash & Its Left Dot */
  .tl-cs-dash.active::before {
    background-color: #358359 !important; /* Dark Green */
  }
  
  .tl-cs-dash.active::after {
    background-color: #358359 !important;
    width: 80px !important; /* Elongated active line */
  }
  /* ACTIVE STATE: The Right Dot 
     (Turns the next sibling's left dot green, OR the final capping dot green) */
  .tl-cs-dash.active + .tl-cs-dash::before,
  .tl-cs-dash.active + .tl-cs-last-dot {
    background-color: #358359 !important;
  }
  /* --- THE MAIN CARD DESIGN --- */
  .tl-spotlight-card {
    display: flex !important;
    background: #ffffff !important; 
    border-radius: 12px !important; 
    overflow: hidden !important;
    border: 1px solid #E7E9E9 !important;
    width: 100% !important;
    margin: 0 auto !important;
  }
  
  /* LEFT SIDE: THE QUOTE (DEEP OCEAN) */
  .tl-spotlight-quote-side {
    flex: 1.3 !important; 
    background-color: #003D4C !important; 
    padding: 55px 50px !important; 
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    position: relative !important;
  }
  .tl-spotlight-quote-side, 
  .tl-spotlight-quote-side p, 
  .tl-spotlight-quote-side div {
    color: #ffffff !important;
  }
  .tl-carousel-wrapper .tl-spotlight-quote-side span.tl-quote-mark {
    position: absolute !important;
    top: 10px !important;
    left: 40px !important;
    font-size: 110px !important;
    /*color: rgba(255, 255, 255, 0.08) !important;*/
    color: #ece81a;
    line-height: 1 !important;
    margin: 0 !important;
    pointer-events: none !important;
    z-index: 1 !important;
  }
  .tl-spotlight-quote {
    font-size: 1.85rem !important; 
    line-height: 1.45 !important; 
    font-weight: 400 !important; 
    margin: 0 0 50px 0 !important;
    position: relative !important;
    z-index: 2 !important;
    letter-spacing: -0.2px !important;
  }
  
  /* Author Profile Container */
  .tl-spotlight-author {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    position: relative !important;
    z-index: 2 !important;
    margin-top: auto !important; 
  }
  .tl-spotlight-quote-side .tl-author-info {
    border-left: 2px solid #00A7B5 !important;
    padding-left: 14px !important;
  }
  .tl-spotlight-quote-side .tl-author-name {
    font-size: 1.15rem !important;
    margin: 0 0 4px 0 !important;
    font-weight: 600 !important; 
    line-height: 1.2 !important;
    color: #ffffff !important;
  }
  .tl-spotlight-quote-side .tl-author-title {
    font-size: 0.95rem !important;
    margin: 0 !important;
    color: #9CA3AF !important; 
    line-height: 1.4 !important;
    font-style: italic !important;
  }
  
  /* RIGHT SIDE: THE METRICS (WHITE) */
  .tl-spotlight-metrics-side {
    flex: 1 !important;
    padding: 60px 50px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    background: #ffffff !important;
    color: #323F4B !important;
  }
  .tl-metrics-title {
    font-size: 1.15rem !important;
    color: #323F4B !important; 
    margin: 0 0 25px 0 !important;
    font-weight: 500 !important;
  }
  .tl-metric-item { margin-bottom: 25px !important; }
  .tl-metric-item:last-of-type { margin-bottom: 0 !important; }
  .tl-metric-number {
    font-size: 3rem !important;
    color: #005587 !important; 
    line-height: 1 !important;
    margin-bottom: 8px !important;
    display: block !important;
    font-weight: 500 !important;
    letter-spacing: -1px !important;
  }
  .tl-metric-label {
    font-size: 1rem !important;
    color: #5B6770 !important; 
    line-height: 1.5 !important;
    margin: 0 !important;
  }
  /* Mobile Responsive Stacking */
  @media (max-width: 900px) {
    .tl-carousel-wrapper { padding: 20px 0 60px 0 !important; }
    .tl-cs-arrow { display: none !important; } 
    .tl-spotlight-card { flex-direction: column !important; }
    .tl-spotlight-quote-side { padding: 40px 25px !important; }
    .tl-spotlight-quote { font-size: 1.5rem !important; }
    .tl-spotlight-metrics-side { padding: 40px 25px !important; }
    .tl-metric-number { font-size: 2.5rem !important; }
    .tl-cs-dash { width: 30px !important; }
    .tl-cs-dash.active { width: 45px !important; }
  }
## Voices From The Industry

#### Serving every supply chain segment

Hear how customers are advancing intelligent, connected, AI-driven supply chains with TraceLink.

<a class="ck-anchor tl-cs-arrow tl-cs-prev" id="tl-global-prev">←</a> <a class="ck-anchor tl-cs-arrow tl-cs-next" id="tl-global-next">→</a>

“

Digitalizing procure-to-pay processes across our supplier network significantly improved efficiency, reduced manual reconciliation, and enhanced supply chain responsiveness.

Supply Chain Executive, Global Pharma Company







The Business Impact

35%+

reduction in P2P cycle time



2,400

manual PO hours eliminated yearly



50%

fewer order and forecast errors









“

TraceLink helped us digitalize critical supply chain and compliance processes ahead of our U.S. product launch, giving us greater visibility, faster partner onboarding, and confidence in meeting DSCSA requirements.

Global Pharma Manufacturer







The Business Impact

49

Partners / Customers Onboarded



90%

Of Processes Digitalized



50%

Reduction in Onboarding Time









“

Automating supplier transactions across our pharmacy and distribution operations improved visibility, reduced manual processing, and helped us scale more efficiently across our growing partner network.

U.S.-Based Compounding Pharmacy &amp; Wholesale Distributor







The Business Impact

50%

Faster transactions



60%

Faster partner onboarding



100%

On-time payments











[ ](#slide-1) [ ](#slide-2) [ ](#slide-3)<a class="tl-cs-last-dot"> </a>




  document.addEventListener("DOMContentLoaded", function() {
    var viewport = document.getElementById('tl-auto-viewport');
    if(!viewport) return;
    
    // --- Auto Scroll Logic ---
    var autoScrollTimer;
    var scrollInterval = 5000; 
    
    function startAutoScroll() {
      autoScrollTimer = setInterval(function() {
        if (viewport.scrollLeft + viewport.clientWidth >= viewport.scrollWidth - 10) {
          viewport.scrollTo({ left: 0, behavior: 'smooth' });
        } else {
          viewport.scrollBy({ left: viewport.clientWidth, behavior: 'smooth' });
        }
      }, scrollInterval);
    }
    
    function stopAutoScroll() {
      clearInterval(autoScrollTimer);
    }
    
    startAutoScroll();
    viewport.addEventListener('mouseenter', stopAutoScroll);
    viewport.addEventListener('mouseleave', startAutoScroll);
    viewport.addEventListener('touchstart', stopAutoScroll);
    viewport.addEventListener('touchend', startAutoScroll);
    // --- Arrow Click Logic ---
    document.getElementById('tl-global-prev').addEventListener('click', function(e) {
      e.preventDefault();
      viewport.scrollBy({ left: -viewport.clientWidth, behavior: 'smooth' });
    });
    
    document.getElementById('tl-global-next').addEventListener('click', function(e) {
      e.preventDefault();
      viewport.scrollBy({ left: viewport.clientWidth, behavior: 'smooth' });
    });
    // --- Bottom Dash Click Logic ---
    var dashes = document.querySelectorAll('.tl-cs-pagination .tl-cs-dash');
    
    dashes.forEach(function(dash) {
      dash.addEventListener('click', function(e) {
        e.preventDefault(); 
        var targetId = this.getAttribute('href'); 
        if (targetId && targetId.startsWith('#')) {
          var targetSlide = document.querySelector(targetId);
          if (targetSlide) {
            var scrollPosition = targetSlide.getBoundingClientRect().left - viewport.getBoundingClientRect().left + viewport.scrollLeft;
            viewport.scrollTo({ left: scrollPosition, behavior: 'smooth' });
          }
        }
      });
    });
    // --- Sync Active Dash with Scroll Position ---
    viewport.addEventListener('scroll', function() {
      // Calculate which slide is currently in view
      var scrollPos = viewport.scrollLeft;
      var slideWidth = viewport.clientWidth;
      var slideIndex = Math.round(scrollPos / slideWidth);
      
      dashes.forEach(function(dash, index) {
        if (index === slideIndex) {
          dash.classList.add('active');
        } else {
          dash.classList.remove('active');
        }
      });
    });
  });
 

 

     ![Crypto Code Recovery Banner](https://www.tracelink.com/sites/default/files/styles/recovery_banner_desktop_1224_x_386/public/2025-11/crypto%20code%20recovery%20banner.png.webp?itok=OSbhUPMd) 

 

 

###  Take the Next Step Toward a Smarter Supply Chain 

See how leading life sciences companies are transforming their supply chains with TraceLink—driving visibility, compliance, and real business outcomes.

 

 [ Contact Us ](/contact-us)