*,
*::before,
*::after {
   box-sizing: border-box;
   margin: 0;
   padding: 0;
}

html {
   scroll-behavior: smooth;
}

body {
   font-family: var(--sans);
   background: var(--paper);
   color: var(--ink);
   line-height: 1.6;
   overflow-x: hidden;
}

/* NAV */
nav {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   z-index: 100;
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 1.1rem 3rem;
   background: rgba(248, 246, 240, 0.92);
   backdrop-filter: blur(12px);
   border-bottom: 1px solid var(--paper-rule);
}

.nav-logo {
   font-family: var(--serif);
   font-size: 1.25rem;
   color: var(--ink);
   text-decoration: none;
}

.nav-logo span {
   color: var(--accent);
}

.nav-links {
   display: flex;
   gap: 2rem;
   list-style: none;
   align-items: center;
}

.nav-links a {
   font-size: 0.875rem;
   color: var(--ink-light);
   text-decoration: none;
   transition: color 0.2s;
}

.nav-links a:hover, .nav-links {
   color: var(--ink);
}

.nav-cta {
   background: var(--ink) !important;
   color: var(--paper) !important;
   padding: 0.5rem 1.25rem;
   border-radius: 4px;
   font-weight: 500 !important;
}

.nav-cta:hover {
   background: var(--accent) !important;
   color: var(--paper) !important;
}