/* Shared actions: reserve the reveal width at rest; animate paint only.
   Stem = half the hexagon width (.433rem) + visible extension (.4375rem). */
:root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink),
:root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink):is(:hover,:focus-visible){
 position:relative;display:inline-flex;align-items:center;justify-content:flex-start;
 gap:.9375rem;font-weight:500;transition:background-color .18s ease,color .18s ease;
}
:root :is(.hex-button,.guide-textlink),
:root :is(.hex-button,.guide-textlink):is(:hover,:focus-visible){padding-inline:0}
:root :is(.hero-cta,.guide-button),
:root :is(.hero-cta,.guide-button):is(:hover,:focus-visible){padding-inline:1rem}
:root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink)>svg{
 width:.866rem;height:.75rem;flex:none;margin:0;align-self:center;fill:currentColor;
 transform:translateX(-.4375rem);transition:transform .24s ease;
}
:root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink):is(:hover,:focus-visible)>svg{transform:translateX(0)}
:root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink)::after{
 content:"";position:absolute;top:50%;width:.8705rem;height:.125rem;background:currentColor;
 pointer-events:none;transform:translateY(-50%) scaleX(0);transform-origin:right center;transition:transform .24s ease;
}
:root :is(.hex-button,.guide-textlink)::after,
:root :is(.hex-button,.guide-textlink):is(:hover,:focus-visible)::after{right:.433rem;inset-inline-end:.433rem}
:root :is(.hero-cta,.guide-button)::after,
:root :is(.hero-cta,.guide-button):is(:hover,:focus-visible)::after{right:1.433rem;inset-inline-end:1.433rem}
:root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink):is(:hover,:focus-visible)::after{transform:translateY(-50%) scaleX(1)}
@media(prefers-reduced-motion:reduce){
 :root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink),
 :root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink)>svg,
 :root :is(.hex-button,.hero-cta,.guide-button,.guide-textlink)::after{transition:none}
}
