body.auth-locked {
  background: linear-gradient(110deg, rgba(12,20,27,.72), rgba(12,20,27,.43)), url('/warehouse-login.webp') center / cover fixed;
  background-color: #18212a;
}
.access-gate { min-height: calc(100svh - 184px); padding: 40px 20px 36px; }
.access-brand { color: #fff; text-shadow: 0 2px 18px rgba(0,0,0,.2); }
.access-brand span { color: #ffbb8b; }
.access-brand img { background: #fff; border-radius: 18px; padding: 8px; }
.access-card { box-shadow: 0 24px 80px rgba(0,0,0,.22); }
.access-register, .access-note { color: #fff; }
.access-register button { color: #ffd2ae; text-decoration: underline; text-underline-offset: 4px; }
.brand-ribbon { background: #fff; color: #20242a; border-top: 3px solid #ef6d1a; padding: 16px 0 19px; overflow: hidden; }
.brand-ribbon-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 5vw; margin-bottom: 12px; }
.brand-ribbon-head p { margin: 0; font-size: .63rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #62666d; }
.brand-ribbon-toggle { border: 1px solid #d7dbe1; border-radius: 5px; padding: 5px 10px; background: #fff; color: #393d43; font: 700 .65rem Manrope,Arial,sans-serif; cursor: pointer; }
.brand-ribbon-toggle:focus-visible { outline: 3px solid #b94a0c; outline-offset: 3px; }
.brand-ribbon-window { overflow: hidden; }
.brand-ribbon-track { display: flex; width: max-content; animation: brands-travel 32s linear infinite; }
.brand-ribbon-list { display: flex; align-items: center; justify-content: space-around; flex-shrink: 0; gap: clamp(38px,5vw,100px); min-width: 100vw; list-style: none; margin: 0; padding: 0 36px; }
.brand-ribbon-list li { flex-shrink: 0; font: 800 clamp(1.25rem,2vw,1.65rem)/1.3 Manrope,Arial,sans-serif; letter-spacing: .035em; }
.brand-ribbon-list li:nth-child(even) { font-style: italic; }
.brand-ribbon:hover .brand-ribbon-track, .brand-ribbon:focus-within .brand-ribbon-track, .brand-ribbon[data-paused='true'] .brand-ribbon-track { animation-play-state: paused; }
@keyframes brands-travel { to { transform: translateX(-50%); } }
@media (max-width:600px) {
  body.auth-locked { background-attachment: scroll; }
  .access-gate { padding: 30px 18px; }
  .access-brand { margin-bottom: 24px; }
  .access-register { text-align: center; }
  .brand-ribbon-list { gap: 42px; padding: 0 24px; }
}
@media (prefers-reduced-motion:reduce) {
  .brand-ribbon-track { animation: none; width: 100%; }
  .brand-ribbon-list { flex-wrap: wrap; gap: 16px 28px; min-width: 0; width: 100%; justify-content: center; }
  .brand-ribbon-list[aria-hidden='true'], .brand-ribbon-toggle { display: none; }
}
