.contact-section { padding: 110px 0; text-align: left; }
.contact-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 90px; align-items: start; }
.contact-section .contact-copy h2 { margin-top: 18px; font-size: clamp(45px, 5vw, 70px); }
.contact-copy > p:not(.eyebrow) { max-width: 500px; color: #6d3027; font-size: 16px; line-height: 1.75; }
.contact-meta { display: flex; flex-direction: column; gap: 5px; max-width: 500px; margin-top: 34px; padding-top: 18px; border-top: 1px solid rgba(95, 30, 21, .3); }
.contact-meta span { color: #6d3027; font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.contact-meta b { color: #fff; font-size: 13px; }
.inquiry-form { display: flex; flex-direction: column; gap: 17px; padding: 34px; background: #fffefa; color: var(--ink); box-shadow: 0 24px 55px rgba(95, 30, 21, .13); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; }
.inquiry-form label { display: flex; flex-direction: column; gap: 8px; }
.inquiry-form label > span { color: var(--pine); font-size: 11px; font-weight: 800; letter-spacing: .04em; }
.inquiry-form label > span b, .consent span b { color: var(--coral); }
.inquiry-form input, .inquiry-form select, .inquiry-form textarea { width: 100%; padding: 13px 14px; border: 1px solid #c6d6d2; border-radius: 0; outline: 0; background: #fff; color: var(--ink); font: inherit; font-size: 14px; transition: border-color .2s, box-shadow .2s; }
.inquiry-form input:invalid { border-color: #c6d6d2; }
.inquiry-form input[aria-invalid="true"] { border-color: #c64635; }
.inquiry-form input:focus, .inquiry-form select:focus, .inquiry-form textarea:focus { border-color: var(--coral); box-shadow: 0 0 0 3px rgba(255, 128, 107, .13); }
.inquiry-form textarea { min-height: 105px; resize: vertical; }
.inquiry-form .consent { display: grid; grid-template-columns: 18px 1fr; align-items: start; gap: 10px; }
.inquiry-form .consent input { width: 17px; height: 17px; margin: 2px 0 0; accent-color: var(--coral); }
.inquiry-form .consent span { font-size: 11px; font-weight: 500; line-height: 1.55; }
.form-error { min-height: 18px; margin: -5px 0 -8px; color: #9f2e20; font-size: 12px; }
.form-submit { align-self: flex-start; margin-top: 0; border: 0; cursor: pointer; }
.form-success { min-height: 520px; padding: 58px 45px; background: #fffefa; color: var(--ink); }
.form-success[hidden] { display: none; }
.form-success > span { display: grid; width: 54px; height: 54px; margin-bottom: 75px; place-items: center; border-radius: 50%; background: var(--pine); color: #fff; font-size: 24px; }
.form-success h3 { margin: 16px 0; font: 400 42px/1.12 Georgia, serif; }
.form-success p:not(.eyebrow) { max-width: 450px; color: var(--muted); font-size: 15px; line-height: 1.7; }
.success-reset { margin-top: 22px; padding: 4px 0; border: 0; border-bottom: 1px solid var(--pine); background: transparent; color: var(--pine); font-size: 12px; font-weight: 800; cursor: pointer; }
@media (max-width: 900px) { .contact-layout { grid-template-columns: 1fr; gap: 40px; } }
@media (max-width: 600px) { .contact-section { padding: 85px 0; } .form-row { grid-template-columns: 1fr; } .inquiry-form { padding: 24px 18px; } .form-success { min-height: 430px; padding: 42px 26px; } .form-success > span { margin-bottom: 50px; } }
