/*
Copyright (C) 2026-2027 DynaCore

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.
*/
:root {
  color-scheme: dark;
  --background: #071312;
  --text: #edf5f2;
  --muted: #abc0bb;
  --accent: #74d2b0;
  --line: #31554e;
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--background); }
body {
  margin: 0;
  background: linear-gradient(135deg, #071312 0%, #0d1d1a 55%, #172127 100%);
  color: var(--text);
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.6;
}
a { color: var(--accent); }
.site-shell { width: min(920px, 100%); min-height: 100vh; margin: 0 auto; padding: 30px clamp(22px, 6vw, 72px) 42px; }
.site-header { padding-bottom: 34px; }
.language-switcher { display: flex; justify-content: flex-end; gap: 8px; margin-bottom: 18px; }
.language-button { padding: 6px 10px; border: 1px solid var(--line); background: transparent; color: var(--muted); font: inherit; cursor: pointer; }
.language-button[aria-pressed="true"], .language-button:hover, .language-button:focus-visible { border-color: var(--accent); color: var(--accent); }
.home-link { display: inline-block; margin-bottom: 52px; color: var(--accent); font-size: 1.05rem; font-weight: 700; text-decoration: none; }
.home-link:hover, .home-link:focus-visible, .community-link:hover strong, .community-link:focus-visible strong { text-decoration: underline; }
.eyebrow { margin: 0 0 8px; color: var(--muted); font-size: .8rem; letter-spacing: .12em; text-transform: uppercase; }
h1, h2 { font-weight: 400; line-height: 1.1; }
h1 { margin: 0 0 16px; color: var(--accent); font-size: clamp(2.8rem, 8vw, 5.6rem); }
h2 { margin: 0 0 16px; color: var(--accent); font-size: clamp(1.5rem, 3vw, 2.15rem); }
.lede { max-width: 650px; margin: 0; color: var(--muted); font-size: clamp(1.1rem, 2vw, 1.35rem); }
.communities { border-top: 1px solid var(--line); }
.community-link { display: grid; grid-template-columns: minmax(220px, 1fr) 1.2fr; gap: 24px; padding: 18px 0; border-bottom: 1px solid var(--line); color: var(--text); text-decoration: none; }
.community-link span { color: var(--muted); }
.content-section { max-width: 720px; padding-top: 58px; }
.content-section p { color: var(--muted); }
.freedoms ol { padding-left: 1.3rem; color: var(--muted); }
.freedoms li { margin: 10px 0; padding-left: 8px; }
.freedoms strong { color: var(--text); }
footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; padding-top: 70px; color: var(--muted); font-size: .9rem; }
footer p { margin: 4px 0; }
.license-info { margin-left: auto; text-align: right; }
.license-info p { margin: 4px 0; }
.language-content[hidden] { display: none; }
@media (max-width: 620px) {
  .site-shell { padding-top: 20px; }
  .home-link { margin-bottom: 36px; }
  .community-link { grid-template-columns: 1fr; gap: 2px; }
  footer { align-items: flex-start; flex-direction: column; gap: 18px; }
  .license-info { margin-left: 0; text-align: left; }
}
