/* AGAZ landing first-paint loader: quiet, branded, fast. */
#agaz-landing-loader {
  --loader-blue: #2184ff;
  --loader-blue-bright: #72b9ff;
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  overflow: hidden;
  display: grid;
  place-items: center;
  background: #eef3f8;
  color: #091827;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  isolation: isolate;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  transition:
    opacity .48s cubic-bezier(.22, 1, .36, 1),
    visibility .48s ease;
}

#agaz-landing-loader.is-ready {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#agaz-landing-loader .landing-loader-bg {
  position: absolute;
  inset: -1.5%;
  z-index: 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  transform: scale(1.015);
  will-change: transform;
  animation: landing-loader-image-settle 5.8s ease-out both;
}

#agaz-landing-loader .landing-loader-bg--desktop-light {
  display: block;
  background-image: url('/landing-loader/desktop-light.webp');
  filter: saturate(1.02) contrast(1.01);
}

#agaz-landing-loader .landing-loader-bg--desktop-dark {
  display: none;
  background-image: url('/landing-loader/desktop-dark.webp');
  filter: brightness(1.14) contrast(1.04) saturate(1.08);
}

#agaz-landing-loader .landing-loader-bg--mobile-light {
  display: none;
  background-image: url('/landing-loader/mobile-light.webp');
  filter: saturate(1.02) contrast(1.01);
}

#agaz-landing-loader .landing-loader-bg--mobile-dark {
  display: none;
  background-image: url('/landing-loader/mobile-dark.webp');
  filter: brightness(1.16) contrast(1.04) saturate(1.08);
}

/* A soft readability veil, intentionally restrained so the artwork remains visible. */
#agaz-landing-loader::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(circle at 50% 46%, rgba(255,255,255,.13), transparent 38%),
    linear-gradient(180deg, rgba(248,251,255,.06) 0%, rgba(238,244,250,.12) 100%);
}

#agaz-landing-loader::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,.035), transparent 34%, rgba(7,24,44,.07) 100%);
}

#agaz-landing-loader .landing-loader-content {
  position: relative;
  z-index: 3;
  width: min(520px, calc(100% - 36px));
  display: grid;
  justify-items: center;
  gap: 13px;
  text-align: center;
}

#agaz-landing-loader .landing-loader-brand {
  display: grid;
  justify-items: center;
  gap: 4px;
}

#agaz-landing-loader .landing-loader-wordmark {
  display: block;
  color: #1678f2;
  font-family: Manrope, Inter, ui-sans-serif, system-ui, sans-serif;
  font-size: clamp(42px, 7vw, 68px);
  font-weight: 850;
  line-height: .92;
  letter-spacing: -.075em;
  background: linear-gradient(135deg, #0a67dd 0%, #2d8fff 48%, #76bcff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 10px 30px rgba(25,125,255,.16));
}

#agaz-landing-loader .landing-loader-company {
  margin: 0;
  color: currentColor;
  font-family: Manrope, Inter, ui-sans-serif, system-ui, sans-serif;
  font-size: clamp(9px, 1.2vw, 11px);
  font-weight: 750;
  line-height: 1.15;
  letter-spacing: .20em;
  text-transform: uppercase;
  opacity: .64;
}

#agaz-landing-loader .landing-loader-status {
  width: min(430px, 100%);
  min-height: 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-inline: 3px;
  color: currentColor;
  font-size: 12px;
  font-weight: 650;
  letter-spacing: .015em;
}

#agaz-landing-loader .landing-loader-status-label {
  opacity: .62;
  text-align: left;
  transition: opacity .22s ease, transform .22s ease;
}

#agaz-landing-loader .landing-loader-status-value {
  min-width: 3ch;
  color: var(--loader-blue);
  font-variant-numeric: tabular-nums;
  font-weight: 760;
  letter-spacing: .02em;
}

#agaz-landing-loader .landing-loader-progress {
  width: min(430px, 100%);
  padding: 5px;
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.38),
    inset 0 -1px 0 rgba(8,24,40,.05),
    0 16px 40px rgba(7,24,44,.10);
  backdrop-filter: blur(18px) saturate(120%);
  -webkit-backdrop-filter: blur(18px) saturate(120%);
}

