.mdf-contact-page { margin-top: 18px; margin-bottom: 54px; }
.mdf-contact-hero { display: flex; min-height: 230px; margin-bottom: 0; padding: 42px 48px; align-items: center; justify-content: space-between; gap: 40px; color: #354039; background: linear-gradient(135deg, #edf7ef 0%, #f9fcf9 65%, #fff 100%); border: 1px solid #dce9df; overflow: hidden; }
.mdf-contact-kicker { display: block; margin-bottom: 9px; color: #62c174; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.mdf-contact-hero h1 { margin: 0 0 10px; color: #223329; font-size: clamp(36px, 5vw, 58px); font-weight: 750; letter-spacing: -.04em; line-height: 1; }
.mdf-contact-hero p { max-width: 650px; margin: 0; color: #59675e; font-size: 16px; line-height: 1.65; }
.mdf-contact-hero-mark { margin-right: -20px; color: rgba(57,141,76,.08); font-size: 150px; font-weight: 800; letter-spacing: -.12em; line-height: .7; }
.mdf-contact-layout { margin: 0; border: 1px solid #dbe5de; border-top: 0; }
.mdf-contact-layout > [class*="col-"] { padding: 0; }
.mdf-contact-form-panel { padding: 42px 48px 46px; }
.mdf-contact-section-heading { margin-bottom: 30px; }
.mdf-contact-section-heading > span { color: #398d4c; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.mdf-contact-section-heading h2 { margin: 5px 0 7px; color: #1d2921; font-size: 28px; }
.mdf-contact-section-heading p { margin: 0; color: #6a756d; font-size: 13px; }
.mdf-contact-form .form-group { margin-bottom: 20px; }
.mdf-contact-form label:not(.mdf-contact-check) { display: block; margin-bottom: 7px; color: #26342a; font-size: 12px; font-weight: 700; }
.mdf-contact-form label small { margin-left: 4px; color: #7a847d; font-size: 10px; font-weight: 500; }
.mdf-contact-form .form-control { width: 100%; min-height: 50px; padding: 12px 14px; color: #253129; background: #fbfcfb; border: 1px solid #ccd7cf; font-size: 14px; box-shadow: none; }
.mdf-contact-form textarea.form-control { min-height: 150px; resize: vertical; }
.mdf-contact-form .form-control::placeholder { color: #8a948d; opacity: 1; }
.mdf-contact-form .form-control:hover { border-color: #9eb2a4; }
.mdf-contact-form .form-control:focus { background: #fff; border-color: #398d4c; box-shadow: 0 0 0 3px rgba(57,141,76,.13); outline: 0; }
.mdf-contact-consents { margin: 2px 0 22px; padding: 17px 18px; background: #f4f7f4; border-left: 3px solid #398d4c; }
.mdf-contact-check { display: flex; min-height: 34px; margin: 0; align-items: flex-start; gap: 10px; color: #465149; cursor: pointer; font-size: 12px; line-height: 1.5; }
.mdf-contact-check + .mdf-contact-check { margin-top: 8px; }
.mdf-contact-check input { width: 18px; height: 18px; margin: 0; flex: 0 0 18px; accent-color: #398d4c; cursor: pointer; }
.mdf-contact-recaptcha { min-height: 78px; margin-bottom: 22px; }
.mdf-contact-submit-row { display: flex; align-items: center; gap: 18px; }
.mdf-contact-submit { display: inline-flex; min-width: 210px; min-height: 52px; padding: 13px 18px; align-items: center; justify-content: space-between; color: #fff !important; background: #2f8c45; border: 1px solid #2f8c45; font-size: 12px; text-transform: none; }
.mdf-contact-submit:hover,.mdf-contact-submit:focus { color: #fff !important; background: #216f34; border-color: #216f34; }
.mdf-contact-submit-row > span { max-width: 210px; color: #778179; font-size: 11px; line-height: 1.5; }
.mdf-contact-error { margin: 5px 0 0; color: #b42318; font-size: 11px; font-weight: 600; }
.mdf-contact-form .form-control.mdf-contact-error { margin-top: 0; border-color: #c44237; color: #253129; font-weight: 400; }
.mdf-contact-aside { height: 100%; background: #f2f7f3; border-left: 1px solid #dbe5de; }
.mdf-contact-direct { padding: 42px 38px; color: #354039; background: linear-gradient(135deg, #edf7ef 0%, #f9fcf9 65%, #fff 100%); border-bottom: 1px solid #dce9df; }
.mdf-contact-direct .mdf-contact-kicker { color: #398d4c; }
.mdf-contact-direct h2 { margin: 0 0 25px; color: #223329; font-size: 25px; }
.mdf-contact-direct-link { display: flex; min-height: 66px; padding: 12px 0; align-items: center; gap: 15px; color: #26342a !important; border-top: 1px solid #d4e2d7; text-decoration: none !important; }
.mdf-contact-direct-link:last-child { border-bottom: 1px solid #d4e2d7; }
.mdf-contact-direct-link i { width: 30px; flex: 0 0 30px; font-size: 25px; text-align: center; }
.mdf-contact-direct-link span { font-size: 16px; font-weight: 700; }
.mdf-contact-direct-link small { display: block; margin-bottom: 2px; color: #5c7763; font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.mdf-contact-company { padding: 34px 38px 26px; }
.mdf-contact-company h3 { margin: 0 0 18px; color: #26342a; font-size: 19px; }
.mdf-contact-company dl { margin: 0 0 20px; }
.mdf-contact-company dl > div { display: grid; padding: 9px 0; grid-template-columns: 120px 1fr; border-bottom: 1px solid #dbe4dd; }
.mdf-contact-company dt { color: #6c776f; font-size: 11px; font-weight: 600; }
.mdf-contact-company dd { margin: 0; color: #2d3a31; font-size: 12px; font-weight: 700; }
.mdf-contact-address { display: flex; align-items: flex-start; gap: 12px; color: #4e5952; font-size: 12px; line-height: 1.7; }
.mdf-contact-address > i { margin-top: 4px; color: #398d4c; font-size: 20px; }
.mdf-contact-address p { margin: 0 0 7px; }
.mdf-contact-social { display: flex; padding: 0 38px 34px; flex-wrap: wrap; gap: 8px; }
.mdf-contact-social a { display: inline-flex; min-height: 38px; padding: 8px 11px; align-items: center; gap: 7px; color: #2d4935; background: #fff; border: 1px solid #cfdbd2; font-size: 11px; font-weight: 700; text-decoration: none; }
.mdf-contact-social a:hover { color: #fff; background: #398d4c; border-color: #398d4c; }
@media (max-width: 991px) {
    .mdf-contact-hero { padding: 36px 32px; }
    .mdf-contact-form-panel { padding: 34px 30px; }
    .mdf-contact-aside { border-top: 1px solid #dbe5de; border-left: 0; }
}
@media (max-width: 575px) {
    .mdf-contact-page { margin-top: 8px; margin-bottom: 30px; padding-right: 15px; padding-left: 15px; }
    .mdf-contact-hero { min-height: 0; padding: 30px 22px; }
    .mdf-contact-hero h1 { font-size: 38px; }
    .mdf-contact-hero p { font-size: 14px; }
    .mdf-contact-hero-mark { display: none; }
    .mdf-contact-form-panel { padding: 28px 20px 32px; }
    .mdf-contact-section-heading h2 { font-size: 24px; }
    .mdf-contact-submit-row { align-items: stretch; flex-direction: column; }
    .mdf-contact-submit { width: 100%; }
    .mdf-contact-submit-row > span { max-width: none; }
    .mdf-contact-direct,.mdf-contact-company { padding-right: 22px; padding-left: 22px; }
    .mdf-contact-social { padding-right: 22px; padding-left: 22px; }
    .g-recaptcha { transform: scale(.86); transform-origin: left top; }
}
