/* The Digital Edition, inner pages: shared parts for case files, services, articles and notices.
   Builds on paper.css (same ink, paper and teal; same fonts). */

/* breadcrumb + page lede */
.np-crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding-top:clamp(18px,2.4vw,28px)}
.np-crumbs a{text-decoration:none;opacity:.7}.np-crumbs a:hover{opacity:1;color:var(--teal-ink)}
.np-crumbs span::before{content:'/';margin-right:6px;opacity:.5}
.np-lede{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(20px,3.4vw,52px);align-items:end;padding-block:clamp(18px,2.6vw,34px) clamp(28px,4vw,52px)}
.np-lede .np-h1{font-size:clamp(2.4rem,5.6vw,5.4rem)}
.np-lede aside{border-left:3px double var(--ink);padding-left:clamp(14px,2vw,24px)}

/* fact strip: label/value pairs between rules */
.np-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));border-top:3px solid currentColor;border-bottom:1px solid currentColor}
.np-facts div{padding:12px 14px 12px 0}
.np-facts dt{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;opacity:.7;margin-bottom:4px}
.np-facts dd{margin:0;font-weight:600;line-height:1.4}
.np-facts a{color:var(--teal-ink);font-weight:700}
.np-band--ink .np-facts a{color:var(--teal)}

/* big result numbers */
.np-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0;border-top:3px double currentColor;border-bottom:3px double currentColor}
.np-results div{padding:clamp(14px,2vw,22px) 10px;text-align:center;border-right:1px solid rgba(30,26,43,.25)}
.np-band--ink .np-results div{border-color:rgba(244,235,221,.25)}
.np-results div:last-child{border-right:0}
.np-results b{display:block;font-family:var(--mast);font-weight:900;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1;color:var(--teal-ink)}
.np-band--ink .np-results b{color:var(--teal)}
.np-results span{display:block;margin-top:6px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}

/* framed exhibit image */
.np-figure{margin:0;border:2px solid currentColor;background:#fff;box-shadow:10px 10px 0 rgba(30,26,43,.14)}
.np-figure img{display:block;width:100%;height:auto;max-height:640px;object-fit:cover;object-position:top}
.np-figure figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:8px 12px;border-top:2px solid currentColor;background:var(--paper);color:var(--ink);font-size:.78rem;font-style:italic}
.np-figure .ph{aspect-ratio:16/7;display:grid;place-items:center;font-family:var(--serif);font-style:italic;background:var(--paper2);color:var(--ink)}

