/* Original schematic map, shared by the homepage and contact page. */
.service-area-section{background:#f5f8fa;border-top:1px solid #e5ebef}
.area-heading>p{max-width:430px}
.area-explorer{display:block;max-width:900px;margin-inline:auto;border:1px solid #d3dfe6;border-radius:16px;overflow:hidden;box-shadow:0 20px 50px #183b5510;text-align:left}
.area-map{min-width:0;overflow:hidden;background:#eef3f2;position:relative;display:flex;flex-direction:column}
.area-map-top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:23px 27px 0}
.area-map-top>span:first-child{background:#ffffffdc;border:1px solid #d5e1e4;box-shadow:0 3px 12px #173d4f05;padding:8px 11px;border-radius:5px;display:inline-flex;align-items:center;gap:8px;font-size:8px;letter-spacing:.09em;color:#31556b;font-weight:500}
.area-live-dot{width:5px;height:5px;background:#1467a7;border-radius:50%;box-shadow:0 0 0 3px #1467a712}
.area-north{display:flex;flex-direction:column;align-items:center;font-size:9px;font-weight:500;color:#577183;gap:3px;line-height:1}
.area-north svg{width:15px;height:19px;fill:#577183}
.area-canvas{position:relative;flex:none;width:calc(100% - 36px);max-width:590px;aspect-ratio:300 / 295;min-height:0;margin:auto}
.area-art{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.area-road-label rect{fill:#f9fcfb;stroke:#d1dde1;stroke-width:1}
.area-road-label text{font-family:Rubik,Arial,sans-serif;font-size:5px;fill:#6b7c85}
.area-terrain-label{font-family:Rubik,Arial,sans-serif;font-size:5px;fill:#829a8b;letter-spacing:1.6px}
.area-pin{position:absolute;transform:translate(-50%,-50%);width:44px;height:44px;border:0;background:none;padding:0;border-radius:50%;display:grid;place-items:center;z-index:2}
.area-pin-dot{width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid #547e97;box-shadow:0 2px 7px #12344c1c;transition:box-shadow .2s,background .2s,border-color .2s,transform .2s}
.area-pin-name{position:absolute;top:39px;left:50%;transform:translateX(-50%);font-size:13px;font-weight:500;line-height:1.4;color:#3b5665;white-space:nowrap;padding:0 3px;text-shadow:0 1px 3px #eef3f2,0 -1px 3px #eef3f2,1px 0 3px #eef3f2,-1px 0 3px #eef3f2;pointer-events:none}
.area-pin:hover .area-pin-dot{box-shadow:0 0 0 7px #1467a718;border-color:#1467a7}
.area-pin[aria-pressed=true]{z-index:3}
.area-pin[aria-pressed=true] .area-pin-dot{background:#1467a7;border:3px solid #fff;transform:scale(1.25);box-shadow:0 0 0 6px #1467a724,0 0 0 14px #1467a70a,0 2px 6px #12344c22}
.area-pin[aria-pressed=true] .area-pin-name{color:#104e7e;font-weight:600}
.area-pin-boulder{left:44%;top:54.24%}.area-pin-longmont{left:54%;top:42.37%}.area-pin-loveland{left:54%;top:25.08%}.area-pin-broomfield{left:55%;top:62.71%}.area-pin-denver{left:61.33%;top:77.29%}.area-pin-lakewood{left:52.67%;top:80.68%}
.area-pin-loveland .area-pin-name,.area-pin-longmont .area-pin-name,.area-pin-broomfield .area-pin-name,.area-pin-denver .area-pin-name{left:39px;top:13px;transform:none}
.area-pin-lakewood .area-pin-name{left:auto;right:39px;top:13px;transform:none}
.area-pin-boulder .area-pin-name{left:auto;right:40px;top:7px;transform:none}
.area-pin-boulder .area-pin-home{left:auto;right:41px;top:30px;transform:none}
.area-context{position:absolute;color:#75858d;font-size:10px;white-space:nowrap;line-height:1.4;pointer-events:none}
.area-context:before{content:'';display:inline-block;width:4px;height:4px;border:1px solid #9ba9ae;border-radius:50%;vertical-align:middle;margin-right:5px}
.area-context-fort-collins{left:55%;top:7%}.area-context-greeley{left:78%;top:21%}.area-context-estes-park{left:14%;top:24%}.area-context-parker{left:75%;top:94%}
.area-pin-boulder .area-pin-dot{width:17px;height:17px;border-color:#1467a7}
.area-pin-boulder .area-pin-name{font-size:17px;color:#104e7e}
.area-pin-home{position:absolute;top:65px;left:50%;transform:translateX(-50%);white-space:nowrap;color:#547b92;letter-spacing:.13em;font-size:7px;pointer-events:none}
.area-map-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:22px 27px;font-size:9px;color:#547183}
.area-map-bottom>span:first-child{display:flex;align-items:center;gap:9px}
.area-map-bottom i{width:12px;height:12px;border:1px dashed #6a9fbe;background:#1467a712;border-radius:50%;flex-shrink:0}
.area-map-bottom>span:last-child{letter-spacing:.2em;font-size:8px}
@media(max-width:1100px){.area-canvas{width:calc(100% - 24px)}.area-pin-name{font-size:12px}.area-map-top{padding-inline:18px}.area-map-bottom{padding-inline:18px}}
@media(max-width:900px){.area-heading>p{margin-inline:auto}.area-map-top{padding:22px 25px 0}.area-map-bottom{padding:20px 25px}.area-pin-name{font-size:13px}}
@media(max-width:600px){.area-explorer{border-radius:12px}.area-map-top{padding:18px 15px 0}.area-map-top>span:first-child{font-size:7px;letter-spacing:.04em;padding:7px 8px}.area-canvas{width:calc(100% - 12px)}.area-map-bottom{padding:20px 15px;font-size:8px;justify-content:center}.area-map-bottom>span:last-child{display:none}.area-pin-name{font-size:10px}.area-pin-boulder .area-pin-name{font-size:13px;top:9px;right:34px}.area-pin-boulder .area-pin-home{top:28px;right:35px;font-size:6px}.area-pin-dot{width:11px;height:11px;border-width:2px}.area-context{font-size:8px}.area-context-estes-park{left:11%}.area-pin-lakewood .area-pin-name{right:33px}.area-pin-loveland .area-pin-name,.area-pin-longmont .area-pin-name,.area-pin-broomfield .area-pin-name,.area-pin-denver .area-pin-name{left:33px}}
@media(prefers-reduced-motion:reduce){.area-pin-dot{transition:none}}
