:root{color-scheme:light;--red:#8b0000;--cream:#faf6f1;--ink:#292323;--muted:#5a4f4b}
*{box-sizing:border-box}
body{margin:0;background:var(--cream);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.7}
a{color:var(--red);text-underline-offset:.2em;overflow-wrap:anywhere}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid #17668b;outline-offset:4px}
.skip{position:absolute;top:0;left:1rem;padding:.75rem 1rem;background:white;transform:translateY(-200%);z-index:2}
.skip:focus{transform:none}
header{max-width:1100px;margin:auto;padding:1.25rem clamp(1rem,4vw,3rem);display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid #d3c1b6}
.brand{display:flex;gap:.75rem;align-items:center;color:var(--red);font-family:Georgia,serif;font-weight:bold;font-size:1.2rem;line-height:1.2;text-decoration:none}
.brand img{width:60px;height:60px;object-fit:contain}
.brand small{display:block;margin-top:.4rem;font:600 .7rem system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
main{max-width:800px;margin:0 auto;padding:clamp(2rem,6vw,4rem) 1.25rem}
main:focus{outline:none}
.eyebrow{color:var(--red);text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:700;margin:0 0 .75rem}
h1{font:600 clamp(2.4rem,7vw,3.8rem)/1.1 Georgia,serif;color:var(--red);margin:0 0 1.25rem}
h2{font:600 1.45rem/1.3 Georgia,serif;margin:0 0 .75rem}
p{margin:0 0 1rem}
.intro{font-size:1.125rem}
.notice{padding:1.5rem;background:#ebe1d8;border-left:4px solid var(--red);margin:2rem 0}
.notice p:last-child{margin:0}
.field{margin:1.75rem 0}
label,legend{font-weight:650}
label span:not(.choice span){font-weight:400}
.hint{font-size:.94rem;color:var(--muted);margin:.4rem 0 .65rem}
input:not([type=checkbox]),textarea{display:block;width:100%;padding:.8rem;border:1px solid #756762;border-radius:3px;font:inherit;color:var(--ink);background:white}
textarea{resize:vertical;min-height:220px}
fieldset{border:1px solid #a99488;padding:1.25rem;margin:2rem 0;min-width:0}
legend{padding:0 .5rem}
.choice{display:flex;align-items:flex-start;gap:.85rem;font-weight:400;cursor:pointer;margin:.4rem 0 1.25rem}
.choice input{flex-shrink:0;width:1.3rem;height:1.3rem;margin-top:.3rem;accent-color:var(--red)}
.privacy{margin:2rem 0;font-size:.94rem}
button,.button{display:inline-block;background:var(--red);color:white;border:2px solid var(--red);border-radius:3px;font:600 1rem system-ui,sans-serif;padding:.95rem 1.5rem;min-height:48px;text-align:center;cursor:pointer;text-decoration:none}
button:hover,.button:hover{background:#6b0000}
.after-submit{margin-top:.75rem}
.return{margin-top:2rem}
footer{max-width:1100px;margin:auto;padding:2rem 1.25rem;border-top:1px solid #d3c1b6;text-align:center;font-size:.9rem;color:var(--muted)}
@media(max-width:480px){header{align-items:flex-start;flex-direction:column}.brand{font-size:1.1rem}.notice,fieldset{padding:1rem}button,.button{width:100%}}
