/* Shared partner and collaborator directory. */
.network-directory-page { --directory-accent: #e4475b; }
.network-directory-page .inner-content { max-width: 1180px; margin-inline: auto; }
.network-directory-page .pro-profile-grid { grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); align-items: stretch; }
.network-directory-page .pro-profile-grid--single { max-width: 520px; margin-inline: auto; }
.network-directory-page .pro-profile-card { display:flex; flex-direction:column; padding:0; overflow:hidden; border:1px solid #30242b; border-radius:18px; background:linear-gradient(160deg,#18151a,#120e0e); box-shadow:0 14px 40px #0003; }
.network-directory-page .pro-profile-card__media { position:relative; display:grid; place-items:center; min-height:220px; padding:32px; background:radial-gradient(ellipse at center,#63223244,transparent 70%),#141010; border-bottom:1px solid #ffffff0a; }
.network-directory-page .pro-profile-card__media img { width:130px; height:130px; margin:0; object-fit:contain; filter:drop-shadow(0 8px 18px #0006); }
.network-directory-page .pro-profile-card__badge { position:absolute; top:16px; left:16px; padding:5px 10px; border:1px solid #803144; border-radius:6px; color:#ffb3bf; background:#27141c; font-size:10px; font-weight:800; letter-spacing:1.5px; }
.network-directory-page .pro-profile-card__body { display:flex; flex-direction:column; flex:1; padding:26px; }
.network-directory-page .pro-profile-card__body > small { color:#c87888; font-size:10px; letter-spacing:2px; }
.network-directory-page .pro-profile-card__body h2 { margin:10px 0 0; font-size:26px; line-height:1.25; }
.network-directory-page .pro-profile-card__actions { margin-top:auto; padding-top:22px; }
.network-directory-page .pro-directory__intro { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; color:#bdb7bf; }
.network-directory-page .pro-directory__intro b { color:#fff; }
.network-directory-page .pro-directory__intro small { color:#847982; letter-spacing:1px; }
.network-directory-page .pro-directory__intro i { display:none; }
.network-directory-page .pro-partner-cta__inner { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; padding:36px; border:1px solid #52232e; border-radius:18px; background:linear-gradient(120deg,#28141b,#151111); }
.network-directory-page .pro-kicker { color:#ef8193; }
.network-directory-page .pro-partner-cta h2 { margin:0; font-size:clamp(28px,4vw,44px); line-height:1.1; }
.network-directory-page .pro-partner-cta h2 span { color:#ec5c74; }
.network-directory-page .pro-empty { grid-column:1/-1; text-align:center; padding:50px 24px; border:1px dashed #57303d; border-radius:18px; background:#141116; }
.network-directory-page .pro-empty__icon { color:#ec5c74; font-size:32px; }
.network-directory-page .pro-empty small { color:#c87888; }
@media(max-width:650px) { .network-directory-page .pro-partner-cta__inner { grid-template-columns:1fr; gap:24px; padding:24px; } }

    .pro-profile-card {
      position: relative;
      isolation: isolate;
    }

    .pro-profile-card .pro-profile-card__overlay-link {
      position: absolute;
      inset: 0;
      z-index: 1;
      border-radius: inherit;
    }

    .pro-profile-card .pro-profile-card__actions {
      position: relative;
      z-index: 2;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      margin-top: 24px;
      padding-top: 20px;
      border-top: 1px solid rgb(255 255 255 / 8%);
    }

    .pro-profile-card .pro-profile-card__actions > a {
      box-sizing: border-box;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      min-height: 50px;
      padding: 12px 16px;
      border: 1px solid #303039;
      border-radius: 8px;
      background: #161111;
      color: #ede8e8;
      font-family: inherit;
      font-size: 13px;
      font-weight: 700;
      line-height: 1.4;
      text-decoration: none;
      transition:
        background 180ms ease,
        border-color 180ms ease,
        color 180ms ease;
    }

    .pro-profile-card .pro-profile-card__actions > a::before,
    .pro-profile-card .pro-profile-card__actions > a::after,
    .pro-partner-cta .partner-contact-btn::before,
    .pro-partner-cta .partner-contact-btn::after {
      content: none;
    }

    .pro-profile-card .pro-profile-card__actions > a:hover {
      background: #231b1c;
      border-color: #696978;
      color: #fff;
    }

    .pro-profile-card
    .pro-profile-card__actions > .pro-profile-card__detail {
      grid-column: 1 / -1;
      min-height: 56px;
      border-color: #792532;
      background: linear-gradient(100deg, #281217, #151115);
      color: #fff;
    }

    .pro-profile-card
    .pro-profile-card__actions > .pro-profile-card__detail:hover {
      background: linear-gradient(100deg, #411922, #211318);
      border-color: #e4475b;
    }

    .pro-profile-card
    .pro-profile-card__actions > .partner-discord-btn:hover {
      background: #381c1f;
      border-color: #dc717b;
    }

    .partner-btn-arrow {
      display: inline-flex;
      flex-shrink: 0;
      align-items: center;
      justify-content: center;
      width: 28px;
      height: 28px;
      border-radius: 6px;
      background: rgb(255 255 255 / 5%);
      color: #a8a8b5;
      font-size: 17px;
      line-height: 1;
      transition:
        background 180ms ease,
        color 180ms ease;
    }

    .pro-profile-card__detail .partner-btn-arrow {
      background: #a62c40;
      color: #fff;
    }

    .pro-profile-card__actions > a:hover > .partner-btn-arrow {
      background: #d6374e;
      color: #fff;
    }

    .pro-profile-card__actions > .partner-discord-btn:hover > .partner-btn-arrow {
      background: #f25866;
    }

    .pro-partner-cta .partner-contact-btn {
      box-sizing: border-box;
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
      min-height: 58px;
      margin-top: 22px;
      padding: 12px 14px 12px 22px;
      border: 1px solid #973044;
      border-radius: 8px;
      background: #1c1116;
      color: #fff;
      font-family: inherit;
      font-size: 14px;
      font-weight: 800;
      line-height: 1.4;
      text-decoration: none;
      transition:
        background 180ms ease,
        border-color 180ms ease;
    }

    .pro-partner-cta .partner-contact-btn .partner-btn-arrow {
      width: 34px;
      height: 34px;
      background: #ae2c42;
      color: #fff;
    }

    .pro-partner-cta .partner-contact-btn:hover {
      background: #30151e;
      border-color: #ef4a65;
    }

    .pro-partner-cta .partner-contact-btn:hover .partner-btn-arrow {
      background: #e13a55;
    }

    .pro-profile-card .pro-profile-card__actions > a:focus-visible,
    .pro-partner-cta .partner-contact-btn:focus-visible {
      outline: 3px solid #ff7187;
      outline-offset: 4px;
    }

    .pro-profile-card__body h2 {
      overflow-wrap: anywhere;
    }

    @media (max-width: 480px) {
      .pro-profile-card .pro-profile-card__actions {
        grid-template-columns: 1fr;
      }

      .pro-partner-cta .partner-contact-btn {
        width: 100%;
        gap: 14px;
      }
    }

    @media (prefers-reduced-motion: reduce) {
      .pro-profile-card .pro-profile-card__actions > a,
      .pro-partner-cta .partner-contact-btn,
      .partner-btn-arrow {
        transition: none;
      }
    }
  
.network-directory-page .pro-profile-card__actions > a { color:#f5f2f4 !important; }
.network-directory-page .pro-profile-card__actions > a:last-child:nth-child(2) { grid-column:1/-1; }
.network-directory-page .pro-profile-card__actions { margin-top:auto; border-top:0; }
