/* ═══════════════════════════════════════════════════════
   ORIONA — Shared Design System
   Convergence Oracle · Editorial Instrument
   ═══════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500&family=Inter:wght@300;400;500;600&display=swap');

/* ── RESET ─────────────────────────────────────────── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; font-size:16px; }

/* ── TOKENS ────────────────────────────────────────── */
:root {
  --ivory:       oklch(97.6% 0.015 86);
  --cream:       oklch(94.8% 0.025 88);
  --paper:       oklch(98.7% 0.011 86);
  --parchment:   oklch(89.4% 0.030 88);
  --parchment2:  oklch(84.6% 0.036 82);
  --gold:        oklch(72.5% 0.118 86);
  --gold-lt:     oklch(82.4% 0.104 88);
  --gold-dk:     oklch(52.5% 0.102 78);
  --copper:      oklch(48.5% 0.094 55);
  --gold-glow:   oklch(72.5% 0.118 86 / 0.14);
  --ink:         oklch(21.5% 0.027 67);
  --ink-mid:     oklch(37.5% 0.036 70);
  --ink-lt:      oklch(53.5% 0.041 73);
  --ink-faint:   oklch(70.5% 0.043 81);
  --white:       var(--paper);
  --rule:        oklch(72.5% 0.118 86 / 0.22);
  --rule-strong: oklch(62% 0.096 78 / 0.38);
  --shadow-sm:   0 6px 18px rgba(58,42,25,0.07);
  --shadow-md:   0 18px 52px rgba(58,42,25,0.12);
  --shadow-gold: 0 12px 30px oklch(72.5% 0.118 86 / 0.24);
}

/* ── BASE ──────────────────────────────────────────── */
body {
  background: var(--ivory);
  color: var(--ink);
  font-family: 'Inter', sans-serif;
  line-height: 1.65;
  overflow-x: hidden;
}

/* ── TYPOGRAPHY ────────────────────────────────────── */
.serif { font-family:'Cormorant Garamond',serif; }

h1,h2,h3 { font-family:'Cormorant Garamond',serif; font-weight:400; line-height:1.2; }

.eyebrow {
  font-family:'Inter',sans-serif;
  font-size:10px; font-weight:600;
  letter-spacing:0.30em; text-transform:uppercase;
  color:var(--gold);
}

.section-rule {
  display:flex; align-items:center; gap:16px;
  margin-bottom:28px;
}
.section-rule .eyebrow { white-space:nowrap; }
.section-rule::after { content:''; flex:1; height:1px; background:var(--rule); }

/* ── NAV ───────────────────────────────────────────── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  background:oklch(97.6% 0.015 86 / 0.88);
  backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--parchment);
  height:66px;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 56px;
}
.nav-logo {
  font-family:'Cormorant Garamond',serif;
  font-size:22px; font-weight:300; letter-spacing:0.22em;
  color:var(--ink); text-decoration:none;
}
.nav-logo span { color:var(--gold); }
.nav-links { display:flex; align-items:center; gap:36px; list-style:none; }
.nav-links a {
  font-size:11px; font-weight:500; letter-spacing:0.12em; text-transform:uppercase;
  color:var(--ink-lt); text-decoration:none; transition:color 0.2s;
}
.nav-links a:hover { color:var(--ink); }
.nav-cta {
  background:var(--ink); color:var(--paper) !important;
  padding:9px 18px; border-radius:999px; font-weight:700 !important;
}
.nav-cta:hover { background:var(--gold-dk) !important; }

/* ── BUTTONS ───────────────────────────────────────── */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:'Inter',sans-serif; font-size:11px; font-weight:600;
  letter-spacing:0.16em; text-transform:uppercase; text-decoration:none;
  min-height:48px;
  border-radius:999px; cursor:pointer; transition:background 0.2s, color 0.2s, border-color 0.2s, transform 0.2s, box-shadow 0.2s; border:none;
}
.btn-primary {
  background:var(--ink); color:var(--paper);
  padding:15px 30px; box-shadow:var(--shadow-md);
}
.btn-primary:hover { background:var(--gold-dk); transform:translateY(-1px); box-shadow:var(--shadow-gold); }
.btn-secondary {
  background:transparent; color:var(--gold-dk);
  padding:14px 28px; border:1px solid var(--gold);
}
.btn-secondary:hover { background:var(--gold-glow); }
.btn-ghost {
  background:transparent; color:var(--ink-mid);
  padding:14px 28px; border:1px solid var(--parchment2);
}
.btn-ghost:hover { border-color:var(--gold-lt); color:var(--ink); }

/* ── SECTIONS ──────────────────────────────────────── */
section { padding:100px 56px; }
.section-inner { max-width:1120px; margin:0 auto; }
section.bg-cream  { background:var(--cream); }
section.bg-white  { background:var(--white); }
section.bg-ivory  { background:var(--ivory); }
section.bg-ink    { background:var(--ink); }

