/* Personal meeting request: generous spacing, clear labels, native validation. */
.meeting-form{max-width:800px;margin-top:64px}
.meeting-fields{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.meeting-form label{display:block;font-size:15px;color:var(--paper)}
.meeting-form input,.meeting-form textarea{display:block;box-sizing:border-box;width:100%;margin-top:14px;padding:20px 24px;border:1px solid #646058;border-radius:22px;background:#141513;color:var(--paper);font:inherit;font-size:16px;line-height:1.6;transition:border-color .2s,background-color .2s,box-shadow .2s}
.meeting-form input:hover,.meeting-form textarea:hover{border-color:#918778}
.meeting-form input:focus-visible,.meeting-form textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px;border-color:var(--gold);background:#191a17;box-shadow:0 0 0 8px #c5a0590a}
.meeting-form textarea{min-height:200px;resize:vertical;border-radius:28px}
.meeting-message{margin-top:40px}
.meeting-form .field-hint{display:block;margin-top:14px;padding-right:8px;text-align:right;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.meeting-form button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:64px;margin-top:40px;padding:9px 10px 9px 28px;border-radius:999px;background:var(--paper);color:var(--ink);border:1px solid var(--paper);font:inherit;font-size:16px;cursor:pointer;transition:background-color .2s,border-color .2s,transform .2s}
.meeting-form button span{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;background:#080909;color:var(--paper);font-size:22px;transition:transform .2s}
.meeting-form button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.meeting-form button:hover{background:var(--gold);border-color:var(--gold);transform:translateY(-2px)}
.meeting-form button:hover span{transform:rotate(45deg)}
.meeting-form button:active{transform:translateY(0)}
.meeting-form .meeting-note{font-size:14px;margin:22px 0 0;max-width:60ch}
.meeting-form [role=status]{font-size:14px;margin-top:24px;max-width:60ch;color:var(--paper)}
@media(max-width:600px){.meeting-fields{grid-template-columns:1fr;gap:32px}.meeting-form{margin-top:48px}.meeting-message{margin-top:32px}.meeting-form button{width:100%}}
@media(prefers-reduced-motion:reduce){.meeting-form input,.meeting-form textarea,.meeting-form button,.meeting-form button span{transition:none}.meeting-form button:hover,.meeting-form button:hover span{transform:none}}

.meeting-form button:disabled{opacity:.65;cursor:wait;transform:none}
