.spark-customer-reference {
  --spark-ink:#030713;
  --spark-indigo:#06152f;
  --spark-navy:#071329;
  --spark-panel:#0a1930;
  --spark-teal:#22d0d3;
  --spark-cyan:#59e9ff;
  --spark-gold:#dbab5e;
  --spark-ivory:#f7f1e5;
  --spark-muted:#a8bbc7;
  --spark-purple:#7048a8;
  --spark-line:rgba(219,171,94,.28);
  --spark-teal-line:rgba(34,208,211,.22);
  --spark-shadow:0 34px 90px rgba(0,0,0,.34);
  --spark-serif:Georgia,"Times New Roman",serif;
  --spark-sans:"Avenir Next","Helvetica Neue",Helvetica,Arial,sans-serif;
  color:var(--spark-ivory);
  background:var(--spark-ink);
  min-width:0;
  overflow:hidden;
  font-family:var(--spark-sans);
}

.spark-customer-reference *,
.spark-customer-reference *::before,
.spark-customer-reference *::after { box-sizing:border-box; }

.spark-customer-reference :where(a,button,input,select,textarea):focus-visible {
  outline:2px solid var(--spark-cyan);
  outline-offset:4px;
}

.spark-customer-reference .spark-reference-shell {
  width:min(100% - clamp(40px,8vw,132px),1440px);
  margin-inline:auto;
}

.spark-customer-reference :where(.spark-reference-worlds,.spark-reference-shop,.spark-reference-sounds,.spark-reference-words,.spark-reference-about,.spark-reference-contact) {
  position:relative;
  isolation:isolate;
}

.spark-customer-reference .spark-reference-eyebrow .elementor-heading-title,
.spark-customer-reference .spark-reference-eyebrow {
  color:var(--spark-teal);
  font-family:var(--spark-sans);
  font-size:.66rem;
  font-weight:650;
  letter-spacing:.27em;
  line-height:1.5;
  text-transform:uppercase;
}

.spark-customer-reference .spark-reference-section-title .elementor-heading-title {
  color:var(--spark-ivory);
  font-family:var(--spark-serif);
  font-size:clamp(3rem,5.4vw,6.2rem);
  font-weight:400;
  letter-spacing:-.045em;
  line-height:.98;
  text-wrap:balance;
}

.spark-customer-reference :where(.spark-reference-lead,.spark-reference-body) {
  color:var(--spark-muted);
  font-size:clamp(.94rem,1.12vw,1.08rem);
  line-height:1.82;
}

.spark-customer-reference :where(.spark-reference-lead,.spark-reference-body) p { margin:0; }

.spark-customer-reference .spark-reference-button .elementor-button {
  min-width:190px;
  padding:14px 22px;
  color:var(--spark-gold);
  background:rgba(7,19,41,.55);
  border:1px solid rgba(219,171,94,.68);
  border-radius:0;
  font-family:var(--spark-sans);
  font-size:.63rem;
  font-weight:650;
  letter-spacing:.17em;
  line-height:1.35;
  text-transform:uppercase;
  transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .25s ease;
}

.spark-customer-reference .spark-reference-button--primary .elementor-button,
.spark-customer-reference .spark-reference-button .elementor-button:hover {
  color:var(--spark-ink);
  background:var(--spark-gold);
  border-color:var(--spark-gold);
}

.spark-customer-reference .spark-reference-button--primary .elementor-button:hover {
  background:var(--spark-teal);
  border-color:var(--spark-teal);
}

.spark-customer-reference .spark-reference-button .elementor-button:hover { transform:translateY(-2px); }

.spark-customer-reference .spark-reference-text-link .elementor-button {
  width:auto;
  padding:7px 0;
  color:var(--spark-gold);
  background:transparent;
  border:0;
  border-bottom:1px solid rgba(219,171,94,.58);
  border-radius:0;
  font-family:var(--spark-sans);
  font-size:.62rem;
  font-weight:650;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.spark-customer-reference .spark-reference-text-link .elementor-button:hover {
  color:var(--spark-cyan);
  border-color:var(--spark-cyan);
}

/* Hero: the image itself is clean; these washes protect legibility without recreating baked UI. */
.spark-customer-reference .spark-reference-hero {
  position:relative;
  justify-content:space-between;
  min-height:max(760px,100svh);
  overflow:hidden;
  background-color:var(--spark-ink);
  background-position:calc(50% + var(--spark-hero-drift,0px)) center !important;
  transition:background-position .18s linear;
}

.spark-customer-reference .spark-reference-hero::before {
  z-index:0;
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(2,7,20,.97) 0%,rgba(2,7,20,.82) 28%,rgba(2,7,20,.34) 57%,rgba(2,7,20,.08) 76%),
    linear-gradient(180deg,rgba(1,5,14,.24) 0%,rgba(1,5,14,.08) 54%,rgba(1,5,14,.84) 100%);
  pointer-events:none;
}

.spark-customer-reference .spark-reference-hero::after {
  z-index:0;
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 78% 58%,rgba(89,233,255,.08),transparent 31%);
  pointer-events:none;
}

