/* Parteneri locali – county map + pop-up */
.cp-pm{--pm-both:#f39a1e;--pm-dist:#fbd08a;--pm-team:#b9d3b3;--pm-none:#ebe7e0;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:40px;align-items:center;margin:34px 0 10px}
.cp-pm-map{position:relative;background:var(--cp-paper,#f6f5f2);border-radius:20px;padding:28px 30px}
.cp-pm-svg{display:block;width:100%;height:auto;overflow:visible}
.cp-pm-county{fill:var(--pm-none);stroke:#fff;stroke-width:1.3;stroke-linejoin:round;cursor:pointer;transition:fill .18s,filter .18s;outline:none}
.cp-pm-county.is-both{fill:var(--pm-both)}
.cp-pm-county.is-dist{fill:var(--pm-dist)}
.cp-pm-county.is-team{fill:var(--pm-team)}
.cp-pm-county:hover,.cp-pm-county:focus-visible,.cp-pm-county.is-active{fill:var(--cp-ink,#182333)}
.cp-pm-county:focus-visible{stroke:var(--cp-orange,#fda12b);stroke-width:2.5}
.cp-pm-labels text{font:700 calc(11.5px * var(--pm-k,1))/1 var(--cp-font,Arial),sans-serif;letter-spacing:.4px;fill:rgba(24,35,51,.62);text-anchor:middle;dominant-baseline:central;pointer-events:none;transition:fill .18s}
.cp-pm-labels text.is-hover{fill:#fff}
.cp-pm-tip{position:absolute;z-index:3;pointer-events:none;transform:translate(-50%,calc(-100% - 14px));background:var(--cp-ink,#182333);color:#fff;border-radius:10px;padding:8px 12px;font-size:13px;line-height:1.25;white-space:nowrap;box-shadow:0 10px 24px rgba(24,35,51,.22)}
.cp-pm-tip b{display:block;font-weight:700}
.cp-pm-tip span{color:#cfd5dc;font-size:12px}
.cp-pm-tip::after{content:"";position:absolute;left:50%;bottom:-5px;width:10px;height:10px;background:inherit;transform:translateX(-50%) rotate(45deg)}

.cp-pm-side{display:flex;flex-direction:column;gap:22px}
.cp-pm-label{display:block;font-size:12px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;color:var(--cp-muted,#697078);margin:0 0 -12px}
.cp-pm-select{position:relative}
.cp-pm-select::after{content:"";position:absolute;right:16px;top:50%;width:8px;height:8px;border-right:2px solid var(--cp-ink,#182333);border-bottom:2px solid var(--cp-ink,#182333);transform:translateY(-70%) rotate(45deg);pointer-events:none}
.cp-pm-select select{width:100%;appearance:none;-webkit-appearance:none;height:50px;padding:0 42px 0 16px;border:1.5px solid var(--cp-line,#e2e4e4);border-radius:12px;background:#fff;font:inherit;font-size:15px;font-weight:600;color:var(--cp-ink,#182333);cursor:pointer}
.cp-pm-select select:focus-visible{outline:2px solid var(--cp-orange,#fda12b);outline-offset:2px}
.cp-pm-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cp-pm-stats div{background:var(--cp-paper,#f6f5f2);border-radius:12px;padding:12px 10px;text-align:center}
.cp-pm-stats b{display:block;font-size:24px;line-height:1;font-weight:800;color:var(--cp-ink,#182333)}
.cp-pm-stats span{display:block;margin-top:5px;font-size:11.5px;line-height:1.25;color:var(--cp-muted,#697078)}
.cp-pm-legend{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14px}
.cp-pm-legend li{display:flex;align-items:center;gap:10px;margin:0}
.cp-pm-legend i{flex:0 0 18px;width:18px;height:18px;border-radius:5px;background:var(--pm-none)}
.cp-pm-legend .is-both{background:var(--pm-both)}
.cp-pm-legend .is-dist{background:var(--pm-dist)}
.cp-pm-legend .is-team{background:var(--pm-team)}
.cp-pm-hint{margin:0;font-size:14px;line-height:1.5;color:var(--cp-muted,#697078)}

/* pop-up */
html.cp-pm-lock{overflow:hidden}
.cp-pm-dialog{width:min(820px,calc(100vw - 32px));max-height:min(86vh,900px);padding:0;border:0;border-radius:20px;background:#fff;color:var(--cp-ink,#182333);box-shadow:0 30px 80px rgba(24,35,51,.3);overflow:hidden}
.cp-pm-dialog::backdrop{background:rgba(16,22,32,.55);backdrop-filter:blur(2px)}
.cp-pm-dialog[open]{animation:cp-pm-in .22s var(--cp-ease,ease)}
@keyframes cp-pm-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
.cp-pm-dialog-in{display:flex;flex-direction:column;max-height:inherit}
.cp-pm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 30px 20px;border-bottom:1px solid var(--cp-line,#e2e4e4)}
.cp-pm-kicker{margin:0 0 6px;font-size:11.5px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#a3610f}
.cp-pm-head h3{margin:0;font-size:30px;line-height:1.05;letter-spacing:-.5px}
.cp-pm-count{margin:8px 0 0;font-size:14px;color:var(--cp-muted,#697078)}
.cp-pm-close{flex:0 0 42px;width:42px;height:42px;border-radius:50%;border:1px solid var(--cp-line,#e2e4e4);background:#fff;display:grid;place-items:center;cursor:pointer;padding:0;transition:background .15s}
.cp-pm-close:hover{background:var(--cp-paper,#f6f5f2)}
.cp-pm-close svg{width:18px;height:18px;fill:none;stroke:var(--cp-ink,#182333);stroke-width:2.2;stroke-linecap:round}
.cp-pm-body{overflow:auto;padding:22px 30px 30px;overscroll-behavior:contain}
.cp-pm-sec+.cp-pm-sec{margin-top:26px}
.cp-pm-sec h4{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:15px;font-weight:700;letter-spacing:.2px}
.cp-pm-sec h4 svg{width:20px;height:20px;fill:none;stroke:#a3610f;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cp-pm-sec h4 span{min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:var(--cp-paper,#f6f5f2);font-size:12px;display:inline-grid;place-items:center;color:var(--cp-muted,#697078)}
.cp-pm-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cp-pm-card{border:1px solid var(--cp-line,#e2e4e4);border-radius:14px;padding:16px 18px}
.cp-pm-card h5{margin:0 0 10px;font-size:15.5px;line-height:1.3;font-weight:700}
.cp-pm-card ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.cp-pm-card li{display:flex;gap:9px;margin:0;font-size:14px;line-height:1.4;color:#3b444e;overflow-wrap:anywhere}
.cp-pm-card li svg{flex:0 0 16px;width:16px;height:16px;margin-top:2px;fill:none;stroke:#a3610f;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cp-pm-card li.is-addr{padding-left:25px}
.cp-pm-card li.is-loc span{font-weight:600;color:var(--cp-ink,#182333)}
.cp-pm-card li.is-zone small{display:block;font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;color:var(--cp-muted,#697078)}
.cp-pm-card a{color:var(--cp-ink,#182333);font-weight:600;text-decoration:none;border-bottom:1px solid rgba(24,35,51,.2)}
.cp-pm-card a:hover{border-color:var(--cp-orange,#fda12b)}
.cp-pm-card li.is-tel i{font-style:normal;color:#b0b5ba;margin:0 6px}
.cp-pm-empty p{margin:0 0 18px;font-size:15px;line-height:1.6;color:#3b444e}
.cp-pm-actions{display:flex;flex-wrap:wrap;gap:10px}
.cp-pm-btn{display:inline-flex;align-items:center;height:46px;padding:0 22px;border-radius:999px;background:var(--cp-orange,#fda12b);color:var(--cp-ink,#182333)!important;font-weight:700;text-decoration:none!important;border:1.5px solid var(--cp-orange,#fda12b)}
.cp-pm-btn.is-ghost{background:#fff;border-color:var(--cp-ink,#182333)}

/* the accordion list under the map */
.cp-pm-badge{margin-left:auto;margin-right:16px;font-size:12px;font-weight:600;color:var(--cp-muted,#697078);background:var(--cp-paper,#f6f5f2);border-radius:999px;padding:3px 10px;white-space:nowrap}
.cp-partners-list summary{display:flex;align-items:center}
.cp-partners-list .cp-partners-sec{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:#a3610f;margin:18px 0 10px}
.cp-partners-list .cp-prose{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px 18px}
.cp-partners-list .cp-prose>.cp-partners-sec{grid-column:1/-1}
.cp-partners-list .cp-partner{border:1px solid var(--cp-line,#e2e4e4);border-radius:12px;padding:14px 16px}
.cp-partners-list .cp-partner h4{margin:0 0 6px;font-size:15px}
.cp-partners-list .cp-partner p{margin:0 0 3px;font-size:14px;line-height:1.45}
.cp-partners-list .cp-partner .cp-p-loc{font-weight:600}
.cp-partners-cta{text-align:left}

@media (max-width:980px){
  .cp-pm{grid-template-columns:1fr;gap:22px}
  .cp-pm-side{order:-1}
  .cp-pm-legend{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .cp-pm-map{padding:14px;border-radius:14px}
  .cp-pm-labels text{font-size:calc(16px * var(--pm-k,1))}
  .cp-pm-legend{font-size:13px}
  .cp-pm-tip{display:none}
  .cp-pm-dialog{width:100vw;max-width:100vw;max-height:88vh;margin:auto 0 0;border-radius:20px 20px 0 0}
  .cp-pm-head{padding:20px 18px 16px}
  .cp-pm-head h3{font-size:24px}
  .cp-pm-body{padding:18px 18px 26px}
  .cp-pm-cards{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.cp-pm-dialog[open]{animation:none}.cp-pm-county,.cp-pm-labels text{transition:none}}

/* zoom */
.cp-pm-county{vector-effect:non-scaling-stroke}
.cp-pm-svg{touch-action:pan-y;user-select:none;-webkit-user-select:none}
.cp-pm-svg.is-zoomed{cursor:grab}
.cp-pm-svg.is-dragging,.cp-pm-svg.is-dragging .cp-pm-county{cursor:grabbing}
.cp-pm-map{overflow:hidden}
.cp-pm-zoom{position:absolute;right:12px;top:12px;z-index:2;display:none;flex-direction:column;gap:6px}
.cp-pm-zoom button{width:40px;height:40px;border-radius:10px;border:1px solid var(--cp-line,#e2e4e4);background:#fff;display:grid;place-items:center;padding:0;cursor:pointer;box-shadow:0 4px 12px rgba(24,35,51,.12)}
.cp-pm-zoom button[hidden]{display:none}
.cp-pm-zoom svg{width:18px;height:18px;fill:none;stroke:var(--cp-ink,#182333);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.cp-pm-zoom button:active{background:var(--cp-paper,#f6f5f2)}
@media (max-width:980px){.cp-pm-zoom{display:flex}.cp-pm-map::after{content:"Apropie cu două degete sau folosește + / − pentru zoom";display:block;margin-top:10px;font-size:12px;color:var(--cp-muted,#697078);text-align:center}}
@media (hover:hover) and (pointer:fine){.cp-pm-zoom{display:flex}.cp-pm-map::after{content:none}}
