/* ============================================================
   5 · Alliance For Cause — terracotta, portrait + copy/chips
   ============================================================ */
.afc { background: var(--c-terracotta); }

.afc__grid {
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: clamp(40px, 6vw, 80px);
  align-items: center;
}

/* rounded frame that hugs whatever image is uploaded — square logo,
   portrait cut-out or wide photo all fit without cropping */
.afc__media {
  position: relative;
  border: 1.4px solid rgba(250, 224, 203, .6);
  border-radius: var(--radius-lg);
  padding: clamp(14px, 1.8vw, 26px);
  display: grid;
  place-items: center;
}
.afc__media img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: calc(var(--radius-lg) - 10px);
}

.afc__intro {
  font-size: clamp(16px, 1.5vw, 18.5px);
  line-height: 1.75;
  color: var(--c-cream-lt);
}
.afc__intro strong, .afc__body strong { color: #fff; font-weight: 600; }
.afc__body { margin-top: 1.2em; }
.afc__body p {
  font-size: 15.5px;
  line-height: 1.85;
  color: var(--c-cream);
}
.afc__body p + p { margin-top: 1.1em; }

.afc__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  margin-top: 26px;
}
.afc__chips li {
  font-size: 13.5px;
  font-weight: 500;
  color: var(--c-cream-lt);
  border: 1px solid rgba(250, 224, 203, .5);
  border-radius: 999px;
  padding: 8px 18px;
}

.afc__closing {
  margin-top: 26px;
  font-size: 15.5px;
  line-height: 1.85;
  color: var(--c-cream);
}

.afc__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 26px;
  margin-top: clamp(28px, 3vw, 38px);
}
.afc__textlink {
  font-weight: 600;
  font-size: 15px;
  color: var(--c-cream-lt);
  text-decoration: none;
  border-bottom: 1.6px solid var(--c-cream-lt);
  padding-bottom: 3px;
  transition: color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease);
}
.afc__textlink:hover { color: #fff; border-color: #fff; }

@media (max-width: 900px) {
  .afc__grid { grid-template-columns: 1fr; gap: 44px; }
  .afc__media { width: min(440px, 100%); margin-inline: auto; }
  /* stacked: copy, chips and button centred under the centred section head */
  .afc__copy { text-align: center; }
  .afc__chips, .afc__actions { justify-content: center; }
}
