/* A page from the Company's travelling atlas. */
.quest-trail{position:relative;isolation:isolate;padding:6px 0 0;--quest-width:min(58%,460px);--quest-gap:160px}
.quest-trail-lines{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible}
.quest-trail-path{fill:none;stroke:#b6a171;stroke-width:1.8;stroke-dasharray:4 8;stroke-linecap:round;opacity:.65}
.quest-trail-dot{fill:var(--bg);stroke:#c6ad77;stroke-width:1.5}
.quest-trail .quest-chain{position:relative;margin:0;padding:0;border:0}
.quest-trail .quest-chain+.quest-chain{margin-top:var(--quest-gap)}
.quest-trail .quest-chain+.quest-chain:before{content:'';position:absolute;top:calc(var(--quest-gap)/-2);left:8%;right:8%;height:1px;background:linear-gradient(90deg,transparent,#9c987144 20%,#9c987144 80%,transparent)}
.quest-trail .quest-chain-heading{position:relative;z-index:1;margin-bottom:calc(var(--quest-gap)/2);justify-content:center;text-align:center;gap:5px;flex-direction:column;align-items:center}
.quest-trail .quest-chain-heading h4,.quest-trail .quest-chain-heading>span{background:var(--bg);padding:0 12px}
.quest-trail .quest-chain-heading h4{font-size:21px}
.quest-trail .quest-chain-heading>span{font-size:10px}
.quest-trail .quest-list{display:flex;flex-direction:column;gap:var(--quest-gap)}
.quest-trail .quest-row{width:var(--quest-width);margin-left:calc((100% - var(--quest-width))*var(--trail-offset,.5));border-radius:9px;box-shadow:0 9px 26px #0003;overflow:hidden}
.quest-trail .quest-row .quest-open{min-height:206px;padding:58px 23px 22px;align-items:flex-end}
.quest-trail .quest-row .quest-open>.quest-card-copy{padding:0;max-width:100%;padding-right:17px}
.quest-trail .quest-row .quest-open strong{font-size:27px;line-height:1.06;font-weight:600}
.quest-trail .quest-row .quest-open small{font-size:11px;line-height:1.45;max-width:90%;margin-top:9px;color:#e2e4d5}
.quest-trail .quest-row:before{background:linear-gradient(0deg,#07120cf5 0%,#07120cb3 34%,#07120c12 82%),linear-gradient(90deg,#07120c3d,transparent)}
.quest-trail .quest-row .quest-check{left:13px;top:13px;transform:none;width:35px;height:35px;min-width:35px}
.quest-trail .quest-row .quest-open>.level-tag{top:16px;right:16px;font-size:9px;padding:5px 8px}
.quest-trail .quest-row .quest-open>svg{right:19px;bottom:24px}
.quest-trail .quest-step{font-size:9px;letter-spacing:.1em;margin-bottom:6px;color:#f0d5a0}
.company-gathering{position:relative;text-align:center;padding-top:108px;margin-top:0}
.quest-trail .quest-chain+.company-gathering{margin-top:calc(var(--quest-gap)/2)}
.gathering-poi{position:relative;display:flex;align-items:center;justify-content:center;width:49px;height:49px;margin:0 auto 14px;border:1px solid #b69e675e;border-radius:50%;background:var(--bg);box-shadow:0 0 0 6px var(--bg);color:#dac28c}
.gathering-poi svg{width:25px;height:25px}
.company-gathering h3{font:500 38px/1.1 var(--serif);margin:0 0 9px;color:#eee3c9}
.gathering-place{margin:0;font-size:13px;color:#c0cbb9;line-height:1.6}
.gathering-note{font-size:12px;line-height:1.65;color:var(--muted);max-width:490px;margin:10px auto 0}
.gathering-spread{display:grid;grid-template-columns:1.05fr 1fr;gap:0;margin:28px 0 0;position:relative;align-items:stretch;border:1px solid #a58d5a60;border-radius:8px;overflow:hidden;background:#201e15;box-shadow:0 20px 46px #0003;text-align:left}
.gathering-map-panel{display:flex;flex-direction:column;justify-content:center;background:#c2ab7b;color:#392c1b;min-width:0;position:relative}
.gathering-map{position:relative;width:100%;margin:0;aspect-ratio:1002/668;isolation:isolate;overflow:hidden}
.gathering-map>img{display:block;width:100%;height:100%;object-fit:contain}
.gathering-map-pin{position:absolute;left:calc(var(--pin-x)*1%);top:calc(var(--pin-y)*1%);width:27px;height:35px;transform:translate(-50%,-100%);filter:drop-shadow(0 2px 3px #0009);display:flex;justify-content:center;align-items:center;color:#fff2cb}
.gathering-map-pin>svg{width:27px;height:35px;fill:#16382c;stroke:#fff0bd;stroke-width:1.5}
.gathering-map-caption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:11px 15px;border-top:1px solid #6b512f44;font-size:10px;line-height:1.45}
.gathering-map-caption .coordinate{padding:0;background:none;color:#49371b;font-size:10px;gap:4px}
.gathering-map-caption .coordinate svg{width:12px;height:12px}
.gathering-scene{position:relative;margin:0;min-height:0;overflow:hidden;background:#17231b;display:flex;flex-direction:column;justify-content:center}
.gathering-scene>img{width:100%;height:auto;display:block;object-fit:contain}
.gathering-scene figcaption{padding:13px 18px;font:500 21px/1.1 var(--serif);color:#f1e7d1;text-align:center}
.gathering-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-top:20px}
.gathering-actions .text-link{font-size:11px}
.gathering-actions svg{width:14px;height:14px}
.gathering-map-source{margin-top:12px;font-size:9px;color:var(--muted)}
.gathering-map-source a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.company-gathering.reveal-ready .gathering-spread{opacity:0;transform:translateY(26px);transition:opacity 1s ease,transform 1s cubic-bezier(.2,.65,.2,1)}
.company-gathering.is-revealed .gathering-spread{opacity:1;transform:translateY(0)}
.gathering-map-dialog{max-width:none}
.gathering-map-dialog .gathering-map{margin:22px 0}
.gathering-map-dialog h2{font-size:35px}
.gathering-map-dialog .gathering-map-pin{width:34px;height:44px}
.gathering-map-dialog .gathering-map-pin>svg{width:34px;height:44px}
.gathering-map-dialog .gathering-map-caption{background:#c2ab7b;color:#392c1b}
.gathering-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0 0}
.gathering-choices button{font-size:11px;padding:9px 14px;border:1px solid var(--line);border-radius:20px;background:#17211b;color:var(--subtle)}
.gathering-choices button[aria-pressed=true]{border-color:#c4ac73;color:#e8d7b1;background:#c4ac7310}
.gathering-choices button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.gathering-spread.map-only{grid-template-columns:1fr;max-width:650px;margin-inline:auto}
.gathering-scene{aspect-ratio:auto!important}
.journal-tabs{scroll-margin-top:100px}
@media(min-width:801px) and (max-width:1100px){.quest-trail{--quest-width:66%}.gathering-spread{grid-template-columns:1fr}.quest-trail .quest-row .quest-open strong{font-size:25px}}
@media(max-width:800px){.quest-trail{--quest-width:63%;--quest-gap:136px}.quest-trail .quest-row .quest-open{min-height:205px}.company-gathering h3{font-size:34px}}
@media(max-width:560px){.quest-trail{--quest-width:90%;--quest-gap:112px}.quest-trail .quest-row .quest-open{min-height:202px;padding:58px 17px 21px}.quest-trail .quest-row .quest-open strong{font-size:25px}.quest-trail .quest-row .quest-open small{font-size:10px;max-width:94%}.quest-trail .quest-row .quest-check{left:11px;top:11px}.quest-trail .quest-row .quest-open>.level-tag{top:14px;right:12px}.quest-trail .quest-row .quest-open>svg{right:13px;bottom:23px}.quest-trail .quest-chain-heading h4{font-size:20px}.company-gathering{padding-top:86px}.gathering-spread{grid-template-columns:1fr;margin-top:22px}.gathering-scene{aspect-ratio:16/9;min-height:0}.gathering-place{font-size:12px}.gathering-actions{gap:15px}.gathering-map-source{line-height:1.6}}
@media(prefers-reduced-motion:reduce){.company-gathering.reveal-ready .gathering-spread{opacity:1;transform:none;transition:none}}
@media print{.quest-trail{--quest-width:100%;--quest-gap:8px}.quest-trail .quest-chain+.quest-chain,.quest-trail .quest-chain+.company-gathering{margin-top:0}.quest-trail-lines,.gathering-poi,.gathering-scene,.gathering-actions{display:none!important}.quest-trail .quest-list{gap:8px}.quest-trail .quest-row{margin:0;box-shadow:none}.quest-trail .quest-row .quest-open{min-height:0;padding:12px}.quest-trail .quest-row .quest-open strong{font-size:18px}.quest-trail .quest-chain{padding:12px 0}.company-gathering{padding-top:20px;break-inside:avoid}.company-gathering.reveal-ready .gathering-spread{opacity:1;transform:none}.gathering-spread{display:block;box-shadow:none;max-width:550px;margin:15px auto}.company-gathering h3,.gathering-place,.gathering-note{color:#222}.quest-trail .quest-chain-heading h4,.quest-trail .quest-chain-heading>span{background:white}}
