:root {
  color-scheme: light;
  --ink: #35264f;
  --purple: #6e43ac;
  --cream: #fff8e9;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 1.5rem; }
body {
  margin: 0;
  background: #ede5f8;
  color: var(--ink);
  font: 1rem/1.7 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
a { color: #593095; text-underline-offset: .18em; overflow-wrap: anywhere; }
a:hover { color: #35185e; }
a:focus-visible { outline: 3px solid #b96e16; outline-offset: 4px; border-radius: 2px; }
.skip-link { position: absolute; left: 1rem; top: -5rem; background: white; padding: .5rem; }
.skip-link:focus { top: .5rem; }
header, main, footer { width: min(54rem, calc(100% - 2rem)); margin-inline: auto; }
header { padding-block: 2rem 1.3rem; }
.brand { font-weight: 850; font-size: 1.1rem; letter-spacing: .015em; }
nav { display: flex; flex-wrap: wrap; gap: .6rem 1.5rem; margin-top: .65rem; }
nav a { font-weight: 650; }
nav a[aria-current="page"] { color: var(--ink); text-decoration-thickness: 3px; }
main {
  background: var(--cream);
  border: 3px solid #ad92d0;
  border-radius: 1.5rem;
  padding: clamp(1.3rem, 5vw, 3rem);
  box-shadow: 0 7px 0 #d4c1ec;
}
h1 { font-size: clamp(1.8rem, 5vw, 2.6rem); line-height: 1.15; margin: 0 0 1rem; }
h2 { font-size: 1.55rem; line-height: 1.3; margin-top: 2rem; }
h3 { font-size: 1.1rem; line-height: 1.4; margin-bottom: .4rem; }
p { margin-block: .6rem 1rem; }
li { margin-block: .5rem; }
ul { padding-left: 1.4rem; }
.meta { color: #64546e; font-size: .93rem; }
.summary { background: #f0e6fa; border-left: 4px solid var(--purple); padding: .85rem 1rem; border-radius: .4rem; }
.languages { padding-block: .7rem; }
.translation { margin-top: 3rem; padding-top: 1rem; border-top: 2px solid #d8c8e8; }
footer { padding-block: 1.7rem 2.5rem; font-size: .9rem; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
@media print {
  body { background: white; color: black; }
  header, main, footer { width: 100%; }
  main { border: 0; box-shadow: none; padding: 0; }
  nav, .languages, .skip-link { display: none; }
}
