/** Shopify CDN: Minification failed

Line 22:0 All "@import" rules must come first

**/
/* ================================================
   ASTRA FLOW — Seamless Section Connector
   ================================================ */

/* Remove all gaps between astra sections */
.shopify-section:has(.astra-flow-section) + .shopify-section:has(.astra-flow-section) {
  margin-top: 0 !important;
}

/* Fallback for browsers without :has() */
.astra-flow-section {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Shared fonts */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800;900&family=Inter:wght@300;400;500;600;700&display=swap');

/* Shared animation system */
@keyframes astra-fade-up {
  from { opacity: 0; transform: translateY(28px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes astra-twinkle {
  0%, 100% { opacity: 0.3; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.4); }
}

@keyframes astra-pulse-ring {
  0% { transform: scale(1); opacity: 0.6; }
  100% { transform: scale(2.2); opacity: 0; }
}

@keyframes astra-star-spin {
  to { transform: rotate(360deg); }
}

/* Shared utility */
.astra-flow-section * {
  box-sizing: border-box;
}

/* Phone frame shared base — FLUID, NO CLIPPING */
.astra-phone-base {
  position: relative;
  border-radius: 32px;
  overflow: hidden;
  background: #0a0a18;
  border: 1px solid rgba(99, 102, 241, 0.15);
  box-shadow:
    0 0 80px rgba(99, 102, 241, 0.04),
    0 24px 64px rgba(0, 0, 0, 0.5);
  width: clamp(230px, 38vw, 300px);
  aspect-ratio: 9 / 19.5;
}

@media (min-width: 960px) {
  .astra-phone-base {
    width: clamp(260px, 22vw, 320px);
  }
}

.astra-phone-base img,
.astra-phone-base video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 32px;
}

.astra-phone-base .placeholder-svg {
  width: 100%;
  height: 100%;
  opacity: 0.05;
}
/* ── Lunar Mansions 图片自适应高度修复 ── */
.af-mansions__step-visual {
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
}

.af-mansions__step-visual img,
.af-mansions__step-visual video {
  width: 100%;
  max-width: 420px;       /* 控制宽度，不要太宽 */
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  margin: 0 auto;
  display: block;
}