/* Bulgaria Compass Village Map v3 | PluginPip Ltd
   Scoped editorial treatment of Leaflet and bilingual village discovery. */
:root{--bc-map-forest:#244a39;--bc-map-copper:#bb6c4b;--bc-map-paper:#fffdf7;--bc-map-line:#dfdfd1}
.bc-map-masthead{background:#eeeede;overflow:hidden}
.bc-map-masthead-content{display:grid;grid-template-columns:1.17fr .83fr;gap:clamp(28px,5vw,80px);align-items:center;min-height:325px}
.bc-map-headline{padding:50px 0 54px}
.bc-map-headline h1{font-size:clamp(3.8rem,6.1vw,6.2rem);line-height:.94;margin:8px 0 19px;letter-spacing:-.024em}
.bc-map-headline p{font-size:16px;line-height:1.72;max-width:580px;margin:0 0 27px;color:#566457}
.bc-map-intro-links{display:flex;flex-wrap:wrap;gap:24px}
.bc-map-masthead-photo{height:325px;position:relative;margin:0;align-self:stretch}
.bc-map-masthead-photo img{width:100%;height:100%;object-fit:cover}
.bc-map-masthead-photo figcaption{position:absolute;right:12px;bottom:12px;font-size:10px;padding:7px 11px;background:#18382dd9;color:#fff}
.bc-map-section{padding:52px 0 92px;background:#f7f2e9}
.bc-map-titleline{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:30px}
.bc-map-titleline h2{font-size:clamp(3.2rem,4.3vw,5rem);margin:7px 0 0}
.bc-map-titleline p{max-width:420px;font-size:14px;color:#627065;margin:0}
.bc-map-workspace{display:grid;grid-template-columns:minmax(288px,335px) minmax(0,1fr);gap:19px;align-items:start}
.bc-map-sidebar{background:#fffdf7;border:1px solid var(--bc-map-line);padding:22px 20px 17px;min-width:0}
.bc-sidebar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e7e8db;margin:0 0 19px;padding-bottom:15px}
.bc-sidebar-heading h3{font-size:31px;margin:0}
.bc-village-tally{font-size:11px;color:#6b786e;white-space:nowrap}
.bc-map-field{display:grid;gap:7px;margin-bottom:15px;font-weight:700;font-size:12px;color:var(--bc-map-forest);line-height:1.55}
.bc-map-field>span{font-weight:400;color:#7a8379;font-size:11px}
.bc-map-field input,.bc-map-field select{width:100%;max-width:none;min-height:45px;padding:10px 12px;background:#fff;border:1px solid #bccbbb;border-radius:3px;color:#253d2d;font-size:13px;font-weight:400;line-height:1.4}
.bc-map-field input::placeholder{color:#829086}
.bc-map-listhead{display:flex;align-items:center;justify-content:space-between;margin-top:19px;padding:11px 0 9px;border-top:1px solid #e2e6d9}
.bc-map-listhead span{text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:700;color:#6f806e}
.bc-map-clearfilters{background:transparent;border:0;color:#a66a51;font-size:11px;font-weight:700;padding:6px}
.bc-map-village-list{display:grid;gap:5px;max-height:446px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b2c2ae transparent;padding:1px 3px 2px 0}
.bc-village-option{background:#f7f8f2;border:1px solid transparent;display:grid;grid-template-columns:47px minmax(0,1fr) 29px;gap:10px;padding:7px 7px;text-align:left;align-items:center;min-width:0;transition:background .2s,border-color .2s}
.bc-village-option:hover,.bc-village-option[aria-current="true"]{background:#e8eee3;border-color:#c5d7c4}
.bc-village-option[aria-current="true"]{border-left:3px solid #bb6c4b}
.bc-village-photo{width:47px;height:47px;object-fit:cover;border-radius:2px}
.bc-village-label{min-width:0;display:block;line-height:1.2}
.bc-village-name{display:block;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#244a39}
.bc-village-bg{display:block;font-size:12px;font-family:"Cormorant Garamond",Georgia,serif;line-height:1.1;color:#6c816d;margin-top:2px}
.bc-village-region{display:block;font-size:10px;color:#708075;font-weight:400;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bc-village-select{border:0;background:transparent;padding:0;text-align:left;display:block;cursor:pointer;min-width:0}
.bc-village-arrow{color:#91aa91;font-size:18px;text-align:center}
.bc-map-aside-foot{font-size:11px;color:#7c8579;margin:15px 1px 0!important;line-height:1.5}
.bc-map-right{min-width:0}
.bc-map-frame{position:relative;border:1px solid #d4ded1;background:#dde7d9;box-shadow:0 6px 25px #2435260f;overflow:hidden;border-radius:4px}
.bc-real-map{height:628px;position:relative;z-index:0;background:#dce6d9}
.editorial-site .bc-real-map img{width:initial;max-width:none}
.bc-map-float-heading{position:absolute;top:16px;left:17px;z-index:600;pointer-events:none;background:#fffdf5ef;box-shadow:0 5px 15px #182e1c21;padding:12px 18px;border-radius:3px;backdrop-filter:blur(6px)}
.bc-map-float-heading span{font-size:9px;letter-spacing:.18em;color:#98644e;font-weight:700;display:block}
.bc-map-float-heading strong{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:25px;font-weight:600;line-height:1.15;color:#244a39}
.bc-map-float-heading strong span{display:inline;font:italic 16px "Cormorant Garamond",Georgia,serif;letter-spacing:0;color:#657969}
.bc-map-show-all{position:absolute;top:21px;right:19px;z-index:600;background:#fffdf5;border:1px solid #d3ddce;padding:10px 12px;border-radius:3px;color:#244a39;font-size:12px;font-weight:700;box-shadow:0 3px 14px #1a351720}
.bc-map-show-all:hover{background:#e9eee4}
.bc-map-show-all>span{font-size:18px;vertical-align:middle;margin-right:4px}
.bc-map-loadingtext{padding:35px;color:#657568;font-size:13px}
.bc-map-footnote{font-size:11px;line-height:1.65;color:#717f72;min-height:16px;margin:7px 0 0!important}
.bc-selected-place{margin-top:16px;padding:22px 25px;background:#fffdf8;border:1px solid #e1e4d9}
.bc-selected-content{display:grid;grid-template-columns:105px minmax(0,1fr);gap:20px}
.bc-selected-content img{height:120px;width:105px;object-fit:cover}
.bc-selected-top{display:flex;flex-wrap:wrap;gap:11px;justify-content:space-between;align-items:start}
.bc-selected-content h3{font-size:37px;margin:3px 0 0}
.bc-selected-content h3 span{display:block;margin-top:2px;font-family:"Cormorant Garamond",serif;font-size:21px;font-style:italic;color:#6d806e}
.bc-selected-region{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#b56d4d;font-weight:700}
.bc-selected-place p{font-size:13px;color:#677467;line-height:1.65;margin:10px 0}
.bc-selected-note{font-size:11px!important;margin:10px 0 15px!important;color:#88918a!important}
.bc-selected-actions{display:flex;flex-wrap:wrap;gap:9px}
.bc-selected-actions .ed-btn{padding:10px 13px;min-height:38px;font-size:11px;gap:10px}
.bc-selected-actions .bc-save-selected[aria-pressed="true"]{background:#f1e7d7;border-color:#b77150;color:#7a4b37}
.bc-map-shortlist{margin-top:65px;padding-top:28px;border-top:1px solid #dddccd}
.bc-shortlist-heading{display:flex;justify-content:space-between;gap:35px;align-items:center}
.bc-shortlist-heading h2{font-size:clamp(2.9rem,4.2vw,4.5rem);margin:8px 0}
.bc-shortlist-heading p{font-size:13px;color:#6b796d;margin:0}
.bc-saved-count{color:#547057;padding:7px 12px;background:#e5eede;border-radius:20px;font-size:11px;font-weight:700;white-space:nowrap}
.bc-shortlist-villages{display:flex;gap:10px;flex-wrap:wrap;margin:21px 0 18px}
.bc-shortlist-item{background:#fffdf7;border:1px solid #dbe3d7;display:inline-flex;align-items:center;gap:12px;padding:9px 14px;border-radius:3px}
.bc-shortlist-item a{font-size:13px;font-weight:700}
.bc-shortlist-item small{display:block;font-size:12px;color:#6d796d;font-weight:400}
.bc-shortlist-actions{margin-bottom:12px}
.bc-shortlist-actions .ed-btn{min-height:43px}
.bc-map-empty{font-size:13px;color:#758377;padding:10px 0}
.bc-real-map .leaflet-tile-pane{filter:saturate(.78) sepia(.07) hue-rotate(-5deg)}
.bc-real-map .leaflet-container{font-family:"DM Sans",Arial,sans-serif}
.bc-real-map .leaflet-control-zoom{border:0!important;box-shadow:0 3px 16px #2e44302b!important}
.bc-real-map .leaflet-control-zoom a{width:36px;height:36px;line-height:34px;background:#fffdf6;color:#244a39;border-bottom:1px solid #dde7d9}
.bc-real-map .leaflet-control-attribution{font-size:10px!important;background:#fffcf4e6!important;color:#546a59}
.bc-real-map .leaflet-control-attribution a{color:#426e51!important;text-decoration:underline}
.bc-real-map .leaflet-popup-content-wrapper{border-radius:5px;padding:2px;box-shadow:0 10px 36px #1a372a42}
.bc-real-map .leaflet-popup-content{margin:15px 17px;min-width:180px;max-width:240px}
.bc-popup-type{color:#b16b4e;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.bc-popup-title{font-family:"Cormorant Garamond",Georgia,serif;font-size:28px;font-weight:600;color:#244a39;line-height:1.02;margin:7px 0 5px}
.bc-popup-title span{display:block;font-size:18px;font-style:italic;font-weight:500;margin-top:3px;color:#718170}
.bc-popup-intro{font-size:12px;color:#68766d;line-height:1.5;margin:9px 0 12px}
.bc-popup-read{font-size:12px!important;font-weight:700!important;color:#24583e!important;text-decoration:underline!important}
.bc-tooltip{background:#fffdf7;border:1px solid #becdb7;box-shadow:0 3px 15px #1c35252b;padding:7px 11px}
.bc-tooltip strong,.bc-tooltip span{display:block;font-size:12px;color:#234634}
.bc-tooltip span{font-size:11px;color:#728373;font-family:"Cormorant Garamond",serif}
.bc-marker-holder{background:transparent;border:0}
.bc-pin{display:grid;place-items:center;position:relative;width:30px;height:30px;border:3px solid #fffdf3;background:#244a39;border-radius:50% 50% 50% 3px;transform:rotate(-45deg);box-shadow:0 3px 7px #1c322d66}
.bc-pin:after{content:"";height:8px;width:8px;border-radius:50%;background:#fff4dc;transform:rotate(45deg)}
.bc-pin.is-active{background:#be7051;width:36px;height:36px;border-color:#fffaf2;box-shadow:0 4px 12px #39282077}
.bc-pin.is-saved:not(.is-active){background:#b49147}
.bc-cluster-wrap{background:transparent;border:0}
.bc-cluster{width:43px;height:43px;background:#244a39;color:white;border:3px solid #fffdf3;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:14px;box-shadow:0 3px 11px #25372a7a;outline:5px solid #91ab9469}
.bc-real-map .leaflet-popup-close-button{color:#41664e;font-size:19px}
@media(max-width:1180px){.bc-map-workspace{grid-template-columns:285px minmax(0,1fr)}.bc-real-map{height:585px}.bc-map-titleline{align-items:start}}
@media(max-width:860px){.bc-map-masthead-content{grid-template-columns:1fr 38%;min-height:295px}.bc-map-masthead-photo{height:295px}.bc-map-workspace{grid-template-columns:1fr}.bc-map-sidebar{display:block}.bc-map-village-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:315px;gap:6px}.bc-real-map{height:490px}.bc-map-titleline{display:block}.bc-map-titleline p{max-width:700px}.bc-map-sidebar{padding:19px}.bc-map-right{min-width:0}}
@media(max-width:620px){.bc-map-masthead-content{grid-template-columns:1fr}.bc-map-headline{padding:48px 0 20px}.bc-map-headline h1{font-size:clamp(3.6rem,11vw,5rem)}.bc-map-masthead-photo{height:190px;margin:0 -6vw}.bc-map-masthead-photo figcaption{font-size:9px}.bc-map-section{padding:42px 0 68px}.bc-map-titleline h2{font-size:3.6rem}.bc-map-workspace{gap:12px}.bc-map-village-list{grid-template-columns:1fr;max-height:245px}.bc-village-option{grid-template-columns:45px minmax(0,1fr) 28px}.bc-real-map{height:420px}.bc-map-float-heading{padding:8px 11px;top:12px;left:12px}.bc-map-float-heading span{font-size:8px}.bc-map-float-heading strong{font-size:21px}.bc-map-show-all{right:12px;top:12px;font-size:10px;padding:8px 9px}.bc-selected-place{padding:17px}.bc-selected-content{grid-template-columns:70px minmax(0,1fr);gap:13px}.bc-selected-content img{width:70px;height:82px}.bc-selected-content h3{font-size:31px}.bc-selected-content h3 span{font-size:17px}.bc-selected-actions{display:grid;grid-template-columns:1fr}.bc-shortlist-heading{display:block}.bc-saved-count{display:inline-block;margin-top:13px}.bc-map-shortlist{margin-top:48px}.bc-map-intro-links{gap:16px}}
@media(prefers-reduced-motion:reduce){.bc-village-option{transition:none}}
