:root{--green:#103c2e;--red:#b5222b;--ink:#192b24;--muted:#526059;--cream:#f5f5ee;--gold:#ebcf92}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font:1rem/1.65 Arial,Helvetica,sans-serif;background:white}a{color:inherit}a:focus-visible{outline:3px solid #d49d26;outline-offset:6px}.skip{position:absolute;left:10px;top:-100px;background:white;padding:15px;z-index:10}.skip:focus{top:5px}.wrap{width:min(1240px,88%);margin:auto}.topline{padding:10px 6%;background:var(--green);color:white;font-size:.75rem;letter-spacing:.12em;display:flex;justify-content:space-between}.topline span{letter-spacing:.02em}header{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font:bold italic 2rem Georgia,serif;text-decoration:none;color:var(--green);white-space:nowrap}.brand b{font:700 .875rem Arial,sans-serif;letter-spacing:.18em;color:var(--red);display:block;line-height:1;text-align:center}nav{display:flex;gap:34px}nav a{text-decoration:none;font-size:.94rem}nav a:hover,.text-link:hover{text-decoration:underline}.header-phone{font-weight:700;text-decoration:none;border-bottom:1px solid var(--red)}.hero{display:grid;grid-template-columns:46% 54%;min-height:620px;background:var(--cream)}.hero-copy{padding:65px 9% 62px 13%}.eyebrow{font-size:.75rem;font-weight:bold;letter-spacing:.17em;margin:0 0 24px;color:var(--green)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(3.2rem,4.9vw,5.7rem);line-height:1.07;margin-bottom:27px}h1 em{color:var(--red);font-weight:400}.intro{max-width:440px;color:var(--muted);font-size:1.08rem;line-height:1.75}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 23px;background:var(--red);color:white;font-weight:bold;text-decoration:none;border:1px solid var(--red);border-radius:3px;min-height:52px}.button:hover{background:#8d1921}.text-link{font-weight:700;font-size:.94rem;text-underline-offset:6px}.hero .actions{align-items:flex-start;flex-direction:column;gap:14px}.local{margin:29px 0 0;font-size:.875rem;color:var(--muted)}figure{margin:0}.hero-photo{position:relative;overflow:hidden;min-height:560px}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;object-position:64% center}.hero-photo figcaption{position:absolute;bottom:14px;right:15px;background:#10251dd9;color:#fff;padding:5px 10px;font-size:.75rem}.service-strip{padding:22px 6%;display:flex;justify-content:space-around;gap:20px;flex-wrap:wrap;border-bottom:1px solid #dfe5df;font-size:.875rem;color:var(--green)}.section{padding-top:96px;padding-bottom:96px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}.section-heading .eyebrow{padding-top:12px}h2{font-size:clamp(2.5rem,3.5vw,4rem);line-height:1.12;margin-bottom:38px}h3{font:400 1.8rem/1.25 Georgia,serif;margin-bottom:18px}.services{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #cbd7d0}.services article{padding:38px 48px 10px 0}.services article+article{padding-left:48px;border-left:1px solid #cbd7d0}.number{display:block;font-size:.75rem;letter-spacing:.14em;color:var(--red);font-weight:bold;margin-bottom:25px}.services p{color:var(--muted);max-width:470px}ul{padding-left:20px;line-height:2;margin-bottom:30px}.services .text-link{display:inline-block;margin-top:5px}.process{background:var(--green);color:white;padding:80px 0}.process .eyebrow,.contact .eyebrow{color:var(--gold)}.process ol{list-style:none;padding:0;margin:50px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.process li{border-top:1px solid #ffffff40;padding-top:25px}.process li>span{font:italic 1.5rem Georgia,serif;color:var(--gold);display:block;margin-bottom:20px}.process p{color:#d6e0da;margin:0}.process h3{font-size:1.5rem}.about{display:grid;grid-template-columns:40% 1fr;gap:10%;align-items:center}.logo-panel{text-align:center}.logo-panel img{display:block;max-width:310px;width:100%;height:auto;margin:auto}.about p:not(.eyebrow){color:var(--muted);max-width:560px}.contact{padding:80px 0;background:var(--green);color:white;text-align:center}.contact h2{margin-bottom:24px}.contact p{max-width:540px;margin-left:auto;margin-right:auto}.contact .actions{justify-content:center}.outline{background:transparent;border-color:#ffffff80}.outline:hover{background:#ffffff15}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:35px;padding-bottom:35px}footer p,footer>span{font-size:.75rem;color:var(--muted);margin:0}footer .brand{font-size:1.6rem}footer .brand b{font-size:.7rem}@media(min-width:1600px){.hero-copy{padding-left:calc((100vw - 1240px)/2)}}@media(max-width:900px){nav{gap:17px}.hero-copy{padding:45px 9% 45px 13%}h1{font-size:3.4rem}.hero{grid-template-columns:1fr 1fr}.services article{padding-right:25px}.services article+article{padding-left:25px}.process ol{gap:25px}.topline{font-size:.75rem;letter-spacing:.04em}.section{padding-top:65px;padding-bottom:65px}footer{flex-wrap:wrap}}@media(max-width:650px){.topline{justify-content:center}.topline span{display:none}header{min-height:88px;flex-wrap:wrap;padding:17px 0;gap:17px}.brand{font-size:1.75rem}nav{order:3;flex-basis:100%;justify-content:space-between;font-size:.875rem;border-top:1px solid #e0e6e0;padding-top:12px}.header-phone{font-size:.875rem}.hero{display:flex;flex-direction:column}.hero-copy{padding:42px 6%}h1{font-size:clamp(3rem,12vw,4.5rem)}.hero-photo{height:360px;min-height:0}.hero .actions{align-items:flex-start}.service-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.8rem;padding:20px 6%}.section-heading{display:block}.section-heading .eyebrow{padding:0}h2{font-size:2.65rem}.services{grid-template-columns:1fr}.services article{padding:30px 0}.services article+article{padding:30px 0 0;border-left:0;border-top:1px solid #cbd7d0}.process{padding:60px 0}.process ol{grid-template-columns:1fr;gap:30px;margin-top:25px}.process li>span{margin-bottom:12px}.about{grid-template-columns:1fr;gap:35px}.logo-panel img{max-width:220px}.contact{padding:60px 0}.contact .actions{flex-direction:column}.contact .button{width:100%;max-width:330px}footer{flex-direction:column;text-align:center}footer p{font-size:.875rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
