:root{color-scheme:light;--ink:#102331;--muted:#385365;--accent-a:#edf5f8;--accent-b:#94b4c2;--accent-c:#2f556b;--title-tone:#94b4c2}
*{box-sizing:border-box}*[hidden]{display:none!important}html,body{min-height:100%;margin:0;overflow-x:hidden}body{background:var(--accent-b);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}.page{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-rows:1fr auto;padding:max(22px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(17px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}
*{box-sizing:border-box}*[hidden]{display:none!important}html,body{min-height:100%;margin:0;overflow-x:hidden}body{background:var(--accent-b);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}.page{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-rows:1fr auto;padding:max(22px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(17px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}.app-link-status{position:fixed;z-index:10000;left:50%;bottom:max(18px,env(safe-area-inset-bottom));display:grid;grid-template-columns:18px auto;column-gap:9px;align-items:center;max-width:min(360px,calc(100vw - 28px));padding:11px 15px;border:1px solid rgba(255,255,255,.2);border-radius:15px;background:rgba(8,20,19,.92);color:#fff;box-shadow:0 14px 40px rgba(0,0,0,.34);backdrop-filter:blur(18px);opacity:0;transform:translate(-50%,10px);transition:opacity .16s ease,transform .16s ease;pointer-events:none}.app-link-status.is-visible{opacity:1;transform:translate(-50%,0)}.app-link-status>span{grid-row:1/3;width:17px;height:17px;border:2px solid rgba(255,255,255,.3);border-top-color:#61e89a;border-radius:50%;animation:app-link-spin .7s linear infinite}.app-link-status b{font-size:.76rem;line-height:1.15}.app-link-status small{color:rgba(255,255,255,.68);font-size:.62rem;line-height:1.25}@keyframes app-link-spin{to{transform:rotate(360deg)}}
.art,.veil{position:absolute;inset:0;z-index:-2}.art{background:radial-gradient(circle at 73% 15%,rgba(255,255,255,.9),transparent 28%),linear-gradient(145deg,var(--accent-a) 0%,var(--accent-b) 48%,var(--accent-c) 100%);transform:scale(1.06);transition:background .55s ease}.wash{position:absolute;filter:blur(34px);opacity:.72;border-radius:42% 58% 65% 35%;transition:background .55s ease}.wash-a{width:65vw;height:44vh;left:-13vw;top:8vh;background:color-mix(in srgb,var(--accent-a) 84%,white);transform:rotate(-12deg)}.wash-b{width:48vw;height:50vh;right:-8vw;top:30vh;background:color-mix(in srgb,var(--accent-c) 65%,transparent);transform:rotate(22deg)}.wash-c{width:70vw;height:30vh;left:9vw;bottom:-8vh;background:color-mix(in srgb,var(--accent-b) 76%,white)}.grain{position:absolute;inset:0;opacity:.11;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E")}.veil{z-index:-1;background:linear-gradient(180deg,rgba(242,248,250,.12),rgba(220,236,241,.08) 45%,rgba(14,38,52,.18))}
.experience{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:clamp(28px,5vw,78px)}.release-card{align-self:start;width:min(100%,900px);margin:clamp(34px,8vh,94px) 0 36px max(1vw,8px);display:grid;grid-template-columns:clamp(220px,28vw,360px) minmax(260px,430px);align-items:center;gap:clamp(24px,4vw,54px)}.artwork-frame{position:relative;aspect-ratio:1;border-radius:28px;overflow:hidden;background:rgba(255,255,255,.28);box-shadow:0 28px 80px rgba(7,28,40,.24),inset 0 0 0 1px rgba(255,255,255,.52);transform:translateZ(0)}.artwork-button{appearance:none;display:block;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;color:inherit}.artwork-button:disabled{opacity:1}.artwork-frame.has-preview .artwork-button{cursor:pointer}.artwork-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .32s ease,filter .32s ease}.artwork-frame.has-preview:hover img{transform:scale(1.012)}.artwork-frame.is-playing img{filter:saturate(1.04) brightness(.98)}.preview-badge{position:absolute;right:15px;bottom:15px;z-index:2;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(8,13,13,.82);box-shadow:0 7px 22px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.18);backdrop-filter:blur(12px)}.preview-badge svg{width:25px;height:25px;color:#1ed760}.artwork-frame.is-playing .preview-badge{box-shadow:0 0 0 4px rgba(30,215,96,.22),0 8px 24px rgba(0,0,0,.3)}.preview-badge.is-loading svg{animation:preview-pulse .8s ease-in-out infinite alternate}.spotify-embed-host{position:absolute;width:1px;height:1px;right:0;bottom:0;overflow:hidden;clip-path:inset(50%);pointer-events:none}.spotify-embed-host iframe{width:1px!important;height:1px!important;border:0!important}.release-copy{padding:12px 0}.eyebrow{margin:0 0 12px;font-size:.69rem;letter-spacing:.2em;font-weight:850}.release-logo{display:block;width:clamp(138px,18vw,205px);height:auto;margin:0 0 15px;filter:brightness(.16);opacity:.94}.release-card h1{margin:0;font-weight:500;font-size:clamp(2.1rem,5vw,4.5rem);line-height:.95;letter-spacing:-.055em}.font-serif h1{font-family:Georgia,"Times New Roman",serif}.font-modern h1{font-family:"Trebuchet MS",Arial,sans-serif;font-weight:700;letter-spacing:-.07em}.font-mono h1{font-family:"Courier New",ui-monospace,monospace;font-weight:700;letter-spacing:-.08em}.font-rough h1{font-family:Impact,"Arial Black",sans-serif;font-weight:400;letter-spacing:-.045em}.track-name{margin:13px 0 0;font-size:clamp(.92rem,1.5vw,1.12rem);font-weight:800;letter-spacing:.025em}.blurb{max-width:44ch;margin:13px 0 0;color:var(--muted);font-size:clamp(.88rem,1.35vw,1rem);line-height:1.52}.service-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:22px}.service-button{display:flex;align-items:center;gap:9px;min-height:43px;padding:8px 12px;text-decoration:none;border-radius:12px;background:rgba(248,251,252,.69);border:1px solid rgba(255,255,255,.65);font-size:.78rem;font-weight:780;box-shadow:0 9px 24px rgba(11,31,43,.08);backdrop-filter:blur(16px);transition:transform .18s ease,background .18s ease}.service-button:hover{transform:translateY(-2px);background:rgba(255,255,255,.92)}.mini-icon{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;color:var(--brand);font-weight:900}.spotify{--brand:#1db954}.apple{--brand:#fb445f}.youtube{--brand:#ff0033}.amazon{--brand:#f5a623}.playlist-button{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:19px;padding:13px 15px;border-radius:15px;color:white;background:rgba(10,38,38,.76);text-decoration:none;box-shadow:0 12px 34px rgba(8,36,42,.18);backdrop-filter:blur(18px)}.playlist-button span{font-size:.68rem;letter-spacing:.14em;font-weight:850}.playlist-button strong{font-size:.75rem;white-space:nowrap}@keyframes preview-pulse{to{opacity:.35;transform:scale(.9)}}
.right-dock{width:220px;justify-self:end}.dock-shell{width:100%;padding:14px;border-radius:28px;background:rgba(10,26,37,.69);color:#f7fbfd;border:1px solid rgba(255,255,255,.2);box-shadow:0 24px 70px rgba(7,28,40,.2);backdrop-filter:blur(24px)}.catalog-toggle{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.brand-disc{width:84px;height:84px;display:grid;place-items:center;padding:17px;border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(0,0,0,.22);transition:transform .6s cubic-bezier(.2,.8,.2,1)}.brand-disc img{display:block;width:100%;height:auto;filter:brightness(.13)}.right-dock.is-open .brand-disc{transform:rotate(180deg)}.catalog-label{display:flex;align-items:center;gap:6px;font-size:.63rem;font-weight:850;letter-spacing:.18em}.catalog-label span{font-size:.9rem;transition:transform .3s ease}.right-dock.is-open .catalog-label span{transform:rotate(180deg)}
.track-picker{max-height:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateY(-8px);transition:max-height .42s ease,opacity .24s ease,transform .32s ease,padding .32s ease}.right-dock.is-open .track-picker{max-height:520px;opacity:1;pointer-events:auto;padding-top:13px;transform:translateY(0)}.pixel-grid{display:grid;grid-template-columns:repeat(4,42px);justify-content:center;gap:4px}.pixel{position:relative;width:42px;height:42px;padding:3px;border:0;border-radius:10px;background:transparent;cursor:pointer}.pixel::before{content:"";position:absolute;inset:3px;border-radius:7px;background:var(--pixel)}.pixel img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:cover;border-radius:7px;box-shadow:0 5px 13px rgba(0,0,0,.24);transition:transform .18s ease,box-shadow .18s ease}.pixel:hover img{transform:scale(1.08)}.pixel[aria-pressed="true"] img{box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(88,204,190,.82),0 7px 18px rgba(0,0,0,.3)}.other-pixel img{filter:grayscale(1);opacity:.8}.archive-divider{height:1px;margin:11px 5px 8px;background:rgba(255,255,255,.2)}.picker-label{margin:0 0 7px;text-align:center;color:rgba(255,255,255,.64);font-size:.52rem;font-weight:800;letter-spacing:.2em}.link-panel{margin-top:13px;padding:11px 9px 10px;border-radius:18px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}.dock-label{margin:0 0 7px;text-align:center;color:rgba(255,255,255,.74);font-size:.52rem;font-weight:800;letter-spacing:.18em}.icon-row{display:flex;justify-content:center;gap:6px}.brand-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;text-decoration:none;background:rgba(255,255,255,.92);color:#142732;font-size:.78rem;font-weight:900;box-shadow:0 7px 17px rgba(0,0,0,.14);transition:transform .18s ease}.brand-icon:hover{transform:translateY(-2px)}.brand-icon.spotify{color:#1db954}.brand-icon.apple{color:#fb445f}.brand-icon.youtube{color:#ff0033}.brand-icon.amazon{color:#d78300}.brand-icon.pending{opacity:.4;box-shadow:none}.link-divider{height:1px;margin:10px 2px;background:rgba(255,255,255,.16)}
.catalog-toggle:focus-visible,.brand-icon:focus-visible,.pixel:focus-visible,.service-button:focus-visible,.playlist-button:focus-visible{outline:3px solid #65e5d4;outline-offset:3px}footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 20px;color:rgba(245,251,253,.86);font-size:.64rem;letter-spacing:.05em;text-shadow:0 1px 10px rgba(5,25,37,.4)}
@media(min-width:900px){.page{padding:30px 46px 25px}.art{background:radial-gradient(circle at 69% 16%,rgba(255,255,255,.92),transparent 26%),linear-gradient(122deg,var(--accent-a) 0 38%,var(--accent-b) 70%,var(--accent-c))}}
@media(max-width:820px){.page{width:100%;max-width:100vw;overflow-x:hidden;overflow-y:auto;padding:15px 14px 14px}.experience{display:block;width:100%;min-width:0}.release-card{grid-template-columns:1fr;width:100%;max-width:none;margin:35px 0 40px}.artwork-frame{width:min(100%,320px);border-radius:22px}.release-copy{width:100%;max-width:none;padding:0}.release-card h1{font-size:clamp(2rem,8vw,3.7rem)}.track-heading{width:100%}.track-name{max-width:calc(100% - 40px)}.blurb{max-width:none}.service-buttons{grid-template-columns:1fr;width:100%;margin-top:18px}.service-button{width:100%}.right-dock{width:166px}.dock-shell{width:100%;padding:10px 7px;border-radius:21px}.brand-disc{width:66px;height:66px;padding:13px}.pixel-grid{grid-template-columns:repeat(4,33px);gap:2px}.pixel{width:33px;height:33px;padding:3px}.icon-row{width:100%;justify-content:space-between;gap:3px}.brand-icon{width:25px;height:25px;border-radius:8px;font-size:.62rem}.link-panel{width:100%;padding:9px 6px}.playlist-button{width:100%;align-items:center;flex-direction:row}.playlist-button strong{white-space:normal}}
@media(max-width:480px){.right-dock{width:164px}.release-card{margin-top:26px}.artwork-frame{width:min(100%,340px);border-radius:18px}.eyebrow{font-size:.57rem;letter-spacing:.13em}.release-card h1{font-size:clamp(1.7rem,8vw,2.5rem)}.track-name{font-size:clamp(1.3rem,6.2vw,1.75rem)}.blurb{font-size:.84rem}.service-button{font-size:.76rem;padding:9px 11px}.pixel-grid{grid-template-columns:repeat(4,32px);gap:2px}.pixel{width:32px;height:32px}.brand-disc{width:64px;height:64px}.dock-shell{padding:9px 7px}.brand-icon{width:25px;height:25px}.catalog-label{font-size:.55rem}.dock-label{font-size:.47rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.service-button svg{width:21px;height:21px;color:var(--brand);flex:0 0 auto}.service-favicon{width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;overflow:hidden;border-radius:6px;background:rgba(255,255,255,.92);font-size:.7rem}.service-favicon img{display:block;width:100%;height:100%;object-fit:contain}.brand-icon svg{width:18px;height:18px}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}
.brand-disc{width:92px;height:92px;padding:10px}.brand-disc img{width:112%;max-width:none}
.track-picker{display:none}.right-dock.is-open .track-picker{display:block;max-height:none;animation:catalog-reveal .32s ease both}@keyframes catalog-reveal{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.dock-shell{backdrop-filter:none;background:rgba(10,26,37,.82)}
.service-button,.playlist-button{backdrop-filter:none}
.service-copy{display:grid;gap:1px;min-width:0}.service-copy small{font-size:.49rem;line-height:1.15;letter-spacing:.07em;opacity:.72}.service-button.is-disabled{opacity:.52;cursor:not-allowed;filter:saturate(.45)}.service-button.is-disabled:hover{transform:none;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(235,243,246,.58))}.service-button.is-disabled:focus-visible{outline-color:rgba(255,255,255,.9)}
.track-name{margin:0;color:color-mix(in srgb,var(--title-tone) 62%,white 38%);font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:760;line-height:1.08;letter-spacing:-.035em;text-shadow:0 3px 18px rgba(4,25,31,.9)}.font-serif .track-name{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.035em}.font-modern .track-name{font-family:"Trebuchet MS",Arial,sans-serif;font-weight:800;letter-spacing:-.055em}.font-mono .track-name{font-family:"Courier New",ui-monospace,monospace;font-weight:700;letter-spacing:-.06em}.font-rough .track-name{font-family:Impact,"Arial Black",sans-serif;font-weight:400;letter-spacing:-.025em}.eyebrow{margin-bottom:15px;color:color-mix(in srgb,var(--title-tone) 54%,var(--ink) 46%);text-shadow:0 1px 0 rgba(255,255,255,.48),0 5px 14px rgba(4,25,31,.24)}
.dock-shell{background:linear-gradient(145deg,rgba(27,50,62,.88),rgba(8,28,39,.78));border-color:rgba(255,255,255,.34);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(0,0,0,.28),0 24px 70px rgba(7,28,40,.22)}
.brand-disc,.link-panel,.service-button,.playlist-button,.browse-arrow{position:relative;isolation:isolate;overflow:hidden}.brand-disc::after,.link-panel::after,.service-button::after,.playlist-button::after,.browse-arrow::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.28),transparent 44%,rgba(255,255,255,.08));border-radius:inherit}
.catalog-label{padding:7px 12px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.16)}
.track-picker{padding-left:3px;padding-right:3px}.right-dock.is-open .track-picker{padding-top:14px}.section-label{margin:0 0 8px;text-align:left;padding-left:8px;font-size:.5rem;color:rgba(255,255,255,.72)}.playlist-grid{display:flex;padding:0 5px 4px}.playlist-pixel{width:54px;height:54px}.playlist-pixel img{border-radius:11px}
.pixel{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.pixel img{border-radius:8px}.archive-divider{background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent)}
.link-panel{background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.06));border-color:rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 10px 24px rgba(0,0,0,.12)}
.brand-icon{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(229,238,241,.88));border:1px solid rgba(255,255,255,.7);box-shadow:inset 0 1px 0 white,0 7px 17px rgba(0,0,0,.16)}
.service-button{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(235,243,246,.58));border-color:rgba(255,255,255,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 25px rgba(11,31,43,.1)}
.playlist-button{padding:8px 10px;background:linear-gradient(145deg,rgba(15,53,53,.88),rgba(8,37,43,.72));border:1px solid rgba(255,255,255,.23);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 12px 34px rgba(8,36,42,.2)}.playlist-button img{width:52px;height:52px;border-radius:0;object-fit:cover;box-shadow:0 6px 15px rgba(0,0,0,.22)}.playlist-button>span{display:flex;flex:1;flex-direction:column;gap:3px;letter-spacing:0}.playlist-button small{font-size:.5rem;letter-spacing:.14em;opacity:.68}.playlist-button b{font-size:.8rem}.playlist-button strong{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.13)}
.browse-arrow{position:absolute;top:50%;z-index:6;width:48px;height:48px;margin-top:-24px;border:1px solid rgba(255,255,255,.64);border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(226,239,244,.42));color:#143040;font:300 2rem/1 system-ui;box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 12px 28px rgba(11,31,43,.16);cursor:pointer;transition:transform .18s ease,opacity .18s ease}.browse-arrow:hover{transform:scale(1.06)}.browse-arrow:disabled{opacity:.22;cursor:default}.browse-arrow:disabled:hover{transform:none}.browse-previous{left:max(8px,env(safe-area-inset-left))}.browse-next{right:max(8px,env(safe-area-inset-right))}.catalog-open .browse-arrow{opacity:0;pointer-events:none}
@media(max-width:820px){.playlist-button{align-items:center;flex-direction:row}.playlist-button strong{font-size:.65rem}.browse-arrow{width:38px;height:38px;margin-top:-19px;font-size:1.6rem}.playlist-pixel{width:44px;height:44px}}
.right-dock{position:fixed;z-index:10;top:clamp(48px,7.5vh,72px);right:clamp(36px,3.7vw,72px);cursor:grab;touch-action:none}.right-dock.is-dragging{cursor:grabbing}.dock-shell{max-height:calc(100vh - 16px);overflow:auto;overscroll-behavior:contain}.catalog-label{padding:0;border:0;background:none;box-shadow:none;font-size:1.05rem;line-height:.8;transition:transform .3s ease}.right-dock.is-open .catalog-label{transform:rotate(180deg)}.brand-disc,.link-panel,.service-button,.playlist-button{position:relative;isolation:isolate;overflow:hidden}.brand-disc::after,.link-panel::after,.service-button::after,.playlist-button::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(145deg,rgba(255,255,255,.28),transparent 44%,rgba(255,255,255,.08));border-radius:inherit}.playlist-button span{display:grid;gap:3px;flex:1}.playlist-button small{font-size:.55rem;letter-spacing:.04em;opacity:.72}.playlist-button b{font-size:.78rem;letter-spacing:0}
@media(max-width:820px){.share-button{font-size:.65rem}.playlist-button small{font-size:.48rem}}
@media(max-width:820px) and (pointer:coarse){.right-dock{top:10px;right:10px;left:auto!important;cursor:default;touch-action:pan-y;user-select:none}.right-dock .dock-shell{overscroll-behavior:contain}}
.playlist-button b{line-height:1.18;white-space:normal}
.track-heading{display:flex;align-items:center;gap:9px}.title-share{width:31px;height:31px;display:grid;place-items:center;flex:0 0 auto;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(229,239,243,.45));color:var(--ink);cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 7px 18px rgba(11,31,43,.1);transition:transform .18s ease,background .18s ease}.title-share:hover{transform:translateY(-1px);background:rgba(255,255,255,.88)}.title-share svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.title-share.is-copied svg{display:none}.title-share.is-copied::after{content:"✓";font-size:.9rem;font-weight:900}.track-picker>.playlist-grid{padding-top:4px}
.about-page .release-copy .eyebrow{color:#102b38;text-shadow:0 1px 0 rgba(255,255,255,.44),0 5px 14px rgba(4,25,31,.2)}
.release-copy .blurb{color:rgba(248,252,252,.98);font-weight:600;text-shadow:0 3px 18px rgba(4,25,31,.88)}
.dock-shell{background:radial-gradient(ellipse at 9% 13%,rgba(174,91,47,.2),transparent 19%),radial-gradient(ellipse at 94% 79%,rgba(78,131,119,.18),transparent 24%),radial-gradient(circle at 82% 7%,rgba(151,78,43,.11),transparent 11%),linear-gradient(145deg,rgba(39,56,62,.94),rgba(10,29,37,.92));border-color:rgba(194,213,214,.38);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(0,0,0,.42),0 24px 70px rgba(7,28,40,.25)}
.brand-disc{overflow:visible;border:6px solid transparent;background:radial-gradient(circle at 42% 34%,rgba(255,255,255,.99),rgba(224,233,235,.96) 62%,rgba(174,190,196,.94)) padding-box,linear-gradient(145deg,rgba(252,255,255,.98),rgba(98,119,128,.88) 46%,rgba(231,239,241,.96)) border-box;box-shadow:inset 0 2px 2px rgba(255,255,255,.98),inset 0 -4px 8px rgba(52,74,83,.24),0 3px 0 rgba(3,19,25,.34),0 13px 28px rgba(0,0,0,.25)}
.brand-disc::before{content:"";position:absolute;inset:0;z-index:2;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse 7px 5px at 50% 87%,rgba(21,39,47,.96) 0 42%,rgba(103,124,131,.78) 48%,rgba(255,255,255,.48) 60%,transparent 72%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);transition:transform .48s cubic-bezier(.2,.8,.2,1)}
.catalog-toggle:hover .brand-disc{transform:rotate(8deg)}
.right-dock.is-open .brand-disc,.catalog-toggle[aria-expanded="true"] .brand-disc{transform:rotate(180deg)}
.catalog-toggle:focus-visible .brand-disc{outline:3px solid #65e5d4;outline-offset:7px}
@media(max-width:480px){.title-share{width:28px;height:28px}.title-share svg{width:14px;height:14px}}
.release-copy{width:min(100%,430px)}
.track-name{color:var(--title-tone);text-shadow:0 1px 0 rgba(255,255,255,.42),0 4px 15px rgba(4,25,31,.46)}
.track-heading{justify-content:flex-start;min-width:0}.track-heading .track-name{min-width:0}
.playlist-button{width:100%;min-height:70px}.playlist-button img{flex:0 0 52px}.playlist-button strong{flex:0 0 auto}
.dock-copyright{margin:11px 2px 0;text-align:center;color:rgba(235,244,245,.62);font-size:.48rem;font-weight:650;letter-spacing:.08em;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.press-links{margin-top:18px}
.about-page .release-card{align-items:start}
.press-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px}.press-card{min-width:0;height:76px;display:grid;grid-template-columns:42px minmax(0,1fr) 13px;align-items:center;gap:9px;padding:9px;border:1px solid rgba(255,255,255,.55);border-radius:15px;background:linear-gradient(145deg,rgba(248,251,252,.76),rgba(223,235,238,.48));color:var(--ink);text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 9px 22px rgba(11,31,43,.1);transition:transform .18s ease,background .18s ease}.press-card:hover{transform:translateY(-2px);background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(232,242,244,.7))}.press-mark{width:42px;height:42px;display:grid;place-items:center;overflow:hidden;border-radius:11px;background:rgba(255,255,255,.96);box-shadow:inset 0 0 0 1px rgba(16,35,49,.08),0 5px 13px rgba(8,31,38,.16)}.press-mark img{display:block;width:100%;height:100%;object-fit:contain}.press-card>span:nth-child(2){min-width:0;display:grid;gap:3px}.press-card small{font-size:.45rem;font-weight:850;letter-spacing:.11em;color:rgba(16,35,49,.56)}.press-card b{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.61rem;line-height:1.22;overflow-wrap:anywhere}.press-card i{font-size:.7rem;font-style:normal;color:rgba(16,35,49,.55)}
.press-card:focus-visible{outline:3px solid #65e5d4;outline-offset:3px}
.press-grid:not(.is-expanded) .press-card:nth-child(n+4){display:none}
.press-toggle{width:35px;height:35px;display:grid;place-items:center;margin:10px auto 0;padding:0;border:1px solid rgba(255,255,255,.58);border-radius:50%;background:linear-gradient(145deg,rgba(251,253,253,.82),rgba(214,228,232,.58));color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 7px 18px rgba(11,31,43,.13);cursor:pointer;transition:transform .18s ease,background .18s ease}
.press-toggle:hover{transform:translateY(1px);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(226,237,240,.74))}.press-toggle:focus-visible{outline:3px solid #65e5d4;outline-offset:3px}.press-toggle span{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .26s ease}.press-toggle[aria-expanded="true"] span{transform:translateY(2px) rotate(225deg)}
@media(max-width:820px){.release-copy{width:100%}.playlist-button{width:100%;min-height:68px;justify-content:flex-start;gap:10px;padding:9px 10px}.playlist-button img{width:50px;height:50px;flex-basis:50px}.playlist-button>span{display:grid;min-width:0}.playlist-button>strong{display:none}.press-grid{grid-template-columns:1fr}.dock-copyright{font-size:.42rem}}
@media(max-width:480px){.playlist-button{gap:8px;padding:8px 9px}.playlist-button img{width:46px;height:46px;flex-basis:46px}}
.catalog-toggle[aria-expanded="true"] + .track-picker{display:block;max-height:none;opacity:1;pointer-events:auto;padding-top:14px;transform:translateY(0)}

/* The controller is a fixed popover: only the round dial remains when closed. */
.right-dock{top:24px;right:28px;left:auto;width:92px;cursor:default;touch-action:auto;transition:width .26s cubic-bezier(.2,.8,.2,1)}
.right-dock.is-open{width:220px}
.right-dock:not(.is-open) .dock-shell{max-height:none;padding:0;overflow:visible;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
.right-dock:not(.is-open) .catalog-toggle{width:92px}
.right-dock:not(.is-open) .link-panel,.right-dock:not(.is-open) .dock-copyright{display:none}
.right-dock.is-open .dock-shell{max-height:calc(100svh - 32px);overflow:auto;overscroll-behavior:contain}

@media(max-width:820px){
  .right-dock{top:10px;right:10px;left:auto!important;width:64px;cursor:default;touch-action:manipulation}
  .right-dock.is-open{width:min(190px,calc(100vw - 20px))}
  .right-dock:not(.is-open) .catalog-toggle{width:64px}
  .right-dock:not(.is-open) .brand-disc{width:64px;height:64px}
  .right-dock.is-open .dock-shell{max-height:calc(100svh - 20px)}
}

/* Brand colors for active Listen & Connect links. */
.brand-icon.soundcloud{color:#ff5500}
.brand-icon.instagram{color:#e1306c}
.brand-icon.tiktok{color:#fe2c55}
.brand-icon.threads{color:#101010}
.brand-icon.facebook{color:#1877f2}
.brand-icon.x{color:#101010}
.brand-icon.pending{opacity:.28;filter:grayscale(1);box-shadow:none}

/* Desktop controller: a compact always-visible console beside the release. */
@media(min-width:821px){
  .experience{
    grid-template-columns:minmax(0,900px) 220px;
    justify-content:center;
    gap:12px;
  }
  .right-dock,
  .right-dock.is-open{
    position:sticky;
    top:24px;
    right:auto;
    left:auto;
    align-self:start;
    justify-self:end;
    width:220px;
    margin-top:clamp(34px,8vh,94px);
  }
  .right-dock:not(.is-open) .dock-shell{
    max-height:calc(100svh - 48px);
    padding:14px;
    overflow:auto;
    border:1px solid rgba(194,213,214,.38);
    background:radial-gradient(ellipse at 9% 13%,rgba(174,91,47,.2),transparent 19%),radial-gradient(ellipse at 94% 79%,rgba(78,131,119,.18),transparent 24%),linear-gradient(145deg,rgba(39,56,62,.94),rgba(10,29,37,.92));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(0,0,0,.42),0 24px 70px rgba(7,28,40,.25);
  }
  .right-dock:not(.is-open) .catalog-toggle{width:100%}
  .right-dock:not(.is-open) .link-panel,
  .right-dock:not(.is-open) .dock-copyright{display:block}
  .dock-content{min-width:0}
}

/* Mobile controller: fixed bead, with a separately scrolling popover below it. */
@media(max-width:820px){
  html,body{height:auto;min-height:100%;overflow-x:clip}
  body{overflow-y:visible}
  .page{height:auto;min-height:100svh;overflow:visible;touch-action:pan-y}
  .artwork-frame{width:min(100%,520px)}
  .right-dock,
  .right-dock.is-open{position:fixed;z-index:50;top:max(10px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));bottom:auto;left:auto!important;margin:0}
  .right-dock{pointer-events:none}
  .right-dock .dock-shell,
  .right-dock.is-open .dock-shell{position:relative;max-height:none;overflow:visible}
  .right-dock.is-open .dock-shell{padding:0;border:0;background:transparent;box-shadow:none}
  .right-dock .catalog-toggle{position:absolute;z-index:3;top:0;right:0;width:64px;pointer-events:auto;touch-action:manipulation}
  .right-dock.is-open .catalog-toggle{width:64px}
  .right-dock .brand-disc,
  .right-dock.is-open .brand-disc{width:64px;height:64px;padding:8px}
  .right-dock:not(.is-open) .dock-shell{width:64px;height:64px}
  .right-dock:not(.is-open) .dock-content{display:none}
  .right-dock.is-open .dock-content{
    width:100%;
    max-height:calc(100svh - 20px);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
    pointer-events:auto;
    padding:72px 7px 9px;
    border:1px solid rgba(194,213,214,.38);
    border-radius:21px;
    color:#f7fbfd;
    background:radial-gradient(ellipse at 9% 13%,rgba(174,91,47,.2),transparent 19%),radial-gradient(ellipse at 94% 79%,rgba(78,131,119,.18),transparent 24%),linear-gradient(145deg,rgba(39,56,62,.96),rgba(10,29,37,.95));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(0,0,0,.42),0 24px 70px rgba(7,28,40,.25);
  }
  .right-dock.is-open .track-picker{padding-top:4px}
  .right-dock .pixel-grid{grid-template-columns:repeat(5,32px);gap:2px}
  .right-dock .brand-disc{
    animation:none!important;
    transition:transform .7s cubic-bezier(.22,.75,.18,1)!important;
  }
  .right-dock:not(.is-open) .brand-disc{transform:rotate(0deg)!important}
  .right-dock.is-open .brand-disc{transform:rotate(180deg)!important}
  .right-dock:not(.is-open) .catalog-toggle{animation:dial-nudge 7s ease-in-out infinite}
}

@keyframes dial-nudge{
  0%,78%,100%{transform:rotate(0deg)}
  81%{transform:rotate(-7deg)}
  84%{transform:rotate(5deg)}
  87%{transform:rotate(-3deg)}
  90%{transform:rotate(0deg)}
}

@media(prefers-reduced-motion:reduce){
  .right-dock:not(.is-open) .catalog-toggle{animation:none}
}

.playlist-random-preview{position:relative;margin:8px 0 4px;padding:0 2px}.playlist-preview-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.playlist-preview-controls button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:34px;border:1px solid rgba(255,255,255,.45);border-radius:999px;padding:7px 12px;background:rgba(18,49,50,.7);color:#f5fffc;font:700 .65rem/1.2 system-ui,sans-serif;cursor:pointer;box-shadow:0 4px 10px rgba(12,39,40,.08)}.playlist-preview-controls button.playlist-preview-next{background:rgba(255,255,255,.45);border-color:rgba(18,49,50,.2);color:#153c3c}.playlist-preview-controls button:disabled{opacity:.5;cursor:default}.playlist-preview-controls button:focus-visible{outline:3px solid #65e5d4;outline-offset:3px}.playlist-preview-track,.playlist-preview-error{margin:7px 3px 0!important;font:500 .62rem/1.4 system-ui,sans-serif!important;color:#1b4145!important;text-shadow:0 1px 1px rgba(255,255,255,.6)!important}.playlist-preview-track span{opacity:.7}.playlist-preview-error{color:#7e3535!important}.playlist-candidate-list{min-height:180px!important;font-family:ui-monospace,monospace!important;font-size:.7rem!important}

.playlist-preview-song{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;padding:3px 6px 3px 2px;color:#153c3c;text-decoration:none;border-radius:8px;font:600 .65rem/1.3 system-ui,sans-serif}.playlist-preview-song img,.playlist-preview-song-icon{width:34px;height:34px;flex:0 0 34px;border-radius:5px;object-fit:cover;box-shadow:0 2px 5px rgba(12,39,40,.15)}.playlist-preview-song-icon{display:grid;place-items:center;background:rgba(255,255,255,.45);font-size:20px}.playlist-preview-song>span:not(.playlist-preview-song-icon):not(.playlist-preview-song-arrow){min-width:0}.playlist-preview-song small{display:block;font-size:.52rem;font-weight:500;opacity:.75}.playlist-preview-song b{display:block;overflow-wrap:anywhere}.playlist-preview-song:hover b{text-decoration:underline;text-underline-offset:3px}.playlist-preview-song:focus-visible{outline:3px solid #65e5d4;outline-offset:3px}.playlist-preview-song-arrow{flex-shrink:0;opacity:.7}
