.legal-page {
  background:
    radial-gradient(circle at top left, rgba(208, 184, 150, 0.18), transparent 28%),
    linear-gradient(180deg, #fbf7f0 0%, #f4ecdf 100%);
}

.legal-shell {
  width: min(1100px, calc(100vw - 40px));
  margin: 0 auto;
}

.legal-hero {
  position: relative;
  padding: 0 0 24px;
}

.legal-hero__panel {
  position: relative;
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 166px max(24px, calc((100vw - 1100px) / 2 + 20px)) 72px;
  background:
    radial-gradient(circle at left top, rgba(255, 255, 255, 0.92), rgba(255, 252, 246, 0.84) 38%, rgba(250, 243, 233, 0.8) 100%);
  box-shadow: 0 24px 56px rgba(90, 68, 42, 0.08);
}

.legal-hero__eyebrow {
  margin: 0 0 12px;
  color: #8f795f;
  font-size: 0.88rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.legal-hero h1 {
  margin: 0;
  color: #1f1916;
  font-family: "Playfair Display", serif;
  font-size: clamp(3rem, 5vw, 4.6rem);
  line-height: 0.96;
  letter-spacing: -0.03em;
}

.legal-hero__script {
  margin: 10px 0 18px;
  color: #c29a55;
  font-family: "Allura", cursive;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 0.95;
}

.legal-hero__text {
  max-width: 44rem;
  margin: 0;
  color: #584c40;
  font-size: 1.05rem;
  line-height: 1.8;
}

.legal-content {
  padding: 8px 0 40px;
}

.legal-card {
  border: 1px solid rgba(185, 143, 69, 0.14);
  border-radius: 28px;
  background: rgba(255, 252, 246, 0.92);
  box-shadow: 0 24px 56px rgba(90, 68, 42, 0.08);
  padding: clamp(24px, 3.8vw, 42px);
}

.legal-card h2,
.legal-card h3 {
  margin: 0 0 14px;
  color: #1f1916;
  font-family: "Playfair Display", serif;
  line-height: 1.1;
}

.legal-card h2 {
  font-size: clamp(1.7rem, 2.6vw, 2.3rem);
}

.legal-card h3 {
  margin-top: 28px;
  font-size: clamp(1.24rem, 2vw, 1.55rem);
}

.legal-card p,
.legal-card li {
  color: #584c40;
  font-size: 1rem;
  line-height: 1.82;
}

.legal-card p {
  margin: 0 0 14px;
}

.legal-card ul {
  margin: 0 0 14px 20px;
  padding: 0;
}

.legal-card a {
  color: #a57f42;
  text-decoration: none;
}

.legal-card a:hover,
.legal-card a:focus-visible {
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

.legal-card__facts {
  display: grid;
  gap: 14px;
  margin-bottom: 12px;
}

.legal-card__fact-title {
  display: block;
  margin-bottom: 4px;
  color: #8f795f;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.quick-info-footer,
.quick-info-footer__links {
  visibility: visible;
  opacity: 1;
}

@media (max-width: 860px) {
  .legal-shell {
    width: min(calc(100vw - 20px), 1100px);
  }

  .legal-hero__panel {
    padding: 126px 20px 34px;
  }
}

@media (max-width: 560px) {
  .legal-hero__eyebrow {
    font-size: 0.78rem;
    letter-spacing: 0.14em;
  }

  .legal-hero h1 {
    font-size: clamp(2.15rem, 8.9vw, 2.7rem);
  }

  .legal-hero__script {
    font-size: clamp(1.65rem, 7.4vw, 2.1rem);
    line-height: 0.96;
  }

  .legal-hero__text {
    font-size: 0.96rem;
    line-height: 1.66;
  }
}
