/* Local outline icons shared by the company pages; no icon font or script. */
.site-icon,
body.homepage svg.site-icon {
  display: inline-block;
  width: 1.125rem;
  height: 1.125rem;
  flex: 0 0 auto;
  vertical-align: -0.2em;
}

body.homepage .button .site-icon,
body.homepage .text-link .site-icon,
.btn .site-icon {
  width: 1.125rem;
  height: 1.125rem;
}

body.homepage .offer-number .site-icon,
body.homepage .onboarding-mark .site-icon,
body.homepage .campaign-path-mark .site-icon,
.promise-symbol .site-icon {
  width: 1.5rem;
  height: 1.5rem;
  vertical-align: middle;
}

body.homepage .message-avatar .site-icon {
  width: 1rem;
  height: 1rem;
}

body.homepage .extras-grid > div > .site-icon {
  width: 1.5rem;
  height: 1.5rem;
  color: var(--primary);
}

body.homepage .campaign-path-steps {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
}

body.homepage .campaign-path-steps .site-icon {
  width: 0.875rem;
  height: 0.875rem;
}

body.homepage .pricing-questions summary,
body.homepage .campaign-scope summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  list-style: none;
}

body.homepage .pricing-questions summary::-webkit-details-marker,
body.homepage .campaign-scope summary::-webkit-details-marker {
  display: none;
}

body.homepage details[open] > summary > .site-icon {
  transform: rotate(180deg);
}
