/* YOVETEC — camada de movimento premium. Só transform/opacity; desligada com prefers-reduced-motion */
.fx-bar{position:fixed;top:0;left:0;right:0;height:3px;z-index:9999;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#2F5AFF,#8A2BE0,#E0299E,#2FE0D9);pointer-events:none}
@keyframes fxUp{from{opacity:0;transform:translate3d(0,28px,0);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}
.fx .hero h1,.fx .ph .pn{animation:fxUp 1s cubic-bezier(.2,.7,.2,1) both .1s}
.fx .hero .lead,.fx .ph .ps,.fx .ph .pl{animation:fxUp 1s cubic-bezier(.2,.7,.2,1) both .3s}
.fx .hero .btn-primary,.fx .hero .btn-ghost,.fx .ph .btns,.fx .ph .chip{animation:fxUp 1s cubic-bezier(.2,.7,.2,1) both .5s}
.fx .hero .stat{animation:fxUp 1s cubic-bezier(.2,.7,.2,1) both .7s}
.fx-split .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em}
.fx-split .w>span{display:inline-block;transform:translate3d(0,110%,0);transition:transform .85s cubic-bezier(.2,.7,.2,1) calc(var(--i)*55ms)}
.fx-split.in .w>span{transform:none}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.fx-spot{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(380px circle at var(--mx,50%) var(--my,50%),rgba(138,43,224,.14),transparent 60%)}
*:hover>.fx-spot{opacity:1}
.fx-tilt{transition:transform .25s ease-out,box-shadow .25s;will-change:transform}
/* Porquê YOVETEC */
.why{padding:96px 0;background:#0B0A26;color:#fff}
.why .section-head h2{color:#fff}
.why-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.why-item{position:relative;padding:28px 24px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.04)}
.why-item h3{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;margin:0 0 8px}
.why-item p{margin:0;color:rgba(255,255,255,.72);line-height:1.65;font-size:.95rem}
@media (prefers-reduced-motion:reduce){.fx-bar{display:none}}

/* Logótipos dos produtos nos cartões da Home */
.prod-logo{display:block;margin:-28px -26px 22px;border-radius:14px 14px 0 0;overflow:hidden;background:#fff;aspect-ratio:3/2}
.prod-logo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.prod:hover .prod-logo img{transform:scale(1.05)}

/* Serviços: separador */
.svc-sub{grid-column:1/-1;margin:22px 0 0;font:600 .8rem 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.hero-visual{position:relative}
/* Hero em telemóvel: o título aparece logo no primeiro ecrã */
@media(max-width:820px){.hero-visual{max-width:170px!important;margin:0 auto 4px!important}.hero{padding-top:92px}}

.prod-st{color:#065F46!important;background:#D1FAE5!important;border-color:#6EE7B7!important}
