.department-contacts{margin:2rem 0}.department-contacts h3{font-size:1.1rem}.department-contacts article{padding:1.1rem 0;border-bottom:1px solid #d3cfc6}.department-contacts h4{margin:0 0 .4rem;font-size:1rem}.department-contacts article p{font-size:.88rem;line-height:1.5;margin:0 0 .5rem}.department-contacts a{font-size:.9rem;overflow-wrap:anywhere}.contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.attachment-field{margin:1.5rem 0}.attachment-field input{max-width:100%;width:100%;padding:.8rem;border:1px solid #aaa;background:transparent}.attachment-field ul{padding:0;list-style:none}.attachment-field li{display:flex;gap:1rem;justify-content:space-between;align-items:center;border-bottom:1px solid #d3cfc6;padding:.75rem 0}.attachment-field li span{overflow-wrap:anywhere;min-width:0}.attachment-field li button{min-height:44px;flex-shrink:0;padding:.6rem;border:1px solid #aaa;background:transparent;cursor:pointer}.form-actions [hidden]{display:none!important}#submit-inquiry{min-height:52px;min-width:180px;background:#232724;color:#fff;border:1px solid #232724;font-weight:700}#submit-inquiry:disabled{opacity:.65;cursor:wait}.form-status{overflow-wrap:anywhere;scroll-margin-top:120px}.form-status:focus{outline:2px solid #5a665c;outline-offset:6px}#project-attachments:focus-visible,.form-actions button:focus-visible{outline:2px solid #5a665c;outline-offset:4px}.brief-form-wrap{min-width:0}#contact-form input:disabled,#contact-form textarea:disabled,#contact-form select:disabled{opacity:.7}.contact-layout{align-items:start}@media(max-width:600px){.form-actions{display:flex;flex-direction:column;align-items:stretch}.form-actions button{width:100%}.contact-aside .department-contacts{margin-bottom:1rem}}

/* Contact-page company locations; department cards and inquiry form remain separate. */
.company-information{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #b9b9ad;min-width:0}
.company-information h3{margin:0 0 .65rem;font-size:1.1rem;line-height:1.4}
.contact-aside .company-information-name{margin:0 0 1.4rem;font-size:1rem;font-weight:600;line-height:1.5}
.company-location{padding:1.1rem 0;border-bottom:1px solid #d3cfc6}
.company-location h4{margin:0 0 .5rem;font-size:.95rem;line-height:1.4;font-weight:600}
.company-location address,.contact-aside .company-location p{margin:0;font-size:.9rem;line-height:1.7;font-style:normal}
.company-directions{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;margin-top:.35rem;font-size:.85rem;text-decoration:underline;text-underline-offset:4px}
.company-directions span{font-size:1.1em}
.company-phone{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem 1rem;padding:1rem 0}
.company-phone>span{font-size:.85rem}
.company-phone a{display:inline-flex;align-items:center;min-height:44px;font-size:.95rem;white-space:nowrap}
.company-information a:focus-visible{outline:2px solid #5a665c;outline-offset:4px}
@media(max-width:600px){.company-information{margin-top:1.75rem;padding-top:1.25rem}.company-phone{justify-content:flex-start;column-gap:1.5rem}}

/* Inquiry anchors target the form, never the preceding company-information column. */
.contact-layout{grid-template-areas:"contacts form"}
.brief-form-wrap{grid-area:form;position:relative;scroll-margin-top:12px}
.inquiry-anchor{position:absolute;top:0;scroll-margin-top:12px}
.inquiry-form-heading{font-size:clamp(28px,3vw,40px);line-height:1.15;margin:0 0 20px}
.compact-contact{grid-area:contacts;display:block;min-width:0}
.compact-contact h2{font-size:36px;margin:12px 0 24px}
.contact-quick-links{display:grid;gap:12px;margin-bottom:24px}
.contact-quick-links a{display:flex;flex-direction:column;justify-content:center;min-height:52px;font-size:16px;overflow-wrap:anywhere}
.contact-quick-links span{font-size:14px;color:var(--muted);margin-bottom:4px}
.contact-disclosure{border-top:1px solid #c8c1b5}
.contact-disclosure:last-child{border-bottom:1px solid #c8c1b5}
.contact-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;min-height:56px;padding:12px 0;font-size:16px;list-style:none}
.contact-disclosure summary::-webkit-details-marker{display:none}
.contact-disclosure summary::after{content:"+";font-size:22px;font-weight:300}
.contact-disclosure[open] summary::after{content:"−"}
.contact-disclosure summary:focus-visible{outline:2px solid #5a665c;outline-offset:4px}
.contact-disclosure .department-contacts,.contact-disclosure .company-information{margin:0;padding:0 0 16px;border-top:0}
.contact-disclosure .department-contacts article{padding:12px 0}
.contact-disclosure .department-contacts h3{margin:0 0 4px;font-size:16px}
.contact-disclosure .company-location{padding:12px 0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:950px){.contact-layout{grid-template-areas:"form" "contacts";gap:40px}.compact-contact{padding-top:28px;border-top:1px solid #c8c1b5}.brief-form-wrap,.inquiry-anchor{scroll-margin-top:12px}.compact-contact h2{font-size:30px}.contact-quick-links{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:8px 24px}}
