:root{
  --paper:#e7dfd0;
  --ink:#1d1c18;
  --muted:#6f685d;
  --rule:rgba(29,28,24,.22);
  --accent:#8d5c3f;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --page:min(84rem,calc(100% - 3rem));
  --measure:46rem;
}

*{box-sizing:border-box}

html{
  scroll-behavior:smooth;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

body{
  margin:0;
  min-width:18rem;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--serif);
  font-size:1.08rem;
  line-height:1.55;
}

a{color:inherit;text-decoration-color:var(--accent);text-underline-offset:.2em}
button,textarea{font:inherit}
button{color:inherit}
button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:3px;
}

[hidden]{display:none!important}

.sr-only,.skip-link{
  position:absolute;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}
.skip-link:focus{
  width:auto;height:auto;
  margin:0;padding:.7rem 1rem;
  clip:auto;overflow:visible;
  z-index:100;
  background:var(--paper);
}

.site-header,
main,
footer{
  width:var(--page);
  margin-inline:auto;
}

.site-header{
  min-height:4.3rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  border-bottom:1px solid var(--rule);
}

.identity{
  text-decoration:none;
  font-weight:700;
}

.site-nav{
  display:flex;
  align-items:center;
  gap:1rem;
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.site-nav a{
  text-decoration:none;
}

.eyebrow,
.footing,
.specimen-kind,
.specimen-note,
.specimen-status,
footer,
.trail-console,
.footing-rail,
.ground-talk,
.depth-kind{
  font-family:var(--mono);
}


.threshold{
  width:100%;
  padding:0 0 3rem;
}

/* One Dawson stage. The page itself may scroll; the stage never has its own scrollbar. */
.experience-shell{
  --scene-bg:#eee2c8;
  --scene-ink:#24231e;
  --scene-muted:#756f61;
  --scene-rule:rgba(36,35,30,.2);
  --scene-accent:#936345;

  width:100vw;
  min-height:calc(100svh - 4.3rem);
  display:block;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  background:var(--scene-bg);
  color:var(--scene-ink);
  border-bottom:1px solid var(--scene-rule);
  transition:background-color .25s ease,color .25s ease;
}

body[data-ground="night"] .experience-shell{
  --scene-bg:#15191d;
  --scene-ink:#ece8df;
  --scene-muted:#a9afb0;
  --scene-rule:rgba(236,232,223,.18);
  --scene-accent:#d39461;
  background:
    radial-gradient(circle at 18% 78%,rgba(209,148,91,.10),transparent 22rem),
    #15191d;
}

body[data-ground="morning"] .experience-shell{
  --scene-bg:#eee2c8;
  --scene-ink:#24231e;
  --scene-muted:#756f61;
  --scene-rule:rgba(36,35,30,.20);
  --scene-accent:#936345;
}

body[data-ground="southeast"] .experience-shell{
  --scene-bg:#e4dcc3;
  --scene-ink:#20231d;
  --scene-muted:#687064;
  --scene-rule:rgba(32,35,29,.20);
  --scene-accent:#765b3f;
}

body[data-ground="blue-water"] .experience-shell{
  --scene-bg:#d9dfdb;
  --scene-ink:#1c2422;
  --scene-muted:#5d6a66;
  --scene-rule:rgba(28,36,34,.20);
  --scene-accent:#685b46;
}

body[data-ground="dozen"] .experience-shell{
  --scene-bg:#e8dcc0;
  --scene-ink:#242019;
  --scene-muted:#756b59;
  --scene-rule:rgba(36,32,25,.20);
  --scene-accent:#855a3e;
}

.experience-stage,
.experience-tools{
  width:min(50rem,calc(100% - 2rem));
  margin-inline:auto;
}

.experience-stage{
  min-height:0;
  display:block;
  padding:clamp(3rem,7vh,4.2rem) 0 .2rem;
  overflow:visible;
}

.experience-mount{
  width:100%;
  overflow:visible;
}

[data-scene]{
  display:none;
}

[data-scene].is-current{
  display:grid;
  grid-template-columns:minmax(0,32%) minmax(0,68%);
  grid-template-rows:auto auto;
  column-gap:clamp(.9rem,2.2vw,1.5rem);
  row-gap:.7rem;
  width:100%;
  align-items:start;
}

[data-scene][tabindex="-1"]:focus{outline:none}

.scene-setting{
  display:contents;
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.scene-source{
  grid-column:1;
  grid-row:1;
  align-self:end;
  color:var(--scene-muted);
  text-align:right;
}
.scene-place{
  grid-column:2;
  grid-row:1;
  align-self:end;
  color:var(--scene-muted);
  text-align:left;
}

.passage h2{
  grid-column:1;
  grid-row:2;
  justify-self:end;
  margin:0;
  max-width:9ch;
  color:var(--scene-ink);
  font-size:clamp(2.35rem,4.6vw,4.2rem);
  font-weight:400;
  line-height:.98;
  letter-spacing:-.04em;
  text-align:right;
  text-wrap:balance;
}

.first-person-view{
  grid-row:1;
}

.plain-copy,
.first-person-view{
  grid-column:2;
  grid-row:2;
  max-width:34rem;
  margin:0;
  color:var(--scene-ink);
  font-size:clamp(1.08rem,1.45vw,1.22rem);
}

.first-person-view{
  display:block;
  padding:0;
}

.fpv-open,
.fpv-close{
  font-family:var(--mono);
  color:var(--scene-accent);
  font-size:1rem;
  line-height:1;
}

.fpv-open{margin-bottom:.55rem}
.fpv-close{margin-top:.55rem}

.view-body{
  max-width:46rem;
}

.view-body p{
  margin:0 0 .62em;
}

.view-body p:last-child{
  margin-bottom:0;
}

.fpv-footing{
  margin-top:.55rem;
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.72rem;
  line-height:1.45;
}
.fpv-footing p{
  margin:0;
}
.fpv-footing p+p{
  margin-top:.1rem;
}
.ten-footing{
  color:var(--scene-ink);
}
.companion-footing{
  color:var(--scene-muted);
}

.passage-actions{display:none!important}

.inline-depth{
  display:inline;
  padding:0;
  border:0;
  border-bottom:1px solid var(--scene-accent);
  background:transparent;
  color:inherit;
  cursor:pointer;
}
.inline-depth:hover,
.inline-depth[aria-expanded="true"]{color:var(--scene-accent)}

.depth-slip{
  margin:.9rem 0 1rem;
  padding:.9rem 0 0;
  border-top:1px solid var(--scene-rule);
  color:var(--scene-ink);
}
.depth-slip-head{
  display:flex;
  justify-content:space-between;
  gap:1rem;
}
.depth-kind{
  margin:0 0 .2rem;
  color:var(--scene-accent);
  font-size:.66rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.depth-slip h3{
  margin:0;
  font-size:1.3rem;
  font-weight:400;
}
.depth-close{
  border:0;
  background:transparent;
  color:var(--scene-muted);
  cursor:pointer;
}
.depth-near,.depth-brake{
  margin:.65rem 0 0;
  font-size:.92rem;
}
.depth-brake{color:var(--scene-muted)}

.experience-tools{
  padding:0 0 1rem;
  margin-top:0;
}

.trail-console{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
  min-height:3.4rem;
  align-items:center;
  border-top:1px solid var(--scene-rule);
}

.trail-control{
  width:fit-content;
  max-width:100%;
  padding:.65rem 0;
  border:0;
  background:transparent;
  color:var(--scene-ink);
  font-size:.83rem;
  line-height:1.3;
  cursor:pointer;
}
.trail-control:hover{color:var(--scene-accent)}
.trail-control-back{justify-self:start;text-align:left}
.trail-control-next{justify-self:end;text-align:right}
.trail-control:disabled{visibility:hidden}

.experience-utility{
  display:grid;
  grid-template-columns:minmax(0,32%) minmax(0,68%);
  column-gap:clamp(.9rem,2.2vw,1.5rem);
  margin:0;
}
.experience-utility .ground-thread,
.experience-utility .ground-talk{
  grid-column:2;
  max-width:34rem;
}
.experience-utility .ground-talk{
  margin-top:.05rem;
}

.ground-talk{
  width:100%;
  color:var(--scene-ink);
  font-size:.82rem;
}

.ground-talk input{
  width:100%;
  padding:.12rem 0 .18rem;
  border:0;
  border-radius:0;
  outline:0;
  background:transparent;
  color:var(--scene-ink);
  font-family:var(--mono);
  font-size:.82rem;
  letter-spacing:.01em;
}

.ground-talk input::placeholder{
  color:var(--scene-muted);
  opacity:1;
}

.ground-talk input:focus{
  border-bottom-color:var(--scene-accent);
}

footer{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:1rem;
  padding:.9rem 0 1.15rem;
  border-top:1px solid var(--rule);
  color:var(--muted);
  font-size:.68rem;
}
footer p{margin:0}
footer a{text-decoration:none}

.noscript-note{
  width:var(--page);
  margin:1rem auto;
  color:var(--muted);
}



.ground-carry{
  display:flex;
  align-items:baseline;
  gap:.55rem;
  margin-top:.45rem;
}
.ground-carry-button{
  padding:.18rem 0;
  border:0;
  border-bottom:1px solid var(--scene-accent);
  background:transparent;
  color:var(--scene-ink);
  font-family:var(--mono);
  font-size:.64rem;
  cursor:pointer;
}
.ground-carry-button:disabled{
  color:var(--scene-muted);
  border-bottom-color:transparent;
  cursor:default;
}
.ground-carry-note{
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.58rem;
}
@media(max-width:52rem){
  .ground-carry{display:block}
  .ground-carry-note{display:block;margin-top:.22rem}
}

.folio-keep{
  margin-top:.7rem;
  padding:.28rem 0;
  border:0;
  border-bottom:1px solid var(--scene-accent);
  background:transparent;
  color:var(--scene-ink);
  font-family:var(--mono);
  font-size:.66rem;
  cursor:pointer;
}
.folio-keep:disabled{
  color:var(--scene-muted);
  border-bottom-color:transparent;
  cursor:default;
}
.camp-folio-body{
  display:grid;
  gap:1rem;
}
.folio-empty{
  max-width:35rem;
  color:var(--scene-muted);
}
.folio-group{
  border-top:1px solid var(--scene-rule);
  padding-top:.7rem;
}
.folio-group>h3{
  margin:0 0 .5rem;
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.64rem;
  letter-spacing:.08em;
  font-weight:400;
}
.folio-card{
  padding:.7rem 0;
  border-bottom:1px solid var(--scene-rule);
}
.folio-card-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:1rem;
}
.folio-card-head strong{
  font-size:1.18rem;
  font-weight:400;
}
.folio-card p{
  max-width:38rem;
  margin:.3rem 0 0;
  font-size:.92rem;
}
.folio-card small{
  display:block;
  margin-top:.38rem;
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.62rem;
}
.folio-brake{color:var(--scene-muted)}
.folio-remove{
  border:0;
  background:transparent;
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.6rem;
  cursor:pointer;
}

@media(max-width:52rem){
  :root{--page:min(100% - 1.5rem,46rem)}

  .site-header{
    min-height:4rem;
  }

  .identity{font-size:1rem}
  .site-nav{font-size:.68rem}

  .experience-shell{
    min-height:calc(100svh - 4rem);
  }

  .experience-stage{
    min-height:28rem;
    padding:1.1rem 0 1rem;
  }

  [data-scene].is-current{
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto;
    row-gap:.6rem;
  }

  .scene-setting{
    display:block;
    grid-column:1;
    grid-row:1;
    margin-bottom:.35rem;
    font-size:.64rem;
  }

  .scene-source,
  .scene-place{
    display:block;
    color:var(--scene-muted);
    text-align:left;
  }

  .scene-place{
    margin-top:.12rem;
  }

  .passage h2{
    grid-column:1;
    grid-row:2;
    justify-self:start;
    max-width:14ch;
    margin:0;
    font-size:clamp(2.1rem,9vw,3.3rem);
    text-align:left;
  }

  .plain-copy,.first-person-view{
    grid-column:1;
    grid-row:3;
    max-width:none;
    font-size:1.03rem;
  }

  .first-person-view{
    display:block;
    padding:0;
  }

  .view-body{
    min-height:0;
  }

  .fpv-footing{
    font-size:.67rem;
  }

  .trail-console{
    min-height:3.2rem;
  }

  .trail-control{
    font-size:.8rem;
    white-space:normal;
  }

  .experience-utility{
    display:block;
    margin:.35rem 0 0;
    padding:.2rem 0;
  }

  .ground-talk{
    width:100%;
  }

  .experiences-head{
    display:block;
  }
  .experiences-head span{
    display:block;
    margin-top:.25rem;
    text-align:left;
  }

  .specimen-row{
    grid-template-columns:1fr auto;
    gap:.25rem 1rem;
  }
  .specimen-kind,
  .specimen-row strong,
  .specimen-note{grid-column:1}
  .specimen-row b{
    grid-column:2;
    grid-row:1 / 4;
    align-self:center;
  }

  footer{display:block}
  footer a{display:inline-block;margin-top:.5rem}
}



/* Dawn is a change in held ground, not a page flash. */
.experience-shell[data-dawn]{
  transition:
    background-color 1.05s ease,
    color 1.05s ease,
    filter 1.05s ease;
}
.experience-shell[data-dawn="predawn"]{
  --scene-bg:#171b1d;
  --scene-ink:#dedbd3;
  --scene-muted:#979d9b;
  --scene-rule:rgba(222,219,211,.15);
  --scene-accent:#bf8560;
  background:
    radial-gradient(circle at 50% 115%,rgba(91,105,118,.10),transparent 30rem),
    radial-gradient(circle at 18% 80%,rgba(187,121,70,.07),transparent 20rem),
    #171b1d;
}
.experience-shell[data-dawn="gray"]{
  --scene-bg:#343b3d;
  --scene-ink:#e4e0d7;
  --scene-muted:#b0b1aa;
  --scene-rule:rgba(228,224,215,.16);
  --scene-accent:#c58c63;
  background:
    radial-gradient(circle at 50% 110%,rgba(147,156,158,.14),transparent 32rem),
    radial-gradient(circle at 18% 82%,rgba(188,127,76,.06),transparent 20rem),
    #343b3d;
}
.experience-shell[data-dawn="edges"]{
  --scene-bg:#8f9188;
  --scene-ink:#f2eee4;
  --scene-muted:#d5d0c5;
  --scene-rule:rgba(242,238,228,.20);
  --scene-accent:#d2a27b;
  background:
    linear-gradient(to bottom,rgba(213,207,191,.16),transparent 56%),
    #8f9188;
}
.experience-shell[data-dawn="first-light"]{
  --scene-bg:#d7cfb9;
  --scene-ink:#2c2a24;
  --scene-muted:#797266;
  --scene-rule:rgba(44,42,36,.19);
  --scene-accent:#9b6949;
  background:
    linear-gradient(to bottom,rgba(247,235,208,.30),transparent 52%),
    #d7cfb9;
}
.experience-shell[data-dawn] .experience-stage{
  transition:opacity .8s ease,filter .9s ease;
}
.experience-shell[data-dawn="predawn"] .experience-stage{opacity:.82;filter:contrast(.94)}
.experience-shell[data-dawn="gray"] .experience-stage{opacity:.88;filter:contrast(.96)}
.experience-shell[data-dawn="edges"] .experience-stage{opacity:.94;filter:contrast(.98)}
.experience-shell[data-dawn="first-light"] .experience-stage{opacity:1;filter:none}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .experience-shell,
  .experience-shell[data-dawn],
  .experience-shell[data-dawn] .experience-stage{transition:none}
}


.experience-shell[data-presence="fire"]{
  background:
    radial-gradient(circle at 18% 88%,rgba(179,106,55,.10),transparent 18rem),
    var(--scene-bg);
}
body[data-ground="night"] .experience-shell[data-presence="fire"]{
  background:
    radial-gradient(circle at 20% 82%,rgba(220,139,73,.18),transparent 20rem),
    #15191d;
}


.experience-shell[data-presence="night"]{
  --scene-bg:#171816;
  --scene-ink:#f0ece2;
  --scene-muted:#a8a397;
  --scene-rule:rgba(240,236,226,.18);
  --scene-accent:#d19a69;
  background:
    radial-gradient(circle at 50% 115%,rgba(123,138,155,.08),transparent 26rem),
    #171816;
}

.experience-shell[data-presence="fire-night"]{
  --scene-bg:#141412;
  --scene-ink:#f3eee4;
  --scene-muted:#aaa296;
  --scene-rule:rgba(243,238,228,.18);
  --scene-accent:#e0a15f;
  background:
    radial-gradient(circle at 22% 88%,rgba(224,132,58,.24),transparent 17rem),
    radial-gradient(circle at 52% 118%,rgba(108,121,139,.08),transparent 28rem),
    #141412;
}

.experience-shell[data-presence="night"] .fpv-open,
.experience-shell[data-presence="night"] .fpv-close,
.experience-shell[data-presence="fire-night"] .fpv-open,
.experience-shell[data-presence="fire-night"] .fpv-close{
  color:var(--scene-accent);
}

.experience-shell[data-presence="fire-night"] .ground-talk input::placeholder{
  color:#c3ad98;
}

.ground-thread{
  display:block;
  margin:.15rem 0 0;
}

.ten-utterance{
  margin:.32rem 0 0;
  color:var(--scene-ink);
  font-family:var(--serif);
  font-size:clamp(1.15rem,1.7vw,1.42rem);
  line-height:1.12;
  letter-spacing:-.015em;
  text-align:left;
  text-wrap:pretty;
  white-space:normal;
}


.ground-input-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.65rem;
  align-items:end;
  border-bottom:1px solid var(--scene-accent);
}
.ground-input-row .ground-send{
  min-width:3.6rem;
  margin:0 0 .08rem;
  padding:.38rem .48rem;
  border:1px solid var(--scene-rule);
  background:transparent;
  color:var(--scene-ink);
  font:600 .62rem/1 var(--mono);
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
}
.ground-input-row .ground-send:hover,
.ground-input-row .ground-send:focus-visible{
  border-color:var(--scene-accent);
  color:var(--scene-accent);
}
.ground-input-row .ground-send:disabled{
  opacity:.45;
  cursor:default;
}
.ground-hint{
  margin-top:.42rem;
  padding:0;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:var(--scene-muted);
  font:600 .61rem/1.3 var(--mono);
  letter-spacing:.05em;
  text-transform:uppercase;
  cursor:pointer;
}
.ground-hint:hover,
.ground-hint:focus-visible{
  color:var(--scene-ink);
  border-bottom-color:var(--scene-accent);
}
.ground-hint-copy{
  margin:.38rem 0 0;
  max-width:34rem;
  color:var(--scene-muted);
  font:.68rem/1.45 var(--mono);
}

