/* Demo contact form additions, retaining the approved design. */
.demo-note{padding:20px;border:1px solid #a3bf80;background:#303c2a;margin:25px 0}
.demo-note strong{color:#d9edbd;font-size:16px}.demo-note p{margin:8px 0 0;color:#edf3e8;font-size:16px}
.topics{border:0;padding:0;margin:0 0 24px;min-width:0}.topics legend{font-size:16px;font-weight:600;margin-bottom:15px}.topics legend span{display:block;font-weight:400;font-size:14px;color:#cbd1c7}
.topic-options{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.topic-options label{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:400;margin:0;cursor:pointer;min-height:32px}
.topic-options input{width:20px;height:20px;flex-shrink:0;margin:0;padding:0;accent-color:var(--accent)}
.demo-submit{width:100%;justify-content:center;min-height:48px;font-size:16px}.demo-submit:disabled{opacity:.65;cursor:not-allowed}
#form-status:not(:empty){border-left:3px solid var(--accent);padding:15px 18px;background:#303c2a;color:#edf3e8;font-size:16px}
.faq summary,.service-list summary{min-height:64px}.menu{min-height:44px}footer a{min-height:32px;display:inline-flex;align-items:center}footer p a{display:inline;min-height:0}
.form-row>label{min-width:0}input,textarea{border-radius:0}form input,form textarea{scroll-margin-top:35px}
@media(max-width:620px){.topic-options{grid-template-columns:1fr}.message-layout{gap:30px}.brand img{width:169px}.demo-note{margin-bottom:15px}.js nav{display:none}.js nav.open{display:flex}html:not(.js) nav{display:flex;flex-direction:column}html:not(.js) .menu{display:none}.hero-image{height:260px}.faq summary{gap:16px}.image-note{font-size:12px}}
