:root {
  color-scheme: dark;
  background: #000;
  color: #f5f3ef;
  font-family: Arial, Helvetica, sans-serif;
}

* {
  box-sizing: border-box;
}

body {
  min-width: 320px;
  margin: 0;
  background: #000;
}

.legal-main {
  width: min(940px, 100%);
  min-height: 70vh;
  margin: 0 auto;
  padding: clamp(150px, 17vw, 220px) clamp(22px, 6.5vw, 104px) 100px;
}

.legal-eyebrow {
  margin: 0 0 18px;
  color: #bdb8ae;
  font-size: 0.67rem;
  letter-spacing: 0.21em;
  text-transform: uppercase;
}

.legal-main h1,
.legal-main h2 {
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
}

.legal-main h1 {
  margin: 0;
  font-size: clamp(1.9rem, 6vw, 5rem);
  letter-spacing: -0.045em;
}

.legal-main h2 {
  margin: 42px 0 12px;
  font-size: 1.5rem;
}

.legal-main p,
.legal-main li {
  color: #c1beb8;
  font-size: 0.9rem;
  line-height: 1.85;
}

.legal-main ul {
  padding-left: 22px;
}

.legal-notice {
  margin-top: 30px;
  padding: 18px 20px;
  border-left: 2px solid #c4b998;
  background: rgba(245, 243, 239, 0.045);
  color: #e8e5df;
  font-size: 0.84rem;
  line-height: 1.75;
}

.legal-main a {
  color: #f5f3ef;
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 600px) {
  .legal-main {
    padding-top: 126px;
  }
}

@media (max-width: 680px) {
  .legal-main h1 { font-size: 1.73rem; }
  .legal-main h2 { font-size: 1.3rem; }
  .legal-main p,
  .legal-main li { font-size: 0.93rem; }
}