.ground-talk textarea{
  display:block;
  width:100%;
  min-height:1.65rem;
  max-height:11.25rem;
  resize:none;
  overflow-y:auto;
  padding:.12rem 0 .18rem;
  border:0;
  border-radius:0;
  outline:0;
  background:transparent;
  color:var(--scene-ink);
  font-family:var(--mono);
  font-size:.82rem;
  line-height:1.35;
  letter-spacing:.01em;
}

.ground-talk textarea::placeholder{
  color:var(--scene-muted);
  opacity:1;
}

.listening-error{
  margin:.25rem 0 0;
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.68rem;
  line-height:1.35;
}

@media(max-width:52rem){
  .ground-input-row{
    gap:.5rem;
  }
  .ground-input-row .ground-send{
    min-width:4.4rem;
    min-height:2.55rem;
    padding:.5rem .6rem;
  }
  .ground-hint{
    min-height:2rem;
    padding:.35rem 0;
  }

  .first-person-view,
  .view-body,
  .fpv-footing,
  .ten-footing,
  .companion-footing,
  .ground-talk,
  .ground-talk textarea,
  .ground-thread,
  .ten-utterance{
    text-align:left;
  }

  .experience-stage,
  .experience-tools{
    width:min(100% - 1.5rem,46rem);
  }
}


