.sourcing-panel {
  margin-top: clamp(22px, 4vw, 52px);
  padding: clamp(22px, 5vw, 54px);
  border: 1px solid var(--line);
  border-radius: 20px;
  background: radial-gradient(ellipse at top right, #efe2cc, var(--paper2) 72%);
}
.sourcing-panel h2 { max-width: 24ch; margin-bottom: 14px; }
.sourcing-panel p { max-width: 72ch; color: var(--muted); }
.sourcing-panel p + p { margin-top: 9px; }
@media (prefers-reduced-motion: no-preference) {
  .studio-light-on {
    animation: satori-warm-reveal .85s cubic-bezier(.2,.7,.25,1) var(--light-delay, 0ms) both;
  }
  :is(.detail-grid, .project-example-grid, .category-grid, .collab-grid, .process-drawings) > :nth-child(2) { --light-delay: 90ms; }
  :is(.detail-grid, .project-example-grid, .category-grid) > :nth-child(3) { --light-delay: 180ms; }
  main :is(h1, h2).studio-light-on {
    animation-name: satori-heading-light;
    animation-duration: .95s;
  }
  @keyframes satori-warm-reveal {
    from { transform: translateY(9px); opacity: .68; box-shadow: 0 0 0 #cc9b5000; }
    42% { box-shadow: 0 4px 25px #c1883938; }
    to { transform: none; opacity: 1; box-shadow: 0 0 0 #cc9b5000; }
  }
  @keyframes satori-heading-light {
    from { opacity: .76; transform: translateY(7px); text-shadow: 0 0 0 transparent; }
    48% { text-shadow: 0 0 20px #d7a66070; }
    to { opacity: 1; transform: none; text-shadow: 0 0 0 transparent; }
  }
}

.wave-case { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); align-items: center; gap: clamp(18px, 4vw, 48px); }
.wave-case .kicker { margin-bottom: 8px; }
.wave-case img { display: block; width: 100%; height: auto; aspect-ratio: 5 / 3; object-fit: cover; object-position: center 52%; border-radius: 13px; }
@media (max-width: 680px) {
  .wave-case { grid-template-columns: minmax(0, 1fr); }
  .wave-case img { grid-row: 1; }
}

.sourcing-spotlight strong {
  color: #563817;
  font-weight: 750;
}

@media (prefers-reduced-motion: no-preference) {
  .sourcing-spotlight {
    position: relative;
    isolation: isolate;
    overflow: hidden;
  }

  .sourcing-spotlight::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background:
      radial-gradient(ellipse at 50% 0%, #fff2cb 0%, transparent 64%),
      linear-gradient(112deg, transparent 34%, #ffffffd9 50%, transparent 66%);
    opacity: 0;
  }

  .sourcing-spotlight.studio-light-on {
    animation: none;
  }

  .sourcing-spotlight.studio-light-on::before {
    content: "";
    animation: satori-spotlight-sweep 1.45s cubic-bezier(.22,.65,.28,1) both;
  }

  .sourcing-spotlight.studio-light-on strong {
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    border-radius: 3px;
    animation: satori-spotlight-emphasis 1.05s ease .48s both;
  }

  .sourcing-spotlight.studio-light-on p + p strong {
    animation-delay: .98s;
  }

  @keyframes satori-spotlight-sweep {
    from { opacity: 0; transform: translateX(-86%); }
    34% { opacity: 1; }
    to { opacity: 0; transform: translateX(86%); }
  }

  @keyframes satori-spotlight-emphasis {
    0%, 100% { background-color: transparent; box-shadow: 0 0 0 transparent; }
    36% { background-color: #f6dca3; box-shadow: 0 0 16px #e2a94780; }
  }
}
