*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-cream:#f8f5ee;--bg-card:#fff;--bg-inset:#f2ece0;--border-sepia:#d8cca8;--border-dark:#324b38;--text-forest:#162c1e;--text-muted:#4f5e52;--text-soft:#6e7b71;--accent-gold:#966e2e;--accent-gold-hover:#7d5b23;--accent-gold-light:#fbf4e4;--accent-rust:#8f3a2a;--accent-rust-light:#fcece9;--focus-ring:#966e2e;--font-serif:Georgia, "Palatino Linotype", "Book Antiqua", Palatino, serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-subtle:0 2px 8px #162c1e0f;--shadow-card:0 4px 14px #162c1e14;--shadow-modal:0 12px 36px #162c1e38;--step:1.333rem;--gap:1.5rem}html,body{min-height:100%}body{background-color:var(--bg-cream);color:var(--text-forest);font-family:var(--font-serif);background-image:radial-gradient(var(--border-sepia) .75px, transparent .75px), radial-gradient(var(--border-sepia) .75px, var(--bg-cream) .75px);background-position:0 0,15px 15px;background-size:30px 30px;flex-direction:column;font-size:16px;line-height:1.6;display:flex;position:relative}a,button,input,select,textarea{color:inherit;font-family:inherit}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{flex-direction:column;flex:1;align-items:center;width:100%;max-width:1120px;margin:0 auto;padding:2.5rem 1.25rem 4rem;display:flex}.masthead{border-bottom:1px solid var(--border-sepia);justify-content:center;align-items:center;gap:1rem;width:100%;max-width:520px;margin-bottom:2rem;padding-bottom:1.25rem;display:flex}.masthead .goose{flex:none;width:40px;height:auto}.masthead-copy{color:var(--accent-gold);font-size:1.125rem;font-style:italic}.masthead-copy em{font-style:normal;font-weight:600}.shell{gap:var(--gap);flex-direction:column;align-items:center;width:100%;display:flex}.panel{width:100%;max-width:460px}.card{background:var(--bg-card);border:1px solid var(--border-sepia);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;gap:1rem;padding:2rem 1.75rem;display:flex}.title{margin:0;font-size:1.75rem;line-height:1.2}.title-ornament{color:var(--text-soft);margin-bottom:.25rem;font-style:italic;display:block}.helper{color:var(--text-muted);font-size:.95rem}.member-note{color:var(--accent-rust);font-style:italic}.footnote{color:var(--text-soft);margin-top:.25rem;font-size:.85rem}.link{cursor:pointer;text-underline-offset:2px;text-decoration:underline}.card form{flex-direction:column;gap:1.25rem;display:flex}.shell>.banner{width:100%;max-width:460px}.field{flex-direction:column;gap:.4rem;display:flex;position:relative}.field label{letter-spacing:.02em;font-size:.85rem;font-weight:600}.field input{border:1px solid var(--border-sepia);border-radius:var(--radius-sm);background:var(--bg-inset);width:100%;min-height:44px;color:var(--text-forest);padding:.75rem .9rem;font-size:1rem}.field input:focus-visible{border-color:var(--accent-gold);box-shadow:0 0 0 3px #966e2e2e}.hint{color:var(--text-soft);margin:0;font-size:.78rem}.banner{border-radius:var(--radius-sm);background:var(--accent-rust-light);color:var(--accent-rust);border:1px solid var(--accent-rust);padding:.8rem 1rem;font-size:.9rem;line-height:1.5}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-dark);background:var(--text-forest);min-height:44px;color:var(--bg-cream);cursor:pointer;padding:.8rem 1.2rem;font-size:1rem;font-weight:600}.btn:hover{filter:brightness(.96)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--accent-gold);border-color:var(--accent-gold-hover);color:var(--bg-cream)}.btn--primary:hover{background:var(--accent-gold-hover)}.btn--ghost{border-color:var(--border-sepia);color:var(--text-forest);background:0 0;margin-top:1rem}.member{text-align:center}.member .title-ornament{margin-bottom:.1rem}.foot{text-align:center;color:var(--text-soft);margin-top:2rem;font-size:.8rem}@media (width>=640px){.card{padding:2.25rem}.page{padding:3.5rem 2rem 4.5rem}}@media (width>=1024px){.page{max-width:1180px;padding:4rem 2.5rem 5rem}.masthead .goose{width:48px;height:auto}}@media (width>=1440px){.page{max-width:1280px;padding:4.5rem 3rem 5.5rem}}
