/* Shared by every page: palette, type and spacing tokens, skip link, site nav
   and site footer. Page styles live in site.css (Home, CV, Blog) and
   paper.css (paper pages), which load after this file. */

:root{
  color-scheme: light;

  /* palette — unchanged from the previous site */
  --bg:          #F5EFE1;              /* warm cream */
  --ink:         #1E2A1A;              /* green-tinted near-black   13.1:1 */
  --ink-soft:    #2E3A29;              /*                           10.4:1 */
  --muted:       #5C6455;              /*                            5.4:1 */
  --accent:      #4B6F44;              /* Green Satin                5.0:1 */
  --accent-deep: #3A5735;              /* links                      7.1:1 */
  --edge:        rgba(75,111,68,.75);  /* component borders          3.1:1 */
  --rule:        rgba(30,42,26,.16);
  --rule-soft:   rgba(30,42,26,.09);

  --font: "Avenir","Afacad",-apple-system,"Segoe UI",sans-serif;
  --mono: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  /* type scale — five steps, ~1.15 apart, nothing in between */
  --fs-1: .8125rem;                    /* 13.8px  labels, chips, footer */
  --fs-2: .9375rem;                    /* 15.9px  metadata, section rules */
  --fs-3: 1rem;                        /* 17.0px  running text */
  --fs-4: 1.125rem;                    /* 19.1px  item titles */
  --fs-5: clamp(1.75rem, 1.35rem + 1.2vw, 2.1rem);

  /* spacing scale */
  --sp-1: .3rem;
  --sp-2: .65rem;
  --sp-3: 1.2rem;
  --sp-4: 1.8rem;
  --sp-5: clamp(2.5rem, 4vw, 3.4rem);

  --gutter:  2.1rem;                   /* shared numbering rail */
  --measure: 31rem;                    /* ~63–70 characters per line */
  --stick:   clamp(2rem, 5vw, 3.5rem);
}

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

.skip{ position:absolute; left:-9999px; top:0; }
.skip:focus{
  position:fixed; left:1rem; top:1rem; z-index:20;
  background:var(--accent); color:var(--bg);
  padding:.6rem .9rem; border-radius:3px;
  text-decoration:none; font-size:var(--fs-2);
}

/* ---------- site nav ---------- */

/* The same three links on every page; the current one is ink, not a link colour. */
.site-nav ul{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:.2rem 1.1rem;
  margin:var(--sp-3) 0 0;
  padding:var(--sp-2) 0 0;
  border-top:1px solid var(--rule);
  font-size:var(--fs-2);
}
.site-nav a{ color:var(--accent-deep); text-decoration:none; }
.site-nav a:hover{ color:var(--accent); text-decoration:underline; }
.site-nav a[aria-current="page"]{ color:var(--ink); font-weight:600; }

/* ---------- footer ---------- */

.foot{
  margin-top:var(--sp-5);
  padding-top:1rem;
  border-top:1px solid var(--rule);
  font-size:var(--fs-1);
  color:var(--muted);
}
.foot p{ margin:.2rem 0; }
