:root {
  --zrd-bg: #020b0f;
  --zrd-panel: #07141a;
  --zrd-panel-2: #0a1820;
  --zrd-line: rgba(143, 181, 199, .24);
  --zrd-muted: #8fa5b4;
  --zrd-white: #f5f8f8;
  --zrd-acid: #8cff00;
  --zrd-pink: #ff1673;
}

.zrd-kicker {
  margin: 0 0 12px;
  color: var(--zrd-acid);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .13em;
  line-height: 1.25;
  text-transform: uppercase;
}

.zrd-btn {
  align-items: center;
  background: rgba(5, 16, 21, .9);
  border: 1px solid var(--zrd-line);
  color: var(--zrd-white) !important;
  display: inline-flex;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 11px;
  font-weight: 900;
  gap: 28px;
  justify-content: space-between;
  letter-spacing: .08em;
  min-height: 50px;
  padding: 0 20px;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: border-color .18s ease, color .18s ease, transform .18s ease;
}

.zrd-btn:hover,
.zrd-btn:focus-visible {
  border-color: var(--zrd-pink);
  color: var(--zrd-pink) !important;
  transform: translateY(-2px);
}

.zrd-btn--acid {
  background: var(--zrd-acid);
  border-color: var(--zrd-acid);
  color: #031006 !important;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 0 100%);
}

.zrd-btn--acid:hover,
.zrd-btn--acid:focus-visible {
  background: var(--zrd-pink);
  border-color: var(--zrd-pink);
  color: #fff !important;
}

/* Team directory: stronger cards, useful recruiting state, no new page types. */
.zrd-teams-redesign .zch-team-feature-card,
.zrd-teams-redesign .zch-team-department-card {
  isolation: isolate;
  transition: border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}

/* The directory order is already communicated by layout; remove ornamental number tiles. */
.zrd-teams-redesign .zch-team-feature-card__number,
.zrd-teams-redesign .zch-team-department-card__number {
  display: none !important;
}

.zrd-teams-redesign .zch-team-feature-card:hover,
.zrd-teams-redesign .zch-team-department-card:hover {
  border-color: rgba(140, 255, 0, .58) !important;
  box-shadow: 0 22px 64px rgba(0, 0, 0, .28), inset 0 1px rgba(255, 255, 255, .03);
  transform: translateY(-5px);
}

.zrd-teams-redesign .zch-team-department-card:has(a[href$="/teams/streamers/"])::after,
.zrd-teams-redesign .zch-team-department-card:has(a[href$="/teams/deadlock/"])::after {
  background: var(--zrd-pink);
  color: #fff;
  content: "RECRUITING";
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  padding: 7px 10px;
  position: absolute;
  right: 14px;
  text-transform: uppercase;
  top: 14px;
  z-index: 5;
}

.zrd-deadlock-team .zch-team-profile__image img {
  object-position: center !important;
}

.zrd-deadlock-recruiting .zrd-streamer-recruiting__signal b {
  color: #fff;
  text-shadow: 3px 3px 0 var(--zrd-pink), -2px -2px 0 var(--zrd-acid);
}

/* Current team profiles: trim excess air while preserving the existing artwork. */
.zrd-team-redesign .zch-team-profile__hero {
  background-color: var(--zrd-bg);
  background-image:
    linear-gradient(115deg, rgba(255, 22, 115, .035), transparent 38%),
    radial-gradient(circle at 88% 24%, rgba(140, 255, 0, .06), transparent 30%);
}

@media (min-width: 901px) {
  .zrd-teams-redesign .zch-teams-feature,
  .zrd-teams-redesign .zch-teams-departments {
    padding-bottom: 64px !important;
    padding-top: 64px !important;
  }

  .zrd-team-redesign .zch-team-profile__hero {
    padding-top: 0 !important;
  }

  .zrd-team-redesign .zch-team-profile__hero-inner {
    min-height: 0 !important;
    padding-bottom: 48px !important;
    padding-top: 48px !important;
  }

  .zrd-team-redesign .zch-team-profile__hero-copy {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
  }

  /* Keep the Deadlock wordmark intact at 1440px and narrower desktop canvases. */
  .zrd-deadlock-team .zch-team-profile__hero-copy h1 {
    font-size: clamp(72px, 7.4vw, 108px) !important;
    hyphens: none !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    white-space: nowrap !important;
    word-break: normal !important;
  }

  .zrd-team-redesign .zch-team-profile__visual {
    height: 520px !important;
    min-height: 0 !important;
  }

  .zrd-team-redesign .zch-team-profile__image {
    height: 100% !important;
    object-fit: cover !important;
    width: 100% !important;
  }

  .zrd-team-redesign .zch-team-profile__story {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
  }

  .zrd-team-redesign .zch-team-profile__story-inner {
    min-height: 0 !important;
    padding-bottom: 72px !important;
    padding-top: 72px !important;
  }

  .zrd-team-redesign .zch-team-profile__roster-section,
  .zrd-team-redesign .zch-team-profile__honors {
    padding-bottom: 76px !important;
    padding-top: 76px !important;
  }

  .zrd-team-redesign .zch-team-profile__return {
    padding-bottom: 80px !important;
    padding-top: 80px !important;
  }
}

