.message.warning { border-color: #6d5a24; background: #30270f; color: #ffe49a; }
.site-footer { width: min(1100px, calc(100% - 32px)); margin: 0 auto; padding: 26px 0 42px; display: flex; gap: 18px; flex-wrap: wrap; border-top: 1px solid rgba(255,255,255,.08); color: var(--muted); font-size: .86rem; }
.site-footer a { color: var(--muted); }
.legal-copy { max-width: 820px; margin: 0 auto; line-height: 1.7; }
.legal-copy h1 { font-size: clamp(2.2rem, 5vw, 4rem); margin: .15em 0 .6em; }
.legal-copy h2 { margin-top: 1.7em; }
.legal-copy dt { font-weight: 700; }
.legal-copy dd { margin: 0 0 18px; overflow-wrap: anywhere; }
.legal-copy .message { margin: 0 0 24px; }
.rights-confirmation { display: grid; grid-template-columns: auto 1fr; gap: 12px; margin-bottom: 20px; padding: 16px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: #0b1019; line-height: 1.5; }
.rights-confirmation input { margin-top: 4px; }
.rights-confirmation small { display: block; color: var(--muted); margin-top: 3px; }
.stacked-form { display: grid; gap: 18px; margin-top: 24px; }
.stacked-form label { display: grid; gap: 8px; font-weight: 700; }
.stacked-form input:not([type="checkbox"]), .stacked-form textarea, .stacked-form select { width: 100%; padding: 13px 14px; border: 1px solid var(--line); border-radius: 10px; background: #090e17; color: #fff; font: inherit; }
.stacked-form input[type="checkbox"] { margin-right: 8px; }
