.elementor-562 .elementor-element.elementor-element-d6639d5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-562 .elementor-element.elementor-element-f6e5a3f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-562 .elementor-element.elementor-element-465393f{--display:flex;}/* Start custom CSS for html, class: .elementor-element-ee03ce1 *//* === Spark Express base === */
:root {
  --flamebow: linear-gradient(90deg,#ff3b30, #ff9f0a, #ffd60a, #34c759, #0a84ff, #5e5ce6);
  --ink: #0f1221;
  --ink-2: #171a2c;
  --glow: 0 0 18px rgba(255, 255, 255, 0.35), 0 0 40px rgba(10,132,255,.25);
  --round: 18px;
}

.spark-express {
  position: relative;
  overflow: hidden;
  background: radial-gradient(1200px 600px at 60% -20%, rgba(255,255,255,0.08), transparent),
              linear-gradient(180deg, #0a0c16 0%, #0c0f1f 100%);
  color: #eef3ff;
  padding: clamp(32px, 5vw, 64px)  min(6vw, 48px);
  border-radius: var(--round);
  box-shadow: 0 10px 40px rgba(0,0,0,.35);
}

/* Floating lanterns */
.lantern{
  position:absolute; width:10px; height:10px; border-radius:50%;
  background: radial-gradient(circle,#fff 0 30%, rgba(255,255,255,.4) 45%, transparent 70%);
  box-shadow: 0 0 18px rgba(255,255,255,.55);
  opacity:.7; animation: floatUp 16s linear infinite;
}
.lantern.l1{ left:8%;  top:60%; transform:scale(1.3); animation-delay:-2s;}
.lantern.l2{ right:12%; top:70%; transform:scale(0.9); animation-delay:-6s;}
.lantern.l3{ left:48%; top:68%; transform:scale(1.1); animation-delay:-10s;}
@keyframes floatUp{
  0%{ transform: translateY(0) scale(var(--s,1)); opacity:.0;}
  10%{ opacity:.7;}
  100%{ transform: translateY(-120vh) scale(var(--s,1)); opacity:0;}
}

/* Header */
.se-hero{
  text-align:center;
  position:relative;
  padding: 20px 0 10px;
}
.se-title{
  font-family: "Cinzel", ui-serif, Georgia, serif;
  font-size: clamp(32px, 6vw, 64px);
  font-weight: 800;
  letter-spacing:.5px;
  margin:.4rem 0 .25rem;
  text-shadow: var(--glow);
}
.se-title span{
  background: var(--flamebow);
  -webkit-background-clip: text;
  background-clip:text;
  color: transparent;
  filter: drop-shadow(0 0 22px rgba(255,255,255,.15));
}
.se-sub{
  opacity:.9;
  font-size: clamp(14px, 2.4vw, 18px);
  margin: 0 auto 18px;
  max-width: 56ch;
}

.se-cta{
  display:inline-block;
  margin-top: 8px;
  padding: 12px 20px;
  border-radius: 999px;
  background: var(--flamebow);
  color:#0a0c16;
  font-weight: 800;
  text-decoration:none;
  box-shadow: 0 8px 24px rgba(0,0,0,.35), inset 0 0 0 2px rgba(255,255,255,.25);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.se-cta:hover{ transform: translateY(-2px); filter: brightness(1.05); box-shadow: 0 12px 30px rgba(0,0,0,.45), inset 0 0 0 2px rgba(255,255,255,.35); }

/* Train */
.train{ position:relative; display:flex; justify-content:center; align-items:center; height:110px; }
.train-svg{ width: min(520px, 82vw); filter: drop-shadow(0 8px 18px rgba(10,132,255,.2)); animation: gentleBob 5s ease-in-out infinite; }
@keyframes gentleBob{ 0%,100%{ transform: translateY(0) } 50%{ transform: translateY(3px) } }

.smoke{
  position:absolute; top: 0; left: 52%;
  width: 180px; height: 100px; pointer-events:none;
  background:
    radial-gradient(ellipse at 20% 80%, rgba(255,255,255,.25), transparent 60%),
    radial-gradient(ellipse at 50% 60%, rgba(255,255,255,.2), transparent 60%),
    radial-gradient(ellipse at 80% 40%, rgba(255,255,255,.18), transparent 60%);
  animation: puff 6s linear infinite;
  filter: blur(8px);
  opacity:.7;
}
@keyframes puff{
  0%{ transform: translate(-20px, 20px) scale(0.7); opacity:.0; }
  15%{ opacity:.6; }
  100%{ transform: translate(60px, -40px) scale(1.3); opacity:0; }
}

/* Stations grid */
.se-stations{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
  margin-top: 28px;
}
.station{
  position:relative;
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  padding: 18px 18px 60px;
  overflow:hidden;
}
.station::after{
  content:"";
  position:absolute; inset:-2px;
  background: conic-gradient(from 180deg at 50% 50%, rgba(255,255,255,.12), transparent 25% 75%, rgba(255,255,255,.12));
  filter: blur(18px); opacity:.18; pointer-events:none;
}
.station-title{
  font-family: "Cinzel", ui-serif, Georgia, serif;
  font-size: clamp(18px, 2.8vw, 22px);
  margin: 4px 0 8px;
}
.station-text{
  line-height: 1.55; opacity:.95;
}

/* Station link */
.station-link{
  position:absolute; left:18px; bottom:16px;
  text-decoration:none; font-weight:800;
  background: var(--flamebow);
  -webkit-background-clip:text; background-clip:text; color:transparent;
  padding-bottom:2px; border-bottom:2px solid rgba(255,255,255,.25);
  transition: letter-spacing .2s ease, filter .2s ease;
}
.station-link:hover{ letter-spacing: .4px; filter: brightness(1.1); }

/* Glass Dragonfly (Kitan's Eternal Prey) */
.dragonfly{
  --size: 72px;
  width: var(--size); height: calc(var(--size) * .38);
  margin: 8px auto 0; position: relative;
  filter: drop-shadow(0 6px 12px rgba(175,82,222,.35));
  transform-origin:center;
  transition: transform .2s ease;
}
.dragonfly .body{
  position:absolute; left:50%; top:50%; transform: translate(-50%,-50%);
  width: 12px; height: 40px; border-radius: 6px;
  background: linear-gradient(180deg, #ffffff, #a0a0ff);
  box-shadow: inset 0 0 8px rgba(0,0,0,.25);
}
.dragonfly .wing{
  position:absolute; top:50%; width: 46px; height: 18px; border-radius: 18px / 10px;
  background: linear-gradient(135deg, rgba(255,255,255,.9), rgba(160,160,255,.35));
  border: 1px solid rgba(255,255,255,.45);
  backdrop-filter: blur(2px);
}
.dragonfly .wing.left{ right: calc(50% + 6px); transform: translateY(-50%) rotate(-12deg); }
.dragonfly .wing.right{ left:  calc(50% + 6px); transform: translateY(-50%) rotate(12deg); }

/* Hover = “shatter and reform” illusion */
.dragonfly:hover{
  animation: hoverWobble 1.2s ease-in-out infinite;
}
@keyframes hoverWobble{
  0%,100%{ transform: translateY(0) scale(1); }
  50%{ transform: translateY(-2px) scale(1.03); }
}
.dragonfly:active .wing.left{ animation: shatterL .5s ease both; }
.dragonfly:active .wing.right{ animation: shatterR .5s ease both; }
.dragonfly:active .body{ animation: shatterC .5s ease both; }
@keyframes shatterL{ 0%{transform: translateY(-50%) rotate(-12deg)} 100%{ transform: translate(-30px,-30px) rotate(-50deg); opacity:0; } }
@keyframes shatterR{ 0%{transform: translateY(-50%) rotate(12deg)} 100%{ transform: translate(30px,-30px) rotate(50deg); opacity:0; } }
@keyframes shatterC{ 0%{transform: translate(-50%,-50%)} 100%{ transform: translate(-50%,-80%) scale(.8); opacity:0; } }

/* “Reform” after active (mouse/touch release) */
.dragonfly .wing, .dragonfly .body{ transition: opacity .35s ease, transform .35s ease; }

/* Chapters */
.se-chapters{
  display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 16px; margin-top: 24px;
}
.chapter-card{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px; padding: 14px 16px;
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce){
  .train-svg, .smoke, .lantern, .dragonfly:hover{ animation: none !important; }
}/* End custom CSS */