/* ==========================================================================
   NyumbaNi BnBs — Design Tokens
   A boutique short-stay portfolio in Nanyuki, Kenya, at the foot of Mt Kenya.
   ========================================================================== */

/* ---- Self-hosted fonts (no external requests, works fully offline) ---- */
@font-face {
  font-family: 'Bricolage Grotesque Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 200 800;
  src: url('../assets/fonts/bricolage-grotesque-latin-wght-normal.woff2') format('woff2-variations');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../assets/fonts/inter-latin-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('../assets/fonts/inter-latin-500-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url('../assets/fonts/inter-latin-600-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url('../assets/fonts/inter-latin-700-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url('../assets/fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Mono';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url('../assets/fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2');
}

:root {
  /* ---- Brand palette ---- */
  --ink:            #15130F;   /* near-black, warm undertone — primary text */
  --ink-soft:       #2A2620;   /* lifted black for dark-section surfaces */
  --gold:           #C89838;   /* brand gold, pulled directly from the mark */
  --gold-bright:    #E0B457;   /* hover / highlight gold */
  --pine:           #33473A;   /* deep highland forest green — secondary */
  --pine-soft:      #4A6152;
  --murram:         #A8552E;   /* red-earth road clay — tertiary, sparing use */
  --sand:           #F1EAD9;   /* warm stone/sand base background */
  --sand-deep:      #E7DCC3;   /* recessed sand surface, borders */
  --paper:          #FFFDF8;   /* card + surface white */
  --line:           rgba(21, 19, 15, 0.12);
  --line-soft:      rgba(21, 19, 15, 0.08);
  --line-on-dark:   rgba(241, 234, 217, 0.18);

  /* ---- Type ---- */
  --font-display: 'Bricolage Grotesque Variable', 'Arial Narrow', sans-serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:    'IBM Plex Mono', 'SFMono-Regular', Consolas, monospace;

  /* ---- Type scale (fluid) ---- */
  --fs-hero:  clamp(2.6rem, 6.2vw + 1rem, 5.6rem);
  --fs-h1:    clamp(2.1rem, 3.4vw + 1rem, 3.4rem);
  --fs-h2:    clamp(1.6rem, 2vw + 1rem, 2.35rem);
  --fs-h3:    clamp(1.15rem, 0.9vw + 1rem, 1.5rem);
  --fs-lead:  clamp(1.05rem, 0.6vw + 0.9rem, 1.25rem);
  --fs-body:  1rem;
  --fs-small: 0.875rem;
  --fs-micro: 0.75rem;

  /* ---- Spacing (8px rhythm) ---- */
  --sp-1: 0.5rem;
  --sp-2: 0.75rem;
  --sp-3: 1rem;
  --sp-4: 1.5rem;
  --sp-5: 2rem;
  --sp-6: 3rem;
  --sp-7: 4.5rem;
  --sp-8: 6.5rem;

  /* ---- Layout ---- */
  --container: 1240px;
  --container-narrow: 760px;
  --radius-sm: 6px;
  --radius-md: 14px;
  --radius-lg: 26px;
  --edge: clamp(1.25rem, 4vw, 3rem);

  /* ---- Motion ---- */
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
  --dur-fast: 180ms;
  --dur-mid: 420ms;
  --dur-slow: 720ms;

  /* ---- Shadow (used sparingly — mostly on the ledger card signature) ---- */
  --shadow-card: 0 1px 2px rgba(21,19,15,0.06), 0 18px 40px -22px rgba(21,19,15,0.35);
  --shadow-lift: 0 24px 60px -20px rgba(21,19,15,0.45);
}

@media (prefers-color-scheme: dark) {
  /* Reserved: the brand is intentionally light/warm by default across the
     whole site (sand + paper), so we do not auto-switch to a dark theme —
     it would fight the "sunlit highland lodge" mood the brief calls for. */
}