/* Dawson local view modes: same ground, different aperture. */
.experience-viewbar{
  width:min(74rem,calc(100% - 2rem));
  margin:0 auto;
  min-height:2.5rem;
  display:flex;
  align-items:center;
  gap:1rem;
  border-bottom:1px solid var(--scene-rule);
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.view-mode{
  padding:.55rem 0 .45rem;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:var(--scene-muted);
  cursor:pointer;
}
.view-mode.is-current{
  color:var(--scene-ink);
  border-bottom-color:var(--scene-accent);
}

.experience-shell[data-view="talk"] .experience-stage,
.experience-shell[data-view="talk"] .experience-tools{
  width:min(74rem,calc(100% - 2rem));
}
.experience-shell[data-view="talk"] [data-scene].is-current{
  display:block;
}
.experience-shell[data-view="talk"] .scene-setting{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  margin:0 0 .85rem;
  font-size:.66rem;
}
.experience-shell[data-view="talk"] .scene-source,
.experience-shell[data-view="talk"] .scene-place{
  display:inline;
  text-align:left;
}
.experience-shell[data-view="talk"] .passage h2{
  max-width:none;
  margin:0 0 1.15rem;
  font-size:clamp(1.35rem,2.4vw,2.1rem);
  line-height:1.08;
  text-align:left;
}
.experience-shell[data-view="talk"] .plain-copy,
.experience-shell[data-view="talk"] .first-person-view,
.experience-shell[data-view="talk"] .view-body{
  max-width:none;
  width:100%;
}
.experience-shell[data-view="talk"] .first-person-view{
  font-size:clamp(1.08rem,1.55vw,1.28rem);
}
.experience-shell[data-view="talk"] .fpv-open,
.experience-shell[data-view="talk"] .fpv-close{
  display:none;
}
.experience-shell[data-view="talk"] .fpv-footing{
  display:flex;
  gap:1rem;
  flex-wrap:wrap;
  margin:.4rem 0 1.15rem;
  padding-bottom:.7rem;
  border-bottom:1px solid var(--scene-rule);
}
.experience-shell[data-view="talk"] .experience-utility{
  display:block;
}
.experience-shell[data-view="talk"] .experience-utility .ground-thread,
.experience-shell[data-view="talk"] .experience-utility .ground-talk{
  max-width:none;
  width:100%;
}
.experience-shell[data-view="talk"] .ten-utterance{
  max-width:70rem;
  font-size:clamp(1.15rem,1.8vw,1.5rem);
}

.dawson-index{
  width:100%;
  padding:.5rem 0 2rem;
}
.dawson-index-head{
  max-width:52rem;
  margin:0 0 1.5rem;
}
.dawson-index-head p{
  margin:0 0 .3rem;
  color:var(--scene-accent);
  font-family:var(--mono);
  font-size:.68rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dawson-index-head h2{
  max-width:none;
  margin:0 0 .6rem;
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1;
  text-align:left;
}
.dawson-index-head span{
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.76rem;
}
.dawson-stop-list{
  display:block;
  border-top:1px solid var(--scene-rule);
}
.dawson-stop{
  width:100%;
  display:grid;
  grid-template-columns:3rem minmax(8rem,.7fr) minmax(0,1.4fr) auto;
  gap:.8rem 1.1rem;
  align-items:baseline;
  padding:.9rem 0;
  border:0;
  border-bottom:1px solid var(--scene-rule);
  background:transparent;
  color:var(--scene-ink);
  text-align:left;
  cursor:pointer;
}
.dawson-stop:hover strong,
.dawson-stop:hover b{color:var(--scene-accent)}
.dawson-stop .stop-number,
.dawson-stop span{
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.72rem;
}
.dawson-stop strong{
  font-weight:500;
}
.dawson-stop b{
  font-family:var(--mono);
  font-weight:400;
}

@media(max-width:52rem){
  .experience-viewbar{
    width:min(100% - 1.5rem,46rem);
    gap:.8rem;
  }
  .experience-shell[data-view="talk"] .experience-stage,
  .experience-shell[data-view="talk"] .experience-tools{
    width:min(100% - 1.5rem,46rem);
  }
  .experience-shell[data-view="talk"] .fpv-footing{
    display:block;
  }
  .dawson-stop{
    grid-template-columns:2.2rem 1fr auto;
    gap:.2rem .7rem;
  }
  .dawson-stop > span:not(.stop-number){
    grid-column:2;
  }
  .dawson-stop b{
    grid-column:3;
    grid-row:1 / 3;
    align-self:center;
  }
}


.camp-people{
  width:100%;
  padding:.5rem 0 2rem;
}
.camp-people-list{
  border-top:1px solid var(--scene-rule);
}
.camp-person{
  display:grid;
  grid-template-columns:minmax(9rem,.65fr) minmax(12rem,1fr) minmax(0,1.5fr);
  gap:.6rem 1.1rem;
  align-items:start;
  padding:.9rem 0;
  border-bottom:1px solid var(--scene-rule);
}
.camp-person h3{
  margin:0;
  font-size:1rem;
  font-weight:500;
}
.camp-person p{
  margin:0;
}
.camp-person-relation,
.camp-person-note{
  font-family:var(--mono);
  font-size:.72rem;
  line-height:1.45;
}
.camp-person-relation{color:var(--scene-ink)}
.camp-person-note{color:var(--scene-muted)}

@media(max-width:52rem){
  .camp-person{
    grid-template-columns:1fr;
    gap:.18rem;
  }
  .camp-person h3{margin-bottom:.12rem}
}


.camp-sources{
  width:100%;
  padding:.5rem 0 2rem;
}
.camp-source-list{
  display:grid;
  gap:.75rem;
}
.camp-source-card{
  border-top:1px solid var(--scene-rule);
  padding:.8rem 0 .95rem;
}
.camp-source-head{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:baseline;
  color:var(--scene-muted);
  font-family:var(--mono);
  font-size:.66rem;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.camp-source-head code{
  color:var(--scene-accent);
  font:inherit;
  letter-spacing:.03em;
  text-transform:none;
}
.camp-source-summary{
  margin-top:.55rem;
  max-width:58rem;
}
.camp-source-summary p{
  margin:.18rem 0 0;
  font-size:1rem;
  line-height:1.42;
}
.camp-source-pointers{
  margin:.6rem 0 0;
  color:var(--scene-muted);
  font:.68rem/1.4 var(--mono);
}
.camp-source-brakes{
  display:flex;
  flex-wrap:wrap;
  gap:.3rem .6rem;
  margin-top:.55rem;
  padding-top:.55rem;
  border-top:1px solid var(--scene-rule);
}
.camp-source-brakes span{
  color:var(--scene-muted);
  font:.66rem/1.3 var(--mono);
  letter-spacing:.02em;
}
.camp-source-brakes span::before{
  content:"[ ";
  color:var(--scene-accent);
}
.camp-source-brakes span::after{
  content:" ]";
  color:var(--scene-accent);
}
.camp-source-empty{
  margin:0;
  color:var(--scene-muted);
  font:.72rem/1.45 var(--mono);
}

.experience-shell[data-view="sources"] .experience-stage{
  width:min(64rem,calc(100% - 2rem));
}
.camp-sources{
  width:min(64rem,100%);
  margin:0 auto;
}
.camp-sources .dawson-index-head{
  padding-bottom:1rem;
  border-bottom:1px solid var(--scene-rule);
}
.camp-sources .dawson-index-head h2{
  max-width:16ch;
  margin:.15rem 0 0;
  font-size:clamp(2rem,5vw,4.4rem);
  font-weight:400;
  line-height:.95;
  letter-spacing:-.035em;
}
.camp-sources .dawson-index-head > span{
  display:block;
  max-width:42rem;
  margin-top:.55rem;
  color:var(--scene-muted);
  font:.68rem/1.45 var(--mono);
}
.ground-jacket{
  margin:.2rem 0 1.4rem;
  border-top:1px solid var(--scene-ink);
  border-bottom:1px solid var(--scene-rule);
}
.ground-jacket summary{
  list-style:none;
  display:grid;
  grid-template-columns:minmax(8rem,.38fr) minmax(0,1fr) auto;
  align-items:baseline;
  gap:.75rem 1rem;
  padding:.8rem 0;
  cursor:pointer;
}
.ground-jacket summary::-webkit-details-marker{display:none}
.ground-jacket summary span{
  color:var(--scene-muted);
  font:600 .58rem/1.2 var(--mono);
  letter-spacing:.09em;
  text-transform:uppercase;
}
.ground-jacket summary strong{
  font-size:clamp(1.05rem,2vw,1.5rem);
  font-weight:400;
}
.ground-jacket summary::after{
  content:"+";
  color:var(--scene-muted);
  font-family:var(--mono);
}
.ground-jacket[open] summary::after{content:"−"}
.ground-jacket-body{
  padding:0 0 1rem;
}
.ground-jacket-row{
  display:grid;
  grid-template-columns:minmax(8rem,.38fr) minmax(0,1fr);
  gap:.45rem 1rem;
  padding:.48rem 0;
  border-top:1px solid var(--scene-rule);
}
.ground-jacket-row span{
  color:var(--scene-muted);
  font:600 .56rem/1.35 var(--mono);
  letter-spacing:.07em;
}
.ground-jacket-row p{
  margin:0;
  max-width:46rem;
  font-size:.95rem;
  line-height:1.45;
}
.camp-source-card{
  display:grid;
  grid-template-columns:minmax(8rem,.38fr) minmax(0,1fr);
  gap:.2rem 1rem;
  padding:1rem 0 1.15rem;
}
.camp-source-head{
  display:block;
  grid-column:1;
}
.camp-source-head code{
  display:block;
  margin-top:.2rem;
  overflow-wrap:anywhere;
}
.camp-source-summary,
.camp-source-pointers,
.camp-source-brakes{
  grid-column:2;
  margin-top:0;
}
.camp-source-summary p{
  font-size:clamp(1.05rem,1.8vw,1.35rem);
  line-height:1.34;
}
.camp-source-pointers{
  margin-top:.65rem;
}
.camp-source-brakes{
  margin-top:.7rem;
}
.fresh-thread-note{
  margin:.3rem 0 0;
  color:var(--scene-muted);
  font:.66rem/1.4 var(--mono);
  letter-spacing:.02em;
}

@media(max-width:52rem){
  .experience-shell[data-view="sources"] .experience-stage,
  .camp-sources{
    width:min(100% - 1.5rem,46rem);
  }
  .ground-jacket summary,
  .ground-jacket-row,
  .camp-source-card{
    grid-template-columns:1fr;
  }
  .ground-jacket summary strong{
    margin-top:.12rem;
  }
  .ground-jacket summary::after{
    position:absolute;
    right:0;
  }
  .ground-jacket summary{
    position:relative;
    padding-right:1.2rem;
  }
  .camp-source-head,
  .camp-source-summary,
  .camp-source-pointers,
  .camp-source-brakes{
    grid-column:1;
  }
  .camp-source-summary{
    margin-top:.55rem;
  }
}

.camp-person{
  position:relative;
}
.camp-person::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:1px;
  background:var(--scene-rule);
}
.camp-person h3,
.camp-person p{
  padding-left:.65rem;
}
.camp-person h3{
  font-size:clamp(1rem,1.6vw,1.35rem);
}


/* People accumulate with story reach; older encounters compress into a returnable roster. */
.camp-people-roster{
  display:flex;
  flex-wrap:wrap;
  gap:.35rem .75rem;
  padding:.55rem 0 .9rem;
  border-top:1px solid var(--scene-rule);
  border-bottom:1px solid var(--scene-rule);
}
.camp-person-link,
.camp-person-return{
  border:0;
  background:transparent;
  padding:0;
  color:var(--scene-muted);
  font-family:var(--mono);
  cursor:pointer;
}
.camp-person-link{
  font-size:.68rem;
  line-height:1.35;
  text-decoration:underline;
  text-decoration-color:transparent;
  text-underline-offset:.18em;
}
.camp-person-link:hover,
.camp-person-link:focus-visible{
  color:var(--scene-ink);
  text-decoration-color:var(--scene-accent);
}
.camp-person-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:1rem;
  padding-left:.65rem;
}
.camp-person-head h3{
  padding-left:0;
}
.camp-person-return{
  flex:0 0 auto;
  font-size:.56rem;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.camp-person-return:hover,
.camp-person-return:focus-visible{
  color:var(--scene-accent);
}
@media(max-width:52rem){
  .camp-person-head{
    display:block;
  }
  .camp-person-return{
    margin-top:.18rem;
  }
}


/* Shared Country vNext — Ask the Ground is locomotion.
   Map and People are inspectable memory, never travel controls. */
.experience-viewbar{
  width:min(50rem,calc(100% - 2rem));
  margin:0 auto;
  padding:.52rem 0 .28rem;
  display:flex;
  justify-content:flex-end;
  gap:.85rem;
  border:0;
}
.view-mode{
  border:0;
  background:transparent;
  padding:.1rem 0;
  color:var(--scene-muted);
  font:600 .58rem/1.2 var(--mono);
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}
.view-mode.is-current{
  color:var(--scene-ink);
  border-bottom:1px solid var(--scene-accent);
}
.experience-shell[data-view="map"],
.experience-shell[data-view="people"]{
  --scene-bg:#eee8dc;
  --scene-ink:#201f1a;
  --scene-muted:#6d675c;
  --scene-rule:rgba(32,31,26,.19);
  --scene-accent:#845b43;
}

.prose-map,
.camp-people{
  width:min(64rem,calc(100% - 2rem));
  margin:0 auto;
  padding:1.4rem 0 2.2rem;
}
.prose-map-head,
.people-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:1.5rem;
  padding-bottom:.75rem;
  border-bottom:1px solid var(--scene-rule);
}
.prose-map-head p,
.people-head p{
  margin:0 0 .18rem;
  color:var(--scene-muted);
  font:600 .58rem/1.2 var(--mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}
.prose-map-head h2,
.people-head h2{
  margin:0;
  font-size:clamp(1.7rem,4vw,3.3rem);
  font-weight:400;
  line-height:.95;
}
.prose-map-head > span,
.people-head > span{
  max-width:22rem;
  color:var(--scene-muted);
  font:.62rem/1.35 var(--mono);
  text-align:right;
}
.prose-map-frame{
  margin-top:.85rem;
  padding:.25rem 0 .45rem;
  overflow:hidden;
}
#prose-map-svg{
  width:100%;
  height:auto;
  display:block;
  color:var(--scene-ink);
}
#prose-map-svg text{
  fill:currentColor;
  font-family:var(--mono);
}
.map-horizon{
  stroke:var(--scene-rule);
  stroke-width:1;
}
.map-caption{
  font-size:10px;
  letter-spacing:1.5px;
  fill:var(--scene-muted)!important;
}
.map-place{
  font-size:16px;
  font-family:var(--serif)!important;
}
.map-note{
  font-size:11px;
}
.map-small{
  font-size:9px;
  letter-spacing:.5px;
  fill:var(--scene-muted)!important;
}
.map-node{
  fill:var(--scene-bg);
  stroke:var(--scene-ink);
  stroke-width:2;
}
.map-node-open{
  fill:var(--scene-bg);
  stroke:var(--scene-ink);
  stroke-width:1.5;
  stroke-dasharray:3 3;
}
.map-water{
  fill:none;
  stroke:var(--scene-ink);
  stroke-width:1.25;
  opacity:.72;
}
.map-route-unknown{
  fill:none;
  stroke:var(--scene-ink);
  stroke-width:1.45;
  stroke-dasharray:7 8;
}
.map-proximity{
  fill:none;
  stroke:var(--scene-ink);
  stroke-width:1.25;
  stroke-dasharray:2 7;
}
.map-same-ground{
  stroke:var(--scene-ink);
  stroke-width:1;
}
.map-region{
  fill:transparent;
  stroke:var(--scene-ink);
  stroke-width:1;
  stroke-dasharray:2 6;
  opacity:.75;
}
.prose-map-key{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem 1rem;
  padding-top:.65rem;
  border-top:1px solid var(--scene-rule);
  color:var(--scene-muted);
  font:.56rem/1.3 var(--mono);
  text-transform:uppercase;
  letter-spacing:.04em;
}
.prose-map-key span{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
}
.prose-map-key i{
  display:inline-block;
  width:1.6rem;
  height:.5rem;
  position:relative;
}
.map-key-solid::before,
.map-key-dash::before,
.map-key-dot::before{
  content:"";
  position:absolute;
  left:0;right:0;top:50%;
  border-top:1px solid var(--scene-ink);
}
.map-key-dash::before{border-top-style:dashed}
.map-key-dot::before{border-top-style:dotted}
.map-key-region{border:1px dashed var(--scene-ink);border-radius:1rem}

