/* Maps is a paginated viewport; street positions are illustrative, not geocoding. */
.sf26-map-view{display:flex;min-height:0;overflow:hidden}
.sf26-map{--sfm-navy:#00264b;--sfm-dark:#001935;--sfm-gold:#e6a018;--sfm-row:62px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:8px;width:100%;min-width:0;height:100%;min-height:0;max-height:100%;padding:0 8px 8px;color:var(--sfm-dark);font-family:inherit;overflow:hidden;box-sizing:border-box}
.sf26-map *{box-sizing:border-box}
.sf26-map .sfm-maps-symbol{width:27px;height:34px;stroke:none;stroke-width:0}
.sf26-map .sfm-pin-symbol{width:17px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none}
.sfm-heading{display:flex;align-items:center;justify-content:center;gap:13px;text-align:center}
.sfm-brandmark{display:block;flex:none}.sfm-brandmark .sfm-maps-symbol{width:31px;height:39px}
.sfm-heading p{font-size:12px;margin:0 0 3px;font-weight:650;letter-spacing:.02em}
.sfm-heading h2{font-family:inherit;font-size:clamp(19px,2.9vw,28px);font-weight:800;line-height:1.08;letter-spacing:-.035em;margin:0!important;color:var(--sfm-dark)}
.sfm-heading h2 strong{color:#d69416;font-weight:inherit}
.sfm-tabs{display:flex;justify-content:center;gap:4px;padding:3px;background:#e9eff6;border:1px solid #d9e3ee;border-radius:10px;width:min(100%,440px);margin-inline:auto;flex:none}
.sfm-tabs button{font-family:inherit;font-weight:750;font-size:13px;line-height:1.2;appearance:none;border:0;color:#2f445d;background:none;padding:9px 12px;flex:1;border-radius:8px;white-space:nowrap;cursor:pointer}
.sfm-tabs button[aria-pressed=true]{color:#fff;background:linear-gradient(180deg,#045386,#001a38);box-shadow:0 2px 3px #00152933}
.sfm-count{display:inline-block;font-size:10px;padding:1px 5px;margin-left:3px;border-radius:20px;background:#ffffffc9;color:#052341}
.sfm-stage{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(100px,32%) minmax(0,1fr);gap:8px;min-height:0;position:relative;overflow:hidden}
.sfm-mapbox{isolation:isolate;position:relative;width:100%;min-height:0;overflow:hidden;border-radius:17px;border:2px solid #c5d9e4;box-shadow:0 2px 3px #2c5e7933;background:linear-gradient(140deg,#8ed2ef 0 23%,#edeacb 23% 58%,#e3eddb 58%);display:block}
.sfm-map-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none;opacity:.94}
.sfm-city{position:absolute;z-index:1;font-weight:700;font-size:15px;color:#17334e;pointer-events:none;text-shadow:0 1px 2px white}
.sfm-city-a{left:12%;top:68%}.sfm-city-b{left:42%;top:51%}.sfm-city-c{left:67%;top:17%}
.sfm-mapbox [data-sfm-pin]{position:absolute;z-index:2;left:var(--mx);top:var(--my);transform:translate(-50%,-50%);display:flex;align-items:center;appearance:none;border:0;border-radius:7px;padding:0;background:none;cursor:pointer;color:white;font:inherit;overflow:visible}
.sfm-pin{display:grid;place-items:center;position:relative;width:31px;height:36px;flex:none;filter:drop-shadow(0 2px 2px #08224180)}
.sfm-pin:before{content:"";position:absolute;inset:1px 1px 7px;background:linear-gradient(135deg,#0b426d,#001732);border:2px solid #ffc840;border-radius:60% 60% 60% 0;transform:rotate(-45deg)}
.sfm-pin b{position:relative;font-size:13px;line-height:1;font-weight:800;transform:translateY(-3px);color:#fff4d5}
.sfm-pname{position:absolute;left:25px;top:1px;width:max-content;max-width:108px;padding:4px 7px;border:1px solid #facb50;border-radius:4px 11px 11px 4px;background:linear-gradient(#083b64,#001733);font-size:10px;font-weight:750;text-align:left;line-height:1.12;box-shadow:1px 2px 3px #122c4a55}
.sfm-pname.left{right:25px;left:auto;border-radius:11px 4px 4px 11px;text-align:right}
.sfm-mapbox button[aria-pressed=true]{z-index:5}
.sfm-mapbox button[aria-pressed=true] .sfm-pin:before{background:linear-gradient(#ffe992,#eaaa17);border-color:#fff5cb}
.sfm-mapbox button[aria-pressed=true] .sfm-pin b{color:#042545}
.sfm-mapbox button[aria-pressed=true] .sfm-pname{background:linear-gradient(#fff8d9,#ffeaaa);color:#052543;border-color:#daa119}
.sfm-caption{position:absolute;bottom:3px;right:8px;z-index:1;font-size:9px;font-weight:600;background:#ffffffe6;border-radius:3px;padding:1px 4px;color:#33516a}
.sfm-rows{min-height:0;position:relative;display:flex;flex-direction:column;gap:5px;overflow:hidden;padding:1px}
.sfm-row{height:var(--sfm-row);min-height:var(--sfm-row);display:grid;grid-template-columns:minmax(0,1fr) 70px 96px 128px;align-items:center;gap:8px;background:linear-gradient(135deg,#fff,#f0f7fc);border:1px solid #d8e2ea;box-shadow:0 1px 2px #264d6d29;border-radius:14px;padding:4px 5px;overflow:hidden}
.sfm-row[hidden]{display:none!important}
.sfm-row:has(.sfm-choose[aria-pressed=true]){border-color:#e2a41b;box-shadow:inset 0 0 0 1px #f5d278,0 1px 2px #264d6d29}
.sfm-choose{appearance:none;display:flex;align-items:center;border:0;background:none;padding:0;gap:13px;min-width:0;height:100%;text-align:left;cursor:pointer;font:inherit;color:inherit}
.sfm-choose>img{display:block;width:94px;height:100%;object-fit:cover;border-radius:10px;flex:none}
.sfm-binfo{min-width:0;display:flex;flex-direction:column;gap:4px}
.sfm-binfo strong{display:block;font-weight:800;font-size:15px;line-height:1.1}
.sfm-binfo small{display:flex;align-items:center;gap:4px;font-size:10px;line-height:1.2}
.sfm-pin-symbol{width:17px;height:19px;flex:none;color:#df9713}
.sfm-binfo small .sfm-pin-symbol{width:12px;height:14px;color:#124a88}
.sfm-source{border-left:1px solid #ddae4b;display:flex;align-items:center;justify-content:center;gap:4px;min-height:34px;font-size:10px;font-weight:700}
.sfm-maps-symbol{display:block;width:27px;height:34px;flex:none}
.sfm-source>.sfm-maps-symbol{width:20px;height:26px}
.sfm-source>span{max-width:35px;line-height:1.1}
.sfm-score{display:flex;flex-direction:column;gap:3px;font-size:12px;text-align:center}
.sfm-score strong{font-size:16px;font-weight:800}
.sfm-score i{color:#efa100;font-size:18px;font-style:normal}
.sfm-score small{font-size:10px;line-height:1.2;color:#3d536a}
.sfm-rowlink{display:flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:7px 8px;border:1px solid #e2bb61;border-radius:25px;background:linear-gradient(#064e81,#001a36);color:#fff!important;font-size:12px;line-height:1.1;text-align:center;font-weight:750;text-decoration:none!important;box-shadow:0 2px 3px #143f6936}
.sfm-rowlink b{font:700 18px/1 system-ui}
.sfm-pager{display:flex;justify-content:center;align-items:center;gap:12px;height:30px;flex:none}
.sfm-pager button{appearance:none;display:grid;place-items:center;width:32px;height:28px;border:1px solid #dab261;border-radius:8px;background:linear-gradient(#fff5d3,#ffdc71);font:800 22px/1 system-ui;color:#032543;cursor:pointer}
.sfm-pager button:disabled{opacity:.35;cursor:default}
.sfm-pager output{font-size:12px;font-weight:750;min-width:70px;text-align:center}
.sfm-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;min-height:49px;border-radius:15px;border:1px solid #eab64c;background:linear-gradient(160deg,#08467a,#001a37 62%);color:white;box-shadow:0 2px 3px #193c5c40}
.sfm-foot>span{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:800}
.sfm-foot .sfm-maps-symbol{width:22px;height:28px}
.sfm-foot>a,.sfm-reviewcard>a{display:flex;align-items:center;justify-content:center;gap:12px;background:linear-gradient(#fff9e5,#ffdfa1);border:1px solid #e6ab26;box-shadow:0 2px 2px #ffffff45 inset,0 2px 3px #001b3e7a;color:#001b3e!important;border-radius:25px;font-size:13px;font-weight:800;padding:8px 17px;text-decoration:none!important}
.sfm-foot>a b,.sfm-reviewcard>a b{font:700 19px/1 system-ui}
.sfm-selection{display:none;align-items:center;gap:10px;padding:10px 14px;border:1px solid #d7e3ef;border-radius:12px;background:#f3f8fd;min-height:72px;overflow:hidden}
.sfm-selection-pin .sfm-pin-symbol{width:31px;height:37px}
.sfm-selection>div{display:flex;flex-direction:column;gap:4px;font-size:13px;min-width:0}
.sfm-selection small{font-size:10px;color:#45637a;line-height:1}
.sfm-selection strong{font-size:17px;line-height:1.1}
.sfm-selection span{font-size:12px}
.sfm-reviewcard{display:none;text-align:center;align-content:center;justify-items:center;gap:10px;padding:clamp(12px,2vw,25px);border:1px solid #e1b649;border-radius:17px;background:radial-gradient(ellipse at 50% 5%,#0b4f85,#001a38 60%);color:white;overflow:hidden}
.sfm-reviewcard .sfm-rating-mark{background:#ffffff;padding:8px 15px;border-radius:17px}
.sfm-reviewcard .sfm-rating-mark>.sfm-maps-symbol{height:50px;width:39px}
.sfm-review-over{font-size:12px;color:#ffdf91;font-weight:700}
.sfm-reviewcard h3{font-family:inherit;font-size:clamp(19px,3.3vw,30px);font-weight:800;line-height:1.1;margin:0;letter-spacing:-.025em;color:white}
.sfm-reviewcard p{margin:0;max-width:41ch;line-height:1.35;font-size:14px}
.sfm-reviewcard .sfm-review-note{font-size:12px;opacity:.85;max-width:37ch}
.sfm-rating-live{font-size:30px;color:#ffd35d;line-height:1.1;font-weight:800}
.sfm-rating-live:empty{display:none}
.sf26-map[data-sfm-pane=map] .sfm-stage{grid-template-rows:minmax(0,1fr) auto}
.sf26-map[data-sfm-pane=map] .sfm-rows,.sf26-map[data-sfm-pane=map] .sfm-pager{display:none}
.sf26-map[data-sfm-pane=map] .sfm-selection{display:flex}
.sf26-map[data-sfm-pane=reviews] .sfm-stage{grid-template-rows:minmax(0,1fr)}
.sf26-map[data-sfm-pane=reviews] .sfm-mapbox,.sf26-map[data-sfm-pane=reviews] .sfm-rows,.sf26-map[data-sfm-pane=reviews] .sfm-pager,.sf26-map[data-sfm-pane=reviews] .sfm-foot{display:none}
.sf26-map[data-sfm-pane=reviews] .sfm-reviewcard{display:grid}
.sf26-map :is(button,a):focus-visible{outline:3px solid #269ee5;outline-offset:2px}
.sfm-empty{margin:auto;text-align:center;padding:20px}
@media(max-width:640px){
 .sf26-map{--sfm-row:58px;gap:6px;padding:0 2px 3px}
 .sfm-heading h2{font-size:19px;max-width:29ch;margin:auto!important}
 .sfm-heading p{font-size:10px;line-height:1.2;margin-bottom:4px}
 .sfm-heading h2 strong{display:block}
 .sfm-tabs{width:100%;border-radius:9px}
 .sfm-tabs button{padding:8px 6px;font-size:12px}
 .sfm-stage{grid-template-rows:minmax(98px,34%) minmax(0,1fr);gap:6px}
 .sfm-mapbox{border-radius:12px}
 .sfm-pname{display:none}
 .sfm-mapbox button[aria-pressed=true] .sfm-pname{display:block;max-width:89px;font-size:9px;left:20px}
 .sfm-mapbox button[aria-pressed=true] .sfm-pname.left{left:auto;right:20px}
 .sfm-city{font-size:10px}
 .sfm-pin{width:23px;height:29px}
 .sfm-pin:before{border-width:1.5px}
 .sfm-pin b{font-size:10px}
 .sfm-caption{font-size:8px}
 .sfm-row{grid-template-columns:minmax(0,1fr) 78px;gap:4px;border-radius:11px;padding:3px}
 .sfm-choose{gap:6px}
 .sfm-choose>img{width:54px;border-radius:8px}
 .sfm-binfo{gap:3px}
 .sfm-binfo strong{font-size:12px}
 .sfm-binfo small{font-size:9px}
 .sfm-source,.sfm-score{display:none}
 .sfm-rowlink{font-size:10px;padding:5px;min-height:32px;gap:3px}
 .sfm-rowlink b{font-size:17px}
 .sfm-pager{gap:9px;height:28px}
 .sfm-foot{padding:7px 9px;min-height:45px;border-radius:12px}
 .sfm-foot>span{font-size:12px;gap:5px}
 .sfm-foot>a{font-size:11px;padding:7px 10px;gap:6px}
 .sfm-foot .sfm-maps-symbol{width:19px;height:24px}
 .sfm-selection{min-height:65px;padding:8px 10px}
 .sfm-selection strong{font-size:15px}
}
@media(max-height:600px){
 .sf26-map{--sfm-row:52px;gap:4px}
 .sfm-heading p{display:none}
 .sfm-heading h2{font-size:17px}
 .sfm-heading h2 strong{display:inline}
 .sfm-tabs button{padding:6px 10px}
 .sfm-foot{min-height:40px;padding-block:5px}
 .sfm-foot>a{padding-block:5px}
 .sfm-reviewcard{gap:6px;padding:9px}
 .sfm-reviewcard .sfm-rating-mark>.sfm-maps-symbol{height:30px;width:24px}
 .sfm-reviewcard h3{font-size:20px}
 .sfm-reviewcard p{font-size:12px}
}
@media(max-height:470px){
 .sfm-brandmark{display:none}
 .sf26-map[data-sfm-pane=branches] .sfm-mapbox{display:none}
 .sf26-map[data-sfm-pane=branches] .sfm-stage{grid-template-rows:minmax(0,1fr)}
 .sf26-map[data-sfm-pane=reviews] .sfm-heading{display:none}
 .sfm-reviewcard .sfm-rating-mark,.sfm-review-over,.sfm-review-note{display:none}
 .sfm-heading h2{font-size:15px}
 .sfm-selection{min-height:45px;padding:6px 9px}
 .sfm-selection>div{gap:2px}
 .sfm-selection strong{font-size:13px}
}
@media(prefers-reduced-motion:no-preference){
 .sfm-tabs button,.sfm-rowlink,.sfm-choose,.sfm-mapbox button{transition:filter .18s,background-color .18s}
 .sfm-rowlink:hover,.sfm-foot>a:hover{filter:brightness(1.12)}
}

.sf26-map svg.sfm-external{width:15px;height:15px;stroke-width:2;vertical-align:middle;fill:none;flex:none}
