.park-filters-sidebar {
    width: 280px;
    min-width: 280px;
    max-width: 280px;
    flex-shrink: 0;
    align-self: flex-start; /* don't stretch to match results height */
}

/* Whatever your accordion wrapper is inside park-filters */
.park-filters-sidebar .accordion,
.park-filters-sidebar .filter-group,
.park-filters-sidebar > * {
    width: 100%;
    box-sizing: border-box;
}

.park-search-layout {
    display: flex;
    flex-wrap: nowrap;
    gap: 2rem;
    margin-top: 2rem;
}

@media (max-width: 768px) {
    .park-search-layout {
        flex-direction: column;
        flex-wrap: wrap;
    }
}.accordion-toggle

.park-filters-sidebar {
    flex: 1 1 300px;
    max-width: 300px;
}

@media (max-width: 768px) {
    .park-filters-sidebar {
        max-width: 100%;
    }
}

.park-results-area {
    flex: 2 1 600px;
}

.park-result {
    display: flex;
    align-items: flex-start;
    margin-bottom: 2rem;
    border-bottom: 1px solid #ddd;
    padding-bottom: 1rem;
}

.park-result img {
    max-width: 120px;
    height: auto;
    margin-right: 1rem;
}

.park-result h2 {
    margin: 0 0 0.5rem;
}

.park-result a {
    text-decoration: none;
}

fieldset {
    margin-bottom: 1.5rem;
}

legend {
    font-weight: bold;
    margin-bottom: 0.5rem;
}
.accordion {
/*     border-bottom: 1px solid #1a7245; */
    margin-bottom: 1rem;
}

.accordion-toggle {
    display: flex;
    width: 100%;
    text-align: left;
	color: #fff;
    background: var(--color-green);
    border: none;
    padding: 0.75rem;
    font-weight: bold;
    font-size: 1rem;
    cursor: pointer;
	justify-content: space-between;
}

/* Add the Font Awesome down arrow icon */
.accordion-toggle::after {
    font-family: "Font Awesome 6 Free"; /* Or 5 if you're using FA5 */
    content: "\f078"; /* fa-chevron-down */
    font-weight: 900;
    margin-left: 0.5rem;
    transition: transform 0.3s ease;
}

/* Rotate or switch icon when expanded */
.accordion-toggle[aria-expanded="true"]::after {
    content: "\f077"; /* fa-chevron-up */
}

.accordion-toggle active {
	border-radius: 0px!important
}

.accordion-content {
    padding: 0.75rem 1rem;
    background: #fff;
	border: 1px solid #1a7245;
}
.park-results-header {
    margin-bottom: 2rem;
}

#reset-filters {
    padding: 8px 50px;
    background: var(--color-green) !important;
    color: var(--color7) !important;
    text-decoration: none;
    font-weight: 700;
    font-size: 20px;
	border: none!important;
    margin: 0 auto;
    transition: color 0.3s, background-color 0.3s !important;
}

#reset-filters:hover{
	background: var(--color-brown-dark) !important;
}

.accordion button:hover {
	color: var(--color-white);
}

		.ecl-list {
			list-style: none;
			margin: 0;
			padding: 0;
		}
		.ecl-list li {
			display: flex;
			align-items: stretch;
			gap: 0;
			margin-bottom: 16px;
			border: 1px solid #e5e5e5;
			overflow: hidden;
		}
		.ecl-date {
			display: flex;
			flex-direction: column;
			align-items: center!important;
			justify-content: center!important;
			background: var(--color-green);
			color: #fff!important;
			min-width: 80px;
			padding: 50px 60px;
			text-align: center;
			flex-shrink: 0;
		}
		.ecl-month {
			font-size:24px!important;
			color: var(--color-gold)!important;
			font-weight: 100!important;
			letter-spacing: 1px;
			text-transform: uppercase;
			line-height: 1;
		}
		.ecl-day {
			font-size: 50px!important;
			font-weight: 700;
			line-height: 1;
			color: var(--color-white)!important;
			margin: 4px 0 2px;
		}
		.ecl-year {
			font-size: 16px!important;
			color: var(--color-gold)!important;
			font-weight: 100!important;
			opacity: 0.8;
			line-height: 1;
		}
		.ecl-info {
			flex: 1;
			padding: 0px 20px;
			display: flex;
			flex-direction: column;
			justify-content: center;
			gap: 6px;
		}
		.ecl-title {
			margin: 0;
			font-size: 18px;
			font-weight: 700;
			text-transform: uppercase;
			letter-spacing: 0.5px;
			line-height: 1.2;
		}
		.ecl-title a {
			color: var(--color-brown-primary)!important;
			text-decoration: none;
			font-family: 'National Forest', Georgia, serif;
    font-size: 30px;
    line-height: 1.2em;
    margin-top: 0px !important;
			letter-spacing: 0px;
		}
		.ecl-title a:hover {
			text-decoration: underline;
		}
		.ecl-meta {
			display: flex;
			flex-direction: column;
			gap: 3px;
			margin: 2px 0;
		}
