
/* REALPRO v20 — subtler hero particles and refined section transitions */
:root{
  --rp-hero-shadow: 0 10px 26px rgba(3, 10, 24, 0.18), 0 2px 6px rgba(3, 10, 24, 0.12);
  --rp-section-ease: cubic-bezier(.2,.86,.24,1);
  --rp-section-distance: 22px;
  --rp-soft-blur: 7px;
}

.hero,
.rp-page-hero,
.rp-contact-hero,
.page-hero,
.error-hero,
.legal-hero,
.success-hero{ isolation:isolate; }

.hero .rp-unified-hero-title,
.rp-page-hero .rp-unified-hero-title,
.rp-contact-hero .rp-unified-hero-title,
.page-hero .rp-unified-hero-title,
.error-hero .rp-unified-hero-title,
.legal-hero .rp-unified-hero-title,
.success-hero .rp-unified-hero-title{ text-shadow: var(--rp-hero-shadow); }

.rp-hero-animate .eyebrow,
.rp-hero-animate .rp-unified-hero-title,
.rp-hero-animate p,
.rp-hero-animate .hero-cta,
.rp-hero-animate .rp-contact-hero__details,
.rp-hero-animate .rp-contact-hero__details a,
.rp-hero-animate .rp-page-hero__media,
.rp-hero-animate .rp-contact-hero__media,
.rp-hero-animate .rp-contact-hero__shade,
.rp-hero-animate .hero-video,
.rp-hero-animate .hero::before{
  opacity:0;
  filter: blur(var(--rp-soft-blur));
  transform: translate3d(0, 18px, 0) scale(.996);
}
.rp-hero-animate.rp-hero-in .eyebrow{
  opacity:1; filter:blur(0); transform:none;
  transition: opacity .72s ease, transform .96s var(--rp-section-ease), filter .96s ease;
  transition-delay: 70ms;
}
.rp-hero-animate.rp-hero-in .rp-unified-hero-title{
  opacity:1; filter:blur(0); transform:none;
  transition: opacity .78s ease, transform 1.02s var(--rp-section-ease), filter 1.02s ease;
  transition-delay: 120ms;
}
.rp-hero-animate.rp-hero-in .rp-page-hero__copy > p,
.rp-hero-animate.rp-hero-in .rp-contact-hero__content > p,
.rp-hero-animate.rp-hero-in .hero-copy,
.rp-hero-animate.rp-hero-in .hero-subcopy,
.rp-hero-animate.rp-hero-in .hero-cta{
  opacity:1; filter:blur(0); transform:none;
  transition: opacity .72s ease, transform .96s var(--rp-section-ease), filter .96s ease;
  transition-delay: 300ms;
}
.rp-hero-animate.rp-hero-in .rp-contact-hero__details{
  opacity:1; filter:blur(0); transform:none;
  transition: opacity .72s ease, transform .96s var(--rp-section-ease), filter .96s ease;
  transition-delay: 360ms;
}
.rp-hero-animate.rp-hero-in .rp-contact-hero__details a{
  opacity:1; filter:blur(0); transform:none;
  transition: opacity .66s ease, transform .88s var(--rp-section-ease), filter .88s ease;
}
.rp-hero-animate.rp-hero-in .rp-contact-hero__details a:nth-child(1){transition-delay:410ms;}
.rp-hero-animate.rp-hero-in .rp-contact-hero__details a:nth-child(2){transition-delay:460ms;}
.rp-hero-animate.rp-hero-in .rp-page-hero__media,
.rp-hero-animate.rp-hero-in .rp-contact-hero__media,
.rp-hero-animate.rp-hero-in .hero-video{
  opacity:1; filter:blur(0); transform:none;
  transition: opacity 1.08s ease, transform 1.18s var(--rp-section-ease), filter 1.08s ease;
  transition-delay: 120ms;
}
.rp-hero-animate.rp-hero-in .rp-contact-hero__shade,
.rp-hero-animate.rp-hero-in .rp-page-hero__cloud{
  opacity:1; filter:blur(0); transform:none;
  transition: opacity 1.2s ease, transform 1.22s var(--rp-section-ease), filter 1.12s ease;
  transition-delay: 110ms;
}

