/* Compact contact form and prominent direct contact details. */
.contact-page-heading{padding-top:2.5rem;padding-bottom:1.5rem}
.contact-page-heading h1{margin-bottom:0;font-family:var(--serif);font-weight:400;font-size:var(--text-h1)}
.contact-compact-section{padding-top:1rem;padding-bottom:1.5rem}
.contact-compact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:1.5rem 3rem;align-items:start}
.contact-compact>*{min-width:0}
.contact-compact h2{font-family:var(--serif);font-size:var(--text-h2);line-height:1.25;font-weight:400;margin:0 0 .9rem}
.contact-compact .contact-intro>p{font-size:var(--text-small);color:var(--muted);margin:0 0 1rem}
.contact-compact .contact-details{display:grid;gap:.85rem;margin:1.2rem 0}
.contact-compact .contact-details a{display:block;color:var(--green);font-size:clamp(1.1rem,1.8vw,1.4rem);font-weight:700;line-height:1.35;text-decoration:none;overflow-wrap:anywhere;padding:.15rem 0}
.contact-compact .contact-details a:hover{text-decoration:underline;text-underline-offset:.2em}
.contact-compact .contact-details .contact-detail-label{display:block;font-size:var(--text-small);font-weight: 600;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);margin-bottom:.2rem}
.contact-compact .contact-intro .contact-location{font-size:var(--text-small);line-height:1.6;margin-bottom:0}
.contact-compact .contact-next{font-size:var(--text-small);line-height:1.5;margin-top:1rem;padding-top:.75rem}
.contact-compact .contact-next strong{font-size:inherit;margin-bottom:.35rem}
.contact-compact .contact-next ol{margin:.35rem 0 .5rem}
.contact-compact .contact-next li{margin:.25rem 0}
.contact-compact .contact-next p{font-size:inherit;line-height:inherit;margin:0}
.contact-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
#contact-form .contact-fields label{font-size:var(--text-small);font-weight: 600;margin:0 0 .4rem}
#contact-form .contact-fields input,#contact-form .contact-fields textarea{padding:.7rem .8rem;border-radius:2px;min-width:0;font-size:var(--text-body);line-height:1.5}
#contact-form .contact-fields textarea{min-height:6rem;resize:vertical}
.contact-message-field{margin-top:1rem}
.contact-optional{color:var(--muted);font-weight:400}
.contact-bottom{grid-column:1/-1}
.contact-data-notice{font-size:var(--text-small);line-height:1.65;color:#47514a;margin:0;overflow-wrap:anywhere}
.contact-message-field .contact-data-notice{margin-top:.65rem}
.contact-data-notice a{text-underline-offset:.18em}
.contact-submit-row{display:flex;justify-content:flex-end;margin-top:.75rem}
#contact-form .contact-submit-row button{min-height:44px;padding:.75rem 1.4rem}
#contact-status:empty{display:none}
#contact-status{margin:1rem 0 0;font-size:var(--text-small)}
@media(min-width:741px){.contact-compact .contact-fields{display:flex;flex-direction:column;align-self:stretch}.contact-compact .contact-message-field{display:flex;flex-direction:column;flex:1;margin-top:0}.contact-compact .contact-message-field textarea{flex:1}}
@media(max-width:740px){.contact-compact{grid-template-columns:1fr;gap:1.5rem}.contact-compact .contact-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.contact-compact .contact-details a{font-size:var(--text-body)}.contact-page-heading{padding-top:1.75rem}.contact-compact h2 br{display:none}}
@media(max-width:440px){.contact-fields-row,.contact-compact .contact-details{grid-template-columns:1fr}.contact-submit-row button{width:100%}}
