/* Calm, one-time page entrances. Content is visible without JavaScript. */
.v3-body .project-link>span[aria-hidden],.v3-body .offer-list a>span[aria-hidden]{display:grid;transform:none}
.project-art{position:relative}
.v2-nav>a,.v2-footer nav>a{position:relative}
/* Keep the nav pill state self-contained: background and text change together. */
.v2-nav>a::after{display:none}
.v2-nav>a{transition:background-color 160ms ease,color 160ms ease}
.v2-nav>a:focus-visible{color:var(--ink);background:var(--lavender);outline:2px solid var(--ink);outline-offset:2px}
@media(hover:hover) and (pointer:fine){.v2-nav>a:hover{color:var(--ink);background:var(--lavender)}}
@media(min-width:48rem){.v2-nav>a:focus-visible{outline-color:var(--mint)}}
@media(prefers-reduced-motion:reduce){.v2-nav>a{transition:none}}
.v2-nav>a::after,.v2-footer nav>a::after{content:'';position:absolute;left:.75rem;right:.75rem;bottom:.35rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform 260ms var(--ease-out);pointer-events:none}
.offer-list article{position:relative;isolation:isolate}
.offer-list article::before{content:'';position:absolute;inset:0 -.75rem;background:var(--lavender);opacity:0;z-index:-1;transition:opacity 200ms ease;pointer-events:none}
.project-link>span[aria-hidden],.offer-list a>span[aria-hidden]{display:grid;place-items:center;width:34px;height:34px;overflow:hidden;border-radius:3px;background:var(--ink);color:var(--paper);position:relative;font-size:0}
.project-link>span[aria-hidden]::before,.offer-list a>span[aria-hidden]::before{content:'↗';font-size:18px;text-shadow:-34px 34px currentColor;transition:transform 260ms var(--ease-out)}
.v3-faq-list summary::after{content:'+'!important;transform:rotate(0deg);transition:transform 200ms var(--ease-out)}
.v3-faq-list details[open] summary::after{transform:rotate(45deg)}
.hero-cta-tile{transition:transform 160ms var(--ease-out)}
.hero-cta-tile:active{transform:scale(.98)}
@media(hover:hover) and (pointer:fine){
 .v2-nav>a:hover::after,.v2-footer nav>a:hover::after{transform:scaleX(1);transform-origin:left}
 .offer-list article:hover::before{opacity:.16}
 .project-link:hover>span[aria-hidden]::before,.offer-list a:hover>span[aria-hidden]::before{transform:translate(34px,-34px)}
}
@media(prefers-reduced-motion:reduce){.v3-faq-list summary::after{transition:none}.project-link:hover>span[aria-hidden]::before,.offer-list a:hover>span[aria-hidden]::before,.hero-cta-tile:active{transform:none}}
.motion-line{display:block;overflow:clip;overflow-clip-margin:.12em;padding-bottom:.09em;margin-bottom:-.09em}
.v3-body .promise-title .motion-line{color:inherit}
.motion-line-inner{display:block}
.v3-body .promise-title .motion-line-inner{color:inherit}
.v3-body .promise-title .motion-accent{color:var(--lavender)}
.motion-replay{position:fixed;bottom:1rem;right:1rem;z-index:200;background:var(--paper);color:var(--ink);border:1px solid var(--ink);border-radius:99px;padding:.7rem 1rem;min-height:44px;font:inherit;font-size:.8rem;cursor:pointer}
.project-art img{transition:transform var(--duration-base) var(--ease-out);transform-origin:50% 55%}
.project-link>span[aria-hidden],.offer-list a>span[aria-hidden]{display:inline-block;transition:transform var(--duration-fast) var(--ease-out)}
@media(hover:hover) and (pointer:fine){
 .project-art:hover img{transform:scale(1.015)}
 .project-link:hover>span[aria-hidden],.offer-list a:hover>span[aria-hidden]{transform:translate(3px,-3px)}
}
@media(prefers-reduced-motion:reduce){
 .project-art:hover img,.project-link:hover>span[aria-hidden],.offer-list a:hover>span[aria-hidden]{transform:none}
}
