/* modules/patopbanner/views/css/patopbanner.css */
.ptb-banner{
  position:fixed;
  top:0; left:0; right:0;
  width:100%;
  font-size:14px;
  z-index:2147483647;
  border-bottom: 1px solid rgba(255,255,255,0.6);
}
.ptb-banner.ptb-in-header{
  position:relative !important;
  top:auto !important;
  left:auto !important;
  right:auto !important;
  z-index:auto !important;
  width:100%;
  border-bottom: none;
}
.ptb-banner.ptb-in-header.ptb-fullbleed{ position:relative !important; }
.ptb-banner.ptb-in-header.ptb-fullbleed::before{
  content:""; position:absolute; left:50%; transform:translateX(-50%); width:100vw; top:0; bottom:0; background:inherit; z-index:-1;
}
.ptb-banner.ptb-in-header.ptb-fullbleed::after{
  content:""; position:absolute; left:50%; transform:translateX(-50%); width:100vw; height:1px; bottom:0; background:rgba(255,255,255,0.6); z-index:-1;
}
.ptb-sticky-container{
  position: sticky !important;
  top: 0 !important;
  z-index: 2147483647 !important;
  will-change: transform;
  overflow: visible !important;
}

.ptb-inner{
  max-width:1200px;
  margin:0 auto;
  padding:8px 16px;
  display:block;
  overflow:hidden;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
}
.ptb-track{
  display:flex;
  align-items:center;
  gap:24px;
  will-change: transform;
}
.ptb-animate .ptb-track{
  animation-name: ptb-marquee;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-duration: var(--ptb-speed, 18s);
}
.ptb-segment{
  display:inline-flex;
  align-items:center;
  gap:16px;
  flex:0 0 auto;
  white-space: nowrap;
}
.ptb-item{ display:inline-flex; align-items:center; gap:8px; font-weight:600; }
.ptb-bullet{ opacity:.75; user-select:none; font-weight:700; }
.ptb-icon{ width:18px; height:18px; fill:currentColor; display:inline-block; vertical-align:middle; }

@keyframes ptb-marquee {
  0% { transform: translate3d(0,0,0); }
  100% { transform: translate3d(calc(-1 * var(--ptb-distance, 50%)),0,0); }
}

@media (prefers-reduced-motion: reduce){
  .ptb-animate .ptb-track{ animation: none !important; transform: none !important; }
}

@media (hover: hover) and (pointer: fine){
  .ptb-animate .ptb-track:hover{ animation-play-state: paused; }
}

@media (max-width:480px){
  .ptb-inner{ padding:6px 10px; }
  .ptb-text{ font-size:13px; }
}

.ptb-compact .ptb-inner{ padding:4px 10px; }
.ptb-compact .ptb-text{ font-size:13px; font-weight:600; }
.ptb-compact .ptb-icon{ width:16px; height:16px; }
.ptb-compact.ptb-in-header{ margin-top:8px; margin-bottom:0; }

.ptb-noscript{ display:flex; align-items:center; justify-content:center; gap:12px; padding:6px 10px; }
.ptb-noscript-bullet{ opacity:.75; font-weight:700; }

/* === PatopBanner overrides (mobile + colors) === */
.ptb-banner{ background:#0b0b0f !important; }

/* Remove padding on small screens */
@media (max-width: 576px){
  .ptb-inner{ padding:0 !important; }
  .ptb-compact .ptb-inner{ padding:0 !important; }
}

/* Ensure spacing ABOVE the menu when banner is inside header */
.ptb-in-header{ margin-top:8px; }
