:root{--custom-rem-val:16px;--color-brand:#7a9d3e;--color-brand-alt:#03668c;--color-text:#232323;--color-black:#000;--color-white:#fff;--transition:all .3s ease-out}#primary:has(.project-gallery-main){width:unset;max-width:unset}body:has(.project-gallery-main){overflow-x:unset}body:has(.project-gallery-main) [data-elementor-type=header]{overflow-x:hidden}body:has(.project-gallery-main) .elementor-widget-breadcrumbs{display:none}.banner-hero{isolation:isolate;min-height:400px;padding-block:calc(6.25 * var(--custom-rem-val));text-align:center;background-position:50%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;margin-top:-55px;display:flex;position:relative}.banner-hero:before{content:"";z-index:-1;background-color:var(--color-black);opacity:.5;position:absolute;inset:0}.banner-title{color:var(--color-white);font-size:48px;font-weight:700}.banner-text{color:var(--color-white);margin-top:1.5rem}@media (width>=768px){.banner-title{font-size:74px}}.projects-gallery-section{padding-block:calc(6.25 * var(--custom-rem-val))}.project-items{column-gap:calc(2 * var(--custom-rem-val));row-gap:calc(3 * var(--custom-rem-val));grid-template-columns:repeat(2,1fr);margin:0;padding:0;list-style:none;display:grid}.pg-no-items,.pg-no-filter-results{text-align:center;color:#666;padding:40px 0}.project-item .item-content{cursor:pointer;background:0 0;border:none;width:100%;padding:0;display:block}.project-item .item-image{aspect-ratio:16/9;background-color:#e5e5e5;border-radius:4px;width:100%;position:relative;overflow:hidden}.project-item .item-image:before{content:"";z-index:1;background-color:var(--color-brand);opacity:0;transition:var(--transition);position:absolute;inset:0}.project-item img{object-fit:cover;width:100%;height:100%;transition:var(--transition);display:block}.project-item .item-title{margin-top:calc(1.5 * var(--custom-rem-val));color:var(--color-text);text-underline-offset:2px;transition:var(--transition);font-size:25px;font-weight:600;text-decoration:underline 2px #0000;display:block}.project-item .item-content:hover,.project-item .item-content:focus-visible{& .item-image:before{opacity:.25}& img{transform:scale(1.1)}& .item-title{color:var(--color-brand);text-decoration:underline 2px var(--color-brand)}}@media (width<=768px){.project-items{grid-template-columns:1fr}}.projects-filters-bar{justify-content:space-between;align-items:flex-start;gap:calc(1.5 * var(--custom-rem-val));margin-bottom:calc(3 * var(--custom-rem-val));display:flex}.project-filter{position:relative}.project-filter-button{align-items:baseline;gap:calc(.5 * var(--custom-rem-val));padding:0;padding-bottom:calc(.5 * var(--custom-rem-val));border:none;border-bottom:2px solid var(--color-brand);cursor:pointer;color:var(--color-text);white-space:nowrap;background:0 0;border-radius:0;display:flex}.project-filter-label{font-weight:600}.project-filter-value{transition:var(--transition);font-weight:400}.project-filter-button[aria-expanded=true],.project-filter-button:hover,.project-filter-button:active,.project-filter-button:focus,.project-filter-button:focus-visible{color:var(--color-brand);background:0 0}.project-filter-button[aria-expanded=true] .project-filter-value{color:var(--color-brand)}.project-filter-dropdown{z-index:20;min-width:200px;padding-block:calc(.5 * var(--custom-rem-val));background:var(--color-white);visibility:hidden;opacity:0;border-radius:6px;transition:opacity .3s,transform .3s,visibility 0s linear .3s;position:absolute;top:calc(100% + 4px);left:0;transform:translateY(-8px);box-shadow:0 4px 24px #0000001f}.project-filter-dropdown.is-open{visibility:visible;opacity:1;transition:opacity .3s,transform .3s,visibility linear;transform:translateY(0)}.project-filter-options{margin:0;padding:0;list-style:none}.project-filter-option{align-items:center;gap:calc(.75 * var(--custom-rem-val));padding-block:calc(.5 * var(--custom-rem-val));padding-inline:var(--custom-rem-val);font-size:var(--custom-rem-val);cursor:pointer;color:var(--color-text);transition:var(--transition);display:flex}.project-filter-option:hover,.project-filter-option:focus-visible{background:#f5f5f5}.project-filter-option input[type=radio]{-webkit-appearance:none;appearance:none;cursor:pointer;width:18px;height:18px;transition:var(--transition);border:2px solid #ccc;border-radius:50%;flex-shrink:0;position:relative}.project-filter-option input[type=radio]:checked{border-color:var(--color-brand)}.project-filter-option input[type=radio]:checked:after{content:"";background:var(--color-brand);border-radius:50%;position:absolute;inset:3px}.project-filter-option input[type=radio]:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.project-filter-clear{align-items:center;gap:calc(.5 * var(--custom-rem-val));padding:0;padding-bottom:calc(.5 * var(--custom-rem-val));cursor:pointer;font-size:var(--custom-rem-val);color:var(--color-brand);white-space:nowrap;transition:var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;font-weight:600;display:flex}.project-filter-clear:disabled{opacity:.35;cursor:not-allowed}.project-filter-clear:disabled:hover{color:var(--color-brand);background:0 0}.project-filter-clear:not(:disabled):hover,.project-filter-clear:not(:disabled):focus-visible{color:var(--color-brand-alt)}@media (width<=600px){.projects-filters-bar{flex-direction:column;align-items:flex-start}}.project-modal{opacity:0;background-color:#000000d1;border:none;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;transition:opacity .3s;display:none;position:fixed;inset:0;overflow:visible}.project-modal[open]{display:flex}.project-modal::backdrop{display:none}.project-modal.is-open{opacity:1}.project-modal-body{background:var(--color-white);border-radius:calc(.75 * var(--custom-rem-val));opacity:0;flex-direction:column;width:90vw;max-width:1000px;height:90svh;max-height:90svh;transition:transform .38s cubic-bezier(.34,1.4,.64,1),opacity .3s;display:flex;position:relative;overflow:hidden;transform:scale(.94)translateY(20px)}.project-modal.is-open .project-modal-body{opacity:1;transform:scale(1)translateY(0)}.project-modal-close{z-index:10;background-color:var(--color-brand);-webkit-backdrop-filter:blur(6px);width:44px;height:44px;color:var(--color-white);cursor:pointer;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex;position:fixed;top:24px;right:24px}.project-modal-close:hover,.project-modal-close:focus-visible{background-color:var(--color-brand-alt)}.project-modal-carousel{background:#111;flex:auto;min-height:0;position:relative;overflow:hidden}.project-modal-track{position:absolute;inset:0}.project-modal-slide{object-fit:contain;opacity:0;pointer-events:none;will-change:transform, opacity;width:100%;height:100%;position:absolute;inset:0}.project-modal-slide.is-active{opacity:1;pointer-events:auto}.project-modal-slide.enter-from-right{transform:translate(100%)}.project-modal-slide.enter-from-left{transform:translate(-100%)}.project-modal-slide.exit-to-left{opacity:0;transform:translate(-110%)rotate(-8deg)}.project-modal-slide.exit-to-right{opacity:0;transform:translate(110%)rotate(8deg)}.project-modal-slide.is-transitioning{transition:transform .45s cubic-bezier(.25,.46,.45,.94),opacity .35s}.project-modal-footer{align-items:center;gap:calc(.75 * var(--custom-rem-val));max-height:40vh;padding-block:calc(1.5 * var(--custom-rem-val));padding-inline:calc(3 * var(--custom-rem-val));flex-direction:column;flex:none;display:flex;overflow-y:auto}.project-modal-counter{opacity:.9;color:var(--color-text);font-size:var(--custom-rem-val);letter-spacing:.04em;margin:0}.project-modal-nav-items{z-index:1;padding-inline:var(--custom-rem-val);pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0}.project-modal-nav-items[hidden]{display:none}.project-modalnav-item{background-color:var(--color-brand);-webkit-backdrop-filter:blur(4px);cursor:pointer;width:44px;height:44px;color:var(--color-white);pointer-events:auto;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.project-modalnav-item:hover,.project-modalnav-item:focus-visible{background-color:var(--color-brand-alt)}.project-modal-text{text-align:center;width:100%;font-size:var(--custom-rem-val);color:var(--color-text);line-height:1.65}@media (width<=600px){.project-modal{align-items:flex-end}.project-modal-body{border-radius:var(--custom-rem-val) var(--custom-rem-val) 0 0;width:100%;max-width:100%;height:96dvh;max-height:96dvh}.project-modal-footer{max-height:50svh;padding-inline:calc(1.5 * var(--custom-rem-val))}.project-modal-close{top:16px;right:16px}}