/* Shared visual rhythm for the site and its content windows. */
body:not(.studio){--line:#d9d8d2;--muted:#77766f;--panel:#fcfcfa}
.site-header{max-width:990px;padding:32px 38px;min-height:105px;gap:50px}
.site-header .logo{font-size:31px;font-weight:500;letter-spacing:-.12em}
.site-header nav{gap:28px}.site-header nav>a,.music-menu summary{position:relative;color:#65645e;transition:color .15s}
.site-header nav>a:hover,.site-header nav>a[aria-current],.music-menu.current summary,.music-menu summary:hover{color:var(--ink)}
.site-header nav>a[aria-current]::after,.music-menu.current summary::before{content:'';width:3px;height:3px;background:var(--ink);position:absolute;left:50%;bottom:-9px;border-radius:50%}
.music-menu summary::after{font-size:9px;margin-left:3px}.music-submenu{z-index:50;padding:8px;min-width:155px;border:1px solid var(--line);background:var(--panel);box-shadow:0 6px 20px #00000008}
.music-submenu a{font-size:10px!important;padding:13px 12px!important}.music-submenu a:hover{background:#efeee8}
#home-content{transition:opacity .2s,transform .2s}
.featured-record{width:min(422px,100%);margin:35px auto 67px;padding:0 20px}
.featured-art{position:relative;outline-offset:5px}.featured-art img{transition:filter .2s;box-shadow:0 2px 8px #00000008}
.featured-art:hover img{filter:brightness(.96)}.featured-art:after{content:'OPEN RECORD ↗';position:absolute;right:13px;bottom:13px;padding:7px 9px;background:var(--panel);font:9px var(--yeezy-type);opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s;pointer-events:none}
.featured-art:hover:after,.featured-art:focus-visible:after{opacity:1;transform:none}
.featured-copy{padding-top:18px;align-items:center}.featured-copy h1{font-size:18px;letter-spacing:-.05em}.feature-credit{margin-top:5px;color:var(--muted);font-size:9px;letter-spacing:.01em}.feature-open{font-size:20px;color:var(--muted)}
.secondary-nav{margin:0 0 18px;gap:23px}.secondary-nav a{letter-spacing:.04em;color:var(--muted)}.secondary-nav a:hover{color:var(--ink)}
.bottom-strip{padding-top:0;font-size:8px;color:#a3a198}
body.browsing #home-content,body.browsing .secondary-nav,body.browsing .bottom-strip{opacity:.12;pointer-events:none}
body.browsing main#home{user-select:none}
.window-layer{z-index:30}
.file-window,#window-releases,#window-beats,#window-members,#window-radio{width:min(730px,calc(100vw - 56px));max-height:calc(100dvh - 195px);min-height:300px;resize:none;background:var(--panel);border:1px solid #bcbab2;box-shadow:0 18px 60px #28261b12,2px 2px 0 #deddd5;animation:window-enter .18s ease-out}
#window-about{width:min(560px,calc(100vw - 56px))}#window-radio{width:min(660px,calc(100vw - 56px))}
.window-bar{height:42px;min-height:42px;padding:0 11px 0 14px;border-bottom:1px solid var(--line);background:var(--panel);box-shadow:none;gap:9px}
.window-bar>span{padding:0;font-size:10px;font-weight:400;color:#6c6b64;text-transform:uppercase;letter-spacing:.035em}
.window-back,.window-share,.close-button{border:0;background:transparent;box-shadow:none;color:#77766f;cursor:pointer}
.window-back{width:26px;font-size:17px;padding:3px}.window-share{font:8px var(--yeezy-type);padding:8px;white-space:nowrap}.close-button{margin:0;width:28px;height:28px;font-size:22px;font-weight:300}
.window-back:hover,.window-share:hover,.close-button:hover{background:#efeee8;color:var(--ink)}
.window-content,body.roomy .window-content{padding:26px 30px 34px}
.window-heading{border:0;align-items:center;padding:0;margin:0 0 24px;gap:18px}
.window-heading h2{font:400 27px/1.15 var(--yeezy-type);letter-spacing:-.065em;text-transform:none}
.window-heading p,.window-heading>span{display:none}
.collection-tabs{display:flex;gap:20px;overflow-x:auto;margin:0 0 28px;padding:0 0 12px;border-bottom:1px solid var(--line);flex-shrink:0}
.collection-tabs a{font:9px var(--yeezy-type);padding:0 0 4px;color:#99978e;white-space:nowrap;border-bottom:1px solid transparent}
.collection-tabs a:hover,.collection-tabs a[aria-current]{color:var(--ink)}.collection-tabs a[aria-current]{border-color:var(--ink)}
#window-releases .window-heading,#window-beats .window-heading,#window-demos .window-heading,#window-samples .window-heading,#window-projects .window-heading{display:none}
.release-list:has(.release-card){grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 19px;margin-top:0}
.release-cover{background:#eee;transition:opacity .15s}.release-cover:hover{opacity:.85}
.release-meta{padding:11px 0 0}.release-meta>span{font:8px var(--yeezy-type);color:#929087;display:block;margin-bottom:6px}
.release-meta h3{font:400 13px/1.4 var(--yeezy-type);letter-spacing:-.04em;margin:0}.release-meta h3 a{margin:0;text-decoration:none}.release-meta p{font:9px/1.5 var(--yeezy-type);margin:6px 0 0;color:#838177}
.post-body{margin:0}.record-detail{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:27px;align-items:start}
.detail-art{display:block;width:100%;height:auto;object-fit:contain}.detail-copy p{margin:0 0 13px}.detail-artist{font-size:12px;line-height:1.6}.detail-copy>small{display:block;color:var(--muted);font-size:10px;margin:0 0 22px}.detail-note{white-space:pre-wrap;font:12px/1.85 var(--yeezy-type)}
.record-detail.no-art{display:block}.record-detail .release-links{display:grid;gap:8px;margin-top:24px}
.contact-button,.hub-button{border:1px solid var(--line);font:9px var(--yeezy-type);padding:12px 14px;background:transparent;margin:0;text-align:center}.contact-button:hover{background:#efeee8}
.release-extra{margin-top:28px;border-color:var(--line);padding-top:20px}.release-extra h3{font-size:9px;color:var(--muted)}
.reading-window .window-content{padding:32px 45px 45px}.reading-window .window-heading h2{font-size:29px;line-height:1.3}.reading-window .detail-note{font:13px/1.95 var(--yeezy-type);letter-spacing:0;max-width:570px}.reading-window .detail-copy>small{margin:0 0 26px;font-size:10px}
.journal-list{margin-top:0}.journal-row{grid-template-columns:1fr 20px;padding:22px 0;border-color:var(--line)}.journal-index{display:none}.journal-row h3{font:400 20px/1.3 var(--yeezy-type);letter-spacing:-.04em;margin:9px 0}.journal-row p{color:#87857a;font:11px/1.7 var(--yeezy-type)}.journal-row small{font-size:9px;color:#969389}.journal-arrow{font-size:17px;color:#969389}
.section-empty{min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;border:0;padding:15px 0}.section-empty>span{font-size:9px;color:#99968c;letter-spacing:.05em}.section-empty p{font:12px/1.8 var(--yeezy-type);color:#807d72;max-width:340px;margin:12px 0}
.about-layout{display:block;margin:0;padding:12px 0 30px}.about-monogram{display:none}.about-layout p{font:15px/1.8 var(--yeezy-type);max-width:390px}.about-layout p:first-child{font-size:23px;letter-spacing:-.065em;margin-bottom:20px}.about-layout #about-bio{color:var(--muted);font-size:12px}.about-layout .contact-button{margin-top:15px;min-width:125px}
#window-about .window-heading{display:none}.project-list{border:0;margin:0}.project-row{border-color:var(--line);grid-template-columns:1fr auto}.project-row>span{display:none}.project-row h3{font-size:18px}.project-row p{font-size:12px;color:var(--muted)}
.radio-display{border:0;padding:0;margin:0;background:transparent}.radio-display>span,.radio-display>strong{display:none}.radio-display>small{font-size:9px;letter-spacing:.035em;color:var(--muted)}
.radio-visualizer{height:150px;margin:5px 0 20px}.radio-queue{border-top:0;margin-top:0}.radio-row{padding:16px 0;border-color:var(--line);grid-template-columns:20px 1fr auto}.radio-row strong{font-size:12px}.radio-row small{font-size:9px}.radio-row button,.radio-row a{border-color:var(--line);font-size:9px}
.radio-dock{z-index:40;min-height:49px;background:var(--paper);padding:10px max(24px,calc((100vw - 914px)/2));gap:22px;border-color:var(--line)}
.dock-name{font-size:9px;font-weight:400;letter-spacing:.04em}.dock-name:before{content:'';display:inline-block;width:4px;height:4px;margin-right:9px;border:1px solid #aaa;border-radius:50%}
body.radio-playing .dock-name:before{background:var(--accent);border-color:var(--accent)}
#dock-track{font-size:9px;color:var(--muted)}.dock-controls button{border:0;background:transparent;height:27px;font-size:10px}.radio-idle #dock-track{font-size:8px;text-align:right;letter-spacing:.02em}
.hub-intro{font-size:15px;line-height:1.85;max-width:480px;margin:0 0 27px}.hub-section{border-color:var(--line);padding:22px 0;margin-top:20px}.hub-section h3{font-size:10px;letter-spacing:.04em;color:var(--muted)}.hub-section summary{padding:6px 0;font-size:10px;list-style-position:outside;cursor:pointer}.hub-section p{color:var(--muted);font-size:12px}
.hub-form{gap:18px}.hub-form label{gap:9px;font-size:10px;color:var(--muted)}.hub-form input,.hub-form textarea,.hub-form select{background:#fff;border:1px solid var(--line);font-size:12px;padding:12px;color:var(--ink)}
.hub-form button{background:var(--ink);color:var(--paper);border-color:var(--ink);padding:13px 18px;font-size:9px}.hub-form button:hover{background:#36352f}.hub-form button:disabled{opacity:.45}
.auth-tabs{gap:0;border-bottom:1px solid var(--line);margin:26px 0}.auth-tabs button{border:0;border-bottom:1px solid transparent;margin-bottom:-1px;padding:12px 0;margin-right:22px;color:var(--muted);font-size:9px}.auth-tabs button[aria-selected=true]{border-bottom-color:var(--ink);color:var(--ink)}
.hub-status:empty{display:none}.hub-status{font-size:10px}.hub-empty{min-height:140px;display:flex;align-items:center;color:var(--muted);font-size:12px}
.beat-toolbar{margin:0 0 18px;gap:20px}.beat-toolbar input,.beat-toolbar select{border:0;border-bottom:1px solid var(--line);padding:10px 0;background:transparent;font-size:10px}.beat-row{padding:24px 0;margin:0}.beat-meta h3{font-size:18px;letter-spacing:-.04em}.beat-meta small{font-size:9px;line-height:1.8;color:var(--muted)}.beat-play{border:0;padding:7px 0;margin:17px 0;font-size:10px}.hub-actions button{border-color:var(--line);font-size:9px;padding:8px 11px}.hub-actions button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.beat-player-dock{background:var(--panel);border-color:var(--line);box-shadow:0 -6px 20px #00000005;padding:10px max(24px,calc((100vw - 914px)/2))}.beat-player-dock>span{font-size:10px}
.public-page .page-header{border:0;max-width:990px;margin:0 auto;padding:32px 38px}.public-page .page-main{max-width:850px;padding-top:35px}.public-page .page-main h1{font-size:40px}.public-page .page-footer{border-color:var(--line);color:var(--muted)}
@keyframes window-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:760px){.site-header{padding:27px 22px;gap:22px}.site-header nav{gap:17px}.site-header nav>a,.music-menu summary{font-size:9px}}
@media(max-width:650px){
 .site-header{padding:28px 15px 20px;gap:21px}.site-header nav{gap:17px;flex-wrap:wrap;justify-content:center}.site-header .logo{font-size:29px}
 .featured-record{width:min(375px,100%);padding:0 28px;margin:25px auto 54px}.featured-copy h1{font-size:17px}.feature-credit{font-size:9px}
 .file-window,#window-releases,#window-beats,#window-members,#window-radio,#window-about{left:0!important;top:0!important;width:100%!important;min-width:0;height:calc(100dvh - 50px)!important;max-height:calc(100dvh - 50px);border:0;box-shadow:none;animation:window-enter .15s ease-out}
 .hide-radio-dock .file-window{height:100dvh!important;max-height:100dvh}
 .window-bar{height:49px;min-height:49px;padding:0 14px;gap:9px}.window-bar>span{font-size:9px}.window-share{font-size:8px}.close-button{min-width:30px;min-height:35px}.window-back{min-width:27px}
 .window-content,body.roomy .window-content,.reading-window .window-content{padding:23px 23px 35px}.collection-tabs{gap:21px;margin-bottom:25px}.collection-tabs a{font-size:8px}
 .release-list:has(.release-card){grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 17px}.release-meta h3{font-size:12px}
 .record-detail{grid-template-columns:1fr;gap:22px}.detail-art{max-width:380px}.record-detail .release-links{display:flex;flex-wrap:wrap;margin-top:20px}.detail-copy>small{margin-bottom:18px}.reading-window .detail-note{font-size:13px;line-height:1.9}
 .window-heading h2{font-size:25px}.reading-window .window-heading h2{font-size:28px}.hub-intro{font-size:14px}.radio-dock{padding:10px 19px;min-height:50px;gap:12px}.beat-player-dock{padding:10px 20px}
 .beat-toolbar{flex-direction:row;gap:13px}.beat-toolbar input{width:60%}.beat-toolbar select{width:40%}.public-page .page-header{padding:24px}.public-page .page-main h1{font-size:32px}
}
@media(prefers-reduced-motion:reduce){.file-window{animation:none}.featured-art img,.featured-art:after,#home-content{transition:none}}

.hub-loading{display:grid;gap:17px;padding:18px 0 35px;min-height:170px;align-content:start}.hub-loading span{display:block;height:9px;background:#eeede7;width:85%;animation:loading-breathe 1.2s ease-in-out infinite alternate}.hub-loading span:nth-child(2){width:60%;animation-delay:.15s}.hub-loading span:nth-child(3){width:72%;animation-delay:.3s}.hub-loading small{font-size:8px;color:#aaa79b;letter-spacing:.08em}@keyframes loading-breathe{to{opacity:.4}}@media(prefers-reduced-motion:reduce){.hub-loading span{animation:none}}

.header-member{font:8px var(--yeezy-type);white-space:nowrap;color:#8e8b80;border-left:1px solid var(--line);padding-left:22px}.header-member:hover,.header-member[aria-current]{color:var(--ink)}.site-header{gap:28px}.secondary-nav:not(:has(a:not([hidden]))){display:none}.beat-account{text-align:right;margin:0 0 20px}.beat-account a{font-size:8px;color:var(--muted)}.beat-account a:hover{text-decoration:underline;text-underline-offset:4px}@media(max-width:650px){.site-header{display:grid;grid-template-columns:1fr auto;gap:20px 16px;padding:25px 24px 19px}.site-header .logo{justify-self:start}.header-member{grid-column:2;grid-row:1;border:0;padding:0}.site-header nav{grid-column:1/-1;grid-row:2;justify-self:center}.featured-record{margin-top:22px}}

/* Give the dropdown label exactly the same hierarchy as its sibling links. */
.site-header nav,.page-header nav{--nav-size:10px;align-items:center}
.site-header nav>a,.site-header nav>.music-menu>summary,.page-header nav>a,.page-header nav>.music-menu>summary{font:400 var(--nav-size)/1.3 var(--yeezy-type);color:var(--ink);letter-spacing:0;padding:8px 0}
.music-menu summary::after{color:inherit;font-size:inherit}
.featured-label{font:400 10px/1.4 var(--yeezy-type);letter-spacing:.06em;margin:0 0 16px;color:var(--ink)}
@media(max-width:760px){.site-header nav,.page-header nav{--nav-size:9px}}
