.guests-page main{max-width:1240px;padding-top:58px;padding-bottom:90px}
.directory-intro{position:relative;max-width:900px;padding:40px 0 48px}
.directory-intro:before{content:"GUEST FILES";position:absolute;right:0;top:8px;color:rgba(116,20,31,.22);font:clamp(3.2rem,9vw,8rem)/1 "Bebas Neue",Impact,sans-serif;letter-spacing:.04em;white-space:nowrap;z-index:-1}
.directory-intro h1{margin:.15em 0 .18em;font:clamp(3.5rem,8vw,7.7rem)/.84 "Bebas Neue",Impact,sans-serif;letter-spacing:.015em;text-transform:uppercase;text-shadow:0 3px 0 #3e0a11,0 10px 35px rgba(0,0,0,.75)}
.directory-intro h1 span{display:block;color:#b8172b;margin-left:clamp(1.5rem,9vw,8rem)}
.directory-intro .lead{max-width:770px;color:#d8c9bd;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.65}
.directory-controls{display:grid;grid-template-columns:minmax(250px,1fr) minmax(0,1.35fr);gap:18px 30px;align-items:end;margin:0 0 42px;padding:0 0 22px;border-bottom:1px solid rgba(130,35,45,.58)}
.guest-search span{display:block;margin-bottom:8px;color:#b9a89e;font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.guest-search input{width:100%;min-height:52px;padding:12px 16px;border:1px solid rgba(130,35,45,.7);border-left:4px solid #b8172b;border-radius:0;background:rgba(5,6,8,.84);color:#f4eadd;font:1rem Inter,Arial,sans-serif;box-shadow:inset 0 0 24px rgba(120,10,24,.08)}
.guest-search input:focus{outline:2px solid rgba(184,23,43,.55);outline-offset:2px}
.guest-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:0}
.guest-filters button{min-height:42px;padding:9px 13px;border:0;border-bottom:2px solid #55212a;border-radius:0;background:transparent;color:#b9a89e;font-size:.83rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.guest-filters button:hover,.guest-filters button:focus-visible{color:#fff;border-color:#b8172b;outline:none}
.guest-filters button.is-active{color:#f4eadd;border-color:#d11f36;background:linear-gradient(180deg,transparent,rgba(139,18,35,.22))}
.directory-result-line{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:20px}
.directory-result-line p{margin:0;color:#917f77;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.directory-result-line button{border:0;background:transparent;color:#d6c0b1;text-decoration:underline;cursor:pointer}
.guest-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px;margin:0}
.guest-card{position:relative;min-width:0;padding:0 0 20px;background:transparent;border:0;border-bottom:1px solid rgba(122,45,53,.55);box-shadow:none;overflow:visible}
.guest-card:nth-child(3n+2){transform:translateY(16px)}
.guest-card:before{content:"";position:absolute;left:0;bottom:-1px;width:58px;height:3px;background:#b8172b;box-shadow:70px 0 0 -1px rgba(184,23,43,.45)}
.guest-card-media{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#08090b;clip-path:polygon(0 0,100% 0,100% 88%,94% 100%,0 100%)}
.guest-card-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(4,4,6,.72));pointer-events:none}
.guest-card-media img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.12) brightness(.83);transition:transform .3s ease,filter .3s ease}
.guest-card:hover .guest-card-media img,.guest-card:focus-within .guest-card-media img{transform:scale(1.035);filter:saturate(.96) contrast(1.12) brightness(.94)}
.guest-card-media--mark{display:grid;place-items:center;background:radial-gradient(circle at 70% 25%,rgba(157,22,41,.3),transparent 34%),linear-gradient(145deg,#1a0b10,#050608 72%);border-left:5px solid #8f1425}
.guest-card-media--mark:before{content:"BEHIND THE MASK";position:absolute;color:rgba(232,214,198,.11);font:clamp(1.4rem,3vw,2.6rem)/1 "Bebas Neue",Impact,sans-serif;letter-spacing:.1em;transform:rotate(-7deg)}
.guest-card-media--mark span{position:relative;z-index:1;color:#d7c7b8;font:clamp(3.4rem,6vw,5.4rem)/1 "Bebas Neue",Impact,sans-serif;letter-spacing:.04em;text-shadow:3px 3px 0 #5e0d19}
.guest-card-copy{padding:18px 4px 0}
.guest-card-copy .guest-org{margin:0 0 7px;color:#c0293e;font-size:.72rem;font-weight:900;letter-spacing:.12em;line-height:1.35;text-transform:uppercase}
.guest-card-copy h2{margin:0 0 7px;color:#f0e5da;font:clamp(1.5rem,2.5vw,2.05rem)/1.05 "Bebas Neue",Impact,sans-serif;letter-spacing:.025em}
.guest-card-copy>p:not(.guest-org){min-height:1.5em;margin:0 0 15px;color:#ad9e95;font-size:.94rem;line-height:1.5}
.guest-page-link{display:inline-block;color:#efe2d6;font-size:.78rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.guest-page-link:after{content:"";display:inline-block;width:30px;height:1px;margin:0 0 .25em 10px;background:#b8172b;transition:width .2s ease}
.guest-page-link:hover:after,.guest-page-link:focus-visible:after{width:50px}
.guest-card[hidden]{display:none}.guest-empty{margin:54px 0;padding:34px 0;border-top:1px solid rgba(122,45,53,.55);border-bottom:1px solid rgba(122,45,53,.55);text-align:center}.guest-empty h2{font:2.4rem/1 "Bebas Neue",Impact,sans-serif}
@media(max-width:1000px){.guest-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-card:nth-child(3n+2){transform:none}.guest-card:nth-child(even){transform:translateY(12px)}}
@media(max-width:760px){.guests-page main{padding-top:28px}.directory-intro{padding:30px 0 34px}.directory-intro:before{display:none}.directory-intro h1 span{margin-left:1.1rem}.directory-controls{grid-template-columns:1fr;gap:17px}.guest-filters{justify-content:flex-start}.directory-result-line{grid-column:1}.guest-directory-grid{grid-template-columns:1fr;gap:34px}.guest-card:nth-child(even){transform:none}.guest-card-media{aspect-ratio:16/10}.guest-card-copy h2{font-size:2rem}}
