/* Scoped additions to the existing AIUSI brand system. */
.volunteer-paths { margin-top: var(--sp-6); }
.volunteer-card { display: flex; flex-direction: column; padding: var(--sp-6); border: 1px solid var(--line-strong); border-radius: var(--r); background: var(--paper); }
.volunteer-card .text-link { margin-top: auto; padding-top: var(--sp-4); }
.volunteer-event { margin-top: var(--sp-7); padding: var(--sp-6); border-left: 4px solid var(--gold-300); background: var(--gold-50); border-radius: var(--r-sm); }
.volunteer-event-recap { display: grid; gap: var(--sp-6); align-items: center; }
.volunteer-event-recap p { margin-top: var(--sp-3); }
.volunteer-event-recap .text-link { display: inline-block; margin-top: var(--sp-4); }
.volunteer-event-recap figure { margin: 0; border-radius: var(--r); overflow: hidden; }
.volunteer-event-recap img { display: block; width: 100%; height: auto; }
@media (min-width: 1000px) { .volunteer-event-recap { grid-template-columns: 1.1fr 0.9fr; gap: var(--sp-7); } }
.volunteer-layout { max-width: var(--wrap-narrow); }
.volunteer-application { padding: clamp(1.25rem, 3vw, 2.5rem); background: var(--paper); border: 1px solid var(--line); border-radius: var(--r); }
#apply { scroll-margin-top: 6rem; }
#volunteer-form { margin-top: var(--sp-6); }
#volunteer-form fieldset { min-width: 0; margin: 0 0 var(--sp-6); padding: 0; border: 0; }
#volunteer-form legend { font-weight: 700; font-size: var(--step-1); margin-bottom: var(--sp-3); }
#volunteer-form label { display: block; font-size: var(--step--1); font-weight: 600; margin-bottom: var(--sp-2); }
#volunteer-form input:not([type=radio]):not([type=checkbox]):not([type=hidden]), #volunteer-form select, #volunteer-form textarea { width: 100%; min-width: 0; box-sizing: border-box; font: inherit; color: var(--ink); border: 1px solid var(--ink-3); background: var(--paper); border-radius: var(--r-sm); padding: .75rem; margin-bottom: var(--sp-5); }
#volunteer-form textarea { resize: vertical; }
#volunteer-form input[type=radio], #volunteer-form input[type=checkbox] { flex: 0 0 auto; width: 1.15rem; height: 1.15rem; margin: .2rem 0 0; accent-color: var(--forest-700); }
#volunteer-form .volunteer-options label, #volunteer-form .volunteer-consent { display: flex; align-items: flex-start; gap: .65rem; }
.volunteer-options { display: flex; flex-wrap: wrap; gap: var(--sp-3) var(--sp-5); margin-bottom: var(--sp-4); }
.volunteer-options label { cursor: pointer; padding-block: .4rem; }
.volunteer-options-stacked { flex-direction: column; gap: 0; }
.volunteer-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--sp-4); }
.optional { font-size: .85rem; font-weight: 400; color: var(--ink-2); }
#volunteer-form .volunteer-consent { margin-block: var(--sp-5); font-weight: 400; }
#volunteer-form button { white-space: normal; }
#volunteer-form button:disabled { opacity: .65; cursor: wait; }
.volunteer-notice { padding: var(--sp-4); border: 1px solid var(--gold-600); border-radius: var(--r-sm); background: var(--gold-50); margin-top: var(--sp-4); }
.volunteer-notice p { margin: 0; }
.volunteer-success { padding: var(--sp-6); background: var(--forest-50); border-radius: var(--r-sm); margin-top: var(--sp-6); }
#volunteer-form [hidden], #volunteer-form[hidden], #form-success[hidden], #form-success [hidden] { display: none !important; }
@media (max-width: 500px) { .volunteer-fields { grid-template-columns: 1fr; } #volunteer-form button { width: 100%; } }
