@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-400.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/fonts/manrope-800.ttf') format('truetype');font-style:normal;font-weight:800;font-display:swap}
:root{--paper:#faf7f0;--ink:#253c31;--line:#d9d4c8;--accent:#a65f43;--sand:#eee7db}body{font-family:Manrope,system-ui,sans-serif;font-size:16px;line-height:1.75;background:var(--paper);color:var(--ink)}h1,h2,h3{font-family:Manrope,system-ui,sans-serif;font-weight:600;line-height:1.12;letter-spacing:-.055em}h1{font-size:clamp(42px,5.2vw,78px)}h2{font-size:clamp(34px,4.2vw,60px)}h3{letter-spacing:-.035em}button,input,select,textarea,.button{font-family:inherit}main section{max-width:1400px;padding:92px 6%}.eyebrow{font-weight:800;font-size:10px;letter-spacing:.19em;margin-bottom:22px}.eyebrow:before{content:'';display:inline-block;width:25px;height:2px;background:var(--accent);vertical-align:middle;margin-right:12px}.intro{font-size:18px;line-height:1.75;color:#566253}.button{font-size:13px;font-weight:600;padding:16px 22px;min-height:50px;gap:15px;border-radius:0;transition:background .2s,border-color .2s}.button:hover{background:#3b5545;border-color:#3b5545}.button.outline:hover{background:#e8e1d3;color:var(--ink)}.button.light:hover{background:#e8e1d3;color:var(--ink)}
header.site-header{background:var(--paper);border-bottom:1px solid var(--line)}header.site-header nav{padding:13px 36px;gap:30px;max-width:1600px;margin:auto}header.site-header .brand-logo{width:190px;max-width:none}header.site-header .links{gap:25px;align-items:center}header.site-header .links>a,header.site-header summary{font-size:12px;font-weight:600;white-space:nowrap}header.site-header .links>.button{padding:14px 19px;color:white;font-size:12px}.nav-services{position:relative}.nav-services summary{cursor:pointer;list-style:none;padding:12px 0}.nav-services summary::-webkit-details-marker{display:none}.nav-services summary:after{content:'⌄';margin-left:8px}.nav-services[open] summary{color:var(--accent)}.nav-services-panel{position:absolute;left:-20px;top:100%;width:315px;padding:15px 20px;background:var(--paper);border:1px solid var(--line);box-shadow:0 15px 35px #1b2e2312}.nav-services-panel a{display:block;padding:9px 0;font-size:13px;white-space:normal}.nav-services-panel a:hover{color:var(--accent)}.nav-services summary:focus-visible{outline:3px solid #ba8337;outline-offset:5px}
.hero.visual-hero{display:block;min-height:0;max-width:1400px;margin:auto;padding:0 36px 48px}.hero .visual-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:0 70px;padding:55px 3% 40px;align-items:center}.hero .visual-copy>.eyebrow{grid-column:1/-1}.hero .visual-copy h1{font-size:clamp(40px,4.3vw,66px);letter-spacing:-.055em;margin:0}.hero .visual-copy h1 em{display:block;color:#77856e}.hero .visual-copy h1 br{display:none}.hero-message .intro{margin:0;max-width:500px;font-size:16px}.hero-message .actions{margin-top:23px;gap:10px}.hero-message .button{font-size:12px;padding:14px 19px}.hero .hero-image.visual-stage{display:grid;grid-template-columns:1fr auto;min-height:0;aspect-ratio:auto;height:auto;padding:0;background:#eee9dd}.hero .visual-stage:before{content:'';display:block;aspect-ratio:16/9;grid-column:1/-1}.hero .visual-stage .hero-slide{position:absolute;inset:0 0 auto;width:100%;height:calc(100% - 64px);object-fit:contain;background:#eee9dd}.hero .visual-stage .photo-label{position:static;margin:18px 24px;padding:0;max-width:none;font-size:11px;background:transparent;line-height:1.5;align-self:center}.hero .visual-stage .slide-controls{position:static;margin:10px 16px;gap:8px;align-self:center}.slide-controls button{background:transparent;border:1px solid #c8c4b8;width:42px;height:42px}.strip{background:var(--ink);font-size:11px;letter-spacing:.05em;gap:38px;padding:18px 6%}
.construction-choices{gap:28px;margin-top:40px}.construction-choices>a{background:var(--sand);padding:0 25px 27px;border:0;transition:background .2s}.construction-choices>a:hover{background:#e6ddcf}.construction-choices img{width:calc(100% + 50px);max-width:none;margin-left:-25px;margin-bottom:26px;background:#e9e4d9;aspect-ratio:4/3;object-fit:contain}.construction-choices .num{color:var(--accent);font-size:10px;letter-spacing:.1em}.construction-choices h3{font-size:clamp(25px,2.5vw,36px);line-height:1.16;margin-top:10px}.construction-choices p{font-size:14px;line-height:1.7}.choice-link{font-size:12px;font-weight:600;text-decoration:none}.choice-link:after{content:'';display:block;width:35px;height:1px;margin-top:12px;background:var(--accent)}.service-links{gap:18px 28px;padding-top:30px}.service-links a{font-size:12px}.section-head{margin-bottom:40px}.section-head h2{max-width:820px}.section-head p{font-size:14px;line-height:1.8}
.project-grid{gap:35px 28px}.project-card{background:var(--sand);padding:0 22px 22px}.project-card img{width:calc(100% + 44px);max-width:none;margin-left:-22px;border:0;background:#e9e4d9;object-fit:contain}.project-card .project-meta{font-size:9px;letter-spacing:.1em;color:#716450;margin-top:22px}.project-card h3{font-size:25px;line-height:1.2;margin-top:10px}.project-card p{font-size:13px;line-height:1.8}.portfolio-grid{gap:40px}.portfolio-grid .project-card h3{font-size:31px}.portfolio-link,.story-teaser{font-size:11px;font-weight:600}.filters{gap:7px}.filters button{font-size:11px;padding:11px 15px;border-color:#cfcabc}.filters button[aria-pressed=true]{background:var(--ink)}.results-note{font-size:11px;letter-spacing:.04em}.project-more{margin-top:40px}.portfolio-all-link{font-size:12px}.company-home{background:#eee7db;max-width:none!important;grid-template-columns:1fr 1fr;gap:70px;padding-left:max(6%,calc((100vw - 1230px)/2));padding-right:max(6%,calc((100vw - 1230px)/2))}.company-home h2{font-size:clamp(34px,4vw,56px)}.company-home p,.company-home a{font-size:14px}.restoration{padding:92px max(6%,calc((100vw - 1230px)/2));background:var(--ink)}.restoration h2{font-size:clamp(36px,4vw,58px)}.restoration li{font-size:14px}.restoration .eyebrow:before,.construction-close .eyebrow:before{background:#cc9a74}
.service-hero{gap:65px;grid-template-columns:1fr 1.05fr}.service-hero h1,.construction-hero h1{font-size:clamp(40px,4.8vw,68px)}.service-hero figure img{background:#eee7db;max-height:560px}.service-hero figcaption{font-size:10px;letter-spacing:.03em;margin-top:16px}.breadcrumbs{font-size:10px;letter-spacing:.03em}.service-detail-grid{gap:32px}.service-detail-grid article{border-color:#cfc7b8}.service-detail-grid h3{font-size:27px}.service-detail-grid p{font-size:14px;line-height:1.85}.service-detail-grid a{font-size:12px;text-underline-offset:5px}.construction-process,.service-brief,.frame-intro,.partner-scope,.company-story{background:#eee7db;gap:65px}.construction-process li strong{font-size:19px}.construction-process li span{font-size:14px}.service-brief li{font-size:14px}.service-faq summary{font-size:16px;font-weight:600;line-height:1.6}.service-faq p{font-size:14px;line-height:1.9}.service-faq details{padding:23px 0}.construction-close{background:var(--ink);padding-left:max(6%,calc((100vw - 1230px)/2));padding-right:max(6%,calc((100vw - 1230px)/2))}.construction-close h2{max-width:1000px}.construction-close p{font-size:16px;max-width:660px}.object-intro,.portfolio-intro,.contact-intro,.request-intro,.build-request-intro{padding-bottom:42px}.object-intro h1,.portfolio-intro h1{font-size:clamp(44px,5.7vw,80px)}.object-photos{padding-top:0}.object-main{background:#eee7db}.object-thumbs button{background:#eee7db}.project-story{gap:80px}.project-story p{font-size:15px;line-height:1.95}.project-story .story-lead{font-size:22px;line-height:1.6}.project-story aside,.contact-person,.frame-package,.build-help,.request-summary,.timber aside{background:#eee7db}.project-story h2{font-size:clamp(34px,4vw,56px)}
.visual-offers{border-top:1px solid var(--line)}.visual-offers-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.visual-offers-grid>a{display:flex;flex-direction:column;align-items:start;border-top:2px solid var(--accent);padding:25px;background:#eee7db;text-decoration:none}.visual-offers-grid h3{font-size:27px;line-height:1.18}.visual-offers-grid p{font-size:13px;line-height:1.85;color:#566253}.visual-offers-grid .offer-more{font-size:11px;font-weight:600;margin-top:auto;padding-top:15px}.frame-promo{background:#eee7db;border:0;padding:40px}.frame-promo h3{font-size:32px}.frame-promo p{font-size:14px}.frame-promo a{font-size:12px}.contact-wrap{background:#eee7db}.contact h2{font-size:clamp(38px,4.7vw,64px)}.contact a.big{font-family:inherit;font-size:clamp(23px,2.8vw,36px)}label{font-size:12px}input,select,textarea{background:#fffcf7;border-color:#c8c4b7;border-radius:0;font-size:15px;padding:15px}.note{font-size:11px;line-height:1.8}.material-row{background:#fffcf7}.material-row legend{font-size:13px}.build-help h2,.request-summary h2{font-size:34px}.contact-paths h3{font-size:30px}.company-record dl{font-size:14px}.frame-figure{background:#eee7db}.frame-figure figcaption{font-size:10px}
footer{background:var(--ink);color:#f7f3e9;padding:42px 6%;gap:25px;font-size:11px}.footer-brand{background:#faf7f0;padding:8px 12px;flex-shrink:0}.footer-brand .footer-logo{width:185px;mix-blend-mode:multiply}.footer-links{border-color:#526556;padding-top:25px;gap:10px 25px}.footer-links a{font-size:11px;color:#f7f3e9}.footer-links a:hover{color:#d7b28e}
@media(max-width:1100px){header.site-header nav{padding:11px 24px;flex-wrap:wrap;gap:15px}header.site-header .brand-logo{width:180px}header.site-header .menu{display:block;margin-left:auto;border:1px solid var(--line);padding:11px 15px;background:transparent;color:var(--ink);font-family:inherit;font-size:12px}header.site-header .links{display:none;width:100%;flex-direction:column;align-items:stretch;margin-left:0;gap:0;padding-top:10px}header.site-header .links.open{display:flex}header.site-header .links>a,header.site-header summary{font-size:14px;padding:12px 0}header.site-header .links>.button{margin-top:12px;padding:15px}.nav-services-panel{position:static;width:auto;box-shadow:none;padding:0 16px;border:0;border-left:2px solid var(--accent);margin-bottom:12px}.hero .visual-copy{gap:0 35px;padding-left:2%;padding-right:2%}.hero .visual-copy h1{font-size:43px}.hero-message .actions{flex-direction:column;align-items:start}.hero-message .button{min-width:220px}}
@media(max-width:850px){main section{padding:62px 6%}h2{font-size:39px}.hero.visual-hero{padding:0 22px 30px}.hero .visual-copy{grid-template-columns:1fr;padding:38px 2% 28px;gap:22px}.hero .visual-copy>.eyebrow{margin-bottom:0}.hero .visual-copy h1{font-size:clamp(38px,6vw,53px)}.hero .visual-copy h1 em{display:block}.hero-message .intro{max-width:630px;font-size:15px}.hero-message .actions{flex-direction:row;align-items:center;margin-top:20px}.hero-message .button{min-width:0}.hero .visual-stage .hero-slide{height:calc(100% - 64px)}.strip{gap:12px 24px;padding:15px 6%;font-size:10px}.service-hero{grid-template-columns:1fr;gap:30px}.service-hero h1,.construction-hero h1{font-size:48px}.service-hero figure img{max-height:490px}.company-home{grid-template-columns:1fr;gap:15px}.construction-process,.service-brief,.frame-intro,.partner-scope,.company-story{gap:30px}.visual-offers-grid{grid-template-columns:1fr}.visual-offers-grid>a{padding:25px}.visual-offers-grid h3{margin-top:4px}.visual-offers-grid p{margin-bottom:5px}.construction-choices h3{font-size:26px}.project-story{gap:30px}.portfolio-grid{gap:28px}.portfolio-grid .project-card h3{font-size:27px}.section-head{margin-bottom:30px}}
@media(max-width:570px){header.site-header nav{padding:10px 16px}header.site-header .brand-logo{width:170px}.hero.visual-hero{padding:0 12px 22px}.hero .visual-copy{padding:32px 10px 25px}.hero .visual-copy h1{font-size:38px;letter-spacing:-.06em}.hero .visual-copy h1 em{max-width:350px}.hero-message .intro{font-size:14px}.hero-message .actions{gap:9px}.hero-message .button{font-size:11px;padding:13px 15px}.hero .visual-stage .photo-label{margin:13px 10px;font-size:9px}.hero .visual-stage .slide-controls{margin:9px 8px;gap:4px}.hero .visual-stage .slide-controls button{width:32px;height:36px;font-size:15px}.hero .visual-stage .hero-slide{height:calc(100% - 60px)}.construction-choices{gap:30px}.construction-choices h3{font-size:31px}.project-card h3{font-size:27px}.project-card .project-meta{font-size:9px}.project-grid{gap:30px}.object-intro h1,.portfolio-intro h1,.service-hero h1,.construction-hero h1{font-size:39px}.service-hero figure img{max-height:420px}.frame-promo{padding:28px}.frame-promo h3{font-size:29px}.project-story .story-lead{font-size:20px}.project-story p{font-size:14px}.contact-paths h3{font-size:28px}.eyebrow{font-size:9px;letter-spacing:.14em}.footer-brand .footer-logo{width:180px}.footer-brand{width:auto}.footer-links{gap:12px 20px}.service-detail-grid h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.button,.construction-choices>a,.project-card{transition:none}}

/* Readable pricing tables and download sections. */
.pricing-section{max-width:1200px;margin:auto;padding:clamp(32px,5vw,72px) clamp(20px,5vw,64px)}
.pricing-section>p{max-width:85ch;line-height:1.7}.price-scroll{overflow-x:auto;margin:24px 0}.price-table{border-collapse:collapse;width:100%;min-width:440px;text-align:left}.price-table caption{text-align:left;padding:12px 0;font-weight:800}.price-table th,.price-table td{padding:15px;border-bottom:1px solid #cad0c4}.price-table thead{background:#e4e8df}.price-table tbody tr:nth-child(even){background:#f3f1e9}
