@media only screen and (min-width:0rem){.cs-portfolio-toggle{background-color:var(--plains);padding:clamp(2.5rem,5vw,3.5rem) 1rem 0}.cs-portfolio-toggle .cs-toggle-list{display:flex;flex-wrap:wrap;gap:.625rem;justify-content:center;margin:0 auto;max-width:90rem}.cs-portfolio-pill{background-color:transparent;border:2px solid var(--near-black);border-radius:var(--radiusSm);color:var(--near-black);cursor:pointer;display:inline-block;font-family:var(--bodyFont);font-size:1rem;font-weight:600;letter-spacing:.04em;line-height:1.2em;padding:.75rem 1.625rem;position:relative;text-align:center;text-transform:uppercase;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.cs-portfolio-pill:focus-visible,.cs-portfolio-pill:hover{background-color:var(--near-black);color:var(--snow)}.cs-portfolio-pill.is-active{background-color:var(--green);border-color:var(--green);color:var(--near-black);cursor:default}.cs-portfolio-pill.is-active:focus-visible,.cs-portfolio-pill.is-active:hover{background-color:var(--green);color:var(--near-black)}}@media only screen and (min-width:0rem){.cs-portfolio-empty{background-color:var(--plains);padding:var(--sectionPadding)}.cs-portfolio-empty .cs-container{align-items:center;display:flex;flex-direction:column;gap:.75rem;margin:auto;max-width:51.25rem;text-align:center}.cs-portfolio-empty .cs-empty-title{color:var(--near-black);font-family:var(--headerFont);font-size:var(--fs-h2);font-weight:700;line-height:1.15em;margin:0}.cs-portfolio-empty .cs-empty-text{color:var(--pencil);font-size:var(--fs-body-lg);line-height:1.6em;margin:0}.cs-portfolio-empty .cs-empty-link{background:none;border:0;color:var(--near-black);cursor:pointer;font:inherit;padding:0;text-decoration:underline;text-underline-offset:3px}.cs-portfolio-empty .cs-empty-link:focus-visible,.cs-portfolio-empty .cs-empty-link:hover{color:var(--green)}}@media only screen and (min-width:0rem){.cs-portfolio-project{background-color:var(--plains);padding:var(--sectionPadding)}.cs-portfolio-project:nth-of-type(2n){background-color:var(--snow)}.cs-portfolio-project .cs-container{align-items:center;display:flex;flex-direction:column;gap:clamp(2.5rem,5vw,3.5rem);margin:auto;max-width:90rem;width:100%}.cs-portfolio-project .cs-project-header{align-items:center;display:flex;flex-direction:column;gap:.75rem;max-width:51.25rem;text-align:center}.cs-portfolio-project .cs-project-title{color:var(--near-black);font-family:var(--headerFont);font-size:var(--fs-h2);font-weight:700;line-height:1.15em;margin:0}.cs-portfolio-project .cs-project-desc{color:var(--pencil);font-size:var(--fs-body-lg);line-height:1.6em;margin:0;max-width:45rem}.cs-project-gallery{display:grid;gap:clamp(.75rem,1.25vw,1.25rem);grid-template-columns:1fr;width:100%}.cs-project-gallery .cs-image{aspect-ratio:4/3;border-radius:var(--radiusMd);box-shadow:0 1px 2px rgba(26,26,26,.06);display:block;overflow:hidden;position:relative}.cs-project-gallery .cs-image img{height:100%;left:0;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;width:100%}}@media only screen and (min-width:40rem){.cs-project-gallery{grid-template-columns:repeat(2,1fr)}}@media only screen and (min-width:64rem){.cs-project-gallery{grid-template-columns:repeat(3,1fr)}.cs-project-gallery:has(>.cs-image:nth-of-type(2):last-of-type){grid-template-columns:repeat(2,1fr);margin-inline:auto;max-width:66.66%}}@media only screen and (min-width:0rem){.cs-project-ruler{background-color:var(--near-black);bottom:0;box-shadow:0 -4px 16px rgba(26,26,26,.2);left:0;padding:.625rem .75rem .875rem;position:fixed;right:0;z-index:50}.cs-ruler-list{display:flex;gap:.1875rem;justify-content:space-between;list-style:none;margin:0 auto;max-width:32.5rem;padding:0}.cs-ruler-item{flex:1;min-width:0}.cs-ruler-link{align-items:center;border-radius:var(--radiusSm);color:var(--pencil);display:flex;flex-direction:column;gap:.25rem;padding:.375rem .25rem;text-decoration:none;transition:color .2s ease,background-color .2s ease}.cs-ruler-link:focus-visible,.cs-ruler-link:hover{color:var(--green)}.cs-ruler-link.is-active{background-color:rgba(199,222,70,.12);color:var(--green)}.cs-ruler-link.is-active .cs-ruler-num{color:var(--green)}.cs-ruler-link.is-active .cs-ruler-tick{background-color:var(--green);height:.75rem}.cs-ruler-num{color:inherit;font-family:var(--monoFont);font-size:.6875rem;font-weight:500;letter-spacing:.08em}.cs-ruler-tick{background-color:currentColor;display:block;height:.5rem;opacity:.85;transition:height .2s ease,background-color .2s ease;width:2px}.cs-ruler-label{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}#cs-footer{padding-bottom:6rem}}@media only screen and (min-width:64rem){.cs-project-ruler{background:transparent;bottom:auto;box-shadow:none;left:auto;padding:0;position:fixed;right:1.5rem;top:12.5rem;transform:none}.cs-ruler-list{flex-direction:column;gap:.0625rem;justify-content:flex-start;max-width:none}.cs-ruler-item{flex:none}.cs-ruler-link{align-items:center;background-color:transparent;color:var(--pencil);flex-direction:row;gap:.625rem;justify-content:flex-end;padding:.25rem 0}.cs-ruler-link:focus-visible,.cs-ruler-link:hover{color:var(--near-black)}.cs-ruler-link:focus-visible .cs-ruler-label,.cs-ruler-link:hover .cs-ruler-label{opacity:1;transform:translateX(0);visibility:visible}.cs-ruler-link:focus-visible .cs-ruler-tick,.cs-ruler-link:hover .cs-ruler-tick{width:1.625rem}.cs-ruler-link.is-active{background-color:transparent;color:var(--near-black)}.cs-ruler-link.is-active .cs-ruler-num{color:var(--near-black);font-weight:600}.cs-ruler-link.is-active .cs-ruler-tick{background-color:var(--green);height:3px;width:2.25rem}.cs-ruler-link.is-active .cs-ruler-label{background-color:var(--near-black);color:var(--green);opacity:1;transform:translateX(0);visibility:visible}.cs-ruler-label{height:auto;margin:0;overflow:visible;padding:.25rem .625rem;position:static;width:auto;clip:auto;background-color:var(--snow);border:1px solid rgba(26,26,26,.08);border-radius:var(--radiusSm);box-shadow:0 4px 12px rgba(26,26,26,.08);color:var(--near-black);font-family:var(--bodyFont);font-size:.75rem;font-weight:500;letter-spacing:.02em;opacity:0;order:1;transform:translateX(6px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease,background-color .2s ease,color .2s ease;visibility:hidden;white-space:nowrap}.cs-ruler-tick{background-color:currentColor;height:2px;opacity:1;order:2;transition:width .2s ease,height .2s ease,background-color .2s ease;width:1.125rem}.cs-ruler-num{font-size:.6875rem;letter-spacing:.1em;order:3}#cs-footer{padding-bottom:1.5rem}}