/* ============================================================
   Base — reset, typography, global defaults
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }

body {
  font-family: var(--font-body);
  background-color: var(--color-bg);
  color: var(--color-text);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1 {
  font-family: var(--font-display);
  font-size: clamp(48px, 6vw, 80px);
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.025em;
  color: var(--color-text);
}
h2 {
  font-family: var(--font-display);
  font-size: clamp(30px, 4vw, 52px);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--color-text);
}
h3 { font-size: 20px; font-weight: 600; color: var(--color-text); line-height: 1.3; }
h4 { font-size: 16px; font-weight: 600; color: var(--color-text); }
p  { font-size: 16px; line-height: 1.7; color: var(--color-text-muted); }

a { color: inherit; text-decoration: none; transition: var(--transition); }
img, svg, video { display: block; max-width: 100%; }
ul { list-style: none; }
input, button, textarea, select { font: inherit; }

:focus-visible {
  outline: 1px solid var(--gold);
  outline-offset: 3px;
  border-radius: var(--radius-sm);
}

/* ── Gold glossy border utility ── */
.gold-border {
  position: relative;
  border-radius: var(--radius-md);
}
.gold-border::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: var(--gold-border);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

/* ── Section label pill ── */
.section-label {
  display: inline-flex;
  align-items: center;
  margin-bottom: var(--space-sm);
}
.section-label span {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: var(--gold);
  padding: 4px 14px;
  border-radius: var(--radius-pill);
  background: rgba(201,168,76,0.08);
  border: 1px solid rgba(201,168,76,0.25);
}
