.legal-main { padding: 0 24px 100px; background: #f3f5f7; }
.legal-shell { width: min(100%, 1100px); margin: auto; color: var(--ink); overflow-wrap: anywhere; }
.legal-page .content-hero-copy { height: 310px; min-height: 310px; }
.legal-page .content-hero h1 { font-size: clamp(38px, 5.5vw, 76px); line-height: 1.2; }
.legal-tabs { display: flex; border-bottom: 1px solid var(--line); margin-bottom: 38px; }
.legal-tabs a { flex: 1; padding: 22px 12px; text-align: center; color: #65758a; font-size: 17px; font-weight: 800; border-bottom: 3px solid transparent; }
.legal-tabs a[aria-current="page"] { color: var(--blue-700); border-bottom-color: var(--blue-700); }
.legal-tabs a:focus-visible { outline: 2px solid var(--blue-700); outline-offset: -4px; }
.legal-document { padding: 40px 48px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.legal-document section { padding: 30px 0; border-top: 1px solid #e4e9f0; scroll-margin-top: 110px; }
.legal-document section:last-child { padding-bottom: 0; }
.legal-document h2 { margin: 0 0 18px; color: #17243a; font-size: 23px; letter-spacing: -.035em; line-height: 1.5; }
.legal-document p, .legal-document li { color: #526176; font-size: 16px; line-height: 1.95; word-break: keep-all; overflow-wrap: anywhere; }
.legal-document p { margin: 12px 0; }
.legal-document ul { padding-left: 22px; margin: 14px 0; }
.legal-document li + li { margin-top: 10px; }
.legal-document a { color: var(--blue-700); text-decoration: underline; text-underline-offset: 3px; }
.legal-document .legal-review { margin: 0 0 30px; padding: 20px 24px; background: #f0f5fc; border-left: 3px solid #2d78d2; border-radius: 6px; color: #435874; font-size: 14px; line-height: 1.8; }
@media(max-width:700px){
  .legal-main { padding: 0 16px 64px; }
  .legal-page .content-hero { padding-left: 16px; padding-right: 16px; }
  .legal-page .content-hero-copy { height: auto; min-height: 240px; padding: 40px 0; }
  .legal-page .content-hero-copy > p:last-child { font-size: 14px; }
  .legal-tabs { margin-bottom: 24px; }
  .legal-tabs a { font-size: 15px; padding: 18px 6px; }
  .legal-document { padding: 24px 18px; border-radius: 12px; }
  .legal-document h2 { font-size: 20px; }
  .legal-document p, .legal-document li { font-size: 15px; line-height: 1.85; }
  .legal-document .legal-review { padding: 16px; font-size: 13px; }
}
