
/* Socialnex global heading word reveal and client feedback */
.sn-reveal-word{display:inline-block;opacity:0;transform:translateY(.6em);filter:blur(8px);animation:snGlobalWordIn .85s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(var(--sn-word-order,0) * 65ms)}
@keyframes snGlobalWordIn{to{opacity:1;transform:translateY(0);filter:blur(0)}}
.sn-word-heading{overflow:visible}
.sn-feedback-layout{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr);align-items:center;gap:clamp(25px,5vw,80px);margin-top:38px}
.sn-feedback-illustration{min-width:0;text-align:center}.sn-feedback-illustration svg{display:block;width:100%;height:auto;max-height:360px;filter:drop-shadow(0 15px 45px #2971b328)}.sn-feedback-illustration p{color:#aebed3;font-size:1rem;margin-top:12px}
.sn-feedback-marquee{overflow:hidden;min-width:0;position:relative;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.sn-feedback-track{display:flex;align-items:stretch;width:max-content;gap:20px;animation:snFeedbackScroll 46s linear infinite}
.sn-feedback-track .feedback-card{width:min(360px,75vw);min-width:min(360px,75vw);flex:none;height:auto}
.sn-feedback-marquee:hover .sn-feedback-track,.sn-feedback-marquee:focus-within .sn-feedback-track{animation-play-state:paused}
@keyframes snFeedbackScroll{to{transform:translateX(calc(-50% - 10px))}}
@media(max-width:780px){.sn-feedback-layout{grid-template-columns:1fr}.sn-feedback-illustration{max-width:310px;margin:auto}.sn-feedback-track .feedback-card{width:min(310px,78vw);min-width:min(310px,78vw)}}
@media(prefers-reduced-motion:reduce){.sn-reveal-word{opacity:1;filter:none;transform:none;animation:none}.sn-feedback-track{animation:none;width:auto;overflow-x:auto}.sn-feedback-marquee{overflow-x:auto}.sn-feedback-track .feedback-card[aria-hidden=true]{display:none}}

/* Preserve brand gradient when headings are split into individually animated words. */
.gradient-text .sn-reveal-word,.sn-about-gradient .sn-reveal-word,.sn-gradient .sn-reveal-word,.gradient .sn-reveal-word{background:linear-gradient(105deg,#ff892d 0%,#ffae65 26%,#72b9ff 55%,#ff892d 100%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:snGlobalWordIn .85s cubic-bezier(.2,.8,.2,1) forwards,snBrandGradient 9s linear infinite;animation-delay:calc(var(--sn-word-order,0) * 65ms),0s}
@keyframes snBrandGradient{0%{background-position:0% 50%}100%{background-position:260% 50%}}
.sn-feedback-marquee{mask-image:none!important;-webkit-mask-image:none!important;overflow:hidden!important}
.sn-feedback-track{animation:none!important;display:flex;width:100%;gap:0;transform:none!important;transition:none!important}
.sn-feedback-track .feedback-card{display:none;flex:0 0 100%;width:100%;min-width:0;min-height:260px;margin:0}
.sn-feedback-track .feedback-card.sn-active{display:flex;animation:snFeedbackEnter .38s ease both}
@keyframes snFeedbackEnter{from{opacity:.35;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}
.sn-feedback-interactive{position:relative}.sn-feedback-controls{display:flex;gap:12px;justify-content:flex-end;margin-top:16px}
.sn-feedback-arrow{width:46px;height:46px;border:1px solid #ffffff38;border-radius:50%;background:#162338;color:#fff;font-size:24px;cursor:pointer;transition:background .2s,border-color .2s}
.sn-feedback-arrow:hover,.sn-feedback-arrow:focus-visible{background:#253c5a;border-color:#ff933c;outline-offset:3px}
/* Compact final CTA, retaining the original brand palette and typography. */
.contact-section .sn-compact-cta{padding:clamp(30px,4vw,54px)!important;min-height:0!important;max-width:950px;margin-inline:auto}
.contact-section .sn-compact-cta h2{font-size:clamp(34px,4.4vw,60px);line-height:1.08;margin:12px auto 15px}
.contact-section .sn-compact-cta p{margin:0 auto 18px;max-width:640px;line-height:1.6}
.contact-section .sn-compact-cta .contact-actions{margin:20px 0 12px}
.contact-section .sn-compact-cta small{display:block;margin-top:10px}
/* Less empty space on home only, not on internal pages. */
body:has(.testimonials-section) main>.section{padding-top:clamp(45px,5vw,72px);padding-bottom:clamp(45px,5vw,72px)}
body:has(.testimonials-section) main>.section .section-top{margin-bottom:clamp(18px,3vw,34px)}
body:has(.testimonials-section) main>.section.contact-section{padding-top:44px;padding-bottom:58px}
@media(max-width:780px){.sn-feedback-layout{gap:18px;margin-top:22px}.sn-feedback-illustration{max-width:245px}.sn-feedback-track .feedback-card{width:100%;min-width:0}.contact-section .sn-compact-cta{padding:28px 20px!important}}
@media(prefers-reduced-motion:reduce){.gradient-text .sn-reveal-word,.sn-about-gradient .sn-reveal-word,.sn-gradient .sn-reveal-word,.gradient .sn-reveal-word{animation:none!important;opacity:1;filter:none;transform:none}.sn-feedback-track .feedback-card.sn-active{animation:none}}

/* Three static feedback cards; no illustration, marquee or carousel. */
.testimonials-section .sn-feedback-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;margin-top:36px}
.testimonials-section .sn-feedback-three .feedback-card{display:flex!important;width:auto!important;min-width:0!important;height:auto;min-height:300px;opacity:1!important;transform:none;animation:none!important}
@media(max-width:950px){.testimonials-section .sn-feedback-three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.testimonials-section .sn-feedback-three{grid-template-columns:1fr;gap:16px}.testimonials-section .sn-feedback-three .feedback-card{min-height:0}}

/* Unified heading motion: same entrance values for hero and all other headings. */
:root{--sn-heading-duration:.85s;--sn-heading-blur:8px;--sn-heading-rise:.6em;--sn-heading-stagger:65ms}
.sn-reveal-word{animation:snUnifiedHeadingReveal var(--sn-heading-duration) cubic-bezier(.2,.8,.2,1) both!important;animation-delay:calc(var(--sn-word-order,0) * var(--sn-heading-stagger))!important}
@keyframes snUnifiedHeadingReveal{from{opacity:0;transform:translateY(var(--sn-heading-rise));filter:blur(var(--sn-heading-blur))}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.gradient-text .sn-reveal-word,.sn-about-gradient .sn-reveal-word,.sn-gradient .sn-reveal-word,.gradient .sn-reveal-word{background-image:linear-gradient(105deg,#ff7900 0%,#ffab54 26%,#78adff 55%,#1267c4 76%,#ff7900 100%)!important;background-size:250% 100%!important;animation:snUnifiedHeadingReveal var(--sn-heading-duration) cubic-bezier(.2,.8,.2,1) both,snImpactGradient 11s linear infinite!important;animation-delay:calc(var(--sn-word-order,0) * var(--sn-heading-stagger)),0s!important}
@media(prefers-reduced-motion:reduce){.sn-reveal-word,.gradient-text .sn-reveal-word,.sn-about-gradient .sn-reveal-word,.sn-gradient .sn-reveal-word,.gradient .sn-reveal-word{animation:none!important;opacity:1!important;filter:none!important;transform:none!important}}
