/* A zero-size anchor keeps every pointer tip on its exact map coordinate. */
.zenova-attraction-pin{width:0;height:0;z-index:2;pointer-events:none}
.zenova-attraction-pin[hidden]{display:none!important}
.zenova-attraction-button{box-sizing:border-box;position:absolute;bottom:8px;left:0;display:grid;place-items:center;width:29px;height:29px;padding:5px;border:2px solid #fff;border-radius:50%;background:var(--attraction-color,#47647e);color:#fff;box-shadow:0 2px 7px #102d4b50;cursor:pointer;touch-action:manipulation;transform:translateX(-50%);pointer-events:auto;transition:opacity .15s}
.zenova-attraction-button::after{content:"";position:absolute;left:50%;bottom:-8px;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:8px solid var(--attraction-color,#47647e);transform:translateX(-50%);filter:drop-shadow(0 1px 0 #fff);pointer-events:none}
.zenova-attraction-button>svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.zenova-attraction-name{display:none}
.zenova-attraction-pin.is-named{z-index:3}
.zenova-attraction-pin.is-named .zenova-attraction-button{bottom:13px;width:80px;height:80px;padding:9px 6px;border:2px solid #fff;background:#fffffff7;color:#142a3b;box-shadow:0 3px 12px #102d4b42}
.zenova-attraction-pin.is-named .zenova-attraction-button::after{bottom:-13px;border-left-width:11px;border-right-width:11px;border-top-width:13px;filter:drop-shadow(0 1.5px 0 #fff)}
.zenova-attraction-pin.is-named .zenova-attraction-button>svg{display:none}
.zenova-attraction-pin.is-named .zenova-attraction-name{display:block;font:750 12px/1.16 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:center;overflow-wrap:normal;word-break:normal;hyphens:none}
.zenova-attraction-label{position:absolute;left:calc(100% + 9px);top:50%;transform:translateY(-50%);width:max-content;max-width:min(235px,57vw);padding:8px 10px;border:1px solid #dbe5ed;border-radius:8px;background:#fffffff7;color:#193a55;box-shadow:0 4px 16px #16354d30;text-align:left;font:11px/1.35 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .12s}
.zenova-attraction-label strong{display:block;font-weight:650}
.zenova-attraction-label small{display:block;margin-top:3px;color:#587084;font-size:10px}
.zenova-attraction-pin.label-left .zenova-attraction-label{left:auto;right:calc(100% + 9px)}
.zenova-attraction-pin:is(:hover,:focus-within){z-index:8}
.zenova-attraction-button:is(:hover,:focus-visible) .zenova-attraction-label{opacity:1;visibility:visible}
.zenova-attraction-button:focus-visible{outline:3px solid #e2b65c;outline-offset:3px}
.zenova-attraction-pin.is-distant:not(.is-named) .zenova-attraction-button{width:22px;height:22px;padding:3px;border-width:1.5px}
.zenova-attraction-pin.is-mobile.is-named .zenova-attraction-button{bottom:11px;width:66px;height:66px;padding:7px 4px}
.zenova-attraction-pin.is-mobile.is-named .zenova-attraction-button::after{bottom:-11px;border-left-width:9px;border-right-width:9px;border-top-width:11px}
.zenova-attraction-pin.is-mobile.is-named .zenova-attraction-name{font-size:10px}
.zenova-attraction-pin.is-named.is-compact-name .zenova-attraction-button{bottom:9px;width:var(--attraction-name-width,140px);height:36px;padding:4px 8px;border-radius:18px}
.zenova-attraction-pin.is-named.is-compact-name .zenova-attraction-button::after{bottom:-9px;border-left-width:7px;border-right-width:7px;border-top-width:9px}
.zenova-attraction-pin.is-named.is-compact-name .zenova-attraction-name{font-size:11.5px;line-height:1.1;white-space:normal}
.zenova-attraction-pin.is-mobile.is-named.is-compact-name .zenova-attraction-name{font-size:10.5px}
@media(prefers-reduced-motion:reduce){.zenova-attraction-button,.zenova-attraction-label{transition:none}}
