:root {
  color-scheme: dark;
  --background: #07090e;
  --surface: #0d121b;
  --surface-soft: #111824;
  --text: #f0f1f3;
  --muted: #b8bec8;
  --gold: #c6a568;
  --gold-bright: #e0c58f;
  --border: rgba(198, 165, 104, 0.28);
  --content-width: 880px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--background);
}

body {
  margin: 0;
  min-width: 0;
  overflow-x: hidden;
  color: var(--text);
  background:
    radial-gradient(circle at 50% -12rem, rgba(45, 66, 94, 0.34), transparent 34rem),
    linear-gradient(180deg, #090d14 0%, var(--background) 38%, #05070b 100%);
  font-family: Georgia, "Times New Roman", "Yu Mincho", "Hiragino Mincho ProN", serif;
  font-size: 17px;
  line-height: 1.72;
  overflow-wrap: anywhere;
}

a {
  color: var(--gold-bright);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.22em;
}

a:hover,
a:focus-visible {
  color: #f2dbab;
}

.site-header {
  border-bottom: 1px solid var(--border);
  background: rgba(5, 8, 13, 0.84);
}

.header-inner,
.page-shell,
.site-footer {
  width: min(calc(100% - 40px), var(--content-width));
  margin-inline: auto;
}

.header-inner {
  padding: 64px 0 42px;
  text-align: center;
}

.eyebrow,
.section-label,
.updated {
  color: var(--gold);
  letter-spacing: 0.09em;
}

.eyebrow {
  margin: 0 0 8px;
  font-size: 0.82rem;
  text-transform: uppercase;
}

h1,
h2,
h3,
p {
  margin-top: 0;
}

h1 {
  margin-bottom: 18px;
  font-size: clamp(2.2rem, 7vw, 4rem);
  font-weight: 500;
  line-height: 1.08;
}

h2 {
  margin-bottom: 18px;
  font-size: clamp(1.55rem, 4vw, 2.15rem);
  line-height: 1.25;
}

h3 {
  margin-bottom: 8px;
  color: #f3e8d0;
  font-size: 1.08rem;
  line-height: 1.4;
}

.language-nav {
  display: flex;
  justify-content: center;
  gap: 12px;
  color: var(--muted);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.92rem;
}

.page-shell {
  padding: 24px 0 12px;
}

.language-section {
  scroll-margin-top: 20px;
  padding: 52px 0 64px;
}

.language-section + .language-section {
  border-top: 1px solid var(--border);
}

.section-label {
  margin-bottom: 10px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  text-transform: uppercase;
}

.contact-card,
.faq-item {
  border: 1px solid var(--border);
  border-radius: 10px;
  background: linear-gradient(145deg, rgba(19, 27, 39, 0.94), rgba(10, 15, 23, 0.94));
}

.contact-card {
  margin: 30px 0 42px;
  padding: 22px 24px;
}

.contact-card p,
.faq-item p {
  margin-bottom: 0;
}

code {
  color: #f4ddb0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.94em;
}

.faq-list {
  display: grid;
  gap: 14px;
}

.faq-item {
  padding: 22px 24px;
}

.policy-page .language-section > h3 {
  margin-top: 34px;
}

.updated {
  margin-bottom: 36px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 0.9rem;
}

.site-footer {
  padding: 26px 0 52px;
  border-top: 1px solid var(--border);
  text-align: center;
}

@media (max-width: 600px) {
  body {
    font-size: 16px;
    line-height: 1.68;
  }

  .header-inner,
  .page-shell,
  .site-footer {
    width: min(calc(100% - 28px), var(--content-width));
  }

  .header-inner {
    padding: 46px 0 34px;
  }

  .language-section {
    padding: 40px 0 50px;
  }

  .contact-card,
  .faq-item {
    padding: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
