.spi-rd:not(#spi-rd-x) .mh{padding-top: clamp(150px, 22vh, 230px); padding-bottom: clamp(28px, 5vh, 56px);}
.spi-rd:not(#spi-rd-x) .mh-title{margin: 18px 0 0; font: 600 clamp(3.6rem, 12vw, 12rem)/.88 var(--font-ui); letter-spacing: -.05em;}
.spi-rd:not(#spi-rd-x) .mh-lede{margin: clamp(18px, 3vh, 30px) 0 0; max-width: 46ch; color: var(--muted); font-size: clamp(1.05rem, 1.6vw, 1.35rem);}
.spi-rd:not(#spi-rd-x) .mh-lede strong{color: var(--text); font-weight: 600;}
.spi-js:not(.spi-ready) .spi-rd:not(#spi-rd-x) .mh > *{opacity: 0;}
.spi-rd:not(#spi-rd-x) .atlas{padding: 0 var(--gutter) clamp(70px, 10vh, 120px);}
.spi-rd:not(#spi-rd-x) .atlas-frame{position: relative; max-width: var(--max); margin: 0 auto; height: min(88svh, 900px); min-height: 620px; display: grid; grid-template-columns: minmax(380px, 480px) 1fr; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: var(--surface);}
.spi-rd:not(#spi-rd-x) .panel{display: flex; flex-direction: column; min-height: 0; border-right: 1px solid var(--line); background: var(--surface);}
.spi-rd:not(#spi-rd-x) .panel-top{padding: 18px 18px 12px; border-bottom: 1px solid var(--line); display: grid; gap: 14px;}
.spi-rd:not(#spi-rd-x) .chapters{display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px;}
.spi-rd:not(#spi-rd-x) .ch{display: grid; gap: 2px; justify-items: start; padding: 12px 12px 10px; border: 1px solid var(--line); border-radius: var(--radius-s); background: transparent; text-align: left; cursor: pointer; transition: background-color .2s ease, border-color .2s ease, color .2s ease;}
.spi-rd:not(#spi-rd-x) .ch-n{font: 500 26px/1 var(--font-display); letter-spacing: -.03em; font-variant-numeric: tabular-nums;}
.spi-rd:not(#spi-rd-x) .ch-l{font-size: 13px; color: var(--muted); transition: color .2s ease;}
.spi-rd:not(#spi-rd-x) .ch[aria-pressed="true"]{background: var(--text); border-color: var(--text); color: var(--bg);}
.spi-rd:not(#spi-rd-x) .ch[aria-pressed="true"] .ch-l{color: rgba(0,0,0,.6);}
@media (hover: hover) and (pointer: fine){.spi-rd:not(#spi-rd-x) .ch:hover:not([aria-pressed="true"]){border-color: var(--line-strong);}}
.spi-rd:not(#spi-rd-x) .ch:active{transform: scale(.97); transition: transform .12s var(--ease-out);}
.spi-rd:not(#spi-rd-x) .filters{display: grid; gap: 10px;}
.spi-rd:not(#spi-rd-x) .sel{position: relative; display: block;}
.spi-rd:not(#spi-rd-x) .sel::after{content: ''; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px; border-right: 1.5px solid var(--muted); border-bottom: 1.5px solid var(--muted); transform: translateY(-70%) rotate(45deg); pointer-events: none;}
.spi-rd:not(#spi-rd-x) .sel select{width: 100%; min-height: 44px; padding: 0 44px 0 18px; border: 1px solid var(--line-strong); border-radius: 200px; background: var(--surface-2); color: var(--text); font: inherit; font-size: 15px; appearance: none; cursor: pointer;}
.spi-rd:not(#spi-rd-x) .types{display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px;}
.spi-rd:not(#spi-rd-x) .types::-webkit-scrollbar{display: none;}
.spi-rd:not(#spi-rd-x) .tc{flex: none; min-height: 36px; padding: 0 14px; border: 1px solid var(--line); border-radius: 200px; background: transparent; color: var(--muted); font-size: 13px; cursor: pointer; white-space: nowrap; transition: background-color .2s ease, color .2s ease, border-color .2s ease;}
.spi-rd:not(#spi-rd-x) .tc span{color: var(--faint); margin-left: 2px;}
.spi-rd:not(#spi-rd-x) .tc[aria-pressed="true"]{background: var(--accent); border-color: var(--accent); color: #001a17;}
.spi-rd:not(#spi-rd-x) .tc[aria-pressed="true"] span{color: rgba(0,26,23,.6);}
.spi-rd:not(#spi-rd-x) .result{display: flex; align-items: center; justify-content: space-between; min-height: 30px;}
.spi-rd:not(#spi-rd-x) .result-n{margin: 0; font-size: 14px; color: var(--muted);}
.spi-rd:not(#spi-rd-x) .result-n #r-n{color: var(--text); font-weight: 600; font-variant-numeric: tabular-nums;}
.spi-rd:not(#spi-rd-x) .reset{border: 0; background: none; color: var(--accent); font-size: 14px; cursor: pointer; padding: 6px 0;}
.spi-rd:not(#spi-rd-x) .mc-list{list-style: none; margin: 0; padding: 10px; overflow-y: auto; overscroll-behavior: contain; flex: 1; min-height: 0; scrollbar-width: thin; scrollbar-color: #333 transparent;}
.spi-rd:not(#spi-rd-x) .mc{position: relative; border-radius: var(--radius-s); transition: background-color .2s ease;}
.spi-rd:not(#spi-rd-x) .mc[hidden]{display: none;}
.spi-rd:not(#spi-rd-x) .mc.is-on,.spi-rd:not(#spi-rd-x) .mc:focus-within{background: var(--surface-2);}
.spi-rd:not(#spi-rd-x) .mc-link{display: grid; grid-template-columns: 92px 1fr; gap: 14px; align-items: center; padding: 8px 52px 8px 8px; text-decoration: none;}
.spi-rd:not(#spi-rd-x) .mc-media{aspect-ratio: 1; border-radius: 10px; overflow: hidden; background: #1c1c1c;}
.spi-rd:not(#spi-rd-x) .mc-media img{width: 100%; height: 100%; object-fit: cover;}
.spi-rd:not(#spi-rd-x) .mc-body{display: grid; gap: 2px; min-width: 0;}
.spi-rd:not(#spi-rd-x) .mc-kicker{font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--accent);}
.spi-rd:not(#spi-rd-x) .mc-title{font-weight: 600; font-size: 16px; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.spi-rd:not(#spi-rd-x) .mc-sub{font-size: 13px; color: var(--muted);}
.spi-rd:not(#spi-rd-x) .mc-locate{position: absolute; right: 8px; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--muted); font-size: 18px; line-height: 1; cursor: pointer; transition: border-color .2s ease, color .2s ease;}
@media (hover: hover) and (pointer: fine){.spi-rd:not(#spi-rd-x) .mc-locate:hover{border-color: var(--text); color: var(--text);}}
.spi-rd:not(#spi-rd-x) .mc-empty{margin: 0; padding: 28px 24px; color: var(--muted);}
.spi-rd:not(#spi-rd-x) .map-wrap{position: relative; min-height: 0;}
.spi-rd:not(#spi-rd-x) .map{position: absolute; inset: 0; background: #0b0b0b;}
.spi-rd:not(#spi-rd-x) .leaflet-container{font-family: var(--font-ui); background: #0b0b0b;}
.spi-rd:not(#spi-rd-x) .leaflet-control-zoom{border: 0 !important; margin: 16px !important;}
.spi-rd:not(#spi-rd-x) .leaflet-control-zoom a{width: 40px !important; height: 40px !important; line-height: 38px !important; background: var(--surface-2) !important; color: var(--text) !important; border: 1px solid var(--line) !important;}
.spi-rd:not(#spi-rd-x) .leaflet-control-zoom a:first-child{border-radius: 12px 12px 0 0 !important;}
.spi-rd:not(#spi-rd-x) .leaflet-control-zoom a:last-child{border-radius: 0 0 12px 12px !important;}
.spi-rd:not(#spi-rd-x) .leaflet-control-attribution{background: rgba(0,0,0,.55) !important; color: var(--faint) !important; font-size: 10px !important;}
.spi-rd:not(#spi-rd-x) .leaflet-control-attribution a{color: var(--muted) !important;}
.spi-rd:not(#spi-rd-x) .map-hint{position: absolute; left: 50%; top: 16px; z-index: 500; margin: 0; padding: 8px 14px; border-radius: 200px; background: rgba(0,0,0,.7); color: var(--muted); font-size: 13px; transform: translateX(-50%); pointer-events: none; transition: opacity .25s ease;}
.spi-rd:not(#spi-rd-x) .map-hint.is-off{opacity: 0;}
@media (hover: none), (pointer: coarse){.spi-rd:not(#spi-rd-x) .map-hint{display: none;}}
.spi-rd:not(#spi-rd-x) .pin{display: block; width: 16px; height: 16px; border-radius: 50%; background: var(--text); border: 3px solid #0b0b0b; box-shadow: 0 0 0 1px rgba(255,255,255,.25); transition: transform .2s var(--ease-out), background-color .2s ease;}
.spi-rd:not(#spi-rd-x) .pin-wrap.is-on .pin,.spi-rd:not(#spi-rd-x) .pin-wrap:focus-visible .pin{background: var(--accent); transform: scale(1.5);}
.spi-rd:not(#spi-rd-x) .pin-wrap{outline: none;}
.spi-rd:not(#spi-rd-x) .clu{box-sizing: border-box; display: grid; place-items: center; width: 100%; height: 100%; border-radius: 50%; background: #fff; color: #000; font: 600 14px/1 var(--font-ui); font-variant-numeric: tabular-nums; box-shadow: 0 0 0 6px rgba(255,255,255,.14); transition: transform .2s var(--ease-out), background-color .2s ease;}
.spi-rd:not(#spi-rd-x) .clu-wrap.is-on .clu{background: var(--accent); transform: scale(1.12);}
.spi-rd:not(#spi-rd-x) .leaflet-marker-icon.clu-wrap,.spi-rd:not(#spi-rd-x) .leaflet-marker-icon.pin-wrap{background: none; border: 0;}
.spi-rd:not(#spi-rd-x) .pv{position: absolute; right: 16px; bottom: 16px; z-index: 600; width: min(360px, calc(100% - 32px)); border-radius: var(--radius); overflow: hidden; background: var(--surface-2); border: 1px solid var(--line); box-shadow: 0 30px 80px rgba(0,0,0,.55);}
.spi-rd:not(#spi-rd-x) .pv-link{display: block; text-decoration: none;}
.spi-rd:not(#spi-rd-x) .pv-media{display: block; aspect-ratio: 16 / 10; overflow: hidden; background: #1c1c1c;}
.spi-rd:not(#spi-rd-x) .pv-media img{width: 100%; height: 100%; object-fit: cover;}
.spi-rd:not(#spi-rd-x) .pv-body{display: grid; gap: 4px; padding: 16px 18px 18px;}
.spi-rd:not(#spi-rd-x) .pv-kicker{font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--accent);}
.spi-rd:not(#spi-rd-x) .pv-title{font-weight: 600; font-size: 19px; line-height: 1.2;}
.spi-rd:not(#spi-rd-x) .pv-sub{color: var(--muted); font-size: 14px;}
.spi-rd:not(#spi-rd-x) .pv-cta{justify-self: start; margin-top: 10px; display: inline-flex; align-items: center; min-height: 40px; padding: 0 18px; border-radius: 200px; background: var(--text); color: var(--bg); font-size: 14px; transition: background-color .2s ease;}
@media (hover: hover) and (pointer: fine){.spi-rd:not(#spi-rd-x) .pv-link:hover .pv-cta{background: var(--accent);}}
.spi-rd:not(#spi-rd-x) .pv-close{position: absolute; top: 10px; right: 10px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(0,0,0,.6); color: #fff; font-size: 22px; line-height: 1; cursor: pointer;}
@media (max-width: 900px){.spi-rd:not(#spi-rd-x) .atlas{padding-inline: 0;}
.spi-rd:not(#spi-rd-x) .atlas-frame{height: auto; min-height: 0; display: flex; flex-direction: column; border-radius: 0; border-inline: 0;}
.spi-rd:not(#spi-rd-x) .panel{display: contents;}
.spi-rd:not(#spi-rd-x) .panel-top{order: 1; border-bottom: 1px solid var(--line);}
.spi-rd:not(#spi-rd-x) .map-wrap{order: 2;}
.spi-rd:not(#spi-rd-x) .mc-list,.spi-rd:not(#spi-rd-x) .mc-empty{order: 3;}
.spi-rd:not(#spi-rd-x) .map-wrap{height: 62svh; min-height: 380px;}
.spi-rd:not(#spi-rd-x) .panel-top{background: var(--surface);}
.spi-rd:not(#spi-rd-x) .chapters{grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: minmax(96px, 1fr); overflow-x: auto;}
.spi-rd:not(#spi-rd-x) .mc-list{overflow: visible; max-height: none;}
.spi-rd:not(#spi-rd-x) .pv{left: 12px; right: 12px; bottom: 12px; width: auto; display: grid; grid-template-columns: 112px 1fr;}
.spi-rd:not(#spi-rd-x) .pv-link{display: contents;}
.spi-rd:not(#spi-rd-x) .pv-media{aspect-ratio: auto; height: 100%;}
.spi-rd:not(#spi-rd-x) .pv-body{padding: 12px 52px 12px 14px;}
.spi-rd:not(#spi-rd-x) .pv-cta{display: none;}}
@media (prefers-reduced-motion: reduce){.spi-rd:not(#spi-rd-x) .pin,.spi-rd:not(#spi-rd-x) .clu,.spi-rd:not(#spi-rd-x) .ch,.spi-rd:not(#spi-rd-x) .tc{transition: background-color .2s ease, color .2s ease !important; transform: none !important;}}
.spi-rd:not(#spi-rd-x) .map .leaflet-tile-pane{filter: brightness(.55) contrast(1.15);}
.spi-rd:not(#spi-rd-x) .map .leaflet-labels-pane{filter: none; opacity: .5; pointer-events: none;}
.spi-rd:not(#spi-rd-x) .atlas{scroll-margin-top: 90px;}
.spi-rd:not(#spi-rd-x) .tc:disabled,.spi-rd:not(#spi-rd-x) .ch:disabled{opacity: .35; cursor: default;}
.spi-rd:not(#spi-rd-x) .pv[hidden]{display: none !important;}
.spi-rd:not(#spi-rd-x) .search{display: grid; grid-template-columns: 1fr auto; gap: 8px;}
.spi-rd:not(#spi-rd-x) .search-box{position: relative; display: flex; align-items: center; min-height: 44px; border: 1px solid var(--line-strong); border-radius: 200px; background: var(--surface-2); transition: border-color .2s ease;}
.spi-rd:not(#spi-rd-x) .search-box:focus-within{border-color: var(--text);}
.spi-rd:not(#spi-rd-x) .search-box .ico{flex: none; margin-left: 16px; opacity: .6;}
.spi-rd:not(#spi-rd-x) .search-box input{flex: 1; min-width: 0; height: 42px; padding: 0 10px; border: 0; background: transparent; color: var(--text); font: inherit; font-size: 15px; outline: none;}
.spi-rd:not(#spi-rd-x) .search-box input::placeholder{color: var(--faint);}
.spi-rd:not(#spi-rd-x) .search-box input::-webkit-search-cancel-button{display: none;}
.spi-rd:not(#spi-rd-x) .search-clear{flex: none; display: grid; place-items: center; width: 40px; height: 40px; margin-right: 2px; border: 0; border-radius: 50%; background: transparent; cursor: pointer; opacity: .6;}
.spi-rd:not(#spi-rd-x) .search-clear:hover{opacity: 1;}
.spi-rd:not(#spi-rd-x) .search-clear[hidden]{display: none;}
.spi-rd:not(#spi-rd-x) .addr-results{position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 1000; margin: 0; padding: 6px; list-style: none; border: 1px solid var(--line-strong); border-radius: var(--radius-s); background: #141414; box-shadow: 0 24px 60px rgba(0,0,0,.6);}
.spi-rd:not(#spi-rd-x) .addr-results[hidden]{display: none;}
.spi-rd:not(#spi-rd-x) .addr-opt{display: grid; gap: 1px; padding: 10px 12px; border-radius: 10px; cursor: pointer;}
.spi-rd:not(#spi-rd-x) .addr-opt[aria-selected="true"],.spi-rd:not(#spi-rd-x) .addr-opt:hover{background: var(--surface-2);}
.spi-rd:not(#spi-rd-x) .addr-main{font-weight: 600; font-size: 15px;}
.spi-rd:not(#spi-rd-x) .addr-sub{font-size: 13px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.spi-rd:not(#spi-rd-x) .addr-none{padding: 10px 12px; color: var(--muted); font-size: 14px;}
.spi-rd:not(#spi-rd-x) .geo{display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid var(--line-strong); border-radius: 200px; background: transparent; font-size: 14px; cursor: pointer; white-space: nowrap; transition: border-color .2s ease, background-color .2s ease;}
@media (hover: hover) and (pointer: fine){.spi-rd:not(#spi-rd-x) .geo:hover{border-color: var(--text);}}
.spi-rd:not(#spi-rd-x) .geo.is-busy img{animation: geo-pulse 1s ease-in-out infinite;}
@keyframes geo-pulse{ 50% { opacity: .3; } }
.spi-rd:not(#spi-rd-x) .mc-dist{color: var(--accent);}
.spi-rd:not(#spi-rd-x) .brands{display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; scroll-snap-type: x proximity;}
.spi-rd:not(#spi-rd-x) .brands::-webkit-scrollbar{display: none;}
.spi-rd:not(#spi-rd-x) .br{flex: none; position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 64px; height: 54px; padding: 0 14px; border: 1px solid var(--line); border-radius: var(--radius-s); background: transparent; color: var(--muted); font-size: 13px; cursor: pointer; scroll-snap-align: start; transition: border-color .2s ease, background-color .2s ease;}
.spi-rd:not(#spi-rd-x) .br .br-logo{--minh: 13px; max-height: 34px; max-width: 150px; opacity: .72; transition: opacity .2s ease;}
.spi-rd:not(#spi-rd-x) .br-n{font: 500 11px/1 var(--font-display); color: var(--faint); font-variant-numeric: tabular-nums;}
.spi-rd:not(#spi-rd-x) .br.is-all{color: var(--text);}
.spi-rd:not(#spi-rd-x) .br[aria-pressed="true"]{border-color: var(--text); background: var(--surface-2);}
.spi-rd:not(#spi-rd-x) .br[aria-pressed="true"] .br-logo{opacity: 1;}
.spi-rd:not(#spi-rd-x) .br[aria-pressed="true"] .br-n{color: var(--accent);}
@media (hover: hover) and (pointer: fine){.spi-rd:not(#spi-rd-x) .br:hover{border-color: var(--line-strong);}
.spi-rd:not(#spi-rd-x) .br:hover .br-logo{opacity: 1;}}
.spi-rd:not(#spi-rd-x) .mc-kicker{display: block; min-height: 12px;}
.spi-rd:not(#spi-rd-x) .mc-logo{--minh: 11px; max-height: 26px; max-width: 150px; opacity: .9;}
.spi-rd:not(#spi-rd-x) .lpin-wrap{background: none; border: 0;}
.spi-rd:not(#spi-rd-x) .lpin{box-sizing: border-box; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 0 11px; border-radius: 200px; background: #0d0d0d; border: 1px solid rgba(255,255,255,.3); box-shadow: 0 6px 18px rgba(0,0,0,.5); transition: transform .2s var(--ease-out), background-color .2s ease, border-color .2s ease;}
.spi-rd:not(#spi-rd-x) .lpin .logo{max-height: 18px; max-width: 100%;}
.spi-rd:not(#spi-rd-x) .lpin-wrap.is-on .lpin,.spi-rd:not(#spi-rd-x) .lpin-wrap:focus-visible .lpin{background: var(--accent); border-color: var(--accent); transform: scale(1.12);}
.spi-rd:not(#spi-rd-x) .lpin-wrap:focus-visible{outline: none;}
.spi-rd:not(#spi-rd-x) .here-wrap{background: none; border: 0;}
.spi-rd:not(#spi-rd-x) .here{position: relative; display: block; width: 22px; height: 22px; border-radius: 50%; background: var(--accent); border: 4px solid #fff; box-shadow: 0 0 0 1px rgba(0,0,0,.4);}
.spi-rd:not(#spi-rd-x) .here::after{content: ''; position: absolute; inset: -14px; border-radius: 50%; border: 2px solid var(--accent); opacity: 0; animation: here-ring 2.2s var(--ease-out) infinite;}
@keyframes here-ring{ 0% { transform: scale(.4); opacity: .9; } 100% { transform: scale(1.4); opacity: 0; } }
@media (max-width: 420px){.spi-rd:not(#spi-rd-x) .geo span{display: none;}
.spi-rd:not(#spi-rd-x) .geo{padding: 0 13px;}}
@media (prefers-reduced-motion: reduce){.spi-rd:not(#spi-rd-x) .here::after,.spi-rd:not(#spi-rd-x) .geo.is-busy img{animation: none;}
.spi-rd:not(#spi-rd-x) .lpin{transition: background-color .2s ease !important; transform: none !important;}}
.spi-rd:not(#spi-rd-x) .leaflet-container .leaflet-marker-pane .lpin img.logo{width: var(--w) !important; height: auto !important; max-width: 100% !important; max-height: 18px !important;}
.spi-rd:not(#spi-rd-x) .search-box{min-width: 0;}
.spi-rd:not(#spi-rd-x) .ch[aria-pressed="true"],.spi-rd:not(#spi-rd-x) .ch[aria-pressed="true"] .ch-n{color: var(--bg) !important;}
.spi-rd:not(#spi-rd-x) .ch[aria-pressed="true"] .ch-l{color: rgba(0,0,0,.6) !important;}
.spi-rd:not(#spi-rd-x) .tc[aria-pressed="true"]{color: #001a17 !important;}
.spi-rd:not(#spi-rd-x) .tc[aria-pressed="true"] span{color: rgba(0,26,23,.6) !important;}
.spi-rd:not(#spi-rd-x) .pv-cta,.spi-rd:not(#spi-rd-x) .clu{color: #000 !important;}
.spi-rd:not(#spi-rd-x) .ch:not([aria-pressed="true"]) .ch-l,.spi-rd:not(#spi-rd-x) .tc span,.spi-rd:not(#spi-rd-x) .br-n,.spi-rd:not(#spi-rd-x) .mc-sub,.spi-rd:not(#spi-rd-x) .pv-sub,.spi-rd:not(#spi-rd-x) .result-n,.spi-rd:not(#spi-rd-x) .addr-sub{color: var(--muted) !important;}
.spi-rd:not(#spi-rd-x) .mc-kicker,.spi-rd:not(#spi-rd-x) .pv-kicker,.spi-rd:not(#spi-rd-x) .mc-dist{color: var(--accent) !important;}
.spi-rd:not(#spi-rd-x) .br[aria-pressed="true"] .br-n{color: var(--accent) !important;}
.spi-rd:not(#spi-rd-x) .tc:not([aria-pressed="true"]){color: var(--muted) !important;}
.spi-rd:not(#spi-rd-x) .result-n #r-n,.spi-rd:not(#spi-rd-x) .result-n #spm-n,.spi-rd:not(#spi-rd-x) .mc-title,.spi-rd:not(#spi-rd-x) .pv-title,.spi-rd:not(#spi-rd-x) .addr-main{color: var(--text) !important;}
.spi-rd:not(#spi-rd-x) .reset{color: var(--accent) !important;}
.spi-rd:not(#spi-rd-x) .atlas-frame{grid-template-rows: auto minmax(0, 1fr);}
.spi-rd:not(#spi-rd-x) .atlas-search{grid-column: 1 / -1; position: relative; z-index: 1100; padding: 14px 18px; border-bottom: 1px solid var(--line); background: var(--surface);}
.spi-rd:not(#spi-rd-x) .atlas-search .search{grid-template-columns: minmax(0, 1fr) auto; gap: 10px;}
.spi-rd:not(#spi-rd-x) .atlas-search .search-box,.spi-rd:not(#spi-rd-x) .atlas-search .geo{min-height: 50px;}
.spi-rd:not(#spi-rd-x) .atlas-search .search-box input{height: 48px; font-size: 16px;}
.spi-rd:not(#spi-rd-x) .atlas-search .geo{padding: 0 22px;}
@media (max-width: 900px){.spi-rd:not(#spi-rd-x) .atlas-search{order: 0; padding: 12px;}}
.spi-rd:not(#spi-rd-x) .ch,.spi-rd:not(#spi-rd-x) .br{border-radius: var(--radius-s) !important;}
.spi-rd:not(#spi-rd-x) .mc-locate,.spi-rd:not(#spi-rd-x) .pv-close,.spi-rd:not(#spi-rd-x) .search-clear{border-radius: 50% !important;}
.spi-rd:not(#spi-rd-x) .ch{padding: 12px 14px 11px; align-content: center;}
.spi-rd:not(#spi-rd-x) .mc{display: block;}
.spi-rd:not(#spi-rd-x) .map-full{position: absolute; top: 16px; right: 16px; z-index: 700; display: grid; place-items: center; width: 44px; height: 44px; padding: 0 !important; border: 1px solid var(--line) !important; border-radius: 12px !important; background: var(--surface-2) !important; cursor: pointer; transition: border-color .2s ease, background-color .2s ease;}
.spi-rd:not(#spi-rd-x) .map-full img{display: block; margin: 0 !important;}
@media (hover: hover) and (pointer: fine){.spi-rd:not(#spi-rd-x) .map-full:hover{border-color: var(--text) !important;}}
.spi-rd:not(#spi-rd-x) .atlas-frame.is-full{position: fixed; inset: 0; z-index: 100000; height: 100vh !important; height: 100dvh !important; min-height: 0; max-width: none; margin: 0; border-radius: 0; border: 0; animation: spm-full-in .24s var(--ease-out);}
.spi-rd:not(#spi-rd-x) .atlas-frame.is-full .map-hint{display: none;}
@keyframes spm-full-in{ from { opacity: 0; transform: scale(.985); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce){.spi-rd:not(#spi-rd-x) .atlas-frame.is-full{animation: none;}}
.spi-rd:not(#spi-rd-x) .mc-locate,.spi-rd:not(#spi-rd-x) .pv-close,.spi-rd:not(#spi-rd-x) .search-clear{display: grid !important; place-items: center; padding: 0 !important; line-height: 1 !important; text-align: center;}
.spi-rd:not(#spi-rd-x) .mc-locate img,.spi-rd:not(#spi-rd-x) .search-clear img{display: block; margin: 0 !important;}
.spi-rd:not(#spi-rd-x) .rail-wrap{position: relative; min-width: 0;}
.spi-rd:not(#spi-rd-x) .rail-wrap.can-next > .brands,.spi-rd:not(#spi-rd-x) .rail-wrap.can-next > .types,.spi-rd:not(#spi-rd-x) .rail-wrap.can-next > .chapters{-webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 64px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 64px), transparent);}
.spi-rd:not(#spi-rd-x) .rail-wrap.can-prev > .brands,.spi-rd:not(#spi-rd-x) .rail-wrap.can-prev > .types,.spi-rd:not(#spi-rd-x) .rail-wrap.can-prev > .chapters{-webkit-mask-image: linear-gradient(90deg, transparent, #000 64px); mask-image: linear-gradient(90deg, transparent, #000 64px);}
.spi-rd:not(#spi-rd-x) .rail-wrap.can-prev.can-next > .brands,.spi-rd:not(#spi-rd-x) .rail-wrap.can-prev.can-next > .types,.spi-rd:not(#spi-rd-x) .rail-wrap.can-prev.can-next > .chapters{-webkit-mask-image: linear-gradient(90deg, transparent, #000 64px, #000 calc(100% - 64px), transparent); mask-image: linear-gradient(90deg, transparent, #000 64px, #000 calc(100% - 64px), transparent);}
.spi-rd:not(#spi-rd-x) .rail-btn{position: absolute; top: 50%; z-index: 2; display: grid; place-items: center; width: 34px; height: 34px; margin-top: -17px; padding: 0; border: 1px solid var(--line-strong); border-radius: 50%; background: rgba(20,20,20,.92); color: var(--text); cursor: pointer; opacity: 0; visibility: hidden; transform: scale(.9); transition: opacity .2s ease, transform .2s cubic-bezier(0.23, 1, 0.32, 1), visibility 0s linear .2s, border-color .2s ease;}
.spi-rd:not(#spi-rd-x) .rail-prev{left: 0;}
.spi-rd:not(#spi-rd-x) .rail-next{right: 0;}
.spi-rd:not(#spi-rd-x) .rail-wrap.can-prev > .rail-prev,.spi-rd:not(#spi-rd-x) .rail-wrap.can-next > .rail-next{opacity: 1; visibility: visible; transform: scale(1); transition-delay: 0s;}
@media (hover: hover) and (pointer: fine){.spi-rd:not(#spi-rd-x) .rail-btn:hover{border-color: var(--text);}}
.spi-rd:not(#spi-rd-x) .rail-btn:active{transform: scale(.94);}
@media (prefers-reduced-motion: reduce){.spi-rd:not(#spi-rd-x) .rail-btn{transition: opacity .2s ease, visibility 0s linear .2s; transform: none !important;}}
.spi-rd:not(#spi-rd-x) .mc.is-conf .mc-link{cursor: default;}
/* dentro la colonna WPBakery: niente gutter laterale doppio */
.spi-rd:not(#spi-rd-x).spi-atlas{padding:0}
.spi-rd:not(#spi-rd-x) .atlas-frame{margin-bottom:0}