.people-head{
  margin-bottom:.45rem;
}
.camp-people-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));
  gap:.55rem;
}
.camp-people-roster{
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  gap:.3rem;
  padding:.5rem 0 .15rem;
  border:0;
}
.camp-person-chip{
  display:inline-block;
  padding:.28rem .45rem;
  border:1px solid var(--scene-rule);
  border-radius:999px;
  color:var(--scene-muted);
  font:.58rem/1.2 var(--mono);
}
.camp-person-widget{
  border:1px solid var(--scene-rule);
  background:rgba(255,255,255,.10);
}
.camp-person-widget summary{
  list-style:none;
  cursor:pointer;
  padding:.62rem .7rem;
  display:flex;
  flex-direction:column;
  gap:.12rem;
}
.camp-person-widget summary::-webkit-details-marker{display:none}
.camp-person-widget summary::after{
  content:"+";
  position:absolute;
  align-self:flex-end;
  color:var(--scene-accent);
  font:600 .72rem/1 var(--mono);
}
.camp-person-widget[open] summary::after{content:"−"}
.camp-person-widget summary strong{
  padding-right:1rem;
  font:400 1rem/1.15 var(--serif);
}
.camp-person-widget summary span{
  color:var(--scene-muted);
  font:.52rem/1.2 var(--mono);
  text-transform:uppercase;
  letter-spacing:.04em;
}
.camp-person-widget-body{
  padding:.55rem .7rem .7rem;
  border-top:1px solid var(--scene-rule);
}
.camp-person-widget-body p{
  margin:0;
  padding:0;
}
.camp-person-widget-body p+p{margin-top:.35rem}
.camp-person-relation{
  color:var(--scene-ink);
  font:.7rem/1.35 var(--mono);
}
.camp-person-note{
  color:var(--scene-muted);
  font:.67rem/1.38 var(--mono);
}

