.projects-page-header {
    padding: 145px 0 115px;
    background: #123e32;
}
.projects-page-header::before {
    background: linear-gradient(90deg, rgba(9, 40, 30, .88), rgba(9, 40, 30, .48) 65%, rgba(9, 40, 30, .2));
    opacity: 1;
}
.projects-page-header .page-header-box { text-align: left; }
.projects-page-header .page-header-box h1 {
    font-size: clamp(46px, 6vw, 84px);
    letter-spacing: -.045em;
    margin: 20px 0;
}
.projects-page-header .page-header-box .projects-banner-description { max-width: 660px; line-height: 1.8; }
.projects-eyebrow, .projects-section-label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .18em;
    line-height: 1.6;
}
.projects-eyebrow { color: #e0edb0; }
.projects-eyebrow::before, .projects-section-label::before {
    content: '';
    width: 24px;
    height: 2px;
    background: currentColor;
    flex-shrink: 0;
}
.projects-page-header .projects-breadcrumb-dots { text-align: left; padding-left: max(24px, calc((100vw - 1296px) / 2)); }
.projects-page-header .swiper-pagination-bullet { width: 25px; height: 4px; border: 0; border-radius: 4px; }
.all-projects-list { padding: 80px 0 95px; background: #f6f7f2; }
.all-projects-list .project-listing-heading { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 36px; }
.all-projects-list .projects-section-label { color: #547849; margin-bottom: 12px; }
.all-projects-list .project-listing-heading h2 { color: #173e30; font-size: clamp(30px, 3vw, 44px); letter-spacing: -.035em; line-height: 1.2; margin: 0 0 12px; }
.all-projects-list .project-listing-heading p { color: #6a746e; margin: 0; font-size: 15px; }
.projects-result-count { display: inline-flex; align-items: center; gap: 22px; border: 1px solid #d9e1d4; border-radius: 50px; padding: 10px 18px; color: #31533f; font-size: 13px; white-space: nowrap; }
.projects-result-count > span { font-size: 20px; }
.all-projects-list .project-filter-grid { gap: 28px; align-items: stretch; }
.all-projects-list .project-filter-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #e0e6dc; border-radius: 18px; overflow: hidden; box-shadow: 0 6px 24px #183d2905; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.all-projects-list .project-filter-card:hover { transform: translateY(-6px); border-color: #b4c6a6; box-shadow: 0 18px 40px #183d2912; }
.all-projects-list .project-filter-card:focus-visible { outline: 3px solid #527b3c; outline-offset: 5px; }
.all-projects-list .project-filter-image { height: 235px; border-radius: 0; }
.all-projects-list .project-filter-image img { transition: transform .5s ease; }
.all-projects-list .project-filter-image::after { background: linear-gradient(transparent 45%, #123e3250); }
.all-projects-list .project-filter-image > span { top: 18px; left: 18px; bottom: auto; background: #fff; color: #284f35; padding: 7px 13px; border-radius: 30px; font-size: 11px; font-weight: 600; box-shadow: 0 2px 10px #0000000c; max-width: calc(100% - 36px); }
.all-projects-list .project-filter-body { padding: 25px 24px 18px; flex: 1; }
.all-projects-list .project-filter-body h3 { font-size: 21px; line-height: 1.4; color: #173e30; letter-spacing: -.02em; margin-bottom: 16px; overflow-wrap: anywhere; }
.all-projects-list .epc-location { font-size: 12px; font-weight: 600; color: #48644b; margin-bottom: 9px; }
.all-projects-list .epc-location i { margin-right: 5px; color: #6f9448; }
.all-projects-list .project-filter-body p { font-size: 14px; line-height: 1.75; color: #6a746e; margin: 15px 0 0; }
.all-projects-list .project-filter-body .epc-description { display: block; overflow: visible; }
.all-projects-list .epc-highlights { margin: 16px 0 0; padding-left: 17px; color: #627064; line-height: 1.8; }
.all-projects-list .epc-highlights li::marker { color: #81a354; }
.all-projects-list .epc-commissioning { font-size: 12px; line-height: 1.7; color: #49624c; font-weight: 500; }
.projects-card-link { margin: 0 24px; padding: 16px 0 20px; border-top: 1px solid #e9ede5; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #244d34; font-size: 13px; font-weight: 700; }
.projects-card-arrow { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #edf2e5; font-size: 20px; transition: background .2s, color .2s; }
.project-filter-card:hover .projects-card-arrow { background: #244d34; color: #fff; }
.projects-empty { grid-column: 1 / -1; text-align: center; padding: 65px 24px; background: #fff; border: 1px dashed #c9d5c0; border-radius: 18px; }
.projects-empty h3 { color: #244d34; font-size: 24px; margin-bottom: 12px; }
.projects-empty p { color: #6a746e; margin: 0; }
@media (max-width: 991px) {
    .projects-page-header { padding: 105px 0 85px; }
    .all-projects-list { padding: 55px 0 65px; }
    .all-projects-list .project-filter-grid { gap: 22px; }
}
@media (max-width: 575px) {
    .projects-page-header { padding: 75px 0 70px; }
    .projects-eyebrow { font-size: 9px; letter-spacing: .13em; }
    .all-projects-list { padding: 40px 0 50px; }
    .all-projects-list .project-listing-heading { flex-direction: column; align-items: flex-start; gap: 18px; margin-bottom: 26px; }
    .all-projects-list .project-filter-image { height: 225px; }
    .all-projects-list .project-filter-body { padding: 22px 20px 18px; }
    .projects-card-link { margin: 0 20px; }
}
@media (prefers-reduced-motion: reduce) {
    .all-projects-list .project-filter-card, .all-projects-list .project-filter-image img, .projects-card-arrow { transition: none; }
    .all-projects-list .project-filter-card:hover, .all-projects-list .project-filter-card:hover img { transform: none; }
}
