:root{--pine:#073236;--green:#17634d;--gold:#e9b958;--cream:#f4f2e9;--ink:#082f31;--line:#aac0b2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.hero{min-height:760px;padding:30px clamp(24px,6vw,92px);display:flex;flex-direction:column;justify-content:space-between;color:var(--cream);background:radial-gradient(ellipse 55% 68% at 101% 14%,#17694f 0 50%,transparent 50.4%),radial-gradient(ellipse 44% 54% at -4% 105%,#17694f 0 50%,transparent 50.4%),var(--pine)}nav,footer{display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;align-items:center;gap:9px;font-family:Georgia,serif;font-size:2rem;font-weight:bold;letter-spacing:-.08em}.brand span{font-family:Arial,sans-serif;font-size:.56rem;letter-spacing:.12em;max-width:94px;line-height:1.15}.nav{display:flex;gap:26px;font-size:.82rem;font-weight:bold}.nav a:hover{color:var(--gold)}.hero-copy{max-width:700px;margin:90px 0}.eyebrow{margin:0 0 18px;font-size:.7rem;font-weight:bold;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}h1,h2,h3{font-family:Georgia,serif;letter-spacing:-.06em;line-height:.94}h1{font-size:clamp(3.5rem,8vw,7.2rem);margin:0 0 25px}h2{font-size:clamp(2.65rem,5.2vw,5.2rem);margin:0 0 25px}.hero-copy>p:not(.eyebrow),.contact>p{max-width:590px;line-height:1.65;color:#dbe7df;font-size:1.1rem}.button{display:inline-flex;align-items:center;gap:25px;margin-top:18px;padding:15px 20px;border:0;background:var(--gold);color:var(--pine);font-weight:bold;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.button b{font-size:1.35rem}.tagline{font-size:.72rem;letter-spacing:.06em;color:#dbe7df}.section{padding:110px clamp(24px,10vw,150px)}.intro{max-width:510px;color:#395758;font-size:1.08rem;line-height:1.65;margin-bottom:62px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.services article{padding:25px 30px 25px 0;min-height:185px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.services article:nth-child(3n+2),.services article:nth-child(3n+3){padding-left:30px}.services article:nth-child(3n){border-right:0}.services em{color:#b47c20;font-size:.73rem;font-weight:bold;font-style:normal}.services h3{font-size:1.55rem;margin:15px 0}.services p,.heading>p{color:#426061;line-height:1.55;font-size:.92rem}.work{background:#d9e5db}.heading{display:flex;align-items:end;justify-content:space-between;gap:42px;margin-bottom:45px}.heading>p{width:260px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery figure{height:245px;position:relative;margin:0;overflow:hidden;background:#0b3538}.gallery figure.wide{grid-column:span 2;height:360px}.gallery img{width:100%;height:100%;display:block;object-fit:cover}.gallery:has(figure:hover) figure:hover img{transform:scale(1.035)}figcaption{position:absolute;inset:42% 0 0;padding:0 18px 16px;display:flex;align-items:end;background:linear-gradient(transparent,rgba(5,29,28,.82));color:var(--cream);font-size:.72rem;font-weight:bold;letter-spacing:.08em;text-transform:uppercase}.contact{padding:108px clamp(24px,10vw,150px);position:relative;overflow:hidden;color:var(--cream);background:radial-gradient(circle at 98% 110%,var(--green) 0 22%,transparent 22.2%),var(--pine)}.estimate-form{max-width:820px;margin:36px 0 28px}.estimate-form label{display:block;font-size:.75rem;font-weight:bold;letter-spacing:.06em;text-transform:uppercase;color:#dbe7df}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.estimate-form input,.estimate-form select,.estimate-form textarea{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid rgba(244,242,233,.48);border-radius:0;background:#f4f2e9;color:var(--ink);font:16px Arial;text-transform:none;letter-spacing:normal}.estimate-form textarea{resize:vertical}.estimate-form>label{margin-top:16px}.hidden-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:980px;margin:32px 0 14px;border-top:1px solid rgba(244,242,233,.34)}.people a{padding:18px 22px 18px 0;border-right:1px solid rgba(244,242,233,.34)}.people a+a{padding-left:22px}.people a:last-child{border:0}.people strong,.people span{display:block}.people strong{font-family:Georgia,serif;font-size:1.1rem;margin-bottom:6px}.people span{font-size:.76rem;color:#dbe7df}.people a:hover,.emails a:hover{color:var(--gold)}.emails{display:flex;flex-wrap:wrap;gap:10px 30px;margin:0 0 14px}.emails a{font-size:.82rem;text-decoration:underline;text-underline-offset:4px}footer{padding:26px clamp(24px,6vw,92px);background:#062628;color:var(--cream)}footer .brand{font-size:1.4rem}footer p{margin:0;font-size:.72rem;color:#b7c9bc}@media(max-width:700px){.hero{min-height:680px}.nav{gap:12px;font-size:.7rem}.hero-copy{margin:60px 0}.section,.contact{padding-top:76px;padding-bottom:76px}.services,.gallery,.people,.form-grid{grid-template-columns:1fr}.services article,.services article:nth-child(3n+2),.services article:nth-child(3n+3){padding:22px 0;border-right:0}.heading{display:block}.heading>p{width:auto}.gallery figure,.gallery figure.wide{height:240px;grid-column:auto}.people a,.people a+a{padding:16px 0;border-right:0;border-bottom:1px solid rgba(244,242,233,.34)}footer{align-items:flex-start;flex-direction:column}}
