main{max-width:1100px;margin:auto;padding:40px 32px 80px}
input,select,textarea,button{font-size:16px;min-height:44px}
textarea{font-weight:400;resize:vertical;white-space:pre-wrap;overflow-wrap:anywhere}
label{display:block;margin:16px 0}
fieldset{min-width:0;margin:0;border:1px solid var(--line,#ddd);padding:20px}
legend{padding:0 10px}
.contact-toolbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:20px 0}
.contact-toolbar label{flex:1 1 280px;margin:0;min-width:0}
.contact-toolbar select{width:100%;max-width:100%;margin-top:7px;height:52px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.contact-toolbar button{height:52px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
#contact-message:focus{outline:2px solid #97774e;outline-offset:3px}
.contact-latest{margin:0 0 20px;border:1px solid var(--line,#ddd);padding:12px 16px;background:var(--white,#fffdf9)}
.contact-latest summary{cursor:pointer;min-height:44px;display:flex;align-items:center}
.contact-latest dl{margin:8px 0 0}
.contact-latest dt{font-size:12px;font-weight:600;margin-top:12px;color:var(--muted)}
.contact-latest dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
button:disabled{opacity:.55;cursor:default}
@media(max-width:800px){main{padding:24px 20px 60px}.contact-grid{grid-template-columns:1fr;gap:16px}fieldset{padding:16px}.contact-toolbar button{width:100%}}
@media(max-width:360px){main{padding:20px 12px}fieldset{padding:12px}}
