/* Completion uses the same graphite, orange and spacing as the survey. */
.success {
  padding: 0;
  text-align: left;
  overflow: hidden;
}
.success-banner {
  padding: 34px 36px 36px;
  background: #252d31;
  color: #fff;
  border-top: 4px solid var(--orange);
}
.success-status {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 23px;
  color: #fff0d9;
  font-size: .938rem;
  font-weight: 600;
}
.success-mark {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: none;
  border-radius: 50%;
  background: var(--orange);
  color: #252d31;
}
.success-mark .icon { width: 23px; height: 23px; stroke-width: 2; }
.success h2 {
  max-width: 27ch;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(1.75rem, 2.6vw, 2.15rem);
  font-weight: 600;
  line-height: 1.24;
  letter-spacing: -.025em;
  text-wrap: balance;
}
/* This heading receives programmatic focus for screen readers; it is not a control. */
#section-title:focus { outline: none; }
.success .success-banner p {
  max-width: 49ch;
  margin: 0;
  color: #e0e6e9;
  font-size: 1rem;
  line-height: 1.7;
}
.success-body { padding: 28px 36px 32px; }
.success .preview-notice {
  max-width: none;
  margin: 0;
  padding: 16px 18px;
  border-left: 3px solid #bbc5cb;
  border-radius: 0 6px 6px 0;
  background: #f3f5f6;
  color: #525d65;
  font-size: .938rem;
  line-height: 1.65;
}
.success-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 25px;
  padding-top: 24px;
  border-top: 1px solid var(--line);
}
.success-actions .primary { margin: 0; }
.is-complete .step-button.done:disabled { opacity: 1; }
.is-complete .step-button.done .num {
  color: #80440c;
  background: #fff0db;
  border-color: #edd5b5;
}
.side-photo img { object-position: var(--photo-position, 50% 50%); }
.side-photo.photo-service { --photo-position: 53% 50%; }
.side-photo.photo-recommendation { --photo-position: 62% 50%; }
.side-photo.photo-experience { --photo-position: 58% 50%; }
.side-photo.photo-permissions { --photo-position: 48% 50%; }
.side-photo.photo-complete { --photo-position: 65% 50%; }
@media (max-width: 780px) {
  .success-banner { padding: 27px 25px 30px; }
  .success-body { padding: 24px 25px 27px; }
  .success-status { margin-bottom: 21px; }
}
@media (max-width: 540px) {
  .success-banner { padding: 24px 22px 28px; }
  .success-body { padding: 22px; }
  .success h2 { font-size: 1.7rem; }
  .success .success-banner p, .success .preview-notice { font-size: .938rem; }
  .success-actions .primary { width: 100%; }
}
