/* Premium interaction layer — local review only. */
:root{--rb-motion-ease:cubic-bezier(.22,.61,.36,1)}
html body .btn.btn-primary,html body .section .btn.btn-primary,html[data-theme] body .section .btn.btn-primary{background:linear-gradient(125deg,#702784,#8b35a1);color:#fff;border-color:#943ca9;box-shadow:0 6px 18px rgba(104,34,127,.24);transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,translate .25s var(--rb-motion-ease)}
html body .btn.btn-primary:hover,html body .section .btn.btn-primary:hover,html[data-theme] body .section .btn.btn-primary:hover{background:linear-gradient(125deg,#812f98,#a044b2);color:#fff;border-color:#b66ac6;box-shadow:0 10px 25px rgba(127,43,149,.34);translate:0 -2px}
html body .btn:focus-visible{outline:3px solid #b87acb;outline-offset:4px;box-shadow:0 0 0 6px rgba(184,122,203,.18)}
:is(.feature-card,.info-card,.case-card,.pricing-card,.tile,.matrix-card,.tool-card,.stack-card,.contact-card,.workflow-card,.tool-brand){transition:border-color .25s ease,box-shadow .3s ease,translate .3s var(--rb-motion-ease)}
@media(hover:hover) and (pointer:fine){
 :is(.feature-card,.info-card,.case-card,.pricing-card,.tile,.matrix-card,.tool-card,.stack-card,.contact-card,.workflow-card):hover{border-color:rgba(175,106,197,.65);box-shadow:0 12px 30px rgba(72,30,89,.13),0 0 0 1px rgba(187,130,208,.13);translate:0 -3px}
 .tool-brand:hover{translate:0 -2px;box-shadow:0 5px 14px rgba(91,39,111,.12)}
 .home-hero .hero-photo{transition:scale .8s var(--rb-motion-ease)}
 .home-hero .founder-photo-panel:hover .hero-photo{scale:1.025}
}
/* One reveal for each heading, rather than nested animations on every line. */
@media(prefers-reduced-motion:no-preference){
 .home-hero .hero-copy>*{animation:none}
 .rb-heading-reveal{opacity:0;transform:translateY(12px);transition:opacity .65s var(--rb-motion-ease),transform .65s var(--rb-motion-ease)}
 .rb-heading-reveal.rb-heading-visible{opacity:1;transform:translateY(0)}
}
.tile strong,.mini-stat strong,.metric strong{font-variant-numeric:tabular-nums}
@media(prefers-reduced-motion:reduce){
 .rb-heading-reveal{opacity:1;transform:none}
 html body .btn, :is(.feature-card,.info-card,.case-card,.pricing-card,.tile,.matrix-card,.tool-card,.stack-card,.contact-card,.workflow-card,.tool-brand){transition:none!important;translate:none!important}
 .home-hero .hero-photo{scale:1!important;transition:none!important}
}
