:root{
    --bg:#ffffff;
    --ink:#27282a;
    --accent:#ec5800;
  }
  .aura-preloader{
    height:100%;
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:34px;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  }
  .stage{
    position:relative;
    width:132px;
    height:134px;
    perspective:600px;
  }
  .rig{
    position:absolute;
    inset:0;
    transform-style:preserve-3d;
    animation:sway 5.2s ease-in-out infinite alternate;
  }
  .layer{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
  }
  .layer-ink{
    background-image:url(/images/preloader-logo-ink.png);
    filter:drop-shadow(0 6px 10px rgba(39,40,42,0.14));
  }
  .layer-orange{
    background-image:url(/images/preloader-logo-orange.png);
    animation:pulseOrange 2.4s ease-in-out infinite;
    transform-origin:70% 60%;
  }
  .sheen{
    position:absolute;
    inset:0;
    -webkit-mask-image:url(/images/preloader-logo-orange.png);
    -webkit-mask-size:contain;
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-position:center;
    mask-image:url(/images/preloader-logo-orange.png);
    mask-size:contain;
    mask-repeat:no-repeat;
    mask-position:center;
    background:linear-gradient(120deg, transparent 35%, rgba(255,255,255,0.95) 50%, transparent 65%);
    background-size:260% 260%;
    mix-blend-mode:overlay;
    animation:sweep 2.4s ease-in-out infinite;
    opacity:0.9;
  }
  @keyframes sway{
    0%   { transform:rotateY(-6deg) rotateX(2deg); }
    100% { transform:rotateY(6deg) rotateX(-2deg); }
  }
  @keyframes pulseOrange{
    0%   { transform:scale(1);     filter:drop-shadow(0 0 0px rgba(236,88,0,0)); }
    12%  { transform:scale(1.045); filter:drop-shadow(0 0 9px rgba(236,88,0,0.55)); }
    24%  { transform:scale(1);     filter:drop-shadow(0 0 2px rgba(236,88,0,0.15)); }
    36%  { transform:scale(1.03);  filter:drop-shadow(0 0 7px rgba(236,88,0,0.45)); }
    50%  { transform:scale(1);     filter:drop-shadow(0 0 0px rgba(236,88,0,0)); }
    100% { transform:scale(1);     filter:drop-shadow(0 0 0px rgba(236,88,0,0)); }
  }
  @keyframes sweep{
    0%   { background-position: -40% -40%; }
    100% { background-position: 140% 140%; }
  }
  .dots{
    display:flex;
    gap:7px;
  }
  .dot{
    width:5px; height:5px;
    border-radius:50%;
    background:var(--accent);
    opacity:0.25;
    animation:dotPulse 1.4s ease-in-out infinite;
  }
  .dot:nth-child(2){ animation-delay:0.16s; }
  .dot:nth-child(3){ animation-delay:0.32s; }
  @keyframes dotPulse{
    0%,80%,100% { opacity:0.22; transform:scale(1); }
    40%         { opacity:1;    transform:scale(1.35); }
  }
  @media (prefers-reduced-motion: reduce){
    .rig, .layer-orange, .sheen, .dot{ animation:none; }
  }
