:root {
  --qct-burgundy: #95131f;
  --qct-burgundy-deep: #6f0d16;
  --qct-cream: #f1e6cf;
  --qct-cream-soft: #d9ccb2;
  --qct-gold: #c99b42;
  --qct-ink: #090706;
  --qct-brown: #241a15;
  --qct-line: rgba(201, 155, 66, 0.34);
}

* { box-sizing: border-box; }
html, body { width: 100%; min-height: 100%; margin: 0; }
body.qct-cs-page {
  min-height: 100svh;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 50% 46%, rgba(128, 41, 26, .25), transparent 28%),
    linear-gradient(180deg, #130d0a 0%, var(--qct-ink) 52%, #0d0907 100%);
  color: var(--qct-cream);
  font-family: Georgia, 'Times New Roman', serif;
  -webkit-font-smoothing: antialiased;
}

.qct-cs-stage,
.qct-cs-stage::before,
.qct-cs-stage::after {
  position: fixed;
  inset: 0;
  pointer-events: none;
}
.qct-cs-stage { overflow: hidden; z-index: 0; }
.qct-cs-stage::before {
  content: '';
  background:
    linear-gradient(90deg, rgba(149,19,31,.18), transparent 16%, transparent 84%, rgba(149,19,31,.18)),
    repeating-linear-gradient(90deg, transparent 0 11.5vw, rgba(201,155,66,.035) 11.5vw 11.6vw);
  animation: qctPulse 8s ease-in-out infinite;
}
.qct-cs-stage::after {
  content: '';
  background: linear-gradient(180deg, rgba(0,0,0,.15), transparent 40%, rgba(0,0,0,.4));
}

.qct-cs-grain {
  position: absolute;
  inset: -40%;
  opacity: .15;
  background-image:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14) 0 1px, transparent 1.2px),
    radial-gradient(circle at 70% 55%, rgba(255,255,255,.09) 0 1px, transparent 1.2px);
  background-size: 6px 6px, 9px 9px;
  animation: qctGrain 12s steps(8) infinite;
}

.qct-cs-orb {
  position: absolute;
  width: 34rem;
  height: 34rem;
  border-radius: 50%;
  filter: blur(78px);
  opacity: .13;
  background: var(--qct-burgundy);
}
.qct-cs-orb-a { top: -16rem; left: -9rem; animation: qctFloatA 16s ease-in-out infinite; }
.qct-cs-orb-b { right: -12rem; bottom: -17rem; animation: qctFloatB 18s ease-in-out infinite; }
.qct-cs-orb-c { width: 20rem; height: 20rem; top: 34%; left: 44%; opacity: .08; background: var(--qct-gold); animation: qctFloatC 15s ease-in-out infinite; }

.qct-cs-column {
  position: absolute;
  top: 8vh;
  width: 15vw;
  min-width: 110px;
  max-width: 210px;
  height: 84vh;
  opacity: .18;
  border: 1px solid rgba(201,155,66,.13);
  background:
    linear-gradient(90deg, rgba(255,255,255,.018), transparent 40%),
    repeating-linear-gradient(0deg, rgba(201,155,66,.05) 0 2px, transparent 2px 78px);
  box-shadow: inset 0 0 60px rgba(0,0,0,.55);
  transform: perspective(900px) rotateY(12deg);
}
.qct-cs-column-l { left: 2vw; }
.qct-cs-column-r { right: 2vw; transform: perspective(900px) rotateY(-12deg); }

.qct-cs-shell {
  position: relative;
  z-index: 2;
  width: 100%;
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: clamp(28px, 6vw, 80px) 20px;
}

.qct-cs-card {
  position: relative;
  width: min(910px, 100%);
  text-align: center;
  padding: clamp(36px, 6vw, 74px) clamp(22px, 6vw, 72px);
  border: 1px solid rgba(201,155,66,.22);
  background:
    linear-gradient(180deg, rgba(24,16,12,.84), rgba(8,6,5,.88));
  box-shadow:
    0 30px 100px rgba(0,0,0,.56),
    inset 0 0 70px rgba(149,19,31,.075);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  isolation: isolate;
}
.qct-cs-card::before,
.qct-cs-card::after {
  content: '';
  position: absolute;
  width: 74px;
  height: 74px;
  border-color: var(--qct-burgundy);
  opacity: .9;
}
.qct-cs-card::before {
  left: -1px; top: -1px;
  border-left: 3px solid var(--qct-burgundy);
  border-top: 3px solid var(--qct-burgundy);
}
.qct-cs-card::after {
  right: -1px; bottom: -1px;
  border-right: 3px solid var(--qct-burgundy);
  border-bottom: 3px solid var(--qct-burgundy);
}

.qct-cs-brand {
  font-size: clamp(11px, 1.1vw, 14px);
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--qct-cream);
  margin-bottom: 18px;
  font-weight: 700;
}
.qct-cs-divider {
  width: min(420px, 74%);
  height: 15px;
  margin: 0 auto 22px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.qct-cs-divider::before,
.qct-cs-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--qct-line));
}
.qct-cs-divider::after { background: linear-gradient(90deg, var(--qct-line), transparent); }
.qct-cs-divider span {
  display: block;
  width: 8px;
  height: 8px;
  transform: rotate(45deg);
  background: var(--qct-burgundy);
  box-shadow: 0 0 0 4px rgba(149,19,31,.12);
}

