.partners-main{padding-top:46px;padding-bottom:72px;min-height:calc(100vh - 190px)}
.partners-intro{max-width:760px;margin:0 0 40px}.partners-intro h1{font-size:clamp(36px,5vw,64px);line-height:1.05;letter-spacing:-.045em;margin:18px 0 20px}.partners-intro>p:not(.eyebrow){color:var(--muted)}.partners-intro .partners-disclosure{font-size:12px;padding-top:16px;border-top:1px solid var(--line)}
.partners-empty{padding:38px;border:1px dashed var(--line);border-radius:22px;background:var(--card)}.partners-empty h2{font-size:25px;max-width:560px}.partners-empty>p:last-child{color:var(--muted);font-size:14px}
.partner-profile{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:30px;margin-bottom:28px;scroll-margin-top:110px;min-width:0}.partner-profile-copy{max-width:800px}.partner-profile h2{font-size:clamp(25px,3vw,38px);overflow-wrap:anywhere;margin-bottom:18px}.partner-description{color:var(--muted);white-space:pre-line;overflow-wrap:anywhere;font-size:14px}.partner-profile .text-link{display:inline-block;margin:8px 0 18px;color:var(--ink)}
.partner-work{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.partner-work>a,.partner-work>figure{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:0;background:var(--soft);min-width:0}.partner-work img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#0f171f}.partner-work span,.partner-work figcaption{display:block;padding:12px 14px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.partner-work>a:hover{border-color:var(--cyan)}.partner-work>a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.partner-promotions{position:relative;z-index:1;max-width:1440px;margin:0 auto 40px;padding:0 5vw;display:flex;gap:16px;overflow-x:auto}.partner-rail{display:contents}.partner-promotion{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px;flex:0 0 240px;min-width:0}.partner-promotion .eyebrow{font-size:9px;margin-bottom:12px}.partner-promotion img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#0f171f;border-radius:9px}.partner-promotion h2{font-size:19px;line-height:1.2;margin:14px 0 10px;overflow-wrap:anywhere}.partner-promotion>p:not(.eyebrow){font-size:12px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.partner-promotion>.text-link{display:block;font-size:11px;margin-top:10px}
.partner-photo-dialog{width:min(1080px,94vw);max-height:92vh;padding:54px 24px 24px;border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--ink)}.partner-photo-dialog::backdrop{background:#040a12dc}.partner-photo-dialog>img{width:100%;max-height:65vh;object-fit:contain}.partner-photo-dialog>p{font-size:14px;color:var(--muted);overflow-wrap:anywhere}.partner-preview-dialog{width:min(1000px,94vw);padding:50px 22px 22px}.partner-preview-dialog .partner-profile{margin:12px 0 0}
@media(min-width:1840px){.partner-promotions{padding:0;margin:0;overflow:visible;position:static}.partner-rail{--rail-width:min(220px,calc((100vw - 1440px)/2 - 36px));display:grid;align-content:start;gap:16px;position:fixed;top:132px;bottom:20px;width:var(--rail-width);overflow-y:auto;scrollbar-width:thin;z-index:2}.partner-rail-left{left:max(12px,calc(50vw - 720px - var(--rail-width) - 24px))}.partner-rail-right{right:max(12px,calc(50vw - 720px - var(--rail-width) - 24px))}.partner-promotion{padding:14px;flex:none}.partner-promotion img{aspect-ratio:4/5}.partner-promotion h2{font-size:17px}}
@media(max-width:760px){.partners-main{padding-top:28px}.partner-profile{padding:22px 18px}.partner-work{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.partners-empty{padding:25px}.partner-photo-dialog{padding-left:14px;padding-right:14px}.partner-promotions{padding:0 18px}.partner-promotion{flex-basis:220px}}
@media(max-width:400px){.partner-work{grid-template-columns:1fr}}
/* Compact Discord slots, shared by both directories and every page's rails. */
.partners-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px}.partners-grid>.partners-empty{grid-column:1/-1}.partners-grid .partner-profile{padding:20px;margin:0;border-radius:18px}.partners-grid .partner-profile h2{font-size:23px;margin:10px 0}.partners-grid .partner-description{font-size:13px}.partner-photos{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.partner-photos summary{cursor:pointer;font-size:13px;font-weight:650}.partner-photos .partner-work{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.partner-photos .partner-work span{padding:9px;font-size:11px}
.discord-invite-card{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:14px;min-width:0}.discord-card-kicker{font-size:9px;font-weight:800;letter-spacing:.08em;margin:0 0 12px;color:var(--muted)}.discord-card-identity{display:flex;gap:11px;align-items:center;min-width:0}.discord-card-identity>div:last-child{min-width:0;flex:1}.discord-card-icon{width:46px;height:46px;flex:0 0 46px;border-radius:13px;background:#5865f2;display:grid;place-items:center;overflow:hidden;color:white;font-size:25px}.discord-card-icon img{width:46px!important;height:46px;aspect-ratio:auto!important;object-fit:cover!important;border-radius:0!important}.discord-card-identity h3{font-size:15px;line-height:1.25;margin:0 0 6px;overflow-wrap:anywhere}.discord-card-counts{display:flex;flex-wrap:wrap;gap:3px 10px;font-size:10px;color:var(--muted)}.discord-online{display:inline-block;width:6px;height:6px;border-radius:50%;background:#3ba55c;margin-right:3px}.discord-snapshot{font-size:9px;color:var(--muted);margin:10px 0}.discord-join{display:block;padding:9px 12px;text-align:center;background:#5865f2;color:#fff;border-radius:7px;font-size:12px;font-weight:750;margin-top:12px}.discord-join:hover{background:#4752c4}.discord-join:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.partner-promotion{padding:12px;flex-basis:250px}.partner-promotion .discord-invite-card{border:0;padding:0;background:transparent}.partner-promotion .eyebrow{margin:0 0 12px;font-size:9px}.partner-promotion .discord-snapshot{font-size:8px}.partner-promotion .text-link{font-size:10px;margin:12px 0 0}.partner-photo-cover{display:flex;align-items:center;gap:10px}.partner-photo-cover img{width:46px;height:46px;aspect-ratio:1;object-fit:cover;border-radius:10px}.partner-photo-cover h2{margin:0;font-size:15px}.partner-preview-dialog .partner-profile{max-width:500px;margin:12px auto}
.partner-logo-controls{margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:14px}.partner-logo-preview{display:block;width:96px;height:96px;object-fit:contain;margin:12px 0;border-radius:12px;background:#151b20}.partner-logo-preview[hidden]{display:none}
body[data-side-promotions]{--promo-base-width:1440px;--promo-main-width:min(var(--promo-base-width),calc(100vw - 552px))}body[data-promo-size=medium]{--promo-base-width:1080px}body[data-promo-size=small]{--promo-base-width:960px}
@media(min-width:1360px){body[data-side-promotions] footer{max-width:var(--promo-main-width);margin-left:auto;margin-right:auto}}
@media(min-width:1360px){body[data-side-promotions] main{max-width:var(--promo-main-width)}.partner-promotions{position:static;padding:0;margin:0;overflow:visible}.partner-rail{display:grid;align-content:start;gap:12px;position:fixed;top:132px;bottom:20px;width:224px;overflow-y:auto;scrollbar-width:thin;z-index:2}.partner-rail-left{left:max(12px,calc((100vw - var(--promo-main-width))/2 - 256px))}.partner-rail-right{right:max(12px,calc((100vw - var(--promo-main-width))/2 - 256px))}.partner-promotion{padding:12px}.partner-promotion img{aspect-ratio:1}.partner-promotion h2{font-size:15px}body[data-side-promotions] .partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1359px){.partner-promotions{position:relative;display:flex;overflow-x:auto;margin:0 auto 40px;padding:0 5vw}.partner-rail{display:contents;position:static}.partner-promotion{flex:0 0 250px}.partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.partners-grid{grid-template-columns:1fr}.partner-promotions{padding:0 18px}.partner-promotion{flex-basis:240px}}
@media(min-width:1760px){body[data-side-promotions] .partners-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
