.acf-map-root{--map-color-primary:var(--color-primary);--map-color-secondary:var(--color-secondary);--map-color-accent:var(--color-accent);--map-color-base:var(--color-base);--map-color-base-light:var(--color-base-light);--map-color-surface:var(--color-white);--map-color-border:var(--color-base-ultra-light);--map-route-wichtige:#2e6c56;--map-route-firmen:#00BF7C;--map-route-weight:4;--map-route-opacity:.82;--map-marker-size:60px;--map-marker-center-size:80px;--map-marker-fallback-font-size:var(--text-m);--map-infowindow-max-width:240;--map-legend-offset:0 0 var(--space-l) var(--space-m)}.acf-map-root{position:relative;width:100%;height:100%;font-family:var(--text-font-family)}.acf-map-wrap{position:relative;height:100%}.acf-map-canvas{width:100%;height:100%;box-shadow:var(--shadow-4);border:1px solid var(--map-color-border);background:var(--map-color-surface);overflow:hidden}.acf-iw{padding:var(--space-s);max-width:240px;font-family:inherit}.acf-iw__logo{width:var(--space-xl);height:40px;object-fit:contain;object-position:left;margin-bottom:var(--space-xs);display:block}.acf-iw__badge{display:inline-block;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.5em 1em;border-radius:100px;margin-bottom:var(--space-xs);color:var(--map-color-surface)}.acf-iw__badge--wichtig{background:#00BF7C}.acf-iw__badge--firma{background:#00BF7C}.acf-iw__badge--center{background:#00BF7C}.acf-iw__title{font-size:var(--text-m);font-weight:700;color:var(--map-color-base);margin-bottom:.25em;line-height:1.3}.acf-iw__addr{font-size:var(--text-xs);color:var(--map-color-base-light);margin:0;line-height:1.5}.acf-iw__dist{display:flex;flex-direction:column;gap:var(--space-2xs);margin-top:0;padding-top:var(--space-xs);border-top:1px solid var(--map-color-border)}.acf-iw__dist-item{display:flex;align-items:center;gap:.5em;font-size:var(--text-xs);color:var(--map-color-base-light)}.acf-iw__dist-item svg{width:16px;height:16px;fill:currentColor;flex-shrink:0}.gm-style .gm-style-iw-c{box-shadow:var(--shadow-3)!important;padding:0!important;overflow:visible!important}.gm-style .gm-style-iw-d{overflow:hidden!important}.gm-style .gm-style-iw-t::after{display:none}.gm-style-iw-chr{position:absolute;right:0}.acf-map-legend{background:rgba(255,255,255,.95);border-radius:var(--radius-m);padding:var(--space-xs) var(--space-s);box-shadow:var(--shadow-2);font-size:var(--text-xs);display:flex;flex-direction:column;gap:var(--space-2xs);pointer-events:none;backdrop-filter:blur(6px)}.acf-map-legend__item{display:flex;align-items:center;gap:var(--space-xs);font-weight:600;color:var(--map-color-base);white-space:nowrap}.acf-map-legend__line{width:20px;height:3px;border-radius:var(--radius-full);flex-shrink:0}.acf-map-legend__line--wichtige{background:#2e6c56}.acf-map-legend__line--firmen{background:#00BF7C}.acf-map-loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.75);z-index:10;transition:opacity .3s ease;backdrop-filter:blur(3px)}.acf-map-loader.is-hidden{opacity:0;pointer-events:none}.acf-map-loader__spinner{width:36px;height:36px;border:3px solid var(--map-color-border);border-top-color:#00BF7C;border-radius:50%;animation:acf-spin .7s linear infinite}@keyframes acf-spin{to{transform:rotate(360deg)}}.acf-marker{width:60px;height:60px;border-radius:50%;background:white;box-shadow:var(--shadow-2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;overflow:hidden;padding:10px;box-sizing:border-box}.acf-marker:hover{transform:scale(1.15);box-shadow:var(--shadow-3)}.acf-marker--wichtig{border:3px solid #2e6c56}.acf-marker--firma{border:3px solid #00BF7C}.acf-marker img{width:100%;height:100%;object-fit:contain;display:block;flex-shrink:0;filter:brightness(0)}.acf-marker--center{width:80px;height:80px;background:#00BF7C;border:3px solid white;box-shadow:var(--shadow-3);padding:0}.acf-marker--center svg{width:var(--space-m);height:var(--space-m);fill:white}.acf-marker--center img{filter:none}@media (max-width:640px){.acf-map-canvas{border-radius:var(--radius-m)}}