/* Illustrated atlas. Isolated from the existing landing styles. */
.atlas{--atlas-ink:#352d20;--atlas-edge:#b69a65;position:relative;border:1px solid #b99b6266;background:#191b15;isolation:isolate}
.atlas-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 30px 22px;border-bottom:1px solid #d0b37b30;background:linear-gradient(100deg,#d0b37b0d,transparent)}
.atlas-kicker{display:block;color:var(--gold);font:9px/1.5 var(--sans);letter-spacing:.22em;text-transform:uppercase;margin-bottom:7px}
.atlas .atlas-title{font:36px/1.15 Preciosa,var(--serif);color:var(--paper);text-wrap:initial}
.atlas-help{font:11px/1.7 var(--sans);color:var(--muted);max-width:225px;text-align:right;margin:0}
.atlas-help-mobile{display:none}
.atlas-stage{position:relative}
.atlas-scroll{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#88724d #25271d}
.atlas-scroll:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}
.atlas-canvas{position:relative;width:100%;aspect-ratio:1613/975;min-width:980px;background:#bba77d}
.atlas-terrain{display:block;width:100%;height:100%;max-width:none;object-fit:fill}
.atlas-pins{position:absolute;inset:0}
.atlas-pin{position:absolute;top:var(--pin-y);left:var(--pin-x);z-index:1;display:flex;align-items:center;justify-content:center;gap:0;min-width:44px;min-height:44px;padding:4px 5px;transform:translate(-50%,-50%);color:var(--atlas-ink);text-align:center;cursor:pointer;outline-offset:1px!important;border-radius:3px;-webkit-tap-highlight-color:transparent}
.atlas-pin-dot{position:absolute;top:0;left:50%;display:block;width:5px;height:5px;transform:translateX(-50%);border-radius:50%;background:#5f3b20;border:1px solid #e6d2a9;box-shadow:0 0 0 2px #e5d2a644;transition:background .2s,box-shadow .2s}
.atlas-pin-label{font:italic 17px/1.2 var(--serif);white-space:nowrap;padding:5px 10px 6px;background:linear-gradient(100deg,#d4ba86e8,#ead8afeF 45%,#d6bd8ae8);border:1px solid #82603c77;border-radius:2px 5px 2px 5px;box-shadow:0 2px 6px #45290d44,inset 0 0 7px #9b754833;text-shadow:0 1px 0 #f8e6c080;transition:background .2s,color .2s}
.atlas-pin--city .atlas-pin-label{font:24px/1.2 Preciosa,var(--serif);letter-spacing:.01em;padding:5px 14px}
.atlas-pin--inset{min-height:44px;padding:5px;gap:0;transform:translate(-50%,-50%)}
.atlas-pin--inset .atlas-pin-dot{display:none}
.atlas-pin--inset .atlas-pin-label{font:italic 13px/1.3 var(--serif);padding:5px 8px;background:#e5cfa0ed;border:1px solid #82603c66;box-shadow:0 2px 5px #45290d33}
.atlas-pin:hover,.atlas-pin:focus-visible,.atlas-pin.is-active{z-index:2}
.atlas-pin:hover .atlas-pin-label,.atlas-pin:focus-visible .atlas-pin-label,.atlas-pin.is-active .atlas-pin-label{color:#f5e8ce;background:#473a26;border-color:#473a26}
.atlas-pin--inset:hover .atlas-pin-label,.atlas-pin--inset:focus-visible .atlas-pin-label,.atlas-pin--inset.is-active .atlas-pin-label{background:#473a26;color:#f5e8ce;text-decoration:underline;text-underline-offset:4px}
.atlas-pin:hover .atlas-pin-dot,.atlas-pin:focus-visible .atlas-pin-dot,.atlas-pin.is-active .atlas-pin-dot{background:#e4d2a1;box-shadow:0 0 0 6px #6c512b40;outline-color:#3e2e15}
.atlas-city-note{position:absolute;top:39.1%;left:20.5%;transform:translateX(-50%);font:italic 12px/1.3 var(--serif);letter-spacing:.03em;color:#432e1b;background:#e1cb9bc9;padding:1px 8px;border-radius:50%;pointer-events:none}
.atlas-preview{position:absolute;z-index:5;width:292px;background:#171a14;border:1px solid #d0b37b99;box-shadow:0 16px 60px #0009;animation:atlas-reveal .16s ease-out;overflow:hidden}
.atlas-preview-link{display:block}
.atlas-preview-image{display:block;width:100%;height:auto;aspect-ratio:1.85;object-fit:cover;border-bottom:1px solid #d0b37b33}
.atlas-preview-close{position:absolute;right:9px;top:9px;z-index:2;display:grid;place-items:center;width:34px;height:34px;border:1px solid #d0b37b99;background:#10130eed;color:var(--paper);font:24px/1 var(--sans);cursor:pointer;border-radius:50%}
.atlas-preview-close:hover{background:#3c3929}
.atlas-preview-copy{padding:20px 22px}
.atlas-preview .eyebrow{font-size:8px;letter-spacing:.13em;margin:0 0 9px;color:var(--gold)}
.atlas-preview h3{font:27px/1.15 var(--serif);color:var(--paper);margin:0 0 11px;text-wrap:initial}
.atlas-preview-description{font:12px/1.75 var(--sans);color:var(--muted);margin:0}
.atlas-preview-cta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d0b37b33;padding-top:13px;margin-top:17px;color:var(--gold);font:11px/1.5 var(--sans)}
.atlas-preview-cta span{font-size:20px;line-height:1}
.atlas-preview-link:hover .atlas-preview-cta{color:#f5dba6}
.atlas-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 25px;border-top:1px solid #d0b37b35;font:10px/1.6 var(--sans);color:var(--muted)}
.atlas-footer p{margin:0}.atlas-footer-count{color:var(--gold);white-space:nowrap}.atlas-scroll-hint{display:none}
.atlas-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #d0b37b30;padding:10px 18px 14px;gap:0 20px}
.atlas-index-link{display:flex;align-items:center;gap:12px;min-height:46px;padding:10px 8px;color:#cbc8b9;font:11px/1.5 var(--sans);border-bottom:1px solid #ffffff0b}
.atlas-index-number{font:italic 12px/1 var(--serif);color:#c1aa7c80;flex-shrink:0}
.atlas-index-arrow{margin-left:auto;color:#d0b37b60;font-size:15px}
.atlas-index-link:hover,.atlas-index-link:focus-visible,.atlas-index-link.is-active{color:var(--gold);background:#d0b37b0a}
.atlas-index-link.is-active .atlas-index-number,.atlas-index-link.is-active .atlas-index-arrow{color:var(--gold)}
.atlas-sr-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.atlas-catalog{margin-top:32px;border-top:1px solid var(--line)}
.atlas-catalog>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;color:var(--gold);padding:20px 0;font:13px/1.6 var(--sans)}
.atlas-catalog>summary::-webkit-details-marker{display:none}
.atlas-catalog>summary span{font-size:22px;line-height:1;transition:transform .2s}
.atlas-catalog[open]>summary span{transform:rotate(45deg)}
.atlas-catalog .place-grid{margin-top:8px}
@keyframes atlas-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.atlas-toolbar{padding:22px}.atlas-index{gap:0 10px}.atlas-index-link{gap:9px;font-size:10px}.atlas-canvas{min-width:980px}.atlas-footer-count{display:none}.atlas-scroll-hint{display:inline;white-space:nowrap}}
@media(max-width:680px){
 .atlas-toolbar{display:block;padding:21px}.atlas .atlas-title{font-size:32px}.atlas-kicker{font-size:8px}.atlas-help{max-width:none;text-align:left;margin-top:12px;font-size:10px}.atlas-help-desktop{display:none}.atlas-help-mobile{display:inline}
 .atlas-canvas{min-width:980px}.atlas-scroll{max-height:none;scrollbar-width:thin}
 .atlas-preview{position:relative;left:auto!important;top:auto!important;width:auto;margin:0;border:0;border-top:1px solid #d0b37b66;box-shadow:none;animation:none}
 .atlas-preview-link{display:grid;grid-template-columns:110px minmax(0,1fr)}.atlas-preview-image{height:100%;aspect-ratio:auto;object-fit:cover;border:0}.atlas-preview-copy{padding:19px 17px}.atlas-preview h3{font-size:25px;padding-right:21px}.atlas-preview .eyebrow{font-size:7px;padding-right:20px}.atlas-preview-description{font-size:11px}.atlas-preview-close{width:29px;height:29px;right:7px;top:7px;font-size:21px}.atlas-preview-cta{font-size:10px;padding-top:10px;margin-top:12px}
 .atlas-footer{display:block;padding:13px 18px;font-size:9px}.atlas-scroll-hint{display:block;margin-top:3px;color:var(--gold)}
 .atlas-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;padding:7px 10px 13px}.atlas-index-link{font-size:10px;min-height:49px;padding:10px 7px;gap:7px}.atlas-index-number{font-size:11px}.atlas-index-arrow{display:none}
}
@media(prefers-reduced-motion:reduce){.atlas *{animation:none!important;transition:none!important}.atlas-scroll{scroll-behavior:auto!important}}

/* Hotspots follow the hand-painted place names already present in the supplied map. */
.atlas-final .atlas-pin{width:var(--pin-width);height:var(--pin-height);padding:0;border-radius:35%;background:transparent;transition:background .2s}
.atlas-final .atlas-pin--painted:hover,.atlas-final .atlas-pin--painted.is-active{background:radial-gradient(ellipse at center,#fbe4a02b,transparent 70%)}
.atlas-final .atlas-pin--painted:focus-visible{outline:2px dashed #ffe4a7;outline-offset:-4px!important;background:#fbe4a015}
.atlas-final .atlas-pin--painted .atlas-pin-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;padding:0;border:0}
.atlas-final .atlas-pin--inset{border-radius:8px}
.atlas-final .atlas-pin--inset .atlas-pin-label{position:absolute;bottom:4.5%;left:50%;transform:translateX(-50%);font:18px/1.2 Preciosa,var(--serif);padding:7px 15px 8px;background:linear-gradient(100deg,#dbc18eea,#eeddb4f5,#dbc18eea);border:1px solid #7e5d2c77;box-shadow:0 2px 6px #45290d66}
.atlas-final .atlas-pin--inset .atlas-pin-label small{display:block;font:8px/1.4 var(--sans);letter-spacing:.15em;text-transform:uppercase;margin-bottom:4px;opacity:.8}
.atlas-final .atlas-pin--inset:hover .atlas-pin-label,.atlas-final .atlas-pin--inset.is-active .atlas-pin-label{color:#fff0cc;background:#493a25;text-decoration:none;border-color:#e4c787;text-shadow:none}
.atlas-index-alias{font-size:9px;color:#9b9f8d}
.atlas-index-secret{grid-column:1/-1;justify-content:center;gap:13px!important;border-bottom:0;border-top:1px solid #d0b37b33;margin-top:7px;padding-top:15px;color:var(--gold)}
.atlas-fog{position:absolute;z-index:2;top:2.8%;right:1.4%;width:31%;height:37%;pointer-events:none;background:radial-gradient(ellipse at 80% 25%,#070e11fa 0%,#0c1418f7 33%,#172025d9 55%,#24302e80 73%,transparent 90%);backdrop-filter:blur(3px) saturate(.3);-webkit-backdrop-filter:blur(3px) saturate(.3);mask-image:radial-gradient(ellipse 100% 83% at 95% 25%,#000 0%,#000 54%,#0009 70%,transparent 93%);-webkit-mask-image:radial-gradient(ellipse 100% 83% at 95% 25%,#000 0%,#000 54%,#0009 70%,transparent 93%)}
.atlas-fog:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 30%,#a3aca71a,transparent 65%),radial-gradient(ellipse at 70% 70%,#8c9c9a15,transparent 55%);opacity:.8}
.atlas-mystery{position:absolute;z-index:3;left:87%;top:22.2%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;text-align:center;width:23.5%;padding:18px 15px 16px;color:#f0e4c5;text-shadow:0 1px 8px #000}
.atlas-mystery:before,.atlas-mystery:after{content:'';width:34px;height:1px;background:linear-gradient(90deg,transparent,#d0b37b,transparent);opacity:.8}
.atlas-mystery:before{margin-bottom:13px}.atlas-mystery:after{margin-top:13px}
.atlas-mystery-kicker{font:8px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.2em;color:#d9c698}
.atlas-mystery strong{font:34px/1.2 Preciosa,var(--serif);font-weight:400;margin:8px 0 9px}
.atlas-mystery-copy{font:11px/1.65 var(--serif);max-width:180px;color:#c4c7bc}
.atlas-mystery-link{display:flex;align-items:center;gap:9px;font:10px/1.4 var(--sans);margin-top:14px;color:#ecd097;padding-bottom:5px;border-bottom:1px solid #d0b37b70}
.atlas-mystery:hover .atlas-mystery-link{color:#fff0c5;border-color:#fff0c5}
.atlas-mystery:focus-visible{outline:2px solid #ecd097;outline-offset:-6px;background:#10191ed9}
@media(max-width:680px){.atlas-final .atlas-pin--inset .atlas-pin-label{font-size:17px}.atlas-mystery strong{font-size:30px}.atlas-mystery-copy{font-size:10px}.atlas-mystery-link{font-size:9px}}

/* A soft spotlight lifts the painted landmark and quietens the surrounding map. */
.atlas-spotlight{position:absolute;z-index:4;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity .2s ease}
.atlas.is-inspecting .atlas-spotlight{opacity:1}
.atlas-spotlight.is-secret .atlas-spotlight-bright{opacity:0}
.atlas-final .atlas-pin{z-index:5}
.atlas-final.is-inspecting .atlas-pin--painted.is-active{background:transparent}
.atlas-final.is-inspecting .atlas-pin:not(.is-active) .atlas-pin-label{opacity:.55}
.atlas-final.is-inspecting .atlas-pin--inset.is-active .atlas-pin-label{background:#f5e4b8;color:#39260f;border-color:#fff1c4;box-shadow:0 0 0 2px #ffe9aa80,0 0 22px #f2cc7888;text-shadow:none}
.atlas-preview{z-index:10}

/* Localized blue-grey fog keeps the unexplored towns visible, but veiled. */
.atlas-fog{z-index:3;top:2%;right:1.4%;width:34%;height:29%;background:radial-gradient(ellipse 43% 46% at 35% 34%,#82968d99 0%,#607b7588 35%,#314b5270 62%,transparent 100%),radial-gradient(ellipse 53% 56% at 80% 46%,#7f968d99 0%,#49697088 33%,#29495470 65%,transparent 100%);backdrop-filter:blur(.9px) saturate(.76);-webkit-backdrop-filter:blur(.9px) saturate(.76);mask-image:radial-gradient(ellipse 45% 48% at 35% 34%,#000 30%,transparent 100%),radial-gradient(ellipse 60% 59% at 80% 46%,#000 25%,transparent 95%);-webkit-mask-image:radial-gradient(ellipse 45% 48% at 35% 34%,#000 30%,transparent 100%),radial-gradient(ellipse 60% 59% at 80% 46%,#000 25%,transparent 95%)}
.atlas-fog:before{background:radial-gradient(ellipse at 35% 34%,#b4c6ba25,transparent 60%),radial-gradient(ellipse at 80% 45%,#9bb4b822,transparent 58%);opacity:.6}
.atlas-mystery{z-index:6;left:91.7%;top:30.6%;width:16.2%;padding:7px 8px 8px;background:linear-gradient(100deg,#22373b9c,#152b31c2,#22373b9c);border:1px solid #d8c19066;border-radius:2px;box-shadow:0 2px 10px #0004;transition:opacity .2s,border-color .2s}
.atlas-mystery:before,.atlas-mystery:after{display:none}
.atlas-mystery--arcanum{left:91.7%;top:16%;width:16.2%;height:23%;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.atlas-mystery--arcanum .atlas-mystery-kicker{display:none}
.atlas-mystery--arcanum .atlas-mystery-link span{display:none}
.atlas-mystery--arcanum strong{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
.atlas-mystery-copy{display:none}
.atlas-mystery-kicker{font-size:7px;letter-spacing:.13em;color:#ece4c9}
.atlas-mystery-link{font:9px/1.45 var(--sans);margin-top:4px;padding-bottom:2px;gap:5px;color:#f2dfb2;border-bottom-color:#e9d19a80}
.atlas-mystery--kern{left:76.5%;top:14.5%;width:15%;height:18%;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;text-shadow:0 1px 8px #000}
.atlas-mystery--kern strong{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}
.atlas-mystery--arcanum .atlas-mystery-link,.atlas-mystery--kern .atlas-mystery-link{position:absolute;top:100%;left:0;right:0;justify-content:center;padding:5px 6px;margin-top:3px;background:linear-gradient(100deg,#22373b9c,#152b31c2,#22373b9c);border:1px solid #d8c19066;border-radius:2px;box-shadow:0 2px 10px #0004;color:#f2dfb2}
/* Keep the Arcanum caption inside the painted gold border without shrinking its hover area. */
.atlas-mystery--arcanum .atlas-mystery-link{left:1%;right:15%;box-sizing:border-box;min-width:0;white-space:normal;overflow-wrap:anywhere}
.atlas-mystery--arcanum:hover .atlas-mystery-link,.atlas-mystery--arcanum:focus-visible .atlas-mystery-link,.atlas-mystery--kern:hover .atlas-mystery-link,.atlas-mystery--kern:focus-visible .atlas-mystery-link{color:#fff0c5;border-color:#ffe3a0}
.atlas-mystery--arcanum:focus-visible,.atlas-mystery--kern:focus-visible{outline:2px dashed #ffe4a7;outline-offset:0;background:transparent}
.atlas.is-inspecting .atlas-mystery:not(.is-spotlight-active){opacity:.66}
.atlas-mystery--arcanum.is-spotlight-active .atlas-mystery-link{border-color:#ffe3a0;box-shadow:0 0 16px #efdba552}
@media(max-width:680px){.atlas-mystery strong{font-size:22px}.atlas-mystery-link{font-size:9px}.atlas-mystery--kern .atlas-mystery-link{font-size:9px}}
