/* Readable type scale: body 16px, supporting text 14px. */
:root{--ink:#404448;--muted:#656b70}
body{font-size:16px;line-height:1.85}
.header{gap:28px}.header nav{gap:26px}.header nav a{font-size:14px;letter-spacing:.04em}
.header .brand{font-size:24px;letter-spacing:4px}.header .brand span,.footer .brand span{font-size:10px;letter-spacing:1.1px}
.hero .hero-copy{top:calc(50% + 15px)}.hero-copy p{font-size:18px;line-height:1.8;letter-spacing:.08em}.hero-copy .hero-en{font-size:12px;line-height:1.6;letter-spacing:2px;margin-top:10px}.hero-side{font-size:12px;letter-spacing:2px}
.portal h2{font-size:24px}.portal p{font-size:16px;line-height:1.8;letter-spacing:0;color:var(--muted)}.portal .arrow{font-size:24px}.home-portals{padding-top:32px;padding-bottom:32px}
.news-heading h2,.simple-heading,.about-grid h2,.apps-status h2,.empty-collection h2,.blog-feature h2{font-size:28px}
.news-section{grid-template-columns:170px 1fr;padding:36px 0;gap:28px}
.update-row{font-size:16px;grid-template-columns:110px 1fr 18px;gap:18px;padding:12px 0;line-height:1.8}.update-row time{font-size:14px}
.page-title{font-size:44px}.page-lead{font-size:20px;line-height:1.8}.intro-text{font-size:16px;max-width:740px}
.intro-text,.music-note,.song-detail p,.details-panel p,.gear-item p,.empty-collection p,.band-copy p,.apps-status p,.blog-feature p,.topics p,.about-grid p,.empty-message,dialog p,dialog li{font-size:16px;line-height:1.85;color:var(--muted)}
.text-link,.breadcrumbs,.eyebrow,.music-door small,.subnav a,.caption,.band-photo figcaption,.tag,.credits div,.player-meta,.load-audio,.audio-error,.small-note,.button,.filter-button,.update-note,.category,.gear-item .gear-number,.search-label,.search-result span{font-size:14px}
.caption,.band-photo figcaption,.small-note,.player-meta,.update-note,.breadcrumbs{color:var(--muted)}
.song-detail .small-note{font-size:14px}.tag{padding:4px 9px}.credits div{grid-template-columns:175px 1fr;padding:12px 0}.credits dt{color:var(--muted)}
.music-door strong,.gear-item h2,.topics h3{font-size:24px}.song-detail h2,.band-copy h2{font-size:28px}.subnav{gap:24px;row-gap:12px}
.time{font-size:13px}.play-button{width:44px;height:44px;font-size:16px}.transport{flex-wrap:wrap;gap:12px}.seek{min-width:70px}.volume span{font-size:16px}.volume input{width:65px}.player-meta{line-height:1.8}
.button{padding:12px 20px}.filter-button{padding:8px 16px}.search-result{font-size:16px}.search-label+input{font-size:18px}dialog h2{font-size:28px}dialog h3{font-size:18px}
.footer{gap:24px;flex-wrap:wrap}.footer nav{font-size:14px;gap:24px;flex-wrap:wrap}.footer p,.footer button{font-size:13px;color:var(--muted)}.footer p{line-height:1.8}.footer .brand{font-size:26px}
@media(min-width:1051px){.portal{grid-template-columns:1fr 1fr;gap:16px}.portal+.portal{padding-left:22px}.home-portals{gap:22px}.portal img{height:145px}}
@media(min-width:761px) and (max-width:1050px){.header{gap:18px;padding:0 32px}.header nav{gap:16px}.header .brand{font-size:21px}.header .brand span{font-size:9px}.home-portals{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.portal,.portal+.portal{grid-template-columns:1fr;padding-left:0;border-left:0;gap:16px;align-content:start}.portal img{height:auto;aspect-ratio:3/2}.portal h2{font-size:22px}.portal p{font-size:16px}.portal .arrow{margin-top:4px}}
@media(max-width:760px){.header{gap:16px}.header .brand{font-size:22px;letter-spacing:3px}.header .brand span{font-size:9px;letter-spacing:.8px}.header nav a{font-size:16px}.hero-copy p{font-size:16px}.hero-copy .hero-en{font-size:12px}.hero-side{display:none}.portal,.portal+.portal{grid-template-columns:1fr 1fr;padding:26px 0;gap:20px}.portal h2{font-size:22px}.portal p{font-size:16px}.portal img{height:auto;aspect-ratio:3/2}.news-section{grid-template-columns:1fr;gap:22px}.news-heading h2{font-size:26px}.update-row,.all-news .update-row{grid-template-columns:1fr 18px;gap:4px 12px;font-size:16px;padding:16px 0}.update-row time{grid-column:1;font-size:14px}.update-row .update-title{grid-column:1}.update-row>.arrow{grid-column:2;grid-row:2}.page-title{font-size:36px}.page-lead{font-size:18px}.breadcrumbs{font-size:13px}.credits div{grid-template-columns:155px 1fr;font-size:14px;gap:12px}.work-layout{gap:24px}.subnav{gap:14px 20px}.subnav a{font-size:14px}.band-photo figcaption{flex-direction:column;gap:0}.footer nav{font-size:14px;gap:16px 24px}.footer button{font-size:13px;margin-left:0;display:block;margin-top:8px}.footer .brand{font-size:26px}.footer p{font-size:13px;text-align:left}.about-statement{font-size:28px}.gear-grid{grid-template-columns:1fr}.small-note{font-size:14px}}
@media(max-width:360px){.header{padding:0 18px;gap:14px}.header .brand{font-size:20px;letter-spacing:2px}.header .brand span{font-size:8px;letter-spacing:.7px}.content-width{padding:0 20px}.portal,.portal+.portal{gap:14px}.portal p{font-size:16px}.time{font-size:13px}.volume input{width:48px}.credits div{grid-template-columns:140px 1fr;gap:8px}.hero-copy p{letter-spacing:.02em}.hero-copy .hero-en{letter-spacing:1.5px}}
.portal p br{display:none}.portal{align-items:start}.portal>div{height:100%;display:flex;flex-direction:column}.portal .arrow{margin-top:auto;padding-top:12px}.portal img{align-self:center}
@media(min-width:1051px){.portal{grid-template-columns:1.2fr 1fr}}
@media(max-width:760px){.home-portals{padding-top:0;padding-bottom:0}}

@media(max-width:760px){.portal img{height:140px}}
