.portfolio-page{background:var(--color-background,#f7f4ed);color:var(--color-text,#26332e);overflow:clip}.portfolio-hero{position:relative;height:clamp(26.25rem,62svh,35rem);min-height:min(26.25rem,calc(100svh - 5rem));overflow:hidden;color:#fff}.portfolio-hero__media,.portfolio-hero__overlay{position:absolute;inset:0}.portfolio-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center}.portfolio-hero__overlay{background:linear-gradient(90deg,rgba(15,47,38,.9),rgba(15,47,38,.48) 62%,rgba(15,47,38,.28))}.portfolio-hero__inner{position:relative;z-index:1;height:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding-block:clamp(2rem,6svh,4.5rem);max-width:90rem}.portfolio-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 1.5rem;padding:0;list-style:none;font-size:.8rem}.portfolio-breadcrumb li:not(:last-child)::after{content:' /';margin-left:.45rem;opacity:.65}.portfolio-breadcrumb a{color:inherit}.portfolio-hero .eyebrow{color:inherit;letter-spacing:.16em}.portfolio-hero h1{max-width:18ch;margin:.45rem 0 .75rem;color:inherit;font-family:Montserrat,sans-serif;font-size:clamp(2.4rem,5vw,5rem);font-weight:500;line-height:1.02;text-wrap:balance}.portfolio-hero__meta{margin:0;text-transform:uppercase;letter-spacing:.12em;font-size:.85rem}.portfolio-summary__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(17rem,.65fr);gap:clamp(3rem,8vw,8rem);align-items:start}.portfolio-summary h2,.portfolio-scope h2,.portfolio-planning h2,.portfolio-gallery-section h2,.portfolio-related h2,.portfolio-final h2{max-width:18ch}.portfolio-summary p,.portfolio-planning p,.portfolio-final p{max-width:68ch}.portfolio-notice{padding-left:1rem;border-left:2px solid var(--color-primary,#164d3d);font-size:.92rem}.portfolio-service-cta{margin-top:1rem}.portfolio-summary aside{padding:clamp(1.5rem,3vw,2.5rem);border:1px solid color-mix(in srgb,var(--color-primary,#164d3d) 24%,transparent);background:#fff}.portfolio-summary aside h2{font-size:1rem;text-transform:uppercase;letter-spacing:.12em}.portfolio-summary dl{margin:1.5rem 0 0}.portfolio-summary dl div{display:grid;grid-template-columns:7rem 1fr;gap:1rem;padding:.9rem 0;border-top:1px solid rgba(22,77,61,.18)}.portfolio-summary dt{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.portfolio-summary dd{margin:0}.portfolio-scope{background:#123f33;color:#fff}.portfolio-scope .eyebrow{color:inherit}.portfolio-scope ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));margin:2.5rem 0 0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.3)}.portfolio-scope li{padding:1.4rem 1rem 1.4rem 0;border-bottom:1px solid rgba(255,255,255,.3);font-weight:600}.portfolio-planning .container{display:grid;grid-template-columns:minmax(14rem,.65fr) minmax(0,1.35fr);gap:clamp(2rem,8vw,8rem)}.portfolio-planning .eyebrow,.portfolio-planning h2{grid-column:1}.portfolio-planning h2{margin-top:-.25rem}.portfolio-planning p:last-child{grid-column:2;grid-row:1/3;margin:0}.portfolio-gallery{position:relative;margin-top:2rem;padding-inline:3.5rem}.portfolio-gallery-stage{height:clamp(22rem,68vw,46rem);background:#e8e5de;overflow:hidden}.portfolio-gallery-stage img{width:100%;height:100%;object-fit:contain}.portfolio-gallery-arrow{position:absolute;top:50%;z-index:2;width:44px;height:44px;border:1px solid #164d3d;border-radius:50%;background:#f7f4ed;color:#164d3d;display:grid;place-items:center;transform:translateY(-50%);cursor:pointer}.portfolio-gallery-arrow.is-previous{left:0}.portfolio-gallery-arrow.is-next{right:0}.portfolio-gallery-arrow svg{width:1.35rem;fill:none;stroke:currentColor;stroke-width:1.8}.portfolio-gallery-arrow:focus-visible,.portfolio-gallery-dots button:focus-visible{outline:3px solid #c5793b;outline-offset:3px}.portfolio-gallery-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.portfolio-gallery-dots button{width:44px;height:44px;padding:0;border:0;background:transparent;display:grid;place-items:center}.portfolio-gallery-dots span{width:7px;height:7px;border-radius:50%;background:#8b938f}.portfolio-gallery-dots [aria-current] span{width:20px;border-radius:1rem;background:#164d3d}.portfolio-gallery-count{text-align:center;margin:.2rem 0 0;font-variant-numeric:tabular-nums}.portfolio-gallery.is-static{padding-inline:0}.portfolio-related{background:#fff}.portfolio-related__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}.portfolio-related article{border-bottom:1px solid rgba(22,77,61,.22)}.portfolio-related a{color:inherit;text-decoration:none}.portfolio-related picture{display:block;aspect-ratio:4/3;overflow:hidden;background:#e8e5de}.portfolio-related img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.portfolio-related a:hover img{transform:scale(1.015)}.portfolio-related article div{padding:1.1rem 0}.portfolio-related h3{font-size:1.1rem;line-height:1.25;margin:0}.portfolio-related p{font-size:.85rem;margin:.5rem 0 0}.portfolio-final{background:#e5e7df}.portfolio-final .container{display:flex;justify-content:space-between;gap:3rem;align-items:end}.portfolio-final__actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.portfolio-final__actions>a:last-child{color:inherit;font-weight:600}.portfolio-page .button{min-height:44px}
@media(max-width:47.99rem){.portfolio-hero{height:clamp(29rem,72svh,34rem)}.portfolio-hero__inner{padding-block:2rem}.portfolio-breadcrumb{font-size:.74rem}.portfolio-hero h1{font-size:clamp(2.25rem,11vw,3.5rem)}.portfolio-summary__grid,.portfolio-planning .container{grid-template-columns:1fr}.portfolio-planning .eyebrow,.portfolio-planning h2,.portfolio-planning p:last-child{grid-column:1;grid-row:auto}.portfolio-gallery{padding-inline:0;padding-bottom:4rem}.portfolio-gallery-stage{height:clamp(21rem,112vw,34rem)}.portfolio-gallery-arrow{top:auto;bottom:0;transform:none}.portfolio-gallery-arrow.is-previous{left:calc(50% - 3.5rem)}.portfolio-gallery-arrow.is-next{right:calc(50% - 3.5rem)}.portfolio-gallery-dots{display:none}.portfolio-related__grid{grid-template-columns:1fr}.portfolio-final .container{display:block}.portfolio-final__actions{margin-top:2rem;align-items:flex-start;flex-direction:column}}
@media(min-width:64rem) and (max-height:800px){.portfolio-hero{height:clamp(26.25rem,67svh,32rem)}.portfolio-hero__inner{padding-block:2rem}.portfolio-hero h1{font-size:clamp(2.75rem,4.8vw,4.25rem)}}
@media(prefers-reduced-motion:reduce){.portfolio-related img{transition:none}}
.portfolio-related{background:#fff;overflow:hidden}.portfolio-related__header{display:flex;justify-content:space-between;align-items:end;gap:2rem}.portfolio-related__header>div:first-child>p:last-child{max-width:42rem;margin-top:.75rem}.portfolio-related__controls{display:flex;gap:.5rem}.portfolio-related__controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #164d3d;border-radius:50%;background:#f7f4ed;color:#164d3d}.portfolio-related__controls svg{width:1.25rem;fill:none;stroke:currentColor;stroke-width:1.8}.portfolio-related__viewport{margin-top:2.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.portfolio-related__viewport::-webkit-scrollbar{display:none}.portfolio-related__track{display:flex;gap:1.25rem;width:max-content}.portfolio-work-card{position:relative;flex:0 0 calc((100vw - 2 * var(--gutter) - 2.5rem) / 3.35);min-width:18rem;scroll-snap-align:start}.portfolio-work-card a{display:block;position:relative;aspect-ratio:4/3;overflow:hidden;color:#fff;text-decoration:none;background:#123f33}.portfolio-work-card picture,.portfolio-work-card img{display:block;width:100%;height:100%}.portfolio-work-card img{object-fit:cover}.portfolio-work-card a::after{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(5,24,18,.94));content:""}.portfolio-work-card__overlay{position:absolute;z-index:1;right:1.1rem;bottom:1.1rem;left:1.1rem}.portfolio-work-card__meta,.portfolio-work-card__location{margin:0;color:#dce8e1;font-size:.78rem}.portfolio-work-card h3{margin:.35rem 0 0;font-size:1.15rem;line-height:1.2}.portfolio-work-card__link{display:inline-block;margin-top:.65rem;font-size:.84rem;font-weight:700;text-decoration:underline}.portfolio-work-card a:focus-visible,.portfolio-related__controls button:focus-visible{outline:3px solid #c5793b;outline-offset:3px}@media(max-width:63.99rem){.portfolio-work-card{flex-basis:calc((100vw - 2 * var(--gutter) - 1.25rem) / 2.25)}}@media(max-width:47.99rem){.portfolio-related__header{align-items:start;flex-direction:column}.portfolio-related__controls{align-self:flex-end}.portfolio-work-card{flex-basis:86vw;min-width:0}}@media(prefers-reduced-motion:reduce){.portfolio-related__viewport{scroll-behavior:auto}}
