:root{
  --rh-ink:#2c211c;
  --rh-accent:#7d302f;
  --rh-muted:rgba(44,33,28,.66);
}
.rh-overlay[hidden]{display:none!important}
.rh-overlay{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;font-family:Georgia,"Times New Roman",serif;color:var(--rh-ink)}
.rh-backdrop{position:absolute;inset:0;background:rgba(31,26,23,.60);backdrop-filter:blur(.7px);opacity:0;transition:opacity 200ms ease}
.rh-folio{position:relative;width:min(96vw,144vh);aspect-ratio:3/2;max-height:96vh;background:url('rabbit-hole-assets/rabbit-hole-background-master-v1.0.webp') center/100% 100% no-repeat;filter:drop-shadow(0 22px 26px rgba(16,8,4,.32)) drop-shadow(0 3px 5px rgba(16,8,4,.24));opacity:0;transform:translateY(6px);transition:opacity 200ms ease,transform 200ms ease;isolation:isolate}
.rh-overlay.is-open .rh-backdrop{opacity:1}
.rh-overlay.is-open .rh-folio{opacity:1;transform:translateY(0)}
.rh-header{position:absolute;left:8.46%;right:10.1%;top:3.3%;height:7.6%;z-index:3;pointer-events:none}
.rh-eyebrow{font-family:Arial,Helvetica,sans-serif;font-size:min(.78vw,1.18vh);line-height:1;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:var(--rh-accent);margin:0 0 .45em}
.rh-title{margin:0;font-size:min(2.38vw,3.58vh);line-height:1;font-weight:500;letter-spacing:-.025em;color:var(--rh-ink)}
.rh-close{position:absolute;left:89.75%;top:3.72%;width:2.87%;aspect-ratio:1;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--rh-ink);font-family:Arial,Helvetica,sans-serif;font-size:min(2.0vw,3vh);font-weight:300;line-height:1;cursor:pointer;z-index:6;display:flex;align-items:center;justify-content:center;padding:0}
.rh-close:hover,.rh-close:focus-visible{color:var(--rh-accent)}
.rh-close:focus-visible{outline:1px solid var(--rh-accent);outline-offset:2px}
.rh-scroll{position:absolute;left:8.59%;right:10.81%;top:14.45%;bottom:7.71%;z-index:2;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(125,48,47,.34) transparent;padding-right:.55%}
.rh-scroll::-webkit-scrollbar{width:6px}
.rh-scroll::-webkit-scrollbar-track{background:transparent}
.rh-scroll::-webkit-scrollbar-thumb{background:rgba(125,48,47,.28);border-radius:999px}
.rh-document{min-height:100%;padding:0 0 8%;}
.rh-stage{position:relative;min-height:100%;}
.rh-stage + .rh-stage{margin-top:8%;}
.rh-stage-orient{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:6.2%;align-items:start;min-height:100%;padding:1.5% .4% 5%}
.rh-copy{min-width:0;padding-top:1.2%}
.rh-original-title{font-size:min(1.05vw,1.58vh);line-height:1.15;margin:0 0 .9em;color:rgba(44,33,28,.72)}
.rh-provenance{font-family:Arial,Helvetica,sans-serif;font-size:min(.84vw,1.26vh);line-height:1.45;letter-spacing:.01em;color:var(--rh-muted);margin:0 0 1.8em;max-width:96%}
.rh-question{font-size:min(1.62vw,2.43vh);line-height:1.13;font-weight:500;letter-spacing:-.015em;margin:0 0 .9em;max-width:96%}
.rh-body{font-size:min(1.10vw,1.65vh);line-height:1.52;margin:0;max-width:100%;overflow-wrap:break-word;hyphens:auto}
.rh-body p{margin:0}
.rh-artifact{margin:0;min-width:0}
.rh-artifact img{display:block;max-width:100%;height:auto;margin:0 auto;filter:drop-shadow(0 8px 7px rgba(31,22,17,.18))}
.rh-artifact figcaption{font-family:Arial,Helvetica,sans-serif;font-size:min(.76vw,1.14vh);line-height:1.4;color:var(--rh-muted);margin:.9em auto 0;max-width:92%}
.rh-stage-orient .rh-artifact img{width:100%;max-height:min(54vw,70vh);object-fit:contain}
.rh-stage-layer{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr);gap:6%;align-items:center;padding:8% 2% 10% 0}
.rh-stage-layer .rh-artifact img{width:100%;max-height:68vh;object-fit:contain}
.rh-side-note{font-size:min(1.10vw,1.65vh);line-height:1.5;margin:0;color:var(--rh-ink)}
.rh-stage-collision{padding:7% 3% 11%;text-align:center}
.rh-stage-collision .rh-artifact img{width:min(100%,1080px);max-height:70vh;object-fit:contain}
.rh-stage-collision .rh-artifact figcaption{max-width:74%;text-align:left}
.rh-stage-return{padding:7% 5% 6%}
.rh-stage-return .rh-artifact img{width:min(88%,980px);max-height:66vh;object-fit:contain}
.rh-bridge{width:min(72%,760px);font-size:min(1.18vw,1.77vh);line-height:1.5;margin:7% auto 0;color:var(--rh-ink)}
.rh-end{padding:8% 8% 4%;text-align:center}
.rh-end-rule{width:64px;height:1px;background:rgba(125,48,47,.68);margin:0 auto 2.2em}
.rh-end-label{font-family:Arial,Helvetica,sans-serif;font-size:min(.82vw,1.23vh);letter-spacing:.12em;text-transform:uppercase;color:var(--rh-accent);margin-bottom:.9em}
.rh-external{display:inline-block;font-size:min(1.18vw,1.77vh);line-height:1.35;color:var(--rh-ink);text-decoration:none;border-bottom:1px solid rgba(125,48,47,.7);padding-bottom:.12em}
.rh-external:hover,.rh-external:focus-visible{color:var(--rh-accent)}
.rh-external:focus-visible{outline:1px solid var(--rh-accent);outline-offset:4px}
body.rh-open{overflow:hidden}
@media(max-width:1000px){
 .rh-close{min-width:36px;min-height:36px}
 .rh-stage-orient{grid-template-columns:1fr 1.05fr;gap:4.5%}
}
@media(prefers-reduced-motion:reduce){
 .rh-backdrop,.rh-folio{transition:none!important}
 .rh-folio{transform:none!important}
}

