*{box-sizing:border-box}body{margin:0;background:#fffaf7;color:#403638;font-family:Arial,Helvetica,sans-serif;-webkit-text-size-adjust:100%}.contact-shell{max-width:920px;margin:auto;padding:62px 24px 54px}.contact-intro{max-width:700px;margin:0 auto 32px;text-align:center}.eyebrow{display:inline-block;color:#a85e6b;background:#f8e9e8;border-radius:999px;padding:7px 13px;font-size:11px;font-weight:800;letter-spacing:.11em}.contact-intro h1{margin:17px 0 12px;font-size:clamp(31px,4vw,45px);line-height:1.08}.contact-intro p{color:#78676d;font-size:16px;line-height:1.6}.contact-card{max-width:780px;margin:auto;background:#fff;border:1px solid #eadfe1;border-radius:22px;padding:31px;box-shadow:0 14px 38px rgba(111,69,76,.08)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}.contact-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;color:#69484e}.contact-form b{color:#a85e6b}.contact-form small{font-weight:400;color:#8c7a7e}.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:46px;border:1px solid #dfd0d3;border-radius:11px;background:#fffdfc;color:#403638;padding:11px 13px;font:inherit;font-size:16px;outline:none}.contact-form textarea{resize:vertical;min-height:170px;line-height:1.5}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#c97582;box-shadow:0 0 0 3px rgba(201,117,130,.12)}.wide{grid-column:1/-1}.actions{display:flex;gap:12px}.actions button{min-height:46px;border:1px solid #a85e6b;border-radius:11px;padding:11px 22px;background:#a85e6b;color:#fff;font-weight:800;font-size:14px;cursor:pointer}.actions .secondary{background:#fff;color:#806d71;border-color:#dfd0d3}.ok,.err{border-radius:12px;padding:13px 15px;margin-bottom:20px}.ok{background:#f8eeee;border:1px solid #e8cfd3}.err{background:#fff4f3;border:1px solid #e6b8b4;color:#8b3e39}.hint{margin:0;color:#9a7779;font-size:12px}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:700px){.contact-shell{padding:38px 14px 34px}.contact-intro{margin-bottom:24px}.contact-intro h1{font-size:32px}.contact-card{padding:21px 16px;border-radius:18px}.contact-form{grid-template-columns:1fr;gap:15px}.wide{grid-column:auto}.actions{flex-direction:column}.actions button{width:100%;min-height:50px}.contact-form input,.contact-form select{min-height:50px}}
.field-label{display:inline-flex;align-items:baseline;gap:4px;line-height:1.25}

.field-label{position:relative;padding-right:30px;min-height:22px}
.valid-check{display:none;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#24b53a;color:#fff;font-size:16px;font-weight:900;line-height:1;position:absolute;right:0;top:50%;transform:translateY(-50%)}
.field-wrap.is-valid .valid-check{display:inline-flex}