.ground-talk textarea{
  width:100%;
}
.ground-talk textarea::placeholder{
  color:var(--scene-muted);
  opacity:.8;
}

@media(max-width:52rem){
  .experience-viewbar{
    width:calc(100% - 1.4rem);
    padding:.4rem 0 .15rem;
    gap:.7rem;
  }
  .prose-map,
  .camp-people{
    width:calc(100% - 1.2rem);
    padding:1rem 0 1.4rem;
  }
  .prose-map-head,
  .people-head{
    display:block;
  }
  .prose-map-head > span,
  .people-head > span{
    display:block;
    margin-top:.35rem;
    max-width:none;
    text-align:left;
  }
  .prose-map-frame{
    overflow-x:auto;
  }
  #prose-map-svg{
    min-width:44rem;
  }
  .camp-people-list{
    grid-template-columns:1fr;
  }
}


/* Shared Country discovery entry.
   Before the first question, the visitor has ground but not yet a disclosed record. */
body[data-discovery="closed"] .experience-shell{
  --scene-bg:#0c0f11;
  --scene-ink:#f0ede5;
  --scene-muted:#92999a;
  --scene-rule:rgba(240,237,229,.16);
  --scene-accent:#d29a68;
  min-height:calc(100svh - 3.1rem);
  background:
    radial-gradient(circle at 50% 68%,rgba(210,154,104,.035),transparent 24rem),
    #0c0f11;
  display:grid;
  grid-template-rows:auto 1fr auto;
}
body[data-discovery="closed"] .experience-viewbar{
  justify-content:flex-start;
  padding-top:.7rem;
}
body[data-discovery="closed"] .view-mode[data-dawson-view="ground"]{
  color:var(--scene-muted);
  border-bottom:0;
  cursor:default;
}
body[data-discovery="closed"] .experience-stage{
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}
body[data-discovery="closed"] .experience-mount{
  visibility:hidden;
  position:absolute;
  pointer-events:none;
}
body[data-discovery="closed"] .experience-tools{
  width:min(42rem,calc(100% - 2rem));
  padding:0 0 clamp(3.2rem,9vh,6rem);
}
body[data-discovery="closed"] .experience-utility{
  display:block;
  margin:0;
}
body[data-discovery="closed"] .experience-utility .ground-talk,
body[data-discovery="closed"] .experience-utility .ground-thread{
  grid-column:auto;
  max-width:none;
  width:100%;
}
body[data-discovery="closed"] .ground-thread{
  display:none;
}
body[data-discovery="closed"] .ground-talk textarea{
  min-height:3.4rem;
  padding:.72rem 0 .45rem;
  border:0;
  border-bottom:1px solid var(--scene-rule);
  background:transparent;
  color:var(--scene-ink);
  font:400 clamp(1.25rem,3vw,2rem)/1.3 var(--serif);
  resize:none;
}
body[data-discovery="closed"] .ground-talk textarea::placeholder{
  color:var(--scene-ink);
  opacity:.88;
}
body[data-discovery="closed"] .ground-talk textarea:focus{
  outline:0;
  border-bottom-color:var(--scene-accent);
}
body[data-discovery="closed"] footer{
  border-top-color:rgba(240,237,229,.12);
  color:#8e9494;
}

/* Once discovery begins, the first scene is allowed to exist visibly. */
body[data-discovery="open"] .experience-shell{
  transition:background-color .3s ease,color .3s ease;
}

@media(max-width:52rem){
  body[data-discovery="closed"] .experience-shell{
    min-height:calc(100svh - 2.8rem);
  }
  body[data-discovery="closed"] .experience-tools{
    width:calc(100% - 1.4rem);
    padding-bottom:3rem;
  }
  body[data-discovery="closed"] .ground-talk textarea{
    font-size:1.45rem;
  }
}


/* Shared Country rough entry / VOICE + quietly gloomy pass.
   One line first. Geography and interface arrive later. */
body[data-discovery="closed"]{
  background:#111210;
  color:#e7e0d3;
}
body[data-discovery="closed"] .site-header,
body[data-discovery="closed"] footer,
body[data-discovery="closed"] .experience-viewbar{
  display:none;
}
body[data-discovery="closed"] main,
body[data-discovery="closed"] .threshold{
  width:100%;
  margin:0;
  padding:0;
}
body[data-discovery="closed"] .experience-shell{
  min-height:100svh;
  display:block;
  background:
    radial-gradient(circle at 45% 17%,rgba(224,205,173,.022),transparent 19rem),
    #111210;
  border:0;
  color:#e6ded0;
}
body[data-discovery="closed"] .experience-stage{
  position:absolute;
  width:1px;
  height:1px;
  min-height:0;
  padding:0;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}
body[data-discovery="closed"] .experience-tools{
  width:min(35rem,52vw);
  margin:0 0 0 clamp(2rem,39vw,38rem);
  padding:clamp(6rem,13vh,9rem) 0 0;
}
body[data-discovery="closed"] .experience-utility{
  display:block;
  margin:0;
}
body[data-discovery="closed"] .experience-utility .ground-talk,
body[data-discovery="closed"] .experience-utility .ground-thread{
  width:100%;
  max-width:none;
  grid-column:auto;
}
body[data-discovery="closed"] .ground-talk textarea{
  min-height:2rem;
  height:auto;
  padding:0 0 .22rem;
  border:0;
  border-bottom:1px solid rgba(230,222,208,.18);
  border-radius:0;
  background:transparent;
  color:#e6ded0;
  resize:none;
  font:400 1.05rem/1.35 "Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  letter-spacing:.005em;
}
body[data-discovery="closed"] .ground-talk textarea::placeholder{
  color:#d2c8b8;
  opacity:.88;
  font-style:italic;
}
body[data-discovery="closed"] .ground-talk textarea:focus{
  outline:0;
  border-bottom-color:rgba(230,222,208,.52);
}
body[data-discovery="closed"] .ground-thread{
  display:block;
  min-height:0;
  margin:0 0 .7rem;
  padding:0;
  color:#e6ded0;
}
body[data-discovery="closed"][data-thought="none"] .ground-thread{
  display:none;
}
.threshold-thought{
  margin:0 0 .8rem;
  max-width:34rem;
  font:400 1.08rem/1.42 "Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  letter-spacing:.004em;
}

