/* news-page.css — /news.html in the homepage V2 family (ivory, forest green, editorial).
   Scoped to body.it-news; loaded after page.css + pages.css; shared files untouched.
   Pure CSS: the feed is never hidden pending JS; motion only as a calm loading pulse. */

.it-news{
  --nw-green:#164c39;--nw-green-2:#1f5d46;--nw-deep:#0f2f24;
  --nw-ivory:#f6f3ea;--nw-paper:#fffdf7;--nw-mist:#ebf0e7;
  --nw-ink:#17251e;--nw-muted:#55655c;--nw-line:#e3e3d8;
  --nw-shadow:0 10px 26px rgba(18,38,30,.07);
  --accent:#164c39;--accent-dark:#0f2f24;--accent-soft:#e6eee4;--border:#e3e3d8;--muted:#55655c;
  background:var(--nw-ivory);color:var(--nw-ink);
}
.it-news a{color:var(--nw-green)}
.it-news a:focus-visible,.it-news button:focus-visible{outline:3px solid #2f7a5c;outline-offset:3px;border-radius:8px}
.nw-ic{width:20px;height:20px;flex:none}

/* ---------- header ---------- */
.it-news .top{background:rgba(250,248,241,.94);border-bottom:1px solid var(--nw-line)}
.it-news .top-in{max-width:1180px;padding:10px 24px;gap:10px 14px}
.it-news .logo{width:36px;height:36px;flex:0 0 36px;background:var(--nw-green);color:#e9f0c8;font-size:13px;letter-spacing:.5px}
.nw-brand{display:grid;line-height:1.3;font-weight:800;font-size:15px;color:var(--nw-ink)!important;text-decoration:none}
.nw-brand small{font-size:9px;letter-spacing:2px;color:var(--nw-muted);font-weight:600}
.nw-nav{display:flex;gap:4px}
.nw-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:10px;color:var(--nw-ink)!important;text-decoration:none;font-size:14px}
.nw-nav a:hover{background:var(--nw-mist)}
.nw-nav a[aria-current=page]{color:var(--nw-green)!important;font-weight:800;box-shadow:inset 0 -2px 0 var(--nw-green)}
.it-news .top .back{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:0;border-radius:12px;background:var(--nw-green);color:#fff;font-size:13px}
.it-news .top .back:hover{background:var(--nw-green-2)}

/* ---------- page body ---------- */
.it-news .wrap{max-width:1180px;padding:30px 24px 64px}
.it-news .wrap:focus{outline:none}
.nw-intro{max-width:760px;margin:0 0 26px}
.nw-eyebrow{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;color:var(--nw-muted)}
.nw-eyebrow i{width:7px;height:7px;border-radius:50%;background:var(--nw-green)}
.nw-intro h1{margin:8px 0 10px;font-size:clamp(28px,3.6vw,46px);line-height:1.3;font-weight:800;color:var(--nw-deep);letter-spacing:-.5px;text-wrap:balance}
.nw-lead{margin:0;font-size:16px;line-height:2;color:#3e4d45;max-width:62ch}

.nw-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}
.nw-feed{min-width:0}
.nw-feed-title{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:20px;font-weight:800;color:var(--nw-deep)}
.nw-feed-title .nw-ic{color:var(--nw-green)}

/* ---------- feed: articles rendered by the original loader ---------- */
.it-news #newsList{display:grid;gap:14px}
.it-news .news-item{position:relative;padding:20px 24px 22px;border:1px solid var(--nw-line);border-radius:18px;background:var(--nw-paper);
  box-shadow:var(--nw-shadow);scroll-margin-top:96px;overflow-wrap:anywhere}
.it-news .news-item::before{content:"";position:absolute;top:22px;right:0;width:4px;height:26px;border-radius:4px 0 0 4px;background:var(--nw-green)}
.it-news .news-item>span.muted{display:inline-flex;align-items:center;min-height:28px;padding:2px 12px;border-radius:999px;background:var(--nw-mist);color:var(--nw-green);font-size:12.5px;font-weight:700}
.it-news .news-item h2{margin:10px 0 8px;font-size:clamp(18px,1.9vw,22px);line-height:1.6;font-weight:800;color:var(--nw-deep);text-wrap:balance}
.it-news .news-item p{margin:0;max-width:70ch;font-size:15.5px;line-height:2.05;color:#2f3d36}
.it-news .news-item:target{border-color:var(--nw-green);box-shadow:0 0 0 3px rgba(22,76,57,.18),var(--nw-shadow)}
@media (min-width:901px){
  .it-news .news-item:first-child{padding:26px 30px 28px}
  .it-news .news-item:first-child h2{font-size:clamp(22px,2.3vw,28px)}
}

/* loading */
.it-news #newsList>p.muted{margin:0;padding:22px 24px;border:1px dashed #cdd8cb;border-radius:18px;background:var(--nw-paper);color:var(--nw-muted);font-size:15px}
.it-news #newsList>p.muted::after{content:"";display:block;height:10px;margin-top:14px;border-radius:6px;width:70%;
  background:linear-gradient(90deg,var(--nw-mist),#dfe7dc,var(--nw-mist));background-size:200% 100%;animation:nw-pulse 1.6s ease-in-out infinite}
@keyframes nw-pulse{0%{background-position:100% 0}100%{background-position:-100% 0}}

/* empty */
.it-news #newsList>.lede{margin:0;padding:24px;border:1px solid var(--nw-line);border-radius:18px;background:var(--nw-paper);color:var(--nw-ink);font-size:15.5px;line-height:2.1}
.it-news #newsList>.lede a{display:inline-flex;align-items:center;min-height:44px;margin-inline-start:6px;padding:0 16px;border-radius:12px;background:var(--nw-green);color:#fff;font-weight:700;text-decoration:none}

/* error + retry */
.it-news #newsList>.status.error{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:18px 22px;border:1px solid #ecc9c3;border-radius:18px;background:#fdf1ef;color:#8e2f24;font-size:15px;font-weight:600}
.it-news #retryNews{min-height:44px;padding:0 20px;border:0;border-radius:12px;background:var(--nw-green);color:#fff;font-size:14px;cursor:pointer}
.it-news #retryNews:hover{background:var(--nw-green-2)}

/* ---------- side rail (static, real links only) ---------- */
.nw-rail{position:sticky;top:84px;display:grid;gap:12px}
.nw-rail-card{padding:16px;border:1px solid var(--nw-line);border-radius:18px;background:var(--nw-paper);box-shadow:var(--nw-shadow)}
.nw-rail-card h2{margin:0 0 6px;font-size:16px;font-weight:800;color:var(--nw-deep)}
.nw-rail-card a{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 10px;border-radius:12px;text-decoration:none;color:var(--nw-ink)}
.nw-rail-card a:hover{background:var(--nw-mist)}
.nw-rail-card a .nw-ic{width:36px;height:36px;padding:8px;border-radius:10px;background:var(--nw-mist);color:var(--nw-green)}
.nw-rail-card a span{display:grid;line-height:1.6}
.nw-rail-card b{font-size:14px;color:var(--nw-deep)}
.nw-rail-card small{font-size:12.5px;color:var(--nw-muted)}
.nw-rail-note{margin:0;padding:12px 14px;border-radius:14px;background:var(--nw-mist);font-size:13px;line-height:1.95;color:var(--nw-muted)}
.nw-rail-note a{font-weight:700}

/* ---------- footer ---------- */
.it-news .site-foot{max-width:1180px;padding:22px 24px 40px;border-top-color:var(--nw-line)}
.it-news .site-foot nav a{display:inline-flex;align-items:center;min-height:44px}

/* ---------- responsive ---------- */
@media (max-height:700px) and (min-width:901px){.nw-rail{position:static}}
@media (max-width:900px){
  .nw-layout{grid-template-columns:1fr;gap:20px}
  .nw-rail{position:static}
  .nw-rail-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .nw-rail-card h2{grid-column:1/-1}
}
@media (max-width:640px){
  .it-news .top-in{padding:8px 14px}
  .nw-brand small{display:none}
  .nw-nav{order:5;width:100%;justify-content:space-between;border-top:1px solid var(--nw-line);padding-top:2px}
  .nw-nav a{flex:1;justify-content:center}
  .it-news .wrap{padding:18px 15px 48px}
  .nw-intro{margin-bottom:18px}
  .nw-intro h1{font-size:26px;margin:6px 0 8px}
  .nw-lead{font-size:14.5px;line-height:1.95}
  .nw-feed-title{font-size:17px;margin-bottom:10px}
  .it-news .news-item{padding:16px 16px 18px;border-radius:16px;scroll-margin-top:124px}
  .it-news .news-item::before{top:18px}
  .it-news .news-item h2{font-size:17.5px}
  .it-news .news-item p{font-size:15px}
  .nw-rail-card{grid-template-columns:1fr}
}
@media (max-width:360px){
  .it-news .top .back{padding:0 12px;font-size:12px}
  .nw-brand{font-size:14px}
}
@media (prefers-reduced-motion:reduce){
  .it-news #newsList>p.muted::after{animation:none}
}
