:root{--ink:#11110f;--cream:#f2efe8;--muted:#b9b5ad;--line:rgba(255,255,255,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#f7f4ed;font-family:Arial,Helvetica,sans-serif;letter-spacing:.02em}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,88vw);margin:auto}.topbar{height:82px;position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:linear-gradient(#0b0b0ad9,transparent);transition:.25s}.topbar.scrolled{background:#0b0b0af2;border-bottom:1px solid #ffffff18}.brand{display:flex;flex-direction:column;line-height:1}.brand span{letter-spacing:.38em;font-size:20px}.brand small,.heroLogo small{font-size:7px;letter-spacing:.36em;margin-top:7px}.topbar nav{display:flex;align-items:center;gap:28px;text-transform:uppercase;font-size:11px;letter-spacing:.2em}.topbar nav a:hover{opacity:.65}.lang{border:0;background:none;color:#fff;padding:0;opacity:.5;cursor:pointer;letter-spacing:.15em}.lang.active{opacity:1}.menu{display:none;background:none;border:0;color:#fff;font-size:22px}.hero{height:78vh;min-height:620px;background:url('assets/hero-clean.jpg') center/cover no-repeat;position:relative;display:flex;align-items:flex-end}.heroShade,.finalShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.4) 45%,rgba(0,0,0,.08) 75%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 55%)}.heroText{position:relative;padding-bottom:11vh}.heroLogo{font-size:64px;letter-spacing:.34em;display:flex;flex-direction:column;width:max-content}.heroLogo small{font-size:10px}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(38px,5vw,66px);margin:34px 0 10px}.hero p{font-size:16px;margin:0 0 28px}.btn{display:inline-flex;gap:34px;align-items:center;border:1px solid;padding:14px 18px;text-transform:uppercase;font-size:10px;letter-spacing:.2em;cursor:pointer;background:transparent}.btn.light{border-color:#ddd;color:#fff}.btn.dark{border-color:#111;color:#111}.btn:hover{opacity:.65}.lightSection{background:var(--cream);color:#171715}.darkSection{background:#0c0c0b;color:#f5f2eb}.split{display:grid;grid-template-columns:1fr 1.05fr;min-height:410px}.copy{padding:70px max(6vw,calc((100vw - 1180px)/2))}.copy h2,.music h2,.screen h2,.licensing h2,.brief h2{font-weight:400;letter-spacing:.16em;font-size:clamp(26px,3vw,42px);margin:10px 0 24px}.copy p,.screen p,.licensing p,.brief p{line-height:1.65;font-size:15px;max-width:660px}.eyebrow{font-size:9px;letter-spacing:.25em;opacity:.62}.aboutImg{background:url('assets/about.jpg') center/cover no-repeat;margin:30px 4vw 30px 0}.music{padding:65px 0 0}.music .lead{max-width:850px;line-height:1.65;color:#d5d1c8}.cards{display:grid;grid-template-columns:repeat(5,1fr);margin-top:45px}.cards article{height:310px;background:var(--bg) center/cover no-repeat;position:relative}.cards article:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 65%)}.cards article div{position:absolute;z-index:2;left:22px;right:12px;bottom:22px}.cards h3{font-size:15px;letter-spacing:.12em;margin:0 0 7px}.cards p{font-size:10px;margin:0}.composerImg{background:url('assets/composers.jpg') center/cover no-repeat}.statement{font-family:Georgia,serif;font-size:20px!important;margin-top:28px}.experience{padding:52px 0}.logos{display:grid;grid-template-columns:repeat(8,1fr);align-items:center;gap:28px;margin-top:30px}.logos span{text-align:center;font-weight:700;font-size:14px;opacity:.72;letter-spacing:.04em}.screen,.licensing{padding:75px 0}.uses{display:flex;flex-wrap:wrap;gap:0;margin-top:32px}.uses span{padding:0 24px;border-right:1px solid #aaa;font-size:11px;letter-spacing:.12em}.uses span:first-child{padding-left:0}.uses span:last-child{border:0}.brief{display:grid;grid-template-columns:1fr 1fr;min-height:440px}.briefImg{background:url('assets/brief.jpg') center/cover no-repeat}.briefCopy{padding:70px 7vw}.briefCopy .btn{margin-top:12px}.licensing .btn{margin-top:22px}.final{height:480px;background:url('assets/footer.jpg') center/cover no-repeat;position:relative;display:grid;place-items:center;text-align:center}.finalShade{background:rgba(0,0,0,.35)}.finalCopy{position:relative}.final h2{font-size:clamp(34px,5vw,64px);font-weight:300;letter-spacing:.18em;margin:0 0 22px}.heroLogo.small{font-size:30px;margin:0 auto 25px}.heroLogo.small small{font-size:6px}.email{display:block;margin-top:22px;font-size:12px;opacity:.75}footer{min-height:90px;padding:24px 5vw;display:flex;align-items:center;justify-content:space-between;background:#090909;color:#aaa;font-size:10px;text-transform:uppercase;letter-spacing:.12em}footer .brand span{font-size:14px;color:#fff}.modal{position:fixed;inset:0;background:#000b;z-index:50;display:none;place-items:center;padding:20px}.modal.open{display:grid}.modalBox{width:min(620px,95vw);max-height:92vh;overflow:auto;background:var(--cream);color:#111;padding:45px;position:relative}.modalBox h2{font-weight:400;letter-spacing:.08em}.close{position:absolute;right:20px;top:15px;border:0;background:none;font-size:32px;cursor:pointer}.modal form{display:grid;gap:16px}.modal label{display:grid;gap:7px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.modal input,.modal textarea,.modal select{font:inherit;border:1px solid #aaa;background:#fff;padding:12px;width:100%}.formNote{font-size:11px;color:#666}.modal .btn{width:max-content}@media(max-width:850px){.topbar nav{display:none;position:absolute;top:70px;left:0;right:0;background:#0b0b0b;padding:24px 5vw;flex-direction:column;align-items:flex-start}.topbar nav.open{display:flex}.menu{display:block}.hero{min-height:610px}.heroLogo{font-size:42px}.split,.brief{grid-template-columns:1fr}.aboutImg,.composerImg,.briefImg{min-height:300px;margin:0}.composerImg{order:2}.cards{grid-template-columns:1fr 1fr}.cards article:last-child{grid-column:1/-1}.logos{grid-template-columns:repeat(2,1fr);row-gap:35px}.briefCopy{padding:55px 7vw}.uses{gap:12px}.uses span{border:0;padding:0 10px 0 0}.final{height:420px}footer{gap:20px;align-items:flex-start;flex-direction:column}}@media(max-width:520px){.cards{grid-template-columns:1fr}.cards article:last-child{grid-column:auto}.hero h1{font-size:40px}.heroText{padding-bottom:70px}.copy{padding:55px 7vw}.music{padding-top:55px}.modalBox{padding:36px 24px}}

.clientLoginLink{border:1px solid rgba(255,255,255,.55);background:transparent;color:#fff;padding:10px 14px;text-transform:uppercase;font-size:10px;letter-spacing:.18em;cursor:pointer}.clientLoginLink:hover{background:#fff;color:#111}.loginModal{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.86);display:none;place-items:center;padding:20px}.loginModal.open{display:grid}.loginPanel{width:min(520px,94vw);background:#10100f;color:#f5f2eb;border:1px solid rgba(255,255,255,.16);padding:55px 55px 48px;position:relative;box-shadow:0 35px 100px rgba(0,0,0,.5)}.loginClose{position:absolute;right:20px;top:14px;border:0;background:none;color:#fff;font-size:32px;cursor:pointer;font-weight:200}.loginBrand{display:flex;flex-direction:column;margin-bottom:48px}.loginBrand span{font-size:27px;letter-spacing:.38em}.loginBrand small{font-size:7px;letter-spacing:.34em;margin-top:8px}.loginPanel h2{font-weight:300;font-size:34px;letter-spacing:.14em;margin:12px 0 18px}.loginPanel>p{color:#bdb8af;line-height:1.65;font-size:14px;margin-bottom:32px}.loginPanel form{display:grid;gap:20px}.loginPanel label{display:grid;gap:9px;text-transform:uppercase;font-size:9px;letter-spacing:.18em;color:#c9c5bc}.loginPanel input{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.38);color:#fff;padding:10px 2px 13px;font:inherit;outline:none}.loginPanel input:focus{border-bottom-color:#fff}.loginPanel .btn{margin-top:10px;width:100%;justify-content:space-between}.loginNote{font-size:10px!important;color:#8f8b84!important;margin:3px 0 0!important}.loginNote.notice{color:#f5f2eb!important}.topbar nav{gap:22px}@media(max-width:850px){.clientLoginLink{margin-top:5px}.loginPanel{padding:48px 28px 38px}}

/* Category audio previews */
.cards .musicCard{overflow:hidden;cursor:default}.cards .musicCard .cardCopy{transition:transform .28s ease}.categoryPlayer{display:block;width:100%;height:34px;margin-top:14px;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s ease,transform .25s ease;filter:invert(1) grayscale(1);mix-blend-mode:screen}.musicCard:hover .categoryPlayer,.musicCard:focus-within .categoryPlayer,.musicCard.playerOpen .categoryPlayer{opacity:.92;transform:translateY(0);pointer-events:auto}.musicCard:hover .cardCopy,.musicCard:focus-within .cardCopy,.musicCard.playerOpen .cardCopy{transform:translateY(-3px)}
@media(max-width:850px){.categoryPlayer{opacity:.92;transform:none;pointer-events:auto;margin-top:12px}.cards article{height:330px}}

/* Cleaner contact section: one background image, no repeated NARRA lockup */
.final{background-position:center 48%;}
.finalShade{background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.38)),linear-gradient(0deg,rgba(0,0,0,.35),rgba(0,0,0,.1));}
.finalCopy{width:min(760px,88vw);padding:38px 34px;background:rgba(8,8,7,.34);backdrop-filter:blur(2px);}
.finalCopy .eyebrow{display:block;margin-bottom:18px;color:#fff;opacity:.72;}
.final .email{color:#fff;opacity:.9;}
@media(max-width:520px){.finalCopy{padding:30px 20px;background:rgba(8,8,7,.42);}}

/* Enhanced interactive music cards */
.musicCard{isolation:isolate;background-size:cover!important;transition:background-size .65s cubic-bezier(.2,.65,.25,1)}
.musicCard:before{content:"";position:absolute;inset:0;z-index:1;background:rgba(0,0,0,0);transition:background .35s ease}
.musicCard:after{z-index:1!important;transition:background .35s ease}
.musicCard .cardCopy{z-index:3!important;bottom:20px!important;transition:transform .38s cubic-bezier(.2,.7,.25,1)!important}
.categoryHeading{position:static!important;display:flex;align-items:center;gap:9px}
.listenCue,.nowPlaying{position:static!important;display:flex;align-items:center;gap:8px;height:0;overflow:hidden;opacity:0;transform:translateY(8px);transition:height .3s ease,opacity .3s ease,transform .3s ease;margin-top:0;font-size:9px;letter-spacing:.22em}
.listenIcon{font-size:8px}.listenText{font-size:9px;letter-spacing:.22em}
.nowPlaying{color:#fff}.playingBars{position:static!important;display:none;align-items:flex-end;gap:2px;height:13px;width:13px}.playingBars i{display:block;width:2px;height:5px;background:#fff;animation:narraBar .72s ease-in-out infinite alternate}.playingBars i:nth-child(2){height:11px;animation-delay:-.32s}.playingBars i:nth-child(3){height:7px;animation-delay:-.16s}
@keyframes narraBar{from{height:3px}to{height:12px}}
@media (hover:hover) and (pointer:fine){
 .musicCard:hover{background-size:auto 108%!important}
 .musicCard:hover:before{background:rgba(0,0,0,.24)}
 .musicCard:hover:after{background:linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.38) 65%,rgba(0,0,0,.08) 100%)}
 .musicCard:hover .cardCopy{transform:translateY(-8px)!important}
 .musicCard:hover .listenCue{height:20px;opacity:.95;transform:translateY(0);margin-top:10px}
}
.musicCard.playerOpen:before{background:rgba(0,0,0,.3)}
.musicCard.playerOpen:after{background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.45) 70%,rgba(0,0,0,.12) 100%)}
.musicCard.playerOpen .listenCue{display:none}
.musicCard.playerOpen .nowPlaying{height:18px;opacity:1;transform:none;margin-top:9px}
.musicCard.playerOpen .playingBars{display:inline-flex}
.musicCard.playerOpen .categoryPlayer{opacity:.96;transform:translateY(0);pointer-events:auto}
@media(max-width:850px){
 .listenCue{height:20px;opacity:.9;transform:none;margin-top:9px}
 .musicCard.playerOpen .listenCue{display:none}
 .musicCard.playerOpen .nowPlaying{height:18px}
}
@media(prefers-reduced-motion:reduce){.musicCard,.musicCard:before,.musicCard:after,.musicCard .cardCopy,.listenCue,.nowPlaying{transition:none!important}.playingBars i{animation:none}}
