/* Blue Llama Cupcakes — public page (v1.3)
   Mobile first. Matches bluellama.co.uk: Clean Blue hero, Vastago Grotesk headings,
   Libre Franklin body, 4px-radius Brandeis Blue buttons, navy chevron accents.
   Brand: Brandeis Blue #015CFA · Cetacean Blue #00113A · Lime #AAF343 · Cream #F9F1E7 · Clean Blue #E8F2FE */

/* ---------- The site's own furniture, on cupcake pages only ---------- */

/* The webinar notification strip. Hidden here so the page opens on the greeting. */
body.blc-cupcake-page .bl_banner { display: none !important; }

/* The HubSpot chat bubble. These pages have one button and it is not this one. */
body.blc-no-chat #hubspot-messages-iframe-container,
body.blc-no-chat .hs-messages-widget-open,
body.blc-no-chat #hubspot-conversations-inline-parent { display: none !important; }

.blc-page {
  --blc-blue: #015CFA;
  --blc-blue-dark: #0150DC;
  --blc-navy: #00113A;
  --blc-lime: #AAF343;
  --blc-cream: #F9F1E7;
  --blc-light: #E8F2FE;
  --blc-ink: #00113A;
  --blc-ink-soft: #555555;
  --blc-rule: #D3E1F5;
  --blc-container: 880px;
  --blc-gutter: 20px;

  /* Set inline from settings */
  --blc-top: 108px;
  --blc-zoom: 1;

  /* Height of the white bar behind the site header on phones */
  --blc-strip: 72px;

  /* Type — override these in Cupcakes → Settings → Custom CSS */
  --blc-greeting-size: 40px;
  --blc-heading-size: 36px;
  --blc-sub-size: 18px;
  --blc-button-size: 18px;
  --blc-gap-greeting: 18px;

  font-family: 'Libre Franklin', system-ui, -apple-system, 'Segoe UI', sans-serif;
  color: var(--blc-ink);
  background: #fff;
  overflow-x: clip;
  -webkit-font-smoothing: antialiased;
}
.blc-page *, .blc-page *::before, .blc-page *::after { box-sizing: border-box; }
.blc-page :where(p, h1, h2, ul, li) { margin: 0; padding: 0; }
.blc-page :where(ul) { list-style: none; }
.blc-page :where(img, svg) { display: block; }

.blc-container {
  width: 100%;
  max-width: var(--blc-container);
  margin: 0 auto;
  padding-left: var(--blc-gutter);
  padding-right: var(--blc-gutter);
}

