:root {
  --rpmx-bg: #0b1220;
  --rpmx-bg-soft: #f6f8fb;
  --rpmx-card: #ffffff;
  --rpmx-text: #162236;
  --rpmx-muted: #5f6f85;
  --rpmx-line: rgba(22,34,54,.12);
  --rpmx-brand: #ff5a3c;
  --rpmx-brand-dark: #de4529;
  --rpmx-success: #0a8a61;
  --rpmx-warning: #a86300;
  --rpmx-radius: 22px;
  --rpmx-shadow: 0 20px 50px rgba(11,18,32,.12);
}
body.rpmx-front-page { background:#fff; }
.rpmx-shell { width:min(1280px, calc(100% - 32px)); margin:0 auto; }
.rpmx-home { color:var(--rpmx-text); }
.rpmx-kicker { display:inline-block; margin-bottom:12px; font-size:12px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--rpmx-brand); }
.rpmx-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; border-radius:999px; padding:14px 22px; font-weight:700; line-height:1; transition:.2s ease; text-decoration:none !important; border:1px solid transparent; }
.rpmx-btn--solid { background:var(--rpmx-brand); color:#fff; }
.rpmx-btn--solid:hover { background:var(--rpmx-brand-dark); color:#fff; }
.rpmx-btn--ghost { background:#fff; color:var(--rpmx-text); border-color:var(--rpmx-line); }
.rpmx-btn--ghost:hover { border-color:rgba(22,34,54,.2); color:var(--rpmx-text); }
.rpmx-btn--inline { padding:0; background:transparent; color:var(--rpmx-brand); border:none; }
.rpmx-hero-map { position:relative; overflow:hidden; padding:32px 0 48px; background:radial-gradient(circle at top left, rgba(255,90,60,.08), transparent 38%), linear-gradient(180deg, #f9fbff 0%, #eef4fb 100%); }
.rpmx-hero-map__grid { display:grid; grid-template-columns:minmax(0, .92fr) minmax(0, 1.08fr); gap:24px; align-items:stretch; }
.rpmx-hero-map__content,
.rpmx-hero-map__map-wrap { min-height:760px; }
.rpmx-hero-map__content { display:flex; flex-direction:column; justify-content:center; padding:32px 0; }
.rpmx-hero-map__content h1 { font-size:clamp(2.3rem, 4vw, 4.6rem); line-height:1.02; letter-spacing:-.04em; margin:0 0 16px; color:#101b31; }
.rpmx-hero-map__content p { font-size:1.08rem; line-height:1.75; color:var(--rpmx-muted); max-width:58ch; margin:0 0 24px; }
.rpmx-search-box { display:flex; gap:10px; padding:10px; border-radius:999px; background:#fff; box-shadow:var(--rpmx-shadow); max-width:720px; margin-bottom:18px; }
.rpmx-search-box input { flex:1; border:none; outline:none; font-size:1rem; padding:8px 14px; background:transparent; color:var(--rpmx-text); }
.rpmx-chip-row { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:24px; }
.rpmx-chip { border:none; background:#fff; color:var(--rpmx-text); border-radius:999px; padding:12px 16px; font-weight:700; display:inline-flex; align-items:center; gap:8px; box-shadow:0 10px 30px rgba(11,18,32,.08); transition:.2s ease; }
.rpmx-chip:hover, .rpmx-chip.is-active { background:var(--rpmx-bg); color:#fff; transform:translateY(-1px); }
.rpmx-hero-map__meta { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; max-width:720px; }
.rpmx-stat-card { background:rgba(255,255,255,.78); backdrop-filter: blur(14px); border:1px solid rgba(255,255,255,.6); border-radius:20px; padding:18px 20px; box-shadow:0 15px 40px rgba(11,18,32,.08); }
.rpmx-stat-card strong { display:block; font-size:1.8rem; line-height:1; }
.rpmx-stat-card span { display:block; margin-top:8px; font-size:.92rem; color:var(--rpmx-muted); }
.rpmx-hero-map__map-wrap { position:relative; padding:18px; border-radius:32px; background:#fff; box-shadow:var(--rpmx-shadow); overflow:hidden; }
.rpmx-map-toolbar { position:absolute; top:18px; left:18px; right:18px; z-index:5; display:flex; flex-wrap:wrap; gap:8px; }
.rpmx-toolbar-btn { border:none; border-radius:999px; padding:10px 14px; background:rgba(255,255,255,.92); color:var(--rpmx-text); font-weight:700; box-shadow:0 10px 30px rgba(11,18,32,.08); }
.rpmx-toolbar-btn.is-active { background:var(--rpmx-bg); color:#fff; }
.rpmx-toolbar-btn.is-loading { opacity:.6; pointer-events:none; }
.rpmx-home-map-canvas { height:100%; min-height:724px; border-radius:24px; overflow:hidden; position:relative; z-index:1; }
.rpmx-home-list-panel { display:none; position:absolute; left:18px; right:18px; top:74px; bottom:18px; z-index:3; border-radius:24px; overflow:auto; background:#fff; padding:10px; box-shadow:0 18px 40px rgba(11,18,32,.08); }
.rpmx-home-list-panel .rpmx-list-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
body.rpmx-show-list-panel .rpmx-home-map-canvas,
body.rpmx-show-list-panel .rpmx-hero-cards { display:none; }
body.rpmx-show-list-panel .rpmx-home-list-panel { display:block; }
body.rpmx-show-list-panel .rpmx-home-map-canvas { opacity:.25; }
.rpmx-hero-cards { position:absolute; left:18px; right:18px; bottom:18px; z-index:4; display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; transition:.2s ease; max-width:72%; }
body.rpmx-show-list-panel .rpmx-hero-cards { display:none; }
.rpmx-home-section { padding:72px 0; }
.rpmx-home-section--soft { background:var(--rpmx-bg-soft); }
.rpmx-home-section--editorial { background:#fff; }
.rpmx-section-heading { margin-bottom:28px; max-width:740px; }
.rpmx-section-heading h2 { margin:0 0 12px; font-size:clamp(1.8rem, 3vw, 3rem); line-height:1.05; letter-spacing:-.03em; }
.rpmx-section-heading p { margin:0; color:var(--rpmx-muted); line-height:1.7; }
.rpmx-section-heading--split { display:flex; justify-content:space-between; align-items:end; gap:18px; max-width:none; }
.rpmx-card-grid { display:grid; gap:18px; }
.rpmx-card-grid--4 { grid-template-columns:repeat(4, minmax(0,1fr)); }
.rpmx-card-grid--2 { grid-template-columns:repeat(2, minmax(0,1fr)); }
.rpmx-card { background:var(--rpmx-card); border:1px solid var(--rpmx-line); border-radius:var(--rpmx-radius); overflow:hidden; box-shadow:0 14px 36px rgba(11,18,32,.06); min-width:0; }
.rpmx-card__media { display:block; position:relative; aspect-ratio:16/10; background:#eef2f8; }
.rpmx-card__media img { width:100%; height:100%; object-fit:cover; display:block; }
.rpmx-card__media-placeholder { position:absolute; inset:0; display:grid; place-items:center; color:#95a3b8; font-size:1.9rem; }
.rpmx-card__badges { position:absolute; left:12px; right:12px; top:12px; display:flex; flex-wrap:wrap; gap:8px; }
.rpmx-badge { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:8px 11px; font-size:.74rem; font-weight:800; text-transform:uppercase; letter-spacing:.06em; background:rgba(22,34,54,.82); color:#fff; }
.rpmx-badge--open { background:rgba(10,138,97,.9); }
.rpmx-badge--closed { background:rgba(131,29,29,.88); }
.rpmx-badge--unknown { background:rgba(95,111,133,.82); }
.rpmx-badge--live { background:rgba(255,90,60,.92); }
.rpmx-card__body { padding:18px; }
.rpmx-card__eyebrow { font-size:.76rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; color:var(--rpmx-brand); margin-bottom:8px; }
.rpmx-card__title { margin:0 0 8px; font-size:1.15rem; line-height:1.25; }
.rpmx-card__title a { color:var(--rpmx-text); text-decoration:none; }
.rpmx-card__title a:hover { color:var(--rpmx-brand); }
.rpmx-card__rating { display:flex; align-items:center; gap:6px; font-size:.95rem; margin-bottom:10px; color:var(--rpmx-muted); }
.rpmx-stars { color:#ffb547; display:inline-flex; gap:2px; }
.rpmx-card__summary { margin:0 0 14px; color:var(--rpmx-muted); line-height:1.65; min-height:3.2em; }
.rpmx-card__meta { display:flex; flex-direction:column; gap:8px; font-size:.92rem; color:var(--rpmx-muted); margin-bottom:14px; }
.rpmx-card__meta span { display:flex; gap:8px; align-items:flex-start; }
.rpmx-card__actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.rpmx-category-grid { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:18px; }
.rpmx-category-tile { display:flex; flex-direction:column; gap:8px; padding:24px; border-radius:24px; background:#fff; border:1px solid var(--rpmx-line); box-shadow:0 14px 36px rgba(11,18,32,.04); text-decoration:none !important; color:var(--rpmx-text); }
.rpmx-category-tile strong { font-size:1.04rem; }
.rpmx-category-tile small { color:var(--rpmx-muted); }
.rpmx-category-tile__icon { width:52px; height:52px; border-radius:16px; display:grid; place-items:center; background:#f4f7fb; font-size:1.45rem; }
.rpmx-icon-coffee::before { content:'☕'; }
.rpmx-icon-seafood::before { content:'🐟'; }
.rpmx-icon-pizza::before { content:'🍕'; }
.rpmx-icon-bar::before { content:'🍸'; }
.rpmx-icon-mexican::before { content:'🌮'; }
.rpmx-icon-vegan::before { content:'🌿'; }
.rpmx-icon-dessert::before { content:'🍰'; }
.rpmx-icon-restaurant::before { content:'🍽️'; }
.rpmx-editorial-grid { display:grid; grid-template-columns:minmax(0, 1.1fr) minmax(320px, .9fr); gap:26px; }
.rpmx-editorial-list { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:18px; }
.rpmx-editorial-card { border-radius:24px; overflow:hidden; border:1px solid var(--rpmx-line); background:#fff; box-shadow:0 14px 36px rgba(11,18,32,.04); }
.rpmx-editorial-card a { text-decoration:none !important; color:var(--rpmx-text); }
.rpmx-editorial-card img { width:100%; aspect-ratio:16/10; object-fit:cover; display:block; }
.rpmx-editorial-card__body { padding:18px; }
.rpmx-editorial-card__body strong { display:block; margin-bottom:10px; }
.rpmx-editorial-card__body p { margin:0; color:var(--rpmx-muted); line-height:1.6; }
.rpmx-business-cta { border-radius:28px; padding:32px; background:linear-gradient(180deg, #0f1a31, #13203b); color:#fff; box-shadow:var(--rpmx-shadow); align-self:start; }
.rpmx-business-cta h3 { font-size:2rem; line-height:1.05; margin:0 0 12px; color:#fff; }
.rpmx-business-cta p { color:rgba(255,255,255,.82); line-height:1.7; }
.rpmx-business-cta__checks { display:flex; flex-direction:column; gap:12px; margin:18px 0 24px; }
.rpmx-business-cta__checks span { display:flex; gap:10px; align-items:flex-start; color:#fff; }
.rpmx-map-popup { width:252px; }
.rpmx-map-popup img { width:100%; height:120px; object-fit:cover; border-radius:12px; margin-bottom:10px; }
.rpmx-map-popup__body { display:flex; flex-direction:column; gap:6px; }
.rpmx-map-popup__body strong { font-size:1rem; }
.rpmx-map-popup__body span, .rpmx-map-popup__body small { color:var(--rpmx-muted); }
.rpmx-map-popup__body small.is-open { color:var(--rpmx-success); }
.rpmx-map-popup__body small.is-closed { color:#8f2e2e; }
.rpmx-map-popup__actions { display:flex; gap:14px; margin-top:6px; }
.rpmx-map-popup__actions a { color:var(--rpmx-brand); font-weight:700; }

.rpmx-map-popup__ribbon { display:flex; gap:8px; overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:2px; margin-bottom:4px; scrollbar-width:none; }
.rpmx-map-popup__ribbon::-webkit-scrollbar { display:none; }
.rpmx-map-popup__chip { flex:0 0 auto; padding:6px 10px; border-radius:999px; background:#eef3fb; color:var(--rpmx-text); font-size:.72rem; font-weight:800; white-space:nowrap; }
.rpmx-map-popup__rating { display:flex; align-items:center; gap:6px; color:var(--rpmx-muted); font-size:.92rem; }

.rpmx-div-icon-wrap { background:none; border:none; }
.rpmx-map-pin { width:34px; height:34px; display:grid; place-items:center; border-radius:999px; background:#10203c; color:#fff; border:3px solid #fff; box-shadow:0 10px 20px rgba(11,18,32,.22); }
.rpmx-map-pin.is-live { background:var(--rpmx-brand); }
.rpmx-user-location span { display:block; width:18px; height:18px; border-radius:999px; background:#2563eb; border:3px solid rgba(255,255,255,.95); box-shadow:0 8px 20px rgba(37,99,235,.35); }
@media (max-width: 1199px) {
  .rpmx-hero-map__grid, .rpmx-editorial-grid { grid-template-columns:1fr; }
  .rpmx-hero-map__content, .rpmx-hero-map__map-wrap { min-height:auto; }
  .rpmx-card-grid--4, .rpmx-category-grid, .rpmx-editorial-list { grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .rpmx-shell { width:min(100% - 24px, 100%); }
  .rpmx-hero-map { padding:20px 0 36px; }
  .rpmx-hero-map__content { padding:8px 0 0; }
  .rpmx-hero-map__content h1 { font-size:2.2rem; }
  .rpmx-search-box { flex-direction:column; border-radius:24px; }
  .rpmx-search-box .rpmx-btn { width:100%; }
  .rpmx-hero-map__meta, .rpmx-card-grid--4, .rpmx-category-grid, .rpmx-card-grid--2, .rpmx-editorial-list { grid-template-columns:1fr; }
  .rpmx-hero-map__map-wrap { padding:12px; border-radius:24px; }
  .rpmx-hero-map__map-wrap { order:-1; }
  .rpmx-map-toolbar { position:static; margin-bottom:10px; }
  .rpmx-home-map-canvas { min-height:0; height:auto; aspect-ratio:4 / 5; }
  .rpmx-home-list-panel { left:12px; right:12px; top:114px; bottom:12px; min-height:0; height:auto; max-height:none; }
  .rpmx-home-list-panel .rpmx-list-grid { grid-template-columns:1fr; }
  .rpmx-hero-cards { position:static; margin-top:12px; display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; grid-template-columns:none; max-width:none; }
  .rpmx-hero-cards .rpmx-card { flex:0 0 84%; scroll-snap-align:start; }
  .rpmx-home-section { padding:56px 0; }
  .rpmx-section-heading--split { flex-direction:column; align-items:flex-start; }
}

.rpmx-card__summary,.rpmx-editorial-card__body p{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}
.rpmx-card__summary{-webkit-line-clamp:3}
.rpmx-editorial-card__body p{-webkit-line-clamp:4}
@media (max-width: 767px){
  .rpmx-hero-map__content p,.rpmx-section-heading p{display:none}
  .rpmx-card__summary{-webkit-line-clamp:2}
  .rpmx-card__meta span:first-child{display:none}
  .rpmx-editorial-list{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none}
}

.rpmx-business-cta__subtle{margin:12px 0 0;color:rgba(255,255,255,.82);font-size:.95rem}.rpmx-business-cta__subtle a{color:#fff;text-decoration:underline;font-weight:700}

.rpmx-map-popup__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.rpmx-map-popup__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border-radius:999px;font-size:.88rem;font-weight:800;text-decoration:none!important;border:1px solid transparent;line-height:1}.rpmx-map-popup__btn--solid{background:var(--rpmx-brand);color:#fff}.rpmx-map-popup__btn--ghost{background:#fff;color:var(--rpmx-text);border-color:var(--rpmx-line)}.rpmx-map-popup__btn--ghost:hover{border-color:rgba(22,34,54,.2)}.rpmx-map-popup__btn--solid:hover{background:var(--rpmx-brand-dark);color:#fff}


/* v2.6 popup + mobile rails */
.rpmx-map-popup{width:286px;max-width:286px;}
.leaflet-popup-content .rpmx-map-popup{margin:0;}
.rpmx-map-popup__body strong{font-size:1.1rem;line-height:1.15;}
.rpmx-map-popup__actions .rpmx-map-popup__btn{min-height:46px;white-space:nowrap;overflow:visible;}
.rpmx-map-popup__actions .rpmx-map-popup__btn--solid{color:#fff !important;background:var(--rpmx-brand);}
.rpmx-map-popup__actions .rpmx-map-popup__btn--ghost{color:var(--rpmx-text) !important;background:#fff;}
.rpmx-map-popup__actions .rpmx-map-popup__btn--solid:hover,.rpmx-map-popup__actions .rpmx-map-popup__btn--solid:focus{color:#fff !important;background:var(--rpmx-brand-dark);}
.rpmx-map-popup__actions .rpmx-map-popup__btn--ghost:hover,.rpmx-map-popup__actions .rpmx-map-popup__btn--ghost:focus{color:var(--rpmx-text) !important;background:#fff;}
@media (max-width: 767px){
  .rpmx-map-popup{width:min(286px, calc(100vw - 72px));max-width:calc(100vw - 72px);}
  .rpmx-category-grid,
  .rpmx-card-grid--4,
  .rpmx-editorial-list{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:4px;scrollbar-width:none;}
  .rpmx-category-grid::-webkit-scrollbar,
  .rpmx-card-grid--4::-webkit-scrollbar,
  .rpmx-editorial-list::-webkit-scrollbar{display:none;}
  .rpmx-category-grid > *,
  .rpmx-card-grid--4 > *,
  .rpmx-editorial-list > *{flex:0 0 82%;scroll-snap-align:start;}
  .rpmx-category-tile{min-height:180px;}
}

@media (min-width: 768px){
  .rpmx-hero-cards{display:none;}
}

.rpmx-list-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:10px;border:1px solid var(--rpmx-line);border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(11,18,32,.05);min-width:0;}
.rpmx-list-card__media{position:relative;display:block;min-height:120px;border-radius:16px;overflow:hidden;background:#eef2f8;}
.rpmx-list-card__media img{width:100%;height:100%;object-fit:cover;display:block;}
.rpmx-list-card__body{display:flex;flex-direction:column;gap:8px;min-width:0;}
.rpmx-list-card__chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;}
.rpmx-list-card__chips::-webkit-scrollbar{display:none;}
.rpmx-list-card__title{margin:0;font-size:1.05rem;line-height:1.15;}
.rpmx-list-card__title a{color:var(--rpmx-text);text-decoration:none;}
.rpmx-list-card__meta{display:flex;flex-wrap:wrap;gap:10px;font-size:.86rem;color:var(--rpmx-muted);}
.rpmx-list-card__rating{display:inline-flex;gap:4px;align-items:center;}
.rpmx-list-card__address{margin:0;color:var(--rpmx-muted);font-size:.92rem;line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;}
.rpmx-list-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;}
.rpmx-list-card__actions .rpmx-map-popup__btn{min-height:42px;font-size:.84rem;padding:10px 12px;}
@media (max-width: 767px){
  .rpmx-list-card{grid-template-columns:108px minmax(0,1fr);gap:10px;padding:10px;}
  .rpmx-list-card__media{min-height:108px;}
  .rpmx-list-card__title{font-size:1rem;}
  .rpmx-list-card__meta{gap:8px;}
  .rpmx-list-card__actions{grid-template-columns:1fr 1fr;}
  .rpmx-category-grid > *,
  .rpmx-card-grid--4 > *,
  .rpmx-editorial-list > *{flex:0 0 84%;scroll-snap-align:start;}
}


/* v3.1 map markers with logos/images */
.rpmx-map-pin{position:relative;width:40px;height:40px;border-radius:999px;background:#0b1736;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px rgba(8,15,37,.22);border:3px solid #fff;overflow:hidden;}
.rpmx-map-pin span{display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;}
.rpmx-map-pin--media .rpmx-map-pin__media, .rpmx-map-pin--media .rpmx-map-pin__media img{display:block;width:100%;height:100%;}
.rpmx-map-pin--media .rpmx-map-pin__media img{object-fit:cover;background:#fff;}
.rpmx-map-pin.is-live::after{content:'';position:absolute;right:-2px;top:-2px;width:12px;height:12px;border-radius:999px;background:#19b36b;border:2px solid #fff;}
.rpmx-div-icon-wrap{background:transparent;border:none;}

/* v4 additions */
.rpmx-brand-lockup{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.rpmx-brand-lockup img{width:52px;height:52px;border-radius:16px;object-fit:contain;background:#fff;padding:6px;box-shadow:0 10px 26px rgba(11,18,32,.08)}
.rpmx-brand-lockup strong{display:block;font-size:1rem;color:#101b31}
.rpmx-brand-lockup span{display:block;font-size:.9rem;color:var(--rpmx-muted)}
.rpmx-business-cta__subtle{margin-top:14px;font-size:.92rem;color:rgba(255,255,255,.8)}
.rpmx-business-cta__subtle a{color:#fff;text-decoration:underline}
.rpmx-category-tile__icon--media{overflow:hidden;padding:0;background:#f4f7fb}
.rpmx-category-tile__icon--media img{width:100%;height:100%;object-fit:cover;display:block;border-radius:16px}
.rpmx-card-grid--rail,.rpmx-category-grid--rail{display:flex;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:6px;scrollbar-width:none}
.rpmx-card-grid--rail::-webkit-scrollbar,.rpmx-category-grid--rail::-webkit-scrollbar{display:none}
.rpmx-card-grid--rail > [data-rpmx-rail-slide]{flex:0 0 min(310px,80vw);scroll-snap-align:start}
.rpmx-category-grid--rail .rpmx-category-tile{flex:0 0 min(250px,72vw);scroll-snap-align:start}
.rpmx-home-section--results .rpmx-card-grid--taxonomy-results{display:grid}
.rpmx-list-card{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;background:#fff;border:1px solid var(--rpmx-line);border-radius:22px;padding:12px;box-shadow:0 14px 36px rgba(11,18,32,.06);min-width:0}
.rpmx-list-card__media{display:block;position:relative;aspect-ratio:1;border-radius:18px;overflow:hidden;background:#eef2f8}
.rpmx-list-card__media img,.rpmx-card__logo-media img{width:100%;height:100%;object-fit:cover;display:block}
.rpmx-card__logo-media{width:100%;height:100%;display:grid;place-items:center;padding:16px;background:#fff}
.rpmx-list-card__body{min-width:0;display:flex;flex-direction:column;gap:8px}
.rpmx-list-card__title{font-size:1.1rem;line-height:1.2;margin:0}.rpmx-list-card__title a{text-decoration:none;color:var(--rpmx-text)}
.rpmx-list-card__meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--rpmx-muted);font-size:.92rem}.rpmx-list-card__rating{display:inline-flex;gap:4px;align-items:center}
.rpmx-list-card__address{margin:0;color:var(--rpmx-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rpmx-list-card__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}
.rpmx-map-popup__ribbon{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.rpmx-map-popup__chip{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:#eff4fb;color:#44536a;font-size:.8rem;font-weight:700}
.rpmx-map-popup__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.rpmx-map-popup__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:12px 16px;font-weight:800;text-decoration:none!important;border:1px solid rgba(22,34,54,.1)}
.rpmx-map-popup__btn--solid{background:var(--rpmx-brand)!important;color:#fff!important;border-color:var(--rpmx-brand)!important}
.rpmx-map-popup__btn--ghost{background:#fff;color:var(--rpmx-text);border-color:rgba(22,34,54,.12)}
.rpmx-map-popup__btn--ghost:hover{color:var(--rpmx-text)}
.rpmx-map-popup__rating{display:flex;gap:6px;align-items:center;margin-top:8px;color:var(--rpmx-muted)}
.rpmx-map-popup__body strong{display:block;font-size:1.3rem;line-height:1.15;margin:0 0 6px;color:var(--rpmx-text)}
.rpmx-map-popup__body small{display:block;margin-bottom:8px;font-weight:800}.rpmx-map-popup__body small.is-open{color:var(--rpmx-success)}.rpmx-map-popup__body small.is-closed{color:#a43535}
.rpmx-map-popup__body span{display:block;color:var(--rpmx-muted);line-height:1.55}
@media (min-width: 768px){.rpmx-card-grid--rail,.rpmx-category-grid--rail{overflow:visible;display:grid;scroll-snap-type:none}.rpmx-card-grid--rail{grid-template-columns:repeat(4,minmax(0,1fr))}.rpmx-card-grid--rail > [data-rpmx-rail-slide]{flex:initial}.rpmx-category-grid--rail{grid-template-columns:repeat(4,minmax(0,1fr))}.rpmx-category-grid--rail .rpmx-category-tile{flex:initial}}
@media (max-width: 767px){.rpmx-brand-lockup{margin-bottom:14px}.rpmx-brand-lockup img{width:42px;height:42px;border-radius:12px}.rpmx-hero-map__content,.rpmx-hero-map__map-wrap{min-height:auto}.rpmx-home-list-panel .rpmx-list-grid{display:flex;flex-direction:column;gap:12px}.rpmx-list-card{grid-template-columns:108px minmax(0,1fr)}.rpmx-map-popup{width:272px}.rpmx-map-popup__btn{flex:1}.rpmx-hero-cards{display:none!important}.rpmx-home-section{padding:54px 0}}


/* v4.1 category tiles revert to neutral icons */
.rpmx-category-tile__icon {
  display:inline-flex; align-items:center; justify-content:center;
  width:56px; height:56px; border-radius:16px; background:#f6f8fb;
  color:#0d2240; overflow:hidden;
}
.rpmx-category-tile__icon img { display:none; }

/* Stable selectors for AdSense excluded areas live on these wrappers */
.rpmx-no-auto-ads, .rpmx-auto-ads-excluded {}


/* v3.3 cohesive home map shell + popup */
.rpmx-hero-map__map-wrap{background:linear-gradient(180deg,#ffffff 0%,#f5f8fd 100%);border:1px solid rgba(16,27,49,.06);box-shadow:0 28px 70px rgba(11,18,32,.10)}
.rpmx-home-map-canvas{border:1px solid rgba(16,27,49,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}
.rpmx-map-toolbar .rpmx-btn{background:rgba(255,255,255,.92);border-color:rgba(16,27,49,.08);box-shadow:0 10px 30px rgba(11,18,32,.08);backdrop-filter:blur(10px)}
.rpmx-map-toolbar .rpmx-btn.is-active,.rpmx-map-toolbar .rpmx-btn[aria-pressed="true"]{background:#101b31;color:#fff;border-color:#101b31}
.rpmx-map-toolbar .rpmx-btn.is-active:hover,.rpmx-map-toolbar .rpmx-btn[aria-pressed="true"]:hover{color:#fff}
.rpmx-leaflet-popup .leaflet-popup-content-wrapper,.rpmx-leaflet-popup .leaflet-popup-tip{background:transparent;box-shadow:none}
.rpmx-leaflet-popup .leaflet-popup-content{margin:0!important;line-height:normal}
.rpmx-leaflet-popup .leaflet-popup-tip-container{display:none}
.rpmx-leaflet-popup .leaflet-popup-close-button{top:-10px;right:-10px;width:30px;height:30px;border-radius:999px;background:#fff!important;border:1px solid rgba(16,27,49,.08);box-shadow:0 12px 28px rgba(11,18,32,.14);color:#ef5a45!important;font-size:20px;line-height:28px;padding:0;text-align:center}
.rpmx-map-popup{width:300px;max-width:300px;background:#fff;border:1px solid rgba(16,27,49,.08);border-radius:24px;overflow:hidden;box-shadow:0 26px 60px rgba(11,18,32,.18)}
.rpmx-map-popup__media{display:block;aspect-ratio:16/9;background:#eef2f8;text-decoration:none;overflow:hidden}
.rpmx-map-popup__media img{width:100%;height:100%;display:block;object-fit:cover}
.rpmx-map-popup__logo,.rpmx-map-popup__placeholder{width:100%;height:100%;display:grid;place-items:center;background:#fff}
.rpmx-map-popup__logo img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;padding:14px}
.rpmx-map-popup__placeholder{color:#91a0b5;font-size:1.9rem}
.rpmx-map-popup__body{display:flex;flex-direction:column;gap:12px;padding:16px 16px 18px}
.rpmx-map-popup__ribbon{display:flex;flex-wrap:wrap;gap:8px;margin:0}
.rpmx-map-popup__chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#eef3fb;color:#51627b;font-size:.82rem;font-weight:800}
.rpmx-map-popup__title{margin:0;font-size:1.45rem;line-height:1.08;letter-spacing:-.03em}
.rpmx-map-popup__title a{color:var(--rpmx-text);text-decoration:none}
.rpmx-map-popup__title a:hover{color:var(--rpmx-brand)}
.rpmx-map-popup__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.rpmx-map-popup__status{display:flex;flex-wrap:wrap;gap:8px}
.rpmx-map-popup__status .rpmx-badge{padding:8px 11px;font-size:.7rem}
.rpmx-map-popup__rating{display:inline-flex;align-items:center;gap:6px;color:var(--rpmx-muted);font-size:.98rem}
.rpmx-map-popup__rating strong{font-size:1.15rem;color:var(--rpmx-text)}
.rpmx-map-popup__address{margin:0;color:var(--rpmx-muted);font-size:.97rem;line-height:1.58;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rpmx-map-popup__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:2px}
.rpmx-map-popup__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 14px;border-radius:999px;font-size:.92rem;font-weight:800;text-decoration:none!important;border:1px solid rgba(22,34,54,.1);line-height:1;white-space:nowrap}
.rpmx-map-popup__btn--solid{background:var(--rpmx-brand)!important;color:#fff!important;border-color:var(--rpmx-brand)!important}
.rpmx-map-popup__btn--solid:hover,.rpmx-map-popup__btn--solid:focus{background:var(--rpmx-brand-dark)!important;color:#fff!important}
.rpmx-map-popup__btn--ghost{background:#fff!important;color:var(--rpmx-text)!important;border-color:rgba(22,34,54,.12)!important}
.rpmx-map-popup__btn--ghost:hover,.rpmx-map-popup__btn--ghost:focus{background:#fff!important;color:var(--rpmx-text)!important;border-color:rgba(22,34,54,.2)!important}
@media (max-width: 767px){
  .rpmx-hero-map__map-wrap{padding:10px;border-radius:24px}
  .rpmx-map-toolbar .rpmx-btn{padding:13px 18px}
  .rpmx-map-popup{width:min(300px,calc(100vw - 44px));max-width:calc(100vw - 44px)}
  .rpmx-leaflet-popup .leaflet-popup-close-button{top:-8px;right:-8px}
}


/* v4.2 popup gallery + minimalist map refinements */
.rpmx-home-map-canvas .leaflet-tile-pane{
  filter:saturate(.76) brightness(1.05) contrast(.92);
}
.rpmx-home-map-canvas .leaflet-control-zoom{
  border:none!important;
  box-shadow:0 14px 30px rgba(11,18,32,.10)!important;
  border-radius:16px!important;
  overflow:hidden;
}
.rpmx-home-map-canvas .leaflet-control-zoom a{
  width:38px;
  height:38px;
  line-height:38px;
  color:#12203a;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid rgba(16,27,49,.08)!important;
}
.rpmx-home-map-canvas .leaflet-control-attribution{
  background:rgba(255,255,255,.78)!important;
  backdrop-filter:blur(10px);
  border-radius:999px 0 0 0;
  padding:4px 8px!important;
  color:#708099;
  font-size:10px;
}
.rpmx-home-map-canvas .marker-cluster-small,
.rpmx-home-map-canvas .marker-cluster-medium,
.rpmx-home-map-canvas .marker-cluster-large{
  background:rgba(16,27,49,.10)!important;
}
.rpmx-home-map-canvas .marker-cluster-small div,
.rpmx-home-map-canvas .marker-cluster-medium div,
.rpmx-home-map-canvas .marker-cluster-large div{
  background:#fff!important;
  color:#12203a!important;
  border:1px solid rgba(16,27,49,.08);
  box-shadow:0 12px 28px rgba(11,18,32,.12);
  font-weight:800;
}
.rpmx-map-pin{
  width:38px;
  height:38px;
  border-width:2px;
  box-shadow:0 12px 22px rgba(8,15,37,.14);
}
.rpmx-map-pin.is-live::after{
  width:10px;
  height:10px;
  right:0;
  top:0;
}
.rpmx-map-popup{
  width:324px;
  max-width:324px;
  border-radius:26px;
  border:1px solid rgba(16,27,49,.07);
  box-shadow:0 28px 64px rgba(11,18,32,.16);
}
.rpmx-map-popup__media{
  position:relative;
  aspect-ratio:16 / 10;
  background:linear-gradient(180deg,#f5f7fb 0%,#eef3fa 100%);
  overflow:hidden;
}
.rpmx-map-popup__gallery,
.rpmx-map-popup__viewport,
.rpmx-map-popup__track{height:100%;}
.rpmx-map-popup__gallery{display:block; position:relative; color:inherit; text-decoration:none; cursor:pointer;}
.rpmx-map-popup__viewport{overflow:hidden; padding:14px 0 18px;}
.rpmx-map-popup__track{display:flex; transition:transform .46s ease; will-change:transform;}
.rpmx-map-popup__page{flex:0 0 112%; min-width:112%; margin-left:-6%; height:100%; display:grid; grid-template-columns:.82fr 1.08fr .82fr; gap:10px; align-items:stretch;}
.rpmx-map-popup__thumb{display:block; overflow:hidden; border-radius:16px; background:#edf2f8; box-shadow:0 10px 24px rgba(11,18,32,.08);}
.rpmx-map-popup__thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.rpmx-map-popup__thumb--1,.rpmx-map-popup__thumb--2,.rpmx-map-popup__thumb--3{aspect-ratio:1/1.02;}
.rpmx-map-popup__thumb--2{transform:translateY(0);}
.rpmx-map-popup__gallery-ui{position:absolute; left:12px; right:12px; bottom:10px; display:flex; align-items:center; justify-content:center; pointer-events:none;}
.rpmx-map-popup__gallery-dots{display:inline-flex; align-items:center; justify-content:center; gap:6px; padding:7px 10px; border-radius:999px; background:rgba(16,27,49,.34); backdrop-filter:blur(12px);}
.rpmx-map-popup__gallery-dot{width:7px; height:7px; border-radius:999px; background:rgba(255,255,255,.42);}
.rpmx-map-popup__gallery-dot.is-active{width:16px; background:#fff;}
.rpmx-map-popup__body{
  gap:10px;
  padding:14px 16px 18px;
}
.rpmx-map-popup__ribbon{
  display:flex;
  flex-wrap:nowrap;
  gap:8px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  padding:0 0 2px;
  margin:0;
}
.rpmx-map-popup__ribbon::-webkit-scrollbar{display:none;}
.rpmx-map-popup__chip{
  flex:0 0 auto;
  white-space:nowrap;
  padding:8px 12px;
  font-size:.8rem;
  color:#5b6b84;
  background:#eef3fb;
}
.rpmx-map-popup__title{
  font-size:1.25rem;
  line-height:1.12;
}
.rpmx-map-popup__meta{
  align-items:center;
}
.rpmx-map-popup__status{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.rpmx-map-popup__status .rpmx-badge,
.rpmx-map-popup__status .rpmx-badge:hover,
.rpmx-map-popup__status .rpmx-badge:focus{
  color:#fff!important;
  text-shadow:none;
}
.rpmx-map-popup__status .rpmx-badge--closed{
  background:#a63b3a!important;
}
.rpmx-map-popup__status .rpmx-badge--open{
  background:#12805e!important;
}
.rpmx-map-popup__status .rpmx-badge--live{
  background:#ff5a3c!important;
}
.rpmx-map-popup__rating{
  margin-top:0;
  font-size:.96rem;
}
.rpmx-map-popup__rating strong{
  font-size:1.05rem;
}
.rpmx-map-popup__address{
  font-size:.98rem;
  line-height:1.5;
  -webkit-line-clamp:2;
}
@media (max-width: 767px){
  .rpmx-map-popup{
    width:min(320px,calc(100vw - 42px));
    max-width:calc(100vw - 42px);
  }
  .rpmx-map-popup__gallery-ui{
    left:10px;
    right:10px;
    bottom:10px;
  }
  .rpmx-map-popup__gallery-nav{
    width:32px;
    height:32px;
  }
}


/* v4.4 mobile popup compact fit */
.rpmx-leaflet-popup--mobile .leaflet-popup-content-wrapper{
  max-width:calc(100vw - 64px);
}

@media (max-width: 767px){
  .rpmx-hero-map__map-wrap{
    padding:8px;
    border-radius:22px;
  }

  .rpmx-home-map-canvas{
    min-height:420px;
    border-radius:20px;
  }

  .rpmx-map-toolbar{
    top:10px;
    left:10px;
    right:10px;
    gap:6px;
  }

  .rpmx-map-toolbar .rpmx-btn,
  .rpmx-toolbar-btn{
    padding:11px 14px;
    font-size:.92rem;
  }

  .rpmx-leaflet-popup--mobile{
    margin-bottom:4px;
  }

  .rpmx-leaflet-popup--mobile .leaflet-popup-content{
    width:auto!important;
    margin:0!important;
  }

  .rpmx-leaflet-popup--mobile .leaflet-popup-close-button{
    top:-8px;
    right:-8px;
    width:28px;
    height:28px;
    line-height:26px;
    font-size:18px;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup{
    width:min(252px, calc(100vw - 64px));
    max-width:calc(100vw - 64px);
    border-radius:22px;
    box-shadow:0 18px 42px rgba(11,18,32,.16);
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__media{
    aspect-ratio:16 / 8.4;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__body{
    gap:9px;
    padding:12px 12px 14px;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__chip{
    padding:7px 10px;
    font-size:.74rem;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__title{
    font-size:1.08rem;
    line-height:1.14;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__meta{
    gap:8px;
    align-items:center;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__status .rpmx-badge{
    padding:7px 10px;
    font-size:.66rem;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__rating{
    font-size:.9rem;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__rating strong{
    font-size:1rem;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__address{
    font-size:.9rem;
    line-height:1.42;
    -webkit-line-clamp:2;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__actions{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__btn{
    min-height:42px;
    padding:10px 10px;
    font-size:.88rem;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__gallery-ui{
    left:8px;
    right:8px;
    bottom:8px;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__gallery-nav{
    width:28px;
    height:28px;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__gallery-dots{
    gap:5px;
    padding:7px 10px;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__gallery-dot{
    width:6px;
    height:6px;
  }

  .rpmx-leaflet-popup--mobile .rpmx-map-popup__gallery-dot.is-active{
    width:16px;
  }
}


/* v4.5 mobile popup compaction + map filter rail */
.rpmx-map-filter-rail{display:none;}
.rpmx-map-popup__media-badges{
  position:absolute;
  top:10px;
  left:10px;
  right:10px;
  z-index:4;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  pointer-events:none;
}
.rpmx-map-popup__media-badges .rpmx-badge,
.rpmx-map-popup__media-badges .rpmx-badge:hover,
.rpmx-map-popup__media-badges .rpmx-badge:focus{
  color:#fff!important;
  text-shadow:none;
  box-shadow:0 10px 22px rgba(11,18,32,.14);
}
.rpmx-map-popup__headline{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:start;
}
.rpmx-map-popup__headline .rpmx-map-popup__title{margin:0;}
.rpmx-map-popup__headline .rpmx-map-popup__rating{
  margin:2px 0 0;
  justify-self:end;
  white-space:nowrap;
}
.rpmx-map-popup__body{padding-top:12px;}
.rpmx-map-popup__meta,
.rpmx-map-popup__status{display:none;}

@media (max-width: 767px){
  .rpmx-hero-map__content .rpmx-chip-row{display:none;}
  .rpmx-map-filter-rail{
    display:block;
    margin-top:12px;
    padding-top:4px;
  }
  .rpmx-map-filter-rail__label{
    display:block;
    margin:0 0 10px;
    color:#5d6b82;
    font-size:.86rem;
    font-weight:700;
  }
  .rpmx-map-filter-rail__track{
    display:flex;
    gap:10px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    padding:2px 2px 4px;
    scroll-snap-type:x proximity;
  }
  .rpmx-map-filter-rail__track::-webkit-scrollbar{display:none;}
  .rpmx-map-filter-rail .rpmx-chip{
    flex:0 0 auto;
    white-space:nowrap;
    scroll-snap-align:start;
    box-shadow:0 8px 22px rgba(11,18,32,.06);
  }
  .rpmx-leaflet-popup--mobile .leaflet-popup-content-wrapper{
    max-width:calc(100vw - 76px);
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup{
    width:min(236px, calc(100vw - 76px));
    max-width:calc(100vw - 76px);
    border-radius:20px;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__media{
    aspect-ratio:16 / 7.2;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__media-badges{
    top:8px;
    left:8px;
    right:8px;
    gap:6px;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__media-badges .rpmx-badge{
    padding:6px 9px;
    font-size:.62rem;
    letter-spacing:.05em;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__body{
    gap:8px;
    padding:10px 11px 12px;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__ribbon{
    gap:6px;
    margin-bottom:0;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__chip{
    padding:6px 9px;
    font-size:.7rem;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__headline{
    gap:8px;
    align-items:center;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__title{
    font-size:1rem;
    line-height:1.08;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__rating{
    font-size:.84rem;
    gap:4px;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__rating strong{
    font-size:.95rem;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__address{
    font-size:.84rem;
    line-height:1.35;
    -webkit-line-clamp:2;
    margin:0;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__actions{
    gap:7px;
    margin-top:4px;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__btn{
    min-height:40px;
    padding:9px 10px;
    font-size:.84rem;
  }
}

/* v5.0 mobile list panel + location modal */
.rpmx-hero-map__map-wrap{
  --rpmx-list-panel-top: 74px;
}
body.rpmx-show-list-panel .rpmx-home-map-canvas{
  display:block !important;
  opacity:0 !important;
  visibility:hidden;
  pointer-events:none;
}
body.rpmx-show-list-panel .rpmx-hero-cards{
  display:none !important;
}
body.rpmx-show-list-panel .rpmx-home-list-panel{
  display:block !important;
}
.rpmx-home-list-panel{
  top:var(--rpmx-list-panel-top,74px) !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:24px;
}
.rpmx-home-list-panel__inner{
  height:100%;
  display:flex;
  flex-direction:column;
  gap:12px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(12px);
  border:1px solid rgba(16,27,49,.08);
  box-shadow:0 18px 40px rgba(11,18,32,.08);
  border-radius:24px;
  padding:12px;
}
.rpmx-home-list-panel__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--rpmx-text);
  padding:4px 4px 0;
}
.rpmx-home-list-panel__head strong{
  font-size:1rem;
  line-height:1.2;
}
.rpmx-home-list-panel__head span{
  font-size:.86rem;
  color:var(--rpmx-muted);
  white-space:nowrap;
}
.rpmx-list-rail-wrap{
  flex:1;
  min-height:0;
}
.rpmx-list-rail{
  height:100%;
  display:flex;
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:2px 2px 8px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  scroll-snap-type:x proximity;
  overscroll-behavior-x:contain;
}
.rpmx-list-rail::-webkit-scrollbar{display:none;}
.rpmx-list-card--rail{
  flex:0 0 min(360px,78%);
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(16,27,49,.08);
  overflow:hidden;
  box-shadow:0 14px 36px rgba(11,18,32,.06);
  scroll-snap-align:start;
}
.rpmx-list-card--rail .rpmx-list-card__media{
  display:block;
  position:relative;
  aspect-ratio:16/10;
  background:#eef2f8;
  border-radius:0;
}
.rpmx-list-card--rail .rpmx-list-card__media > img,
.rpmx-list-card--rail .rpmx-list-card__gallery-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.rpmx-list-card__gallery,
.rpmx-list-card__gallery-track,
.rpmx-list-card__gallery-slide{
  height:100%;
}
.rpmx-list-card__gallery{position:relative;overflow:hidden;}
.rpmx-list-card__gallery-track{
  display:flex;
  transition:transform .26s ease;
}
.rpmx-list-card__gallery-slide{min-width:100%;}
.rpmx-list-card__gallery-ui,
.rpmx-list-card__gallery-badges{
  position:absolute;
  left:10px;
  right:10px;
  z-index:3;
}
.rpmx-list-card__gallery-badges{
  top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  pointer-events:none;
}
.rpmx-list-card__gallery-ui{
  bottom:10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.rpmx-list-card__gallery-nav{
  width:30px;
  height:30px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,.95);
  color:#101b31;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 22px rgba(11,18,32,.14);
}
.rpmx-list-card__gallery-dots{display:flex;gap:6px;align-items:center;justify-content:center;}
.rpmx-list-card__gallery-dot{
  width:7px;
  height:7px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,.55);
}
.rpmx-list-card__gallery-dot.is-active{
  width:18px;
  background:#fff;
}
.rpmx-list-card--rail .rpmx-list-card__body{
  display:flex;
  flex-direction:column;
  gap:10px;
  flex:1;
  min-height:0;
  padding:14px 14px 16px;
}
.rpmx-list-card__chips{
  display:flex;
  gap:8px;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.rpmx-list-card__chips::-webkit-scrollbar{display:none;}
.rpmx-list-card__topline{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:start;
}
.rpmx-list-card--rail .rpmx-list-card__title{
  font-size:1.2rem;
  line-height:1.12;
  margin:0;
}
.rpmx-list-card--rail .rpmx-list-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  color:var(--rpmx-muted);
  font-size:.92rem;
}
.rpmx-list-card--rail .rpmx-list-card__address{
  margin:0;
  color:var(--rpmx-muted);
  line-height:1.55;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.rpmx-list-card--rail .rpmx-list-card__actions{
  margin-top:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.rpmx-list-card--rail .rpmx-list-card__actions .rpmx-map-popup__btn{min-height:46px;}

.rpmx-location-modal[hidden]{display:none !important;}
.rpmx-location-modal{
  position:absolute;
  inset:0;
  z-index:10;
}
.rpmx-location-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(9,15,28,.34);
  backdrop-filter:blur(4px);
}
.rpmx-location-modal__dialog{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  margin-left:auto;
  width:min(420px, calc(100% - 36px));
  background:#fff;
  border:1px solid rgba(16,27,49,.08);
  box-shadow:0 28px 70px rgba(11,18,32,.18);
  border-radius:24px;
  padding:20px;
}
.rpmx-location-modal__close{
  position:absolute;
  top:12px;
  right:12px;
  width:32px;
  height:32px;
  border:none;
  border-radius:999px;
  background:#f3f6fb;
  color:#101b31;
  font-size:20px;
  line-height:1;
}
.rpmx-location-modal__dialog h3{
  margin:0 0 10px;
  font-size:1.45rem;
  line-height:1.05;
  letter-spacing:-.03em;
}
.rpmx-location-modal__dialog p{
  margin:0;
  color:var(--rpmx-muted);
  line-height:1.65;
}
.rpmx-location-modal__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:18px;
}
body.rpmx-location-modal-open{overflow:hidden;}

@media (max-width: 767px){
  .rpmx-home-list-panel{
    left:0 !important;
    right:0 !important;
    bottom:0 !important;
    top:var(--rpmx-list-panel-top,140px) !important;
  }
  .rpmx-home-list-panel__inner{
    border-radius:20px;
    padding:10px;
  }
  .rpmx-home-list-panel__head{padding-inline:2px;}
  .rpmx-list-card--rail{
    flex-basis:min(86%, 320px);
  }
  .rpmx-list-card--rail .rpmx-list-card__title{
    font-size:1.08rem;
  }
  .rpmx-list-card--rail .rpmx-list-card__actions{
    grid-template-columns:1fr 1fr;
  }
  .rpmx-location-modal__dialog{
    left:12px;
    right:12px;
    bottom:12px;
    width:auto;
    padding:18px;
    border-radius:20px;
  }
  .rpmx-location-modal__actions{
    grid-template-columns:1fr;
  }
}


/* v6.0 mobile toolbar/search + marquee list */
.rpmx-map-mobile-brand{display:none;align-items:center;gap:12px;padding:4px 2px 12px;}
.rpmx-map-mobile-brand img{width:42px;height:42px;border-radius:12px;object-fit:cover;box-shadow:0 10px 24px rgba(11,18,32,.08);}
.rpmx-map-mobile-brand strong{display:block;font-size:1rem;line-height:1.1;color:var(--rpmx-text);}
.rpmx-map-mobile-brand span{display:block;font-size:.86rem;line-height:1.35;color:var(--rpmx-muted);}
.rpmx-toolbar-btn--icon{width:50px;min-width:50px;height:50px;padding:0;display:inline-flex;align-items:center;justify-content:center;}
.rpmx-toolbar-btn--icon i{font-size:1rem;}
.rpmx-map-mobile-search{display:none;}
.rpmx-list-marquee-stack{flex:1;min-height:0;display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:12px;overflow:hidden;}
.rpmx-list-marquee{position:relative;overflow:hidden;border-radius:22px;min-height:0;}
.rpmx-list-marquee__track{display:flex;gap:14px;width:max-content;min-width:max-content;animation:rpmxMarqueeLeft var(--rpmx-marquee-duration,36s) linear infinite;will-change:transform;padding:2px;}
.rpmx-list-marquee.is-reverse .rpmx-list-marquee__track{animation-name:rpmxMarqueeRight;}
.rpmx-list-marquee.is-paused .rpmx-list-marquee__track{animation-play-state:paused;}
@keyframes rpmxMarqueeLeft{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% - 7px),0,0)}}
@keyframes rpmxMarqueeRight{from{transform:translate3d(calc(-50% - 7px),0,0)}to{transform:translate3d(0,0,0)}}
.rpmx-home-list-panel__inner--marquee{overflow:hidden;}
.rpmx-home-list-panel__inner--marquee .rpmx-home-list-panel__head{padding-bottom:2px;}
.rpmx-list-card--rail{flex:0 0 320px;height:100%;}
.rpmx-list-card--rail .rpmx-list-card__gallery-nav,.rpmx-list-card--rail .rpmx-list-card__gallery-dot{pointer-events:auto;}
@media (max-width: 767px){
  .rpmx-hero-map__content .rpmx-brand-lockup{display:none;}
  .rpmx-hero-map__content .rpmx-search-box{display:none;}
  .rpmx-map-mobile-brand{display:flex;}
  .rpmx-map-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;}
  .rpmx-map-toolbar .rpmx-toolbar-btn[data-panel]{padding:12px 18px;}
  .rpmx-map-toolbar .rpmx-toolbar-btn--icon{margin-left:auto;}
  .rpmx-map-filter-rail{margin-top:12px;}
  .rpmx-map-mobile-search{display:block;margin-top:10px;}
  .rpmx-map-mobile-search__inner{display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border:1px solid rgba(16,27,49,.08);border-radius:20px;box-shadow:0 12px 30px rgba(11,18,32,.06);}
  .rpmx-map-mobile-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--rpmx-text);font-size:.96rem;padding:10px 12px;}
  .rpmx-map-mobile-search .rpmx-btn{padding:12px 16px;min-width:126px;}
  .rpmx-home-list-panel__head{padding-inline:4px;}
  .rpmx-list-marquee-stack{grid-template-rows:1fr;gap:0;}
  .rpmx-list-marquee{border-radius:18px;}
  .rpmx-list-card--rail{flex-basis:280px;}
}
@media (min-width: 768px){
  .rpmx-toolbar-btn--icon{margin-left:auto;}
}


/* v6.1 list panel fit + touch-first galleries + desktop popular rail */
.rpmx-map-popup__gallery-ui,
.rpmx-list-card__gallery-ui{
  justify-content:center;
}
.rpmx-map-popup__gallery-nav,
.rpmx-list-card__gallery-nav{
  display:none !important;
}
.rpmx-map-popup__gallery-dots,
.rpmx-list-card__gallery-dots{
  margin-inline:auto;
}
#rpmx-home-block-popular .rpmx-card-grid--desktop-rail{
  display:flex;
  gap:18px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  padding-bottom:8px;
  scrollbar-width:none;
}
#rpmx-home-block-popular .rpmx-card-grid--desktop-rail::-webkit-scrollbar{display:none;}
#rpmx-home-block-popular .rpmx-card-grid--desktop-rail > [data-rpmx-rail-slide]{
  flex:0 0 300px;
  scroll-snap-align:start;
}
@media (min-width: 768px){
  #rpmx-home-block-popular .rpmx-card-grid--desktop-rail{
    grid-template-columns:none !important;
  }
}
@media (max-width: 767px){
  body.rpmx-show-list-panel .rpmx-home-map-canvas,
  body.rpmx-show-list-panel .rpmx-map-filter-rail,
  body.rpmx-show-list-panel .rpmx-map-mobile-search,
  body.rpmx-show-list-panel .rpmx-hero-cards{
    display:none !important;
  }
  .rpmx-home-list-panel{
    top:var(--rpmx-list-panel-top,120px) !important;
    height:calc(100% - var(--rpmx-list-panel-top,120px)) !important;
    bottom:auto !important;
  }
  .rpmx-home-list-panel__inner{
    height:100%;
  }
  .rpmx-list-marquee,
  .rpmx-list-marquee__track{
    height:100%;
    align-items:stretch;
  }
  .rpmx-list-card--rail{
    height:100%;
    min-height:0;
    flex-basis:min(84vw, 300px);
  }
  .rpmx-list-card--rail .rpmx-list-card__media{
    aspect-ratio:16/9;
  }
  .rpmx-list-card--rail .rpmx-list-card__body{
    gap:8px;
    padding:12px 12px 14px;
  }
  .rpmx-list-card--rail .rpmx-list-card__address{
    -webkit-line-clamp:2;
  }
  .rpmx-list-card--rail .rpmx-list-card__actions .rpmx-map-popup__btn{
    padding-inline:12px;
    font-size:.88rem;
  }
}


/* v7 map-first home */
.rpmx-map-toolbar--map-only{left:18px;right:18px;justify-content:flex-end;pointer-events:none;}
.rpmx-map-toolbar--map-only .rpmx-toolbar-btn{pointer-events:auto;}
.rpmx-home-list-panel,.rpmx-hero-cards{display:none !important;}
.rpmx-hero-map__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);}
.rpmx-hero-map__map-wrap{background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%);}
.rpmx-home-map-canvas{border:1px solid rgba(16,27,49,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.88), 0 22px 54px rgba(11,18,32,.08);}
.rpmx-home-map-canvas .leaflet-tile-pane{filter:saturate(.72) brightness(1.04) contrast(.93) hue-rotate(-8deg);}
.rpmx-home-map-canvas::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(16,27,49,.02));pointer-events:none;z-index:2;}
.rpmx-map-filter-rail{display:block;}
@media (min-width:768px){
  .rpmx-map-filter-rail{display:block;margin-top:14px;}
  .rpmx-map-mobile-search{display:none;}
}
@media (max-width:767px){
  .rpmx-map-toolbar--map-only{position:absolute;top:16px;left:16px;right:16px;margin-bottom:0;}
  .rpmx-map-toolbar--map-only .rpmx-toolbar-btn--icon{margin-left:auto;width:46px;min-width:46px;height:46px;}
  .rpmx-hero-map__map-wrap{padding:14px;border-radius:26px;}
  .rpmx-home-map-canvas{aspect-ratio:4 / 5;min-height:0;height:auto;}
  .rpmx-map-mobile-brand{display:flex;padding:0 2px 10px;}
  .rpmx-map-filter-rail{display:block;margin-top:12px;}
  .rpmx-map-mobile-search{display:block;margin-top:12px;}
  .rpmx-search-box{display:none;}
  .rpmx-chip-row{display:none;}
}


/* v7.1 responsive hardening */
@media (max-width: 991px){
  .rpmx-shell{width:min(1280px, calc(100% - 24px));}
  .rpmx-hero-map{padding:16px 0 36px; overflow:hidden;}
  .rpmx-hero-map__grid{display:flex !important; flex-direction:column !important; gap:16px !important;}
  .rpmx-hero-map__content,
  .rpmx-hero-map__map-wrap{width:100% !important; min-width:0 !important; max-width:none !important; min-height:auto !important;}
  .rpmx-hero-map__map-wrap{order:-1 !important; padding:12px !important; border-radius:24px !important;}
  .rpmx-map-toolbar--map-only{position:absolute !important; top:14px !important; left:14px !important; right:14px !important; justify-content:flex-end !important;}
  .rpmx-map-mobile-brand{display:flex !important; padding:0 2px 10px !important;}
  .rpmx-home-map-canvas{width:100% !important; height:auto !important; min-height:0 !important; aspect-ratio:1 / 1.04 !important; border-radius:20px !important;}
  .rpmx-map-filter-rail,
  .rpmx-map-mobile-search{display:block !important; margin-top:12px !important;}
  .rpmx-search-box,
  .rpmx-chip-row{display:none !important;}
  .rpmx-hero-map__content{padding:0 !important;}
  .rpmx-brand-lockup{display:flex !important; margin-bottom:14px !important;}
  .rpmx-hero-map__content h1{font-size:clamp(2rem, 9vw, 3.1rem) !important; line-height:1.02 !important; max-width:none !important; word-break:normal; overflow-wrap:anywhere;}
  .rpmx-hero-map__content p{display:none !important;}
  .rpmx-kicker{margin-bottom:10px;}
  .rpmx-hero-map__meta{grid-template-columns:1fr !important; gap:12px !important; max-width:none !important;}
  .rpmx-stat-card{padding:18px 18px !important;}
  .rpmx-home-section{padding:48px 0 !important;}
  .rpmx-section-heading{margin-bottom:22px !important;}
  .rpmx-section-heading p{display:none !important;}
  .rpmx-card-grid--rail,
  .rpmx-category-grid--rail,
  .rpmx-editorial-list,
  .rpmx-card-grid--4{display:flex !important; gap:14px !important; overflow-x:auto !important; -webkit-overflow-scrolling:touch; scroll-snap-type:x proximity; padding-bottom:4px; scrollbar-width:none;}
  .rpmx-card-grid--rail::-webkit-scrollbar,
  .rpmx-category-grid--rail::-webkit-scrollbar,
  .rpmx-editorial-list::-webkit-scrollbar,
  .rpmx-card-grid--4::-webkit-scrollbar{display:none;}
  .rpmx-card-grid--rail > [data-rpmx-rail-slide],
  .rpmx-category-grid--rail > .rpmx-category-tile,
  .rpmx-editorial-list > *,
  .rpmx-card-grid--4 > *{flex:0 0 78vw !important; max-width:78vw !important; scroll-snap-align:start;}
  .rpmx-category-grid--rail > .rpmx-category-tile{flex-basis:68vw !important; max-width:68vw !important; min-height:164px !important;}
  .rpmx-card,
  .rpmx-editorial-card,
  .rpmx-category-tile{width:100% !important; min-width:0 !important;}
  .rpmx-editorial-grid{display:grid !important; grid-template-columns:1fr !important; gap:18px !important;}
  .rpmx-business-cta{padding:24px 20px !important; border-radius:24px !important;}
  .rpmx-business-cta h3{font-size:clamp(1.8rem, 7vw, 2.5rem) !important; line-height:1.05 !important;}
}

@media (max-width: 767px){
  .rpmx-home-map-canvas{aspect-ratio:1 / 1.08 !important;}
  .rpmx-map-filter-rail__track{padding-bottom:2px;}
  .rpmx-map-filter-rail .rpmx-chip{flex:0 0 auto;}
  .rpmx-map-mobile-search__inner{display:flex; gap:10px; padding:10px; background:#fff; border-radius:22px; box-shadow:0 14px 36px rgba(11,18,32,.08);}
  .rpmx-map-mobile-search__inner input{min-width:0; flex:1; border:none; outline:none; background:transparent; padding:8px 10px; font-size:1rem;}
  .rpmx-map-mobile-search__inner .rpmx-btn{flex:0 0 auto; min-width:132px;}
  .rpmx-card__body{padding:14px 14px 16px !important;}
  .rpmx-card__title{font-size:1.05rem !important;}
  .rpmx-card__actions{grid-template-columns:1fr 1fr !important; gap:8px !important;}
  .rpmx-card__actions .rpmx-map-popup__btn{min-height:42px; padding:10px 12px; font-size:.84rem;}
  .rpmx-footer, footer, .site-footer{overflow:hidden;}
}


/* v7.1 responsive corrections + editorial/owners CTA + recent rail */
html,body{overflow-x:hidden;}
.rpmx-home{overflow-x:hidden;}
#rpmx-home-block-recent .rpmx-card-grid--rail,
#rpmx-home-block-popular .rpmx-card-grid--desktop-rail{
  display:flex;
  gap:18px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  padding-bottom:8px;
  scrollbar-width:none;
}
#rpmx-home-block-recent .rpmx-card-grid--rail::-webkit-scrollbar,
#rpmx-home-block-popular .rpmx-card-grid--desktop-rail::-webkit-scrollbar{display:none;}
#rpmx-home-block-recent .rpmx-card-grid--rail > [data-rpmx-rail-slide],
#rpmx-home-block-popular .rpmx-card-grid--desktop-rail > [data-rpmx-rail-slide]{
  flex:0 0 300px;
  min-width:300px;
  scroll-snap-align:start;
}
.rpmx-editorial-grid{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start;}
.rpmx-editorial-list{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;}
.rpmx-editorial-card{min-width:0;height:100%;}
.rpmx-business-cta--owners{position:sticky;top:24px;}
.rpmx-business-cta--owners h3{max-width:12ch;}
.rpmx-business-cta--owners .rpmx-btn{width:100%;}
@media (min-width:768px){
  .rpmx-hero-map__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);}
}
@media (max-width:1024px){
  .rpmx-editorial-grid{grid-template-columns:1fr;}
  .rpmx-business-cta--owners{position:relative;top:auto;}
}
@media (max-width:767px){
  .rpmx-hero-map__grid{grid-template-columns:1fr !important;gap:18px;}
  .rpmx-hero-map__map-wrap{order:0;width:100%;max-width:100%;}
  .rpmx-hero-map__content{order:1;width:100%;max-width:100%;padding:4px 0 0;}
  .rpmx-hero-map__content > *{max-width:100%;}
  .rpmx-hero-map__content h1{font-size:clamp(2.2rem,11vw,3.2rem);line-height:.98;max-width:12ch;}
  .rpmx-hero-map__meta{grid-template-columns:repeat(3,minmax(0,1fr));}
  .rpmx-stat-card{padding:16px 14px;}
  .rpmx-stat-card strong{font-size:1.5rem;}
  .rpmx-map-mobile-search__inner{padding:6px;}
  .rpmx-map-mobile-search .rpmx-btn{min-width:0;white-space:nowrap;padding:12px 14px;}
  #rpmx-home-block-recent .rpmx-card-grid--rail > [data-rpmx-rail-slide],
  #rpmx-home-block-popular .rpmx-card-grid--desktop-rail > [data-rpmx-rail-slide]{
    flex:0 0 82vw;
    min-width:82vw;
  }
  .rpmx-card-grid--rail{display:flex;overflow-x:auto;gap:14px;scroll-snap-type:x proximity;padding-bottom:6px;scrollbar-width:none;}
  .rpmx-card-grid--rail::-webkit-scrollbar{display:none;}
  .rpmx-card-grid--rail > [data-rpmx-rail-slide]{flex:0 0 82vw;min-width:82vw;scroll-snap-align:start;}
  .rpmx-editorial-grid{grid-template-columns:1fr;gap:18px;}
  .rpmx-editorial-list{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:4px;scrollbar-width:none;}
  .rpmx-editorial-list > *{flex:0 0 84vw;min-width:84vw;scroll-snap-align:start;}
  .rpmx-business-cta{padding:24px;}
  .rpmx-business-cta h3{font-size:1.8rem;max-width:none;}
}

/* v7.2 popup stability + full responsive hardening + card galleries */
html, body{overflow-x:hidden;}
.rpmx-home, .rpmx-home *{box-sizing:border-box;}
.rpmx-map-toolbar--map-only{left:auto; right:18px; width:auto;}
.rpmx-map-toolbar--map-only .rpmx-toolbar-btn--icon{margin-left:0;}
.rpmx-home-map-canvas .leaflet-marker-icon,
.rpmx-home-map-canvas .marker-cluster{cursor:pointer;}
.rpmx-home-map-canvas .leaflet-control-attribution{max-width:72%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.rpmx-home-map-canvas .leaflet-popup-content-wrapper{overflow:visible;}
.rpmx-home-map-canvas .leaflet-interactive,
.rpmx-home-map-canvas .leaflet-marker-icon,
.rpmx-home-map-canvas .marker-cluster{touch-action:manipulation;}

.rpmx-card__media{overflow:hidden;}
.rpmx-card__gallery{position:relative; width:100%; height:100%;}
.rpmx-card__gallery-track{display:flex; width:100%; height:100%; transition:transform .28s ease;}
.rpmx-card__gallery-slide{flex:0 0 100%; width:100%; height:100%; display:block;}
.rpmx-card__gallery-slide img{width:100%; height:100%; object-fit:cover; display:block;}
.rpmx-card__gallery-ui{position:absolute; left:10px; right:10px; bottom:10px; display:flex; justify-content:center; pointer-events:none; z-index:2;}
.rpmx-card__gallery-dots{display:inline-flex; align-items:center; gap:6px; padding:6px 8px; border-radius:999px; background:rgba(11,18,32,.36); backdrop-filter:blur(8px);}
.rpmx-card__gallery-dot{width:7px; height:7px; border:none; border-radius:999px; padding:0; background:rgba(255,255,255,.42); pointer-events:auto;}
.rpmx-card__gallery-dot.is-active{background:#fff; transform:scale(1.08);}
.rpmx-card__gallery-trigger{position:absolute; right:12px; bottom:12px; z-index:2; border:none; border-radius:999px; background:rgba(255,255,255,.92); color:var(--rpmx-text); font-size:.74rem; font-weight:800; line-height:1; padding:8px 10px; box-shadow:0 8px 20px rgba(11,18,32,.16); display:none;}
.rpmx-card__gallery:hover .rpmx-card__gallery-trigger,
.rpmx-card__gallery:focus-within .rpmx-card__gallery-trigger{display:inline-flex;}

#rpmx-home-block-recent .rpmx-card-grid,
#rpmx-home-block-popular .rpmx-card-grid,
#rpmx-home-block-open .rpmx-card-grid,
#rpmx-home-block-live .rpmx-card-grid{display:flex; gap:18px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x proximity; padding-bottom:8px; scrollbar-width:none;}
#rpmx-home-block-recent .rpmx-card-grid::-webkit-scrollbar,
#rpmx-home-block-popular .rpmx-card-grid::-webkit-scrollbar,
#rpmx-home-block-open .rpmx-card-grid::-webkit-scrollbar,
#rpmx-home-block-live .rpmx-card-grid::-webkit-scrollbar{display:none;}
#rpmx-home-block-recent .rpmx-card-grid > [data-rpmx-rail-slide],
#rpmx-home-block-popular .rpmx-card-grid > [data-rpmx-rail-slide],
#rpmx-home-block-open .rpmx-card-grid > [data-rpmx-rail-slide],
#rpmx-home-block-live .rpmx-card-grid > [data-rpmx-rail-slide]{flex:0 0 min(320px, calc(100vw - 80px)); scroll-snap-align:start;}

.rpmx-editorial-grid{align-items:start;}
.rpmx-editorial-list{min-width:0;}
.rpmx-business-cta{min-width:0;}
.rpmx-business-cta__subtle{margin-top:14px; color:rgba(255,255,255,.78);}
.rpmx-business-cta__subtle a{color:#fff; text-decoration:underline;}

@media (max-width: 991px){
  .rpmx-shell{width:min(100%, calc(100% - 20px));}
  .rpmx-hero-map__content{width:100% !important; max-width:none !important;}
  .rpmx-brand-lockup{display:none !important;}
  .rpmx-map-mobile-brand{display:flex !important;}
  .rpmx-map-toolbar--map-only{left:auto !important; right:14px !important; width:auto !important;}
  .rpmx-home-map-canvas .leaflet-control-attribution{font-size:10px; max-width:58%;}
  .rpmx-editorial-grid{display:grid !important; grid-template-columns:1fr !important; gap:18px !important;}
  .rpmx-editorial-list{display:flex !important; gap:14px !important; overflow-x:auto !important; scroll-snap-type:x proximity; padding-bottom:4px;}
  .rpmx-editorial-list > *{flex:0 0 min(300px, calc(100vw - 72px)); scroll-snap-align:start;}
  .rpmx-business-cta{width:100% !important; padding:24px !important; border-radius:24px !important;}
  .rpmx-business-cta h3{font-size:1.8rem !important;}
}

@media (max-width: 767px){
  .rpmx-hero-map{padding:14px 0 32px !important;}
  .rpmx-hero-map__grid{gap:14px !important;}
  .rpmx-hero-map__map-wrap{padding:12px !important; border-radius:24px !important;}
  .rpmx-home-map-canvas{aspect-ratio:1 / 1.02 !important; border-radius:20px !important;}
  .rpmx-map-mobile-brand{padding:0 0 8px !important;}
  .rpmx-map-mobile-brand strong{font-size:.98rem !important;}
  .rpmx-map-mobile-brand span{font-size:.82rem !important;}
  .rpmx-map-toolbar--map-only{top:12px !important; right:12px !important;}
  .rpmx-map-toolbar--map-only .rpmx-toolbar-btn--icon{width:42px !important; min-width:42px !important; height:42px !important;}
  .rpmx-map-filter-rail{margin-top:10px !important;}
  .rpmx-map-filter-rail__track{padding-bottom:2px;}
  .rpmx-map-mobile-search{margin-top:10px !important;}
  .rpmx-map-mobile-search__inner{padding:8px !important; border-radius:18px !important;}
  .rpmx-map-mobile-search .rpmx-btn{min-width:110px; padding:11px 14px !important;}
  .rpmx-hero-map__content h1{font-size:clamp(1.9rem, 10vw, 2.8rem) !important;}
  .rpmx-home-section{padding:42px 0 !important;}
  .rpmx-section-heading--split{display:flex !important; flex-direction:column !important; align-items:flex-start !important;}
  .rpmx-section-heading--split .rpmx-btn{padding:12px 16px !important;}
  #rpmx-home-block-recent .rpmx-card-grid > [data-rpmx-rail-slide],
  #rpmx-home-block-popular .rpmx-card-grid > [data-rpmx-rail-slide],
  #rpmx-home-block-open .rpmx-card-grid > [data-rpmx-rail-slide],
  #rpmx-home-block-live .rpmx-card-grid > [data-rpmx-rail-slide]{flex-basis:min(292px, calc(100vw - 46px));}
  .rpmx-card{border-radius:20px;}
  .rpmx-card__body{padding:16px;}
  .rpmx-card__summary{min-height:0;}
  .rpmx-card__gallery-trigger{display:none !important;}
  .rpmx-editorial-list > *{flex-basis:min(280px, calc(100vw - 44px));}
  .rpmx-editorial-card{border-radius:20px;}
  .rpmx-business-cta{padding:22px 18px !important;}
  .rpmx-business-cta h3{font-size:1.55rem !important;}
  .rpmx-business-cta__checks{gap:10px !important;}
}

/* v7.3 stabilization + mobile fit + map-first cleanup */
html, body { overflow-x:hidden; }
body.rpmx-front-page #rpmx-home { overflow-x:clip; }
body.rpmx-front-page .rpmx-shell,
body.rpmx-front-page .rpmx-hero-map__grid,
body.rpmx-front-page .rpmx-home-section,
body.rpmx-front-page .rpmx-editorial-grid,
body.rpmx-front-page .rpmx-editorial-list,
body.rpmx-front-page .rpmx-business-cta,
body.rpmx-front-page .rpmx-card-grid,
body.rpmx-front-page .rpmx-category-grid,
body.rpmx-front-page .rpmx-map-filter-rail,
body.rpmx-front-page .rpmx-map-mobile-search { min-width:0; max-width:100%; }

.rpmx-kicker {
  font-size: 11px;
  letter-spacing: .11em;
  font-weight: 700;
}
.rpmx-hero-map__content p,
.rpmx-section-heading p,
.rpmx-card__summary,
.rpmx-editorial-card__body p,
.rpmx-business-cta p {
  font-weight: 400;
}
.rpmx-map-toolbar--map-only {
  top: 16px;
  right: 16px;
  left: auto;
  width: auto;
}
.rpmx-map-toolbar--map-only .rpmx-toolbar-btn--icon {
  width: 46px;
  min-width: 46px;
  height: 46px;
  padding: 0;
  display: inline-grid;
  place-items: center;
}
.rpmx-home-map-canvas {
  touch-action: pan-x pan-y pinch-zoom;
}
.leaflet-container {
  touch-action: pan-x pan-y pinch-zoom;
}
.rpmx-home-map-canvas .leaflet-control-container,
.rpmx-home-map-canvas .leaflet-pane,
.rpmx-home-map-canvas .leaflet-marker-pane,
.rpmx-home-map-canvas .leaflet-popup-pane {
  pointer-events: auto;
}

.rpmx-map-filter-rail .rpmx-chip.is-active,
.rpmx-chip-row .rpmx-chip.is-active {
  background: var(--rpmx-bg);
  color: #fff;
  box-shadow: 0 12px 28px rgba(11,18,32,.16);
}

/* keep home rails single-image; avoid accidental gallery UI remnants */
#rpmx-home-block-open .rpmx-card__media,
#rpmx-home-block-live .rpmx-card__media,
#rpmx-home-block-popular .rpmx-card__media,
#rpmx-home-block-recent .rpmx-card__media {
  overflow: hidden;
}
#rpmx-home-block-open [data-rpmx-inline-gallery],
#rpmx-home-block-live [data-rpmx-inline-gallery],
#rpmx-home-block-popular [data-rpmx-inline-gallery],
#rpmx-home-block-recent [data-rpmx-inline-gallery],
#rpmx-home-block-open .rpmx-list-card__gallery-ui,
#rpmx-home-block-live .rpmx-list-card__gallery-ui,
#rpmx-home-block-popular .rpmx-list-card__gallery-ui,
#rpmx-home-block-recent .rpmx-list-card__gallery-ui { display:none !important; }

@media (max-width: 991px) {
  .rpmx-hero-map__grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .rpmx-hero-map__map-wrap,
  .rpmx-hero-map__content {
    min-height: auto !important;
  }
  .rpmx-hero-map__map-wrap {
    order: 1;
    padding: 14px;
    border-radius: 24px;
  }
  .rpmx-hero-map__content {
    order: 2;
    padding: 8px 0 0;
  }
  .rpmx-map-toolbar--map-only {
    right: 14px !important;
    top: 14px !important;
  }
  .rpmx-shell { width: min(100% - 24px, 1280px); }
}

@media (max-width: 767px) {
  .rpmx-hero-map { padding: 16px 0 32px; }
  .rpmx-shell { width: calc(100% - 20px); }
  .rpmx-map-mobile-brand {
    display: flex !important;
    gap: 10px;
    padding: 0 0 8px !important;
  }
  .rpmx-map-mobile-brand strong { font-size: .96rem !important; }
  .rpmx-map-mobile-brand span { font-size: .8rem !important; }

  .rpmx-kicker {
    font-size: 10px !important;
    letter-spacing: .1em !important;
    margin-bottom: 8px;
  }
  .rpmx-hero-map__content h1 {
    font-size: clamp(1.95rem, 10vw, 2.55rem) !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    margin-bottom: 12px !important;
  }
  .rpmx-hero-map__content p {
    font-size: .96rem !important;
    line-height: 1.58 !important;
    margin-bottom: 16px !important;
  }
  .rpmx-search-box {
    padding: 8px;
    gap: 8px;
    margin-bottom: 14px;
  }
  .rpmx-search-box input,
  .rpmx-map-mobile-search__inner input {
    font-size: .95rem;
    min-width: 0;
  }
  .rpmx-btn,
  .rpmx-toolbar-btn,
  .rpmx-chip {
    font-weight: 700;
  }
  .rpmx-chip {
    padding: 11px 14px;
    font-size: .94rem;
  }
  .rpmx-map-filter-rail {
    margin-top: 10px !important;
    overflow: hidden;
  }
  .rpmx-map-filter-rail__label {
    font-size: .9rem;
    line-height: 1.3;
    margin-bottom: 8px;
  }
  .rpmx-map-filter-rail__track {
    gap: 10px;
    padding-bottom: 4px;
  }
  .rpmx-map-mobile-search {
    margin-top: 10px;
  }
  .rpmx-map-mobile-search__inner {
    padding: 8px;
    gap: 8px;
  }
  .rpmx-home-map-canvas {
    min-height: 336px !important;
    height: 56vh !important;
    max-height: 440px;
    border-radius: 22px;
  }
  .rpmx-map-toolbar--map-only .rpmx-toolbar-btn--icon {
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
  }
  .rpmx-hero-map__meta {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px;
  }
  .rpmx-stat-card {
    padding: 14px 14px;
    border-radius: 18px;
  }
  .rpmx-stat-card strong { font-size: 1.35rem; }
  .rpmx-stat-card span { font-size: .82rem; line-height: 1.35; }

  .rpmx-home-section {
    padding: 42px 0;
  }
  .rpmx-card-grid--rail,
  .rpmx-category-grid--rail,
  .rpmx-editorial-list {
    display: flex !important;
    overflow-x: auto !important;
    gap: 14px !important;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
    scrollbar-width: none;
  }
  .rpmx-card-grid--rail::-webkit-scrollbar,
  .rpmx-category-grid--rail::-webkit-scrollbar,
  .rpmx-editorial-list::-webkit-scrollbar { display:none; }

  .rpmx-card-grid--rail > [data-rpmx-rail-slide] {
    flex: 0 0 min(280px, calc(100vw - 36px));
    min-width: min(280px, calc(100vw - 36px));
    scroll-snap-align: start;
  }
  .rpmx-category-grid--rail > * {
    flex: 0 0 min(210px, calc(100vw - 72px));
    min-width: min(210px, calc(100vw - 72px));
    scroll-snap-align: start;
  }
  .rpmx-editorial-list > * {
    flex: 0 0 min(280px, calc(100vw - 36px));
    min-width: min(280px, calc(100vw - 36px));
    scroll-snap-align: start;
  }

  .rpmx-editorial-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .rpmx-business-cta {
    width: 100% !important;
    padding: 22px 18px !important;
    border-radius: 22px !important;
  }
  .rpmx-business-cta h3 {
    font-size: 1.45rem !important;
    line-height: 1.05 !important;
    max-width: none !important;
  }
  .rpmx-business-cta p,
  .rpmx-business-cta__checks span,
  .rpmx-business-cta__subtle {
    font-size: .94rem;
    line-height: 1.5;
  }

  .rpmx-section-heading--split {
    align-items: flex-start;
    gap: 12px;
  }
  .rpmx-section-heading--split .rpmx-btn {
    padding: 12px 16px;
    font-size: .92rem;
  }
}


.rpmx-map-popup__media-static,.rpmx-map-popup__logo{display:block; width:100%; height:100%; color:inherit; text-decoration:none;}

@media (max-width: 767px){
  .rpmx-map-popup__page{flex-basis:118%; min-width:118%; margin-left:-9%; grid-template-columns:.78fr 1.08fr .78fr; gap:8px;}
  .rpmx-map-popup__viewport{padding:12px 0 16px;}
}

/* v7.6 cleanup: popup mini-strip + responsive hardening */
.rpmx-home,
.rpmx-home *{box-sizing:border-box;}
.rpmx-shell,
.rpmx-editorial-grid,
.rpmx-editorial-grid > *,
.rpmx-home-section,
.rpmx-home-section .rpmx-shell{min-width:0;}
.rpmx-home-section .rpmx-shell{overflow:visible;}

.rpmx-kicker{
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  opacity:.88;
}
.rpmx-hero-map__content p,
.rpmx-brand-lockup span,
.rpmx-stat-card span,
.rpmx-card__summary,
.rpmx-list-card__meta,
.rpmx-map-filter-rail__label,
.rpmx-editorial-card p{font-weight:400;}

.rpmx-map-toolbar--map-only{
  left:auto !important;
  right:16px !important;
  width:auto !important;
  pointer-events:none;
}
.rpmx-map-toolbar--map-only .rpmx-toolbar-btn{pointer-events:auto;}
.rpmx-map-toolbar--map-only .rpmx-toolbar-btn--icon{
  width:44px !important;
  min-width:44px !important;
  height:44px !important;
  border-radius:999px;
}

.rpmx-home-map-canvas{
  touch-action:pan-x pan-y pinch-zoom;
}
.rpmx-home-map-canvas .leaflet-pane,
.rpmx-home-map-canvas .leaflet-container,
.rpmx-home-map-canvas .leaflet-map-pane,
.rpmx-home-map-canvas .leaflet-control-container{touch-action:pan-x pan-y pinch-zoom;}

.rpmx-map-popup{
  width:324px;
  max-width:324px;
  overflow:hidden;
}
.rpmx-map-popup__media{padding:12px;}
.rpmx-map-popup__gallery,
.rpmx-map-popup__media-static{display:block; text-decoration:none; color:inherit;}
.rpmx-map-popup__viewport{overflow:hidden; padding:0;}
.rpmx-map-popup__track{display:flex; transition:transform .5s ease; will-change:transform;}
.rpmx-map-popup__page{
  flex:0 0 100%;
  min-width:100%;
  margin-left:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  height:auto;
  align-items:stretch;
}
.rpmx-map-popup__thumb{
  aspect-ratio:1 / 1.02;
  border-radius:14px;
  background:#edf2f8;
  overflow:hidden;
  box-shadow:none;
}
.rpmx-map-popup__thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.rpmx-map-popup__media-static img{
  width:100%;
  aspect-ratio:16 / 9;
  object-fit:cover;
  border-radius:18px;
  display:block;
}
.rpmx-map-popup__media-badges{
  position:absolute;
  top:16px;
  left:16px;
  z-index:3;
}
.rpmx-map-popup__gallery-ui{left:0; right:0; bottom:18px; justify-content:center;}
.rpmx-map-popup__gallery-dots{background:rgba(16,27,49,.42); padding:6px 10px; gap:5px;}
.rpmx-map-popup__gallery-dot{width:6px;height:6px;opacity:.92;}
.rpmx-map-popup__gallery-dot.is-active{width:16px;}
.rpmx-map-popup__body{padding:14px 16px 16px; gap:10px;}
.rpmx-map-popup__headline{display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:start;}
.rpmx-map-popup__title{font-size:1.18rem; line-height:1.12;}
.rpmx-map-popup__address{font-size:.98rem; line-height:1.45; margin:0;}
.rpmx-map-popup__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.rpmx-map-popup__btn{justify-content:center;}

.rpmx-card__media,
.rpmx-list-card__media{display:block; background:#eef2f8; overflow:hidden;}
.rpmx-card__media img,
.rpmx-list-card__media img{width:100%; height:100%; object-fit:cover; display:block;}
.rpmx-card__gallery,
.rpmx-card__gallery-ui,
.rpmx-card__gallery-trigger{display:none !important;}

.rpmx-card-grid--rail,
.rpmx-category-grid--rail,
.rpmx-editorial-list{scroll-padding-left:2px;}
.rpmx-card-grid--rail > [data-rpmx-rail-slide],
.rpmx-category-grid--rail > *,
.rpmx-editorial-list > *{min-width:0;}

.rpmx-editorial-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:24px;align-items:start;}
.rpmx-editorial-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.rpmx-editorial-card,
.rpmx-business-cta{max-width:100%;}
.rpmx-business-cta{align-self:stretch;}

.rpmx-business-cta__checks span{display:flex;align-items:flex-start;gap:10px;}
.rpmx-business-cta__checks i{margin-top:2px;}

.rpmx-footer,
.site-footer,
footer{overflow:hidden;}

@media (max-width: 1024px){
  .rpmx-editorial-grid{grid-template-columns:1fr;}
  .rpmx-editorial-list{grid-template-columns:repeat(3,minmax(220px,1fr)); overflow-x:auto; scrollbar-width:none; padding-bottom:4px;}
  .rpmx-editorial-list::-webkit-scrollbar{display:none;}
}

@media (max-width: 767px){
  body.rpmx-front-page .rpmx-hero-map__grid,
  body.rpmx-discovery-taxonomy .rpmx-hero-map__grid{display:flex !important; flex-direction:column !important; gap:14px !important;}
  .rpmx-hero-map__map-wrap{order:-1; width:100%; max-width:100%; padding:12px !important; border-radius:24px !important;}
  .rpmx-map-mobile-brand{display:flex !important; padding:0 44px 8px 0 !important;}
  .rpmx-brand-lockup{display:none !important;}
  .rpmx-kicker{font-size:9.5px !important; letter-spacing:.14em !important; margin-bottom:6px !important;}
  .rpmx-hero-map__content h1{font-size:clamp(1.78rem,9.2vw,2.2rem) !important; line-height:1 !important; letter-spacing:-.04em !important;}
  .rpmx-hero-map__content p{font-size:.92rem !important; line-height:1.5 !important; margin-bottom:14px !important;}
  .rpmx-chip{font-size:.92rem; padding:10px 13px;}
  .rpmx-home-map-canvas{height:min(52vh,380px) !important; min-height:308px !important; max-height:380px !important;}
  .rpmx-map-toolbar--map-only{top:12px !important; right:12px !important;}
  .rpmx-map-popup{width:min(286px,calc(100vw - 44px)); max-width:calc(100vw - 44px); border-radius:22px;}
  .rpmx-map-popup__media{padding:10px;}
  .rpmx-map-popup__page{gap:6px;}
  .rpmx-map-popup__thumb{border-radius:12px;}
  .rpmx-map-popup__body{padding:12px 14px 14px;}
  .rpmx-map-popup__title{font-size:1.05rem;}
  .rpmx-map-popup__address{font-size:.92rem; -webkit-line-clamp:2; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden;}
  .rpmx-map-popup__actions{grid-template-columns:1fr 1fr; gap:8px;}
  .rpmx-map-popup__btn{padding:12px 10px; font-size:.95rem;}

  .rpmx-search-box{display:none !important;}
  .rpmx-map-filter-rail{margin-top:10px !important; overflow:hidden;}
  .rpmx-map-filter-rail__track{display:flex; gap:10px; overflow-x:auto; scrollbar-width:none; padding-bottom:4px;}
  .rpmx-map-filter-rail__track::-webkit-scrollbar{display:none;}
  .rpmx-map-mobile-search{display:block !important; margin-top:10px;}
  .rpmx-map-mobile-search__inner{padding:8px; gap:8px;}
  .rpmx-map-mobile-search__inner .rpmx-btn{padding-inline:18px;}

  .rpmx-card-grid--rail > [data-rpmx-rail-slide]{flex:0 0 min(286px,calc(100vw - 34px));min-width:min(286px,calc(100vw - 34px));}
  .rpmx-category-grid--rail > *{flex:0 0 min(210px,calc(100vw - 76px));min-width:min(210px,calc(100vw - 76px));}
  .rpmx-editorial-grid{grid-template-columns:1fr !important; gap:18px !important;}
  .rpmx-editorial-list{display:flex !important; overflow-x:auto !important; gap:14px !important;}
  .rpmx-editorial-list > *{flex:0 0 min(270px,calc(100vw - 36px)); min-width:min(270px,calc(100vw - 36px));}
  .rpmx-business-cta{width:100% !important; padding:22px 18px !important; border-radius:22px !important;}
  .rpmx-business-cta h3{font-size:1.4rem !important; line-height:1.06 !important;}
  .rpmx-home-section,
  .rpmx-home-section .rpmx-shell{overflow:hidden;}
}


/* v7.7 consolidated popup + map fixes */
.rpmx-map-toolbar--map-only{justify-content:flex-end;}
.rpmx-toolbar-btn--icon{position:relative;z-index:8;}
.rpmx-map-popup__media{padding:0;background:#eef2f7;}
.rpmx-map-popup__gallery,
.rpmx-map-popup__media-static{display:block;width:100%;text-decoration:none;color:inherit;}
.rpmx-map-popup__viewport{padding:12px 12px 20px;overflow:hidden;}
.rpmx-map-popup__track{display:flex;transition:transform .42s ease;}
.rpmx-map-popup__page{flex:0 0 100%;min-width:100%;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:stretch;}
.rpmx-map-popup__thumb{border-radius:14px;overflow:hidden;background:#dde5ef;box-shadow:0 10px 24px rgba(11,18,32,.08);aspect-ratio:1/1;}
.rpmx-map-popup__thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.rpmx-map-popup__gallery-ui{bottom:10px;left:0;right:0;justify-content:center;}
.rpmx-map-popup__gallery-dots{background:rgba(16,27,49,.42);backdrop-filter:blur(8px);}
.rpmx-map-popup__media-static img{display:block;width:100%;aspect-ratio:1.55/1;object-fit:cover;border-radius:18px;margin:12px 12px 18px;max-width:calc(100% - 24px);}
.rpmx-map-popup__location{margin:0;color:var(--rpmx-muted);font-size:.88rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.rpmx-map-popup__location span{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef3fb;color:#51627b;font-size:.72rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;}
.rpmx-map-popup__location strong{font-size:.9rem;color:var(--rpmx-text);font-weight:700;}
.rpmx-map-popup__address{margin-top:-2px;}
#rpmx-home-map-canvas,.leaflet-container{touch-action:pan-x pan-y pinch-zoom;}
@media (max-width: 767px){
  .rpmx-kicker{font-size:.66rem;letter-spacing:.18em;}
  .rpmx-brand-lockup span,.rpmx-map-mobile-brand span{font-size:1rem;font-weight:500;}
  .rpmx-hero-map__map-wrap{overflow:visible;}
  .rpmx-map-toolbar{top:10px;right:10px;left:auto;}
  .rpmx-toolbar-btn--icon{width:46px;height:46px;border-radius:16px;}
  .rpmx-map-popup{width:248px;}
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__media-static img{margin:10px 10px 16px;max-width:calc(100% - 20px);border-radius:16px;}
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__viewport{padding:10px 10px 18px;}
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__page{gap:8px;}
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__thumb{border-radius:12px;aspect-ratio:1/1;}
  .rpmx-home-section .rpmx-section-heading--split{align-items:flex-start;}
  .rpmx-home-section .rpmx-section-heading--split > *{min-width:0;}
  .rpmx-editorial-grid,.rpmx-footer-cta,.rpmx-home-footer{min-width:0;}
}


/* v7.7.5 mobile popup only fix */
@media (max-width: 767px){
  .rpmx-home-map-canvas{
    aspect-ratio:4 / 5 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }
  .rpmx-leaflet-popup--mobile .leaflet-popup-content-wrapper{
    border-radius:22px !important;
  }
  .rpmx-leaflet-popup--mobile .leaflet-popup-content{
    margin:0 !important;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup{
    width:min(268px, calc(100vw - 34px)) !important;
    max-width:calc(100vw - 34px) !important;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__media{
    min-height:0 !important;
  }
}


/* v7.7.5b popup minimal polish */
.rpmx-map-popup__summary{margin:0;color:var(--rpmx-muted);font-size:.95rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.rpmx-map-popup__ribbon{flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;}
.rpmx-map-popup__ribbon::-webkit-scrollbar{display:none;}
@media (max-width: 767px){.rpmx-leaflet-popup--mobile .rpmx-map-popup__summary{font-size:.9rem;line-height:1.4;}}


/* v7-7-6 mobile map/popup responsiveness fix */
@media (max-width: 767px){
  .rpmx-home-map-canvas,
  body.rpmx-front-page .rpmx-home-map-canvas,
  body.rpmx-discovery-taxonomy .rpmx-home-map-canvas{
    aspect-ratio:4 / 5 !important;
    height:auto !important;
    min-height:0 !important;
  }
  .rpmx-hero-map__map-wrap{
    padding:12px !important;
    border-radius:24px !important;
    overflow:visible !important;
  }
  .rpmx-leaflet-popup--mobile{margin-bottom:0 !important;}
  .rpmx-leaflet-popup--mobile .leaflet-popup-content-wrapper{
    width:272px !important;
    max-width:272px !important;
    border-radius:22px !important;
  }
  .rpmx-leaflet-popup--mobile .leaflet-popup-content{
    margin:0 !important;
    width:272px !important;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup{
    width:272px !important;
    overflow:hidden !important;
  }
  .rpmx-leaflet-popup--mobile .rpmx-map-popup__media{
    aspect-ratio:16 / 8.6 !important;
  }
}
