:root{--cream:#f4e7d1;--muted:#b4b4a7;--copper:#c79c67;--deep:#0e1819;--panel:rgba(18,26,25,.84);--border:rgba(207,180,141,.26);--sans:'DM Sans',system-ui,sans-serif;--serif:'Cormorant Garamond',Georgia,serif}
*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--deep);color:var(--cream);font-family:var(--sans)}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:2px solid #eac791;outline-offset:4px}#museum{width:100vw;height:100dvh;min-height:450px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 35%,#455258,#101b1b 75%)}#world{display:block;width:100%;height:100%;touch-action:none;outline:none}.vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,20,20,.84) 0,rgba(11,20,20,.32) 29%,transparent 50%,rgba(11,20,20,.08) 78%,rgba(11,20,20,.27) 100%),linear-gradient(0deg,rgba(10,17,18,.8) 0,transparent 22%,transparent 72%,rgba(9,17,18,.53) 100%);pointer-events:none}.masthead{position:absolute;z-index:15;top:0;left:0;right:0;height:92px;display:flex;align-items:center;justify-content:space-between;padding:20px 47px;border-bottom:1px solid rgba(226,197,149,.17)}.brand{display:flex;align-items:center;gap:14px}.brand img{width:38px;height:46px}.brand-overline,.edition{font-weight:700;letter-spacing:2.1px;font-size:9px;color:#e0bd8a}.brand-name{font-family:var(--serif);font-size:20px;margin-top:0;letter-spacing:.2px}.top-right{display:flex;align-items:center;gap:23px}.edition{letter-spacing:1.5px;color:#ccc8b8}.dot{color:var(--copper);padding:0 7px}.text-button,.icon-button{background:transparent;border:1px solid rgba(225,205,176,.38);height:31px;min-width:42px;font-size:10px;font-weight:700;letter-spacing:1px}.icon-button{border-radius:50%;height:32px;min-width:32px;font-family:var(--serif);font-size:19px;font-style:italic}.headline{position:absolute;z-index:10;left:6.2%;top:21%;width:min(355px,35vw);pointer-events:none}.eyebrow{color:var(--copper);letter-spacing:2.8px;font-weight:700;font-size:10px;line-height:1.6}.headline .eyebrow{display:flex;align-items:center;gap:12px}.line{display:inline-block;width:29px;height:1px;background:var(--copper)}h1{font-family:var(--serif);font-weight:500;font-size:clamp(47px,5.8vw,92px);line-height:.91;letter-spacing:-2.2px;margin:29px 0 27px}h1 span,h1 em{display:block}h1 em{font-weight:400;color:#dbb783}.subtitle{font-family:var(--serif);font-size:clamp(18px,1.6vw,24px);line-height:1.27;color:#d7d4ca;max-width:325px}.hero-actions{display:flex;align-items:center;gap:20px;margin-top:32px;pointer-events:all}.primary-btn{background:#d0a475;color:#1b231f;border:1px solid #d0a475;padding:15px 18px;font-size:10px;font-weight:700;letter-spacing:1px;white-space:nowrap;transition:.2s}.primary-btn:hover{background:#ecc79a}.play-icon{font-size:10px;margin-right:12px}.ghost-btn{border:0;border-bottom:1px solid #d9bd95;background:transparent;padding:9px 0;font-size:10px;font-weight:700;letter-spacing:1px;white-space:nowrap}.interact-card{position:absolute;z-index:12;right:5.3%;top:33%;width:245px;padding:25px 24px;background:var(--panel);border:1px solid var(--border);box-shadow:0 12px 45px rgba(0,0,0,.22);backdrop-filter:blur(15px);transition:opacity .3s,transform .3s}.card-number{font-size:9px;letter-spacing:2px;color:var(--copper)}.card-rule{height:1px;background:var(--border);margin:15px 0 21px}.card-kicker{font-size:9px;letter-spacing:1.8px;color:#aaa89e}.interact-card h2{font:500 32px/1 var(--serif);margin:12px 0}.interact-card p{font:400 13px/1.62 var(--sans);color:#c7c8be;min-height:106px}.card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);padding-top:16px;gap:8px}.card-bottom span{font-size:8px;letter-spacing:1.2px;color:#b7a48d}.card-bottom button{background:none;border:none;color:var(--copper);font-size:10px;font-weight:700;letter-spacing:1.5px}.card-bottom button span{font-size:19px;vertical-align:middle;margin-left:7px}.view-rail{position:absolute;z-index:12;left:6.2%;bottom:16%;display:flex;flex-direction:column;gap:12px}.rail-title{font-size:9px;letter-spacing:2.5px;color:#c1ab8b;margin-bottom:4px}.rail-btn{border:0;background:none;display:flex;gap:14px;align-items:center;padding:4px 0;color:#a6a8a0;text-align:left;font-size:10px;letter-spacing:1.2px;font-weight:700}.rail-btn.active{color:#f4d8af}.rail-symbol{font-family:var(--serif);font-size:23px;font-weight:400;width:26px;text-align:center}.bottom-bar{position:absolute;z-index:12;bottom:0;left:0;right:0;min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:12px 4.3%;border-top:1px solid rgba(226,197,149,.2);background:linear-gradient(0deg,rgba(10,17,17,.75),rgba(10,17,17,.35));gap:14px}.bottom-caption,.hint{color:#c3bdb0;font-size:9px;letter-spacing:1.45px;font-weight:700;line-height:1.6}.bottom-caption{display:flex;gap:11px;align-items:center;max-width:245px}.live-mark{height:6px;width:6px;border-radius:50%;background:#c99f6f;box-shadow:0 0 11px #d7ae78;flex-shrink:0}.hint{color:#929f9a;text-align:right}.tools{display:flex;gap:6px;align-items:center}.tool{display:flex;align-items:center;gap:9px;border:1px solid rgba(224,202,170,.2);background:rgba(16,27,28,.5);font-size:9px;letter-spacing:1.6px;padding:10px 12px;color:#a6aaa3}.tool.active{background:rgba(198,155,101,.12);color:#edc38a;border-color:rgba(208,163,110,.43)}.tool-icon{font-size:16px;line-height:12px}.hotspots{position:absolute;inset:0;pointer-events:none;z-index:8}.hotspot{position:absolute;transform:translate(-50%,-50%);background:transparent;border:0;pointer-events:auto;display:flex;align-items:center;gap:10px;filter:drop-shadow(0 0 9px #0006);white-space:nowrap}.hotspot-pin{width:22px;height:22px;border:1px solid rgba(250,213,155,.9);background:rgba(16,29,29,.54);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 0 6px rgba(210,162,95,.13);transition:transform .2s}.hotspot-pin:before{content:'';width:5px;height:5px;border-radius:50%;background:#efcf9e;box-shadow:0 0 9px #f1c58c}.hotspot:hover .hotspot-pin,.hotspot.selected .hotspot-pin{transform:scale(1.22);box-shadow:0 0 0 8px rgba(210,162,95,.22)}.hotspot-label{display:none;font-size:9px;letter-spacing:1px;color:#f5debf;background:rgba(15,27,27,.9);padding:7px 10px;border:1px solid #bd925c50}.hotspot:hover .hotspot-label,.hotspot.selected .hotspot-label{display:block}.loading-screen{z-index:25;position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,#283534,#101819 65%);display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .7s,visibility .7s}.loading-screen.done{opacity:0;visibility:hidden;pointer-events:none}.loading-crest img{width:73px;height:85px}.loading-kicker{color:#cfad7b;letter-spacing:4px;font-size:11px;margin-top:24px}.loading-title{font-family:var(--serif);font-size:41px;margin:12px 0 27px}.progress{width:220px;height:1px;background:#8e856e60}.progress div{width:0;height:100%;background:#e4bc81;transition:width .3s}.loading-sub{font-size:10px;letter-spacing:1.2px;color:#9a9f98;margin-top:16px}.modal-overlay{position:absolute;z-index:30;inset:0;background:#071011c9;display:flex;align-items:center;justify-content:center;padding:25px;backdrop-filter:blur(6px)}.modal{border:1px solid #b48a5c69;background:#1b2726;padding:35px 38px;max-width:530px;width:100%;position:relative;box-shadow:0 20px 70px #0008}.modal h2{font:500 47px/1 var(--serif);margin:17px 0}.modal p{font-size:13px;line-height:1.8;color:#c7c8bd}.close-modal{position:absolute;top:10px;right:16px;border:0;background:transparent;font-size:28px;color:#e8cc9f}.shortcuts{margin:25px 0;display:grid;grid-template-columns:1fr 1.7fr;gap:10px;font-size:11px}.shortcuts span{color:#cfa977;letter-spacing:1.2px}.shortcuts b{font-weight:400;color:#ddd8cb}.modal .disclaimer{border-top:1px solid #ad875450;padding-top:15px;font-style:italic;color:#adaea6}.hidden{display:none!important}.error-banner{position:absolute;z-index:40;bottom:95px;left:20px;right:20px;max-width:700px;margin:auto;background:#602f2b;color:#fff0e0;padding:17px;border:1px solid #d3a37e;font-size:14px;line-height:1.5}
@media(max-width:1100px){.interact-card{width:230px;right:3%;top:29%}.headline{left:4%;width:305px;top:23%}h1{font-size:64px}.bottom-caption{max-width:160px}.bottom-bar{padding:12px 3%}.hint{max-width:160px}.view-rail{left:4%}}
@media(max-width:730px){.masthead{height:73px;padding:12px 19px}.brand img{width:28px;height:38px}.brand-overline{font-size:7px;letter-spacing:1.2px}.brand-name{font-size:15px}.edition{display:none}.top-right{gap:8px}.headline{top:102px;left:22px;width:71vw}.headline .eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:clamp(47px,10vw,72px);margin:18px 0 10px}.subtitle{font-size:17px;max-width:275px}.hero-actions{margin-top:13px;gap:12px}.primary-btn{padding:12px 11px;font-size:8px}.ghost-btn{font-size:8px}.interact-card{right:15px;top:auto;bottom:122px;width:185px;padding:13px 14px}.card-rule{margin:10px 0}.card-kicker{font-size:8px}.interact-card h2{font-size:25px;margin:7px 0}.interact-card p{font-size:11px;line-height:1.4;min-height:70px;margin:6px 0 12px}.card-bottom{padding-top:10px}.card-bottom span{font-size:7px}.view-rail{left:20px;bottom:130px;gap:8px}.rail-title{font-size:8px}.rail-btn{font-size:9px}.bottom-bar{min-height:100px;flex-wrap:wrap;justify-content:center;padding:10px 13px;gap:8px}.bottom-caption{display:none}.tools{width:100%;justify-content:center}.tool{padding:9px 11px;font-size:9px}.hint{text-align:center;max-width:none;font-size:8px}.hotspot-label{display:none!important}.hotspot-pin{width:18px;height:18px}}
@media(max-width:400px){.headline{top:91px}.headline h1{font-size:43px}.subtitle{font-size:15px}.interact-card{width:164px;bottom:116px}.view-rail{bottom:120px}.tool{padding:8px;font-size:8px;gap:4px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
