:root{--ink:#123f4a;--accent:#e06d54;--paper:#f5f1e8;--soft:#8cc2c6;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Trebuchet MS', Arial, sans-serif;line-height:1.65}a{color:inherit}img{max-width:100%;display:block}.skip{position:absolute;left:-999px;top:1rem;background:#fff;padding:.8rem;z-index:99}.skip:focus{left:1rem}header{height:84px;padding:0 max(24px,calc((100% - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid color-mix(in srgb,var(--ink) 14%,transparent)}.brand{text-decoration:none;line-height:1.1;font-weight:800;letter-spacing:-.02em}.brand span,.brand small{display:block}.brand small{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;margin-top:.35rem;color:var(--accent)}nav{display:flex;align-items:center;gap:1.35rem}nav a,.drop button{border:0;background:none;text-decoration:none;font:inherit;font-weight:700}.call{background:var(--ink);color:white;padding:.7rem 1rem}.drop{position:relative}.drop>div{display:none;position:absolute;top:100%;left:0;background:white;min-width:220px;padding:.6rem;box-shadow:0 15px 35px #0002}.drop:hover>div,.drop>button[aria-expanded=true]+div{display:grid}.drop div a{padding:.5rem}.menu{display:none}.hero{min-height:690px;display:grid;position:relative;background:var(--ink);color:white;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:left;opacity:.62}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#123f4aee 0%,#123f4a99 44%,transparent 75%)}.hero-copy{position:relative;z-index:2;width:min(690px,90%);margin:auto max(24px,calc((100% - var(--max))/2));padding:6rem 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:900;color:var(--accent)}h1,h2,h3{line-height:1.05;letter-spacing:-.035em}h1{font-size:clamp(3rem,7vw,6.5rem);margin:.2em 0}.hero p{font-size:1.12rem;max-width:65ch}.actions{display:flex;gap:1.2rem;align-items:center;margin-top:2rem}.btn{display:inline-block;border:0;background:var(--accent);color:white;padding:1rem 1.25rem;text-decoration:none;font-weight:900;cursor:pointer}.btn.alt{background:var(--ink)}.text-link{font-weight:900;text-underline-offset:.25em}.disclose{font-size:.8rem!important;opacity:.78}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,7rem);align-items:center}.local,.services,.craft,.cost,.lead,.faq,.final,.page-head,.prose,.area-grid,.contact-wrap{padding:clamp(4rem,8vw,8rem) max(24px,calc((100% - var(--max))/2))}.local h2,.services h2,.craft h2,.cost h2,.lead h2,.faq h2,.final h2,.page-head h1{font-size:clamp(2.3rem,5vw,4.7rem);margin:.3em 0}.local aside,.note{background:white;padding:2rem;border-left:5px solid var(--accent)}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-top:2.5rem}.card{background:white;padding:1.6rem;text-decoration:none;border-top:4px solid var(--soft);transition:.2s}.card:hover{transform:translateY(-5px);border-color:var(--accent)}.card span{color:var(--accent);font-weight:900}.card h3{font-size:1.45rem}.card b{font-size:.85rem}.craft{background:var(--soft)}.craft img{height:520px;width:100%;object-fit:cover;box-shadow:22px 22px 0 var(--accent)}.history{padding:6rem max(24px,calc((100% - 920px)/2));background:var(--ink);color:white;text-align:center}.history blockquote{font-size:clamp(1.8rem,4vw,3.5rem);line-height:1.25;margin:1rem 0}.cost-box{background:var(--accent);color:white;padding:3rem;display:grid;gap:1rem}.cost-box strong{font-size:2rem;line-height:1.1}.lead{background:white}.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.lead-form label{font-weight:800}.lead-form input,.lead-form textarea{display:block;width:100%;margin-top:.35rem;padding:.9rem;border:1px solid #0004;background:#fff;font:inherit}.wide{grid-column:1/-1}.consent{display:flex!important;align-items:flex-start;gap:.6rem;font-size:.82rem}.consent input{width:auto;margin:.3rem 0 0}.hp{position:absolute;left:-9999px}.faq details{border-top:1px solid #0002;padding:1.2rem 0}.faq summary{font-weight:900;cursor:pointer}.final{text-align:center;background:var(--accent);color:white}.page-head{background:var(--ink);color:white;min-height:430px;display:grid;align-content:center}.page-head h1{max-width:950px}.page-head>p{max-width:740px;font-size:1.15rem}.prose{max-width:900px!important;margin:auto}.prose h2{font-size:2rem;margin-top:2.2rem}.prose li{margin:.6rem 0}.contact-wrap{display:grid;grid-template-columns:1.4fr .6fr;gap:4rem}.contact-wrap aside{background:var(--soft);padding:2rem}.area-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem}.area{background:white;padding:2rem;text-decoration:none;border-left:5px solid var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:.8rem}.chips a{background:var(--soft);padding:.6rem 1rem;text-decoration:none;font-weight:800}footer{background:#123f4a;color:white;padding:4rem max(24px,calc((100% - var(--max))/2)) 6rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}footer a,footer strong{display:block}.fine{grid-column:1/-1;opacity:.68;font-size:.78rem}.mobile-bar{display:none}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media(max-width:900px){header{height:72px}.menu{display:block;border:1px solid var(--ink);background:none;padding:.6rem}.menu+nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:1rem;align-items:stretch}.menu+nav.open{display:grid}.drop>div{position:static;box-shadow:none;background:transparent}.hero{min-height:650px}.hero:after{background:#123f4abb}.hero-copy{padding:4rem 0}.split,.contact-wrap{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.area-grid{grid-template-columns:1fr}.craft img{height:380px}footer{grid-template-columns:1fr}.fine{grid-column:auto}.mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;background:var(--ink)}.mobile-bar a{color:white;padding:.85rem;text-align:center;text-decoration:none;font-weight:900;border-right:1px solid #fff3}}@media(max-width:560px){.grid,.lead-form{grid-template-columns:1fr}.wide{grid-column:auto}h1{font-size:3.2rem}.hero-copy{width:calc(100% - 48px)}.actions{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}