:root{--green:#103d30;--dark:#09291f;--cream:#f9f7ef;--gold:#c49b51;--ink:#18352b;--muted:#52675d}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:1.0625rem/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}img{max-width:100%;display:block}.wrap{width:min(1200px,88%);margin:auto}.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:5}.skip:focus{top:16px}header{background:var(--green);color:var(--cream)}.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:14px;align-items:center;text-decoration:none}.brand-logo{position:relative;display:block;flex:0 0 auto;width:86px;height:86px;overflow:hidden;border-radius:50%;background:var(--cream)}.brand-logo img{position:absolute;left:50%;top:50%;width:140%;max-width:none;height:auto;transform:translate(-50%,-43.5%)}.brand strong{display:block;font-size:1.4375rem;letter-spacing:1px;line-height:1.2}.brand div span{display:block;font-size:0.75rem;letter-spacing:1.7px;margin-top:5px}nav{display:flex;align-items:center;gap:32px}nav a{text-decoration:none;font-size:0.9375rem;padding:8px 0;border-bottom:1px solid transparent}nav a[aria-current=page]{border-color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:var(--green);color:var(--cream);padding:12px 26px;text-decoration:none;font-size:0.9375rem;font-weight:bold;border:1px solid var(--green)}.btn:hover{background:var(--dark)}.btn.light{background:var(--cream);color:var(--green);border-color:var(--cream)}.btn.outline{background:transparent;color:var(--green)}.eyebrow{font-size:0.8125rem;letter-spacing:2.2px;text-transform:uppercase;font-weight:bold;color:var(--muted);margin:0 0 20px}.hero{display:grid;grid-template-columns:1fr 1.08fr;min-height:570px}.hero-copy{padding:76px 55px 65px max(6vw,calc((100vw - 1200px)/2));display:flex;flex-direction:column;justify-content:center}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:normal;line-height:1.12}h1{font-size:clamp(2.5rem,4.8vw,4.25rem);letter-spacing:-1.8px;margin:0 0 24px}h2{font-size:clamp(1.875rem,3vw,2.6875rem);margin:0 0 24px;letter-spacing:-.7px}h3{font-size:1.6875rem;margin:0 0 14px}.hero p.lead{max-width:430px;color:var(--muted);margin:0 0 32px;font-size:1.125rem}.actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.hero-image{position:relative;min-height:570px}.hero-image img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:60% center}.image-label{position:absolute;bottom:24px;left:26px;background:var(--cream);padding:8px 16px;font-size:0.8125rem;letter-spacing:1px}.local-strip{background:var(--green);color:var(--cream);padding:20px 0}.local-strip .wrap{display:flex;justify-content:space-between;gap:24px;font-size:0.875rem}.local-strip span:first-child{color:#ddbb7d}.section{padding:78px 0}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:42px}.section-intro p{margin:0;color:var(--muted)}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.service{border-top:1px solid #bfcbc2;padding-top:22px}.number{color:#8a6630;font-size:0.8125rem;letter-spacing:2px;display:block;margin-bottom:18px}.service p{color:var(--muted);margin:0}.cta{background:var(--green);color:var(--cream);padding:50px 0}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:32px}.cta h2{margin:0 0 10px}.cta p{margin:0;color:#d8e1d9}.page-heading{padding:70px 0 48px;max-width:850px}.page-heading h1{font-size:clamp(2.5rem,5vw,4.125rem)}.page-heading p:last-child{max-width:600px;font-size:1.1875rem;color:var(--muted)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;padding-bottom:80px}.about-grid img{width:100%;height:470px;object-fit:cover}.about-grid p{color:var(--muted)}.principles{border-top:1px solid #bfcbc2;padding-top:20px;margin-top:30px}.principles p{margin:12px 0}.principles strong{color:var(--green)}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;padding-bottom:85px}.contact-list{border-top:1px solid #bfcbc2}.contact-item{padding:23px 0;border-bottom:1px solid #bfcbc2}.contact-item small{display:block;font-size:0.8125rem;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);margin-bottom:7px}.contact-item a{font-size:clamp(1.0625rem,2vw,1.625rem);text-decoration:none;overflow-wrap:anywhere}.contact-item a:hover{text-decoration:underline}.contact-card{background:var(--green);color:var(--cream);padding:42px}.contact-card p{color:#d8e1d9}.contact-card ul{padding-left:20px;margin:24px 0 30px}.contact-card li{margin:9px 0}.contact-card .eyebrow{color:#ddbb7d}footer{padding:38px 0;background:var(--dark);color:#e3e9e1}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-brand{font:1.5625rem Georgia,serif}.footer-top p{font-size:0.875rem;margin:5px 0;color:#b7c8be}.footer-links{display:flex;gap:25px;font-size:0.875rem}.copyright{border-top:1px solid #355147;padding-top:20px;margin-top:28px;font-size:0.75rem;color:#b7c8be}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}@media(max-width:800px){.header{min-height:100px}.brand strong{font-size:1.1875rem}.brand div span{font-size:0.625rem}.brand-logo{width:72px;height:72px}nav{gap:20px}.hero{grid-template-columns:1fr}.hero-copy{padding:50px 6%}.hero-image{min-height:380px}.section{padding:55px 0}.section-intro{grid-template-columns:1fr;gap:10px}.services{gap:24px}.local-strip .wrap{flex-wrap:wrap;gap:5px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:32px}.about-grid img{height:360px}.page-heading{padding-top:48px}.cta .wrap{align-items:flex-start;flex-direction:column}.footer-top{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.header{flex-wrap:wrap;gap:12px;padding:18px 0}.brand-logo{width:64px;height:64px}.brand strong{font-size:1.125rem}nav{width:100%;justify-content:space-between;gap:12px}nav a{font-size:0.875rem}.hero-copy{padding-top:42px;padding-bottom:42px}.hero-image{min-height:300px}.hero h1{font-size:2.75rem}.services{grid-template-columns:1fr;gap:30px}.contact-card{padding:28px}.local-strip{padding:17px 0}.footer-links{flex-wrap:wrap}.page-heading h1{font-size:2.6875rem}.actions{gap:12px}.wrap{width:88%}}@media(prefers-reduced-motion:no-preference){a{transition:background .18s,color .18s}}

/* Keep contact links and navigation usable with enlarged text. */
.header{flex-wrap:wrap;padding:12px 0}.brand{max-width:100%;min-width:0}.brand div{min-width:0}.brand strong{overflow-wrap:anywhere}.footer-links{flex-wrap:wrap}nav a{min-height:44px;display:inline-flex;align-items:center}.brand div span{font-size:0.875rem;letter-spacing:1px}.copyright{font-size:0.875rem}@media(max-width:800px){.brand div span{font-size:0.875rem;letter-spacing:.4px}}@media(max-width:520px){.brand{gap:10px}.brand strong{font-size:1.0625rem}.brand div span{font-size:0.875rem;letter-spacing:0}}

nav{flex-wrap:wrap}.btn{max-width:100%;text-align:center}

/* Show the complete finished exterior without cutting off the house. */
.hero-image{min-height:0;display:flex;align-items:center;background:var(--dark)}.hero-image img{position:static;width:100%;height:auto;object-fit:contain}.about-grid img{height:auto;aspect-ratio:4 / 3;object-fit:contain}
