/* Prevent rotating decorative pseudo-elements from expanding the document width.
   `clip` does not create a scrolling container, preserving the sticky header. */
html, body {
  overflow-x: clip;
}

/* Custom Speech Therapy: utility color and rotating Elementor decoration. */
.s-blue {
  color: #07AAC5;
}

/* Add the class bf-scroll to the Elementor container/widget. */
.bf-scroll {
  position: relative;
  isolation: isolate;
  max-width: 100%;
}

.bf-scroll::before {
  content: "";
  position: absolute;
  inset: -10%;
  width: 120%;
  height: 120%;
  display: block;
  background-image: url("https://customspeechtherapy.ca/wp-content/uploads/2025/02/image_2025_02_15T00_17_17_550Z.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  animation: hch-bf-spin 25s linear infinite;
  pointer-events: none;
  z-index: -1;
}

.bf-scroll .elementor-widget-container {
  padding: 0;
}

@keyframes hch-bf-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .bf-scroll::before { animation: none; }
}
