:root{--paper:#f7f5ef;--surface:#eeebe3;--ink:#272c2b;--muted:#5d625f;--copper:#943f25;--line:#d6d3c9;--max:1360px;--space:clamp(24px,5vw,76px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px}p{color:var(--muted);max-width:65ch;margin:0 0 1.2em}img{display:block;max-width:100%;height:auto}h1,h2,h3{font-weight:500;margin:0;line-height:1.1;overflow-wrap:break-word}h1{font-size:clamp(44px,4.9vw,72px);letter-spacing:-.042em;max-width:15ch;margin:20px 0 28px}h1 em{font-style:normal;color:var(--copper);display:block;font-size:.69em;letter-spacing:-.025em;line-height:1.22;margin-top:13px;max-width:24ch}h2{font-size:clamp(31px,3.2vw,46px);letter-spacing:-.035em;margin:15px 0 26px}h3{font-size:25px;letter-spacing:-.025em;margin:16px 0}button{border:0}.wrap{max-width:var(--max);padding:0 var(--space);margin:auto}.section{padding-top:88px;padding-bottom:88px}.kicker,.index{font-size:11px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;display:block;color:var(--copper)}.skip{position:fixed;top:-100px;left:20px;padding:14px 20px;background:var(--ink);color:white;z-index:100}.skip:focus{top:15px}header{position:sticky;top:0;z-index:20;background:#f7f5eff5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{max-width:var(--max);padding:12px var(--space);display:flex;align-items:center;justify-content:space-between;gap:25px;margin:auto;min-height:92px}.logo{display:block;width:215px;flex-shrink:0}.logo img{width:100%;height:auto}nav{display:flex;gap:25px;align-items:center;font-size:14px}nav a{padding:12px 0;white-space:nowrap}nav a[aria-current=page]{color:var(--copper);border-bottom:1px solid var(--copper)}.header-call{border-left:1px solid var(--line);padding-left:25px;font-size:15px;line-height:1.6;white-space:nowrap}.header-call b{display:block;color:var(--copper);font-size:12px}.menu{display:none;background:none;min-width:48px;min-height:44px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;padding-top:55px;padding-bottom:55px}.hero-copy{padding:15px 0}.lead{font-size:18px;line-height:1.65;max-width:52ch}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0}.btn{min-height:52px;display:inline-flex;gap:30px;align-items:center;justify-content:center;background:var(--copper);color:white;border:1px solid var(--copper);padding:13px 22px;font-size:14px;font-weight:600;line-height:1.4;transition:background .2s}.btn:hover{background:#78321c}.btn.outline{background:transparent;color:var(--ink);border-color:#b1b3aa}.btn.outline:hover{background:var(--surface)}.hero-foot{font-size:12px;display:flex;justify-content:space-between;gap:15px;padding-top:24px;border-top:1px solid var(--line);margin-top:30px;color:var(--muted)}.hero-foot a{color:var(--copper)}.hero-image{position:relative}.work-photo{margin:0;background:var(--surface)}.work-photo img{width:100%;object-fit:contain;height:auto}.work-photo figcaption{padding:15px 17px;display:flex;justify-content:space-between;gap:15px;font-size:11px;line-height:1.5;color:var(--muted)}.work-photo figcaption span:last-child{white-space:nowrap}.image-label{position:absolute;top:14px;left:14px;background:var(--paper);padding:9px 13px;font-size:10px;letter-spacing:1px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:36px}.section-heading p{max-width:39ch}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 25px}.service-card{display:flex;flex-direction:column;background:white;border:1px solid var(--line);transition:transform .2s}.service-card:hover{transform:translateY(-4px)}.service-image{height:250px;background:#e9e8e1;padding:10px;display:flex;align-items:center;justify-content:center}.service-image img{width:100%;height:100%;object-fit:contain}.service-copy{padding:25px;display:flex;flex-direction:column;flex:1}.service-copy h3{display:flex;gap:15px;justify-content:space-between;font-size:24px}.service-copy h3 span{color:var(--copper);font-size:21px}.service-copy p{font-size:15px;line-height:1.7}.text-link{font-size:14px;display:inline-block;color:var(--copper);font-weight:600;border-bottom:1px solid currentColor;padding:7px 0;align-self:flex-start}.service-copy .text-link{margin-top:auto}.image-note{font-size:12px;line-height:1.5;color:var(--muted);display:block;margin-bottom:15px}.dark{background:var(--ink);color:var(--paper)}.dark p{color:#d0d4cc}.dark .kicker,.dark .text-link{color:#e7ac91}.selected-work{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:25px 0 30px;align-items:start}.dark .work-photo{background:#353b38}.dark figcaption{color:#e2e4dd}.selected-work img{max-height:380px;object-fit:contain}.selected-work figcaption{display:block}.selected-work figcaption span{display:block;margin-bottom:5px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:40px}.steps article{border-top:1px solid var(--line);padding-top:24px}.steps article>span{font-size:11px;letter-spacing:1px;color:var(--copper);font-weight:700}.steps p{font-size:16px}.region-block{background:var(--surface);padding-top:55px;padding-bottom:55px;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.cities{display:flex;gap:10px;flex-wrap:wrap}.cities span{background:var(--paper);border:1px solid var(--line);padding:11px 15px;font-size:14px}.cta{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;border-top:1px solid var(--line);padding-top:55px;align-items:center}.large-phone{font-size:clamp(26px,2.6vw,36px);letter-spacing:-1px;line-height:1.4;font-weight:600;color:var(--copper);display:inline-block}.email{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.page-intro{padding-top:70px;padding-bottom:40px}.page-intro h1{max-width:23ch}.first-section{padding-top:25px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;padding-top:30px;color:var(--muted)}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.service-hero h1{font-size:clamp(40px,4vw,62px)}.service-hero figure img{max-height:550px;object-fit:contain}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.preparation{background:var(--surface);padding:35px}.preparation h2{font-size:30px}.preparation li{padding:8px 0;font-size:16px}.preparation ol,.preparation ul{padding-left:22px}.checklist{list-style:none;padding:0}.checklist li{border-bottom:1px solid var(--line);padding:17px 0 17px 25px;position:relative}.checklist li:before{content:'↗';position:absolute;left:0;color:var(--copper)}.notice{border-left:3px solid var(--copper);padding:15px 20px;background:var(--surface);font-size:14px;margin-top:20px}.cost-section{display:grid;grid-template-columns:1fr 1fr;gap:75px;border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:23px 0}.faq summary{font-size:20px;line-height:1.45;cursor:pointer;padding-right:20px}.faq details p{padding-top:18px;font-size:16px}.faq-page{max-width:1000px}.related{border-top:1px solid var(--line);padding-top:35px}.related>div{display:flex;flex-wrap:wrap;gap:15px 25px;margin-top:20px}.related a{font-size:14px;color:var(--copper);text-decoration:underline;text-underline-offset:4px}.gallery-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:35px}.gallery-toolbar p{font-size:13px;white-space:nowrap;margin:0}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid #aeb2a7;background:transparent;padding:12px 18px;font-size:14px;min-height:46px}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 22px;align-items:start}.gallery-item{background:var(--surface);padding:0;text-align:left;color:var(--ink);width:100%}.gallery-item>img{width:100%;height:auto}.gallery-caption{display:flex;gap:12px;padding:15px;font-size:12px;line-height:1.5}.gallery-caption b{color:var(--copper)}.gallery-caption>span:last-child{margin-left:auto}.lightbox{max-width:96vw;width:1100px;max-height:95dvh;padding:20px;border:0;background:var(--ink);color:var(--paper);overflow:auto}.lightbox::backdrop{background:#000d}.lightbox-head,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}.lightbox-head h2{font-size:20px;margin:0}.lightbox button{color:var(--paper);background:#434b46;border:1px solid #7c847e;padding:12px;min-height:46px;font-size:13px}.lightbox>img{max-height:70dvh;width:100%;object-fit:contain;margin:18px 0}.lightbox-bottom p{color:#e3e8dd;font-size:13px;margin:0;text-align:center}.dialog-open{overflow:hidden}.dialog-open .mobile-actions{visibility:hidden}.contact-direct{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;margin:30px 0 18px}.contactbox{background:white;border:1px solid var(--line);padding:35px}.contactbox label{display:block;font-size:14px;font-weight:600;margin:20px 0 7px}.contactbox input,.contactbox select,.contactbox textarea{width:100%;border:1px solid #a9ada5;background:var(--paper);padding:13px;color:var(--ink);border-radius:0;min-height:48px}.contactbox textarea{min-height:145px;resize:vertical}.contactbox #result{min-height:250px}.contactbox p{font-size:14px}.form-submit{width:100%;margin-top:25px}.field-error{display:block;font-size:13px;color:#9b241c}.contactbox [aria-invalid=true]{border:2px solid #9b241c}.contactbox #output{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}.contactbox .actions{gap:10px}.contactbox .btn{font-size:13px;padding:13px 15px}footer{background:var(--ink);color:var(--paper);padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}.footer-logo{background:var(--paper);padding:8px;width:260px;max-width:100%;margin-bottom:25px}.footer-grid h2{font-size:16px;letter-spacing:0;margin:0 0 20px}.footer-grid p{color:#d0d4cc;font-size:14px}.footer-grid>div>a:not(.logo){display:block;padding:7px 0;font-size:14px}.footer-grid .footer-phone{font-size:22px!important}.footer-bottom{border-top:1px solid #646b63;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#c6cabe;font-size:11px}.mobile-actions{display:none}[hidden]{display:none!important}
@media(max-width:1100px){.header-inner{gap:18px}.header-call{padding-left:15px}.logo{width:185px}nav{gap:15px;font-size:13px}.hero{gap:35px}.service-grid{grid-template-columns:repeat(2,1fr)}.two-column,.cost-section{gap:40px}.selected-work figcaption{font-size:10px}.cta{gap:30px}}
@media(max-width:800px){.header-inner{min-height:78px;padding-top:8px;padding-bottom:8px}.header-call{display:none}.menu{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--ink)}.menu>span:first-child{font-size:21px}.logo{width:190px}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px var(--space);background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;font-size:17px}nav.open{display:flex}nav a{white-space:normal;padding:10px}.hero{grid-template-columns:1fr;padding-top:32px;padding-bottom:25px;gap:20px}.hero-copy{padding:0}h1{font-size:49px;max-width:19ch;letter-spacing:-.035em;margin:14px 0 20px}h1 em{font-size:.65em}.lead{font-size:17px;line-height:1.6}.hero .actions{margin:22px 0}.hero-foot{margin-top:20px;padding-top:18px}.hero-image{max-width:600px;width:100%;margin:auto}.section{padding-top:60px;padding-bottom:60px}.section-heading{display:block;margin-bottom:25px}.section-heading p{max-width:60ch}.selected-work{grid-template-columns:1fr 1fr}.selected-work>figure:last-child{grid-column:1/-1;max-width:450px}.steps{grid-template-columns:1fr;gap:20px}.region-block,.cta,.two-column,.cost-section{grid-template-columns:1fr;gap:30px}.region-block{padding-top:35px;padding-bottom:35px}.page-intro{padding-top:40px;padding-bottom:25px}.first-section{padding-top:15px}.gallery{grid-template-columns:repeat(2,1fr);gap:20px 15px}.gallery-toolbar{display:block}.gallery-toolbar p{margin-top:15px}.service-hero{padding-top:25px}.service-hero h1{font-size:44px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}.mobile-actions{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:25;background:var(--paper);padding:9px var(--space) calc(9px + env(safe-area-inset-bottom));border-top:1px solid var(--line);gap:10px}.mobile-actions a{display:flex;align-items:center;justify-content:center;min-height:46px;font-size:14px;font-weight:700;background:var(--copper);color:white}.mobile-actions a:last-child{background:var(--ink)}body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.lightbox-bottom{flex-wrap:wrap}.lightbox-bottom p{order:3;width:100%}.lightbox-head h2{font-size:16px}.contactbox{padding:25px}.contact-direct{display:block}.contact-direct>a{display:block;margin:10px 0}.preparation{padding:25px}}
@media(max-width:450px){:root{--space:20px}h1{font-size:45px}.hero .kicker{font-size:10px}.hero h1 em{font-size:28px}.hero .lead{font-size:16px}.hero .btn{padding:13px 16px;font-size:13px;gap:10px;flex:1}.hero-foot{font-size:11px}.service-grid{grid-template-columns:1fr}.service-image{height:280px}.service-copy{padding:23px}.work-photo figcaption{display:block}.work-photo figcaption span{display:block;margin:2px 0}.gallery{gap:20px 10px}.gallery-caption{padding:10px;font-size:11px;gap:6px}.gallery-caption>span:last-child{display:none}.gallery-caption b{font-size:10px}.filters button{font-size:12px;padding:10px 12px}.selected-work{grid-template-columns:1fr}.selected-work>figure:last-child{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.page-intro h1{font-size:41px}.contactbox .actions{display:block}.contactbox .actions .btn{width:100%;margin:6px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
