/* OldRoot Locations — stable global globe rebuild */
.locations-page{max-width:1450px}
.locations-page .page-head p{max-width:900px}

.world-console{
  position:relative;
  overflow:hidden;
  margin:18px 0;
  padding:18px;
  border:1px solid rgba(197,162,74,.72);
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 45%,rgba(36,76,58,.44),transparent 42%),
    linear-gradient(150deg,#07140f,#0d231a 55%,#06100c);
  box-shadow:0 28px 76px rgba(4,17,12,.30);
  color:var(--cream)
}
.world-console::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:
    linear-gradient(rgba(197,162,74,.14) 1px,transparent 1px),
    linear-gradient(90deg,rgba(197,162,74,.14) 1px,transparent 1px);
  background-size:36px 36px
}
.world-console-bar{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:4px 4px 14px
}
.console-kicker{
  display:block;
  margin-bottom:6px;
  color:var(--old-gold);
  font:900 9px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.16em
}
.world-console-bar strong{
  font:900 15px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.08em
}
.world-controls{display:flex;gap:7px;flex-wrap:wrap}
.world-controls button{
  border:1px solid rgba(197,162,74,.65);
  border-radius:999px;
  background:rgba(243,235,221,.06);
  color:var(--cream);
  padding:8px 11px;
  font:900 9px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
  cursor:pointer
}
.world-controls button:hover,
.world-controls button.active{background:var(--old-gold);color:var(--ink)}
.world-controls button:focus-visible,
.location-index button:focus-visible,
.location-node:focus-visible,
.location-cluster:focus-visible,
.globe-cluster-panel:focus-visible,
.globe-cluster-panel button:focus-visible{outline:2px solid #fff2c3;outline-offset:3px}

.world-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:16px
}
.globe-stage{
  position:relative;
  min-height:650px;
  overflow:hidden;
  border:1px solid rgba(183,190,197,.24);
  border-radius:22px;
  background:
    radial-gradient(circle at 18% 24%,rgba(255,255,255,.8) 0 1px,transparent 1.5px),
    radial-gradient(circle at 72% 30%,rgba(255,255,255,.65) 0 1px,transparent 1.5px),
    radial-gradient(circle at 83% 72%,rgba(197,162,74,.8) 0 1px,transparent 1.5px),
    radial-gradient(circle at 35% 84%,rgba(255,255,255,.55) 0 1px,transparent 1.5px),
    linear-gradient(180deg,#050d0a,#071610);
  transition:background .25s ease
}
.globe-stage.space-view{
  background:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 1px,transparent 1.5px),
    radial-gradient(circle at 67% 14%,rgba(255,255,255,.8) 0 1px,transparent 1.5px),
    radial-gradient(circle at 86% 43%,rgba(255,255,255,.75) 0 1px,transparent 1.5px),
    radial-gradient(circle at 22% 68%,rgba(197,162,74,.95) 0 1px,transparent 1.5px),
    radial-gradient(circle at 74% 83%,rgba(255,255,255,.55) 0 1px,transparent 1.5px),
    #030806
}
#techGlobe{
  width:100%;
  height:650px;
  display:block;
  cursor:grab;
  touch-action:pan-y;
  user-select:none;
  -webkit-user-select:none
}
.globe-stage.is-dragging #techGlobe{cursor:grabbing}
.globe-stage.is-pinching #techGlobe{cursor:zoom-in}