.zrd-team-redesign .zc-player-card {
  background: linear-gradient(180deg, rgba(9, 24, 31, .72), rgba(2, 10, 14, .98));
  overflow: hidden;
  position: relative;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.zrd-team-redesign .zc-player-card::after {
  background: linear-gradient(90deg, var(--zrd-pink), var(--zrd-acid));
  bottom: 0;
  content: "";
  height: 2px;
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  transform: scaleX(.25);
  transform-origin: left;
  transition: opacity .2s ease, transform .2s ease;
}

.zrd-team-redesign .zc-player-card:hover,
.zrd-team-redesign .zc-player-card:focus-within {
  border-color: rgba(140, 255, 0, .55) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .26);
  transform: translateY(-5px);
}

.zrd-team-redesign .zc-player-card:hover::after,
.zrd-team-redesign .zc-player-card:focus-within::after {
  opacity: 1;
  transform: scaleX(1);
}

/* Streamers: turn an empty state into an intentional recruiting page. */
.zrd-streamer-recruiting {
  align-items: stretch !important;
  background:
    linear-gradient(120deg, rgba(255, 22, 115, .12), transparent 42%),
    radial-gradient(circle at 12% 18%, rgba(140, 255, 0, .10), transparent 24%),
    var(--zrd-panel) !important;
  border: 1px solid var(--zrd-line) !important;
  display: grid !important;
  grid-template-columns: minmax(220px, .65fr) minmax(0, 1.35fr) !important;
  min-height: 420px;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
}

.zrd-streamer-recruiting::before,
.zrd-streamer-recruiting::after {
  content: "";
  pointer-events: none;
  position: absolute;
}

