.contact-page{padding-top:clamp(30px,5vw,58px);padding-bottom:clamp(46px,7vw,82px)}
.contact-page__heading{max-width:760px;margin-bottom:clamp(24px,4vw,42px)}
.contact-page__heading .eyebrow{margin:0 0 9px;color:var(--color-green);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.contact-page__heading h1{margin:0;color:var(--color-green);font-family:var(--font-display);font-size:clamp(38px,6vw,64px);font-weight:800;letter-spacing:-.055em;line-height:1.02}
.contact-page__heading>p:last-child{max-width:680px;margin:14px 0 0;color:var(--color-gray-mid);font-size:clamp(16px,2vw,19px);line-height:1.55}
.contact-page__layout{display:grid;gap:22px;align-items:start}
.contact-form{min-width:0;padding:clamp(18px,4vw,34px);border:1px solid #e2e9e4;border-radius:22px;background:#fff;box-shadow:0 14px 38px rgba(24,49,40,.07)}
.contact-form__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.contact-form__field{display:grid;gap:7px;min-width:0}
.contact-form__field--wide{grid-column:1/-1}
.contact-form__field label{color:var(--color-ink);font-size:13px;font-weight:750}
.contact-form__field label span[aria-hidden="true"]{color:var(--color-coral)}
.contact-form__optional{color:var(--color-gray-mid);font-size:11px;font-weight:500}
.contact-form__field input,.contact-form__field textarea{width:100%;min-width:0;padding:12px 13px;border:1px solid #d8e0da;border-radius:11px;background:#fbfcfb;color:var(--color-ink);font:500 14px/1.45 var(--font-body);transition:border-color .16s ease,box-shadow .16s ease}
.contact-form__field input{height:46px}
.contact-form__field textarea{min-height:145px;resize:vertical}
.contact-form__field input:focus,.contact-form__field textarea:focus{outline:0;border-color:var(--color-green);box-shadow:0 0 0 3px rgba(0,120,95,.13)}
.contact-form__honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-form__verification{margin-top:20px}
.contact-form__unavailable{margin:19px 0 0;padding:11px 13px;border-radius:10px;background:#fff7e7;color:#7b5c1e;font-size:13px}
.contact-form__submit-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}
.contact-form__submit-row .button{min-height:48px;padding:12px 20px;background:var(--color-coral);color:#fff;font-size:14px}
.contact-form__submit-row .button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.contact-form__feedback{flex:1;min-width:180px;margin:0;color:var(--color-green);font-size:13px;line-height:1.45}
.contact-form__feedback[data-state="error"]{color:#bd2e26}
.contact-page__aside{padding:24px;border-radius:20px;background:var(--color-green);color:#fff}
.contact-page__aside-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.15);font-size:23px}
.contact-page__aside h2{margin:15px 0 7px;font-family:var(--font-display);font-size:23px;font-weight:800;letter-spacing:-.03em}
.contact-page__aside p{margin:0;color:rgba(255,255,255,.88);font-size:14px;line-height:1.55}
.contact-page__aside>a{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:#fff;font-size:13px;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.contact-page__aside>a span{font-size:17px}
@media(min-width:850px){.contact-page__layout{grid-template-columns:minmax(0,1fr) 270px;gap:28px}.contact-page__aside{margin-top:2px}}
@media(max-width:520px){.contact-form__fields{grid-template-columns:1fr;gap:14px}.contact-form__field--wide{grid-column:auto}.contact-form__submit-row{align-items:stretch;flex-direction:column}.contact-form__submit-row .button{width:100%}.contact-form__feedback{min-width:0}}
