.contact-page{background:#f5f3ec}
.contact-hero{padding:76px 5% 68px;border-bottom:1px solid #c9ccc0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,.45fr);gap:8%;align-items:end;max-width:1440px;margin:auto}
.contact-hero .eyebrow{display:block;margin-bottom:28px}
.contact-hero h1{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;font-size:clamp(62px,8vw,122px);letter-spacing:-.052em;line-height:.91;margin:0;max-width:850px}
.contact-hero p{font-size:19px;line-height:1.5;max-width:400px;margin:0 0 9px}
.contact-body{display:grid;grid-template-columns:minmax(220px,.43fr) minmax(0,1fr);gap:8%;max-width:1440px;padding:70px 5% 105px;margin:auto}
.contact-aside{display:flex;flex-direction:column;justify-content:space-between;gap:70px}
.contact-aside .index{font-family:'Libre Caslon Display',Georgia,serif;font-size:54px;line-height:1;color:#627b64}
.contact-aside h2{font-size:clamp(27px,2.8vw,40px);line-height:1.12;margin:24px 0 16px}
.contact-aside p{font-size:15px;color:#4c5d50;max-width:310px}
.contact-direct{border-top:1px solid #9ea99b;padding-top:20px}
.contact-direct a{font-size:18px;text-decoration:underline;text-underline-offset:5px}
.contact-direct .phone{display:block;font-size:15px;text-decoration:none;margin-top:12px}
.contact-form-shell{background:#f3f4f4;border:1px solid #d6d9d4;box-shadow:0 16px 45px rgba(23,36,30,.07);padding:24px 28px 20px;min-width:0}
.contact-form-head{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #cbd0ca;padding-bottom:20px}
.contact-form-head span{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.contact-form-head strong{font-size:13px;font-weight:500;color:#5c6a60}
.lead-form{padding-top:26px}.lead-form fieldset{border:0;padding:0;margin:0}.lead-form legend{font-family:'Libre Caslon Display',Georgia,serif;font-size:32px;line-height:1.1;letter-spacing:-.025em;padding:0;margin-bottom:23px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.form-field{display:flex;flex-direction:column;gap:7px;min-width:0}.form-field.wide{grid-column:1/-1}.form-field label{font-size:13px;font-weight:600;letter-spacing:.01em}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:46px;padding:10px 13px;background:#fff;border:1px solid #bfc9c0;border-radius:0;color:#17241e;font:inherit;font-size:15px;line-height:1.35;appearance:none}.form-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%2317241e' stroke-width='1.5' d='m5 9 7 7 7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:17px;padding-right:38px}.form-field textarea{min-height:92px;resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid #273f32;outline-offset:2px}.form-field input::placeholder,.form-field textarea::placeholder{color:#78847a}.lead-submit{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.lead-submit button{cursor:pointer;background:#17241e;color:#fff;border:1px solid #17241e;padding:13px 20px;font:inherit;font-size:15px;min-width:180px;text-align:left}.lead-submit button span{float:right;margin-left:24px}.lead-submit small{font-size:12px;color:#5c6a60;line-height:1.45}
.contact-privacy{border-top:1px solid #cbd0ca;padding-top:18px;color:#536158;font-size:12px;line-height:1.6;margin:0;max-width:none}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.contact-hero{grid-template-columns:1fr;gap:35px}.contact-body{grid-template-columns:1fr;gap:35px}.contact-aside{display:grid;grid-template-columns:1fr 1fr;gap:25px}}
@media(max-width:600px){.contact-hero{padding:48px 6% 50px}.contact-hero h1{font-size:clamp(58px,14vw,82px)}.contact-hero p{font-size:17px}.contact-body{padding:42px 0 70px;gap:28px}.contact-aside{display:block;padding:0 6%}.contact-direct{margin-top:35px}.contact-form-shell{border-left:0;border-right:0;padding:20px 6% 18px}.form-grid{grid-template-columns:1fr;gap:16px}.lead-form legend{font-size:29px}.lead-submit{display:block}.lead-submit button{width:100%}.lead-submit small{display:block;margin-top:15px}.contact-form-head,.contact-privacy{margin-left:0;margin-right:0}}

/* In-page form status and confirmation */
.form-target{display:none}.form-status{min-height:22px;margin:14px 0 0;font-size:13px;color:#536158}.form-status.is-error{color:#8d2f2f}.lead-submit button:disabled{cursor:wait;opacity:.68}
.form-success{min-height:420px;padding:70px 7%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;outline:0}.form-success h2{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(42px,5vw,70px);line-height:1.02;max-width:690px;margin:18px 0}.form-success p{font-size:17px;max-width:590px;color:#435048;margin-bottom:30px}
