* {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }
    body {
      min-height: 100vh;
      font-family: "Courier New", monospace;
      color: #fdfbff;
      background: linear-gradient(135deg, #1b0034, #ff6fd8, #3813c2);
      background-size: 200% 200%;
      animation: bgShift 18s ease-in-out infinite;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    @keyframes bgShift {
      0% { background-position: 0% 50%; }
      50% { background-position: 100% 50%; }
      100% { background-position: 0% 50%; }
    }
    .tour-card {
      background: rgba(10, 5, 30, 0.85);
      border: 1px solid #ff9dfc;
      box-shadow: 0 0 25px rgba(255, 159, 255, 0.6);
      padding: 2.5rem 3rem;
      max-width: 600px;
      width: 90%;
      text-align: center;
      backdrop-filter: blur(6px);
    }
    .tour-title {
      font-size: 2.4rem;
      letter-spacing: 0.25em;
      text-transform: uppercase;
      margin-bottom: 0.75rem;
      color: #ffddff;
      text-shadow: 0 0 8px #ff6fd8;
    }
    .tour-subtitle {
      font-size: 0.9rem;
      letter-spacing: 0.35em;
      text-transform: uppercase;
      color: #9ad9ff;
      margin-bottom: 2rem;
    }
    .divider {
      height: 1px;
      width: 100%;
      background: linear-gradient(to right, transparent, #ff9dfc, transparent);
      margin: 1.5rem 0 2rem;
    }
    .dates {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      align-items: center;
      justify-content: center;
    }
    .date-item {
      display: flex;
      gap: 1.5rem;
      align-items: baseline;
      font-size: 0.95rem;
      text-transform: uppercase;
      letter-spacing: 0.18em;
      color: #fdfbff;
    }
    .date-item span {
      white-space: nowrap;
    }
    .date-city {
      color: #ff9dfc;
    }
    .date-venue {
      color: #9ad9ff;
    }
    .footer-note {
      margin-top: 2.25rem;
      font-size: 0.7rem;
      letter-spacing: 0.25em;
      text-transform: uppercase;
      color: #c7b7ff;
      opacity: 0.8;
    }
    @media (max-width: 600px) {
      .tour-card {
        padding: 2rem 1.5rem;
      }
      .tour-title {
        font-size: 1.8rem;
        letter-spacing: 0.18em;
      }
      .date-item {
        flex-direction: column;
        gap: 0.25rem;
        font-size: 0.85rem;
      }
    }
.back-to-main {
  position: fixed;
  bottom: 650px;
  left: 50%;
  transform: translateX(-50%);
  background: transparent;
  width: auto;
  padding: 0;
  border: none;
  z-index: 9999;
}
.back-to-main a {
  font-size: 1rem;
  color: #00ffee;
  text-decoration: none;
  text-shadow: 0 0 4px #00ffeeaa;
  transition: color 0.3s ease;
  font-family: 'Share Tech Mono', monospace;
}
.back-to-main a:hover {
  color: #ff00ff;
}
.cube-scene {
  perspective: 1400px;
  perspective-origin: 50% 40%;
}
.cube {
  position: relative;
  width: 500px;
  height: 500px;
  transform-style: preserve-3d;
  animation: cubeRotate 18s linear infinite;
}
.cube-face {
  position: absolute;
  width: 500px;
  height: 500px;
  background: rgba(10, 5, 30, 0.85);
  border: 1px solid #ff9dfc;
  box-shadow: 0 0 25px rgba(255, 159, 255, 0.6);
  backdrop-filter: blur(6px);
}
:root {
  --cube-depth: 250px;
}
.cube-front {
  transform: translateZ(var(--cube-depth));
}
.cube-back {
  transform: rotateY(180deg) translateZ(var(--cube-depth));
}
.cube-left {
  transform: rotateY(-90deg) translateZ(var(--cube-depth));
}
.cube-right {
  transform: rotateY(90deg) translateZ(var(--cube-depth));
}
.cube-top {
  transform: rotateX(90deg) translateZ(var(--cube-depth));
}
.cube-bottom {
  transform: rotateX(-90deg) translateZ(var(--cube-depth));
}
@keyframes cubeRotate {
  0% {
    transform: rotateX(-25deg) rotateY(-45deg);
  }
  100% {
    transform: rotateX(25deg) rotateY(332deg);
  }
}
.cube-front .tour-card {
  width: 100%;
  height: 100%;
  padding: 2rem;
  overflow: hidden;
}
.cube-inside {
  position: absolute;
  top: 50%;
  left: 50%;
  transform-style: preserve-3d;
  transform: translate(-50%, -50%) translateZ(0);
  width: 200px;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.inside-content {
  font-size: 2rem;
  color: #ff9dfc;
  text-shadow: 0 0 15px #ff6fd8;
  opacity: 0.9;
  animation: floatCore 4s ease-in-out infinite alternate;
}
@keyframes floatCore {
  0% { transform: translateZ(20px); }
  100% { transform: translateZ(-20px); }
}
.inside-content {
  animation: floatCore 4s ease-in-out infinite alternate,
             spinCore 12s linear infinite;
}
@keyframes spinCore {
  from { transform: rotateY(0deg); }
  to   { transform: rotateY(360deg); }
}
.grid-header {
  font-family: 'Allura', cursive;
  font-size: 3rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #ff9dfc;
  padding: 1rem 2rem;
  position: relative;
  display: inline-block;
}
.grid-header::before,
.grid-header::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid #ff9dfc55;
  pointer-events: none;
}
.grid-header::after {
  background-image:
    linear-gradient(to right, #ff9dfc22 1px, transparent 1px),
    linear-gradient(to bottom, #ff9dfc22 1px, transparent 1px);
  background-size: 20px 20px;
  mix-blend-mode: screen;
}
.grid-header {
  margin-bottom: 700px;
}
.shopify-buy-frame--toggle {
  position:fixed !important;
  top:3rem !important;
  right:1.9rem !important;
  bottom:auto !important;
  left:auto !important;
  z-index:999999 !important;
}

