:root {
  color: #203c33;
  background: #f6f1e8;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }

body {
  min-height: 100vh;
  margin: 0;
  background: radial-gradient(circle at top right, #dcebdc 0, transparent 34rem), #f6f1e8;
  color: #203c33;
  line-height: 1.65;
}

main {
  width: min(52rem, calc(100% - 2rem));
  margin: 2rem auto;
  padding: clamp(1.25rem, 4vw, 3rem);
  border: 1px solid rgba(32, 60, 51, 0.12);
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 1.25rem 3rem rgba(32, 60, 51, 0.1);
}

h1, h2, h3 { color: #17483b; line-height: 1.2; }
h1 { margin-top: 0; font-size: clamp(1.8rem, 5vw, 2.75rem); }
h2 { margin-top: 2rem; font-size: 1.35rem; }
a { color: #8b3f2f; font-weight: 700; text-underline-offset: 0.2em; }
a:hover { color: #63291f; }
a:focus-visible { outline: 3px solid #e8a63b; outline-offset: 3px; border-radius: 0.2rem; }
ul, ol { padding-left: 1.4rem; }

.vestoora-public-support,
.support-categories {
  margin-top: 2rem;
  padding: 1rem;
  border-radius: 1rem;
  background: #edf4ec;
}

.support-categories { display: flex; flex-wrap: wrap; gap: 0.75rem; }

@media (max-width: 36rem) {
  main { width: min(100% - 1rem, 52rem); margin: 0.5rem auto; border-radius: 1rem; }
}
