/* Spider Groove Player – used on: Home page. Dark rock-and-roll theme. */
:root{
	--sg-ink:#070609;--sg-ink2:#0e0c12;--sg-ink3:#16131b;
	--sg-line:rgba(255,255,255,.09);--sg-line2:rgba(255,255,255,.16);
	--sg-text:#efe9e1;--sg-muted:#a39b91;--sg-dim:#6f6861;
	--sg-amber:#FFB23F;--sg-orange:#FF6A1A;--sg-red:#FF2E4D;--sg-mag:#E0218A;--sg-chrome:#c9d1da;
	--sg-grad:linear-gradient(100deg,#FFB23F 0%,#FF6A1A 35%,#FF2E4D 65%,#E0218A 100%);
	--sg-grad-v:linear-gradient(180deg,#FFB23F,#FF2E4D 60%,#E0218A);
	--sg-body:Manrope,system-ui,sans-serif;
	--sg-mono:"JetBrains Mono",ui-monospace,monospace;
	--sg-serif:"Instrument Serif",Georgia,serif;
	--sg-r:20px;--sg-pulse:0;--sg-mx:50%;--sg-my:40%;
	--sg-ease:cubic-bezier(.22,1,.36,1);
}
body.sg-page,body.sg-page #page-container,body.sg-page #main-content,body.sg-page #et-main-area{background:var(--sg-ink)!important;color:var(--sg-text)}
/* Let our sections run edge to edge inside Divi section/row/code wrappers */
.et_pb_section:has(.sg-full){padding:0!important;background:transparent!important}
.et_pb_section:has(.sg-full)>.et_pb_row,.et_pb_row:has(.sg-full){width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.et_pb_column:has(.sg-full),.et_pb_code:has(.sg-full),.et_pb_code:has(.sg-full) .et_pb_code_inner{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;background:none!important;border:0!important;box-shadow:none!important}

.sg-full{position:relative;isolation:isolate;font-family:var(--sg-body);color:var(--sg-text);font-size:17px;line-height:1.65;overflow:hidden}
.sg-full *,.sg-modal *{box-sizing:border-box}
.sg-full p{padding:0}
.sg-wrap{width:min(1240px,100% - 48px);margin-inline:auto;position:relative}
.sg-full a{color:inherit;text-decoration:none}
.sg-ico{width:1.15em;height:1.15em;flex:none;display:block}
.sg-grad{background:var(--sg-grad);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sgShift 8s ease-in-out infinite alternate}
@keyframes sgShift{to{background-position:100% 0}}
.sg-full em{font-family:var(--sg-serif);font-style:italic;font-weight:400;letter-spacing:.01em}
.sg-eyebrow{font:600 12px/1.2 var(--sg-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--sg-amber);margin:0 0 14px;display:flex;align-items:center;gap:10px}
.sg-eyebrow::before{content:"";width:28px;height:2px;background:var(--sg-grad);border-radius:2px}
.sg-h2{font:800 clamp(40px,5.4vw,78px)/.95 var(--sg-head);text-transform:uppercase;letter-spacing:.005em;margin:0;color:var(--sg-text);padding:0}
.sg-h2 em{text-transform:none;font-size:1.05em;color:var(--sg-chrome)}
/* Theme Builder layouts (song pages, category archives) wrap content in .et-db #et-boc .et-l, whose heading rules outrank single classes */
.et-db #et-boc .et-l .sg-full .sg-h2{font:800 clamp(40px,5.4vw,78px)/.95 var(--sg-head);color:var(--sg-text)}
.et-db #et-boc .et-l .sg-full .sg-now__title{font:800 clamp(28px,2.4vw,38px)/1 var(--sg-head);color:var(--sg-text)}
.et-db #et-boc .et-l .sg-full :is(.sg-card__title,.sg-tl__title,.sg-album__title){color:var(--sg-text)}
.sg-sub{color:var(--sg-muted);margin:14px 0 0;font-size:16px}
.sg-sub b{color:var(--sg-text)}
.sg-lead{font-size:clamp(17px,1.3vw,19px);color:#cfc7bd;max-width:56ch;margin:0 0 28px}
.sg-head{margin-bottom:44px}
.sg-head--row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.sg-sep{width:4px;height:4px;border-radius:50%;background:var(--sg-dim);display:inline-block;margin:0 10px;vertical-align:middle}

/* Buttons */
.sg-btns{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:8px}
.sg-btn{position:relative;display:inline-flex;align-items:center;gap:10px;padding:15px 26px;border-radius:999px;font:700 15px/1 var(--sg-body);letter-spacing:.02em;cursor:pointer;transition:transform .35s var(--sg-ease),box-shadow .35s var(--sg-ease),background .35s,color .35s,border-color .35s;overflow:hidden;border:1px solid transparent}
.sg-btn--hot{background:var(--sg-grad);background-size:160% 100%;color:#120a06!important;box-shadow:0 10px 30px -10px rgba(255,74,40,.7)}
.sg-btn--hot:hover{transform:translateY(-2px);background-position:100% 0;box-shadow:0 18px 40px -12px rgba(255,46,77,.8)}
.sg-btn--ghost{border-color:var(--sg-line2);color:var(--sg-text)!important;background:rgba(255,255,255,.03);backdrop-filter:blur(6px)}
.sg-btn--ghost:hover{border-color:rgba(255,178,63,.6);background:rgba(255,178,63,.08);transform:translateY(-2px)}
.sg-btn--ghost .sg-ico{transition:transform .35s var(--sg-ease)}
.sg-btn--ghost:hover .sg-ico:last-child{transform:translateX(4px)}
.sg-btn--yt{background:#ff0033;color:#fff!important;box-shadow:0 12px 34px -10px rgba(255,0,51,.7)}
.sg-btn--yt:hover{transform:translateY(-2px);box-shadow:0 18px 44px -10px rgba(255,0,51,.9)}
.sg-btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--sg-ease)}
.sg-btn:hover::after{transform:translateX(120%)}

/* Reveal on scroll */
.sg-reveal{opacity:0;transform:translateY(34px);transition:opacity 1s var(--sg-ease),transform 1s var(--sg-ease)}
.sg-reveal.is-in{opacity:1;transform:none}
.sg-rise{opacity:0;transform:translateY(24px);animation:sgRise 1s var(--sg-ease) forwards}
.sg-rise:nth-child(2){animation-delay:.12s}.sg-rise:nth-child(3){animation-delay:.24s}
.sg-hero__copy>.sg-rise:nth-child(2){animation-delay:.45s}.sg-hero__copy>.sg-rise:nth-child(3){animation-delay:.6s}.sg-hero__copy>.sg-rise:nth-child(4){animation-delay:.75s}
@keyframes sgRise{to{opacity:1;transform:none}}

/* ---------------- Hero ---------------- */
.sg-hero{min-height:min(calc(100vh - 122px),900px);display:flex;align-items:center;padding:36px 0 44px;background:radial-gradient(1200px 700px at 75% 30%,rgba(255,90,31,.10),transparent 60%),radial-gradient(900px 600px at 10% 90%,rgba(224,33,138,.10),transparent 60%),var(--sg-ink)}
.sg-hero__bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
/* seamless join: the hero's smoke and stars fade out and its glow settles into the jukebox ink below (home page) */
.sg-hero__bg{-webkit-mask-image:linear-gradient(#000 62%,transparent);mask-image:linear-gradient(#000 62%,transparent)}
.sg-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:260px;z-index:-1;pointer-events:none;background:linear-gradient(rgba(7,6,9,0),var(--sg-ink))}
.sg-webart{position:absolute;width:1500px;height:1500px;right:-420px;top:50%;margin-top:-750px;color:rgba(255,255,255,.1);animation:sgSpin 160s linear infinite}
.sg-hero__glow{position:absolute;inset:0;background:radial-gradient(420px circle at var(--sg-mx) var(--sg-my),rgba(255,140,50,.16),transparent 70%);transition:background .2s}
.sg-grain{position:absolute;inset:-50%;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:sgGrain 1.2s steps(6) infinite}
@keyframes sgGrain{0%{transform:translate(0,0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-2%,-1%)}100%{transform:translate(1%,3%)}}
@keyframes sgSpin{to{transform:rotate(360deg)}}
.sg-hero__grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:40px}
.sg-h1{margin:0 0 26px;padding:0;font-weight:400;display:flex;flex-direction:column}
.sg-h1 .sg-eyebrow{margin-bottom:18px}
.sg-h1__big{font:800 clamp(56px,6.6vw,112px)/.9 var(--sg-head);text-transform:uppercase;letter-spacing:-.005em;color:var(--sg-text);text-shadow:0 0 60px rgba(255,90,31,.15)}
.sg-h1__big .sg-grad{filter:drop-shadow(0 0 calc(10px + var(--sg-pulse)*30px) rgba(255,70,40,.45))}
.sg-h1__sub{font:600 clamp(18px,1.6vw,23px)/1.3 var(--sg-body);color:var(--sg-muted);margin-top:18px}
.sg-h1__sub em{color:var(--sg-text);font-size:1.25em}
.sg-stats{display:grid;grid-template-columns:repeat(4,auto);gap:12px 34px;margin:38px 0 0;justify-content:start}
.sg-stats div{position:relative;padding-left:16px}
.sg-stats div::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;background:var(--sg-grad-v);border-radius:2px}
.sg-stats dt{font:600 11px/1 var(--sg-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--sg-dim);margin:0 0 8px}
.sg-stats dd{margin:0;font:800 clamp(30px,3vw,46px)/1 var(--sg-head);color:transparent;-webkit-text-stroke:1.2px var(--sg-chrome);transition:color .4s}
.sg-stats div:hover dd{color:var(--sg-text);-webkit-text-stroke-color:transparent}
.sg-hero__art{position:relative;display:flex;flex-direction:column;align-items:center}
.sg-guitar-wrap{width:min(100%,430px);aspect-ratio:400/1000;max-height:max(420px,calc(100vh - 300px));position:relative;transform:perspective(1200px) rotateX(var(--sg-ry,0deg)) rotateY(var(--sg-rx,0deg)) rotate(14deg);transition:transform .6s var(--sg-ease)}
.sg-guitar{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 30px 60px rgba(0,0,0,.7))}
.sg-guitar .sg-ln{stroke-dasharray:var(--len,2000);stroke-dashoffset:var(--len,2000);animation:sgDraw 2.6s var(--sg-ease) forwards;animation-delay:var(--dl,.2s)}
.sg-guitar .sg-solid{opacity:0;animation:sgFade 1.6s ease forwards 1.5s}
.sg-guitar .sg-ln--hot{opacity:.45;transition:opacity .6s}
.sg-hero.is-amp .sg-guitar .sg-ln--hot{opacity:1}
.sg-guitar .sg-twinkle{opacity:0;animation:sgFade 1s ease forwards 3.2s;pointer-events:none}
.sg-guitar .sg-tw{transform-box:fill-box;transform-origin:center;transform:scale(0);animation:sgTwinkle 3.8s ease-in-out infinite}
.sg-guitar .sg-twinkle g:nth-child(2) .sg-tw{animation-duration:4.6s;animation-delay:1.7s}
@keyframes sgTwinkle{0%,70%,100%{transform:scale(0) rotate(0);opacity:0}80%{transform:scale(1) rotate(45deg);opacity:1}88%{transform:scale(.55) rotate(75deg);opacity:.7}}
.sg-guitar .sg-poles{opacity:0;animation:sgFade 1s ease forwards 1.8s}
.sg-guitar .sg-frets,.sg-guitar .sg-inlays,.sg-guitar .sg-dlogo,.sg-guitar .sg-strings{opacity:0;animation:sgFade 1s ease forwards 2.1s}
.sg-guitar .sg-strings path{transition:stroke .3s}
.sg-guitar .sg-strings path.is-hit{stroke:#FFB23F;filter:drop-shadow(0 0 4px #FF6A1A)}
.sg-guitar .sg-knob{transition:stroke-width .3s}
.sg-amp.is-on~* .sg-knob,.sg-hero.is-amp .sg-knob{stroke:#FF6A1A}
.sg-strum-zone{cursor:crosshair}
@keyframes sgDraw{to{stroke-dashoffset:0}}
@keyframes sgFade{to{opacity:1}}
.sg-amp{margin-top:18px;display:flex;align-items:center;gap:12px;padding:12px 20px 12px 14px;border-radius:999px;border:1px solid var(--sg-line2);background:rgba(20,17,24,.75);color:var(--sg-text);font-family:var(--sg-body);cursor:pointer;backdrop-filter:blur(8px);transition:border-color .35s,box-shadow .35s,transform .35s var(--sg-ease)}
.sg-chord{position:absolute;top:6%;right:6%;font:900 64px/1 var(--sg-head);color:transparent;background:var(--sg-grad);-webkit-background-clip:text;background-clip:text;opacity:0;pointer-events:none;filter:drop-shadow(0 0 18px rgba(255,90,31,.45))}
.sg-chord.is-pop{animation:sgChord 1.6s var(--sg-ease) forwards}
@keyframes sgChord{0%{opacity:0;transform:scale(.6) translateY(10px)}15%{opacity:1;transform:scale(1.08)}30%{transform:scale(1)}75%{opacity:1}100%{opacity:0;transform:translateY(-8px)}}
.sg-amp:hover{transform:translateY(-2px);border-color:rgba(255,178,63,.55)}
.sg-amp .sg-ico{width:20px;height:20px;color:var(--sg-muted);transition:color .3s}
.sg-amp__led{width:9px;height:9px;border-radius:50%;background:#3a2a22;box-shadow:inset 0 0 2px #000;transition:background .3s,box-shadow .3s}
.sg-amp__txt{display:flex;flex-direction:column;text-align:left;line-height:1.25}
.sg-amp__txt b{font-size:14px}.sg-amp__txt small{font-size:12px;color:var(--sg-muted)}
.sg-amp[aria-pressed=true]{border-color:rgba(255,106,26,.7);box-shadow:0 0 0 4px rgba(255,106,26,.12),0 10px 30px -10px rgba(255,106,26,.6)}
.sg-amp[aria-pressed=true] .sg-amp__led{background:#ff3b1f;box-shadow:0 0 10px #ff3b1f,0 0 20px #ff6a1a}
.sg-amp[aria-pressed=true] .sg-ico{color:var(--sg-amber)}
/* amp button: a soft comet of light runs around its border and the glow breathes, until the amp is switched on */
@property --sg-ang{syntax:"<angle>";inherits:false;initial-value:0deg}
.sg-amp{position:relative;isolation:isolate}
.sg-amp::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--sg-ang),transparent 0 62%,rgba(255,106,26,.15) 70%,#FFB23F 86%,#fff3df 90%,transparent 94%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);pointer-events:none;animation:sgAmpRun 3.6s linear infinite;transition:opacity .4s}
.sg-amp:not([aria-pressed=true]){animation:sgAmpPulse 3.6s ease-in-out infinite}
.sg-amp[aria-pressed=true]::before{opacity:0;animation:none}
@keyframes sgAmpRun{to{--sg-ang:360deg}}
@keyframes sgAmpPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,106,26,0),0 0 0 rgba(255,106,26,0)}50%{box-shadow:0 0 0 5px rgba(255,106,26,.07),0 10px 34px -12px rgba(255,106,26,.55)}}
@media (prefers-reduced-motion:reduce){.sg-amp::before,.sg-amp:not([aria-pressed=true]){animation:none}}
.sg-scrollcue{position:absolute;left:50%;bottom:28px;width:26px;height:42px;border:1.5px solid var(--sg-line2);border-radius:14px;transform:translateX(-50%)}
.sg-scrollcue span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;border-radius:2px;background:var(--sg-amber);animation:sgCue 1.8s ease-in-out infinite}
@keyframes sgCue{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}

/* ---------------- Jukebox ---------------- */
.sg-juke{padding:120px 0;background:linear-gradient(180deg,var(--sg-ink),var(--sg-ink2) 40%,var(--sg-ink))}
.sg-juke--song{padding:96px 0 104px}
/* jukebox deep space: parallax star layers that twinkle, plus a slowly turning spiral galaxy */
.sg-cosmos{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.sg-cosmos__l,.sg-cosmos__gal{position:absolute;inset:-20% 0;will-change:transform}
.sg-cosmos__l .sg-stars circle{opacity:.3}
.sg-cosmos__l--far{opacity:.55}
.sg-cosmos__l--mid{opacity:.8}
.sg-cosmos__l--near .sg-stars{filter:drop-shadow(0 0 4px rgba(255,236,200,.9))}
.sg-cosmos__l--near .sg-stars circle{animation-name:sgStarNear}
@keyframes sgStarNear{0%,100%{opacity:.1;transform:scale(.5)}45%{opacity:1;transform:scale(1.2)}55%{opacity:.85;transform:scale(1)}}
.sg-galaxy{position:absolute;top:24%;right:-12%;width:min(1000px,78vw);aspect-ratio:1;opacity:.8;mix-blend-mode:screen;transform:rotate(-24deg) scaleY(.44)}
.sg-galaxy__svg{display:block;width:100%;height:100%;animation:sgSpin 240s linear infinite;will-change:transform}
.sg-galaxy__arms path{fill:none;stroke-width:44;stroke-linecap:round;opacity:.32}
.sg-galaxy__halo{opacity:.55}
@media (max-width:767px){.sg-galaxy{top:-2%;right:-40%;width:130vw;opacity:.5}}
@media (prefers-reduced-motion:reduce){.sg-cosmos *{animation:none !important}}
/* seamless join: the jukebox space fades out at its bottom edge and the song wall's space fades in at its top (home page) */
.sg-juke .sg-cosmos,.sg-juke__aura{-webkit-mask-image:linear-gradient(transparent,#000 9%,#000 90%,transparent);mask-image:linear-gradient(transparent,#000 9%,#000 90%,transparent)}
.sg-cosmos--deep{bottom:auto;height:min(100%,1500px);-webkit-mask-image:linear-gradient(transparent,#000 7%,#000 68%,transparent);mask-image:linear-gradient(transparent,#000 7%,#000 68%,transparent)}
/* song wall deep space: blue galaxy on the left, drifting nebula, constellations, comets */
.sg-galaxy--blue{top:22%;left:-16%;right:auto;width:min(900px,70vw);opacity:.75;transform:rotate(28deg) scaleY(.5)}
.sg-galaxy--blue .sg-galaxy__svg{animation-duration:300s;animation-direction:reverse}
.sg-galaxy--blue .sg-galaxy__arms path{stroke-width:38;opacity:.36}
.sg-deepneb{position:absolute;inset:0}
.sg-deepneb i{position:absolute;width:55vw;height:55vw;max-width:820px;max-height:820px;border-radius:50%;filter:blur(70px);opacity:.22;animation:sgDeepNeb 46s ease-in-out infinite alternate}
.sg-deepneb i:nth-child(1){left:-12%;top:20%;background:radial-gradient(circle,#1D4ED8,transparent 65%)}
.sg-deepneb i:nth-child(2){right:-10%;top:5%;background:radial-gradient(circle,#0EA5E9,transparent 65%);opacity:.14;animation-duration:58s;animation-delay:-18s}
.sg-deepneb i:nth-child(3){left:38%;bottom:-30%;background:radial-gradient(circle,#4F46E5,transparent 65%);opacity:.16;animation-duration:64s;animation-delay:-30s}
@keyframes sgDeepNeb{to{transform:translate3d(6%,-5%,0) scale(1.15)}}
.sg-cons{position:absolute;inset:0;width:100%;height:100%}
.sg-con polyline{fill:none;stroke:rgba(147,197,253,.55);stroke-width:1.2;stroke-dasharray:1;stroke-dashoffset:1;animation:sgConLine 22s ease-in-out infinite;animation-delay:inherit}
.sg-con circle{fill:#DBEAFE;filter:drop-shadow(0 0 4px #60A5FA);opacity:0;animation:sgConStar 22s ease-in-out infinite;animation-delay:inherit}
@keyframes sgConLine{0%,8%{stroke-dashoffset:1;opacity:0}12%{opacity:1}34%,58%{stroke-dashoffset:0;opacity:1}72%,100%{stroke-dashoffset:0;opacity:0}}
@keyframes sgConStar{0%,6%{opacity:0}14%,60%{opacity:1}74%,100%{opacity:0}}
.sg-comets{position:absolute;inset:0}
.sg-comets i{position:absolute;top:12%;left:70%;width:180px;height:2px;border-radius:2px;background:linear-gradient(90deg,#E0F2FE,rgba(56,189,248,.5) 30%,transparent);filter:drop-shadow(0 0 6px #7DD3FC);opacity:0;transform:rotate(-25deg);transform-origin:0 50%;animation:sgComet 17s cubic-bezier(.3,0,.2,1) infinite}
.sg-comets i:nth-child(2){top:58%;left:96%;width:130px;animation-duration:23s;animation-delay:-9s}
@keyframes sgComet{0%,90%{opacity:0;translate:0 0}91%{opacity:1}99%{opacity:0;translate:-46vw 21vw}100%{opacity:0;translate:-46vw 21vw}}
@media (max-width:767px){.sg-galaxy--blue{top:4%;left:-45%;width:130vw;opacity:.5}.sg-cons{opacity:.6}}
.sg-juke__aura{position:absolute;inset:auto 0 0;height:70%;z-index:-1;background:radial-gradient(60% 60% at 50% 100%,rgba(255,60,40,calc(.06 + var(--sg-pulse)*.22)),transparent 70%);transition:background .1s}
.sg-player{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:0;border-radius:28px;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));border:1px solid var(--sg-line);box-shadow:0 40px 120px -40px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.06);position:relative;overflow:hidden}
.sg-player::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:var(--sg-grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:calc(.25 + var(--sg-pulse)*.75);pointer-events:none;transition:opacity .1s}
.sg-deck{padding:22px 30px 22px;display:flex;flex-direction:column;gap:12px;border-right:1px solid var(--sg-line);min-width:0}
.sg-tt{position:relative;width:100%;max-width:min(230px,27vh);aspect-ratio:1;margin:0 auto}
.sg-vinyl{position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,#1a1a1d 0 31%,#0b0b0d 31.5% 100%);box-shadow:0 26px 60px -20px rgba(0,0,0,.95),0 0 0 1px rgba(255,255,255,.06),0 0 calc(var(--sg-pulse)*60px) rgba(255,90,31,calc(var(--sg-pulse)*.5));animation:sgSpin 1.8s linear infinite;animation-play-state:paused}
.sg-player[data-state=playing] .sg-vinyl{animation-play-state:running}
.sg-vinyl__grooves{position:absolute;inset:0;border-radius:50%;background:repeating-radial-gradient(circle,rgba(255,255,255,.035) 0 1px,transparent 1px 4px),conic-gradient(from 30deg,transparent 0 12%,rgba(255,255,255,.10) 16%,transparent 22% 60%,rgba(255,255,255,.07) 64%,transparent 70%)}
.sg-vinyl__label{position:absolute;inset:31%;width:38%;height:38%;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #0b0b0d,0 0 0 5px rgba(255,178,63,.5)}
.sg-vinyl__hole{position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px;border-radius:50%;background:var(--sg-ink);box-shadow:0 0 0 2px #c9d1da}
.sg-tonearm{position:absolute;right:-6%;top:-4%;width:36%;height:72%;transform-origin:76% 11%;transform:rotate(-26deg);transition:transform 1.1s var(--sg-ease);filter:drop-shadow(4px 10px 10px rgba(0,0,0,.6))}
.sg-player[data-state=playing] .sg-tonearm,.sg-player[data-state=paused] .sg-tonearm{transform:rotate(4deg)}
.sg-now{text-align:center}
.sg-now__from{font:600 11px/1 var(--sg-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--sg-dim);margin:0 0 6px}
.sg-now__from span{color:var(--sg-amber)}
.sg-now__title{font:800 clamp(28px,2.4vw,38px)/1 var(--sg-head);text-transform:uppercase;margin:0;padding:0;color:var(--sg-text);transition:opacity .3s}
.sg-now__meta{margin:8px 0 0;color:var(--sg-muted);font-size:14px;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:0}
.sg-now__meta .sg-sep{display:inline-block!important}
.sg-now__meta [data-sg=terms]:empty,.sg-now__meta [data-sg=terms]:empty~*{display:none}
.sg-viz{width:100%;height:64px;display:block;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent)}
.sg-progress{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
.sg-time{font:600 13px/1 var(--sg-mono);color:var(--sg-muted);min-width:44px;font-variant-numeric:tabular-nums}
.sg-progress .sg-time:last-child{text-align:right}
.sg-bar{position:relative;height:22px;cursor:pointer;touch-action:none;outline:none}
.sg-bar::before{content:"";position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;border-radius:4px;background:rgba(255,255,255,.1);transition:height .25s,margin .25s}
.sg-bar__buf,.sg-bar__fill{position:absolute;left:0;top:50%;height:4px;margin-top:-2px;border-radius:4px;width:0;transition:height .25s,margin .25s}
.sg-bar__buf{background:rgba(255,255,255,.14)}
.sg-bar__fill{background:var(--sg-grad);box-shadow:0 0 14px rgba(255,90,31,.6)}
.sg-bar__knob{position:absolute;top:50%;left:0;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,106,26,.35),0 0 18px rgba(255,106,26,.8);transform:scale(0);transition:transform .25s var(--sg-ease)}
.sg-bar:hover::before,.sg-bar:hover .sg-bar__fill,.sg-bar:hover .sg-bar__buf,.sg-bar:focus-visible::before{height:6px;margin-top:-3px}
.sg-bar:hover .sg-bar__knob,.sg-bar:focus-visible .sg-bar__knob,.sg-bar.is-drag .sg-bar__knob{transform:scale(1)}
.sg-transport{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.sg-ib{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:50%;border:1px solid var(--sg-line);background:rgba(255,255,255,.03);color:var(--sg-text);cursor:pointer;transition:background .3s,border-color .3s,color .3s,transform .3s var(--sg-ease);padding:0}
.sg-ib .sg-ico{width:20px;height:20px}
.sg-ib:hover{background:rgba(255,178,63,.1);border-color:rgba(255,178,63,.5);color:var(--sg-amber);transform:translateY(-1px)}
.sg-ib[aria-pressed=true]{color:var(--sg-amber);border-color:rgba(255,178,63,.6);background:rgba(255,178,63,.1)}
.sg-ib--hot{background:var(--sg-grad);color:#140a06;border:0}
.sg-ib--hot:hover{color:#140a06;background:var(--sg-grad)}
.sg-play{position:relative;width:64px;height:64px;border-radius:50%;border:0;cursor:pointer;background:var(--sg-grad);color:#140a06;display:grid;place-items:center;margin:0 8px;box-shadow:0 14px 40px -12px rgba(255,60,40,.9);transition:transform .35s var(--sg-ease);padding:0}
.sg-play:hover{transform:scale(1.06)}
.sg-play:active{transform:scale(.96)}
.sg-play .sg-ico{width:30px;height:30px}
.sg-play__ring{position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(255,106,26,.5);transform:scale(calc(1 + var(--sg-pulse)*.22));opacity:calc(.25 + var(--sg-pulse));transition:transform .08s,opacity .08s;pointer-events:none}
.sg-play__i{grid-area:1/1}
.sg-play__i--pause,.sg-player[data-state=playing] .sg-play__i--play{display:none}
.sg-player[data-state=playing] .sg-play__i--pause{display:block}
.sg-player[data-state=loading] .sg-play__ring{animation:sgSpin 1s linear infinite;border-color:transparent;border-top-color:#fff;opacity:1}
.sg-vol{display:flex;align-items:center;gap:8px;margin-left:6px}
.sg-vol__off,.is-muted .sg-vol__on{display:none}
.is-muted .sg-vol__off{display:block}
.sg-range{-webkit-appearance:none;appearance:none;width:96px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--sg-orange) var(--v,85%),rgba(255,255,255,.12) var(--v,85%));outline:none;cursor:pointer}
.sg-range::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 10px rgba(255,106,26,.8)}
.sg-range::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:#fff}
.sg-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:14px;position:relative;z-index:2}
.sg-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid var(--sg-line2);background:rgba(255,255,255,.03);color:var(--sg-text)!important;font:600 13px/1 var(--sg-body);cursor:pointer;transition:all .3s var(--sg-ease)}
.sg-chip .sg-ico{width:16px;height:16px}
.sg-chip:hover{border-color:rgba(255,178,63,.6);color:var(--sg-amber)!important;transform:translateY(-1px)}
.sg-chip--hot{border-color:rgba(255,106,26,.55);background:rgba(255,106,26,.1)}
.sg-chip[hidden]{display:none}

.sg-sheet{display:flex;flex-direction:column;min-width:0;background:rgba(0,0,0,.25)}
.sg-tabs{display:flex;align-items:center;gap:6px;padding:18px 24px;border-bottom:1px solid var(--sg-line)}
.sg-tabs button{white-space:nowrap;background:none;border:0;color:var(--sg-muted);font:700 13px/1 var(--sg-mono);letter-spacing:.14em;text-transform:uppercase;padding:10px 14px;border-radius:999px;cursor:pointer;transition:all .3s}
.sg-tabs button:hover{color:var(--sg-text)}
.sg-tabs button.is-on{color:var(--sg-ink);background:var(--sg-grad)}
.sg-speed{margin-left:auto;display:flex;align-items:center;gap:2px;border:1px solid var(--sg-line2);border-radius:999px;padding:3px}
.sg-speed button{width:26px;height:26px;border-radius:50%;border:0;background:rgba(255,255,255,.06);color:var(--sg-text);font:700 15px/1 var(--sg-body);cursor:pointer;padding:0;transition:background .3s,color .3s}
.sg-speed button:hover{background:var(--sg-grad);color:#140a06}
.sg-speed output{font:600 12px/1 var(--sg-mono);color:var(--sg-amber);min-width:38px;text-align:center}
.sg-player [data-tip],.sg-vp [data-tip]{position:relative}
.sg-player [data-tip]::after,.sg-vp [data-tip]::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,6px);white-space:nowrap;padding:7px 10px;border-radius:8px;background:#1d1a22;border:1px solid rgba(255,178,63,.35);color:#efe9e1;font:600 12px/1 var(--sg-body);letter-spacing:.02em;text-transform:none;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s var(--sg-ease);z-index:20;box-shadow:0 10px 30px -10px rgba(0,0,0,.8)}
.sg-player [data-tip]:hover::after,.sg-player [data-tip]:focus-visible::after,.sg-vp [data-tip]:hover::after,.sg-vp [data-tip]:focus-visible::after{opacity:1;transform:translate(-50%,0)}
.sg-tabs [data-tip]::after,.sg-vp__top [data-tip]::after{bottom:auto;top:calc(100% + 10px)}
.sg-vp__top{position:relative;z-index:3}
/* close tooltip sits to the left of the X, clear of the video */
.sg-vp__top [data-tip]::after{left:auto;right:calc(100% + 10px);top:50%;bottom:auto;transform:translate(6px,-50%)}
.sg-vp__top [data-tip]:hover::after,.sg-vp__top [data-tip]:focus-visible::after{transform:translate(0,-50%)}
.sg-follow{white-space:nowrap;margin-left:12px;font:600 12px/1 var(--sg-mono);color:var(--sg-dim);display:flex;gap:8px;align-items:center;cursor:pointer}
.sg-follow input{accent-color:var(--sg-orange)}
.sg-sheet__body{position:relative;flex:1;min-height:0}
.sg-lyrics,.sg-story{position:absolute;inset:0;overflow-y:auto;padding:12% 40px 50%;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;-webkit-mask:linear-gradient(180deg,transparent,#000 22%,#000 72%,transparent);mask:linear-gradient(180deg,transparent,#000 22%,#000 72%,transparent);outline:none}
.sg-story{padding:36px 40px;-webkit-mask:none;mask:none;color:#cfc7bd}
.sg-story p{margin:0 0 1em}
.sg-lyrics .sg-l{font:600 clamp(19px,1.6vw,24px)/1.45 var(--sg-body);color:rgba(239,233,225,.32);margin:0 0 6px;transition:color .5s,transform .5s var(--sg-ease),text-shadow .5s;transform-origin:left center}
.sg-lyrics .sg-l.is-past{color:rgba(239,233,225,.55)}
.sg-lyrics .sg-l.is-now{color:#fff;transform:scale(1.04);text-shadow:0 0 24px rgba(255,120,50,.55)}
.sg-lyrics .sg-lab{display:inline-block;margin:22px 0 10px;padding:5px 12px;border-radius:999px;font:700 11px/1 var(--sg-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--sg-amber);border:1px solid rgba(255,178,63,.35);background:rgba(255,178,63,.06)}
.sg-lyrics .sg-gap{height:14px}
.sg-lyrics .sg-synchint{margin:0 0 4px;font:500 12px/1.5 var(--sg-mono);letter-spacing:.04em;color:var(--sg-dim)}
.sg-lyrics .sg-l{cursor:pointer}
.sg-lyrics .sg-l:not(.is-now):hover{color:rgba(255,178,63,.8)}
.sg-speed output.is-learned{color:#140a06;background:var(--sg-grad);border-radius:999px;padding:6px 0}
.sg-lyrics .sg-empty{color:var(--sg-muted);font-style:italic}

/* ---------------- Wall ---------------- */
.sg-wall{padding:110px 0 120px;background:var(--sg-ink)}
.sg-filters{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin:-10px 0 34px;position:sticky;top:0;z-index:5;padding:14px 0;background:linear-gradient(180deg,var(--sg-ink) 70%,rgba(7,6,9,0));transition:background-color .3s}
/* filters sit see-through over the space backdrop and only get their ink backing once they stick (is-stuck from sg.js) */
.sg-cosmos--deep~.sg-wrap .sg-filters:not(.is-stuck){background:none}
.sg-pills{display:flex;flex-wrap:wrap;gap:8px}
.sg-wall__all{padding:12px 22px;font-size:14px}
.sg-wall__all svg{width:18px;height:18px;flex:none}
.sg-wall__all svg:last-child{transition:transform .45s var(--sg-ease)}
.sg-wall__all:hover svg:last-child{transform:translateX(4px)}
.sg-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;border:1px solid var(--sg-line);background:rgba(255,255,255,.03);color:var(--sg-muted)!important;font:600 14px/1 var(--sg-body);transition:all .35s var(--sg-ease)}
.sg-pill i{font:600 11px/1 var(--sg-mono);font-style:normal;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.07);color:var(--sg-text)}
.sg-pill:hover{color:var(--sg-text)!important;border-color:var(--sg-line2);background:rgba(255,255,255,.06)}
.sg-pill.is-on{color:#140a06!important;background:var(--sg-grad);border-color:transparent;box-shadow:0 8px 24px -10px rgba(255,80,40,.8)}
.sg-pill.is-on i{background:rgba(0,0,0,.18);color:#140a06}
.sg-sorts{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center}
.sg-toggle{display:flex;align-items:center;gap:10px;font:600 14px/1 var(--sg-body);color:var(--sg-muted);cursor:pointer}
.sg-toggle input{position:absolute;opacity:0;pointer-events:none}
/* All / Videos / Audio only switch: a gradient thumb glides to the picked option */
.sg-seg{--i:0;position:relative;display:grid;grid-template-columns:repeat(3,1fr);padding:4px;border-radius:999px;border:1px solid var(--sg-line);background:rgba(255,255,255,.03)}
.sg-seg:has(input[value=vid]:checked){--i:1}.sg-seg:has(input[value=aud]:checked){--i:2}
.sg-seg label{position:relative;z-index:1;cursor:pointer}
.sg-seg input{position:absolute;opacity:0;pointer-events:none}
.sg-seg span{display:block;padding:9px 14px;text-align:center;white-space:nowrap;font:600 13px/1 var(--sg-body);color:var(--sg-muted);border-radius:999px;transition:color .5s var(--sg-ease)}
.sg-seg label:hover span{color:var(--sg-text)}
.sg-seg input:checked+span{color:#140a06}
.sg-seg input:focus-visible+span{outline:2px solid var(--sg-amber);outline-offset:2px}
.sg-seg__thumb{position:absolute;top:4px;bottom:4px;left:4px;width:calc((100% - 8px)/3);border-radius:999px;background:var(--sg-grad);box-shadow:0 8px 24px -10px rgba(255,80,40,.8);transform:translateX(calc(var(--i)*100%));transition:transform .62s var(--sg-ease)}
@media (prefers-reduced-motion:reduce){.sg-seg__thumb{transition:none}}
.sg-toggle span{width:40px;height:22px;border-radius:999px;background:rgba(255,255,255,.1);position:relative;transition:background .3s}
.sg-toggle span::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .35s var(--sg-ease)}
.sg-toggle input:checked+span{background:var(--sg-grad)}
.sg-toggle input:checked+span::after{transform:translateX(18px)}
.sg-toggle input:focus-visible+span{outline:2px solid var(--sg-amber);outline-offset:2px}
.sg-select select{appearance:none;-webkit-appearance:none;background:rgba(255,255,255,.04) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23FFB23F'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right 12px center/18px;border:1px solid var(--sg-line2);color:var(--sg-text);font:600 14px/1 var(--sg-body);padding:11px 40px 11px 16px;border-radius:999px;cursor:pointer}
.sg-select option{background:var(--sg-ink3);color:var(--sg-text)}
.sg-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:26px}
.sg-card{position:relative;border-radius:var(--sg-r);background:linear-gradient(170deg,var(--sg-ink3),var(--sg-ink2));border:1px solid var(--sg-line);overflow:hidden;transform:perspective(900px) rotateX(var(--ty,0deg)) rotateY(var(--tx,0deg));transition:transform .45s var(--sg-ease),border-color .45s,box-shadow .45s,opacity .45s;padding:0!important}
.sg-card::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:var(--sg-grad);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .45s;pointer-events:none;z-index:2}
.sg-card:hover{box-shadow:0 30px 60px -24px rgba(255,60,40,.45);border-color:transparent}
.sg-card:hover::before,.sg-card.is-playing::before{opacity:1}
.sg-card.is-hide{display:none}
/* home wall paging: 8 at a time, Load more and View all side by side */
.sg-card.is-more{display:none}
.sg-wall__more{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:44px}
.sg-wall__more[hidden]{display:none}
.sg-card__media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}
.sg-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--sg-ease),filter .6s}
.sg-card:hover .sg-card__media img{transform:scale(1.07);filter:saturate(1.15) brightness(.7)}
.sg-card__shine{position:absolute;inset:0;background:radial-gradient(260px circle at var(--px,50%) var(--py,50%),rgba(255,255,255,.22),transparent 60%);opacity:0;transition:opacity .4s;pointer-events:none}
.sg-card:hover .sg-card__shine{opacity:1}
.sg-card__btns{display:flex;gap:10px;padding:16px 20px 0}
.sg-card__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:999px;border:1px solid var(--sg-line2);background:rgba(255,255,255,.04);color:var(--sg-text);font:700 14px/1 var(--sg-body);cursor:pointer;transition:transform .35s var(--sg-ease),background .35s,border-color .35s,color .35s,box-shadow .35s}
.sg-card__btn:hover{transform:translateY(-2px);border-color:rgba(255,178,63,.6);background:rgba(255,178,63,.1);color:var(--sg-amber)}
.sg-card__btn--hot:hover{box-shadow:0 12px 26px -10px rgba(255,60,40,.8)}
.sg-card__btn--hot{background:var(--sg-grad);border:0;color:#140a06}
.sg-card__btn--hot:hover{background:var(--sg-grad);color:#140a06}
.sg-card__btn .sg-ico{width:16px;height:16px}
.sg-card__dur,.sg-card__tag{position:absolute;bottom:10px;font:600 12px/1 var(--sg-mono);padding:6px 9px;border-radius:8px;background:rgba(0,0,0,.65);color:#fff;backdrop-filter:blur(4px)}
.sg-card__dur{right:10px}
.sg-card__tag{left:10px;display:flex;gap:6px;align-items:center;color:var(--sg-amber)}
.sg-card__tag .sg-ico{width:13px;height:13px}
.sg-card__eq{position:absolute;top:12px;right:12px;display:none;gap:3px;align-items:flex-end;height:18px;padding:6px 8px;border-radius:8px;background:rgba(0,0,0,.6);box-sizing:content-box}
.sg-card__eq i{width:3px;background:var(--sg-amber);border-radius:2px;animation:sgEq .9s ease-in-out infinite alternate}
.sg-card__eq i:nth-child(2){animation-delay:-.3s}.sg-card__eq i:nth-child(3){animation-delay:-.6s}.sg-card__eq i:nth-child(4){animation-delay:-.15s}
@keyframes sgEq{from{height:3px}to{height:18px}}
.sg-card.is-playing .sg-card__eq{display:flex}
.sg-card__body{padding:18px 20px 20px}
.sg-card__title{font:800 25px/1.02 var(--sg-head)!important;text-transform:uppercase;margin:0 0 8px;padding:0}
.sg-card__title a{color:var(--sg-text)!important;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat;transition:background-size .4s var(--sg-ease),color .3s}
.sg-card:hover .sg-card__title a{color:var(--sg-amber)!important}
.sg-card__title a:hover{background-size:100% 2px}
.sg-card__ex{font-size:14px;line-height:1.55;color:var(--sg-muted);margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sg-card__terms{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.sg-card__terms span{display:inline-block!important;width:auto!important;font:600 10.5px/1 var(--sg-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--sg-dim);padding:5px 8px;border-radius:6px;border:1px solid var(--sg-line)}

/* ---------------- Video modal ---------------- */
.sg-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:24px;font-family:var(--sg-body);color:var(--sg-text)}
.sg-modal[hidden]{display:none}
.sg-modal__bg{position:absolute;inset:0;background:rgba(4,3,6,.88);backdrop-filter:blur(14px);animation:sgFade .4s ease both;opacity:0}
.sg-vp{position:relative;width:min(1100px,100%,calc((100vh - 410px)*16/9 + 40px),calc((100dvh - 410px)*16/9 + 40px));min-width:min(520px,100%);max-height:100%;overflow:hidden auto;scrollbar-width:none;border-radius:24px;background:linear-gradient(170deg,#17141c,#0b0a0e);border:1px solid var(--sg-line2);box-shadow:0 40px 140px -30px rgba(255,60,40,.35);padding:18px 20px 16px;animation:sgPop .55s var(--sg-ease) both}
@keyframes sgPop{from{opacity:0;transform:translateY(30px) scale(.96)}}
.sg-vp__top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}
.sg-vp__top .sg-eyebrow{margin-bottom:6px}
.sg-vp__title{font:800 clamp(24px,2.6vw,36px)/1 var(--sg-head);text-transform:uppercase;margin:0;padding:0;color:var(--sg-text)}
.sg-vp__screen{position:relative;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#000}
.sg-video{width:100%;height:100%;display:block;object-fit:contain;background:#000}
.sg-vp__big{position:absolute;left:50%;top:50%;width:90px;height:90px;margin:-45px;border-radius:50%;border:0;background:var(--sg-grad);color:#140a06;display:grid;place-items:center;cursor:pointer;box-shadow:0 0 0 10px rgba(255,106,26,.15),0 20px 50px -10px rgba(255,60,40,.9);transition:transform .35s var(--sg-ease),opacity .3s}
.sg-vp__big .sg-ico{width:36px;height:36px}
.sg-vp__big:hover{transform:scale(1.08)}
.sg-vp.is-playing .sg-vp__big{opacity:0;pointer-events:none;transform:scale(.7)}
.sg-vp__ctrl{display:flex;align-items:center;gap:10px;margin-top:14px}
.sg-vp__ctrl .sg-bar{flex:1}
.sg-v-pause,.sg-vp.is-playing .sg-v-play{display:none}
.sg-vp.is-playing .sg-v-pause{display:block}
.sg-vp__strip{display:flex;gap:10px;overflow-x:auto;margin-top:14px;padding-bottom:2px;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.sg-vp::-webkit-scrollbar,.sg-vp__strip::-webkit-scrollbar{display:none}
.sg-vp__strip button{flex:none;width:148px;border:1px solid var(--sg-line);border-radius:12px;overflow:hidden;padding:0;background:#000;cursor:pointer;opacity:.55;transition:opacity .3s,border-color .3s,transform .3s var(--sg-ease);position:relative}
.sg-vp__strip button:hover{opacity:1;transform:translateY(-2px)}
.sg-vp__strip button.is-on{opacity:1;border-color:var(--sg-orange)}
.sg-vp__strip img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.sg-vp__strip span{display:block;font:700 11px/1.2 var(--sg-body);color:var(--sg-text);padding:7px 8px;text-align:left;background:#121015;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sg-vp__yt{margin:10px 0 0;text-align:right}
.sg-vp__yt a{display:inline-flex;align-items:center;gap:8px;color:var(--sg-muted);font:600 13px/1 var(--sg-body);text-decoration:none}
.sg-vp__yt a:hover{color:#ff3355}
body.sg-lock{overflow:hidden}

/* ---------------- Story timeline ---------------- */
.sg-tl{padding:120px 0;background:radial-gradient(900px 500px at 0% 0%,rgba(255,178,63,.06),transparent 60%),var(--sg-ink2)}
.sg-tl__list{list-style:none;margin:0;padding:0;position:relative}
.sg-tl__line{position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:rgba(255,255,255,.08);padding:0!important}
.sg-tl__fill{position:absolute;left:0;top:0;width:100%;height:var(--sg-tl,0%);background:var(--sg-grad-v);box-shadow:0 0 12px rgba(255,90,31,.7)}
.sg-tl__dot{position:absolute;left:50%;top:var(--sg-tl,0%);width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px rgba(255,106,26,.3),0 0 22px #ff6a1a}
.sg-tl__item{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:80px;margin:0 0 60px;padding:0!important}
.sg-tl__year{font:900 clamp(50px,6vw,96px)/1 var(--sg-head);color:transparent;-webkit-text-stroke:1.2px rgba(239,233,225,.35);text-align:right;align-self:center;transition:color .6s,-webkit-text-stroke-color .6s}
.sg-tl__item.is-in .sg-tl__year{-webkit-text-stroke-color:rgba(255,178,63,.8)}
.sg-tl__item:hover .sg-tl__year{color:var(--sg-amber)}
.sg-tl__card{position:relative;padding:28px 30px;border-radius:var(--sg-r);background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.015));border:1px solid var(--sg-line);transition:transform .45s var(--sg-ease),border-color .45s}
.sg-tl__card:hover{transform:translateY(-4px);border-color:rgba(255,178,63,.4)}
.sg-tl__item:nth-child(odd) .sg-tl__year{order:2;text-align:left}
.sg-tl__num{font:600 12px/1 var(--sg-mono);letter-spacing:.2em;color:var(--sg-amber)}
.sg-tl__title{font:800 30px/1 var(--sg-head)!important;text-transform:uppercase;margin:10px 0 10px;padding:0;color:var(--sg-text)}
.sg-tl__card p{margin:0;color:#cfc7bd;font-size:16px}
.sg-tl__card a{color:var(--sg-amber)!important;border-bottom:1px solid rgba(255,178,63,.4)}

/* ---------------- Guitar band ---------------- */
.sg-bb{padding:120px 0;background:var(--sg-ink)}
/* black beauty backdrop: amp stacks with sound waves rippling out on the beat */
.sg-ampwall{position:absolute;inset:0;z-index:-1;pointer-events:none;-webkit-mask-image:linear-gradient(transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(transparent,#000 14%,#000 86%,transparent)}
.sg-ampwall svg{position:absolute;inset:0;width:100%;height:100%}
.sg-ampwall__wave path{fill:none;stroke:#FF3D2E;stroke-width:2;opacity:.35;filter:drop-shadow(0 0 8px #FF3D2E);transform-box:fill-box;transform-origin:center;animation:sgAmpWave 1.2s ease-in-out infinite}
.sg-ampwall__wave .sg-ampwall__wave2{stroke:#FFB23F;opacity:.22;animation-duration:1.9s;animation-direction:reverse}
@keyframes sgAmpWave{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}
.sg-amp__stack{opacity:.5}
.sg-amp__tolex{fill:#0d0c0b;stroke:#C9A24A;stroke-width:2}
.sg-amp__panel{fill:#C9A24A;opacity:.85}
.sg-amp__knob{fill:#111;stroke:#E8D9A8;stroke-width:1.5}
.sg-amp__logo{font:italic 700 30px/1 "Brush Script MT","Segoe Script",cursive;fill:#F4EFE8;text-anchor:middle}
.sg-amp__grille{fill:url(#sgAmpGrille);stroke:rgba(255,255,255,.08)}
.sg-amp__spk{fill:rgba(0,0,0,.35);stroke:rgba(255,178,63,.12);stroke-width:2}
.sg-amp__cab{transform-box:fill-box;transform-origin:center;animation:sgAmpThump .6s ease-out infinite;animation-delay:var(--d)}
@keyframes sgAmpThump{0%{transform:scale(1.012)}30%,100%{transform:scale(1)}}
.sg-amp__wave{fill:none;stroke:#FF6A1A;stroke-width:3;opacity:0;transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 0 10px #FF3D2E);animation:sgAmpRing 2.4s cubic-bezier(.2,.6,.3,1) infinite}
@keyframes sgAmpRing{0%{transform:scale(.4);opacity:.85;stroke-width:5}100%{transform:scale(2.6);opacity:0;stroke-width:1}}
@media (max-width:980px){.sg-amp__stack{opacity:.28}}
@media (prefers-reduced-motion:reduce){.sg-ampwall *{animation:none !important}}
/* family timeline: the heading sticks under the site header and shrinks; years slide up under it and fade in from the bottom */
.sg-tl{overflow:clip}
.sg-tl .sg-head{position:sticky;top:var(--sg-stick,0px);z-index:4;margin-bottom:10px;padding:18px 0 44px;background:linear-gradient(180deg,var(--sg-ink2) 70%,rgba(14,12,18,0));transition:padding .5s var(--sg-ease)}
.sg-tl .sg-head .sg-h2,.et-db #et-boc .et-l .sg-tl .sg-head .sg-h2{transition:font-size .5s var(--sg-ease)}
.sg-tl .sg-head .sg-eyebrow{transition:margin .5s var(--sg-ease),opacity .5s}
.sg-tl.is-stuck .sg-head{padding:8px 0 34px}
.sg-tl.is-stuck .sg-head .sg-h2,.et-db #et-boc .et-l .sg-tl.is-stuck .sg-head .sg-h2{font-size:clamp(26px,2.8vw,42px)}
.sg-tl.is-stuck .sg-head .sg-eyebrow{margin-bottom:6px;opacity:.8}
.sg-tl__list{padding-bottom:12vh !important}
.sg-tl__fade{position:sticky;bottom:0;z-index:3;height:30vh;margin-top:-30vh;pointer-events:none;background:linear-gradient(180deg,rgba(14,12,18,0),var(--sg-ink2) 88%)}
.sg-bb__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}
.sg-bb__photo{position:relative;margin:0;border-radius:26px;overflow:hidden;transform:perspective(1100px) rotateY(var(--tx,0deg)) rotateX(var(--ty,0deg));transition:transform .6s var(--sg-ease);box-shadow:0 50px 100px -40px rgba(0,0,0,.95),0 0 0 1px var(--sg-line)}
.sg-bb__photo img{width:100%;display:block;aspect-ratio:4/3;object-fit:cover;filter:grayscale(.3) contrast(1.1)}
.sg-bb__glare{position:absolute;inset:0;background:radial-gradient(500px circle at var(--px,30%) var(--py,20%),rgba(255,255,255,.22),transparent 55%),linear-gradient(0deg,rgba(7,6,9,.55),transparent 50%);mix-blend-mode:screen;pointer-events:none}

/* ---------------- Albums ---------------- */
.sg-albums{padding:120px 0;background:linear-gradient(180deg,var(--sg-ink),var(--sg-ink2))}
/* vault backdrop (home): stars over a mixing desk with live meters and riding faders, plus an oscilloscope trace */
.sg-studio{-webkit-mask-image:linear-gradient(transparent,#000 14%,#000 92%,transparent);mask-image:linear-gradient(transparent,#000 14%,#000 92%,transparent)}
.sg-studio__glow{position:absolute;left:-10%;right:-10%;bottom:-10%;height:60%;background:radial-gradient(50% 60% at 50% 100%,rgba(255,106,26,.22),rgba(224,33,138,.1) 45%,transparent 75%)}
.sg-studio__scope{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.sg-studio__trace{fill:none;stroke:#2EC4FF;stroke-width:1.6;stroke-dasharray:520 1100;filter:drop-shadow(0 0 6px #2EC4FF);animation:sgTrace 7s linear infinite;vector-effect:non-scaling-stroke}
.sg-studio__trace--b{stroke:#FF6A1A;filter:drop-shadow(0 0 6px #FF6A1A);animation-duration:11s;animation-direction:reverse;opacity:.7}
@keyframes sgTrace{to{stroke-dashoffset:-1620}}
.sg-studio__deskwrap{position:absolute;left:-25%;right:-25%;bottom:-2%;height:52%;perspective:700px;perspective-origin:50% 0;-webkit-mask-image:linear-gradient(transparent,#000 45%);mask-image:linear-gradient(transparent,#000 45%)}
.sg-studio__desk{display:block;width:100%;height:100%;transform:rotateX(52deg);transform-origin:50% 100%;opacity:.8}
.sg-ch__strip{fill:#0e0c13;stroke:rgba(255,255,255,.08)}
.sg-ch__knob{fill:#1a1720;stroke:rgba(255,178,63,.35);stroke-width:1.5}
.sg-ch__track{stroke:#000;stroke-width:4;stroke-linecap:round}
.sg-ch__meter{fill:url(#sgStMeter);transform-box:fill-box;transform-origin:50% 100%;animation:sgMeter 1.4s linear infinite;filter:drop-shadow(0 0 4px rgba(255,140,40,.6))}
@keyframes sgMeter{0%{transform:scaleY(.25)}12%{transform:scaleY(.78)}24%{transform:scaleY(.5)}38%{transform:scaleY(.92)}50%{transform:scaleY(.35)}63%{transform:scaleY(.7)}76%{transform:scaleY(.42)}88%{transform:scaleY(.85)}100%{transform:scaleY(.25)}}
.sg-ch__fader{fill:#cfd3da;stroke:#000;animation:sgFader 8s ease-in-out infinite alternate}
.sg-ch--hot .sg-ch__fader{fill:#FFB23F;filter:drop-shadow(0 0 6px #FF6A1A)}
@keyframes sgFader{0%{transform:translateY(-50px)}40%{transform:translateY(40px)}70%{transform:translateY(-10px)}100%{transform:translateY(90px)}}
.sg-studio__onair{position:absolute;top:13%;right:6%;display:flex;align-items:center;gap:10px;padding:8px 16px;border:1px solid rgba(255,45,85,.55);border-radius:8px;font:700 13px/1 var(--sg-mono);letter-spacing:.3em;text-transform:uppercase;color:#FF6A80;text-shadow:0 0 12px rgba(255,45,85,.8);box-shadow:0 0 30px -6px rgba(255,45,85,.6),inset 0 0 18px -6px rgba(255,45,85,.6);animation:sgOnAir 5s ease-in-out infinite}
.sg-studio__onair i{width:8px;height:8px;border-radius:50%;background:#FF2D55;box-shadow:0 0 10px #FF2D55}
@keyframes sgOnAir{0%,100%{opacity:.85}48%{opacity:.85}50%{opacity:.35}52%{opacity:.9}}
@media (max-width:980px){.sg-studio__onair{display:none}.sg-studio__deskwrap{height:34%}}
.sg-albums__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;row-gap:120px;padding-top:80px}
.sg-album{position:relative;display:flex;flex-direction:column;min-height:330px;padding:24px;border-radius:var(--sg-r);background:linear-gradient(165deg,var(--sg-ink3),#0a090c);border:1px solid var(--sg-line);overflow:hidden;transition:transform .5s var(--sg-ease),border-color .4s,box-shadow .5s;transition-delay:calc(var(--d)*40ms)}
.sg-album:hover{transform:translateY(-6px);border-color:rgba(255,178,63,.45);box-shadow:0 30px 60px -25px rgba(255,70,40,.5)}
.sg-album__disc{position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:repeating-radial-gradient(circle,#111 0 2px,#1b1b1f 2px 4px);box-shadow:0 0 0 1px rgba(255,255,255,.05);transition:transform 1.2s var(--sg-ease)}
.sg-album__disc span{position:absolute;inset:34%;border-radius:50%;background:#333 center/cover}
.sg-album:hover .sg-album__disc{transform:rotate(200deg) translate(-10px,10px)}
.sg-album__no{font:600 12px/1 var(--sg-mono);letter-spacing:.2em;color:var(--sg-amber);margin-top:auto}
.sg-album__title{font:800 32px/.98 var(--sg-head)!important;text-transform:uppercase;margin:12px 0 10px;padding:0 48px 0 0;color:var(--sg-text)}
.sg-album__meta{font:600 13px/1 var(--sg-mono);color:var(--sg-muted)}
.sg-album__go{position:absolute;right:20px;bottom:22px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--sg-line2);transition:all .4s var(--sg-ease)}
.sg-album:hover .sg-album__go{background:var(--sg-grad);border-color:transparent;color:#140a06;transform:rotate(-45deg)}
/* vault cards: the record hides behind the card and rises out of its top edge, spinning, on hover (card face moved to ::before so the disc can sit behind it) */
.sg-album{overflow:visible;isolation:isolate;background:none;border-color:transparent}
.sg-album::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:linear-gradient(180deg,rgba(10,9,12,.05),rgba(10,9,12,.55) 42%,#0a090c 72%) border-box,var(--art,none) center 18%/cover no-repeat border-box,linear-gradient(165deg,var(--sg-ink3),#0a090c);border:1px solid var(--sg-line);filter:saturate(.85) brightness(.85);transition:border-color .4s,filter .5s}
.sg-album:hover::before{filter:saturate(1.05) brightness(1)}
.sg-album:hover::before{border-color:rgba(255,178,63,.45)}
.sg-album__disc{--sz:min(210px,74%);z-index:-2;top:10px;right:auto;left:calc(50% - var(--sz)/2);width:var(--sz);height:auto;aspect-ratio:1;background:conic-gradient(from 0deg,transparent 0 18%,rgba(255,255,255,.09) 24%,transparent 30% 68%,rgba(255,255,255,.09) 74%,transparent 80%),repeating-radial-gradient(circle,#111 0 2px,#1b1b1f 2px 4px);box-shadow:0 0 0 1px rgba(255,255,255,.06);transform:none;transition:translate .8s var(--sg-ease),box-shadow .8s}
.sg-album__disc span{box-shadow:0 0 0 3px #FFB23F}
.sg-album:hover .sg-album__disc{transform:none;translate:0 -54%;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 -10px 40px -10px rgba(255,120,40,.4);animation:sgSpin 2.6s linear infinite}

/* ---------------- YouTube band ---------------- */
.sg-yt{padding:120px 0;background:radial-gradient(800px 500px at 20% 50%,rgba(255,0,51,.14),transparent 65%),var(--sg-ink)}
.sg-yt__web{position:absolute;inset:0;z-index:-1;pointer-events:none}
.sg-webart--yt{left:-500px;right:auto;color:rgba(255,255,255,.05);animation-duration:220s;animation-direction:reverse}
.sg-yt__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.sg-yt__screen{position:relative;aspect-ratio:16/10;border-radius:26px;background:linear-gradient(160deg,#1c1118,#0b0a0e);border:1px solid rgba(255,0,51,.35);display:grid;place-items:center;overflow:hidden;box-shadow:0 0 0 10px rgba(255,255,255,.02),0 40px 100px -30px rgba(255,0,51,.5)}
.sg-yt__logo{width:120px;height:120px;color:#ff0033;filter:drop-shadow(0 0 30px rgba(255,0,51,.8));animation:sgBeat 1.6s ease-in-out infinite}
.sg-yt__logo .sg-ico{width:100%;height:100%}
@keyframes sgBeat{0%,100%{transform:scale(1)}15%{transform:scale(1.08)}30%{transform:scale(.98)}45%{transform:scale(1.05)}}
.sg-yt__scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px);pointer-events:none}
.sg-yt__screen::after{content:"";position:absolute;left:0;right:0;height:30%;top:-30%;background:linear-gradient(180deg,transparent,rgba(255,0,51,.12),transparent);animation:sgScan 4s linear infinite}
@keyframes sgScan{to{top:100%}}

/* ---------------- Responsive ---------------- */
@media (max-width:1100px){
	.sg-albums__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){
	.sg-hero{padding:100px 0 90px}
	.sg-hero__grid,.sg-bb__grid,.sg-yt__grid{grid-template-columns:1fr;gap:40px}
	.sg-hero__art{order:-1}
	.sg-guitar-wrap{width:34vw;max-height:none;transform:rotate(-72deg);margin:-26vw 0 -22vw}
	.sg-stats{grid-template-columns:repeat(2,auto)}
	.sg-player{grid-template-columns:1fr}
	.sg-deck{border-right:0;border-bottom:1px solid var(--sg-line)}
	.sg-sheet__body{height:420px;flex:none}
	.sg-tl__line{left:18px}
	.sg-tl__item{grid-template-columns:1fr;gap:10px;padding-left:46px!important}
	.sg-tl__year,.sg-tl__item:nth-child(odd) .sg-tl__year{order:0;text-align:left;font-size:54px}
	.sg-filters{position:static}
}
@media (max-width:600px){
	.sg-wrap{width:calc(100% - 32px)}
	.sg-full{font-size:16px}
	.sg-juke,.sg-wall,.sg-tl,.sg-bb,.sg-albums,.sg-yt{padding:80px 0}
	.sg-deck{padding:24px 18px}
	.sg-tt{max-width:250px}
	.sg-vol .sg-range{width:70px}
	.sg-lyrics,.sg-story{padding-left:22px;padding-right:22px}
	.sg-albums__grid{grid-template-columns:1fr;row-gap:22px;padding-top:0}
	.sg-album:hover .sg-album__disc{translate:none;animation:none}
	.sg-album{min-height:220px}
	.sg-grid{grid-template-columns:1fr}
	.sg-tabs{padding:14px 12px}.sg-tabs button{padding:9px 10px;font-size:11px}.sg-follow{font-size:11px}
	.sg-vp{padding:14px 12px}
	.sg-vp__ctrl{flex-wrap:wrap}
	.sg-vp__ctrl .sg-bar{flex-basis:100%;order:-1}
}
@media (prefers-reduced-motion:reduce){
	.sg-full *,.sg-full *::before,.sg-full *::after,.sg-modal *{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
	.sg-webart,.sg-grain{animation:none!important}
	.sg-reveal,.sg-rise{opacity:1;transform:none}
}

/* ---------------- Stage backdrops [sg_stage] ---------------- */
.et_pb_section:has(.sg-stage){position:relative;overflow:hidden}
.et_pb_section .et_pb_row:has(.sg-stage),.et_pb_column:has(.sg-stage),.et_pb_code:has(.sg-stage),.et_pb_code_inner:has(.sg-stage){position:static!important;transform:none!important}
.et_pb_code:has(.sg-stage){margin:0!important;padding:0!important;height:0}
.et_pb_section:has(.sg-stage) .et_pb_module:not(:has(.sg-stage)){position:relative;z-index:2}
.sg-stage{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;--c1:#FF3D2E;--c2:#E0218A;--c3:#FFB23F;--sg-line:rgba(255,255,255,.16)}
/* faint stars behind each hero scene: kept dim and masked toward the bottom so the scene art stays the star */
.sg-stage__sky{position:absolute;inset:0;opacity:.45;-webkit-mask-image:linear-gradient(#000 40%,transparent 95%);mask-image:linear-gradient(#000 40%,transparent 95%)}
.sg-stage__sky .sg-stars{position:absolute;inset:0;width:100%;height:100%}
.sg-stage__haze i{position:absolute;width:70vw;height:42vw;border-radius:50%;background:radial-gradient(closest-side,rgba(205,195,215,.11),rgba(205,195,215,.04) 55%,transparent);animation:sgHaze 30s ease-in-out infinite alternate;will-change:transform}
.sg-stage__haze i:nth-child(1){left:-12%;bottom:-18%}
.sg-stage__haze i:nth-child(2){left:28%;bottom:-24%;animation-duration:38s;animation-delay:-9s}
.sg-stage__haze i:nth-child(3){right:-18%;bottom:-6%;animation-duration:34s;animation-delay:-16s}
@keyframes sgHaze{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(7vw,-5vh,0) scale(1.22)}}
.sg-stage__beams i{position:absolute;bottom:-12%;left:64%;width:2px;height:150%;transform-origin:50% 100%;background:linear-gradient(to top,var(--c1),transparent 80%);opacity:.32;mix-blend-mode:screen;animation:sgBeam 11s ease-in-out infinite alternate;--r0:-38deg;--r1:-12deg}
.sg-stage__beams i:nth-child(2){left:70%;--r0:8deg;--r1:34deg;animation-duration:13s;background:linear-gradient(to top,var(--c2),transparent 80%)}
.sg-stage__beams i:nth-child(3){left:82%;--r0:-24deg;--r1:6deg;animation-duration:9s;animation-delay:-4s;background:linear-gradient(to top,var(--c3),transparent 75%);opacity:.22}
.sg-stage__beams i:nth-child(4){left:90%;--r0:16deg;--r1:-14deg;animation-duration:15s;animation-delay:-7s}
@keyframes sgBeam{from{transform:rotate(var(--r0))}to{transform:rotate(var(--r1))}}
.sg-stage__art{position:absolute;right:0;bottom:0;width:min(1150px,78%);height:100%;fill:none;stroke:var(--sg-line);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sg-stage__fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,6,9,.94) 0%,rgba(7,6,9,.6) 38%,rgba(7,6,9,.08) 72%),linear-gradient(0deg,rgba(7,6,9,.7),transparent 30%)}
/* chains: the middle link snaps open while the crowd raises fists */
.sg-chain rect,.sg-brk{stroke:#9aa3ad;opacity:.55}
.sg-brk{stroke-width:7;transform-box:fill-box;transform-origin:center;animation:sgSnap 6s cubic-bezier(.22,1,.36,1) infinite}
.sg-brk--l{--dx:-22px;--rot:-14deg}.sg-brk--r{--dx:22px;--rot:14deg}
@keyframes sgSnap{0%,40%{transform:none}52%,88%{transform:translateX(var(--dx)) rotate(var(--rot))}100%{transform:none}}
.sg-spark circle{fill:var(--c3);stroke:none;opacity:0;animation:sgSpark 6s ease-out infinite}
@keyframes sgSpark{0%,44%{opacity:0;transform:scale(.4)}48%{opacity:1;transform:scale(1.4)}60%,100%{opacity:0;transform:scale(1)}}
.sg-crowd{fill:#0d0b10;stroke:rgba(255,61,46,.45);stroke-width:2}
.sg-fist{animation:sgPump 3.6s cubic-bezier(.45,0,.25,1) infinite}.sg-fist__body{fill:url(#sgFistG);stroke:rgba(255,61,46,.5);stroke-width:1.5;stroke-linejoin:round}.sg-fist__ln{fill:none;stroke:rgba(255,120,90,.3);stroke-width:1.2;stroke-linecap:round}.sg-fist__band{fill:#1c1416;stroke:rgba(255,61,46,.5);stroke-width:1.4}.sg-fist__stud circle{fill:#b9bec6;stroke:none}
@keyframes sgPump{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
/* love */
.sg-stage--love{--c1:#E0218A;--c2:#FF5C8A;--c3:#FFB23F}
.sg-ecg{stroke:#FF5C8A;stroke-width:2.5;stroke-dasharray:180 820;animation:sgRun 4.5s linear infinite;filter:drop-shadow(0 0 6px #E0218A)}
.sg-heart{stroke:rgba(255,92,138,.6);stroke-width:2.5;stroke-dasharray:1000;animation:sgDrawLoop 9s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(224,33,138,.6))}
.sg-heart--2{animation-delay:-3s;stroke:rgba(255,178,63,.5)}
@keyframes sgRun{from{stroke-dashoffset:1000}to{stroke-dashoffset:0}}
@keyframes sgDrawLoop{0%{stroke-dashoffset:1000}45%,70%{stroke-dashoffset:0}100%{stroke-dashoffset:-1000}}
/* blues + lasers: lighting truss, amp stacks, blue spots */
.sg-stage--blues{--c1:#3D7BFF;--c2:#7FB2FF;--c3:#FFB23F}
.sg-truss{stroke:rgba(255,255,255,.18)}
.sg-can{fill:#15131a;stroke:rgba(255,255,255,.25);animation:sgCan 3s ease-in-out infinite}
@keyframes sgCan{50%{fill:#FFB23F}}
.sg-stage--blues .sg-can{animation-name:sgCanBlue}
@keyframes sgCanBlue{50%{fill:#7FB2FF}}
.sg-amps rect{fill:#0d0c11;stroke:rgba(255,255,255,.16)}
.sg-amps .sg-grille{fill:#141218;stroke:rgba(255,255,255,.07)}
.sg-amp-knobs circle{fill:#c9d1d9;stroke:none;opacity:.6}
.sg-mic{stroke:rgba(255,255,255,.25);stroke-width:3}
.sg-mic rect{fill:#1a1820}
/* time capsule: spinning record over 70s rays */
.sg-stage--time{--c1:#FFB23F;--c2:#E85D24;--c3:#FF3D2E}
.sg-rays{fill:rgba(255,178,63,.045);stroke:none;transform-origin:760px 300px;animation:sgSpin 120s linear infinite}
.sg-record{transform-origin:760px 300px;animation:sgSpin 6s linear infinite}
.sg-record__disc{fill:#0c0b0e;stroke:rgba(255,255,255,.12)}
.sg-record__grooves circle{stroke:rgba(255,255,255,.05);stroke-width:1}
.sg-record__label{fill:#E85D24;stroke:none;opacity:.8}
.sg-record__shine{fill:rgba(255,255,255,.05);stroke:none}
.sg-hands{stroke:rgba(255,178,63,.5);stroke-width:3}
.sg-hand{transform-origin:760px 300px}
.sg-hand--m{animation:sgSpin 20s linear infinite}.sg-hand--h{animation:sgSpin 240s linear infinite}
/* protocol: synthwave sun, grid and signal waves */
.sg-stage--protocol{--c1:#7B2CBF;--c2:#2EC4FF;--c3:#FF2E4D}
.sg-sun{opacity:.55}
.sg-grid{stroke:rgba(46,196,255,.35);stroke-width:1.2}
.sg-grid__h{animation:sgGridH 3s linear infinite}
@keyframes sgGridH{from{transform:translateY(-20px);opacity:0}30%{opacity:1}to{transform:translateY(0)}}
.sg-wave{stroke:rgba(46,196,255,.6);stroke-width:2;animation:sgWave 6s linear infinite}
.sg-wave--2{stroke:rgba(224,33,138,.5);animation-duration:9s}
@keyframes sgWave{from{transform:translateX(0)}to{transform:translateX(-250px)}}
/* apple + circuit apple */
.sg-stage--apple{--c1:#FF2E4D;--c2:#FFB23F;--c3:#E0218A}
.sg-stage--circuit{--c1:#2EC4FF;--c2:#FF2E4D;--c3:#7FFFD4}
.sg-apple{stroke:rgba(255,80,80,.65);stroke-width:2.5;stroke-dasharray:1000;animation:sgDrawLoop 10s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(255,46,77,.5))}
.sg-stage--circuit .sg-apple{stroke:rgba(46,196,255,.7);filter:drop-shadow(0 0 10px rgba(46,196,255,.5))}
.sg-apple--leaf{stroke:rgba(120,220,120,.6)}
.sg-pool{fill:rgba(255,46,77,.08);stroke:none}
.sg-traces path{stroke:rgba(46,196,255,.18);stroke-width:2}
.sg-traces .sg-pulse{stroke:#7FFFD4;stroke-width:3;stroke-dasharray:8 92;animation:sgPulse 3.6s linear infinite;filter:drop-shadow(0 0 4px #2EC4FF)}
@keyframes sgPulse{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
/* farm at night */
.sg-stage--farm{--c1:#FFB23F;--c2:#9ACD32;--c3:#FFE08A}
.sg-moon{fill:#f5ecd7;stroke:none;opacity:.75;filter:drop-shadow(0 0 30px rgba(255,236,190,.5))}
.sg-hill{fill:#0b0a0d;stroke:rgba(255,255,255,.1)}
.sg-hill--far{fill:#121016}
.sg-barn path{fill:#0e0c10;stroke:rgba(255,178,63,.35)}
.sg-barn .sg-barn__door{fill:rgba(255,178,63,.25)}
.sg-flies circle{fill:#FFE08A;stroke:none;opacity:0;animation:sgFly 6s ease-in-out infinite}
@keyframes sgFly{0%,100%{opacity:0;transform:translate(0,0)}40%{opacity:.9}50%{opacity:.9;transform:translate(14px,-18px)}70%{opacity:0}}
/* 60s/70s groove */
.sg-stage--groovy{--c1:#E85D24;--c2:#F2A541;--c3:#C0392B}
.sg-rays--sun{fill:rgba(242,165,65,.06);transform-origin:780px 600px;animation:sgSpin 160s linear infinite}
.sg-70sun{fill:#F2A541;stroke:none;opacity:.35}
.sg-grooves{opacity:.5}
.sg-groove{stroke:none;animation:sgGroove 14s ease-in-out infinite alternate}
@keyframes sgGroove{from{transform:translateX(0)}to{transform:translateX(-200px)}}
@media (max-width:767px){.sg-stage__art{width:130%;opacity:.5}.sg-stage__fade{background:rgba(7,6,9,.62)}}

/* ---------------- Home hero: space behind the web ---------------- */
.sg-hero{background:radial-gradient(900px 600px at 78% 28%,rgba(123,44,191,.16),transparent 65%),radial-gradient(1200px 700px at 75% 30%,rgba(255,90,31,.08),transparent 60%),radial-gradient(900px 600px at 10% 90%,rgba(46,90,191,.12),transparent 60%),#05050a}
.sg-stars{position:absolute;inset:0;width:100%;height:100%}
.sg-stars circle{transform-box:fill-box;transform-origin:center;animation:sgStar 5s ease-in-out infinite;opacity:.25}
@keyframes sgStar{0%,100%{opacity:.15;transform:scale(.7)}50%{opacity:.95;transform:scale(1.15)}}
/* four-ray sparkles: dark for most of their cycle, then a quick turning flash */
.sg-twk{transform-box:fill-box;transform-origin:center;opacity:0;transform:scale(0);filter:drop-shadow(0 0 .25px #fff) drop-shadow(0 0 .9px rgba(255,200,120,.9));animation:sgTwk 8s cubic-bezier(.45,0,.2,1) infinite}
@keyframes sgTwk{0%,84%,100%{opacity:0;transform:scale(0) rotate(-45deg)}90%{opacity:1;transform:scale(1) rotate(0deg)}93%{opacity:.85;transform:scale(.62) rotate(25deg)}97%{opacity:0;transform:scale(0) rotate(45deg)}}
@media (prefers-reduced-motion:reduce){.sg-twk{animation:none;opacity:0}}
/* chord badge: a glass disc in the middle-right of the guitar */
.sg-chord{top:40%;right:-2%;width:118px;height:118px;display:grid;place-items:center;border-radius:50%;font:800 62px/1 var(--sg-head);color:#fff;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.14),rgba(255,255,255,.03) 60%),rgba(12,10,16,.55);-webkit-background-clip:border-box;background-clip:border-box;border:1px solid rgba(255,255,255,.18);box-shadow:0 0 0 6px rgba(255,255,255,.03),0 20px 50px -10px rgba(255,61,46,.55),inset 0 0 30px rgba(255,178,63,.12);backdrop-filter:blur(6px);filter:none;text-shadow:0 0 18px rgba(255,178,63,.7)}
.sg-chord::after{content:"chord";position:absolute;bottom:20px;font:600 9px/1 var(--sg-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--sg-amber);text-shadow:none}
.sg-chord::before{content:"";position:absolute;inset:-7px;border-radius:50%;border:1px solid transparent;border-top-color:#FFB23F;border-right-color:#E0218A;animation:sgSpin 2.4s linear infinite}
/* guitar outline: thin chrome binding with a light that travels around the body */
.sg-guitar .sg-ln--hot{opacity:.18!important;filter:none}
.sg-guitar .sg-ln--bind{stroke:url(#sgChrome)}
.sg-guitar .sg-comet{stroke-dasharray:70 930;stroke-dashoffset:1000;opacity:0;animation:sgFade 1s ease forwards 2.8s,sgRun 7s linear infinite 2.8s;filter:drop-shadow(0 0 6px #FFB23F) drop-shadow(0 0 14px #FF3D2E)}
.sg-hero.is-amp .sg-guitar .sg-comet{animation-duration:1s,2.6s}
@media (prefers-reduced-motion:reduce){.sg-stage *,.sg-stars circle,.sg-chord::before,.sg-guitar .sg-comet{animation:none!important}}
/* ---------- [sg_signal] contact art ---------- */
.sg-signal{position:relative;width:100%;max-width:560px;margin:0 auto;aspect-ratio:1}
.sg-sig__svg{display:block;width:100%;height:100%;overflow:visible}
.sg-sig__web{stroke:rgba(255,255,255,.16);stroke-width:1}
.sg-sig__spokes,.sg-sig__ring{stroke-dasharray:1;stroke-dashoffset:1;animation:sgSigDraw 2.2s cubic-bezier(.45,0,.2,1) forwards}
.sg-sig__ring{animation-delay:calc(.6s + var(--i) * .22s);animation-duration:1.6s}
.sg-sig__ring:nth-child(odd){stroke:rgba(255,178,63,.22)}
@keyframes sgSigDraw{to{stroke-dashoffset:0}}
.sg-sig__pulses circle{stroke-width:1.5;vector-effect:non-scaling-stroke;opacity:0;transform-box:view-box;transform-origin:300px 300px;animation:sgSigPulse 7.5s cubic-bezier(.2,.6,.3,1) infinite}
.sg-sig__pulses circle:nth-child(2){animation-delay:2.5s}
.sg-sig__pulses circle:nth-child(3){animation-delay:5s}
@keyframes sgSigPulse{0%{transform:scale(1);opacity:0}8%{opacity:.7}100%{transform:scale(7);opacity:0}}
.sg-sig__dew circle{fill:#FFE2A8;opacity:.25;animation:sgSigDew 5s ease-in-out infinite;animation-delay:calc(var(--t) * -1)}
@keyframes sgSigDew{0%,100%{opacity:.2}50%{opacity:.95;filter:drop-shadow(0 0 4px #FFB23F)}}
.sg-sig__orbit{fill:#FFB23F;transform-box:view-box;transform-origin:300px 300px;animation:sgSpin 26s linear infinite;filter:drop-shadow(0 0 6px rgba(255,178,63,.8))}
.sg-sig__core{transform-box:view-box;transform-origin:300px 300px;animation:sgSigCore 3.75s ease-in-out infinite;filter:drop-shadow(0 0 18px rgba(255,61,46,.65))}
@keyframes sgSigCore{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.sg-signal:hover .sg-sig__web{stroke:rgba(255,255,255,.24);transition:stroke .8s ease}
@media (prefers-reduced-motion:reduce){
	.sg-sig__spokes,.sg-sig__ring{animation:none;stroke-dashoffset:0}
	.sg-sig__pulses circle,.sg-sig__dew circle,.sg-sig__orbit,.sg-sig__core{animation:none}
	.sg-sig__pulses circle{opacity:0}
}
