/* Listing CSS */

[class*=grid-] {
  display: grid;
  gap: 1.876em;
}
.project {
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.project__inner {
  background: #003057;
  color: #ffffff;
  display: block;
  height: 100%;
  padding: .8125rem .8125rem 70.7%;
  position: relative;
  z-index: 1;
}
.project__inner:before {
  background-color: #000;
  background: linear-gradient(180deg, #000 .03%, hsla(0, 0%, 100%, 0));
  content: "";
  display: block;
  height: 100%;
  left: 0;
  opacity: .6;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.project__inner:hover,
.project__inner:active,
.project__inner:focus{
  color:#fff;
}
.project__inner:is(a) {
  text-decoration: none;
  transition: box-shadow .4s ease-in-out;
  will-change: box-shadow;
}
.project__inner:before,
.project__inner,
.project__image {
  border-radius: 8px;
}
.project__title {
  text-decoration: none;
  font-size: clamp(1rem, 5vw, 1.5rem);
  line-height: 1.6rem;
  color: #ffffff;
  margin:0;
}
.project__links,
.project__tags {
  margin-top: .5rem;
}
.project__tags {
  display: none;
  font-size: .875rem;
}
.portfolio-wrap,
.project__badge {
  position: relative;
}

.project__badge {
  background: transparent;
  border: 1px solid #FFFFFF;
  color: #FFFFFF;
  display: inline-block;
  font-size: clamp(.5rem, 3vw, .75rem);
  line-height: .625rem;
  margin-top: 1.5rem;
  padding: .3125rem 1em;
  text-transform: uppercase;
}
.project__button {
  position: absolute;
  bottom: 10px !important;
  right: 10px !important;
  width: 35px !important;
  height: 35px !important;
  border-radius: 50% !important;
  background-color: #ffffff !important;
  text-align: center !important;
  will-change: background-color;
  transition: background-color .4s ease-in-out;
}
.project__button i {
  width: 2em;
  height: 2em;
  color: #003057;
  will-change: fill;
  transition: fill .4s ease-in-out;
  position: relative;
  top: 8px;
  display: inline-block;
  height: 24px;
  transition: width .3s ease-in-out, height .3s ease-in-out;
  vertical-align: middle;
  width: 24px;
}

.project__image,
.project .hawk-sqItemImage-thumb,
section[data-autocomplete-source-id=projectsPlugin] .aa-List .aa-Item .hawk-sqItemImage-thumb {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* FILTER STYLES - FIXED FOR BOTH DESKTOP AND MOBILE */
.project-filters-container {
  display: flex;
  flex-direction: column;
  margin-bottom: 1rem;
  gap: 10px;
  max-width: 74.75em;
  margin: 0 auto 1rem auto;
}

/* Hide mobile toggle buttons completely */
.project-filters__toggle {
  display: none !important;
}

.project-filters-wrap {
  position: static;
  z-index: 2;
  top: auto;
  left: auto;
  display: flex;
  align-items: flex-start;
  gap: 15px;
  width: 100%;
  height: auto;
  transform: none;
  overflow: visible;
  background: none;
  flex-direction: column;
  padding:0 16px;
}

.project-filters-title {
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.875rem;
  white-space: nowrap;
  display: block;
}

/* Show filters on ALL devices */
.project-filters {
  display: flex !important;
  gap: 15px;
  align-items: flex-start;
  overflow-y: visible;
  height: auto;
  flex-direction: column;
  width: 100%;
  flex-wrap: wrap;
}

.project-filters .project-filter {
  border-bottom: 0;
  padding: 0;
  width: 100%;
  position: relative;
}

/* Hide mobile-specific elements */
.project-filters__header,
.project-filters__actions,
.project-filters__header-close {
  display: none !important;
}

[type=button], [type=reset], [type=submit], button {
  -webkit-appearance: button;
}

.ais-Dropdown .ais-Panel-header {
  margin-bottom: 0;
}

.faux-drop__toggle {
  background: #e5e5e5;
  border: 0;
  border-radius: 5px;
  color: #666;
  cursor: pointer;
  display: block;
  font-size: 1rem;
  font-weight: 700;
  font-weight: 400;
  margin: 0;
  padding: 1rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.faux-drop__toggle:hover,
.faux-drop__toggle:active,
.faux-drop__toggle:focus{
  background: #e5e5e5;
  border: 0;
  border-radius: 5px;
  color: #666;
  cursor: pointer;
  display: block;
  font-size: 1rem;
  font-weight: 700;
  font-weight: 400;
  margin: 0;
  padding: 1rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.faux-drop__toggle:after {
  background: none;
  border: 5px solid transparent;
  border-top: 5px solid #003057;
  content: "";
  display: block;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  transition: all .4s ease-in-out;
}

/* FIXED: Dropdowns should be HIDDEN by default */
.ais-Dropdown .ais-Panel-body {
  display: none !important; /* Hidden by default */
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1000;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-top: none;
  border-radius: 0 0 5px 5px;
  max-height: 300px;
  overflow-y: auto;
  padding: 1rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* Show dropdown when active */
.ais-Dropdown .ais-Panel-body.show {
  display: block !important;
}

.ais-Dropdown-mobileTitle {
  display: none;
  margin-top: 0;
}

.ais-RefinementList-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ais-RefinementList-label {
  display: block;
  cursor: pointer;
  align-items: baseline;
}

input[type=checkbox].ais-RefinementList-checkbox {
  height: 18px;
  width: 18px;
  border: 1px solid currentcolor;
  border-radius: 3px;
  margin: 0 .5rem 0 0;
  background-color: #fff;
  background-position: 50%;
  background-size: 180%;
  box-shadow: inset 0 1px 3px #00000030;
  color: #d6d6e7;
  cursor: inherit;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  transition: background-color .3s ease-in-out, border-color .3s ease;
}

.ais-RefinementList-labelText {
  font-family: Libre Franklin, sans-serif;
  line-height: 1.4;
  margin-left: 5px;
  font-size: 1rem;
}

.ais-RefinementList-count {
  background: #003057 none repeat scroll 0% 0%;
  border-radius: 99999px;
  color: #ffffff;
  display: inline-flex;
  flex-shrink: 0;
  font-size: .75rem;
  font-weight: 400;
  line-height: 1rem;
  margin-left: .5rem;
  overflow: hidden;
  padding: 0 .25rem;
}

/* Search Box Styles */
.project-search {
  display: block;
  width: 100%;
  margin-top: 1rem;
}

.ais-SearchBox-form {
  width: 100% !important;
}

.project-search__form {
  position: relative;
}

.ais-SearchBox-input {
  outline: 0;
}

.project-search__input,
input[type=text].project-search__input {
  width: 100%;
  height: 50px;
  background-color: #e5e5e5 !important;
  border: 2px solid #e5e5e5 !important;
  border-radius: 5px;
  padding: 0 45px 0 16px;
  box-shadow: none;
  font-size: 1rem;
  color: #333;
  appearance: none;
}

.project-search__submit {
  position: absolute;
  top: 0;
  right: 0;
  border: 0;
  padding: 0;
  width: 40px;
  height: 100%;
  background-color: transparent;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdERjdERjgzQTVFMzExRUFBQkZFOTZFM0MxRTYzNjhFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdERjdERjg0QTVFMzExRUFBQkZFOTZFM0MxRTYzNjhFIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6N0RGN0RGODFBNUUzMTFFQUFCRkU5NkUzQzFFNjM2OEUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6N0RGN0RGODJBNUUzMTFFQUFCRkU5NkUzQzFFNjM2OEUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4jm+aXAAAELElEQVR42sxYX0hTURi/u4SRZe6honzZepmVkJNWhITbXgIT3UahUaALiv5ApBX45pxPRdKIHhQS3Hwqe3AqRfSyTQgiDa89mO5lWw8a1cPKuoEv6/t0l7bjvXeec69uB4bHu517f/d3ft/v+75jyGQyHM1Ir/wpm4unrMJiygpzo3TdWLE7ba02CbUWkwDzVW6Lxo7NggxNTnnDkWlXdGbeAZfKVX4uup22sNt5cryj2T6qN2BDIYZDk7HWzkehQHpFrKK8t2iu2p/svXHBrydwRcDJpe8HPHf7x3DrCzBaEDhKJfKsx6mHVGQBw7afQrAMrCoOYHt+7PE9j7XaHNcVMIJ1XuuLqLAqQmB9Ap2O4T8AQBAWk7gLXDgy44GAPK601lhRvoRMawGdBxhlUHexe1aBWdF3/bzf2+IIAlvflG6I9+gdfOmHIG2XA45Mzz5/UMcqjzzAAPYdaLae/BEw+j4cuO9SA0oOYN3i7RkIAeOnye8ctmOvgekmFsC8NAlORFuzAZY3OpobBqNDPXYasFmpxHEdvqxMjDjAIs8yM4w+e7jpdoKUAj4MH6oluvHe1rbuudTyjyOkNBKvntYwMRyciHlldCuiDLRaEa7H++D9CK2bWVjm16N72kN+gQFGKwM1eYC0RojL5XLPLQgYtyz28XMDyS66gZ4ptfPyuQDJ8nh0poUasFwmQ5/Vi91clk2H9n3J17doRN+nBJzc4AxSUtB7gJ1FSVmwSMLIbdOAXUvI+LWVyYeJ7RO26yVoCeMVspR1uwBj4U8FmHaBlgEBXqd1N3m5BWA3rq0AnK3k8uwTKrg0JWCTQPojWh1WXfqym7Rgdsu9Vrln1y/aUhMlsepy2CZIu8ESUU/AXf0jAdLGoO8LM6XmrO+K+b3cVDuyogdYTA7Z5pXMpsNMgGHhKJmFkI0rvoFhTN0abasM2y2SXfuJo1OQSD4w18PQ3fpktFyP7RIraFy3vn5jJZitLdgLeGQZawgZK1oDTSsPlAHW2HIdDFZuoN+3mlskpWL7v+bswTuXGp+oRTa+GAaY0oELSI8TXjzcqUtPJz3QcdUf+/n770G1AxIsZOBvKmddbdYOzWpFDfgulprdOAd3CtPamuy5BIJ2d/WPKzDNNJBZ2EEOiNDU9isVP3HYtlqI5DdkILKc/GAjizKQmM2ph6to44NX68WiQ75GPK0BdhYYgIv4wrg+2HfrppJmaUEbNnvciscAEEhO6MPcsK17FXQqYrrFDIZJgfRZtfjYrDwMtOfDkmVJZahUzzpsNVEsZAo9UCtoJsB6FEKsoHmuCGP9VMhnB/l8pdV0UQBrAV00wKygiwqYBXTRAdOCLopLaHEPniuhocY0EMtLk5L7zC4kLJVnvMuctS2DH5zjtTU1lCLgXNC5YPFTUhqW07QkFenaPwEGAFiSmyGIQ8hmAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 20px 20px;
  cursor: pointer;
}

.ais-SearchBox-submit,
.ais-SearchBox-submit svg{
  display: none;
}

[hidden], template {
  display: none;
}

/* Pagination Styles */
.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 2rem 0;
}

.page-item.page-item--disabled {
  display: none;
}

.page-item {
  color: #000000;
  display: block;
  text-decoration: none;
}

.active .page-link {
  background: #e5e5e5;
  text-decoration: none;
}

.page-link {
  background: transparent;
  border-radius: 4px;
  color:#262626;
  display: block;
  font-weight: 700;
  padding: 7px 14px;
  transition: background .3s ease-in-out;
}

.page-link:is(a):focus,
.page-link:is(a):hover {
  background: #e5e5e5;
  text-decoration: none;
}

/* RESPONSIVE STYLES */
@media (max-width: 767px) {
  /* Mobile-specific styles */
  .project-filters {
    flex-direction: column;
  }

  .project-filters .project-filter {
    width: 100%;
  }
}

@media (min-width: 48em) {
  .grid-sm-3x3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .project__inner {
    padding: .8125rem .8125em 92%;
  }

  /* Better layout for tablets */
  .project-filters {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .project-filters .project-filter {
    width: auto;
    min-width: 200px;
  }
}

@media (min-width: 64em) {
  .mt-lg-8 {
    margin-top: 2rem !important;
  }
  .project__inner {
    padding: 1.875rem 1.875em 81% !important;
  }
  .project__tags {
    display: block;
    word-break: break-word;
  }
  .project__badge {
    line-height: 1.125rem;
  }
  .project__button {
    background: rgba(0, 0, 0, .4);
    bottom: 1rem;
    color:#FFFFFF;
    height: 50px;
    right: 1rem;
    width: 50px;
  }
  .project__button .icon {
    height: 3em;
    width: 3em;
  }

  /* Desktop layout improvements */
  .project-filters-container {
    flex-direction: row;
    gap: 30px;
    flex-wrap: nowrap;
  }

  .project-filters-wrap {
    flex-direction: row;
    gap: 30px;
    align-items: center;
    width: 70%;
  }

  .project-filters {
    flex-direction: row;
    gap: 30px;
  }

  .project-filters .project-filter {
    flex-grow: 1;
  }

  .project-search {
    width: 30%;
    margin-top: 0;
  }
}


/*//////////////////////////// Post CSS ///////////////////////*/


.breadcrumb {
  list-style: none;
  margin: 0;
  padding: 20px 20px 20px 0;
}
.breadcrumb li {
  display: inline-block;
  font-size: .85em;
  padding-right: 15px;
  position: relative;
}
.breadcrumb li .breadcrumb-link {
  color: #003057;
  font-weight: 700;
  text-decoration: none;
}
.breadcrumb li:not(:last-child)::after {
  border: 0;
  border-bottom: 2px solid #003057;
  border-right: 2px solid #003057;
  content: "";
  display: block;
  height: .45em;
  margin: 0;
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  width: .45em;
}
.project-detail,
.project-detail__layout {
  position: relative;
}
.project-detail {
  padding-bottom: 1rem;
}

.project-detail h1{
  font-size: clamp(2.25rem, 5vw, 4.5rem);
  letter-spacing: -1px;
  line-height: 1;
}

.casestudy__banner {
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: row;
  margin-bottom: 8rem;
  min-height: 250px;
  position: relative;
}
.casestudy__banner-inner {
  align-items: flex-end;
  display: flex;
  width: 100%;
}
.casestudy__header .casestudy__results {
  max-width: 300px;
}
.results-container {
  padding: 0 .938em 2.8125rem;
}
.results__item--banner:first-child {
  display: flex;
}
.results__item--banner {
  color: #FFFFFF;
  display: none;
  flex-flow: row wrap;
  margin: 0;
  padding: 0;
  width: auto;
}
.results__item {
  position: relative;
}
.results__item--banner .result__number,
.results__item--banner .result__symbol {
  color: #FFFFFF;
}
.result__number {
  font-size: 3.75rem;
  line-height: 70px;
  font-weight:700;
}
.result__number,
.result__symbol {
  display: inline-block;
}
.results__item--banner .result__number,
.results__item--banner .result__symbol {
  color: #FFFFFF;
}
.result__symbol {
  font-size: 1.875rem;
}
.result__number,
.result__symbol {
  display: inline-block;
}
.results__item--banner .result__text {
  width: 100%;
  margin:0;
}
.casestudy__results .result__text--banner {
  color: #FFFFFF;
}
.result__text {
  font-size: 1rem;
  font-weight: 400;
  line-height: normal;
  width: 100%;
}
.project-detail__header-wrap {
  margin-left: auto;
  max-width: 105.125em;
  padding: 0 .938em;
}
.project-detail__header {
  min-height: 35em;
}
.project-detail__column h2{
  font-size: clamp(1.5rem, 5vw, 3rem);
  font-weight:700;
}
.project-detail__column.project-detail__column--case-study li{
  font-size: 1rem;
  line-height: 1.75rem;
}
.project-detail__column h2:first-child {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.75rem;
  margin-bottom: 1.25rem;
}
.related-projects-wrapper h2{
  font-size: clamp(1.5rem, 5vw, 3rem);
}
.project-detail__column  p{
  line-height: 1.75rem;
  margin: 0 0 2.25rem;
}
.project-deatil .project__links,
.project-detail .project__tags,
.project-detail__challenges,
.project-detail__overview {
  display: block;
  font-size: .875rem;
  line-height: 1.75rem;
}
.project-detail__challenges {
  margin-top: 1.25rem;
}
.project-testimonial {
  background-color: #fff;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-height: 20rem;
  padding: 1.875rem 1em;
}
.project-testimonial__logo {
  align-items: center;
  display: flex;
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.project-testimonial__logo:before {
  align-self: stretch;
  background: #cbcbcb;
  content: "";
  display: "block";
  order: 2;
  position: "static";
  width: 2px;
}
.project-testimonial__logo i {
  height: 1.4em;
  order: 1;
  width: 1.4em;
  fill: #c8102e;
  color:#c8102e;
  display: inline-block;
  font-size: 26px;
  transition: width .3s ease-in-out, height .3s ease-in-out;
  vertical-align: middle;
}
.project-testimonial__logo .project-testimonial__img-wrap {
  order: 3;
}

.project-testimonial__text p:first-child {
  font-size: clamp(1rem, 3vw, 1.125rem);
  line-height: 2;
}
.project-detail__info {
  -moz-columns: 2;
  column-count: 2;
  -moz-column-gap: 22px;
  column-gap: 22px;
  font-size: .875rem;
  overflow: hidden;
  width: -moz-max-content;
  width: max-content;
  margin-top:50px;
}
.project-detail__info-block {
  margin-bottom: 1em;
  overflow: hidden;
}
.project-detail__spotlight-image {
  margin: -1.5em 0;
  position: relative;
}
.project-detail__info-block-title {
  font-size: .875rem;
  font-weight: 700;
  margin: 0;
}
.project__links, .project__tags
{
  margin-top: .5rem !important;
}
.project__links {
  word-break: break-all;
}
.project__links,
.project__tags {
  list-style: none;
  margin: 0;
  padding: 0;
}
.project__link:visited {
  text-decoration: underline;
}
.project-detail__spotlight-media {
  margin: 2.5rem 0;
  position: relative;
  text-align: center;
  overflow:hidden;
}

.project-detail__spotlight-media:before {
  background: #e5e5e5;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.project-detail__spotlight-media .container {
  padding-top: 65%;
  position: relative;
}
.project-detail__spotlight-media .container .project-detail__spotlight-image {
  left: 0;
  position: absolute;
  top: 3%;
  width:100%;
}
.lazy-bg.inView, .lazy-img.inView {
  opacity: 1;
}
.project-detail__solutions {
  color: #333;
  line-height: 1.75rem;
  margin: 2.5rem 0;
  max-width: 58.125em;
}
.project-detail__solutions h2{
  font-size: clamp(1.5rem, 5vw, 3rem);
  line-height: 1.083;
  margin: 0 0 30px;
}
.project-detail__results .results {
  align-items: start;
  -moz-column-gap: 0;
  column-gap: 0;
}
.project-detail__results .grid-2x2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.project-detail__results .result {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: .25rem;
}
.color-navy {
  color: #003057 !important;
}
.project-detail__results .result__arrow {
  align-self: flex-start;
}
.project-detail__results .result__arrow svg{
  stroke: #003057;
}

.project-detail__results h2{
  font-size: clamp(1.5rem, 5vw, 3rem);
  line-height: 1.083;
  margin: 0 0 30px;
}

.bottom-pane .content-block {
  line-height: 1.75rem;
}
.bottom-pane .content-block:after {
  clear: both;
  content: "";
  display: table;
}
.bottom-pane hr {
  border: 0;
  border-top: 2px solid #e5e5e5;
  display: block;
  height: 2px;
  margin: 3em 0;
  padding: 0;
}
.bottom-pane .text-center {
  text-align: center;
  margin-bottom:50px;
  font-size: clamp(1.5rem, 5vw, 3rem);

}
.casestudy__banner-media {
  flex-grow: 1;
  position: absolute;
  right: 0;
  text-align: right;
  top: 50%;
  z-index: 1;
}
.casestudy__banner-img {
  max-height: 230px;
  max-width: none;
}
@media (min-width: 85.438em) {
  .project-testimonial {
    padding: 5em 7.5em;
  }
}

@media (min-width: 80em) {
  .casestudy__banner {
    flex-direction: column;
    justify-content: flex-end;
    margin-bottom: 0 !important;
    min-height: 500px !important;
  }
  .casestudy__results {
    width: 53%;
  }
  .casestudy__results-inner {
    bottom: 0;
    left: 0;
    margin: 0 auto;
    max-width: 90.125rem;
    padding: 0 .938em;
    position: absolute;
    right: 0;
    width: 100%;
  }
  .results-container {
    display: grid;
    gap: .625rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 45.625rem;
    padding-left: 0 !important;
  }
  .result__number {
    font-size: 5.625rem !important;
    line-height: 100px;
  }
  .result__text {
    font-size: 1.5rem !important;
  }
  .project-detail__header-wrap {
    padding-right: 0;
  }
  .project-detail__header--case-study {
    flex-flow: nowrap;
    padding-top: 5rem;
  }
  .project-detail__header {
    display: flex;
    gap: clamp(60px, 4vw, 80px);
    min-height: 0;
  }
  .project-detail__column {
    width: 50%;
  }
  .project-detail__column h2:first-child {
    font-size: 3rem;
    line-height: 3.125rem;
    margin-bottom: 3.5rem;
  }
  .project-detail__challenges {
    margin-top: 2.5rem;
  }
  .project-detail__column:nth-child(2) {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    gap: 3em;
  }
  .project-detail__column {
    width: 50%;
  }
  .project-testimonial.project-testimonial--desktop {
    display: flex ;
  }
  .project-testimonial {
    min-height: 34.375rem;
  }
  .casestudy__body,
  .project-detail__spotlight-media {
    margin: 5.5em 0 8.5em;
  }
  .casestudy__body:before,
  .project-detail__spotlight-media:before {
    width: 90%;
  }
  .project-detail__spotlight-media .container {
    padding-top: 56.25rem !important;
  }
  .project-detail__spotlight-image {
    margin: -3em 0;
  }
  .casestudy__banner-media {
    align-self: stretch;
    margin-bottom: -1.5rem !important;
  }
  .casestudy__banner-img {
    max-height: 400px !important;
  }
}
@media (min-width: 64em) {
  .casestudy__banner {
    min-height: 450px;
  }
  .result__symbol {
    font-size: 3.125rem;
  }
  .project-detail__results .results {
    -moz-column-gap: 1.876em;
    column-gap: 1.876em;
  }
  .result__arrow .icon {
    width: 2em;
  }
}
@media (min-width: 48em) {
  .casestudy__banner {
    margin-bottom: 3.5rem;
  }
  .results-container {
    align-items: center;
    display: flex ;
    flex-flow: row nowrap;
    gap: 1rem;
    padding: 2em 1em;
  }
  .results__item--banner {
    display: flex;
    max-width: none;
  }
  .result__number {
    font-size: 5rem;
    line-height: 100px;
  }
  .result__text {
    font-size: 1.125rem;
  }
  .project-detail__challenges,
  .project-detail__overview,
  .spotlight__tags {
    font-size: 1rem;
    line-height: 1.75rem;
  }
  .project-detail__info-block-title {
    font-size: 1.125rem;
  }
  .project-detail__spotlight-media .container {
    padding-top: 75%;
  }
  .casestudy__banner-media {
    margin-bottom: -4.5rem;
    margin-left: auto;
    position: relative;
    right: auto;
    text-align: right;
    top: -5%;
  }
  .casestudy__banner-img {
    max-height: 350px;
    position: relative;
    top: auto;
  }
}





/* /////////////////////////
///////////////////////////
//////////////////////////
*  */

/* Fix for checkbox styling */
.ais-RefinementList-checkbox {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid #ddd !important;
  border-radius: 3px !important;
  background-color: white !important;
  position: relative !important;
  cursor: pointer !important;
  margin-right: 8px !important;
}

.ais-RefinementList-checkbox:checked {
  background-color:#003057 !important;
  border-color:#003057 !important;
}

.ais-RefinementList-checkbox:checked::after {
  content: '✓' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  color: white !important;
  font-size: 12px !important;
  font-weight: bold !important;
}

.ais-RefinementList-label {
  display: flex !important;
  align-items: center !important;
  cursor: pointer !important;
  padding: 4px 0 !important;
}

.ais-RefinementList-label:hover {
  background-color: #f8f9fa !important;
}


.ais-Panel.ais-Dropdown.project-filter {
  position: relative;
}

.ais-Panel-body {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  background: white !important;
  border: 1px solid #ddd !important;
  border-top: none !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
  z-index: 1000 !important;
  max-height: 300px !important;
  overflow-y: auto !important;
  display: none !important;
  border-radius: 0 0 8px 8px !important;
}

/* When dropdown is shown */
.ais-Panel-body[style*="display: block"] {
  display: block !important;
}

/* Ensure the parent container doesn't grow */
.project-filters {
  position: relative;
  z-index: 1;
}

/* Ensure dropdown content has proper styling */
.ais-RefinementList {
  padding: 8px 0;
}

.ais-RefinementList-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.ais-RefinementList-item {
  margin: 0;
}

.ais-RefinementList-label {
  display: flex;
  align-items: center;
  padding: 8px 16px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  position: relative;
}

.ais-RefinementList-label:hover {
  background-color: #f8f9fa;
}

/* Custom styled checkbox */
.ais-RefinementList-checkbox {
  appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid #ddd;
  border-radius: 3px;
  margin-right: 12px;
  cursor: pointer;
  position: relative;
  background: white;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.ais-RefinementList-checkbox:hover {
  border-color:#003057;
}

.ais-RefinementList-checkbox:checked {
  background-color:#003057;
  border-color:#003057;
}

.ais-RefinementList-checkbox:checked::after {
  content: '✓';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
}

.ais-RefinementList-checkbox:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}

.ais-RefinementList-labelText {
  flex: 1;
  font-size: 14px;
  color: #333;
  font-weight: 400;
  line-height: 1.4;
}

.ais-RefinementList-count {
  background: #003057 none repeat scroll 0% 0%;
  border-radius: 99999px;
  color: #ffffff;
  display: inline-flex;
  flex-shrink: 0;
  font-size: .75rem;
  font-weight: 400;
  line-height: 1rem;
  margin-left: .5rem;
  overflow: hidden;
  padding: 0 .25rem;
  display:none;
}

/* Mobile title styling */
.ais-Dropdown-mobileTitle {
  display: none;
  padding: 12px 16px;
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  border-bottom: 1px solid #eee;
}
.ais-SearchBox.project-search{
  padding:0 16px;
}
.project-detail__video{
  margin-top:50px
}
.project-testimonial__img{
  max-width:100%;
}

@media(max-width:600px){
  .project-detail__info {
    -moz-columns: 1;
    column-count: 1;
  }



}

/* Responsive adjustments */
@media (max-width:767px) {
  .ais-Dropdown-mobileTitle {
    display: block;
  }

  .ais-Panel-body {
    position: static !important;

  }
  .project-filters .project-filter {
    min-width: auto;
    width: 100% !important;
  }
  .project-detail__results .grid-2x2{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}

}

@media(max-width:1023px){
  .project-filters .project-filter {
    width: auto;
    min-width: auto;
    width: calc(33.33% - 12px);
  }
}


/* Ensure dropdowns don't interfere with each other */
.project-filter:nth-child(1) .ais-Panel-body {
  z-index: 1003;
}

.project-filter:nth-child(2) .ais-Panel-body {
  z-index: 1002;
}

.project-filter:nth-child(3) .ais-Panel-body {
  z-index: 1001;
}

/* Fix for container spacing */
.project-filters {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

/* Ensure the main content doesn't jump */
.projectListing_Wrapper {
  position: relative;
  z-index: 1;
}

/* Additional styling for better visual hierarchy */
.ais-RefinementList-item:not(:last-child) {
  border-bottom: 1px solid #f1f1f1;
}

.ais-RefinementList-label:active {
  background-color: #e9ecef;
}

/* Improve scrollbar styling */
.ais-Panel-body::-webkit-scrollbar {
  width: 6px;
}

.ais-Panel-body::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 3px;
}

.ais-Panel-body::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 3px;
}

.ais-Panel-body::-webkit-scrollbar-thumb:hover {
  background: #a8a8a8;
}

/* Fix for selected state visual feedback */
.ais-RefinementList-checkbox:checked + .ais-RefinementList-labelText {
  color:#003057;
  font-weight: 500;
}

.project-filters__toggle:hover,
.project-filters__toggle:active,
.project-filters__toggle:focus
{
  display: block;
  border: 0;
  border-radius: 5px;
  margin: 0;
  padding: .625rem .8125em;
  background: #E5E5E5;
  font-weight: 700;
  font-size: .875rem;
  text-align: left;
  color: #003057;
  cursor: pointer;
}

.project-filters-wrap.project-filters-wrap--visible{
  position:static;
  display:block;
  transform:none;
}
