/* Home-only loader. Hidden by default so a failed script never blocks the site. */
html.z-loader-active,
html.z-loader-active body { overflow: hidden !important; }
#zille-preloader[hidden] { display: none; }
#zille-preloader {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  overflow: hidden;
  isolation: isolate;
  color: var(--zille-bone, #f1efe7);
  cursor: wait;
  touch-action: none;
  overscroll-behavior: none;
}
.z-loader__panel { position: absolute; inset: 0; will-change: transform; }
.z-loader__panel--bone { background: var(--zille-bone, #f1efe7); }
.z-loader__panel--yellow { background: var(--zille-yellow, #ffe600); }
.z-loader__panel--black { background: #0b0b0a; }
.z-loader__content { position: absolute; inset: 0; }
.z-loader__logo {
  position: absolute;
  top: max(32px, env(safe-area-inset-top));
  left: max(36px, env(safe-area-inset-left));
  width: clamp(100px, 10vw, 148px);
  height: auto;
}
.z-loader__footer {
  position: absolute;
  left: max(36px, env(safe-area-inset-left));
  right: max(36px, env(safe-area-inset-right));
  bottom: max(36px, env(safe-area-inset-bottom));
}
.z-loader__counter {
  display: flex;
  align-items: baseline;
  gap: clamp(10px, 2vw, 32px);
  margin-bottom: 22px;
  font-family: var(--font-primary, sans-serif);
  font-size: clamp(112px, 24vw, 360px);
  font-weight: 800;
  line-height: .78;
  letter-spacing: -.065em;
  font-variant-numeric: tabular-nums;
}
.z-loader__digits { display: block; }
.z-loader__percent { font-size: .16em; font-weight: 500; letter-spacing: -.03em; }
.z-loader__track { height: 1px; width: 100%; background: rgba(241, 239, 231, .22); }
.z-loader__progress {
  height: 100%;
  background: var(--zille-yellow, #ffe600);
  transform: scaleX(0);
  transform-origin: left center;
}
@media (max-width: 575px) {
  .z-loader__logo { top: max(24px, env(safe-area-inset-top)); left: 22px; }
  .z-loader__footer { left: 22px; right: 22px; bottom: max(26px, env(safe-area-inset-bottom)); }
  .z-loader__counter { font-size: clamp(100px, 26vw, 150px); margin-bottom: 24px; }
}
@media (max-height: 500px) and (min-width: 576px) {
  .z-loader__counter { font-size: 42vh; }
}
