/* Carte CARF – complément au thème vkd_winston (noir & blanc, Neue / PP) */
.carf{position:relative;width:100%}
.carf .carf-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 30px;margin-bottom:20px}
.carf .carf-titre{font-family:"PP",Georgia,serif;font-size:clamp(24px,4vw,39px);font-style:italic;font-weight:200;line-height:100%;margin:0}
.carf .carf-maj{font-family:"PP",Georgia,serif;font-size:11px;text-transform:uppercase;line-height:160%}
.carf .carf-frame{user-select:none;-webkit-user-select:none;touch-action:pan-y;border:0.5px solid #D0D0D0;border-radius:4px;padding:clamp(10px,2vw,20px);background:#fff;position:relative}
.carf .carf-viewport{overflow:hidden;position:relative;border-radius:2px}
.carf svg.carf-map{display:block;width:100%;height:auto;backface-visibility:hidden}
.carf .carf-countries path{fill:#F2F2F2;stroke:#fff;stroke-width:0.6;transition:fill 200ms ease-out,stroke 200ms ease-out;cursor:default}
.carf .carf-countries path[data-cat]{cursor:pointer}
.carf .carf-countries path:hover,.carf .carf-countries path:focus,.carf .carf-countries path.is-active{stroke:#000;stroke-width:var(--carf-sw-h,1.2);outline:none}
.carf .carf-markers circle{stroke:#fff;stroke-width:1.2;cursor:pointer;transition:r 200ms ease-out}
.carf .carf-markers circle:hover,.carf .carf-markers circle:focus,.carf .carf-markers circle.is-active{stroke:#000;stroke-width:var(--carf-sw-h,1.2);outline:none}
/* Légende */
.carf .carf-legend{display:flex;flex-wrap:wrap;gap:10px 30px;margin-top:20px;font-size:13px;font-weight:500;line-height:160%}
.carf .carf-legend li{list-style:none;display:flex;align-items:center;gap:10px;padding:0;margin:0;cursor:pointer}
.carf .carf-legend li::before{display:none}
.carf .carf-legend li.is-dim{opacity:0.35}
.carf .carf-legend .sw{display:inline-block;width:18px;height:18px;border:0.5px solid #D0D0D0;border-radius:2px;flex:none}
.carf .carf-legend .sw.hatch{background:repeating-linear-gradient(45deg,#000 0 2px,#fff 2px 6px)}
.carf .carf-legend .sw.dots{background:radial-gradient(#000 1.2px,#fff 1.3px) 0 0/6px 6px}
.carf .carf-legend .nb{color:#313131;font-weight:400}
/* Infobulle, au format .clip du thème */
.carf .carf-tip{position:absolute;z-index:30;display:none;max-width:280px;padding:12px 16px;background:#fff;color:#000;border:0.5px solid #D0D0D0;border-radius:4px;box-shadow:0 0 20px 0 rgba(0,0,0,0.15);font-size:13px;line-height:160%;pointer-events:none}
.carf .carf-tip.is-visible{display:block}
.carf .carf-tip .t{font-family:"PP",Georgia,serif;font-size:18px;font-style:italic;font-weight:400;line-height:120%;margin-bottom:6px}
.carf .carf-tip .c{font-family:"PP",Georgia,serif;font-size:11px;text-transform:uppercase;line-height:160%;margin-bottom:6px}
.carf .carf-tip .n{color:#313131}
.carf .carf-tip .l{display:flex;justify-content:space-between;gap:12px;border-top:0.5px solid #D0D0D0;padding-top:4px;margin-top:4px}
.carf .carf-tip .l span:last-child{font-weight:bold;white-space:nowrap}
.carf .carf-source{font-size:12px;letter-spacing:0.5px;line-height:160%;color:#313131;margin-top:15px}
@media only screen and (max-width:640px){.carf .carf-tip{max-width:calc(100% - 20px)}}


/* Zoom */
.carf .carf-frame.is-dragging{cursor:grabbing}
.carf.is-zoomed svg.carf-map{cursor:grab}
.carf .carf-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:12px}
.carf .carf-hint{font-size:12px;letter-spacing:0.5px;color:#313131;line-height:160%}
@media (hover:none){.carf .carf-hint{display:none}}
.carf .carf-zoom{display:flex;gap:8px;flex:none}
.carf .carf-zoom button{width:40px;height:40px;border-radius:50%;background:#fff;border:0.5px solid #000;color:#000;cursor:pointer;font-size:20px;line-height:1;font-weight:400;padding:0;display:flex;align-items:center;justify-content:center;transition:all 200ms ease-out}
.carf .carf-zoom button:hover{background:#000;color:#fff}
.carf .carf-zoom button:disabled{opacity:0.3;cursor:default;background:#fff;color:#000}
.carf .carf-zoom .carf-zoom-reset{font-size:13px;font-family:"PP",Georgia,serif;font-style:italic}