#agaz-landing-loader .landing-loader-progress-track {
  position: relative;
  height: 7px;
  overflow: hidden;
  border-radius: inherit;
  background: rgba(255,255,255,.20);
  box-shadow:
    inset 0 1px 2px rgba(7,24,44,.10),
    0 0 0 1px rgba(255,255,255,.10);
}

#agaz-landing-loader .landing-loader-progress-fill {
  position: absolute;
  inset: 0 auto 0 0;
  width: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, #0c6de6 0%, #2b8eff 54%, #74bcff 100%);
  box-shadow:
    0 0 16px rgba(33,132,255,.40),
    0 0 28px rgba(33,132,255,.16);
  transition: width .16s cubic-bezier(.22, 1, .36, 1);
}

#agaz-landing-loader .landing-loader-progress-shimmer {
  position: absolute;
  inset: 0 auto 0 -26%;
  width: 26%;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.72), transparent);
  filter: blur(1px);
  mix-blend-mode: screen;
  animation: landing-loader-shimmer 1.8s ease-in-out infinite;
}

#agaz-landing-loader .landing-loader-progress-orb {
  position: absolute;
  top: 50%;
  left: 0%;
  width: 13px;
  height: 13px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255,255,255,.80);
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, #fff 0 15%, #8ac7ff 35%, #2184ff 74%);
  box-shadow:
    0 0 12px rgba(114,185,255,.78),
    0 0 24px rgba(33,132,255,.34);
  pointer-events: none;
  transition: left .16s cubic-bezier(.22, 1, .36, 1);
}

html[data-theme="dark"] #agaz-landing-loader {
  background: #06101c;
  color: #edf5fc;
}

html[data-theme="dark"] #agaz-landing-loader::before {
  background:
    radial-gradient(circle at 50% 46%, rgba(105,178,255,.12), transparent 38%),
    linear-gradient(180deg, rgba(5,14,25,.02) 0%, rgba(2,8,15,.10) 100%);
}

html[data-theme="dark"] #agaz-landing-loader::after {
  background: linear-gradient(180deg, rgba(0,0,0,.04), transparent 36%, rgba(0,0,0,.14) 100%);
}

html[data-theme="dark"] #agaz-landing-loader .landing-loader-bg--desktop-light,
html[data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-light {
  display: none;
}

html[data-theme="dark"] #agaz-landing-loader .landing-loader-bg--desktop-dark,
html[data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-dark {
  display: block;
}

html[data-theme="dark"] #agaz-landing-loader .landing-loader-wordmark {
  background: linear-gradient(135deg, #3191ff 0%, #68b5ff 52%, #a4d5ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 10px 34px rgba(33,132,255,.22));
}

html[data-theme="dark"] #agaz-landing-loader .landing-loader-company {
  color: #edf5fc;
  opacity: .66;
}

html[data-theme="dark"] #agaz-landing-loader .landing-loader-progress {
  border-color: rgba(145,200,255,.22);
  background: rgba(7,20,35,.34);
  box-shadow:
    inset 0 1px 0 rgba(194,225,255,.10),
    inset 0 -1px 0 rgba(0,0,0,.16),
    0 18px 44px rgba(0,0,0,.22);
}

html[data-theme="dark"] #agaz-landing-loader .landing-loader-progress-track {
  background: rgba(255,255,255,.10);
  box-shadow:
    inset 0 1px 2px rgba(0,0,0,.24),
    0 0 0 1px rgba(145,200,255,.08);
}

html[data-theme="dark"] #agaz-landing-loader .landing-loader-status-value {
  color: #72b9ff;
}

