@font-face{font-family: "Roboto";font-style: normal;font-weight: 300 900;font-display: swap;src: url("../fonts/roboto-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Cormorant Garamond";font-style: italic;font-weight: 400 700;font-display: swap;src: url("../fonts/cormorant-garamond-italic-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Cormorant Garamond";font-style: normal;font-weight: 400 700;font-display: swap;src: url("../fonts/cormorant-garamond-latin.woff2") format("woff2");unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family: "Roboto Fallback";src: local("Arial");size-adjust: 100.3%;ascent-override: 92.49%;descent-override: 24.34%;line-gap-override: 0%}:root{--paper: #fff8f1;--white: #ffffff;--sand: #f4ebdd;--sand-2: #e8dbc6;--dune: #c9b899;--fern: #465e40;--fern-deep: #374b33;--forest: #1e281b;--forest-2: #273323;--night: #141b12;--ink: #161515;--ink-2: #4b4843;--ink-3: #6e6860;--on-dark: #fff8f1;--on-dark-2: #c5cbba;--line: rgba(22,21,21,.13);--line-dark: rgba(255,248,241,.17);--heading: var(--ink);--accent: var(--fern);--rule: var(--line);--sans: "Roboto","Roboto Fallback",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--serif: "Cormorant Garamond","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--gutter: clamp(1.25rem,4.2vw,4rem);--max: 84rem;--edge: max(var(--gutter),calc((100vw - var(--max)) / 2 + var(--gutter)));--section: clamp(4.5rem,9.5vw,9.5rem);--header-h: 4.75rem;--ease: cubic-bezier(.2,.7,.2,1)}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-behavior: smooth}body{margin: 0;background: var(--paper);color: var(--ink-2);font: 400 1.0625rem/1.65 var(--sans);-webkit-font-smoothing: antialiased}img,svg,picture{display: block;max-width: 100%}img{height: auto}a{color: inherit;text-decoration: none}p{margin: 0 0 1.15em;text-wrap: pretty}p:last-child{margin-bottom: 0}h1,h2,h3{margin: 0;color: var(--heading);font-family: var(--sans);font-weight: 700;text-wrap: balance}ul,ol{margin: 0;padding: 0}address{font-style: normal}button,input,select,textarea{font: inherit;color: inherit}:focus-visible{outline: 2px solid var(--accent);outline-offset: 3px}::selection{background: var(--fern);color: var(--paper)}[id]{scroll-margin-top: calc(var(--header-h) + 1.5rem)}[hidden]{display: none !important}.sr-only{position: absolute;width: 1px;height: 1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap}.nowrap{white-space: nowrap}.skip{position: absolute;left: 1rem;top: -5rem;z-index: 100;background: var(--ink);color: var(--paper);padding: .8rem 1.1rem;font-weight: 600;transition: top .2s}.skip:focus{top: 1rem}.icon{width: 1.25rem;height: 1.25rem;flex: none}.fill{display: block;width: 100%;height: 100%}.fill img{width: 100%;height: 100%;object-fit: cover}[data-lightbox]{cursor: zoom-in}.section--dark,.cta,.panel--com,.page-hero,.footer,.drawer{--heading: var(--on-dark);--accent: var(--sand-2);--rule: var(--line-dark);color: var(--on-dark-2)}.wrap{max-width: var(--max);margin-inline: auto;padding-inline: var(--gutter)}.section{padding-block: var(--section)}.section--tight{padding-block: clamp(3rem,6vw,5.5rem)}.section--white{background: var(--white)}.section--sand{background: var(--sand)}.section--dark{background: var(--forest)}.h1{font-size: clamp(2.75rem,6.5vw,6.25rem);line-height: .98;letter-spacing: -.035em}.h2{font-size: clamp(1.95rem,3.7vw,3.35rem);line-height: 1.06;letter-spacing: -.028em}.h3{font-size: clamp(1.25rem,1.7vw,1.5rem);line-height: 1.2;letter-spacing: -.012em}.h1 em,.h2 em{font-family: var(--serif);font-style: italic;font-weight: 500;font-size: 1.16em;letter-spacing: -.02em;line-height: .9}.eyebrow{display: flex;align-items: center;gap: .65rem;margin: 0;font: 600 .8125rem/1.2 var(--sans);letter-spacing: .03em;color: var(--heading)}.eyebrow::before{content: "";flex: none;width: .5rem;height: .5rem;background: var(--accent)}.head{max-width: 48rem;margin-bottom: clamp(2.25rem,4.5vw,4rem)}.head .eyebrow{margin-bottom: 1.25rem}.head--center{margin-inline: auto;text-align: center}.head--center .eyebrow{justify-content: center}.head--split{max-width: none;display: grid;grid-template-columns: minmax(0,1.45fr) minmax(0,1fr);gap: clamp(1.25rem,5vw,5rem);align-items: end}.head__text{margin: 0;max-width: 30rem;justify-self: end}.quill{position: relative;display: inline-block}.quill__line{position: absolute;left: -3%;bottom: -.1em;width: 106%;height: .2em;max-width: none;overflow: visible}.quill__line path{fill: none;stroke: var(--accent);stroke-width: 2.2;stroke-linecap: round}.btn{display: inline-flex;align-items: center;gap: .75rem;min-height: 3rem;padding: .8rem 1.5rem;border: 1px solid transparent;border-radius: 2px;font: 600 .875rem/1 var(--sans);letter-spacing: .01em;white-space: nowrap;cursor: pointer;transition: background .3s,color .3s,border-color .3s}.btn::before{content: "";width: .9rem;height: 1px;background: currentColor;transition: width .35s var(--ease)}.btn:hover::before{width: 1.6rem}.btn--primary{background: var(--fern);color: var(--paper)}.btn--primary:hover{background: var(--fern-deep)}.btn--light{background: var(--paper);color: var(--ink)}.btn--light:hover{background: var(--sand-2)}.btn--ghost-light{border-color: var(--line-dark);color: var(--on-dark)}.btn--ghost-light:hover{border-color: var(--on-dark)}.link{display: inline-flex;align-items: center;gap: .6rem;padding-bottom: .4rem;border-bottom: 1px solid currentColor;font: 600 .9375rem/1 var(--sans);color: var(--heading)}.link .icon{width: 1.1rem;height: 1.1rem;transition: transform .35s var(--ease)}.link:hover .icon{transform: translateX(.3rem)}.play{display: inline-flex;align-items: center;gap: .75rem;font: 600 .875rem/1 var(--sans);color: var(--ink)}.play__icon{display: grid;place-items: center;width: 3rem;height: 3rem;border: 1px solid var(--ink);border-radius: 50%;transition: background .3s,color .3s}.play:hover .play__icon{background: var(--ink);color: var(--paper)}.ticks{list-style: none;display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: .65rem 1.5rem}.ticks--stack{grid-template-columns: 1fr}.ticks li{position: relative;padding-left: 1.3rem;font-weight: 500;line-height: 1.4;color: var(--heading)}.ticks li::before{content: "";position: absolute;left: 0;top: .5em;width: .42rem;height: .42rem;background: var(--accent)}.header{position: sticky;top: 0;z-index: 60;display: flex;align-items: stretch;height: var(--header-h);padding-right: var(--gutter);background: var(--white);border-bottom: 1px solid var(--line);transition: box-shadow .3s}.header.is-stuck{box-shadow: 0 14px 34px -24px rgba(22,21,21,.5)}.brand{flex: none;display: flex;align-items: center;padding: 0 3.5rem 0 var(--gutter);background: var(--fern);clip-path: polygon(0 0,100% 0,calc(100% - 2.25rem) 100%,0 100%);transition: background .3s}.brand:hover{background: var(--fern-deep)}.brand:focus-visible{outline-offset: -4px;outline-color: var(--paper)}.brand img{width: auto;height: 2.4rem}.nav{display: flex;align-items: center;margin: 0 auto 0 clamp(.5rem,2vw,2rem)}.nav ul{display: flex;gap: clamp(1.1rem,2.2vw,2.25rem);list-style: none}.nav a{position: relative;display: block;padding: .6rem 0;font-size: .9375rem;font-weight: 500;line-height: 1;color: var(--ink)}.nav a::after{content: "";position: absolute;left: 0;right: 0;bottom: 0;height: 2px;background: var(--fern);transform: scaleX(0);transform-origin: left;transition: transform .35s var(--ease)}.nav a:hover::after,.nav a[aria-current="page"]::after{transform: scaleX(1)}.header__actions{display: flex;align-items: center;gap: clamp(.75rem,1.6vw,1.5rem)}.call{display: flex;align-items: center;gap: .7rem;color: var(--ink)}.call__icon{display: grid;place-items: center;width: 2.6rem;height: 2.6rem;border-radius: 50%;background: var(--sand);color: var(--fern);transition: background .3s,color .3s}.call:hover .call__icon{background: var(--fern);color: var(--paper)}.call__icon .icon{width: 1.15rem;height: 1.15rem}.call__text{display: grid;gap: .25rem;line-height: 1}.call__text small{font-size: .75rem;color: var(--ink-3)}.call__text strong{font-size: .9375rem;font-weight: 700}.menu-btn{display: none;place-items: center;width: 2.75rem;height: 2.75rem;padding: 0;border: 1px solid var(--line);border-radius: 50%;background: none;cursor: pointer}.menu-btn__bars{position: relative;display: block;width: 1.1rem;height: .5rem}.menu-btn__bars::before,.menu-btn__bars::after{content: "";position: absolute;left: 0;right: 0;height: 1.5px;background: var(--ink);transition: transform .3s var(--ease),top .3s var(--ease)}.menu-btn__bars::before{top: 0}.menu-btn__bars::after{top: calc(100% - 1.5px)}.menu-btn[aria-expanded="true"] .menu-btn__bars::before{top: calc(50% - .75px);transform: rotate(45deg)}.menu-btn[aria-expanded="true"] .menu-btn__bars::after{top: calc(50% - .75px);transform: rotate(-45deg)}.drawer{position: fixed;inset: var(--header-h) 0 0;z-index: 55;display: flex;flex-direction: column;justify-content: space-between;gap: 2rem;padding: clamp(1.5rem,5vw,3rem) var(--gutter) 2rem;background: var(--forest);overflow-y: auto;animation: drawer-in .35s var(--ease)}.drawer ul{list-style: none}.drawer nav a{display: block;padding: .9rem 0;border-bottom: 1px solid var(--line-dark);font: 700 clamp(1.75rem,7vw,2.5rem)/1.1 var(--sans);letter-spacing: -.02em;color: var(--on-dark)}.drawer nav a[aria-current="page"]{color: var(--sand-2)}.drawer__foot{display: grid;gap: .9rem;justify-items: start}.drawer__phone{font: 700 1.5rem/1 var(--sans);color: var(--on-dark)}.drawer__foot p{font-size: .9375rem}.menu-open{overflow: hidden}@keyframes drawer-in{from{opacity: 0;transform: translateY(-.75rem)}to{opacity: 1;transform: none}}.hero{position: relative;isolation: isolate;overflow: hidden;padding: clamp(2.5rem,5.5vw,5rem) 0 clamp(3.5rem,7vw,7rem)}.hero__lines{position: absolute;z-index: -1;left: 0;top: clamp(1rem,3vw,3rem);width: 100%;height: auto;max-width: none;color: var(--dune);opacity: .5;pointer-events: none;-webkit-mask-image: linear-gradient(100deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.4) 42%,#000 68%);mask-image: linear-gradient(100deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.4) 42%,#000 68%)}.hero__top{display: grid;grid-template-columns: minmax(0,1.6fr) minmax(0,1fr);gap: clamp(2rem,5vw,5rem);align-items: end;margin-bottom: clamp(2.5rem,5vw,4.5rem)}.kicker{margin: 0 0 1.5rem;font: 500 .8125rem/1.3 var(--sans);letter-spacing: .09em;text-transform: uppercase;color: var(--ink-3)}.kicker span{margin: 0 .7em;color: var(--dune)}.hero__lede{position: relative;max-width: 27rem;margin: 0 0 1.75rem;padding-left: 1.5rem;font-size: 1rem;line-height: 1.6}.hero__lede::before{content: "";position: absolute;left: 0;top: .55em;width: .5rem;height: .5rem;background: var(--fern)}.hero__cta{display: flex;flex-wrap: wrap;align-items: center;gap: 1rem 1.25rem}.arrow-line{position: relative;max-width: 27rem;height: 1px;margin-top: 2.25rem;background: var(--ink)}.arrow-line::after{content: "";position: absolute;right: 1px;top: -4px;width: 9px;height: 9px;border-top: 1px solid var(--ink);border-right: 1px solid var(--ink);transform: rotate(45deg)}.hero__stage{display: grid;grid-template-columns: minmax(0,1fr) auto;gap: clamp(1rem,2.5vw,2.5rem);align-items: center}.hero__frame{position: relative;aspect-ratio: 16 / 8.4;overflow: hidden;background: var(--sand-2)}.hero__slide{position: absolute;inset: 0;margin: 0;opacity: 0;transition: opacity 1.1s var(--ease)}.hero__slide.is-active{z-index: 1;opacity: 1}.hero__slide figcaption{position: absolute;left: 0;bottom: 0;padding: .8rem 1.25rem;background: var(--paper);font: 600 .8125rem/1.2 var(--sans);color: var(--ink)}.hero__slide figcaption span{margin-left: .75rem;font-weight: 400;color: var(--ink-3)}.hero__index{display: flex;flex-direction: column;align-items: center;gap: .5rem}.hero__index button{display: flex;flex-direction: column;align-items: center;gap: .6rem;padding: .4rem .35rem;border: 0;background: none;font: 700 .9375rem/1 var(--sans);color: var(--ink-3);cursor: pointer;transition: color .3s}.hero__index button:hover,.hero__index button.is-active{color: var(--ink)}.hero__index button::after{content: "";display: block;width: 2px;height: 0;background: var(--sand-2);transition: height .45s var(--ease)}.hero__index button.is-active::after{height: 3.25rem;background: linear-gradient(var(--fern),var(--fern)) no-repeat 0 0 / 100% 100%,var(--sand-2)}.hero__index.is-auto button.is-active::after{animation: tick 6s linear both}.hero__index.is-paused button.is-active::after{animation-play-state: paused}@keyframes tick{from{background-size: 100% 0}to{background-size: 100% 100%}}@keyframes tick-x{from{background-size: 0 100%}to{background-size: 100% 100%}}.split{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(1rem,2vw,1.5rem)}.panel{position: relative;isolation: isolate;overflow: hidden;display: flex;flex-direction: column;justify-content: flex-end;min-height: clamp(27rem,40vw,35rem);padding: clamp(1.75rem,3.5vw,3.5rem)}.panel--res{background: var(--sand)}.panel--com{background: var(--forest)}.panel__art{flex: none;align-self: flex-end;width: min(36%,12.5rem);height: auto;margin-bottom: auto;color: var(--dune)}.panel--com .panel__art{color: rgba(255,248,241,.3)}.panel .eyebrow{margin-top: 1.75rem}.panel__title{margin: 1rem 0;font-size: clamp(1.9rem,3.2vw,2.75rem);line-height: 1.04;letter-spacing: -.028em}.panel__text{max-width: 31rem;margin-bottom: 1.5rem}.panel .ticks{margin-bottom: 2.25rem}.panel .link{align-self: flex-start}.filters{display: flex;flex-wrap: wrap;justify-content: center;gap: .25rem 1.75rem;margin-top: 1.75rem}.filter{position: relative;padding: .55rem 0;border: 0;background: none;font: 500 .9375rem/1 var(--sans);color: var(--ink-3);cursor: pointer;transition: color .25s}.filter::after{content: "";position: absolute;left: 0;right: 0;bottom: 0;height: 2px;background: var(--fern);transform: scaleX(0);transform-origin: left;transition: transform .35s var(--ease)}.filter:hover,.filter.is-active{color: var(--ink)}.filter.is-active::after{transform: scaleX(1)}.track{display: flex;gap: clamp(.75rem,1.5vw,1.25rem);padding: 0 var(--edge) .25rem;overflow-x: auto;scroll-snap-type: x mandatory;scroll-padding-inline: var(--edge);scrollbar-width: none}.track::-webkit-scrollbar{display: none}.card{position: relative;flex: 0 0 clamp(17.5rem,40vw,36rem);aspect-ratio: 4 / 3;overflow: hidden;scroll-snap-align: start;background: var(--sand-2);color: var(--paper)}.card img{transition: transform 1.4s var(--ease)}.card:hover img{transform: scale(1.045)}.card::after{content: "";position: absolute;inset: 42% 0 0;background: linear-gradient(to top,rgba(20,27,18,.88),rgba(20,27,18,0));pointer-events: none}.card__body{position: absolute;z-index: 1;left: 1.25rem;right: 1.25rem;bottom: 1.25rem;display: flex;flex-direction: column;align-items: flex-start;gap: .45rem}.card__tag{padding: .45rem .65rem;background: var(--fern);font: 600 .6875rem/1 var(--sans);letter-spacing: .09em;text-transform: uppercase}.card__title{font: 700 clamp(1.125rem,1.6vw,1.4rem)/1.2 var(--sans);letter-spacing: -.01em}.card__sub{font-size: .875rem;line-height: 1.35;color: rgba(255,248,241,.84)}.track-foot{display: flex;flex-wrap: wrap;align-items: center;gap: 1rem 1.5rem;margin-top: clamp(1.5rem,3vw,2.5rem)}.track-nav{display: flex;gap: .5rem}.track-nav button{display: grid;place-items: center;width: 3rem;height: 3rem;border: 1px solid var(--ink);border-radius: 50%;background: none;cursor: pointer;transition: background .25s,color .25s,opacity .25s}.track-nav button:hover:not(:disabled){background: var(--ink);color: var(--paper)}.track-nav button:disabled{opacity: .28;cursor: default}.track-foot__note{margin: 0;font-size: .875rem;color: var(--ink-3)}.track-foot .link{margin-left: auto}.teaser{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1.05fr);gap: clamp(2.5rem,7vw,7rem);align-items: center}.teaser__text .h2{margin: 1.25rem 0 1.5rem}.teaser__text .ticks{margin-top: 1.75rem}.teaser__text .btn{margin-top: 2.25rem}.teaser__media{aspect-ratio: 4 / 3;overflow: hidden;background: var(--sand-2)}.collage{position: relative;padding: 0 13% 11% 0}.collage__main{aspect-ratio: 4 / 5;overflow: hidden;border-radius: 22rem 22rem 0 0;background: var(--sand-2)}.collage__main img{object-position: 62% 50%}.collage__small{position: absolute;right: 0;bottom: 0;width: 44%;aspect-ratio: 1;overflow: hidden;border: .7rem solid var(--paper);border-radius: 50%;background: var(--sand-2)}.collage__badge{position: absolute;right: 0;top: 9%;display: flex;align-items: center;gap: .9rem;margin: 0;padding: 1.1rem 1.4rem;background: var(--white);box-shadow: 0 24px 44px -28px rgba(22,21,21,.45)}.collage__badge strong{font: 700 clamp(2.4rem,4vw,3.4rem)/1 var(--sans);letter-spacing: -.04em;color: var(--fern)}.collage__badge span{font: 600 .8125rem/1.3 var(--sans);color: var(--ink)}.services{list-style: none;display: grid;grid-template-columns: repeat(4,minmax(0,1fr));border-top: 1px solid var(--line-dark);border-left: 1px solid var(--line-dark)}.service{display: flex;flex-direction: column;min-height: 17.5rem;padding: clamp(1.4rem,2.4vw,2.25rem);border-right: 1px solid var(--line-dark);border-bottom: 1px solid var(--line-dark);transition: background .4s var(--ease)}.service:hover{background: var(--forest-2)}.service p{font-size: .9375rem;line-height: 1.55}.service__icon{width: 2.75rem;height: 2.75rem;margin-bottom: clamp(2.5rem,4.6vw,4.25rem);color: var(--accent);stroke-width: 1.1}.service .service__tag{margin: 0 0 .65rem;font: 600 .6875rem/1.2 var(--sans);letter-spacing: .11em;text-transform: uppercase}.service__title{margin-bottom: .55rem;font-size: 1.25rem;line-height: 1.2;letter-spacing: -.012em}.service--com{--heading: var(--ink);--accent: var(--fern);border-right-color: rgba(22,21,21,.14);background: var(--sand-2);color: var(--ink-2)}.service--com:hover{background: var(--paper)}.service--com .service__tag{color: var(--fern)}.steps{list-style: none;display: grid;grid-template-columns: repeat(5,minmax(0,1fr));gap: clamp(1rem,2vw,2rem)}.step{position: relative;padding-top: 1.6rem;border-top: 1px solid var(--ink)}.step::before{content: "";position: absolute;left: 0;top: -.3rem;width: .55rem;height: .55rem;background: var(--fern)}.step__num{display: block;margin-bottom: 1.4rem;font: italic 500 clamp(2.75rem,4.2vw,3.75rem)/1 var(--serif);color: var(--fern)}.step__title{margin-bottom: .55rem;font-size: 1.125rem;line-height: 1.25}.step p{font-size: .9375rem;line-height: 1.6}.areas{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1.25fr);gap: clamp(2rem,6vw,6rem);align-items: start}.areas__intro .h2{margin: 1.25rem 0 1.5rem}.areas__addr{display: flex;align-items: flex-start;gap: .75rem;margin: 1.75rem 0 1.5rem;font-weight: 500;line-height: 1.5;color: var(--ink)}.areas__addr .icon{width: 1.4rem;height: 1.4rem;margin-top: .1rem;color: var(--fern)}.areas__list{list-style: none;border-top: 1px solid var(--ink)}.areas__list li{display: flex;align-items: baseline;justify-content: space-between;gap: 1rem;padding: .95rem 0;border-bottom: 1px solid var(--line);font: italic 500 clamp(1.7rem,3.3vw,2.75rem)/1.1 var(--serif);letter-spacing: -.01em;color: var(--ink)}.areas__list span{font: 600 .6875rem/1 var(--sans);letter-spacing: .11em;text-transform: uppercase;color: var(--ink-3)}.faq{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1.6fr);gap: clamp(2rem,6vw,6rem);align-items: start}.faq__intro .h2{margin: 1.25rem 0 1.25rem}.faq__intro .link{margin-top: 1rem}.faq__list{border-top: 1px solid var(--ink)}.faq__item{border-bottom: 1px solid var(--line)}.faq__item summary{display: flex;align-items: center;justify-content: space-between;gap: 1.5rem;padding: 1.35rem 0;font-size: 1.0625rem;font-weight: 600;line-height: 1.35;color: var(--ink);cursor: pointer;list-style: none}.faq__item summary::-webkit-details-marker{display: none}.faq__icon{flex: none;display: grid;place-items: center;width: 2.1rem;height: 2.1rem;border: 1px solid var(--line);border-radius: 50%;transition: transform .35s var(--ease),background .3s,color .3s,border-color .3s}.faq__icon .icon{width: 1rem;height: 1rem}.faq__item[open] .faq__icon{transform: rotate(45deg);border-color: var(--fern);background: var(--fern);color: var(--paper)}.faq__a{max-width: 44rem;padding: 0 3.5rem 1.6rem 0}.cta{position: relative;isolation: isolate;overflow: hidden;padding-block: clamp(4.5rem,9vw,8.5rem);background: var(--forest)}.cta__bg{position: absolute;inset: 0;z-index: -2}.cta__bg img{opacity: .5}.cta::before{content: "";position: absolute;inset: 0;z-index: -1;background: linear-gradient(90deg,rgba(30,40,27,.97) 18%,rgba(30,40,27,.62))}.cta__inner{display: grid;grid-template-columns: minmax(0,1.35fr) minmax(0,1fr);gap: clamp(2rem,5vw,5rem);align-items: end}.cta .h2{margin-top: 1.25rem;font-size: clamp(2.4rem,5.4vw,4.75rem)}.cta__side p{color: rgba(255,248,241,.88)}.cta__actions{display: flex;flex-wrap: wrap;gap: .75rem;margin-top: 1.75rem}.footer{padding-top: clamp(3.5rem,6vw,5.5rem);background: var(--night);font-size: .9375rem}.footer__grid{display: grid;grid-template-columns: 1.7fr 1fr 1.2fr 1.3fr;gap: clamp(2rem,4vw,4rem);padding-bottom: clamp(2.5rem,5vw,4rem)}.footer__brand img{width: 13.5rem;height: auto;margin-bottom: 1.5rem}.footer__brand p{max-width: 21rem}.footer h2{margin-bottom: 1.25rem;font: 600 .75rem/1 var(--sans);letter-spacing: .13em;text-transform: uppercase}.footer ul{list-style: none;display: grid;gap: .65rem}.footer__col p{margin-top: 1rem}.footer a{transition: color .25s}.footer a:hover{color: var(--on-dark)}.social{display: flex !important;gap: .6rem;margin-top: 1.5rem}.social a{display: grid;place-items: center;width: 2.6rem;height: 2.6rem;border: 1px solid var(--line-dark);border-radius: 50%;color: var(--on-dark);transition: background .3s,color .3s,border-color .3s}.social a:hover{border-color: var(--sand-2);background: var(--sand-2);color: var(--night)}.footer__bar{display: flex;flex-wrap: wrap;justify-content: space-between;gap: .5rem 2rem;padding-block: 1.5rem;border-top: 1px solid var(--line-dark);font-size: .8125rem}.footer__bar p{margin: 0}.page-hero{position: relative;isolation: isolate;overflow: hidden;display: flex;align-items: flex-end;min-height: clamp(25rem,62vh,38rem);padding-block: clamp(3rem,6vw,5rem);background: var(--forest)}.page-hero--compact{min-height: clamp(21rem,46vh,29rem)}.page-hero__bg{position: absolute;inset: 0;z-index: -2}.page-hero::before{content: "";position: absolute;inset: 0;z-index: -1;background: linear-gradient(90deg,rgba(22,30,20,.95) 0%,rgba(22,30,20,.8) 40%,rgba(22,30,20,.22) 100%)}.page-hero__inner{width: 100%}.page-hero .h1{max-width: 15ch;font-size: clamp(2.6rem,5.8vw,5.25rem)}.page-hero__lede{max-width: 35rem;margin: 1.75rem 0 0;font-size: 1.125rem;line-height: 1.55;color: rgba(255,248,241,.88)}.crumbs{display: flex;gap: .65rem;margin: 0 0 1.5rem;font: 600 .75rem/1 var(--sans);letter-spacing: .12em;text-transform: uppercase}.crumbs a{color: var(--on-dark)}.crumbs a:hover{text-decoration: underline;text-underline-offset: .25em}.jump{background: var(--white);border-bottom: 1px solid var(--line)}.jump ul{display: flex;flex-wrap: wrap;gap: .25rem 1.75rem;list-style: none;padding: .85rem 0}.jump a{display: block;padding: .4rem 0;font-size: .9375rem;font-weight: 500;color: var(--ink-2);border-bottom: 1px solid transparent;transition: color .25s,border-color .25s}.jump a:hover{color: var(--ink);border-color: var(--fern)}.room{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));column-gap: clamp(1rem,2vw,2rem);align-items: center}.room__media{position: relative;grid-column: 1 / 8}.room__text{grid-column: 9 / 13}.room--flip .room__media{grid-column: 6 / 13;order: 2}.room--flip .room__text{grid-column: 1 / 5;order: 1}.room__main{display: block;aspect-ratio: 3 / 2;overflow: hidden;background: var(--sand-2)}.room__inset{position: absolute;right: -9%;bottom: -13%;display: block;width: 42%;aspect-ratio: 4 / 3;overflow: hidden;border: .6rem solid var(--paper);background: var(--sand-2)}.room:has(.room__inset){padding-bottom: 4%}.room__title{margin-top: 1.1rem;font-size: clamp(2.4rem,4.6vw,4.25rem);line-height: 1;letter-spacing: -.035em}.room__lede{margin: 1.25rem 0 1.6rem;font: 500 clamp(1.3rem,1.9vw,1.65rem)/1.3 var(--serif);letter-spacing: -.005em;color: var(--heading)}.head__text.room__lede{max-width: 32rem;margin: 0}.fact{display: flex;flex-wrap: wrap;align-items: baseline;gap: .35rem 1rem;margin: 0 0 1.5rem;padding: .95rem 0;border-top: 1px solid var(--rule);border-bottom: 1px solid var(--rule)}.fact dt{font: 600 .6875rem/1.3 var(--sans);letter-spacing: .11em;text-transform: uppercase;color: var(--ink-3)}.fact dd{margin: 0;font-weight: 600;line-height: 1.35;color: var(--heading)}.scope{list-style: none;display: grid;gap: .55rem}.scope li{position: relative;padding-left: 1.3rem;line-height: 1.45}.scope li::before{content: "";position: absolute;left: 0;top: .52em;width: .42rem;height: .42rem;background: var(--accent)}.scope--row{grid-template-columns: repeat(4,minmax(0,1fr));gap: .75rem 2rem;margin-top: clamp(1.75rem,3vw,2.75rem);padding-top: 1.5rem;border-top: 1px solid var(--rule);font-weight: 500;color: var(--heading)}.spread{display: grid;grid-template-columns: minmax(0,7fr) minmax(0,5fr);gap: clamp(.75rem,2vw,2rem);align-items: start}.spread figure,.story__photos figure{margin: 0}.spread__a .scope{grid-template-columns: repeat(2,minmax(0,1fr));gap: .65rem 2rem;margin-top: 1.75rem;padding-top: 1.5rem;border-top: 1px solid var(--rule);font-weight: 500;color: var(--heading)}.spread__img{display: block;overflow: hidden;background: var(--sand-2)}.spread__a .spread__img{aspect-ratio: 3 / 2}.spread__b .spread__img{aspect-ratio: 4 / 5}.spread__b img{object-position: 64% 50%}.spread figcaption,.story__photos figcaption{margin-top: .75rem;font-size: .875rem;color: var(--ink-3)}.duo{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(2rem,6vw,6rem);align-items: start}.duo__item--drop{margin-top: clamp(0rem,8vw,8rem)}.duo__img{display: block;aspect-ratio: 4 / 3;margin-bottom: 2rem;overflow: hidden;background: var(--sand-2)}.duo__item .room__title{margin-bottom: 1rem;font-size: clamp(1.9rem,3.2vw,2.9rem)}.duo__item .scope{margin-top: 1.5rem}.mosaic{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: clamp(.5rem,1vw,1rem)}.mosaic__item{position: relative;grid-column: span 4;overflow: hidden;background: var(--sand-2)}.mosaic__item .fill{position: absolute;inset: 0}.mosaic__item img{transition: transform 1.4s var(--ease)}.mosaic__item:hover img{transform: scale(1.04)}.m-wide{grid-column: span 8;aspect-ratio: 16 / 9}.m-third{aspect-ratio: 4 / 3}.mosaic__item:nth-child(6){grid-column: span 5}.m-last{grid-column: span 7;aspect-ratio: 16 / 9}.work{display: grid;grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);gap: clamp(2rem,6vw,6rem);align-items: center}.work__intro .h2{margin-top: 1.25rem}.work__intro .btn{margin-top: .5rem}.work__cards{display: grid;gap: 1px;border: 1px solid var(--line-dark);background: var(--line-dark)}.work__card{padding: clamp(1.5rem,3vw,2.5rem);background: var(--forest)}.work__card .service__icon{margin-bottom: 1.5rem}.work__card .service__title{font-size: 1.375rem}.story{display: grid;grid-template-columns: minmax(0,1fr) minmax(0,1.3fr);gap: clamp(2rem,6vw,6rem);align-items: start}.story__head .h2{margin-top: 1.25rem}.story__lede{margin: 0 0 1.75rem;font: 500 clamp(1.7rem,3vw,2.5rem)/1.16 var(--serif);letter-spacing: -.012em;color: var(--ink)}.story__photos{display: grid;grid-template-columns: minmax(0,7fr) minmax(0,4fr);gap: clamp(.75rem,2vw,2rem);align-items: end;margin-top: clamp(3rem,6vw,6rem)}.story__img{overflow: hidden;background: var(--sand-2)}.story__wide .story__img{aspect-ratio: 3 / 2}.story__tall .story__img{aspect-ratio: 4 / 5}.stats{list-style: none;display: grid;grid-template-columns: repeat(3,minmax(0,1fr))}.stat{padding: .5rem clamp(1rem,3vw,3rem);border-left: 1px solid var(--line)}.stat:first-child{padding-left: 0;border-left: 0}.stat strong{display: block;font: 700 clamp(3.25rem,8vw,7rem)/.95 var(--sans);letter-spacing: -.05em;color: var(--ink)}.stat span{display: block;margin-top: .9rem;font: 600 .75rem/1.3 var(--sans);letter-spacing: .1em;text-transform: uppercase;color: var(--ink-3)}.principles{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: clamp(1.25rem,3vw,3rem)}.principle{padding-top: 1.5rem;border-top: 1px solid var(--ink)}.principle .h3{margin-bottom: .75rem}.principles__more{margin-top: clamp(2rem,4vw,3.5rem)}.license{display: flex;align-items: center;gap: .75rem;margin: 1.5rem 0 0;font-weight: 600;color: var(--ink)}.license .icon{width: 1.4rem;height: 1.4rem;color: var(--fern)}.contact{display: grid;grid-template-columns: minmax(0,1.35fr) minmax(0,1fr);gap: clamp(2rem,5vw,5rem);align-items: start}.form{padding: clamp(1.5rem,3.5vw,3rem);border: 1px solid var(--line);background: var(--white)}.form__title{margin-bottom: 1.75rem}.form__row{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0 1.25rem}.form .field{display: grid;align-content: start;gap: .5rem;min-width: 0;margin: 0 0 1.25rem;padding: 0;border: 0}.field label,.field legend{padding: 0;font-size: .8125rem;font-weight: 600;line-height: 1.3;color: var(--ink)}.field legend{margin-bottom: .5rem}.field label span{font-weight: 400;color: var(--ink-3)}.input{width: 100%;padding: .85rem 1rem;border: 1px solid var(--sand-2);border-radius: 2px;background: var(--paper);font-size: 1rem;line-height: 1.4;color: var(--ink);transition: border-color .2s,box-shadow .2s,background .2s}.input:hover{border-color: var(--dune)}.input:focus{outline: none;border-color: var(--fern);background: var(--white);box-shadow: 0 0 0 3px rgba(70,94,64,.2)}textarea.input{resize: vertical;min-height: 9rem}.choice{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: .75rem}.choice label{display: flex;align-items: center;gap: .65rem;padding: .85rem 1rem;border: 1px solid var(--sand-2);border-radius: 2px;background: var(--paper);font-size: 1rem;font-weight: 500;cursor: pointer;transition: border-color .2s,background .2s,box-shadow .2s}.choice input{width: 1.05rem;height: 1.05rem;margin: 0;accent-color: var(--fern)}.choice label:has(input:checked){border-color: var(--fern);background: var(--white);box-shadow: inset 0 0 0 1px var(--fern)}.choice label:has(input:focus-visible){outline: 2px solid var(--fern);outline-offset: 3px}.form .btn{margin-top: .5rem}.form__note{margin: 1.25rem 0 0;font-size: .875rem;line-height: 1.5;color: var(--ink-3)}.form__status{margin: 1.25rem 0 0;padding: 1rem 1.15rem;border-left: 3px solid var(--fern);background: var(--sand);font-weight: 500;color: var(--ink)}.details__title{margin-bottom: 1.5rem}.details__list{list-style: none;border-top: 1px solid var(--ink)}.details__list > li{display: grid;grid-template-columns: 1.5rem minmax(0,1fr);gap: 1.1rem;padding: 1.3rem 0;border-bottom: 1px solid var(--line)}.details__list > li > .icon{width: 1.4rem;height: 1.4rem;margin-top: .15rem;color: var(--fern)}.details__label{display: block;margin-bottom: .4rem;font: 600 .6875rem/1 var(--sans);letter-spacing: .11em;text-transform: uppercase;color: var(--ink-3)}.details__big{font-size: 1.25rem;font-weight: 700;letter-spacing: -.01em;color: var(--ink);overflow-wrap: anywhere}.details__big:hover{color: var(--fern)}.details address{font-weight: 500;line-height: 1.5;color: var(--ink)}.details .link{margin-top: .9rem}.details small{display: block;margin-top: .65rem;font-size: .875rem;color: var(--ink-3)}.open-now{display: inline-flex;align-items: center;gap: .5rem;margin: 0 0 .75rem;font-weight: 600;color: var(--ink)}.open-now::before{content: "";width: .55rem;height: .55rem;border-radius: 50%;background: var(--dune)}.open-now.is-open::before{background: #4f8a3c}.hours{width: 100%;border-collapse: collapse;font-size: .9375rem}.hours th{padding: .28rem 1rem .28rem 0;font-weight: 400;text-align: left}.hours td{padding: .28rem 0;font-weight: 500;text-align: right;color: var(--ink)}.lightbox{width: 100vw;max-width: none;height: 100vh;height: 100dvh;max-height: none;margin: 0;padding: 0;border: 0;background: transparent;color: var(--paper);overflow: hidden}.lightbox[open]{display: grid;place-items: center}.lightbox::backdrop{background: rgba(14,19,12,.95)}.lightbox__fig{display: grid;justify-items: center;gap: 1rem;margin: 0;padding: 4.5rem clamp(1rem,6vw,5.5rem) 3.5rem}.lightbox__fig img{width: auto;max-width: 100%;height: auto;max-height: calc(100vh - 10.5rem);max-height: calc(100dvh - 10.5rem);object-fit: contain}.lightbox__fig figcaption{font-size: .9375rem;text-align: center;color: rgba(255,248,241,.88)}.lightbox__btn{position: absolute;display: grid;place-items: center;width: 3rem;height: 3rem;padding: 0;border: 1px solid rgba(255,248,241,.38);border-radius: 50%;background: rgba(14,19,12,.5);color: var(--paper);cursor: pointer;transition: background .25s,color .25s}.lightbox__btn:hover{background: var(--paper);color: var(--ink)}.lightbox__btn:focus-visible{outline-color: var(--paper)}.lightbox__close{top: 1rem;right: 1rem}.lightbox__prev{left: 1rem;top: calc(50% - 1.5rem)}.lightbox__next{right: 1rem;top: calc(50% - 1.5rem)}.lightbox__count{position: absolute;left: 1.4rem;top: 2rem;margin: 0;font: 600 .8125rem/1 var(--sans);letter-spacing: .12em}@keyframes rise{from{opacity: 0;transform: translateY(1.25rem)}to{opacity: 1;transform: none}}@keyframes settle{from{transform: scale(1.06)}to{transform: none}}@keyframes draw{to{stroke-dashoffset: 0}}@media (prefers-reduced-motion: no-preference){.hero__title,.page-hero__inner{animation: rise .9s var(--ease) both}.hero__aside{animation: rise .9s .14s var(--ease) both}.hero__slide.is-active img,.page-hero__bg img{animation: settle 1.8s var(--ease) both}.quill__line path{stroke-dasharray: 1;stroke-dashoffset: 1;animation: draw 1s .75s var(--ease) forwards}.js [data-reveal]{opacity: 0;transform: translateY(1.5rem);transition: opacity .9s var(--ease) var(--d,0s),transform .9s var(--ease) var(--d,0s)}.js [data-reveal].is-in{opacity: 1;transform: none}}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*,*::before,*::after{animation-duration: .01ms !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important}}@media (max-width: 74.99rem){.call__text{display: none}.steps{grid-template-columns: 1fr;gap: 0}.step{display: grid;grid-template-columns: clamp(4rem,12vw,7rem) minmax(0,1fr);column-gap: 1rem;padding: 1.5rem 0}.step:last-child{border-bottom: 1px solid var(--ink)}.step__num{grid-row: span 2;margin: 0}.step p{grid-column: 2;max-width: 34rem}}@media (max-width: 61.99rem){.nav,.header__cta{display: none}.menu-btn{display: grid}.header__actions{margin-left: auto}.head--split,.hero__top,.split,.teaser,.areas,.faq,.cta__inner,.work,.story,.contact{grid-template-columns: minmax(0,1fr)}.head__text{justify-self: start}.hero__top{align-items: start}.services{grid-template-columns: repeat(2,minmax(0,1fr))}.footer__grid{grid-template-columns: repeat(2,minmax(0,1fr))}.footer__brand{grid-column: 1 / -1}.panel{min-height: 24rem}.collage{max-width: 30rem}.principles{grid-template-columns: minmax(0,1fr)}.room,.room--flip{display: block}.room__text{margin-top: 2.25rem}.room:has(.room__inset){padding-bottom: 0}.room:has(.room__inset) .room__text{margin-top: clamp(4rem,14vw,6rem)}.room__inset{right: 0}.duo{grid-template-columns: minmax(0,1fr)}.duo__item--drop{margin-top: 0}.scope--row{grid-template-columns: repeat(2,minmax(0,1fr))}}@media (max-width: 47.99rem){.hero__stage{grid-template-columns: minmax(0,1fr)}.hero__frame{aspect-ratio: 4 / 3}.hero__index{flex-direction: row;justify-content: flex-start;gap: 1rem}.hero__index button{flex-direction: row;padding: .5rem 0}.hero__index button::after{width: 0;height: 2px;transition: width .45s var(--ease)}.hero__index button.is-active::after{width: 3rem;height: 2px}.hero__index.is-auto button.is-active::after{animation-name: tick-x}.hero__lines{top: 40%;width: 180%;opacity: .34}.spread__a .scope{grid-template-columns: minmax(0,1fr)}.ticks{grid-template-columns: 1fr}.spread,.story__photos{grid-template-columns: minmax(0,1fr)}.spread__b .spread__img,.story__tall .story__img{aspect-ratio: 3 / 2}.mosaic{grid-template-columns: repeat(2,minmax(0,1fr))}.mosaic__item,.mosaic__item:nth-child(6){grid-column: span 1;aspect-ratio: 1}.m-wide,.m-last,.mosaic__item:nth-child(6){grid-column: span 2;aspect-ratio: 16 / 10}.stat{padding-inline: .75rem}.track-foot .link{margin-left: 0}.track-foot__note{display: none}.lightbox__prev,.lightbox__next{top: auto;bottom: 1rem}.lightbox__fig{padding: 4.5rem 1rem 5rem}.faq__a{padding-right: 0}}@media (max-width: 35.99rem){.brand{padding-right: 2.9rem;clip-path: polygon(0 0,100% 0,calc(100% - 1.75rem) 100%,0 100%)}.brand img{height: 2rem}.services,.footer__grid,.form__row,.scope--row{grid-template-columns: minmax(0,1fr)}.service{min-height: 0}.service__icon{margin-bottom: 1.5rem}.service .service__tag{margin-top: 0}.hero__slide figcaption span{display: none}.collage__badge{padding: .85rem 1rem}.btn{white-space: normal}}