.ecl-time {
	font-size: 20px!important;
}
		.ecl-time,
		.ecl-venue {
			font-size: 20px;
			color: #555;
			display: flex;
			align-items: center;
			gap: 5px;
		}
		.ecl-venue a {
			color: #3a5140;
			text-decoration: underline;
		}
		.ecl-excerpt {
			font-size: 16px;
			color: #000;
			line-height: 1.5;
			margin: 4px 0 0;
		}
		.ecl-excerpt a {
			color: #3a5140;
			font-weight: 600;
			text-decoration: none;
		}
		.ecl-excerpt a:hover {
			text-decoration: underline;
		}
		.ecl-image {
			width: 295px;
			flex-shrink: 0;
			overflow: hidden;
		}
		.ecl-image img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
		}
		.ecl-image-placeholder {
			width: 200px;
			flex-shrink: 0;
			background: #e8ede9;
		}
		@media (max-width: 768px) {
			.ecl-list li {
				flex-wrap: wrap;
			}
			.ecl-image,
			.ecl-image-placeholder {
				width: 100%;
				height: 200px;
				order: -1;
			}
			.ecl-date {
				min-width: 70px;
				padding: 50px 60px;
				
			}
			.ecl-day {
				font-size: 36px;
			}
		}

/* --- Layout ---------------------------------- */
.park-search-layout {
    display: flex;
    align-items: flex-start;
    gap: 40px;
    margin-top: 40px;
}

.park-results-header {
    flex: 1;
    min-width: 0; /* prevents flex overflow */
}

.park-results-header > p {
    margin-bottom: 16px;
    font-size: 15px;
    line-height: 1.6;
}

/* --- Reset Button ---------------------------- */
#reset-filters {
    display: inline-block;
    padding: 8px 20px;
    border: 1px solid #ccc;
    background: #fff;
    font-size: 14px;
    cursor: pointer;
    border-radius: 2px;
    transition: background 0.2s ease, border-color 0.2s ease;
    margin-bottom: 28px !important;
}

#reset-filters:hover {
    background: #f4f4f4;
    border-color: #999;
}

/* --- Park Results List ----------------------- */
.park-results-area .park-card,
.park-results-area article {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding-bottom: 28px;
    margin-bottom: 28px;
    border-bottom: 1px solid #e5e5e5;
}

.park-results-area .park-card:last-child,
.park-results-area article:last-child {
    border-bottom: none;
}

/* Park badge/logo thumbnail */
.park-results-area .park-thumb,
.park-results-area .park-card img,
.park-results-area article img {
    width: 120px;
    height: 90px;
    object-fit: contain;
    flex-shrink: 0;
}

/* Park name heading */
.park-results-area h2,
.park-results-area .park-title {
    font-size: 22px;
    margin-bottom: 6px;
    line-height: 1.3;
}

/* Address / phone / email meta */
.park-results-area .park-meta,
.park-results-area p {
    font-size: 16px;
    line-height: 1.7;
    margin: 0;
    color: #444;
}

.park-results-area a {
    color: #2a6496;
    text-decoration: none;
}

.park-results-area a:hover {
    text-decoration: underline;
}

/* --- Sidebar Accordion ----------------------- */
.park-filters-sidebar {
    width: 280px;
    min-width: 280px;
    max-width: 280px;
    flex-shrink: 0;
    align-self: flex-start;
    position: sticky;
    top: 24px; /* sticks while scrolling results */
}

.park-filters-sidebar > * {
    width: 100%;
    box-sizing: border-box;
}

/* Accordion header bar */
.park-filters-sidebar .accordion-header,
.park-filters-sidebar .filter-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #2e6b3e; /* match your green */
    color: #fff;
    font-weight: 700;
    padding: 12px 16px;
    cursor: pointer;
    user-select: none;
}

/* Checkbox list */
.park-filters-sidebar ul,
.park-filters-sidebar .filter-list {
    list-style: none;
    margin: 0;
    padding: 12px 16px;
    background: #fff;
    border: 1px solid #ddd;
    border-top: none;
}

.park-filters-sidebar li {
    padding: 4px 0;
    font-size: 14px;
    line-height: 1.5;
}

.park-filters-sidebar input[type="checkbox"] {
    margin-right: 8px;
    accent-color: #2e6b3e;
}

/* --- Responsive ------------------------------ */
@media (max-width: 768px) {
    .park-search-layout {
        flex-direction: column;
        gap: 24px;
    }

    .park-filters-sidebar {
        width: 100%;
        min-width: unset;
        max-width: unset;
        position: static;
    }
}