@font-face{font-family:'Red Hat Display';src:url('vendor/red-hat-display.ttf') format('truetype');font-weight:300 900;font-display:swap}
.jrs-locator{--jrs-blue:#005470;--jrs-pink:#e32c76;--jrs-ink:#123f50;--jrs-muted:#586f79;font-family:'Red Hat Display',Arial,sans-serif;color:var(--jrs-ink);background:#fff;max-width:1440px;margin:0 auto;padding:40px;border:1px solid #e3ecee;border-radius:28px;box-shadow:0 20px 70px #00374a09;line-height:1.5;text-align:left}.jrs-locator *{box-sizing:border-box}.jrs-locator button,.jrs-locator input,.jrs-locator select{font:inherit;letter-spacing:normal;text-transform:none}.jrs-locator button{cursor:pointer}.jrs-locator a{color:var(--jrs-blue);text-decoration:none}.jrs-locator :focus-visible{outline:3px solid var(--jrs-pink);outline-offset:3px}.jrs-locator button:disabled{opacity:.5;cursor:default}.jrs-locator h2,.jrs-locator h3,.jrs-locator h4,.jrs-locator p{padding:0;margin:0}.jrs-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}.jrs-locator .jrs-eyebrow{font-size:11px;font-weight:800;letter-spacing:1.8px;color:var(--jrs-blue);margin-bottom:10px}.jrs-locator h2{font-size:clamp(28px,3.4vw,46px);line-height:1.14;letter-spacing:-1.8px;color:var(--jrs-blue);font-weight:800;margin-bottom:12px}.jrs-locator h2 span{color:var(--jrs-pink)}.jrs-head p:not(.jrs-eyebrow){color:var(--jrs-muted);font-size:16px}.jrs-filters{display:flex;gap:12px;padding:14px;background:#f1f6f7;border-radius:18px;align-items:stretch}.jrs-search{display:flex;align-items:center;gap:10px;flex:1;background:#fff;border:1px solid #dce7e9;border-radius:11px;padding:0 15px;min-width:180px}.jrs-locator .jrs-search input{width:100%;background:transparent;border:0;box-shadow:none;color:var(--jrs-blue);padding:16px 0;outline-offset:0;font-size:14px}.jrs-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:21px;height:21px}.jrs-icon svg{width:100%;height:100%}.jrs-province-label{position:relative;font-size:10px;color:#637781;min-width:190px;background:#fff;border:1px solid #dce7e9;border-radius:11px;padding:6px 12px}.jrs-locator .jrs-province-label select{width:100%;display:block;color:var(--jrs-blue);font-size:13px;font-weight:600;border:none;background:transparent;box-shadow:none;padding:2px 20px 0 0;min-height:0}.jrs-locator .jrs-near{display:flex;align-items:center;gap:8px;background:var(--jrs-blue);color:#fff;border:0;border-radius:11px;padding:10px 18px;font-size:13px;font-weight:700}.jrs-locator .jrs-clear-filter{background:transparent;border:0;color:var(--jrs-blue);padding:8px;font-size:12px;text-decoration:underline}.jrs-locator .jrs-status{font-size:12px;color:var(--jrs-muted)}.jrs-status:not(:empty){margin-top:10px}.jrs-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px;margin-top:24px}.jrs-side{min-width:0}.jrs-locator .jrs-count{font-size:12px;font-weight:700;color:var(--jrs-muted);margin:0 0 12px}.jrs-list{height:470px;overflow:auto;padding:2px 9px 3px 2px;scrollbar-width:thin;scrollbar-color:#bbced5 transparent;position:relative}.jrs-locator .jrs-branch{width:100%;display:flex;align-items:flex-start;gap:12px;padding:18px 15px;margin:0 0 10px;border:1px solid #e0e9ec;border-radius:15px;background:#fff;color:var(--jrs-blue);text-align:left;transition:border-color .2s,background .2s}.jrs-locator .jrs-branch:hover{background:#f2f8f9;border-color:#95b3bf}.jrs-locator .jrs-branch.is-active{background:#005470;color:white;border-color:#005470;box-shadow:0 8px 20px #00547018}.jrs-branch-index{font-size:11px;opacity:.65;margin-top:3px}.jrs-branch-text{min-width:0;flex:1}.jrs-branch-text>*{display:block}.jrs-branch-text strong{font-size:17px;line-height:1.25;margin:5px 0 8px;font-weight:800}.jrs-province-tag{font-size:10px;letter-spacing:.6px}.jrs-address{font-size:11px;line-height:1.6;opacity:.8;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.jrs-distance{font-size:11px;margin-top:6px;color:#b95277}.is-active .jrs-distance{color:#fff}.jrs-branch>.jrs-icon{width:16px;margin-top:3px;color:var(--jrs-pink)}.is-active>.jrs-icon{color:#fff}.jrs-map-wrap{position:relative;min-height:500px;overflow:hidden;border-radius:20px;background:#e5eff1;border:1px solid #dce8eb}.jrs-map{position:absolute;inset:0}.jrs-map-badge{position:absolute;top:18px;left:18px;padding:11px 14px;border-radius:10px;background:#fff;display:flex;gap:8px;align-items:center;box-shadow:0 3px 14px #00405710;pointer-events:none;font-size:10px;letter-spacing:1.5px;font-weight:800}.jrs-map-badge .jrs-icon{color:var(--jrs-pink);width:17px}.jrs-map-actions{position:absolute;bottom:55px;right:15px;display:flex;gap:5px}.jrs-locator .jrs-map-actions button{color:var(--jrs-blue);background:#fff;border:1px solid #d2e1e7;border-radius:8px;padding:9px 12px;font-size:11px;font-weight:700}.jrs-map-status{position:absolute;bottom:32px;left:15px;right:15px;font-size:10px;pointer-events:none;text-align:left;color:#244b5b;text-shadow:0 1px 2px white}.jrs-locator .jrs-pin{border:3px solid #fff;box-shadow:0 3px 15px #00547045;border-radius:50%;width:35px;height:35px;background:var(--jrs-pink);color:white;padding:6px;display:flex;align-items:center;justify-content:center}.jrs-pin .jrs-icon{width:19px}.jrs-locator .jrs-pin.is-selected{background:var(--jrs-blue);box-shadow:0 0 0 5px #e32c7644}.jrs-locator .maplibregl-ctrl button{border-radius:0;background-color:#fff;padding:0}.jrs-locator .maplibregl-ctrl-attrib{font:10px/16px Arial,sans-serif}.jrs-map-unavailable{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px;text-align:center;background:radial-gradient(circle at 40% 30%,#fff,#d8e8ed)}.jrs-map-unavailable>.jrs-icon{width:60px;height:60px;color:var(--jrs-blue)}.jrs-detail{margin-top:26px;background:#f6f9fa;border:1px solid #e1eaee;border-radius:20px;padding:27px}.jrs-detail-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #dce7eb;padding-bottom:20px}.jrs-locator .jrs-detail h3{font-size:28px;font-weight:800;letter-spacing:-.8px;color:var(--jrs-blue)}.jrs-locator .jrs-detail .jrs-eyebrow{font-size:10px;margin-bottom:4px}.jrs-locator .jrs-waze{background:var(--jrs-pink);color:#fff;border-radius:11px;display:inline-flex;align-items:center;gap:20px;padding:13px 20px;font-size:13px;font-weight:700;white-space:nowrap}.jrs-waze:hover{filter:brightness(.95)}.jrs-detail-body{display:grid;grid-template-columns:1fr 1.25fr;gap:35px;padding-top:24px}.jrs-locator .jrs-info{margin-bottom:17px}.jrs-locator h4{font-size:12px;color:var(--jrs-blue);font-weight:800;margin-bottom:6px}.jrs-locator .jrs-info p{font-size:13px;color:var(--jrs-muted);white-space:pre-line}.jrs-contact-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.jrs-locator .jrs-contact-link{font-size:12px;font-weight:700;border:1px solid #c8dce4;background:white;border-radius:8px;padding:9px 12px;overflow-wrap:anywhere}.jrs-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px}.jrs-professional{display:flex;gap:12px;align-items:center;min-width:0}.jrs-locator .jrs-professional img,.jrs-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;flex-shrink:0;background:#dfebef}.jrs-professional strong{display:block;font-size:12px;color:var(--jrs-blue);line-height:1.35}.jrs-professional div span{display:block;font-size:10px;color:#a72556;margin-top:4px}.jrs-avatar{display:flex;align-items:center;justify-content:center;font-size:18px}.jrs-empty{padding:30px 15px;color:var(--jrs-muted);font-size:14px}.jrs-locator [hidden]{display:none!important}@media(max-width:1000px){.jrs-locator{padding:25px}.jrs-grid{grid-template-columns:280px minmax(0,1fr);gap:15px}.jrs-filters{flex-wrap:wrap}.jrs-search{flex-basis:50%}.jrs-people{grid-template-columns:1fr}}@media(max-width:680px){.jrs-locator{padding:20px 14px;border-radius:18px}.jrs-head{margin-bottom:22px}.jrs-locator h2{font-size:32px}.jrs-head p:not(.jrs-eyebrow){font-size:14px}.jrs-filters{gap:8px;padding:10px}.jrs-search{flex-basis:100%}.jrs-province-label{flex:1;min-width:150px}.jrs-locator .jrs-near{padding:10px 12px}.jrs-grid{display:flex;flex-direction:column;gap:16px}.jrs-map-wrap{order:-1;min-height:330px}.jrs-list{height:260px}.jrs-detail{padding:20px 16px}.jrs-detail-top{display:block}.jrs-locator .jrs-waze{margin-top:16px;justify-content:center;width:100%}.jrs-detail-body{grid-template-columns:1fr;gap:12px}.jrs-people{grid-template-columns:1fr 1fr;gap:16px 10px}.jrs-professional{flex-direction:column;align-items:flex-start}.jrs-map-status{max-width:75%;font-size:9px}.jrs-locator .jrs-eyebrow{font-size:9px;letter-spacing:1px}.jrs-locator .jrs-branch{padding:14px}.jrs-locator .jrs-clear-filter{padding-left:4px}}@media(prefers-reduced-motion:reduce){.jrs-locator *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.jrs-locator .jrs-waze-pending .jrs-waze{border:none}.jrs-waze-pending small{display:block;text-align:center;font-size:11px;color:#586f79;margin-top:5px}
.jrs-locator .jrs-cluster{width:42px;height:42px;background:#005470;font-size:14px;font-weight:800}.jrs-map-choices{display:grid;gap:5px}.jrs-locator .jrs-map-choices button{border:1px solid #cfdee4;border-radius:6px;background:white;color:#005470;padding:8px;text-align:left;font-size:12px}

/* 1.1: selector de provincia independiente del tema y fichas amplias. */
.jrs-locator .jrs-province-label{position:relative;min-width:220px;padding:7px 14px;background:#fff;border:1px solid #dce7e9;border-radius:11px;display:block}
.jrs-locator .jrs-province-label::before{content:none!important}
.jrs-locator .jrs-province-label::after{content:""!important;position:absolute!important;right:18px!important;top:50%!important;width:8px!important;height:8px!important;border:solid #005470!important;border-width:0 2px 2px 0!important;transform:rotate(45deg)!important;background:none!important;box-shadow:none!important;pointer-events:none!important}
.jrs-locator .jrs-province-label select{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;background:transparent!important;background-image:none!important;box-shadow:none!important;border:0!important;border-radius:0!important;color:#005470!important;width:100%!important;min-height:28px;padding:3px 32px 3px 0!important;font-size:14px;line-height:1.5;cursor:pointer}
.jrs-locator .jrs-detail-body{display:block}
.jrs-locator .jrs-contact{display:grid;grid-template-columns:1fr 1fr;gap:0 32px;margin-bottom:20px}
.jrs-locator .jrs-team{border-top:1px solid #dce7eb;padding-top:24px}
.jrs-locator .jrs-team>h4{font-size:20px;margin-bottom:20px}
.jrs-locator .jrs-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:0}
.jrs-locator .jrs-professional{display:flex;flex-direction:row;align-items:center;gap:24px;padding:24px;background:#fff;border:1px solid #dce7eb;border-radius:18px;min-width:0;box-shadow:0 5px 20px #00547005}
.jrs-locator .jrs-professional img,.jrs-locator .jrs-avatar{width:144px;height:144px;object-fit:cover;border-radius:50%;flex-shrink:0}
.jrs-locator .jrs-professional>div{min-width:0}
.jrs-locator .jrs-professional strong{font-size:19px;line-height:1.3;overflow-wrap:anywhere}
.jrs-locator .jrs-professional div span{font-size:14px;line-height:1.5;margin-top:9px}
.jrs-locator .jrs-professional:only-child{grid-column:1/-1;padding:30px;gap:32px;min-height:250px}
.jrs-locator .jrs-professional:only-child img,.jrs-locator .jrs-professional:only-child .jrs-avatar{width:200px;height:200px}
.jrs-locator .jrs-professional:only-child strong{font-size:26px}
.jrs-locator .jrs-professional:only-child div span{font-size:17px}
@media(max-width:1000px){.jrs-locator .jrs-people{grid-template-columns:1fr}.jrs-locator .jrs-professional img,.jrs-locator .jrs-avatar{width:140px;height:140px}}
@media(max-width:680px){.jrs-locator .jrs-province-label{min-width:180px}.jrs-locator .jrs-contact{grid-template-columns:1fr}.jrs-locator .jrs-team>h4{font-size:19px}.jrs-locator .jrs-professional,.jrs-locator .jrs-professional:only-child{flex-direction:column;align-items:center;text-align:center;padding:24px 16px;gap:18px;min-height:0}.jrs-locator .jrs-professional img,.jrs-locator .jrs-avatar,.jrs-locator .jrs-professional:only-child img,.jrs-locator .jrs-professional:only-child .jrs-avatar{width:160px;height:160px}.jrs-locator .jrs-professional strong,.jrs-locator .jrs-professional:only-child strong{font-size:22px}.jrs-locator .jrs-professional div span,.jrs-locator .jrs-professional:only-child div span{font-size:15px}}

/* 1.3: la información primero, exploración después. */
.jrs-locator{padding:28px;container-type:inline-size}
.jrs-head{margin-bottom:22px;flex-wrap:wrap}
.jrs-locator h2{font-size:clamp(28px,3vw,38px)}
.jrs-locator .jrs-change,.jrs-locator .jrs-team-nav button{border:1px solid #c8dce4;background:#fff;color:var(--jrs-blue);border-radius:10px;padding:10px 15px;font-weight:700;font-size:13px;min-height:44px}
.jrs-locator .jrs-change:hover,.jrs-locator .jrs-team-nav button:hover:not(:disabled){background:#edf5f7}
.jrs-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;margin-top:0;align-items:start}
.jrs-locator .jrs-detail{margin:0;padding:22px;min-width:0;scroll-margin-top:24px}
.jrs-detail-top{flex-wrap:wrap;gap:12px;padding-bottom:14px}
.jrs-locator .jrs-detail h3{font-size:26px;line-height:1.2}
.jrs-detail-body{padding-top:16px}
.jrs-locator .jrs-contact{gap:0 18px;margin-bottom:4px}
.jrs-locator .jrs-info{margin-bottom:12px}
.jrs-contact-actions{grid-column:1/-1;margin-bottom:12px}
.jrs-locator .jrs-team{padding-top:14px}
.jrs-locator .jrs-team>h4{font-size:17px;margin-bottom:12px}
.jrs-locator .jrs-people{display:block}
.jrs-locator .jrs-professional,.jrs-locator .jrs-professional:only-child{padding:18px;gap:20px;min-height:174px;flex-direction:row;text-align:left;align-items:center}
.jrs-locator .jrs-professional img,.jrs-locator .jrs-avatar,.jrs-locator .jrs-professional:only-child img,.jrs-locator .jrs-professional:only-child .jrs-avatar{width:132px;height:132px}
.jrs-locator .jrs-professional strong,.jrs-locator .jrs-professional:only-child strong{font-size:21px}
.jrs-locator .jrs-professional div span,.jrs-locator .jrs-professional:only-child div span{font-size:14px;margin-top:6px}
.jrs-team-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}
.jrs-team-nav span{font-size:12px;color:var(--jrs-muted)}
.jrs-map-wrap{min-height:0;height:440px;order:initial}
.jrs-browse{margin-top:24px;padding-top:22px;border-top:1px solid #dce7eb;scroll-margin-top:24px}
.jrs-locator .jrs-browse>h3{font-size:21px;color:var(--jrs-blue);margin:0 0 14px}
.jrs-side{margin-top:16px}
.jrs-list{height:auto;max-height:330px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:start}
.jrs-locator .jrs-branch{margin:0;min-height:110px;padding:14px}
.jrs-empty{grid-column:1/-1}
@media(max-width:1000px){.jrs-list{grid-template-columns:repeat(2,minmax(0,1fr))}.jrs-locator .jrs-professional,.jrs-locator .jrs-professional:only-child{gap:14px;padding:14px}.jrs-locator .jrs-professional img,.jrs-locator .jrs-avatar,.jrs-locator .jrs-professional:only-child img,.jrs-locator .jrs-professional:only-child .jrs-avatar{width:110px;height:110px}.jrs-locator .jrs-contact{grid-template-columns:1fr}}
@media(max-width:800px){.jrs-grid{display:flex;flex-direction:column;gap:16px}.jrs-detail,.jrs-map-wrap{width:100%}.jrs-map-wrap{height:260px;min-height:0;order:initial}.jrs-locator .jrs-detail{padding:18px}.jrs-locator{padding:20px 14px}.jrs-locator .jrs-professional,.jrs-locator .jrs-professional:only-child{min-height:150px}.jrs-detail-top{display:flex}.jrs-locator .jrs-waze{margin-top:0}.jrs-locator .jrs-province-label{min-width:0;flex:1 1 180px}.jrs-filters{flex-wrap:wrap}.jrs-search{flex-basis:100%}}
@media(max-width:480px){.jrs-list{grid-template-columns:1fr;max-height:370px}.jrs-locator .jrs-professional strong,.jrs-locator .jrs-professional:only-child strong{font-size:19px}.jrs-locator .jrs-professional img,.jrs-locator .jrs-avatar,.jrs-locator .jrs-professional:only-child img,.jrs-locator .jrs-professional:only-child .jrs-avatar{width:100px;height:100px}.jrs-head{gap:12px}.jrs-head p:not(.jrs-eyebrow){font-size:14px}.jrs-locator .jrs-detail h3{font-size:24px}}
@container(max-width:650px){.jrs-grid{display:flex;flex-direction:column}.jrs-detail,.jrs-map-wrap{width:100%}.jrs-map-wrap{height:260px}.jrs-list{grid-template-columns:1fr}.jrs-filters{flex-wrap:wrap}.jrs-search{flex-basis:100%}}
