/* Юридические страницы: Impressum, Datenschutz, AGB, Widerruf. */

.legal-head {
  border-bottom: 1px solid rgba(201, 169, 106, .14);
  padding: 26px 0; position: sticky; top: 0; z-index: 100;
  background: rgba(14, 14, 16, .92); backdrop-filter: blur(14px);
}
.legal-head__inner { display: flex; align-items: center; gap: 24px; }
.legal-head a.back { margin-left: auto; color: var(--text-dim); font-size: 13px; }
.legal-head a.back:hover { color: var(--gold); }

.legal { padding: 70px 0 110px; }
.legal__title {
  font-family: var(--serif); font-weight: 400; color: var(--cream);
  font-size: clamp(30px, 5vw, 46px); line-height: 1.15; margin-bottom: 14px;
}
.legal__updated {
  color: var(--text-dim); font-size: 12.5px; letter-spacing: .1em;
  text-transform: uppercase; margin-bottom: 54px;
}

.legal h2 {
  font-family: var(--serif); font-weight: 400; color: var(--cream);
  font-size: 22px; margin: 54px 0 18px; line-height: 1.3;
}
.legal h3 { font-size: 15px; color: var(--gold); margin: 30px 0 12px; font-weight: 600; letter-spacing: .02em; }
.legal p, .legal li { color: var(--text-dim); font-size: 15px; line-height: 1.75; }
.legal p + p { margin-top: 14px; }
.legal ul, .legal ol { margin: 14px 0 14px 22px; display: flex; flex-direction: column; gap: 9px; }
.legal a { color: var(--gold); text-decoration: underline; text-underline-offset: 3px; }
.legal strong, .legal b { color: var(--cream); font-weight: 600; }

.legal__box {
  border: 1px solid rgba(201, 169, 106, .2); border-radius: 5px;
  padding: 26px 28px; margin: 26px 0;
  background: linear-gradient(160deg, rgba(201, 169, 106, .05), transparent 60%);
}
.legal__box p, .legal__box address { font-style: normal; color: var(--text); line-height: 1.8; }

.legal table { width: 100%; border-collapse: collapse; margin: 22px 0; font-size: 14px; }
.legal th {
  text-align: left; color: var(--gold); font-weight: 600; font-size: 11.5px;
  letter-spacing: .14em; text-transform: uppercase; padding: 10px 14px 10px 0;
  border-bottom: 1px solid rgba(201, 169, 106, .2); vertical-align: bottom;
}
.legal td {
  padding: 13px 14px 13px 0; border-bottom: 1px solid rgba(255, 255, 255, .06);
  color: var(--text-dim); vertical-align: top; line-height: 1.6;
}

/* Незаполненные реквизиты — видны сразу, чтобы не уехали в прод */
.todo {
  background: rgba(201, 106, 106, .18); color: #f0c9c9;
  border: 1px dashed rgba(201, 106, 106, .5); border-radius: 3px;
  padding: 1px 7px; font-size: .92em; font-weight: 600;
}

.legal__nav {
  display: flex; flex-wrap: wrap; gap: 10px 18px;
  border-top: 1px solid rgba(201, 169, 106, .14); margin-top: 70px; padding-top: 26px;
}
.legal__nav a { color: var(--text-dim); font-size: 13px; text-decoration: none; }
.legal__nav a:hover { color: var(--gold); }

.legal-foot {
  border-top: 1px solid rgba(201, 169, 106, .12); background: #0a0a0c;
  padding: 30px 0; color: var(--text-dim); font-size: 12.5px;
}
.legal-foot .container { display: flex; gap: 18px; flex-wrap: wrap; }

@media (max-width: 700px) {
  .legal { padding: 46px 0 80px; }
  .legal h2 { margin-top: 42px; }
}
