<style>
  #shipping-notice-bar{
    width:100%;
    overflow:hidden;
    background:#000c7a;
    color:#fff;
    border-bottom:1px solid rgba(255,255,255,.18);
    font:600 13px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  }

  #shipping-notice-bar .ship-track{
    overflow:hidden;
    white-space:nowrap;
    width:100%;
    padding:10px 24px;
  }

  #shipping-notice-bar .ship-content{
    display:inline-flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:48px;
    will-change:transform;
    transform:translate3d(0,0,0);
    animation: shipScroll var(--ship-duration, 20s) linear infinite;
  }

  #shipping-notice-bar .ship-item{
    display:inline-block;
    white-space:nowrap;
  }

  @keyframes shipScroll{
    from { transform: translate3d(0,0,0); }
    to   { transform: translate3d(calc(-1 * var(--ship-shift, 300px)),0,0); }
  }

  @media (min-width: 992px){
    #shipping-notice-bar .ship-content{
      gap:0;
      display:flex;
    }
    #shipping-notice-bar .ship-item{
      flex:0 0 100vw;
      min-width:100vw;
      display:flex;
      align-items:center;
      justify-content:center;
      padding:0;
    }
  }

  @media (prefers-reduced-motion: reduce){
    #shipping-notice-bar .ship-content{ animation:none; }
  }
</style>

<script>
(function(){
  if (window.__shippingNoticeInitTop) return;
  window.__shippingNoticeInitTop = true;

  if (document.getElementById('shipping-notice-bar')) return;

  const header = document.querySelector('#brx-header');
  if (!header) return;

  const text = 'Usled velikog broja porudžbina, može doći do manjeg kašnjenja u isporuci. Hvala na razumevanju!';

  // UBACUJE IZNAD HEADERA
  header.insertAdjacentHTML('beforebegin', `
    <div id="shipping-notice-bar" aria-label="Obavijest o isporuci">
      <div class="ship-track">
        <div class="ship-content" id="shipContent">
          <span class="ship-item">${text}</span>
        </div>
      </div>
    </div>
  `);

  const content = document.getElementById('shipContent');
  const bar = document.getElementById('shipping-notice-bar');
  if (!content || !bar) return;

  const speedPxPerSec = 50;

  function recalc(){
    const track = bar.querySelector('.ship-track');
    if (!track) return;

    const desktop = window.matchMedia('(min-width: 992px)').matches;
    const original = content.querySelector('.ship-item');
    if (!original) return;

    content.innerHTML = '';
    content.appendChild(original.cloneNode(true));

    const trackWidth = track.getBoundingClientRect().width;

    if (desktop){
      const second = original.cloneNode(true);
      second.setAttribute('aria-hidden', 'true');
      content.appendChild(second);

      content.style.setProperty('--ship-shift', trackWidth + 'px');
      content.style.setProperty('--ship-duration', '26s');
      return;
    }

    const gap = parseFloat(getComputedStyle(content).gap) || 0;

    const probe = original.cloneNode(true);
    content.appendChild(probe);
    const itemsNow = content.querySelectorAll('.ship-item');
    const segmentWidth = itemsNow[0].getBoundingClientRect().width + gap;

    content.removeChild(itemsNow[1]);

    const minTotal = trackWidth * 2;
    let safety = 0;

    while (content.getBoundingClientRect().width < minTotal && safety < 50){
      const clone = original.cloneNode(true);
      clone.setAttribute('aria-hidden','true');
      content.appendChild(clone);
      safety++;
    }

    content.style.setProperty('--ship-shift', segmentWidth + 'px');
    const duration = Math.max(8, segmentWidth / speedPxPerSec);
    content.style.setProperty('--ship-duration', duration + 's');
  }

  window.addEventListener('load', recalc);
  window.addEventListener('resize', recalc);
  recalc();
})();
</script>

qr