/* ── FORMS ─────────────────────────────────────────── */
.form-group { margin-bottom:20px; }
.form-label {
  display:block; font-size:10px; font-weight:600;
  letter-spacing:0.18em; text-transform:uppercase;
  color:var(--gold-dk); margin-bottom:7px;
}
.form-label span {
  font-weight:400;
  text-transform:none;
  letter-spacing:0;
  color:var(--ink-faint);
}
.form-input {
  width:100%;
  background:var(--ivory); border:1px solid var(--parchment2); border-radius:2px;
  padding:12px 16px;
  font-family:'Cormorant Garamond',serif; font-size:16px; color:var(--ink);
  outline:none; transition:border-color 0.2s, box-shadow 0.2s;
  appearance:none;
}
.form-input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,168,76,0.10); }
.form-input::placeholder { color:var(--ink-faint); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.form-submit {
  width:100%; padding:16px; margin-top:8px;
  background:var(--ink); color:var(--paper); border:none; border-radius:999px;
  font-family:'Inter',sans-serif; font-size:11px; font-weight:600;
  letter-spacing:0.18em; text-transform:uppercase;
  cursor:pointer; transition:background 0.2s, transform 0.15s, box-shadow 0.2s;
  box-shadow:var(--shadow-md);
}
.form-submit:hover { background:var(--gold-dk); transform:translateY(-1px); box-shadow:var(--shadow-gold); }
.form-submit:active { transform:translateY(0); }
.form-note { font-size:10px; color:var(--ink-faint); text-align:center; margin-top:14px; line-height:1.6; }
.form-note a { color:var(--gold-dk); text-decoration:none; }

/* ── CARDS ─────────────────────────────────────────── */
.card-base {
  background:var(--white); border:1px solid var(--parchment);
  border-radius:10px; padding:28px;
  transition:border-color 0.25s, box-shadow 0.25s, transform 0.25s;
}
.card-base:hover { border-color:var(--gold-lt); box-shadow:var(--shadow-gold); transform:translateY(-3px); }

/* ── FOOTER ────────────────────────────────────────── */
footer {
  background:var(--ink);
  border-top:1px solid rgba(201,168,76,0.15);
  padding:60px 56px 40px;
}
.footer-top {
  max-width:1120px; margin:0 auto;
  display:grid; grid-template-columns:2fr 1fr 1fr 1fr;
  gap:48px; padding-bottom:48px;
  border-bottom:1px solid rgba(255,255,255,0.06);
}
.footer-brand-name {
  font-family:'Cormorant Garamond',serif;
  font-size:28px; font-weight:300; letter-spacing:0.22em;
  color:rgba(255,255,255,0.55); margin-bottom:14px;
}
.footer-brand-name span { color:var(--gold-lt); }
.footer-brand-desc { font-size:13px; color:rgba(255,255,255,0.30); line-height:1.7; margin-bottom:22px; max-width:260px; }
.footer-social { display:flex; gap:12px; }
.social-link {
  width:34px; height:34px; border-radius:50%;
  color:rgba(255,255,255,0.46);
  border:1px solid rgba(255,255,255,0.12);
  display:flex; align-items:center; justify-content:center;
  font-size:13px; text-decoration:none;
  transition:border-color 0.2s, background 0.2s;
}
.social-link:hover { border-color:var(--gold-lt); background:rgba(201,168,76,0.08); }
.footer-col h4 {
  font-family:'Inter',sans-serif; font-size:10px; font-weight:600;
  letter-spacing:0.22em; text-transform:uppercase;
  color:rgba(255,255,255,0.35); margin-bottom:16px;
}
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:10px; }
.footer-col ul a {
  font-size:13px; color:rgba(255,255,255,0.40);
  text-decoration:none; transition:color 0.2s;
}
.footer-col ul a:hover { color:var(--gold-lt); }
.footer-bottom {
  max-width:1120px; margin:28px auto 0;
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px;
}
.footer-copy { font-size:11px; color:rgba(255,255,255,0.18); letter-spacing:0.1em; }
.footer-legal { display:flex; gap:20px; }
.footer-legal a { font-size:11px; color:rgba(255,255,255,0.18); text-decoration:none; transition:color 0.2s; letter-spacing:0.08em; }
.footer-legal a:hover { color:rgba(255,255,255,0.40); }

/* ── SCROLL REVEAL ─────────────────────────────────── */
.reveal { opacity:0; transform:translateY(22px); transition:opacity 0.7s ease, transform 0.7s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
.d1 { transition-delay:0.10s; }
.d2 { transition-delay:0.20s; }
.d3 { transition-delay:0.30s; }
.d4 { transition-delay:0.40s; }

/* ── RESPONSIVE ────────────────────────────────────── */
@media (max-width:1000px) {
  nav { padding:0 24px; }
  .nav-links { display:none; }
  section { padding:72px 24px; }
  .footer-top { grid-template-columns:1fr 1fr; gap:36px; }
  footer { padding:48px 24px 32px; }
}
@media (max-width:640px) {
  section { padding:56px 20px; }
  .form-row { grid-template-columns:1fr; }
  .footer-top { grid-template-columns:1fr; }
}