.spark-customer-reference .spark-reference-hero-content {
  z-index:1;
  justify-content:center;
  align-items:flex-start;
  min-height:calc(100svh - 120px);
  padding-block:clamp(126px,18vh,210px) 126px;
}

.spark-customer-reference .spark-reference-hero-content > * { width:min(720px,72vw); }

.spark-customer-reference .spark-reference-hero-title .elementor-heading-title {
  margin:.2em 0 .16em;
  color:var(--spark-ivory);
  font-family:var(--spark-serif);
  font-size:clamp(4rem,7.55vw,8.45rem);
  font-weight:400;
  letter-spacing:-.058em;
  line-height:.88;
  text-wrap:balance;
  text-shadow:0 12px 44px rgba(1,6,18,.42);
}

.spark-customer-reference .spark-reference-hero-lead {
  max-width:600px;
  color:rgba(247,241,229,.76);
  font-size:clamp(.98rem,1.35vw,1.22rem);
  line-height:1.7;
}

.spark-customer-reference .spark-reference-hero-lead p { margin:0; }

.spark-customer-reference .spark-reference-actions {
  flex-flow:row wrap;
  gap:12px;
  margin-top:20px;
}

.spark-customer-reference .spark-reference-hero-worlds {
  z-index:1;
  position:absolute;
  right:clamp(24px,5vw,74px);
  bottom:34px;
  left:clamp(24px,5vw,74px);
  width:auto;
  justify-content:flex-end;
  gap:clamp(18px,3vw,42px);
}

.spark-customer-reference .spark-reference-hero-world .elementor-heading-title {
  color:rgba(247,241,229,.58);
  font-family:var(--spark-sans);
  font-size:.59rem;
  font-weight:650;
  letter-spacing:.28em;
}

