/* Emotion-led catalog. Header and its iOS safe-area rules are intentionally untouched. */
:root{--mood-reflective:#b9b4e7;--mood-confident:#e2bd78;--mood-heartfelt:#e3abbf;--mood-tense:#d8a38e;--mood-uplifting:#d1d996;--mood-laidback:#9dcbbf;--mood-celebratory:#e9c595}
[data-mood]{--mood:var(--mood-confident)}
[data-mood=reflective]{--mood:var(--mood-reflective)}[data-mood=heartfelt]{--mood:var(--mood-heartfelt)}[data-mood=tense]{--mood:var(--mood-tense)}[data-mood=uplifting]{--mood:var(--mood-uplifting)}[data-mood=laidback]{--mood:var(--mood-laidback)}[data-mood=celebratory]{--mood:var(--mood-celebratory)}
#catalog-directory .shell>h2,.selected-beat h2{font-size:clamp(2rem,4vw,3.8rem);line-height:1.08;letter-spacing:-.035em;max-width:20ch;text-wrap:balance}
#catalog-directory .shell>p:not(.section-kicker){max-width:66ch;line-height:1.75}
#catalog-directory .catalog-directory{margin-top:2rem}
#catalog-directory .catalog-search{max-width:100%;font-size:.9rem}
#catalog-directory #catalog-search{margin-top:.55rem;min-height:52px;font-size:16px;border-radius:12px}
.emotion-picker{padding:1.5rem 0 1.25rem}.emotion-label{font-size:1rem;font-weight:700;margin:0 0 .85rem}.emotion-chips{display:flex;flex-wrap:wrap;gap:.6rem}
.emotion-chips button{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;border-radius:999px;border:1px solid var(--line, #655944);padding:.6rem 1rem;background:transparent;color:inherit;font:inherit;font-size:.9rem;cursor:pointer}
.emotion-chips button::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--mood);flex-shrink:0}.emotion-chips button[data-emotion-chip='']::before{display:none}
.emotion-chips button:hover{border-color:var(--mood)}.emotion-chips button[aria-pressed=true]{border-color:var(--mood);background:rgba(190,160,112,.14);box-shadow:inset 0 0 0 1px var(--mood)}
.emotion-chips button:focus-visible,.catalog-advanced summary:focus-visible{outline:3px solid #d8c29d;outline-offset:4px}
.emotion-chips-ready .emotion-select-fallback{display:none!important}
.catalog-advanced{padding:1rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.catalog-advanced summary{font-weight:600;cursor:pointer;min-height:44px;align-content:center;font-size:.92rem}.catalog-advanced[open] .catalog-filters{padding:1rem 0 .25rem}.catalog-help{font-size:.82rem;line-height:1.6;max-width:85ch;margin-top:1rem!important}
#catalog-directory .catalog-title-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding:0;align-items:stretch}
#catalog-directory .catalog-title-list>li{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;overflow:hidden;padding:0;border:1px solid var(--line);border-radius:16px;background:rgba(22,20,17,.5);box-shadow:none}
#catalog-directory .catalog-title-list>li[hidden]{display:none!important}
.beat-cover,.selected-beat-art{aspect-ratio:16/9;overflow:hidden;background:#15120f;position:relative}.beat-cover{border-bottom:2px solid var(--mood)}
.beat-cover img,.selected-beat-art img{width:100%;height:100%;object-fit:cover;display:block}
.beat-cover-brand{display:grid;place-items:center;background:radial-gradient(ellipse at 50% 100%,#4a3520,transparent 70%),#101010;text-align:center;color:#e6d3a8;font-weight:900;letter-spacing:.08em;font-size:1.55rem}.beat-cover-brand small{display:block;letter-spacing:.65em;font-size:.65rem;margin:.25rem 0 0 .65em}.cover-two{color:#fff;padding:0 .08em}
#catalog-directory .catalog-title-list>li>strong{display:block;font-size:1.3rem;line-height:1.3;letter-spacing:-.02em;padding:1.25rem 1.25rem 0;overflow-wrap:anywhere}
#catalog-directory .beat-discovery{padding:0 1.25rem;max-width:none;display:flex;flex-direction:column;flex:1}
#catalog-directory .beat-emotions{color:var(--mood);font-size:.78rem;letter-spacing:.025em;margin:.7rem 0 .4rem;font-weight:700}
#catalog-directory .beat-emotion-copy{font-size:.96rem;line-height:1.65;margin:0 0 1rem;max-width:42ch}
#catalog-directory .beat-metadata{font-size:.77rem;line-height:1.6;opacity:.78;margin:auto 0 .25rem;padding-top:.4rem}
#catalog-directory .beat-source{font-size:.75rem;opacity:.72;align-self:flex-start;margin:0 0 .75rem}
#catalog-directory .catalog-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin:0;padding:0 1.25rem 1.25rem}
#catalog-directory .catalog-actions>a,#catalog-directory .catalog-actions>button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:.78rem;padding:.5rem .7rem;border-radius:8px;line-height:1.4;text-align:center}
#catalog-directory .catalog-actions .beat-listen{flex:1 0 100%;background:#d8bd88;color:#17120a;border:1px solid #d8bd88;font-weight:750;text-decoration:none;font-size:.88rem}
#catalog-directory .catalog-actions .beat-listen:hover{background:#edd6aa}
.selected-beat{padding-block:clamp(48px,6vw,88px)}.selected-beat-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,72px)}.selected-beat-art{border-radius:16px;border:1px solid var(--line);box-shadow:0 20px 70px #0004}.selected-beat h2{margin:.45rem 0 1rem}.selected-feeling{color:var(--mood-reflective);font-weight:700;font-size:.85rem;margin:1rem 0 .3rem}.selected-story{max-width:43ch;line-height:1.75;font-size:1.05rem}.selected-meta{font-size:.8rem;opacity:.75;margin:1.25rem 0}.selected-beat .button-row{gap:1rem;align-items:center}.selected-beat .text-link{font-size:.9rem}
.focused-hero .hero-copy>p:not(.section-kicker){line-height:1.75;max-width:48ch}.emotion-steps h3{line-height:1.3}.emotion-steps p{line-height:1.65}
.b2b-fb .fb-journey{list-style:none;display:flex;gap:.4rem;justify-content:space-between;padding:0;margin:1.4rem 0 2rem;font-size:.78rem;color:var(--fb-muted)}.b2b-fb .fb-journey li{display:flex;align-items:center;gap:.4rem;line-height:1.3}.b2b-fb .fb-journey span{display:grid;place-items:center;border:1px solid var(--fb-line-strong);border-radius:50%;width:26px;height:26px;flex-shrink:0;color:var(--fb-gold);font-size:.75rem}
.b2b-fb .fb-step{border:0;border-top:1px solid var(--fb-line);padding:1.25rem 0 0;margin:0 0 1.25rem;min-width:0}.b2b-fb .fb-step legend{padding:0 .5rem 0 0;font-size:.95rem;font-weight:800;color:var(--fb-ice);max-width:100%}.b2b-fb .fb-step:last-child{margin-bottom:0}.b2b-fb .fb-card h2{line-height:1.2;font-size:1.5rem}.b2b-fb .fb-check{line-height:1.7}.b2b-fb .fb-main .fb-lead{line-height:1.75}
.b2b-fb input[type=search]{width:100%;min-height:50px;padding:12px 16px;border:1px solid var(--fb-line);border-radius:14px;background:var(--fb-input);color:var(--fb-text);font:inherit;font-size:16px}
.b2b-fb .fb-downloads:focus{outline:2px solid var(--fb-focus);outline-offset:4px}.b2b-fb .fb-downloads{border-color:var(--fb-focus);padding:20px}.b2b-fb .fb-dl-title::before{content:'✓';display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#d8bd88;color:#17120a;margin-right:.6rem}.b2b-fb [data-download-state=ready] .fb-journey span{background:#d8bd88;color:#17120a;border-color:#d8bd88}
html[data-brand=secondary] #catalog-directory .catalog-title-list>li{background:rgba(255,251,244,.7)}html[data-brand=secondary] #catalog-directory .beat-emotions,html[data-brand=secondary] .selected-feeling{color:#665130}
@media(max-width:1000px){#catalog-directory .catalog-title-list{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-beat-grid{gap:28px}.selected-beat h2{font-size:2.4rem}}
@media(max-width:640px){#catalog-directory .catalog-title-list{grid-template-columns:minmax(0,1fr);gap:1.25rem}.selected-beat-grid{grid-template-columns:minmax(0,1fr)}.selected-beat h2{font-size:2.2rem}.emotion-chips{gap:.5rem}.emotion-chips button{font-size:.82rem;padding:.55rem .8rem}.catalog-advanced .catalog-filters>label{width:100%;min-width:0}.b2b-fb .fb-journey{font-size:.72rem}.b2b-fb .fb-card{padding:20px}.selected-beat .button-row{align-items:stretch;flex-direction:column}.selected-beat .button{width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.selected-beat *,#catalog-directory *{scroll-behavior:auto;transition:none!important}}

#catalog-directory .catalog-actions{margin-top:auto}

#catalog-directory .catalog-title-list>li{padding:0!important}
.catalog-source-note{margin:.65rem 0}.catalog-source-note summary{font-size:.8rem;font-weight:500;min-height:44px;align-content:center;color:var(--muted);cursor:pointer}.catalog-source-note .catalog-help{margin-top:0!important}
