.legal-page { background: #fff; color: var(--ink); }
.legal-container { width: min(1120px, calc(100% - 72px)); margin: 0 auto; }
.legal-hero { display: grid; grid-template-columns: .88fr 1.12fr; gap: 34px; align-items: center; padding: 26px 0 30px; }
.crumbs { display: flex; gap: 10px; align-items: center; color: #4b5566; font-size: 13px; margin-bottom: 32px; }
.legal-kicker, .section-label { color: var(--orange); text-transform: uppercase; font-size: 13px; font-weight: 900; letter-spacing: .02em; }
.legal-copy h1 { margin: 18px 0 18px; font-size: clamp(44px, 5vw, 62px); line-height: 1.05; letter-spacing: 0; }
.legal-copy h1 span { color: var(--orange); display: block; }
.legal-rule { width: 44px; height: 2px; background: var(--orange); margin: 0 0 24px; }
.legal-copy h2 { margin: 0 0 16px; font-size: 24px; letter-spacing: 0; }
.legal-copy p { margin: 0; color: #2f3a4b; font-size: 16px; line-height: 1.75; max-width: 525px; }
.legal-actions { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 28px; }
.legal-actions .btn { min-width: 210px; }

.legal-visual-wrap { position: relative; min-height: 455px; display: grid; align-items: center; }
.legal-visual { width: min(510px, 78%); display: block; object-fit: contain; filter: drop-shadow(0 24px 38px rgba(15,23,42,.08)); }
.hero-trust-list { position: absolute; right: 0; top: 44px; display: grid; gap: 17px; width: 215px; }
.hero-trust-list span { display: grid; grid-template-columns: 50px 1fr; align-items: center; gap: 12px; font-weight: 800; color: #121724; }
.hero-trust-list img { width: 50px; height: 50px; object-fit: contain; display: block; filter: drop-shadow(0 12px 18px rgba(15,23,42,.08)); }

.legal-docs { padding: 20px 0 26px; }
.legal-docs h2 { margin: 16px 0 8px; font-size: 26px; letter-spacing: 0; }
.legal-docs > p { margin: 0 0 22px; color: #4b5566; }
.doc-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.doc-card { position: relative; min-height: 224px; padding: 22px 20px; border: 1px solid var(--line); border-radius: 10px; background: #fff; box-shadow: 0 16px 36px rgba(15,23,42,.06); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.doc-card:hover { transform: translateY(-3px); border-color: #ffd7ca; box-shadow: 0 20px 42px rgba(255,61,10,.10); }
.doc-card img { width: 58px; height: 58px; object-fit: contain; display: block; margin-bottom: 18px; }
.doc-card h3 { margin: 0 0 14px; font-size: 18px; line-height: 1.18; letter-spacing: 0; }
.doc-card p { margin: 0; color: #3d4657; font-size: 14px; line-height: 1.6; }
.doc-card span { position: absolute; right: 20px; bottom: 18px; color: var(--orange); font-weight: 900; font-size: 22px; }

.trust-panel-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; padding: 2px 0 28px; }
.trust-panel { min-height: 344px; padding: 26px 22px; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 16px 36px rgba(15,23,42,.05); }
.trust-panel img { width: 58px; height: 58px; object-fit: contain; display: block; margin-bottom: 18px; }
.trust-panel h3 { margin: 0 0 12px; font-size: 19px; line-height: 1.24; letter-spacing: 0; }
.trust-panel p { margin: 0 0 14px; color: #4b5566; line-height: 1.6; font-size: 14px; }
.trust-panel ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; color: #263246; font-size: 14px; line-height: 1.45; }
.trust-panel li { position: relative; padding-left: 22px; }
.trust-panel li::before { content: ""; position: absolute; left: 0; top: .45em; width: 9px; height: 9px; border-radius: 50%; border: 1.5px solid currentColor; }
.trust-panel a { display: inline-flex; margin-top: 18px; color: var(--orange); font-weight: 900; }
.orange-panel { background: linear-gradient(160deg, #fff4ef, #fff); color: #ff3d0a; }
.orange-panel h3, .orange-panel p, .orange-panel li { color: #152036; }
.orange-panel li::before { color: var(--orange); }
.blue-panel { background: linear-gradient(160deg, #f3f8ff, #fff); }
.blue-panel li::before, .blue-panel h3 { color: var(--blue); }
.green-panel { background: linear-gradient(160deg, #effcf5, #fff); }
.green-panel h3 { color: #0f8f54; }
.purple-panel { background: linear-gradient(160deg, #f7f2ff, #fff); }
.purple-panel li::before, .purple-panel h3 { color: var(--purple); }
.commitment-table { display: grid; gap: 8px; margin-top: 14px; }
.commitment-table span { display: grid; grid-template-columns: 78px 1fr; align-items: center; min-height: 34px; padding: 6px 10px; border: 1px solid #d9eee1; border-radius: 6px; background: rgba(255,255,255,.75); }
.commitment-table strong { color: #111827; }
.commitment-table small { color: #4b5566; font-weight: 700; }

.legal-help { display: grid; grid-template-columns: 1.45fr .78fr .9fr; gap: 0; align-items: center; margin-top: 0; margin-bottom: 18px; padding: 22px 26px; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 16px 36px rgba(15,23,42,.05); background: #fff; }
.help-copy { display: grid; grid-template-columns: 70px 1fr; align-items: center; gap: 20px; padding-right: 22px; }
.help-copy img, .help-channel img { width: 58px; height: 58px; object-fit: contain; }
.help-copy h2 { margin: 0 0 6px; font-size: 20px; line-height: 1.25; }
.help-copy h2 span { display: block; }
.help-copy p { margin: 0; color: #4b5566; line-height: 1.6; font-size: 14px; }
.help-channel { min-height: 82px; display: grid; grid-template-columns: 58px 1fr; gap: 16px; align-items: center; padding: 0 22px; border-left: 1px solid var(--line); }
.help-channel small { display: block; color: #4b5566; margin-bottom: 5px; }
.help-channel strong { display: block; color: #121724; font-size: 15px; }
.help-channel em { display: inline-flex; margin-top: 8px; color: var(--orange); font-style: normal; font-weight: 900; }

.legal-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; align-items: center; margin-bottom: 34px; padding: 15px 28px; border-radius: 8px; background: linear-gradient(90deg, #f7f8fb, #fff); color: #4b5566; }
.legal-meta span { display: flex; align-items: center; gap: 12px; min-height: 32px; border-right: 1px solid #dfe4ec; }
.legal-meta span:last-child { border-right: 0; }
.legal-meta img { width: 26px; height: 26px; object-fit: contain; }

@media (max-width: 1120px) {
  .legal-hero { grid-template-columns: 1fr; }
  .legal-visual-wrap { min-height: auto; }
  .legal-visual { width: min(520px, 70%); }
  .hero-trust-list { top: 18px; }
  .doc-grid, .trust-panel-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .legal-help { grid-template-columns: 1fr; gap: 18px; }
  .help-channel { border-left: 0; border-top: 1px solid var(--line); padding: 18px 0 0; }
}

@media (max-width: 720px) {
  .legal-container { width: min(100% - 32px, 560px); }
  .legal-hero { gap: 20px; padding-top: 22px; }
  .legal-actions, .legal-actions .btn { width: 100%; }
  .legal-visual { width: 100%; }
  .hero-trust-list { position: static; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 10px; }
  .doc-grid, .trust-panel-grid, .legal-meta { grid-template-columns: 1fr; }
  .legal-meta span { border-right: 0; border-bottom: 1px solid #dfe4ec; padding-bottom: 10px; }
  .legal-meta span:last-child { border-bottom: 0; }
  .help-copy { grid-template-columns: 1fr; }
}
