/* Content pages: the solutions, the trust center, the resource hub and the guides. */

.contentGrid {
  display: grid;
  gap: var(--sp4);
  margin: var(--sp5) 0;
  padding: 0;
  list-style: none;
}

@media (min-width: 600px) {
  .contentGrid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1024px) {
  .contentGrid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.contentCard h3 {
  margin-bottom: var(--sp2);
}

.contentCard p {
  margin: 0;
  color: var(--text-dim);
}

.contentCard p + p {
  margin-top: var(--sp3);
}

.contentSplit {
  display: grid;
  gap: var(--sp6);
  align-items: center;
}

@media (min-width: 1024px) {
  .contentSplit {
    grid-template-columns: 1fr 1fr;
  }
}

.contentShot {
  min-width: 0;
}

.contentShot .shotWeb {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
}

.contentActions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp3);
}

.contentList {
  margin: 0 0 var(--sp4);
  padding-left: 1.2em;
  color: var(--text-dim);
}

.contentList li {
  margin-bottom: var(--sp2);
}

.contentNote {
  margin: var(--sp4) 0;
}

.contentMeta {
  color: var(--text-faint);
  font-size: var(--fs-sm);
}

.resourceJump {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp3);
  margin-top: var(--sp5);
}

.resourceJump a {
  padding: var(--sp2) var(--sp4);
  border: 1px solid var(--accent-line);
  border-radius: var(--radius-pill);
  background: var(--accent-tint);
  font-weight: 700;
  text-decoration: none;
}

.resourceLead {
  margin: 0;
  color: var(--text-dim);
}

.resourceType {
  margin: 0 0 var(--sp2);
  color: var(--text-faint);
  font-size: var(--fs-xs);
  font-weight: 700;
}

.resourceFile {
  color: var(--text-faint);
}

.resourceHelp {
  margin: var(--sp4) 0 0;
  color: var(--text-dim);
}

.resourceLinks {
  margin: var(--sp3) 0 0;
  padding-left: 1.2em;
}

/* A resource card is one link: the title carries it, the whole card is the target; inner links stay on top. */
.resourceCard {
  position: relative;
}

.resourceCard:hover {
  border-color: var(--accent);
}

.resourceCard:has(h3 a:focus-visible) {
  outline: var(--focus-ring);
  outline-offset: var(--focus-offset);
}

.resourceCard h3 a {
  color: var(--text-primary);
  text-decoration: none;
}

.resourceCard h3 a:focus-visible {
  outline: 0;
}

.resourceCard h3 a::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--radius-lg);
}

.resourceCard h3 a:hover {
  color: var(--accent-btn-hover);
  text-decoration: underline;
}

.resourceCard .resourceFile a,
.resourceCard .resourceLinks a {
  position: relative;
  z-index: 1;
}

/* The answers are numbered; the last section before the footer keeps less air below it. */
.contentGrid:has(.contentAnswer) {
  counter-reset: answer;
}

.contentAnswer {
  counter-increment: answer;
}

.contentAnswer h3::before {
  content: counter(answer);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-bottom: var(--sp3);
  border-radius: 50%;
  background: var(--accent-btn);
  color: var(--on-accent);
  font-size: var(--fs-md);
  line-height: 1;
}

.contentLast {
  padding-bottom: var(--sp5);
}
