/* Keepers website v2.0.0 — the illustrated Broken Stones entrance and demo. */
#flash{display:none}#stones{display:none;background:var(--deep);color:var(--paper);min-height:100vh}body.stones-open #surface{display:none}body.stones-open #stones{display:block}#stones .col{max-width:76ch}#stones section{padding:4rem 0}#stones h2{font-size:clamp(2rem,4vw,3rem)}.stones-entrance{border-bottom:1px solid var(--line);padding:0!important;overflow:hidden}.stones-opening{display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:center}.stones-copy{padding-block:4rem}.stones-copy h1{font-size:clamp(3rem,6vw,6rem);margin-bottom:2rem}.stones-copy h1 span{color:var(--gold)}.stones-copy p{color:var(--muted)}.stones-copy .eyebrow{color:var(--gold)}.stones-copy .stones-hook{font-size:1.8rem;line-height:1.4;color:var(--paper)}.stones-copy .actions{margin-top:2rem}.stones-portrait{margin:0}.stones-portrait img{max-height:810px;width:100%;object-fit:cover;object-position:center;mask-image:linear-gradient(to bottom,#000 85%,transparent)}.s-eyebrow{font:.75rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}.redline{color:var(--ember)}.network-art{margin:2rem 0 0}.network-art img{width:100%;aspect-ratio:2;object-fit:cover}.netmap{border:1px solid var(--line);background:var(--panel);padding:1rem;margin-top:1rem}.netmap svg{width:100%;height:auto;display:block}.figures{display:grid;gap:1rem;margin-top:2rem}.figure{border-top:1px solid var(--line);padding:1.5rem 0}.figure b{font-weight:400;color:var(--paper);font-size:1.3rem}.figure .role{font-size:.9rem;color:var(--gold);margin:.2rem 0 .7rem}.figure p{margin:0;font-size:1.1rem;color:var(--muted)}.demo-note{font:.875rem/1.7 var(--sans);color:var(--muted);padding:1rem 0;border-bottom:1px solid var(--line)}.actbox{border:1px solid var(--line);background:var(--panel);padding:2rem;margin-top:2rem}.acttitle{font-size:1.5rem;color:var(--paper)}.actyear{display:block;font:.75rem/1.6 var(--sans);color:var(--gold);margin-bottom:.6rem}#actText{margin:1rem 0;white-space:pre-line}.archive{border-left:2px solid var(--gold);padding:.8rem 1rem;margin:1rem 0;font-size:1rem;color:var(--muted)}.choice{display:block;width:100%;text-align:left;background:var(--deep);color:var(--paper);border:1px solid var(--line);padding:1rem;margin-top:1rem;font:1.15rem/1.5 var(--serif)}.choice:hover{border-color:var(--gold);background:#26322e}.choice .risk{display:block;color:var(--ember);font:.75rem/1.6 var(--sans);letter-spacing:.07em;margin-bottom:.4rem}.choice .stakes{display:block;color:var(--muted);font-size:1rem;margin-top:.5rem}.deltas{color:var(--gold);font:.875rem/1.7 var(--sans);margin-top:1.2rem}#beatWrap{display:none;margin-top:1.5rem}#beat{width:100%;border:1px solid var(--line);background:#07060d;display:block;touch-action:none;cursor:crosshair}#beatPrompt{font-size:1rem;color:var(--muted);margin-top:.7rem;text-align:center}.return{margin-top:2rem}.return button{background:transparent;border:1px solid var(--line);color:var(--paper);font:.875rem/1.6 var(--sans);padding:1rem;min-height:48px}.return button:hover{border-color:var(--gold)}
@media(max-width:760px){.stones-opening{grid-template-columns:1fr;gap:0}.stones-portrait{grid-row:1;max-height:400px;overflow:hidden;margin-inline:-1.25rem}.stones-portrait img{height:470px;object-position:center 18%;mask-image:linear-gradient(to bottom,#000 55%,transparent 90%)}.stones-copy{padding-top:0;position:relative}.stones-copy h1{font-size:3.6rem}#stones section{padding-block:3rem}.actbox{padding:1.2rem}.netmap{padding:.3rem}}
.network-regions{list-style:none;padding:0;margin:1.5rem 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.network-regions li{border-top:1px solid var(--line);padding-top:1rem;color:var(--muted);font:.875rem/1.6 var(--sans)}.network-regions span{display:block;font:1.4rem/1.4 var(--serif);color:var(--gold);margin-bottom:.4rem}.network-regions .archive-region{grid-column:1/-1}.network-regions .archive-region span{color:var(--muted)}
@media(max-width:760px){.network-regions{grid-template-columns:1fr 1fr}}
@media(max-width:390px){.network-regions{grid-template-columns:1fr}}

/* Programmatic reading position is not an interactive control. */
#stones-title:focus{outline:none}
