html {overflow-y:scroll;}
#js-grid-juicy-projects .row{display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));gap: 24px;align-items: stretch;}
.cbp-item {height: 100%;}
.cbp img {
    display: block;
    width: auto;
    height: 150px;
    border: 0;
    margin: auto;}
.cbp-item .cbp-item-wrapper {height: 100%;display: flex;flex-direction: column;}
.partnersModule .card {box-shadow: 0 4px 8px rgba(0,0,0,0.4); padding: 0.5em 0.5em .75em; border-top: solid 3px #006bd0; max-height:350px; background:#ffffff;}
/*.partnersModule .card .logo-wrapper {background:#fff;}*/
.partnersModule .card .logo-wrapper img {padding:1em;}
.partnersModule .card .about-wrapper {text-align: center;}
.partnersModule .card .about-wrapper .name {font-size: 16px; font-weight: 600; color: #000; margin-top:.5em;}
.partnersModule .card .about-wrapper .eyebrow {font-size: 14px; color: #7f7f7f; font-weight: 500;}
.partnersModule .card .about-wrapper .moreLink {font-size: 14px; color: #0A3255;font-weight: 600; text-decoration: underline;}
.cbp-wrapper-outer {overflow:visible!important;}
.cbp-l-filters-button {margin-top: unset;}

.partners-sidebar {background: #f7f7f7; position:relative;}
.partners-sidebar .partner-filter-category {margin: 16px 0 22px 0;}
.partners-sidebar label.partner-category-option {
	display: flex;
	align-items: center;
	margin: 0;
	cursor: pointer;
	font-size: 16px;
	gap:10px;
	line-height: 1.12;
	font-weight: 400;
	color: #2c6ea3;
}

.cbp-filter-item.cbp-filter-item-active.all {background: transparent; border:none; text-decoration: underline; margin:0; padding:0; color:#000;}
/* checkbox on category */
.partners-sidebar label.partner-category-option input[type="checkbox"] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 0;
}

/* category text span */
.partners-sidebar .partner-category-label {
	display: inline-block;
}

/* TAG LIST INDENT under category */
.partners-sidebar .partner-filter-tags {
	margin-top: 10px;
	padding-left: 34px; /* indent like screenshot (accounts for checkbox + gap) */
}

/* TAG ROW = gray "SubTopic" styling */
.partners-sidebar label.partner-tag-option {display: flex;align-items: center;gap: 10px;margin: 10px 0;cursor: pointer;font-size: 16px;line-height: 1.15;font-weight: 300;color: #000;}

/* checkbox on tag */
.partners-sidebar label.partner-tag-option input[type="checkbox"] {
	flex: 0 0 auto;
	width: 16px;
	height: 16px;margin: 0;}
/* optional: subtle hover like a link list */
.partners-sidebar label.partner-category-option:hover .partner-category-label {text-decoration: underline;}
.partners-sidebar label.partner-tag-option:hover span {text-decoration: underline;}
/* optional: if you want the tag text to align perfectly even if checkbox sizes differ */
.partners-sidebar label.partner-tag-option span,
.partners-sidebar label.partner-category-option span {display: inline-block;}
div#js-filters-juicy-projects {
    background: #f7f7f7;
    padding: 1em;
}

p.caption {
    font-size: 14px;
    margin-top: 1em;
}
.bee-popup-addon {overflow:hidden;}

/* Desktop/tablet: keep your normal layout */
@media (min-width: 768px) {
	.partnersFiltersToggle,
	.partnersFiltersBackdrop,
	.partnersFiltersClose {
		display: none !important;
	}

	.partnersFiltersPanel {
		position: static;
		transform: none;
		height: auto;
		width: auto;
		max-width: none;
		box-shadow: none;
	}
}

/* Mobile: drawer overlay */
@media (max-width: 767px) {
	.partnersFiltersToggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 10px 12px;
		border: 1px solid #ccc;
		background: #0a3255;
		color:#fff;
		border-radius: 6px;
		margin-bottom: 12px;
		border-left: 0;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
	}

	.partnersFiltersBackdrop {
		position: fixed;
		inset: 0;
		background: rgba(0, 0, 0, 0.45);
		z-index: 9998;
	}

	.partnersFiltersPanel {
		position: fixed;
		top: 0;
		left: 0;
		height: 100vh;
		min-width: 45vw;
		width: 380px;
		background: #fff;
		z-index: 9999;
		overflow: auto;
		-webkit-overflow-scrolling: touch;

		transform: translateX(-105%);
		transition: transform 200ms ease;
		box-shadow: 0 10px 30px rgba(0,0,0,0.25);

		/* if your grid/layout uses floats/columns, fixed positioning ignores them */
	}

	.partnersFiltersPanel.is-open {
		transform: translateX(0);
	}

	.partnersFiltersHeader {
		position: sticky;
		top: 0;
		background: #fff;
		padding: 12px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		border-bottom: 1px solid #eee;
		z-index: 1;
	}

	.partnersFiltersClose {
		border: 0;
		background: transparent;
		font-size: 20px;
		line-height: 1;
		padding: 6px 8px;
		position:absolute;
        right: 5%;
        font-weight: 700;
	}
}

/* Body scroll lock when drawer is open */
body.filters-open {
	overflow: hidden;
}