/* Shared page reset and palette, without the archive components. */
:root {
  --forest: #254535;
  --forest-soft: #5f6b51;
  --paper: #f7f3e9;
  --paper-deep: #efe8da;
  --sage: #a7b79a;
  --clay: #9f4933;
  --ink: #26352e;
  --line: rgb(37 69 53 / .2);
  --font-display: "Cormorant Garamond", Georgia, serif;
  --font-body: "Plus Jakarta Sans", Arial, sans-serif;
}

*,
*::before,
*::after { box-sizing: border-box; }

html { min-width: 320px; scroll-behavior: smooth; background: var(--paper); }

body { min-width: 320px; margin: 0; overflow-x: hidden; color: var(--ink); background: var(--paper); font: 400 16px/1.65 var(--font-body); -webkit-font-smoothing: antialiased; }

body::before { content: none; }

img { display: block; width: 100%; }

a { color: inherit; text-decoration: none; }

button { font: inherit; }

::selection { color: var(--paper); background: var(--clay); }

:focus-visible { outline: 3px solid var(--clay); outline-offset: 4px; }

.skip-link { position: fixed; top: 12px; left: 12px; z-index: 100; padding: 10px 16px; color: var(--paper); background: var(--forest); border-radius: 999px; transform: translateY(-150%); }

.skip-link:focus { transform: translateY(0); }

.legal-content { width: min(100% - 40px, 760px); margin: 0 auto; padding: 140px 0 80px; overflow-wrap: anywhere; }
.legal-back { color: var(--forest); font-size: 13px; }
.legal-content h1 { margin: 26px 0 12px; color: var(--forest); font: 500 clamp(42px, 7vw, 68px)/1.05 var(--font-display); }
.legal-date { font-size: 12px; color: var(--forest-soft); }
.legal-content section { margin-top: 32px; }
.legal-content h2 { margin: 0 0 10px; color: var(--forest); font: 600 26px/1.2 var(--font-display); }
.legal-content p { line-height: 1.8; }
.legal-content p a { text-decoration: underline; text-underline-offset: 3px; }
.legal-page a:focus-visible { outline: 2px solid var(--forest); outline-offset: 4px; }
@media (max-width: 560px) { .legal-content { width: calc(100% - 32px); padding-top: 110px; padding-bottom: 48px; } }

@media (prefers-reduced-motion: reduce) {

html { scroll-behavior: auto; }

*,
*::before,
*::after { animation: none !important; transition: none !important; }
}
