/* ============================================================
   NOUTĂȚI — design editorial dedicat (namespace .nx-*)
   Paletă temă: navy #0D2B4E · blue #1A5EA8 · gold #C9A84C
   Independent de .ncard / .pg-head globale.
   ============================================================ */

.nx-wrap{ background:#eef2f7; }
.nx-wrap *{ box-sizing:border-box; }

/* ---------- HERO ---------- */
.nx-head{
  position:relative; overflow:hidden; min-height:340px;
  display:flex; align-items:center;
  background:
    linear-gradient(115deg, rgba(10,32,60,.94) 0%, rgba(13,43,78,.80) 48%, rgba(22,56,106,.62) 100%),
    url('../images/craiova-old-town-romania-county-administration-building-prefectura.jpg') center 38% / cover no-repeat;
  background-color:#0D2B4E;
  color:#fff; padding:56px 0 50px;
}
.nx-head::before{
  content:""; position:absolute; inset:0;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1.5px);
  background-size:22px 22px; opacity:.35; pointer-events:none;
}
.nx-head > .container{ width:100%; }
.nx-head > .container{ position:relative; z-index:1; }
.nx-bc{ font-size:12.5px; letter-spacing:.3px; color:#9fb9d6; margin-bottom:20px; }
.nx-bc a{ color:#cfe0f1; } .nx-bc a:hover{ color:#fff; }
.nx-bc span{ color:#6f8db0; margin:0 8px; }
.nx-eyebrow{
  display:inline-flex; align-items:center; gap:9px;
  font-size:11px; font-weight:700; letter-spacing:3px; text-transform:uppercase;
  color:var(--gold); margin-bottom:14px;
}
.nx-eyebrow::before{ content:""; width:30px; height:2px; background:var(--gold); display:inline-block; }
.nx-head h1{
  font-family:'Playfair Display',var(--serif); font-weight:700;
  font-size:clamp(34px,5vw,52px); line-height:1.05; color:#fff; margin:0 0 14px;
  letter-spacing:.2px;
}
.nx-head .nx-sub{ font-size:16px; line-height:1.7; color:#c4d6ea; font-weight:300; max-width:680px; margin:0; }

/* ---------- FILTRE ---------- */
.nx-toolbar{
  position:sticky; top:0; z-index:20;
  background:rgba(238,242,247,.92); backdrop-filter:blur(8px);
  border-bottom:1px solid #dde5ef;
}
.nx-filters{
  display:flex; flex-wrap:wrap; gap:10px; align-items:center;
  padding:16px 0;
}
.nx-filters .nx-flabel{
  font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase;
  color:#7c8aaa; margin-right:4px;
}
.nx-chip{
  display:inline-flex; align-items:center; gap:7px;
  font-size:13px; font-weight:600; color:var(--navy);
  background:#fff; border:1px solid #d8e1ec; border-radius:999px;
  padding:8px 16px; transition:all .18s ease; white-space:nowrap;
}
.nx-chip:hover{ border-color:var(--blue); color:var(--blue); transform:translateY(-1px); box-shadow:0 4px 14px rgba(13,43,78,.08); }
.nx-chip .nx-count{ font-size:11px; color:#9aa8ba; font-weight:700; }
.nx-chip.is-active{ background:var(--navy); border-color:var(--navy); color:#fff; box-shadow:0 6px 18px rgba(13,43,78,.22); }
.nx-chip.is-active .nx-count{ color:#a9c2e0; }
.nx-chip .nx-dot{ width:8px; height:8px; border-radius:50%; background:#cbd5e2; opacity:.95; }
.nx-chip .dot-com{ background:var(--blue); }
.nx-chip .dot-inf{ background:#1f8a70; }
.nx-chip .dot-anu{ background:#c08a1e; }
.nx-chip .dot-def{ background:var(--navy); }
.nx-chip.is-active .nx-dot{ box-shadow:0 0 0 2px rgba(255,255,255,.25); }

/* ---------- LAYOUT ---------- */
.nx-main{ padding:38px 0 64px; }

/* ---------- FEATURED (cea mai recentă) ---------- */
.nx-feature{
  position:relative; display:grid; grid-template-columns:1.05fr 1fr; gap:0;
  background:#fff; border-radius:20px; overflow:hidden;
  box-shadow:0 20px 50px -22px rgba(13,43,78,.45); border:1px solid #e6edf5;
  margin-bottom:40px;
}
.nx-feature-aside{
  position:relative;
  background:
    radial-gradient(600px 300px at 80% 10%, rgba(201,168,76,.22), transparent 60%),
    linear-gradient(150deg,#0D2B4E,#143a66);
  color:#fff; padding:46px 44px; display:flex; flex-direction:column; justify-content:center;
}
.nx-feature-aside::after{
  content:""; position:absolute; inset:0;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1.5px);
  background-size:20px 20px; opacity:.6;
}
.nx-feature-aside > *{ position:relative; z-index:1; }
.nx-feat-flag{
  display:inline-flex; align-items:center; gap:8px; align-self:flex-start;
  font-size:10.5px; font-weight:800; letter-spacing:2.5px; text-transform:uppercase;
  color:#0D2B4E; background:var(--gold); padding:6px 13px; border-radius:6px; margin-bottom:22px;
}
.nx-feature-aside h2{
  font-family:'Playfair Display',var(--serif); font-weight:700; color:#fff;
  font-size:clamp(24px,2.6vw,33px); line-height:1.18; margin:0 0 16px;
}
.nx-feature-aside p{ font-size:15px; line-height:1.75; color:#cad9ea; font-weight:300; margin:0 0 26px; }
.nx-feat-meta{ display:flex; align-items:center; gap:16px; margin-bottom:26px; font-size:13px; color:#9fb9d6; }
.nx-feat-meta .nx-badge{ background:rgba(255,255,255,.12); color:#fff; }
.nx-feat-date{ display:inline-flex; align-items:center; gap:7px; }
.nx-feat-actions{ display:flex; flex-wrap:wrap; gap:12px; }
.nx-btn{
  display:inline-flex; align-items:center; gap:9px;
  font-size:12px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  padding:13px 26px; border-radius:9px; transition:all .18s ease; cursor:pointer; border:2px solid transparent;
}
.nx-btn-gold{ background:var(--gold); color:#0D2B4E; }
.nx-btn-gold:hover{ background:#dcbb5e; color:#0D2B4E; transform:translateY(-2px); box-shadow:0 10px 24px rgba(201,168,76,.35); }
.nx-btn-ghost{ background:transparent; color:#fff; border-color:rgba(255,255,255,.4); }
.nx-btn-ghost:hover{ border-color:var(--gold); color:var(--gold); }
.nx-btn i{ font-size:16px; transition:transform .18s ease; }
.nx-btn:hover i{ transform:translateX(3px); }
.nx-feature-figure{
  position:relative; min-height:280px;
  background:linear-gradient(135deg,#e9eff6,#dde6f1);
  display:flex; align-items:center; justify-content:center;
}
.nx-feature-figure img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.nx-feature-figure .nx-figmark{
  font-size:78px; color:#c2cfde;
}
.nx-feature-figure .nx-figmark i{ filter:drop-shadow(0 8px 18px rgba(13,43,78,.12)); }

/* ---------- GRID ---------- */
.nx-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:26px;
}
.nx-card{
  position:relative; display:flex; flex-direction:column;
  background:#fff; border:1px solid #e6edf5; border-radius:16px; overflow:hidden;
  box-shadow:0 8px 24px -16px rgba(13,43,78,.3);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  animation:nxUp .5s ease both;
}
.nx-card::before{
  content:""; position:absolute; top:0; left:0; right:0; height:4px; z-index:3;
  background:var(--blue); transition:height .2s ease;
}
.nx-card:hover{ transform:translateY(-7px); box-shadow:0 26px 46px -22px rgba(13,43,78,.5); border-color:#d4e0ee; }
.nx-card:hover::before{ height:7px; }
/* imagine card */
.nx-card-media{ position:relative; aspect-ratio:16/10; overflow:hidden; background:linear-gradient(135deg,#e9eff6,#dde6f1); }
.nx-card-media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .45s ease; }
.nx-card:hover .nx-card-media img{ transform:scale(1.06); }
.nx-card-media .nx-ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#bcc9d8; font-size:46px; }
.nx-card-media .nx-badge{ position:absolute; left:14px; bottom:14px; z-index:2; box-shadow:0 8px 18px rgba(13,43,78,.3); }
.nx-card-body{ padding:22px 24px 20px; display:flex; flex-direction:column; flex:1; }
.nx-badge{
  display:inline-flex; align-items:center; gap:7px;
  font-size:10.5px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase;
  padding:6px 12px; border-radius:7px; color:#fff;
}
.nx-badge .nx-dot{ width:7px; height:7px; border-radius:50%; background:rgba(255,255,255,.85); }
.nx-date{ display:inline-flex; align-items:center; gap:6px; font-size:12.5px; color:#90a0b4; font-weight:500; white-space:nowrap; margin-bottom:11px; }
.nx-date i{ font-size:15px; color:#b3c0d0; }
.nx-card h3{
  font-family:'Playfair Display',var(--serif); font-weight:700;
  font-size:20px; line-height:1.32; color:var(--navy); margin:0 0 12px; letter-spacing:.1px;
  transition:color .18s ease;
}
.nx-card:hover h3{ color:var(--blue); }
.nx-card p{ font-size:14px; line-height:1.72; color:#5d6b7d; font-weight:300; margin:0 0 20px; flex:1; }
.nx-foot{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; padding-top:16px; border-top:1px solid #eef2f7; }
.nx-more{
  display:inline-flex; align-items:center; gap:8px;
  font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--blue);
}
.nx-more i{ transition:transform .18s ease; }
.nx-card:hover .nx-more i{ transform:translateX(4px); }
.nx-link-util{
  display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:600; color:#8a97a8;
  position:relative; z-index:2;
}
.nx-link-util:hover{ color:var(--gold-h); }
/* link care acoperă tot cardul (titlu = link principal) */
.nx-stretch::after{ content:""; position:absolute; inset:0; z-index:1; }

/* ---------- culori per categorie ---------- */
.nx-com::before{ background:var(--blue); }       .nx-badge-com{ background:var(--blue); }
.nx-inf::before{ background:#1f8a70; }            .nx-badge-inf{ background:#1f8a70; }
.nx-anu::before{ background:#c08a1e; }            .nx-badge-anu{ background:#c08a1e; }
.nx-def::before{ background:var(--navy); }        .nx-badge-def{ background:var(--navy); }

/* ---------- EMPTY ---------- */
.nx-empty{
  grid-column:1/-1; text-align:center; padding:70px 20px; color:#8a97a8;
  background:#fff; border:1px dashed #cfd9e6; border-radius:16px;
}
.nx-empty i{ font-size:46px; color:#c2cedb; display:block; margin-bottom:14px; }
.nx-empty strong{ display:block; font-family:'Playfair Display',var(--serif); font-size:21px; color:var(--navy); margin-bottom:6px; }

/* ---------- PAGINARE ---------- */
.nx-pager{ display:flex; justify-content:center; margin-top:48px; }
.nx-pager .page-numbers{
  display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:44px; padding:0 14px;
  margin:0 5px; border-radius:11px; background:#fff; border:1px solid #dde5ef;
  font-size:14px; font-weight:700; color:var(--navy); transition:all .16s ease;
}
.nx-pager a.page-numbers:hover{ border-color:var(--blue); color:var(--blue); transform:translateY(-2px); box-shadow:0 8px 20px rgba(13,43,78,.12); }
.nx-pager .page-numbers.current{ background:var(--navy); border-color:var(--navy); color:#fff; box-shadow:0 8px 20px rgba(13,43,78,.25); }
.nx-pager .page-numbers.dots{ background:transparent; border:none; }
.nx-pager .page-numbers.prev,.nx-pager .page-numbers.next{ font-size:12px; letter-spacing:.5px; }

/* ---------- animație intrare ---------- */
@keyframes nxUp{ from{opacity:0; transform:translateY(18px);} to{opacity:1; transform:none;} }
.nx-grid .nx-card:nth-child(1){animation-delay:.03s}
.nx-grid .nx-card:nth-child(2){animation-delay:.09s}
.nx-grid .nx-card:nth-child(3){animation-delay:.15s}
.nx-grid .nx-card:nth-child(4){animation-delay:.21s}
.nx-grid .nx-card:nth-child(5){animation-delay:.27s}
.nx-grid .nx-card:nth-child(6){animation-delay:.33s}
.nx-grid .nx-card:nth-child(7){animation-delay:.39s}
.nx-grid .nx-card:nth-child(8){animation-delay:.45s}

/* ---------- RESPONSIVE ---------- */
@media(max-width:980px){
  .nx-grid{ grid-template-columns:repeat(2,1fr); }
  .nx-feature{ grid-template-columns:1fr; }
  .nx-feature-figure{ min-height:200px; order:-1; }
}
@media(max-width:620px){
  .nx-grid{ grid-template-columns:1fr; }
  .nx-head{ padding:40px 0 34px; }
  .nx-feature-aside{ padding:34px 26px; }
  .nx-filters{ overflow-x:auto; flex-wrap:nowrap; -webkit-overflow-scrolling:touch; }
  .nx-filters::-webkit-scrollbar{ display:none; }
}
@media(prefers-reduced-motion:reduce){
  .nx-card,.nx-grid .nx-card{ animation:none!important; }
  .nx-card,.nx-btn,.nx-chip,.nx-pager .page-numbers{ transition:none!important; }
}

/* ============================================================
   ARTICOL SINGLE NOUTATE (namespace .ns-*)
   ============================================================ */
.ns-wrap{ background:#eef2f7; }
.ns-wrap *{ box-sizing:border-box; }

/* HERO */
.ns-hero{
  position:relative; min-height:360px; display:flex; align-items:flex-end;
  background-color:#0D2B4E; background-size:cover; background-position:center 35%;
  color:#fff; padding:60px 0 44px;
}
.ns-hero:not(.has-photo){
  background-image:
    radial-gradient(700px 340px at 85% -10%, rgba(201,168,76,.20), transparent 60%),
    linear-gradient(135deg,#0b2342,#0D2B4E 60%,#102f54);
}
.ns-hero::after{
  content:""; position:absolute; inset:0;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1.5px);
  background-size:22px 22px; opacity:.3; pointer-events:none;
}
.ns-hero > .container{ position:relative; z-index:1; max-width:1000px; }
.ns-bc{ font-size:12.5px; color:#bcd0e6; margin-bottom:18px; }
.ns-bc a{ color:#d7e4f1; } .ns-bc a:hover{ color:#fff; }
.ns-bc span{ color:#7e9bbd; margin:0 8px; }
.ns-hero .nx-badge{ margin-bottom:16px; box-shadow:0 8px 18px rgba(0,0,0,.25); }
.ns-hero h1{
  font-family:'Playfair Display',var(--serif); font-weight:700;
  font-size:clamp(28px,4vw,46px); line-height:1.12; color:#fff; margin:0 0 18px; max-width:880px;
}
.ns-hmeta{ display:flex; flex-wrap:wrap; gap:22px; font-size:13.5px; color:#c4d6ea; }
.ns-hmeta span{ display:inline-flex; align-items:center; gap:8px; }
.ns-hmeta i{ color:var(--gold); font-size:16px; }

/* LAYOUT */
.ns-body{ padding:46px 0 66px; }
.ns-layout{ display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:48px; align-items:start; }

/* ARTICOL */
.ns-article{
  background:#fff; border:1px solid #e6edf5; border-radius:18px;
  padding:48px 52px; box-shadow:0 18px 44px -26px rgba(13,43,78,.4);
}
.ns-content{ font-size:16.5px; line-height:1.9; color:#445062; }
.ns-content > p:first-of-type::first-letter{
  float:left; font-family:'Playfair Display',var(--serif); font-weight:700;
  font-size:62px; line-height:.78; color:var(--gold); margin:6px 14px 0 0;
}
.ns-content p{ margin:0 0 20px; }
.ns-content h2{
  font-family:'Playfair Display',var(--serif); font-weight:700; color:var(--navy);
  font-size:26px; line-height:1.25; margin:38px 0 16px; padding-bottom:12px; border-bottom:2px solid #eef2f7;
}
.ns-content h3{ font-family:'Playfair Display',var(--serif); font-weight:700; color:var(--navy); font-size:20px; margin:28px 0 12px; }
.ns-content ul,.ns-content ol{ margin:0 0 22px; padding-left:0; list-style:none; }
.ns-content ul li{ position:relative; padding:0 0 11px 30px; }
.ns-content ul li::before{
  content:"\ea5e"; font-family:"tabler-icons"; position:absolute; left:0; top:1px;
  color:var(--gold-h); font-size:17px;
}
.ns-content ol{ counter-reset:nsc; }
.ns-content ol li{ position:relative; padding:0 0 12px 42px; counter-increment:nsc; }
.ns-content ol li::before{
  content:counter(nsc); position:absolute; left:0; top:-2px; width:28px; height:28px;
  background:var(--navy); color:#fff; border-radius:8px; font-size:13px; font-weight:700;
  display:flex; align-items:center; justify-content:center; font-family:var(--sans);
}
.ns-content blockquote{
  margin:26px 0; padding:20px 26px; background:#f6f9fc;
  border-left:4px solid var(--gold); border-radius:0 12px 12px 0;
  font-size:16px; color:#3d4b5c; font-style:italic;
}
.ns-content a{ color:var(--blue); font-weight:600; text-decoration:underline; text-decoration-color:rgba(26,94,168,.3); }
.ns-content a:hover{ color:var(--navy); }
.ns-content img{ max-width:100%; height:auto; border-radius:12px; margin:10px 0 24px; }
.ns-content strong{ color:var(--navy); font-weight:700; }

/* link atașat */
.ns-cta-link{
  display:flex; align-items:center; gap:16px; margin-top:34px;
  background:linear-gradient(135deg,#0D2B4E,#143a66); color:#fff;
  border-radius:14px; padding:22px 26px;
}
.ns-cta-link > i{ font-size:30px; color:var(--gold); }
.ns-cta-link strong{ display:block; font-size:13px; letter-spacing:.4px; color:#c4d6ea; font-weight:600; margin-bottom:4px; }
.ns-cta-link a{ display:inline-flex; align-items:center; gap:8px; color:#fff; font-weight:700; font-size:16px; }
.ns-cta-link a:hover{ color:var(--gold); }

/* share */
.ns-share{ display:flex; align-items:center; gap:12px; margin-top:38px; padding-top:26px; border-top:1px solid #eef2f7; }
.ns-share-l{ font-size:11px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:#90a0b4; margin-right:4px; }
.ns-sh{
  width:42px; height:42px; border-radius:11px; display:inline-flex; align-items:center; justify-content:center;
  background:#f4f7fb; color:var(--navy); font-size:19px; border:1px solid #e2e9f1; transition:all .18s ease;
}
.ns-sh:hover{ background:var(--navy); color:#fff; transform:translateY(-3px); box-shadow:0 10px 22px rgba(13,43,78,.22); }
.ns-back{ margin-top:30px; }
.ns-back-btn{ color:var(--navy); border-color:#cdd9e6; }
.ns-back-btn:hover{ border-color:var(--gold); color:var(--gold-h); background:transparent; }
.ns-back-btn i{ transition:transform .18s ease; }
.ns-back-btn:hover i{ transform:translateX(-4px); }

/* SIDEBAR */
.ns-side{ position:sticky; top:20px; display:flex; flex-direction:column; gap:22px; }
.ns-card{ background:#fff; border:1px solid #e6edf5; border-radius:16px; padding:24px; box-shadow:0 10px 28px -20px rgba(13,43,78,.4); }
.ns-card h4{ font-family:'Playfair Display',var(--serif); font-weight:700; color:var(--navy); font-size:17px; margin:0 0 16px; padding-bottom:12px; border-bottom:2px solid #eef2f7; }
.ns-meta-card ul{ list-style:none; margin:0; padding:0; }
.ns-meta-card li{ display:grid; grid-template-columns:22px 1fr auto; align-items:center; gap:10px; padding:10px 0; border-bottom:1px solid #f1f5f9; font-size:13.5px; }
.ns-meta-card li:last-child{ border-bottom:none; }
.ns-meta-card li i{ color:var(--gold-h); font-size:17px; }
.ns-meta-card li span{ color:#8a97a8; }
.ns-meta-card li strong{ color:var(--navy); font-weight:700; text-align:right; }

/* related */
.ns-rel{ display:flex; gap:13px; align-items:center; padding:12px 0; border-bottom:1px solid #f1f5f9; }
.ns-rel:hover .ns-rel-b strong{ color:var(--blue); }
.ns-rel-thumb{
  flex:0 0 auto; width:58px; height:58px; border-radius:11px; overflow:hidden;
  background:linear-gradient(135deg,#e9eff6,#dde6f1); display:flex; align-items:center; justify-content:center; color:#b7c4d3; font-size:22px;
}
.ns-rel-thumb img{ width:100%; height:100%; object-fit:cover; }
.ns-rel-b{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.ns-rel-cat{ font-size:10px; font-weight:800; letter-spacing:1px; text-transform:uppercase; font-style:normal; color:var(--blue); }
.ns-rel-inf{ color:#1f8a70; } .ns-rel-anu{ color:#c08a1e; } .ns-rel-def{ color:var(--navy); } .ns-rel-com{ color:var(--blue); }
.ns-rel-b strong{ font-family:'Playfair Display',var(--serif); font-size:14.5px; line-height:1.3; color:var(--navy); font-weight:700; transition:color .16s ease; }
.ns-rel-b time{ font-size:11.5px; color:#9aa8ba; }
.ns-allnews{ display:inline-flex; align-items:center; gap:7px; margin-top:14px; font-size:12px; font-weight:700; letter-spacing:.6px; text-transform:uppercase; color:var(--blue); }
.ns-allnews i{ transition:transform .18s ease; }
.ns-allnews:hover i{ transform:translateX(4px); }

/* contact card */
.ns-contact{ text-align:center; background:linear-gradient(150deg,#0D2B4E,#143a66); border:none; color:#fff; }
.ns-contact > i{ font-size:34px; color:var(--gold); }
.ns-contact h4{ color:#fff; border:none; padding:0; margin:12px 0 6px; }
.ns-contact p{ font-size:13.5px; color:#c4d6ea; line-height:1.7; margin:0 0 18px; }
.ns-contact .nx-btn{ width:100%; justify-content:center; }

@media(max-width:980px){
  .ns-layout{ grid-template-columns:1fr; }
  .ns-side{ position:static; }
  .ns-article{ padding:34px 26px; }
}
@media(max-width:620px){
  .ns-hero{ min-height:300px; padding:46px 0 34px; }
  .ns-hmeta{ gap:14px; font-size:12.5px; }
}