/* article text (case files, blog posts, notices) */
.np-article{max-width:72ch;font-size:clamp(1.02rem,1.2vw,1.12rem);line-height:1.72}
.np-article>*:first-child{margin-top:0}
.np-article p{margin:0 0 1.05em}
.np-article h2{margin:1.8em 0 .5em;font-family:var(--serif);font-weight:900;font-size:clamp(1.5rem,2.6vw,2.1rem);line-height:1.12}
.np-article h3{margin:1.5em 0 .4em;font-family:var(--serif);font-weight:900;font-size:clamp(1.2rem,1.8vw,1.45rem);line-height:1.2}
.np-article ul,.np-article ol{margin:0 0 1.1em;padding-left:1.3em}
.np-article li{margin:.35em 0}
.np-article li::marker{color:var(--teal-ink);font-weight:700}
.np-article a{color:var(--teal-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;font-weight:600}
.np-article blockquote{margin:1.4em 0;padding:4px 0 4px 18px;border-left:4px solid var(--teal);font-family:var(--serif);font-style:italic;font-size:1.15em}
.np-article strong{font-weight:700}
.np-article img{max-width:100%;height:auto;border:2px solid var(--ink)}
.np-article .np-drop::first-letter,.np-article>p:first-of-type::first-letter{float:left;font-family:var(--mast);font-weight:900;font-size:3.9em;line-height:.8;padding:6px 8px 0 0}
.np-article table{width:100%;border-collapse:collapse;margin:1em 0}
.np-article th,.np-article td{border-bottom:1px solid rgba(30,26,43,.3);padding:8px 6px;text-align:left}

/* two columns: article + side rail */
.np-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:clamp(24px,4vw,64px);align-items:start}
.np-rail-box{position:sticky;top:90px;border:2px solid var(--ink);background:#FBF6EC;padding:16px 18px}
.np-rail-box h3{margin:0 0 8px;font-family:var(--display);font-size:1.2rem;letter-spacing:.05em;text-transform:uppercase}
.np-rail-box p{margin:0 0 12px;font-size:.95rem;line-height:1.5}

/* ticked list */
.np-check{list-style:none;margin:0;padding:0;border-top:3px solid currentColor}
.np-check li{display:grid;grid-template-columns:1.8em minmax(0,1fr);gap:6px;padding:12px 0;border-bottom:1px solid rgba(30,26,43,.22);line-height:1.6}
.np-band--ink .np-check li{border-color:rgba(244,235,221,.22)}
.np-check li::before{content:'✓';font-weight:900;color:var(--teal-ink)}
.np-band--ink .np-check li::before{color:var(--teal)}

/* systems / feature cards */
.np-sys{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:clamp(14px,2vw,22px)}
.np-sys article{border-top:3px solid currentColor;padding-top:12px}
.np-sys h3{margin:0 0 6px;font-family:var(--serif);font-weight:900;font-size:1.25rem;line-height:1.2}
.np-sys p{margin:0;font-size:.95rem;line-height:1.6;opacity:.9}
.np-sys a{color:inherit}

/* FAQ */
.np-faq{border-top:3px solid currentColor}
.np-faq details{border-bottom:1px solid rgba(30,26,43,.3)}
.np-band--ink .np-faq details{border-color:rgba(244,235,221,.3)}
.np-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:16px 0;font-family:var(--serif);font-weight:900;font-size:clamp(1.1rem,1.6vw,1.35rem)}
.np-faq summary::-webkit-details-marker{display:none}
.np-faq summary::after{content:'+';font-family:var(--display);font-size:1.6rem;line-height:1;transition:transform .25s}
.np-faq details[open] summary::after{transform:rotate(45deg)}
.np-faq details p{margin:0 0 16px;line-height:1.65;max-width:70ch}

/* call to action (usually on an ink band) */
.np-cta-band{display:grid;grid-template-columns:minmax(0,1.4fr) auto;gap:clamp(18px,3vw,44px);align-items:center}
.np-cta-band h2{margin:0 0 8px;font-family:var(--serif);font-weight:900;font-size:clamp(1.8rem,3.6vw,3.2rem);line-height:1.05}
.np-cta-band p{margin:0;font-family:var(--serif);font-style:italic;font-size:clamp(1rem,1.4vw,1.2rem)}

/* filter chips + card grid (portfolio, blog list) */
.np-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(18px,2.6vw,30px)}
.np-chips button{min-height:40px;padding:0 14px;border:1.5px solid currentColor;background:transparent;color:inherit;font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.np-chips button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.np-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:clamp(18px,2.6vw,34px)}
.np-grid .np-card{border-top:3px solid currentColor}
.np-grid .np-card .np-ex-tag{color:var(--teal-ink);margin-top:10px}
.np-band--ink .np-grid .np-card .np-ex-tag{color:var(--teal)}
.np-grid [hidden]{display:none}

/* plain notice pages (privacy, terms, 404) */
.np-notice{max-width:78ch;margin:0 auto;padding-block:clamp(20px,3vw,40px) clamp(48px,7vw,96px)}
.np-notice .np-article{max-width:none}
.np-updated{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;opacity:.7;margin-bottom:18px}

@media (max-width:900px){
  .np-lede,.np-two,.np-cta-band{grid-template-columns:minmax(0,1fr)}
  .np-lede aside{border-left:0;border-top:3px double var(--ink);padding:14px 0 0}
  .np-rail-box{position:static}
  .np-results{grid-template-columns:repeat(2,minmax(0,1fr))}
  .np-results div:nth-child(2n){border-right:0}
  .np-results div{border-bottom:1px solid rgba(30,26,43,.2)}
}
@media print{
  .np-top,.np-cta-band,#mkConsent{display:none!important}
}
