/* ── GLOBAL TYPOGRAPHY ── */
html { font-size: 20px; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* ── CSS VARIABLES ── */
:root {
  --gold: #C9A84C;
  --gold-dim: #8A6E32;
  --ink: #0A0A0B;
  --ink-2: #111113;
  --ink-3: #1A1A1E;
  --text: #F0EDE8;
  --muted: rgba(240,237,232,0.75);
  --text-muted: rgba(240,237,232,0.75);
  --border: rgba(201,168,76,0.18);
  --serif: 'Cormorant Garamond', Georgia, serif;
  --mono: 'DM Mono', monospace;
  --green: #4CAF50;
  --red: #e05252;
}

/* ── HEADINGS ── */
h1 { font-size: 3rem; font-weight: 300; line-height: 1.1; }
h2 { font-size: 2rem; font-weight: 300; }
h3 { font-size: 1.4rem; font-weight: 300; }

/* ── PARAGRAPHS ── */
p { font-size: 1.05rem; line-height: 1.8; color: rgba(240,237,232,0.82); }

/* ── NAV ── */
.nav-link        { font-size: .76rem; }
.nav-logo        { font-size: 1.5rem; }
.nav-btn         { font-size: .72rem; }
.lang-globe      { font-size: .68rem; }
.nav-mobile-link { font-size: .76rem; }

/* ── FORM ELEMENTS ── */
label { font-size: .65rem; letter-spacing: .14em; }
input, textarea, select { font-size: .9rem; }
.btn-submit { font-size: .75rem; }
.btn-back   { font-size: .72rem; }

/* ── INFO LABELS ── */
.info-label   { font-size: .62rem; }
.info-value   { font-size: 1rem; }
.page-eyebrow { font-size: .68rem; }
.page-sub     { font-size: 1.05rem; }

/* ── GALLERY ── */
.gallery-title { font-size: 1.1rem; }

/* ── FOOTER ── */
footer {
  border-top: .5px solid var(--border);
  padding: 2rem 2.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  background: rgba(255,255,255,0.01);
}
.footer-logo {
  font-family: var(--serif);
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--gold);
  text-decoration: none;
}
.footer-logo em {
  font-style: italic;
  color: rgba(240,237,232,0.4);
}
.footer-links {
  display: flex;
  gap: 2.5rem;
  flex-wrap: wrap;
  align-items: center;
}
.footer-links a {
  font-family: var(--mono);
  font-size: .58rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(240,237,232,0.3);
  text-decoration: none;
  transition: color .2s;
}
.footer-links a:hover {
  color: var(--gold);
}
.footer-copy {
  font-family: var(--mono);
  font-size: .55rem;
  letter-spacing: .08em;
  color: rgba(240,237,232,0.18);
}

/* ── MOBILE ── */
@media (max-width: 768px) {
  html { font-size: 15px; }
  h1   { font-size: 2.2rem; }
  h2   { font-size: 1.6rem; }
  footer { flex-direction: column; text-align: center; gap: 1.2rem; }
  .footer-links { justify-content: center; gap: 1.5rem; }
}