/* A focused update to Spotify / Audience Development. */
.spotify-growth-panel.spotify-audience{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,36fr) minmax(0,64fr);align-items:start;gap:clamp(24px,3vw,44px);margin-top:32px;padding:clamp(24px,3vw,44px);border:1px solid #66dc8d30;border-radius:22px;background:radial-gradient(ellipse at 9% 70%,#1db95410,transparent 47%),linear-gradient(130deg,#141b17,#111513 65%);color:#f5f7f5;overflow:hidden}
.spotify-audience .spotify-growth-intro,.spotify-audience .spotify-services{min-width:0}
.spotify-audience .spotify-growth-intro .eyebrow{color:#72e89b;font-size:10px;letter-spacing:.15em;margin:3px 0 24px;line-height:1.6}
.spotify-audience .spotify-growth-intro h3{font-size:clamp(30px,3.2vw,48px);line-height:1.05;letter-spacing:-.05em;margin:0 0 24px;text-wrap:balance}
.spotify-audience .spotify-growth-intro>p.spotify-audience-intro{max-width:340px;font-size:14px;line-height:1.75;color:#b4bfb7;margin:0}
.spotify-audience .spotify-logo-stage{position:relative;display:grid;place-items:center;width:210px;max-width:100%;margin:32px auto 4px}
.spotify-audience .spotify-logo-stage:before{content:'';position:absolute;width:85%;height:55%;border-radius:50%;background:#1db95415;filter:blur(27px);z-index:-1}
.spotify-audience .spotify-logo-stage img{width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 18px 16px #0005);animation:spotify-logo-float 7s ease-in-out infinite}
.spotify-audience .spotify-growth-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.spotify-audience .spotify-growth-tools>article{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:24px 22px;margin:0;border:1px solid #67df8e27;border-radius:14px;background:linear-gradient(135deg,#1d2c2245,#161c1890);box-shadow:0 8px 28px #0000000a;transition:border-color .25s ease,transform .25s ease,background .25s ease}
.spotify-audience .spotify-service-icon{display:inline-flex;align-items:center;justify-content:center;color:#70e799;width:30px;height:30px;margin-bottom:14px}
.spotify-audience .spotify-service-icon svg{width:25px;height:25px}
.spotify-audience .spotify-growth-tools h4{font-family:inherit;color:#f6f8f6;font-size:16px;font-weight:600;letter-spacing:-.025em;line-height:1.4;margin:0 0 10px;overflow-wrap:anywhere;min-height:2.8em;display:flex;align-items:center}
.spotify-audience .spotify-growth-tools p{color:#b6c1b9;font-size:13px;line-height:1.75;margin:0;overflow-wrap:anywhere}
.spotify-audience .spotify-growth-tools p.spotify-card-note{font-size:11px;color:#a5b4a9;margin-top:12px}
.spotify-audience .spotify-growth-tools details{margin-top:12px}
.spotify-audience .spotify-growth-tools summary{cursor:pointer;color:#b7d9c2;font-size:11px;line-height:1.6;padding-block:3px}
.spotify-audience .spotify-growth-tools details p{font-size:11px;margin:10px 0}
.spotify-audience .spotify-growth-tools a{color:#a1edb8;font-size:11px;line-height:1.7;text-decoration:underline;text-underline-offset:3px}
.spotify-audience .spotify-growth-tools summary:focus-visible,.spotify-audience .spotify-growth-tools a:focus-visible{outline:2px solid #72e89b;outline-offset:4px}
.spotify-audience .spotify-audience-note{color:#a8b6ad;font-size:11px;line-height:1.7;margin:18px 2px 0;max-width:700px}
@media(hover:hover){.spotify-audience .spotify-growth-tools>article:hover{border-color:#71e69a80;transform:translateY(-3px);background:linear-gradient(135deg,#203d2a70,#17211b)}}
@keyframes spotify-logo-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media(max-width:1000px){.spotify-growth-panel.spotify-audience{grid-template-columns:minmax(0,34fr) minmax(0,66fr);gap:24px;padding:28px}.spotify-audience .spotify-growth-intro h3{font-size:34px}.spotify-audience .spotify-growth-tools>article{padding:20px 18px}.spotify-audience .spotify-growth-tools h4{font-size:15px}}
@media(max-width:760px){.spotify-growth-panel.spotify-audience{grid-template-columns:minmax(0,1fr);padding:28px 22px;gap:26px;border-radius:18px}.spotify-audience .spotify-growth-intro h3{font-size:clamp(32px,7vw,44px)}.spotify-audience .spotify-growth-intro>p.spotify-audience-intro{max-width:520px}.spotify-audience .spotify-logo-stage{width:180px;margin:22px auto 0}.spotify-audience .spotify-growth-tools{grid-template-columns:minmax(0,1fr);gap:14px}.spotify-audience .spotify-growth-tools>article{padding:24px}.spotify-audience .spotify-growth-tools h4{font-size:17px;min-height:0}.spotify-audience .spotify-service-icon{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.spotify-audience .spotify-logo-stage img{animation:none}.spotify-audience .spotify-growth-tools>article{transition:none}.spotify-audience .spotify-growth-tools>article:hover{transform:none}}

/* Logo lighting: animated layers share the exact transparent logo silhouette. */
.spotify-audience .spotify-logo-stage{width:210px;perspective:900px}
.spotify-audience .spotify-logo-visual{position:relative;width:100%;isolation:isolate}
.spotify-audience .spotify-logo-stage img{animation:none;filter:drop-shadow(0 17px 13px #0006)}
.spotify-audience .spotify-logo-visual:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 37%,#47ff8b12 45%,#b7ffdc88 50%,#47ff8b12 55%,transparent 63%);background-size:300% 100%;background-position:100% 0;mask:url('/assets/spotify-3d-v2.png') center/contain no-repeat;-webkit-mask:url('/assets/spotify-3d-v2.png') center/contain no-repeat;mix-blend-mode:screen;opacity:0}
.spotify-audience .spotify-logo-stage:before{width:100%;height:70%;top:13%;left:0;background:#1ed76038;filter:blur(24px);opacity:.45}
.spotify-audience .spotify-logo-stage.is-animated .spotify-logo-visual{animation:spotify-logo-float 7s ease-in-out infinite}
.spotify-audience .spotify-logo-stage.is-animated .spotify-logo-visual:after{opacity:.5;animation:spotify-light-sweep 7s ease-in-out infinite}
.spotify-audience .spotify-logo-stage.is-animated:before{animation:spotify-glow-pulse 5.5s ease-in-out infinite}
.spotify-audience .spotify-logo-stage.is-paused .spotify-logo-visual,.spotify-audience .spotify-logo-stage.is-paused .spotify-logo-visual:after,.spotify-audience .spotify-logo-stage.is-paused:before{animation-play-state:paused}
.spotify-audience .spotify-logo-stage figcaption{min-height:24px;margin-top:12px;text-align:center}
.spotify-audience .spotify-logo-motion-toggle{border:1px solid #78d99830;border-radius:20px;background:#0d1510;color:#a8c8b2;font-size:9px;line-height:1.4;padding:6px 10px;cursor:pointer}
.spotify-audience .spotify-logo-motion-toggle:focus-visible{outline:2px solid #72e89b;outline-offset:4px}
@keyframes spotify-light-sweep{0%,12%{background-position:100% 0}75%,100%{background-position:0% 0}}
@keyframes spotify-glow-pulse{0%,100%{opacity:.35;transform:translate(-6px,4px) scale(.94)}50%{opacity:.7;transform:translate(6px,-3px) scale(1.06)}}
@media(max-width:760px){.spotify-audience .spotify-logo-stage{width:180px}}
@media(prefers-reduced-motion:reduce){.spotify-audience .spotify-logo-stage.is-animated .spotify-logo-visual,.spotify-audience .spotify-logo-stage.is-animated .spotify-logo-visual:after,.spotify-audience .spotify-logo-stage.is-animated:before{animation:none}.spotify-audience .spotify-logo-visual:after{display:none}.spotify-audience .spotify-logo-motion-toggle{display:none}}
/* Account for transparent render padding; the visible medallion is about 200px. */
.spotify-audience .spotify-logo-visual{width:330px;max-width:none}
@media(max-width:760px){.spotify-audience .spotify-logo-visual{width:280px}}

/* Center the oversized transparent render without shifting its visible medallion. */
.spotify-audience .spotify-logo-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:clamp(72px,7vw,108px) auto 0}
.spotify-audience button.spotify-logo-visual{display:block;flex:none;appearance:none;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;line-height:0;cursor:pointer}
.spotify-audience button.spotify-logo-visual:focus-visible{outline:2px solid #72e89b;outline-offset:0}
.spotify-audience button.spotify-logo-visual:disabled{cursor:default;opacity:1}
@media(max-width:760px){.spotify-audience .spotify-logo-stage{margin:54px auto 4px}}

/* Open Spotify layout on a continuous black background. */
.spotify-growth-panel.spotify-audience{border:0;border-radius:0;background:#000;padding:56px 0;margin-top:44px;overflow:visible;box-shadow:0 0 0 100vmax #000;clip-path:inset(0 -100vmax);gap:clamp(32px,4vw,56px)}
.spotify-audience .spotify-growth-tools{gap:42px 34px}
.spotify-audience .spotify-growth-tools>article{border:0;border-radius:0;background:none;box-shadow:none;padding:0;margin:0;transition:transform .25s ease}
.spotify-audience .spotify-growth-tools h4{min-height:2.8em}
.spotify-audience .spotify-audience-note{margin-top:28px}
@media(hover:hover){.spotify-audience .spotify-growth-tools>article:hover{border:0;background:none;box-shadow:none;transform:translateY(-2px)}}
@media(max-width:1000px){.spotify-growth-panel.spotify-audience{padding:44px 0;gap:28px}.spotify-audience .spotify-growth-tools>article{padding:0}}
@media(max-width:760px){.spotify-growth-panel.spotify-audience{padding:36px 0;gap:40px;border-radius:0}.spotify-audience .spotify-growth-tools{gap:36px}.spotify-audience .spotify-growth-tools>article{padding:0;border:0}.spotify-audience .spotify-growth-tools h4{min-height:0}}
@media(prefers-reduced-motion:reduce){.spotify-audience .spotify-growth-tools>article{transition:none}.spotify-audience .spotify-growth-tools>article:hover{transform:none}}

/* Move the complete logo and glow left without changing its animation. */
.spotify-audience .spotify-logo-stage{transform:translateX(-25%)}
@media(max-width:360px){.spotify-audience .spotify-logo-stage{transform:translateX(-12.5%)}}
