.contact-main{max-width:880px;color:var(--ink);margin:0 auto;padding:clamp(40px,6vw,72px) clamp(20px,4vw,32px) clamp(64px,8vw,96px);font-size:1.02rem;line-height:1.65}.contact-hero{margin-bottom:36px}.contact-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;font-size:.78rem;font-weight:600;display:inline-block}.contact-title{font-family:var(--font-display,Georgia, serif);letter-spacing:-.012em;color:var(--ink);margin:0 0 14px;font-size:clamp(2rem,4vw,3rem);line-height:1.05}.contact-lede{color:var(--body);max-width:62ch;margin:0;font-size:1.08rem}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:32px 0 48px;display:grid}@media (max-width:560px){.contact-grid{grid-template-columns:1fr}}.contact-card{border:1px solid var(--border);background:var(--paper,#fff);border-radius:12px;padding:18px 20px}.contact-card h3{color:var(--ink);margin:0 0 8px;font-size:.95rem}.contact-card p{color:var(--body);margin:0;line-height:1.55}.contact-card a{color:var(--soft-blue);text-decoration:underline}.contact-card__hint{color:var(--muted);font-size:.85rem}.contact-form-section{border-top:1px solid var(--border);margin-top:16px;padding-top:36px}.contact-form-head h2{font-family:var(--font-display,Georgia, serif);letter-spacing:-.012em;margin:0 0 8px;font-size:1.6rem}.contact-form-head p{color:var(--body);max-width:56ch;margin:0 0 24px}.contact-form{gap:16px;max-width:620px;display:grid}.contact-form__row{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (max-width:540px){.contact-form__row{grid-template-columns:1fr}}.contact-form__field{display:block}.contact-form__label{color:var(--ink);letter-spacing:.005em;margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.contact-form__field input,.contact-form__field textarea{width:100%;font:inherit;color:var(--ink);background:var(--white,#fff);border:1px solid var(--border-2,#d8cfbe);border-radius:10px;padding:11px 14px;font-size:.95rem;transition:border-color .14s,box-shadow .14s}.contact-form__field textarea{resize:vertical;min-height:140px;font-family:inherit}.contact-form__field input:focus,.contact-form__field textarea:focus{border-color:var(--soft-blue);box-shadow:0 0 0 3px var(--soft-blue-glow,#3b6dac2e);outline:none}.contact-form__error{color:#b3261e;margin:0;font-size:.86rem}.contact-form__submit{appearance:none;background:var(--ink);color:var(--white,#fff);font:inherit;cursor:pointer;letter-spacing:.005em;border:0;border-radius:10px;width:fit-content;padding:12px 22px;font-size:.95rem;font-weight:600}.contact-form__submit:hover{opacity:.9}.contact-form__submit:disabled{opacity:.55;cursor:progress}.contact-form__legal{color:var(--muted);margin:4px 0 0;font-size:.78rem}.contact-form__legal a{color:inherit;text-decoration:underline}.contact-success{border:1px solid var(--border);color:var(--ink);background:#f5fbf4;border-radius:14px;gap:6px;max-width:520px;padding:28px 24px;display:grid}.contact-success svg{color:#5c7a4a}.contact-success h3{font-family:var(--font-display,Georgia, serif);margin:4px 0 0;font-size:1.25rem}.contact-success p{color:var(--body);margin:0}.contact-after{border-top:1px solid var(--border);margin-top:56px;padding-top:28px}.contact-after h3{color:var(--ink);margin:0 0 10px;font-size:1rem}.contact-after p{color:var(--body);max-width:64ch;margin:0 0 12px}.contact-after a{color:var(--soft-blue);text-decoration:underline}
