.legal-links { display:flex; flex-wrap:wrap; align-items:center; gap:4px 20px; padding:16px 0; font-size:14px; line-height:1.5; }
.legal-links a { display:inline-flex; align-items:center; min-height:44px; color:inherit; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-links a:focus-visible, .legal-page a:focus-visible { outline:3px solid #32634e; outline-offset:4px; border-radius:3px; }
.legal-form-note { font-size:14px; line-height:1.6; margin:0; }
.legal-form-note a { color:inherit; text-underline-offset:3px; }
.legal-page { margin:0; color:#243c32; background:#f7f8f4; font:15px/1.8 ui-sans-serif, system-ui, -apple-system, "Segoe UI", Arial, sans-serif; }
.legal-page * { box-sizing:border-box; }
.legal-page a { color:#425e47; text-underline-offset:3px; overflow-wrap:anywhere; }
.legal-shell { width:min(880px, 100%); margin:0 auto; padding:28px 24px 40px; }
.legal-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:24px; }
.legal-brand { display:flex; align-items:center; gap:10px; font-weight:750; text-decoration:none; letter-spacing:-.3px; }
.legal-mark { display:block; width:36px; height:36px; }
.legal-back { padding:8px 0; font-size:14px; }
.legal-card { background:#fff; border:1px solid #e0e7df; border-radius:14px; padding:clamp(24px,5vw,48px); }
.legal-eyebrow { margin:0 0 8px; color:#56674f; font-size:12px; font-weight:750; letter-spacing:1.8px; text-transform:uppercase; }
.legal-page h1 { margin:0 0 12px; font-size:clamp(32px,6vw,46px); line-height:1.15; letter-spacing:-1.4px; }
.legal-date { margin:0 0 24px; color:#657060; font-size:14px; }
.legal-intro { font-size:18px; line-height:1.7; }
.legal-page h2 { font-size:22px; line-height:1.35; margin:32px 0 12px; letter-spacing:-.4px; }
.legal-page h3 { font-size:17px; line-height:1.5; margin:24px 0 8px; }
.legal-page p { margin:0 0 16px; }
.legal-page li { margin:8px 0; }
.legal-page ul { padding-left:24px; }
.legal-page section { scroll-margin-top:24px; }
.legal-callout { background:#edf3e8; border:1px solid #d5e0cb; border-radius:16px; padding:20px; margin:24px 0; }
.legal-callout h2 { margin-top:0; }
.legal-callout p:last-child { margin-bottom:0; }
.legal-toc { margin:24px 0; border-block:1px solid #dce3d8; }
.legal-footer { padding-top:16px; color:#52614f; }
.legal-footer .legal-links { padding:0; }
.legal-footer p { margin:8px 0 0; font-size:14px; }
.legal-skip { position:absolute; top:8px; left:8px; transform:translateY(-150%); padding:10px 16px; background:white; z-index:1; }
.legal-skip:focus { transform:translateY(0); }
@media (max-width:480px) { .legal-shell { padding:20px 14px 28px; } .legal-card { border-radius:18px; padding:24px 20px; } .legal-brand { font-size:15px; } }
@media print { .legal-page { background:white; font-size:11pt; } .legal-shell { width:100%; padding:0; } .legal-card { border:0; box-shadow:none; padding:0; } .legal-header, .legal-toc, .legal-skip { display:none; } .legal-page h2, .legal-page h3 { break-after:avoid; } .legal-callout { break-inside:avoid; } }

.sms-mode-notice { margin:16px auto; padding:16px 20px; max-width:840px; border:1px solid #b9cbbc; border-radius:10px; background:#edf4ed; color:#243c32; font:14px/1.7 system-ui,sans-serif; }
.sms-mode-notice a { color:inherit; text-decoration:underline; }
