/* =========================================
   Thaddeus Arndt - Homepage extras (2026-07)
   Ambient background + studio marquee.
   Loads after style.css; only .ta-* classes.
   ========================================= */

/* --- Ambient background: slow lavender blobs, GPU-cheap --- */
.ta-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.ta-blob {
  position: absolute;
  width: 52vmax;
  height: 52vmax;
  border-radius: 50%;
  will-change: transform;
}

.ta-blob-a {
  top: -18vmax;
  left: -14vmax;
  background: radial-gradient(circle at center, var(--accent-glow) 0%, transparent 65%);
  animation: ta-drift-a 48s ease-in-out infinite alternate;
}

.ta-blob-b {
  bottom: -22vmax;
  right: -16vmax;
  background: radial-gradient(circle at center, rgba(107, 47, 160, 0.10) 0%, transparent 62%);
  animation: ta-drift-b 60s ease-in-out infinite alternate;
}

.ta-blob-c {
  top: 34%;
  left: 48%;
  width: 36vmax;
  height: 36vmax;
  background: radial-gradient(circle at center, rgba(122, 57, 180, 0.07) 0%, transparent 60%);
  animation: ta-drift-c 40s ease-in-out infinite alternate;
}

@keyframes ta-drift-a {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to   { transform: translate3d(12vw, 9vh, 0) scale(1.12); }
}

@keyframes ta-drift-b {
  from { transform: translate3d(0, 0, 0) scale(1.08); }
  to   { transform: translate3d(-10vw, -10vh, 0) scale(0.94); }
}

@keyframes ta-drift-c {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(-14vw, 12vh, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .ta-blob { animation: none; }
}

body > nav, body > section, body > footer, body > .sticky-cta { position: relative; z-index: 1; }

/* --- Studio marquee: real studio photos, production-services section --- */
.ta-studio-section .section-header { margin-bottom: 2rem; }

/* --- Performance marquee: larger frames, right under the hero --- */
.ta-marquee-section-lg { padding: 40px 0 60px; }

.ta-marquee-lg .ta-marquee-item { height: 340px; }


@media (max-width: 640px) {
  .ta-marquee-section-lg { padding: 24px 0 44px; }
  .ta-marquee-lg .ta-marquee-item { height: 220px; }
}

.ta-marquee {
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 7%, black 93%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, black 7%, black 93%, transparent 100%);
}

.ta-marquee::-webkit-scrollbar { display: none; }

.ta-marquee-track {
  display: flex;
  gap: 18px;
  width: max-content;
}

.ta-marquee-item {
  flex: none;
  height: 220px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 6px 24px var(--shadow-soft);
}

.ta-marquee-item img {
  height: 100%;
  width: auto;
  max-width: none;
  display: block;
  object-fit: cover;
  cursor: zoom-in;
}

@media (prefers-reduced-motion: reduce) {
  .ta-marquee { -webkit-mask-image: none; mask-image: none; }
}

.ta-marquee-note {
  text-align: center;
  font-size: 0.9rem;
  color: var(--text-muted);
  margin-top: 1.1rem;
}

/* --- Popular-page links folded into the chooser --- */
.ta-more-links {
  margin-top: 2.25rem;
  text-align: center;
}

.ta-more-links p {
  font-size: 0.92rem;
  color: var(--text-muted);
  margin-bottom: 0.8rem;
}

@media (max-width: 640px) {
  .ta-marquee-item { height: 160px; }
}