/* Once the ground opens, it reads as an old page rather than a dashboard. */
body[data-discovery="open"] .site-header{
  min-height:2.85rem;
  border-bottom:1px solid var(--rule);
  font-size:.78rem;
}
body[data-discovery="open"] .identity{
  font:600 .72rem/1.2 var(--mono);
  letter-spacing:.055em;
  text-transform:uppercase;
}
body[data-discovery="open"] .site-nav{
  font-size:.58rem;
}
body[data-discovery="open"] .experience-shell{
  min-height:calc(100svh - 2.85rem);
}
body[data-discovery="open"] .experience-viewbar{
  width:min(46rem,calc(100% - 2rem));
  margin:0 auto;
  padding:.52rem 0 0;
  justify-content:flex-start;
  gap:1rem;
}
body[data-discovery="open"] .view-mode{
  font-size:.52rem;
  font-weight:500;
  letter-spacing:.1em;
}
body[data-discovery="open"] .experience-stage,
body[data-discovery="open"] .experience-tools{
  width:min(46rem,calc(100% - 2rem));
  margin-inline:auto;
}
body[data-discovery="open"] .experience-stage{
  padding:clamp(2.4rem,7vh,4.2rem) 0 .6rem;
}
body[data-discovery="open"] [data-scene].is-current{
  display:block;
  width:100%;
}
body[data-discovery="open"] .scene-setting{
  display:flex;
  gap:.5rem;
  margin:0 0 1.15rem;
  color:var(--scene-muted);
  font:500 .55rem/1.3 var(--mono);
  letter-spacing:.075em;
  text-transform:uppercase;
}
body[data-discovery="open"] .scene-place::before{
  content:"· ";
}
body[data-discovery="open"] .passage h2{
  max-width:18ch;
  margin:0 0 1.45rem;
  font-size:clamp(1.8rem,4vw,3.1rem);
  font-weight:400;
  line-height:.98;
  letter-spacing:-.025em;
  text-align:left;
}
body[data-discovery="open"] .plain-copy,
body[data-discovery="open"] .first-person-view{
  display:block;
  max-width:39rem;
  margin:0;
  padding:0;
  font-size:1.02rem;
  line-height:1.62;
}
body[data-discovery="open"] .fpv-open,
body[data-discovery="open"] .fpv-close{
  display:none;
}
body[data-discovery="open"] .view-body{
  min-height:0;
}
body[data-discovery="open"] .view-body p,
body[data-discovery="open"] .plain-copy p{
  margin:0 0 .9rem;
}
body[data-discovery="open"] .fpv-footing{
  margin-top:1.5rem;
  padding-top:.55rem;
  border-top:1px solid var(--scene-rule);
  color:var(--scene-muted);
  font-size:.55rem;
}
body[data-discovery="open"] .fpv-footing p{
  margin:.1rem 0;
}
body[data-discovery="open"] .experience-utility{
  display:block;
  margin:.55rem 0 0;
  padding:.65rem 0 1.7rem;
}
body[data-discovery="open"] .experience-utility .ground-talk,
body[data-discovery="open"] .experience-utility .ground-thread{
  max-width:39rem;
  margin-left:0;
}
body[data-discovery="open"] .ground-talk textarea{
  width:100%;
  padding:.35rem 0 .3rem;
  border:0;
  border-bottom:1px solid var(--scene-rule);
  border-radius:0;
  background:transparent;
  color:var(--scene-ink);
  resize:none;
  font:400 .92rem/1.4 "Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
}
body[data-discovery="open"] .ground-talk textarea:focus{
  outline:0;
  border-bottom-color:var(--scene-accent);
}

/* People are an encounter ledger, not a card wall. */
body[data-discovery="open"] .camp-people-list{
  display:block;
  max-width:46rem;
}
body[data-discovery="open"] .camp-person-widget{
  border:0;
  border-top:1px solid var(--scene-rule);
  background:transparent;
}
body[data-discovery="open"] .camp-person-widget:last-child{
  border-bottom:1px solid var(--scene-rule);
}
body[data-discovery="open"] .camp-person-widget summary{
  padding:.72rem 0 .68rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.5rem 1rem;
}
body[data-discovery="open"] .camp-person-widget summary::after{
  position:static;
  grid-column:2;
  grid-row:1;
}
body[data-discovery="open"] .camp-person-widget summary strong{
  font:400 1.15rem/1.15 var(--serif);
}
body[data-discovery="open"] .camp-person-widget summary span{
  grid-column:1;
  font-size:.5rem;
}
body[data-discovery="open"] .camp-person-widget-body{
  padding:.1rem 0 .9rem;
  border:0;
  max-width:34rem;
}
body[data-discovery="open"] .camp-person-chip{
  border:0;
  border-bottom:1px solid var(--scene-rule);
  border-radius:0;
  padding:.25rem 0;
  margin-right:.8rem;
}

/* Map is allowed to feel provisional: pencil relation, not control panel. */
body[data-discovery="open"] .prose-map{
  width:min(54rem,calc(100% - 2rem));
  padding:1.8rem 0 2.5rem;
}
body[data-discovery="open"] .prose-map-head{
  align-items:start;
  border-bottom:0;
  padding-bottom:.4rem;
}
body[data-discovery="open"] .prose-map-head h2{
  font-size:clamp(1.5rem,3vw,2.5rem);
  max-width:19ch;
}
body[data-discovery="open"] .prose-map-frame{
  border-top:1px solid var(--scene-rule);
  border-bottom:1px solid var(--scene-rule);
  padding:.8rem 0;
}
body[data-discovery="open"] .prose-map-key{
  border-top:0;
  padding-top:.5rem;
  opacity:.78;
}

@media(max-width:52rem){
  body[data-discovery="closed"] .experience-tools{
    width:calc(100% - 2.4rem);
    margin-left:1.2rem;
    padding-top:5.4rem;
  }
  body[data-discovery="closed"] .ground-talk textarea,
  .threshold-thought{
    font-size:1.04rem;
  }
  body[data-discovery="open"] .site-header{
    min-height:2.65rem;
  }
  body[data-discovery="open"] .experience-shell{
    min-height:calc(100svh - 2.65rem);
  }
  body[data-discovery="open"] .experience-viewbar,
  body[data-discovery="open"] .experience-stage,
  body[data-discovery="open"] .experience-tools{
    width:calc(100% - 1.5rem);
  }
  body[data-discovery="open"] .experience-stage{
    padding:1.7rem 0 .4rem;
  }
  body[data-discovery="open"] .scene-setting{
    display:block;
    margin-bottom:.8rem;
  }
  body[data-discovery="open"] .scene-place::before{
    content:"";
  }
  body[data-discovery="open"] .scene-place{
    margin-top:.1rem;
  }
  body[data-discovery="open"] .passage h2{
    font-size:clamp(1.8rem,9vw,2.7rem);
    margin-bottom:1.1rem;
  }
}


/* Shared Country refinement — Ground speaks; Map and People only show what has accumulated. */
.experience-shell[data-view="map"] .experience-tools,
.experience-shell[data-view="people"] .experience-tools,
.experience-shell[data-view="sources"] .experience-tools{
  display:none;
}

/* People: small accumulated record slips, grouped by first encounter. */
.people-head{
  max-width:46rem;
  margin:0 0 .7rem;
  padding-bottom:.55rem;
}
.people-head h2{
  font-size:clamp(1.55rem,3vw,2.4rem);
}
.people-head > span{
  font-size:.5rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.camp-people-list{
  display:block!important;
  max-width:46rem;
}
.encounter-batch{
  margin:0 0 1.1rem;
}
.encounter-batch-head{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  padding:.32rem 0 .38rem;
  border-bottom:1px solid var(--scene-rule);
  color:var(--scene-muted);
  font:.5rem/1.2 var(--mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}
.encounter-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.5rem;
  padding-top:.5rem;
}
.person-card{
  min-width:0;
  border:1px solid var(--scene-rule);
  background:transparent;
}
.person-card summary{
  list-style:none;
}
.person-card summary::-webkit-details-marker{
  display:none;
}
.person-card-face{
  position:relative;
  min-height:8.4rem;
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-rows:auto 1fr auto;
  align-content:start;
  gap:.5rem .8rem;
  padding:.68rem .72rem .72rem;
  cursor:pointer;
}
.person-card-serial{
  grid-column:1;
  color:var(--scene-muted);
  font:.48rem/1.2 var(--mono);
  letter-spacing:.11em;
}
.person-card-name{
  grid-column:1/-1;
  align-self:center;
  max-width:12ch;
  font:400 clamp(1.35rem,2.6vw,2rem)/.95 var(--serif);
  letter-spacing:-.025em;
}
.person-card-known{
  grid-column:1;
  align-self:end;
  color:var(--scene-muted);
  font:.58rem/1.35 var(--mono);
}
.person-card-mark{
  grid-column:2;
  grid-row:1;
  color:var(--scene-accent);
  font:400 .78rem/1 var(--mono);
}
.person-card[open] .person-card-mark{
  transform:rotate(45deg);
}
.person-card-body{
  padding:.62rem .72rem .75rem;
  border-top:1px solid var(--scene-rule);
}
.person-card-field{
  display:grid;
  grid-template-columns:7rem 1fr;
  gap:.55rem;
  margin:0;
  padding:.28rem 0;
  border-bottom:1px solid color-mix(in srgb,var(--scene-rule) 65%,transparent);
  font:.57rem/1.35 var(--mono);
}
.person-card-field span{
  color:var(--scene-muted);
  text-transform:uppercase;
  letter-spacing:.05em;
}
.person-card-field b{
  font-weight:400;
}
.person-card-history{
  padding:.45rem 0 .2rem;
  font:.56rem/1.4 var(--mono);
}
.person-card-history > span{
  display:block;
  margin-bottom:.22rem;
  color:var(--scene-muted);
  text-transform:uppercase;
  letter-spacing:.05em;
}
.person-card-history p{
  margin:.12rem 0;
}
.person-card-open{
  margin:.55rem 0 0;
  color:var(--scene-muted);
  font:.61rem/1.45 var(--mono);
}
.person-card-open::before{
  content:"open · ";
  color:var(--scene-ink);
  text-transform:uppercase;
  letter-spacing:.05em;
}

/* Threshold placement: intentionally off-center and slightly low, like a line found on an old page. */
body[data-discovery="closed"] .experience-tools{
  width:min(31rem,38vw);
  margin-left:clamp(2rem,53vw,54rem);
  padding-top:clamp(7.2rem,17vh,11.5rem);
}
body[data-discovery="closed"] .ground-talk textarea{
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  font-size:.98rem;
  line-height:1.35;
  letter-spacing:.008em;
}
body[data-discovery="closed"] .ground-talk textarea::placeholder{
  font-style:normal;
  letter-spacing:.018em;
}
.threshold-thought{
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  font-size:1rem;
  line-height:1.48;
}

/* Loosen the visible ground from the box: narrower text, more uneven air, fewer frame effects. */
body[data-discovery="open"] .experience-stage,
body[data-discovery="open"] .experience-tools{
  width:min(43rem,calc(100% - 2rem));
}
body[data-discovery="open"] .experience-stage{
  padding-top:clamp(2.8rem,8vh,5rem);
}
body[data-discovery="open"] .plain-copy,
body[data-discovery="open"] .first-person-view{
  max-width:36rem;
}
body[data-discovery="open"] .experience-utility .ground-talk,
body[data-discovery="open"] .experience-utility .ground-thread{
  max-width:36rem;
}
body[data-discovery="open"] footer{
  padding:.65rem 0 .8rem;
}

@media(max-width:52rem){
  body[data-discovery="closed"] .experience-tools{
    width:calc(100% - 2.6rem);
    margin-left:1.3rem;
    padding-top:clamp(5.5rem,13vh,7.5rem);
  }
  .encounter-card-grid{
    grid-template-columns:1fr;
  }
  .person-card-face{
    min-height:7.4rem;
  }
}


/* Shared Country — common frame, local instruments.
   Ground / Map / People change tool without pretending the visitor changed ground. */
body[data-discovery="open"] .experience-viewbar,
body[data-discovery="open"] .experience-stage{
  width:min(64rem,calc(100% - 2rem));
  margin-inline:auto;
}
body[data-discovery="open"] .experience-stage{
  padding-top:clamp(2.2rem,6vh,4.25rem);
}
.experience-shell[data-view="ground"] .experience-mount{
  width:min(43rem,100%);
  margin-inline:auto;
}
.experience-shell[data-view="map"] .prose-map,
.experience-shell[data-view="people"] .camp-people{
  width:100%;
  margin-inline:0;
}
.experience-shell[data-view="sources"] .camp-sources{
  width:min(50rem,100%);
  margin-inline:auto;
}
.experience-shell[data-view="map"] .experience-stage,
.experience-shell[data-view="people"] .experience-stage{
  min-height:34rem;
}

.experience-shell[data-view="map"] .experience-stage,
.experience-shell[data-view="people"] .experience-stage{
  padding-top:clamp(.9rem,2.5vh,1.6rem);
}

/* Map: anchors remain fixed; labels can negotiate. Keep the drawing light. */
#prose-map-svg{
  overflow:visible;
}
.map-horizon{
  opacity:.55;
}
.map-note,
.map-small,
.map-place{
  paint-order:stroke;
  stroke:var(--scene-bg);
  stroke-width:3px;
  stroke-linejoin:round;
}
.map-small{
  stroke-width:2.5px;
}
.map-place{
  stroke-width:4px;
}

