/* librarëtte — shared site system. One palette, one voice, no legacy green. */
:root{
  --bg:#242220;
  --ink:#f3f1eb;
  --muted:#a8a196;
  --accent:#cf8b98;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;font-family:var(--mono)}
html{background:var(--bg)}
body{min-height:100vh;margin:0;background:var(--bg);color:var(--ink);font:300 13px/1.7 var(--mono)}
a{color:inherit;text-decoration:none}
button{margin:0;padding:0;border:0;background:none;color:inherit;cursor:pointer;font:inherit}
p{color:var(--muted)}

/* header + hamburger nav */
.library-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px clamp(20px,4vw,64px)}
.library-header a{color:inherit}
.library-wordmark{font:400 clamp(20px,2.2vw,26px)/1 Georgia,serif;letter-spacing:-.03em}
.menu-toggle{position:relative;width:26px;height:18px;display:flex;align-items:center}
.menu-toggle span{display:block;width:100%;height:1px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.menu-toggle[aria-expanded="true"] span{transform:rotate(45deg)}
.nav-panel{position:absolute;top:calc(100% + 4px);right:clamp(20px,4vw,64px);min-width:180px;padding:10px 0;background:var(--bg);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:20}
.nav-panel.is-open{opacity:1;transform:translateY(0);pointer-events:auto}
.nav-panel a{display:block;padding:9px 0;color:var(--muted);font-size:11px}
.nav-panel a:hover{color:var(--ink)}

/* footer */
.library-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:30px clamp(20px,4vw,64px) 46px;color:var(--muted);font-size:10px}
.library-footer b{color:var(--accent);font-weight:400}

/* shared type */
.eyebrow{margin:0 0 10px;color:var(--accent);font-size:10px;letter-spacing:.1em}
.eyebrow::before{content:'•';margin-right:8px}

@media(max-width:700px){
  .nav-panel{right:20px;left:20px;min-width:0}
}
