.crs-inline-submission { width: 100%; max-width: 1280px; margin-top: 24px; margin-inline: auto; scroll-margin-top: 28px; }
.crs-review-form { --crs-form-ink: var(--crs-text, #000000); --crs-form-accent: var(--crs-accent, #007f5b); box-sizing: border-box; color: var(--crs-form-ink); font-family: Arial, Helvetica, sans-serif; background: var(--crs-accent-soft, #e9f6f0); border: 1px solid var(--crs-border, #dce2e6); border-radius: var(--crs-radius, 12px); padding: clamp(20px, 4vw, 40px); width: 100%; margin: 28px 0; }
.crs-inline-submission > .crs-review-form { margin: 0; }
.crs-review-form *, .crs-review-form *::before, .crs-review-form *::after { box-sizing: border-box; }
.crs-review-form .crs-review-form__heading { color: inherit; font-family: inherit; font-size: clamp(26px, 3vw, 36px); font-weight: 700; line-height: 1.2; margin: 0 0 12px; }
.crs-review-form .crs-review-form__intro { font-size: 18px; line-height: 24px; margin: 0 0 24px; }
.crs-review-form__names { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 0 20px; }
.crs-review-form__field { min-width: 0; margin: 0 0 20px; }
.crs-review-form__field > label { display: block; font-weight: 700; font-size: 16px; margin-bottom: 7px; }
.crs-review-form .crs-review-form__field input, .crs-review-form .crs-review-form__field select, .crs-review-form .crs-review-form__field textarea { display: block; width: 100%; max-width: 100%; min-height: 48px; margin: 0; border: 1px solid #7d8995; border-radius: 7px; background: #fff; color: #000000; padding: 11px 13px; font: inherit; font-size: 16px; line-height: 1.5; }
.crs-review-form .crs-review-form__field textarea { resize: vertical; }
.crs-review-form .crs-review-form__note { font-size: 14px; line-height: 1.5; color: #536071; margin: 7px 0 0; }
/* The last-initial field holds one character; a full-width box reads as a missing value. */
.crs-review-form .crs-review-form__field--initial input { max-width: 6em; }
.crs-review-form__names + .crs-review-form__note { margin-top: -12px; margin-bottom: 20px; }
.crs-review-form__consent { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.6; margin: 0 0 22px; cursor: pointer; }
.crs-review-form__consent input { appearance: auto; flex: 0 0 20px; width: 20px; height: 20px; margin: 3px 0 0; accent-color: var(--crs-form-accent); }
.crs-review-form .crs-review-form__submit { appearance: none; border: 1px solid var(--crs-form-accent); border-radius: 8px; background: var(--crs-form-accent); color: #fff; padding: 13px 25px; min-height: 48px; font-family: inherit; font-size: 16px; font-weight: 700; line-height: 1.4; text-transform: none; cursor: pointer; }
.crs-review-form .crs-review-form__submit:hover { background: #006649; }
.crs-review-form .crs-review-form__submit:disabled { opacity: .65; cursor: wait; }
.crs-review-form input:focus-visible, .crs-review-form select:focus-visible, .crs-review-form textarea:focus-visible, .crs-review-form button:focus-visible { outline: 3px solid #005fcc; outline-offset: 3px; }
.crs-review-form__message { border: 1px solid #abc8ba; background: #fff; color: #164b39; border-radius: 8px; padding: 16px; margin: 0 0 24px; font-size: 16px; line-height: 1.5; }
.crs-review-form__message.is-error { border-color: #bd6868; color: #852e2e; }
.crs-review-form__message[hidden] { display: none; }
.crs-review-form__trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
@media (max-width: 540px) { .crs-review-form__names { grid-template-columns: minmax(0, 1fr); gap: 0; } .crs-review-form .crs-review-form__submit { width: 100%; } }
