    @import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700;800&display=swap');
    :root{color-scheme:light;--font-default:"Open Sans",Arial,sans-serif;--ink:#252525;--copper:#a95328;--cream:#f6f1ea;--surface:#fff;--field:#fff;--muted:#6b6864;--line:#ddd4ca;--success:#276232;--max:1180px}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.65 var(--font-default);background:var(--surface)}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{text-transform:capitalize}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.eyebrow{color:var(--copper);font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:14px 22px;border-radius:5px;background:var(--copper);color:#fff;font-weight:800}.btn.alt{background:transparent;border:1px solid #fff;margin-left:10px}.section{padding:84px 0}.title{max-width:720px;margin:8px 0 36px;font:700 clamp(2rem,4vw,3.2rem)/1.08 var(--font-default)}.topbar{background:#1c1c1c;color:#ddd;padding:8px 0;font-size:.84rem}.topbar .wrap,.nav .wrap{display:flex;align-items:center;justify-content:space-between}.nav{height:82px;background:var(--surface);position:sticky;top:0;z-index:10;box-shadow:0 2px 16px #0000000d}.brand{font:800 1.15rem/1 var(--font-default);letter-spacing:.08em}.brand span{display:block;color:var(--copper);font-size:.7rem;margin-top:6px}.links{display:flex;align-items:center;gap:26px;font-weight:700;font-size:.9rem}.menu{display:none;width:42px;height:42px;padding:9px;border:0;border-radius:2px;background:none;color:var(--ink);cursor:pointer}.menu-line{display:block;width:24px;height:2px;margin:5px auto;background:currentColor;transform-origin:center;transition:transform .25s ease,opacity .2s ease}.menu[aria-expanded="true"] .menu-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu[aria-expanded="true"] .menu-line:nth-child(2){opacity:0}.menu[aria-expanded="true"] .menu-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{min-height:650px;display:grid;align-items:center;color:white;background:linear-gradient(90deg,#161616e8 10%,#161616a6 58%,#16161642),url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=2000&q=85') center/cover}.hero-copy{max-width:720px;padding:90px 0}.hero h1{font:700 clamp(2.7rem,6vw,5.4rem)/.98 var(--font-default);margin:12px 0 22px}.hero p{max-width:610px;font-size:1.15rem;color:#eee}.trust{background:var(--cream);border-bottom:1px solid var(--line)}.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr)}.trust .wrap>div{display:flex;align-items:center;justify-content:center;padding:25px;text-align:center;border-right:1px solid var(--line);font-weight:800}.trust .wrap>div:last-child{border-right:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);background:var(--surface);padding:29px}.card b{display:block;font:700 1.35rem var(--font-default);margin:10px 0}.card .num{color:var(--copper);font-weight:900}.split{display:grid;grid-template-columns:1.02fr .98fr;min-height:560px;background:#252525;color:#fff}.split .photo{background:url('https://images.unsplash.com/photo-1556911220-bff31c812dba?auto=format&fit=crop&w=1600&q=85') center/cover}.split .copy{padding:80px max(40px,calc((100vw - var(--max))/2)) 80px 70px}.split ul{padding-left:19px;color:#dedede}.projects{background:var(--cream)}.gallery{display:grid;grid-template-columns:1.3fr .7fr .7fr;gap:16px;height:430px}.gallery figure{margin:0;position:relative;overflow:hidden}.gallery figcaption{position:absolute;inset:auto 0 0;padding:50px 20px 18px;color:#fff;font-weight:800;background:linear-gradient(transparent,#000b)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.step i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--copper);color:#fff;font-style:normal;font-weight:900}.step h3{font-family:var(--font-default)}.faq details{border-top:1px solid var(--line);padding:19px 0}.faq summary{cursor:pointer;font-weight:800}.estimate{background:var(--copper);color:#fff}.estimate-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.form{background:var(--surface);color:var(--ink);padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.form input,.form select,.form textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:0;background:var(--field);color:var(--ink);font:inherit}.form input::placeholder,.form textarea::placeholder{color:var(--muted);opacity:1}.form textarea,.form button,.wide{grid-column:1/-1}.form button{border:0;border-radius:2px;cursor:pointer;background:var(--ink);color:var(--surface);padding:15px;font-weight:800}.notice{display:none;grid-column:1/-1;color:var(--success)}.footer{background:#171717;color:#c9c9c9;padding:50px 0}.footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer strong{color:#fff}.credit{border-top:1px solid #333;margin-top:34px;padding-top:18px;font-size:.8rem}.mobile-cta{display:none}
    .theme-toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:var(--cream);color:var(--ink);padding:9px 13px;font:700 .8rem/1 var(--font-default);cursor:pointer}.theme-toggle:focus-visible{outline:3px solid var(--copper);outline-offset:3px}.theme-icon{font-size:1rem}.theme-icon-dark{display:none}:root[data-theme="dark"] .theme-icon-light{display:none}:root[data-theme="dark"] .theme-icon-dark{display:inline}
    :root[data-theme="dark"]{color-scheme:dark;--ink:#f3eee8;--copper:#d78759;--cream:#211e1b;--surface:#171615;--field:#24211f;--muted:#bdb6af;--line:#45403b;--success:#8ed09a}:root[data-theme="dark"] .nav{box-shadow:0 2px 18px #0008}:root[data-theme="dark"] .card{background:#1d1b19}:root[data-theme="dark"] .estimate{background:#8f4d2f}:root[data-theme="dark"] .form button{background:var(--copper);color:#171615}
    @media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--ink:#f3eee8;--copper:#d78759;--cream:#211e1b;--surface:#171615;--field:#24211f;--muted:#bdb6af;--line:#45403b;--success:#8ed09a}:root:not([data-theme]) .nav{box-shadow:0 2px 18px #0008}:root:not([data-theme]) .card{background:#1d1b19}:root:not([data-theme]) .estimate{background:#8f4d2f}:root:not([data-theme]) .form button{background:var(--copper);color:#171615}:root:not([data-theme]) .theme-icon-light{display:none}:root:not([data-theme]) .theme-icon-dark{display:inline}}
    @media(max-width:850px){.links{display:none;position:absolute;top:82px;left:0;right:0;height:auto;background:var(--surface);padding:25px;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 12px;box-shadow:0 8px 12px #0002}.links.open{display:grid}.links>a:not(.btn){grid-column:span 2;justify-content:center;height:auto;text-align:center}.links .theme-toggle,.links>.btn{grid-column:span 3;justify-content:center;width:100%}.links .theme-toggle{border-radius:5px}.menu{display:block}.trust .wrap,.cards,.steps{grid-template-columns:1fr 1fr}.split,.estimate-grid{grid-template-columns:1fr}.split .photo{min-height:400px}.split .copy{padding:60px 30px}.gallery{grid-template-columns:1fr 1fr;height:auto}.gallery figure{height:320px}.gallery figure:first-child{grid-column:1/-1}.footer .wrap{grid-template-columns:1fr 1fr}.mobile-cta{display:flex;position:fixed;left:12px;right:12px;bottom:12px;text-align:center;z-index:20}}
    @media(max-width:560px){.section{padding:60px 0}.hero{min-height:620px}.hero-copy{padding:60px 0}.btn.alt{display:block;width:max-content;margin:12px 0 0}.trust .wrap,.cards,.steps,.gallery,.footer .wrap{grid-template-columns:1fr}.trust .wrap>div{border-right:0;border-bottom:1px solid var(--line)}.trust .wrap>div:last-child{border-bottom:0}.gallery figure,.gallery figure:first-child{grid-column:auto;height:270px}.form{grid-template-columns:1fr}.topbar{display:none}}
    .resources-hero{padding:90px 0 70px;background:var(--cream);border-bottom:1px solid var(--line)}.resources-hero h1{max-width:800px;margin:10px 0 20px;font:700 clamp(2.6rem,6vw,5rem)/1 var(--font-default)}.resources-hero p{max-width:700px;margin:0;color:var(--muted);font-size:1.15rem}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.resource-card{display:flex;flex-direction:column;min-height:100%;overflow:hidden;border:1px solid var(--line);background:var(--surface);transition:transform .2s ease,box-shadow .2s ease}.resource-card:hover,.resource-card:focus-within{transform:translateY(-4px);box-shadow:0 14px 34px #0002}.resource-card img{height:210px}.resource-card-content{display:flex;flex:1;flex-direction:column;padding:25px}.resource-card h2{margin:7px 0 12px;font:700 1.45rem/1.2 var(--font-default)}.resource-card p{margin:0 0 22px;color:var(--muted)}.resource-card .read-more{margin-top:auto;color:var(--copper);font-weight:800}.resource-card a:focus-visible{outline:3px solid var(--copper);outline-offset:4px}.resources-cta{text-align:center;background:var(--cream)}.resources-cta .title{margin-left:auto;margin-right:auto}.resources-cta p{max-width:650px;margin:-18px auto 26px;color:var(--muted)}
    @media(max-width:850px){.resource-grid{grid-template-columns:1fr 1fr}}
    @media(max-width:560px){.resources-hero{padding:65px 0 50px}.resource-grid{grid-template-columns:1fr}.resource-card img{height:230px}}
/* Navigation, contact, service, and footer enhancements */
.nav>.wrap{height:100%}.links{height:100%}.links>a:not(.btn){display:flex;align-items:center;height:100%}.footer-links{display:grid;gap:8px;margin-top:12px}.footer a:hover,.footer a:focus{text-decoration:underline}.phone-cta{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.owner-label{display:block;font:800 .85rem/1.2 var(--font-default);letter-spacing:.16em;text-transform:uppercase}.phone-number{display:block;width:max-content;margin:8px 0 24px;font:700 clamp(2.25rem,4vw,3.35rem)/1.1 var(--font-default);font-variant-numeric:tabular-nums;letter-spacing:-.035em}.phone-number:hover,.phone-number:focus-visible{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}.phone-btn{background:#252525}.service-detail{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:start}.service-detail h2{font-size:2rem;line-height:1.2}.service-detail li{margin:8px 0}.call-section a:not(.btn){color:var(--copper);font-weight:800;text-decoration:underline}
@media(max-width:850px){.links{height:auto}.links>a:not(.btn){height:auto}.theme-toggle{margin:5px 0}.phone-cta,.service-detail{grid-template-columns:1fr;gap:30px}}

/* Article pages */
.article-hero{position:relative;background:#111;color:#fff}
.article-hero-grid{position:relative;width:100%;height:1000px}
.article-hero-grid>figure{position:absolute;inset:0;margin:0}
.article-hero-grid>figure img{width:100%;height:100%;object-fit:cover}
.article-hero-grid>div{position:absolute;z-index:1;top:50%;left:0;right:0;min-height:500px;padding:80px max(20px,calc((100vw - var(--max))/2));display:flex;flex-direction:column;justify-content:center;background:rgba(0,0,0,.78);transform:translateY(-50%)}
.article-hero .breadcrumbs{margin-bottom:24px;color:#e3e3e3;font-size:.85rem}
.article-hero .breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.article-hero .eyebrow{color:#e0a17d}
.article-hero h1{max-width:900px;margin:10px 0 22px;color:#fff;font:700 clamp(2.7rem,6vw,5.4rem)/1.02 var(--font-default)}
.article-deck{max-width:760px;margin:0 0 20px;color:#f0f0f0;font-size:1.15rem}
.article-meta{margin:0;color:#d0d0d0;font-size:.9rem}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:70px;align-items:start}
.article-body{max-width:780px}.article-body h2{margin-top:42px;line-height:1.25}.answer-box{padding:24px;border-left:5px solid var(--copper);background:var(--cream)}.answer-box strong{display:block;margin-bottom:6px}.article-aside{display:grid;gap:24px;position:sticky;top:110px}.toc,.article-cta{display:grid;gap:12px;padding:24px;border:1px solid var(--line)}.toc a{color:var(--copper);font-weight:700}.article-cta{background:var(--cream)}.article-faq details{border-top:1px solid var(--line);padding:18px 0}.article-faq summary{cursor:pointer;font-weight:800}.call-section{margin-top:54px;padding:36px;background:var(--cream)}
@media(max-width:850px){.article-layout{grid-template-columns:1fr}.article-aside{position:static}.article-hero-grid>div{padding-top:55px;padding-bottom:55px}}
@media(max-width:560px){.article-hero-grid>div{min-height:500px}.article-hero h1{font-size:clamp(2.2rem,11vw,3.3rem)}.article-hero .breadcrumbs{display:none}}

/* Responsive brand artwork */
.brand{display:flex;align-items:center;gap:10px;flex:0 0 auto;width:auto;height:68px;letter-spacing:0}
.brand img{width:58px;height:58px;flex:0 0 auto;border-radius:4px;object-fit:cover}
.brand-name{display:flex;flex-direction:column;color:var(--ink);font:800 1rem/1.05 var(--font-default);letter-spacing:.08em;text-transform:uppercase}
.nav .brand-name{color:#000}
:root[data-theme="dark"] .nav .brand-name{color:#fff}
@media(prefers-color-scheme:dark){:root:not([data-theme]) .nav .brand-name{color:#fff}}
.brand-name strong{font-size:1.08rem;white-space:nowrap}
.brand-name small{margin-top:5px;font:800 .67rem/1 var(--font-default);letter-spacing:.18em}
.footer-brand{width:max-content;height:auto;max-width:100%}
.footer-brand .brand-name{color:#fff}
@media(max-width:850px){.brand{height:64px}.brand img{width:54px;height:54px}}
@media(max-width:560px){.nav{height:72px}.brand{height:56px;gap:8px}.brand img{width:48px;height:48px}.brand-name strong{font-size:.92rem}.brand-name small{font-size:.58rem}.links{top:72px}.footer-brand{height:auto}}
/* Keep the complete company name in a clear two-line lockup. */
.brand-name strong,.brand-name small{display:block}
.brand-name small{align-self:flex-start;white-space:nowrap}

.facebook-feature{background:var(--surface);text-align:center}
.facebook-feature .title,.facebook-feature p{margin-left:auto;margin-right:auto}
.facebook-feature .title{margin-bottom:20px}
.facebook-feature p{max-width:640px;margin-top:0;margin-bottom:26px;color:var(--muted)}

/* Latest news and complete contact details */
.facebook-feature{background:var(--surface)}
.facebook-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,500px);gap:70px;align-items:center}
.facebook-copy p{max-width:560px;margin:-18px 0 28px;color:var(--muted);font-size:1.08rem}
.facebook-feed{width:100%;min-height:620px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--cream);box-shadow:0 18px 45px #0002}
.facebook-feed iframe{display:block;width:100%;max-width:500px;margin:auto}
.contact-details,.footer-contact{display:grid;gap:8px;font-style:normal}
.contact-details{margin-top:24px;font-weight:700}
.contact-details a{width:max-content;max-width:100%;text-decoration:underline;text-underline-offset:4px}
.footer-contact{margin-top:12px}.footer-contact a{width:max-content;max-width:100%}
@media(max-width:1050px){.links{gap:17px;font-size:.82rem}}
@media(max-width:850px){.facebook-grid{grid-template-columns:1fr;gap:40px}.facebook-feed{max-width:500px}.links{font-size:.9rem}}
@media(max-width:560px){.facebook-feed{min-height:520px}.facebook-feed iframe{height:520px}}

/* Local project photography */
.hero{background-image:linear-gradient(90deg,#161616ed 10%,#161616a6 58%,#16161642),url('/img/brick-accent-kitchen.jpg')}
.split .photo{background-image:url('/img/vaulted-ceiling-kitchen.jpg')}
.gallery{grid-template-columns:repeat(3,1fr);height:auto;align-items:stretch}
.gallery figure{height:300px;border-radius:4px;background:#171717}
.gallery figure:first-child{grid-column:span 2;height:616px;grid-row:span 2}
.gallery img{transition:transform .35s ease}
.gallery figure:hover img{transform:scale(1.025)}
.facebook-brand{position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:#b16437}
.facebook-banner{width:100%;height:auto;aspect-ratio:820/360;object-fit:cover}
.facebook-logo{position:absolute;right:18px;bottom:18px;width:76px;height:76px;border:3px solid #fff;border-radius:6px;box-shadow:0 5px 18px #0005}
.facebook-feed{min-height:0}
@media(max-width:850px){.gallery{grid-template-columns:1fr 1fr}.gallery figure,.gallery figure:first-child{grid-column:auto;grid-row:auto;height:320px}.gallery figure:first-child{grid-column:1/-1}.facebook-feed{min-height:0}}
@media(max-width:560px){.gallery{grid-template-columns:1fr}.gallery figure,.gallery figure:first-child{grid-column:auto;height:280px}.facebook-logo{width:60px;height:60px;right:12px;bottom:12px}.facebook-feed{min-height:0}}

/* Accessibility and article-card refinements */
.skip-link{position:fixed;z-index:100;top:10px;left:10px;padding:12px 18px;border-radius:7px;background:#fff;color:#171717;font-weight:800;box-shadow:0 2px 12px #0005;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
:where(a,button,summary):focus-visible{outline:3px solid #1b65a7;outline-offset:3px}
.card,.resource-card,.answer-box,.toc,.article-cta,.call-section{border-radius:7px}
.resource-card img{border-radius:7px 7px 0 0}
summary{min-height:44px;padding-block:8px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.resource-card:hover,.resource-card:focus-within{transform:none}.gallery figure:hover img{transform:none}}
