.contact-page{--contact-glow:color-mix(in srgb, var(--accent) 16%, transparent);--contact-glow-secondary:color-mix(in srgb, var(--secondaryAction) 14%, transparent);box-sizing:border-box;padding-bottom:4rem}.contact-hero{isolation:isolate;margin-bottom:clamp(1.5rem,3vw,2rem);padding:clamp(2rem,5vw,3rem) 0 clamp(2rem,4vw,2.5rem);position:relative}.contact-hero__backdrop{z-index:-1;background:radial-gradient(ellipse 70% 55% at 10% 20%, var(--contact-glow), transparent 58%), radial-gradient(ellipse 60% 45% at 90% 10%, var(--contact-glow-secondary), transparent 52%), var(--background);margin-inline:-20px;position:absolute;inset:0}.contact-hero__grid{align-items:start;gap:clamp(1.75rem,4vw,2.5rem);display:grid}@media (min-width:900px){.contact-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}.contact-hero__eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--card));border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));border-radius:999px;margin:0 0 .75rem;padding:.25rem .65rem;font-size:.8125rem;font-weight:600;display:inline-block}.contact-hero h1{letter-spacing:-.02em;color:var(--text);margin:0 0 .75rem;font-size:clamp(1.875rem,4vw,2.5rem);font-weight:650;line-height:1.15}.contact-hero__lead{max-width:36ch;color:var(--textSecondary);margin:0;font-size:1.0625rem;line-height:1.6}.contact-hero__cards{gap:.75rem;margin-top:1.5rem;display:grid}.contact-hero__card{background:color-mix(in srgb, var(--card) 88%, transparent);border:1px solid var(--border);box-shadow:0 1px 0 color-mix(in srgb, var(--text) 4%, transparent);border-radius:.75rem;align-items:flex-start;gap:.75rem;padding:.9rem 1rem;display:flex}.contact-hero__card strong{color:var(--text);margin-bottom:.15rem;font-size:.9375rem;display:block}.contact-hero__card p{color:var(--textSecondary);margin:0;font-size:.875rem;line-height:1.45}.contact-hero__card-icon{width:2rem;height:2rem;color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, var(--card));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-radius:.5rem;flex-shrink:0;place-items:center;font-size:1.1rem;display:grid}.contact-panel__title{letter-spacing:-.01em;color:var(--text);margin:0 0 1.25rem;font-size:1.25rem;font-weight:650}.contact-panel{background:var(--card);border:1px solid var(--border);box-shadow:0 1px 0 color-mix(in srgb, var(--text) 5%, transparent), 0 12px 40px color-mix(in srgb, var(--text) 6%, transparent);border-radius:1rem;padding:clamp(1.25rem,3vw,1.75rem)}.contact-form{flex-direction:column;gap:1.25rem;display:flex}.contact-form__honeypot{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contact-form__alert{color:#7f1d1d;background:color-mix(in srgb, #fecaca 55%, var(--card));border:1px solid color-mix(in srgb, #f87171 45%, var(--border));border-radius:.625rem;padding:.75rem 1rem;font-size:.9375rem;line-height:1.45}@media (prefers-color-scheme:dark){.contact-form__alert{color:#fecaca;background:color-mix(in srgb, #7f1d1d 35%, var(--card))}}.contact-form__grid{gap:1rem;display:grid}@media (min-width:520px){.contact-form__grid{grid-template-columns:1fr 1fr}}.contact-form__field{flex-direction:column;gap:.4rem;display:flex}.contact-form__field label{color:var(--text);font-size:.875rem;font-weight:600}.contact-form__field input,.contact-form__field select,.contact-form__field textarea{box-sizing:border-box;width:100%;font:inherit;color:var(--text);background:var(--background);border:1px solid var(--border);field-sizing:content;border-radius:.5rem;padding:.65rem .75rem;font-size:1rem;transition:border-color .15s,box-shadow .15s}.contact-form__field input:focus-visible,.contact-form__field select:focus-visible,.contact-form__field textarea:focus-visible{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}.contact-form__field input[aria-invalid=true],.contact-form__field select[aria-invalid=true],.contact-form__field textarea[aria-invalid=true]{border-color:#f87171}.contact-form__field textarea{resize:vertical;min-height:9rem}.contact-form__topic-tips{background:color-mix(in srgb, var(--accent) 8%, var(--card));border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));border-radius:.625rem;margin:-.35rem 0 0;padding:.85rem 1rem}.contact-form__topic-tips-title{letter-spacing:.01em;color:var(--text);margin:0 0 .5rem;font-size:.8125rem;font-weight:650}.contact-form__topic-tips-list{color:var(--textSecondary);margin:0;padding-inline-start:1.15rem;font-size:.8125rem;line-height:1.5}.contact-form__topic-tips-list li{margin-bottom:.25rem}.contact-form__topic-tips-list li:last-child{margin-bottom:0}.contact-form__hint{color:var(--textSecondary);text-align:right;margin:0;font-size:.8125rem}.contact-form__actions{flex-direction:column;gap:.75rem;padding-top:.25rem;display:flex}.contact-form__primary,.contact-form__secondary{min-height:2.75rem;font:inherit;cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:.65rem 1.25rem;font-size:1rem;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.contact-form__primary{color:#fff;background:var(--accent)}.contact-form__primary:hover:not(:disabled){filter:brightness(1.05)}.contact-form__primary:disabled{opacity:.65;cursor:not-allowed}.contact-form__secondary{color:var(--text);background:var(--backgroundElement);border:1px solid var(--border);align-self:flex-start}.contact-form__privacy{color:var(--textSecondary);margin:0;font-size:.8125rem;line-height:1.45}.contact-form__privacy a{font-weight:600}.contact-form__success{flex-direction:column;align-items:flex-start;gap:.75rem;padding:.5rem 0;display:flex}.contact-form__success-icon{background:color-mix(in srgb, #22c55e 22%, var(--card));border:2px solid color-mix(in srgb, #22c55e 55%, var(--border));border-radius:999px;width:2.75rem;height:2.75rem;position:relative}.contact-form__success-icon:after{content:"";border:.2rem solid #16a34a;border-width:0 .2rem .2rem 0;width:.55rem;height:1.1rem;position:absolute;top:.45rem;left:.95rem;transform:rotate(45deg)}.contact-form__success-title{color:var(--text);margin:0;font-size:1.375rem;font-weight:650}.contact-form__success-lead{max-width:40ch;color:var(--textSecondary);margin:0;line-height:1.55}
