/* ============================================================
   GLASSGRASIE — TOKENS / index.css
   Enige stijlbron voor de publieke site (Skelet 1).
   Laadt de token-bestanden + reset + component-classes.
   Component-classes gebruiken uitsluitend var(--token):
   zodra de founder de tokens invult, kleurt de hele site mee.
   ============================================================ */

/* Google Fonts — Cormorant Garamond (serif) + Syncopate (sans) */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Syncopate:wght@400;700&display=swap');

@import "./colors.css";
@import "./typography.css";
@import "./layout.css";

/* --- Reset --- */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--font-ui);
  background: var(--bg);
  color: var(--text-1);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
ul, ol { list-style: none; }

/* --- Component-classes --- */
.wrap {
  max-width: var(--maxw);
  margin-inline: auto;
  padding-inline: var(--space-4);
}

.section { padding-block: var(--space-8); }

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-5);
  border-radius: var(--radius);
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  background: var(--accent);
  color: var(--text-on-accent);
  border: 1px solid transparent;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.btn:hover {
  background: var(--accent-2);
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(201, 168, 124, 0.3);
}

.site-nav {
  position: sticky;
  top: 0;
  z-index: 10;
  background: var(--surface);
  border-bottom: 1px solid var(--rule);
}
.site-nav .wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: var(--nav-h);
}
.site-nav nav {
  display: flex;
  gap: var(--space-5);
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--text-2);
}
.site-nav nav a:hover { color: var(--accent-2); }

.wordmark {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: -0.05em;
  color: var(--text-1);
}
.wordmark sup {
  font-size: 0.4em;
  vertical-align: super;
  color: var(--accent-2);
}

.site-footer {
  background: var(--surface);
  border-top: 1px solid var(--rule);
  padding-block: var(--space-8);
}
.site-footer .wrap { display: grid; gap: var(--space-6); }
[data-slot="social"] { display: flex; gap: var(--space-5); }
[data-slot="social"] a {
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--text-2);
}
[data-slot="social"] a:hover { color: var(--accent-2); }

/* --- Formuliervelden (verify, contact) --- */
input, textarea {
  font-family: var(--font-ui);
  font-size: var(--text-base);
  color: var(--text-1);
  background: var(--bg);
  border: 1px solid var(--rule);
  border-radius: var(--radius);
  padding: var(--space-3) var(--space-4);
  outline: none;
  transition: border-color 0.3s;
}
input:focus, textarea:focus {
  border-color: var(--accent-2);
}
label {
  display: block;
  font-family: var(--font-sans);
  font-size: var(--text-xs);
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--text-2);
  margin-bottom: var(--space-2);
}

/* --- Koppen --- */
h1 {
  font-family: var(--font-display);
  font-size: var(--text-3xl);
  font-weight: 400;
  letter-spacing: -0.03em;
  margin-bottom: var(--space-5);
}
h2 {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  font-weight: 400;
  margin-bottom: var(--space-4);
}
p { margin-bottom: var(--space-3); color: var(--text-2); }