.zrd-streamer-recruiting::before {
  background-image: linear-gradient(rgba(137, 174, 191, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(137, 174, 191, .08) 1px, transparent 1px);
  background-size: 28px 28px;
  inset: 0;
  mask-image: linear-gradient(90deg, #000, transparent 70%);
}

.zrd-streamer-recruiting::after {
  background: var(--zrd-pink);
  height: 3px;
  left: 0;
  top: 0;
  width: 45%;
}

.zrd-streamer-recruiting__signal {
  align-items: center;
  border-right: 1px solid var(--zrd-line);
  display: flex;
  justify-content: center;
  min-height: 100%;
  position: relative;
}

.zrd-streamer-recruiting__signal i {
  border: 1px solid rgba(140, 255, 0, .28);
  border-radius: 50%;
  height: 170px;
  position: absolute;
  width: 170px;
}

.zrd-streamer-recruiting__signal i:nth-child(2) { height: 112px; width: 112px; }
.zrd-streamer-recruiting__signal i:nth-child(3) { height: 54px; width: 54px; }

.zrd-streamer-recruiting__signal b {
  color: var(--zrd-acid);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: clamp(24px, 4vw, 54px);
  font-weight: 950;
  letter-spacing: -.05em;
  position: relative;
  transform: rotate(-7deg);
  z-index: 2;
}

.zrd-streamer-recruiting__content {
  align-self: center;
  padding: clamp(38px, 6vw, 76px);
  position: relative;
  z-index: 2;
}

.zrd-streamer-recruiting__content h3 {
  color: var(--zrd-white) !important;
  font-size: clamp(42px, 6vw, 78px) !important;
  font-style: italic;
  letter-spacing: -.055em;
  line-height: .9 !important;
  margin: 0 0 24px !important;
  max-width: 820px;
  text-transform: uppercase;
}

.zrd-streamer-recruiting__content > p:not(.zrd-kicker) {
  color: #c1ccd3 !important;
  font-size: clamp(16px, 1.8vw, 21px) !important;
  line-height: 1.65 !important;
  margin: 0 0 25px !important;
  max-width: 720px;
}

.zrd-streamer-recruiting__content ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0 0 32px;
  padding: 0;
}

.zrd-streamer-recruiting__content li {
  border: 1px solid var(--zrd-line);
  color: var(--zrd-muted);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  padding: 9px 12px;
  text-transform: uppercase;
}

.zrd-streamer-recruiting__actions { display: flex; flex-wrap: wrap; gap: 10px; }

/* One dynamic FACEIT source of truth, summarized on the CS2 team page. */
.zrd-faceit-signal {
  background:
    linear-gradient(135deg, rgba(140, 255, 0, .07), transparent 38%),
    linear-gradient(315deg, rgba(255, 22, 115, .08), transparent 42%),
    var(--zrd-panel);
  border: 1px solid var(--zrd-line);
  margin-bottom: clamp(48px, 5vw, 72px) !important;
  margin-top: clamp(48px, 5vw, 72px) !important;
  overflow: hidden;
  position: relative;
}

.zrd-faceit-signal::before {
  background: linear-gradient(90deg, var(--zrd-acid), var(--zrd-pink));
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  top: 0;
  width: 55%;
}

.zrd-faceit-signal--fallback > div {
  padding: clamp(34px, 5vw, 64px);
}

.zrd-faceit-signal--fallback h2 {
  color: var(--zrd-white);
  font-size: clamp(38px, 5vw, 64px);
  font-style: italic;
  letter-spacing: -.055em;
  line-height: .95;
  margin: 0 0 18px;
  text-transform: uppercase;
}

.zrd-faceit-signal--fallback p:not(.zrd-kicker) {
  color: var(--zrd-muted);
  line-height: 1.65;
  margin: 0 0 24px;
}

.zrd-faceit-signal__head {
  align-items: end;
  border-bottom: 1px solid var(--zrd-line);
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .65fr);
  padding: clamp(30px, 4vw, 52px);
}

.zrd-faceit-signal__head h2,
.zrd-player-signal h2 {
  color: var(--zrd-white) !important;
  font-size: clamp(38px, 5vw, 68px) !important;
  font-style: italic;
  letter-spacing: -.055em;
  line-height: .92 !important;
  margin: 0 !important;
  text-transform: uppercase;
}

.zrd-faceit-signal__head > p,
.zrd-player-signal > header > p {
  color: var(--zrd-muted) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  margin: 0 !important;
}

.zrd-faceit-signal__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.zrd-faceit-signal__grid article {
  border-right: 1px solid var(--zrd-line);
  min-height: 175px;
  padding: 28px;
}

.zrd-faceit-signal__grid article:last-child { border-right: 0; }

.zrd-faceit-signal__grid span,
.zrd-player-signal__stats span,
.zrd-faceit-identity > span {
  color: var(--zrd-muted);
  display: block;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .1em;
  margin-bottom: 18px;
  text-transform: uppercase;
}

.zrd-faceit-signal__grid strong,
.zrd-player-signal__stats strong {
  color: var(--zrd-white);
  display: block;
  font-size: clamp(36px, 4vw, 58px);
  font-style: italic;
  letter-spacing: -.05em;
  line-height: .92;
}

.zrd-faceit-signal__grid strong i,
.zrd-player-signal__stats strong i { color: var(--zrd-pink); font-style: normal; }

.zrd-faceit-signal__grid small {
  color: var(--zrd-muted);
  display: block;
  font-size: 11px;
  margin-top: 14px;
}

.zrd-faceit-signal__grid .zrd-map-name { font-size: clamp(25px, 2.8vw, 42px); }

.zrd-form { display: flex; flex-wrap: wrap; gap: 5px; min-height: 54px; }
.zrd-form b {
  align-items: center;
  border: 1px solid var(--zrd-line);
  color: var(--zrd-muted);
  display: inline-flex;
  font-size: 15px;
  height: 36px;
  justify-content: center;
  width: 36px;
}
.zrd-form b.win { border-color: rgba(140, 255, 0, .5); color: var(--zrd-acid); }
.zrd-form b.loss { border-color: rgba(255, 22, 115, .55); color: var(--zrd-pink); }

.zrd-faceit-signal > footer {
  align-items: center;
  border-top: 1px solid var(--zrd-line);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  padding: 22px clamp(28px, 4vw, 52px);
}

