:root{--paper:#f5f2eb;--ink:#292d26;--muted:#62665d;--line:#d5d6cb;--sage:#e1e5d8;--green:#394831;--rust:#9b452f;--serif:Georgia, "Times New Roman", serif;--sans:Arial, Helvetica, sans-serif;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,summary,select{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto;display:block}picture{display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);text-wrap:balance;font-weight:400}h1{letter-spacing:-.055em;font-size:clamp(3.2rem,6.7vw,6.4rem);line-height:1.04}h2{letter-spacing:-.04em;font-size:clamp(2.3rem,4vw,4rem);line-height:1.14}h3{letter-spacing:-.02em;font-size:1.9rem;line-height:1.18}em{font-weight:400}p{font-size:1rem;line-height:1.8}::selection{background:var(--sage)}:focus-visible{outline:3px solid var(--rust);outline-offset:5px}a:hover{text-underline-offset:5px;text-decoration:underline}.wrap{width:min(1280px,100% - 112px);margin-inline:auto}.eyebrow{font-family:var(--sans);letter-spacing:.16em;font-size:.68rem;font-weight:600;line-height:1.6}.tiny-star{color:var(--rust);vertical-align:middle;margin-right:.5rem;font-size:1.2rem;display:inline-block}.skip-link{z-index:100;background:var(--ink);color:#fff;padding:1rem;position:absolute;top:-100px;left:1rem}.skip-link:focus{top:1rem}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:116px;display:flex}.brand{flex-direction:column;gap:7px;display:flex;text-decoration:none!important}.brand-mark{font-family:var(--serif);letter-spacing:-.06em;font-size:2.7rem;line-height:.85}.brand-dot{color:var(--rust)}.brand-sub{letter-spacing:.19em;font-size:.48rem}.desktop-nav{align-items:center;gap:36px;font-size:.83rem;display:flex}.desktop-nav [aria-current=page]{text-underline-offset:6px;text-decoration:underline}.button{background:var(--green);min-height:54px;color:var(--paper);border:1px solid var(--green);cursor:pointer;border-radius:0;justify-content:center;align-items:center;gap:2rem;padding:1rem 1.5rem;font-size:.84rem;transition:background .2s;display:inline-flex}.button:hover{background:var(--ink);text-decoration:none}.button-small{min-height:44px;padding:.7rem 1.2rem}.button-light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button-light:hover{background:var(--sage)}.button:disabled{cursor:not-allowed;opacity:.65}.mobile-nav{display:none}.hero{grid-template-columns:1.06fr 1fr;gap:0 5%;padding-top:60px;display:grid}.hero-copy{align-self:center;padding-bottom:42px}.hero-copy .eyebrow{margin-bottom:28px}.hero-copy h1 em{color:var(--green)}.hero-description{color:var(--muted);margin-top:28px;font-size:.94rem}.text-link{border-bottom:1px solid var(--ink);align-items:center;gap:24px;min-height:44px;margin-top:22px;padding-block:8px;font-size:.83rem;display:inline-flex;text-decoration:none!important}.text-link:hover{color:var(--rust);border-color:var(--rust)}.hero-visual{min-width:0;position:relative}.hero-visual picture{height:100%}.hero-visual img{object-fit:cover;object-position:52% center;width:100%;height:100%;min-height:500px;max-height:660px}.hero-caption{color:#fff;letter-spacing:.14em;background:linear-gradient(#0000,#000000b3);justify-content:space-between;align-items:center;padding:50px 25px 20px;font-size:.6rem;line-height:1.8;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-flower{font-size:3rem}.hero-bottom{border-bottom:1px solid var(--line);color:var(--muted);grid-column:1/-1;justify-content:space-between;padding:25px 0;font-size:.74rem;display:flex}.hero-bottom span:last-child{letter-spacing:.12em;font-size:.6rem}.intro-section{grid-template-columns:1fr 2fr;gap:50px;padding-block:100px;display:grid}.intro-section>.eyebrow{padding-top:12px}.intro-section p:not(.eyebrow){max-width:560px;color:var(--muted);margin-top:28px}.work-section{padding-bottom:100px}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:42px;display:flex}.section-heading .eyebrow{margin-bottom:14px}.project-grid{grid-template-columns:1fr 1fr;gap:55px 36px;display:grid}.project-image{background:var(--sage);display:block;position:relative;overflow:hidden}.project-image img{aspect-ratio:1.35;object-fit:cover;width:100%;transition:transform .5s}.project-image:hover img{transform:scale(1.025)}.image-arrow{background:var(--paper);place-items:center;width:42px;height:42px;font-size:1.2rem;display:grid;position:absolute;bottom:16px;right:16px}.project-meta{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);justify-content:space-between;margin-block:20px 10px;font-size:.62rem;display:flex}.project-card p{color:var(--muted);margin-top:7px;font-size:.84rem}.services-section{background:var(--sage);padding-block:88px}.service-overview{grid-template-columns:1fr 1.1fr;gap:12%;display:grid}.service-overview h2{margin-block:20px}.service-overview p:not(.eyebrow){max-width:360px;color:var(--muted)}.service-list a{border-bottom:1px solid #bdc5b1;justify-content:space-between;align-items:center;gap:25px;padding:24px 0;display:flex}.service-list a:first-child{border-top:1px solid #bdc5b1}.service-list h3{flex:1;font-size:1.75rem}.service-number{color:var(--muted);font-size:.65rem}.cta-section{background:var(--green);color:var(--paper);padding-block:80px}.cta-inner{justify-content:space-between;align-items:center;gap:48px;display:flex}.cta-inner h2{margin-top:18px}.site-footer{grid-template-columns:1.2fr 1fr 1fr;gap:48px;padding-block:65px 22px;display:grid}.site-footer p{color:var(--muted);margin-top:15px;font-size:.75rem}.site-footer>div:nth-child(3){font-size:.85rem}.footer-links{grid-template-columns:1fr 1fr;gap:18px;font-size:.82rem;display:grid}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;justify-content:space-between;padding-top:24px;font-size:.65rem;display:flex}.page-intro{padding-block:75px 65px}.page-intro>.eyebrow{margin-bottom:24px}.page-intro h1{max-width:1050px}.page-intro>p:not(.eyebrow){max-width:580px;color:var(--muted);margin-top:25px;font-size:1.08rem}.service-details article{border-top:1px solid var(--line);grid-template-columns:60px 1fr 1fr;align-items:start;gap:32px;padding:38px 0;display:grid}.service-details h2{font-size:2rem}.service-details h2 span{font-size:1.2rem}.service-details p{color:var(--muted)}.capabilities-section{padding-block:80px}.capability-grid{grid-template-columns:repeat(3,1fr);gap:45px;display:grid}.capability-grid h3{margin-bottom:14px;font-size:1.5rem}.capability-grid p{color:var(--muted);font-size:.94rem}.about-intro{grid-template-columns:1.7fr 1fr;align-items:center;gap:70px;padding-block:80px;display:grid}.about-intro .eyebrow{margin-bottom:24px}.large-copy{font-family:var(--serif);margin-top:30px;font-size:1.55rem;line-height:1.5}.portrait{max-width:317px}.portrait img{aspect-ratio:1;object-fit:cover;width:100%}.portrait .eyebrow{margin-top:18px;font-size:.55rem;display:block}.about-story{border-top:1px solid var(--line);grid-template-columns:1fr 2fr;gap:50px;padding-block:55px 100px;display:grid}.prose p{color:var(--muted);margin-top:22px}.prose p:first-child{margin-top:0}.prose h2{margin-bottom:32px}.breadcrumb{min-height:24px;display:block;margin-bottom:42px!important}.project-intro{padding-bottom:45px}.project-story{grid-template-columns:1.4fr 1fr;align-items:center;gap:65px;display:grid}.project-lead-image img{width:100%;height:auto}.gallery-section{padding-block:80px}.gallery{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.gallery img{aspect-ratio:1.3;object-fit:cover;width:100%}.gallery a{display:block}.service-feature{grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-bottom:90px;display:grid}.service-feature img{width:100%}.contact-layout{grid-template-columns:1fr 1.3fr;gap:10%;padding-block:30px 100px;display:grid}.contact-aside h2{margin-bottom:20px;font-size:2.1rem}.contact-aside p{color:var(--muted)}.contact-aside .text-link{overflow-wrap:anywhere}.contact-note{max-width:300px;margin-top:44px}.contact-form{grid-template-columns:1fr 1fr;gap:26px 24px;display:grid}.field{flex-direction:column;gap:9px;font-size:.83rem;display:flex}.field-full{grid-column:1/-1}.field input,.field textarea,.field select{width:100%;min-height:48px;color:var(--ink);background:#fbfaf6;border:1px solid #afb3a5;border-radius:0;padding:12px;font-size:1rem}.field textarea{resize:vertical;min-height:150px}.optional{color:var(--muted);font-size:.7rem}.form-message{font-size:.87rem;line-height:1.6}.form-message[data-state=error]{color:#922f22}.form-message[data-state=success]{background:var(--sage);padding:20px}.form-privacy{color:var(--muted);font-size:.75rem}.form-privacy a{text-decoration:underline}.contact-form .button{justify-self:start}.honeypot{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.legal{max-width:720px;padding-block:70px 100px}.legal h1{margin-bottom:35px;font-size:3.5rem}.legal h2{margin-top:35px;font-size:1.8rem}.legal p{color:var(--muted);margin-top:18px}.legal a{text-decoration:underline}@media (width>=1450px){.hero{padding-top:72px}.hero-copy{padding-block:30px}.hero-visual img{min-height:580px}}@media (width<=1000px){.wrap{width:calc(100% - 64px)}.hero{gap:0 4%;padding-top:40px}.hero h1{font-size:clamp(3.1rem,6.8vw,5rem)}.hero-visual img{min-height:440px}.desktop-nav{gap:24px}.intro-section{grid-template-columns:1fr 2.3fr;padding-block:70px}.service-overview{gap:7%}.cta-inner{flex-direction:column;align-items:flex-start}.capability-grid{grid-template-columns:1fr 1fr}.service-details article{grid-template-columns:35px 1fr 1.2fr}.project-story{gap:35px}.about-intro{gap:40px}.contact-layout{gap:7%}.gallery{gap:14px}.project-grid{gap:40px 25px}}@media (width<=700px){.wrap{width:calc(100% - 40px)}.site-header{min-height:90px}.brand-mark{font-size:2.35rem}.brand-sub{font-size:.43rem}.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{cursor:pointer;align-items:center;gap:22px;min-height:44px;padding:12px 0 12px 16px;font-size:.84rem;list-style:none;display:flex}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{font-size:1.4rem}.mobile-nav[open] summary span{transform:rotate(45deg)}.mobile-nav nav{z-index:10;background:var(--paper);border-bottom:1px solid var(--line);padding:20px;position:absolute;top:89px;left:0;right:0;box-shadow:0 8px 12px #0000000d}.mobile-nav nav a{font-family:var(--serif);padding:16px 0;font-size:1.6rem;display:block}.hero{grid-template-columns:1fr;padding-top:34px}.hero-copy{padding-bottom:35px}.hero-copy .eyebrow{margin-bottom:22px;font-size:.59rem}.hero h1{font-size:clamp(3.35rem,12vw,5.5rem)}.hero-description{margin-top:22px}.hero-visual img{aspect-ratio:1.05;object-position:center 55%;min-height:0;max-height:480px}.hero-bottom{align-items:center;gap:15px;padding-block:20px;font-size:.66rem}.hero-bottom span:last-child{text-align:right;max-width:75px;font-size:.5rem}.intro-section{grid-template-columns:1fr;gap:24px;padding-block:58px}.intro-section>.eyebrow{padding:0}.intro-section h2{font-size:2.25rem}.intro-section p:not(.eyebrow){margin-top:20px}.section-heading{align-items:start;gap:20px;margin-bottom:30px}.section-heading .text-link{flex-shrink:0;gap:10px;margin-top:23px;font-size:.75rem}.section-heading h2{font-size:2.35rem}.section-heading .eyebrow{font-size:.57rem}.project-grid{grid-template-columns:1fr;gap:38px}.project-image img{aspect-ratio:1.25}.project-meta{margin-top:16px}.project-card h3{font-size:1.9rem}.work-section{padding-bottom:60px}.services-section{padding-block:56px}.service-overview{grid-template-columns:1fr;gap:40px}.service-list a{padding:22px 0}.service-list h3{font-size:1.6rem}.cta-section{padding-block:58px}.cta-inner{gap:30px}.cta-inner h2{font-size:2.5rem}.site-footer{grid-template-columns:1fr 1fr;gap:38px 25px;padding-top:45px}.site-footer>div:nth-child(3){grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:18px;font-size:.62rem}.footer-bottom span:last-child{width:100%}.footer-links a{min-height:32px;padding-block:6px}.page-intro{padding-block:48px 42px}.page-intro h1{font-size:clamp(2.9rem,10vw,4.8rem)}.page-intro>p:not(.eyebrow){font-size:1rem}.service-details article{grid-template-columns:30px 1fr;gap:16px;padding:28px 0}.service-details p{grid-column:2}.service-details h2{font-size:1.7rem}.capabilities-section{padding-block:50px}.capability-grid{grid-template-columns:1fr;gap:30px}.about-intro{grid-template-columns:1fr;gap:35px;padding-block:45px}.about-intro h1{font-size:3.2rem}.portrait{width:min(100%,317px);margin:auto}.about-story{grid-template-columns:1fr;gap:25px;padding-block:40px 60px}.about-story h2{font-size:2.2rem}.project-story{grid-template-columns:1fr;gap:30px}.gallery-section{padding-block:50px}.gallery-section .section-heading{display:block}.gallery-section .eyebrow{margin-top:16px;display:block}.gallery{grid-template-columns:1fr 1fr;gap:12px}.gallery img{aspect-ratio:1}.service-feature{grid-template-columns:1fr;gap:32px;padding-bottom:50px}.contact-layout{grid-template-columns:1fr;gap:40px;padding-block:10px 60px}.contact-note{max-width:none;margin-top:20px}.contact-form{grid-template-columns:1fr;gap:24px 16px}.legal{padding-block:45px 65px}.legal h1{font-size:3rem}}@media (width<=380px){.wrap{width:calc(100% - 32px)}.section-heading{display:block}.section-heading .text-link{margin-top:12px}.gallery{grid-template-columns:1fr}.hero h1{font-size:3.25rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
