html { scroll-padding-top: calc(var(--header-height, 64px) + 24px); }
.header-slot { position: relative; z-index: 30; }
.site-header.is-fixed {
  position: fixed;
  inset: 0 0 auto;
  z-index: 30;
  box-shadow: 0 5px 24px rgb(74 64 56 / .1);
  animation: header-enter 280ms cubic-bezier(.22, 1, .36, 1) both;
}
@keyframes header-enter {
  from { transform: translateY(-16px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}
.button.button--gradient {
  background-image: linear-gradient(105deg, var(--copper) 0%, var(--peach) 50%, var(--copper) 100%);
  background-size: 200% 100%;
  background-position: 0% 50%;
  transition: background-position 550ms cubic-bezier(.22, 1, .36, 1), box-shadow 250ms ease;
}
.button.button--gradient:hover, .button.button--gradient:focus-visible {
  background-position: 100% 50%;
  box-shadow: 0 4px 14px rgb(160 93 51 / .16);
}
.button.button--gradient:active { box-shadow: none; }
.review-track.is-marquee { scroll-snap-type: none; scroll-behavior: auto; overflow-anchor: none; }
.review-group { display: flex; flex: none; gap: 16px; }
.review-group .review { scroll-snap-align: none; }
.reviews-pause {
  display: block;
  margin: 24px auto 0;
  padding: 6px 12px;
  border: 1px solid rgb(249 238 229 / .4);
  border-radius: 200px;
  background: transparent;
  color: var(--cream);
  font-size: 12px;
  line-height: 1.6;
}
.reviews-pause:hover, .reviews-pause[aria-pressed="true"] { background: rgb(249 238 229 / .12); }
.reviews-pause:focus-visible, .review-track:focus-visible { outline-color: var(--cream); outline-offset: -3px; }
@media (max-width: 760px) {
  .review-group > .review:first-child { display: none; }
  /* The mobile Figma frame retains its single row of reviews. */
}
@property --donut-fill {
  syntax: '<number>';
  inherits: false;
  initial-value: 0;
}
.survey-donut.meter-motion {
  background: conic-gradient(var(--terracotta-600) calc(var(--donut-fill) * 1%),var(--cream-200) 0);
}
.survey-donut.meter-motion.meter-revealed {
  animation: donut-fill 1300ms cubic-bezier(.22,1,.36,1) var(--meter-delay,0ms) both;
}
@keyframes donut-fill {
  from { --donut-fill: 0; }
  to { --donut-fill: var(--value); }
}
.meter.meter-motion > span { transform-origin: left center; transform: scaleX(0); }
.meter.meter-motion.meter-revealed > span {
  animation: meter-fill 1100ms cubic-bezier(.22,1,.36,1) var(--meter-delay,0ms) both;
}
@keyframes meter-fill {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}
@media (prefers-reduced-motion: reduce) {
  .survey-donut.meter-motion { animation: none; --donut-fill: var(--value); }
  .meter.meter-motion > span { animation: none; transform: none; }
  .site-header.is-fixed { animation: none; }
  .button.button--gradient { transition: none; }
  .reviews-pause { display: none; }
}
