/* Contact guidance has one clear action per service. The draft composer uses
   ordinary form labels and a native mailto destination, with no remote handler. */
.contact-guide {background:#edf3ec;border:1px solid #d1ded1;border-radius:22px;padding:clamp(22px,4vw,44px);margin:0 0 32px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:32px;scroll-margin-top:110px}
.contact-guide h2 {font-size:clamp(2rem,3.3vw,3.4rem);line-height:1.04;margin:12px 0 20px}
.contact-guide-heading p {line-height:1.7}
.contact-direct-actions {display:grid;gap:12px;margin-top:24px;overflow-wrap:anywhere}
.contact-direct-actions a {font-weight:700;color:#235845}
.contact-compose {display:flex;flex-direction:column;gap:10px;min-width:0}
.contact-compose label {font-weight:700;font-size:.87rem;color:#214d3c;margin-top:5px}
.contact-compose select,.contact-compose input,.contact-compose textarea {font:inherit;color:#153d30;background:#fff;border:1px solid #a8bfae;border-radius:9px;padding:12px;width:100%;box-sizing:border-box;min-height:44px}
.contact-compose select {text-overflow:ellipsis}
.contact-compose textarea {resize:vertical;min-height:135px}
.contact-compose :is(select,input,textarea):focus-visible {outline:3px solid #b78936;outline-offset:2px}
.contact-compose :disabled {opacity:.7}
.contact-topic-help {font-size:.9rem;line-height:1.55;margin:1px 0 9px;color:#385446}
.contact-compose-note {font-size:.8rem;line-height:1.5;margin:1px 0 8px;color:#52685a}
.contact-compose .button {align-self:flex-start;max-width:100%;box-sizing:border-box;text-align:center}
.contact-service-grid {display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:36px}
.contact-service-grid section {border:1px solid #d7dfd4;padding:26px;border-radius:16px;scroll-margin-top:110px}
.contact-service-grid h3 {font-size:1.8rem;line-height:1.15;margin:12px 0}
.contact-service-grid p {font-size:.95rem;line-height:1.65}
.contact-service-grid a {display:block;margin-top:14px;color:#286049;font-weight:650}
.recruitment-section>h2 {font-size:clamp(2rem,3vw,3rem);margin-top:0}
.recruitment-section>p {line-height:1.65;margin-bottom:26px}
.recruitment-card {border:1px solid #d7dfd4;border-radius:16px;padding:clamp(22px,3vw,32px);margin-bottom:22px;scroll-margin-top:110px}
.recruitment-card h3 {font-size:clamp(1.7rem,2.5vw,2.4rem);line-height:1.15;margin:12px 0}
.recruitment-card p {line-height:1.65}
.recruitment-deadline {padding:12px 16px;background:#edf3ec;border-radius:8px;font-size:.9rem}
.recruitment-card details {border-top:1px solid #d7dfd4}
.recruitment-card summary {padding:17px 0;cursor:pointer;font-weight:700;color:#235845}
.recruitment-columns {display:grid;grid-template-columns:1fr 1fr;gap:26px}
.recruitment-card h4 {margin:0 0 12px;font-size:1rem}
.recruitment-card ul {padding-left:20px;margin:0 0 20px}
.recruitment-card li {padding-left:3px;margin-bottom:10px;font-size:.94rem;line-height:1.6}
.recruitment-actions {display:flex;gap:20px;flex-wrap:wrap;margin-top:16px}
.recruitment-actions a {color:#286049;font-weight:650}
@media(max-width:1000px) {.contact-guide{grid-template-columns:1fr;gap:18px}.contact-direct-actions{margin-top:15px}.contact-service-grid{grid-template-columns:1fr}}
@media(max-width:700px) {.recruitment-columns{grid-template-columns:1fr;gap:8px}}
@media(max-width:520px) {.contact-guide{padding:22px 18px}.contact-service-grid section{padding:22px 18px}.contact-compose .button{width:100%}}
