/* Optional cross-room passage. Existing content/focus/scroll remain untouched. */
:root{--mh-passage-ready:1}
.knowledge-passage{position:fixed;inset:0;z-index:1900;pointer-events:none;overflow:hidden;contain:layout paint style;isolation:isolate}
.knowledge-passage__veil{position:absolute;inset:0;background:#081f19;opacity:0}
.knowledge-passage__halo{position:absolute;left:calc(50% - 180px);top:calc(50% - 180px);width:360px;height:360px;border-radius:50%;background:radial-gradient(ellipse,rgba(201,169,107,.19),rgba(24,58,46,.18) 42%,transparent 70%);opacity:0}
.knowledge-passage__trace{position:absolute;left:calc(50% - 60px);top:calc(50% - 80px);width:120px;height:160px;border:1px solid rgba(201,169,107,.65);box-sizing:border-box;transform-origin:center;opacity:0}
.knowledge-passage__drop{position:absolute;left:calc(50% - 50px);top:calc(50% - 67px);width:100px;height:134px;object-fit:contain;opacity:0}
.knowledge-passage__caption{position:absolute;top:calc(50% + 93px);left:0;width:100%;text-align:center;color:#e7ded1;font:400 13px/1.5 Montserrat,system-ui,sans-serif;letter-spacing:.14em;opacity:0}
.knowledge-passage__intro{position:absolute;left:10%;top:calc(50% - 210px);width:80%;margin:0;color:#e7ded1;text-align:center;font:400 clamp(18px,2.3vw,30px)/1.35 'Playfair Display',Georgia,serif;opacity:0}
.knowledge-passage__document{position:absolute;left:calc(50% - min(220px,42vw));top:calc(50% - 132px);width:min(440px,84vw);min-height:264px;box-sizing:border-box;padding:30px 32px;background:#e7ded1;color:#183a2e;border:1px solid #c9a96b;box-shadow:0 18px 70px rgba(0,0,0,.25);opacity:0}
.knowledge-passage__document-label{margin:0 0 20px;font:500 11px/1.5 Montserrat,system-ui,sans-serif;color:#5a4636}
.knowledge-passage__document-title{margin:0;font:400 clamp(18px,2.1vw,26px)/1.3 'Playfair Display',Georgia,serif;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.knowledge-passage__document-rule{width:48px;height:1px;margin:22px 0 12px;background:#9d7f48}
.knowledge-passage__document-note{margin:0;font:400 11px/1.5 Montserrat,system-ui,sans-serif;color:#5a4636}
@media(max-height:540px){.knowledge-passage__intro{top:8%;font-size:18px}.knowledge-passage__document{top:30%;padding:20px 24px;min-height:180px}.knowledge-passage__document-title{-webkit-line-clamp:3;font-size:19px}.knowledge-passage__document-label{margin-bottom:12px}.knowledge-passage__document-rule{margin:12px 0 8px}}
@media(prefers-reduced-motion:reduce){.knowledge-passage{display:none!important}}
@media print{.knowledge-passage{display:none!important}}
