/* Regional atlas: one quiet field, two handcrafted landmarks, crews doing the work. */
.region-partner[aria-pressed="true"]{outline:3px solid #edbc57;outline-offset:4px;box-shadow:0 0 0 8px #edbc5755}
#world{margin-top:28px;border-color:#50654f;background:#f8efd4}
.region-heading{padding:23px 26px 17px;display:flex;gap:28px;justify-content:space-between;align-items:end;background:#fffbed}
.region-heading p{margin:0;max-width:370px;font-size:13px;line-height:1.5;color:#526554}
.region-heading .eyebrow{font:10px ui-monospace,monospace;letter-spacing:.12em;margin:0 0 7px;text-transform:uppercase}
.region-heading h2{font-size:28px;line-height:1.12;letter-spacing:-.035em;margin:0;font-weight:650}
.region-views{display:flex;gap:5px;flex-wrap:wrap;padding:0 26px 17px;background:#fffbed}
.region-views button{border:1px solid #b3bea3;border-radius:100px;background:transparent;padding:7px 13px;color:#344d3f;font-family:inherit;font-size:12px;cursor:pointer}
.region-views button[aria-pressed=true]{background:#344d3f;color:#fffbed;border-color:#344d3f}
.world-tools{padding:10px 16px;font-size:11px;background:#e6e8cd;flex-wrap:wrap}
.world-tools button{font-size:11px;padding:5px 9px;border-color:#90a083}
body #world #stage{height:730px;background:#bdd6ce;isolation:isolate}
#scene{touch-action:pan-y}
#fallback[hidden]{display:none}
.region-fallback{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:30px;background:#e4ead4;color:#344d3f}
.region-fallback p{max-width:440px}
.region-labels,.region-partner-pins{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.region-town,.region-state,.region-island{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;color:#435c4a;text-shadow:0 1px 2px #f7f2d9,0 -1px 2px #f7f2d9;font-size:11px;font-weight:600;line-height:1.2}
.region-town::before{content:'';display:block;position:absolute;left:calc(50% - 1.5px);top:-7px;width:3px;height:3px;background:#6c7d62;border-radius:50%}
.region-state{font:10px ui-monospace,monospace;letter-spacing:.1em;color:#647553;max-width:120px;text-align:center;white-space:normal;line-height:1.4}
.region-island{font-size:10px;font-weight:400;font-style:italic}
.region-partner{position:absolute;width:130px;height:47px;border:2px solid #fff4cd;border-radius:8px;padding:9px;transform:translate(-50%,-115%);box-shadow:0 4px 10px #2c4c4933;pointer-events:auto;cursor:pointer}
.region-partner::after{content:'';position:absolute;left:calc(50% - 5px);bottom:-8px;width:9px;height:9px;background:#183e48;border-right:2px solid #fff4cd;border-bottom:2px solid #fff4cd;transform:rotate(45deg)}
.region-partner img{display:block;width:100%;height:100%;object-fit:contain}
.region-partner:hover{box-shadow:0 5px 18px #274a4966;border-color:#e4bd62}
.bug-pin{position:absolute;transform:translate(-50%,-50%);background:#387da2;border:2px solid #fffbed;color:#8ac1de;width:16px;height:16px;border-radius:50%;padding:0;line-height:10px;font-size:9px;cursor:pointer;pointer-events:auto}
.region-labels [hidden],.region-partner-pins [hidden]{display:none}
.atlas-key{position:absolute;right:19px;bottom:18px;font:10px ui-monospace,monospace;color:#355b55;text-align:right;pointer-events:none;line-height:1.7}
.atlas-key strong{display:block;font-size:24px;font-weight:400}
.atlas-key span{font:italic 14px Georgia,serif}
#crew-detail{position:absolute;left:19px;bottom:18px;width:222px;border:1px solid #7f977f;border-radius:9px;padding:14px 16px;background:#fffbeeef;box-shadow:3px 3px #365a4920;color:#344d3f}
.crew-eyebrow{font:9px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;color:#6a785f}
#crew-detail strong{font-size:20px;font-weight:650;letter-spacing:-.025em;display:block;margin-bottom:4px}
.crew-state{font-size:12px;margin:0 0 5px;display:flex;align-items:center;gap:7px}
.crew-state::before{content:'';width:6px;height:6px;border-radius:50%;background:#327f70}
#crew-detail[data-phase="At work"] .crew-state::before{background:#cf9c3c}
[data-crew-road]{font-size:10px;color:#6a785f}
.crew-actions{display:flex;gap:9px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid #c6ceaf}
.crew-actions button{background:transparent;border:0;padding:3px 0;font-family:inherit;font-size:11px;color:#365c4e;cursor:pointer;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
#north-arrow{display:inline-block}
#next-crew{margin-left:auto}
#landmark-caption{position:absolute;top:20px;left:22px;padding:12px 16px;background:#fffbeeeb;border:1px solid #a0ae90;border-radius:6px;max-width:280px}
#landmark-caption strong,#landmark-caption span{display:block}
#landmark-caption strong{font-size:20px;margin-bottom:3px}
#landmark-caption span{font-size:11px}
#stage[data-view=office] #crew-detail,#stage[data-view=bug] #crew-detail{display:none}
.regional-footnote{display:flex;gap:30px;justify-content:space-between;padding:15px 23px;background:#e6e8cd;border-top:1px solid #b3bea3}
.regional-footnote p{margin:0;font-size:11px;max-width:470px;line-height:1.55;color:#51634c}
.regional-footnote strong{color:#344d3f}
.map-attribution{font-size:10px;background:#e6e8cd;padding:0 23px 12px}
.partner-roster{display:flex;gap:25px;align-items:center;padding:18px 24px;border-top:1px solid #b6bd9d}
.partner-roster a{flex-shrink:0;background:#183e48;border-radius:5px;padding:12px 18px;display:block}
.partner-roster img{width:140px;height:25px;object-fit:contain;display:block}
.partner-roster p{margin:0;font-size:12px;max-width:550px;line-height:1.5}
.places{padding:17px 20px}.places button{width:230px}.places img{height:80px;width:140px}
#mobile-crew-dock:empty{display:none}
@media(max-width:850px){.region-heading{display:block}.region-heading p{margin-top:12px;max-width:500px}body #world #stage{height:610px}.regional-footnote{gap:15px}.region-state{font-size:8px}.region-town{font-size:10px}}
@media(max-width:650px){.region-heading{padding:20px 16px 16px}.region-heading h2{font-size:24px}.region-views{padding:0 16px 14px;gap:6px}.region-views button{font-size:11px;padding:7px 10px}.world-tools{padding:10px 12px;gap:8px}.world-tools>div{gap:4px}body #world #stage{height:560px}.region-town{font-size:9px}.region-state{font-size:8px;max-width:95px}.region-partner{width:94px;height:37px;padding:7px}.region-island{font-size:8px}#crew-detail{left:12px;bottom:12px;width:185px;padding:10px 12px}#crew-detail strong{font-size:17px}.atlas-key{right:12px;bottom:18px;font-size:8px}.atlas-key strong{font-size:20px}.atlas-key span{font-size:11px}.regional-footnote{flex-direction:column;padding:14px 16px;gap:8px}.map-attribution{padding:0 16px 12px}.partner-roster{padding:16px;gap:16px;align-items:start}.partner-roster img{width:105px;height:22px}.partner-roster a{padding:10px}.partner-roster p{font-size:10px}.places{padding:10px 5px}.places button{width:33%;padding:5px}.places img{width:90px;height:65px}.places span{font-size:11px}#landmark-caption{top:12px;left:12px;max-width:245px;padding:10px 12px}#landmark-caption strong{font-size:17px}}
@media(max-width:650px){body #world #stage{height:380px}#mobile-crew-dock #crew-detail{position:static;width:auto;border-width:1px 0 0;border-radius:0;box-shadow:none;padding:14px 17px;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}#mobile-crew-dock .crew-eyebrow{grid-column:1/-1;margin:0 0 3px}#mobile-crew-dock .crew-actions{grid-column:2;grid-row:2/5;border:0;margin:0;display:flex;flex-direction:column;justify-content:center;align-items:end;gap:10px;padding:0}#mobile-crew-dock [data-crew-road]{grid-column:1}#mobile-crew-dock .crew-state{grid-column:1}#mobile-crew-dock #crew-detail strong{grid-column:1}.atlas-key{bottom:12px}.atlas-key span{font-size:10px}#north-arrow{font-size:20px!important}}
