@keyframes ct-headline-rise {
  from { opacity: 0; transform: translate3d(0, .42em, 0); filter: blur(3px); }
  to { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }
}

@media (prefers-reduced-motion: no-preference) {
  #main-content .ct-headline-line {
    display: inline-block;
    opacity: 0;
    animation: ct-headline-rise 760ms cubic-bezier(.2, .75, .25, 1) forwards;
  }
  #main-content .ct-headline-line--first { animation-delay: 90ms; }
  #main-content .ct-headline-line--second { animation-delay: 260ms; }
  #main-content .ct-reveal {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
    transition: opacity 620ms ease, transform 620ms cubic-bezier(.2, .75, .25, 1);
    transition-delay: var(--ct-delay, 0ms);
  }
  #main-content .ct-reveal.ct-visible { opacity: 1; transform: translate3d(0, 0, 0); }
  #main-content .ct-motion-card { transition: transform 240ms ease, box-shadow 240ms ease; }
  #main-content a[href^="tel:"] { transition: transform 180ms ease, box-shadow 180ms ease; }
  @media (hover: hover) {
    #main-content .ct-motion-card:hover { transform: translateY(-4px); box-shadow: 0 14px 28px rgba(11, 37, 89, .14); }
    #main-content a[href^="tel:"]:hover { transform: translateY(-2px); }
  }
  #main-content a[href^="tel:"]:active { transform: scale(.98); }
}

@media (prefers-reduced-motion: reduce) {
  #main-content .ct-headline-line,
  #main-content .ct-reveal,
  #main-content .ct-motion-card,
  #main-content a[href^="tel:"] {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }
}
@keyframes ct-word-pop {
  0% { opacity: 0; transform: translate3d(0, .62em, 0) rotateX(-24deg) scale(.94); filter: blur(7px); }
  72% { opacity: 1; transform: translate3d(0, -.035em, 0) rotateX(2deg) scale(1.015); filter: blur(0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0) rotateX(0) scale(1); filter: blur(0); }
}
@keyframes ct-highlight-draw { to { transform: scaleX(1); } }
@media (prefers-reduced-motion: no-preference) {
  #main-content .ct-headline-row { display: inline-flex; flex-wrap: wrap; column-gap: .2em; max-width: 100%; perspective: 800px; }
  #main-content .ct-headline-word { display: inline-block; opacity: 0; transform-origin: 50% 100%; animation: ct-word-pop 880ms cubic-bezier(.16, 1, .3, 1) forwards; }
  #main-content .ct-word-1 { animation-delay: 80ms; }
  #main-content .ct-word-2 { animation-delay: 230ms; }
  #main-content .ct-word-3 { animation-delay: 420ms; }
  #main-content .ct-word-4 { animation-delay: 550ms; }
  #main-content .ct-word-5 { animation-delay: 680ms; }
  #main-content .ct-word-6 { animation-delay: 810ms; }
  #main-content .ct-headline-word--gold { color: transparent; background-image: linear-gradient(105deg, #fde68a 0%, #fbbf24 48%, #fde68a 100%); background-clip: text; -webkit-background-clip: text; }
  #main-content .ct-headline-word--highlight { position: relative; }
  #main-content .ct-headline-word--highlight::after { content: ""; position: absolute; height: .075em; left: 0; right: 0; bottom: -.02em; border-radius: 999px; background: #fbbf24; transform: scaleX(0); transform-origin: left center; animation: ct-highlight-draw 520ms cubic-bezier(.2, .75, .25, 1) 1.02s forwards; }

  #main-content .ct-heading-word { display: inline-block; opacity: 0; transform: translate3d(0, .34em, 0) scale(.98); filter: blur(4px); transition: opacity 480ms ease, transform 600ms cubic-bezier(.2, .75, .25, 1), filter 480ms ease; transition-delay: var(--ct-word-delay, 0ms); will-change: opacity, transform; }
  #main-content .ct-heading-visible .ct-heading-word { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }
  #main-content .ct-heading-word:last-of-type { position: relative; }
  #main-content .ct-heading-word:last-of-type::after { content: ""; position: absolute; height: .09em; min-height: 2px; left: 0; right: 0; bottom: -.12em; border-radius: 999px; background: linear-gradient(90deg, #fbbf24, #f59e0b); transform: scaleX(0); transform-origin: left center; transition: transform 450ms cubic-bezier(.2, .75, .25, 1) 360ms; }
  #main-content .ct-heading-visible .ct-heading-word:last-of-type::after { transform: scaleX(1); }
}
@media (prefers-reduced-motion: reduce) {
  #main-content .ct-headline-word,
  #main-content .ct-heading-word { animation: none !important; opacity: 1 !important; transform: none !important; filter: none !important; transition: none !important; }
  #main-content .ct-headline-word--highlight::after { animation: none !important; transform: scaleX(1) !important; }
  #main-content .ct-heading-word:last-of-type::after { transition: none !important; transform: scaleX(1) !important; }
}
