/* Small interaction details; no layout or typography changes. */
.navlinks .nav-label{position:relative}
.navlinks .nav-label:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left center;transition:transform .28s ease;pointer-events:none}
.navlinks a[aria-current="location"] .nav-label:after,.navlinks a:focus-visible .nav-label:after{transform:scaleX(1)}
.cta-arrow{display:inline-block;font:inherit;font-style:normal;transition:transform .28s ease;pointer-events:none}
.hero .round-link:hover,.hero .round-link:focus-visible{transform:none}
.hero .round-link:hover > span:first-child,.hero .round-link:focus-visible > span:first-child{transform:none}
.hero .round-link > span:first-child{transition:background .28s ease,color .28s ease}
.hero .round-link:focus-visible{border-color:var(--lime)}
.hero .round-link:focus-visible > span:first-child{background:var(--lime);color:var(--ink)}
main .card-open:is(:hover,:focus-visible){transform:none}
.feature-action:focus-visible{background:var(--feature-accent)}
.contact .submit{transition:background .28s ease,border-color .28s ease,color .28s ease}
.contact .submit:focus-visible:not(:disabled){background:#ebff9a}
:is(.round-link,.feature-action,.card-open,.submit):focus-visible:not(:disabled) .cta-arrow{transform:translate(3px,-3px)}
@media(hover:hover) and (pointer:fine){
 .navlinks a:hover .nav-label:after{transform:scaleX(1)}
 :is(.round-link,.feature-action,.card-open,.submit):hover:not(:disabled) .cta-arrow{transform:translate(3px,-3px)}
}
/* Refine only existing reveal effects on static text and content. */
.js .text-reveal.micro-entry{opacity:0;transform:translateY(16px);transition:opacity .5s ease var(--micro-delay,0ms),transform .5s cubic-bezier(.22,1,.36,1) var(--micro-delay,0ms),background .28s ease,border-color .28s ease,color .28s ease}
.js .text-reveal.micro-entry.visible,.js .text-reveal.micro-entry:focus-within{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
 .navlinks .nav-label:after,.cta-arrow{transition:none!important}
 .cta-arrow{transform:none!important}
 .js .text-reveal.micro-entry{opacity:1;transform:none;transition:none!important}
}
