:root{--ink:#071012;--paper:#f1eadf;--muted:rgba(241,234,223,.62);--line:rgba(211,195,170,.32);--red:#d3232b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--paper);background:var(--ink);font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:fixed;z-index:20;top:12px;left:12px;padding:10px 14px;color:#111;background:var(--paper);transform:translateY(-150%)}.skip:focus{transform:none}
header{position:sticky;z-index:10;top:0;display:flex;align-items:center;justify-content:space-between;min-height:74px;padding:0 clamp(20px,4vw,64px);border-bottom:1px solid var(--line);background:rgba(7,16,18,.92);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:13px;font:400 21px/1 "Cormorant Garamond",serif}.mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--paper);font-size:22px}.mark span{color:var(--red);font-style:italic}nav{display:flex;align-items:center;gap:clamp(16px,2.5vw,34px);font:500 10px/1 "IBM Plex Mono",monospace;letter-spacing:.16em;text-transform:uppercase}nav a{padding:10px 0;border-bottom:1px solid transparent}nav a:hover,nav a:focus-visible{border-color:var(--red)}nav .back{padding:12px 16px;border:1px solid var(--line)}
.hero{position:relative;isolation:isolate;display:grid;align-items:end;min-height:58vh;padding:clamp(70px,10vw,150px) clamp(20px,6vw,92px) clamp(52px,6vw,90px);overflow:hidden;border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(3,10,12,.98),rgba(4,16,19,.78) 52%,rgba(4,28,32,.45)),url("../../media/old-assets/tales-from-the-trap-filmography.png") center/cover}.hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,var(--ink),transparent 48%)}.hero-inner{width:min(100%,1440px);margin:auto}.eyebrow{margin:0 0 22px;color:var(--red);font:500 11px/1 "IBM Plex Mono",monospace;letter-spacing:.22em;text-transform:uppercase}.hero h1{margin:0;font:400 clamp(72px,10vw,156px)/.77 "Cormorant Garamond",serif;letter-spacing:-.06em}.hero h1 em{color:var(--red)}.hero-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-top:46px}.hero-foot p{max-width:520px;margin:0;color:var(--muted);font-size:16px;line-height:1.6}.count{font:500 10px/1 "IBM Plex Mono",monospace;letter-spacing:.18em;text-transform:uppercase}
.archive{width:min(calc(100% - 40px),1440px);margin:auto;padding:clamp(46px,6vw,84px) 0 100px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:40px;padding-bottom:18px;border-bottom:1px solid var(--line)}.filters{display:flex;flex-wrap:wrap;gap:8px}.filter{padding:11px 15px;color:var(--muted);border:1px solid var(--line);background:transparent;cursor:pointer;font:500 10px/1 "IBM Plex Mono",monospace;letter-spacing:.13em;text-transform:uppercase}.filter:hover,.filter:focus-visible,.filter.active{color:var(--ink);background:var(--paper)}.result{color:var(--muted);font:500 10px/1 "IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 18px}.card[hidden]{display:none}.poster{aspect-ratio:2/3;overflow:hidden;border:1px solid var(--line);background:#111;box-shadow:0 20px 40px #0004;transition:.4s}.poster img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.06) brightness(.92);transition:.55s}.card:hover .poster{transform:translateY(-8px);border-color:var(--paper)}.card:hover img{transform:scale(1.035);filter:saturate(1)}.card h2{margin:17px 0 8px;font:400 clamp(21px,2vw,31px)/1 "Cormorant Garamond",serif}.meta{color:var(--muted);font:500 9px/1.4 "IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase}footer{display:flex;justify-content:space-between;gap:24px;padding:30px clamp(20px,4vw,64px);color:var(--muted);border-top:1px solid var(--line);font:500 9px/1.5 "IBM Plex Mono",monospace;letter-spacing:.13em;text-transform:uppercase}
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){header{min-height:64px}.brand{font-size:18px}.mark{width:31px;height:31px}nav>a:not(.back){display:none}.hero-foot,.toolbar{align-items:flex-start;flex-direction:column}.grid{grid-template-columns:repeat(2,1fr);gap:36px 12px}footer{flex-direction:column}}@media(max-width:420px){.hero h1{font-size:68px}.archive{width:calc(100% - 28px)}.filter{flex:1 1 45%}.card h2{font-size:20px}}
.site-header{z-index:30;position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;height:78px;padding-inline:max(24px,calc((100% - 1200px)/2));border-bottom:1px solid rgba(241,234,223,.18);background:rgba(10,10,11,.89);backdrop-filter:blur(16px)}.brand{z-index:2;position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:180px}.brand__mark{height:47px;color:#f1eadf;font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;letter-spacing:-.22em;font-size:48px;font-weight:400;line-height:1}.brand__mark span{display:inline-block;opacity:.78;transform:translateX(-4px) scaleX(.82)}.brand__name{color:#f1eadf;text-transform:uppercase;letter-spacing:.27em;white-space:nowrap;font:500 10px/1 "Helvetica Neue",Arial,sans-serif}.brand--compact{flex-direction:row;align-items:center;gap:14px;min-width:auto}.brand--compact .brand__mark{height:34px;font-size:35px}.brand--compact .brand__name{font-size:10px}.site-header nav{display:flex;align-items:center;gap:clamp(16px,2.1vw,34px)}.site-header nav a{position:relative;display:inline-block;letter-spacing:.19em;text-transform:uppercase;font:500 11px/1 "Helvetica Neue",Arial,sans-serif;border:0;padding:0}.site-header nav a:not(.site-header__contact):after{content:"";position:absolute;right:.18em;bottom:-8px;left:0;height:1px;background:#b3132b;transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-header nav a:not(.site-header__contact):hover:after,.site-header nav a:not(.site-header__contact):focus-visible:after{transform:scaleX(1)}.site-header__contact{display:inline-flex!important;gap:22px;padding:12px 15px!important;border:1px solid rgba(241,234,223,.36)!important;transition:background .25s,color .25s}.site-header__contact:hover,.site-header__contact:focus-visible{color:#0a0a0b;background:#f1eadf}@media(max-width:1050px){.site-header nav a:nth-child(5),.site-header nav a:nth-child(6){display:none!important}}@media(max-width:760px){.site-header{height:68px;padding:0 20px}.site-header nav a{display:none!important}.site-header nav .site-header__contact{display:inline-flex!important}}
