/* The regular place page (spec ny-theme/specs/place-pages-2026-09-24.md). Loads after site.css, guide.css and home.css; tokens from site.css.
   Look A, the visit (default): an ink room split with her frames, the explanation and the index as doors, three large quotes, a mosaic, the ledger folded, the map chapter.
   Look B, the dossier (body.lookb): a paper room with one frame, then a sticky rail (the explanation and the index) beside every word she wrote. */
.pl{--rh:640px}
/* ---------- the room ---------- */
.proom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);background:var(--ink);color:#fff;min-height:var(--rh);border-bottom:1px solid var(--ink)}
.proom .prt{padding:72px var(--gut) 56px;align-self:end;max-width:700px;justify-self:end;width:100%}
.proom .eyebrow{color:var(--taxi-dark);margin-bottom:18px;font-size:var(--t1)}.proom .eyebrow span{color:#fff;opacity:.8}
.proom h1{font-size:clamp(42px,5vw,84px);line-height:.98;letter-spacing:-.03em;max-width:11em}.proom h1 em{font-style:normal;color:var(--taxi-dark)}
.proom .dek{font:400 var(--t4)/1.6 var(--body);margin:24px 0 0;max-width:34em;opacity:.95}
.proom .dek .vmark{display:inline-block;font:600 var(--t0)/1 var(--caps);letter-spacing:.1em;text-transform:uppercase;background:var(--taxi);color:var(--ink);padding:7px 9px 6px;margin-right:10px;vertical-align:2px;white-space:nowrap}
.proom .dek .vmark.o{background:#fff}.proom .dek .vmark.s{background:#fff;color:var(--ink);outline:1px solid var(--taxi)}
.proom .dek q{quotes:"\201C" "\201D"}
.proom .by{margin-top:28px}.proom .by span{opacity:.85}.proom .by a{color:#fff;text-decoration:none;border-bottom:2px solid var(--taxi-dark)}
.proom .prf{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;min-height:var(--rh);max-height:860px}
.proom .prf figure{margin:0;position:relative;overflow:hidden;background:#1a1216}
.proom .prf img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.proom .prf figcaption{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 12px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.6));font:500 var(--t0)/1.4 var(--caps);letter-spacing:.08em;text-transform:uppercase;color:#fff}
.proom .prf figcaption a{color:#fff;text-decoration:none;border-bottom:1px solid var(--taxi-dark)}
.proom.noph{grid-template-columns:minmax(0,1fr);background:var(--panel);color:var(--ink);min-height:0}
.proom.noph .prt{justify-self:start;max-width:1328px;margin:0 auto;padding:72px var(--gut) 56px}
.proom.noph .eyebrow{color:var(--mute)}.proom.noph .eyebrow span{color:var(--ink2);opacity:1}.proom.noph h1 em{color:var(--ink)}
.proom.noph .by a{color:var(--ink);border-bottom-color:var(--taxi)}
/* ---------- what this page is, and the index ---------- */
.pexp{padding:48px 0 44px;background:var(--panel)}
.pexp .eyebrow{color:var(--ink);display:block;margin-bottom:12px}
.pexp .pexpl{font:400 clamp(18px,1.45vw,21px)/1.62 var(--body);color:var(--ink);max-width:40em;margin:0}
.pexp .pexpl a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--taxi);font-weight:700}
.pidx{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;border-top:2px solid var(--ink)}
.pidx li{border-bottom:1px solid var(--line)}
.pidx a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:13px 0 12px;text-decoration:none;color:var(--ink)}
.pidx b{font:600 var(--t3)/1.3 var(--disp);letter-spacing:-.005em}
.pidx a:hover b{text-decoration:underline;text-decoration-color:var(--taxi);text-decoration-thickness:3px;text-underline-offset:3px}
.pidx .gd{font:600 10px/1 var(--caps);letter-spacing:.1em;text-transform:uppercase;padding:6px 7px 5px;white-space:nowrap;border:1px solid var(--ink)}
.pidx .gd.w{background:var(--taxi);border-color:var(--taxi)}.pidx .gd.s{background:var(--ink);color:#fff}
.pidx li.own a b:before{content:"My guide · ";color:var(--mute);font-weight:500}
.pidx .fold{display:none}.pidx.open .fold{display:block}
.pidxmore{margin-top:14px;background:none;border:0;padding:0 0 3px;font:600 var(--t0)/1 var(--caps);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);border-bottom:2px solid var(--taxi);cursor:pointer}
/* ---------- her rules ---------- */
.prules .bh{margin-bottom:0}
.prulegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 56px}
.prulegrid.n2{grid-template-columns:repeat(2,minmax(0,1fr))}
.prule{padding:30px 0 26px;border-bottom:1px solid var(--line)}
.prule .eyebrow{color:var(--ink);display:block}
.prule blockquote{margin:14px 0 0;padding:0;border:0}
.prule blockquote p{margin:0;font:400 clamp(19px,1.5vw,23px)/1.5 var(--body);color:var(--ink)}
.prule blockquote p:before{content:"\201C"}.prule blockquote p:after{content:"\201D"}
.prule .src{display:inline-block;margin-top:14px;font:500 var(--t0)/1.5 var(--caps);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);text-decoration:none;border-bottom:2px solid var(--taxi);padding-bottom:3px}
.prule .src:hover{color:var(--ink)}
.prules .rv{margin-top:26px}
/* ---------- her photographs ---------- */
.pgal{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row dense;gap:6px}
.pgal li{position:relative;height:440px;overflow:hidden;background:var(--panel)}
.pgal li.land{grid-column:span 2}
.pgal figure{margin:0;height:100%}
.pgal img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}
.pgal figcaption{position:absolute;left:0;right:0;bottom:0;padding:36px 14px 11px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.62));color:#fff;font:500 var(--t0)/1.45 var(--caps);letter-spacing:.08em;text-transform:uppercase}
.pgal figcaption .gl{display:block;color:var(--taxi-dark)}
.pgal figcaption a{color:#fff;text-decoration:none}
.pgal figcaption a:hover{text-decoration:underline}
.pgal.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.pgal.n2 li.land{grid-column:auto}
.psea{margin-top:34px}.psea:first-of-type{margin-top:26px}.psea .sgh{display:flex;align-items:baseline;gap:14px;margin-bottom:0}.psea h3{font-size:var(--t6);letter-spacing:-.02em}.psea .sgh a{text-decoration:none}.psea .sgh span{font:500 var(--t0)/1 var(--caps);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.psea .pgal{margin-top:12px}
/* ---------- where it appears: the ledger ---------- */
.pledger .bh{margin-bottom:6px}
.plrow{border-bottom:1px solid var(--line);padding:26px 0 24px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:6px 56px;scroll-margin-top:calc(var(--bar) + 16px)}
.plrow .plh{grid-column:1;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.plrow h3{font-size:var(--t6);line-height:1.12;letter-spacing:-.015em;margin:0}.plrow h3 a{color:var(--ink);text-decoration:none}.plrow h3 a:hover{text-decoration:underline;text-decoration-color:var(--taxi);text-decoration-thickness:3px}
.plrow .meta{font:500 var(--t0)/1.5 var(--caps);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-top:8px}
.plrow .grade{margin-top:4px}
.plrow .pline{grid-column:1;margin:10px 0 0;font:400 var(--t4)/1.6 var(--body);color:var(--ink);max-width:38em}
.plrow .pside{grid-column:2;grid-row:1/span 3;align-self:start;padding-top:6px}
.plrow .pside .rel{font:600 var(--t0)/1 var(--caps);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--taxi);padding-bottom:3px}
.plrow .pside ul.kb{margin:18px 0 0}
.plrow details{grid-column:1;margin-top:12px}
.plrow summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;font:600 var(--t0)/1 var(--caps);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);padding:6px 0}
.plrow summary::-webkit-details-marker{display:none}
.plrow summary:before{content:"+";font:700 16px/1 var(--disp);width:18px;height:18px;display:inline-grid;place-items:center;border:1.5px solid var(--ink)}
.plrow details[open] summary:before{content:"\2212"}
.plrow details[open] summary .c{display:none}.plrow details:not([open]) summary .o{display:none}
.plrow .paras{max-width:var(--measure);margin-top:8px}
.plrow .paras p{font:400 var(--t3)/1.75 var(--body);margin:0 0 1em}
.plrow .rv{grid-column:1;margin-top:18px}
/* ---------- where it is ---------- */
.pmap .bh{margin-bottom:22px}
.pmapgrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:0 48px;align-items:start}
.pmapgrid .stage{position:relative;top:auto;height:auto;min-height:0;background:none;border:0;padding:0}
.pmapgrid.solo{grid-template-columns:1fr}.pmapgrid.solo .proster{display:none}
.pmapgrid #map{height:520px;background:var(--panel);border:1px solid var(--line)}
.pmapgrid .whgo{display:inline-block;margin-top:12px;font:600 var(--t0)/1 var(--caps);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--taxi);padding-bottom:3px}
.ploc{list-style:none;margin:0 0 30px;padding:0;border-top:2px solid var(--ink)}
.ploc li{border-bottom:1px solid var(--line);padding:14px 0 13px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px}
.ploc b{font:600 var(--t4)/1.25 var(--disp)}.ploc b a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--taxi)}
.ploc i{grid-column:1;font:400 var(--t2)/1.45 var(--body);font-style:normal;color:var(--ink2)}
.ploc .dir{grid-column:2;grid-row:1/span 2;align-self:center;font:600 var(--t0)/1 var(--caps);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);text-decoration:none;border-bottom:2px solid var(--taxi);padding-bottom:3px}
.ploc li.here b:after{content:" · this page";font:500 var(--t0)/1 var(--caps);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.pnear .eyebrow{display:block;color:var(--ink);margin-bottom:8px}
.pnear ul{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.pnear li{border-bottom:1px solid var(--line)}
.pnear a{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;padding:10px 0;text-decoration:none;color:var(--ink)}
.pnear a.nph{grid-template-columns:minmax(0,1fr)}
.pnear .th{width:64px;height:64px;background:var(--panel) center/cover no-repeat}
.pnear b{display:block;font:600 var(--t3)/1.25 var(--disp)}.pnear span.s{display:block;margin-top:3px;font:400 var(--t1)/1.4 var(--caps);letter-spacing:.04em;color:var(--mute)}
.pnear a:hover b{text-decoration:underline;text-decoration-color:var(--taxi);text-decoration-thickness:3px}
/* the map's hover card sits by the pointer, not in the flow (the landmark fix, 9/24: home.css's .hov{position:absolute} loads later) */
#hov{position:fixed}
/* ---------- the seal ---------- */
.psealrow{display:grid;grid-template-columns:120px minmax(0,1fr);gap:0 36px;align-items:center}
.psealrow svg{width:120px;height:auto}
.psealrow h2{font-size:var(--t6);margin:6px 0 12px;max-width:22em}
.pseals{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px}
.pseals a{font:600 var(--t2)/1.4 var(--disp);color:var(--ink);text-decoration:none;border-bottom:2px solid var(--taxi)}
/* the lightbox */
.lbx img{max-height:86vh}
/* ---------- look B, the dossier ---------- */
.lookb .proom{background:var(--paper);color:var(--ink);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);--rh:560px;border-bottom:2px solid var(--ink)}
.lookb .proom .eyebrow{color:var(--mute)}.lookb .proom .eyebrow span{color:var(--ink2);opacity:1}
.lookb .proom h1 em{color:var(--ink)}
.lookb .proom .dek{color:var(--ink2)}.lookb .proom .dek .vmark.o{border:1px solid var(--ink)}
.lookb .proom .by a{color:var(--ink);border-bottom-color:var(--taxi)}
.lookb .proom .prf figure+figure{display:none}
.lookb .proom .prf{padding:28px var(--gut) 28px 0}
.lookb .proom .prf figure{height:100%}
.lookb .proom.noph{background:var(--paper)}
.pdos{display:grid;grid-template-columns:320px minmax(0,1fr);gap:0 64px;max-width:1328px;margin:0 auto;padding:0 var(--gut)}
.pdos .prail{position:sticky;top:calc(var(--bar) + 24px);align-self:start;padding:40px 0;max-height:calc(100vh - var(--bar) - 32px);overflow:auto}
.pdos .prail .eyebrow{display:block;color:var(--ink);margin-bottom:10px}
.pdos .prail .pexpl{font:400 var(--t2)/1.65 var(--body);color:var(--ink2);margin:0}
.pdos .prail .pexpl a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--taxi);font-weight:700}
.pdos .pidx{grid-template-columns:1fr;margin-top:22px}
.pdos .pidx a{padding:10px 0 9px 12px;border-left:3px solid transparent}
.pdos .pidx a.on{border-left-color:var(--taxi);background:var(--panel)}
.pdos .pidx b{font-size:var(--t2)}
.pdos .pmain{min-width:0}
.pdos .pmain>.band{border-top:0;padding:44px 0 8px}
.pdos .pmain>.band .wrap{padding:0;max-width:none}
.pdos .prulegrid{grid-template-columns:1fr;gap:0}
.pdos .prule{display:grid;grid-template-columns:150px minmax(0,1fr);gap:0 28px;padding:22px 0}
.pdos .prule .eyebrow{padding-top:5px}
.pdos .prule blockquote,.pdos .prule .src{grid-column:2}.pdos .prule blockquote{margin:0}
.pdos .prule blockquote p{font-size:19px}
.pdos .plrow{grid-template-columns:minmax(0,1fr)}
.pdos .plrow .pside{grid-column:1;grid-row:auto;padding-top:0}
.pdos .pgal{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:6px;padding-bottom:10px}
.pdos .pgal li,.pdos .pgal li.land{flex:0 0 auto;height:420px;scroll-snap-align:start}
.pdos .pgal li img{width:auto;height:100%;aspect-ratio:var(--ar)}
.pdos .pmapgrid{grid-template-columns:1fr;gap:26px 0}
.pdos .pmapgrid #map{height:440px}
/* ---------- phone ---------- */
@media (max-width:980px){
 .pidx{grid-template-columns:repeat(2,minmax(0,1fr))}
 .prulegrid,.prulegrid.n2{grid-template-columns:1fr;gap:0}
 .plrow{grid-template-columns:1fr}.plrow .pside{grid-column:1;grid-row:auto;padding-top:4px}
 .pmapgrid{grid-template-columns:1fr;gap:26px 0}
 .pdos{grid-template-columns:1fr}.pdos .prail{position:static;max-height:none;overflow:visible;padding:36px 0 0}
}
@media (max-width:820px){
 .proom,.lookb .proom{grid-template-columns:1fr;min-height:0}
 .proom .prf{order:-1;min-height:0;height:62vh;max-height:560px}
 .lookb .proom .prf{padding:0;height:52vh}
 .proom .prt{padding:30px var(--gut) 34px;justify-self:start}
 .proom h1{font-size:clamp(38px,11vw,52px)}.proom .dek{font-size:var(--t3)}
 .proom .eyebrow span{display:none}
 .pexp{padding:36px 0 34px}
 .pidx{grid-template-columns:1fr}
 .pgal{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
 .pgal li{height:260px}.pgal li.land{grid-column:span 2;height:230px}
 .pdos .pgal li,.pdos .pgal li.land{height:300px}
 .pdos .prule{grid-template-columns:1fr}.pdos .prule blockquote,.pdos .prule .src{grid-column:1}.pdos .prule blockquote{margin-top:10px}
 .plrow h3{font-size:var(--t5)}.plrow .pline{font-size:var(--t3)}
 .pmapgrid #map{height:360px}
 .psealrow{grid-template-columns:72px minmax(0,1fr);gap:0 18px}.psealrow svg{width:72px}.psealrow h2{font-size:var(--t5)}
}
