/* Fenris — catalogue talents 2026 */
.directory-bump{--tm-gold:#d7aa50;--tm-cream:#f1eadb;--tm-night:#050708;--tm-panel:#101311;background:radial-gradient(circle at 75% 0,#11171a 0,transparent 27%),#050708;color:var(--tm-cream)}
.directory-bump .roster-hero{min-height:72svh;align-items:center;padding:clamp(7rem,9vw,9rem) 0 clamp(3rem,5vw,4.5rem);background:radial-gradient(circle at 75% 0,#11171a 0,transparent 27%),radial-gradient(circle at 74% 40%,rgba(215,170,80,.1),transparent 27%),#050708}
.directory-bump .roster-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}
.directory-bump .roster-hero::after{background:linear-gradient(transparent 55%,var(--tm-night))}
.directory-bump .roster-pattern{inset:auto -8vw 5%;left:auto;width:min(54vw,780px);aspect-ratio:1;display:block;opacity:.3;transform:none;border:1px solid rgba(215,170,80,.28);border-radius:50%;animation:tmOrbit 26s linear infinite}
.directory-bump .roster-pattern::before,.directory-bump .roster-pattern::after{content:"";position:absolute;border:1px solid rgba(215,170,80,.2);border-radius:50%}
.directory-bump .roster-pattern::before{inset:10%}.directory-bump .roster-pattern::after{inset:24%}
.directory-bump .roster-pattern i{position:absolute;width:8px;height:8px;border:0;border-radius:50%;background:var(--tm-gold);box-shadow:0 0 30px var(--tm-gold)}
.directory-bump .roster-pattern i:nth-child(1){left:11%;top:26%}.directory-bump .roster-pattern i:nth-child(2){right:6%;top:48%}.directory-bump .roster-pattern i:nth-child(3){left:32%;bottom:5%}.directory-bump .roster-pattern i:nth-child(4){left:49%;top:23%}
.directory-bump .roster-hero__content{grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr);gap:clamp(3rem,8vw,9rem)}
.directory-bump .roster-hero__content>div:first-child>p{display:flex;align-items:center;gap:12px;color:var(--tm-gold);letter-spacing:.22em}.directory-bump .roster-hero__content>div:first-child>p::before{content:"";width:38px;height:1px;background:currentColor}
.directory-bump .roster-hero h1{font-size:clamp(5.5rem,14vw,13rem);line-height:.72;letter-spacing:-.09em;text-shadow:0 15px 55px rgba(0,0,0,.5)}
.directory-bump .roster-hero h1 em{margin-left:12%;color:var(--tm-gold);text-shadow:none}
.directory-bump .roster-hero__content>div:last-child{position:relative;padding:2rem;border-left:1px solid rgba(215,170,80,.25);background:linear-gradient(90deg,rgba(215,170,80,.045),transparent);backdrop-filter:blur(4px)}
.directory-bump .roster-hero__content>div:last-child>strong{-webkit-text-stroke:1px rgba(215,170,80,.75)}
.directory-bump .roster-hero__content>div:last-child>a{transition:color .3s,border-color .3s}.directory-bump .roster-hero__content>div:last-child>a:hover{color:#fff;border-color:#fff}
.directory-bump .roster-directory{padding:clamp(2rem,4vw,4rem) 0 clamp(6rem,10vw,10rem);background:#050708}
.directory-bump .roster-intro{align-items:start}.directory-bump .roster-intro h2{color:var(--tm-cream);font-size:clamp(3.2rem,7vw,7.2rem)}
.directory-bump .roster-intro>p{padding-top:1rem;color:#929990;font-size:1rem}.directory-bump .roster-intro span{color:var(--tm-gold)}
.directory-bump .roster-tools{top:72px;grid-template-columns:minmax(260px,1fr) minmax(0,2fr);margin-top:0;padding:9px;border-color:rgba(215,170,80,.2);border-radius:18px;background:rgba(5,7,8,.88);box-shadow:0 25px 70px rgba(0,0,0,.32);backdrop-filter:blur(24px) saturate(1.2)}
.directory-bump .roster-search{border-color:rgba(255,255,255,.1);border-radius:12px;background:#0d1113}.directory-bump .roster-search input{color:#fff}.directory-bump .roster-search kbd{border-radius:5px;background:#182026;color:#a8b2bd}
.directory-bump .roster-filters{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.directory-bump .roster-filters label{min-width:0;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:#0d1113}.directory-bump .roster-filters select{min-width:0;background:#0d1113;color:#f1eadb}
.directory-bump .roster-results{padding:1.8rem .25rem}.directory-bump .roster-results p{color:#838a82}.directory-bump .roster-results strong{color:var(--tm-gold)}.directory-bump .roster-results button{color:#aeb3ac}
.directory-bump .roster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;background:none}
.directory-bump .roster-card{--card-bg:#090d0f!important;--card-ink:#f1eadb!important;aspect-ratio:4/5;border:1px solid rgba(255,255,255,.09);border-radius:22px;background:#090d0f;box-shadow:0 18px 55px rgba(0,0,0,.18);transform:translateZ(0);transition:transform .55s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s;contain:layout paint;animation:tmCardIn .8s cubic-bezier(.16,1,.3,1) backwards}
.directory-bump .roster-card:nth-child(2){animation-delay:.07s}.directory-bump .roster-card:nth-child(3){animation-delay:.14s}.directory-bump .roster-card:nth-child(4){animation-delay:.21s}.directory-bump .roster-card:nth-child(5){animation-delay:.28s}.directory-bump .roster-card:nth-child(6){animation-delay:.35s}
.directory-bump .roster-card:hover{z-index:2;transform:translateY(-8px);border-color:rgba(215,170,80,.65);box-shadow:0 35px 90px rgba(0,0,0,.42),0 0 0 1px rgba(215,170,80,.12)}
.directory-bump .roster-card__portrait{filter:saturate(.7) contrast(1.06) brightness(.82);transition:transform 1.1s cubic-bezier(.16,1,.3,1),filter .5s;will-change:transform}
.directory-bump .roster-card__profile-link{position:absolute;z-index:5;inset:0}.directory-bump .roster-card__info{z-index:6;pointer-events:none}.directory-bump .roster-card__bottom ul{position:relative;z-index:7;pointer-events:auto}.directory-bump .roster-card__bottom li a{display:flex;align-items:center;gap:.5rem;color:inherit;text-decoration:none}.directory-bump .roster-card__bottom li span{display:inline!important;color:#fff!important;font:700 .72rem/1 var(--mono)!important;letter-spacing:.02em;text-transform:none;white-space:nowrap}.directory-bump .roster-card__bottom li:has(a){cursor:pointer;transition:border-color .25s,background .25s,transform .25s}.directory-bump .roster-card__bottom li:has(a):hover{border-color:#d7aa50;background:rgba(215,170,80,.16);transform:translateY(-2px)}
.directory-bump .roster-card__shade{inset:24% 0 0;background:linear-gradient(transparent 5%,rgba(5,7,8,.15) 25%,#080b0d 96%)}
.directory-bump .roster-card__motif{opacity:.1}.directory-bump .roster-card__number{border-color:rgba(255,255,255,.32);background:rgba(8,10,9,.38);backdrop-filter:blur(10px)}
.directory-bump .roster-card__info{left:1.4rem;right:1.4rem;bottom:1.4rem}.directory-bump .roster-card__info>p{color:var(--tm-gold)}
.directory-bump .roster-card__info h2{font-size:clamp(2.4rem,4vw,4.2rem);overflow-wrap:anywhere}.directory-bump .roster-card__bottom{padding-top:.8rem;border-top:1px solid rgba(255,255,255,.12)}
.directory-bump .roster-card__bottom li{min-height:34px;padding:.38rem .7rem;border-color:rgba(215,170,80,.48);background:rgba(5,7,8,.86);color:#fff;backdrop-filter:blur(8px)}.directory-bump .roster-card__bottom li img{display:block;box-sizing:border-box;flex:0 0 18px;width:18px!important;height:18px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;filter:brightness(0) saturate(100%) invert(73%) sepia(45%) saturate(720%) hue-rotate(358deg) brightness(94%) contrast(88%)!important;opacity:1!important}.directory-bump .roster-card__bottom li span{color:#fff;font-weight:700}.directory-bump .roster-card__bottom strong{color:#fff}.directory-bump .roster-card__bottom strong small{color:#aeb3ac}
.directory-bump .roster-card__bottom>b{background:var(--tm-gold);color:#0b0d0b;box-shadow:none;transition:transform .55s cubic-bezier(.2,.8,.2,1)}.directory-bump .roster-card__bottom>b img{display:block;width:25px;height:25px;object-fit:contain;filter:brightness(0)}.directory-bump .roster-card:hover .roster-card__bottom>b{transform:rotate(90deg)}
.directory-bump .roster-empty{border:1px solid rgba(215,170,80,.2);border-radius:22px;background:#090d0f}.directory-bump .roster-pagination button{background:#0d1113}.directory-bump .roster-contact{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 120%,rgba(215,170,80,.18),transparent 45%),#050708;border-top:1px solid rgba(215,170,80,.18)}
.directory-bump .roster-contact::before{content:"FENRIS";position:absolute;left:50%;top:50%;translate:-50% -50%;color:transparent;-webkit-text-stroke:1px rgba(215,170,80,.08);font:800 22vw/1 var(--display);pointer-events:none}.directory-bump .roster-contact .wrap{position:relative}.directory-bump .roster-contact a{border-radius:99px;transition:transform .3s,box-shadow .3s}.directory-bump .roster-contact a:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(215,170,80,.2)}
.fh-slide{will-change:opacity;transform:translateZ(0);transition:opacity .42s ease,visibility 0s linear .42s}.fh-slide.is-active{transition:opacity .42s ease,visibility 0s}.fh-slide__visual,.fh-slide__visual img{transform:translateZ(0);backface-visibility:hidden}.fh-slide__visual img{will-change:transform}.fh-slider__progress i.is-running{animation:none!important}
@keyframes tmOrbit{to{transform:rotate(360deg)}}@keyframes tmCardIn{from{opacity:0;translate:0 45px;filter:blur(8px)}to{opacity:1;translate:0 0;filter:blur(0)}}
@media(max-width:1100px){.directory-bump .roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-bump .roster-filters{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.directory-bump .roster-hero{min-height:auto;padding:6.5rem 0 2.75rem}.directory-bump .roster-pattern{width:95vw;right:-45vw;bottom:18%;opacity:.2}.directory-bump .roster-hero__content{grid-template-columns:1fr;gap:1.5rem}.directory-bump .roster-hero h1{font-size:clamp(4.3rem,22vw,6.2rem);line-height:.78}.directory-bump .roster-hero__content>div:last-child{padding:1rem 1.2rem}.directory-bump .roster-hero__content>div:last-child>strong{font-size:3.5rem}.directory-bump .roster-directory{padding:1.5rem 0 6rem}.directory-bump .roster-intro h2{font-size:clamp(2.8rem,13vw,4rem)!important}.directory-bump .roster-tools{position:relative;top:auto;grid-template-columns:1fr;border-radius:16px}.directory-bump .roster-filters{display:flex!important;grid-template-columns:none!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:2px}.directory-bump .roster-filters label{flex:0 0 76%;min-height:62px;scroll-snap-align:start}.directory-bump .roster-grid{grid-template-columns:1fr;gap:14px}.directory-bump .roster-card{min-height:0;aspect-ratio:4/5!important;border-radius:18px}.directory-bump .roster-card:hover{transform:none}.directory-bump .roster-card__bottom li span{font-size:.78rem!important}.directory-bump .roster-contact{padding:6rem 0}.directory-bump .roster-contact h2{font-size:clamp(3rem,14vw,4.8rem)}}
@media(prefers-reduced-motion:reduce){.directory-bump .roster-pattern{animation:none}.directory-bump .roster-card,.directory-bump .roster-card__portrait,.fh-slide{transition:none!important}}
