:root{
  --cream:#F5EFE4;
  --cream-d:#EDE4D3;
  --paper:#FAF6EC;
  --saffron:#D89030;
  --saffron-d:#B87220;
  --clay:#8B4513;
  --clay-d:#5C2E0C;
  --ink:#2A1B0E;
  --ink-s:#4A3A2A;
  --line:#D9CBB3;
  --muted:#8A7860;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--ink);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.demo-banner{background:var(--clay-d);color:var(--cream);padding:0.6rem 1.25rem;font-size:0.78rem;text-align:center;letter-spacing:0.02em}
.demo-banner a{border-bottom:1px solid rgba(245,239,228,0.5)}
.masthead{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2.5rem;border-bottom:1px solid var(--line);background:var(--paper)}
.brand-name a{font-family:'Fraunces',serif;font-weight:500;font-style:italic;font-size:1.7rem;letter-spacing:-0.01em;color:var(--clay-d)}
.brand-sub{font-size:0.7rem;text-transform:uppercase;letter-spacing:0.22em;color:var(--muted);margin-top:0.2rem;font-weight:500}
nav{display:flex;gap:2rem;font-size:0.88rem}
nav a{position:relative;padding-bottom:2px;color:var(--ink-s);transition:color 0.2s}
nav a:hover{color:var(--saffron-d)}
nav a.active{color:var(--clay-d);font-weight:500}
nav a.active::after{content:'';position:absolute;left:0;right:0;bottom:-2px;height:1.5px;background:var(--saffron)}
footer{background:var(--paper);border-top:1px solid var(--line);padding:2rem 2.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:0.82rem;color:var(--muted)}
footer .orn{font-family:'Fraunces',serif;font-style:italic;color:var(--saffron-d);font-size:1.05rem}
footer a{border-bottom:1px solid var(--line)}
footer a:hover{color:var(--clay-d)}
@media(max-width:680px){.masthead{padding:1rem 1.25rem;flex-direction:column;gap:1rem;align-items:flex-start}nav{gap:1.25rem;font-size:0.85rem}footer{padding:1.5rem 1.25rem;flex-direction:column;text-align:center}}