.zrd-faceit-signal > footer > span {
  color: var(--zrd-muted);
  font-size: 11px;
}

/* Player profiles: remove reveal-state blank space and add a useful data panel. */
.zrd-player-redesign .zpp-data-rail {
  display: none !important;
}

.zrd-player-redesign .zch-player-overview,
.zrd-player-redesign .zch-player-story,
.zrd-player-redesign .zch-player-team,
.zrd-player-redesign .zch-player-return {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  visibility: visible !important;
}

.zrd-player-redesign .zch-player-hero {
  background-image:
    radial-gradient(circle at 84% 15%, rgba(140, 255, 0, .08), transparent 28%),
    linear-gradient(110deg, rgba(255, 22, 115, .06), transparent 42%);
}

.zrd-player-redesign .zch-player-hero h1 {
  font-size: clamp(50px, 6vw, 96px) !important;
  hyphens: none !important;
  letter-spacing: -.055em !important;
  line-height: .86 !important;
  max-width: 100% !important;
  overflow-wrap: normal !important;
  white-space: nowrap !important;
  word-break: normal !important;
}

/* Keep imported player socials readable inside the redesigned dossier hero. */
.zrd-player-redesign .zpp-social-link {
  background:
    linear-gradient(120deg, rgba(255, 22, 115, .12), transparent 52%),
    var(--zrd-panel) !important;
  border: 1px solid rgba(255, 22, 115, .72) !important;
  box-shadow: inset 3px 0 0 var(--zrd-pink), 0 12px 34px rgba(0, 0, 0, .22) !important;
  clip-path: none !important;
  color: var(--zrd-white) !important;
  text-shadow: none !important;
}

.zrd-player-redesign .zpp-social-link::before {
  color: var(--zrd-pink) !important;
  opacity: 1 !important;
}

.zrd-player-redesign .zpp-social-link span {
  color: var(--zrd-acid) !important;
  opacity: 1 !important;
}

.zrd-player-redesign .zpp-social-link strong {
  color: var(--zrd-white) !important;
  opacity: 1 !important;
}

.zrd-player-redesign .zpp-social-link:hover,
.zrd-player-redesign .zpp-social-link:focus-visible {
  background:
    linear-gradient(120deg, rgba(140, 255, 0, .14), transparent 52%),
    var(--zrd-panel-2) !important;
  border-color: var(--zrd-acid) !important;
  color: var(--zrd-white) !important;
}

@media (min-width: 901px) {
  .zrd-player-redesign .zch-player-hero { min-height: 620px !important; }
  .zrd-player-redesign .zch-player-overview { min-height: 0 !important; padding-bottom: 74px !important; padding-top: 74px !important; }
  .zrd-player-redesign .zch-player-story { min-height: 0 !important; padding-bottom: 92px !important; padding-top: 92px !important; }
  .zrd-player-redesign .zch-player-team { min-height: 0 !important; padding-bottom: 96px !important; padding-top: 96px !important; }
}

.zrd-player-signal {
  background:
    linear-gradient(130deg, rgba(255, 22, 115, .10), transparent 32%),
    linear-gradient(310deg, rgba(140, 255, 0, .08), transparent 38%),
    var(--zrd-panel);
  border: 1px solid var(--zrd-line);
  margin-bottom: clamp(55px, 7vw, 94px) !important;
  margin-top: clamp(55px, 7vw, 94px) !important;
  opacity: 1 !important;
  overflow: hidden;
  position: relative;
  transform: none !important;
}

.zrd-player-signal::before {
  background: var(--zrd-pink);
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  top: 0;
  width: 42%;
}

.zrd-player-signal > header {
  align-items: end;
  border-bottom: 1px solid var(--zrd-line);
  display: grid;
  gap: 30px;
  grid-template-columns: 1fr minmax(280px, .62fr);
  padding: clamp(28px, 4vw, 48px);
}

.zrd-player-signal__body {
  display: grid;
  grid-template-columns: minmax(270px, .75fr) minmax(0, 1.25fr);
}

.zrd-faceit-identity {
  border-right: 1px solid var(--zrd-line);
  padding: clamp(28px, 4vw, 48px);
}

.zrd-faceit-identity strong {
  color: var(--zrd-white);
  display: block;
  font-size: clamp(32px, 4vw, 52px);
  font-style: italic;
  letter-spacing: -.05em;
  line-height: 1;
  margin-bottom: 9px;
  text-transform: uppercase;
}

