.territory{padding:6rem 0;color:white;background:#081f18}
.territory-copy{display:grid;grid-template-columns:1.3fr .7fr;gap:3rem;align-items:end;margin-bottom:2rem}
.territory-copy h2{margin:.5rem 0 0;font:500 clamp(2.2rem,4.5vw,4.7rem)/.98 Georgia,serif;letter-spacing:-.05em}
.territory-copy>p{color:#cddbd1;line-height:1.7}
.map-board{position:relative;overflow:hidden;border:1px solid #ffffff2e;border-radius:1.5rem;background:#173927;box-shadow:0 35px 90px #0005}
.map-board>img{display:block;width:100%;aspect-ratio:2.53/1;object-fit:cover}
.map-board>svg{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 2px 3px #0008)}
.map-board .route{fill:none;stroke:#e1ef8d;stroke-width:4;stroke-dasharray:9 10;animation:flow 18s linear infinite}
.map-board circle{fill:#e1ef8d;stroke:#123d29;stroke-width:4}
.pin{position:absolute;padding:.45rem .65rem;border:1px solid #fff5;border-radius:99px;background:#08261ddd;box-shadow:0 6px 20px #0005;font-size:.72rem;font-weight:900}
.pin-farm{left:8%;bottom:13%}.pin-hub{left:46%;bottom:31%}.pin-city{right:7%;top:32%}
.map-legend{position:absolute;left:1rem;top:1rem;display:grid;gap:.3rem;max-width:260px;padding:.8rem;border:1px solid #fff3;border-radius:.8rem;background:#071f18dd;backdrop-filter:blur(8px)}
.map-legend span,.map-legend small{font-size:.7rem;color:#dbe7de}
.map-legend i{display:inline-block;width:24px;margin-right:.4rem;border-top:2px dashed #e1ef8d}
.territory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.territory-grid article{padding:1.2rem;border:1px solid #ffffff1f;border-radius:1rem;background:#ffffff0a}
.territory-grid b{color:#d8f095}.territory-grid h3{margin:.5rem 0;font:600 1.35rem Georgia}.territory-grid p{margin:0;color:#bfd0c4;line-height:1.5}
@keyframes flow{to{stroke-dashoffset:-190}}
@media(max-width:900px){.territory-copy{grid-template-columns:1fr}.territory-grid{grid-template-columns:1fr}.map-board .pin{display:none}}
@media(max-width:600px){.map-board>img{aspect-ratio:1.25/1}.map-legend{max-width:210px}.map-legend small{display:none}}
