/* A quiet resource directory, sharing the career page's navigation and footer. */
.career-resources-page .resource-directory {
  padding-top: 142px;
  padding-bottom: 94px;
}

.career-resources-page .resources-heading {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: end;
  padding: 66px 0 60px;
}

.career-resources-page .resources-heading h1 {
  font-family: var(--font-display);
  font-size: clamp(44px, 5.8vw, 80px);
  font-weight: 300;
  line-height: 1.25;
  letter-spacing: -.025em;
}

.career-resources-page .resources-heading > p {
  max-width: 26em;
  padding-bottom: 7px;
  color: #73777c;
  font-size: 18px;
  line-height: 1.8;
}

.career-resources-page .resources-list {
  list-style: none;
  padding: 0;
  margin: 0;
  border-top: 1px solid #b9bcbf;
}

.career-resources-page .resource-row {
  border-bottom: 1px solid #d3d6d8;
}

.career-resources-page .resource-entry {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 184px;
  align-items: start;
  gap: 28px;
  padding: 40px 0 42px;
}

.career-resources-page .resource-number {
  padding-top: 10px;
  color: #858a8e;
  font-size: 14px;
  line-height: 1.6;
  font-variant-numeric: tabular-nums;
}

.career-resources-page .resource-copy {
  min-width: 0;
}

.career-resources-page .resource-copy h3 {
  font-size: 30px;
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: -.015em;
  overflow-wrap: anywhere;
}
.career-resources-page .resource-title-with-logo { display: flex; align-items: center; gap: 12px; }
.career-resources-page .resource-tool-logo { flex: none; width: 32px; height: 32px; object-fit: contain; }

.career-resources-page .resource-description {
  margin-top: 12px;
  max-width: 40em;
  font-size: 16px;
  line-height: 1.85;
  color: #73777c;
  overflow-wrap: anywhere;
}

.career-resources-page .resource-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 23px;
  color: #73777c;
  font-size: 13px;
  line-height: 1.6;
  font-variant-numeric: tabular-nums;
}

.career-resources-page .resource-company-previews {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  width: 100%;
  max-width: 384px;
  list-style: none;
  margin: 25px 0 0;
  padding: 0;
}
.career-resources-page .resource-company-previews li {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  min-width: 0;
  font-size: 11px;
  line-height: 1.6;
  color: #73777c;
  text-align: center;
  overflow-wrap: anywhere;
}
.career-resources-page .resource-company-previews img,
.career-resources-page .resource-company-previews .recruitment-company-initial {
  flex: none;
  width: 100%;
  max-width: 64px;
  height: 28px;
  object-fit: contain;
}
.career-resources-page .resource-company-previews .recruitment-company-initial {
  display: grid;
  place-items: center;
  background: #f3f3f2;
  font-size: 20px;
}

.career-resources-page .resource-download {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  min-height: 48px;
  margin-top: 0;
  padding: 5px 0 13px;
  border-bottom: 1px solid #25262a;
  font-size: 16px;
  line-height: 1.6;
  white-space: nowrap;
  transition: color .18s, border-color .18s;
}

.career-resources-page .resource-download svg {
  flex: none;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.3;
  stroke-linecap: square;
  stroke-linejoin: miter;
}

.career-resources-page .resource-download:hover {
  color: #73777c;
  border-color: #73777c;
}

.career-resources-page .resources-back {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  margin-top: 34px;
  color: #73777c;
  font-size: 14px;
  line-height: 1.6;
}

.career-resources-page .resources-back:hover {
  color: #25262a;
  text-decoration: underline;
  text-underline-offset: 5px;
}

@media (max-width: 959px) {
  .career-resources-page .resource-directory { padding-top: 125px; padding-bottom: 72px; }
  .career-resources-page .resources-heading { gap: 35px; padding: 52px 0 46px; }
  .career-resources-page .resources-heading > p { font-size: 16px; }
  .career-resources-page .resource-entry { grid-template-columns: 36px minmax(0, 1fr) 148px; gap: 24px; }
  .career-resources-page .resource-copy h3 { font-size: 26px; }
}

