/* Contact page (contact/index.html): one quiet form column on the paper ground, laid out like the promise and
   process sections (intro left, content right). Rust stays on the send button, the required marks and focus. */
.js .form-page header:not(.is-scrolled):not(.menu-open){background:var(--paper);border-color:var(--line);color:var(--ink)}
.js .form-page header:not(.is-scrolled):not(.menu-open) .button{background:var(--rust);border-color:transparent}
.form-page main{padding-top:88px}
.inquiry{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:0 72px;align-items:start}
.inquiry-intro{position:sticky;top:140px}.inquiry-intro .section-head{margin-bottom:28px}.inquiry-intro h2{font-size:clamp(26px,2.6vw,36px)}.inquiry-intro p{font-size:15px;line-height:2.1;max-width:24em}
.inquiry-body{max-width:640px}
.inquiry-form{display:grid;gap:28px}
.field{display:grid;gap:10px}
.field>span{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--ink)}
.field i{font-style:normal;font-size:11px;font-weight:600;line-height:1.7;padding:0 6px;border:1px solid currentColor;border-radius:3px;color:var(--rust)}.field i.optional{color:var(--muted)}
.field input,.field textarea{width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--ink);font:inherit;font-size:16px;line-height:1.7}
.field textarea{min-height:200px;resize:vertical}
.field input:focus-visible,.field textarea:focus-visible,.agree input:focus-visible{outline:3px solid var(--rust);outline-offset:2px}
.agree{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--ink)}.agree input{flex:none;width:22px;height:22px;margin:5px 0 0;accent-color:var(--rust)}.agree a{text-decoration:underline;text-underline-offset:4px}
.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.inquiry-form .button{justify-self:start;cursor:pointer}.inquiry-form .button:disabled{opacity:.6;cursor:wait}
.form-status{font-size:15px;color:var(--ink);min-height:1.9em}.form-status.is-error{color:var(--rust);font-weight:600}
.inquiry-done{padding:40px 0;border-top:2px solid var(--rust)}.inquiry-done h3{margin-bottom:12px}.inquiry-done p{font-size:15px;margin-bottom:32px}.inquiry-done:focus{outline:none}
@media(max-width:900px){.js .form-page main{padding-top:76px}html:not(.js) .form-page main{padding-top:0}.inquiry{display:block}.inquiry-intro{position:static;margin-bottom:40px}.inquiry-body{max-width:none}}
@media(max-width:600px){.inquiry-form .button,.inquiry-done .button{width:100%}}