.qct-cs-eyebrow {
  margin: 0 0 12px;
  color: var(--qct-gold);
  font-size: clamp(12px, 1.3vw, 16px);
  letter-spacing: .08em;
  text-transform: uppercase;
}
.qct-cs-title {
  margin: 0;
  font-size: clamp(52px, 10vw, 118px);
  line-height: .93;
  letter-spacing: -.035em;
  font-weight: 700;
  color: var(--qct-cream);
  text-shadow: 0 9px 35px rgba(0,0,0,.6);
}
.qct-cs-title::after {
  content: '';
  display: block;
  width: clamp(70px, 9vw, 120px);
  height: 3px;
  margin: 24px auto 0;
  background: linear-gradient(90deg, transparent, var(--qct-burgundy), transparent);
  box-shadow: 0 0 16px rgba(149,19,31,.25);
}
.qct-cs-subtitle {
  max-width: 700px;
  margin: 26px auto 0;
  color: #f5ead6;
  font-size: clamp(17px, 2.2vw, 25px);
  line-height: 1.55;
}
.qct-cs-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  max-width: 700px;
  margin: 28px auto 0;
  color: var(--qct-cream-soft);
  font-family: Arial, Helvetica, sans-serif;
  font-size: clamp(12px, 1.3vw, 14px);
  line-height: 1.6;
  letter-spacing: .025em;
}
.qct-cs-dot {
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--qct-gold);
  box-shadow: 0 0 0 0 rgba(201,155,66,.55);
  animation: qctPing 2s infinite;
}

.qct-cs-countdown {
  display: grid;
  grid-template-columns: repeat(4, minmax(90px, 1fr));
  gap: 10px;
  max-width: 620px;
  margin: 34px auto 0;
  font-family: Arial, Helvetica, sans-serif;
}
.qct-cs-time {
  padding: 15px 10px 13px;
  border: 1px solid rgba(201,155,66,.2);
  background: rgba(149,19,31,.07);
}
.qct-cs-time strong {
  display: block;
  color: var(--qct-cream);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(26px, 4vw, 42px);
  line-height: 1;
  font-weight: 400;
}
.qct-cs-time span {
  display: block;
  margin-top: 7px;
  color: var(--qct-gold);
  font-size: 9px;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.qct-cs-mark {
  margin-top: 23px;
  color: rgba(201,155,66,.72);
  font-size: 18px;
  animation: qctSpinMark 8s linear infinite;
}

.qct-cs-reveal {
  opacity: 0;
  transform: translateY(18px);
  animation: qctReveal .9s cubic-bezier(.22,.7,.22,1) forwards;
}
.qct-cs-brand { animation-delay: .08s; }
.qct-cs-divider { animation-delay: .18s; }
.qct-cs-eyebrow { animation-delay: .27s; }
.qct-cs-title { animation-delay: .36s; }
.qct-cs-subtitle { animation-delay: .52s; }
.qct-cs-countdown { animation-delay: .63s; }
.qct-cs-status { animation-delay: .7s; }
.qct-cs-mark { animation-delay: .82s; }

@keyframes qctReveal { to { opacity: 1; transform: translateY(0); } }
@keyframes qctPing {
  0% { box-shadow: 0 0 0 0 rgba(201,155,66,.45); }
  70% { box-shadow: 0 0 0 10px rgba(201,155,66,0); }
  100% { box-shadow: 0 0 0 0 rgba(201,155,66,0); }
}
@keyframes qctPulse { 0%,100% { opacity: .78; } 50% { opacity: 1; } }
@keyframes qctFloatA { 0%,100% { transform: translate(0,0); } 50% { transform: translate(70px,45px); } }
@keyframes qctFloatB { 0%,100% { transform: translate(0,0); } 50% { transform: translate(-55px,-35px); } }
@keyframes qctFloatC { 0%,100% { transform: translate(0,0) scale(1); } 50% { transform: translate(35px,-25px) scale(1.18); } }
@keyframes qctSpinMark { to { transform: rotate(360deg); } }
@keyframes qctGrain { 0% { transform: translate3d(0,0,0); } 25% { transform: translate3d(2%, -3%, 0); } 50% { transform: translate3d(-3%,2%,0); } 75% { transform: translate3d(3%,3%,0); } 100% { transform: translate3d(0,0,0); } }

@media (max-width: 767px) {
  .qct-cs-shell { padding: 18px 14px; }
  .qct-cs-card { padding: 40px 18px 34px; }
  .qct-cs-card::before, .qct-cs-card::after { width: 45px; height: 45px; }
  .qct-cs-title { font-size: clamp(48px, 17vw, 74px); }
  .qct-cs-subtitle { font-size: 17px; line-height: 1.48; }
  .qct-cs-countdown { grid-template-columns: repeat(2, 1fr); max-width: 350px; }
  .qct-cs-column { display: none; }
  .qct-cs-orb { width: 23rem; height: 23rem; }
  .qct-cs-brand { letter-spacing: .18em; }
}

@media (max-width: 380px) {
  .qct-cs-title { font-size: 44px; }
  .qct-cs-eyebrow { font-size: 10px; }
  .qct-cs-time strong { font-size: 30px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}
