.mainSite .portfolioPage{--portfolio-green:var(--bulema-green,#2d6a4f);--portfolio-green-dark:var(--bulema-green-dark,#1f4f3a);--portfolio-black:var(--bulema-black,#1a1a1a);--portfolio-soft:#f7f6f3;background:#fff;color:var(--portfolio-black);overflow:hidden}.mainSite .portfolioHero{background:#f3f4f6;color:var(--portfolio-black);position:relative}.mainSite .portfolioDetailHero{background:#f3f4f6;color:var(--portfolio-black);position:relative}.mainSite .portfolioHeroBg{align-items:center;background-color:#f3f4f6;background-position:center;background-repeat:no-repeat;background-size:cover;display:flex;padding-bottom:5rem;position:relative}.mainSite .portfolioHero #mainHero{border-radius:0;margin-top:0}.mainSite .portfolioHeroBg::before,.mainSite .portfolioDetailHero::before{background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.3) 55%,rgba(0,0,0,.1));content:"";inset:0;pointer-events:none;position:absolute}.mainSite .portfolioHeroBg[data-img=""]::before{display:none}.mainSite .portfolioDetailHero[data-img=""]::before{display:none}.mainSite .portfolioHero .container,.mainSite .portfolioDetailHero .container{position:relative;z-index:1}.mainSite .portfolioHeroContent{max-width:48rem}.mainSite .portfolioHeroContent h1,.mainSite .portfolioDetailHeroContent h1{color:#fff;font-size:3rem;font-weight:800;letter-spacing:-.03em;line-height:1.25;margin:0}.mainSite .portfolioHeroContent p{color:rgba(255,255,255,.58);font-size:.875rem;line-height:1.45;margin:.75rem 0 0}.mainSite .portfolioHeroBg[data-img=""] .portfolioHeroContent h1{color:var(--portfolio-black)}.mainSite .portfolioHeroBg[data-img=""] .portfolioHeroContent p{color:rgba(26,26,26,.64)}.mainSite .portfolioDetailHero[data-img=""] .portfolioDetailHeroContent h1{color:var(--portfolio-black)}.mainSite .portfolioOverviewContent{padding:3rem 0 7rem}.mainSite .portfolioCategories{display:flex;flex-wrap:wrap;gap:.25rem;margin-bottom:2.5rem}.mainSite .portfolioCategories .category{align-items:center;background:#f4f4f2;border:1px solid #e5e5e1;border-radius:999px;color:#454542;display:inline-flex;font-size:.875rem;font-weight:600;justify-content:center;line-height:1.25rem;min-height:44px;padding:.75rem 1.25rem;text-decoration:none;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;white-space:nowrap}.mainSite .portfolioCategories .category.is-lighting{background:#fff7e6;border-color:#f4d99b;color:#c26d00}.mainSite .portfolioCategories .category.is-garden{background:#eaf7ef;border-color:#b9dfc9;color:var(--portfolio-green)}.mainSite .portfolioCategories .category:hover{transform:translateY(-1px)}.mainSite .portfolioCategories .category.active,.mainSite .portfolioCategories .category:focus-visible{background:var(--portfolio-black);border-color:var(--portfolio-black);color:#fff}.mainSite .portfolioCategories .category:focus-visible,.mainSite .portfolioPage .projectLink:focus-visible,.mainSite .portfolioPage .portfolioImg:focus-visible,.mainSite .portfolioBackLink:focus-visible,.mainSite .portfolioRelatedActions a:focus-visible,.mainSite .portfolioRelatedActions button:focus-visible{outline:3px solid rgba(45,106,79,.45);outline-offset:3px}.mainSite .portfolioList{display:grid;gap:2rem 1.5rem;grid-template-columns:repeat(3,minmax(0,1fr));min-height:5rem;position:relative}.mainSite .portfolioList.loading{min-height:18rem;opacity:.55;pointer-events:none}.mainSite .portfolioList.loading::after{align-items:center;background:rgba(255,255,255,.8);content:url("/image/loading.gif");display:flex;inset:0;justify-content:center;position:absolute;z-index:4}.mainSite .portfolioOverview .portfolioList > .project:first-child{grid-column:span 2}.mainSite .portfolioPage .project,.mainSite .portfolioPage .projectLink,.mainSite .portfolioPage .project .content{display:block;min-width:0}.mainSite .portfolioPage .projectLink{color:inherit;text-decoration:none}.mainSite .portfolioPage .project .image{aspect-ratio:4 / 3;background:var(--portfolio-soft);border-radius:.875rem;display:block;overflow:hidden;position:relative}.mainSite .portfolioOverview .portfolioList > .project:first-child .image{aspect-ratio:813 / 297}.mainSite .portfolioPage .project .image img{display:block;height:100%;object-fit:cover;transition:transform .35s ease;width:100%}.mainSite .portfolioPage .projectLink:hover .image img{transform:scale(1.025)}.mainSite .portfolioPage .project .content{padding-top:1rem}.mainSite .portfolioTag{background:#f2f2ef;border-radius:999px;color:#5b5b57;display:inline-flex;font-size:.6875rem;font-weight:700;letter-spacing:.01em;line-height:1.0625rem;padding:.3125rem .75rem;text-transform:none}.mainSite .portfolioTag.is-lighting{background:#fff5df;color:#c56d00}.mainSite .portfolioTag.is-garden{background:#e8f5ed;color:var(--portfolio-green)}.mainSite .portfolioTag.is-fence{background:#f0f0ed;color:#52524f}.mainSite .portfolioPage .project .title{color:var(--portfolio-black);display:block;font-family:var(--font-heading);font-size:1rem;font-weight:700;line-height:1.35;margin-top:.625rem}.mainSite .portfolioPage .project .description{color:#74746f;display:-webkit-box;font-size:.875rem;line-height:1.55;margin-top:.375rem;max-width:48rem;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.mainSite .portfolioEmpty{background:var(--portfolio-soft);border-radius:1rem;grid-column:1 / -1;padding:4rem 2rem;text-align:center}.mainSite .portfolioEmpty h2{font-size:1.75rem;margin:0 0 .5rem}.mainSite .portfolioEmpty p{color:#74746f;margin:0}.mainSite .portfolioDetailHero{align-items:flex-end;background-position:center;background-repeat:no-repeat;background-size:cover;display:flex;min-height:500px;padding:7rem 0 8rem}.mainSite .portfolioDetailHeroContent{max-width:52rem}.mainSite .portfolioDetailHeroContent h1{font-size:clamp(2.75rem,5vw,4.5rem);line-height:1.05;margin-top:1rem}.mainSite .portfolioDetailHeroContent > p{align-items:center;color:rgba(255,255,255,.72);display:flex;font-size:.9375rem;gap:.5rem;margin:1.25rem 0 0}.mainSite .portfolioBreadcrumb{align-items:center;color:rgba(255,255,255,.7);display:flex;flex-wrap:wrap;font-size:.8125rem;gap:.625rem;margin-bottom:1.25rem}.mainSite .portfolioBreadcrumb a{color:#fff;text-decoration:none}.mainSite .portfolioDetailHero[data-img=""] .portfolioDetailHeroContent > p,.mainSite .portfolioDetailHero[data-img=""] .portfolioBreadcrumb{color:rgba(26,26,26,.7)}.mainSite .portfolioDetailHero[data-img=""] .portfolioBreadcrumb a{color:var(--portfolio-black)}.mainSite .portfolioBreadcrumb a:hover{text-decoration:underline}.mainSite .portfolioBreadcrumb i{font-size:.625rem}.mainSite .portfolioDetailContent{padding:5rem 0 7rem}.mainSite .portfolioItem .contentItemText{color:#4e4e4a;font-size:1rem;line-height:1.8}.mainSite .portfolioItem .contentItemText >:first-child{margin-top:0}.mainSite .portfolioItem .contentItemText h2,.mainSite .portfolioItem .contentItemText h3{color:var(--portfolio-black);font-weight:800;letter-spacing:-.02em;margin:2rem 0 1rem}.mainSite .portfolioItem .contentItemText h2{font-size:2.25rem}.mainSite .portfolioFacts{background:var(--portfolio-soft);border:1px solid #ecebe7;border-radius:1rem;padding:1.75rem;position:sticky;top:7.5rem}.mainSite .portfolioFacts h2{font-size:1.375rem;font-weight:800;margin:0 0 1.25rem}.mainSite .portfolioFact{align-items:center;border-top:1px solid #e2e1dc;display:flex;gap:.875rem;padding:1rem 0}.mainSite .portfolioFact > i{align-items:center;background:#e4f0e9;border-radius:.75rem;color:var(--portfolio-green);display:flex;flex:0 0 2.5rem;height:2.5rem;justify-content:center}.mainSite .portfolioFact span,.mainSite .portfolioFact small,.mainSite .portfolioFact strong{display:block}.mainSite .portfolioFact small{color:#82827d;font-size:.75rem;margin-bottom:.15rem}.mainSite .portfolioFact strong{color:var(--portfolio-black);font-size:.9375rem}.mainSite .portfolioBackLink{align-items:center;background:var(--portfolio-green);border-radius:.75rem;color:#fff;display:flex;font-size:.875rem;font-weight:700;gap:.625rem;justify-content:center;margin-top:1rem;min-height:3rem;padding:.75rem 1rem;text-decoration:none;transition:background-color .2s ease}.mainSite .portfolioBackLink:hover{background:var(--portfolio-green-dark);color:#fff}.mainSite .portfolioItem .portfolioGallery{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:5rem}.mainSite .portfolioItem .portfolioImg{aspect-ratio:4 / 3;background:var(--portfolio-soft);border-radius:1rem;display:block;overflow:hidden}.mainSite .portfolioItem .portfolioImg.firstImage{aspect-ratio:16 / 7;grid-column:1 / -1}.mainSite .portfolioItem .portfolioImg img{display:block;height:100%;object-fit:cover;transition:transform .35s ease;width:100%}.mainSite .portfolioItem .portfolioImg:hover img{transform:scale(1.02)}.mainSite .portfolioRelated{border-top:1px solid #e9e8e4;margin-top:6rem;padding-top:4rem}.mainSite .portfolioRelatedHeader{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.mainSite .portfolioRelatedHeader h2{font-size:2.5rem;font-weight:800;letter-spacing:-.03em;margin:0}.mainSite .portfolioRelatedActions{align-items:center;display:flex;gap:.5rem}.mainSite .portfolioRelatedActions button{align-items:center;background:#fff;border:1px solid #deddd8;border-radius:50%;color:var(--portfolio-black);display:flex;height:2.75rem;justify-content:center;padding:0;width:2.75rem}.mainSite .portfolioRelatedActions button:hover{background:var(--portfolio-soft)}.mainSite .portfolioRelatedActions a{align-items:center;background:rgba(45,106,79,.09);border-radius:999px;color:var(--portfolio-green);display:inline-flex;font-size:.875rem;font-weight:700;min-height:2.75rem;padding:.75rem 1rem;text-decoration:none}.mainSite .portfolioRelated .projectSlider{overflow:hidden}.mainSite .portfolioRelated .swiper-slide{height:auto}.mainSite .portfolioRelated .project,.mainSite .portfolioRelated .projectLink{height:100%}.mainSite .portfolioRelated .project .image{aspect-ratio:4 / 3}.mainSite .homeProjects{background-color:#fff;padding:7rem 0}.mainSite .homeProducts + .homeProjects{--home-projects-slash-height:3.651vw;margin-top:calc(var(--home-projects-slash-height) - 3px);position:relative}.mainSite .homeProducts + .homeProjects::before{background-color:#f7f6f3;background-image:url("data:image/svg+xml,%3Csvg width='1534' height='56' viewBox='0 0 1534 56' preserveAspectRatio='none' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 56L1534 0V56H0Z' fill='white'/%3E%3C/svg%3E");background-position:center bottom;background-repeat:no-repeat;background-size:100% 100%;bottom:calc(100% - 3px);content:"";height:var(--home-projects-slash-height);left:0;pointer-events:none;position:absolute;right:0}.mainSite .homeProjectsHeader{margin-bottom:3rem}.mainSite .homeProjectsHeading{min-width:0}.mainSite .homeProjectsHeading h1,.mainSite .homeProjectsHeading h2,.mainSite .homeProjectsHeading h3{color:var(--bulema-black,#1a1a1a);margin:0}.mainSite .homeProjectsAction{align-items:center;align-self:flex-start;background:rgba(45,106,79,.08);border-radius:999px;color:var(--bulema-green,#2d6a4f);display:inline-flex;font-size:.875rem;font-weight:700;gap:.5rem;justify-content:center;line-height:1.25rem;min-height:2.5rem;padding:.625rem 1rem;text-decoration:none;transition:background-color .2s ease,color .2s ease}.mainSite .homeProjectsAction:hover{background:rgba(45,106,79,.14);color:var(--bulema-green-dark,#1f4f3a)}.mainSite .homeProjectsAction:focus-visible,.mainSite .homeProjectCard:focus-visible{outline:3px solid rgba(45,106,79,.45);outline-offset:3px}.mainSite .homeProjectsGrid{display:grid;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:15.375rem 18.875rem}.mainSite .homeProjectCard,.mainSite .homeProjectCardStack{min-height:0;min-width:0}.mainSite .homeProjectCard{background:#f5f4f0;border-radius:1rem;display:block;height:100%;overflow:hidden}.mainSite .homeProjectCardWide{grid-column:span 2}.mainSite .homeProjectCardStack{display:grid;gap:.75rem;grid-template-rows:repeat(2,minmax(0,1fr))}.mainSite .homeProjectCard img{display:block;height:100%;object-fit:cover;transition:transform .25s ease;width:100%}.mainSite .homeProjectCard:hover img{transform:scale(1.025)}@media (max-width:991.98px){.mainSite .portfolioList{grid-template-columns:repeat(2,minmax(0,1fr))}.mainSite .portfolioOverview .portfolioList > .project:first-child .image{aspect-ratio:16 / 7}.mainSite .portfolioFacts{position:static}.mainSite .homeProjectsGrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:17rem 9rem 17rem 17rem}.mainSite .homeProjectCardWide,.mainSite .homeProjectCardStack{grid-column:1 / -1}.mainSite .homeProjectCardStack{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}.mainSite .homeProjectsGrid > .homeProjectCard:last-child{grid-column:1 / -1}}@media (max-width:767.98px){.mainSite .portfolioHeroBg{padding-bottom:4.5rem}.mainSite .portfolioHeroContent h1{font-size:2.35rem;line-height:1.1}.mainSite .portfolioOverviewContent{padding-bottom:4.5rem;padding-top:2rem}.mainSite .portfolioCategories{flex-wrap:nowrap;margin-left:-1rem;margin-right:-1rem;overflow-x:auto;padding:.25rem 1rem .75rem;scrollbar-width:thin}.mainSite .portfolioCategories .category{font-size:.8125rem;min-height:40px;padding:.625rem 1rem}.mainSite .portfolioList{grid-template-columns:minmax(0,1fr)}.mainSite .portfolioOverview .portfolioList > .project:first-child{grid-column:auto}.mainSite .portfolioOverview .portfolioList > .project:first-child .image,.mainSite .portfolioPage .project .image{aspect-ratio:4 / 3}.mainSite .portfolioDetailHero{min-height:420px;padding:6rem 0 7rem}.mainSite .portfolioDetailHeroContent h1{font-size:2.75rem}.mainSite .portfolioDetailContent{padding:3.5rem 0 4.5rem}.mainSite .portfolioItem .contentItemText h2{font-size:1.875rem}.mainSite .portfolioItem .portfolioGallery{grid-template-columns:minmax(0,1fr);margin-top:3.5rem}.mainSite .portfolioItem .portfolioImg.firstImage{aspect-ratio:4 / 3;grid-column:auto}.mainSite .portfolioRelated{margin-top:4rem;padding-top:3rem}.mainSite .portfolioRelatedHeader{align-items:flex-start;flex-direction:column;gap:1.25rem}.mainSite .portfolioRelatedHeader h2{font-size:2rem}.mainSite .homeProjects{padding:4.5rem 0}}@media (max-width:575.98px){.mainSite .portfolioHeroContent h1{font-size:2rem}.mainSite .portfolioDetailHeroContent h1{font-size:2.25rem}.mainSite .portfolioBreadcrumb span[aria-current="page"]{display:none}.mainSite .portfolioRelatedActions a{font-size:.8125rem}.mainSite .homeProjectsGrid{display:flex;flex-direction:column}.mainSite .homeProjectCard,.mainSite .homeProjectCardStack .homeProjectCard{aspect-ratio:16 / 10;height:auto}.mainSite .homeProjectCardStack{display:contents}}@media (prefers-reduced-motion:reduce){.mainSite .portfolioPage .project .image img,.mainSite .portfolioItem .portfolioImg img,.mainSite .homeProjectCard img,.mainSite .portfolioCategories .category{transition:none}}@media (min-width:768px){.mainSite .homeProjectsAction{align-self:auto}}