/* Fortificações em pedra escura, inspiradas na leitura visual de muralhas clássicas de jogos medievais. */
.castle-real-wall {
  width:116px!important;
  height:92px!important;
  transform-origin:50% 80%!important;
}
.castle-real-tower {
  width:158px!important;
  height:205px!important;
  transform-origin:50% 91%!important;
}
.castle-real-gate {
  width:224px!important;
  height:194px!important;
  transform-origin:50% 91%!important;
}
.castle-real-wall svg,.castle-real-tower svg,.castle-real-gate svg {
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
.castle-real-wall.wall-y-back,.castle-real-wall.wall-x-front { transform:scaleX(-1); }
.castle-real-wall.wall-x-back,.castle-real-wall.wall-y-front { transform:none; }
.castle-real-wall.fort-level-1,.castle-real-tower.fort-level-1,.castle-real-gate.fort-level-1 {
  filter:saturate(.73) brightness(.88);
}
.castle-real-wall.fort-level-2,.castle-real-tower.fort-level-2,.castle-real-gate.fort-level-2 {
  filter:saturate(.82) brightness(.94);
}
.castle-real-wall.fort-level-4,.castle-real-tower.fort-level-4,.castle-real-gate.fort-level-4 {
  filter:contrast(1.04) saturate(.94);
}
.castle-real-wall.fort-level-5,.castle-real-tower.fort-level-5,.castle-real-gate.fort-level-5 {
  filter:drop-shadow(0 0 3px #b2873370) contrast(1.06) saturate(1.02);
}
.castle-real-gate:hover {
  filter:brightness(1.14) contrast(1.04);
  transform:translateY(-3px) scale(1.018);
}
.rf-gge-main-banner,.rf-gge-pennant {
  transform-box:fill-box;
  transform-origin:0 10%;
  animation:rfGgeBanner 3.6s ease-in-out infinite alternate;
}
.rf-gge-pennant { animation-duration:2.9s; }
.rf-gge-flame {
  transform-box:fill-box;
  transform-origin:50% 100%;
  animation:rfGgeFlame .58s ease-in-out infinite alternate;
}
.rf-gge-torch-glow { animation:rfGgeGlow 1.1s ease-in-out infinite alternate; }
.rf-gge-masonry { vector-effect:non-scaling-stroke; }
@keyframes rfGgeBanner {
  0% { transform:skewY(-1.2deg) scaleX(.985); }
  100% { transform:skewY(1.6deg) scaleX(1.025); }
}
@keyframes rfGgeFlame {
  0% { transform:scale(.92,.9) rotate(-2deg); }
  100% { transform:scale(1.08,1.12) rotate(2deg); }
}
@keyframes rfGgeGlow {
  0% { opacity:.24; }
  100% { opacity:.5; }
}
@media (prefers-reduced-motion:reduce) {
  .rf-gge-main-banner,.rf-gge-pennant,.rf-gge-flame,.rf-gge-torch-glow { animation:none!important; }
}
