:root{--reg-navy:#0d2d51;--reg-blue:#173f70;--reg-link:#075394;--reg-link-hover:#082f57;--reg-gold:#caa55c;--reg-paper:#fbfaf6;--reg-cream:#f3efe5;--reg-ink:#28342f;--reg-muted:#6d7771;--reg-line:#ded9ce}*{box-sizing:border-box}body{margin:0}.registration-shell{color:var(--reg-ink);font-family:var(--font-body),Arial,sans-serif;background:linear-gradient(135deg,#0d2d51f5,#2c5738e6),url(/abbey-church.webp) 50%/cover;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.registration-card{background:var(--reg-paper);text-align:center;border:1px solid #caa55cbf;border-radius:8px;width:100%;max-width:520px;padding:46px;box-shadow:0 28px 90px #00000047}.registration-card>a:first-child{color:var(--reg-link);text-align:left;text-underline-offset:3px;margin-bottom:26px;font-size:11px;font-weight:900;text-decoration:underline;text-decoration-thickness:1.5px;display:block}.registration-mark,.registration-thanks>span{border:1px solid var(--reg-gold);color:#967127;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;display:inline-flex}.registration-kicker{letter-spacing:.16em;text-transform:uppercase;font-weight:900;color:#a27b31!important;font-size:10px!important}.registration-card h1,.registration-page h1{color:var(--reg-navy);font-family:var(--font-display),Georgia,serif;font-weight:500}.registration-card h1{margin:7px 0 12px;font-size:39px}.registration-card>p{color:var(--reg-muted);font-family:Georgia,serif;line-height:1.6}.registration-card>p a{color:var(--reg-link);font-family:var(--font-body),Arial,sans-serif;text-underline-offset:3px;font-weight:900;text-decoration:underline;text-decoration-thickness:1.5px}.registration-card>p a:hover,.registration-card>a:first-child:hover{color:var(--reg-link-hover)}.registration-card form{text-align:left;gap:14px;margin-top:28px;display:grid}.registration-card label,.registration-form label{color:#4a5650;letter-spacing:.04em;text-transform:uppercase;gap:7px;font-size:9px;font-weight:900;display:grid}.registration-card input,.registration-card select,.registration-form input,.registration-form select,.registration-form textarea{border:1px solid var(--reg-line);color:var(--reg-ink);text-transform:none;background:#fff;border-radius:4px;min-height:42px;padding:9px 10px}.registration-card button,.registration-form footer button{background:var(--reg-blue);color:#fff;border:0;border-radius:5px;min-height:46px;font-size:11px;font-weight:900}.registration-error{color:#922e25;background:#f8e9e6;border:1px solid #e6c1bb;border-radius:4px;padding:10px;font-size:11px}.registration-thanks-links{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px;display:flex}.registration-thanks-links>a{border:1px solid var(--reg-blue);color:var(--reg-blue);border-radius:5px;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-size:11px;font-weight:900;text-decoration:none;display:inline-flex}.registration-thanks-links>a:first-child{background:var(--reg-blue);color:#fff}.registration-thanks-links>a:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0d2d511f}.registration-card .registration-print-link{border:1px solid var(--reg-gold);color:var(--reg-navy);background:#fffdf7;border-radius:5px;margin-top:8px;padding:13px 17px;font-size:11px;font-weight:900;text-decoration:none;display:inline-block}.registration-page{color:var(--reg-ink);font-family:var(--font-body),Arial,sans-serif;background:#f5f4ef;min-height:100vh;padding-bottom:55px}.registration-page>header{background:var(--reg-navy);color:#fff;grid-template-columns:160px 1fr;align-items:center;gap:25px;padding:30px max(24px,50vw - 520px);display:grid}.registration-page>header>a{color:#fff;text-underline-offset:4px;font-size:11px;font-weight:900;text-decoration:underline;text-decoration-thickness:1.5px}.registration-page>header>a:hover{color:#f4d995}.registration-page>header h1{color:#fff;margin:5px 0;font-size:30px}.registration-page>header span{color:#ffffffa6;font-size:11px}.registration-page>header .registration-deadline{color:#f4d995;margin-top:8px;font-size:11px;display:block}.registration-start{border:1px solid var(--reg-gold);background:#fffdf7;border-radius:7px;justify-content:space-between;align-items:center;gap:24px;max-width:992px;margin:28px auto 0;padding:22px;display:flex}.registration-start h2{color:var(--reg-navy);font-family:var(--font-display),Georgia,serif;margin:4px 0 7px;font-size:22px;font-weight:600}.registration-start p{color:var(--reg-muted);max-width:680px;margin:0;font-family:Georgia,serif;font-size:12px;line-height:1.6}.registration-start .registration-kicker{font-family:var(--font-body),Arial,sans-serif}.registration-start>a{background:var(--reg-blue);color:#fff;border-radius:5px;flex:none;padding:14px 18px;font-size:11px;font-weight:900;text-decoration:none}.registration-start>a:hover{background:var(--reg-navy)}.registration-form{gap:18px;max-width:1040px;margin:28px auto 0;padding:0 24px;display:grid}.registration-form fieldset{background:var(--reg-paper);border:1px solid var(--reg-line);border-radius:7px;grid-template-columns:repeat(3,1fr);gap:14px;margin:0;padding:22px;display:grid}.registration-form legend{color:var(--reg-navy);font-family:var(--font-display),Georgia,serif;padding:0 8px;font-size:18px;font-weight:600}.registration-form .wide{grid-column:1/-1}.registration-form textarea{resize:vertical}.registration-field-note{color:var(--reg-muted);letter-spacing:0;text-transform:none;font-size:9px;font-weight:600;line-height:1.45}.registration-checks{align-content:center;gap:10px;display:grid}.registration-checks label{letter-spacing:0;text-transform:none;align-items:center;font-weight:700;display:flex}.registration-checks input{accent-color:#2c5738;width:17px;min-height:0}.registration-waiver{color:var(--reg-muted);font-family:Georgia,serif;font-size:13px;line-height:1.65}.registration-policy{border-left:4px solid var(--reg-gold);background:#f4efe2;border-radius:4px;padding:14px 16px}.registration-policy strong{color:var(--reg-navy);font-family:var(--font-display),Georgia,serif;margin-bottom:5px;font-size:16px;display:block}.registration-policy p{color:var(--reg-muted);margin:0;font-family:Georgia,serif;font-size:12px;line-height:1.6}.registration-form footer{background:var(--reg-paper);border:1px solid var(--reg-line);border-radius:7px;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.registration-form footer p{color:var(--reg-muted);margin:0;font-size:10px}.registration-form footer p>b{color:var(--reg-navy)}.registration-form footer p a{color:var(--reg-link);text-underline-offset:3px;margin:0 .25em;font-weight:900;text-decoration:underline;text-decoration-thickness:1.5px;display:inline-block}.registration-form footer p a:hover{color:var(--reg-link-hover)}.registration-form footer button{min-width:190px;padding:0 20px}.registration-paper{background:var(--reg-cream);border:1px solid var(--reg-line);border-radius:7px;justify-content:space-between;align-items:center;gap:24px;max-width:992px;margin:18px auto 0;padding:22px;display:flex}.registration-paper h2{color:var(--reg-navy);font-family:var(--font-display),Georgia,serif;margin:4px 0 7px;font-size:21px;font-weight:600}.registration-paper p{margin:0}.registration-paper span{color:var(--reg-muted);font-family:Georgia,serif;font-size:12px}.registration-paper>a{border:1px solid var(--reg-gold);color:var(--reg-navy);background:#fff;border-radius:5px;flex:none;padding:14px 18px;font-size:11px;font-weight:900;text-decoration:none}.registration-paper>a:hover{background:#fffdf7}:is(.registration-page a:focus-visible,.registration-card a:focus-visible){outline-offset:3px;border-radius:3px;outline:3px solid #e0b956}@media (max-width:760px){.registration-card{padding:36px 25px}.registration-thanks-links{flex-direction:column}.registration-start{flex-direction:column;align-items:stretch;margin-left:24px;margin-right:24px}.registration-start>a{text-align:center}.registration-form fieldset{grid-template-columns:1fr}.registration-form .wide{grid-column:auto}.registration-page>header{grid-template-columns:1fr}.registration-form footer{flex-direction:column;align-items:stretch;gap:14px}.registration-paper{flex-direction:column;align-items:stretch;margin-left:24px;margin-right:24px}.registration-paper>a{text-align:center}}