/* Folded Spaces prototype v0.2 — readability + explicit section navigation */
.rh-stage[data-rh-page]{scroll-margin-top:1.2rem}
.rh-stage-orient{
  grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);
  gap:4.2%;
  align-items:start;
  min-height:100%;
  padding:1.2% .4% 3%;
}
.rh-copy{padding-top:.2%}
.rh-original-title{
  font-size:min(1.10vw,1.65vh);
  margin:0 0 .75em;
  text-align:left;
}
.rh-provenance{
  font-size:min(.93vw,1.40vh);
  line-height:1.45;
  margin:0 0 1.45em;
  max-width:100%;
}
.rh-question{
  font-size:min(1.94vw,2.91vh);
  line-height:1.10;
  margin:0 0 .78em;
  max-width:100%;
}
.rh-body{
  font-size:min(1.28vw,1.92vh);
  line-height:1.48;
  max-width:100%;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.rh-stage-orient .rh-artifact img{
  width:100%;
  max-height:min(58vw,65vh);
  object-fit:contain;
}
.rh-stage-orient .rh-artifact figcaption{
  font-size:min(.82vw,1.23vh);
  max-width:96%;
}
.rh-page-nav{
  position:absolute;
  right:10.8%;
  bottom:3.55%;
  z-index:7;
  display:flex;
  align-items:center;
  gap:1.15rem;
  font-family:Arial,Helvetica,sans-serif;
  font-size:min(.78vw,1.17vh);
  letter-spacing:.11em;
  font-weight:700;
  color:var(--rh-muted);
}
.rh-page-nav button{
  appearance:none;
  border:0;
  background:transparent;
  color:var(--rh-ink);
  font:inherit;
  letter-spacing:inherit;
  padding:.45rem .25rem;
  cursor:pointer;
}
.rh-page-nav button:hover,.rh-page-nav button:focus-visible{color:var(--rh-accent)}
.rh-page-nav button:focus-visible{outline:1px solid var(--rh-accent);outline-offset:2px}
.rh-page-nav button:disabled{opacity:.28;cursor:default;color:var(--rh-muted)}
.rh-page-count{min-width:3.6em;text-align:center;color:var(--rh-accent)}
.rh-stage-layer{padding-top:5%}
.rh-stage-collision{padding-top:5%}
.rh-stage-return{padding-top:5%}
.rh-stage-return .rh-end{padding:7% 8% 2%;text-align:center}
@media(max-width:1000px){
  .rh-stage-orient{grid-template-columns:1.08fr .92fr;gap:3.5%}
  .rh-page-nav{gap:.7rem}
}
