.hero h1 .fx-for{display:block;white-space:nowrap;font-size:min(1em,10.4vw)}
.hero h1 .fx-rot{display:inline-block;color:var(--accent);-webkit-text-fill-color:var(--accent);background:none;transition:opacity .25s ease,transform .25s ease}
.hero h1 .fx-rot.out{opacity:0;transform:translateY(6px)}
html.fx-on .fx{opacity:0;transform:translateY(12px)}
html.fx-on .fx.fx-in{opacity:1;transform:none;transition:opacity .35s ease-out var(--fx-d,0ms),transform .35s ease-out var(--fx-d,0ms),border-color .18s ease,background .18s ease}
@media (hover:none){.feature-card:hover{background:var(--panel)}.feature-card:hover::before{opacity:0}.service-card:hover{transform:none;border-color:var(--border)}}
.hero p.hero-tagline{margin:-6px auto 20px;font-family:var(--font-display);font-weight:600;font-size:clamp(1.15rem,2.2vw,1.4rem);line-height:1.3;letter-spacing:-.01em;color:var(--accent);white-space:nowrap;max-width:100%}
@media (max-width:380px){.hero p.hero-tagline{font-size:min(1.15rem,5.2vw)}}
@media (prefers-reduced-motion:reduce){.hero h1 .fx-rot{transition:none}html.fx-on .fx{opacity:1;transform:none}}
