/* References / portfolio */
.references-section{position:relative;overflow:hidden}
.references-heading{display:grid;gap:22px;align-items:end;margin-bottom:28px}
.references-heading .section-lead{margin-bottom:0}
.references-all{justify-self:start}
.references-grid{display:grid;grid-template-columns:1fr;gap:14px}
.reference-card{position:relative;display:block;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:rgba(255,255,255,.035);color:var(--text);text-decoration:none;transition:transform .35s ease,border-color .35s ease,background .35s ease}
.reference-card:hover{transform:translateY(-3px);border-color:rgba(216,255,79,.36);background:rgba(255,255,255,.055)}
.reference-spotify{min-height:300px;padding:26px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 50% 58%,rgba(216,255,79,.09),transparent 42%),rgba(255,255,255,.03)}
.reference-platform{display:flex;align-items:center;gap:9px;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#c8ced2}
.reference-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 16px rgba(216,255,79,.45)}
.reference-sound{display:flex;align-items:center;justify-content:center;gap:4px;height:82px;margin:18px 0}
.reference-sound i{display:block;width:3px;height:var(--h,20%);min-height:4px;border-radius:999px;background:rgba(255,255,255,.82)}
.reference-sound i:nth-child(1),.reference-sound i:nth-child(18){--h:9%}.reference-sound i:nth-child(2),.reference-sound i:nth-child(17){--h:18%}.reference-sound i:nth-child(3),.reference-sound i:nth-child(16){--h:30%}.reference-sound i:nth-child(4),.reference-sound i:nth-child(15){--h:45%}.reference-sound i:nth-child(5),.reference-sound i:nth-child(14){--h:64%}.reference-sound i:nth-child(6),.reference-sound i:nth-child(13){--h:42%}.reference-sound i:nth-child(7),.reference-sound i:nth-child(12){--h:76%}.reference-sound i:nth-child(8),.reference-sound i:nth-child(11){--h:52%}.reference-sound i:nth-child(9),.reference-sound i:nth-child(10){--h:92%;background:var(--accent)}
.reference-copy small{display:block;margin-bottom:8px;color:#929ca3;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem}.reference-copy h3{font-size:clamp(1.5rem,4vw,2.25rem);margin:0 0 8px}.reference-copy p{margin:0;color:#aeb6bc}.reference-arrow{position:absolute;right:24px;bottom:24px;font-size:1.3rem;color:var(--accent)}
.reference-video{background:#090b0c}
.reference-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#101315}
.reference-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.5))}
.reference-thumb img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.01);filter:saturate(.78) contrast(1.05);transition:transform .5s ease,filter .5s ease}
.reference-card:hover .reference-thumb img{transform:scale(1.045);filter:saturate(1) contrast(1.04)}
.reference-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(7,9,10,.55);backdrop-filter:blur(8px);font-size:1rem;padding-left:3px}
.reference-video-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px}.reference-video-meta span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#9ba4aa}.reference-video-meta b{font-size:.82rem;color:#eef2f4}
.references-embed-grid{display:grid;grid-template-columns:1fr;gap:18px;margin-top:30px}
.embed-card{border:1px solid rgba(255,255,255,.09);border-radius:24px;overflow:hidden;background:rgba(255,255,255,.03)}
.embed-card-header{padding:20px 22px;border-bottom:1px solid rgba(255,255,255,.07)}.embed-card-header small{display:block;color:#9ca5aa;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}.embed-card-header h2{font-size:1.25rem;margin:0}
.embed-frame{position:relative;width:100%;background:#080a0b}.embed-frame.video{aspect-ratio:16/9}.embed-frame iframe{display:block;width:100%;height:100%;border:0}.embed-frame.spotify{height:420px}
.reference-note{max-width:760px;color:#9fa8ae;font-size:.92rem;margin-top:20px}
@media(min-width:760px){.references-heading{grid-template-columns:1fr auto}.references-all{justify-self:end}.references-grid{grid-template-columns:1.05fr .975fr .975fr}.reference-spotify{min-height:100%}.references-embed-grid{grid-template-columns:1fr 1fr}.embed-card.spotify-full{grid-column:1/-1}.embed-frame.spotify{height:352px}}
