.legal-page { min-height: 100vh; background: #f7f0e6; color: #2d4447; }
.legal-header { max-width: 1120px; margin: 0 auto; padding: 28px 34px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(45, 68, 71, .16); }
.legal-page main { width: min(760px, calc(100% - 40px)); margin: 0 auto; padding: 90px 0 110px; }
.legal-page h1 { max-width: 680px; margin: 0; font: 600 clamp(48px, 7vw, 78px)/.95 var(--display); letter-spacing: -.055em; }
.legal-intro { margin: 28px 0 54px; color: #5b6c6d; font-size: 18px; line-height: 1.7; }
.legal-page main section { padding: 29px 0; border-top: 1px solid rgba(45, 68, 71, .16); }
.legal-page main h2 { margin: 0 0 11px; font: 600 29px/1.1 var(--display); letter-spacing: -.025em; }
.legal-page main section p { margin: 0; color: #536566; line-height: 1.75; }
.legal-page main section p + p { margin-top: 12px; }
.legal-page main section a { border-bottom: 1px solid currentColor; }
.legal-address { margin-top: 12px !important; font-style: normal; }
.legal-pending { display: inline-block; padding: 7px 9px; border: 1px dashed #a66d4b; color: #805037; background: #fff8ec; font-style: normal; }
.legal-form-card { padding: 30px !important; background: #efe4d4; border: 0 !important; }
.legal-form-card form { display: grid; gap: 16px; }
.legal-form-card label { display: grid; gap: 7px; font: 600 10px/1.3 var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.legal-form-card input { min-height: 46px; padding: 10px 12px; border: 1px solid rgba(45,68,71,.24); background: #fffdf8; color: inherit; font: 500 15px/1.4 var(--sans); text-transform: none; }
.legal-form-card button { justify-self: start; }
.legal-form-card form > p { min-height: 22px; color: #7f4038 !important; }
.legal-form-card form > p a { font-weight: 700; }
.legal-contact { padding: 30px !important; background: #e7dcc8; border: 0 !important; }
.legal-contact small { display: block; margin-top: 16px; color: #6b6f68; line-height: 1.5; }
.legal-page footer { grid-template-columns: 1fr 1fr 1fr; }
@media (max-width: 620px) { .legal-header { padding: 20px; } .legal-header .brand-lockup__type small { display: none; } .legal-page main { padding-top: 60px; } .legal-page footer { grid-template-columns: 1fr; } }
