.keyword-figure img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--color-navy-lighter);
  border-radius: var(--border-radius-lg);
}

.resource-inline-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-lg);
  margin: 1.25rem 0 2.5rem;
  padding: 1rem 1.1rem 1rem 1.35rem;
  background: linear-gradient(100deg, rgba(var(--gold-rgb), 0.14), rgba(9, 25, 45, 0.96) 42%, rgba(13, 37, 65, 0.96));
  border: 1px solid rgba(var(--gold-rgb), 0.38);
  border-left: 4px solid var(--color-gold);
  border-radius: var(--border-radius-lg);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.2);
}

.resource-inline-cta div { display: grid; gap: 0.2rem; }
.resource-inline-cta strong { color: var(--color-ivory, #fff4dc); font-size: var(--font-size-sm); }
.resource-inline-cta span { color: var(--color-gray-300); font-size: var(--font-size-xs); }
.resource-inline-cta a {
  flex: 0 0 auto;
  padding: 0.68rem 1rem;
  color: var(--color-navy-dark);
  background: var(--color-gold);
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
}
.resource-inline-cta a:hover { filter: brightness(1.08); transform: translateY(-1px); }

.keyword-figure figcaption a {
  white-space: nowrap;
}

.keyword-framework,
.keyword-bridge,
.keyword-comparison {
  display: grid;
  gap: var(--space-md);
  margin: 1.75rem 0 2.25rem;
}

.keyword-framework,
.keyword-bridge {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.keyword-comparison {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.keyword-card,
.keyword-bridge-step,
.keyword-example {
  padding: var(--space-lg);
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--color-navy-lighter);
  border-radius: var(--border-radius-lg);
}

.keyword-card {
  border-top: 4px solid var(--color-gold);
}

.keyword-card--gap {
  border-top-color: var(--color-brand-gray);
}

.keyword-card strong,
.keyword-bridge-step strong,
.keyword-example-label {
  display: block;
  margin-bottom: 0.6rem;
  color: var(--color-gold);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.keyword-card p,
.keyword-bridge-step p,
.keyword-example p {
  margin: 0;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-relaxed);
}

.keyword-example--strong {
  background: rgba(114, 176, 66, 0.08);
  border-color: rgba(114, 176, 66, 0.42);
}

.keyword-example--strong .keyword-example-label {
  color: var(--color-green-light);
}

.keyword-example-note {
  margin-top: -1rem;
  color: var(--color-gray-500);
  font-size: var(--font-size-xs);
}

.keyword-steps {
  display: grid;
  gap: var(--space-md);
  margin: 2rem 0 2.75rem;
  counter-reset: keyword-step;
}

.keyword-step {
  position: relative;
  padding: var(--space-lg) var(--space-lg) var(--space-lg) 4.5rem;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--color-navy-lighter);
  border-radius: var(--border-radius-lg);
  counter-increment: keyword-step;
}

.keyword-step::before {
  content: counter(keyword-step);
  position: absolute;
  top: var(--space-lg);
  left: var(--space-lg);
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  color: var(--color-navy-dark);
  background: var(--color-gold);
  border-radius: var(--border-radius-full);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
}

.keyword-step h3 {
  margin: 0 0 0.6rem;
  color: var(--color-white);
  font-size: var(--font-size-xl);
}

.keyword-step p:last-child {
  margin-bottom: 0;
}

.keyword-disclosure {
  margin: 2rem 0 2.75rem;
  padding: var(--space-xl);
  color: var(--color-gray-200);
  background: var(--bg-hero);
  border: 1px solid rgba(var(--gold-rgb), 0.35);
  border-radius: var(--border-radius-lg);
}

.keyword-disclosure strong {
  display: block;
  margin-bottom: 0.6rem;
  color: var(--color-gold);
}

.keyword-disclosure p {
  margin: 0;
}

.keyword-final-checklist {
  margin: 1.5rem 0 2.5rem;
  padding: var(--space-xl);
  background: var(--surface-card);
  border: 1px solid var(--glass-border);
  border-radius: var(--border-radius-xl);
}

.keyword-final-checklist li::marker {
  color: var(--color-gold);
  font-weight: var(--font-weight-bold);
}

@media (min-width: 901px) {
  .keyword-figure {
    width: min(920px, calc(100vw - 330px));
  }
}

@media (max-width: 760px) {
  .resource-inline-cta { align-items: stretch; flex-direction: column; }
  .resource-inline-cta a { align-self: flex-start; }
  .keyword-framework,
  .keyword-bridge,
  .keyword-comparison {
    grid-template-columns: 1fr;
  }

  .keyword-step {
    padding: 4.25rem var(--space-md) var(--space-md);
  }

  .keyword-step::before {
    top: var(--space-md);
    left: var(--space-md);
  }
}
