.contact-page .intro-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:1.25rem;display:grid}.contact-page .eyebrow{color:var(--color-eyebrow);text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-display);margin:0;font-size:.82rem;font-weight:700}.contact-page h1{max-width:12ch;margin:.7rem 0 0;font-size:clamp(2.4rem,7vw,4.6rem);line-height:.98}.contact-page .card{border:1px solid var(--color-border);background:color-mix(in srgb, var(--color-panel) 96%, transparent);box-shadow:var(--shadow-soft);border-radius:1.25rem;padding:1.25rem}.contact-page .form-shell{max-width:760px}.contact-page form{gap:1rem;transition:opacity .18s;display:grid;position:relative}.contact-page form.is-tool-active{outline:2px dashed color-mix(in srgb, var(--color-brand) 60%, white);outline-offset:.45rem}.contact-page form.is-sending{pointer-events:none;animation:.7s cubic-bezier(.65,0,.35,1) forwards send-letter}.contact-page form.is-sending:after{content:"✉";color:var(--color-brand);opacity:0;font-size:3.5rem;animation:.7s forwards letter-mark;position:absolute;top:50%;right:0;transform:translateY(-50%)rotate(-8deg)}.contact-page form.is-success{opacity:1;animation:none}.contact-page form.is-success>:not(#form-status),.contact-page #new-message{display:none}.contact-page form.is-success+#new-message{margin-top:.75rem;display:inline-block}.contact-page .field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.contact-page label{gap:.4rem;font-weight:700;display:grid}.contact-page input,.contact-page select,.contact-page textarea{border:1px solid var(--color-border);width:100%;color:var(--color-ink);background:var(--color-panel);font:inherit;border-radius:.45rem;padding:.75rem}.contact-page .consent{grid-template-columns:auto 1fr;align-items:start;font-weight:400}.contact-page .consent input{width:1rem;margin-top:.2rem}.contact-page .honeypot{position:absolute;left:-9999px}.contact-page button{isolation:isolate;border:1px solid var(--color-brand);min-height:3rem;color:var(--color-on-brand);background:linear-gradient(90deg, var(--color-brand), var(--color-highlight));font:inherit;cursor:pointer;border-radius:999px;justify-self:start;padding:.74rem 1.4rem;font-weight:700;transition:background .18s,border-color .18s,color .18s;position:relative;overflow:hidden}.contact-page button:before,.contact-page button:after{content:"";z-index:1;pointer-events:none;height:.16rem;transition:transform .22s;position:absolute;transform:scaleX(0)}.contact-page button:before{background:var(--color-bg);transform-origin:100%;transition-duration:0s;top:0;left:0;right:0}.contact-page button:after{background:linear-gradient(90deg, var(--color-brand), var(--color-highlight));transform-origin:0;bottom:0;left:0;right:0}.contact-page button:hover:not(:disabled){color:var(--hero-secondary-button-text);background:var(--hero-secondary-button-bg);border-color:var(--hero-secondary-button-border)}.contact-page button:hover:not(:disabled):before,.contact-page button:hover:not(:disabled):after{transform:scaleX(1)}.contact-page button:hover:not(:disabled):before{transition-duration:.22s}.contact-page button.is-tool-submit-active{box-shadow:0 0 0 .2rem color-mix(in srgb, var(--color-brand) 22%, transparent)}.contact-page button:disabled{cursor:not-allowed;opacity:.6}.contact-page .configuration-error{color:var(--color-muted);margin:0}.contact-page #form-status{min-height:1.5rem;margin:0}.contact-page #form-status.is-success{border:1px solid var(--color-brand);color:var(--color-ink);background:color-mix(in srgb, var(--color-brand) 10%, transparent);border-radius:.75rem;padding:1.25rem;animation:.42s both status-in}.contact-page #form-status.is-info{color:var(--color-ink)}.contact-page #form-status.is-error{color:var(--color-danger,#a33a2b)}.contact-page p,.contact-page li{color:var(--color-muted)}.contact-page h2,.contact-page h3{margin-top:0}@keyframes send-letter{0%{opacity:1;transform:translate(0)rotate(0)}35%{opacity:1;transform:translate(-.75rem)rotate(-2deg)scale(.98)}to{opacity:0;transform:translate(115%)rotate(8deg)scale(.72)}}@keyframes letter-mark{0%{opacity:0;transform:translate(-1rem,-50%)rotate(-8deg)scale(.7)}35%{opacity:1}to{opacity:0;transform:translate(7rem,-50%)rotate(14deg)scale(1)}}@keyframes status-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@media (width<=991.98px){.contact-page .intro-grid,.contact-page .field-grid{grid-template-columns:1fr}}
