#map-box {
	margin-bottom:4rem;
}

#article-metas {
	margin-bottom:1.5rem;
}

#map {
	width: 100%;
	height: 540px;
}

/*
#controls {
	position: absolute;
	top: 10px;
	right: 10px;
	padding: 10px;
	border-radius: 5px;
	z-index: 1000;
}
*/
#controls button {
	display: block;
	margin: 5px 0;
	padding: 8px 12px;
	cursor: pointer;
}

#widebar-controls {
	padding: 0;
	display:flex;
	gap:1rem;
	float:Right;
}

.widebar-icon {
	float:left;
}

.widebar-title div.h2 {
	clear:both;
}


@media screen and (min-width: 768px) {
	
	#widebar-controls {
		padding: 1rem;
		width: 26rem;
		clear:none;
	}
	
	#map-box .widebar-title div.h2 {
		clear:none;
	}

}

#map-box .widebar-content {
	position:relative;
	overflow:hidden;
}

#map-box #widebar-layer {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	box-sizing:border-box;
	background: rgba(11, 14, 29, .5);
	
	/* var(--black); */
	
	
	padding:3rem;
	display:none;
}

#map-box.opened-filter #widebar-layer {
	display:block;
}


#filterStatus {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	
	white-space:nowrap;
	
	font-family: "Anek Latin", sans-serif;
	font-size: 1.75rem;
	font-weight: 700;
	background: #fff;
	border:0 none;
	outline:0 none;
	border-radius: 2.5rem;
	color: var(--base-blue);
	display:block;
	width:19rem;
	padding-right:6rem;
	padding-left:2rem;

	position:relative;
	height:5rem;
	line-height:5rem;
	text-decoration:none;
	
	background: #fff url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 36 36"><circle cx="18" cy="18" r="18" fill="%234c87c6" transform="rotate(90 18 18)"/><path stroke="%23fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m8.3 14.8 9.2 9.2 9.3-9.2"/></svg>') 97% center no-repeat;
	background-size: 2.8rem auto;
	
	cursor:pointer;
	
	transition: background-color 320ms ease, color 320ms ease;
}

#map-box #filterReset {
	border:0 none;
	outline:0 none;
	cursor:pointer;
	border-radius:100%;
	
	width:5rem;
	height:5rem;
	
	background: var(--base-blue) url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 23"><path fill="%23fff" d="M9.3.3a1 1 0 1 1 1.4 1.4L9.4 3h.1A9.5 9.5 0 1 1 0 12.5a1 1 0 1 1 2 0A7.5 7.5 0 1 0 9.5 5l1.2 1.3a1 1 0 1 1-1.4 1.4L5.6 4z"/></svg>') 55% 40% no-repeat;
	background-size: 2.4rem auto;

}


@media screen and (min-width: 768px) {
	
	#map-box .widebar-title div {
		clear:none;
	}

	
	#map-box #filterStatus {
		font-size: 1.48rem;
		height:3.6rem;
		line-height:3.6rem;
		background-size: 2.4rem auto;
	}
	
	#map-box #filterReset {
		width:3.6rem;
		height:3.6rem;
		line-height:3.6rem;
		background-size: 2.4rem auto;
	}
	
}

#map-box.opened-filter #filterStatus {
	background-color: var(--black);
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 36 36"><circle cx="18" cy="18" r="18" fill="%23fff" transform="rotate(-90 18 18)"/><path stroke="%230b0e1d" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M27.7 21.2 18.5 12l-9.3 9.2"/></svg>');
	color:#fff;
}


#filterStatus:focus,
#filterStatus:active,
#filterStatus:hover {
	box-shadow: 0px 0px 5px 5px var(--main-blue2);
	outline:0 none !important;
}


#checkboxControls {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap:1.5rem;
}

#checkboxControls > * {
	
}


