/* @file    nap-home.css
   @created 2026-06-12 by Claude
   @updated 2026-06-12 by Claude
   @desc    Homepage redesign (Claude Design "nap-home" handoff), scoped under
            .nap-home so it can't leak into the shared base.html header/footer or
            other client pages. The prototype's own govbar/sticky-nav/gov-footer
            are intentionally dropped — base.html supplies site nav + footer. */

.nap-home{
  --green-950:#072518; --green-900:#0c3d28; --green-800:#11543a; --green-700:#177a52;
  --green-600:#1f8f60; --green-500:#2aa873; --green-100:#d7ede1; --green-50:#eef7f1;
  --ink:#0e1a14; --ink-soft:#46554d; --ink-faint:#8a9790; --line:#e9efeb; --paper:#ffffff; --bg:#f3f7f4;
  --c-min:#2f86d8; --c-max:#e2603c; --c-avg:#e2a32e;
  --shadow-sm:0 1px 3px rgba(12,61,40,.05); --shadow:0 4px 24px rgba(12,61,40,.07); --shadow-lg:0 18px 50px rgba(12,61,40,.14);
  --r-lg:24px; --r:18px; --sans:'Noto Sans Lao', system-ui, sans-serif; --maxw:1200px;
  font-family:var(--sans); color:var(--ink); background:var(--bg); line-height:1.6; -webkit-font-smoothing:antialiased;
}
.nap-home *{box-sizing:border-box}
.nap-home h1,.nap-home h2,.nap-home h3,.nap-home p,.nap-home ul,.nap-home figure{margin:0;padding:0}
.nap-home ul{list-style:none}
.nap-home img{max-width:100%;display:block}
.nap-home a{color:inherit;text-decoration:none}
.nap-home .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
.nap-home section[id]{scroll-margin-top:90px}

