.geo-page{padding:74px 5vw 60px;max-width:1600px;margin:auto}.geo-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:end;margin-bottom:48px}.geo-heading h1{font-size:clamp(46px,5.8vw,88px);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin:20px 0 24px}.geo-heading p:not(.eyebrow){max-width:520px;line-height:1.7;color:#58625b}.geo-totals{display:flex;border-top:1px solid #31493d38;padding-top:30px;gap:36px;justify-content:space-between}.geo-totals div{display:grid;gap:10px}.geo-totals strong{font-size:clamp(36px,4vw,64px);font-weight:400;line-height:1}.geo-totals span{color:#58625b;font-size:13px}.geo-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;border:1px solid #d6ddd5;border-radius:3px;overflow:hidden;background:#eef2ee}.geo-map-panel{display:flex;flex-direction:column;min-width:0}.geo-map-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid #31493d18;font-size:12px}.geo-map-top>span{letter-spacing:.03em;color:#52665a}.geo-map-top button{font:inherit;background:transparent;border:1px solid #b5c3b7;border-radius:20px;padding:8px 12px;cursor:pointer;margin-left:5px;color:#31493d}.geo-map-top button:hover{background:#dbe4db}.geo-canvas{position:relative;flex:1;min-height:500px;overflow:hidden;background:radial-gradient(ellipse at 35% 40%,#f5f5ee,#e5ede8)}#geo-map{width:100%;height:100%;position:absolute;inset:0;cursor:grab;touch-action:pan-y}.geo-land path{fill:#d0dbd0;stroke:#f3f4ec;stroke-width:.65;vector-effect:non-scaling-stroke}.geo-marker{cursor:pointer;outline:none}.geo-marker circle{fill:#355d6b;stroke:#f3f0e7;stroke-width:2;vector-effect:non-scaling-stroke}.geo-marker .geo-halo{fill:#355d6b20;stroke:none}.geo-marker text{fill:#fff;font-family:Inter,sans-serif;font-weight:600;pointer-events:none}.geo-marker.selected circle:not(.geo-halo),.geo-marker:hover circle:not(.geo-halo),.geo-marker:focus circle:not(.geo-halo){fill:#925f49}.geo-marker:focus .geo-halo{stroke:#925f49;stroke-width:2}.geo-zoom{position:absolute;right:20px;bottom:20px;display:grid;gap:5px}.geo-zoom button{background:#f9faf5;border:1px solid #becabc;color:#31493d;border-radius:50%;width:42px;height:42px;font-size:24px;cursor:pointer;box-shadow:0 3px 12px #20332a0b}.geo-loading{position:absolute;left:20px;top:15px;font-size:12px;max-width:70%}.geo-map-bottom{font-size:10px;color:#586c5d;padding:14px 20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.geo-map-bottom i{display:inline-block;width:6px;height:6px;background:#355d6b;border-radius:50%;margin-right:5px}.geo-map-bottom a{text-underline-offset:3px}.geo-sidebar{background:#fafaf5;border-left:1px solid #d6ddd5;display:flex;flex-direction:column;max-height:760px}.geo-sidebar-head{padding:26px 24px 18px}.geo-sidebar-head label{font-size:11px;display:block;color:#57665b;margin:15px 0 6px}.geo-sidebar-head select{width:100%;font:inherit;font-size:13px;background:transparent;color:#31493d;border:1px solid #d0d8cc;border-radius:3px;padding:10px}.geo-city-list{overflow:auto;max-height:340px;min-height:100px}.geo-city{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;gap:12px;border:0;border-top:1px solid #31493d12;background:transparent;color:#31493d;padding:15px 24px;cursor:pointer}.geo-city:hover,.geo-city.active{background:#e6ede3}.geo-city strong{font-family:'DM Sans',sans-serif;font-weight:500;font-size:15px}.geo-city small{display:block;font-size:10px;color:#687565;margin-top:5px}.geo-city>span:last-child{font-size:13px;white-space:nowrap}.geo-city>span:last-child>span{margin-left:12px;color:#925f49}.geo-selection{padding:25px 24px;border-top:1px solid #d3dbce;max-height:300px;overflow:auto}.geo-selection h2{font-size:26px;font-weight:400;margin:13px 0}.geo-selection p{font-size:12px;line-height:1.7}.geo-selection ul{padding:0;list-style:none;margin:20px 0 0}.geo-selection li a{display:flex;gap:12px;justify-content:space-between;font-size:12px;line-height:1.5;text-decoration:none;border-top:1px solid #d7dfd1;padding:13px 0}.geo-selection li a:hover{text-decoration:underline}.geo-prompt,.geo-empty{font-size:12px;color:#61715e;padding:22px;line-height:1.7}.geo-notes{display:flex;justify-content:space-between;gap:45px;margin-top:22px}.geo-notes p{font-size:11px;color:#66715f;line-height:1.8;max-width:550px}.geo-notes strong{font-weight:500}.geo-teaser{padding:70px 5vw;display:grid;grid-template-columns:1fr 1fr;gap:6vw;background:#e8eee6;border-top:1px solid #cedacb;border-bottom:1px solid #cedacb}.geo-teaser h2{font-size:clamp(32px,4vw,60px);line-height:1.08;font-weight:400;letter-spacing:-.04em;margin:22px 0}.geo-teaser p{font-size:14px;color:#556651}.geo-teaser-data{display:grid;grid-template-columns:1fr 1fr;align-content:center;gap:30px}.geo-teaser-data strong{font-size:60px;font-weight:400;display:block}.geo-teaser-data span{font-size:13px}.geo-teaser-data a{grid-column:1/-1;justify-self:start;margin-top:10px}.geo-page button:focus-visible,.geo-page select:focus-visible,.geo-page a:focus-visible{outline:2px solid #925f49;outline-offset:3px}
@media(max-width:1000px){.geo-heading{gap:30px}.geo-workspace{grid-template-columns:minmax(0,1fr) 280px}.geo-canvas{min-height:460px}.geo-totals{gap:18px}.geo-map-top{flex-wrap:wrap}.geo-notes{gap:20px}}
@media(max-width:720px){.geo-page{padding:38px 5vw}.geo-heading{grid-template-columns:1fr;gap:24px;margin-bottom:28px}.geo-heading h1{margin:16px 0}.geo-totals{padding-top:22px;padding-bottom:8px;justify-content:space-around}.geo-totals strong{font-size:42px}.geo-workspace{grid-template-columns:1fr}.geo-canvas{min-height:360px}.geo-sidebar{border-left:0;border-top:1px solid #d6ddd5;max-height:none}.geo-sidebar-head{padding:20px}.geo-city-list{max-height:240px}.geo-selection{max-height:none}.geo-notes{display:block}.geo-map-top{padding:14px;font-size:11px}.geo-map-top button{padding:8px 10px}.geo-teaser{grid-template-columns:1fr;padding:44px 5vw;gap:25px}.geo-teaser-data strong{font-size:46px}}
@media(prefers-reduced-motion:reduce){.geo-page *{animation:none!important;transition:none!important}}
