/* V5.14 — small signal faults across the site. Every effect is decorative. */
.az514-edge-target{position:relative}
.az514-edge-target>.az514-edge{
  position:absolute;z-index:3;left:0;right:0;bottom:0;height:2px;
  pointer-events:none;opacity:0;transform:scaleX(.06);transform-origin:left center;
  background:repeating-linear-gradient(90deg,#d6ae77 0 11px,transparent 11px 17px,#a76445 17px 22px,transparent 22px 30px);
  box-shadow:0 0 7px rgba(215,171,115,.48)
}
.az514-edge-target:is(:hover,:focus-visible)>.az514-edge,
.az514-edge-target.az514-live>.az514-edge{animation:az514-edge-scan .82s steps(1,end) both}
.az514-edge-target.az514-fault-a>.az514-edge{animation:az514-edge-scan .82s steps(1,end) both}
.az514-edge-target.az514-fault-b>.az514-edge{animation:az514-edge-stutter .72s steps(1,end) both}
.az514-edge-target.az514-fault-c>.az514-edge{animation:az514-edge-split .9s steps(1,end) both}
@keyframes az514-edge-scan{
  0%,100%{opacity:0;transform:scaleX(.05)}
  10%{opacity:.95;transform:scaleX(.17)}
  19%{opacity:.25;transform:scaleX(.44)}
  29%{opacity:.9;transform:scaleX(.46)}
  40%{opacity:.45;transform:scaleX(.68)}
  54%{opacity:.9;transform:scaleX(.91)}
  69%{opacity:.25;transform:scaleX(.91)}
  78%{opacity:.9;transform:scaleX(1)}
}
@keyframes az514-edge-stutter{
  0%,100%{opacity:0;transform:scaleX(.04)}
  12%{opacity:.9;transform:scaleX(.3)}
  18%{opacity:0;transform:scaleX(.3)}
  26%{opacity:.85;transform:scaleX(.75)}
  34%{opacity:.1;transform:scaleX(.51)}
  46%{opacity:.95;transform:scaleX(.95)}
  57%{opacity:.3;transform:scaleX(.58)}
  70%{opacity:.8;transform:scaleX(1)}
}
@keyframes az514-edge-split{
  0%,100%{opacity:0;transform:scaleX(.12) translateX(0)}
  14%{opacity:.85;transform:scaleX(.38) translateX(8px)}
  24%{opacity:.22;transform:scaleX(.59) translateX(0)}
  36%{opacity:.88;transform:scaleX(.26) translateX(45px)}
  48%{opacity:.46;transform:scaleX(.84) translateX(0)}
  64%{opacity:.92;transform:scaleX(1) translateX(0)}
  78%{opacity:.35;transform:scaleX(.92) translateX(3px)}
}
/* Text stays legible: the faults affect only its shadow for fractions of a second. */
.az514-type-a{animation:az514-type-a .48s steps(1,end) both}
.az514-type-b{animation:az514-type-b .62s steps(1,end) both}
.az514-type-c{animation:az514-type-c .54s steps(1,end) both}
@keyframes az514-type-a{
  0%,100%{text-shadow:none;filter:none}
  12%{text-shadow:1px 0 #a76445,-1px 0 #d5bb91}
  19%{text-shadow:none}
  32%{text-shadow:-2px 0 #a76445,1px 0 #cdd8d3}
  38%{text-shadow:none}
  58%{text-shadow:1px 0 #d5bb91}
  65%{text-shadow:none}
}
@keyframes az514-type-b{
  0%,100%{text-shadow:none;filter:none}
  17%{text-shadow:2px 0 #d5bb91}
  24%{text-shadow:none}
  41%{text-shadow:-1px 0 #9c563c,2px 0 #cadad6}
  49%{text-shadow:none}
  74%{text-shadow:1px 0 #a76445}
  80%{text-shadow:none}
}
@keyframes az514-type-c{
  0%,100%{text-shadow:none;filter:none}
  9%{text-shadow:-1px 0 #d5bb91}
  15%{text-shadow:none}
  44%{text-shadow:1px 0 #a76445,-2px 0 #c1d5d0}
  52%{text-shadow:none}
  69%{text-shadow:-1px 0 #d5bb91}
  75%{text-shadow:none}
}
.site-header.az514-header-pulse{box-shadow:0 14px 40px rgba(0,9,14,.25),inset 0 -1px #d5bb91,inset 0 -3px rgba(167,100,69,.32)}
.az514-section-pulse{animation:az514-section-mark .68s steps(1,end) both}
@keyframes az514-section-mark{
  0%,100%{filter:none}
  16%{filter:drop-shadow(2px 0 #a76445)}
  22%{filter:none}
  48%{filter:drop-shadow(-1px 0 #d8bd8f)}
  55%{filter:none}
}
/* Pause applies to hover effects as well as the scheduled pulses. */
@media (prefers-reduced-motion:reduce){
  .az514-edge-target>.az514-edge{display:none!important}
  .az514-type-a,.az514-type-b,.az514-type-c,.az514-section-pulse{animation:none!important;text-shadow:none!important;filter:none!important}
  .site-header.az514-header-pulse{box-shadow:inherit!important}
}
html.motion-off .az514-edge-target>.az514-edge,
html.az514-save-data .az514-edge-target>.az514-edge{display:none!important}
html.motion-off .az514-type-a,html.motion-off .az514-type-b,html.motion-off .az514-type-c,
html.motion-off .az514-section-pulse,
html.az514-save-data .az514-type-a,html.az514-save-data .az514-type-b,html.az514-save-data .az514-type-c,
html.az514-save-data .az514-section-pulse{animation:none!important;text-shadow:none!important;filter:none!important}
html.motion-off .site-header.az514-header-pulse,
html.az514-save-data .site-header.az514-header-pulse{box-shadow:inherit!important}
