.legal-page { background: var(--paper); }
.legal-page .site-header { position: relative; }
.legal-main { padding: clamp(65px, 9vw, 120px) clamp(22px, 8vw, 125px); }
.legal-wrap { max-width: 900px; margin: 0 auto; }
.legal-heading { margin-bottom: 55px; }
.legal-heading h1 { margin-bottom: 18px; font-size: clamp(54px, 8vw, 105px); }
.legal-heading p { max-width: 680px; color: var(--muted); font-size: 18px; }
.legal-section { padding: 34px 0; border-top: 1px solid var(--line); }
.legal-section h2 { margin-bottom: 18px; font-size: clamp(28px, 4vw, 43px); }
.legal-section h3 { margin: 28px 0 10px; font-size: 22px; }
.legal-section p, .legal-section li { color: #514a41; }
.legal-section ul { padding-left: 22px; }
.legal-section a { text-underline-offset: 3px; }
.legal-data { display: grid; grid-template-columns: 210px 1fr; margin: 0; }
.legal-data div { display: contents; }
.legal-data dt, .legal-data dd { padding: 13px 0; border-bottom: 1px solid var(--line); }
.legal-data dt { padding-right: 25px; color: var(--wine); font-weight: 700; }
.legal-data dd { margin: 0; }
.legal-note { padding: 22px; background: #f1e3c8; border-left: 4px solid var(--wine); }
.legal-back { margin-top: 35px; }
@media (max-width: 680px) {
  .legal-data { display: block; }
  .legal-data div { display: block; padding: 13px 0; border-bottom: 1px solid var(--line); }
  .legal-data dt, .legal-data dd { padding: 0; border: 0; }
  .legal-data dd { margin-top: 4px; }
}
