/*
Theme Name: Mosquito Hawk — Naive Anthropology 3.5.5
Theme URI: https://naiveanthropology.com/
Author: Mosquito Hawk
Description: A minimal, photo-forward home for long-form writing and Bindia photography, with real searchable maps.
Version: 3.5.7
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: naive-anthropology
*/

:root {
  --na-paper: #f3eee4;
  --na-ink: #191915;
  --na-muted: #6c685f;
  --na-line: rgba(25,25,21,.22);
  --na-rust: #a54d2b;
  --na-serif: Georgia, "Times New Roman", serif;
  --na-sans: "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
  --na-max: 1520px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--na-paper); color: var(--na-ink); font-family: var(--na-sans); -webkit-font-smoothing: antialiased; }
body.na-menu-open { overflow: hidden; }
a { color: inherit; }
img { display: block; max-width: 100%; height: auto; }
button, input, select { color: inherit; font: inherit; }
button { cursor: pointer; }
[hidden] { display: none !important; }
.screen-reader-text,.na-sr-only { position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.na-skip-link { position:fixed;z-index:100;left:1rem;top:1rem;transform:translateY(-180%);padding:.75rem 1rem;background:var(--na-ink);color:var(--na-paper); }
.na-skip-link:focus { transform:none; }

/* Permanent navigation */
body .na-site-header { position:sticky;z-index:1000;top:0;display:flex!important;align-items:center;justify-content:space-between;gap:2rem;max-width:var(--na-max);margin:0 auto;padding:1.3rem 2rem;background:rgba(243,238,228,.95);border-bottom:1px solid var(--na-line);backdrop-filter:blur(12px); }
.na-wordmark { display:inline-flex;align-items:center;gap:.72rem;font-family:var(--na-serif);font-size:clamp(1.25rem,2vw,1.75rem);font-weight:700;line-height:1;letter-spacing:-.035em;text-decoration:none; }
.na-wordmark-mark { width:1.15rem;height:1.7rem;flex:0 0 auto;color:currentColor;overflow:visible; }
.na-primary-nav { display:flex;align-items:center;gap:clamp(1.2rem,3vw,3rem); }
.na-primary-nav a { border-bottom:1px solid transparent;text-decoration:none;text-transform:uppercase;font-size:.73rem;font-weight:700;letter-spacing:.12em; }
.na-primary-nav a:hover,.na-primary-nav a:focus-visible,.na-primary-nav a[aria-current="page"] { border-color:currentColor; }
.na-menu-button { display:none;border:0;background:transparent;text-transform:uppercase;font-size:.73rem;letter-spacing:.12em; }

.na-main { max-width:var(--na-max);min-height:calc(100vh - 75px);margin:0 auto;padding:0 2rem; }
.na-site-footer { display:flex;align-items:center;justify-content:space-between;gap:1.25rem;max-width:var(--na-max);margin:0 auto;padding:1.5rem 2rem 2rem;border-top:1px solid var(--na-line);color:var(--na-muted); }
.na-site-footer p { margin:0;font-size:.66rem;text-transform:uppercase;letter-spacing:.1em; }
.na-footer-mark { width:.9rem;height:1.35rem;flex:0 0 auto;color:var(--na-muted); }
.na-empty { padding:12vh 0;text-align:center; }
.na-empty h1 { margin:0 0 1rem;font-family:var(--na-serif);font-size:clamp(3rem,8vw,7rem);font-weight:400;letter-spacing:-.05em; }
.na-byline,.na-meta { color:var(--na-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em; }

/* Latest post homepage */
.na-feature { padding:clamp(1rem,2.5vw,2.5rem) 0 5rem; }
.na-hero { margin:0; }
.na-hero img { width:100%;height:clamp(420px,65vw,820px);object-fit:cover;filter:saturate(.84) contrast(1.03); }
.na-hero figcaption,.na-image-caption { margin-top:.65rem;color:var(--na-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.13em; }
.na-story-grid { padding:2rem 0 3rem;border-bottom:1px solid var(--na-line); }
.na-story-grid-clean > div { width:min(1180px,100%); }
.na-display-title { max-width:100%;margin:0;font-family:var(--na-serif);font-size:clamp(3.4rem,7vw,7.5rem);font-weight:400;line-height:.92;letter-spacing:-.05em;overflow-wrap:normal;text-wrap:balance;word-break:normal; }
.na-display-title a { text-decoration:none; }
.na-display-title a:hover { font-style:italic; }
.na-dek { max-width:820px;margin:1.75rem 0 1.5rem;font-family:var(--na-serif);font-size:clamp(1.25rem,2vw,2rem);line-height:1.25; }
.na-home-content,.na-article-content { width:min(760px,100%);margin:3rem auto 0;font-family:var(--na-serif);font-size:clamp(1.16rem,1.65vw,1.45rem);line-height:1.7; }
.na-home-content>p:first-of-type::first-letter,.na-article-content>p:first-of-type::first-letter { float:left;margin:.05em .13em 0 0;font-size:4.4em;line-height:.72; }
.na-home-content p,.na-article-content p { margin:0 0 1.5rem;text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto; }
.na-home-content h2,.na-article-content h2 { margin:3.5rem 0 1.2rem;font-size:2.2rem;font-weight:400;line-height:1.08; }
.na-home-content blockquote,.na-article-content blockquote { margin:3rem -10%;padding:1.5rem 0;border-top:1px solid var(--na-line);border-bottom:1px solid var(--na-line);font-size:1.65rem;font-style:italic;line-height:1.35; }
.na-home-content figure,.na-article-content figure { position:relative;left:50%;width:min(1180px,calc(100vw - 4rem));margin:1.35rem 0;transform:translateX(-50%); }
.na-home-content figure img,.na-article-content figure img { width:100%;border-radius:10px; }
.na-home-content figcaption,.na-article-content figcaption { color:var(--na-muted);font-family:var(--na-sans);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em; }

/* Mosquito Hawk landing page */
.na-home-landing { padding-bottom:6rem; }
.na-home-map-section { padding:clamp(2rem,3.5vw,3.75rem) 0 clamp(3rem,6vw,6rem);border-bottom:1px solid var(--na-line); }
.na-home-poem { width:min(34rem,100%);margin:0 auto clamp(2rem,3.5vw,3.25rem);text-align:center; }
.na-home-poem p { margin:0;font-family:var(--na-serif);font-size:clamp(1.1rem,1.65vw,1.45rem);font-weight:400;line-height:1.4;letter-spacing:-.012em; }
.na-home-section-head,.na-project-heading { display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.5rem; }
.na-home-section-head span,.na-project-heading span { color:var(--na-muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.12em; }
.na-home-section-head h1,.na-project-heading h2 { margin:.25rem 0 0;font-family:var(--na-serif);font-size:clamp(2.25rem,4.5vw,5rem);font-weight:400;line-height:1;letter-spacing:-.04em;text-wrap:balance; }
.na-project-epigraph { max-width:37rem;margin:.9rem 0 0; }
.na-project-epigraph p { margin:0;color:var(--na-muted);font-family:var(--na-serif);font-size:clamp(.98rem,1.25vw,1.15rem);line-height:1.35; }
.na-project-epigraph cite { display:block;margin-top:.55rem;color:var(--na-muted);font-size:.58rem;font-style:normal;text-transform:uppercase;letter-spacing:.12em; }
.na-home-map { height:clamp(440px,61vw,720px);border-radius:10px;overflow:hidden; }
.na-map-legend { display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.7rem 1.25rem;padding-bottom:.3rem; }
.na-map-legend a { display:flex;align-items:center;gap:.45rem;text-decoration:none;text-transform:uppercase;font-size:.66rem;letter-spacing:.1em; }
.na-map-legend a:hover,.na-map-legend a:focus-visible,.na-map-legend a.is-active { text-decoration:underline;text-underline-offset:.25em; }
.na-legend-dot { width:.72rem;height:.72rem;border:2px solid var(--na-paper);border-radius:50%;box-shadow:0 0 0 1px var(--na-line); }
.na-legend-writing { --na-category-color:#a54d2b;background:var(--na-category-color); }
.na-legend-photography { --na-category-color:#3f7082;background:var(--na-category-color); }
.na-legend-poetry { --na-category-color:#427653;background:var(--na-category-color); }
.na-legend-vignette { --na-category-color:#c79a22;background:var(--na-category-color); }
.na-legend-fiction { --na-category-color:#77508f;background:var(--na-category-color); }
.na-legend-recording { --na-category-color:#ad526b;background:var(--na-category-color); }
.na-home-projects { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:clamp(2.5rem,5vw,6rem);padding:clamp(3rem,6vw,6rem) 0 0; }
.na-home-project { min-width:0; }
.na-project-heading { padding-bottom:1rem;border-bottom:1px solid var(--na-line); }
.na-project-heading h2 { font-size:clamp(2.2rem,4vw,4.4rem); }
.na-project-heading>a { flex:0 0 auto;padding-bottom:.35rem;text-decoration:none;text-transform:uppercase;font-size:.66rem;letter-spacing:.1em; }
.na-project-heading>a:hover { text-decoration:underline;text-underline-offset:.25em; }
.na-home-featured-essay a,.na-home-more-essays a,.na-home-photo-grid a { text-decoration:none; }
.na-home-featured-essay img { width:100%;max-height:620px;margin-bottom:1rem;border-radius:10px;object-fit:cover; }
.na-home-featured-essay h3 { margin:.45rem 0 .7rem;font-family:var(--na-serif);font-size:clamp(2.5rem,5vw,5.7rem);font-weight:400;line-height:.95;letter-spacing:-.045em;text-wrap:balance; }
.na-home-featured-essay p,.na-home-more-essays p { margin:0;color:var(--na-muted);font-family:var(--na-serif);font-size:1.05rem;line-height:1.5; }
.na-home-featured-essay a:hover h3,.na-home-more-essays a:hover h3 { font-style:italic; }
.na-home-featured-essay { transition:opacity .24s ease,transform .24s ease; }
.na-home-featured-essay.is-changing { opacity:.18;transform:translateY(4px); }
.na-home-featured-image[hidden] { display:none; }
.na-article-rotator-controls { display:flex;align-items:center;justify-content:flex-end;gap:.55rem;margin-top:1rem;color:var(--na-muted); }
.na-article-rotator-controls button { display:grid;place-items:center;width:2rem;height:2rem;padding:0;border:1px solid var(--na-line);border-radius:50%;background:transparent;font-family:var(--na-serif);font-size:1.05rem;line-height:1; }
.na-article-rotator-controls button:hover,.na-article-rotator-controls button:focus-visible { border-color:var(--na-ink);color:var(--na-ink); }
.na-article-rotator-count { min-width:3.5rem;font-size:.62rem;text-align:center;text-transform:uppercase;letter-spacing:.1em; }
.na-home-more-essays { display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:2.5rem; }
.na-home-more-essays article { padding-top:1rem;border-top:1px solid var(--na-line); }
.na-home-more-essays .na-story-thumbnail { width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:8px;margin:0 0 1rem; }
.na-home-more-essays h3 { margin:.45rem 0 .55rem;font-family:var(--na-serif);font-size:clamp(1.55rem,2.4vw,2.45rem);font-weight:400;line-height:1;letter-spacing:-.025em; }
.na-home-photo-grid { display:grid;grid-template-columns:1fr 1fr;gap:1rem; }
.na-home-photo-grid a { display:block;transition:opacity .24s ease,transform .24s ease; }
.na-home-photo-grid a.is-changing { opacity:.14;transform:translateY(3px); }
.na-home-photo-grid img { width:100%;aspect-ratio:4/5;border-radius:8px;object-fit:cover;filter:saturate(.88);transition:filter .2s,transform .2s; }
.na-home-photo-grid a:hover img { filter:saturate(1);transform:translateY(-2px); }
.na-home-photo-grid span { display:block;padding:.45rem .1rem 0;color:var(--na-muted);font-size:.6rem;line-height:1.3;text-transform:uppercase;letter-spacing:.08em; }
.na-home-poetry { grid-column:1/-1; }
.na-home-poetry-rotator { min-width:0; }
.na-home-poem-grid { display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2.5rem)/3);gap:1.25rem;overflow-x:auto;padding:.1rem 0 .5rem;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none; }
.na-home-poem-grid::-webkit-scrollbar { display:none; }
.na-home-poem-grid article { min-width:0;padding-top:1rem;border-top:1px solid var(--na-line);scroll-snap-align:start; }
.na-home-poem-grid a { text-decoration:none; }
.na-home-poem-grid h3 { margin:.5rem 0 .7rem;font-family:var(--na-serif);font-size:clamp(1.8rem,3vw,3.25rem);font-weight:400;line-height:1;letter-spacing:-.03em; }
.na-home-poem-grid p { max-width:42ch;max-height:9em;overflow:hidden;margin:0;color:var(--na-muted);font-family:var(--na-serif);font-size:1.05rem;line-height:1.5;white-space:pre-wrap; }
.na-home-poem-grid a:hover h3 { font-style:italic; }
.na-poetry-rotator-controls { display:flex;align-items:center;justify-content:flex-end;gap:.55rem;margin-top:1rem;color:var(--na-muted); }
.na-poetry-rotator-controls button { display:grid;place-items:center;width:2rem;height:2rem;padding:0;border:1px solid var(--na-line);border-radius:50%;background:transparent;font-family:var(--na-serif);font-size:1.05rem;line-height:1; }
.na-poetry-rotator-controls button:hover,.na-poetry-rotator-controls button:focus-visible { border-color:var(--na-ink);color:var(--na-ink); }
.na-poetry-rotator-controls span { min-width:3.5rem;font-size:.62rem;text-align:center;text-transform:uppercase;letter-spacing:.1em; }

/* Contact: readable spacing without a biography or a form. */
.na-contact { width:min(760px,100%);margin:0 auto;padding:clamp(3rem,8vw,7rem) 0 5rem; }
.na-contact h1 { margin:0 0 clamp(2rem,4vw,3.5rem);font-family:var(--na-serif);font-size:clamp(3rem,6vw,5.5rem);font-weight:400;line-height:1.12;letter-spacing:-.045em; }
.na-contact-body { font-family:var(--na-serif);font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.55; }
.na-contact-body > p { max-width:36ch; }
.na-contact-body p { margin:0 0 1.5rem;text-align:left; }
.na-contact-body .na-contact-intro { margin-bottom:1.25rem; }
.na-contact-details { margin-top:0; }
.na-contact-body a { text-underline-offset:.22em;text-decoration-thickness:1px;overflow-wrap:anywhere; }
.na-contact-body a:hover { color:var(--na-rust); }
.na-contact-body a:focus-visible,.na-site-credits summary:focus-visible { outline:2px solid var(--na-rust);outline-offset:5px; }
.na-contact-colophon { margin-top:clamp(2.5rem,5vw,4rem);padding-top:2rem;border-top:1px solid var(--na-line);font-family:var(--na-serif);font-size:1rem;line-height:1.65;color:var(--na-muted); }
.na-contact-colophon h2 { margin:0 0 1rem;font-size:1.65rem;line-height:1.25;font-weight:400;letter-spacing:-.02em;color:var(--na-ink); }
.na-contact-colophon h3 { margin:1.8rem 0 .75rem;font-family:var(--na-sans);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;font-weight:400;color:var(--na-ink); }
.na-contact-colophon p { margin-bottom:1rem; }
.na-contact-support { margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--na-line); }
.na-contact-support a { color:var(--na-ink); }
.na-site-credits { margin-top:2rem;padding:1.15rem 0;border-top:1px solid var(--na-line);border-bottom:1px solid var(--na-line); }
.na-site-credits summary { cursor:pointer;color:var(--na-ink);font-size:1.15rem;line-height:1.5;padding:.35rem 0; }
.na-site-credits[open] summary { margin-bottom:1.25rem; }
.na-site-credits ul { margin:0;padding-left:1.3rem; }
.na-site-credits li { margin:.4rem 0; }
.na-site-credits strong { color:var(--na-ink); }

/* Posts and pages */
.na-article { padding:2.5rem 0 6rem; }
.na-page { padding:clamp(2rem,6vw,6rem) 0; }
.na-article-header { width:min(1180px,100%);padding:2rem 0 2.75rem; }
.na-article-header h1 { max-width:100%;margin:1rem 0 0;font-family:var(--na-serif);font-size:clamp(4rem,7vw,7rem);font-weight:400;line-height:.92;letter-spacing:-.05em;overflow-wrap:normal;text-wrap:balance;word-break:normal; }
.na-article-header h1 a { text-decoration:none; }
.na-article-header h1 a:hover { font-style:italic; }
.na-article-header h1 + .na-byline { margin-top:1.25rem; }
.na-article-meta { display:flex;flex-wrap:wrap;gap:.28rem .65rem;color:var(--na-muted);font-size:.68rem;line-height:1.5;text-transform:uppercase;letter-spacing:.11em; }
.na-article-meta span+span::before { content:"\00b7";margin-right:.65rem; }
.na-article-hero { display:grid;justify-items:center;margin:0 0 4rem; }
.na-article-hero img { width:min(1180px,100%);height:auto;max-height:min(82vh,920px);border-radius:10px;object-fit:contain; }
.na-article[data-na-article-gallery] .na-article-hero img,.na-article[data-na-article-gallery] .na-article-content img { cursor:zoom-in; }
.na-article[data-na-article-gallery] img:focus-visible { outline:2px solid var(--na-rust);outline-offset:4px; }
.na-article-layout { width:100%; }
.na-article-layout .na-article-content { width:min(760px,100%);margin:0 auto; }
/* Native gallery children must not inherit the full-width standalone figure breakout. */
.na-article-content .wp-block-gallery figure.wp-block-image { position:relative;left:auto;transform:none;margin:0; }
.na-article-content .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { position:static;inset:auto;width:100%;max-height:none;margin:.65rem 0 0;padding:0;background:none;color:var(--na-muted);text-shadow:none;overflow:visible; }
.na-article-content .wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption)::before { display:none; }
.na-article-content .wp-block-gallery figure.wp-block-image img { cursor:zoom-in; }

/* A shared reading column on desktop. Mobile's existing reading layout stays intact. */
@media (min-width:721px) {
  .na-main > .na-article { width:min(880px,100%);margin-inline:auto;padding-top:2rem; }
  .na-article .na-article-header { width:100%;margin-inline:auto;padding-top:1.75rem;padding-bottom:2.25rem; }
  .na-article .na-article-header h1 { font-size:clamp(3rem,4.8vw,4.8rem);line-height:1.06;letter-spacing:-.04em; }
  .na-article .na-article-layout .na-article-content { width:100%;font-size:1.25rem;line-height:1.75; }
  .na-article .na-article-content > figure { position:static;left:auto;transform:none;width:100%;max-width:100%;margin:2rem 0; }
  .na-article .na-article-content > figure:not(.wp-block-gallery) img { width:auto;max-width:100%;max-height:82vh;margin-inline:auto;object-fit:contain; }
  .na-article .na-article-hero { width:100%;margin:0 auto 2.5rem; }
  .na-article .na-article-hero img { width:auto;max-width:100%;max-height:min(78vh,840px);object-fit:contain; }
  .na-article .na-article-content blockquote { margin-inline:0; }
}
.na-page-content { width:min(860px,100%);font-family:var(--na-serif);font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.65; }
.na-page-content>p:first-child { margin-top:0; }

/* Poetry */
.na-poetry-archive { padding:clamp(3rem,7vw,7rem) 0 6rem; }
.na-poetry-archive-header { padding-bottom:2rem;border-bottom:1px solid var(--na-line); }
.na-poetry-archive-header span { color:var(--na-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em; }
.na-poetry-archive-header h1 { margin:0;font-family:var(--na-serif);font-size:clamp(2rem,4vw,3.5rem);font-weight:400;line-height:1.15;letter-spacing:-.03em; }
.na-poetry-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:3rem 1.25rem;padding-top:2rem; }
.na-poetry-card { min-width:0;border:1px solid var(--na-line);border-radius:10px;overflow:hidden; }
.na-poetry-card a { display:block;height:100%;padding:1.5rem;text-decoration:none; }
.na-poetry-card a:hover,.na-poetry-card a:focus-visible { background:rgba(0,0,0,.025); }
.na-poetry-card h2 { margin:0 0 1rem;font-family:var(--na-serif);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:400;line-height:1.2;letter-spacing:-.025em;overflow-wrap:anywhere; }
.na-poetry-card .na-poem-preview { white-space:pre-wrap;overflow-wrap:anywhere;max-height:18em;overflow:hidden; }
.na-poetry-card p { max-width:42ch;margin:0;color:var(--na-muted);font-family:var(--na-serif);font-size:1.02rem;line-height:1.5; }
.na-poetry-card a:hover h2 { font-style:italic; }
.na-poem { padding:clamp(2.5rem,6vw,6rem) 0 7rem; }
.na-poem-header { width:min(760px,100%);margin:0 auto; }
.na-poem-header h1 { margin:0;font-family:var(--na-serif);font-size:clamp(2rem,4vw,3.5rem);font-weight:400;line-height:1.2;letter-spacing:-.03em;overflow-wrap:anywhere; }
.na-poem-header .na-byline { margin-top:1.3rem; }
.na-poem-image { width:min(980px,100%);margin:3rem 0 0; }
.na-poem-image img { width:100%;max-height:78vh;border-radius:10px;object-fit:contain; }
.na-poem-content { width:min(760px,100%);margin:2rem auto 0;font-family:var(--na-serif);font-size:clamp(1.1rem,1.7vw,1.4rem);line-height:1.8;overflow-wrap:anywhere; }
.na-poem-content:first-child { margin-top:0; }
.na-poem-content p { margin:0 0 1.75rem; }
.na-poem-content .wp-block-verse,.na-poem-content pre { overflow:visible;margin:0 0 2rem;padding:0;border:0;background:transparent;color:inherit;font:inherit;line-height:inherit;white-space:pre-wrap; }

/* Search + maps */
.na-writing-page-heading { display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:2rem;align-items:end;padding:clamp(2rem,4vw,4rem) 0 1.75rem;border-bottom:1px solid var(--na-line); }
.na-writing-page-heading h1 { margin:0;font-family:var(--na-serif);font-size:clamp(2.8rem,5vw,5.25rem);font-weight:400;line-height:1;letter-spacing:-.04em;text-wrap:balance; }
.na-writing-page-heading .na-project-epigraph { margin:0; }
.na-explorer { padding:1.25rem 0 5rem; }
.na-map-tools { display:grid;grid-template-columns:minmax(300px,1fr) auto;gap:1rem;align-items:center;padding:.8rem 0 1rem;border-bottom:1px solid var(--na-line); }
.na-search { display:flex;align-items:center;gap:.75rem;padding:.8rem 0; }
.na-search svg { width:24px;flex:0 0 24px;fill:none;stroke:currentColor;stroke-width:1.5; }
.na-search input { width:100%;border:0;outline:0;background:transparent;font-family:var(--na-serif);font-size:clamp(1.2rem,2vw,1.55rem); }
.na-filters { display:flex;gap:.45rem; }
.na-filters select,.na-quiet-button { border:1px solid var(--na-line);border-radius:100px;background:transparent;padding:.62rem .85rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em; }
.na-quiet-button:hover { background:var(--na-ink);color:var(--na-paper); }
.na-map-layout { display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.75fr);gap:2rem;padding:2rem 0 0;align-items:start; }
.na-map-frame { position:sticky;top:92px; }
.na-real-map { width:100%;height:clamp(470px,70vh,780px);border:1px solid var(--na-line);background:#e7e0d3; }
.na-real-map .leaflet-tile { filter:grayscale(1) sepia(.16) contrast(.92); }
.na-real-map .leaflet-control-zoom a { color:var(--na-ink);background:var(--na-paper); }
.na-real-map .leaflet-control-attribution { background:rgba(243,238,228,.86);font-size:9px; }
.na-results-meta { display:flex;justify-content:space-between;padding-bottom:1rem;color:var(--na-muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.1em; }
.na-result-card { display:grid;grid-template-columns:84px 1fr;gap:1rem;padding:1rem 0;border-top:1px solid var(--na-line);text-decoration:none; }
.na-result-card:last-child { border-bottom:1px solid var(--na-line); }
.na-result-card img { width:84px;height:84px;object-fit:cover;filter:saturate(.78); }
.na-result-card h2 { margin:.15rem 0 .55rem;font-family:var(--na-serif);font-size:1.32rem;font-weight:400;line-height:1.05; }
.na-result-card:hover h2 { text-decoration:underline;text-underline-offset:.2em; }
.na-result-place,.na-result-themes { color:var(--na-muted);font-size:.63rem;text-transform:uppercase;letter-spacing:.1em; }
.na-result-themes { margin-top:.35rem; }
.na-no-results { padding:3rem 0;font-family:var(--na-serif);font-size:1.2rem; }
.na-map-popup { display:grid;gap:.4rem;min-width:150px;color:var(--na-ink)!important;text-decoration:none; }
button.na-map-popup { width:100%;padding:0;border:0;background:transparent;text-align:left; }
.na-map-popup img { width:100%;height:105px;object-fit:cover; }
.na-map-popup .na-map-popup-image { height:145px;border-radius:6px;transition:opacity .2s ease; }
.na-map-popup strong { font-family:var(--na-serif);font-size:1.05rem;line-height:1.1; }
.na-map-popup span { color:var(--na-muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em; }
.na-map-cluster-marker { border:0;background:transparent; }
.na-map-cluster-disc { position:relative;display:grid;width:48px;height:48px;place-items:center;border:3px solid var(--na-paper);border-radius:50%;box-shadow:0 2px 10px rgba(25,25,21,.25); }
.na-map-cluster-disc::after { content:"";position:absolute;inset:7px;border-radius:50%;background:var(--na-paper); }
.na-map-cluster-disc b { position:relative;z-index:1;font-family:var(--na-sans);font-size:.72rem;line-height:1; }
.na-cluster-popup { display:grid;gap:.65rem;width:min(270px,72vw);overflow:hidden;color:var(--na-ink); }
.na-cluster-popup-header { display:grid;gap:.45rem; }
.na-cluster-popup-header strong { font-family:var(--na-serif);font-size:1.12rem;font-weight:700;line-height:1.1; }
.na-cluster-filters { display:flex;flex-wrap:wrap;gap:.3rem; }
.na-cluster-filter { padding:.28rem .48rem;border:1px solid var(--na-line);border-radius:100px;background:transparent;font-size:.56rem;text-transform:uppercase;letter-spacing:.07em; }
.na-cluster-filter.is-active { background:var(--na-ink);color:var(--na-paper); }
.na-cluster-card { position:relative;display:grid;gap:.42rem;min-height:68px;color:inherit;text-decoration:none; }
.na-cluster-card::before,.na-cluster-card::after { content:"";pointer-events:none;position:absolute;z-index:2;top:0;bottom:0;width:15px;opacity:.7; }
.na-cluster-card::before { left:-1px;background:linear-gradient(90deg,var(--na-paper),transparent); }
.na-cluster-card::after { right:-1px;background:linear-gradient(-90deg,var(--na-paper),transparent); }
.na-cluster-card img { width:100%;height:132px;border-radius:6px;object-fit:cover; }
.na-cluster-card h3 { margin:0;padding:0 .4rem;font-family:var(--na-serif);font-size:1.15rem;font-weight:400;line-height:1.08; }
.na-cluster-card span { padding:0 .4rem;color:var(--na-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.08em; }
.na-cluster-controls { display:grid;grid-template-columns:2.15rem 1fr 2.15rem;align-items:center;gap:.35rem;border-top:1px solid var(--na-line);padding-top:.5rem; }
.na-cluster-controls button { display:grid;width:2.15rem;height:2.15rem;place-items:center;padding:0;border:1px solid var(--na-line);border-radius:50%;background:transparent;font-family:var(--na-serif);font-size:1.15rem; }
.na-cluster-controls button:hover,.na-cluster-controls button:focus-visible { border-color:var(--na-ink); }
.na-cluster-count { color:var(--na-muted);font-size:.6rem;text-align:center;text-transform:uppercase;letter-spacing:.08em; }

/* Bindia */
.na-bindia { padding-top:1.25rem; }
.na-photo-map-wrap { padding:2rem 0; }
.na-photo-map { height:clamp(390px,58vh,650px); }
.na-photo-map:not(.leaflet-container) { display:grid;place-items:center;background:rgba(25,25,21,.055);color:var(--na-muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.12em; }
.na-photo-map:not(.leaflet-container)::before { content:"Loading map…"; }
.na-photo-results-meta { padding:0 0 1.25rem;border-bottom:1px solid var(--na-line); }
.na-location-gallery-heading { display:flex;align-items:end;justify-content:space-between;gap:1.5rem;padding:1.4rem 0 1rem;border-bottom:1px solid var(--na-line); }
.na-location-gallery-heading[hidden] { display:none; }
.na-location-gallery-heading span { color:var(--na-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em; }
.na-location-gallery-heading h2 { margin:.2rem 0 0;font-family:var(--na-serif);font-size:clamp(2rem,4vw,4rem);font-weight:400;line-height:1;letter-spacing:-.035em; }
.na-photo-grid { columns:4;column-gap:.85rem;padding-top:1rem; }
.na-photo-card { break-inside:avoid;margin:0 0 1.15rem; }
.na-photo-open { display:block;width:100%;padding:0;border:0;background:transparent;text-align:left; }
.na-photo-open,.na-place-photo-grid button { position:relative; }
.na-home-photo-grid a { position:relative; }
.na-home-photo-grid .na-video-badge { display:grid;top:40%;padding:0 0 0 .18rem;color:#fff;font-size:1.2rem;letter-spacing:0; }
.na-video-badge { position:absolute;z-index:3;left:50%;top:50%;display:grid;place-items:center;width:3.1rem;height:3.1rem;padding-left:.18rem;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(17,27,20,.7);color:#fff;font-size:1.2rem;line-height:1;transform:translate(-50%,-50%);pointer-events:none;backdrop-filter:blur(8px); }
.na-place-photo-grid .na-video-badge { width:2.3rem;height:2.3rem;font-size:.95rem; }
.na-photo-open img { width:100%;height:auto;border-radius:7px;filter:saturate(.88) contrast(1.025);transition:filter .2s,transform .2s; }
.na-photo-open:hover img,.na-photo-open:focus-visible img { filter:saturate(1);transform:translateY(-2px); }
.na-photo-open:focus-visible { outline:2px solid var(--na-rust);outline-offset:4px;border-radius:7px; }
.na-photo-load-more { display:grid;place-items:center;gap:.6rem;min-height:7rem;padding:1rem 0 2rem; }
.na-photo-load-more .na-quiet-button { min-width:12rem;background:var(--na-paper); }
.na-photo-load-more span { color:var(--na-muted);font-size:.62rem;text-transform:uppercase;letter-spacing:.1em; }
.na-photo-caption { display:flex;flex-wrap:wrap;gap:.18rem .42rem;padding:.48rem .12rem 0;color:var(--na-muted);font-size:.61rem;line-height:1.35;text-transform:uppercase;letter-spacing:.08em; }
.na-photo-caption button { padding:0;border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;text-decoration:underline;text-decoration-color:rgba(108,104,95,.45);text-underline-offset:.18em; }
.na-photo-caption button:hover,.na-photo-caption button:focus-visible { color:#3f7082;text-decoration-color:currentColor; }
.na-photo-caption>*+*::before { content:"·";margin-right:.42rem; }

/* Bindia lightbox */
body.na-lightbox-open { overflow:hidden; }
.na-lightbox { position:fixed;z-index:5000;inset:0;display:grid;grid-template-columns:4.5rem minmax(0,1fr) 4.5rem;grid-template-rows:minmax(0,1fr) auto;align-items:center;background:rgba(12,12,11,.96);color:#f7f3ea; }
.na-lightbox[hidden] { display:none!important; }
.na-lightbox-stage { grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;padding:1.2rem 0 .7rem; }
.na-lightbox-backdrop { display:none; }
.na-lightbox-image { display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 8rem);border-radius:8px;object-fit:contain;box-shadow:0 12px 44px rgba(0,0,0,.32);transition:opacity .16s ease,transform .16s ease; }
.na-lightbox-image[hidden],.na-lightbox-video[hidden] { display:none!important; }
.na-lightbox-video { position:relative;z-index:3;display:block;width:auto;max-width:100%;max-height:calc(100dvh - 7rem);aspect-ratio:auto;border-radius:8px;background:#111;box-shadow:0 12px 44px rgba(0,0,0,.32); }
.na-lightbox.is-video .na-lightbox-zoom-controls { display:none; }
.na-lightbox-image.is-changing { opacity:.24; }
.na-lightbox-image.is-swiping { transition:none; }
.na-lightbox-image.is-zooming { transition:none; }
.na-lightbox-close,.na-lightbox-arrow { position:absolute;display:grid;place-items:center;border:0;background:transparent;color:inherit;font-size:2rem;line-height:1; }
.na-lightbox-zoom-controls { position:absolute;z-index:4;top:.85rem;left:.85rem;display:flex;gap:.35rem; }
.na-lightbox-zoom-controls button { display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(12,12,11,.25);color:#fff;font-size:1.2rem;line-height:1;backdrop-filter:blur(10px); }
.na-lightbox-zoom-controls button:disabled { opacity:.32; }
@media (min-width:721px) {
  .na-lightbox-zoom-controls button:focus-visible { outline:2px solid #d68a68;outline-offset:3px; }
}
.na-lightbox-close { z-index:2;top:.7rem;right:.85rem;width:2.8rem;height:2.8rem;font-family:var(--na-sans);font-size:1.65rem; }
.na-lightbox-arrow { position:relative;width:100%;height:100%;font-family:var(--na-serif);font-size:3.2rem; }
.na-lightbox-prev { grid-column:1;grid-row:1; }
.na-lightbox-next { grid-column:3;grid-row:1; }
.na-lightbox-close:hover,.na-lightbox-arrow:hover,.na-lightbox-close:focus-visible,.na-lightbox-arrow:focus-visible { color:#d68a68; }
.na-lightbox-details { grid-column:1/-1;grid-row:2;display:flex;justify-content:center;flex-wrap:wrap;gap:.25rem .6rem;min-height:3.7rem;padding:.85rem 4.5rem 1rem;color:rgba(247,243,234,.72);font-size:.67rem;line-height:1.4;text-align:center;text-transform:uppercase;letter-spacing:.1em; }
.na-lightbox-details button { padding:0;border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;text-decoration:underline;text-underline-offset:.18em; }
.na-lightbox-details button:hover,.na-lightbox-details button:focus-visible { color:#d68a68; }
.na-lightbox-details>*+*::before { content:"·";margin-right:.6rem; }
.na-lightbox-count { color:rgba(247,243,234,.42); }

/* Direct Bindia photograph links */
.na-photo-single { padding:clamp(1.2rem,3vw,3rem) 0 4rem; }
.na-photo-single-frame { display:flex;justify-content:center; }
.na-photo-single-frame img { width:auto;height:auto;max-width:100%;max-height:78vh;border-radius:8px;object-fit:contain; }
.na-photo-single-meta { display:flex;justify-content:center;flex-wrap:wrap;gap:.22rem .55rem;padding:.9rem 0;color:var(--na-muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.09em; }
.na-photo-single-meta span+span::before { content:"·";margin-right:.55rem; }
.na-photo-single-content { width:min(720px,100%);margin:1.5rem auto 0;font-family:var(--na-serif);font-size:1.15rem;line-height:1.65; }

/* Fallback archives */
.na-archive { padding:5rem 0; }
.na-archive-header h1 { margin:0 0 3rem;font-family:var(--na-serif);font-size:clamp(4rem,10vw,9rem);font-weight:400;letter-spacing:-.05em; }
.na-archive-list { display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 1rem; }
.na-archive-card { border-top:1px solid var(--na-line);padding-top:1rem; }
.na-archive-card a { text-decoration:none; }
.na-archive-card img { width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:1rem; }
.na-archive-card h2 { margin:.4rem 0;font-family:var(--na-serif);font-size:1.7rem;font-weight:400; }

@media (max-width:960px) {
	.na-home-projects { grid-template-columns:1fr; }
	.na-poetry-grid { grid-template-columns:repeat(2,1fr); }
  .na-map-tools { grid-template-columns:1fr; }
  .na-filters { flex-wrap:wrap; }
  .na-map-layout { grid-template-columns:1fr; }
  .na-map-frame { position:relative;top:auto; }
  .na-real-map { height:520px; }
  .na-photo-grid { columns:3; }
  .na-archive-list { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:720px) {
  .na-site-header,.na-main,.na-site-footer { padding-left:1rem;padding-right:1rem; }
  .na-site-header { padding-top:1rem;padding-bottom:1rem;background:var(--na-paper);backdrop-filter:none; }
  .na-menu-button { position:relative;z-index:2;display:block;min-width:4.75rem;padding:.5rem 0;border:0;background:transparent;text-align:right; }
  .na-primary-nav { position:absolute;z-index:1;top:100%;right:0;left:0;display:none;height:calc(100dvh - 100%);min-height:calc(100vh - 57px);overflow-y:auto;flex-direction:column;align-items:flex-start;gap:1.25rem;padding:2rem 1rem 3rem;background:var(--na-paper);border-top:1px solid var(--na-line); }
  .na-primary-nav.is-open { display:flex!important; }
  .na-primary-nav a { font-family:var(--na-serif);font-size:clamp(2.2rem,11vw,3.5rem);letter-spacing:-.04em;text-transform:none; }
  .na-hero img { height:58vh;min-height:380px; }
  .na-display-title { font-size:clamp(3.15rem,13.5vw,4.5rem);line-height:.94; }
	.na-home-map-section { padding-top:1.75rem; }
	.na-home-poem { margin-bottom:2.25rem; }
	.na-home-poem p { font-size:1.08rem;line-height:1.42; }
	.na-home-section-head,.na-project-heading { align-items:flex-start;flex-direction:column;gap:.9rem; }
	.na-map-legend { justify-content:flex-start; }
	.na-home-map { height:54vh;min-height:390px; }
	.na-home-projects { gap:4rem; }
	.na-home-more-essays { grid-template-columns:1fr; }
	.na-home-poem-grid { grid-auto-columns:min(86%,22rem); }
	.na-poetry-grid { grid-template-columns:1fr; }
	.na-home-photo-grid { gap:.65rem; }
	.na-writing-page-heading { grid-template-columns:1fr;gap:1.25rem;padding:1.75rem 0 1.5rem; }
	.na-writing-page-heading h1 { font-size:clamp(2.6rem,13vw,4rem); }
  .na-filters { display:grid;grid-template-columns:1fr 1fr; }
  .na-filters select,.na-quiet-button { min-width:0;width:100%; }
  .na-real-map,.na-photo-map { height:55vh;min-height:360px; }
  .na-photo-grid { columns:2;column-gap:.65rem; }
  .na-photo-card { margin-bottom:.9rem; }
  .na-location-gallery-heading { align-items:start;flex-direction:column;gap:.8rem; }
  .na-photo-caption { font-size:.56rem;letter-spacing:.055em; }
  .na-lightbox { display:block;width:100vw;height:100dvh;overflow:hidden;background:#11110f;isolation:isolate; }
  .na-lightbox-stage { position:absolute;z-index:1;inset:0;display:flex;padding:0;overflow:hidden;touch-action:none;overscroll-behavior:contain; }
  .na-lightbox-stage::after { content:"";pointer-events:none;position:absolute;z-index:1;inset:0;background:rgba(8,8,7,.04); }
  .na-lightbox-backdrop { position:absolute;z-index:0;inset:-12%;display:block;width:124%;height:124%;max-width:none;object-fit:cover;filter:blur(34px) brightness(.7) saturate(1.28);opacity:1;transform:scale(1.12); }
  .na-lightbox-image { position:relative;z-index:2;width:100%;height:100%;max-width:none;max-height:none;border-radius:0;object-fit:contain;box-shadow:none;will-change:transform,opacity; }
  .na-lightbox-close { z-index:4;top:max(.6rem,env(safe-area-inset-top));right:.65rem;width:2.25rem;height:2.25rem;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(12,12,11,.25);font-size:1.15rem;backdrop-filter:blur(10px); }
  .na-lightbox-zoom-controls { position:absolute;z-index:4;top:max(.6rem,env(safe-area-inset-top));left:.65rem;display:flex;gap:.35rem; }
  .na-lightbox-zoom-controls button { display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(12,12,11,.25);color:#fff;font-size:1.2rem;line-height:1;backdrop-filter:blur(10px); }
  .na-lightbox-zoom-controls button:disabled { opacity:.32; }
  .na-lightbox-arrow { display:none; }
  .na-lightbox-details { position:absolute;z-index:4;right:0;bottom:0;left:0;display:flex;min-height:0;padding:4rem 1rem max(1rem,env(safe-area-inset-bottom));background:linear-gradient(transparent,rgba(8,8,7,.66));font-size:.57rem; }
  .na-lightbox.is-zoomed .na-lightbox-details { opacity:0;pointer-events:none; }
  .na-article-header { padding-top:1.8rem;padding-bottom:2.2rem; }
  .na-article-header h1 { margin-top:.8rem;font-size:clamp(3.2rem,14vw,4.35rem);line-height:.94;letter-spacing:-.045em; }
  .na-article-hero { margin-bottom:3rem; }
  .na-article-hero img { width:100%;max-height:none; }
  .na-home-content blockquote,.na-article-content blockquote { margin-left:0;margin-right:0; }
  .na-home-content figure,.na-article-content figure { position:static;left:auto;width:auto;margin:1.1rem 0;transform:none; }
  .na-archive-list { grid-template-columns:1fr; }
	.na-wordmark { gap:.55rem; }
	.na-wordmark-mark { width:1rem;height:1.48rem; }
	.na-site-footer { align-items:flex-start; }
	.na-site-footer p { max-width:18rem;line-height:1.5; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important; } }

.na-result-card.na-result-poem { grid-template-columns:minmax(0,1fr);border-left:3px solid #427653;padding-left:1rem; }
.na-result-card.na-result-vignette { border-left:3px solid #c79a22;padding-left:1rem; }
.na-result-card.na-result-fiction { border-left:3px solid #77508f;padding-left:1rem; }
.na-result-poem .na-poem-preview { margin:.5rem 0 0;font-family:var(--na-serif);font-size:1rem;line-height:1.5; }
.na-poem-preview { white-space:pre-wrap;overflow-wrap:anywhere; }
.na-writing-legend { justify-content:flex-start;margin-bottom:1rem; }

.na-writing-legend>a { display:flex;align-items:center;gap:.45rem;font-size:.66rem;text-transform:uppercase;letter-spacing:.1em; }
.na-map-popup-poems { min-width:180px; }
.na-map-popup>a { color:inherit;text-decoration:none; }
.na-map-popup>a:hover { text-decoration:underline;text-underline-offset:.18em; }
.na-poem-popup-controls { display:grid;grid-template-columns:2.2rem 1fr 2.2rem;align-items:center;gap:.35rem;margin-top:.65rem;padding-top:.5rem;border-top:1px solid var(--na-line); }
.na-poem-popup-controls button { display:grid;place-items:center;min-width:2.2rem;min-height:2.2rem;padding:0;border:1px solid var(--na-line);border-radius:50%;background:transparent;font-size:1.15rem;line-height:1; }
.na-poem-popup-controls button:hover,.na-poem-popup-controls button:focus-visible { border-color:var(--na-ink);background:rgba(25,25,21,.06); }
.na-poem-popup-controls span { color:var(--na-muted);font-size:.62rem;text-align:center;text-transform:uppercase;letter-spacing:.08em; }
.na-popup-title-fade { animation:na-popup-title-fade .22s ease; }
@keyframes na-popup-title-fade { from { opacity:.25;transform:translateY(2px); } to { opacity:1;transform:none; } }
@media (prefers-reduced-motion:reduce) { .na-popup-title-fade { animation:none; } }
/* Place collections: original Mosquito Hawk map treatment. */
.na-map-shell { position:relative;isolation:isolate; }
.na-place-marker { background:none;border:0; }
.na-place-pin { display:flex;flex-direction:column;align-items:center;gap:4px;width:120px;color:var(--na-ink); }
.na-pin-photo { position:relative;display:block;width:48px;height:48px;padding:2px;border:1px solid rgba(25,25,21,.22);border-radius:12px;background:var(--na-paper);box-shadow:0 2px 7px #1919152b; }
.na-pin-photo.is-stack::before { content:"";position:absolute;inset:-3px 3px 3px -3px;z-index:-1;border:1px solid #19191533;border-radius:12px;background:#ebe3d4;transform:rotate(-7deg); }
.na-pin-photo img { width:100%;height:100%;object-fit:cover;border-radius:9px; }
.na-pin-photo b { position:absolute;right:-9px;bottom:-4px;min-width:22px;padding:3px 5px;border:1px solid #ffffff99;border-radius:9px;background:#3f7082;color:#fff;font:600 10px/1 var(--na-sans);text-align:center; }
.na-pin-photo-fallback { display:grid;place-items:center;height:100%;font:10px var(--na-sans); }
.na-pin-writing { display:flex;align-items:center;gap:5px;width:max-content;max-width:170px;padding:5px 8px;background:var(--na-paper);border:1px solid #19191526;border-radius:5px;box-shadow:0 1px 4px #1919151a;font:12px/1.2 var(--na-serif);overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.na-pin-writing i { flex:0 0 7px;height:7px;border-radius:50%;background:var(--pin-color); }
.na-pin-place { max-width:132px;padding:2px 5px;border-radius:3px;background:rgba(243,238,228,.93);font:10px/1.2 var(--na-sans);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.na-place-marker:focus-visible,.na-place-marker.is-highlighted { outline:2px solid var(--na-ink);outline-offset:6px;border-radius:5px;z-index:900!important; }
.na-place-marker:hover .na-pin-photo,.na-place-marker:hover .na-pin-writing { border-color:var(--na-ink); }
.na-place-panel { position:absolute;z-index:900;top:12px;right:12px;display:flex;flex-direction:column;width:min(360px,calc(100% - 70px));max-height:calc(100% - 42px);background:var(--na-paper);border:1px solid var(--na-line);border-radius:12px;box-shadow:0 12px 38px #19191530;overflow:hidden;color:var(--na-ink);font-family:var(--na-sans); }
.na-place-panel-head { display:flex;align-items:start;justify-content:space-between;gap:12px;padding:20px 14px 12px 20px; }
.na-place-eyebrow { display:block;color:var(--na-muted);font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:6px; }
.na-place-panel-head h2 { margin:0;font:normal 23px/1.1 var(--na-serif);letter-spacing:-.025em;text-wrap:balance; }
.na-place-panel button { color:var(--na-ink); }
.na-place-panel-head button { flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid var(--na-line);border-radius:50%;background:transparent;font:26px/1 var(--na-sans); }
.na-place-tabs { display:flex;flex-wrap:wrap;gap:6px;padding:0 18px 12px;border-bottom:1px solid var(--na-line); }
.na-place-tabs button { min-height:36px;padding:6px 10px;border:1px solid var(--na-line);border-radius:5px;background:transparent;font:11px/1.2 var(--na-sans); }
.na-place-tabs button[data-kind]:not([data-kind="all"]) { border-bottom:3px solid var(--pin-color); }
.na-place-tabs button[aria-pressed="true"] { background:var(--na-ink);color:var(--na-paper); }
.na-place-content { flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bcb4a6 transparent;padding:16px 18px 22px; }
.na-place-writing-list { display:grid;gap:8px; }
.na-place-writing-link { display:grid;gap:6px;min-height:48px;padding:11px 12px;border-left:3px solid var(--pin-color);border-bottom:1px solid var(--na-line);text-decoration:none; }
.na-place-writing-link span { font:20px/1.2 var(--na-serif); }
.na-place-writing-link small { color:var(--na-muted);font:10px/1.2 var(--na-sans);letter-spacing:.08em;text-transform:uppercase; }
.na-place-writing-link:hover span { text-decoration:underline;text-underline-offset:3px; }
.na-place-writing-list + .na-place-photo-grid { margin-top:20px; }
.na-place-recording-list { display:grid;gap:12px;margin:16px 0; }
.na-place-recording { padding:12px;border:1px solid var(--na-line);border-left:3px solid #ad526b;border-radius:7px;background:#fff8; }
.na-place-recording>a { color:var(--na-ink);font:20px/1.2 var(--na-serif);text-decoration:none; }
.na-place-recording>a:hover { text-decoration:underline;text-underline-offset:3px; }
.na-place-recording p { margin:7px 0;color:var(--na-muted);font:13px/1.45 var(--na-serif); }
.na-place-recording audio { display:block;width:100%;height:42px;margin-top:10px; }
.na-place-photo-grid { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.na-place-photo-grid button { padding:0;border:0;border-radius:6px;background:#e0d8cb;overflow:hidden;aspect-ratio:1; }
.na-place-photo-grid img { width:100%;height:100%;object-fit:cover;transition:transform .18s ease; }
.na-place-photo-grid button:hover img { transform:scale(1.04); }
.na-place-panel-foot { border-top:1px solid var(--na-line);padding:8px 18px; }
.na-place-panel-foot button { width:100%;min-height:44px;border:0;background:transparent;font-size:12px;text-align:left;text-decoration:underline;text-underline-offset:4px; }
.na-place-panel :focus-visible { outline:2px solid var(--na-ink);outline-offset:2px; }
.na-map-tile-notice { position:absolute;z-index:500;left:54px;top:12px;max-width:calc(100% - 75px);padding:7px 10px;border-radius:5px;background:var(--na-paper);color:var(--na-muted);font:12px/1.3 var(--na-sans);pointer-events:none; }
@media(max-width:600px) {
  .na-map-shell:has(.na-place-panel:not([hidden])) { z-index:1100; }
  .na-place-panel { position:fixed;top:auto;left:8px;right:8px;bottom:8px;bottom:max(8px,env(safe-area-inset-bottom));width:auto;max-height:60vh;max-height:60dvh;border-radius:16px; }
  .na-place-panel-head { padding:16px 12px 10px 16px; }
  .na-place-panel-head h2 { font-size:22px; }
  .na-place-tabs { flex-wrap:nowrap;overflow-x:auto;padding:0 14px 10px;flex-shrink:0; }
  .na-place-tabs button { flex-shrink:0;min-height:44px; }
  .na-place-content { padding:12px 14px 18px; }
}
@media(prefers-reduced-motion:reduce) {
  .na-place-photo-grid img { transition:none; }
}

.na-short-writing-kind { display:flex;align-items:center;gap:.45rem;color:var(--na-muted);font-family:var(--na-sans);font-size:.66rem;text-transform:uppercase;letter-spacing:.1em; }
.na-home-short-writing .na-home-poem-grid p { white-space:normal; }
.na-reading-back { display:inline-block;margin:0 0 1.25rem;color:var(--na-muted);font-family:var(--na-sans);font-size:.68rem;letter-spacing:.06em;text-decoration:none; }
.na-reading-type { display:inline-flex;align-items:center;gap:.45rem; }
.na-article-meta>span { display:inline-flex;align-items:center; }
.na-article-meta a,.na-byline a,.na-image-caption a { color:inherit;text-decoration:none; }
.na-reading-back:hover,.na-reading-back:focus-visible,.na-article-meta a:hover,.na-article-meta a:focus-visible,.na-byline a:hover,.na-byline a:focus-visible,.na-image-caption a:hover,.na-image-caption a:focus-visible { text-decoration:underline;text-underline-offset:.22em; }
.na-reading-type .na-legend-dot { flex-shrink:0; }
.na-poem-navigation { width:min(760px,100%);margin:0 auto 1.5rem; }
.na-location-filter { grid-column:1/-1;display:flex;align-items:center;gap:.75rem;font-size:.75rem;color:var(--na-muted); }
.na-location-filter[hidden] { display:none; }
.na-location-filter button { border:1px solid var(--na-line);border-radius:50%;width:1.65rem;height:1.65rem;padding:0;background:none;color:var(--na-ink); }

/* Place names first; photographs and category counts appear on demand. */
.na-home-map-toolbar { justify-content:flex-end;min-height:0; }
.na-place-label-marker { display:flex;align-items:center;justify-content:center; }
.na-place-label { display:inline-flex;align-items:center;gap:6px;max-width:140px;padding:7px 9px;border:1px solid var(--na-line);border-radius:14px;background:var(--na-paper);color:var(--na-ink);font:12px/1.25 var(--na-sans);text-align:center;box-shadow:0 1px 4px #19191512; }
.na-place-label i { width:5px;height:5px;flex-shrink:0;border-radius:50%;background:var(--na-ink); }
.na-place-label-marker:hover .na-place-label { border-color:var(--na-ink); }
.na-place-preview-tooltip.leaflet-tooltip { padding:12px;border:1px solid var(--na-line);border-radius:12px;background:var(--na-paper);color:var(--na-ink);box-shadow:0 5px 20px #19191524;white-space:normal; }
.na-map-preview { display:flex;flex-direction:column;align-items:center;gap:8px;min-width:130px;max-width:210px; }
.na-map-preview strong { font:16px/1.25 var(--na-serif);text-align:center; }
.na-map-preview small { color:var(--na-muted);font:10px/1.3 var(--na-sans); }
.na-map-preview .na-pin-title { max-width:210px;white-space:normal;text-align:left; }
.na-pin-title > span { overflow-wrap:anywhere; }
.na-pin-title > i,.na-pin-title > small { flex-shrink:0; }
.na-place-preview-tooltip.leaflet-tooltip-top:before { border-top-color:var(--na-paper); }

/* Photo bubbles stay visible; place/category details are disclosed on interaction. */
.na-home-map-toolbar,.na-home-map-toolbar .na-map-legend { justify-content:flex-start; }
.na-photo-bubble-marker .na-pin-photo { margin:0; }
.na-pin-symbol { display:block;width:100%;height:100%;background:var(--pin-color,var(--na-ink));-webkit-mask:url('assets/images/mosquito-hawk-mark.svg') center/contain no-repeat;mask:url('assets/images/mosquito-hawk-mark.svg') center/contain no-repeat; }
.na-home-more-essays article[hidden] { display:none; }
.na-lightbox.is-zoomed .na-lightbox-stage { cursor:grab;overflow:hidden; }
.na-lightbox.is-panning .na-lightbox-stage { cursor:grabbing; }
.na-lightbox-image { user-select:none;-webkit-user-drag:none; }
.na-legend-dot { position:relative;flex-shrink:0; }
@supports (mask-image: url('assets/images/mosquito-hawk-mark.svg')) or (-webkit-mask-image: url('assets/images/mosquito-hawk-mark.svg')) {
  .na-legend-dot::after { content:"";position:absolute;left:50%;top:50%;width:1.25rem;height:1.25rem;background:var(--na-category-color,var(--na-ink));-webkit-mask:url('assets/images/mosquito-hawk-mark.svg') center/contain no-repeat;mask:url('assets/images/mosquito-hawk-mark.svg') center/contain no-repeat;opacity:0;transform:translate(-50%,-50%);pointer-events:none; }
  a:focus-visible .na-legend-dot,button:focus-visible .na-legend-dot { background:transparent;border-color:transparent;box-shadow:none; }
  a:focus-visible .na-legend-dot::after,button:focus-visible .na-legend-dot::after { opacity:1; }
  @media (hover:hover) and (pointer:fine) {
    a:hover .na-legend-dot,button:hover .na-legend-dot { background:transparent;border-color:transparent;box-shadow:none; }
    a:hover .na-legend-dot::after,button:hover .na-legend-dot::after { opacity:1; }
  }
}

/* City labels are plain text on the map, revealed only on hover/focus. */
.na-city-tooltip.leaflet-tooltip { padding:3px 0 0;border:0;border-radius:0;box-shadow:none;background:transparent;color:var(--na-ink);font:12px/1.3 var(--na-sans);text-shadow:0 1px 2px var(--na-paper),0 -1px 2px var(--na-paper); }
.na-city-tooltip.leaflet-tooltip:before { display:none; }
.na-map-writing-dot { display:block;width:12px;height:12px;margin:21px;border:2px solid var(--na-paper);border-radius:50%;background:var(--pin-color);box-shadow:0 0 0 1px #19191540; }

/* Restrained photographic fan and the same dragonfly as the category controls. */
.na-photo-fan { display:block;position:relative;width:48px;height:48px;margin:3px; }
.na-pin-symbol { position:relative;display:block;width:54px;height:54px; }
.na-media-badges { position:absolute;z-index:6;left:50%;bottom:-11px;display:flex;align-items:center;justify-content:center;transform:translateX(-50%);pointer-events:none;white-space:nowrap;filter:drop-shadow(0 1px 2px #19191540); }
.na-media-badge { --badge-color:#3f7082;flex:none;display:grid;place-items:center;width:17px;height:17px;border:1.5px solid var(--na-paper);border-radius:50%;background:var(--badge-color);color:#fff;font:12px/1 var(--na-sans); }
.na-media-badge+.na-media-badge { margin-left:-2px; }
.na-media-badge svg { display:block;width:11px;height:11px; }
.na-media-badge-video { --badge-color:#516b52; }
.na-media-badge-writing { --badge-color:#a54d2b; }
.na-media-badge-audio { --badge-color:#ad526b; }
.na-map-recording-dot { display:grid;place-items:center;width:42px;height:42px;margin:6px;border:2px solid var(--na-paper);border-radius:50%;background:#ad526b;color:#fff;box-shadow:0 2px 8px #19191544;font:23px/1 var(--na-sans); }
.na-photo-fan .na-fan-card { position:absolute;inset:0;opacity:0;pointer-events:none;transition:transform .22s ease,opacity .18s ease; }
.na-fan-cover { z-index:2; }
.na-place-marker.is-preview .na-fan-card-0.is-ready { opacity:1;transform:translate(-25px,-5px) rotate(-12deg); }
.na-place-marker.is-preview .na-fan-card-1.is-ready { opacity:1;transform:translate(25px,-5px) rotate(12deg); }
.na-map-hover-copy { display:flex;flex-direction:column;align-items:center;gap:5px;width:max-content;max-width:min(240px,60vw);white-space:normal;text-align:center; }
.na-map-hover-cities { display:block;line-height:1.35;overflow-wrap:anywhere; }
.na-map-hover-title { display:block;max-width:220px;overflow-wrap:anywhere;font:13px/1.25 var(--na-serif); }
.na-map-hover-title i { display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:var(--pin-color);vertical-align:middle; }
.na-map-writing-dot { position:relative; }
.na-place-marker:focus-visible,.na-place-marker.is-highlighted { outline:none; }
.na-place-marker:focus-visible .na-fan-cover,.na-place-marker.is-highlighted .na-fan-cover { outline:2px solid var(--na-ink);outline-offset:3px; }
.na-place-marker:focus-visible .na-map-writing-dot { outline:1px solid var(--pin-color);outline-offset:8px; }
@supports (mask-image:url('assets/images/mosquito-hawk-mark.svg')) or (-webkit-mask-image:url('assets/images/mosquito-hawk-mark.svg')) {
  .na-map-writing-dot::after { content:"";position:absolute;left:50%;top:50%;width:24px;height:24px;background:var(--pin-color);-webkit-mask:url('assets/images/mosquito-hawk-mark.svg') center/contain no-repeat;mask:url('assets/images/mosquito-hawk-mark.svg') center/contain no-repeat;transform:translate(-50%,-50%);opacity:0; }
  .na-place-marker.is-preview .na-map-writing-dot,.na-place-marker:focus-visible .na-map-writing-dot { background:transparent;border-color:transparent;box-shadow:none; }
  .na-place-marker.is-preview .na-map-writing-dot::after,.na-place-marker:focus-visible .na-map-writing-dot::after { opacity:1; }
}
@media (prefers-reduced-motion:reduce) { .na-photo-fan .na-fan-card { transition:none; } }

/* Slightly irregular printed-photo spread; titles above and cities below. */
.na-fan-cover { transition:transform .22s ease; }
.na-place-marker.is-preview .na-fan-cover { transform:translate(2px,2px) rotate(3deg); }
.na-place-marker.is-preview .na-fan-card-0.is-ready { transform:translate(-29px,7px) rotate(-19deg); }
.na-place-marker.is-preview .na-fan-card-1.is-ready { transform:translate(22px,-11px) rotate(10deg); }
.na-place-marker.is-preview .na-scatter-1 .na-fan-cover { transform:translate(-2px,3px) rotate(-4deg); }
.na-place-marker.is-preview .na-scatter-1 .na-fan-card-0.is-ready { transform:translate(-23px,-9px) rotate(-11deg); }
.na-place-marker.is-preview .na-scatter-1 .na-fan-card-1.is-ready { transform:translate(29px,6px) rotate(18deg); }
.na-place-marker.is-preview .na-scatter-2 .na-fan-card-0.is-ready { transform:translate(-28px,3px) rotate(-16deg); }
.na-place-marker.is-preview .na-scatter-2 .na-fan-card-1.is-ready { transform:translate(19px,-12px) rotate(7deg); }
.na-map-hover-cities { padding:2px 5px;background:transparent;border-radius:0; }
.na-map-title-preview { display:block;position:absolute;bottom:calc(100% + 24px);left:50%;transform:translateX(-50%);width:220px;max-width:60vw;max-height:66px;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;background:transparent;border-radius:0;color:var(--na-ink);text-align:center; }
.na-place-marker.is-preview .na-map-title-preview { opacity:1;visibility:visible; }
.na-map-title-track,.na-map-title-cycle { display:block; }
.na-map-title-preview .na-map-hover-title { display:block;height:22px;line-height:22px;padding:0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:none; }
.na-map-title-preview.is-scrolling .na-map-title-track { animation:na-title-scroll var(--title-duration) linear infinite;animation-play-state:paused; }
.na-place-marker.is-preview .na-map-title-preview.is-scrolling .na-map-title-track { animation-play-state:running; }
@keyframes na-title-scroll { from { transform:translateY(0); } to { transform:translateY(-50%); } }
@media (prefers-reduced-motion:reduce) {
  .na-fan-cover { transition:none; }
  .na-map-title-preview.is-scrolling .na-map-title-track { animation:none; }
}

/* Center map category navigation and soften the masthead on interaction. */
.na-map-legend,.na-home-map-toolbar,.na-home-map-toolbar .na-map-legend { justify-content:center; }
.na-wordmark:hover,.na-wordmark:focus-visible { color:#657963; }
.na-wordmark:hover > span,.na-wordmark:focus-visible > span { text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em; }

/* A fresh, bounded scatter on each hover/focus. */
.na-place-marker.is-preview .na-photo-fan .na-fan-cover { transform:translate(var(--cover-x,2px),var(--cover-y,2px)) rotate(var(--cover-r,3deg)); }
.na-place-marker.is-preview .na-photo-fan .na-fan-card-0.is-ready { transform:translate(var(--left-x,-29px),var(--left-y,7px)) rotate(var(--left-r,-19deg)); }
.na-place-marker.is-preview .na-photo-fan .na-fan-card-1.is-ready { transform:translate(var(--right-x,22px),var(--right-y,-11px)) rotate(var(--right-r,10deg)); }
/* Heading interaction colors follow the writing type, including rotating cards. */
:root { --na-heading-hover:#657963; }
[data-na-writing-type="essay"],.na-result-essay { --na-heading-hover:#a54d2b; }
[data-na-writing-type="poem"],.na-result-poem,.na-poem-header { --na-heading-hover:#427653; }
[data-na-writing-type="vignette"],.na-result-vignette { --na-heading-hover:#c79a22; }
[data-na-writing-type="fiction"],.na-result-fiction { --na-heading-hover:#77508f; }
.na-result-recording { --na-heading-hover:#ad526b; }
.na-result-recording>span { display:grid;place-items:center;background:#ad526b15;border-radius:6px;color:#ad526b; }
.na-result-recording>span::after { content:"♫";font:30px/1 var(--na-serif); }
.na-audio-heading { padding:clamp(2rem,4vw,4rem) 0 1.75rem;border-bottom:1px solid var(--na-line); }
.na-audio-heading h1 { margin:0;font:normal clamp(2.8rem,5vw,5.25rem)/1 var(--na-serif);letter-spacing:-.04em; }
@media (max-width:767px) { .na-audio-heading { padding:1.75rem 0 1.5rem; } .na-audio-heading h1 { font-size:clamp(2.6rem,13vw,4rem); } }
.na-recordings-kicker { color:#ad526b;font:11px/1.3 var(--na-sans);letter-spacing:.13em;text-transform:uppercase; }
.na-recordings-kicker a { text-decoration:none; }
.na-recording-article .na-recording-content audio { display:block;width:min(720px,100%);margin:1.5rem 0; }
a:hover :is(h1,h2,h3,h4,h5,h6),a:focus-visible :is(h1,h2,h3,h4,h5,h6),:is(h1,h2,h3,h4,h5,h6) a:hover,:is(h1,h2,h3,h4,h5,h6) a:focus-visible { color:var(--na-heading-hover);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em; }
.na-primary-nav a:hover,.na-primary-nav a:focus-visible { color:#657963; }
.na-place-writing-link:hover,.na-place-writing-link:focus-visible { color:var(--pin-color,#657963);text-decoration:underline;text-underline-offset:.18em; }
.na-wordmark[aria-current="page"] > span { text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.18em; }

/* Bindia uses its photography blue; map labels float without a backing panel. */
.na-home-photography,.na-bindia { --na-heading-hover:#3f7082; }
.na-primary-nav .na-nav-bindia:hover,.na-primary-nav .na-nav-bindia:focus-visible,
.na-home-photography .na-project-heading a:hover,.na-home-photography .na-project-heading a:focus-visible { color:#3f7082; }
.na-map-hover-cities,.na-map-title-preview { color:var(--na-ink);text-shadow:0 0 2px var(--na-paper),0 1px 2px var(--na-paper),0 -1px 2px var(--na-paper); }

/* Touch and selected filters get the same mark as mouse/keyboard interaction. */
@supports (mask-image:url('assets/images/mosquito-hawk-mark.svg')) or (-webkit-mask-image:url('assets/images/mosquito-hawk-mark.svg')) {
  .na-map-legend a:is(:focus,:active,.is-active) .na-legend-dot { background:transparent;border-color:transparent;box-shadow:none; }
  .na-map-legend a:is(:focus,:active,.is-active) .na-legend-dot::after { opacity:1; }
}
.na-map-title-preview .na-map-hover-title { color:var(--na-ink);font-family:Georgia,"Times New Roman",serif; }
.na-map-title-preview { -webkit-text-size-adjust:none;text-size-adjust:none; }
.na-map-title-preview .na-map-hover-title { display:flex;align-items:center;justify-content:center;gap:5px; }
.na-map-title-preview .na-map-hover-title i { flex:0 0 5px;margin:0; }
.na-map-title-text { display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;color:#191915;-webkit-text-fill-color:#191915;font:13px/22px Georgia,"Times New Roman",serif; }
@media (hover:none) {
  .na-map-title-preview.is-scrolling .na-map-title-track { animation:none; }
  .na-map-title-preview { max-height:none; }
  .na-map-title-preview .na-map-hover-title { height:auto;min-height:22px;overflow:visible; }
}

/* 3.5.0 globe and mobile viewer */
.na-globe { position:relative;overflow:hidden;border:0!important;background:radial-gradient(circle at 49% 49%,rgba(116,151,145,.15),transparent 64%),var(--na-paper)!important;isolation:isolate; }
.na-globe-surface { position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline-offset:-4px; }
.na-globe-surface.is-dragging { cursor:grabbing; }
.na-globe-pins { position:absolute;inset:0;pointer-events:none; }
.na-globe-pin { position:absolute;display:grid;place-items:center;transform:translate(-50%,-50%);width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;pointer-events:auto;color:#28412e;cursor:pointer; }
.na-globe-dot { display:grid;place-items:center;width:11px;height:11px;border:2px solid #f8f5ec;border-radius:50%;background:#365740;box-shadow:0 1px 6px #1b301944;font:11px/1 var(--na-sans);color:#fff;transition:transform .15s; }
.na-globe-pin.is-cluster .na-globe-dot { width:25px;height:25px; }
.na-globe-pin:hover .na-globe-dot,.na-globe-pin:focus-visible .na-globe-dot { transform:scale(1.35); }
.na-globe-pin:focus-visible { outline:2px solid #365740;outline-offset:2px; }
.na-globe-label { position:absolute;bottom:40px;left:50%;transform:translateX(-50%);padding:7px 11px;max-width:240px;width:max-content;border:1px solid #36574025;border-radius:4px;background:#f7f4ebf5;color:#223326;font:15px/1.25 var(--na-serif);box-shadow:0 3px 15px #23332212;pointer-events:none;opacity:0; }
.na-globe-pin:hover,.na-globe-pin:focus-visible { z-index:3; }
.na-globe-pin:hover .na-globe-label,.na-globe-pin:focus-visible .na-globe-label,.na-globe-pin.show-label .na-globe-label { opacity:1; }
.na-globe-hint { position:absolute;z-index:3;left:0;right:0;bottom:8px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#5e6758;font:10px/1.4 var(--na-sans);letter-spacing:.08em;text-transform:uppercase;pointer-events:none; }
.na-globe-hint button { border:0;background:transparent;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;padding:12px;pointer-events:auto;cursor:pointer; }
.na-globe-hint>span { padding:12px; }
.na-globe-browse-bar { display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:10px 0;border-top:1px solid var(--na-line);position:relative; }
.na-map-browse-label { padding:8px 0;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--na-muted); }
.na-globe-view-options { display:flex;gap:12px; }
.na-globe-view-options button { border:0;padding:8px 0;background:transparent;color:var(--na-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer; }
.na-globe-view-options button[aria-pressed="true"] { color:#365740;border-bottom:1px solid #365740; }
.na-globe-places { text-align:right;min-width:0;max-width:min(480px,75%); }
.na-globe-places summary { padding:8px 0;cursor:pointer;font-size:11px;letter-spacing:.08em;text-transform:uppercase; }
.na-globe-place-list { padding:14px 0;display:grid;gap:3px;max-height:340px;overflow:auto; }
.na-globe-place-list button { border:0;border-bottom:1px solid #36574022;background:transparent;display:flex;gap:20px;align-items:center;justify-content:space-between;padding:12px 4px;text-align:left;cursor:pointer; }
.na-globe-place-list button span { font:17px/1.3 var(--na-serif); }
.na-globe-place-list button small { white-space:nowrap;font-size:10px;color:var(--na-muted); }
.na-globe-place-list button:hover { background:#3657400a; }
.na-globe-browse-bar :focus-visible { outline:2px solid #365740;outline-offset:3px; }
/* Preserve the desktop grid, and measure the image against its whole stage. */
.na-lightbox { overscroll-behavior:contain; }
.na-lightbox-stage { width:100%;height:100%;overflow:hidden;touch-action:none;position:relative; }
.na-lightbox-image { flex:none;max-width:none;max-height:none;object-fit:contain;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transform-origin:center; }
.na-lightbox.is-video .na-lightbox-video { max-width:min(92vw,1050px);max-height:calc(100dvh - 9rem); }
@media(max-width:767px) { .na-lightbox.is-video .na-lightbox-video { max-width:100vw;max-height:calc(100dvh - 7rem);border-radius:0;box-shadow:none; } }
.na-lightbox.is-loading .na-lightbox-image { opacity:0; }
.na-viewer-status { position:absolute;z-index:6;left:15%;right:15%;top:50%;text-align:center;color:#fff;font-size:13px;pointer-events:none; }
.na-viewer-status:empty { display:none; }
.na-lightbox-close,.na-lightbox-zoom-controls,.na-lightbox-details { transition:opacity .2s; }
.na-lightbox-close { z-index:5; }
@media(max-width:767px) {
  .na-globe { height: min(64svh,560px)!important;min-height:340px!important; }
  .na-globe-hint { font-size:9px;letter-spacing:.04em; }
  .na-globe-hint>span { padding-left:0; }
  .na-globe-browse-bar { gap:14px; }
  .na-globe-place-list button { gap:12px; }
  .na-globe-place-list button span { font-size:15px; }
  .na-lightbox { position:fixed;inset:0;display:block;width:100%;height:100vh;height:100dvh;overflow:hidden;background:#222720;isolation:isolate; }
  .na-lightbox-stage { position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:0; }
  .na-lightbox-stage::after { display:none; }
  .na-lightbox-backdrop { display:block;position:absolute;z-index:0;inset:-10%;width:120%;height:120%;max-width:none;max-height:none;object-fit:cover;filter:blur(28px) brightness(.55) saturate(.8);opacity:1;transform:scale(1.08);pointer-events:none; }
  .na-lightbox-image { position:relative;z-index:2;border:0;border-radius:0;box-shadow:none;will-change:transform; }
  .na-lightbox-arrow { display:none; }
  .na-lightbox-close { position:absolute;z-index:5;top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 10px);width:44px;height:44px;border:1px solid #ffffff38;border-radius:50%;background:#151b1840;backdrop-filter:blur(12px);font-size:24px; }
  .na-lightbox-zoom-controls { top:calc(env(safe-area-inset-top,0px) + 10px);left:calc(env(safe-area-inset-left,0px) + 10px);z-index:5;gap:8px; }
  .na-lightbox-zoom-controls button { width:44px;height:44px;background:#151b1840; }
  .na-lightbox-details { position:absolute;z-index:5;bottom:0;left:0;right:0;min-height:0;display:flex;align-items:center;justify-content:center;gap:4px 7px;padding:14px max(14px,env(safe-area-inset-right)) calc(env(safe-area-inset-bottom,0px) + 14px) max(14px,env(safe-area-inset-left));background:#131b1855;backdrop-filter:blur(14px);font-size:10px;letter-spacing:.06em;color:#f6f3eb; }
  .na-lightbox-details>*+*::before { margin-right:7px; }
  .na-lightbox-details button { max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:24px; }
  .na-lightbox-count { color:#fff9;white-space:nowrap; }
  .na-lightbox.is-zoomed .na-lightbox-details { opacity:1;pointer-events:auto; }
  .na-lightbox.is-ui-hidden .na-lightbox-close,.na-lightbox.is-ui-hidden .na-lightbox-details,.na-lightbox.is-ui-hidden .na-lightbox-zoom-controls { opacity:0;pointer-events:none; }
}
@media(prefers-reduced-motion:reduce) {
  .na-lightbox-image,.na-lightbox-close,.na-lightbox-details,.na-lightbox-zoom-controls,.na-globe-dot { transition:none!important; }
}

/* 3.5.1 — the shared photographic map markers sit just above the globe. */
.na-globe-pin {
  width:60px;height:60px;overflow:visible;z-index:var(--globe-layer,1);
  touch-action:none;user-select:none;-webkit-user-select:none;
}
.na-globe-pin-visual { display:block;position:relative;width:54px;height:54px;pointer-events:none; }
.na-globe-pin .na-photo-fan {
  transform:perspective(500px) translateY(calc(-1 * var(--globe-lift,7px))) rotateX(var(--globe-tilt-x,0deg)) rotateY(var(--globe-tilt-y,0deg)) scale(var(--globe-scale,1));
  transform-style:preserve-3d;transform-origin:50% 65%;
}
.na-globe-pin .na-pin-photo {
  border-color:#53644c55;background:#f9f5eb;
  box-shadow:var(--globe-shadow-x,0px) var(--globe-shadow-y,8px) 13px -4px #263e2b5c,0 1px 2px #263e2b33;
  backface-visibility:hidden;-webkit-backface-visibility:hidden;
}
.na-globe-pin .na-fan-cover { transform:translateZ(9px); }
.na-globe-pin .na-pin-photo.is-stack::before {
  inset:-3px 3px 3px -3px;transform:translateZ(-3px) rotate(-8deg);box-shadow:0 2px 4px #25382024;
}
.na-globe-pin .na-globe-photo-anchor {
  position:absolute;left:50%;top:50%;width:6px;height:6px;border-radius:50%;
  background:#365740;box-shadow:0 0 0 2px #f3eee499;transform:translate(-50%,17px);pointer-events:none;
}
.na-globe-pin:not(.has-photo) .na-globe-photo-anchor { display:none; }
.na-globe-pin .na-globe-photo-anchor::before {
  content:"";position:absolute;bottom:4px;left:2px;width:1px;height:10px;background:#36574070;
}
.na-globe-pin.is-preview,.na-globe-pin:focus-visible,.na-globe-pin.is-highlighted { z-index:1001; }
.na-globe-pin.is-preview .na-photo-fan { transform:perspective(500px) translateY(-12px) rotateX(3deg) rotateY(0deg) scale(1.07); }
.na-globe-pin.is-preview .na-photo-fan .na-fan-cover {
  transform:translate3d(var(--cover-x,2px),var(--cover-y,2px),18px) rotate(var(--cover-r,3deg));
}
.na-globe-pin.is-preview .na-photo-fan .na-fan-card-0.is-ready {
  transform:translate3d(var(--left-x,-28px),var(--left-y,3px),7px) rotate(var(--left-r,-15deg));
}
.na-globe-pin.is-preview .na-photo-fan .na-fan-card-1.is-ready {
  transform:translate3d(var(--right-x,28px),var(--right-y,-7px),11px) rotate(var(--right-r,14deg));
}
.na-globe-pin .na-globe-label {
  top:calc(100% + 3px);bottom:auto;left:50%;
  transform:translateX(calc(-50% + var(--globe-label-shift,0px)));
  padding:2px 5px;max-width:min(220px,60vw);border:0;border-radius:0;background:transparent;box-shadow:none;
  font:12px/1.35 var(--na-sans);text-shadow:0 0 3px var(--na-paper),0 1px 2px var(--na-paper),0 -1px 2px var(--na-paper);
  white-space:normal;text-align:center;opacity:0;
}
.na-globe-pin:is(:hover,:focus-visible) .na-globe-label { opacity:0; }
.na-globe-pin.is-preview .na-globe-label { opacity:1; }
.na-globe-pin .na-map-title-preview {
  bottom:calc(100% + 20px);transform:translateX(calc(-50% + var(--globe-label-shift,0px)));
  text-shadow:0 0 3px var(--na-paper),0 1px 2px var(--na-paper),0 -1px 2px var(--na-paper);
}
.na-globe-pin.preview-below .na-map-title-preview { bottom:auto;top:calc(100% + 38px); }
.na-globe-pin.label-above .na-globe-label { top:auto;bottom:calc(100% + 2px); }
.na-globe-pin.label-above .na-map-title-preview { bottom:calc(100% + 27px); }
.na-globe-pin:focus-visible { outline:0; }
.na-globe-pin:focus-visible .na-fan-cover { outline:2px solid #365740;outline-offset:4px; }
.na-globe-pin img { -webkit-user-drag:none;user-select:none;-webkit-user-select:none; }
/* Keep the layered-card depth on touchscreens without repeatedly rerasterizing
   perspective-transformed photographs during a drag. */
@media(pointer:coarse) {
  .na-globe-pin .na-photo-fan { transform:translateY(calc(-1 * var(--globe-lift,7px))) scale(var(--globe-scale,1));transform-style:flat; }
  .na-globe-pin .na-fan-cover { transform:none; }
  .na-globe-pin .na-pin-photo { backface-visibility:visible;-webkit-backface-visibility:visible; }
  .na-globe-pin .na-pin-photo.is-stack::before { transform:rotate(-8deg); }
  .na-globe-pin.is-preview .na-photo-fan { transform:translateY(-12px) scale(1.07); }
  .na-globe-pin.is-preview .na-photo-fan .na-fan-cover { transform:translate(var(--cover-x,2px),var(--cover-y,2px)) rotate(var(--cover-r,3deg)); }
  .na-globe-pin.is-preview .na-photo-fan .na-fan-card-0.is-ready { transform:translate(var(--left-x,-28px),var(--left-y,3px)) rotate(var(--left-r,-15deg)); }
  .na-globe-pin.is-preview .na-photo-fan .na-fan-card-1.is-ready { transform:translate(var(--right-x,28px),var(--right-y,-7px)) rotate(var(--right-r,14deg)); }
}
@media(prefers-reduced-motion:reduce) {
  .na-globe-pin .na-photo-fan,.na-globe-pin .na-fan-card,.na-globe-pin .na-fan-cover { transition:none!important; }
}
