@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/cormorant-garamond-400-italic.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;font-display:swap;src:url(/fonts/cormorant-garamond-400.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:500;font-display:swap;src:url(/fonts/cormorant-garamond-400.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:600;font-display:swap;src:url(/fonts/cormorant-garamond-400.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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-400.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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-400.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}:root{--ivory: #fbf9f5;--paper: #f4efe6;--beige: #ede6d9;--sand: #ded2bd;--taupe: #8a7e6e;--taupe-deep: #5f564a;--charcoal: #211e1a;--charcoal-soft: #3e3931;--line: rgba(33, 30, 26, .16);--line-strong: rgba(33, 30, 26, .55);--ivory-line: rgba(251, 249, 245, .28);--font-serif: "Cormorant Garamond", "Iowan Old Style", "Times New Roman", serif;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--gutter: clamp(1.25rem, 5vw, 3.5rem);--section-y: clamp(4.5rem, 9vw, 8.5rem);--header-h: 5.25rem;--fs-h1: clamp(2.6rem, 6vw, 5.25rem);--fs-h2: clamp(2rem, 4vw, 3.4rem);--fs-h3: clamp(1.45rem, 2.2vw, 2rem);--fs-lead: clamp(1.05rem, 1.3vw, 1.25rem);--ease: cubic-bezier(.22, .61, .36, 1);--dur: .45s}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--ivory);color:var(--charcoal-soft);font-family:var(--font-sans);font-size:1.0625rem;line-height:1.68;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}body.menu-open{overflow:hidden}img,picture,svg,video{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{padding:0;list-style:none}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:500;color:var(--charcoal);line-height:1.08;letter-spacing:-.01em;text-wrap:balance}p{text-wrap:pretty}[hidden]{display:none!important}::selection{background:var(--sand);color:var(--charcoal)}:focus-visible{outline:2px solid var(--charcoal);outline-offset:3px}.on-dark :focus-visible,.cta-band :focus-visible,.site-footer :focus-visible{outline-color:var(--ivory)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:1rem;z-index:200;padding:.75rem 1.25rem;background:var(--charcoal);color:var(--ivory);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;transition:top .2s var(--ease)}.skip-link:focus{top:1rem}.container{width:100%;max-width:1280px;margin-inline:auto;padding-inline:var(--gutter)}.container--wide{max-width:1500px}.container--narrow{max-width:880px}.section{padding-block:var(--section-y)}.section--tight{padding-block:clamp(3rem,6vw,5.5rem)}.section--paper{background:var(--paper)}.section--beige{background:var(--beige)}.section[id]{scroll-margin-top:calc(var(--header-h) + 1rem)}.eyebrow{font-family:var(--font-sans);font-size:.75rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--taupe-deep);margin-bottom:1.1rem}.eyebrow--light{color:#fbf9f5d9}.eyebrow--line{display:flex;align-items:center;gap:1rem}.eyebrow--line:before{content:"";width:clamp(1.75rem,4vw,3.5rem);height:1px;background:currentColor;opacity:.6}.lead{font-size:var(--fs-lead);line-height:1.6;color:var(--charcoal-soft)}.lead--light{color:#fbf9f5e0}.serif-quote{font-family:var(--font-serif);font-size:clamp(1.6rem,3vw,2.5rem);font-style:italic;font-weight:400;line-height:1.3;color:var(--charcoal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;padding:1.05rem 1.9rem;border:1px solid transparent;border-radius:0;font-family:var(--font-sans);font-size:.78rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;line-height:1;text-align:center;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease)}.btn__arrow{display:inline-block;transition:transform var(--dur) var(--ease)}.btn:hover .btn__arrow{transform:translate(.3rem)}.btn--solid{background:var(--charcoal);border-color:var(--charcoal);color:var(--ivory)}.btn--solid:hover{background:#3a352d;border-color:#3a352d}.btn--outline{background:transparent;border-color:var(--line-strong);color:var(--charcoal)}.btn--outline:hover{background:var(--charcoal);border-color:var(--charcoal);color:var(--ivory)}.btn--light{background:var(--ivory);border-color:var(--ivory);color:var(--charcoal)}.btn--light:hover{background:var(--sand);border-color:var(--sand)}.btn--ghost-light{background:transparent;border-color:#fbf9f599;color:var(--ivory)}.btn--ghost-light:hover{background:var(--ivory);border-color:var(--ivory);color:var(--charcoal)}.btn--sm{padding:.8rem 1.35rem;font-size:.72rem;letter-spacing:.14em}.btn--full{width:100%}.text-link{display:inline-flex;align-items:center;gap:.55rem;font-size:.78rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--charcoal);padding-bottom:.3rem;background-image:linear-gradient(currentColor,currentColor);background-size:100% 1px;background-repeat:no-repeat;background-position:0 100%;transition:color var(--dur) var(--ease),background-size var(--dur) var(--ease)}.text-link:hover{color:var(--taupe-deep);background-size:40% 1px}.text-link .btn__arrow{transition:transform var(--dur) var(--ease)}.text-link:hover .btn__arrow{transform:translate(.3rem)}.section-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:clamp(1.5rem,4vw,3rem);margin-bottom:clamp(2.5rem,5vw,4rem)}.section-head__text{max-width:46rem}.section-head__title{font-size:var(--fs-h2)}.section-head__intro{margin-top:1.35rem;max-width:40rem;color:var(--charcoal-soft)}.section-head__action{flex-shrink:0;padding-bottom:.4rem}.site-header{position:sticky;top:0;z-index:100;background:var(--ivory);border-bottom:1px solid var(--line);transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:var(--header-h)}.site-header--overlay{position:fixed;inset-inline:0;top:0}.site-header--overlay:not(.is-scrolled):not(.menu-is-open){background:transparent;border-bottom-color:transparent;color:var(--ivory)}.site-header.is-scrolled,.site-header--overlay.menu-is-open{background:#fbf9f5f0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--line)}.wordmark{display:inline-flex;flex-direction:column;gap:.2rem;line-height:1}.wordmark__name{font-family:var(--font-serif);font-size:clamp(1.35rem,2vw,1.6rem);font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--charcoal);transition:color var(--dur) var(--ease)}.wordmark__tag{font-size:.6rem;font-weight:500;letter-spacing:.42em;text-transform:uppercase;color:var(--taupe-deep);transition:color var(--dur) var(--ease)}.site-header--overlay:not(.is-scrolled):not(.menu-is-open) .wordmark__name,.site-header--overlay:not(.is-scrolled):not(.menu-is-open) .wordmark__tag{color:var(--ivory)}.site-header--overlay:not(.is-scrolled):not(.menu-is-open) .wordmark__tag{color:#fbf9f5bf}.nav__list{display:flex;align-items:center;gap:clamp(1.25rem,2.5vw,2.25rem)}.nav__link{position:relative;font-size:.78rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal);padding-block:.5rem;transition:color var(--dur) var(--ease),opacity var(--dur) var(--ease)}.nav__link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--dur) var(--ease)}.nav__link:hover:after,.nav__link[aria-current=page]:after{transform:scaleX(1)}.site-header--overlay:not(.is-scrolled):not(.menu-is-open) .nav__link{color:#fbf9f5eb}.site-header__actions{display:flex;align-items:center;gap:1rem}.site-header--overlay:not(.is-scrolled):not(.menu-is-open) .header-cta{background:transparent;border-color:#fbf9f5a6;color:var(--ivory)}.site-header--overlay:not(.is-scrolled):not(.menu-is-open) .header-cta:hover{background:var(--ivory);border-color:var(--ivory);color:var(--charcoal)}.menu-toggle{display:none;align-items:center;gap:.65rem;padding:.5rem .25rem;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:inherit}.menu-toggle__bars{display:flex;flex-direction:column;justify-content:center;gap:5px;width:26px;height:14px}.menu-toggle__bars span{display:block;height:1.5px;background:currentColor;transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease)}.menu-toggle[aria-expanded=true] .menu-toggle__bars span:first-child{transform:translateY(3.25px) rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle__bars span:last-child{transform:translateY(-3.25px) rotate(-45deg)}.mobile-menu{position:fixed;inset:var(--header-h) 0 0 0;z-index:95;background:var(--ivory);padding:clamp(1.5rem,5vw,2.5rem) var(--gutter) 3rem;overflow-y:auto;overscroll-behavior:contain}.mobile-menu__list{display:flex;flex-direction:column;border-top:1px solid var(--line)}.mobile-menu__link{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-block:clamp(1rem,3vw,1.4rem);border-bottom:1px solid var(--line);font-family:var(--font-serif);font-size:clamp(1.75rem,7vw,2.5rem);font-weight:500;color:var(--charcoal)}.mobile-menu__index{font-family:var(--font-sans);font-size:.7rem;letter-spacing:.2em;color:var(--taupe-deep)}.mobile-menu__link[aria-current=page]{color:var(--taupe-deep)}.mobile-menu__actions{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.mobile-menu__meta{margin-top:2.5rem;display:grid;gap:.4rem;font-size:.92rem;color:var(--taupe-deep)}.mobile-menu__meta a:hover{color:var(--charcoal);text-decoration:underline;text-underline-offset:3px}.hero{position:relative;display:grid;align-items:end;min-height:92vh;min-height:92svh;padding-top:calc(var(--header-h) + 2rem);padding-bottom:clamp(3rem,8vh,6rem);color:var(--ivory);overflow:hidden;background:var(--charcoal)}.hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero__veil{position:absolute;inset:0;background:linear-gradient(to bottom,#12100d80,#12100d1f 34%,#12100d1a 55%,#12100da8),linear-gradient(to right,#12100d66,#12100d05 65%)}.hero__content{position:relative;z-index:1;max-width:62rem}.hero__title{color:var(--ivory);font-size:var(--fs-h1);font-weight:500;line-height:1.02}.hero__intro{margin-top:1.6rem;max-width:34rem;font-size:var(--fs-lead);line-height:1.6;color:#fbf9f5e6}.hero__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:clamp(2rem,4vw,2.75rem)}.page-hero{position:relative;display:grid;align-items:end;min-height:clamp(22rem,44svh,30rem);padding-top:calc(var(--header-h) + clamp(2.5rem,6vw,4.5rem));padding-bottom:clamp(2.5rem,5vw,4rem);color:var(--ivory);background:var(--charcoal);overflow:hidden}.page-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero__veil{position:absolute;inset:0;background:linear-gradient(to bottom,#12100d85,#12100d3d 45%,#12100d9e)}.page-hero__content{position:relative;z-index:1}.page-hero__title{color:var(--ivory);font-size:clamp(2.4rem,5vw,4.25rem)}.page-hero__intro{margin-top:1.25rem;max-width:38rem;color:#fbf9f5e0;font-size:var(--fs-lead)}.breadcrumb{margin-bottom:1.5rem}.breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#fbf9f5bf}.breadcrumb__list a:hover{color:var(--ivory)}.breadcrumb__list li:not(:last-child):after{content:"/";margin-left:.6rem;opacity:.6}.breadcrumb__list [aria-current=page]{color:var(--ivory)}.breadcrumb--dark .breadcrumb__list{color:var(--taupe-deep)}.breadcrumb--dark .breadcrumb__list [aria-current=page],.breadcrumb--dark .breadcrumb__list a:hover{color:var(--charcoal)}.intro-strip__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,5rem);align-items:start}.intro-strip__statement{font-family:var(--font-serif);font-size:clamp(1.75rem,3.2vw,2.85rem);font-weight:400;line-height:1.22;color:var(--charcoal)}.intro-strip__body p+p{margin-top:1.25rem}.intro-strip__action{margin-top:2rem}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,4vw,3.5rem) clamp(1.5rem,3vw,2.75rem)}.project-card{display:flex;flex-direction:column}.project-card__link{display:flex;flex-direction:column;height:100%}.project-card__media{position:relative;overflow:hidden;aspect-ratio:3 / 2;background:var(--beige)}.project-card__image{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.project-card__link:hover .project-card__image,.project-card__link:focus-visible .project-card__image{transform:scale(1.045)}.project-card__body{display:flex;flex-direction:column;gap:.65rem;padding-top:1.4rem}.project-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.7rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--taupe-deep)}.project-card__meta span:not(:last-child):after{content:"·";margin-left:.6rem;color:var(--taupe)}.project-card__title{font-size:clamp(1.5rem,2vw,1.9rem)}.project-card__summary{font-size:.97rem;color:var(--charcoal-soft)}.project-card__cta{margin-top:auto;padding-top:.9rem;align-self:flex-start;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--charcoal);display:inline-flex;align-items:center;gap:.5rem}.project-card__cta .btn__arrow{transition:transform var(--dur) var(--ease)}.project-card__link:hover .project-card__cta .btn__arrow{transform:translate(.3rem)}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;padding-block:1.5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:clamp(2.5rem,5vw,4rem)}.filter-bar__group{display:flex;flex-wrap:wrap;gap:.75rem}.filter-btn{padding:.75rem 1.5rem;border:1px solid var(--line);font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--charcoal);background:transparent;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.filter-btn:hover{border-color:var(--line-strong)}.filter-btn[aria-pressed=true]{background:var(--charcoal);border-color:var(--charcoal);color:var(--ivory)}.filter-status{font-size:.8rem;letter-spacing:.08em;color:var(--taupe-deep)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:minmax(3rem,5rem) minmax(0,1fr) minmax(0,1.15fr);gap:clamp(1.25rem,4vw,3.5rem);padding-block:clamp(2.25rem,4.5vw,3.5rem);border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--header-h) + 1.5rem)}.service-row__num{font-family:var(--font-serif);font-size:1.15rem;font-style:italic;color:var(--taupe);padding-top:.4rem}.service-row__title{font-size:clamp(1.6rem,2.6vw,2.3rem)}.service-row__kicker{margin-top:.75rem;font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--taupe-deep)}.service-row__text{color:var(--charcoal-soft)}.service-row__deliverables{display:grid;gap:.55rem;margin-top:1.35rem}.service-row__deliverables li{position:relative;padding-left:1.15rem;font-size:.94rem;color:var(--charcoal-soft)}.service-row__deliverables li:before{content:"";position:absolute;left:0;top:.62em;width:.45rem;height:1px;background:var(--taupe)}.band{position:relative;display:grid;align-items:center;min-height:clamp(24rem,58vh,36rem);padding-block:clamp(3.5rem,8vw,6rem);color:var(--ivory);background:var(--charcoal);overflow:hidden}.band__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.band__veil{position:absolute;inset:0;background:linear-gradient(to right,#12100dad,#12100d59 60%,#12100d33)}.band__content{position:relative;z-index:1;max-width:44rem}.band__title{color:var(--ivory);font-size:clamp(1.9rem,3.6vw,3.1rem)}.band__text{margin-top:1.35rem;color:#fbf9f5e0;max-width:34rem}.band__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:clamp(1.75rem,3vw,2.5rem)}.about-teaser__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}.about-teaser__media{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(.75rem,1.5vw,1.25rem);align-items:end}.about-teaser__media figure{overflow:hidden;background:var(--beige)}.about-teaser__media figure:first-child{aspect-ratio:4 / 5}.about-teaser__media figure:last-child{aspect-ratio:3 / 4;margin-bottom:clamp(1.5rem,4vw,3.5rem)}.about-teaser__media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.about-teaser__media figure:hover img{transform:scale(1.04)}.about-teaser__title{font-size:var(--fs-h2);margin-bottom:1.5rem}.about-teaser__body p+p{margin-top:1.25rem}.about-teaser__action{margin-top:2.25rem}.process__list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem)}.process-step{position:relative;padding-top:1.75rem;border-top:1px solid var(--line-strong)}.process-step__num{font-family:var(--font-serif);font-style:italic;font-size:1rem;color:var(--taupe);margin-bottom:1.1rem;display:block}.process-step__title{font-size:clamp(1.25rem,1.6vw,1.5rem);margin-bottom:.75rem}.process-step__text{font-size:.95rem;color:var(--charcoal-soft)}.cta-band{background:var(--charcoal);color:var(--ivory);padding-block:clamp(4rem,8vw,6.5rem)}.cta-band__inner{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:clamp(2rem,5vw,4rem)}.cta-band__text{max-width:44rem}.cta-band__title{color:var(--ivory);font-size:clamp(2rem,4vw,3.4rem)}.cta-band__sub{margin-top:1.25rem;color:#fbf9f5d1;max-width:34rem}.cta-band__actions{display:flex;flex-wrap:wrap;gap:1rem}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}.split--top{align-items:start}.split__media{overflow:hidden;background:var(--beige)}.split__media img{width:100%;height:100%;object-fit:cover}.split__media--portrait{aspect-ratio:4 / 5}.split__media--landscape{aspect-ratio:4 / 3}.split__title{font-size:var(--fs-h2);margin-bottom:1.5rem}.split__body p+p{margin-top:1.25rem}.split__action{margin-top:2.25rem}.pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.75rem,4vw,3rem);margin-top:clamp(2.5rem,5vw,4rem)}.pillar{padding-top:1.5rem;border-top:1px solid var(--line-strong)}.pillar__title{font-size:clamp(1.3rem,1.8vw,1.6rem);margin-bottom:.75rem}.pillar__text{font-size:.97rem;color:var(--charcoal-soft)}.approach-list{display:grid;gap:clamp(1.75rem,4vw,2.75rem);counter-reset:approach}.approach-item{display:grid;grid-template-columns:minmax(3rem,4.5rem) minmax(0,1fr);gap:clamp(1rem,3vw,2.5rem);padding-bottom:clamp(1.75rem,4vw,2.75rem);border-bottom:1px solid var(--line);counter-increment:approach}.approach-item:before{content:counter(approach,decimal-leading-zero);font-family:var(--font-serif);font-style:italic;font-size:1.15rem;color:var(--taupe)}.approach-item__title{font-size:clamp(1.35rem,2vw,1.75rem);margin-bottom:.65rem}.approach-item__text{color:var(--charcoal-soft)}.project-detail__header{padding-top:clamp(2.5rem,6vw,4.5rem);padding-bottom:clamp(2rem,4vw,3rem)}.project-detail__back{margin-bottom:clamp(2rem,4vw,3rem)}.project-detail__eyebrow{margin-bottom:1.1rem}.project-detail__title{font-size:clamp(2.5rem,5.5vw,4.75rem);max-width:20ch}.project-detail__summary{margin-top:1.5rem;max-width:42rem;font-size:var(--fs-lead)}.project-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.25rem,3vw,2.5rem);margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:clamp(1.75rem,3vw,2.25rem);border-top:1px solid var(--line)}.project-meta__label{font-size:.68rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--taupe-deep);margin-bottom:.55rem}.project-meta__value{font-family:var(--font-serif);font-size:clamp(1.15rem,1.5vw,1.4rem);color:var(--charcoal)}.project-detail__cover{overflow:hidden;background:var(--beige)}.project-detail__cover img{width:100%;height:auto}.project-overview{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}.project-overview__text p+p{margin-top:1.35rem}.project-brief{background:var(--paper);padding:clamp(1.75rem,3vw,2.5rem);border-top:2px solid var(--charcoal)}.project-brief__title{font-size:1.35rem;margin-bottom:1.25rem}.project-brief__list{display:grid;gap:.7rem}.project-brief__list li{display:flex;gap:.75rem;font-size:.95rem;color:var(--charcoal-soft)}.project-brief__list li:before{content:"—";color:var(--taupe);flex-shrink:0}.gallery{display:grid;gap:clamp(1rem,2vw,1.75rem)}.gallery__pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2vw,1.75rem)}.gallery figure{overflow:hidden;background:var(--beige);margin:0}.gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:3 / 2}.project-next{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:clamp(2.25rem,4vw,3rem);border-top:1px solid var(--line)}.project-next__label{font-size:.7rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--taupe-deep);margin-bottom:.5rem}.project-next__title{font-size:clamp(1.6rem,3vw,2.4rem)}.project-next__link:hover .project-next__title{color:var(--taupe-deep)}.contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2.5rem,6vw,5.5rem);align-items:start}.contact-block+.contact-block{margin-top:clamp(2rem,4vw,2.75rem);padding-top:clamp(2rem,4vw,2.75rem);border-top:1px solid var(--line)}.contact-block__label{font-size:.7rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--taupe-deep);margin-bottom:.75rem}.contact-block__value{font-family:var(--font-serif);font-size:clamp(1.35rem,2vw,1.75rem);color:var(--charcoal)}.contact-block__value a:hover{color:var(--taupe-deep)}.contact-block__note{margin-top:.5rem;font-size:.92rem;color:var(--taupe-deep)}.whatsapp-btn{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.25rem;padding:1rem 1.6rem;border:1px solid var(--line-strong);font-size:.76rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--charcoal);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.whatsapp-btn:hover{background:var(--charcoal);border-color:var(--charcoal);color:var(--ivory)}.whatsapp-btn svg{width:1.1rem;height:1.1rem;flex-shrink:0}.next-steps{display:grid;gap:1.15rem;counter-reset:steps;margin-top:1.5rem}.next-steps li{display:grid;grid-template-columns:minmax(2.25rem,auto) minmax(0,1fr);gap:1rem;font-size:.97rem;color:var(--charcoal-soft);counter-increment:steps}.next-steps li:before{content:counter(steps);font-family:var(--font-serif);font-style:italic;color:var(--taupe)}.contact-form{background:var(--paper);padding:clamp(1.75rem,4vw,3rem);border-top:2px solid var(--charcoal)}.contact-form__title{font-size:clamp(1.6rem,2.5vw,2.1rem);margin-bottom:.5rem}.contact-form__intro{font-size:.95rem;color:var(--taupe-deep);margin-bottom:clamp(1.75rem,3vw,2.5rem)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.15rem,2vw,1.5rem)}.field{display:flex;flex-direction:column;gap:.5rem}.field--full{grid-column:1 / -1}.field label{font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--charcoal)}.field label .req{color:var(--taupe-deep);margin-left:.25rem}.field input,.field select,.field textarea{width:100%;padding:.9rem 1rem;background:var(--ivory);border:1px solid var(--line);border-radius:0;font-size:.98rem;color:var(--charcoal);transition:border-color var(--dur) var(--ease),background-color var(--dur) var(--ease)}.field textarea{min-height:9.5rem;resize:vertical;line-height:1.6}.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--charcoal) 50%),linear-gradient(135deg,var(--charcoal) 50%,transparent 50%);background-position:calc(100% - 1.15rem) calc(50% + 2px),calc(100% - .85rem) calc(50% + 2px);background-size:.32rem .32rem,.32rem .32rem;background-repeat:no-repeat;padding-right:2.5rem}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--taupe)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--charcoal)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--charcoal);outline-offset:1px}.field [aria-invalid=true]{border-color:#9c3b2e;background:#fdf6f4}.field__error{font-size:.83rem;color:#8d2f23;display:flex;gap:.4rem}.field__error:before{content:"!";display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;border:1px solid currentColor;border-radius:50%;font-size:.66rem;font-weight:600;flex-shrink:0;margin-top:.15rem}.form-status{padding:1rem 1.25rem;margin-bottom:1.5rem;font-size:.94rem;line-height:1.55;border:1px solid}.form-status--error{background:#fdf4f2;border-color:#d8a49b;color:#7d2a1f}.form-status--success{background:#f3f6f1;border-color:#b7c7af;color:#33452b}.form-status strong{font-weight:600}.form-note{margin-top:1.25rem;font-size:.83rem;color:var(--taupe-deep)}.form-actions{margin-top:1.75rem;display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem}.form-legal{font-size:.8rem;color:var(--taupe-deep)}.site-footer{background:var(--charcoal);color:#fbf9f5c7;padding-top:clamp(3.5rem,7vw,5.5rem)}.site-footer a{transition:color var(--dur) var(--ease)}.site-footer__grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:clamp(2rem,4vw,3.5rem);padding-bottom:clamp(3rem,6vw,4.5rem)}.site-footer__brand .wordmark__name{color:var(--ivory)}.site-footer__brand .wordmark__tag{color:#fbf9f599}.site-footer__blurb{margin-top:1.5rem;max-width:30rem;font-size:.96rem;color:#fbf9f5b3}.site-footer__heading{font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ivory);margin-bottom:1.35rem}.site-footer__list{display:grid;gap:.75rem;font-size:.95rem}.site-footer__list a:hover{color:var(--ivory)}.site-footer__address{font-style:normal;display:grid;gap:.75rem;font-size:.95rem}.site-footer__address a:hover{color:var(--ivory)}.social-list{display:flex;gap:.75rem;margin-top:1.75rem}.social-list a{display:inline-flex;align-items:center;justify-content:center;width:2.6rem;height:2.6rem;border:1px solid rgba(251,249,245,.28);color:#fbf9f5d9;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.social-list a:hover{background:var(--ivory);border-color:var(--ivory);color:var(--charcoal)}.social-list svg{width:1rem;height:1rem}.site-footer__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.75rem;border-top:1px solid rgba(251,249,245,.16);font-size:.78rem;letter-spacing:.04em;color:#fbf9f594}.site-footer__bottom p+p{margin-top:0}.not-found{min-height:60vh;display:grid;place-items:center;text-align:center;padding-block:clamp(4rem,10vw,7rem)}.not-found__code{font-family:var(--font-serif);font-style:italic;font-size:clamp(3.5rem,10vw,7rem);color:var(--sand);line-height:1}.not-found__title{font-size:clamp(2rem,4vw,3rem);margin-top:1rem}.not-found__text{margin-top:1.25rem;max-width:32rem;margin-inline:auto}.not-found__actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:2.25rem}@media(max-width:1080px){.nav{display:none}.menu-toggle{display:inline-flex}.header-cta{display:none}.process__list{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:clamp(2rem,4vw,2.75rem)}.site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-row{grid-template-columns:minmax(2.5rem,3.5rem) minmax(0,1fr)}.service-row__body--text{grid-column:2}}@media(max-width:820px){:root{--header-h: 4.5rem}.intro-strip__grid,.about-teaser__grid,.split,.project-overview,.contact-grid{grid-template-columns:minmax(0,1fr)}.about-teaser__media{order:-1}.project-grid,.pillars{grid-template-columns:minmax(0,1fr)}.project-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery__pair,.form-grid{grid-template-columns:minmax(0,1fr)}.hero{min-height:84vh;min-height:84svh}.hero__actions .btn,.band__actions .btn{flex:1 1 auto}}@media(max-width:640px){.process__list,.site-footer__grid{grid-template-columns:minmax(0,1fr)}.section-head,.filter-bar{flex-direction:column;align-items:flex-start}.project-meta{grid-template-columns:minmax(0,1fr);gap:1.25rem}.about-teaser__media{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.about-teaser__media figure:last-child{margin-bottom:0}.cta-band__inner{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