/* Three worlds */
.spark-customer-reference .spark-reference-worlds {
  padding:clamp(92px,11vw,164px) 0;
  background:
    radial-gradient(circle at 10% 18%,rgba(34,208,211,.13),transparent 27%),
    linear-gradient(145deg,var(--spark-ink),var(--spark-indigo) 61%,#040916);
}

.spark-customer-reference .spark-reference-worlds::after {
  z-index:-1;
  content:"";
  position:absolute;
  inset:0;
  opacity:.18;
  background-image:radial-gradient(rgba(255,255,255,.18) .6px,transparent .6px);
  background-size:24px 24px;
  mask-image:linear-gradient(#000,transparent 86%);
}

.spark-customer-reference .spark-reference-worlds .spark-reference-section-title { margin:14px 0 clamp(38px,5vw,66px); }

.spark-customer-reference .spark-reference-world-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.spark-customer-reference .spark-reference-world-card {
  position:relative;
  isolation:isolate;
  align-content:flex-end;
  min-height:clamp(430px,45vw,590px);
  padding:clamp(25px,3.1vw,46px);
  overflow:hidden;
  background:linear-gradient(160deg,rgba(12,36,65,.88),rgba(4,10,26,.96));
  border:1px solid var(--spark-line);
  box-shadow:var(--spark-shadow);
  transition:transform .45s cubic-bezier(.2,.75,.2,1),border-color .35s ease,background .35s ease;
}

.spark-customer-reference .spark-reference-world-card::before {
  z-index:-1;
  content:"";
  position:absolute;
  width:80%;
  aspect-ratio:1;
  top:-30%;
  right:-28%;
  border-radius:50%;
  opacity:.24;
  filter:blur(24px);
  background:var(--spark-teal);
}

.spark-customer-reference .spark-reference-world-card--sounds::before { background:var(--spark-purple); }
.spark-customer-reference .spark-reference-world-card--words::before { background:var(--spark-gold); opacity:.14; }

.spark-customer-reference .spark-reference-world-card:hover {
  transform:translateY(-8px);
  border-color:rgba(89,233,255,.55);
}

.spark-customer-reference .spark-reference-world-index {
  position:absolute;
  top:24px;
  right:24px;
}

.spark-customer-reference .spark-reference-world-index .elementor-heading-title {
  color:rgba(247,241,229,.64);
  font-family:var(--spark-sans);
  font-size:.6rem;
  letter-spacing:.15em;
}

.spark-customer-reference .spark-reference-world-letter {
  position:absolute;
  top:28px;
  left:clamp(25px,3.1vw,46px);
}

.spark-customer-reference .spark-reference-world-letter .elementor-heading-title {
  color:rgba(34,208,211,.18);
  font-family:var(--spark-serif);
  font-size:clamp(6rem,10vw,10rem);
  line-height:1;
}

.spark-customer-reference .spark-reference-world-name .elementor-heading-title {
  color:var(--spark-ivory);
  font-family:var(--spark-serif);
  font-size:clamp(2.1rem,3vw,3.3rem);
  font-weight:400;
}

.spark-customer-reference .spark-reference-world-subtitle .elementor-heading-title {
  margin-top:8px;
  color:var(--spark-teal);
  font-family:var(--spark-sans);
  font-size:.68rem;
  font-weight:650;
  letter-spacing:.16em;
  line-height:1.5;
  text-transform:uppercase;
}

.spark-customer-reference .spark-reference-world-body { color:var(--spark-muted); font-size:.88rem; line-height:1.72; }
.spark-customer-reference .spark-reference-world-body p { margin:10px 0 4px; }

/* Feature */
.spark-customer-reference .spark-reference-featured { background:#050d1e; }
.spark-customer-reference .spark-reference-featured .spark-reference-shell { width:100%; max-width:none; }

.spark-customer-reference .spark-reference-split {
  display:grid;
  grid-template-columns:1.04fr .96fr;
  align-items:stretch;
}

.spark-customer-reference .spark-reference-featured-art { min-height:760px; overflow:hidden; }
.spark-customer-reference .spark-reference-featured-image,
.spark-customer-reference .spark-reference-featured-image .elementor-widget-container,
.spark-customer-reference .spark-reference-featured-image img { width:100%; height:100%; }
.spark-customer-reference .spark-reference-featured-image img { object-fit:cover; transition:transform 1s ease; }
.spark-customer-reference .spark-reference-featured:hover .spark-reference-featured-image img { transform:scale(1.025); }

.spark-customer-reference .spark-reference-featured-copy {
  justify-content:center;
  align-items:flex-start;
  padding:clamp(64px,9vw,146px);
  background:
    radial-gradient(circle at 100% 0,rgba(112,72,168,.16),transparent 34%),
    var(--spark-navy);
}

.spark-customer-reference .spark-reference-featured-story .elementor-heading-title {
  margin:22px 0 10px;
  color:var(--spark-gold);
  font-family:var(--spark-serif);
  font-size:clamp(1.35rem,2.1vw,2.15rem);
  font-style:italic;
  font-weight:400;
}

.spark-customer-reference .spark-reference-featured-copy .spark-reference-text-link { margin-top:22px; }

/* Shop and WooCommerce cards */
.spark-customer-reference .spark-reference-shop {
  padding:clamp(94px,11vw,164px) 0;
  background:var(--spark-ink);
}

.spark-customer-reference .spark-reference-shop .spark-reference-lead { max-width:650px; margin:20px 0 38px; }

.spark-customer-reference .spark-reference-product-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:clamp(18px,2.4vw,36px);
  margin:8px 0 46px;
}

.spark-customer-reference .spark-reference-product-grid > .e-con-inner,
.spark-customer-reference .spark-reference-product-grid .elementor-widget-shortcode,
.spark-customer-reference .spark-reference-product-grid .elementor-widget-container,
.spark-customer-reference .spark-reference-product-grid .elementor-shortcode { display:contents; }

.spark-customer-reference .spark-reference-product-grid .woocommerce { grid-column:1/-1; }
.spark-customer-reference .spark-reference-product-grid .products {
  display:grid !important;
  grid-column:1/-1;
  grid-template-columns:repeat(3,minmax(0,1fr));
  width:100%;
  gap:clamp(18px,2.4vw,36px);
  margin:0 !important;
}

.spark-customer-reference .spark-reference-product-grid .product {
  float:none !important;
  width:auto !important;
  margin:0 !important;
  padding:0 0 25px !important;
  background:rgba(10,25,48,.56);
  border:1px solid var(--spark-line);
}

.spark-customer-reference .spark-reference-product-grid .product img {
  width:100%;
  aspect-ratio:4/5;
  margin:0 0 22px !important;
  object-fit:cover;
  transition:filter .45s ease,transform .65s ease;
}

.spark-customer-reference .spark-reference-product-grid .product:hover img { filter:saturate(1.09) brightness(1.04); }

.spark-customer-reference .spark-reference-product-grid :where(.woocommerce-loop-product__title,.price,.button) { margin-inline:22px !important; }
.spark-customer-reference .spark-reference-product-grid .woocommerce-loop-product__title {
  color:var(--spark-ivory) !important;
  font-family:var(--spark-serif) !important;
  font-size:1.38rem !important;
  font-weight:400;
}
.spark-customer-reference .spark-reference-product-grid .price { color:var(--spark-gold) !important; font-size:.8rem !important; }
.spark-customer-reference .spark-reference-product-grid .button {
  color:var(--spark-ink) !important;
  background:var(--spark-gold) !important;
  border-radius:0 !important;
  font-size:.6rem !important;
  letter-spacing:.11em;
  text-transform:uppercase;
}

/* Music */
.spark-customer-reference .spark-reference-sounds {
  padding:clamp(94px,11vw,164px) 0;
  background:
    radial-gradient(circle at 85% 22%,rgba(112,72,168,.28),transparent 29%),
    radial-gradient(circle at 15% 82%,rgba(34,208,211,.12),transparent 31%),
    #040b20;
}

.spark-customer-reference .spark-reference-sounds .spark-reference-section-title { margin:12px 0 42px; }

.spark-customer-reference .spark-reference-song-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(18px,3vw,44px);
}

.spark-customer-reference .spark-reference-song-card {
  display:grid;
  grid-template-columns:minmax(170px,.82fr) minmax(190px,1fr);
  grid-template-rows:auto auto 1fr;
  align-items:center;
  overflow:hidden;
  background:rgba(8,22,48,.76);
  border:1px solid var(--spark-teal-line);
  box-shadow:var(--spark-shadow);
}

.spark-customer-reference .spark-reference-song-cover { grid-row:1/5; height:100%; }
.spark-customer-reference .spark-reference-song-cover .elementor-widget-container,
.spark-customer-reference .spark-reference-song-cover a,
.spark-customer-reference .spark-reference-song-cover img { width:100%; height:100%; }
.spark-customer-reference .spark-reference-song-cover img { object-fit:cover; aspect-ratio:1; }

.spark-customer-reference .spark-reference-song-card > :not(.spark-reference-song-cover) { margin-inline:clamp(22px,3vw,42px); }
.spark-customer-reference .spark-reference-song-title { margin-top:clamp(24px,3vw,42px); }
.spark-customer-reference .spark-reference-song-title .elementor-heading-title {
  color:var(--spark-ivory);
  font-family:var(--spark-serif);
  font-size:clamp(1.6rem,2.4vw,2.7rem);
  font-weight:400;
  line-height:1.08;
}

.spark-customer-reference .spark-reference-song-label { color:var(--spark-teal); font-size:.62rem; letter-spacing:.12em; text-transform:uppercase; }
.spark-customer-reference .spark-reference-song-label p { margin:8px 0 0; }
.spark-customer-reference .spark-reference-song-card .spark-reference-button { align-self:end; margin-bottom:clamp(24px,3vw,42px); }
.spark-customer-reference .spark-reference-internal-media-note { display:none !important; }

/* Words */
.spark-customer-reference .spark-reference-words {
  min-height:760px;
  padding:clamp(94px,11vw,160px) 0;
  background:
    radial-gradient(circle at 50% 50%,rgba(112,72,168,.24),transparent 34%),
    linear-gradient(120deg,transparent 15%,rgba(34,208,211,.06) 50%,transparent 80%),
    var(--spark-ink);
}

.spark-customer-reference .spark-reference-words::before {
  z-index:-1;
  content:"";
  position:absolute;
  width:min(70vw,820px);
  aspect-ratio:1;
  top:50%;
  left:50%;
  border:1px solid var(--spark-line);
  border-radius:50%;
  transform:translate(-50%,-50%);
  box-shadow:0 0 120px rgba(34,208,211,.06);
}

.spark-customer-reference .spark-reference-words-layout {
  display:grid;
  grid-template-columns:.36fr 1fr;
  align-items:center;
  min-height:520px;
}

.spark-customer-reference .spark-reference-display-index .elementor-heading-title {
  color:rgba(219,171,94,.13);
  font-family:var(--spark-serif);
  font-size:clamp(9rem,22vw,24rem);
  font-weight:400;
  line-height:.8;
}

.spark-customer-reference .spark-reference-words-copy { max-width:760px; }
.spark-customer-reference .spark-reference-words-copy .spark-reference-lead { margin:24px 0; }

/* About */
.spark-customer-reference .spark-reference-about { background:var(--spark-navy); }
.spark-customer-reference .spark-reference-about .spark-reference-shell { width:100%; max-width:none; }
.spark-customer-reference .spark-reference-about-seal {
  justify-content:center;
  align-items:center;
  min-height:760px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50%,rgba(34,208,211,.22),transparent 30%),
    radial-gradient(circle at 50%,transparent 20%,rgba(112,72,168,.16) 21%,transparent 48%),
    #040d21;
}

