/* ============================================================
   RAMEZWARE — nav.css
   Custom cursor + navbar + mobile drawer
   ============================================================ */

/* ── Cursor ─────────────────────────────────────────────────── */
.cursor {
  position:fixed; width:10px; height:10px;
  background:var(--ember); border-radius:50%;
  pointer-events:none; z-index:9999;
  transform:translate(-50%,-50%);
  transition:width .2s, height .2s, background .2s;
  mix-blend-mode:screen;
}
.cursor-ring {
  position:fixed; width:36px; height:36px;
  border:1px solid rgba(232,98,42,.4); border-radius:50%;
  pointer-events:none; z-index:9998;
  transform:translate(-50%,-50%);
  transition:width .35s, height .35s, border-color .3s;
}
body:has(a:hover) .cursor      { width:14px; height:14px; background:var(--gold); }
body:has(a:hover) .cursor-ring { width:50px; height:50px; border-color:rgba(201,168,76,.5); }

/* ── Navbar ─────────────────────────────────────────────────── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:500;
  min-height:var(--nav-h);
  padding:1rem 3rem;
  padding-top:max(1rem, env(safe-area-inset-top));
  padding-left:max(3rem, env(safe-area-inset-left));
  padding-right:max(3rem, env(safe-area-inset-right));
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  background:linear-gradient(to bottom,rgba(10,10,15,.95),transparent);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:background .4s;
}
nav.scrolled { background:rgba(10,10,15,.97); border-bottom:1px solid var(--border); }

.nav-logo { font-family:'Cinzel',serif; font-size:1.25rem; font-weight:700; color:var(--white); letter-spacing:.08em; text-decoration:none; flex-shrink:0; white-space:nowrap; }
.nav-logo span { color:var(--ember); }

.nav-links { display:flex; gap:2.5rem; list-style:none; min-width:0; }
.nav-links a {
  font-family:'DM Mono',monospace; font-size:.72rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--steel); text-decoration:none;
  transition:color .2s; position:relative;
}
.nav-links a::after { content:''; position:absolute; bottom:-3px; left:0; right:0; height:1px; background:var(--ember); transform:scaleX(0); transform-origin:left; transition:transform .3s; }
.nav-links a:hover { color:var(--white); }
.nav-links a:hover::after { transform:scaleX(1); }
.nav-links a.active { color:var(--ember); }
.nav-links a.active::after { transform:scaleX(1); }
.nav-drawer a.active { color:var(--ember); }

.nav-cta {
  font-family:'DM Mono',monospace; font-size:.72rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--ember); text-decoration:none;
  border:1px solid var(--ember); padding:.5rem 1.2rem;
  transition:background .2s, color .2s; white-space:nowrap;
}
.nav-cta:hover { background:var(--ember); color:var(--white); }

.nav-toggle { display:none; background:none; border:1px solid var(--border); padding:.45rem .7rem; color:var(--mist); font-size:1.15rem; line-height:1; cursor:pointer; }

/* ── Mobile Drawer ──────────────────────────────────────────── */
.nav-drawer { display:none; position:fixed; top:var(--nav-h); left:0; right:0; background:rgba(10,10,15,.98); border-bottom:1px solid var(--border); padding:1.5rem 1.5rem 2rem; z-index:499; flex-direction:column; }
.nav-drawer.open { display:flex; }
.nav-drawer li { list-style:none; border-bottom:1px solid var(--border); }
.nav-drawer li a { display:block; padding:1rem .25rem; font-family:'DM Mono',monospace; font-size:.85rem; letter-spacing:.12em; text-transform:uppercase; color:var(--mist); text-decoration:none; }
.nav-drawer .drawer-cta { margin-top:1.5rem; display:block; text-align:center; font-family:'DM Mono',monospace; font-size:.75rem; letter-spacing:.1em; text-transform:uppercase; color:var(--white); background:var(--ember); padding:.9rem; text-decoration:none; }