/* title build */
.rp-unified-hero-title[data-rp-mz-ready="true"]{ white-space:normal; }
.rp-unified-hero-title .rp-hero-linebreak{ display:block; width:100%; height:0; }
.rp-unified-hero-title .rp-hero-word{
  position:relative;
  display:inline-block;
  white-space:nowrap;
  vertical-align:baseline;
}
.rp-unified-hero-title .rp-hero-word + .rp-hero-word{ margin-left:.16em; }
.rp-unified-hero-title .rp-hero-word.rp-hero-word--accent,
.rp-unified-hero-title .rp-hero-emphasis{
  font-weight:780;
  letter-spacing:-0.038em;
}
.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand,
.rp-unified-hero-title .rp-hero-emphasis--brands{ color:#ef3f3f !important; }
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth,
.rp-unified-hero-title .rp-hero-emphasis--growth{ color:#ef3f3f !important; }
.rp-unified-hero-title .rp-hero-word::after{
  content:'';
  position:absolute;
  left:10%; right:10%; bottom:-0.05em;
  height:.12em;
  border-radius:999px;
  background: radial-gradient(ellipse at center, rgba(255,255,255,.09) 0%, rgba(255,255,255,.035) 48%, rgba(255,255,255,0) 80%);
  filter: blur(11px);
  opacity:0;
  transform:translateY(58%);
  transition:opacity .95s ease .24s;
  pointer-events:none;
}
.rp-unified-hero-title .rp-hero-word--accent::after,
.rp-unified-hero-title .rp-hero-emphasis::after{
  background: radial-gradient(ellipse at center, rgba(239,63,63,.16) 0%, rgba(239,63,63,.06) 40%, rgba(239,63,63,0) 82%);
}
.rp-hero-in .rp-unified-hero-title .rp-hero-word::after{ opacity:.5; }
.rp-unified-hero-title .rp-hero-char{
  display:inline-block;
  opacity:0;
  filter:blur(7px);
  transform:translateY(.15em) scale(.975);
  animation: rpHeroCharCreate 0.88s var(--rp-section-ease) forwards;
  animation-delay: calc(var(--rp-char-delay, 0ms) + var(--rp-word-delay, 0ms) + var(--rp-title-delay, 110ms));
}
.rp-unified-hero-title .rp-hero-space{ display:inline-block; width:.30em; }
.rp-unified-hero-title .rp-hero-particle{
  position:absolute;
  left:var(--rp-px,50%);
  top:var(--rp-py,50%);
  width:var(--rp-pw,.14em);
  height:var(--rp-ph,.035em);
  margin-left:calc(var(--rp-pw,.14em)/-2);
  margin-top:calc(var(--rp-ph,.035em)/-2);
  border-radius:1px;
  background: linear-gradient(90deg, rgba(255,255,255,0) 0%, var(--rp-particle-color, rgba(255,255,255,.8)) 28%, var(--rp-particle-color, rgba(255,255,255,.8)) 72%, rgba(255,255,255,0) 100%);
  box-shadow: 0 0 8px color-mix(in srgb, var(--rp-particle-color, rgba(255,255,255,.8)) 30%, transparent);
  opacity:0;
  filter: blur(.8px);
  transform: translate3d(var(--rp-tx,0), var(--rp-ty,0), 0) rotate(var(--rp-rot,0deg)) scale(.72);
  animation: rpHeroParticleCreate 0.96s var(--rp-section-ease) forwards;
  animation-delay: calc(var(--rp-word-delay, 0ms) + var(--rp-pd, 0ms) + var(--rp-title-delay, 110ms));
  pointer-events:none;
}
.rp-unified-hero-title .rp-hero-word--accent .rp-hero-particle,
.rp-unified-hero-title .rp-hero-emphasis .rp-hero-particle{ --rp-particle-color: rgba(239,63,63,.82); }
.rp-unified-hero-title .rp-hero-sheen{
  position:absolute;
  inset:-7% -8%;
  background: linear-gradient(108deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.10) 49%, rgba(255,255,255,0) 58%);
  opacity:0;
  filter:blur(3px);
  transform:translateX(-24%);
  animation: rpHeroSheen .9s ease forwards;
  animation-delay: calc(var(--rp-word-delay, 0ms) + 310ms);
  pointer-events:none;
}
.rp-unified-hero-title .rp-hero-word--accent .rp-hero-sheen,
.rp-unified-hero-title .rp-hero-emphasis .rp-hero-sheen{
  background: linear-gradient(108deg, rgba(239,63,63,0) 0%, rgba(239,63,63,.18) 49%, rgba(239,63,63,0) 58%);
}
@keyframes rpHeroCharCreate{
  0%{opacity:0;filter:blur(7px);transform:translateY(.15em) scale(.975)}
  60%{opacity:.95;filter:blur(1.5px)}
  100%{opacity:1;filter:blur(0);transform:none}
}
@keyframes rpHeroParticleCreate{
  0%{opacity:0;transform:translate3d(var(--rp-tx,0), var(--rp-ty,0),0) rotate(var(--rp-rot,0deg)) scale(.62)}
  18%{opacity:.42}
  64%{opacity:.16}
  100%{opacity:0;transform:translate3d(0,0,0) rotate(var(--rp-rot-end,0deg)) scale(1)}
}
@keyframes rpHeroSheen{
  0%{opacity:0;transform:translateX(-22%)}
  16%{opacity:.32}
  100%{opacity:0;transform:translateX(18%)}
}

/* section transitions */
[data-rp-flow-item]{
  opacity:0;
  transform:translate3d(0,var(--rp-section-distance),0) scale(.992);
  filter:blur(6px);
  transition: opacity .72s ease, transform .92s var(--rp-section-ease), filter .92s ease;
  transition-delay: var(--rp-flow-delay, 0ms);
  will-change:transform, opacity, filter;
}
.rp-section-inview [data-rp-flow-item]{ opacity:1; transform:none; filter:blur(0); }

/* contact retained */
.rp-contact-hero__details{
  position:relative;
  margin-top:clamp(1.5rem, 3vw, 2.5rem);
  padding-top:clamp(1rem, 1.8vw, 1.35rem);
  padding-bottom:clamp(1.15rem, 2vw, 1.5rem);
  gap:clamp(1.25rem, 2vw, 2rem);
  border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
}
.rp-contact-hero__details a{ display:flex; flex-direction:column; gap:.3rem; text-decoration:none; }
.rp-contact-hero__details a span{ opacity:.72; text-transform:uppercase; letter-spacing:.14em; font-size:.74rem; }
.rp-contact-hero__details a strong{ position:relative; display:inline-block; color:#fff; }
.rp-contact-hero__details a strong::after{ content:''; position:absolute; left:0; right:0; bottom:-.18em; height:1px; background:currentColor; opacity:.5; }

@media (prefers-reduced-motion: reduce){
  .rp-hero-animate .eyebrow,
  .rp-hero-animate .rp-unified-hero-title,
  .rp-hero-animate p,
  .rp-hero-animate .hero-cta,
  .rp-hero-animate .rp-contact-hero__details,
  .rp-hero-animate .rp-contact-hero__details a,
  .rp-hero-animate .rp-page-hero__media,
  .rp-hero-animate .rp-contact-hero__media,
  .rp-hero-animate .rp-contact-hero__shade,
  [data-rp-flow-item]{
    opacity:1 !important; filter:none !important; transform:none !important; transition:none !important; animation:none !important;
  }
  .rp-unified-hero-title .rp-hero-particle,
  .rp-unified-hero-title .rp-hero-sheen{ display:none !important; }
  .rp-unified-hero-title .rp-hero-char{ animation:none !important; opacity:1 !important; filter:none !important; transform:none !important; }
}


/* REALPRO v21 — premium accent emphasis for Brands and Growth */
.rp-header-statement strong,
.rp-header-statement em{
  color:#ef3f3f !important;
  font-style:normal;
  font-weight:800;
  letter-spacing:-0.02em;
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--accent,
.rp-unified-hero-title .rp-hero-emphasis,
.rp-unified-hero-title .rp-hero-emphasis--brands,
.rp-unified-hero-title .rp-hero-emphasis--growth{
  color:#ef3f3f !important;
  font-weight:820;
  letter-spacing:-0.042em;
  display:inline-block;
  transform:translateY(-0.035em);
  text-shadow:
    0 10px 24px rgba(239,63,63,0.12),
    0 2px 6px rgba(3,10,24,0.14);
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand,
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth{
  position:relative;
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand::before,
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth::before,
.rp-unified-hero-title .rp-hero-emphasis--brands::before,
.rp-unified-hero-title .rp-hero-emphasis--growth::before{
  content:'';
  position:absolute;
  left:-0.03em;
  right:-0.03em;
  top:0.1em;
  bottom:0.12em;
  border-radius:0.22em;
  background:linear-gradient(180deg, rgba(239,63,63,0.10) 0%, rgba(239,63,63,0.04) 58%, rgba(239,63,63,0) 100%);
  opacity:.45;
  pointer-events:none;
  z-index:-1;
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--accent::after,
.rp-unified-hero-title .rp-hero-emphasis::after{
  opacity:.58 !important;
  height:.14em;
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--accent .rp-hero-sheen,
.rp-unified-hero-title .rp-hero-emphasis .rp-hero-sheen{
  opacity:1;
}

@media (max-width: 767px){
  .rp-unified-hero-title .rp-hero-word.rp-hero-word--accent,
  .rp-unified-hero-title .rp-hero-emphasis,
  .rp-unified-hero-title .rp-hero-emphasis--brands,
  .rp-unified-hero-title .rp-hero-emphasis--growth{
    transform:translateY(-0.024em);
    font-weight:810;
  }
}


/* REALPRO v22 — editorial luxury emphasis for Brands and Growth */
.rp-header-statement strong,
.rp-header-statement em{
  color:#ef3f3f !important;
  font-style:normal;
  font-weight:820;
  letter-spacing:-0.022em;
  text-shadow: 0 1px 0 rgba(255,255,255,0.02), 0 8px 18px rgba(239,63,63,0.10);
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--accent,
.rp-unified-hero-title .rp-hero-emphasis,
.rp-unified-hero-title .rp-hero-emphasis--brands,
.rp-unified-hero-title .rp-hero-emphasis--growth{
  color:#ef3f3f !important;
  font-weight:835;
  letter-spacing:-0.046em;
  display:inline-block;
  transform:translateY(-0.045em);
  text-shadow:
    0 1px 0 rgba(255,255,255,0.03),
    0 12px 28px rgba(239,63,63,0.10),
    0 3px 10px rgba(3,10,24,0.12);
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand,
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth,
.rp-unified-hero-title .rp-hero-emphasis--brands,
.rp-unified-hero-title .rp-hero-emphasis--growth{
  position:relative;
  isolation:isolate;
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand::before,
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth::before,
.rp-unified-hero-title .rp-hero-emphasis--brands::before,
.rp-unified-hero-title .rp-hero-emphasis--growth::before{
  content:'';
  position:absolute;
  left:-0.04em;
  right:-0.04em;
  top:0.14em;
  bottom:0.16em;
  border-radius:0.24em;
  background:linear-gradient(180deg, rgba(239,63,63,0.11) 0%, rgba(239,63,63,0.055) 52%, rgba(239,63,63,0.01) 82%, rgba(239,63,63,0) 100%);
  opacity:.46;
  pointer-events:none;
  z-index:-2;
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand::after,
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth::after,
.rp-unified-hero-title .rp-hero-emphasis--brands::after,
.rp-unified-hero-title .rp-hero-emphasis--growth::after{
  opacity:.62 !important;
  height:.145em;
  background:radial-gradient(ellipse at center, rgba(239,63,63,0.18) 0%, rgba(239,63,63,0.07) 45%, rgba(239,63,63,0) 84%) !important;
  filter:blur(12px);
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand .rp-hero-sheen,
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth .rp-hero-sheen,
.rp-unified-hero-title .rp-hero-emphasis--brands .rp-hero-sheen,
.rp-unified-hero-title .rp-hero-emphasis--growth .rp-hero-sheen{
  opacity:1;
  filter:blur(2px);
}

.rp-unified-hero-title .rp-hero-word.rp-hero-word--brand .rp-hero-particle,
.rp-unified-hero-title .rp-hero-word.rp-hero-word--growth .rp-hero-particle,
.rp-unified-hero-title .rp-hero-emphasis--brands .rp-hero-particle,
.rp-unified-hero-title .rp-hero-emphasis--growth .rp-hero-particle{
  --rp-particle-color: rgba(239,63,63,0.86);
  filter: blur(.65px);
}

@media (max-width: 767px){
  .rp-unified-hero-title .rp-hero-word.rp-hero-word--accent,
  .rp-unified-hero-title .rp-hero-emphasis,
  .rp-unified-hero-title .rp-hero-emphasis--brands,
  .rp-unified-hero-title .rp-hero-emphasis--growth{
    transform:translateY(-0.03em);
    font-weight:825;
    letter-spacing:-0.042em;
  }
}


/* REALPRO v23 — hard-apply red accents to Brands and Growth */
.rp-header-statement strong,
.rp-header-statement em,
.rp-header-statement strong *,
.rp-header-statement em *{
  color:#ef3f3f !important;
  -webkit-text-fill-color:#ef3f3f !important;
}

.rp-unified-hero-title .rp-hero-word--brand,
.rp-unified-hero-title .rp-hero-word--growth,
.rp-unified-hero-title .rp-hero-word--brand *,
.rp-unified-hero-title .rp-hero-word--growth *,
.rp-unified-hero-title .rp-hero-emphasis--brands,
.rp-unified-hero-title .rp-hero-emphasis--growth,
.rp-unified-hero-title .rp-hero-emphasis--brands *,
.rp-unified-hero-title .rp-hero-emphasis--growth *{
  color:#ef3f3f !important;
  -webkit-text-fill-color:#ef3f3f !important;
}

.rp-unified-hero-title .rp-hero-word--brand,
.rp-unified-hero-title .rp-hero-word--growth,
.rp-unified-hero-title .rp-hero-emphasis--brands,
.rp-unified-hero-title .rp-hero-emphasis--growth{
  font-weight:835 !important;
  transform:translateY(-0.045em);
}

.rp-unified-hero-title .rp-hero-word--brand .rp-hero-char,
.rp-unified-hero-title .rp-hero-word--growth .rp-hero-char,
.rp-unified-hero-title .rp-hero-emphasis--brands .rp-hero-char,
.rp-unified-hero-title .rp-hero-emphasis--growth .rp-hero-char,
.rp-unified-hero-title .rp-hero-word--brand .rp-hero-space,
.rp-unified-hero-title .rp-hero-word--growth .rp-hero-space,
.rp-unified-hero-title .rp-hero-emphasis--brands .rp-hero-space,
.rp-unified-hero-title .rp-hero-emphasis--growth .rp-hero-space{
  color:#ef3f3f !important;
  -webkit-text-fill-color:#ef3f3f !important;
}