.spark-customer-reference .spark-reference-about-seal::before,
.spark-customer-reference .spark-reference-about-seal::after {
  content:"";
  position:absolute;
  width:min(63%,520px);
  aspect-ratio:1;
  border:1px solid rgba(219,171,94,.34);
  border-radius:50%;
}
.spark-customer-reference .spark-reference-about-seal::after { width:min(43%,360px); border-color:rgba(89,233,255,.24); }
.spark-customer-reference .spark-reference-about-spark { z-index:1; }
.spark-customer-reference .spark-reference-about-spark .elementor-heading-title {
  color:var(--gold,var(--spark-gold));
  font-size:clamp(4rem,8vw,8rem);
  filter:drop-shadow(0 0 24px rgba(219,171,94,.65));
}
.spark-customer-reference .spark-reference-about-name { z-index:1; }
.spark-customer-reference .spark-reference-about-name .elementor-heading-title {
  color:var(--spark-ivory);
  font-family:var(--spark-serif);
  font-size:clamp(1.7rem,3vw,3rem);
  font-style:italic;
  font-weight:400;
}
.spark-customer-reference .spark-reference-about-copy {
  justify-content:center;
  align-items:flex-start;
  padding:clamp(64px,9vw,146px);
}
.spark-customer-reference .spark-reference-about-copy .spark-reference-lead { margin:24px 0; }

/* Contact */
.spark-customer-reference .spark-reference-contact {
  padding:clamp(94px,11vw,164px) 0;
  background:
    radial-gradient(circle at 10% 18%,rgba(34,208,211,.12),transparent 27%),
    var(--spark-ink);
}

.spark-customer-reference .spark-reference-contact-layout {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  align-items:start;
  gap:clamp(48px,8vw,138px);
}

.spark-customer-reference .spark-reference-contact-copy .spark-reference-section-title .elementor-heading-title {
  font-size:clamp(2.8rem,4.9vw,5.7rem);
}
.spark-customer-reference .spark-reference-contact-copy .spark-reference-lead { max-width:580px; margin-top:28px; }

