/* Module "Năng lực đối tác" — dùng các biến màu và font có sẵn trong index.html của gains (--surface, --line, --accent, --f-display, ...). */

.nl-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 28px}
.nl-chip{font:600 12px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg);background:var(--surface);border:1px solid var(--line);padding:9px 12px;cursor:pointer}
.nl-chip[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.nl-chip:hover{filter:brightness(1.05)}

/* Lưới gọn cho khoảng 25 khối: 5 cột trên máy tính, 3 cột máy tính bảng, 2 cột điện thoại */
.nl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0;border-top:2px solid var(--fg);border-left:1px solid var(--line)}
.nl-card{display:flex;flex-direction:column;padding:0;font:inherit;color:inherit;text-align:left;text-decoration:none;background:var(--surface);border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;min-width:0}
.nl-card:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.nl-thumb{aspect-ratio:4/3;background:var(--steel);overflow:hidden;position:relative}
.nl-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.nl-card:hover .nl-thumb img{transform:scale(1.04)}
.nl-thumb.missing img{display:none}
.nl-thumb.missing::after{content:"Chưa có ảnh";display:grid;place-items:center;height:100%;color:var(--muted);font:500 12px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.nl-info{padding:10px 12px 12px}
.nl-cat{font:600 10px/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.nl-info h3{font:700 17px/1.1 var(--f-display);text-transform:uppercase;letter-spacing:.02em;margin:6px 0 4px}
.nl-partner{font:600 11.5px/1.3 var(--f-mono);color:var(--accent);margin:0 0 4px}
a.nl-card .nl-partner::after{content:" →"}
.nl-caption{font-size:13px;line-height:1.45;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nl-empty{grid-column:1/-1;color:var(--muted);padding:40px 0;margin:0;text-align:center}

.nl-pride{margin:0 0 36px;padding:0 0 28px;border-bottom:1px solid var(--line)}
.nl-quote-by{display:block;margin-top:6px;font-family:var(--f-mono);font-size:13px;font-style:normal;letter-spacing:.04em;color:var(--accent)}
.nl-pride ul{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:12px;max-width:72ch}
.nl-pride li{position:relative;padding-left:22px;font-size:17px;line-height:1.55}
.nl-pride li::before{content:"";position:absolute;left:0;top:.72em;width:12px;height:2px;background:var(--accent)}

.nl-foot{margin:24px 0 0;color:var(--muted);font-size:14px}
.nl-more{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;margin-top:24px}
.nl-more .nl-foot{margin:0}

.nl-lightbox{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(8,12,15,.92);z-index:50}
.nl-lightbox.open{display:flex}
.nl-lightbox figure{margin:0;width:100%;max-width:960px;color:var(--hero-fg)}
.nl-lightbox img{display:block;width:100%;max-height:72vh;object-fit:contain}
.nl-lightbox figcaption{margin-top:14px;text-align:center}
.nl-lightbox figcaption strong{display:block;font:700 22px/1.2 var(--f-display);text-transform:uppercase;letter-spacing:.03em}
.nl-lightbox figcaption span{display:block;color:var(--hero-muted);font-size:14.5px;margin-top:4px}
.nl-lightbox button{position:fixed;width:44px;height:44px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff;font-size:22px;cursor:pointer}
.nl-close{top:16px;right:16px}
.nl-prev{left:16px;top:50%;transform:translateY(-50%)}
.nl-next{right:16px;top:50%;transform:translateY(-50%)}

/* Trang đối tác (doi-tac.html) */
.dt-back{display:inline-block;font:600 12px/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-decoration:none;margin-bottom:22px}
.dt-back:hover{color:var(--accent)}
.dt-head h1{font-size:clamp(36px,6vw,60px);font-weight:800;text-transform:uppercase;margin-top:10px}
.dt-intro{font-size:18px;max-width:70ch;margin:16px 0 0}
.dt-pending{color:var(--muted);font-style:italic}
.dt-facts{margin-top:28px;max-width:760px}
.dt-sub{font:700 22px/1.1 var(--f-display);text-transform:uppercase;letter-spacing:.03em;margin:44px 0 16px}
.dt-cta{background:var(--hero);color:var(--hero-fg);padding:28px;margin-top:44px;display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between}
.dt-cta p{margin:0;font:600 clamp(20px,2.6vw,26px)/1.25 var(--f-display);letter-spacing:.01em;max-width:44ch}

@media (max-width:820px){
  .nl-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:480px){
  .nl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nl-prev,.nl-next{top:auto;bottom:16px;transform:none}
}
