.contact-page{min-height:100vh;background:radial-gradient(ellipse 60% 40% at 100% 0,color-mix(in srgb,var(--color-violet) 14%,transparent),transparent),var(--color-bg)}.contact-main{width:min(100% - 32px,560px);margin:clamp(40px,6vw,72px) auto}.contact-main h1{margin:0 0 var(--space-3)}.contact-lead{margin:0 0 var(--space-5)}.contact-form{display:grid;grid-gap:var(--space-4);gap:var(--space-4);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-modal);padding:clamp(20px,4vw,32px)}.contact-field{display:grid;grid-gap:var(--space-2);gap:var(--space-2);font-size:var(--text-small);font-weight:600}.contact-field input,.contact-field select,.contact-field textarea{font:inherit;font-weight:400;padding:12px 14px;border-radius:var(--radius-control);border:1px solid var(--color-border)}.contact-check{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--text-small)}.contact-error{background:#fef2f2;color:#b91c1c;padding:10px 12px;border-radius:var(--radius-control);font-size:var(--text-small)}.contact-success,.contact-unavailable{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-modal);padding:clamp(20px,4vw,32px)}.contact-note{margin:0;font-size:var(--text-small);color:color-mix(in srgb,var(--color-plum) 70%,transparent)}