.zrd-faceit-identity small {
  color: var(--zrd-acid);
  display: block;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 10px;
  letter-spacing: .08em;
  margin-bottom: 28px;
  text-transform: uppercase;
}

.zrd-player-signal__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.zrd-player-signal__stats article { border-right: 1px solid var(--zrd-line); padding: clamp(26px, 3vw, 42px); }
.zrd-player-signal__stats article:last-child { border-right: 0; }

@media (max-width: 900px) {
  .zrd-team-redesign .zch-team-profile__hero {
    padding-top: 0 !important;
  }
  .zrd-team-redesign .zch-team-profile__hero-inner {
    min-height: 0 !important;
    padding-bottom: 38px !important;
    padding-top: 38px !important;
  }
  .zrd-team-redesign .zch-team-profile__hero-copy {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
  }
  .zrd-team-redesign .zch-team-profile__story {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
  }
  .zrd-team-redesign .zch-team-profile__story-inner {
    min-height: 0 !important;
    padding-bottom: 58px !important;
    padding-top: 58px !important;
  }
  .zrd-team-redesign .zch-team-profile__roster-section,
  .zrd-team-redesign .zch-team-profile__honors,
  .zrd-team-redesign .zch-team-profile__return {
    padding-bottom: 62px !important;
    padding-top: 62px !important;
  }
  .zrd-streamer-recruiting { grid-template-columns: 1fr !important; }
  .zrd-streamer-recruiting__signal { border-bottom: 1px solid var(--zrd-line); border-right: 0; min-height: 210px; }
  .zrd-faceit-signal__head,
  .zrd-player-signal > header { align-items: start; grid-template-columns: 1fr; }
  .zrd-faceit-signal__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zrd-faceit-signal__grid article:nth-child(2) { border-right: 0; }
  .zrd-faceit-signal__grid article:nth-child(-n+2) { border-bottom: 1px solid var(--zrd-line); }
  .zrd-player-signal__body { grid-template-columns: 1fr; }
  .zrd-faceit-identity { border-bottom: 1px solid var(--zrd-line); border-right: 0; }
}

@media (max-width: 620px) {
  .zrd-player-redesign .zch-player-hero h1 {
    font-size: clamp(42px, 11.2vw, 58px) !important;
  }
  .zrd-teams-redesign .zch-team-feature-card:hover,
  .zrd-teams-redesign .zch-team-department-card:hover,
  .zrd-team-redesign .zc-player-card:hover { transform: none; }
  .zrd-streamer-recruiting__content { padding: 34px 22px 42px; }
  .zrd-streamer-recruiting__content h3 { font-size: clamp(38px, 13vw, 58px) !important; }
  .zrd-streamer-recruiting__content ul { align-items: stretch; flex-direction: column; }
  .zrd-streamer-recruiting__actions { align-items: stretch; flex-direction: column; }
  .zrd-streamer-recruiting__actions .zrd-btn { width: 100%; }
  .zrd-faceit-signal,
  .zrd-player-signal { margin-left: 16px !important; margin-right: 16px !important; width: auto !important; }
  .zrd-faceit-signal__head,
  .zrd-player-signal > header { padding: 30px 22px; }
  .zrd-faceit-signal__head h2,
  .zrd-player-signal h2 { font-size: clamp(34px, 12vw, 51px) !important; }
  .zrd-faceit-signal__grid { grid-template-columns: 1fr; }
  .zrd-faceit-signal__grid article,
  .zrd-faceit-signal__grid article:nth-child(2) { border-bottom: 1px solid var(--zrd-line); border-right: 0; min-height: 145px; }
  .zrd-faceit-signal__grid article:last-child { border-bottom: 0; }
  .zrd-faceit-signal > footer { align-items: stretch; flex-direction: column; }
  .zrd-faceit-signal > footer .zrd-btn { width: 100%; }
  .zrd-player-signal__stats { grid-template-columns: 1fr; }
  .zrd-player-signal__stats article { border-bottom: 1px solid var(--zrd-line); border-right: 0; }
  .zrd-player-signal__stats article:last-child { border-bottom: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .zrd-btn,
  .zrd-teams-redesign .zch-team-feature-card,
  .zrd-teams-redesign .zch-team-department-card,
  .zrd-team-redesign .zc-player-card { transition: none !important; }
}
