/* NCLS Blog — shared styles (loads after site.css) */
:root{--b-accent:#ff6b1a;--b-line:rgba(255,255,255,.08);--b-card:#0e0e0e;--b-mute:rgba(255,255,255,.62)}
.blog-hero{text-align:center;padding:clamp(150px,18vw,210px) 0 clamp(64px,9vw,120px)}
.blog-kicker{display:block;font:500 clamp(14px,1.4vw,18px)/1 "Space Grotesk",Helvetica,Arial,sans-serif;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.blog-hero h1{font-family:Helvetica,"Helvetica Neue",Arial,sans-serif;font-weight:700;font-size:clamp(34px,5.6vw,80px);letter-spacing:-.035em;line-height:1.02;margin:28px auto;max-width:none;white-space:nowrap}
.blog-hero h1 em{display:block;font-style:italic;color:var(--b-accent)}
.blog-hero p{max-width:620px;margin:0 auto;color:var(--b-mute);font-size:clamp(17px,1.6vw,21px);line-height:1.55}
.blog-wrap{padding-bottom:clamp(96px,12vw,160px)}
.post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,3.5vw,56px);max-width:1180px;margin:0 auto}
.post-card{display:flex;flex-direction:column;background:var(--b-card);border:1px solid var(--b-line);color:inherit;text-decoration:none;overflow:hidden;transition:border-color .3s,transform .3s}
.post-card:hover{border-color:rgba(255,107,26,.45);transform:translateY(-4px)}
.post-media{aspect-ratio:16/9.5;overflow:hidden;background:#111}
.post-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.post-card:hover .post-media img{transform:scale(1.04)}
.post-body{display:flex;flex-direction:column;flex:1;padding:clamp(28px,3.2vw,48px)}
.post-date{font:500 13px/1 "Space Grotesk",Helvetica,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--b-accent)}
.post-card h2{font-family:Helvetica,"Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:clamp(22px,2.3vw,32px);letter-spacing:-.02em;line-height:1.22;margin:22px 0 18px}
.post-card p{color:var(--b-mute);font-size:17px;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.post-more{margin-top:auto;padding-top:32px;font:500 14px/1 "Space Grotesk",Helvetica,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:#fff}
.post-more span{color:var(--b-accent);display:inline-block;transition:transform .3s}
.post-card:hover .post-more span{transform:translateX(5px)}
@media(max-width:760px){.post-grid{grid-template-columns:1fr}}

/* Article */
.art-head{text-align:center;padding:clamp(150px,18vw,200px) 0 clamp(40px,6vw,64px)}
.art-back{font:500 13px/1 "Space Grotesk",Helvetica,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--b-mute);text-decoration:none}
.art-back:hover{color:#fff}
.art-head .post-date{display:block;margin-top:36px}
.art-head h1{font-family:Helvetica,"Helvetica Neue",Arial,sans-serif;font-weight:700;font-size:clamp(34px,5.4vw,72px);letter-spacing:-.035em;line-height:1.04;max-width:18ch;margin:22px auto 0}
.art-cover{max-width:1180px;margin:0 auto;aspect-ratio:16/8;overflow:hidden;border:1px solid var(--b-line)}
.art-cover img{width:100%;height:100%;object-fit:cover;display:block}
.art-body{max-width:720px;margin:clamp(48px,7vw,88px) auto 0;font-size:18px;line-height:1.75;color:rgba(255,255,255,.86)}
.art-body .lead{font-size:21px;line-height:1.6;color:#fff}
.art-body h2{font-family:Helvetica,"Helvetica Neue",Arial,sans-serif;font-size:clamp(25px,2.8vw,34px);letter-spacing:-.025em;line-height:1.15;color:#fff;margin:2.1em 0 .6em}
.art-body p{margin:0 0 1.2em}
.art-body ul{padding-left:1.2em;margin:0 0 1.4em}
.art-body li{margin-bottom:.55em}
.art-body li::marker{color:var(--b-accent)}
.art-body strong{color:#fff}
.art-body blockquote{margin:2em 0;padding-left:24px;border-left:2px solid var(--b-accent);font-size:23px;line-height:1.45;color:#fff}
.art-body a{color:var(--b-accent)}
.art-end{max-width:720px;margin:clamp(56px,8vw,96px) auto clamp(96px,12vw,150px);padding:clamp(28px,4vw,44px);border:1px solid var(--b-line);display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;background:linear-gradient(135deg,rgba(255,107,26,.14),rgba(255,255,255,.02) 60%)}
.art-end strong{font-family:Helvetica,"Helvetica Neue",Arial,sans-serif;font-size:24px;letter-spacing:-.02em}
.art-end a{background:var(--b-accent);color:#060606;font:600 14px/1 "Space Grotesk",Helvetica,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:17px 26px;text-decoration:none}

@media (max-width:600px){.blog-hero h1{white-space:normal}}
