.contact-hero > img { object-position: center 58%; filter: saturate(.7) brightness(.78); }
.contact-hero::after { background: linear-gradient(90deg,rgba(8,9,8,.84),rgba(8,9,8,.3) 62%,rgba(8,9,8,.46)),linear-gradient(0deg,rgba(8,9,8,.64),transparent 58%); }
.contact-hero .company-hero-copy { width: min(720px,75%); }
.contact-hero-cta { margin-top: 30px; min-width: 145px; }
.contact-section { padding: clamp(80px,10vw,140px) 0; background: #fff; scroll-margin-top: 70px; }
.contact-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(50px,9vw,130px); align-items: start; }
.contact-copy { position: sticky; top: 110px; }
.contact-copy h2 { margin: 20px 0 26px; font-size: clamp(3rem,6vw,6.5rem); font-weight: 400; line-height: .92; letter-spacing: -.065em; }
.contact-copy > p:not(.company-label) { max-width: 460px; margin: 0 0 25px; color: #666762; line-height: 1.7; }
.contact-form-panel { padding: clamp(26px,3.5vw,42px); border: 1px solid rgba(17,18,16,.13); border-radius: 8px; background: #f7f7f5; }
.contact-form { display: grid; gap: 19px; }
.contact-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.contact-form label { display: grid; gap: 8px; color: #40413f; font-size: .72rem; }
.contact-form input,.contact-form select,.contact-form textarea { width: 100%; border: 1px solid #c9cac7; border-radius: 4px; padding: 12px 13px; color: #111; background: #fff; font: inherit; font-size: .88rem; outline: 0; }
.contact-form textarea { resize: vertical; }
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color: #111; box-shadow: 0 0 0 2px rgba(17,17,17,.08); }
.contact-form.was-validated :invalid { border-color: #9d362f; }
.contact-form .contact-consent { grid-template-columns: auto 1fr; align-items: start; gap: 10px; color: #62635f; line-height: 1.45; }
.contact-consent input { width: 17px; height: 17px; margin-top: 2px; accent-color: #171815; }
.contact-consent a { color: inherit; }
.contact-form .btn { justify-self: start; min-width: 160px; padding: .8rem 1.4rem; }
.contact-form .btn:disabled { opacity: .55; }
.contact-form-status { min-height: 21px; margin: 0; font-size: .75rem; }
.contact-paths .company-card { display: flex; flex-direction: column; }
.contact-paths .company-card p { margin-bottom: 24px; }
.contact-paths .company-card a { margin-top: auto; color: #fff; font-size: .76rem; font-weight: 600; text-decoration: none; }
.contact-paths .company-card a:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 991.98px) { .contact-grid { grid-template-columns: 1fr; } .contact-copy { position: static; } .contact-copy > p:not(.company-label) { max-width: 620px; } }
@media (max-width: 767.98px) { .contact-section { padding: 65px 0; } .contact-hero .company-hero-copy { width: 100%; } .contact-form-panel { padding: 25px 20px; } .contact-form-row { grid-template-columns: 1fr; } }
