/* Noms city guides (D14): page-templates/template-city.php, shipped as zeen-child/assets/css/pages/city.css.
   Loads after site-chrome.css, homepage.css (hero, rows, chips, signup band) and events.css (event rows).
   This file is only the page header, section heads, the openings/closures pair and the guide list. */
body.noms-city{margin:0;background:#fff}
.nc{background:var(--paper)}
.nc em.nh-teal{font-style:normal;color:var(--teal)}

.nc-top{padding-block:clamp(32px,4vw,56px) 8px;max-width:860px}
.nc-h1{margin:0;font:900 clamp(48px,8vw,104px)/.92 var(--display);letter-spacing:-.05em;color:var(--ink);text-wrap:balance}
.nc-intro{margin:16px 0 0;font:500 clamp(18px,1.8vw,22px)/1.4 var(--sans);color:var(--ink);max-width:44ch}
.nc-switch{margin-top:20px}
.nc-switch .nh-chip[aria-current="page"]{background:var(--ink);color:var(--ground);border-color:var(--ink)}
.nc-counts{list-style:none;display:flex;flex-wrap:wrap;gap:8px 28px;margin:24px 0 0;padding:16px 0 0;border-top:1.5px solid var(--ink);font:500 16px/1.3 var(--sans);color:var(--muted)}
.nc-counts b{font:900 28px/1 var(--display);letter-spacing:-.03em;color:var(--ink);margin-right:4px}
.nc-hero{padding-top:clamp(24px,3vw,40px)}

.nc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 20px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1.5px solid var(--ink)}
.nc-head .nh-sign{margin-bottom:8px}
.nc-head h2{margin:0;font:900 clamp(32px,3.6vw,48px)/1 var(--display);letter-spacing:-.04em;color:var(--ink)}
.nc-head__more{display:inline-flex;align-items:center;gap:6px;padding-block:10px;font:700 15px/1.2 var(--sans);color:var(--ink);text-decoration:none;white-space:nowrap}
.nc-head__more:hover{text-decoration:underline;text-underline-offset:4px}

.nc-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,56px);margin-top:clamp(48px,6vw,88px)}
.nc-sec{margin-top:clamp(48px,6vw,88px)}
.nc-list{margin:0}
.nc-list .na-row-h{margin:0;font:800 clamp(17px,1.4vw,20px)/1.22 var(--display);letter-spacing:-.01em;text-wrap:pretty}
.nc-list .nh-row a:hover .na-row-h{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}
.nc .ne-list{max-width:none}

.nc-guides{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.nc-guides a{display:grid;gap:6px;height:100%;padding:18px 20px;border-radius:var(--r);box-shadow:inset 0 0 0 1px var(--line-2);color:var(--ink);text-decoration:none;background:var(--paper)}
.nc-guides a:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.nc-guides__k{font:700 12px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.nc-guides__t{font:800 20px/1.2 var(--display);letter-spacing:-.015em;text-wrap:pretty}
.nc-guides--img a{grid-template-rows:auto auto 1fr;align-content:start;padding:0 0 18px;overflow:hidden}
.nc-guides--img .nc-guides__k,.nc-guides--img .nc-guides__t{padding-inline:20px}
.nc-guides__img{display:block;aspect-ratio:2/1;margin-bottom:8px;background:var(--yellow-soft)}
.nc-guides__img img{display:block;width:100%;height:100%;object-fit:cover}

.nc .nh-ad-slot{margin-top:clamp(32px,4vw,56px)}
.nc .nh-news{margin-top:clamp(48px,6vw,88px)}

@media (max-width:900px){
  .nc-pair{grid-template-columns:1fr}
  .nc-guides{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .nc-guides{grid-template-columns:1fr;gap:0;margin-top:0}
  .nc-guides a{padding:12px 0;border-radius:0;box-shadow:none;border-bottom:1px solid var(--line)} /* a plain list on phones: 13 cards stacked ran three screens */
  .nc-guides a:hover{box-shadow:none}
  .nc-guides__k{display:none}
  .nc-guides__t{font-size:17px}
  .nc-guides--img a{grid-template-columns:104px minmax(0,1fr);grid-template-rows:auto;align-items:center;gap:14px;padding:12px 0}
  .nc-guides--img .nc-guides__t{padding:0}
  .nc-guides__img{aspect-ratio:1;margin:0;border-radius:10px;overflow:hidden}
  .nc-counts b{font-size:24px}
}
