.nf-trap{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.nf-newsletter{width:min(100%,440px)}
.nf-newsletter .jn-form{width:100%}
.nf-consent,.nf-status{margin:12px 0 0;font:400 12px/1.5 Arial,sans-serif;color:#777}
/* The consent note keeps its space but only shows once an address is being typed. */
.nf-newsletter .nf-consent{margin:14px 0 0;text-align:left;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s}
.nf-newsletter:has(input[name=email]:not(:placeholder-shown)) .nf-consent,.nf-newsletter.is-typing .nf-consent{opacity:1;visibility:visible}
@media(prefers-reduced-motion:reduce){.nf-newsletter .nf-consent{transition:none}}
.nf-status{font-size:14px;color:#222}
.nf-status[data-state=error]{color:#A12C25}
.nf-page{max-width:620px;margin:0 auto;padding:180px 24px 120px;min-height:70vh}
.nf-page h1{font-size:clamp(40px,5.16vw,65px);line-height:1.05;letter-spacing:-.04em;font-weight:400;margin:0 0 24px}
@media(max-width:860px){.nf-page{padding-inline:20px}}
.nf-page p{font-size:17px;line-height:1.6;color:#686868}
.nf-page button{border:0;border-radius:999px;padding:15px 26px;background:#171717;color:#fff;font:inherit;cursor:pointer;margin-top:18px}
.nf-page button:focus-visible{outline:2px solid #2955DF;outline-offset:4px}
.nf-page button:disabled{opacity:.6;cursor:wait}
