/* Alternate 2026 brand treatment: the original three-blue people mark paired
   with editable RALPH text in the site's pre-image Inter typography.
   Full vector logo files are deliberately kept for reversible comparisons.
   Compact in-illustration labels (search, feature badge, zip pull) remain text. */
html body .ralph-brand-lockup{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.30em!important;
  white-space:nowrap!important;
  vertical-align:middle!important;
  max-width:100%!important;
  width:max-content!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  color:#173a66!important;
  -webkit-text-fill-color:#173a66!important;
}
html body .ralph-brand-lockup .ralph-lockup-mark {
  box-sizing:border-box!important;
  width:auto!important;
  height:1.06em!important;
  max-width:none!important;
  object-fit:contain!important;
  display:block!important;
  flex:0 0 auto!important;
}
html body .ralph-brand-lockup .ralph-brand-text{
  font:inherit!important;
  font-weight:inherit!important;
  letter-spacing:inherit!important;
  line-height:1!important;
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
  white-space:nowrap!important;
}
html body .site-nav .site-title a:has(.ralph-brand-lockup),
html body #top.site-nav-global .site-title a:has(.ralph-brand-lockup){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  font-size:clamp(22px,2.4vw,30px)!important;
  font-weight:790!important;
  letter-spacing:.065em!important;
  line-height:1!important;
  text-decoration:none!important;
}
html body .site-title .ralph-brand-lockup--site {
  gap:.27em!important;
}
html body .ralph-ending-wordmark:has(.ralph-brand-lockup--hero){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}
html body .ralph-ending-wordmark .ralph-brand-lockup--hero{
  font-size:inherit!important;
  font-weight:790!important;
  line-height:1!important;
  letter-spacing:.06em!important;
  gap:.30em!important;
}
html body .ralph-ending-wordmark .ralph-brand-lockup--hero .ralph-lockup-mark{
  height:1.08em!important;
}
html body .ralph-landing-reception .ralph-reception-endcard .ralph-brand-lockup--hero{
  transition:opacity .8s ease!important;
}
/* Keep the original compact text-only centre labels. */
html body #practices .four > .center.center-search > span:not(.center-search-spacer){
  white-space:nowrap!important;
}
/* Animate on entry to each *active* scene. The previous animation ran at
   document load, before off-screen scenes were visible, so those controls
   appeared suddenly when the visitor scrolled down. */
@keyframes ralph-player-buttons-enter {
  from { opacity:0; transform:translateY(8px) }
  to   { opacity:1; transform:translateY(0) }
}
html body main.page .ralph-scene-active .ralph-illustration .ralph-story-player {
  animation:ralph-player-buttons-enter .65s cubic-bezier(.2,.8,.2,1) .08s both!important;
}
/* The registration CTA waits for the happy ending; the entire control and
   button fade together instead of just changing visibility instantly. */
@keyframes ralph-cta-button-enter {
  from { opacity:0; transform:translateY(10px) }
  to   { opacity:1; transform:translateY(0) }
}
html body main.page > :is(#intro,#top.ralph-landing-reception).ralph-reception-finished .ralph-reception-endcard .cta-group .pill {
  animation:ralph-cta-button-enter .95s cubic-bezier(.2,.8,.2,1) .35s both!important;
}
/* Keep hover, focus and disabled changes smooth without animating layout or
   delaying any action (including submitting the registration form). */
html body main.page .ralph-illustration .ralph-story-player button,
html body main.page > :is(#intro,#top.ralph-landing-reception) .ralph-reception-endcard .cta-group .pill,
html body main.page #contact #submit-interest {
  transition:opacity .25s ease,filter .25s ease,box-shadow .25s ease,
    background-color .25s ease,border-color .25s ease!important;
}
html body main.page > :is(#intro,#top.ralph-landing-reception) .ralph-reception-endcard .cta-group .pill:hover,
html body main.page #contact #submit-interest:not(:disabled):hover {
  filter:brightness(1.06)!important;
}
html body main.page #contact #submit-interest:disabled {
  opacity:.65!important;
}
@media(max-width:750px){
  html body .site-nav .site-title a:has(.ralph-brand-lockup),
  html body #top.site-nav-global .site-title a:has(.ralph-brand-lockup){
    font-size:clamp(20px,5vw,25px)!important;
  }
  html body .ralph-ending-wordmark .ralph-brand-lockup--hero{
    font-size:clamp(44px,12vw,74px)!important;
  }
}
@media(max-width:380px){
  html body .site-nav .site-title a:has(.ralph-brand-lockup){
    font-size:20px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  html body main.page .ralph-scene-active .ralph-illustration .ralph-story-player,
  html body main.page > :is(#intro,#top.ralph-landing-reception).ralph-reception-finished .ralph-reception-endcard .cta-group .pill{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
  }
  html body main.page .ralph-illustration .ralph-story-player button,
  html body main.page > :is(#intro,#top.ralph-landing-reception) .ralph-reception-endcard .cta-group .pill,
  html body main.page #contact #submit-interest{
    transition:none!important;
  }
}