/* People: enough room to become a public Name Web front, without pretending
   every body has the same documentary density. */
.people-intro{
  max-width:42rem;
  margin:.15rem 0 1.45rem;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem 1.5rem;
  color:var(--scene-muted);
  font:.66rem/1.5 var(--mono);
}
.people-intro p{
  margin:0;
}
.encounter-batch{
  margin-bottom:1.55rem;
}
.encounter-batch-head{
  align-items:end;
  padding:.42rem 0 .5rem;
}
.encounter-batch-head > div{
  display:flex;
  flex-direction:column;
  gap:.08rem;
}
.encounter-batch-head strong{
  color:var(--scene-ink);
  font:500 .63rem/1.2 var(--mono);
  letter-spacing:.07em;
}
.encounter-batch-head > div span{
  letter-spacing:.055em;
}
.encounter-card-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.68rem;
  padding-top:.68rem;
}
.person-card{
  border-color:color-mix(in srgb,var(--scene-rule) 82%,transparent);
}
.person-card-face{
  min-height:10.25rem;
  padding:.8rem .85rem .82rem;
}
.person-card-name{
  max-width:16ch;
  font-size:clamp(1.55rem,2.8vw,2.35rem);
}
.person-card-known{
  max-width:34rem;
  font:.61rem/1.42 var(--mono);
}
.person-card-body{
  padding:.82rem .85rem .9rem;
}
.person-card-prose{
  margin:0 0 .8rem;
  max-width:34rem;
  font-size:.92rem;
  line-height:1.45;
}
.person-encounter-line{
  border-top:1px solid var(--scene-rule);
}
.person-encounter{
  display:grid;
  grid-template-columns:8.25rem minmax(0,1fr);
  gap:.7rem;
  padding:.42rem 0;
  border-bottom:1px solid color-mix(in srgb,var(--scene-rule) 65%,transparent);
}
.person-encounter > span{
  color:var(--scene-muted);
  font:.52rem/1.35 var(--mono);
  letter-spacing:.045em;
  text-transform:uppercase;
}
.person-encounter p{
  margin:0;
  font:.62rem/1.42 var(--mono);
}
.person-links{
  margin-top:.8rem;
  padding-top:.6rem;
  border-top:1px solid var(--scene-rule);
  display:flex;
  flex-wrap:wrap;
  gap:.35rem;
  align-items:center;
}
.person-links > span{
  width:100%;
  color:var(--scene-muted);
  font:.5rem/1.2 var(--mono);
  letter-spacing:.06em;
  text-transform:uppercase;
}
.person-link{
  border:0;
  border-bottom:1px solid var(--scene-rule);
  background:transparent;
  padding:.12rem .05rem .1rem;
  cursor:pointer;
  font:.66rem/1.2 var(--mono);
}
.person-link:hover{
  border-color:var(--scene-accent);
}

@media(max-width:52rem){
  body[data-discovery="open"] .experience-viewbar,
  body[data-discovery="open"] .experience-stage{
    width:calc(100% - 1.2rem);
  }
  .people-intro{
    grid-template-columns:1fr;
    gap:.5rem;
  }
  .encounter-card-grid{
    grid-template-columns:1fr;
  }
  .person-card-face{
    min-height:8.8rem;
  }
  .person-encounter{
    grid-template-columns:6.5rem minmax(0,1fr);
  }
}


/* Shared Country language of change.
   Changes may be expressive; their cause must remain legible. */
.experience-viewbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:1.25rem;
}
.experience-bearing{
  min-height:1rem;
  color:var(--scene-muted);
  font:500 .52rem/1.25 var(--mono);
  letter-spacing:.055em;
}
.experience-modes{
  display:flex;
  justify-content:flex-end;
  gap:1rem;
}
body[data-discovery="open"] .experience-mount,
body[data-discovery="open"] .camp-sources,
body[data-discovery="open"] .prose-map,
body[data-discovery="open"] .camp-people{
  transition:
    width .24s ease,
    max-width .24s ease,
    opacity .18s ease,
    transform .24s ease;
}
.experience-shell[data-change="attention"] .experience-mount{
  transform:translateY(.12rem);
}
.experience-shell[data-change="movement"] .experience-mount{
  transform:translateY(.36rem);
}
.experience-shell[data-change="source"] .camp-sources{
  transform:translateY(.2rem);
}
.experience-shell[data-change="return"] .experience-mount{
  transform:translateY(0);
}
@media(max-width:52rem){
  .experience-viewbar{
    grid-template-columns:1fr;
    align-items:start;
    gap:.35rem;
  }
  .experience-modes{
    justify-content:flex-start;
  }
  .experience-bearing{
    min-height:0;
  }
}


/* Shared Country · People speaks in relations, not a reading column.
   Its datum is the full revealed field; individual bodies remain bounded. */
.experience-shell[data-view="people"] .camp-people{
  width:100%;
}
.experience-shell[data-view="people"] .people-head,
.experience-shell[data-view="people"] .camp-people-list{
  max-width:none;
  width:100%;
}
.experience-shell[data-view="people"] .people-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
}
.experience-shell[data-view="people"] .people-intro{
  max-width:none;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.experience-shell[data-view="people"] .encounter-card-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));
}
.experience-shell[data-view="people"] .person-card-face{
  min-height:11rem;
}
.experience-shell[data-view="people"] .person-card-name{
  max-width:18ch;
}
@media(min-width:72rem){
  .experience-shell[data-view="people"] .encounter-card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:52rem){
  .experience-shell[data-view="people"] .people-head{
    grid-template-columns:1fr;
  }
  .experience-shell[data-view="people"] .people-intro,
  .experience-shell[data-view="people"] .encounter-card-grid{
    grid-template-columns:1fr;
  }
}


/* Shared Country second pass — earned ground jacket.
   Available depth may persist without forcing present depth onto the screen. */
