:root{--brand:#0a8a43}*{box-sizing:border-box}body{color:#0b0b0b;-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.45}.wrap{width:100%;max-width:760px;margin:0 auto;padding:0 24px}.strip{color:#fff;background:#0b0b0b;padding:8px 0;font-size:12px}.tag{color:#0b0b0b;letter-spacing:.06em;background:#fff;margin-right:8px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.bar{border-bottom:1px solid #0b0b0b;padding:14px 0}.bar .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.logo{color:inherit;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.logo span{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:grid}.logo b{margin-left:6px;font-size:18px;line-height:.95}nav a{color:inherit;margin-left:16px;font-weight:700}nav a:first-child{margin-left:0}main.wrap{padding:32px 24px 64px}h1{letter-spacing:-.02em;margin:0 0 8px;font-size:clamp(32px,6vw,48px);line-height:1.05}a{color:var(--brand)}a:focus,input:focus,textarea:focus,button:focus{outline:3px solid var(--brand);outline-offset:2px}.item{border-top:2px solid #0b0b0b;padding:20px 0}.item h2{margin:4px 0;font-size:20px;line-height:1.25}.item h2 a{color:inherit}.when{font-size:14px;font-weight:700}.where{color:#444;font-size:15px}.access{margin-top:4px;font-size:14px;font-weight:700}.summary{margin:4px 0}.admission{letter-spacing:.03em;vertical-align:1px;border:2px solid #0b0b0b;margin-left:10px;padding:1px 7px;font-size:13px;display:inline-block}.admission.free{background:var(--brand);border-color:var(--brand);color:#fff}.flyer{max-width:100%;height:auto;margin:20px 0;display:block}.description{white-space:pre-line;margin:20px 0}.links a{margin:6px 0;font-weight:700;display:block}.back{margin-bottom:16px;font-weight:700;display:inline-block}.pager{border-block:2px solid #0b0b0b;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;padding:12px 0;display:grid}.pager a{color:var(--brand);margin:0;font-size:15px;font-weight:400;line-height:1.3}.pager span{font-size:14px;font-weight:700;display:block}.pager .next{text-align:right;grid-column:2}.intro{margin:8px 0 24px;font-size:18px}fieldset{border:0;margin:0 0 32px;padding:0}legend{margin-bottom:8px;padding:0;font-size:20px;font-weight:700}label{margin:16px 0 6px;font-size:15px;font-weight:700;display:block}.hint{color:#555;font-weight:400}input,textarea{width:100%;font:inherit;color:#0b0b0b;background:#fff;border:2px solid #0b0b0b;border-radius:0;padding:12px;font-size:16px}textarea{resize:vertical;min-height:140px}.row{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.checks{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px;display:grid}.checks label{border:2px solid #0b0b0b;align-items:center;gap:10px;margin:0;padding:12px;font-weight:400;display:flex}.checks input{flex:none;width:20px;height:20px}.checks.single{grid-template-columns:1fr}.rsvp:has(#rsvp_on:not(:checked)) .rsvp-details{display:none}.rsvp-details>.hint{margin:16px 0 0}.admission-set:has(#admission_free:checked) .admission-details{display:none}.admission-details input{max-width:200px}.trap{position:absolute;left:-9999px}.spam-check{margin-bottom:16px}.button{text-decoration:none;display:inline-block}body:has(.thanks,.review.decided){flex-direction:column;min-height:100vh;display:flex}main.wrap:has(.thanks,.review.decided){flex:1;justify-content:center;align-items:center;display:flex}.thanks,.review.decided{text-align:center;width:100%;max-width:520px}.review.decided{margin:0 auto}.review .eyebrow{letter-spacing:.06em;text-transform:uppercase;color:#444;margin:0;font-size:13px;font-weight:700}.preview{text-align:left;border-block:2px solid #0b0b0b;grid-template-columns:160px 1fr;gap:16px 20px;padding:16px 0;display:grid}.preview:not(:has(.preview-flyer)){grid-template-columns:1fr}.preview-flyer{border:1px solid #ddd;width:100%;height:auto;display:block}.preview h1{margin:0 0 6px;font-size:24px}.preview dl{grid-template-columns:max-content 1fr;gap:4px 12px;margin:0;font-size:14px;display:grid}.preview dt{color:#555}.preview dd{overflow-wrap:anywhere;margin:0;font-weight:700}.preview-description{white-space:pre-line;border-top:1px solid #ccc;grid-column:1/-1;max-height:180px;margin:0;padding-top:12px;font-size:14px;overflow:auto}@media (width<=560px){.preview{grid-template-columns:1fr}.preview-flyer{max-width:160px}}.decide{z-index:1;background:#fff;align-items:center;gap:8px;padding:14px 0;display:flex;position:sticky;top:0}.decide button,.decide .button{padding:11px 22px;font-size:16px}.decide .edit{color:#0b0b0b;background:#fff;margin-left:auto;box-shadow:inset 0 0 0 2px #0b0b0b}.check.declined{background:#444}button.danger{background:#b3261e}button.approve{background:var(--brand)}.check{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:80px;height:80px;margin:0 auto 20px;display:grid}.thanks .lead{margin:0 0 28px;font-size:20px}.steps{counter-reset:step;text-align:left;border-top:2px solid #0b0b0b;margin:0 0 32px;padding:0;list-style:none}.steps li{counter-increment:step;border-bottom:1px solid #ccc;grid-template-columns:32px 1fr;gap:12px;padding:14px 0;display:grid}.steps li:before{content:counter(step);background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:grid}.thanks-actions{flex-direction:column;align-items:center;gap:16px;display:flex}.thanks-actions a:not(.button){font-weight:700}button,.button{font:inherit;color:#fff;background:var(--brand);cursor:pointer;border:0;padding:16px 28px;font-size:18px;font-weight:700}.msg{margin:0 0 24px;padding:16px;font-size:16px;font-weight:700}.error{background:#fde8e8;border:2px solid #b00020}.success{border:2px solid var(--brand);background:#e6f5ec}.rsvp-open{margin-top:16px}.modal{z-index:20;box-sizing:border-box;color:#0b0b0b;background:#fff;border:2px solid #0b0b0b;width:min(600px,100% - 32px);height:fit-content;max-height:calc(100% - 32px);margin:auto;padding:24px;position:fixed;inset:0;overflow:auto}.modal[popover]:not(:popover-open){display:none}.modal::backdrop,.modal-backdrop{background:#0000008c}.modal-backdrop{z-index:19;position:fixed;inset:0}.modal-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.modal-head h2{margin:0;font-size:28px}.modal-close{color:#0b0b0b;background:0 0;padding:4px 12px;font-size:32px;font-weight:400;line-height:1;text-decoration:none}.modal-event{margin:4px 0 8px;font-weight:700}.modal>.hint{margin:0 0 8px}.modal .row{grid-template-columns:1fr 1fr 150px}.field-hint{margin-top:4px;font-size:14px;display:block}.modal textarea{min-height:0;margin-bottom:16px}@media (width<=560px){.row,.modal .row{grid-template-columns:1fr}}.test-note{background:#fff6d6;border:2px solid #a66f00;font-weight:400}.test-tag{color:#fff;letter-spacing:.04em;background:#a66f00;margin-bottom:6px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.feedback-message{white-space:pre-line;margin:8px 0;font-size:17px}.feedback-item.done{opacity:.6}.feedback-shot{border:2px solid #0b0b0b;max-width:100%;max-height:320px;margin:8px 0;display:block}.feedback-status{gap:8px;margin-top:8px;display:flex}.feedback-status button{padding:8px 14px;font-size:15px}.feedback-status .secondary{color:#0b0b0b;background:#fff;border:2px solid #0b0b0b}
