@font-face{font-family:'JWJ Oswald';src:url('oswald-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
.jwj-locator{--jwj-blue:#0f4983;--jwj-dark:#002e40;--jwj-cyan:#00bce4;--jwj-body:'Proxima Nova',proxima-nova,Arial,sans-serif;--jwj-heading:'Oswald','JWJ Oswald','Arial Narrow',sans-serif;width:100%;font-family:var(--jwj-body);font-size:14px;line-height:1.4;color:var(--jwj-dark);container-type:inline-size}
.jwj-locator *{box-sizing:border-box}
.jwj-locator [hidden]{display:none!important}
.jwj-locator .jwj-locator__layout{display:grid;grid-template-columns:352px minmax(0,1fr);gap:24px;height:var(--jwj-height,600px)}
.jwj-locator .jwj-locator__list{overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--jwj-cyan) #d9e6f2;scrollbar-width:thin;padding-right:10px;display:flex;flex-direction:column;gap:12px;background:#e6e6e6}
.jwj-locator .jwj-locator__card{background:#0b3d6e;border:1px solid #3a6895;margin:0;flex-shrink:0;color:white;transition:background-color .15s,border-color .15s}
.jwj-locator .jwj-locator__select{display:flex;flex-direction:column;gap:10px;text-align:left;width:100%;margin:0;padding:20px 22px;min-height:131px;color:inherit;background:transparent;border:0;border-radius:0;box-shadow:none;cursor:pointer;font-family:var(--jwj-body);font-size:14px;line-height:1.4;letter-spacing:normal;text-transform:none;appearance:none}
.jwj-locator .jwj-locator__meta{display:flex;justify-content:space-between;gap:12px;width:100%;min-height:20px;align-items:center;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--jwj-cyan)}
.jwj-locator .jwj-locator__meta>span:last-child{color:#bfd3e6;letter-spacing:0;font-size:12px}
.jwj-locator .jwj-locator__name{font:500 23px/1.18 var(--jwj-heading);display:block;width:100%;overflow-wrap:anywhere;color:inherit}
.jwj-locator .jwj-locator__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;width:100%;min-height:24px;color:#bfd3e6;font-size:14px}
.jwj-locator .jwj-locator__action{color:white;font-weight:700}
.jwj-locator .jwj-locator__card[data-active=true]{background:#fff;border-color:#fff;color:var(--jwj-dark)}
.jwj-locator .jwj-locator__card[data-active=true] .jwj-locator__meta,.jwj-locator .jwj-locator__card[data-active=true] .jwj-locator__meta>span:last-child,.jwj-locator .jwj-locator__card[data-active=true] .jwj-locator__action{color:var(--jwj-blue)}
.jwj-locator .jwj-locator__card[data-active=true] .jwj-locator__bottom{color:#476878}
.jwj-locator button:focus-visible,.jwj-locator a:focus-visible,.jwj-locator [tabindex]:focus-visible{outline:3px solid #0f4983;outline-offset:3px}
.jwj-locator .jwj-locator__select:focus-visible{outline:3px solid #ffff5f;outline-offset:-4px}
.jwj-locator .jwj-locator__card:hover{border-color:var(--jwj-cyan)}
.jwj-locator .jwj-locator__main{position:relative;min-width:0;overflow:hidden;background:#eaf2f5;height:100%}
.jwj-locator .jwj-locator__map{position:absolute;inset:0}
.jwj-locator .jwj-locator__fit{position:absolute;top:22px;left:22px;display:flex;gap:9px;align-items:center;min-height:40px;padding:10px 13px;background:#fff;color:var(--jwj-dark);border:0;border-radius:0;font:700 12px/1.4 var(--jwj-body);cursor:pointer;box-shadow:0 1px 5px #002e4010}
.jwj-locator .jwj-locator__fit>span{color:#007f9a;font-size:15px}
.jwj-locator .jwj-locator__fit:disabled{cursor:default;opacity:.7}
.jwj-locator .jwj-locator__detail{position:absolute;bottom:28px;left:22px;width:min(288px,calc(100% - 44px));max-height:45%;overflow:auto;padding:17px 18px;background:white;border:1px solid var(--jwj-blue);color:var(--jwj-dark);box-shadow:0 2px 12px #002e4008}
.jwj-locator .jwj-locator__detail h3{margin:10px 0 8px;padding:0;font:500 23px/1.2 var(--jwj-heading);color:var(--jwj-dark);overflow-wrap:anywhere}
.jwj-locator .jwj-locator__detail p{margin:0 0 8px;padding:0;color:#476878;font:400 13px/1.4 var(--jwj-body)}
.jwj-locator .jwj-locator__detail .jwj-locator__contact{white-space:pre-line;overflow-wrap:anywhere}
.jwj-locator .jwj-locator__detail .jwj-locator__meta{font-size:10px;color:var(--jwj-blue)}
.jwj-locator .jwj-locator__detail .jwj-locator__meta>span:last-child{color:#476878;font-size:10px;font-weight:400}
.jwj-locator .jwj-locator__detail a{display:inline-block;padding:8px 0 4px;min-height:32px;border-bottom:2px solid var(--jwj-cyan);color:var(--jwj-dark);text-decoration:none;text-transform:uppercase;font:700 12px/1.4 var(--jwj-body)}
.jwj-locator .jwj-locator__status{position:absolute;top:78px;left:22px;right:60px;max-width:380px;margin:0;padding:12px 14px;background:#fff;color:#002e40;font:400 14px/1.5 var(--jwj-body);border-left:3px solid var(--jwj-cyan)}
.jwj-locator .jwj-locator__empty{padding:24px;color:#002e40}
.jwj-locator .jwj-locator__marker{width:28px;height:28px;background:transparent;border:0;padding:6px;cursor:pointer;box-shadow:none;border-radius:50%;display:grid;place-items:center}
.jwj-locator .jwj-locator__dot{width:14px;height:14px;background:var(--jwj-cyan);border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #b8d0dc;position:relative}
.jwj-locator .jwj-locator__dot:after{content:'';position:absolute;inset:3px;background:var(--jwj-dark);border-radius:50%}
.jwj-locator .jwj-locator__marker[data-active=true]{z-index:2}
.jwj-locator .jwj-locator__marker[data-active=true] .jwj-locator__dot{width:26px;height:26px;border:2px solid var(--jwj-dark);box-shadow:0 0 0 5px #00bce433}
.jwj-locator .jwj-locator__marker[data-active=true] .jwj-locator__dot:after{display:none}
.jwj-locator .mapboxgl-ctrl-top-right{top:12px;right:12px}
.jwj-locator .mapboxgl-ctrl-group{border-radius:0;box-shadow:none}
.jwj-locator .mapboxgl-ctrl-group button{width:38px;height:38px;background:#fff}
.jwj-locator .mapboxgl-ctrl-attrib{font-size:10px}
@container (max-width:800px){.jwj-locator .jwj-locator__layout{display:flex;flex-direction:column;gap:16px;height:auto}.jwj-locator .jwj-locator__main{order:-1;height:450px;flex:none}.jwj-locator .jwj-locator__list{flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:0 0 10px;scroll-snap-type:x proximity;gap:12px}.jwj-locator .jwj-locator__card{width:320px;max-width:85cqw;scroll-snap-align:start}.jwj-locator .jwj-locator__detail{bottom:30px;max-height:37%}}
@media(prefers-reduced-motion:reduce){.jwj-locator *{transition:none!important;scroll-behavior:auto!important}}
