.contact-common{--contact-surface:#fff;--contact-bg:#f4f6f4;--contact-ink:#20352c;--contact-muted:#607168;--contact-line:#dfe7e0;background:var(--contact-bg);color:var(--contact-ink);padding-bottom:88px}
[data-theme="dark"] .contact-common{--contact-surface:#1b2529;--contact-bg:#11191d;--contact-ink:#edf3ef;--contact-muted:#b7c6bd;--contact-line:#35443c}
.contact-common .contact-shell{max-width:1180px;margin:auto;padding-left:32px;padding-right:32px;box-sizing:border-box}
.contact-common .contact-intro{padding:68px 0 40px}
.contact-common .contact-eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--contact-muted);margin:0 0 14px}
.contact-common h1{font-size:clamp(42px,5vw,64px);line-height:1.1;letter-spacing:-.035em;margin:0 0 20px;color:var(--contact-ink)}
.contact-common .contact-lead{font-size:24px;font-weight:500;margin:0 0 10px;color:var(--contact-ink)}
.contact-common .contact-intro p:last-child{color:var(--contact-muted);max-width:660px;margin-bottom:0}
.contact-common .contact-locations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.contact-common .contact-location{border:1px solid var(--contact-line);border-radius:20px;background:var(--contact-surface);overflow:hidden;box-shadow:0 8px 28px rgba(20,45,30,.035)}
.contact-common .contact-location-body{padding:32px}
.contact-common h2{font-size:30px;line-height:1.2;letter-spacing:-.025em;margin:0 0 22px;color:var(--contact-ink)}
.contact-common address{font-style:normal;font-size:17px;line-height:1.65;margin-bottom:22px;color:var(--contact-muted)}
.contact-common .contact-phone{display:block;font-size:25px;line-height:1.4;font-weight:600;letter-spacing:-.025em;color:var(--contact-ink);margin-bottom:8px}
.contact-common .contact-email{font-size:15px;color:var(--contact-muted);text-decoration:underline;text-underline-offset:4px}
.contact-common .contact-actions{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}
.contact-common .uk-button{border-radius:10px;text-transform:none;letter-spacing:0;font-weight:600;min-height:46px;line-height:44px;padding:0 22px}
.contact-common .contact-route{font-weight:600;font-size:14px;color:var(--contact-ink)}
.contact-common .contact-actions span{margin-left:10px}
.contact-common .map-placeholder{height:255px;min-height:255px;box-sizing:border-box;border:0;border-top:1px solid var(--contact-line);border-radius:0;margin:0;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--contact-bg);color:var(--contact-muted)}
.contact-common .contact-map-symbol{font-size:32px;line-height:1;color:#399533}
.contact-common .map-placeholder p{margin:10px 0 14px;text-align:center;font-size:14px;line-height:1.6}
.contact-common .map-placeholder small{font-size:11px;margin-top:12px}
.contact-common .map-placeholder:has(iframe){padding:0}
.contact-common .map-placeholder iframe{width:100%;height:100%;border:0;min-height:255px}
.contact-common .contact-message{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;margin-top:76px;align-items:start}
.contact-common .contact-message-intro{padding-top:20px}
.contact-common .contact-message-intro p:not(.contact-eyebrow){color:var(--contact-muted);line-height:1.8}
.contact-common .contact-form-card{padding:32px;border:1px solid var(--contact-line);border-radius:20px;background:var(--contact-surface)}
.contact-common .contact-form label{font-size:13px;font-weight:500;color:var(--contact-ink)}
.contact-common .uk-input,.contact-common .uk-textarea{border:1px solid var(--contact-line);border-radius:8px;background:var(--contact-bg);color:var(--contact-ink);margin-top:8px}
.contact-common .uk-input{height:48px}
.contact-common .uk-input:focus,.contact-common .uk-textarea:focus{border-color:#399533;outline:2px solid rgba(57,149,51,.15)}
.contact-common a:focus-visible,.contact-common button:focus-visible{outline:3px solid #70ae62;outline-offset:4px}
@media(max-width:760px){
 .contact-common .contact-shell{padding-left:20px;padding-right:20px}
 .contact-common .contact-intro{padding-top:40px;text-align:center}
 .contact-common .contact-intro p:last-child,.contact-common .contact-top-message{margin-left:auto;margin-right:auto}
 .contact-common .contact-lead{font-size:21px}
 .contact-common .contact-locations,.contact-common .contact-message{grid-template-columns:1fr}
 .contact-common .contact-message{gap:24px;margin-top:40px}
 .contact-common .contact-location-body,.contact-common .contact-form-card{padding:24px;text-align:center}
 .contact-common .contact-phone{font-size:23px}
 .contact-common .contact-actions{justify-content:center}
 .contact-common .contact-form label{display:block;text-align:center}
 .contact-common .contact-form .uk-input,.contact-common .contact-form .uk-textarea{text-align:left}
}

.contact-common .contact-top-message{max-width:720px;margin-top:28px}.contact-common .contact-top-message h2{margin-bottom:14px}.contact-common .contact-top-message p:not(.contact-eyebrow){color:var(--contact-muted);line-height:1.8}.contact-common .contact-message{grid-template-columns:1fr;max-width:900px;margin-top:48px}

.contact-common .contact-locations{align-items:start}.contact-common .contact-locations>.contact-form-card{min-width:0}.contact-common .contact-locations>.contact-form-card .uk-button[type="submit"]{width:100%}

@media(min-width:761px){
 .contact-common .contact-locations{align-items:stretch;grid-template-columns:repeat(2,minmax(0,1fr));}
 .contact-common .contact-locations>.contact-location,.contact-common .contact-locations>.contact-form-card{box-sizing:border-box;height:100%;}
 .contact-common .contact-locations>.contact-location{display:flex;flex-direction:column;}
 .contact-common .contact-location>.map-placeholder{flex:1;}
}
