/* Nonna's Stone Pizza — ns-* (Danforth trattoria; not ov-/fc-/cedar) */
:root{
  --ns-ink:#1f140c;
  --ns-flour:#f7f0e2;
  --ns-paper:#fff8ee;
  --ns-sauce:#b1321f;
  --ns-sauce-dk:#7c1d12;
  --ns-herb:#2b5a38;
  --ns-olive:#c4b07a;
  --ns-line:#e6d7c0;
  --ns-mute:#6a5848;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--ns-flour);color:var(--ns-ink);
  font-family:Cambria,Georgia,"Times New Roman",serif;line-height:1.55}
img{max-width:100%;height:auto;display:block}
a{color:var(--ns-sauce-dk)}
a:hover{color:var(--ns-sauce)}
.ns-skip{position:absolute;left:-999px;top:8px}
.ns-skip:focus{left:12px;background:#fff;padding:8px 12px;z-index:40}
.ns-mast{background:#1f140c;color:var(--ns-olive);position:sticky;top:0;z-index:20}
.ns-mast-in{max-width:1080px;margin:0 auto;padding:12px 18px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.ns-mark{color:var(--ns-flour);text-decoration:none;line-height:1.1}
.ns-mark span{display:block;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ns-olive)}
.ns-mark strong{font-size:1.35rem;font-weight:700}
.ns-nav{display:flex;gap:14px;flex-wrap:wrap;margin-left:auto}
.ns-nav-a{color:var(--ns-olive);text-decoration:none;font-size:.95rem}
.ns-nav-a[aria-current="page"]{color:#fff;border-bottom:2px solid var(--ns-sauce)}
.ns-ring{background:var(--ns-sauce);color:#fff;text-decoration:none;padding:8px 14px;border-radius:999px;font-weight:700;font-size:.9rem}
.ns-ring:hover{background:var(--ns-sauce-dk);color:#fff}
.ns-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;max-width:1080px;margin:0 auto;padding:36px 18px}
.ns-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;color:var(--ns-herb);margin:0 0 8px}
.ns-hero h1{font-size:2.35rem;line-height:1.15;margin:0 0 12px}
.ns-lead{font-size:1.12rem;color:var(--ns-mute)}
.ns-frame{background:#fff;padding:8px;border:1px solid var(--ns-line);box-shadow:4px 6px 0 rgba(31,20,12,.08)}
.ns-credit{font-size:.75rem;color:var(--ns-mute);margin:8px 0 0}
.ns-slab{max-width:1080px;margin:0 auto;padding:8px 18px 40px}
.ns-note{background:var(--ns-paper);border-left:6px solid var(--ns-herb);padding:16px 18px;margin:18px 0}
.ns-call{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}
.ns-call a{display:inline-block;padding:12px 18px;border-radius:8px;text-decoration:none;font-weight:700}
.ns-call .ns-go{background:var(--ns-sauce);color:#fff}
.ns-call .ns-ghost{border:2px solid var(--ns-ink);color:var(--ns-ink)}
.ns-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ns-board{background:#fff;border:1px solid var(--ns-line);padding:16px 18px}
.ns-board h2{margin:0 0 10px;font-size:1.25rem;color:var(--ns-herb)}
.ns-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dotted var(--ns-line);padding:7px 0;font-size:.98rem}
.ns-row b{white-space:nowrap;color:var(--ns-sauce-dk)}
.ns-hours,.ns-copy{color:var(--ns-mute);font-size:.9rem}
.ns-foot{background:#1f140c;color:var(--ns-flour);margin-top:24px}
.ns-foot-in{max-width:1080px;margin:0 auto;padding:28px 18px}
.ns-foot a{color:var(--ns-olive)}
.ns-foot-mark{font-size:1.3rem;margin:0 0 8px}
.ns-legal{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}
.ns-legal a{font-size:.88rem}
.ns-prose{max-width:720px}
.ns-prose h1{font-size:2rem}
.ns-prose h2{font-size:1.3rem;color:var(--ns-herb)}
@media (max-width:800px){
  .ns-hero,.ns-grid{grid-template-columns:1fr}
  .ns-nav{margin-left:0;width:100%}
  .ns-hero h1{font-size:1.85rem}
}
