/* Shared project action, matching the post-game catalog. */
.vf-project-cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px 20px;border:1px solid transparent;border-radius:999px;background:linear-gradient(var(--vf-acid),var(--vf-acid)) padding-box,linear-gradient(155deg,#f5ffd3,#97b52a 45%,#e7ffa3) border-box;color:var(--ink);font:500 14px/1.5 var(--vf-body);letter-spacing:0;text-align:center;touch-action:manipulation;transition:box-shadow .18s ease,transform .18s ease}
.vf-project-cta:focus-visible{outline:2px solid var(--vf-cream);outline-offset:4px}
.vf-project-cta:active:not(:disabled){transform:scale(.98)}
.vf-project-cta:disabled{opacity:.7}
@media(hover:hover) and (pointer:fine){.vf-project-cta:hover{box-shadow:0 0 0 3px #d2ff3626}}

/* The invitation retains its heading above the compact project action. */
.faq--chapter .contact-section--key{grid-area:contact;min-width:0;width:100%;max-width:none;margin:0;padding:0;container-type:inline-size;scroll-margin-top:100px}
.vf-contact-well{position:relative;display:grid;gap:12px;margin:0;padding:26px 0 0;background:none;border:0;box-shadow:none}
.vf-contact-key{margin-top:6px}
.vf-contact-key-title{display:block;min-width:0;margin:0;font-family:var(--vf-display);font-size:clamp(32px,12cqw,64px);font-weight:900;line-height:1;letter-spacing:var(--vf-headline-spacing);text-transform:uppercase;white-space:nowrap}
.vf-contact-key-copy{display:block;margin:0;padding:0;font:400 13px/1.45 var(--vf-body);color:#c8d1c7}
@media(max-width:700px){
  .vf-contact-well{padding-top:22px;gap:10px}
  .vf-contact-key-title{font-size:clamp(32px,11.8cqw,46px)}
  .vf-contact-key-copy{font-size:13px;line-height:1.4}
}
@media(max-width:700px) and (max-height:700px){
  .vf-contact-well{padding-top:18px;gap:8px}
  .vf-contact-key-title{font-size:34px}
}
@media(max-width:700px) and (max-height:600px){
  .vf-contact-well{padding-top:14px}
  .vf-contact-key-title{font-size:32px}
}
@media(prefers-reduced-motion:reduce){
  .vf-project-cta{transition:none;transform:none!important}
}
