.act-contact, .act-contact *, .act-contact *::before, .act-contact *::after { box-sizing: border-box; }
.act-contact { color: #24332b; width: 100%; }
.act-contact__notice { border-radius: .5rem; font-weight: 600; line-height: 1.5; margin: 0 0 1.5rem; padding: 1rem 1.25rem; }
.act-contact__notice--success { background: #e8f6ec; border: 1px solid #a9d6b5; color: #17602c; }
.act-contact__notice--error { background: #fff0ee; border: 1px solid #edbdb8; color: #90342c; }
.act-contact__form { max-width: 100%; }
.act-contact__fields { display: grid; gap: 1.35rem 1.5rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.act-contact__field { display: flex; flex-direction: column; min-width: 0; }
.act-contact__field--full { grid-column: 1 / -1; }
.act-contact__field label { color: #26372d; font-size: .95rem; font-weight: 700; margin-bottom: .5rem; }
.act-contact__field label span, .act-contact__choice span[aria-hidden] { color: #168e3c; }
.act-contact__field input, .act-contact__field textarea { appearance: none; background: #fff; border: 1px solid #cbd8ce; border-radius: .45rem; box-shadow: none; color: #24332b; font: inherit; line-height: 1.4; min-height: 3.15rem; padding: .78rem .9rem; width: 100%; }
.act-contact__field textarea { min-height: 11rem; resize: vertical; }
.act-contact__field input::placeholder, .act-contact__field textarea::placeholder { color: #8b988e; }
.act-contact__field input:focus, .act-contact__field textarea:focus { border-color: #218d43; outline: 3px solid #ccebd4; outline-offset: 1px; }
.act-contact__choices { border-top: 1px solid #e5ebe6; display: grid; gap: .8rem; margin-top: 2rem; padding-top: 1.5rem; }
.act-contact__choice { align-items: flex-start; color: #4c5c51; cursor: pointer; display: flex; font-size: .94rem; gap: .7rem; line-height: 1.55; }
.act-contact__choice input { accent-color: #148b39; flex: none; height: 1.15rem; margin: .18rem 0 0; width: 1.15rem; }
.act-contact__choice a { color: #167638; text-decoration: underline; }
.act-contact__required { color: #6b796f; font-size: .85rem; margin: 1rem 0 0; }
.act-contact__actions { display: flex; justify-content: flex-end; margin-top: 1rem; }
.act-contact__actions button { align-items: center; background: #159d4b; border: 1px solid #159d4b; border-radius: .45rem; color: #fff; cursor: pointer; display: inline-flex; font: inherit; font-weight: 700; gap: 2rem; min-height: 3.2rem; padding: .8rem 1.25rem; transition: background .2s, transform .2s; }
.act-contact__actions button:hover, .act-contact__actions button:focus-visible { background: #107d3b; transform: translateY(-1px); }
.act-contact__actions button:focus-visible { outline: 3px solid #a6dfb6; outline-offset: 3px; }
.act-contact__honeypot { left: -9999px; position: absolute; }
@media (max-width: 700px) { .act-contact__fields { grid-template-columns: 1fr; } .act-contact__actions button { justify-content: space-between; width: 100%; } }