/* Full-bleed bands even inside a constrained theme container */
.blc-hero, .blc-contact, .blc-booking {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* ---------- Hero ---------- */
/* On phones the top of this band is white, so the site's logo and burger read as a
   normal header bar rather than merging into the greeting. A hairline closes it off.
   Desktop keeps the plain Clean Blue fill. */
.blc-hero {
  position: relative;
  background:
    linear-gradient(to bottom,
      #fff 0,
      #fff calc(var(--blc-strip) - 1px),
      var(--blc-rule) calc(var(--blc-strip) - 1px),
      var(--blc-rule) var(--blc-strip),
      var(--blc-light) var(--blc-strip));
  padding: calc(var(--blc-strip) + 22px) 0 40px;
  isolation: isolate;
}
.blc-hero::before {
  /* the brand lattice, very faint, drifting in from the right like the homepage */
  content: "";
  position: absolute;
  inset: var(--blc-strip) 0 0 auto;
  width: min(60vw, 560px);
  background: url("data:image/svg+xml,%3Csvg%20width=%22255%22%20height=%22255%22%20viewBox=%220%200%20255%20255%22%20fill=%22none%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%20%3Crect%20x=%2246.6689%22%20y=%22120.355%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%2046.6689%20120.355)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20y=%22167.024%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%200%20167.024)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2249.498%22%20y=%22131.669%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%2049.498%20131.669)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%222.8291%22%20y=%2285%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%202.8291%2085)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22131.669%22%20y=%22120.355%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20131.669%20120.355)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2285%22%20y=%22167.024%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%2085%20167.024)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22134.498%22%20y=%22131.669%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20134.498%20131.669)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2287.8291%22%20y=%2285%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%2087.8291%2085)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22131.669%22%20y=%22205.355%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20131.669%20205.355)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2285%22%20y=%22252.024%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%2085%20252.024)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22134.498%22%20y=%22216.669%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20134.498%20216.669)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2287.8291%22%20y=%22170%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%2087.8291%20170)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22216.669%22%20y=%22205.355%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20216.669%20205.355)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22170%22%20y=%22252.024%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20170%20252.024)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22219.498%22%20y=%22216.669%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20219.498%20216.669)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22172.829%22%20y=%22170%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20172.829%20170)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22216.669%22%20y=%22120.355%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20216.669%20120.355)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22170%22%20y=%22167.024%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20170%20167.024)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22219.498%22%20y=%22131.669%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20219.498%20131.669)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22172.829%22%20y=%2285%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20172.829%2085)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22216.669%22%20y=%2235.3555%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20216.669%2035.3555)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22170%22%20y=%2282.0244%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20170%2082.0244)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22219.498%22%20y=%2246.6689%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20219.498%2046.6689)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22172.829%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20172.829%200)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22131.669%22%20y=%2235.3555%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%20131.669%2035.3555)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2285%22%20y=%2282.0244%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%2085%2082.0244)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%22134.498%22%20y=%2246.6689%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%20134.498%2046.6689)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2287.8291%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%2087.8291%200)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2246.6689%22%20y=%2235.3555%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%2046.6689%2035.3555)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20y=%2282.0244%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%200%2082.0244)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2249.498%22%20y=%2246.6689%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%2049.498%2046.6689)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%222.8291%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%202.8291%200)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2246.6697%22%20y=%22205.356%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%2046.6697%20205.356)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20y=%22252.025%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(-45%200%20252.025)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%2249.498%22%20y=%22216.67%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%2049.498%20216.67)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3Crect%20x=%222.8291%22%20y=%22170.001%22%20width=%2250%22%20height=%224%22%20transform=%22rotate(45%202.8291%20170.001)%22%20fill=%22%2300113A%22%20fill-opacity=%22.055%22/%3E%20%3C/svg%3E") right top / 255px 255px repeat;
  -webkit-mask-image: linear-gradient(to left, #000 30%, transparent);
  mask-image: linear-gradient(to left, #000 30%, transparent);
  pointer-events: none;
  z-index: -1;
}
.blc-hero .blc-container { position: relative; }

.blc-greeting {
  font-family: 'Caveat', 'Bradley Hand', 'Segoe Script', cursive;
  font-weight: 700;
  font-size: var(--blc-greeting-size);
  line-height: 1.1;
  color: var(--blc-blue);
  margin-bottom: var(--blc-gap-greeting);
  letter-spacing: -0.005em;
  display: flex;
  align-items: center;
  gap: 0.28em;
}
/* The wave sits after the name so the greeting and the heading share a left edge. */
.blc-wave {
  display: inline-block;
  font-family: 'Apple Color Emoji', 'Segoe UI Emoji', 'Noto Color Emoji', sans-serif;
  font-size: 0.82em;
  line-height: 1;
  transform-origin: 72% 78%;
  animation: blc-wave 2.6s ease-in-out infinite;
}
@keyframes blc-wave {
   0%   { transform: rotate(0deg); }
   6%   { transform: rotate(13deg); }
  12%   { transform: rotate(-9deg); }
  18%   { transform: rotate(13deg); }
  24%   { transform: rotate(-7deg); }
  30%   { transform: rotate(0deg); }
 100%   { transform: rotate(0deg); }
}

.blc-page h1.blc-heading {
  font-family: 'Vastago Grotesk', 'Libre Franklin', system-ui, sans-serif;
  font-size: var(--blc-heading-size);
  line-height: 1.08;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--blc-navy);
  text-wrap: balance;
}
.blc-sub {
  margin-top: 12px;
  font-size: var(--blc-sub-size);
  line-height: 1.5;
  color: var(--blc-ink-soft);
  max-width: 44ch;
}

/* ---------- Video ---------- */
.blc-video-frame {
  position: relative;
  margin-top: 26px;
}
.blc-video {
  --blc-ar-fallback: 1.7778;
  position: relative;
  z-index: 1;
  width: min(100%, calc(min(62vh, 600px) * var(--blc-ar, var(--blc-ar-fallback))));
  margin: 0 auto;
  aspect-ratio: var(--blc-ar, var(--blc-ar-fallback));
  background: var(--blc-navy);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 18px 44px rgba(0, 17, 58, .18), 0 2px 6px rgba(0, 17, 58, .10);
}
/* A whisker of scale hides any last hairline of letterboxing inside the player. */
.blc-video iframe, .blc-video video {
  position: absolute; inset: 0;
  z-index: 2;
  width: 100%; height: 100%;
  border: 0; display: block;
  transform: scale(var(--blc-zoom));
  transform-origin: center;
}

/* Poster, shown until someone presses play */
/* An uploaded file playing in our own page: one tap, no third-party player. */
.blc-video--native video.blc-native {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  background: var(--blc-navy);
  z-index: 1;
}
.blc-video--native.blc-video--live video.blc-native { object-fit: contain; }

.blc-video-launch {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  padding: 0; margin: 0; border: 0;
  background: var(--blc-navy);
  cursor: pointer;
  display: block;
  -webkit-appearance: none; appearance: none;
}
/* The theme's button:hover outranks a lone class, so pin the background in every
   state. Over an uploaded file the launch layer must be see-through, or the
   navy hides the picture; and once pressed it has to go, so honour [hidden]
   despite the display:block above. */
.blc-video .blc-video-launch,
.blc-video .blc-video-launch:hover,
.blc-video .blc-video-launch:focus,
.blc-video .blc-video-launch:active { background: var(--blc-navy); border: 0; box-shadow: none; color: inherit; }
.blc-video .blc-video-launch--native,
.blc-video .blc-video-launch--native:hover,
.blc-video .blc-video-launch--native:focus,
.blc-video .blc-video-launch--native:active { background: transparent; z-index: 2; }
.blc-video .blc-video-launch[hidden] { display: none; }
.blc-poster {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}
.blc-play-btn {
  position: absolute;
  left: 50%; top: 50%;
  width: 76px; height: 76px;
  margin: -38px 0 0 -38px;
  pointer-events: none;
  animation: blc-pulse 4s ease-in-out infinite;
  filter: drop-shadow(0 6px 18px rgba(0, 17, 58, .35));
}
.blc-play-btn svg { width: 100%; height: 100%; display: block; }
/* See-through disc with a soft ring, solid arrow — reads as a button without hiding a face. */
.blc-play-disc { fill-opacity: .6; stroke: #fff; stroke-opacity: .5; stroke-width: 2; }
.blc-video-launch:hover .blc-play-disc { fill-opacity: .82; stroke-opacity: .8; }
.blc-video-launch:hover .blc-play-btn { animation-play-state: paused; transform: scale(1.06); }
.blc-video-launch:focus-visible { outline: 3px solid var(--blc-blue); outline-offset: 3px; }
@keyframes blc-pulse {
   0%  { transform: scale(1); }
  50%  { transform: scale(1.12); }
 100%  { transform: scale(1); }
}

.blc-video--placeholder {
  background: linear-gradient(135deg, #0A2154 0%, #00113A 70%);
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
  color: rgba(255,255,255,.75);
}
.blc-video--placeholder p { font-size: 15px; letter-spacing: 0.02em; }
.blc-video--placeholder .blc-play-btn { position: static; margin: 0; width: 64px; height: 64px; }

/* Brand chevrons, over the corners of the video, drifting like the homepage pair */
.blc-chev {
  position: absolute;
  z-index: 3;
  width: 28px;
  height: 35px;
  pointer-events: none;
  animation: blc-drift 9s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
.blc-chev--tl { top: -13px; left: -11px; }
.blc-chev--br { right: -13px; bottom: -13px; }
@keyframes blc-drift {
   0%  { transform: translateX(0); }
  35%  { transform: translateX(11px); }
 100%  { transform: translateX(0); }
}

/* ---------- Button ---------- */
.blc-action { margin-top: 24px; }
.blc-page a.blc-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  min-height: 56px;
  padding: 12px 18px 12px 24px;
  background: var(--blc-blue);
  color: #fff !important;
  text-decoration: none !important;
  font-family: 'Libre Franklin', system-ui, sans-serif;
  font-weight: 500;
  font-size: var(--blc-button-size);
  line-height: 1.2;
  border-radius: 4px;
  transition: background .12s ease, transform .12s ease, box-shadow .12s ease;
}
.blc-page a.blc-button:hover { background: var(--blc-blue-dark); transform: translateY(-1px); box-shadow: 0 10px 24px rgba(1, 92, 250, .28); }
.blc-page a.blc-button:focus-visible { outline: none; box-shadow: 0 0 0 3px var(--blc-light), 0 0 0 6px var(--blc-blue); }
.blc-button-face { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; flex: none; border: 2px solid rgba(255,255,255,.85); }
.blc-button-arrow { width: 20px; height: 20px; flex: none; }
.blc-secondary { margin-top: 12px; font-size: 15px; line-height: 1.45; color: var(--blc-ink-soft); }

/* ---------- Booking calendar ---------- */
.blc-booking {
  background: #fff;
  padding: 44px 0 52px;
  text-align: center;
}
.blc-page h2.blc-booking-heading {
  font-family: 'Vastago Grotesk', 'Libre Franklin', system-ui, sans-serif;
  font-size: clamp(26px, 3vw, 34px);
  line-height: 1.12;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: var(--blc-navy);
  text-wrap: balance;
}
.blc-booking-text {
  margin-top: 10px;
  font-size: 17px;
  line-height: 1.5;
  color: var(--blc-ink-soft);
  max-width: 46ch;
  margin-left: auto;
  margin-right: auto;
}
.blc-booking-widget {
  margin-top: 26px;
  display: flex;
  justify-content: center;
}
/* The booking plugin centres itself at 760px; keep it from touching the gutters. */
.blc-booking-widget > * { width: 100%; max-width: 760px; margin-left: auto; margin-right: auto; }

/* ---------- Who it's from (off by default) ---------- */
.blc-contact { background: #fff; padding: 24px 0 36px; }
.blc-contact-inner { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; }
.blc-photo { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; flex: none; }
.blc-contact-text { flex: 1 1 180px; }
.blc-contact-name { font-family: 'Vastago Grotesk', 'Libre Franklin', system-ui, sans-serif; font-weight: 600; font-size: 17px; color: var(--blc-navy); }
.blc-contact-role { font-size: 14.5px; color: var(--blc-ink-soft); margin-top: 1px; }
.blc-contact-lines { display: flex; flex-wrap: wrap; gap: 4px 20px; font-size: 16px; flex: 1 1 100%; }
.blc-page .blc-contact-lines a { color: var(--blc-blue); text-decoration: none; font-weight: 500; }
.blc-page .blc-contact-lines a:hover { text-decoration: underline; }

/* ---------- Tablet ---------- */
@media (min-width: 600px) {
  .blc-page {
    --blc-gutter: 32px;
    --blc-greeting-size: 44px;
    --blc-heading-size: 44px;
    --blc-sub-size: 19px;
  }
  .blc-hero { padding-bottom: 56px; }
  .blc-video-frame { margin-top: 32px; }
  .blc-chev { width: 36px; height: 46px; }
  .blc-chev--tl { top: -16px; left: -14px; }
  .blc-chev--br { right: -16px; bottom: -16px; }
  .blc-action { margin-top: 28px; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; }
  .blc-page a.blc-button { width: auto; padding: 13px 20px 13px 28px; }
  .blc-secondary { margin-top: 0; flex: 1 1 240px; }
  .blc-contact { padding: 28px 0 48px; }
  .blc-contact-lines { flex: 0 1 auto; margin-left: auto; }
}

/* ---------- Laptop and up: words left, video right, all above the fold ---------- */
@media (min-width: 1000px) {
  .blc-page {
    --blc-gutter: 40px;
    --blc-container: 1180px;
    --blc-strip: 0px;
    --blc-heading-size: 48px;
    --blc-greeting-size: 42px;
  }
  /* No white bar on desktop: the menu already sits happily on Clean Blue. */
  .blc-hero {
    background: var(--blc-light);
    padding-top: var(--blc-top);
    padding-bottom: 72px;
  }
  .blc-hero::before { inset: 0 0 0 auto; width: min(48vw, 640px); }
  .blc-hero .blc-container {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    grid-template-rows: 1fr auto auto auto auto 1fr;
    grid-template-areas:
      ".      video"
      "greet  video"
      "head   video"
      "sub    video"
      "action video"
      ".      video";
    column-gap: 56px;
    align-items: start;
  }
  .blc-greeting { grid-area: greet; }
  .blc-page h1.blc-heading { grid-area: head; }
  .blc-sub { grid-area: sub; }
  .blc-video-frame { grid-area: video; margin-top: 0; align-self: center; }
  .blc-video { width: 100%; }
  .blc-action { grid-area: action; display: block; margin-top: 32px; }
  .blc-page a.blc-button { display: inline-flex; }
  .blc-secondary { margin-top: 12px; }
}

/* Bare mode (theme header/footer off) */
body.blc-bare { margin: 0; background: #fff; }
body.blc-bare .blc-hero { background: var(--blc-light); padding-top: 40px; }
body.blc-bare .blc-hero::before { inset: 0 0 0 auto; }

@media (prefers-reduced-motion: reduce) {
  .blc-page a.blc-button,
  .blc-wave,
  .blc-chev,
  .blc-play-btn { animation: none; transition: none; }
}
