/* Wissahickon Valley Park — the Séance. Period is a surface; the bones are modern. */
:root{
  --bg:#0c0a07; --bg2:#141009; --bone:#ece3cb; --bone-dim:#b7ab8d;
  --hair:#4a3f2a; --candle:#ffb45e; --ink:#1a1409;
  --serif:Georgia,'Iowan Old Style','Times New Roman',serif;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{
  margin:0;color:var(--bone);font-family:var(--serif);
  background:
    radial-gradient(120% 60% at 50% -10%, #241a0d 0%, transparent 60%),
    var(--bg);
  line-height:1.65;font-size:19px;
}
main{max-width:44rem;margin:0 auto;padding:1.2rem 1.1rem 4rem}
h1,h2,h3{font-weight:normal;letter-spacing:.04em}
.name{text-align:center;margin:.6em 0 .1em}
.name img{display:block;width:min(82%,22rem);height:auto;margin:0 auto}
.certainty{text-align:center;font-style:italic;color:var(--bone-dim);margin:.2em 0 1.4em}
.rule{border:0;border-top:1px solid var(--hair);margin:2.2rem auto;width:62%}
.plate{margin:1.6rem auto;text-align:center}
.plate img{max-width:100%;height:auto;border:1px solid var(--hair);
  box-shadow:0 0 60px rgba(255,180,94,.08), 0 0 0 6px #0a0805, 0 0 0 7px var(--hair)}
.plate figcaption{font-size:.82rem;color:var(--bone-dim);font-style:italic;margin-top:.7em}
.story p{margin:1.1em 0}
.story p:first-of-type::first-letter{font-size:2.6em;line-height:.9;padding-right:.08em;color:var(--candle)}
.kicker{text-align:center;text-transform:uppercase;letter-spacing:.32em;font-size:.78rem;color:var(--candle)}
.cellar{background:var(--bg2);border:1px solid var(--hair);padding:1.2rem 1.3rem;margin-top:2.4rem}
.cellar h2{font-size:1.05rem;text-transform:uppercase;letter-spacing:.22em;text-align:center;margin-top:0}
.cellar p,.cellar li{font-size:.94rem;color:var(--bone-dim)}
.cellar .src{font-style:italic}
.bill{border:1px solid var(--hair);padding:1.2rem 1.3rem;margin-top:2.4rem;background:
  linear-gradient(180deg,rgba(255,180,94,.05),transparent 40%)}
.bill h2{font-size:1.05rem;text-transform:uppercase;letter-spacing:.22em;text-align:center;margin-top:0}
.bill table{width:100%;border-collapse:collapse;font-size:.98rem}
.bill td{padding:.28em 0;border-bottom:1px dotted var(--hair)}
.bill td:last-child{text-align:right;white-space:nowrap}
.door{text-align:center;margin-top:2.6rem}
.door .goodbye{font-size:1.5rem;letter-spacing:.42em;text-transform:uppercase}
.door a{color:var(--candle);text-decoration:none;border-bottom:1px solid var(--hair)}
.door a:hover,.door a:focus{border-bottom-color:var(--candle)}
.register{border:1px solid var(--hair);padding:1.2rem 1.3rem;margin-top:2.4rem}
.register h2{font-size:1.05rem;text-transform:uppercase;letter-spacing:.22em;text-align:center;margin-top:0}
.register input{background:#0a0805;border:1px solid var(--hair);color:var(--bone);
  font-family:var(--serif);font-size:1rem;padding:.5em .7em;width:100%;margin:.4em 0}
.register button{background:none;border:1px solid var(--candle);color:var(--candle);
  font-family:var(--serif);letter-spacing:.14em;text-transform:uppercase;
  padding:.55em 1.2em;cursor:pointer;font-size:.85rem}
.hold-hint{text-align:center;font-size:.85rem;color:var(--bone-dim);font-style:italic}
:focus-visible{outline:2px solid var(--candle);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* --- Desktop rebuild (Oct 30, 2026): lintel, doorway, knock plaque, carved names --- */
#gift a.doorway{display:inline-block;font-size:1.3rem;color:var(--candle);text-decoration:none;
  border:1px solid var(--candle);padding:.55em 1.3em;background:rgba(255,180,94,.06);
  letter-spacing:.05em;border-bottom:1px solid var(--candle)}
#gift a.doorway:hover,#gift a.doorway:focus-visible{background:rgba(255,180,94,.14)}
ul.rim{list-style:none;margin:0;padding:0}
ul.rim li{display:inline}
ul.rim li+li::before{content:" · ";color:var(--bone-dim)}
.rim a{color:var(--candle);text-decoration:none;border-bottom:1px solid var(--hair)}
.rim a:hover,.rim a:focus{border-bottom-color:var(--candle)}
.plate figcaption{font-size:.95rem;color:var(--bone)}
.cellar p,.cellar li{font-size:.98rem;color:var(--bone)}
@media (min-width:900px){
  main{max-width:72rem}
  .cellar,.bill,.register{max-width:54rem;margin-left:auto;margin-right:auto}
  .chamber-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);
    gap:2.2rem;align-items:start}
  .chamber-grid .plate{margin-top:.4rem;position:sticky;top:1.2rem}
}

/* --- Simple path (Oct 30, 2026): one start, one way back --- */
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sitting-ui{position:absolute;left:0;right:0;bottom:9%;z-index:6;text-align:center;padding:0 1rem}
.sitting-ui #sitting-line{display:inline-block;background:rgba(10,8,5,.74);
  padding:.35em .9em;color:var(--bone);margin:0}
.sitting-ui #spelling{text-shadow:0 2px 14px #000, 0 0 4px #000}
.scenewrap.leaving .scene-inner{opacity:.1;transition:opacity 1s ease}
.intro{color:var(--bone-dim);font-style:italic;max-width:44rem;margin:1.6rem auto 0;text-align:center}
.backdoor{display:inline-block;font-size:1.2rem;color:var(--candle);text-decoration:none;
  border:1px solid var(--candle);padding:.6em 1.5em;background:rgba(255,180,94,.06)}
.backdoor:hover,.backdoor:focus-visible{background:rgba(255,180,94,.14)}
@media (max-width:680px){
  .scenewrap{margin-left:-1.1rem;margin-right:-1.1rem}
  .sitting-ui{bottom:15%}
}

/* --- Fixes to the simple path (Oct 30, 2026) --- */
@media (max-width:680px){
  main{padding-top:0}
}

.homebtn{display:inline-block;border:1px solid var(--bone-dim);color:var(--bone);
  font-family:var(--serif);letter-spacing:.25em;text-transform:uppercase;font-size:.85rem;
  padding:.9em 2.4em .9em calc(2.4em + .25em);text-decoration:none;background:rgba(0,0,0,.35)}
.homebtn:hover{border-color:var(--candle);color:var(--candle)}

.sitting-ui #sitting-line:empty{display:none}
