/* ============================================================================
 * Nepal hub (coastmetric.com/nepal/) — layout on top of nepal/app/css/nepal.css
 * Tokens (--seafoam, --card, --chalk…) and components (glass-card, tag, trust,
 * sev, news-item, info-row, mtn) come from nepal.css; this file only adds the
 * wide responsive hub layout. Mobile-first: 375 px → 2–3 columns on desktop.
 * ========================================================================== */

.hub-body{--hero1:#0b1f33;--hero2:#123552;--hero3:#1b4a3c;--ink-on-dark:#f4f7fb;--ink-dim-on-dark:rgba(226,236,246,.78)}
.skip{position:absolute;left:-999px;top:8px;z-index:200;background:var(--seafoam);color:#fff;padding:8px 14px;border-radius:10px;font-weight:700}
.skip:focus{left:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--seafoam);outline-offset:2px;border-radius:6px}

/* ── Hero ─────────────────────────────────────────────────────────────── */
.hero{position:relative;overflow:hidden;color:var(--ink-on-dark);padding:18px 0 120px;
  background:radial-gradient(ellipse 70% 60% at 85% 0%,rgba(114,185,74,.22),transparent 60%),radial-gradient(ellipse 60% 50% at 0% 30%,rgba(74,144,217,.28),transparent 60%),linear-gradient(160deg,var(--hero1) 0%,var(--hero2) 55%,var(--hero3) 100%)}
.hero::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:radial-gradient(1px 1px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 32% 8%,#fff,transparent),radial-gradient(1.4px 1.4px at 58% 14%,#fff,transparent),radial-gradient(1px 1px at 76% 28%,#fff,transparent),radial-gradient(1px 1px at 90% 10%,#fff,transparent),radial-gradient(1px 1px at 44% 30%,#fff,transparent)}
.hero-in{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 18px}
.crumb{font-size:12px;color:var(--ink-dim-on-dark);margin-bottom:22px}
.crumb a{color:var(--ink-dim-on-dark);text-decoration:none}.crumb a:hover{color:#fff}
.eyebrow{font-family:'Outfit',sans-serif;font-size:11px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:#9ed55d;margin-bottom:10px}
.hero h1{font-size:clamp(2.35rem,8.5vw,4.4rem);font-weight:900;line-height:.98;letter-spacing:-.035em;color:#fff;text-wrap:balance}
.hero h1 span{background:linear-gradient(90deg,#9ed55d,#72b94a 45%,#5aa6e0);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-size:15px;line-height:1.6;color:var(--ink-dim-on-dark);margin-top:16px;max-width:38rem}
.live{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--ink-dim-on-dark);margin-top:16px}
.hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;padding:12px 22px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;white-space:nowrap}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--seafoam);color:#0b1f12;box-shadow:0 4px 18px rgba(114,185,74,.4)}
.btn-primary:hover{background:#86c95e}
.btn-ghost{border:1.5px solid rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.06)}
.btn-ghost:hover{background:rgba(255,255,255,.14)}
.btn-soft{background:var(--sub);border:1px solid var(--sub-border);color:var(--chalk)}
.btn.sm{padding:10px 16px;font-size:13px}

.hero-panel{margin-top:28px;padding:16px;border-radius:24px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.stat{padding:12px 12px 10px;border-radius:16px;background:rgba(6,16,28,.35);border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}
.stat::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--c)}
.stat b{display:block;font-family:'Outfit',sans-serif;font-size:30px;font-weight:900;line-height:1;color:#fff}
.stat span{display:block;font-size:11px;font-weight:700;color:var(--ink-dim-on-dark);margin-top:4px}
.s-good{--c:#72b94a}.s-fair{--c:#f59e0b}.s-poor{--c:#e0705a}.s-close{--c:#5aa6e0}
.hero-best{font-size:13px;color:var(--ink-dim-on-dark);margin-top:12px;line-height:1.5}
.hero-best a{color:#fff;font-weight:800;text-decoration-color:rgba(158,213,93,.6);text-underline-offset:3px}
.hero-best b{color:#fff}
.hero-dhm{margin-top:14px;padding:12px 14px;border-radius:14px;background:rgba(6,16,28,.3);border-left:3px solid #9ed55d;font-size:12.5px;line-height:1.55;color:var(--ink-dim-on-dark)}
.hero-dhm span{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#9ed55d;margin-bottom:4px}
.jump{display:flex;gap:6px;overflow-x:auto;margin-top:26px;padding-bottom:4px;scrollbar-width:none}
.jump::-webkit-scrollbar{display:none}
.jump a{flex:0 0 auto;font-size:12px;font-weight:700;color:#fff;text-decoration:none;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16)}
.jump a:hover{background:rgba(255,255,255,.18)}
.ridge{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:120px;z-index:1}
.ridge .r1{fill:rgba(226,236,246,.16)}.ridge .r1s{fill:rgba(255,255,255,.55)}
.ridge .r2{fill:rgba(114,185,74,.18)}.ridge .r3{fill:var(--deep)}

/* ── Page shell ───────────────────────────────────────────────────────── */
main.hub{max-width:1200px;margin:0 auto;padding:8px 16px 48px;display:block;gap:0}
.block{margin-top:44px;scroll-margin-top:16px}
.block:first-child{margin-top:12px}
.block-head{margin-bottom:16px;max-width:46rem}
.block-head .st{font-size:clamp(1.4rem,4.6vw,2rem);font-weight:900;letter-spacing:-.02em;margin-top:4px;line-height:1.15}
.block-head .sub{font-size:14px;margin-top:8px;line-height:1.6}
.block-head .sub a,.method a,.faq-item a{color:#3f7f22}
.h3{font-family:'Outfit',sans-serif;font-size:17px;font-weight:800;letter-spacing:-.01em;margin-bottom:10px}

/* ── Map ──────────────────────────────────────────────────────────────── */
.map-wrap{display:grid;grid-template-columns:1fr;overflow:hidden}
.map-fig{margin:0;padding:10px 10px 0}
.np-map{display:block;width:100%;height:auto;border-radius:16px}
.map-fig figcaption{font-size:10.5px;color:var(--faint);padding:6px 4px 10px}
.map-bg{fill:#e6edf4}
.hatch{stroke:rgba(100,116,139,.12);stroke-width:1}
.np-land{fill:url(#npFill);stroke:#7b93ad;stroke-width:1.6;stroke-linejoin:round}
.nf1{stop-color:#f7fafc}.nf2{stop-color:#e3eedc}.nf3{stop-color:#cfe4c2}
.map-country{font:800 13px 'Outfit',sans-serif;letter-spacing:.3em;fill:#7b8ca0;text-anchor:middle}
.map-nepal{font:900 44px 'Outfit',sans-serif;letter-spacing:.5em;fill:rgba(63,127,34,.12);text-anchor:middle}
.peak{fill:#94a3b8}
.peak-t{font:700 13px 'DM Sans',sans-serif;fill:#475569}
.city{fill:#fff;stroke:#334155;stroke-width:2}
.city-t{font:700 15px 'DM Sans',sans-serif;fill:#334155;paint-order:stroke;stroke:#f1f5f9;stroke-width:4px;stroke-linejoin:round}
.route-case{fill:none;stroke:#fff;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.route{fill:none;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round}
.mk{stroke:#fff;stroke-width:3.5;filter:drop-shadow(0 3px 6px rgba(15,23,42,.35))}
.mk-t{font:900 18px 'Outfit',sans-serif;fill:#fff;text-anchor:middle;paint-order:stroke;stroke:rgba(0,0,0,.28);stroke-width:2px}
.mk-l{font:800 19px 'Outfit',sans-serif;fill:#0f172a;paint-order:stroke;stroke:rgba(255,255,255,.92);stroke-width:5px;stroke-linejoin:round}
.mk-pulse{fill:none;stroke-width:3;transform-origin:center;transform-box:fill-box;animation:npPulse 3.2s ease-out infinite}
.np-map a:hover .mk,.np-map a:focus .mk{stroke:#0f172a}
.np-map a:hover .mk-l,.np-map a:focus .mk-l{text-decoration:underline}
.inset-bg{fill:rgba(255,255,255,.88);stroke:rgba(15,23,42,.12)}
.inset-land{fill:#dfe9d8;stroke:#7b93ad;stroke-width:1}
.inset-frame{fill:rgba(114,185,74,.18);stroke:#3f7f22;stroke-width:1.5}
.map-list{list-style:none;padding:6px 14px 14px}
.map-list li a{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--sub-border);text-decoration:none;color:inherit}
.map-list li a:hover .ml-n{color:#3f7f22}
.map-list .chip{min-width:44px;height:32px;font-size:15px}
.ml-n{font-weight:800;font-size:14px;line-height:1.25}
.ml-n small{display:block;font-weight:500;font-size:11.5px;color:var(--muted)}
.ml-b{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.legend{display:flex;flex-wrap:wrap;gap:6px 12px;padding:12px 4px 0}
.legend span{font-size:11px;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:5px}
.legend span::before{content:'';width:10px;height:10px;border-radius:50%;background:var(--c)}

/* ── Trek cards ───────────────────────────────────────────────────────── */
.tk-grid{display:grid;grid-template-columns:1fr;gap:16px}
.tk{padding:18px 18px 16px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.tk:hover{transform:translateY(-2px);box-shadow:0 2px 6px rgba(0,0,0,.05),0 16px 40px rgba(15,23,42,.12)}
.tk-rank{position:absolute;top:-10px;right:16px;background:linear-gradient(90deg,#72b94a,#4a9a2a);color:#fff;font:800 10px 'Outfit',sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:999px;box-shadow:0 4px 12px rgba(114,185,74,.4)}
.tk-top{display:grid;grid-template-columns:118px 1fr;gap:12px;align-items:center}
.tk-gauge{width:118px;height:auto;display:block}
.tk-track{stroke:rgba(0,0,0,.09)}
.tk h3{font-size:20px;font-weight:900;letter-spacing:-.02em;line-height:1.15}
.tk h3 a{color:var(--chalk);text-decoration:none}
.tk h3 a:hover{color:#3f7f22;text-decoration:underline;text-underline-offset:3px}
.tk-sub{font-size:12px;color:var(--muted);margin-top:3px}
.tk-band{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-top:6px}
.tk-verdict{font-size:13px;line-height:1.55;color:var(--chalk-dim);margin-top:12px}
.tk-verdict b{color:var(--chalk)}
.days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:14px;padding:10px 8px 8px;border-radius:14px;background:var(--sub);border:1px solid var(--sub-border)}
.day{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
.day-v{font:800 12px 'Outfit',sans-serif;color:var(--chalk)}
.day-bar{width:100%;max-width:22px;height:44px;border-radius:6px;background:rgba(148,163,184,.16);display:flex;align-items:flex-end;overflow:hidden}
.day-bar i{display:block;width:100%;border-radius:6px}
.day-d{font-size:10px;font-weight:700;color:var(--muted)}
.tk-best{font-size:12px;color:var(--muted);margin-top:8px}
.tk-best b{color:var(--chalk)}
.tk-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.tk-tags .tag{font-size:10.5px;padding:4px 9px;line-height:1.35;white-space:normal}
.tk-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.tk-facts div{padding:9px 11px;border-radius:12px;background:var(--sub);border:1px solid var(--sub-border)}
.tk-facts dt{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.tk-facts dd{font:800 14px 'Outfit',sans-serif;margin-top:2px;color:var(--chalk)}
.tk-links{display:flex;gap:8px;margin-top:auto;padding-top:14px;flex-wrap:wrap}
.tk-links .btn-soft{flex:1 1 auto;padding:10px 14px;font-size:13px}

/* ── Compare table ────────────────────────────────────────────────────── */
.tbl-wrap{overflow-x:auto;padding:6px}
.cmp{width:100%;border-collapse:collapse;font-size:13px;min-width:720px}
.cmp th,.cmp td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--sub-border);vertical-align:middle}
.cmp thead th{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
.cmp tbody th a{color:var(--chalk);font-weight:800;text-decoration:none}
.cmp tbody th a:hover{text-decoration:underline}
.cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:none}
.cmp .chip{height:24px;min-width:34px;font-size:12px;margin-right:4px}

/* ── Advisories ───────────────────────────────────────────────────────── */
.adv-grid{display:grid;grid-template-columns:1fr;gap:16px}
.adv-side{display:flex;flex-direction:column;gap:16px}
.news-item{display:block}
.news-title a{color:var(--chalk);text-decoration:none}
.news-title a:hover{color:#2a67a8;text-decoration:underline}
.inc-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:12px 0 8px}
.inc-stats div{text-align:center;padding:10px 4px;border-radius:12px;background:var(--sub);border:1px solid var(--sub-border)}
.inc-stats b{display:block;font:900 20px 'Outfit',sans-serif}
.inc-stats span{font-size:10px;font-weight:700;color:var(--muted)}
.inc-types{margin-bottom:4px}
.inc-list{list-style:none;margin-top:10px}
.inc-list li{padding:8px 0;border-bottom:1px dashed var(--sub-border);font-size:12.5px;line-height:1.4}
.inc-list li:last-child{border-bottom:none}
.inc-list span{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.src-note{font-size:11px;color:var(--muted);margin-top:12px}
.src-note a{color:#2a67a8}

/* ── Seasons ──────────────────────────────────────────────────────────── */
.months{list-style:none;display:grid;grid-template-columns:1fr;gap:8px}
.mo{display:grid;grid-template-columns:62px 1fr;gap:4px 12px;align-items:center;padding:11px 14px;border-radius:16px;background:var(--card);border:1px solid var(--border)}
.mo.now{box-shadow:0 0 0 2px var(--seafoam),0 8px 24px rgba(114,185,74,.18)}
.mo-n{font:900 16px 'Outfit',sans-serif;grid-row:span 3}
.mo-n em{display:block;font-style:normal;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#3f7f22}
.mo-bar{height:6px;border-radius:99px;background:rgba(148,163,184,.18);overflow:hidden}
.mo-bar i{display:block;height:100%;border-radius:99px;background:var(--c)}
.mo-r{font-size:12px;font-weight:800;color:var(--chalk)}
.mo-d{font-size:11.5px;color:var(--muted);line-height:1.45}
.season-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:16px}
.season-grid .sub{font-size:13px}

/* ── Info cards ───────────────────────────────────────────────────────── */
.info-grid{display:grid;grid-template-columns:1fr;gap:16px}
.info-grid>article{scroll-margin-top:16px}
.bul{list-style:none}
.bul li{position:relative;padding:0 0 9px 18px;font-size:13px;line-height:1.55;color:var(--chalk-dim)}
.bul li::before{content:'';position:absolute;left:2px;top:.55em;width:7px;height:7px;border-radius:50%;background:var(--seafoam)}
.bul b{color:var(--chalk)}
.info-row .n a{color:var(--chalk)}
.tel-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.tel{display:block;padding:12px;border-radius:14px;text-decoration:none;background:rgba(224,112,90,.08);border:1px solid rgba(224,112,90,.25)}
.tel b{display:block;font:900 26px 'Outfit',sans-serif;color:#a3321d}
.tel span{font-size:11.5px;font-weight:700;color:var(--chalk-dim)}
.method p{font-size:13px}

/* ── FAQ ──────────────────────────────────────────────────────────────── */
.faq-list{display:grid;grid-template-columns:1fr;gap:10px}
.faq-item{padding:0;border-radius:18px}
.faq-item summary{list-style:none;cursor:pointer;padding:16px 44px 16px 18px;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';position:absolute;right:18px;top:50%;transform:translateY(-50%);font:700 22px 'Outfit',sans-serif;color:var(--seafoam)}
.faq-item[open] summary::after{content:'–'}
.faq-item h3{font-size:15px;font-weight:800;line-height:1.35}
.faq-item p{padding:0 18px 16px;font-size:13.5px;line-height:1.65;color:var(--chalk-dim)}

.hub-foot{margin-top:48px;padding-top:20px;border-top:1px solid var(--sub-border);text-align:center;font-size:12px;color:var(--muted);line-height:1.7}
.hub-foot p+p{margin-top:8px}
.hub-foot a{color:var(--chalk-dim)}

/* ── Dark mode refinements ────────────────────────────────────────────── */
@media (prefers-color-scheme:dark){
  .map-bg{fill:#0f1b2b}.hatch{stroke:rgba(148,163,184,.08)}
  .nf1{stop-color:#2a3a4f}.nf2{stop-color:#1c3326}.nf3{stop-color:#193021}
  .np-land{stroke:#5b7391}
  .map-country{fill:#8394a8}.map-nepal{fill:rgba(158,213,93,.08)}
  .peak{fill:#64748b}.peak-t{fill:#a8b5c6}
  .city{fill:#0f172a;stroke:#e2e8f0}
  .city-t{fill:#e2e8f0;stroke:#0f1b2b}
  .route-case{stroke:#0b1522}
  .mk-l{fill:#f1f5f9;stroke:rgba(11,21,34,.9)}
  .inset-bg{fill:rgba(18,32,52,.92);stroke:rgba(255,255,255,.1)}.inset-land{fill:#23392b}
  .tk-track{stroke:rgba(255,255,255,.13)}
  .tk-band,.ml-b{filter:brightness(1.6)}
  .block-head .sub a,.method a,.faq-item a,.mo-n em{color:#9ed55d}
  .map-list li a:hover .ml-n,.tk h3 a:hover{color:#9ed55d}
  .news-title a:hover,.src-note a{color:#8cc2f5}
  .tel b{color:#f79a86}
}

/* ── Breakpoints ──────────────────────────────────────────────────────── */
@media (min-width:640px){
  .stats{grid-template-columns:repeat(4,1fr)}
  .months{grid-template-columns:repeat(2,1fr)}
  .season-grid{grid-template-columns:repeat(2,1fr)}
  .info-grid{grid-template-columns:repeat(2,1fr)}
  .faq-list{grid-template-columns:1fr 1fr;align-items:start}
}
@media (min-width:760px){
  .tk-grid{grid-template-columns:repeat(2,1fr)}
  .hero{padding-bottom:150px}.ridge{height:160px}
}
@media (min-width:960px){
  .hero-in,main.hub{padding-left:28px;padding-right:28px}
  .hero{padding-top:26px}
  .hero-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:center}
  .hero-panel{margin-top:0;padding:20px}
  .stats{grid-template-columns:repeat(2,1fr)}
  .map-wrap{grid-template-columns:1.7fr 1fr;align-items:center}
  .map-fig{padding:14px}
  .map-list{padding:14px 20px 14px 6px}
  .adv-grid{grid-template-columns:1.35fr 1fr;align-items:start}
  .months{grid-template-columns:repeat(3,1fr)}
  .season-grid{grid-template-columns:repeat(4,1fr)}
  .info-grid{grid-template-columns:repeat(3,1fr)}
  #permits{grid-row:span 2}
}
@media (min-width:1100px){
  .tk-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:380px){
  .tk-top{grid-template-columns:96px 1fr}.tk-gauge{width:96px}
  .tk h3{font-size:18px}
}
