/* LP PRIVATE — dimensional journey illustration */
.route-visual {
  isolation: isolate;
  perspective: 900px;
  background: radial-gradient(ellipse at 50% 52%, rgba(122,94,48,.20), transparent 57%),
              radial-gradient(ellipse at 64% 34%, rgba(129,101,59,.11), transparent 46%);
}
.route-visual::before,
.route-visual::after {
  content: "";
  position: absolute;
  pointer-events: none;
}
.route-visual::before {
  inset: 9% 13%;
  z-index: 0;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(201,164,93,.21), rgba(108,77,34,.07) 40%, transparent 72%);
  filter: blur(22px);
  transform: rotateX(53deg) translateY(17%);
}
.route-visual::after {
  left: 23%; right: 23%; bottom: 13%; height: 24%;
  z-index: 0;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(0,0,0,.74), rgba(19,16,10,.36) 36%, transparent 71%);
  filter: blur(13px);
}
/* The route itself remains; decorative orbit strokes are removed. */
.route-orbit { display: none; }
.route-svg { z-index: 1; filter: drop-shadow(0 8px 9px rgba(0,0,0,.65)); }
.route-track { stroke: rgba(190,158,101,.38); stroke-width: 1.1; }
.route-dash { stroke: #f2d6a0; stroke-width: 2.1; filter: drop-shadow(0 0 5px #deb971) drop-shadow(0 0 12px #a4793c); }
.route-svg circle { fill: #f0d7a3; filter: drop-shadow(0 0 4px #f1d29a) drop-shadow(0 0 10px #ad8249); }
.route-center {
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: clamp(112px, 11.5vw, 164px);
  aspect-ratio: 1;
  border-radius: 50%;
  color: #f0d7a0;
  background: radial-gradient(circle at 35% 24%, rgba(220,187,126,.28), transparent 24%),
              radial-gradient(circle at 50% 36%, #4a3b25 0%, #211d16 43%, #0b0b09 78%);
  box-shadow: inset 0 2px 3px rgba(248,220,166,.35), inset 0 -14px 20px rgba(0,0,0,.58),
              0 18px 25px rgba(0,0,0,.65), 0 4px 22px rgba(185,139,65,.24);
  text-shadow: 0 2px 5px #000, 0 0 18px rgba(233,190,107,.35);
  transform: translate(-50%,-50%) rotateX(-8deg) translateZ(22px);
  animation: lp-journey-float 7s ease-in-out infinite;
}
.route-center small { color: #d5c5a3; text-shadow: 0 1px 4px #000; }
.route-caption { z-index: 3; color: #dfcfb2; text-shadow: 0 1px 6px #000; }
@keyframes lp-journey-float {
  0%, 100% { transform: translate(-50%,-50%) rotateX(-8deg) translateZ(22px); }
  50% { transform: translate(-50%,calc(-50% - 5px)) rotateX(-5deg) translateZ(28px); }
}
@media (max-width: 900px) {
  .route-center { width: clamp(110px, 19vw, 150px); }
}
@media (max-width: 600px) {
  .route-center { width: clamp(98px, 28vw, 140px); font-size: clamp(28px, 9vw, 38px); }
  .route-center small { font-size: 7px; letter-spacing: .12em; }
  .route-visual::before { filter: blur(15px); }
  .route-svg { filter: none; }
  .route-caption { font-size: 7px; letter-spacing: .1em; }
}
@media (prefers-reduced-motion: reduce) {
  .route-center { animation: none; transform: translate(-50%,-50%) rotateX(-8deg) translateZ(22px); }
  .route-dash { animation: none; stroke-dasharray: none; opacity: .35; }
}