.experience-shell[data-view="jacket"] .experience-stage{
  width:min(64rem,calc(100% - 2rem));
  padding-top:clamp(1.2rem,3vh,2.1rem);
}
.camp-jacket{
  width:min(58rem,100%);
  margin:0 auto;
  padding:0 0 2.4rem;
}
.jacket-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(13rem,.55fr);
  gap:1.25rem 2rem;
  align-items:end;
  padding:0 0 1rem;
  border-bottom:1px solid var(--scene-ink);
}
.jacket-head p{
  margin:0 0 .22rem;
  color:var(--scene-muted);
  font:600 .56rem/1.2 var(--mono);
  letter-spacing:.085em;
  text-transform:uppercase;
}
.jacket-head h2{
  margin:0;
  max-width:13ch;
  font-size:clamp(2.2rem,5.5vw,5rem);
  font-weight:400;
  line-height:.92;
  letter-spacing:-.04em;
}
.jacket-head > span{
  color:var(--scene-muted);
  font:.64rem/1.45 var(--mono);
}
.jacket-intro{
  max-width:43rem;
  margin:1.1rem 0 1.25rem 28%;
  color:var(--scene-muted);
  font-size:.88rem;
  line-height:1.5;
}
.jacket-section{
  display:grid;
  grid-template-columns:minmax(8rem,24%) minmax(0,1fr);
  gap:.75rem 1.6rem;
  padding:.82rem 0;
  border-top:1px solid var(--scene-rule);
}
.jacket-section h3{
  margin:0;
  color:var(--scene-muted);
  font:600 .56rem/1.35 var(--mono);
  letter-spacing:.075em;
}
.jacket-section-body{
  max-width:44rem;
}
.jacket-section-body p{
  margin:0 0 .42rem;
  font-size:clamp(.98rem,1.45vw,1.16rem);
  line-height:1.46;
}
.jacket-section-body p:last-child{margin-bottom:0}
.jacket-open .jacket-section-body p{
  color:var(--scene-muted);
  font:600 .65rem/1.45 var(--mono);
  letter-spacing:.01em;
}
.jacket-open .jacket-section-body p::before{
  content:"[ ";
  color:var(--scene-accent);
}
.jacket-open .jacket-section-body p::after{
  content:" ]";
  color:var(--scene-accent);
}
.jacket-return{
  border-bottom:1px solid var(--scene-rule);
}
.experience-shell[data-change="instrument"] .camp-jacket{
  transform:translateY(.08rem);
}

@media(max-width:52rem){
  .experience-shell[data-view="jacket"] .experience-stage,
  .camp-jacket{
    width:calc(100% - 1.2rem);
  }
  .jacket-head{
    grid-template-columns:1fr;
    gap:.55rem;
  }
  .jacket-head h2{
    max-width:14ch;
    font-size:clamp(2.35rem,11vw,4rem);
  }
  .jacket-intro{
    margin:1rem 0 1.2rem;
  }
  .jacket-section{
    grid-template-columns:1fr;
    gap:.35rem;
  }
}

/* Shared Country third pass — Ask the Ground survives instrument changes. */
.experience-shell[data-view="map"] .experience-tools,
.experience-shell[data-view="people"] .experience-tools,
.experience-shell[data-view="sources"] .experience-tools,
.experience-shell[data-view="jacket"] .experience-tools{
  width:min(58rem,calc(100% - 2rem));
  margin-inline:auto;
}
.experience-shell[data-view="map"] .experience-utility,
.experience-shell[data-view="people"] .experience-utility,
.experience-shell[data-view="sources"] .experience-utility,
.experience-shell[data-view="jacket"] .experience-utility{
  grid-template-columns:minmax(8rem,24%) minmax(0,1fr);
  gap:.6rem 1.6rem;
}
.experience-shell[data-view="map"] .experience-utility::before,
.experience-shell[data-view="people"] .experience-utility::before,
.experience-shell[data-view="sources"] .experience-utility::before,
.experience-shell[data-view="jacket"] .experience-utility::before{
  content:"ASK THE GROUND";
  grid-column:1;
  color:var(--scene-muted);
  font:600 .54rem/1.35 var(--mono);
  letter-spacing:.075em;
}
.experience-shell[data-view="map"] .ground-talk,
.experience-shell[data-view="people"] .ground-talk,
.experience-shell[data-view="sources"] .ground-talk,
.experience-shell[data-view="jacket"] .ground-talk,
.experience-shell[data-view="map"] .ground-thread,
.experience-shell[data-view="people"] .ground-thread,
.experience-shell[data-view="sources"] .ground-thread,
.experience-shell[data-view="jacket"] .ground-thread{
  grid-column:2;
  max-width:none;
}
.ground-response{
  margin:.35rem 0 0;
  max-width:42rem;
  color:var(--scene-ink);
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  font-size:1rem;
  line-height:1.48;
}
@media(max-width:52rem){
  .experience-shell[data-view="map"] .experience-tools,
  .experience-shell[data-view="people"] .experience-tools,
  .experience-shell[data-view="sources"] .experience-tools,
  .experience-shell[data-view="jacket"] .experience-tools{
    width:calc(100% - 1.2rem);
  }
  .experience-shell[data-view="map"] .experience-utility,
  .experience-shell[data-view="people"] .experience-utility,
  .experience-shell[data-view="sources"] .experience-utility,
  .experience-shell[data-view="jacket"] .experience-utility{
    display:block;
  }
  .experience-shell[data-view="map"] .experience-utility::before,
  .experience-shell[data-view="people"] .experience-utility::before,
  .experience-shell[data-view="sources"] .experience-utility::before,
  .experience-shell[data-view="jacket"] .experience-utility::before{
    display:block;
    margin-bottom:.2rem;
  }
}


/* Shared Country fourth pass — Folio footing, persistent voice, right-held night opening. */

/* Ask remains available while the visitor changes instruments.
   Ground, Map, People, Sources, and Jacket are one working body. */
.experience-shell[data-view="map"] .experience-tools,
.experience-shell[data-view="people"] .experience-tools,
.experience-shell[data-view="sources"] .experience-tools,
.experience-shell[data-view="jacket"] .experience-tools{
  display:block;
}

/* Night opening: keep the guarded encounter intentionally off balance.
   The two men remain somewhere beyond the held camp; the page itself leans right. */
body[data-discovery="open"][data-ground="night"] .experience-stage,
body[data-discovery="open"][data-ground="night"] .experience-tools{
  width:min(43rem,calc(100% - 2rem));
  margin-left:auto;
  margin-right:clamp(1.35rem,7vw,8.5rem);
}
body[data-discovery="open"][data-ground="night"] .experience-mount{
  width:100%;
  margin:0;
}
body[data-discovery="open"][data-ground="night"] #night.is-current{
  max-width:38rem;
  margin-left:auto;
}
body[data-discovery="open"][data-ground="night"] #night .scene-setting{
  margin-bottom:1.35rem;
  font-size:.52rem;
  line-height:1.35;
  letter-spacing:.105em;
}
body[data-discovery="open"][data-ground="night"] #night h2{
  max-width:13ch;
  margin-bottom:1.7rem;
  font-size:clamp(2.45rem,5vw,4.35rem);
  line-height:.93;
  letter-spacing:-.038em;
  text-wrap:balance;
}
body[data-discovery="open"][data-ground="night"] #night .first-person-view{
  max-width:35rem;
  font-size:clamp(1.02rem,1.35vw,1.16rem);
  line-height:1.72;
  letter-spacing:.002em;
}
body[data-discovery="open"][data-ground="night"] #night .view-body p{
  margin-bottom:1.02rem;
}
body[data-discovery="open"][data-ground="night"] #night .lived-line{
  font-size:1.08em;
  line-height:1.58;
}
body[data-discovery="open"][data-ground="night"] #night .fpv-footing{
  max-width:31rem;
  margin-top:1.75rem;
  padding-top:.68rem;
  font-size:.52rem;
  line-height:1.45;
  letter-spacing:.045em;
}
body[data-discovery="open"][data-ground="night"] .experience-utility{
  max-width:35rem;
  margin-left:auto;
}
body[data-discovery="open"][data-ground="night"] .ground-talk textarea{
  font-size:.94rem;
  line-height:1.5;
  letter-spacing:.006em;
}

@media(max-width:52rem){
  body[data-discovery="open"][data-ground="night"] .experience-stage,
  body[data-discovery="open"][data-ground="night"] .experience-tools{
    width:calc(100% - 2.2rem);
    margin-left:1.35rem;
    margin-right:.85rem;
  }
  body[data-discovery="open"][data-ground="night"] #night.is-current{
    max-width:none;
  }
  body[data-discovery="open"][data-ground="night"] #night h2{
    max-width:12ch;
    font-size:clamp(2.3rem,11vw,3.5rem);
  }
  body[data-discovery="open"][data-ground="night"] #night .first-person-view,
  body[data-discovery="open"][data-ground="night"] .experience-utility{
    max-width:none;
  }
}


/* Shared Country — morning keeps the unresolved back trail perceptually open.
   This is an attributable derivative trace, not source text. */
body[data-ground="morning"] .back-trail-trace{
  grid-column:2;
  margin:1.9rem 0 0;
  padding:1rem 0 0 1.2rem;
  border-left:1px solid var(--scene-rule);
  max-width:28rem;
  color:var(--scene-muted);
}
body[data-ground="morning"] .back-trail-trace span{
  display:block;
  margin-bottom:.35rem;
  font:600 .56rem/1.3 var(--mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}
body[data-ground="morning"] .back-trail-trace p{
  margin:0;
  color:var(--scene-ink);
  font-family:var(--serif);
  font-size:1rem;
  line-height:1.55;
}
body[data-ground="morning"] .back-trail-trace a{
  display:inline-block;
  margin-top:.5rem;
  color:var(--scene-muted);
  font:600 .55rem/1.3 var(--mono);
  letter-spacing:.04em;
  text-transform:uppercase;
  text-decoration:none;
  border-bottom:1px solid var(--scene-accent);
}
body[data-ground="morning"] .back-trail-trace a:hover,
body[data-ground="morning"] .back-trail-trace a:focus-visible{
  color:var(--scene-accent);
}
@media(max-width:52rem){
  body[data-ground="morning"] .back-trail-trace{
    grid-column:1;
    margin-top:1.4rem;
    max-width:none;
  }
}
