:root{--ink:#11110f;--ink-soft:#1a1a17;--paper:#f3f0e9;--paper-bright:#faf9f5;--sand:#eee5d6;--muted:#62645d;--line:#11110f26;--line-light:#ffffff29;--accent:#c79a5c;--accent-light:#e1c69e;--container:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink);scroll-padding-top:104px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6}button,a{font:inherit}a{color:inherit;text-decoration:none}img{display:block}button{color:inherit}::selection{background:var(--accent);color:var(--ink)}.skip-link{z-index:1000;color:#000;background:#fff;padding:12px 18px;transition:top .18s;position:fixed;top:-80px;left:16px}.skip-link:focus{top:16px}.container{width:min(calc(100% - 48px), var(--container));margin-inline:auto}.section{padding:96px 0}.section--dark{background:var(--ink);color:#fff}.eyebrow{color:#886137;letter-spacing:.16em;text-transform:uppercase;margin:0 0 20px;font-size:.875rem;font-weight:700;line-height:1.5}.section-heading{margin-bottom:52px}.section-heading h2,.contact__intro h2{letter-spacing:-.04em;text-wrap:balance;max-width:850px;margin:0;font-size:clamp(2rem,3.6vw,3rem);font-weight:500;line-height:1.12}.section-heading__intro{max-width:66ch;color:var(--muted);margin:20px 0 0;font-size:1.125rem;line-height:1.65}.section-heading--light .section-heading__intro{color:#fffc}.section--dark .eyebrow,.contact .eyebrow{color:var(--accent-light)}.site-header{z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffd1;border-bottom:1px solid #11110f1a;transition:background .22s,box-shadow .22s;position:fixed;inset:0 0 auto}.site-header--scrolled{background:#ffffffe0;box-shadow:0 4px 20px #0000000d}.nav-shell{grid-template-columns:auto 1fr;align-items:center;gap:32px;width:min(100% - 48px,1320px);min-height:92px;margin-inline:auto;padding:4px 0;display:grid}.brand{width:252px;max-width:100%;display:block}.brand img{object-fit:contain;object-position:left center;width:100%;height:auto}.desktop-nav{justify-content:flex-end;align-items:center;gap:clamp(12px,1.6vw,24px);display:flex}.desktop-nav a{color:var(--ink);white-space:nowrap;font-size:1.05rem;font-weight:600;position:relative}.nav-separator{background:#a77d46;border-radius:50%;flex:0 0 4px;width:4px;height:4px}.desktop-nav a:after{content:"";background:var(--accent);transform-origin:100%;height:1px;transition:transform .18s;position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.menu-button,.mobile-nav{display:none}.hero{background:var(--ink);color:#fff;align-items:center;height:min(680px,85svh);min-height:600px;display:flex;position:relative;overflow:hidden}.hero__image{object-fit:cover;object-position:center}.hero__veil{background:linear-gradient(90deg,#060a09d4 0%,#060a099e 42%,#060a091a 80%),linear-gradient(#0000 66%,#060a09b8 100%);position:absolute;inset:0}.hero__content{z-index:2;padding-top:140px;padding-bottom:80px;position:relative}.hero__eyebrow{color:var(--accent-light);letter-spacing:.22em;text-transform:uppercase;margin:0 0 26px;font-size:.75rem;font-weight:700}.hero h1{letter-spacing:-.045em;max-width:620px;margin:0;font-size:clamp(2.65rem,5vw,4rem);font-weight:500;line-height:1.1}.hero h1 span{color:var(--accent-light);font-weight:500;display:block}.hero__lead{color:#ffffffd6;max-width:490px;margin:24px 0 0;font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.55}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.button{letter-spacing:.01em;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;min-height:50px;padding:0 24px;font-size:.86rem;font-weight:750;transition:transform .18s,background .18s,color .18s,border-color .18s;display:inline-flex}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button--accent{background:var(--accent);color:var(--ink)}.button--accent:hover,.button--accent:focus-visible{background:var(--accent-light)}.button--ghost{color:#fff;border-color:#fff6}.button--ghost:hover,.button--ghost:focus-visible{color:var(--ink);background:#fff;border-color:#fff}.about{background:var(--paper)}.about__layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:56px;display:grid}.about__layout>*{min-width:0}.about__copy p{color:var(--muted);margin:0;font-size:1.125rem;line-height:1.65}.about__copy p+p{margin-top:20px}.about__copy .lead-copy,.about__copy .about__statement{color:var(--ink)}.about__quote{border-left:2px solid var(--accent);max-width:480px;color:var(--muted);margin:28px 0 0;padding:4px 0 4px 22px;font-size:1.1rem;line-height:1.65}.principles{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.principles article{border-right:1px solid var(--line);min-height:220px;padding:34px}.principles article:first-child{padding-left:0}.principles article:last-child{border-right:0}.principles span,.service-item__number{color:var(--accent);letter-spacing:.16em;font-size:.72rem;font-weight:700}.principles h3{letter-spacing:-.025em;margin:40px 0 12px;font-size:1.2rem;font-weight:600}.principles p{max-width:300px;color:var(--muted);margin:0}.service-list{border-top:1px solid var(--line-light)}.service-item{border-bottom:1px solid var(--line-light);grid-template-columns:80px minmax(260px,.75fr) 1fr;align-items:center;gap:30px;min-height:138px;transition:background .18s,padding .18s;display:grid}.service-item:hover{background:#ffffff09;padding-inline:18px}.service-item h3{letter-spacing:-.035em;margin:0;font-size:clamp(1.25rem,1.9vw,1.65rem);font-weight:500}.service-item p{color:#ffffffad;max-width:620px;margin:0}.process{background:var(--paper)}.process-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin:0;padding:0;list-style:none;display:grid}.process-step{border-top:1px solid var(--line);padding-top:22px}.process-step__number{color:#886137;letter-spacing:.16em;font-size:.75rem;font-weight:700}.process-step h3{letter-spacing:-.02em;margin:22px 0 14px;font-size:1.16rem;font-weight:600;line-height:1.3}.process-step p{color:var(--muted);margin:0;font-size:1rem}.projects{background:var(--sand)}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:40px 24px;display:grid}.project-card{min-width:0}.project-card__image{aspect-ratio:16/9;background:#dedbd4;border-radius:4px;position:relative;overflow:hidden}.project-card__image img{object-fit:cover}.project-card__image .project-image--trim-ui{transform-origin:top;transform:scale(1.12)}.project-card__image>span{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#11110fd1;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.72rem;display:grid;position:absolute;top:10px;right:10px}.project-card__body{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;padding-top:18px;display:grid}.project-card__body h3{letter-spacing:-.02em;min-height:2.6em;margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.project-card__location{letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:650;color:#886137!important;margin:8px 0 0!important}.project-card__body>p{color:var(--muted);margin:0;font-size:1rem;line-height:1.55}.contact{background:var(--ink);color:#fff;padding-top:88px;overflow:hidden}.contact__intro{padding-bottom:44px}.contact__intro h2{max-width:680px}.contact__intro>p:not(.eyebrow){color:#ffffffad;max-width:620px;margin:24px 0 0;font-size:1rem}.contact__layout{border-top:1px solid var(--line-light);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;padding:44px 0 64px;display:grid}.contact__details{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:28px 32px;display:grid}.contact__brand{grid-column:1/-1}.contact__brand>p{color:#ffffffa6;max-width:330px;margin:20px 0 0;font-size:1rem}.contact__logo{width:min(100%,320px)}.contact__logo img{object-fit:contain;filter:brightness(0)invert();width:100%;height:auto}.contact__map{background:var(--paper);color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-radius:4px;align-self:start;overflow:hidden}.contact__map-info{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 20px;padding:16px 20px;display:flex}.contact__map-place{min-width:0}.contact__map-place strong,.contact__map-place span{display:block}.contact__map-place strong{font-size:1rem;font-weight:700;line-height:1.4}.contact__map-place span{color:var(--muted);font-size:.875rem;line-height:1.45}.contact__map-link{color:#73502c;text-underline-offset:4px;align-items:center;gap:6px;min-height:44px;font-size:.875rem;font-weight:700;line-height:1.4;display:inline-flex}.contact__map-link:hover,.contact__map-link:focus-visible{color:var(--ink);text-decoration:underline}.contact__map iframe{border:0;width:100%;height:460px;display:block}.contact__column{color:#ffffffad;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;font-size:1rem;display:flex}.contact__column a{overflow-wrap:anywhere;max-width:100%;transition:color .16s}.contact__column--primary{grid-column:1/-1}.contact-links{gap:12px;width:100%;margin:0;display:grid}.contact-links>div{grid-template-columns:4rem minmax(0,1fr);align-items:baseline;gap:10px;display:grid}.contact-links dt{color:#ffffffe6;font-weight:600}.contact-links dd{min-width:0;margin:0}.contact__column a:hover,.contact__column a:focus-visible{color:var(--accent-light)}.contact__label{color:#fff;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font-size:.875rem;font-weight:700;line-height:1.5}.contact address{color:#ffffffad;font-style:normal}.social-links{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.social-links a{color:#ffffffd1;border-radius:2px;grid-template-columns:24px auto;align-items:center;gap:12px;min-height:44px;font-size:1rem;line-height:1.5;display:grid}.social-links a:hover,.social-links a:focus-visible{color:#fff}.social-link__label{text-underline-offset:4px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px;transition:text-decoration-color .16s}.social-links a:hover .social-link__label,.social-links a:focus-visible .social-link__label{-webkit-text-decoration-color:var(--accent-light);text-decoration-color:var(--accent-light)}.social-links a:focus-visible{outline:2px solid var(--accent-light);outline-offset:5px}.social-links svg{width:24px;height:24px}.social-link--facebook svg{color:#0866ff}.social-link--linkedin svg{color:#0a66c2}.social-links--compact{flex-direction:row;gap:12px}.social-links--compact a{grid-template-columns:24px;justify-content:center;width:44px}.footer{border-top:1px solid var(--line-light);color:#ffffff9e;justify-content:space-between;padding:24px 0 34px;font-size:.78rem;display:flex}.footer p{margin:0}.footer a:hover,.footer a:focus-visible{color:#fff}@media (min-width:1800px){.hero{align-items:flex-start;height:min(43vw,1080px);min-height:760px}.hero__image{object-position:center 8%}.hero__content{padding-top:clamp(145px,9vw,190px)}}@media (max-width:1199px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1060px){.desktop-nav{gap:12px}.contact__layout{gap:36px}.contact__details{grid-template-columns:1fr}}@media (max-width:860px){.container{width:min(calc(100% - 36px), var(--container))}.section{padding:88px 0}.nav-shell{grid-template-columns:minmax(0,1fr) auto;gap:16px;width:calc(100% - 36px);min-height:84px}.brand{width:222px}.desktop-nav{display:none}.menu-button{appearance:none;color:#111;cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:0;display:flex}.menu-button:focus-visible{outline-offset:3px;outline:2px solid #886137}.menu-button span{background:currentColor;border-radius:1px;flex-shrink:0;width:24px;height:1.5px;transition:transform .18s,opacity .18s}.menu-button.is-open span:first-child{transform:translateY(6.5px)rotate(45deg)}.menu-button.is-open span:nth-child(2){opacity:0}.menu-button.is-open span:last-child{transform:translateY(-6.5px)rotate(-45deg)}.mobile-nav{border-top:1px solid var(--line);opacity:0;visibility:hidden;pointer-events:none;background:#fffffffa;max-height:calc(100svh - 84px);padding:12px 24px;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:100%;left:0;right:0;overflow:hidden auto;transform:translateY(-10px);box-shadow:0 16px 28px #00000014}.mobile-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mobile-nav a{border-bottom:1px solid var(--line);align-items:center;gap:22px;padding:14px 0;font-size:1.125rem;font-weight:600;display:flex}.mobile-nav a:last-child{border-bottom:0}.mobile-nav span{color:var(--accent);letter-spacing:.12em;font-size:.68rem}.hero{height:auto;min-height:600px}.hero__content{padding-top:144px;padding-bottom:72px}.about__layout{grid-template-columns:1fr;gap:28px}.process-list{grid-template-columns:repeat(2,minmax(0,1fr))}.principles{grid-template-columns:1fr}.principles article,.principles article:first-child{border-right:0;border-bottom:1px solid var(--line);min-height:0;padding:28px 0}.principles article:last-child{border-bottom:0}.principles h3{margin-top:32px}.service-item{grid-template-columns:52px 1fr;gap:18px;padding:26px 0}.service-item p{grid-column:2}.project-grid{gap:36px 22px}.contact__layout{grid-template-columns:1fr}.contact__details{grid-template-columns:repeat(2,minmax(0,1fr))}.contact__map iframe{height:380px}}@media (max-width:620px){.section{padding:72px 0}.section-heading{margin-bottom:48px}.section-heading h2,.contact__intro h2{font-size:clamp(1.9rem,7.8vw,2.5rem)}.hero__image{object-position:65% center}.hero__veil{background:linear-gradient(90deg,#040403db,#04040373),linear-gradient(#0000 42%,#040403d1)}.hero h1{font-size:clamp(2.15rem,9.5vw,2.9rem)}.hero__lead{max-width:92%;margin-top:24px;font-size:1rem}.hero__actions{gap:10px;margin-top:28px}.service-item{grid-template-columns:34px 1fr}.project-grid{grid-template-columns:1fr}.process-list{grid-template-columns:1fr;gap:28px}.project-card__body{padding-top:18px}.project-card__image{max-height:220px}.project-card__body h3{min-height:0}.contact{padding-top:82px}.contact__intro{padding-bottom:36px}.contact__details{grid-template-columns:1fr;gap:38px}.contact__brand{grid-column:auto}.contact__logo{width:min(100%,300px)}.contact__map iframe{height:330px}.footer{align-items:flex-start;gap:18px}.footer a{text-align:right}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