@media (max-width: 900px) {
  #agaz-landing-loader .landing-loader-bg--desktop-light,
  #agaz-landing-loader .landing-loader-bg--desktop-dark {
    display: none;
  }

  #agaz-landing-loader .landing-loader-bg--mobile-light {
    display: block;
  }

  html[data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-light {
    display: none;
  }

  html[data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-dark {
    display: block;
  }

  #agaz-landing-loader .landing-loader-content {
    width: min(460px, calc(100% - 30px));
  }

  #agaz-landing-loader .landing-loader-wordmark {
    font-size: clamp(40px, 12vw, 58px);
  }

  #agaz-landing-loader .landing-loader-company {
    font-size: 9px;
    letter-spacing: .16em;
  }

  #agaz-landing-loader .landing-loader-progress {
    padding: 4px;
  }

  #agaz-landing-loader .landing-loader-progress-track {
    height: 6px;
  }

  #agaz-landing-loader .landing-loader-progress-orb {
    width: 12px;
    height: 12px;
  }
}

@media (max-width: 520px) {
  #agaz-landing-loader .landing-loader-content {
    width: min(390px, calc(100% - 26px));
    gap: 11px;
  }

  #agaz-landing-loader .landing-loader-wordmark {
    font-size: clamp(38px, 14vw, 54px);
  }

  #agaz-landing-loader .landing-loader-status {
    gap: 10px;
    font-size: 11px;
  }

  #agaz-landing-loader .landing-loader-progress {
    width: 100%;
  }
}

@keyframes landing-loader-image-settle {
  from { transform: scale(1.022); }
  to { transform: scale(1.036); }
}

@keyframes landing-loader-shimmer {
  0% { transform: translateX(0); opacity: 0; }
  18% { opacity: .10; }
  42% { opacity: .76; }
  68% { opacity: .16; }
  100% { transform: translateX(500%); opacity: 0; }
}

/* Keep the wide desktop composition on tall/narrow desktop windows, while anchoring the truck. */
@media (min-width: 901px) and (max-aspect-ratio: 3/2) {
  #agaz-landing-loader .landing-loader-bg--desktop-light,
  #agaz-landing-loader .landing-loader-bg--desktop-dark {
    background-position: 76% center;
  }
}

html.agaz-loading-lock,
html.agaz-loading-lock body {
  overflow: hidden !important;
  overscroll-behavior: none;
}
/* Asset selection follows actual device type, not browser-window width.
   This prevents a narrow desktop window from receiving the portrait phone artwork. */
html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--desktop-light {
  display: block;
}
html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--desktop-dark {
  display: none;
}
html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--mobile-light,
html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--mobile-dark {
  display: none;
}

html[data-loader-device="mobile"] #agaz-landing-loader .landing-loader-bg--desktop-light,
html[data-loader-device="mobile"] #agaz-landing-loader .landing-loader-bg--desktop-dark {
  display: none;
}
html[data-loader-device="mobile"] #agaz-landing-loader .landing-loader-bg--mobile-light {
  display: block;
}
html[data-loader-device="mobile"] #agaz-landing-loader .landing-loader-bg--mobile-dark {
  display: none;
}

html[data-loader-device="desktop"][data-theme="dark"] #agaz-landing-loader .landing-loader-bg--desktop-light {
  display: none;
}
html[data-loader-device="desktop"][data-theme="dark"] #agaz-landing-loader .landing-loader-bg--desktop-dark {
  display: block;
}
html[data-loader-device="desktop"][data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-light,
html[data-loader-device="desktop"][data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-dark {
  display: none;
}

html[data-loader-device="mobile"][data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-light {
  display: none;
}
html[data-loader-device="mobile"][data-theme="dark"] #agaz-landing-loader .landing-loader-bg--mobile-dark {
  display: block;
}

html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--desktop-light,
html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--desktop-dark {
  background-position: center center;
}

@media (max-aspect-ratio: 3/2) {
  html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--desktop-light,
  html[data-loader-device="desktop"] #agaz-landing-loader .landing-loader-bg--desktop-dark {
    background-position: 86% center;
  }
}

@media (prefers-reduced-motion: reduce) {
  #agaz-landing-loader,
  #agaz-landing-loader .landing-loader-bg,
  #agaz-landing-loader .landing-loader-progress-fill,
  #agaz-landing-loader .landing-loader-progress-orb,
  #agaz-landing-loader .landing-loader-progress-shimmer {
    animation: none !important;
    transition: none !important;
  }
}