.spark-customer-reference .spark-reference-contact-forms { min-width:0; }
.spark-customer-reference .spark-reference-form .elementor-form-fields-wrapper { margin:0; }
.spark-customer-reference .spark-reference-form .elementor-field-group { padding:0; margin-bottom:22px; }
.spark-customer-reference .spark-reference-form label {
  padding-bottom:8px !important;
  color:var(--spark-muted) !important;
  font-family:var(--spark-sans) !important;
  font-size:.57rem !important;
  font-weight:650 !important;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.spark-customer-reference .spark-reference-form :where(input,select,textarea) {
  min-height:46px;
  padding:11px 0 13px !important;
  color:var(--spark-ivory) !important;
  background:transparent !important;
  border:0 !important;
  border-bottom:1px solid var(--spark-line) !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.spark-customer-reference .spark-reference-form textarea { min-height:130px; }
.spark-customer-reference .spark-reference-form select option { color:#071323; }
.spark-customer-reference .spark-reference-form .elementor-field-type-acceptance { align-items:flex-start; }
.spark-customer-reference .spark-reference-form .elementor-field-type-acceptance input { min-height:auto; width:auto; accent-color:var(--spark-teal); }
.spark-customer-reference .spark-reference-form .elementor-field-type-acceptance label { font-size:.68rem !important; letter-spacing:.02em; line-height:1.55; text-transform:none; }
.spark-customer-reference .spark-reference-form .elementor-field-type-acceptance a { color:var(--spark-gold); text-decoration:underline; }
.spark-customer-reference .spark-reference-form .elementor-button {
  min-width:210px;
  padding:14px 22px;
  color:var(--spark-ink) !important;
  background:var(--spark-gold) !important;
  border:1px solid var(--spark-gold) !important;
  border-radius:0;
  font-size:.63rem;
  font-weight:650;
  letter-spacing:.14em;
  text-transform:uppercase;
}

/* Progressive reveal is opt-in and leaves content visible if JavaScript never runs. */
.spark-customer-reference.spark-reference-js .spark-reference-reveal {
  opacity:1;
  filter:saturate(.82) brightness(.9);
  transform:translateY(12px);
  transition:filter .72s ease,transform .72s cubic-bezier(.2,.75,.2,1);
}
.spark-customer-reference.spark-reference-js .spark-reference-reveal.is-visible { filter:none; transform:none; }

@media (max-width: 1180px) {
  .spark-customer-reference .spark-reference-product-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .spark-customer-reference .spark-reference-product-grid .products { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .spark-customer-reference .spark-reference-song-card { grid-template-columns:1fr; }
  .spark-customer-reference .spark-reference-song-cover { grid-row:auto; }
  .spark-customer-reference .spark-reference-song-cover img { aspect-ratio:16/11; }
  .spark-customer-reference .spark-reference-song-card .spark-reference-button { margin-bottom:30px; }
}

@media (max-width: 860px) {
  .spark-customer-reference .spark-reference-shell { width:min(100% - 44px,1440px); }
  .spark-customer-reference .spark-reference-hero { min-height:760px; background-position:67% center !important; }
  .spark-customer-reference .spark-reference-hero::before { background:linear-gradient(90deg,rgba(2,7,20,.94),rgba(2,7,20,.62) 64%,rgba(2,7,20,.22)),linear-gradient(180deg,transparent 46%,rgba(1,5,14,.88)); }
  .spark-customer-reference .spark-reference-hero-content { min-height:760px; padding-block:140px 120px; }
  .spark-customer-reference .spark-reference-hero-content > * { width:min(670px,90%); }
  .spark-customer-reference .spark-reference-hero-title .elementor-heading-title { font-size:clamp(3.7rem,11vw,6.2rem); }
  .spark-customer-reference .spark-reference-world-grid { grid-template-columns:1fr; }
  .spark-customer-reference .spark-reference-world-card { min-height:460px; }
  .spark-customer-reference .spark-reference-split,
  .spark-customer-reference .spark-reference-contact-layout { grid-template-columns:1fr; }
  .spark-customer-reference .spark-reference-featured-art,
  .spark-customer-reference .spark-reference-about-seal { min-height:560px; }
  .spark-customer-reference .spark-reference-featured-copy,
  .spark-customer-reference .spark-reference-about-copy { padding:72px 32px; }
  .spark-customer-reference .spark-reference-song-grid { grid-template-columns:1fr; }
  .spark-customer-reference .spark-reference-song-card { grid-template-columns:minmax(180px,.8fr) 1fr; }
  .spark-customer-reference .spark-reference-song-cover { grid-row:1/5; }
  .spark-customer-reference .spark-reference-song-cover img { aspect-ratio:1; }
  .spark-customer-reference .spark-reference-words-layout { grid-template-columns:.3fr 1fr; }
  .spark-customer-reference .spark-reference-contact-layout { gap:58px; }
}

@media (max-width: 580px) {
  .spark-customer-reference .spark-reference-shell { width:calc(100% - 32px); }
  .spark-customer-reference .spark-reference-section-title .elementor-heading-title { font-size:clamp(2.7rem,13.5vw,4.2rem); }
  .spark-customer-reference .spark-reference-hero { min-height:700px; background-position:72% center !important; }
  .spark-customer-reference .spark-reference-hero::before { background:linear-gradient(90deg,rgba(2,7,20,.94),rgba(2,7,20,.58)),linear-gradient(180deg,rgba(1,5,14,.1),rgba(1,5,14,.9)); }
  .spark-customer-reference .spark-reference-hero-content { min-height:700px; padding-block:126px 120px; }
  .spark-customer-reference .spark-reference-hero-content > * { width:100%; }
  .spark-customer-reference .spark-reference-hero-title .elementor-heading-title { font-size:clamp(3.15rem,16.5vw,4.8rem); }
  .spark-customer-reference .spark-reference-hero-lead { font-size:.91rem; line-height:1.62; }
  .spark-customer-reference .spark-reference-actions { flex-direction:column; align-items:flex-start; }
  .spark-customer-reference .spark-reference-hero-worlds { justify-content:space-between; gap:5px; right:16px; left:16px; }
  .spark-customer-reference .spark-reference-hero-world .elementor-heading-title { font-size:.5rem; letter-spacing:.19em; }
  .spark-customer-reference .spark-reference-worlds,
  .spark-customer-reference .spark-reference-shop,
  .spark-customer-reference .spark-reference-sounds,
  .spark-customer-reference .spark-reference-words,
  .spark-customer-reference .spark-reference-contact { padding-block:82px; }
  .spark-customer-reference .spark-reference-world-card { min-height:430px; padding:25px; }
  .spark-customer-reference .spark-reference-featured-art,
  .spark-customer-reference .spark-reference-about-seal { min-height:440px; }
  .spark-customer-reference .spark-reference-featured-copy,
  .spark-customer-reference .spark-reference-about-copy { padding:58px 20px; }
  .spark-customer-reference .spark-reference-product-grid {
    grid-template-columns:minmax(0, 1fr);
  }
  .spark-customer-reference .spark-reference-product-grid .products { grid-template-columns:minmax(0,1fr); }
  .spark-customer-reference .spark-reference-song-card { grid-template-columns:1fr; }
  .spark-customer-reference .spark-reference-song-cover { grid-row:auto; }
  .spark-customer-reference .spark-reference-song-title { margin-top:25px; }
  .spark-customer-reference .spark-reference-song-card .spark-reference-button { margin-bottom:25px; }
  .spark-customer-reference .spark-reference-words { min-height:680px; }
  .spark-customer-reference .spark-reference-words-layout { grid-template-columns:1fr; }
  .spark-customer-reference .spark-reference-display-index { position:absolute; right:0; bottom:-15px; width:auto; opacity:.6; }
  .spark-customer-reference .spark-reference-display-index .elementor-heading-title { font-size:14rem; }
  .spark-customer-reference .spark-reference-contact-copy .spark-reference-section-title .elementor-heading-title { font-size:clamp(2.55rem,12.5vw,3.8rem); }
}

@media (prefers-reduced-motion: reduce) {
  .spark-customer-reference { scroll-behavior:auto; }
  .spark-customer-reference *,
  .spark-customer-reference *::before,
  .spark-customer-reference *::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
  }
  .spark-customer-reference.spark-reference-js .spark-reference-reveal { opacity:1; transform:none; }
}

/* ==========================================================================
   2026-10-02 customer batch (Claude) — Claudia's email "Homepage-Hintergründe"
   ========================================================================== */

/* Featured "Kunst heißt für mich: Frei sein" — new artwork on the left */
.spark-customer-reference .spark-reference-featured-image img { object-position:42% center; }

/* "Worte, die bleiben" — the circle now holds Claudia's circle artwork */
.spark-customer-reference .spark-reference-words::before { display:none; }
.spark-customer-reference .spark-reference-words-layout {
  position:relative;
  grid-template-columns:minmax(0,1fr) minmax(0,.92fr);
  gap:clamp(36px,5vw,90px);
}
.spark-customer-reference .spark-reference-words .spark-reference-display-index {
  position:absolute;
  z-index:-1;
  top:50%;
  left:clamp(-40px,-2vw,0px);
  width:auto;
  transform:translateY(-50%);
  pointer-events:none;
}
.spark-customer-reference .spark-reference-words-copy { padding-left:clamp(0px,7vw,120px); }
.spark-customer-reference .spark-reference-words-circle {
  position:relative;
  justify-self:center;
  width:min(100%,600px);
  aspect-ratio:1;
}
.spark-customer-reference .spark-reference-words-circle::before,
.spark-customer-reference .spark-reference-words-circle::after {
  content:"";
  position:absolute;
  inset:-22px;
  border:1px solid var(--spark-line);
  border-radius:50%;
  pointer-events:none;
}
.spark-customer-reference .spark-reference-words-circle::after { inset:-46px; border-color:rgba(34,208,211,.14); }
.spark-customer-reference .spark-reference-words-circle .elementor-widget-container,
.spark-customer-reference .spark-reference-words-circle img {
  width:100%;
  height:100%;
}
.spark-customer-reference .spark-reference-words-circle img {
  display:block;
  object-fit:cover;
  border-radius:50%;
  box-shadow:
    0 0 0 1px rgba(219,171,94,.38),
    0 40px 120px rgba(112,72,168,.34),
    0 0 160px rgba(34,208,211,.14);
  animation:spark-circle-float 12s ease-in-out infinite;
}
@keyframes spark-circle-float {
  0%,100% { transform:translateY(0) scale(1); }
  50% { transform:translateY(-10px) scale(1.012); }
}

/* "Der Name und seine Geschichte" — letters flying towards the viewer */
.spark-customer-reference .spark-reference-about-seal {
  background:
    radial-gradient(circle at 50% 50%,rgba(89,233,255,.16),transparent 30%),
    radial-gradient(ellipse at 50% 55%,#2c2b96 0%,#1e1c74 32%,#120f4f 60%,#08062b 100%);
  perspective:900px;
}
.spark-customer-reference .spark-reference-about-seal::before,
.spark-customer-reference .spark-reference-about-seal::after {
  animation:spark-tunnel 7s linear infinite;
}
.spark-customer-reference .spark-reference-about-seal::after { animation-delay:-3.5s; }
@keyframes spark-tunnel {
  0% { transform:scale(.35); opacity:0; }
  20% { opacity:1; }
  100% { transform:scale(1.9); opacity:0; }
}
.spark-customer-reference .spark-reference-about-spark .elementor-heading-title {
  animation:spark-star-pulse 4.5s ease-in-out infinite;
}
@keyframes spark-star-pulse {
  0%,100% { transform:scale(1); filter:drop-shadow(0 0 18px rgba(219,171,94,.55)); }
  50% { transform:scale(1.12); filter:drop-shadow(0 0 34px rgba(255,228,168,.85)); }
}
.spark-customer-reference .spark-reference-about-name .elementor-heading-title {
  font-size:clamp(2.3rem,4.6vw,4.4rem);
  line-height:1.05;
  white-space:nowrap;
  perspective:800px;
  transform-style:preserve-3d;
}
.spark-customer-reference .spark-fly-word { display:inline-block; white-space:nowrap; transform-style:preserve-3d; }
.spark-customer-reference .spark-fly-space { display:inline-block; width:.28em; }
.spark-customer-reference .spark-fly-letter {
  display:inline-block;
  padding:0 .02em .08em;
  color:transparent;
  background:linear-gradient(180deg,#d4fdff 0%,#59e9ff 28%,#22d0d3 52%,#2f6fe0 80%,#dbab5e 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-stroke:.6px rgba(219,171,94,.55);
  text-shadow:none;
  filter:drop-shadow(0 0 14px rgba(34,208,211,.35)) drop-shadow(0 0 2px rgba(219,171,94,.35));
  transform-origin:50% 60%;
  will-change:transform,opacity;
}
.spark-customer-reference .spark-reference-about-name.is-flying .spark-fly-letter {
  animation:spark-fly 8.5s cubic-bezier(.2,.7,.2,1) infinite both;
  animation-delay:calc(var(--i) * 85ms);
}
@keyframes spark-fly {
  0%   { opacity:0; transform:translate3d(0,6px,-1100px) scale(.55); }
  16%  { opacity:1; transform:translate3d(0,0,0) scale(1); }
  64%  { opacity:1; transform:translate3d(0,0,80px) scale(1.03); }
  82%  { opacity:0; transform:translate3d(0,-4px,560px) scale(1.2); }
  100% { opacity:0; transform:translate3d(0,6px,-1100px) scale(.55); }
}
.spark-customer-reference .spark-sr-only {
  position:absolute !important;
  width:1px; height:1px;
  overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%);
  white-space:nowrap;
}

@media (max-width: 860px) {
  .spark-customer-reference .spark-reference-words-layout { grid-template-columns:minmax(0,1fr); gap:56px; }
  .spark-customer-reference .spark-reference-words-circle { order:-1; width:min(78vw,440px); }
  .spark-customer-reference .spark-reference-words-copy { padding-left:0; }
}
@media (max-width: 580px) {
  .spark-customer-reference .spark-reference-words-circle { width:min(80vw,340px); margin-top:24px; }
  .spark-customer-reference .spark-reference-words-circle::after { inset:-32px; }
  .spark-customer-reference .spark-reference-words .spark-reference-display-index { top:auto; bottom:-15px; left:auto; right:0; transform:none; }
  .spark-customer-reference .spark-reference-about-name .elementor-heading-title { font-size:clamp(1.9rem,9.6vw,2.6rem); }
}
@media (prefers-reduced-motion: reduce) {
  .spark-customer-reference .spark-reference-words-circle img,
  .spark-customer-reference .spark-reference-about-seal::before,
  .spark-customer-reference .spark-reference-about-seal::after,
  .spark-customer-reference .spark-reference-about-spark .elementor-heading-title,
  .spark-customer-reference .spark-reference-about-name.is-flying .spark-fly-letter { animation:none !important; }
  .spark-customer-reference .spark-fly-letter { opacity:1 !important; transform:none !important; }
}

/* Prepared for request H1 (mini background image inside each world card) — used once the images arrive (scripts/04-world-thumbs.php) */
.spark-customer-reference .spark-reference-world-card { display:flex; flex-direction:column; }
.spark-customer-reference .spark-reference-world-thumb { margin-top:auto; padding-top:28px; }
.spark-customer-reference .spark-reference-world-thumb .elementor-widget-container { overflow:hidden; border:1px solid var(--spark-line); box-shadow:0 24px 60px rgba(0,0,0,.35); }
.spark-customer-reference .spark-reference-world-thumb img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; transition:transform .9s ease; }
.spark-customer-reference .spark-reference-world-card:hover .spark-reference-world-thumb img { transform:scale(1.04); }

/* Batch B (Claudia's 22 + 29 Sep emails): hook player in the song card + link to all songs */
.spark-customer-reference .spark-reference-song-audio { align-self:center; }
.spark-customer-reference .spark-reference-song-audio .spark-audio { margin:18px 0 14px; }
.spark-customer-reference .spark-reference-songs-more { margin-top:clamp(28px,3.5vw,44px); }

/* ==========================================================================
   Batch C (Claudia's voice notes, 2 Oct evening)
   ========================================================================== */

/* Hero title in gold ("Licht finden" = gold for her) */
.spark-customer-reference .spark-reference-hero-title .elementor-heading-title {
  color:#e9c579;
  background:linear-gradient(180deg,#fff2cc 0%,#f3d38e 30%,#dbab5e 64%,#b98a3e 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  filter:drop-shadow(0 6px 34px rgba(219,171,94,.28));
}

/* "Der Name und seine Geschichte": no rings/ellipse, no generic star —
   a single star that slowly lights up the indigo panel, then lets it go dark again */
.spark-customer-reference .spark-reference-about-seal::after { display:none !important; }
.spark-customer-reference .spark-reference-about-seal::before {
  width:auto !important;
  aspect-ratio:auto !important;
  inset:-15% !important;
  border:0 !important;
  border-radius:0 !important;
  background:radial-gradient(circle at 50% 50%,rgba(255,240,205,.62) 0%,rgba(255,214,140,.32) 9%,rgba(89,233,255,.22) 22%,rgba(66,58,196,.2) 40%,transparent 64%);
  opacity:.06;
  transform:scale(.72);
  animation:spark-bloom 8s ease-in-out infinite !important;
  pointer-events:none;
}
@keyframes spark-bloom {
  0%   { opacity:.06; transform:scale(.72); }
  38%  { opacity:1;   transform:scale(1.04); }
  58%  { opacity:.95; transform:scale(1.08); }
  70%  { opacity:.08; transform:scale(.8); }
  100% { opacity:.06; transform:scale(.72); }
}
.spark-customer-reference .spark-reference-about-spark .elementor-heading-title {
  position:relative;
  width:150px;
  height:150px;
  font-size:0 !important;
  color:transparent !important;
  filter:none !important;
  background:
    radial-gradient(circle,#ffffff 0 3px,rgba(255,236,190,.95) 5px,rgba(255,214,140,.55) 12px,rgba(89,233,255,.22) 30px,transparent 62px),
    linear-gradient(90deg,transparent 0%,rgba(255,236,190,.95) 50%,transparent 100%) center / 100% 2px no-repeat,
    linear-gradient(180deg,transparent 0%,rgba(255,236,190,.95) 50%,transparent 100%) center / 2px 100% no-repeat;
  animation:spark-star 8s ease-in-out infinite !important;
}
.spark-customer-reference .spark-reference-about-spark .elementor-heading-title::before {
  content:"";
  position:absolute;
  inset:22%;
  background:
    linear-gradient(90deg,transparent 0%,rgba(89,233,255,.85) 50%,transparent 100%) center / 100% 1.5px no-repeat,
    linear-gradient(180deg,transparent 0%,rgba(89,233,255,.85) 50%,transparent 100%) center / 1.5px 100% no-repeat;
  transform:rotate(45deg);
}
@keyframes spark-star {
  0%   { opacity:.35; transform:scale(.62) rotate(0deg); }
  38%  { opacity:1;   transform:scale(1.12) rotate(12deg); }
  58%  { opacity:1;   transform:scale(1.18) rotate(16deg); }
  70%  { opacity:.3;  transform:scale(.66) rotate(20deg); }
  100% { opacity:.35; transform:scale(.62) rotate(24deg); }
}
@media (max-width: 580px) {
  .spark-customer-reference .spark-reference-about-spark .elementor-heading-title { width:110px; height:110px; }
}
@media (prefers-reduced-motion: reduce) {
  .spark-customer-reference .spark-reference-about-seal::before { animation:none !important; opacity:.7; transform:none; }
  .spark-customer-reference .spark-reference-about-spark .elementor-heading-title { animation:none !important; opacity:1; transform:none; }
}

/* Batch D (Claudia, 3 Oct): "Let's connect" on indigo blue with a soft gradient instead of black */
.spark-customer-reference .spark-reference-contact {
  background:
    radial-gradient(ellipse at 12% 18%,rgba(34,208,211,.16),transparent 38%),
    radial-gradient(ellipse at 88% 85%,rgba(176,113,232,.22),transparent 45%),
    linear-gradient(160deg,#25237d 0%,#1a1866 38%,#120f4f 72%,#0b0939 100%);
}