/* ===== HERO ===== */
.nap-home .hero{position:relative;min-height:460px;display:flex;align-items:center;overflow:hidden;background:var(--green-900)}
.nap-home .hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nap-home .hero-slides{position:absolute;inset:0;z-index:0}
.nap-home .hero-slide{opacity:0;transition:opacity 1s ease}
.nap-home .hero-slide.is-active{opacity:1}
.nap-home .hero-dots{display:flex;gap:9px;margin-top:30px}
.nap-home .hero-dots button{width:9px;height:9px;border-radius:999px;border:none;padding:0;cursor:pointer;background:rgba(255,255,255,.5);transition:width .25s,background .25s}
.nap-home .hero-dots button:hover{background:rgba(255,255,255,.8)}
.nap-home .hero-dots button.on{width:28px;background:#fff}
.nap-home .hero-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(100deg, rgba(6,28,18,.82) 0%, rgba(8,40,27,.58) 32%, rgba(10,52,34,.26) 62%, rgba(12,61,40,.08) 100%),linear-gradient(180deg, rgba(7,37,24,0) 60%, rgba(7,37,24,.42) 100%)}
/* hero texture + depth */
.nap-home .hero-topo{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='480' height='360' viewBox='0 0 480 360'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1.1'%3E%3Cpath d='M0,50 C120,20 360,80 480,50'/%3E%3Cpath d='M0,95 C120,65 360,125 480,95'/%3E%3Cpath d='M0,140 C120,110 360,170 480,140'/%3E%3Cpath d='M0,185 C120,155 360,215 480,185'/%3E%3Cpath d='M0,230 C120,200 360,260 480,230'/%3E%3Cpath d='M0,275 C120,245 360,305 480,275'/%3E%3Cpath d='M0,320 C120,290 360,350 480,320'/%3E%3C/g%3E%3C/svg%3E");background-size:760px auto;-webkit-mask-image:linear-gradient(105deg,transparent 0%,transparent 38%,#000 86%);mask-image:linear-gradient(105deg,transparent 0%,transparent 38%,#000 86%)}
.nap-home .hero-glow{position:absolute;z-index:1;pointer-events:none;top:-160px;right:-120px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(95,224,163,.28),transparent 64%)}
.nap-home .hero-inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;width:100%;padding:48px 32px 60px;display:grid;grid-template-columns:1.45fr .8fr;gap:40px;align-items:center}
.nap-home .hero-copy{color:#fff;text-shadow:0 2px 18px rgba(4,20,12,.45)}
.nap-home .chip{display:inline-flex;align-items:center;gap:9px;white-space:nowrap;font-size:12.5px;font-weight:700;letter-spacing:.5px;padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:#cdeede}
.nap-home .chip .pulse{width:8px;height:8px;border-radius:50%;background:#5fe0a3;box-shadow:0 0 0 0 rgba(95,224,163,.6);animation:napPulse 2.4s infinite}
@keyframes napPulse{0%{box-shadow:0 0 0 0 rgba(95,224,163,.55)}70%{box-shadow:0 0 0 12px rgba(95,224,163,0)}100%{box-shadow:0 0 0 0 rgba(95,224,163,0)}}
.nap-home .hero h1{font-size:clamp(32px,4.4vw,56px);font-weight:900;line-height:1.1;letter-spacing:-.6px;margin:20px 0 16px;text-wrap:balance;color:#fff}
.nap-home .hero-copy p{font-size:16.5px;color:#cfe6da;font-weight:500;max-width:520px}
.nap-home .hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}

.nap-home .btn{display:inline-flex;align-items:center;font-family:var(--sans);font-size:14.5px;font-weight:800;padding:13px 24px;border-radius:999px;text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:transform .15s,background .15s,color .15s,box-shadow .15s;line-height:1.2}
.nap-home .btn:hover{transform:translateY(-2px)}
.nap-home .btn-light{background:#fff;color:var(--green-800);box-shadow:0 10px 26px rgba(0,0,0,.18)}
.nap-home .btn-light:hover{background:#f0faf4;color:var(--green-800)}
.nap-home .btn-ghost{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.35)}
.nap-home .btn-ghost:hover{background:rgba(255,255,255,.16);color:#fff}
.nap-home .btn-solid{background:var(--green-700);color:#fff;box-shadow:0 8px 22px rgba(23,122,82,.28)}
.nap-home .btn-solid:hover{background:var(--green-800);color:#fff}
.nap-home .btn-soft{background:var(--green-50);color:var(--green-800);border-color:var(--green-100)}
.nap-home .btn-soft:hover{background:var(--green-100);color:var(--green-800)}

.nap-home .hero-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:var(--r-lg);padding:26px;backdrop-filter:blur(8px);box-shadow:var(--shadow-lg)}
.nap-home .hc-k{font-size:13px;font-weight:600;color:#a9d6bd;line-height:1.45}
.nap-home .hc-big{font-size:60px;font-weight:900;color:#fff;line-height:1;letter-spacing:-1.5px;margin:10px 0 6px;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;gap:6px}
.nap-home .hc-big .u{font-size:24px;font-weight:700;color:#cdeede}
.nap-home .hc-line{display:flex;align-items:center;gap:8px;font-size:13px;color:#bfe0cd;font-weight:600}
.nap-home .hc-line .arrow{color:#7df0b3;font-size:16px}
.nap-home .hc-spark{height:74px;margin-top:14px}

/* ===== Quick-access bridge ===== */
.nap-home .bridge{position:relative;z-index:5;max-width:var(--maxw);margin:-58px auto 0;padding:0 32px}
.nap-home .bridge-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.nap-home .qcard{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px 22px;text-decoration:none;color:inherit;box-shadow:var(--shadow-lg);transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease}
.nap-home .qcard:hover{transform:translateY(-4px);border-color:var(--green-100)}
.nap-home .qicon{flex:0 0 auto;width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:var(--green-50);color:var(--green-700);transition:background .2s ease,color .2s ease}
.nap-home .qicon svg{width:25px;height:25px}
.nap-home .qcard:hover .qicon{background:var(--green-600);color:#fff}
.nap-home .qtext{display:flex;flex-direction:column;gap:3px;min-width:0}
.nap-home .qtext b{font-size:15.5px;font-weight:800;color:var(--green-900);letter-spacing:-.2px;line-height:1.25}
.nap-home .qtext i{font-size:12.5px;font-style:normal;color:var(--ink-faint);font-weight:600;line-height:1.3}
.nap-home .qarrow{margin-left:auto;flex:0 0 auto;color:var(--green-600);font-size:18px;font-weight:800;transition:transform .2s ease}
.nap-home .qcard:hover .qarrow{transform:translateX(4px)}

/* ===== Sections ===== */
.nap-home .sec{padding:74px 0}
.nap-home .sec-soft{background:#fff}
.nap-home .eyebrow{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--green-600);margin-bottom:14px}
.nap-home .eyebrow.light{color:#5fe0a3}
.nap-home .sec h2{font-size:clamp(26px,3vw,38px);font-weight:900;color:var(--green-900);letter-spacing:-.5px;line-height:1.18;text-wrap:balance}
.nap-home .sec h2.on-dark{color:#fff}
.nap-home .sec p{color:var(--ink-soft);font-size:16px}
.nap-home .sec-head{margin-bottom:34px;max-width:760px}
.nap-home .sec-head.center{text-align:center;margin-left:auto;margin-right:auto}
.nap-home .sec-head.row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;max-width:none}
.nap-home .sec-head-note{margin-top:10px}
.nap-home .sec-data .sec-head-note{color:#bfe0cd}
/* Climate-data spotlight header — matches Claude Design "Climate Dashboard".
   Large green eyebrow, then title (bold) + note (regular) as one flowing lead
   paragraph. Generous line-height keeps Lao stacked tone marks from clipping. */
.nap-home .sec-data .sec-head{display:block;max-width:1600px;margin-bottom:48px}
.nap-home .sec-data .eyebrow{display:block;font-size:clamp(28px,3.4vw,40px);font-weight:800;letter-spacing:.005em;line-height:1.2;color:#7cc79a;text-transform:none;margin-bottom:20px;overflow:visible}
/* Section title/note relocated into the data cards.
   LAOSIS card = light bg → dark title; NASA card = dark bg → light note. */
.nap-home .sec-data .data-card.feature .dc-heading{margin:0;padding:24px 26px 0;font-size:clamp(19px,1.7vw,24px);font-weight:900;line-height:1.3;letter-spacing:-.3px;color:var(--green-900)}
.nap-home .sec-data .data-card.nasa .dc-heading-nasa{margin:0;padding:24px 26px 20px;font-size:clamp(15px,1.4vw,18px);font-weight:600;line-height:1.5;letter-spacing:0;color:var(--green-700)}
.nap-home .seeall{font-size:14px;font-weight:800;color:var(--green-700);text-decoration:none;white-space:nowrap}
.nap-home .seeall:hover{color:var(--green-900)}

/* split layout */
.nap-home .split{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.nap-home .split-copy h2{margin-bottom:16px}
.nap-home .split-copy p{margin-bottom:20px;line-height:1.75}
.nap-home #about .split{align-items:stretch}
.nap-home #about .split-media{display:flex}
.nap-home #about .media-img{height:auto;min-height:440px;flex:1}
.nap-home .split-media{position:relative}
.nap-home .media-img{width:100%;height:420px;border-radius:22px;object-fit:cover;box-shadow:var(--shadow-lg)}
.nap-home .media-img.map{height:480px;object-fit:contain;background:#fff;box-shadow:var(--shadow);border:1px solid var(--line);border-radius:18px}
.nap-home .media-badge{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:9px;background:#fff;color:var(--ink);font-size:12.5px;font-weight:700;padding:10px 16px;border-radius:999px;box-shadow:var(--shadow);max-width:84%}
.nap-home .mb-dot{width:9px;height:9px;border-radius:50%;background:var(--green-600);flex:0 0 auto}
.nap-home .risk-cta{display:flex;gap:12px;flex-wrap:wrap}

/* ===== DATA SPOTLIGHT ===== */
.nap-home .sec-data{background:linear-gradient(160deg,var(--green-900) 0%, var(--green-950) 100%);position:relative;overflow:hidden}
.nap-home .sec-data::after{content:"";position:absolute;right:-160px;top:-120px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle, rgba(42,168,115,.22), transparent 68%);pointer-events:none}
.nap-home .sec-data .sec-head{position:relative;z-index:1}
.nap-home .data-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:24px;position:relative;z-index:1}
.nap-home .data-card{background:var(--paper);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column}
.nap-home .src-tag{display:inline-flex;align-items:center;font-size:11px;font-weight:800;letter-spacing:.6px;padding:5px 11px;border-radius:7px;white-space:nowrap}
.nap-home .src-tag.laosis{background:var(--green-50);color:var(--green-700)}
.nap-home .src-tag.nasaTag{background:#eaf1fb;color:#2f6bd8}
.nap-home .dc-top{display:flex;align-items:center;gap:12px;padding:22px 26px 6px}
.nap-home .dc-title{font-size:18px;font-weight:800;color:var(--green-900);letter-spacing:-.2px}
.nap-home .dc-chart{height:230px;padding:8px 18px 4px}
.nap-home .dc-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:8px 26px 4px}
.nap-home .ds{text-align:center}
.nap-home .ds-v{font-size:26px;font-weight:900;letter-spacing:-.5px;color:var(--a);line-height:1;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;justify-content:center;gap:2px}
.nap-home .ds-v i{font-size:13px;font-weight:700;font-style:normal;color:var(--ink-faint)}
.nap-home .ds-l{font-size:11.5px;font-weight:600;color:var(--ink-faint);margin-top:6px}
.nap-home .dc-link{display:block;padding:18px 26px;font-size:14px;font-weight:800;color:var(--green-700);text-decoration:none;border-top:1px solid var(--line);margin-top:auto;transition:background .15s,color .15s}
.nap-home .dc-link:hover{background:var(--green-50);color:var(--green-900)}

/* NASA card */
.nap-home .data-card.nasa{background:var(--paper)}
.nap-home .nasa-figure{display:block;text-decoration:none}
.nap-home .nasa-ph{position:relative;aspect-ratio:16/10;display:flex;flex-direction:column;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,rgba(255,255,255,.03) 0 14px,transparent 14px 28px),radial-gradient(120% 95% at 50% 38%,#3a2218,#130c09 74%);color:#fff;overflow:hidden}
.nap-home .nasa-tt{font-size:17px;font-weight:700;letter-spacing:.2px;color:#f3ece8;position:absolute;top:22px}
.nap-home .nasa-ts{font-size:12px;color:#c4a99a;position:absolute;top:48px}
.nap-home .nasa-play{width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;padding-left:4px;backdrop-filter:blur(4px);box-shadow:0 10px 30px rgba(0,0,0,.4);transition:transform .15s,background .15s}
.nap-home .nasa-figure:hover .nasa-play{transform:scale(1.07);background:rgba(255,255,255,.24)}
.nap-home .nasa-grad{position:absolute;left:0;right:0;bottom:0;height:10px;background:linear-gradient(90deg,#3b6fb0,#7fb1dd,#dbe7f0,#f1e7db,#e0a07a,#c0533a,#7a2b1c);z-index:2}
/* Real NASA video (homepage teaser): poster + play overlay, inline playback */
.nap-home .nasa-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:#130c09}
.nap-home .nasa-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;display:block}
.nap-home .nasa-media .nasa-ph{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border:none;cursor:pointer;background:linear-gradient(180deg, rgba(8,5,3,.28) 0%, rgba(8,5,3,.30) 55%, rgba(8,5,3,.58) 100%)}
.nap-home .nasa-media .nasa-ph.is-hidden{display:none}
.nap-home .nasa-media:hover .nasa-play{transform:scale(1.07);background:rgba(255,255,255,.24)}
.nap-home .nasa-body{padding:20px 24px;display:flex;flex-direction:column;gap:8px;flex:1}
.nap-home .nasa-body .src-tag{align-self:flex-start}
.nap-home .nasa-body p{font-size:13.5px;color:var(--ink-soft);line-height:1.55;margin-top:2px}

/* ===== News / activity cards ===== */
.nap-home .cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.nap-home .ncard{background:var(--paper);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s;text-decoration:none;color:inherit}
.nap-home .ncard:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.nap-home .ncard .thumb{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--green-50)}
.nap-home .ncard .thumb img{width:100%;height:100%;object-fit:cover}
.nap-home .ncard .ph{position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(12,61,40,.05) 0 12px,transparent 12px 24px),linear-gradient(135deg,var(--green-100),var(--green-50));display:grid;place-items:center;color:var(--green-700);font-family:ui-monospace,Menlo,monospace;font-size:12px;font-weight:600;text-align:center;padding:0 24px}
.nap-home .ncard .date{position:absolute;top:14px;left:14px;background:rgba(7,37,24,.86);color:#fff;border-radius:12px;text-align:center;padding:8px 12px;line-height:1;font-weight:800;z-index:1}
.nap-home .ncard .date b{display:block;font-size:20px}
.nap-home .ncard .date span{display:block;font-size:10.5px;color:#9fd3b6;margin-top:3px;letter-spacing:.5px;text-transform:uppercase}
.nap-home .ncard .body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.nap-home .ncard .cat{font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--green-600)}
.nap-home .ncard h3{font-size:16px;font-weight:800;color:var(--green-900);line-height:1.4;letter-spacing:-.2px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nap-home .ncard p{font-size:13.5px;color:var(--ink-faint);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nap-home .ncard .more{margin-top:auto;font-size:13.5px;font-weight:800;color:var(--green-700);padding-top:6px}
.nap-home .empty-note{color:var(--ink-faint);font-size:14px;padding:8px 0}

/* ===== List pages (news / events) ===== */
.nap-home .list-page{padding-top:130px}      /* JS refines this to clear the fixed site header */
.nap-home .list-empty{text-align:center;padding:60px 20px;color:var(--ink-faint)}
.nap-home .list-empty h3{font-size:20px;font-weight:800;color:var(--green-900);margin-bottom:8px}
.nap-home .box-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:44px;flex-wrap:wrap}
.nap-home .pagination-link{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:999px;font-weight:800;font-size:14px;color:var(--green-800);background:#fff;border:1px solid var(--line);text-decoration:none;transition:background .15s,color .15s,border-color .15s,transform .15s}
.nap-home .pagination-link:hover{background:var(--green-50);border-color:var(--green-100);transform:translateY(-1px)}
.nap-home .pagination-link.active{background:var(--green-700);color:#fff;border-color:var(--green-700)}

/* ===== Objectives ===== */
.nap-home .obj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.nap-home .obj-card{position:relative;background:var(--bg);border:1px solid var(--line);border-radius:var(--r-lg);padding:34px 28px 30px;overflow:hidden;transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease}
.nap-home .obj-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--green-600);transform:scaleY(0);transform-origin:top;transition:transform .3s ease}
.nap-home .obj-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:transparent;background:#fff}
.nap-home .obj-card:hover::before{transform:scaleY(1)}
.nap-home .obj-num{font-size:40px;font-weight:900;color:var(--green-100);letter-spacing:-1px;line-height:1;font-variant-numeric:tabular-nums;display:block;margin-bottom:16px;transition:color .25s ease}
.nap-home .obj-card:hover .obj-num{color:var(--green-500)}
.nap-home .obj-card h3{font-size:19px;font-weight:800;color:var(--green-900);letter-spacing:-.2px;margin-bottom:12px;line-height:1.35}
.nap-home .obj-card p{font-size:14.5px;color:var(--ink-soft);line-height:1.65}

/* ===== Image hover zoom polish ===== */
.nap-home .ncard .thumb,.nap-home .media-img,.nap-home .nasa-ph{overflow:hidden}
.nap-home .ncard .ph,.nap-home .ncard .thumb img{transition:transform .5s ease}
.nap-home .ncard:hover .ph,.nap-home .ncard:hover .thumb img{transform:scale(1.05)}

/* ===== Scroll reveal (smooth entrance) ===== */
@media (prefers-reduced-motion: no-preference){
  .nap-home .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.22,.61,.36,1), transform .7s cubic-bezier(.22,.61,.36,1);transition-delay:var(--rev-delay,0ms);will-change:opacity,transform}
  .nap-home .reveal.in{opacity:1;transform:none}
}

/* ===== Responsive ===== */
@media (max-width:980px){
  .nap-home .hero-inner{grid-template-columns:1fr;gap:30px}
  .nap-home .hero-card{max-width:440px}
  .nap-home .split{grid-template-columns:1fr;gap:34px}
  .nap-home #about .split-media{order:-1}
  .nap-home #risk .split-media{order:0}
  .nap-home .data-grid{grid-template-columns:1fr}
  .nap-home .bridge-inner{grid-template-columns:1fr}
  .nap-home .bridge{margin-top:-46px}
}
@media (max-width:680px){
  .nap-home .wrap,.nap-home .hero-inner{padding-left:18px;padding-right:18px}
  .nap-home .cards3{grid-template-columns:1fr}
  .nap-home .obj-grid{grid-template-columns:1fr}
  .nap-home .sec{padding:54px 0}
  .nap-home .dc-stats{padding-left:16px;padding-right:16px}
  .nap-home #about .media-img{min-height:300px}
}

/* ===== COMMUNITY FORUM PANEL (added 2026-06-14 — nap-home forum handoff) ===== */
.nap-home .forum-cta{position:relative;overflow:hidden;border-radius:var(--r-lg);color:#fff;background:linear-gradient(150deg,var(--green-800),var(--green-950));box-shadow:var(--shadow-lg);padding:46px 48px;display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center}
.nap-home .forum-cta::before{content:"";position:absolute;right:-120px;top:-130px;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,rgba(95,224,163,.22),transparent 66%);pointer-events:none}
.nap-home .fc-copy{position:relative;z-index:1}
.nap-home .fc-copy .eyebrow{margin-bottom:14px}
.nap-home .fc-copy h2{color:#fff;margin-bottom:14px}
.nap-home .fc-copy p{color:#cfe6da;font-size:15.5px;max-width:48ch;margin-bottom:24px}
.nap-home .fc-stats{display:flex;gap:30px;margin-bottom:26px;flex-wrap:wrap}
.nap-home .fc-stat{display:flex;flex-direction:column;gap:4px}
.nap-home .fc-stat b{font-size:32px;font-weight:900;letter-spacing:-1px;line-height:1;color:#fff;font-variant-numeric:tabular-nums}
.nap-home .fc-stat span{font-size:12.5px;font-weight:600;color:#a9d6bd}
.nap-home .fc-cats{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.nap-home .fc-cat{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:13px 15px;text-decoration:none;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.nap-home .fc-cat:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.32);transform:translateY(-2px)}
.nap-home .fc-cat .fci{width:38px;height:38px;flex:0 0 auto;border-radius:11px;background:rgba(95,224,163,.16);color:#7df0b3;display:grid;place-items:center}
.nap-home .fc-cat .fci svg{width:20px;height:20px}
.nap-home .fc-cat span{font-size:13px;font-weight:700;color:#eafff4;line-height:1.3}
@media (max-width:980px){
  .nap-home .forum-cta{grid-template-columns:1fr;gap:30px;padding:36px 28px}
}
@media (max-width:680px){
  .nap-home .fc-cats{grid-template-columns:1fr}
  .nap-home .fc-stats{gap:22px}
}

/* forum panel — latest topics list (added 2026-06-15) */
.nap-home .fc-topics{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px}
.nap-home .fc-topic{display:flex;align-items:center;gap:13px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:13px 15px;text-decoration:none;transition:background .18s ease,border-color .18s ease,transform .18s ease}
.nap-home .fc-topic:hover{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.32);transform:translateY(-2px)}
.nap-home .fc-topic .fci{width:38px;height:38px;flex:0 0 auto;border-radius:11px;background:rgba(95,224,163,.16);color:#7df0b3;display:grid;place-items:center}
.nap-home .fc-topic .fci svg{width:20px;height:20px}
.nap-home .fc-topic .ft-main{display:flex;flex-direction:column;gap:3px;min-width:0}
.nap-home .fc-topic .ft-title{font-size:13.5px;font-weight:700;color:#eafff4;line-height:1.35;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.nap-home .fc-topic .ft-meta{font-size:11.5px;font-weight:600;color:#a9d6bd;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}

/* ===== EXPLORE PILLARS (ກົນໄກ, ການມີສ່ວນຮ່ວມ ແລະ ແຫຼ່ງຂໍ້ມູນ — added 2026-06-15) ===== */
.nap-home .pillar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(208px,1fr));gap:20px}
.nap-home .pcard{position:relative;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 24px 22px;text-decoration:none;color:inherit;overflow:hidden;transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
.nap-home .pcard::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--green-600);transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.nap-home .pcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:transparent}
.nap-home .pcard:hover::before{transform:scaleX(1)}
.nap-home .pcard .picon{width:52px;height:52px;flex:0 0 auto;border-radius:15px;background:var(--green-50);color:var(--green-700);display:grid;place-items:center;margin-bottom:18px;transition:background .22s ease,color .22s ease}
.nap-home .pcard:hover .picon{background:var(--green-600);color:#fff}
.nap-home .pcard .picon svg{width:26px;height:26px}
.nap-home .pcard h3{font-size:16.5px;font-weight:800;color:var(--green-900);letter-spacing:-.2px;line-height:1.35;margin-bottom:8px;text-wrap:balance}
.nap-home .pcard p{font-size:13px;color:var(--ink-faint);font-weight:600;line-height:1.55;flex:1 1 auto}
.nap-home .pcard .pgo{margin-top:18px;display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:800;color:var(--green-700);transition:gap .2s ease}
.nap-home .pcard:hover .pgo{gap:11px}
