:root{--ink:#163b41;--muted:#4d676b;--paper:#f4f5ed;--line:#d5dfd8;--accent:#a93d23;--mint:#d4e7d9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.08;font-weight:750}.wrap{max-width:1180px;padding-inline:28px;margin:auto}header{border-bottom:1px solid var(--line)}.nav{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:12px;align-items:center;font-size:13px;line-height:1.25}.brand b{font-weight:750}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--paper);font-size:25px;font-weight:750;letter-spacing:-3px;padding-right:3px}nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:650}nav a{min-height:44px;display:flex;align-items:center}.nav-cta{background:var(--ink);color:white;gap:18px;padding:12px 18px;border-radius:8px}.hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:65px;padding-block:70px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:22px}h1{font-size:clamp(43px,4.8vw,65px)}h1 em{font-style:normal;color:var(--accent)}.intro{font-size:17px;line-height:1.75;color:var(--muted);max-width:540px;margin-top:26px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px 23px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:50px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:8px;padding:13px 20px;font-size:13px;font-weight:700;cursor:pointer}.button:hover,.nav-cta:hover{background:#255760}.button:disabled{opacity:.65;cursor:wait}.text-link{font-size:13px;font-weight:700;display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}.hero-note{font-size:11px;line-height:1.6;color:var(--muted);margin-top:22px}.lake-card{background:#e0e9d9;border:1px solid #cedacb;border-radius:140px 140px 20px 20px;overflow:hidden;max-width:430px;margin-left:auto;width:100%}.lake-art{height:240px;position:relative;overflow:hidden;background:linear-gradient(#b9d5d0,#e8ead2)}.sun{position:absolute;top:54px;left:54%;width:60px;height:60px;background:#e0b16d;border-radius:50%}.ridge{position:absolute;bottom:35px;width:100%;height:110px;border-radius:70% 20% 0 0;clip-path:polygon(0 65%,22% 14%,47% 30%,75% 45%,100% 70%,100% 100%,0 100%)}.ridge-back{left:0;background:#91b59d}.ridge-front{left:0;bottom:15px;background:#5f8b7a;clip-path:polygon(0 80%,30% 65%,55% 40%,80% 24%,100% 55%,100% 100%,0 100%);border-radius:60% 60% 0 0}.lake{position:absolute;bottom:0;left:0;width:100%;height:74px;background:#477b83;clip-path:polygon(0 15%,45% 0,100% 20%,100% 100%,0 100%)}.lake-lines{position:absolute;bottom:18px;left:0;width:100%;height:30px;background:repeating-linear-gradient(0deg,transparent 0 8px,#b0d1c033 9px 10px);}.lake-card figcaption{padding:28px 32px 20px}.lake-card figcaption span{font-size:9px;font-weight:750;letter-spacing:.13em;color:var(--muted)}.lake-card strong{display:block;font-size:27px;line-height:1.2;letter-spacing:-.045em;margin-top:16px}.lake-card p{font-size:13px;color:var(--muted);margin-top:14px}.lake-card>a{display:flex;justify-content:space-between;padding:20px 32px;border-top:1px solid #c9d7c6;font-size:12px;font-weight:700}.section{padding-block:70px;border-top:1px solid var(--line)}.white{background:#fff}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:32px}h2{font-size:clamp(30px,3.4vw,43px)}.section-heading>p{font-size:15px;line-height:1.8;color:var(--muted);max-width:390px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.service-card{padding:27px 23px;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:20px;background:var(--paper)}.service-card:hover{border-color:#779e88}.number{font-size:11px;color:var(--accent);font-weight:700}.service-card h3{font-size:24px}.service-card p{font-size:13px;line-height:1.8;color:var(--muted);flex:1}.service-card .text-link{font-size:12px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-bottom:18px}.work-grid article{background:white;border:1px solid var(--line);border-radius:14px;overflow:hidden}.work-grid img{width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;object-position:top}.work-caption{padding:24px}.work-caption h3{font-size:23px}.work-caption p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:8px}.about{background:#dfe9dc}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.about-grid>div>p:not(.eyebrow){font-size:16px;line-height:1.8;margin-bottom:16px;color:var(--muted)}.steps{list-style:none;margin:38px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.steps b{font-size:16px}.steps p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:13px}.contact{background:var(--ink);color:white}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.contact .eyebrow{color:#b7d4c2}.contact h2{font-size:48px}.contact p{color:#d5e2db;font-size:15px;line-height:1.8;margin-top:24px}.phone{display:block;font-size:23px;font-weight:700;letter-spacing:-.02em;padding-top:28px;min-height:44px}.email{display:inline-flex;min-height:44px;align-items:center;font-size:13px;overflow-wrap:anywhere}.contact .small{font-size:11px;line-height:1.7}.contact form{border-radius:14px;background:white;color:var(--ink);padding:30px;display:grid;gap:19px;position:relative}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:12px;font-weight:700}input,select,textarea{width:100%;display:block;margin-top:8px;padding:12px;border:1px solid #a9bcb5;border-radius:6px;background:#fbfcf8;color:var(--ink);min-height:46px;font-size:14px;min-width:0}textarea{resize:vertical}.contact form .small{color:var(--muted);margin:0}.contact form .small a{text-decoration:underline;text-underline-offset:3px}.contact #form-status{margin:0;font-size:13px;color:var(--ink);background:#e9f1e5;padding:14px;border-radius:6px}.contact #form-status.error{color:#902b20;background:#fff0ea}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%)}footer{background:#102e33;color:#c8dbd0;padding-block:44px 22px;font-size:12px;line-height:1.9}.footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:34px}footer strong{font-size:15px;color:white}footer a{min-height:38px;display:flex;align-items:center}footer p a{display:inline;min-height:auto;text-decoration:underline}.copyright{margin-top:28px;padding-top:20px;border-top:1px solid #ffffff20;font-size:10px}.service-hero{grid-template-columns:1fr;padding-block:56px}.service-hero h1{max-width:850px}.service-hero .intro{max-width:760px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.detail-grid h2{font-size:27px}.detail-grid p{font-size:15px;line-height:1.85;color:var(--muted);margin-top:18px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bc5a36;outline-offset:4px}.skip{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);z-index:5;background:white;padding:0}.skip:focus{width:auto;height:auto;overflow:visible;clip-path:none;padding:14px}
@media(max-width:1000px){.hero{gap:30px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{gap:40px}.lake-card strong{font-size:24px}.lake-art{height:220px}.hero h1{font-size:48px}.detail-grid{grid-template-columns:1fr;gap:30px}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding-block:40px}.lake-card{display:none}.section-heading{display:block}.section-heading>p{margin-top:22px;max-width:550px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.steps{grid-template-columns:1fr;gap:28px}.section{padding-block:48px}.about-grid>div>p:not(.eyebrow){font-size:15px}.contact h2{font-size:40px}}
@media(max-width:500px){.wrap{padding-inline:20px}.nav{min-height:76px;gap:10px}.brand{font-size:11px;gap:8px}.brand-mark{width:38px;height:38px;font-size:22px}nav .nav-extra{display:none}nav{font-size:12px}.nav-cta{padding:10px 14px;gap:10px}.hero{padding-block:32px}.hero h1{font-size:clamp(35px,9.5vw,43px)}.eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:18px}.intro{font-size:15px;line-height:1.7;margin-top:20px}.actions{margin-top:22px;gap:6px 18px}.button{font-size:12px;padding:12px 16px;gap:12px}.hero-note{font-size:10px;margin-top:16px}.service-grid,.work-grid{grid-template-columns:1fr}.service-card{padding:24px}.work-caption{padding:20px}.contact form{padding:22px}.form-row{grid-template-columns:1fr;gap:19px}.footer{grid-template-columns:1fr 1fr;gap:28px}.footer>p{grid-column:1/-1}.contact p{margin-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
