:root{--blue:#151d48;--deep:#0e1538;--gold:#c9972b;--ivory:#f8f6f0;--text:#24283a;--muted:#626879;--border:#dce0e9}*{box-sizing:border-box}.volunteer-hero{padding:68px 22px;background:linear-gradient(90deg,#0e1538f6,#151d48dc),url('/plan-your-visit/assets/gallery/church-family.jpg') center 42%/cover;color:#fff;text-align:center}.volunteer-hero>div{width:min(100%,850px);margin:auto}.volunteer-hero h1{margin:6px 0 14px;font-size:clamp(2.7rem,6vw,5rem);line-height:1}.volunteer-hero p:last-child{max-width:720px;margin:auto;color:#ffffffdd;font-size:1.06rem}.form-section{padding:64px 20px 84px;background:var(--ivory)}.layout{display:grid;width:min(100%,1180px);margin:auto;grid-template-columns:340px 1fr;align-items:start;gap:34px}.layout aside,.layout form{border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:0 15px 40px #0e15380b}.layout aside{position:sticky;top:24px;padding:34px}.layout aside h2,.form-heading h2{margin:6px 0 16px;color:var(--deep);font-size:clamp(2rem,4vw,3rem);line-height:1.06}.layout aside>p:not(.eyebrow){color:var(--muted);line-height:1.75}.hours-note{margin-top:26px;padding:20px;border-left:4px solid var(--gold);background:var(--ivory)}.hours-note strong{color:var(--blue)}.hours-note p{margin:6px 0 0;color:var(--muted);font-size:.86rem}.layout form{padding:38px}.form-heading{margin-bottom:30px}.form-heading p:last-child{color:var(--muted)}fieldset{margin:0 0 30px;padding:26px;border:1px solid var(--border);border-radius:10px}legend{padding:0 9px;color:var(--blue);font-weight:800}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wide{grid-column:1/-1}label{display:grid;gap:7px;color:var(--blue);font-size:.82rem;font-weight:750}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #b9c0cf;border-radius:6px;background:#fff;color:var(--text);font:inherit}input,select{min-height:48px}textarea{resize:vertical}.field-intro{margin:20px 0 12px;color:var(--muted);font-size:.88rem}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.service-grid label,.consent-grid label{display:flex;padding:11px;align-items:flex-start;gap:9px;border:1px solid var(--border);border-radius:6px;background:#fafafa}.service-grid input,.consent-grid input{width:18px;min-height:18px;margin:1px 0 0;flex:none}.consent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.fine-print{color:var(--muted);font-size:.75rem;line-height:1.55}.submit{width:100%;min-height:54px;border:0;border-radius:6px;background:var(--gold);color:var(--deep);font:800 1rem Inter,sans-serif;cursor:pointer}.submit:disabled{opacity:.65}.status{min-height:28px;margin:15px 0 0;color:#8b1717;font-weight:700;text-align:center}.status.success{padding:18px;border-radius:7px;background:#e8f5e9;color:#165c28}@media(max-width:850px){.layout{grid-template-columns:1fr}.layout aside{position:static}.service-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.volunteer-hero{padding:48px 18px}.form-section{padding:35px 10px 55px}.layout aside,.layout form{padding:24px 18px}.fields,.service-grid,.consent-grid{grid-template-columns:1fr}.wide{grid-column:auto}fieldset{padding:20px 14px}}
.opportunity-picker{padding:54px 20px;background:#fff;text-align:center}.opportunity-picker>div{width:min(100%,960px);margin:auto}.opportunity-picker h2{margin:7px 0 10px;color:var(--deep);font-size:clamp(2rem,4vw,3rem)}.opportunity-picker>div>p:not(.eyebrow){color:var(--muted)}.opportunity-buttons{display:grid;margin-top:28px;grid-template-columns:1fr 1fr;gap:18px}.opportunity-buttons button{display:grid;min-height:150px;padding:27px;align-content:center;gap:9px;border:2px solid var(--border);border-radius:12px;background:var(--ivory);color:var(--blue);text-align:left;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}.opportunity-buttons button:hover,.opportunity-buttons button:focus-visible{border-color:var(--gold);transform:translateY(-3px);box-shadow:0 14px 30px #0e153818}.opportunity-buttons strong{font-family:"Playfair Display",Georgia,serif;font-size:1.55rem}.opportunity-buttons span{color:var(--muted);font-size:.88rem;line-height:1.55}#loading-options{min-height:22px;font-size:.8rem}.change-opportunity{margin-top:12px;padding:9px 11px;border:1px solid var(--blue);border-radius:5px;background:#fff;color:var(--blue);font-weight:800;cursor:pointer}@media(max-width:600px){.opportunity-picker{padding:38px 12px}.opportunity-buttons{grid-template-columns:1fr}.opportunity-buttons button{min-height:130px}}
.opportunity-buttons button{-webkit-appearance:none;appearance:none;position:relative;width:100%;overflow:hidden}.opportunity-buttons button::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--gold)}.opportunity-buttons button::after{content:"Select  →";display:block;margin-top:8px;color:var(--gold);font:800 .72rem Inter,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}@media(max-width:600px){.opportunity-picker{text-align:left}.opportunity-picker>div{width:100%}.opportunity-picker .eyebrow{font-size:.65rem;line-height:1.5}.opportunity-picker h2{max-width:340px;margin-top:8px;font-size:2.05rem;line-height:1.08}.opportunity-picker>div>p:not(.eyebrow):not(#loading-options){margin:10px 0 0;font-size:.94rem;line-height:1.55}.opportunity-buttons{margin-top:24px;gap:14px}.opportunity-buttons button{display:flex;min-height:0;padding:22px 24px 20px 27px;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;border:1px solid #d5d9e3;border-radius:9px;background:#fff;box-shadow:0 10px 24px #0e153812;white-space:normal}.opportunity-buttons strong{display:block;width:100%;font-size:1.35rem;line-height:1.18}.opportunity-buttons span{display:block;width:100%;font-size:.84rem;line-height:1.45}.opportunity-buttons button::after{margin-top:7px}#loading-options{text-align:center}}
