@font-face{font-family:Barlow;src:url('assets/barlow-700.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:DM;src:url('assets/dm-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:DM;src:url('assets/dm-500.woff2') format('woff2');font-style:normal;font-weight:500 700;font-display:swap}
:root{--paper:#f5efe5;--ink:#30251f;--clay:#a14e29;--clay-dark:#773a22;--cream:#fff8ee;--muted:#73655b;--line:#d7c8b9;--display:Barlow,'Arial Narrow',sans-serif;--body:DM,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--body);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--display);font-weight:700;line-height:.99}p+p{margin-top:18px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b46a43;outline-offset:5px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--clay);outline-offset:3px}.section-shell{width:min(1280px,calc(100% - 112px));margin-inline:auto}.eyebrow{font-size:12px;line-height:1.4;font-weight:500;letter-spacing:1.6px}.section-kicker{color:var(--clay);margin-bottom:22px}.small-note{font-size:13px;color:var(--muted)}.skip-link{position:absolute;z-index:100;left:12px;top:-100px;padding:14px 20px;background:white}.skip-link:focus{top:12px}.concept-bar{min-height:32px;padding:7px 4%;display:flex;justify-content:space-between;gap:12px;background:var(--ink);color:#e9dace;font-size:12px;line-height:1.5}.concept-bar a{text-decoration:underline;text-underline-offset:3px}.site-header{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 4%}.brand{display:inline-flex;flex-direction:column;line-height:1;flex-shrink:0}.brand-main{font:700 36px/.95 var(--display);letter-spacing:1px}.brand-sub{font:500 11px/1.3 var(--body);letter-spacing:2.2px;margin-top:9px}.site-header nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:500}.site-header nav>a:not(.button){padding:12px 0}.site-header nav>a:not(.button):hover{text-decoration:underline;text-underline-offset:6px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 23px;font-size:14px;line-height:1.4;font-weight:500;border:1px solid transparent;transition:background .18s}.button span{font-size:22px;line-height:1}.button-dark{background:var(--ink);color:var(--cream)}.button-dark:hover{background:#514035}.button-cedar{background:var(--clay);color:var(--cream)}.button-cedar:hover{background:var(--clay-dark)}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;min-height:730px;background:#38281f;color:var(--cream);padding:72px 6% 100px;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-image{object-fit:cover;object-position:65% 55%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(37,24,16,.88) 0%,rgba(37,24,16,.67) 34%,rgba(37,24,16,.1) 75%),linear-gradient(0deg,rgba(37,24,16,.65),transparent 40%)}.hero-content{position:relative;max-width:750px}.hero .eyebrow{margin-bottom:28px}.hero h1{font-size:clamp(90px,9.3vw,146px);line-height:.88;letter-spacing:-.7px}.hero h1 span{color:#e4b580}.hero-intro{font-size:17px;line-height:1.65;margin:30px 0 28px}.hero-project{position:absolute;right:5%;bottom:126px;width:245px;background:var(--paper);color:var(--ink);padding:25px 26px 18px;transform:rotate(-2deg);transition:transform .2s}.hero-project:hover{transform:rotate(0)}.hero-project>.eyebrow{display:block;margin-bottom:14px;color:var(--clay)}.hero-project>span:nth-child(2){font:700 29px/1.04 var(--display)}.hero-project-bottom{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:15px;margin-top:19px;font-size:12px}.hero-foot{position:absolute;bottom:25px;left:6%;right:5%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee6d247;padding-top:20px;font-size:12px;letter-spacing:1.2px}.hero-foot a{font-size:14px;letter-spacing:0}.hero-foot a span{margin-left:16px}.credentials{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);padding:28px 5%;gap:20px;align-items:center;font-size:14px;font-weight:500}.credentials>span+span{border-left:1px solid var(--line);padding-left:40px}.credentials strong{font:700 31px/1 var(--display);margin-right:8px}
.projects{padding-block:115px 120px}.work-heading{display:grid;grid-template-columns:1.45fr 1fr;gap:70px;align-items:end;margin-bottom:55px}.work-heading h2{font-size:clamp(44px,5vw,74px);line-height:1}.text-clay{color:var(--clay)}.work-intro{max-width:350px;justify-self:end;color:var(--muted)}.work-intro .small-note{display:block;margin-top:28px;padding-top:15px;border-top:1px solid var(--line)}.project-grid{display:grid;grid-template-columns:1.2fr 1fr;column-gap:64px;row-gap:72px;align-items:start}.project-photo{border:0;padding:0;display:block;width:100%;position:relative;background:#dbc5ae;overflow:hidden;text-align:left}.project-photo img{width:100%;aspect-ratio:1.2;object-fit:cover;transition:transform .5s}.project-photo:hover img{transform:scale(1.025)}.project-tag{position:absolute;left:17px;top:17px;background:var(--paper);padding:7px 12px;font-size:11px;letter-spacing:1px;font-weight:500}.image-action{position:absolute;bottom:0;right:0;width:54px;height:54px;background:var(--paper);display:grid;place-items:center;font-size:26px}.project-caption{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-top:22px}.project-caption h3{font-size:32px}.project-caption>span{font-size:12px;color:var(--muted);white-space:nowrap}.project>p{font-size:14px;color:var(--muted);margin-top:8px}.project-kitchen{margin-top:170px}.project-kitchen .project-photo img{aspect-ratio:.94}.project-entry{width:88%;margin-top:-65px}.project-entry .project-photo img{aspect-ratio:.86}.project-lake{margin-left:-5%;width:105%;margin-top:15px}.project-lake .project-photo img{aspect-ratio:1.3}.work-aside{padding:0 0 48px 40px;border-left:2px solid var(--clay);margin:0 0 30px 0}.work-aside .eyebrow{color:var(--clay)}.work-aside p{font:700 42px/1.04 var(--display);margin-top:20px}
.services{background:var(--clay);color:var(--cream);padding:95px 0}.services-grid{display:grid;grid-template-columns:.95fr 1.25fr;gap:100px}.services-lead .eyebrow{color:#ecd2b6;margin-bottom:27px}.services h2{font-size:clamp(48px,5.2vw,76px);line-height:.96}.services-lead>p:not(.eyebrow){margin-top:30px;color:#f0dfcf;font-size:16px}.underlined-link{display:inline-flex;gap:22px;border-bottom:1px solid #e4c6ad;padding:16px 0 7px;font-size:14px;margin-top:16px}.service-list{border-top:1px solid #d6aa8d;align-self:center}.service-list details{border-bottom:1px solid #d6aa8d}.service-list summary{display:flex;gap:22px;align-items:center;list-style:none;padding:23px 0;font:700 30px/1.1 var(--display);cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.service-number{font:400 12px/1.4 var(--body);color:#f1d1b8;min-width:20px}.service-toggle{margin-left:auto;font:400 27px/1 var(--body);transition:transform .18s}.service-list details[open] .service-toggle{transform:rotate(45deg)}.service-list details p{padding:0 26px 25px 42px;color:#f7e7d9;max-width:500px;font-size:16px}
.about{padding-block:125px;display:grid;grid-template-columns:.88fr 1.12fr;gap:110px;align-items:center}.owner-photo{position:relative;padding-bottom:36px}.owner-photo img{width:100%;aspect-ratio:.78;object-fit:cover;object-position:50% 35%}.owner-photo figcaption{background:var(--ink);color:var(--cream);padding:22px 28px;position:absolute;left:30px;right:-25px;bottom:0;display:flex;flex-direction:column;gap:7px}.owner-photo figcaption strong{font:700 27px/1 var(--display);letter-spacing:.5px}.owner-photo figcaption span{font-size:12px;color:#e2cfc0}.about h2{font-size:clamp(50px,5.4vw,77px);margin-bottom:30px}.about .lead{font-size:20px;line-height:1.5;color:var(--ink)}.about-copy>p{color:var(--muted)}.about-copy>.section-kicker{color:var(--clay)}.owner-signoff{display:flex;flex-direction:column;margin-top:30px;border-top:1px solid var(--line);padding-top:23px;gap:8px}.owner-signoff>span:first-child{font:700 30px/1 var(--display)}.owner-signoff>span:last-child{font-size:11px;letter-spacing:1.2px;color:var(--muted)}
.testimonials{border-top:1px solid var(--line);padding-block:55px 105px}.reviews-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:42px}.reviews-heading h2{font-size:42px}.reviews-heading>p{font-size:13px;line-height:1.6;color:var(--muted)}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.quotes figure{padding-top:25px;border-top:2px solid var(--clay)}.quotes blockquote{font-size:17px;line-height:1.7;margin:0 0 27px}.quotes figcaption{display:flex;flex-direction:column;gap:5px}.quotes figcaption strong{font-size:14px}.quotes figcaption span{font-size:12px;color:var(--muted)}
.estimate{background:#eee0cf;padding-block:95px}.estimate-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.estimate .eyebrow{color:var(--clay);margin-bottom:22px}.estimate h2{font-size:clamp(68px,7vw,104px);line-height:.91;margin-bottom:27px}.estimate-copy>p:not(.eyebrow){color:#655044;font-size:17px}.service-area{margin-top:40px;border-top:1px solid #c8ac92;padding-top:20px}.service-area .eyebrow{display:block;margin-bottom:12px}.service-area p{font-size:14px;color:#655044}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:14px;font-weight:500;margin-bottom:23px}.optional{font-weight:400;color:#786453;font-size:12px}input,select,textarea{display:block;width:100%;border:1px solid #a98c75;background:transparent;border-radius:0;color:var(--ink);padding:13px 14px;margin-top:8px;min-height:51px;font-size:16px;line-height:1.5}textarea{resize:vertical;min-height:150px}input:hover,select:hover,textarea:hover{border-color:var(--ink)}textarea::placeholder{color:#776455}form .button{width:100%;min-height:61px}form{align-self:center}.demo-note{font-size:12px;line-height:1.7;color:#725c4b;margin-top:15px;max-width:440px}.form-status{font-size:15px;line-height:1.6;margin-top:18px}.form-status:not(:empty){border-left:3px solid var(--clay);padding-left:16px}
.site-footer{background:var(--ink);color:var(--cream)}.footer-top{padding-block:48px;display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-top>p{font:700 35px/1 var(--display);color:#d6aa80}.back-top{font-size:14px}.back-top span{margin-left:17px}.footer-bottom{padding-block:23px 28px;border-top:1px solid #685043;display:flex;align-items:start;justify-content:space-between;gap:40px;font-size:12px;color:#decec0}.footer-bottom p{max-width:590px}.footer-bottom a{white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
dialog{border:0;padding:0;max-width:940px;width:calc(100% - 40px);max-height:90dvh;overflow:auto;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#261b16e6;backdrop-filter:blur(3px)}.dialog-close{position:absolute;z-index:2;top:16px;right:16px;display:flex;gap:16px;align-items:center;min-height:44px;border:0;background:var(--paper);padding:8px 15px;color:var(--ink);font-size:14px}.dialog-close span{font-size:25px}.dialog-copy{padding:35px 45px}.dialog-copy h2{font-size:48px;margin-block:15px}.dialog-copy>p:not(.eyebrow):not(.small-note){max-width:680px}.dialog-copy .small-note{margin-top:18px}#dialog-image{width:100%;max-height:52vh;object-fit:cover}#dialog-details{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-block:1px solid var(--line);padding-block:18px;margin-block:25px}#dialog-details div{display:flex;flex-direction:column}#dialog-details dt{font-size:12px;color:var(--muted)}#dialog-details dd{margin:4px 0 0;font-size:15px}
@media(min-width:1600px){.hero{min-height:810px;padding-left:max(6%,calc((100vw - 1280px)/2))}.hero-foot{left:max(6%,calc((100vw - 1280px)/2))}.hero-project{right:max(5%,calc((100vw - 1280px)/2))}}
@media(max-width:1100px){.section-shell{width:calc(100% - 72px)}.site-header nav{gap:22px}.header-estimate{padding-inline:15px;gap:13px;font-size:13px}.brand-main{font-size:32px}.brand-sub{font-size:10px}.hero{min-height:660px}.hero h1{font-size:112px}.hero-project{width:210px;bottom:120px;right:4%}.hero-project>span:nth-child(2){font-size:25px}.credentials>span+span{padding-left:20px}.work-heading{gap:40px}.project-grid{column-gap:35px}.project-caption{display:block}.project-caption>span{display:block;margin-top:9px}.services-grid{gap:55px}.about{gap:65px}.estimate-grid{gap:55px}.footer-bottom{flex-direction:column;gap:12px}}
@media(max-width:760px){html{scroll-padding-top:12px}.section-shell{width:calc(100% - 40px)}.concept-bar{padding:7px 20px;font-size:11px;gap:10px}.concept-bar>a{max-width:115px;text-align:right;line-height:1.3}.concept-bar>span{max-width:190px;align-self:center}.site-header{padding:21px 20px;min-height:91px;position:relative;flex-wrap:wrap}.brand-main{font-size:31px}.brand-sub{font-size:9px;letter-spacing:1.8px;margin-top:7px}.menu-toggle{display:flex;align-items:center;gap:12px;padding:9px 0 9px 15px;background:none;border:0;color:var(--ink);min-height:44px;font-size:14px}.site-header nav{display:none;width:100%;align-items:stretch;flex-direction:column;gap:4px;padding-top:14px;border-top:1px solid var(--line);margin-top:6px}.site-header nav.open{display:flex}.site-header nav>a:not(.button){padding:13px 0}.site-header .header-estimate{margin-top:8px;padding:16px;font-size:14px}.hero{min-height:690px;padding:47px 22px 108px}.hero h1{font-size:clamp(76px,18vw,126px);line-height:.9;letter-spacing:-.4px}.hero-content{max-width:510px}.hero .eyebrow{font-size:11px;letter-spacing:1.3px;margin-bottom:25px;max-width:260px}.hero-intro{font-size:16px;margin-top:25px;max-width:310px}.hero-image{object-position:62% 50%}.hero-shade{background:linear-gradient(90deg,#291b13de,#291b1359 85%),linear-gradient(0deg,#25170e99,transparent 50%)}.hero-project{position:relative;inset:auto;transform:none;margin-top:33px;background:none;color:var(--cream);padding:0;width:auto;max-width:320px}.hero-project>.eyebrow,.hero-project>span:nth-child(2){display:none}.hero-project-bottom{margin:0;padding-top:12px;font-size:13px;border-color:#debc9554}.hero-foot{left:22px;right:22px;bottom:20px;font-size:10px;letter-spacing:.7px;gap:10px;padding-top:15px}.hero-foot a{font-size:12px}.hero-foot a span{margin-left:7px}.credentials{grid-template-columns:1fr 1fr;padding:25px 20px;gap:20px;font-size:12px;line-height:1.5}.credentials>span+span{padding-left:0;border:0}.credentials>span:nth-child(even){border-left:1px solid var(--line);padding-left:20px}.credentials strong{font-size:25px;margin-right:5px}.projects{padding-block:65px}.work-heading{display:block;margin-bottom:35px}.work-heading h2{font-size:48px}.work-intro{max-width:430px;margin-top:25px;font-size:16px}.work-intro p+p{margin-top:12px}.work-intro .small-note{margin-top:20px;font-size:12px}.section-kicker{font-size:11px;margin-bottom:17px}.project-grid{display:block}.project{width:100%;margin:0 0 40px}.project-kitchen{width:91%;margin-left:auto}.project-entry{width:91%;margin:0 0 40px}.project-lake{margin:0}.project-photo img,.project-kitchen .project-photo img,.project-entry .project-photo img,.project-lake .project-photo img{aspect-ratio:1.12}.project-caption{margin-top:17px;display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 15px}.project-caption h3{font-size:30px}.project-caption>span{font-size:11px;margin:0}.project>p{font-size:13px;margin-top:7px}.project-tag{font-size:10px;left:12px;top:12px;padding:6px 9px}.image-action{width:45px;height:45px;font-size:23px}.work-aside{padding:5px 0 5px 23px;margin:55px 0 30px}.work-aside p{font-size:36px;margin-top:15px}.work-aside .eyebrow{font-size:11px}.services{padding-block:60px}.services-grid{display:block}.services h2{font-size:57px;max-width:380px}.services-lead>p:not(.eyebrow){margin-top:22px}.services-lead .eyebrow{font-size:11px}.service-list{margin-top:40px}.service-list summary{font-size:26px;gap:15px;padding:21px 0}.service-number{font-size:11px;min-width:16px}.service-list details p{padding-left:31px;padding-right:16px;font-size:15px}.about{padding-block:65px;display:flex;flex-direction:column;gap:42px}.owner-photo{width:calc(100% - 18px);margin-right:auto;padding-bottom:28px}.owner-photo img{aspect-ratio:1;object-position:50% 30%}.owner-photo figcaption{left:20px;right:-18px;padding:18px 22px}.owner-photo figcaption span{font-size:11px}.about h2{font-size:58px;margin-bottom:24px}.about .lead{font-size:19px}.about-copy>p{font-size:16px}.owner-signoff>span:last-child{font-size:10px}.testimonials{padding-block:40px 60px}.reviews-heading{display:block;margin-bottom:30px}.reviews-heading h2{font-size:38px}.reviews-heading>p{margin-top:18px}.quotes{grid-template-columns:1fr;gap:28px}.quotes figure{padding-top:20px}.quotes blockquote{font-size:17px;margin-bottom:18px}.estimate{padding-block:60px}.estimate-grid{display:block}.estimate h2{font-size:80px}.estimate-copy>p:not(.eyebrow){font-size:16px}.service-area{margin-top:28px}.estimate form{margin-top:38px}.form-row{gap:16px}label{font-size:13px;margin-bottom:20px}input,select,textarea{padding:12px 10px}.optional{font-size:11px}.footer-top{padding-block:36px;flex-wrap:wrap;gap:25px}.footer-top>p{font-size:29px}.back-top{font-size:13px}.footer-bottom{font-size:11px;padding-block:20px 28px}.footer-bottom a{white-space:normal}.dialog-copy{padding:27px 22px}.dialog-copy h2{font-size:39px}#dialog-details{grid-template-columns:1fr;gap:12px}.dialog-copy .button{font-size:13px;gap:20px}.dialog-close{top:10px;right:10px}dialog{width:calc(100% - 24px)}}
@media(max-width:380px){.form-row{grid-template-columns:1fr}.hero h1{font-size:76px}.hero .button{gap:18px;padding-inline:18px}.credentials{font-size:11px}.work-heading h2{font-size:42px}.project-caption{display:block}.project-caption>span{margin-top:7px}.brand-main{font-size:28px}.brand-sub{font-size:8px}.footer-top>p{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Material hierarchy: warm paper, walnut anchors, restrained leather accents. */
.concept-bar{background:#30251f}.site-header{background:#fff8ee;border-bottom:1px solid #ddcbbb}
.button-dark{background:#493025}.button-dark:hover{background:#704732}
.hero-shade{background:linear-gradient(90deg,rgba(37,24,16,.88),rgba(37,24,16,.56) 37%,rgba(37,24,16,.04) 78%),linear-gradient(0deg,rgba(37,24,16,.62),transparent 42%)}
.credentials{background:#e7d4bd;border-bottom-color:#cdb090;color:#493025}
.hero-project{background:#f6e9d7;border-top:3px solid #ae693c}.hero-project-bottom{border-color:#cfb493}
.services{background:#493025}.services-lead .eyebrow{color:#e7b884}.service-list{border-color:#92705a}.service-list details{border-color:#92705a}.service-number{color:#e7b884}.service-list details p,.services-lead>p:not(.eyebrow){color:#f1dfce}
.underlined-link{border-color:#ba865f}.owner-photo figcaption{background:#3a2921;border-top:3px solid #ac673a}
.estimate{background:#eee0cf}.estimate input,.estimate select,.estimate textarea{background:#fff9f0;border-color:#ad8e75}.estimate .button{background:#924321}.estimate .button:hover{background:#71321b}
.project-tag{background:#fff7eb;color:#513827}.image-action{background:#4a3024;color:#fff8ee}.work-aside{border-color:#b37849}
.site-footer{background:#281f1b}.quotes figure{border-top-color:#b37849}.text-clay,.section-kicker{color:#944622}
@media(max-width:760px){.hero-project{background:transparent;border-top:0}.hero-shade{background:linear-gradient(90deg,#291b13de,#291b1375 85%),linear-gradient(0deg,#25170e99,transparent 50%)}}
.estimate .eyebrow{color:var(--clay-dark)}
