*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;-webkit-hyphens:auto;hyphens:auto;margin:0 0 .5em;font-weight:600;line-height:1.15}h1{font-size:calc(clamp(2.1rem,4.6vw,3.6rem))}h2{font-size:calc(clamp(1.6rem,3vw,2.4rem))}h3{font-size:1.2rem}p{margin:0 0 1em}button,input,select,textarea{font:inherit;color:inherit}:root{--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--space-9:6.5rem;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 8px 30px -12px #0000002e;--container:1160px}.container{width:100%;max-width:var(--container);padding:0 var(--space-5);margin:0 auto}.section{padding:var(--space-9) 0}.section--tight{padding:var(--space-8) 0}.section--soft{background:var(--c-primary-soft)}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--c-primary);margin-bottom:var(--space-4);font-size:.8rem;font-weight:600;display:inline-block}.lead{max-width:62ch;font-size:1.15rem}.lead,.muted{color:var(--c-muted)}.section-head{max-width:680px;margin-bottom:var(--space-7)}.section-head--center{text-align:center;margin-left:auto;margin-right:auto}.btn{border-radius:var(--radius);cursor:pointer;border:1.5px solid #0000;justify-content:center;align-items:center;gap:.5em;padding:.85em 1.5em;font-weight:600;line-height:1.2;text-decoration:none;transition:transform .15s,background-color .15s,box-shadow .15s,border-color .15s;display:inline-flex}.btn:focus-visible{outline:3px solid color-mix(in srgb,var(--c-primary) 40%,transparent);outline-offset:2px}.btn--primary{background:var(--c-primary);color:var(--c-primary-contrast)}.btn--primary:hover{background:color-mix(in srgb,var(--c-primary) 88%,#000);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn--ghost{border-color:var(--c-border);color:var(--c-text);background:0 0}.btn--ghost:hover{border-color:var(--c-primary);color:var(--c-primary)}.btn--lg{padding:1em 1.8em;font-size:1.05rem}.btn--block,.input{width:100%}.btn[disabled]{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:var(--space-6)}.grid{gap:var(--space-5);display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=900px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.section{padding:var(--space-8) 0}.container{padding:0 var(--space-4)}}.field{gap:var(--space-2);margin-bottom:var(--space-5);display:grid}.field__label{font-weight:600}.field__help{color:var(--c-muted);font-size:.9rem}.field__error{color:#b42318;font-size:.9rem}.input{border:1.5px solid var(--c-border);border-radius:calc(var(--radius) * .7);background:var(--c-surface);padding:.8em 1em;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-primary) 18%,transparent);outline:none}.input--error{border-color:#b42318}textarea.input{resize:vertical;min-height:110px}.choice{cursor:pointer;border:1.5px solid var(--c-border);border-radius:calc(var(--radius) * .7);background:var(--c-surface);align-items:flex-start;gap:.75em;padding:.9em 1em;transition:border-color .15s,background-color .15s;display:flex}.choice:hover{border-color:color-mix(in srgb,var(--c-primary) 50%,var(--c-border))}.choice:has(input:checked){border-color:var(--c-primary);background:var(--c-primary-soft)}.choice input{accent-color:var(--c-primary);flex:none;width:1.05em;height:1.05em;margin-top:.3em}.choices{gap:var(--space-2);display:grid}.choices--inline{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}dd,h1,h2,h3,h4,li,p,td{overflow-wrap:break-word}