/* hide native checkbox */
.pill-checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* base pill style */
.pill-label {
 display: inline-flex;
  align-items: center;
  justify-content: space-between;
  position:relative;
  overflow:Hidden;
  padding: 0.875rem 1rem 0.875rem 1.5rem;
  border-radius: 1.5rem;
  min-height: 4.57rem;
  box-sizing:border-box;
  width:100%;
  
  font-size: 1.28rem;
  font-weight: 700;

  cursor: pointer;
  background: var(--base-blue);
  color: #fff;
  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    border-color 0.2s ease;
}

/* icon circle */
.pill-icon {
	display:block;
	flex-shrink: 0; 

  width: 1.8rem;
  height: 1.8rem;
  border-radius: 999px;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 26 26"><circle cx="12.6" cy="12.6" r="11.1" stroke="%234c87c6" stroke-width="3"/></svg>') center center no-repeat;
  background-size: 100% auto;
  padding:0;

}

/* variant used for the check icon (right side pill) */
.pill-checkbox:checked + .pill-label .pill-icon {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 26 26"><path stroke="%237562a8" stroke-linecap="round" stroke-linejoin="round" stroke-width="4" d="m8 11.7 4 4.4 8-9"/><circle cx="12.6" cy="12.6" r="11.1" stroke="%237562a8" stroke-width="3"/></svg>') center center no-repeat;
  background-size: 100% auto;
}

/* checked state: blue pill, ring icon */
.pill-checkbox:checked + .pill-label {
  background: #fff;      /* blue background */
  color: var(--black);           /* white text */
}



/* Popup styling */
.ol-popup {
	position: absolute;
	background-color: rgba(26, 37, 66, 0.95);
	box-shadow: 0 3px 14px rgba(0,0,0,0.4);
	padding: 15px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	bottom: 12px;
	left: -50px;
	min-width: 200px;
}
.ol-popup:after, .ol-popup:before {
	top: 100%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.ol-popup:after {
	border-top-color: rgba(26, 37, 66, 0.95);
	border-width: 10px;
	left: 48px;
	margin-left: -10px;
}
.ol-popup:before {
	border-top-color: rgba(255, 255, 255, 0.2);
	border-width: 11px;
	left: 48px;
	margin-left: -11px;
}
.ol-popup-closer {
	text-decoration: none;
	position: absolute;
	top: 8px;
	right: 8px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
}
.ol-popup-closer:after {
	content: "✕";
}
.popup-content {
	color: #fff;
}
.popup-content h3 {
	margin: 0 0 10px 0;
	color: #6eb5ff;
	font-size: 16px;
}
.popup-content a {
	color: #6eb5ff;
	text-decoration: none;
	font-size: 14px;
}
.popup-content a:hover {
	text-decoration: underline;
}

section {
	clear:both;
	overflow:hidden;
	display:block;
	margin:0;
	padding-bottom:2rem;
}

section::after {
	content:"";
	display:table;
	clear:both;
}

@media screen and (min-width: 768px) {
	.titlebar + .g12.nomargins {
		margin: 0!important;
	}

	.titlebar + .g12 > .row {
		display:grid;
		grid-template-columns: repeat(3, 32%);
		gap:2rem;
		padding-bottom:2rem;
	}

	.titlebar + .g12 > .row > .col {
		width:100%;
		padding:0;
	}

	.titlebar + .g12 > .row > .col .card {
		margin:0;
	}
}





a.card-action {
	background: var(--main-blue2);
	border-radius: 1.5rem;
	color: #fff;
	font-family: "Anek Latin",sans-serif;
	font-size: 1rem;
	padding: 0.5rem 2rem 0.5rem 1rem;
	text-decoration: none;
	text-transform: uppercase;
	position: Relative;
	
	white-space:nowrap;
	overflow:Hidden;
	
	display:inline-block;
	margin-right: 1rem;
}

a.card-action:after {
	content: "";
	color: #fff;
	position: Absolute;
	right: 0.5rem;
	top: 50%;
	margin-top: -0.75rem;
	height: 1.5rem;
	width: 1rem;
	background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 6 10"><path stroke="%23fff" d="m.4.4 4.5 4.5L.4 9.4"/></svg>') center center no-repeat;
	background-size: auto 0.85rem;
}