/* Acosta Landstone - interactive service area map */
.alm-wrap{--alm-forest:#17311d;--alm-green:#8ebc61;--alm-ink:#263126;--alm-muted:#6f7a6c;--alm-line:rgba(23,49,29,.12);width:min(1320px,calc(100% - clamp(2rem,5vw,6rem)));margin:clamp(40px,5vw,64px) auto 0;color:var(--alm-ink)}
.alm-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:24px 48px;align-items:end;margin-bottom:22px}
.alm-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#6f8f77;margin-bottom:8px}
.alm-title{margin:0;font-size:clamp(30px,3.6vw,48px);line-height:.98;letter-spacing:-.045em;color:var(--alm-forest)}
.alm-title span{color:rgba(23,49,29,.38)}
.alm-lead{margin:0;font-size:15px;line-height:1.6;color:var(--alm-muted)}
.alm-panel-top .alm-kicker{margin-bottom:4px}
.alm-more{margin-top:6px}
.alm-note{margin:0;font-size:13px;color:var(--alm-muted)}
.alm-city{margin:2px 0 4px;font-size:30px;line-height:1;letter-spacing:-.04em;color:var(--alm-forest)}
.alm-chips{display:flex;flex-wrap:wrap;gap:8px}
.alm-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid var(--alm-line);background:#fff;color:var(--alm-forest);font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.alm-chip b{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--alm-green);color:var(--alm-forest);font-size:11px}
.alm-chip:hover,.alm-chip:focus-visible{background:var(--alm-forest);color:#fbfaf4;border-color:var(--alm-forest);outline:none}
.alm-chip-plain{font-weight:600;color:var(--alm-muted)}
.alm-back{align-self:flex-start;margin-bottom:10px;padding:0;border:0;background:none;font:inherit;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--alm-forest);cursor:pointer}
.alm-back:hover{text-decoration:underline;text-underline-offset:4px}
.alm-cards{display:grid;gap:10px}
.alm-card{position:relative;display:grid;grid-template-columns:84px minmax(0,1fr) 20px;gap:12px;align-items:center;padding:8px;border-radius:16px;border:1px solid var(--alm-line);background:#fff;color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.alm-card:hover,.alm-card:focus-visible{transform:translateY(-2px);border-color:rgba(23,49,29,.3);box-shadow:0 12px 26px rgba(23,49,29,.10);outline:none}
.alm-thumb{display:block;width:84px;height:64px;border-radius:11px;overflow:hidden;background:#dfe4d8}
.alm-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.alm-card-body{display:grid;gap:3px;min-width:0}
.alm-tag{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#6f8f77}
.alm-card strong{font-size:14px;line-height:1.3;color:var(--alm-forest)}
.alm-arrow{font-size:14px;color:var(--alm-forest);opacity:.55}
.alm-empty p{margin:0;padding:16px;border-radius:16px;background:#fff;border:1px dashed rgba(23,49,29,.2);font-size:14px;line-height:1.55;color:var(--alm-muted)}
.alm-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:6px}
.alm-link{display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;border:1px solid var(--alm-forest);color:var(--alm-forest);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.alm-link-solid{background:var(--alm-green);border-color:var(--alm-green)}
.alm-link:hover{background:var(--alm-forest);border-color:var(--alm-forest);color:#fbfaf4}
.alm-shell{display:grid;grid-template-columns:minmax(0,600px) minmax(0,1fr);border-radius:28px;overflow:hidden;background:#fbfaf4;border:1px solid var(--alm-line);box-shadow:0 24px 60px rgba(23,49,29,.10)}
.alm-map{position:relative;background:#1c3a26}
.alm-legend{position:absolute;left:16px;top:16px;display:flex;flex-wrap:wrap;gap:6px 14px;padding:9px 14px;border-radius:999px;background:rgba(14,30,19,.82);color:#fbfaf4;font-size:12px;font-weight:700}
.alm-legend span{display:inline-flex;align-items:center;gap:7px}
.alm-legend i{display:inline-block;width:11px;height:11px;border-radius:50%;border:2px solid #17311d}
.alm-lg-proj{background:#8ebc61;box-shadow:0 0 0 1px #8ebc61}.alm-lg-city{background:#fbfaf4}.alm-lg-hq{background:#e2b45f;border-radius:3px!important}
.alm-panel{position:relative;border-left:1px solid var(--alm-line);background:#fbfaf4;min-height:320px}
.alm-panel-in{position:absolute;inset:0;display:flex;flex-direction:column;gap:14px;padding:26px;overflow-y:auto}
.alm-cards{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.alm-svg{display:block;width:100%;height:auto}
.alm-bg{fill:#1c3a26}
.alm-dot-pat{fill:rgba(251,250,244,.07)}
.alm-water{fill:#16303d}
.alm-shore{fill:none;stroke:rgba(142,188,97,.45);stroke-width:2}
.alm-cell{stroke:rgba(251,250,244,.22);stroke-width:1.2;cursor:pointer;transition:fill .25s ease}
.alm-c-sno{fill:rgba(142,188,97,.16)}.alm-c-king{fill:rgba(142,188,97,.26)}.alm-c-pie{fill:rgba(142,188,97,.10)}
.alm-cell:hover{fill:rgba(142,188,97,.42)}
.alm-cell.is-active{fill:rgba(142,188,97,.62)}
.alm-region{fill:none;stroke:#8ebc61;stroke-width:2;stroke-dasharray:7 7;pointer-events:none}
.alm-wlabel{fill:rgba(251,250,244,.30);font:800 18px Manrope,system-ui,sans-serif;letter-spacing:.45em;text-anchor:middle;pointer-events:none}
.alm-wlabel-sm{font-size:12px;letter-spacing:.3em}
.alm-pin{cursor:pointer;outline:none}
.alm-pt{fill:#fbfaf4;stroke:#17311d;stroke-width:3}
.alm-pt.has-projects{fill:#8ebc61;stroke:#17311d;stroke-width:3}
.alm-ring{fill:none;stroke:#8ebc61;stroke-width:2;opacity:0;transition:opacity .2s ease}
.alm-pin:hover .alm-ring,.alm-pin:focus-visible .alm-ring,.alm-pin.is-active .alm-ring{opacity:1}
.alm-count{fill:#17311d;font:900 14px Manrope,system-ui,sans-serif;text-anchor:middle;pointer-events:none}
.alm-label{fill:#fbfaf4;font:700 18px Manrope,system-ui,sans-serif;paint-order:stroke;stroke:#163020;stroke-width:4px;stroke-linejoin:round;pointer-events:none}
.alm-pin.is-active .alm-label{fill:#c9e6a8}
.alm-hq rect{fill:#e2b45f;stroke:#17311d;stroke-width:3}
.alm-hq text{fill:#17311d;font:900 11px Manrope,system-ui,sans-serif;text-anchor:middle}
.alm-compass circle{fill:none;stroke:rgba(251,250,244,.3);stroke-width:1.5}
.alm-compass path{fill:#e2b45f}
.alm-compass text{fill:rgba(251,250,244,.6);font:800 12px Manrope,system-ui,sans-serif;text-anchor:middle}

@media (max-width:1000px){
  .alm-head{grid-template-columns:1fr}
  .alm-shell{grid-template-columns:1fr}
  .alm-map{max-width:640px;width:100%;margin:0 auto}
  .alm-panel{border-left:0;border-top:1px solid var(--alm-line);min-height:0}
  .alm-panel-in{position:static}
}
@media (max-width:560px){
  .alm-wrap{width:calc(100% - 32px)}
  .alm-shell{border-radius:22px}
  .alm-panel-in{padding:18px}
  .alm-city{font-size:26px}
  .alm-legend{left:10px;right:auto;top:10px;border-radius:14px;font-size:10px;padding:7px 10px;max-width:60%}
  .alm-label{font-size:25px;stroke-width:5px}
  .alm-pin:not(.has-projects) .alm-label{display:none}
  .alm-wlabel{display:none}
}
