/* Shared rhythm, focus states and selection UI; preserves iPhone safe areas. */
html{scroll-padding-top:var(--header-offset,100px)}
[id]{scroll-margin-top:var(--header-offset,100px)}
body[data-store-focus] .section:not(.sound-signature){padding-block:clamp(36px,5vw,68px)}
body[data-store-focus] .focused-hero{padding-block:clamp(38px,5vw,76px);min-height:0}
body[data-store-focus] .focused-hero .hero-grid{min-height:0;align-items:center}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ac78e5;outline-offset:4px}
button,input,select,textarea{font-size:max(16px,1em)}
input,select,textarea{max-width:100%;box-sizing:border-box}
.home-beat-selection h2{font:400 clamp(32px,4vw,54px)/1.15 Georgia,serif;letter-spacing:-.035em;max-width:25ch;margin:12px 0 18px}
.home-selection-intro{max-width:65ch;line-height:1.7;margin:0 0 26px}
.home-beat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.home-beat-card{min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface,#15120f)}
.home-beat-card>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.home-beat-card-copy{padding:22px;display:flex;flex-direction:column;gap:12px}
.home-beat-card h3{font-size:24px;line-height:1.25;margin:0;letter-spacing:-.025em}
.home-beat-card .beat-metadata{margin:0;font-size:13px;line-height:1.6;min-height:42px;opacity:1;color:var(--muted)}
.home-beat-card .text-link{min-height:44px;display:inline-flex;align-items:center;align-self:flex-start;font-size:14px}
.home-beat-card .button{width:100%;min-height:46px;box-sizing:border-box}
.player-selection-card{display:flex;gap:20px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#17130e);margin-bottom:16px}
.player-selection-card[hidden],.selection-return[hidden]{display:none!important}
.player-selection-card img{width:144px;height:81px;object-fit:cover;border-radius:6px;flex-shrink:0}
.player-selection-card .selection-label{font-size:10px;font-weight:700;letter-spacing:.15em;color:var(--muted);margin:0 0 7px}
#selection-title{font-size:clamp(23px,3vw,34px);line-height:1.2;margin:0 0 8px;overflow-wrap:anywhere}
#selection-meta{font-size:13px;line-height:1.6;margin:0;color:var(--muted)}
#player-selection:empty{display:none}
#player-selection{font-size:14px;line-height:1.65;margin:12px 0 18px}
.selection-return{position:fixed;z-index:35;bottom:calc(18px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);box-sizing:border-box;padding:13px 22px;border-radius:999px;background:#ddc18b;color:#17120a;font-size:14px;font-weight:750;line-height:1.4;text-align:center;text-decoration:none;box-shadow:0 4px 24px #0005;border:1px solid #7a5d2a}
html[data-brand=secondary] #catalog-directory .catalog-title-list>li{background:#fffcf5}
html[data-brand=secondary] #catalog-directory .beat-emotions,html[data-brand=secondary] #catalog-directory .beat-source{color:#60412a;opacity:1}
html[data-brand=secondary] #catalog-directory .beat-metadata{color:#544b3f;opacity:1}
html[data-brand=secondary] .emotion-chips button[aria-pressed=true]{color:#352712;border-color:#85672e;box-shadow:inset 0 0 0 1px #85672e}
@media(max-width:760px){.home-beat-grid{grid-template-columns:1fr;gap:18px}.home-beat-card-copy{padding:20px}.home-beat-card .beat-metadata{min-height:0}.player-selection-card{padding:15px;gap:14px;align-items:flex-start}.player-selection-card img{width:92px;height:52px}.player-selection-card>div{min-width:0}.player-selection-card .selection-label{font-size:9px}#selection-title{font-size:23px}#selection-meta{font-size:12px}body[data-store-focus] .focused-hero{padding-block:30px}body[data-store-focus] .section:not(.sound-signature){padding-block:34px}.selection-return{font-size:13px;white-space:normal}.site-footer{padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

@media(max-width:390px){body[data-store-focus] .brand-toggle__swatch{display:none!important}body[data-store-focus] .brand-toggle__option{font-size:9px;gap:0;justify-content:center}}
