:root{color:#f0ece4;font-synthesis:none;text-rendering:optimizelegibility;--paper:#f0ece4;--ink:#171513;--red:#e66a55;--muted:#a8a097;--line:#393531;background:#171513;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.topbar{border-bottom:1px solid var(--line);z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#171513f0;justify-content:space-between;align-items:center;height:84px;padding:0 6.1%;display:flex;position:sticky;top:0}.wordmark{letter-spacing:-.08em;flex-wrap:wrap;width:140px;font-size:19px;font-weight:700;line-height:1;display:flex}.wordmark span{color:var(--red)}.wordmark small{letter-spacing:.1em;width:100%;margin-top:7px;font:8px DM Mono,monospace}.nav{color:#d4cec5;align-items:center;gap:34px;font-size:12px;display:flex}.nav a:hover{color:var(--red)}.nav-contact{border:1px solid #625c54;align-items:center;gap:12px;padding:12px 15px;display:flex}.menu-toggle{background:0 0;border:0;display:none}.hero{padding:28px 6.1% 0}.hero-topline,.hero-bottom,.section-kicker{letter-spacing:.11em;color:#aaa299;justify-content:space-between;gap:20px;font:9px DM Mono,monospace;display:flex}.hero-title{padding:76px 0 47px;position:relative}.eyebrow{letter-spacing:.13em;color:#c3bcb2;align-items:center;gap:10px;font:10px DM Mono,monospace;display:flex}.dot{background:var(--red);border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.hero h1,.work h2,.intro h2,.services h2,.contact h2{letter-spacing:-.075em;margin:27px 0 0;font-size:clamp(58px,8.5vw,128px);font-weight:500;line-height:.91}.hero h1 em,.intro h2 em,.work h2 em,.services h2 em,.contact h2 em,.statement em{font-family:Playfair Display,serif;font-weight:500}.hero h1>span{color:var(--red)}.hero-note{width:220px;position:absolute;bottom:48px;right:4%}.hero-note p{color:#b8b0a6;font-size:13px;line-height:1.8}.round-link{border:1px solid #726a60;border-radius:50%;justify-content:center;align-items:center;width:43px;height:43px;margin-top:17px;display:flex}.round-link:hover{background:var(--red);border-color:var(--red)}.hero-image{height:min(57vw,600px);min-height:340px;margin-bottom:18px;position:relative;overflow:hidden}.hero-image:after{content:"";background:linear-gradient(90deg,#00000059,#0000 70%),linear-gradient(#0000 70%,#0000004d);position:absolute;inset:0}.hero-image img{object-fit:cover;object-position:center 54%;filter:saturate(.72);width:100%;height:100%}.image-index{z-index:1;letter-spacing:.12em;font:9px DM Mono,monospace;position:absolute;bottom:18px;left:20px}.image-stamp{z-index:1;letter-spacing:.15em;text-align:right;font:10px/1.8 DM Mono,monospace;position:absolute;top:14%;right:5%}.image-stamp i{letter-spacing:0;font:italic 25px Playfair Display,serif}.hero-bottom{padding:13px 0 32px}.hero-bottom a{color:var(--red)}.section-pad{padding:100px 9%}.intro{background:var(--paper);color:var(--ink)}.intro .section-kicker,.work .section-kicker,.services .section-kicker,.contact .section-kicker{color:#746d63}.intro-grid{grid-template-columns:1.2fr .8fr;gap:10%;padding:76px 0 70px;display:grid}.intro h2,.work h2,.services h2,.contact h2{letter-spacing:-.07em;margin:0;font-size:clamp(48px,6vw,82px);line-height:1.02}.intro h2 em{color:#a53d2e}.intro-copy{max-width:380px;padding-top:4px}.intro-copy p{color:#514b45;margin:0 0 20px;font-size:15px;line-height:1.85}.text-link{letter-spacing:.05em;border-bottom:1px solid #b6ada2;align-items:center;gap:15px;margin-top:20px;padding-bottom:11px;font:10px DM Mono,monospace;display:inline-flex}.manifesto{border-top:1px solid #d4ccc1;justify-content:space-between;align-items:center;gap:20px;padding-top:20px;display:flex}.manifesto span{color:#756d63;font:9px DM Mono,monospace}.manifesto p{letter-spacing:.07em;font:10px DM Mono,monospace}.manifesto b{color:#b74635;padding:0 8px}.work{background:#1b1917}.work-heading{justify-content:space-between;align-items:end;gap:30px;margin:65px 0 48px;display:flex}.work h2 em{color:#d6533c}.work-heading p{color:#aaa299;max-width:255px;font-size:12px;line-height:1.8}.filters{border-bottom:1px solid var(--line);gap:8px;margin-bottom:28px;padding-bottom:14px;display:flex}.filter{cursor:pointer;color:#bdb5ab;background:0 0;border:1px solid #45403a;border-radius:100px;padding:10px 14px;font-size:11px}.filter small{color:#8d847a;margin-left:12px;font:9px DM Mono,monospace}.filter.active,.filter:hover{color:#fff;background:#a53d2e;border-color:#a53d2e}.filter.active small{color:#fff}.project-grid{grid-template-columns:1fr 1fr;gap:44px 25px;display:grid}.project:nth-child(2n){margin-top:65px}.project-image{background:#302b26;height:clamp(250px,38vw,480px);display:block;position:relative;overflow:hidden}.project:nth-child(2n) .project-image{height:clamp(230px,31vw,400px)}.project-image img{object-fit:cover;filter:saturate(.68);width:100%;height:100%;transition:transform .7s,filter .4s}.project-image:hover img{filter:saturate(.95);transform:scale(1.04)}.project-open{background:var(--red);place-items:center;width:38px;height:38px;display:grid;position:absolute;top:16px;right:16px}.project-number{letter-spacing:.1em;text-shadow:0 1px 5px #000;font:9px DM Mono,monospace;position:absolute;bottom:14px;left:15px}.project-meta{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:17px 0;display:flex}.project-meta>div>span,.project-type{letter-spacing:.1em;color:#9d948a;font:8px DM Mono,monospace}.project-meta h3{margin:8px 0 0;font:500 26px Playfair Display,serif}.project-type{padding-top:5px}.portfolio-note{color:#a59c91;letter-spacing:.07em;align-items:center;gap:9px;margin-top:40px;font:9px DM Mono,monospace;display:flex}.services{color:#201d1a;background:#d8d0c4}.services .section-kicker{color:#766e64}.services-layout{grid-template-columns:.8fr 1.2fr;gap:10%;padding-top:75px;display:grid}.services h2 em{color:#a53d2e}.service-list{border-top:1px solid #b5ab9e}.service-row{border-bottom:1px solid #b5ab9e;grid-template-columns:35px 1fr 20px;align-items:start;gap:15px;padding:22px 0;display:grid}.service-num{color:#a04435;padding-top:7px;font:10px DM Mono,monospace}.service-row h3{margin:0 0 6px;font:500 24px Playfair Display,serif}.service-row p{color:#655d54;margin:0;font-size:12px;line-height:1.7}.statement{background:var(--red);text-align:center;color:#f4eae0;padding:80px 9%}.statement-label,.statement>span{letter-spacing:.14em;font:9px DM Mono,monospace}.statement p{letter-spacing:-.05em;margin:30px 0;font-size:clamp(35px,5vw,66px);line-height:1.08}.statement em{color:#251b18}.contact{background:var(--paper);color:var(--ink);padding-bottom:30px}.contact-grid{grid-template-columns:1fr .7fr;gap:12%;padding:70px 0 90px;display:grid}.contact h2 em{color:#a53d2e}.contact-grid>div:first-child>p{color:#625a52;max-width:280px;margin-top:24px;font-size:13px;line-height:1.8}.contact-actions{flex-direction:column;align-items:flex-start;padding-top:14px;display:flex}.contact-main{color:#f2ece3;background:#1c1917;justify-content:space-between;align-items:center;gap:40px;width:100%;padding:19px 20px;font-size:12px;display:flex}.contact-main svg{color:var(--red)}.contact-secondary{border-bottom:1px solid #bcb2a6;align-items:center;gap:12px;margin-top:22px;padding-bottom:9px;font-size:12px;display:flex}.contact-actions small{color:#8b8176;margin-top:30px;font:8px/1.8 DM Mono,monospace}.contact-end{letter-spacing:.1em;color:#746b61;border-top:1px solid #d2c8bc;justify-content:space-between;padding-top:17px;font:8px DM Mono,monospace;display:flex}footer{color:#aaa198;letter-spacing:.08em;background:#171513;justify-content:space-between;align-items:center;padding:28px 6.1%;font:9px DM Mono,monospace;display:flex}footer .wordmark{color:#f0ece4}footer>a:last-child{color:#d6533c}@media (width>=1500px){.hero,.topbar,footer{padding-left:max(6.1%,50vw - 690px);padding-right:max(6.1%,50vw - 690px)}.section-pad{padding-left:max(9%,50vw - 620px);padding-right:max(9%,50vw - 620px)}}@media (width<=760px){.topbar{height:72px;padding:0 5%}.menu-toggle{padding:8px;display:block}.nav{border-bottom:1px solid var(--line);background:#171513;flex-direction:column;align-items:stretch;gap:22px;padding:24px 5% 28px;display:none;position:absolute;top:71px;left:0;right:0}.nav.open{display:flex}.nav-contact{justify-content:space-between}.hero{padding:22px 5% 0}.hero-topline{font-size:8px}.hero-topline span:last-child{text-align:right;max-width:125px}.hero-title{padding:60px 0 28px}.hero h1{font-size:clamp(52px,13vw,88px)}.hero-note{align-items:center;gap:18px;width:auto;margin-top:30px;display:flex;position:static}.hero-note p{max-width:270px;margin:0;font-size:12px}.round-link{flex-shrink:0;margin:0}.hero-image{height:110vw;min-height:340px;max-height:540px}.image-stamp{top:8%;right:5%}.hero-bottom{font-size:7px}.section-pad{padding:70px 6%}.section-kicker{font-size:8px}.intro-grid,.services-layout,.contact-grid{grid-template-columns:1fr;gap:32px;padding:52px 0}.intro h2,.work h2,.services h2,.contact h2{font-size:clamp(47px,11vw,72px)}.intro-copy{max-width:none}.manifesto{flex-direction:column;align-items:flex-start;gap:8px}.manifesto p{line-height:1.8}.work-heading{margin:50px 0 30px;display:block}.work-heading p{max-width:350px;margin-top:22px}.filters{overflow-x:auto}.filter{white-space:nowrap}.project-grid{gap:25px 12px}.project-image,.project:nth-child(2n) .project-image{height:56vw;min-height:190px}.project:nth-child(2n){margin-top:35px}.project-meta{display:block}.project-meta h3{font-size:20px}.project-meta>div>span,.project-type{font-size:7px}.project-type{margin-top:10px;display:block}.service-row h3{font-size:22px}.statement{padding:70px 5%}.statement p{font-size:clamp(34px,8vw,54px)}.contact-grid{padding:52px 0 65px}.contact-actions{padding-top:0}.contact-end{gap:20px;font-size:7px;line-height:1.7}footer{flex-wrap:wrap;gap:12px;padding:24px 5%}footer>span{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.service-toggle{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:16px;width:100%;padding:0;display:flex}.service-toggle h3{margin:0 0 6px}.service-toggle p{color:#655d54;margin:8px 0 2px;font-size:12px;line-height:1.7}.service-toggle p a{text-underline-offset:3px;color:#8e3025;text-decoration:underline;display:inline-block}.service-expanded .service-toggle>svg{transform:rotate(45deg)}.service-toggle:focus-visible,.filter:focus-visible,a:focus-visible,button:focus-visible{outline-offset:4px;outline:3px solid #e87964}.location{color:#171513;background:#f0ece4}.location-heading{grid-template-columns:1fr 1fr;align-items:end;gap:8%;padding:48px 0 30px;display:grid}.location-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(44px,5.5vw,74px);line-height:1}.location-heading h2 em{color:#a53d2e;font-family:Playfair Display,serif}.location-heading p{color:#514b45;max-width:430px;margin:0;font-size:13px;line-height:1.8}.map-frame{border:1px solid #cfc5b9;height:350px;overflow:hidden}.map-frame iframe{border:0;width:100%;height:100%}.map-directions{border-bottom:1px solid #b6ada2;align-items:center;gap:18px;margin-top:18px;padding:10px 0;font-size:12px;display:inline-flex}.quick-actions{z-index:20;flex-direction:column;gap:9px;display:flex;position:fixed;bottom:18px;right:18px}.quick-actions a{color:#fff;background:#a53d2e;border:1px solid #f0ece4;border-radius:50%;place-items:center;width:46px;height:46px;transition:transform .2s,background .2s;display:grid;box-shadow:0 3px 16px #0004}.quick-actions a:hover{background:#7e2c22;transform:translateY(-2px)}.quick-actions a:focus-visible{outline-offset:3px;outline:3px solid #171513}@media (width<=760px){.project-grid{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d6533c #393531;gap:14px;margin-right:-6%;padding:0 6% 16px 0;display:flex;overflow-x:auto}.project-grid .project,.project-grid .project:nth-child(2n){scroll-snap-align:start;flex:0 0 82%;margin-top:0}.project-grid .project-image,.project-grid .project:nth-child(2n) .project-image{height:64vw;max-height:340px}.project-grid .project-meta h3{font-size:22px}.location-heading{grid-template-columns:1fr;gap:20px;padding:38px 0 25px}.map-frame{height:300px}.quick-actions{bottom:12px;right:12px}.quick-actions a{width:42px;height:42px}}