@media (max-width: 700px) {
  .career-resources-page .resource-directory { padding-top: calc(98px + env(safe-area-inset-top, 0px)); padding-bottom: 46px; }
  .career-resources-page .resources-heading { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 34px 0 34px; }
  .career-resources-page .resources-heading h1 { font-size: clamp(38px, 10.5vw, 54px); }
  .career-resources-page .resources-heading > p { padding-bottom: 0; font-size: 15px; }
  .career-resources-page .resource-entry { grid-template-columns: 28px minmax(0, 1fr); gap: 0 14px; padding: 28px 0 30px; }
  .career-resources-page .resource-number { padding-top: 6px; font-size: 12px; }
  .career-resources-page .resource-copy h3 { font-size: 24px; }
  .career-resources-page .resource-description { font-size: 15px; margin-top: 10px; }
  .career-resources-page .resource-company-previews { gap: 6px; }
  .career-resources-page .resource-company-previews li { font-size: 10px; gap: 8px; }
  .career-resources-page .resource-company-previews img { max-width: 48px; height: 24px; }
  .career-resources-page .resource-tool-logo { width: 28px; height: 28px; }
  .career-resources-page .resource-meta { margin-top: 18px; font-size: 12px; }
  .career-resources-page .resource-download { grid-column: 2; justify-self: start; min-width: 154px; margin-top: 25px; padding-bottom: 11px; font-size: 15px; }
  .career-resources-page .resources-back { margin-top: 25px; font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .career-resources-page .resource-download { transition: none; }
}

/* Expandable resource modules. Native details works without JavaScript. */
.career-resources-page .resource-modules{border-top:1px solid #b9bcbf}
.career-resources-page .resource-module{border-bottom:1px solid #b9bcbf;scroll-margin-top:100px}
.career-resources-page .resource-module>summary{display:grid;grid-template-columns:64px minmax(0,1fr) 24px;align-items:center;gap:28px;padding:34px 0;list-style:none;cursor:pointer}
.career-resources-page .resource-module>summary::-webkit-details-marker{display:none}
.career-resources-page .resource-module>summary:focus-visible{outline:2px solid #327bd0;outline-offset:5px}
.career-resources-page .resource-module-number{font-size:14px;color:#858a8e;font-variant-numeric:tabular-nums}
.career-resources-page .resource-module>summary h2{font-size:32px;line-height:1.5;font-weight:400;margin:0}
.career-resources-page .resource-module-toggle{position:relative;width:20px;height:20px;color:#73777c}
.career-resources-page .resource-module-toggle::before,.career-resources-page .resource-module-toggle::after{content:"";position:absolute;background:currentColor;left:0;top:9px;width:20px;height:1px}
.career-resources-page .resource-module-toggle::after{transform:rotate(90deg)}
.career-resources-page .resource-module[open] .resource-module-toggle::after{transform:rotate(0deg);opacity:0}
.career-resources-page .resource-module .resources-list{border-top:1px solid #e1e3e4;margin-left:92px}
.career-resources-page .resource-module .resource-row:last-child{border-bottom:0}
.career-resources-page .resource-module .resource-entry{grid-template-columns:minmax(0,1fr) 184px;padding:28px 0 32px}
.career-resources-page .resource-module .resource-number{display:none}
.career-resources-page .resource-module .resource-copy h3{font-size:24px}
.career-resources-page .resource-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-width:0}
@media(max-width:700px){
 .career-resources-page .resource-module>summary{grid-template-columns:28px minmax(0,1fr) 20px;gap:14px;padding:24px 0}
 .career-resources-page .resource-module>summary h2{font-size:26px}
 .career-resources-page .resource-module-number{font-size:12px}
 .career-resources-page .resource-module .resources-list{margin-left:0}
 .career-resources-page .resource-module .resource-entry{grid-template-columns:minmax(0,1fr);gap:20px;padding:24px 0 28px}
 .career-resources-page .resource-module .resource-copy h3{font-size:22px}
 .career-resources-page .resource-actions{max-width:210px;width:100%}
 .career-resources-page .resource-module .resource-download{margin-top:0}
}

/* Match the service rows with restrained pointer and keyboard feedback. */
.career-resources-page .resource-module>summary{transition:background-color .24s ease}
.career-resources-page .resource-module>summary h2{transition:transform .24s ease}
.career-resources-page .resource-module-number{transition:color .24s ease}
.career-resources-page .resource-module-toggle{transition:transform .24s ease,color .24s ease}
.career-resources-page .resource-module-toggle::after{transition:transform .24s ease,opacity .24s ease}
@media(hover:hover) and (pointer:fine){
 .career-resources-page .resource-module>summary:hover{background-color:#f5f5f4}
 .career-resources-page .resource-module>summary:hover h2{transform:translateX(10px)}
 .career-resources-page .resource-module>summary:hover .resource-module-number{color:#25262a}
 .career-resources-page .resource-module>summary:hover .resource-module-toggle{color:#25262a;transform:scale(1.15)}
}
.career-resources-page .resource-module>summary:focus-visible{background-color:#f5f5f4}
.career-resources-page .resource-module>summary:focus-visible h2{transform:translateX(10px)}
.career-resources-page .resource-module>summary:focus-visible .resource-module-toggle{color:#25262a;transform:scale(1.15)}
@media(prefers-reduced-motion:reduce){
 .career-resources-page .resource-module>summary,
 .career-resources-page .resource-module>summary h2,
 .career-resources-page .resource-module-number,
 .career-resources-page .resource-module-toggle,
 .career-resources-page .resource-module-toggle::after{transition:none}
}
