@import"https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400&display=swap";:root{font-family:Archivo,sans-serif;color:#302c25;background:#f4f1e9;font-synthesis:none;color-scheme:only light;--accent:#a45030;--line:#d6d0c5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3,blockquote{font-family:Newsreader,Georgia,serif;font-weight:400}h2{font-size:clamp(45px,4.8vw,76px);line-height:1.04;letter-spacing:-.04em}p{line-height:1.75}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.wrap{width:88%;max-width:1320px;margin-inline:auto}.section{padding-block:110px}.eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:500;line-height:1.6}.text-link{display:flex;align-items:center;justify-content:space-between;gap:30px;width:fit-content;min-width:220px;font-size:12px;padding:16px 0;border-bottom:1px solid currentColor}.text-link span,.button span,.header-cta span{transition:transform .25s}.text-link:hover span,.button:hover span,.header-cta:hover span{transform:translate(3px,-3px)}.skip{position:fixed;top:-100px;z-index:30;background:#fff;padding:15px}.skip:focus{top:10px}.header{height:104px;background:#f4f1e9;display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:relative;z-index:5;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;width:180px;align-items:flex-start}.brand>span{font-family:Newsreader,Georgia,serif;font-size:45px;line-height:.95;letter-spacing:-.055em}.brand-dot{color:var(--accent)}.brand small{font-size:8px;letter-spacing:.22em;margin-top:8px}.desktop{display:flex;gap:38px;font-size:12px}.desktop a:hover{color:var(--accent)}.header-cta{border-bottom:1px solid #827b6f;padding:12px 0;display:flex;gap:44px;font-size:12px}.burger{display:none}.hero{min-height:660px;height:calc(100svh - 104px);max-height:1050px;position:relative;color:#fff7e8;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:0 6%}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;animation:arrive-image 1.5s ease-out}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#13130ec7,#13130e45 70%),linear-gradient(0deg,rgba(19,19,14,.38),transparent 30%)}.hero-copy{position:relative;padding:60px 0 110px;animation:arrive .9s ease-out both}.hero h1{font-size:clamp(78px,8.6vw,138px);line-height:.96;letter-spacing:-.045em;margin:29px 0 27px}.hero-desc{font-size:14px;color:#f4eee1;line-height:1.8}.button{display:inline-flex;justify-content:space-between;gap:55px;padding:19px 25px;font-size:12px;margin-top:35px;background:#f4f1e9;color:#302c25;transition:background .2s}.button:hover{background:#fff}.hero-foot{position:absolute;bottom:0;left:6%;right:6%;display:flex;justify-content:space-between;padding:25px 0;border-top:1px solid #ffffff40;font-size:10px;letter-spacing:.025em}.hero-foot a{display:flex;gap:18px}.stars{letter-spacing:.15em;color:#bb7852}.hero-foot .stars{color:#edc5a3}.intro{display:grid;grid-template-columns:1fr 2fr;border-bottom:1px solid var(--line)}.intro h2{font-size:clamp(40px,4.4vw,67px)}.intro p:not(.eyebrow){font-size:15px;max-width:515px;margin:30px 0 12px;color:#676154}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px;gap:40px}.section-heading h2{margin-top:22px}.section-heading>p{max-width:310px;font-size:13px;color:#676154}.gallery{display:grid;grid-template-columns:1.3fr 1fr;gap:60px 6%;align-items:start}.project:nth-child(2n){margin-top:100px}.project-image{display:block;position:relative;width:100%;padding:0;border:0;overflow:hidden;background:#dfd9cf}.project-image img{aspect-ratio:1.16;object-fit:cover;transition:transform .65s}.project:nth-child(2n) img{aspect-ratio:.94}.project-image:hover img{transform:scale(1.035)}.enlarge{position:absolute;bottom:17px;right:17px;display:grid;place-items:center;width:38px;height:38px;background:#f4f1e9;color:#302c25;border-radius:50%;font-size:20px}.project figcaption{padding-top:20px}.project figcaption>span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#756b5e}.project h3{font-size:29px;margin-top:10px;letter-spacing:-.02em}.craft{background:#eae5db}.craft-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;align-items:center}.craft-intro h2{margin:24px 0 35px;font-size:55px}.craft-intro img{aspect-ratio:1.5;object-fit:cover}.craft-intro>p:last-child{font-size:10px;margin-top:14px;color:#676154}.service-list details{border-top:1px solid #c5beb1;padding:0 0 12px}.service-list details:last-child{border-bottom:1px solid #c5beb1}.service-list summary{list-style:none;display:flex;align-items:center;gap:20px;padding:25px 0 15px;cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.service-list summary>span{font-size:10px;color:#7b7163}.service-list summary h3{font-size:27px;flex:1;letter-spacing:-.02em}.service-list summary b{font-size:19px;font-weight:400;transition:transform .2s}.service-list details[open] summary b{transform:rotate(45deg)}.service-list details>div{padding:5px 30px 17px}.service-list p{font-size:13px;color:#60594e}.service-list small{display:block;font-size:10px;line-height:1.9;margin-top:20px;color:#74695c}.about{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:center}.about-photo img{aspect-ratio:.92;object-fit:cover}.about-photo>span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em;margin-top:18px}.about h2{margin:25px 0 30px}.about-copy>p:not(.eyebrow){font-size:14px;color:#676154;margin-bottom:20px}.about .text-link{margin-top:30px}.reviews{background:#302f27;color:#f4f1e9;text-align:center}.reviews .stars{display:block;margin-top:40px;color:#cc9c74}.reviews blockquote{font-size:clamp(36px,4.3vw,65px);line-height:1.17;letter-spacing:-.025em;max-width:940px;margin:25px auto 30px}.quote-credit{font-size:11px}.quote-credit span{color:#b9b6a9;margin-left:8px}.reviews .text-link{margin:30px auto 0;font-size:10px;border-color:#918e7e}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:center}.contact h2{font-size:clamp(65px,6.8vw,106px);margin-top:25px;line-height:.99}.contact h2 em{color:var(--accent);font-weight:400}.contact-copy>p{max-width:370px;font-size:14px;color:#676154}.phone{display:flex;justify-content:space-between;font-size:27px;letter-spacing:-.04em;border-bottom:1px solid #9c9487;padding:30px 0 20px;gap:20px}.contact-copy .contact-tip{font-size:11px;margin-top:18px}.area{margin-top:45px;padding-top:24px;border-top:1px solid var(--line)}.area p{font-size:12px;margin-top:13px}footer{border-top:1px solid var(--line);padding-block:40px;display:flex;align-items:center;justify-content:space-between;gap:30px}footer>p{font-family:Newsreader,serif;font-size:21px;line-height:1.2}footer>small{font-size:9px;line-height:1.9;color:#756b5e}footer>a:last-child{font-size:25px;padding:10px}dialog{border:0;padding:60px 20px 20px;background:#f4f1e9;max-width:1100px;width:92vw;max-height:94svh}dialog::backdrop{background:#171710db}dialog img{width:100%;max-height:72svh;object-fit:contain}dialog p{font-size:12px;margin-top:15px;text-align:center}.close-photo{position:absolute;top:18px;right:20px;border:0;background:none;font-size:12px}body.photo-open{overflow:hidden}.reveal{transition:opacity .7s,translate .7s}.reveal.pending{opacity:0;translate:0 22px}@keyframes arrive{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes arrive-image{0%{transform:scale(1.025)}to{transform:scale(1)}}@media(min-width:1800px){.header,.hero{padding-inline:max(6%,calc((100vw - 1500px)/2))}}@media(max-width:900px){.desktop{gap:22px}.section{padding-block:80px}.craft-grid{gap:6%}.craft-intro h2{font-size:43px}.service-list summary h3{font-size:24px}.about,.contact{gap:7%}.phone{font-size:23px}.intro{grid-template-columns:1fr 2.4fr}.hero h1{font-size:100px}}@media(max-width:600px){html{scroll-padding-top:20px}.header{height:86px}.brand{width:auto}.brand>span{font-size:36px}.brand small{font-size:6px}.desktop,.header-cta{display:none}.burger{display:flex;gap:18px;border:0;background:none;font-size:11px;padding:10px 0}.burger span{font-size:15px}#mobileNav:not([hidden]){display:flex;position:absolute;top:86px;left:0;right:0;background:#f4f1e9;padding:20px 6% 30px;flex-direction:column;gap:23px;border-bottom:1px solid var(--line)}#mobileNav a{font-size:17px}.hero{min-height:650px;height:calc(100svh - 86px);max-height:850px}.hero-image{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#151711aa,#15171144),linear-gradient(0deg,#15171180,transparent 60%)}.hero-copy{padding:40px 0 90px}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero h1{font-size:clamp(66px,15vw,90px);margin:28px 0}.hero-desc{font-size:12px;max-width:290px}.button{font-size:11px;padding:17px 20px;margin-top:28px}.hero-foot{padding:20px 0;font-size:8px}.hero-foot>a{gap:8px}.hero-foot>a>span:last-child{display:none}.hero-foot>span{max-width:100px;line-height:1.6}.section{padding-block:65px}.intro{display:block}.intro>.eyebrow{margin-bottom:26px}.intro h2{font-size:42px}.intro p:not(.eyebrow){font-size:13px;margin-top:23px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:48px}.section-heading>p{margin-top:23px;max-width:320px;font-size:12px}.gallery{gap:35px;grid-template-columns:1fr}.project:nth-child(2n){margin-top:0}.project-image img,.project:nth-child(2n) img{aspect-ratio:1.12}.project figcaption{padding-top:14px}.project h3{font-size:26px}.craft-grid{display:block}.craft-intro h2{font-size:47px}.craft-intro img{aspect-ratio:1.5}.service-list{margin-top:35px}.service-list summary{gap:14px}.service-list summary h3{font-size:25px}.service-list details>div{padding-left:27px}.about{display:flex;flex-direction:column;gap:38px}.about-photo img{aspect-ratio:1.12}.about-copy h2{font-size:52px}.about-copy>p:not(.eyebrow){font-size:13px}.reviews blockquote{font-size:38px}.quote-credit span{display:block;margin:8px 0 0}.contact{display:block}.contact h2{font-size:69px}.contact-copy{margin-top:35px}.contact-copy>p{font-size:13px}.phone{font-size:26px}.area{margin-top:30px}footer{display:grid;grid-template-columns:1fr auto;padding-block:30px;gap:25px}footer>p{font-size:19px}footer>small{font-size:8px}footer>a:last-child{justify-self:end}.text-link{font-size:11px}.enlarge{height:32px;width:32px;font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;translate:none}}@media(max-width:600px){.contact h2{font-size:clamp(53px,15.3vw,67px)}}html{scroll-padding-top:110px}.header{position:sticky;top:0;height:88px}.brand>span{font-size:39px}.desktop{gap:27px}.header-cta{background:var(--accent);color:#fff;border:0;padding:15px 20px;gap:24px}.section{padding-block:74px}.hero{height:auto;min-height:660px;max-height:none;padding:45px 6%}.hero-content{position:relative;display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center;width:100%;max-width:1400px;margin:auto}.hero-copy{padding:10px 0}.hero h1{font-size:clamp(44px,4.5vw,70px);letter-spacing:-.035em;line-height:1.07;margin:22px 0}.hero-desc{max-width:460px;font-size:15px}.hero-shade{background:linear-gradient(90deg,#191a13d9,#191a1380)}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:27px}.hero-actions .button{margin:0;padding:17px 20px}.hero-project-link{font-size:12px;border-bottom:1px solid #ffffff80;padding:12px 0}.hero-rating{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:11px;margin-top:28px}.hero-rating .stars{color:#efc7a0}.hero-rating>span:last-child{margin-left:8px;font-size:10px}.estimate-form{background:#fbf9f4;color:#302c25;padding:29px 30px;border-radius:5px;scroll-margin-top:110px;box-shadow:0 10px 35px #0002}.estimate-form .eyebrow{color:#825234;font-size:9px}.estimate-form h2{font-size:34px;line-height:1.1;margin:10px 0}.form-intro{font-size:12px;color:#676154;margin-bottom:20px}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px 13px}.form-fields label{font-size:11px;font-weight:500;display:flex;flex-direction:column;gap:7px}.form-fields label.full{grid-column:1/-1;display:block}.form-fields label.full span{font-weight:400;color:#766e62}.form-fields input,.form-fields select,.form-fields textarea{width:100%;min-width:0;font:400 13px Archivo,sans-serif;color:#302c25;background:#fff;border:1px solid #bdb7ac;border-radius:3px;padding:12px 10px;min-height:43px}.form-fields textarea{margin-top:7px;resize:vertical}.form-fields input:focus,.form-fields select:focus,.form-fields textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.estimate-form .submit{border:0;background:var(--accent);color:#fff;width:100%;margin-top:16px;border-radius:3px;justify-content:space-between;padding:15px 18px}.submit:disabled{opacity:.6;cursor:wait}.form-privacy{font-size:9px;text-align:center;color:#756b5e;margin-top:9px}.form-direct{font-size:11px;text-align:center;margin-top:12px}.form-direct a{text-decoration:underline;text-underline-offset:3px}.form-note:not(:empty){padding:12px;margin-top:12px;background:#efe7d9;font-size:12px;line-height:1.5}.service-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);padding-block:28px;border-bottom:1px solid var(--line);gap:24px}.service-shortcuts a{display:flex;flex-direction:column;gap:9px}.service-shortcuts strong{font-size:16px;font-weight:500}.service-shortcuts span{font-size:10px;line-height:1.6;color:#696153}.service-shortcuts a:hover strong{color:var(--accent)}.section-heading{margin-bottom:30px}.section-heading h2{font-size:48px;max-width:600px}.gallery{grid-template-columns:repeat(3,1fr);gap:30px}.project:nth-child(2n){margin-top:0}.project-image img,.project:nth-child(2n) img{aspect-ratio:1.22}.project h3{font-size:24px;line-height:1.15}.project figcaption{padding-top:13px}.craft-intro h2{font-size:47px}.about h2{font-size:55px}.about-photo img{aspect-ratio:1.15}.reviews blockquote{font-size:43px;max-width:850px}.reviews .stars{margin-top:24px}.contact h2{font-size:61px}.estimate-link{margin:0 0 22px;background:var(--accent);color:#fff}.estimate-link:hover{background:#874027}.contact .phone{font-size:25px}.contact .area{margin-top:25px}footer>p{font-family:Archivo,sans-serif;font-size:12px;line-height:1.7}@media(max-width:1000px){.hero-content{gap:4%;grid-template-columns:1fr 1fr}.hero h1{font-size:48px}.estimate-form{padding:24px}.desktop{gap:18px;font-size:11px}.hero-actions{gap:12px}.gallery{gap:22px}.project h3{font-size:22px}}@media(max-width:700px){.header{height:76px}.desktop,.header-cta{display:none}.burger{display:flex;gap:18px;border:0;background:none;font-size:12px;padding:12px 0}#mobileNav:not([hidden]){display:flex;position:absolute;top:76px;left:0;right:0;background:#f4f1e9;padding:20px 6% 30px;flex-direction:column;gap:23px;border-bottom:1px solid var(--line)}html{scroll-padding-top:92px}.hero{padding:34px 6%;min-height:0}.hero-content{grid-template-columns:1fr;gap:30px}.hero-copy{padding:0}.hero h1{font-size:clamp(38px,8.4vw,55px);margin:17px 0}.hero-desc{font-size:13px;max-width:460px}.hero-actions{margin-top:20px;gap:20px}.hero-actions .button{font-size:11px;padding:15px}.hero-rating{margin-top:20px}.hero .eyebrow{font-size:8px}.hero-image{object-position:center top}.hero-shade{background:#181b13b8}.estimate-form{padding:23px 20px;scroll-margin-top:95px}.estimate-form h2{font-size:32px}.form-fields input,.form-fields textarea,.form-fields select{font-size:16px}.form-fields{gap:14px 10px}.form-fields label{font-size:11px}.section{padding-block:48px}.service-shortcuts{grid-template-columns:1fr 1fr;padding-block:24px;gap:23px}.section-heading h2{font-size:38px;margin-top:13px}.section-heading>p{font-size:12px;margin-top:16px}.gallery{grid-template-columns:1fr 1fr;gap:25px 15px}.project h3{font-size:21px}.project figcaption>span{font-size:8px;letter-spacing:.07em}.project-image img,.project:nth-child(2n) img{aspect-ratio:1}.enlarge{height:28px;width:28px;right:8px;bottom:8px}.craft-intro h2{font-size:40px}.about h2{font-size:43px}.reviews blockquote{font-size:32px}.contact h2{font-size:43px}.contact-copy{margin-top:23px}.contact .phone{font-size:25px}.brand>span{font-size:34px}}@media(max-width:700px){.header-cta{display:flex;font-size:10px;gap:12px;padding:12px}.header{gap:16px}.burger{gap:9px}}