.earth-halo{fill:none;stroke:rgba(197,162,74,.12);stroke-width:18}
.earth-sphere{fill:#0f2f23;stroke:rgba(197,162,74,.78);stroke-width:1.4}
.earth-grid{fill:none;stroke:rgba(183,190,197,.22);stroke-width:.6}
.earth-land{fill:#244c3a;stroke:rgba(197,162,74,.42);stroke-width:.55}
.earth-borders{fill:none;stroke:rgba(243,235,221,.11);stroke-width:.35}

.location-node{cursor:pointer;user-select:none;-webkit-user-select:none}
.node-pulse{
  fill:none;
  stroke:var(--old-gold);
  stroke-width:1.4;
  opacity:.35;
  transform-box:fill-box;
  transform-origin:center;
  animation:nodePulse 2.1s ease-out infinite
}
.node-core{
  fill:#efd26f;
  stroke:#fff2c3;
  stroke-width:1.1;
  filter:drop-shadow(0 0 6px rgba(197,162,74,.8))
}
.location-node.active .node-core{r:7px}
.location-node:hover .node-core{stroke:#fff2c3;stroke-width:2}
.location-node.approximate .node-core{fill:var(--deep-root);stroke:var(--old-gold);stroke-width:2}
.location-node.approximate .node-pulse{stroke-dasharray:2.4 2.4;opacity:.7}
.location-node.reference .node-core{fill:#c9d2cb;stroke:var(--old-gold)}
.location-node.reference .node-pulse{stroke:#c9d2cb;stroke-dasharray:1.5 3}

.location-cluster{cursor:pointer}
.cluster-hit{fill:rgba(197,162,74,.001);stroke:none;pointer-events:all}
.cluster-pulse{
  fill:none;
  stroke:var(--old-gold);
  stroke-width:1.5;
  opacity:.44;
  stroke-dasharray:3 3;
  opacity:.52
}
.cluster-core{
  fill:var(--deep-root);
  stroke:#f0d47b;
  stroke-width:2.2;
  filter:drop-shadow(0 0 8px rgba(197,162,74,.76))
}
.location-cluster:hover .cluster-core,
.location-cluster.active .cluster-core{fill:var(--root-green);stroke:#fff2c3}
.cluster-pulse,.cluster-count,.cluster-label{pointer-events:none}
.cluster-count{
  fill:#fff2c3;
  font:900 10px/1 Arial,Helvetica,sans-serif;
  pointer-events:none
}
.cluster-label{
  fill:var(--old-gold);
  font:900 7px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.12em;
  paint-order:stroke;
  stroke:#07140f;
  stroke-width:3px;
  stroke-linejoin:round;
  pointer-events:none
}
.node-label{
  fill:var(--cream);
  font:900 9px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.05em;
  paint-order:stroke;
  stroke:#07140f;
  stroke-width:3px;
  stroke-linejoin:round;
  pointer-events:none
}
@keyframes nodePulse{0%{transform:scale(.6);opacity:.65}100%{transform:scale(1.5);opacity:0}}
.reduce-motion .node-pulse{animation:none;opacity:.38}
@media(prefers-reduced-motion:reduce){.node-pulse{animation:none;opacity:.38}}

.globe-hud{
  position:absolute;
  z-index:3;
  color:rgba(243,235,221,.72);
  font:900 9px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.12em;
  pointer-events:none
}
.hud-top-left{top:14px;left:16px}
.hud-top-right{top:14px;right:16px;text-align:right}
.hud-bottom-left{left:16px;bottom:14px}
.hud-bottom-right{right:16px;bottom:14px;text-align:right;opacity:.72}
.globe-loading{
  position:absolute;
  z-index:4;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  color:var(--old-gold);
  font:900 10px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.14em
}
.globe-tooltip{
  position:absolute;
  z-index:8;
  display:none;
  pointer-events:none;
  max-width:230px;
  border:1px solid var(--old-gold);
  border-radius:9px;
  background:var(--cream);
  color:var(--ink);
  padding:7px 9px;
  box-shadow:0 10px 24px rgba(0,0,0,.3);
  font:900 10px/1.25 Arial,Helvetica,sans-serif
}
.globe-tooltip.show{display:block}

.globe-cluster-panel{
  position:absolute;
  z-index:9;
  width:min(300px,calc(100% - 24px));
  border:1px solid rgba(197,162,74,.92);
  border-radius:15px;
  background:rgba(7,20,15,.96);
  color:var(--cream);
  padding:12px;
  box-shadow:0 18px 42px rgba(0,0,0,.44),inset 0 0 0 1px rgba(255,255,255,.04);
  backdrop-filter:blur(10px)
}
.globe-cluster-panel[hidden]{display:none!important}
.cluster-panel-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(197,162,74,.28)
}
.cluster-panel-head span{
  display:block;
  margin-bottom:5px;
  color:var(--old-gold);
  font:900 8px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.13em
}
.cluster-panel-head strong{
  font:900 11px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.08em
}
.cluster-panel-head>button{
  width:28px;
  height:28px;
  border:1px solid rgba(197,162,74,.46);
  border-radius:50%;
  background:rgba(243,235,221,.05);
  color:var(--cream);
  font:900 16px/1 Arial,Helvetica,sans-serif;
  cursor:pointer
}
.cluster-panel-current{
  padding:12px 2px 10px;
  color:#fff2c3;
  font:900 18px/1.05 Arial,Helvetica,sans-serif;
  letter-spacing:-.025em
}
.cluster-panel-nav{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:7px;
  margin-bottom:9px
}
.cluster-panel-nav span{
  color:rgba(243,235,221,.52);
  text-align:center;
  font:800 7px/1.2 Arial,Helvetica,sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase
}
.cluster-panel-nav button{
  border:1px solid rgba(197,162,74,.45);
  border-radius:999px;
  background:rgba(197,162,74,.08);
  color:var(--cream);
  padding:7px 9px;
  font:900 8px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.04em;
  text-transform:uppercase;
  cursor:pointer
}
.cluster-panel-nav button:hover,.cluster-panel-head>button:hover{background:var(--old-gold);color:var(--ink)}
.cluster-options{
  display:grid;
  gap:5px;
  max-height:152px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:var(--old-gold) rgba(243,235,221,.08)
}
.cluster-option{
  display:grid;
  grid-template-columns:26px 1fr;
  gap:8px;
  align-items:center;
  width:100%;
  border:1px solid rgba(183,190,197,.18);
  border-radius:9px;
  background:rgba(243,235,221,.04);
  color:var(--cream);
  padding:8px;
  text-align:left;
  cursor:pointer
}
.cluster-option>span:first-child{
  color:var(--old-gold);
  font:900 8px/1 Arial,Helvetica,sans-serif
}
.cluster-option>span:last-child{display:grid;gap:3px}
.cluster-option b{font:900 10px/1 Arial,Helvetica,sans-serif;letter-spacing:.025em}
.cluster-option small{color:rgba(243,235,221,.55);font:700 8px/1.2 Arial,Helvetica,sans-serif}
.cluster-option:hover,.cluster-option[aria-selected="true"]{
  border-color:var(--old-gold);
  background:rgba(197,162,74,.14)
}

.location-terminal{
  min-height:650px;
  padding:22px;
  border:1px solid rgba(197,162,74,.6);
  border-radius:22px;
  background:rgba(243,235,221,.965);
  color:var(--ink);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)
}
.terminal-status{
  display:flex;
  gap:8px;
  align-items:center;
  color:var(--bark);
  font:900 9px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.13em
}
.terminal-status span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--old-gold);
  box-shadow:0 0 0 4px rgba(197,162,74,.18)
}
.terminal-id{
  margin-top:52px;
  color:var(--root-green);
  font:900 10px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.16em
}
.location-terminal h2{
  margin:8px 0 7px;
  color:var(--deep-root);
  font-size:42px;
  line-height:.96;
  letter-spacing:-.05em
}
.location-terminal>p{color:#5d6058;font-size:13px;line-height:1.5}
.terminal-rule{
  height:4px;
  margin:22px 0;
  border-radius:999px;
  background:linear-gradient(90deg,var(--old-gold),transparent)
}
.location-terminal dl{margin:0}
.location-terminal dl>div{padding:11px 0;border-bottom:1px solid #d7ccbc}
.location-terminal dt{
  margin-bottom:5px;
  color:var(--bark);
  font:900 8px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase
}
.location-terminal dd{margin:0;font-size:13px;font-weight:800}
.location-terminal dd a{color:var(--root-green)}
.terminal-note{
  margin-top:20px!important;
  padding:14px;
  border:1px solid #d7ccbc;
  border-radius:12px;
  background:var(--parchment);
  font-size:12px!important
}
/* Selected-globe-place context for a character associated with a wider region, not city limits. */
.terminal-regional{
  margin-top:12px;
  padding:13px 14px;
  border:1px solid #cbb78f;
  border-left:3px solid #9c7c40;
  border-radius:12px;
  background:rgba(197,162,74,.12)
}
.terminal-regional[hidden]{display:none}
.terminal-regional-heading{
  display:block;
  color:#70552a;
  font:900 9px/1.5 Arial,Helvetica,sans-serif;
  letter-spacing:.1em
}
.terminal-regional p{
  margin:7px 0 0;
  color:#3b4f41;
  font:650 12px/1.55 Arial,Helvetica,sans-serif
}
.terminal-regional a{
  color:var(--root-green);
  font-weight:900;
  text-decoration:underline;
  text-underline-offset:2px
}
.terminal-regional a:focus-visible{outline:2px solid var(--root-green);outline-offset:2px}

.location-explore{
  display:inline-flex;
  margin-top:16px;
  color:var(--deep-root);
  font:900 10px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
  text-decoration:none
}
.location-explore[hidden]{display:none!important}
.location-explore:hover{text-decoration:underline}

.location-index{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  margin-top:12px
}
.location-index button{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:9px;
  padding:12px;
  border:1px solid rgba(183,190,197,.27);
  border-radius:14px;
  background:rgba(243,235,221,.06);
  color:var(--cream);
  text-align:left;
  cursor:pointer
}
.location-index button:hover,
.location-index button.active{border-color:var(--old-gold);background:rgba(197,162,74,.12)}
.location-index span{
  grid-row:1/3;
  padding-top:2px;
  color:var(--old-gold);
  font:900 10px/1 Arial,Helvetica,sans-serif
}
.location-index b{font:900 11px/1 Arial,Helvetica,sans-serif;letter-spacing:.04em}
.location-index small{
  margin-top:3px;
  color:rgba(243,235,221,.6);
  font:700 9px/1.3 Arial,Helvetica,sans-serif
}

.globe-scope-note{
  position:relative;
  z-index:2;
  margin:12px 2px 0;
  color:rgba(243,235,221,.68);
  font:800 9px/1.5 Arial,Helvetica,sans-serif;
  letter-spacing:.045em
}
.globe-scope-note strong{color:var(--old-gold)}

@media(max-width:980px){
  .world-layout{grid-template-columns:1fr}
  .location-terminal{min-height:auto}
  .terminal-id{margin-top:26px}
  .location-index{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .world-console{padding:11px;border-radius:20px}
  .world-console-bar{align-items:flex-start;flex-direction:column}
  .globe-stage,#techGlobe{min-height:500px;height:500px}
  .location-terminal h2{font-size:36px}
  .location-index{grid-template-columns:1fr 1fr}
  .hud-top-right{top:30px;right:12px}
  .hud-bottom-left{max-width:62%;font-size:8px;line-height:1.3}
  .hud-bottom-right{right:12px;bottom:30px;font-size:8px}
  .globe-cluster-panel{width:min(280px,calc(100% - 20px));padding:10px}
  .cluster-panel-current{font-size:16px}
}
@media(max-width:430px){
  .location-index{grid-template-columns:1fr}
  .globe-stage,#techGlobe{min-height:460px;height:460px}
  .hud-bottom-right{display:none}
}


/* OR-WEB-0007 — mobile globe consistency */
@media(max-width:640px){
  .world-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .world-controls button{width:100%;min-height:38px}
  .globe-stage,#techGlobe{height:min(105vw,430px);min-height:360px}
  .location-terminal{padding:17px}
  .terminal-id{margin-top:20px}
  .location-index{grid-template-columns:1fr}
  .globe-cluster-panel{left:10px!important;right:10px!important;width:auto;max-width:none}
  .cluster-panel-nav{grid-template-columns:1fr 1fr}
  .cluster-panel-nav span{grid-column:1/-1;grid-row:1}
  .hud-top-left{top:11px;left:11px}
  .hud-top-right{top:11px;right:11px}
  .hud-bottom-left{display:none}
}
@media(max-width:430px){
  .world-console{padding:9px}
  .globe-stage,#techGlobe{height:min(108vw,390px);min-height:330px}
  .location-terminal h2{font-size:32px}
  .world-controls{grid-template-columns:1fr}
}


/* =========================================================
   OR-WEB-0016 · AFTER DARK · LOCATIONS / GLOBE
   ========================================================= */
body.oldroot-after-dark .world-console{
  border-color:rgba(197,162,74,.30);
  background:
    radial-gradient(circle at 50% 44%,rgba(45,116,79,.34),transparent 44%),
    radial-gradient(circle at 84% 12%,rgba(197,162,74,.07),transparent 22rem),
    linear-gradient(150deg,#04110c,#082219 55%,#020a07);
  box-shadow:0 34px 96px rgba(0,0,0,.34);
}
body.oldroot-after-dark .world-console::before{
  opacity:.14;
  background-image:
    linear-gradient(rgba(197,162,74,.11) 1px,transparent 1px),
    linear-gradient(90deg,rgba(197,162,74,.11) 1px,transparent 1px);
  background-size:42px 42px
}
body.oldroot-after-dark .world-controls button{
  border-color:rgba(197,162,74,.28);
  border-radius:10px;
  background:rgba(4,18,12,.54);
  color:var(--after-muted);
}
body.oldroot-after-dark .world-controls button:hover,
body.oldroot-after-dark .world-controls button.active{
  color:#06110d;
  background:var(--old-gold);
  border-color:var(--old-gold)
}
body.oldroot-after-dark .globe-stage{
  border-color:rgba(243,235,221,.10);
  background:
    radial-gradient(circle at 18% 24%,rgba(255,255,255,.72) 0 1px,transparent 1.5px),
    radial-gradient(circle at 72% 30%,rgba(255,255,255,.52) 0 1px,transparent 1.5px),
    radial-gradient(circle at 83% 72%,rgba(197,162,74,.72) 0 1px,transparent 1.5px),
    radial-gradient(circle at 35% 84%,rgba(255,255,255,.45) 0 1px,transparent 1.5px),
    radial-gradient(circle at 50% 50%,rgba(28,84,58,.14),transparent 28rem),
    linear-gradient(180deg,#020906,#04120c);
  box-shadow:inset 0 0 100px rgba(0,0,0,.28);
}
body.oldroot-after-dark .earth-sphere{fill:#0b2b1e}
body.oldroot-after-dark .earth-land{fill:#1f5139}
body.oldroot-after-dark .earth-grid{stroke:rgba(183,190,197,.18)}
body.oldroot-after-dark .earth-borders{stroke:rgba(243,235,221,.09)}
body.oldroot-after-dark .location-terminal{
  color:var(--after-text);
  border-color:rgba(197,162,74,.26);
  background:
    radial-gradient(circle at 100% 0%,rgba(52,126,88,.10),transparent 18rem),
    linear-gradient(145deg,rgba(8,29,20,.95),rgba(4,17,12,.94));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 24px 60px rgba(0,0,0,.22);
}
body.oldroot-after-dark .terminal-status{color:var(--after-faint)}
body.oldroot-after-dark .terminal-id{color:var(--old-gold)}
body.oldroot-after-dark .location-terminal h2{color:var(--after-text)}
body.oldroot-after-dark .location-terminal>p{color:var(--after-muted)}
body.oldroot-after-dark .location-terminal dl>div{
  border-bottom-color:rgba(243,235,221,.08);
}
body.oldroot-after-dark .location-terminal dt{color:var(--old-gold)}
body.oldroot-after-dark .location-terminal dd{color:var(--after-text)}
body.oldroot-after-dark .location-terminal dd a{color:#d9c27c}
body.oldroot-after-dark .terminal-note{
  color:var(--after-muted);
  border-color:rgba(243,235,221,.10);
  background:rgba(12,38,26,.58);
}
body.oldroot-after-dark .location-explore{color:var(--old-gold)}
body.oldroot-after-dark .location-index button{
  border-color:rgba(243,235,221,.09);
  background:rgba(4,18,12,.50);
}
body.oldroot-after-dark .location-index button:hover,
body.oldroot-after-dark .location-index button.active{
  border-color:rgba(197,162,74,.32);
  background:rgba(197,162,74,.10);
}
body.oldroot-after-dark .globe-tooltip{
  color:var(--after-text);
  background:#071b12;
  border-color:rgba(197,162,74,.50);
}
body.oldroot-after-dark .globe-cluster-panel{
  background:rgba(3,14,9,.97);
  border-color:rgba(197,162,74,.45);
}
body.oldroot-after-dark .cluster-option{
  border-color:rgba(243,235,221,.08);
  background:rgba(12,38,26,.46);
}


/* =========================================================
   OR-WEB-0053 · WORLD INDEX COSMIC HORIZON
   Dark directory treatment + cosmic scale foreshadowing.
   ========================================================= */
.locations-cosmic-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(330px,390px);
  gap:24px;
  align-items:stretch;
}
.locations-cosmic-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
.location-cosmic-panel{
  min-width:0;
  padding:15px;
  border:1px solid rgba(197,162,74,.34);
  border-radius:18px;
  background:
    radial-gradient(circle at 80% 18%,rgba(85,149,112,.12),transparent 52%),
    rgba(3,15,10,.72);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.018),
    0 18px 42px rgba(0,0,0,.23);
  overflow:hidden;
}
.location-cosmic-panel>span{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
  color:var(--old-gold);
  font:850 8px/1 var(--font-sans);
  letter-spacing:.15em;
}
.location-cosmic-panel>span::after{
  content:"";
  flex:1;
  height:1px;
  background:linear-gradient(90deg,rgba(197,162,74,.42),transparent);
}
.location-cosmic-image{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:760/500;
  object-fit:contain;
  border:1px solid rgba(197,162,74,.16);
  border-radius:14px;
  background:#020906;
}
.location-cosmic-panel small{
  display:block;
  padding-top:9px;
  color:rgba(243,235,221,.56);
  font:760 8px/1.35 var(--font-sans);
  letter-spacing:.09em;
}

.location-jumpbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:14px 0 18px;
  padding:12px 14px;
  border:1px solid rgba(243,235,221,.085);
  border-radius:15px;
  background:
    linear-gradient(90deg,rgba(52,126,88,.08),transparent 42%),
    rgba(4,17,12,.58);
  box-shadow:0 16px 38px rgba(0,0,0,.15);
}
.location-jumpbar span{
  display:grid;
  gap:4px;
}
.location-jumpbar b{
  color:var(--old-gold);
  font:850 8px/1 var(--font-sans);
  letter-spacing:.15em;
}
.location-jumpbar small{
  color:rgba(243,235,221,.54);
  font:680 10px/1.35 var(--font-sans);
}
.location-jumpbar a{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:40px;
  padding:9px 13px;
  border:1px solid rgba(197,162,74,.38);
  border-radius:999px;
  background:rgba(197,162,74,.09);
  color:var(--cream);
  font:820 9px/1 var(--font-sans);
  letter-spacing:.06em;
  text-transform:uppercase;
  text-decoration:none;
  white-space:nowrap;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.location-jumpbar a:hover,
.location-jumpbar a:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(197,162,74,.68);
  background:rgba(197,162,74,.17);
}
.location-jumpbar i{
  color:var(--old-gold);
  font-style:normal;
  font-size:14px;
}

body.oldroot-after-dark .locations-page .location-dossier-list{
  position:relative;
  overflow:hidden;
  color:var(--after-text);
  border:1px solid rgba(243,235,221,.085);
  background:
    radial-gradient(circle at 86% 0%,rgba(63,136,94,.10),transparent 24rem),
    radial-gradient(circle at 14% 100%,rgba(197,162,74,.045),transparent 20rem),
    linear-gradient(145deg,rgba(6,23,16,.88),rgba(3,14,10,.80));
  box-shadow:
    0 30px 82px rgba(0,0,0,.23),
    inset 0 1px rgba(243,235,221,.018);
}
body.oldroot-after-dark .locations-page .location-dossier-list::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(197,162,74,.18),transparent 19%) top left/100% 1px no-repeat,
    linear-gradient(118deg,transparent 0 73%,rgba(95,155,121,.03) 73.2% 73.4%,transparent 73.6%);
}
body.oldroot-after-dark .locations-page .location-dossier-list>*{
  position:relative;
  z-index:1;
}
body.oldroot-after-dark .locations-page .location-dossier-list .home-section-heading{
  align-items:center;
}
body.oldroot-after-dark .locations-page .location-dossier-list .lead-kicker{
  color:var(--old-gold);
  letter-spacing:.18em;
}
body.oldroot-after-dark .locations-page .location-dossier-list .home-section-heading h2{
  color:var(--after-text);
  font-size:clamp(38px,4.4vw,58px);
  text-shadow:0 12px 36px rgba(0,0,0,.20);
}
.location-directory-meta{
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 11px;
  border:1px solid rgba(243,235,221,.08);
  border-radius:12px;
  background:rgba(3,14,9,.46);
}
.location-directory-meta strong{
  color:var(--old-gold);
  font:900 28px/.9 var(--font-display);
}
.location-directory-meta span{
  color:rgba(243,235,221,.46);
  font:800 7px/1.25 var(--font-sans);
  letter-spacing:.13em;
}
body.oldroot-after-dark .locations-page .location-dossier-cards{
  gap:12px;
}
body.oldroot-after-dark .locations-page .location-dossier-cards a.place-card{
  min-height:164px;
  border-color:rgba(243,235,221,.085);
  color:var(--after-text);
  background:
    radial-gradient(circle at 88% 12%,var(--place-haze),transparent 11rem),
    linear-gradient(145deg,rgba(7,26,18,.82),rgba(3,15,10,.74));
  box-shadow:inset 0 1px rgba(243,235,221,.015);
}
body.oldroot-after-dark .locations-page .location-dossier-cards a.place-card::before{
  background:linear-gradient(90deg,var(--place-accent),transparent);
  box-shadow:0 0 16px color-mix(in srgb,var(--place-accent) 20%,transparent);
}
body.oldroot-after-dark .locations-page .location-dossier-cards a.place-card h3{
  color:var(--after-text);
  margin-top:20px;
}
body.oldroot-after-dark .locations-page .location-dossier-cards a.place-card p{
  color:var(--after-muted);
}
body.oldroot-after-dark .locations-page .location-dossier-cards a.place-card:hover,
body.oldroot-after-dark .locations-page .location-dossier-cards a.place-card:focus-visible{
  background:
    radial-gradient(circle at 88% 12%,var(--place-haze),transparent 11rem),
    linear-gradient(145deg,rgba(10,34,24,.88),rgba(5,20,14,.82));
}

@media(max-width:900px){
  .locations-cosmic-head{
    grid-template-columns:1fr;
  }
  .location-cosmic-panel{
    max-width:560px;
  }
}
@media(max-width:680px){
  .location-jumpbar{
    align-items:flex-start;
    flex-direction:column;
  }
  .location-jumpbar a{
    width:100%;
    justify-content:center;
  }
  body.oldroot-after-dark .locations-page .location-dossier-list .home-section-heading{
    align-items:flex-start;
  }
  .location-directory-meta{
    align-self:flex-start;
  }
}
@media(max-width:430px){
  .location-cosmic-panel{
    padding:12px;
  }
  .location-directory-meta strong{
    font-size:24px;
  }
}

/* OR-WEB-0054 · quiet galaxy header emblem */
.location-cosmic-panel{display:flex;align-items:center;justify-content:center;padding:12px;background:radial-gradient(ellipse at center,rgba(45,105,74,.12),transparent 74%),rgba(3,15,10,.72)}
.location-cosmic-image{display:block;width:100%;height:auto;max-height:270px;object-fit:contain;border:0;border-radius:12px;background:transparent}
@media(max-width:980px){.location-cosmic-image{max-height:240px}}

/* OR-WEB-0055 — reference-traced galaxy, no faux infographic framing */
.locations-cosmic-head{align-items:center}
.location-cosmic-panel{min-height:236px;margin-inline:auto;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
.location-cosmic-image{display:block;width:min(100%,340px);max-height:254px;height:auto;aspect-ratio:320/264;object-fit:contain;border:0;border-radius:0;background:transparent;filter:drop-shadow(0 8px 22px rgba(0,0,0,.15))}
@media(max-width:900px){.location-cosmic-panel{width:100%;min-height:200px}.location-cosmic-image{width:min(100%,300px)}}
@media(max-width:680px){.location-cosmic-panel{min-height:165px}.location-cosmic-image{width:min(72vw,255px);max-height:210px}}

/* OR-WEB-0056 · original OldRoot galaxy mark; balanced proportions */
.location-cosmic-image{aspect-ratio:24/19;max-width:340px;filter:drop-shadow(0 7px 17px rgba(0,0,0,.22))}
@media(max-width:680px){.location-cosmic-image{max-width:255px}}
